Bevezetés a Construct 2-be

1

Index

Stats

5,645 visits, 12,150 views

Tools

Translations

License

This tutorial is licensed under CC BY 4.0. Please refer to the license text if you wish to reuse, share or remix the content contained within this tutorial.

Published on 4 Dec, 2019.

Példányváltozók

Az példányváltozók lehetővé teszik, hogy minden szörny megőrizze saját életpontjait. A változó olyan érték, amely megváltozhat, és külön-külön tárolódik az egyes példányokhoz, innét ered a neve, hogy példányváltozó (instance variable).

A szörnyekhez adjuk hozzá az életpont változót. Kattints a szörnyre a projekt sávjában vagy az objektum sávjában. Alternatív megoldásként visszakapcsolhat az elrendezésre és kiválaszthat egy szörny objektumot. A tulajdonságok panelben megjelennek a szörny objektum tulajdonságai. Az Edit variables (Változók szerkesztése) sorban kattintson, az Add / edit (Hozzáadás / szerkesztés) linkre.

Megjelenik az Instance variables (Példányváltozók) ablak. Úgy néz ki, mint a korábban látott Behavior (Viselkedés) párbeszédpanel, ebben az ablakban jelenik meg az objektum példányváltozói. Új hozzáadásához kattints a zöld plusz gombra.

A felbukkanó párbeszédpanelen írd be a névnél, hogy health (életerő), hagyd a Type értéket Number-en és az Initial value (Kezdeti érték) mezőbe írd be az 5-t (az ábra szerint). Ezzel minden szörny 5 élettel fog kezdeni. Amikor eltalálják, kivonjuk az egészséget 1-ből, és amikor az egészség nulla, megsemmisítjük az objektumot.

Ha kész, kattints az OK gombra. Figyeld meg, hogy a változó most megjelenik a példányváltozók párbeszédpanelen és a szörny tulajdonságain is. (Gyorsan megváltoztathatja a kezdeti értékeket a tulajdonságok sávjában, a változók hozzáadásához vagy eltávolításához kattintson a Hozzáadás / Szerkesztés linkre.)

Események változtatása

Váltsunk vissza az események fülre. Jelenleg a szörnyek meghalnak, amint a golyó eltalálja őket. Változtassuk meg úgy, hogy kivonunk az életükből 1-et.

Keresse meg a következő eseményt: Bullet -> on collision with Monster. Látható, hogy itt van egy Destroy monster művelet. Cseréljük le ezt arra, hogy kivonunk az életükből 1-et. Kattintson a jobb gombbal a Destroy monster műveletre, majd kattintson a Replace (Csere) gombra.

Ugyanaz a párbeszédpanel jelenik meg, mintha új műveletet illesztenénk be, de ezúttal a meglévő a műveletet fogja kicserélni. Válassza Monster -> Subtract from (az Instance variables kategóriából) -> példányváltozó: health és az értéke legyen 1. Kattintson a Done (Kész) gombra . A műveletnek most így kell megjelennie:

Amikor eltalálunk a golyóval egy szörnyet, akkor 1 élerőt veszt és a golyó felrobban, De olyan eseményt még nem készítettük, hogy megöljük a szörnyeket, amikor az életerejük eléri a nullát. Adjunk hozzá még egy eseményt:

Feltétel: Monster -> Compare instance variable (Példányváltozó összehasonlítása) -> Health, Less or equal (Kisebb vagy egyenlő) , 0

Művelet: Monster -> Spawn another object -> Explosion, layer 1

Művelet: Monster -> Destroy

Miért "kisebb vagy egyenlő 0" az "egyenlő 0" helyett? Tegyük fel, hogy a játékhoz egy új erősebb fegyvert adtunk hozzá, amely majd 2-et von le az életből. Amint ezzel a fegyverrel lelő egy szörnyet, úgy lesz az élete 5, 3 ,1, -1,-3. A számokból látjuk, hogy sosem lesz nulla, tehát soha nem fog meghalni! Ezért jobb feltétel a "kisebb vagy egyenlő", ha életerőre alkalmazzuk.

Futtassa a játékot. Most már ötször kell lelőni egy szörnyet mielőtt meghalna.

Pontszámok

Készítsünk pontszámot a játékhoz, hogy a játékos tudja, hogy mennyire ügyes a játékban. Ehhez szükség lesz egy másik változóra. Talán logikusnak tűnik, hogy "tegyük a pontszámot a játékos egyik példányváltozójává!". Elsőre ez nem rossz ötlet, de ne feledje, hogy az értéket az objektum fogja így tárolni. Ha nincsenek példányok, akkor változók sem! Tehát ha töröljük a játékost, akkor már nem mondhatjuk el, mi volt a pontszáma, mert a játékos objektum törölte azt.

Ehelyett egy globális változót fogunk használni . A példányváltozóhoz hasonlóan egy globális változó képes szöveget vagy számot tárolni. Minden változó egyetlen számot vagy szöveget képes tárolni. A globális változók az egész játék számára elérhetőek az összes layoutnál - kényelmes, ha további szinteket akarunk hozzáadni.

Kattints a jobb gombbal az esemény lap alján lévő üres helyre, és válassza a(z) Add global variable (Globális változó hozzáadása) lehetőséget.

Névnek írd be, hogy Score (Pontszám). A többi mezőt hagyja alapértelmezetten, mert egy 0-tól kezdődő szám lesz.

A globális változó vonalként jelenik meg az eseménylapon. Ebben az eseménylapban található, de hozzáférhető bármilyen eseménylapból, bármelyik layouton.

Megjegyzés: Vannak olyan helyi változók is, amelyekhez csak kisebb események férhetnek hozzá, de most ezzel nem foglalkozunk.

Adjunk egy pontot a játékosnak egy szörny megölésére. A "Monster: health less or equal 0” eseményünkben (amikor egy szörny meghal) kattintson az Add action (Művelet hozzáadása) elemre, és válaszd a System (Rendszer) -> Add to (Hozzáadás) ( Global & local variables alatt) -> Score, value (érték): 1. Az eseménynek így kell kinéznie:

Most már a játékosnak lesz egy pontszáma, amely 1-el növekszik minden megölt szörnyért. Ezt a pontszámot még nem látják. Mutassuk meg nekik egy szöveges objektummal.

  • 0 Comments

Want to leave a comment? Login or Register an account!