4. In de kerkers van CodesCool 1

In de kerkers van CodesCool

Onder CodesCool lopen heel wat gangen. Het ligt er vol geheimen en verborgen schatten.

Worstel je door de levels en vind de schat.

Veel plezier !!!

Je leert:

  • Een spel maken met verschillende kamers.
  • Werken met lijsten
  • Vijanden, munten, sleutels, deuren programmeren

STAP 1

Sprites aanmaken

Het voorbeeld bevat alle sprites die je nodig hebt. Maar zonder de code, die zal je zelf nog moeten programmeren.

Download het voorbeeld op je computer, zet het op een plaats waar je het gemakkelijk terugvindt. 

Open het in Scratch.

STAP 2

De speler laten bewegensprite

Als allereerst zorgen we dat er beweging komt in ons hoofdpersonage.

Voeg deze blokken toe aan je werkveld en zorg er voor dat de speler naar boven beweegt.

speler

Doe hetzelfde voor de 3 andere richtingen. Denk goed na naar welke richting je sprite zal moeten draaien.

Er zit al aardig wat beweging in. Iets te veel eigenlijk. Onze speler loopt nog door de muren.

Je kan hiervoor volgende blokken gebruiken.

speler

Wij kozen voor -5 stappen. Daardoor springt de speler even terug als hij een muur raakt. Dat komt omdat de speler 4 stappen neemt als hij vooruit gaat. Wanneer hij een muur raakt neemt hij er 5 in de andere richting. Daardoor lijkt het alsof hij achteruit springt.

Als je -4 invult staat hij stil tegen de muur.

STAP 3

Verschillende kamers makensprite

Achteraan in de eerste kamer zie je een deur staan. Deze deur brengt je naar een nieuwe kamer in onze kerker. De deur werkt nog niet. 

Maak eerst een variabele aan. Geef het een passende naam. Wij kozen voor Kamer.

kamer

Sleep de volgende blokken in je werkveld. 

  • Als je de kleur van de deur aanraakt, verandert de achtergrond naar de volgende achtergrond.
  • Het kamernummer verandert met 1.
  • Zorg dat je op een goede plaats komt in de nieuwe kamer komt. Het moet een natuurlijke beweging zijn. Je stapt uit de kamer langs de rechterkant, maar in de nieuwe kamer moet de sprite links verschijnen.
  • Plaats alles onderaan in de herhalingsblok van je vorige code.

Je kan deze blokken gebruiken.

kamer

Als alles werkt zal je merken dat je telkens door de oranje deur kan stappen. Zo kan je van kamer 1 tot kamer 3 stappen. Maar ...

  • Probleem 1: als je op het vlagje klikt start je niet in de eerste kamer.
  • Probleem 2: je kan niet door de gele deur terug stappen.

De blokken die je nodig hebt voor het eerste probleem vind je hieronder. Het tweede probleem kan je zelf oplossen.

kamer

Je wandelt vlot van de ene kamer naar de andere. Je variabele houdt goed bij in welke kamer je zit. Dat is belangrijk om later extra sprites te laten verschijnen en verdwijnen.

STAP 4

Welkom in de kerkers van CodesCoolsprite

Om de speler welkom te heten en te zeggen wat hij moet doen, voorzien we een bord met wat meer informatie.

Omdat het een infobord is hoeft het enkel te verschijnen in de eerste kamer. In ons geval is dat kamer 1.

Gebruik hiervoor deze blokken.

bord

Als alles goed is, verdwijnt het bord zodra je de kamer uitstapt. Het komt terug als je de kamer inloopt.

Goed zo!

Nu laten we het bord spreken als de speler het aanraakt. Gebruik hiervoor deze blokken. Zet ze in de herhaling van je vorige code.

Wat er gezegd wordt kies je uiteraard zelf.

welkom

STAP 5

Alles op zijn plaats zetten

We hebben onze speler laten lopen en we hebben het welkomstbord laten verschijnen in kamer 1.

Voor we verder gaan met het spel is het goed dat je alle andere sprites in de juiste kamer laat verschijnen. Nu staan ze nog in de weg in een kamer waar ze niet moeten staan. 

De code die je moet gebruiken staat in de vorige stap.

We lijsten alvast even op waar de sprites moeten komen.

  • Kist: kamer 3
  • Persoon: kamer 1
  • Vijand 1: kamer 2
  • Vijand 2: kamer 3
  • Munt 1: kamer 1
  • Munt 2: kamer 2
  • Deur: kamer 3
  • Blauwe sleutel: kamer 3

Alle sprites verschijnen nu in de juiste kamer. Maar nog niet op de juiste plaats, ze bewegen nog niet, ze lokken geen reactie uit, ...

Dit doen we in de volgende les.

Tot dan !

Download

Klik op de onderstaande link om een voorbeeldoplossing te downloaden. 

Projecten van mede-CodesCoolers