Opstarten
1) Start game maker op.2) Open je game/project waaraan je vorige week hebt gewerkt.
3) Download dit zip bestand en zorg dat ze worden "geunzipped".
4) Plaats deze bestanden in de map van je game/project waaraan je vorige week hebt gewerkt.
Score's
We gaan muntjes toevoegen om punten te kunnen verzamelen. De punten willen we links boven in het scherm weergeven.Opdr. 1) Score linksboven weergeven
- Maak een nieuw object met de naam: "obj_score"
- Voeg er een event "Draw" aan toe, en geef het event als action: "Draw the value of score" (zie tab score). Zet de x en y waardes op 10 zodat de score iets van de hoek komt te staan. Vul bij caption "Score: " in.
- Plaats dit net aangemaakte object in de Rooms
- Test de werking. Als het goed is zie je links boven de score.
Opdr.2) Muntje maken
- Maak een nieuwe sprite en noem deze "spr_coin"
- Klik op load sprite en selecteer het eerste bestand van de coin animatie: "coin_0.gif"
- Kies vervolgens voor edit sprite en click op het map-plus icoon om de overige files van de coin animatie te kunnen selecteren.
- In totaal moet de animatie nu 4 subimages bevatten
Voorbeeld: http://youtu.be/f73HUySVWG0
- Maak een nieuw object en noem deze "obj_coin"
- koppel daar de zojuist gemaakte sprite "spr_coin" aan
- voeg een event Create toe en geef deze de action "Change sprite" (tab main1). Stel de volgende instellingen in:
- speed 0.5, zorgt er voor dat de animatie 2x langzamer loopt.
- voeg ook een event collision toe en selecteer daarbij: obj_spelerParent
- maak hierbij de volgende 2 actions aan:
1) Set Score. Voer bij new score: 100 in en vink Relative aan
2) Destroy Instance (tab: main1)
- plaats een aantal muntjes in een room en test de werking.
Als het goed is, heb je nu draaiende muntjes in je game en wanneer de speler ze aanraakt (collision), krijg je 100 punten erbij en verdwijnt het muntje.
Opdr.3) Score weergave een andere kleur en lettertype geven
De score die je (links bovenin) in de room hebt geplaatst heeft het standaard lettertype en kleur. Hier ga je een andere stijl aan geven.
- Maak een nieuw font (zie mapje fonts) (filmpje) en geef het de naam: fnt_fontnaam. Bijvoorbeeld fnt_Helvetica. (http://youtu.be/-EtkgOqptgI)
- Open het object: "obj_score" als het goed is, heeft deze al het event Draw met de action Draw the value of score.
- Voeg aan het event Draw de 2 actions: Set font en Set color:
1) Set font -> Selecteer hierbij het font wat je zojuist hebt aangemaakt.
2) Set color -> Selecteer de kleur waarin je de score wilt weergeven.
Let op: dat je deze actions boven de Draw the value of score action plaatst (dus voordat de score op het scherm wordt geplaatst).
Opdr.4) Geluids effecten toevoegen
Geluidseffecten horen natuurlijk bij een game. Je kunt hiervoor het beste .wav of .mp3 bestanden inladen.
- In het mapje sounds komen alle geluidseffecten en/of liedjes te staan
- Maak een nieuwe "sound" (create a new sound). Laad het bestand coin.mp3 in
- Sla de sound op en open het object "obj_coin"
- Voeg hier in het collision event de actie play sound aan toe
Gevaren inbouwen
Een game heeft ook wat uitdaging nodig. Daarom gaan we een aantal objecten plaatsen die je niet mag aanraken.
Opdr.5) Hazard objecten
- Omdat er waarschijnlijk veel verschillende objecten in de game zullen plaatsen die de speler niet mag aanraken, maken we eerst een parent object die het "af" gaan van de speler bevat.
- Maak een nieuw object en noem deze: "obj_hazard"
- Voeg voor dit object een collission event toe met "obj_spelerParent" en geef deze de volgende twee acties:
1) Set score geef als waarde 0
2) Restart room
Opdr.6) Lava objecten
- Maak een nieuwe sprite, noem deze: "spr_lava" en laad hiervoor het bestand "lava.gif"
- Stel de bounding box zo in, dat er links, rechts en boven wat ruimte is, zodat de speler niet direct af gaat, wanneer deze maar met 2 pixels de sprite raakt.
- Maak een nieuw object, noem deze "obj_lava", selecteer hierbij de sprite die je zojuist hebt aangemaakt en selecteer bij Parent: "obj_hazard".
- Plaats de lava objecten in een room en test de werking:
Extra opdracht 1) Maak een room waarbij het scherm mee gaat met de speler
- Maak een room die langer is dan je scherm
- Ga naar het tabblad "views"
- Zet een vinkje bij: "Enable the use of views"
- Zet een vinkje bij: "Visible when room starts"
- Ga naar het tabblad "views"
- Zet een vinkje bij: "Enable the use of views"
- Zet een vinkje bij: "Visible when room starts"
- Je ziet nu in room een kader, wat de view is. (het zichtbare deel in de room)
- Zorg dat je de afmetingen bij "Port on Screen" hetzelfde zijn als bij "View in room"
- Selecteer bij "object following" het object wat het scherm moet volgen. In dit geval "obj_spelerParent"
- Stel de Hbor (Horizontal border) zo in, dat het scherm eerder mee schuift dan dat de speler aan het eind van het scherm komt. Wanneer je bijvoorbeeld 100 (pixels) insteld, zal het scherm mee gaan schuiven wanneer de speler zich 100 pixels voor het einde van het scherm bevindt.
Exra opdracht 2) Zorg er voor dat de score met het scherm meebeweegt
Als het scherm beweegt, zal de score stil blijven staan, en kun je niet meer zien wat je score is.
We moeten die dus vast zetten in de view van de room. Dat doe je als volgt:
- open het object "obj_score".
- Als het goed is staat daar in het event draw de action draw the value of score
- open de action: draw the value of score
- zet vervolgens bij x: "view_xview[0]" en bij y: "view_yview[0]" en vink ook relative aan
Zie ook onderstaande screenshot: