Jani Raiski                                                Luo ensimmäinen pelisi!                

jani.raiski@outlook.com

Sepeli ry

                                                        7.8.2017

Construct 3 - Luo ensimmäinen pelisi!

Construct 3        1

Käyttäjätilin luominen        1

Construct 3:n ulkoasu        2

Properties        3

Project        4

Layers        4

Ensimmäisen pelin luominen        5

Uuden projektin aloittaminen        5

Taustan lisääminen        7

Tausta-tason lukitseminen        11

Uuden tason luominen        12

Tasojen toiminta        13

Hiiri- ja näppäimistö-objektien lisääminen projektiin        14

Peliobjektien lisääminen Construct 3:n        16

Toiminnallisuuksien lisääminen objekteille        18

Objektien kopioiminen        21

Tapahtumat        22

Ensimmäinen tapahtuma        22

Pelaaja ampumaan        25

Spriten kuvapisteiden muokkaaminen        26

Kuvapisteen käyttö        28

Luodit tappamaan hirviöitä        29


Construct 3

Construct 3 on Scirra Ltd kehittämä pelimoottori 2D-grafiikkaa sisältävien pelien tekemiseen. Construct 3 on siitä erikoinen, että se ei vaadi ollenkaan ohjelmointia ja pelimoottori toimii tällä hetkellä selaimen sisällä. Pelejä on erittäin helppo tehdä pienten “laatikoiden” avulla, joita yhdistelemällä tehdään toimivia logiikoita peliin.

Tämä ohje on hieman muokattu versio Constructin sivuilta löytyvästä ohjeesta:
https://www.scirra.com/tutorials/37/beginners-guide-to-construct-2 

Käyttäjätilin luominen

Construct 3:n ilmaisversiossa on rajoitetaan esimerkiksi peliprojektin kokoa. Tämä rajoite on todella tiukka ja ilman käyttäjätunnusta, et voi tehdä kovin kummoisia pelejä. Rekisteröitymällä, voit tehdä hieman suurempia pelejä ja huoletta opetella Construct 3:n saloja.

Siirry sivulle https://www.construct.net/fi/register?return= 

Täytä rekisteröitymislomake syöttämällä siihen haluamasi käyttäjänimen ja salasanan. Syötä lomakkeeseen myös sähköpostiosoitteesi. Laita ruksi kohtaan I agree to the terms and conditions. Jos haluat saada erilaisia uutisia Construct 3:n liittyen, voit laittaa ruksin myös kohtaan Keep me updated on all things Construct.
Paina lopuksi painiketta
Create Account.

Sähköpostiisi pitäisi tulla ilmoitus luodusta käyttäjästä ja sinun pitää vielä vahvistaa sähköpostiosoitteesi.

Klikkaamalla linkkiä click here to activate your email address, aukeaa selaimeen kuvan mukainen sivu:

Nyt sinulla on luotu käyttäjätunnus Constructin käyttämistä varten ja voit tehdä sillä isompia peliprojekteja. Muista kirjautua sisään osoitteessa


Construct 3:n ulkoasu

Construct 3:n ulkoasu on mukavan simppeli ja helppo oppia.

Properties

Properties-valikosta löytyy kaikki tarvittavat tiedot valitusta objektista.
Vasemmalla kuvassa on valittuna pelihahmo.

Properties-valikon Common kohdasta näet valitun objektin spriten koon, sijainnin, kallistuskulma sekä läpinäkyvyyden. Niiden alapuolelta näet myös, millä Layerillä(tasolla) valittu objekti sijaitsee. Nämä tiedot ovat hieman erilaisia riippuen valitusta objektista.

Instance variables -kohdasta voit lisätä tai muokata valitulle objektille erilaisia paikallisia muuttujia. Esimerkiksi pelihahmon HP voi olla tänne tallennettu muuttuja.

Behaviors -kohdasta voit lisätä tai muokata erilaisia käyttäytymisiä valitulle objektille. Esimerkiksi täältä voi lisätä pelaajalle liikkumisen.

Effects -kohdasta voidaan lisätä tai muokata valitulle objektille erilaisia efektejä. Efektit vaikuttavat objektin tekstuuriin. Esimerkiksi tekstuuriin voidaan asettaa efekti, joka muuttaa sen saturaatiota.

