Harjoitustehtävä 10


Tässä harjoitustehtävässä toteutetaan “naamapeli” sovellus. Sovelluksessa naama liikkuu laitetta kallistettaessa. Tässä onnistutaan käyttämällä kiihtyvyyssensoria.

Tarvittavat komponentit ovat

  • Canvas (piirtoalusta Drawing & Animation -luokasta)
  • Imagesprite (naamalle myöskin Drawing & Animation -luokasta)
  • Clock (eli kello / ajastin Sensors -luokasta)
  • AccelometerSensor (eli kiihtyvyyssensori Sensors-luokasta)

Voit etsiä / luoda / muokata itse sopivan kuvan imagespritelle (sekä taustakuvan canvasille). Kuva voidaan asettaa imagespriten asetuksista (Properties -> Picture).

Blocks

Aloitetaan alustamalla Canvasin koko ja imagespriten (eli naaman) sijainti ruudulla:

Seuraavaksi voitaisiin luoda oma proseduuri (Procedure, vertaa funktio / metodi) Imagespriten (eli naaman) liikkumiselle. Ideana on muuttaa sijaintia kiihtyvyyssensorin antaman lukeman [-9,9] verran haluttuun suuntaan. Naama ei kuitenkaan voi liikkua ulos Canvas -alustalta, joten liikuttamiselle tarvitaan if-ehtolause. x-akselin ja y-akselin suuntaiset liikkeet voidaan toteuttaa erikseen / peräkkäin (kuten alla).

Seuraavaksi asetetaan Clock eli kello / ajastin toistamaan liikutaNaamaa-proseduuria (muista säätää Clock-komponentin ominaisuuksista TimerInetrvall -parametria)

Lisätehtävä:

Tee sovelluksesta peli lisäämällä sinne muitakin spritejä ja luomalla näille jonkinlaista tekoälyä. Voit esimerkiksi laittaa toisen ImageSpriten jahtaamaan naamaa. Tämä onnistuu ImageSpriten metodilla “PointTowards”. Tästä harjoitustehtävästä voidaan myös jalostaa kurssin harjoitustyö.