teisipäev, 15. november 2016

Joonejärgija mäng (edasiarendus)

Jätkame joonejärgimise mängu täiustamist.

Uue "leveli" loomine ja märguanne "leveli" vahetuseks

Joonejärgimise mängus tuleb uue "leveli" jaoks joonistada uus taust (Lava -> Taustad -> Uue tausta joonistamine ehk pliiatsi märk) või teha olemasolevast taustast koopia (paremhiireklõps taustal -> paljunda) ning seal joont muuta.

Päästiku lisamine "leveli" vahetuseks

Selleks, et joone lõppu jõudes taust vahetuks (kuvatakse järgmine, keerulisem taust), on mitu võimalust
- võib määrata liigutatava spraidi asukoha koordinaadid ja öelda, et kui tegelane jõuab teatud punkti (joone lõpp), siis taust vahetub

- võib joonistada taustale joone lõppu teist värvi riba ja öelda, et kui tegelane puudutab seda värvi, siis taust vahetub


- võib teha uue spraidi (võib olla mingi kujuga, näiteks uks, aga võib olla ka lihtsalt riba) ja öelda, et kui tegelane puudutab seda spraiti, siis taust vahetub

Ülaltoodud võimalused tuleb siis lisada liikumise skripti sisse tingimuslausena (kui ... siis).

Lava kostüümide (taustad) vahetumised peaksid algama teate peale. Kui kostüümid on järjest, siis sobib ka välimuse alt klots "järgmine taust".


Tegelaste näitamine ja peitmine

Mängu käigus tuleb tegelasi ka peita. NB! Kui kasutad välimuse alt "peida" klotsi, siis tuleb kusagile kindlasti lisada ka "näita" (vähemalt mängu algusesse, sest muidu jääb tegelane peale esimest läbimängimist peidetuks).

Lisame mängule ühe tegelase (näiteks õuna), mis ilmub lava ülemisest servast ja langeb alla. Hiljem saame selle tegelase siduda punktide saamisega, aga esialgu paneme ta lihtsalt liikuma.

Õuna ilmumine on siin seotud teatega "liigu", mille peale õunad kukkuma hakkavad.
Alguses tuleb määrata punkt, kus õun nähtavale ilmub (lava ülemine serv, y-koordinaat peaks alloleva näite puhul olema selline, et õun lava serva ei puudutaks, sest liikumise lõppemine on kontrollitud serva puutumisega).
Siin saab kasutada juhuarvu klotsi. Juhuarv on etteantud vahemikust juhuslikult valitud arv. Alloleva näite puhul valitakse x koordinaadi väärtus vahemikust -220 kuni 220 ehk siis lava piirid (nii, et õun serva ei puudutaks).

Liikumine lõpeb alumise serva puudutamisel ja siis õun peidetakse, et 2 sekundi pärast jälle lava ülemisest servast teda näidata.

Mängu lõpetamine

Sellest, et mäng läbi sai, oleks hea ka mängijale teada anda. 
Mängu lõpetamiseks on jällegi mitu võimalust:
- luua mängu lõpust teavitav taust ja anda talle nimi (alloleval näitel on sellise tausta nimeks finish). Nüüd saab lisada kontrollploki, et kui tausta nimeks saab lõputausta nimi, siis peatatakse programm ja peidetakse tegelased).
- luua muutuja, mis suureneb "levelite" kasvades ja teatud arvu juures kuvab teate mängu lõppemise kohta (muutujatega tegeleme järgmisel tunnil).

Ülesanne
  • Loo olemasolevale mängule veel 2 "levelit" ja programmeeri nende vahetumine.
  • Loo lavale ka taust lõpp, mis annaks mängijale teada, et nüüd sai mäng läbi.
  • Loo objekt, mis hakkab ülevalt lava servast suvalistest kohtadest alla kukkuma.