Container -kohdasta luodaan uusi säiliö, jonne voit lisätä toisen objektin. Tämä toimii esimerkiksi niin, että panssarivaunulla voi olla kaksi eri objektia, tykki ja itse panssarivaunu. Tykkiä voidaan säiliön avulla kääntää niin, että se ei vaikuta itse panssarivaunuun.

Project

Project-valikosta näet projektin kaikki eri tiedostot. Layouts-kansioon tulevat kaikki pelin eri kentät, Event sheets-kansiosta löytyy kaikki pelin logiikkatiedostot sekä Object types-kansiosta löytyy kaikki pelin objektit.

Project-valikossa on myös kansiot musiikeille, äänille, videoille, fonteille, ikoneille sekä muille tiedostoille.

Layers

Layers-valikosta löydämme kaikki valitun Layoutin, eli kentän layerit (tasot). Esimerkiksi taustakuvalle voi olla oma tasonsa ja pelissä seikkaileville hahmoille omansa. Näitä käydään tarkemmin läpi myöhemmin.


Ensimmäisen pelin luominen

Siirry Chrome-selaimella sivulle https://editor.construct.net/
Keskelle verkkosivua ilmestyy ikkuna, jossa sinulle kerrotaan, että olet käyttämässä Construct 3:n Beta-versiota. Paina tästä ikkunasta
OK-painiketta ja kirjaudu sisään.

Uuden projektin aloittaminen

Seuraavaksi sivusto muuttuu kuvan mukaiseksi.

Painamalla ympyröityä New Project -painiketta, aukeaa projektin luonti-ikkuna. Ikkunaan voit syöttää projektille nimen, valita minkä kokoinen pelimaailma tulee olemaan sekä sen, onko peli vaakatasossa vai pystysuorassa.


Muuta ikkunan arvot vastaaviksi kuin kuvassa. Nimen voit keksiä täysin vapaasti. Paina sen jälkeen painiketta Create.

Nyt näkymän pitäisi olla kuvan mukainen.

Muutetaan heti vasemmalta Properties-valikosta Size-asetuksen arvoksi 1280 x 1024

Taustan lisääminen

Ensimmäisenä haluat luoda peliin taustan. Se onnistuu tallentamalla tämä alla oleva kuvatiedosto esimerkiksi työpöydälle klikkaamalla sitä hiiren oikealla painikkeella ja valitsemalla valikosta Tallenna kuva nimellä tms. Sen jälkeen valitse uudesta ikkunasta oikeasta reunasta työpöytä ja anna kuvalle haluamasi nimi. Paina lopuksi Tallenna. Tästä kuvasta tulee pelin tausta.

Seuraavaksi Construct 3:n puolella tuplaklikkaa keskeltä tyhjästä kohdasta. Tämä alue on layout-näkymä.


Kuvan mukainen Create new object type ikkuna ilmestyy ruudulle. Tästä ikkunasta valitaan aina uuden luotavan objektin tyyppi. Rullaa hieman alemmas ja valitse sieltä objekti nimeltään Tiled Background ja klikkaa painiketta Insert.

 

Nyt sinun pitää klikata uudestaan hiiren vasemmalla painikkeella layout-näkymästä. Nyt ilmestyy uusi ikkuna, Tiled Background Editor, jonka tulisi näyttää samalta kuin alemmassa kuvassa.

Klikkaa hiiren vasemmalla painikkeella ikkunan vasemmasta yläkulmasta painiketta Load an image from a file 

Nyt sinun tulee valita työpöydällesi ylempää tallentama kuvatiedosto.

Kun olet valinnut kuvatiedoston, se ilmestyy Construct 3:n Tiled Background Editoriin.

Nyt voit sulkea editorin klikkaamalla sen ikkunan oikeassa yläkulmassa olevaa ruksia.


Klikkaa layout-näkymässä olevaa background objektia, jonka juuri loit.

Nyt Properties-valikossa näkyy valitun taustakuva-objektin tiedot. Aseta objektin nimeksi Tausta ja Position-asetuksen arvoksi 0, 0. Aseta vielä Size-asetuksen arvoksi 1280 x 1024. Nyt olet asettanut objektin sijainniksi pelin vasemman yläkulman ja sen suuruus on nyt sama kuin koko peli-ikkunalla.

