5. Hahmon ohjelmoiminen – Event sheet

Muista nimetä kukin objekti sitä kuvaavalla nimellä.

Näppäimistön ohjelmointi
Haluamme luoda toiminnon kun painetaan nuoli vasemmalle, niin alus pyörii vastapäivään ja kun painetaan nuoli oikealle, niin alus pyörii myötäpäivään.
- Mene Event sheet väilehdelle. Paina Add event, valitse Keyboard ja paina Next.
- Valitse komento Keyboard: Key is down (Kun näppäin on pohjassa) ja paina Next
- Paina <click to choose>, jonka jälkeen paina näppäimistöltä nuoli vasemalle ja Left arrow teksti ilmestyy ikkunaan. Kuittaa OK:lla. Paina lopuksi Done
- Olemme nyt luoneet ehdon (Kun nuoli vasemalle on painettu), seuraavaksi lisäämme toiminnon. Napsauta hiirellä Add action tekstiä.
- Valitse Avaruusalus ja paina Next.
- Valitse nyt Rotate counter-clokwise (myötäpäivään) ja paina Next.
- Laita seuraavaksi kulman suuruus, kuinka paljon käännytään yhdellä painalluksella. Laita siihen arvo: 2 ja paina Done.
Olemme nyt luoneet seuraavan toiminnon

Samalla tavalla luo toinen lause: Kun painetaan näppäimistöltä nuoli oikealle pohjaan, niin käännä alusta 2 astetta vastapäivään.
- Paina Add event, valitse Keyboard ja paina Next.
- Valitse komento Keyboard: Key is down (Kun näppäin on pohjassa) ja paina Next
- Paina <click to choose>, jonka jälkeen paina näppäimistöltä nuoli okiealle ja Right arrow teksti ilmestyy ikkunaan. Kuittaa OK:lla. Paina lopuksi Done
- Olemme nyt luoneet ehdon (Kun nuoli oikealle on painettu), seuraavaksi lisäämme toiminnon. Napsauta hiirellä Add action tekstiä.
- Valitse Avaruusalus ja paina Next.
- Valitse nyt Rotate clokwise (vastapäivään) ja paina Next.
- Laita seuraavaksi kulman suuruus, kuinka paljon käännytään yhdellä painalluksella. Laita siihen arvo: 2 ja paina Done.

Haluamme luoda seuraavaksi toiminnon, jossa alus lähtee liikkumaan kulman osoittamaan suuntaan, kun painamme nuolen eteenpäin.
- MeneEvent sheet väilehdelle. Paina Add event, valitse Keyboard ja paina Next.
- Valitse komento Keyboard: Key is down (Kun näppäin on pohjassa) ja paina Next
- Paina <click to choose>, jonka jälkeen paina näppäimistöltä nuoli ylös ja Up arrow teksti ilmestyy ikkunaan. Kuittaa OK:lla. Paina lopuksi Done.
- Olemme nyt luoneet ehdon (Kun nuoli ylös on painettu), seuraavaksi lisäämme toiminnon. Napsauta hiirellä Add action tekstiä.
- Valitse avaruusalus ja paina Next.
- Valitse nyt toiminto: Accelerate toward angle, joka löytyy ryhmästä: CustomMovement: Velocity. Paina Next.
- Laita kohtaan Acceleration (kiihtyvyys) arvoksi 100 ja kohtaan Angle (kulma) kirjoita teksti: Avaruusalus.Angle eli kulma määräytyy avaruusaluksen mukaan. Paina lopuksi Done.
Olemme nyt lisänneet toiminnon. Kun on painettu nuoli ylös, niin avaruusalus kiihtyy arvolla 100 siihen suuntaan kuin on avaruusaluksen kulma.
Vastaavalla tavalla voit luoda ehdon: Kun on painettu nuoli alas, niin avaruusalus kiihtyy arvolla -100 siihen suuntaan kuin on avaruusaluksen kulma. Koska kiihtyvyys on negatiivinen, niin avaruusalus joko hidastuu tai liikkuu taaksepäin.
- MeneEvent sheet väilehdelle. Paina Add event, valitse Keyboard ja paina Next.
- Valitse komento Keyboard: Key is down (Kun näppäin on pohjassa) ja paina Next
- Paina <click to choose>, jonka jälkeen paina näppäimistöltä nuoli alas ja Down arrow teksti ilmestyy ikkunaan. Kuittaa OK:lla. Paina lopuksi Done.
- Olemme nyt luoneet ehdon (Kun nuoli ylös on painettu), seuraavaksi lisäämme toiminnon. Napsauta hiirellä Add action tekstiä.
- Valitse avaruusalus ja paina Next.
- Valitse nyt toiminto: Accelerate toward angle, joka löytyy ryhmästä: CustomMovement: Velocity. Paina Next.
- Laita kohtaan Acceleration (kiihtyvyys) arvoksi -100 ja kohtaan Angle (kulma) kirjoita teksti: Avaruusalus.Angle eli kulma määräytyy avaruusaluksen mukaan. Paina lopuksi Done.

