Tutorial 2
1) Silmukasta > Lumisade: tee kopio esimerkistä 9c uuteen kansioon ja muokkaa esimerkkiä: (kansio sisältää fla tiedoston, Silmukka.as ja Partikkeli.as luokkatiedostot)
- muuta Silmukka luokan nimeksi Lumisade,
- muuta fla tiedoston luokkatiedosto myös viittaamaan Lumisade luokkaan
- testaa (pitäisi toimia samoin kuin 9c)
- muokkaa Lumisade luokan koodia:
- muuta Lumisade luokassa rivi:
- var particle:Partikkeli = new Partikkeli();
- riviksi:
- var lumihiutale:Lumihiutale = new Lumihiutale();
- etsi ja korvaa kaikki particle muuttujat nimellä lumihiutale
- muuta myös Partikkeli luokka tiedoston nimi Lumihiutale:eeksi
- FLA tiedostossa:
- muokkaa partikkeli movieclippiä ulkonäöltään lumihiutaleeksi
- muuta partikkeli movieclipin Export for actionscript luokka nimeksi: Lumihiutale
- testaa: (pitäisi toimia samoin kuin 9c)
- muuta Lumisade luokkaa seuraavasti:
- konstruktori funktion parametrit:
- public function Lumisade(stagex:uint=550,stagey:uint=400) {
- stage.stageWidth korvataan stagex muuttujalla:
- lumihiutale.x=Math.random()*stagex; //stage.stageWidth;
- samoin stage.stageHeight:
lumihiutale.y= Math.random()*stagey;//stage.stageHeight;
- luo LumisadeTesti luokka:
package { import flash.display.MovieClip; public class LumisadeTesti extends MovieClip { // Constructor public function LumisadeTesti() { var lumisade:Lumisade = new Lumisade(); addChild(lumisade); } } }
- linkitä fla LumisadeTesti luokkaa ja testaa
- luo fla tiedosto jossa kaksi tekstikenttää ja nappi: tekstikenttien instansinnimet: output, input ja napin instassin nimi: arvausNappi
- tekstikentät tyyppiä: classic text
- output tekstikenttä tyyppiä: dynamic text
- ja input tyyppiä: input text
- valitse input tekstikenttään "show border around text" säätö
- lisää dynaamisiin tekstikenttiin: Embed text toiminnolla: Uppercase, lowercase ja numerals sekä Also include these characters kentään ä ja ö kirjaimet: äöÖÄ (myös jokunen välimerkki tarvitaan)
- output tekstikenttä behaviour: multiline
- anna fla tiedostolle luokka ArvausPeli02
- tee uusi versio ArvausPeli03, jossa lisää toimintoja
- luo uusi nappi, jonka instanssinimi on pelaaUudelleenNappi ja lisää monisteen (lihavoidut) rivit init metodiin
Koodi selityksiä:
- Mikä on "\n"?
- se on ns. korvausmerkintä (escape character), joka luo rivinvaihdon merkkijonon sisällä: lisätietoo: help ActionScript Creating strings
- Math.ceil?
- ActionScript 3.0 Language Reference> Classes > Math > Math.ceil
- uint() metodi
- nykyinenArvaus = uint(input.text); // muuttaa syötteen positiiviseksi kokonaisluvuksi
- arvauksiaJaljella--;
- vähentää luvun yksi muuttujan arvosta
- arvauksiaTehty++;
- lisää luvun yksi muuttujan arvosta
- init(); metodi?
- init metodissa paketoidaan kaikki pelin alustuskoodit
tehtäviä:
- koodaa Numero arvauspeli ohjelman vastaukset seuraaville tilanteille
- jos käyttäjä ei laita mitään numeroa ennen arvausnapin painamista
- erilainen vastaus jos käyttäjä antaa numeron, joka ei ole 1-100 välillä
Extra tehtäviä:
- tee numeron arvauspelistä variaatio:
- kirjaimen arvauspeli