Greenshot 2017-08-09 16.51.37.png


Tausta-tason lukitseminen

Klikkaa hiiren oikealla painikkeella Layers-valikon listasta tasoa Layer 0 ja valitse Rename.

Muuta Layer 0:n nimeksi Tausta.

Paina vielä hiiren vasemmalla painikkeella Layers-valikon listasta Tausta-tason nimen vasemmalta puolelta lukon kuvaa. Lukon taustaväri muuttuu mustaksi. Nyt olet lukinnut Tausta-tason ja sitä ei voi vahingossa liikutella pois paikoiltaan.


Uuden tason luominen

Klikkaa hiiren oikealla painikkeella Layers-valikon tyhjästä kohdasta.

Valitse valikosta Add layer at top.

Nyt meidän Tausta-tason yläpuolelle luodaan uusi taso, anna tälle nimeksi Peli ja valitse Peli-taso klikkaamalla sitä kerran hiiren vasemmalla painikkeella. Lopputuloksen tulisi näyttää samalta kuin kuvassa.

Tasojen toiminta

Kannattaa ajatella layerit (tasot) kerroksina. Pelissämme on tällä hetkellä tasot Tausta ja Peli. Tausta-tason vieressä on numero 0, kun taas Peli-tasolla on numero 1. Nämä tarkoittavat tasojen korkeuseroja. Numeron 0 omaava taso on alempana kuin numeron 1 omaava taso.

Havainnekuva:

Aiemmin ohjeessa käskettiin valita taso Peli, koska uudet objektit luodaan automaattisesti valitulle tasolle. Jos sinulla on väärä taso valittuna, niin luodut objektit ovat silloin eri tasoilla.

Tämä aiheuttaa ongelmia esimerkiksi törmäyksien laskemisessa, jos eri objektit ovat eri tasoilla, ne ovat silloin eri korkeudella toisistaan ja näin ollen, eivät koskaan törmää ja haluttua toimintoa ei silloin tapahdu.

(Esim. Luoti lentää vihollisen yli, jos se on tasolla, jonka korkeus on 1 ja vihollinen tasolla, jonka korkeus on 0.)

Vaikka rakennamme 2D-peliä, voi tasot ajatella kolmiulotteisesti, kuten havainnekuvassa on tehty.


Hiiri- ja näppäimistö-objektien lisääminen projektiin

Varmista, että Peli-taso on valittuna. Sen taustan kuuluisi olla hieman tummempi kuin Tausta-tason.

Tuplaklikkaa tyhjää aluetta layout-näkymästä.

Etsi uudesta ikkunasta objekti Keyboard ja valitse se. Paina seuraavaksi Insert.


Nyt olet lisännyt peliisi mahdollisuuden tunnistaa näppäinten painalluksia. Keyboard-objektin tulisi nyt näkyä Project-valikossa.

Seuraavaksi sinun täytyy lisätä Mouse-objekti, jotta peli tunnistaa hiiren liikkeen ja painikkeet. Tämä onnistuu samalla tavalla kuin Keyboard-objektin lisääminen.

Mouse-objektin lisäämisen jälkeen Project-valikon tulisi näyttää tältä:


Peliobjektien lisääminen Construct 3:n

Tässä kaikki tarvittavat peliobjektit. Näiden tallentaminen onnistuu samalla tavalla kuin taustakuvan kanssa.

                ← Pelaajahahmo

        ← Vihollinen

                ← Räjähdys

                                ← Luoti

Nyt, kun olet tallentanut kuvat työpöydällesi, voit siirtää ne Construct 3:n puolelle samalla tavalla kuin taustakuvan kanssa. Eli tuplaklikkaamalla tyhjää kohtaa layout-näkymässä.

Toinen ja ehkä helpompikin tapa on vetää kuvatiedostot yksitellen käyttöjärjestelmäsi resurssienhallinnasta suoraan Construct 3:n ikkunaan, kuten alemmassa GIF-kuvassa.

Esimerkkikuvassa on käytössä MacOS, joten älä pelästy, jos oman tietokoneesi resurssienhallinta näyttää hieman erilaiselta.

Nyt, kun olet lisännyt kaikki tarvittavat objektit projektiin, ota hiiren vasemmalla painikkeella kiinni luodista ja vedä se ylös pelialueen ulkopuolelle.