LASERI
Haluamme luoda seuraavaksi toiminnon, jossa avaruusalus ampuu laserilla eteenpäin kun painetaan välilyönti painiketta.
- Mene Event sheet väilehdelle. Paina Add event, valitse Keyboard ja paina Next.
- Valitse komento Keyboard: On key pressed (Kun näppäintä on painettu) ja paina Next
- Paina <click to choose>, jonka jälkeen paina näppäimistöltä Välilyönti-painiketta (spacebar) ja VÄli teksti ilmestyy ikkunaan. Kuittaa OK:lla. Paina lopuksi Done.
- Olemme nyt luoneet ehdon (Kun Välilyönti-painiketta on painettu), seuraavaksi lisäämme toiminnon. Napsauta hiirellä Add action tekstiä.
- Valitse avaruusalus ja paina Next.
- Valitse kohdasta: Misc, toiminto: Spawn another object (Luo klooni eli kopio toisesta objektista) ja paina Next.
- Napsauta kohtaa <click to choose>, jonka jälkeen napsauta Laserin kuvaa ja kuittaa OK:lla. Lopuksi paina Done.
- Olemme luoneet seuraavanlaisen toiminnon. Kun painetaan välilyönti-painiketta näppäimistöltä, niin silloin tee laserista kopio avaruusaluksen koordinaatteihin.
Jotta laser liikkuisi, niin siinä pitää olla Bullet- käyttäytymismalli. Jos et ole sitä vielä lisännyt, niin lisää nyt. Lisäksi Laserissa on oltava DestroyOutsideLayout-käyttäytymismalli. Laseri pitää tuhota pelikentän ulkopuolella tai peli hidastuu. Testaa Laserin toimivuus (= F5).
METEORIITTI
Meteoriitissa on oltava seuraavat käyttäytymismallit (Behaviors): Solid (Kiinteä), Bullet (Luoti), Wrap (Tulee vastakkaisesta reunasta takaisin, kun ylittää reunan) ja Rotate (Pyörii). Muuta Bullet-käyttäytymismallissa seuraavat asetukset.

Kun katsot peliä ajotilassa (= F5), niin jokaisen meteoriitin pitäisi tulla näkyviin eri paikasta eri kulman arvolla. Jos meteoriitit törmäävät toisiinsa, niin tapahtuu täysin kimmoinen törmäys.
- Paina ensin Add event.
- Napsauta Meteoriittia ja paina Next.
- Valitse komento: Collisions: On collision with another object ja paina Next.
- Napsauta hiirellä kohtaa: <click to choose>
- Valitse Avaruusalus ja paina OK painiketta. Paina lopuksi Done painiketta ja olet luonut ehdon.
- Napsauta hiirellä kohtaa: Add action.
- Valitse Avaruusalus ja paina Next.
- Valitse Misc: Destroy ja paina Done.

Samalla tavalla luo ehto: Jos Laser osuu Meteoriittiin, niin tuhoa Meteoriitti ja Laser.
- Paina ensin Add event.
- Napsauta Laseria ja paina Next.
- Valitse komento: Collisions: On collision with another object ja paina Next.
- Napsauta hiirellä kohtaa: <click to choose>
- Valitse Meteoriitti ja paina OK painiketta. Paina lopuksi Done painiketta ja olet luonut ehdon.
- Napsauta hiirellä kohtaa: Add action.
- Valitse Meteoriitti ja paina Next.
- Valitse Misc: Destroy ja paina Done.
- Napsauta hiirellä kohtaa: Add action uudestaan.
- Valitse Laser ja paina Next.
- Valitse Misc: Destroy ja paina Done.