Tee vielä sama räjähdykselle.

Nyt, kun katsot Project-ikkunaan, huomaat, että kaikkien lisäämäsi objektien nimet ovat samat kuin niiden tiedostonimet resurssienhallinnassa. Jos näin ei ole, valitse objekti hiiren vasemmalla painikkeella ja Properties-valikosta muuta Name-asetuksen arvo vastaamaan objektin kuvaa. Esimerkiksi luoti-objektille annetaan nimeksi bullet tai luoti.


Toiminnallisuuksien lisääminen objekteille

Valitse pelaaja-objekti hiiren vasemmalla painikkeella. Katso ikkunan vasempaan osaan, Properties-valikkoon. Etsi sieltä kohta Behaviors. Klikkaa sinistä Behaviors-tekstiä.

Uusi ikkuna aukeaa. Klikkaa tästä sinistä Add new behavior-tekstiä.

Greenshot 2017-08-10 10.09.51.png

Kuvan mukainen Add behavior-ikkuna aukeaa. Etsi sieltä 8 Direction-toiminnallisuus ja paina Add-painiketta.

Nyt player behaviors-ikkunan tulisi sisältää 8 Direction-toiminnallisuuden. Tee samoin kuin äsken ja lisää vielä ScrollTo- ja BoundToLayout-toiminnallisuudet.

Player behaviors-ikkunan tulisi näyttää tältä:

Nyt voit sulkea ikkunan ja kokeilla peliä.

Paina hiiren vasemmalla painikkeella pientä mustaa Preview-nuolta layout-näkymän yläpuolelta. Sinun pitäisi nyt pystyä liikkumaan pelihahmolla, kamera seuraa pelihahmoa ja et pysty menemään pelihahmolla pelialueen ulkopuolelle.

Miten lisätyt toiminnallisuudet toimivat?

  1. 8Direction-toiminnallisuuden lisääminen objektiin mahdollistaa sen liikuttamisen
  2. ScrollTo-toiminnallisuuden lisääminen objektiin tarkoittaa sitä, että kameramme seuraa sitä kokoajan
  3. BoundToLayout-toiminnallisuuden lisääminen objektiin tarkoittaa sitä, että se ei voi mennä pelialueen ulkopuolelle.

PIENI TEHTÄVÄ:

  1. Lisää luoti-objektille Bullet- ja DestroyOutsideLayout-toiminnallisuudet
  2. Lisää monsteri-objektille Bullet-toiminnallisuus
  3. Lisää räjähdys-objektille Fade-toiminnallisuus


Luodin toiminnallisuuslistan tulisi näyttää tältä:

Monsterin toiminnallisuuslistan tulisi näyttää tältä:

Räjähdyksen toiminnallisuuslistan tulisi näyttää tältä:

Bullet-toiminnallisuus toimii luodissa niin, että luoti liikkuu yhteen ja samaan suuntaan tietyllä nopeudella.

DestroyOutsideLayout-toiminnallisuus tuhoaa siihen liitetyn objektin, kun se menee pelialueen ulkopuolelle. Tässä tapauksessa luoti tuhoutuu, kun se menee pelin reunojen ulkopuolelle.

Hirviölllä Bullet-toiminallisuus toimii samoin kuin luodissa. Hirviöllä liikkuu tietyllä nopeudella tiettyyn suuntaan.

Fade-toiminnallisuus toimii siten, että kun objekti luodaan maailmaan, se on olemassa muutaman sekunnin ja tuhoutuu häivytys-efektin saattelemana.


Jos nyt kokeilet peliä, huomaat, että hirviö liikkuu yhteen suuntaa todella nopeasti. Tämän korjaamme muuttamalla sen nopeutta.

Valitse hirviö-objekti. Vasemmalta Properties-valikosta etsi kohta Behaviors. Sen sisällä on kohta Bullet, jonka alapuolella on erilaisia arvoja ja asetuksia. Muuta Speed-asetuksen arvoksi 80. Tämä luku tarkoittaa sitä, montako pikseliä sekunnissa objekti liikkuu.

PIENI TEHTÄVÄ:

  1. Muuta luoti-objektin Bullet-toiminnallisuuden nopeudeksi 600
  2. Muuta räjähdys-objektin Fade-toiminnallisuuden asetuksen Fade out time arvoksi 0.5

Objektien kopioiminen

Seuraavaksi luodaan lisää hirviöitä. Pidä CTRL-painiketta pohjassa, klikkaa hiiren vasen painike pohjaan hirviön päällä ja vedä. Huomaat, että kun vedät hiirellä, Construct luo uuden hirviön, joka tulee hiiren mukana. Vapauttamalla hiiren vasemman painikkeen, tiputat hirviön kursorin mukaiseen sijaintiin. Luo tällä tavalla ainakin 7 uutta hirviötä.

Voit levitellä hirviöitä pitkin maailmaa, kuten kuvassa:

Instanssimuuttujat

Instanssimuuttujilla (instance variables) saamme jokaiselle hirviölle niiden omat elämäpisteet. Muuttuja (variable) on yksinkertaisesti arvo joka voi muuttua (tai vaihdella) ja ne tallennetaan erikseen jokaiselle instanssille, josta tulee nimi instance variable.

Lisätään hirviölle instanssimuuttuja nimeltään health. Valitse hirviö ja Properties-valikosta etsi kohta nimeltään Edit variables. Klikkaa Add / edit-linkkiä. Paina uudesta ikkunasta

Paina uudesta ikkunasta Add new instance variable.

Täytä arvot samoiksi kuin kuvassa ja paina OK.

Voit sulkea kaikki instanssimuuttujiin liittyvät ikkunat.


Tapahtumat

Construct 3:ssa ei ole ollenkaan ohjelmointi. Mutta miten sitten voimme tehdä pelejä?

Construct 3:ssa on tapahtumasysteemi, jonka avulla voidaan toteuttaa “visuaalista ohjelmointia”.

Ensimmäinen tapahtuma

Klikkaa hiiren vasemmalla painikkeella layout-näkymän yläpuolelta painiketta Event sheet 1 

Eteesi aukeaa tapahtumalista, josta näet kaikki projektissa olevat tapahtumat. Tällä hetkellä tapahtumalista on tyhjä, joten siinä ei näy yhtään tapahtumaa.

Luo ensimmäinen tapahtumasi painamalla sinistä tekstiä Add event.

Kuvan mukainen ikkuna aukeutuu:

Ensimmäisen tapahtuman tarkoitus on kääntää pelaajahahmo katsomaan hiiren kursorin sijaintia 60 kertaa sekunnissa. Eli käytännössä, pelaaja katsoo aina sinne, missä hiiren kursori sijaitsee.

Tuplaklikkaa System-painiketta.

Tuplaklikkaa Every tick-painiketta.


Nyt tapahtumalista näyttää samalta kuin kuvassa. Paina seuraavaksi kuvan osoittamaa Add action-tekstiä.

Tuplaklikkaa ikkunasta pelaaja-objektia. Tuplaklikkaa sitten tekstiä Set angle toward position. Kirjoita X:n arvoksi Mouse.X ja Y:n arvoksi Mouse.Y. Paina vielä lopuksi Done-painiketta.

 →  →

Nyt sinulla on ensimmäinen tapahtumasi luotuna! Mitä tämä tapahtuma sitten tekee ja mitä tämä kaikki tarkoittaa? Antaa kuvan selittää:


Nyt, kun testaat peliä, huomaat sen, että pelaaja katsoo aina hiiren kursoria kohti.

Tästä eteenpäin, kun lisäämme uusia tapahtumia, selitän sen yksinkertaisemmin. Muuten ohjeen pituus olisi reilut 100 sivua.

Kaava tälle on seuraava:

Valitse objektin_nimi

Lisää ehto objektin_nimi → ehto → arvot (jos niitä tarvitaan)

Lisää tapahtuma objektin_nimi → tapahtuma → arvot

Eli aiemman tapahtuman lisäyksen olisi voinut kertoa seuraavasti:

Valitse pelaaja-objekti

Lisää ehto System → Every tick

Lisää tapahtuma pelaaja → Set angle toward → X: Mouse.X        Y: Mouse.Y

Pelaaja ampumaan

Luo aluksi seuraava tapahtuma:

Valitse pelaaja-objekti

Lisää ehto Mouse → On click → Mouse button: Left        Click type: Clicked

Lisää tapahtuma Player → Spawn another object

                            → Object:                 Valitse tähän luoti

                            → Layer:                 1

                            → Image point:         0

Tapahtumalistan pitäisi nyt näyttää tältä:

Kokeile peliä.

Huomaat, että kun ammut, luoti lähtee liikkeelle keskeltä pelaajaa, eikä aseen piipun päästä.

Korjataan tämä seuraavaksi.


Spriten kuvapisteiden muokkaaminen

Klikkaa hiiren oikealla painikkeella pelaaja-objektista Project-valikon sisältä. Valitse edit animations. Sprite editor -ikkuna aukeaa. Klikkaa editorin työkalupalkin vasemmanpuoleisen rivin toisiksi alinta työkalua Edit the image points.

Nyt klikkaa plus-ikonia editorin vasemmasta yläreunasta. Huomaat, että objektille luodaan uusi kuvapiste, jonka numero on 1. Tätä tulemme käyttämään myöhemmin.


Nyt klikkaa hiiren vasemmalla painikkeella pelaajahahmon pyssyn piipun päästä. Klikattuun kohtaan tulisi ilmestyä punainen neliö (väri voi vaihdella).

Nyt voit sulkea editorin painamalla ruksia sen oikeasta yläkulmasta.


Kuvapisteen käyttö

Siirry takaisin tapahtumalistaan ja tuplaklikkaa Spawn bullet on layer 0 (image point 0) -tapahtumaa.

Vaihda Image point asetuksen arvoksi 1.

Nyt kun testaat peliä, huomaat, että luoti lähtee liikkeelle aseen piipusta eikä pelaajan otsasta.


Luodit tappamaan hirviöitä

Pelissä voidaan nyt liikkua ja ampua. Seuraavaksi lisäät peliin mahdollisuuden tappaa hirviöitä. Avaa tapahtumalista.

Luo uusi tapahtuma:

Valitse luoti-objekti

Lisää ehto                        → On collision with another object

→ Object: monster

Lisää tapahtuma                Monster        → Destroy

Lisää toinen tapahtuma        Bullet                → Spawn another object

                                                → Object: Explode

                                                → Layer: 1

                                                → Image Point: 0

Lisää kolmas tapahtuma        Bullet                → Destroy

Tapahtumalistan pitäisi nyt näyttää tältä:

Lisäämäsi tapahtuma suomennetaan seuraavasti:

Kun luoti osuu hirviöön, tuhoa hirviö, luo uusi objekti räjähdys ja tuhoa luoti.

Nyt kun kokeilet peliä ammut hirviöitä, luodin osuessa hirviö tuhoutuu ja sen päälle luodaan räjähdys objekti. Muistatko miksi räjähdys häviää melkein heti syntymänsä jälkeen? Voit virkistää muistiasi Täällä.

Mutta pelissä on nyt yksi bugi. Räjähdyksen ympärillä on mustat reunukset, poistetaanpas ne.


Valitse explode-objekti oikeasta yläkulmasta hiiren vasemmalla painikkeella ja etsi sen Properties-valikon keskivaiheilta Effects-otsikon alta asetus Blend mode. Vaihda tämän arvoksi Additive.

Nyt kun testaat peliä uudestaan, huomaat, että räjähdysten mustat reunukset ovat hävinneet.

Miksi tämä toimii? Menemättä kaikkiin yksityiskohtiin, tavalliset kuvat liitetään näytön päälle. Additive-efektillä, jokainen pikseli sen sijaan lisätään (yhteenlasketaan) taustalla olevan pikselin kanssa. Mustan pikseliarvo on nolla, joten mitään ei lisätä ja mustaa taustaa ei näy. Kirkkaammat värit lisäävät enemmän ja siksi ilmenevät voimakkaammin. Sopii loistavasti räjähdyksiin ja valoefekteihin.


Hirviöiden tekoäly

Peli vaikuttaa todella tylsältä, kun hirviöt vain lähtevät liikkumaan yhteen ja samaan suuntaan. Kehitetään siis hirviöille erittäin yksinkertainen “tekoäly”.

Avaa tapahtumalista.

Luo uusi tapahtuma:

Valitse System

Lisää ehto                                        → On start of layout

Lisää tapahtuma                Monster        → Set Angle

                                                → random(360)

Tämä tapahtuma varmistaa sen, että aina kun peli alkaa, hirviöt katsovat randomisti eri suuntaan. random(360) tarkoittaa sitä, että peli valitsee hirviölle katselukulman satunnaisesti 0:n ja 360:n asteen väliltä.

Lisää vielä toinen tapahtuma:

Valitse Monster

Lisää ehto                                        → Is outside layout

Lisää tapahtuma                Monster        → Set angle toward position

                                                → X: player.X

                                                → Y: player.Y

Tämä tarkoittaa nyt sitä, että kun hirviö menee pelialueen ulkopuolelle, se kääntyy ja lähtee liikkumaan kohti pelaajan sen hetkistä sijaintia. Mutta ei kuitenkaan seuraa pelaajaa.

Tapahtumalistan tulisi näyttää samalta kuin kuvassa:


Hirviön elämäpisteiden käyttö

Peli vaikuttaa liian helpolta, kun hirviöt kuolevat heti yhdestä luodista. Muutetaan sitä hieman vaikeammaksi!

Avaa tapahtumalista (Event sheet).

Etsi sieltä vastaava tapahtuma:

Klikkaa monster Destroy-kohdasta hiiren oikealla painikkeella ja klikkaa valikosta kohtaa Replace action.

Valitse seuraavasta ikkunasta monster. Etsi sitten valikosta Instance variables-otsikon alapuolelta tapahtuma Subtract from. Varmista, että arvot ovat samat kuin kuvassa ja paina painiketta Done.

 →  →

Poista samasta tapahtumasta vielä Spawn explode on layer 1 (image point 0), koska emme halua, että aina syntyy räjähdys, kun luoti osuu hirviöön.

Nyt aina kun hirviöön osuu luoti, se vähäntää hirviön elämäpisteitä yhdellä. Mutta emme ole vielä määritelleet, mitä silloin pitäisi tapahtua, kun hirviön elämäpisteet ovat loppuneet.

Lisää uusi tapahtuma:

Valitse Monster

Lisää ehto                                        → Compare instance variable

                                                → Instance variable: health

                                                → Comparison: Less or equal

                                                → Value: 0

Lisää tapahtuma                Monster        → Spawn another object

                                                → Object: explode

                                                → Layer: 1

                                                → Image point: 0

Lisää toinen tapahtuma        Monster        Destroy

Nyt tapahtumalistan tulisi näyttää tältä:

Nyt, kun hirviön elämäpisteitä on 0 tai vähemmän, hirviö tuhoutuu ja sen tilalle syntyy räjähdys.

Miksi "pienempi tai yhtä suuri kuin 0", eikä "yhtä suuri kuin 0"? Ajatellaan että lisäisimme voimakkaamman aseen joka vähentäisi 2 elämäpistettä. Kun ampuisit hirviötä, elämäpisteet menisivät: 5, 3, 1, -1, -3... huomaa että missään vaiheessa pisteet eivät olisi sama kuin nolla, joten hirviö ei koskaan kuolisi! Tästä syystä on hyvä tapa käyttää "pienempi tai yhtä suuri kuin" testataksesi onko jonkun asian elämäpisteet (tai muut vastaavat) loppuneet.


Pisteet

Luodaan nyt mahdollisuus saada pisteitä, kun hirviöitä tapetaan.

Avaa tapahtumalista. Klikkaa hiiren oikealla painikkeella tyhjästä kohdasta ja valitse listasta Add global variable.

Muuta ikkunasta tiedot vastaaviksi kuin kuvassa. Description ei ole pakollinen. Voit siihen kirjoittaa jotakin, joka selventää itsellesi, mitä tämä muuttuja tekee. Paina lopuksi OK.

Nyt tapahtumalistan yläosaan ilmestyy juuri äsken luotu muuttuja

Etsi tapahtumalistasta kuvaa vastaava tapahtuma:

Lisää tähän uusi tapahtuma painamalla Add action tekstiä.

System                                        → Add to

                                                → Variable: score

                                                → Value 1

Nyt aina kun pelaaja tappaa yhden hirviön, korotetaan muuttujaa score yhdellä.

Tapahtumalistan tulisi nyt näyttää tältä:




Tämä materiaali on tuotettu Euroopan maaseudun kehittämisen maatalousrahaston tuella