Nivelurile jocului
Jocul are trei provocări, una după alta. O variabilă ține minte nivelul curent, iar mesajele pornesc fiecare nivel și anunță finalul jocului.
Ai nevoie de:
- Un calculator cu acces la internet
- Proiectul cu meniul, din fișa anterioară
1. Structura unui joc cu niveluri
Un joc cu niveluri se construiește din:
- o variabilă
nivel, care ține minte nivelul curent; - câte un decor pentru fiecare nivel:
Nivel 1,Nivel 2,Nivel 3; - un mesaj
pornește nivelul, la care fiecare personaj se pregătește pentru nivelul curent; - o condiție de trecere pentru fiecare nivel, de exemplu „scorul ajunge la 5” sau „personajul atinge ieșirea”.
Scriptul care conduce nivelurile se pune pe scenă:
când primesc [start joc v] setează [nivel v] la (1) difuzează [pornește nivelul v]
când primesc [pornește nivelul v] schimbă decorul la (alătură [Nivel ] (nivel))
Blocul „alătură” formează numele decorului din textul „Nivel ” și valoarea variabilei. Pentru
nivelul 2 se obține Nivel 2.
2. Trecerea la nivelul următor
Când condiția de trecere este îndeplinită, se trimite mesajul nivel terminat. Scena verifică
dacă mai urmează un nivel:
când primesc [nivel terminat v] modifică [nivel v] cu (1) dacă <(nivel) > [3]> atunci difuzează [câștigat v] altfel difuzează [pornește nivelul v] end
3. Personajele fiecărui nivel
Un personaj care apare numai la un nivel se arată sau se ascunde la mesajul pornește nivelul:
când primesc [pornește nivelul v] dacă <(nivel) = [2]> atunci mergi la x (200) y: (-150) arată altfel ascunde end
Personajul principal apare la fiecare nivel, dar pornește din alt loc:
când primesc [pornește nivelul v] dacă <(nivel) = [1]> atunci mergi la x (0) y: (-130) end dacă <(nivel) = [2]> atunci mergi la x (-200) y: (-150) end dacă <(nivel) = [3]> atunci mergi la x (0) y: (-150) end arată
4. Trei provocări diferite
Fiecare nivel are altă provocare și altă condiție de trecere:
- Nivelul 1: personajul culege 5 mere; trecerea are loc când scorul ajunge la 5;
- Nivelul 2: personajul trece printr-un labirint; trecerea are loc când atinge ieșirea;
- Nivelul 3: personajul se ferește de pietre timp de 20 de secunde; trecerea are loc când timpul se termină.
Scriptul care verifică trecerea de la nivelul 1:
Condiția este „scor > 4”, nu „scor = 5”: dacă un obiect aduce mai multe puncte deodată, scorul poate trece de 5 fără să fie vreodată egal cu 5.
când primesc [pornește nivelul v] dacă <(nivel) = [1]> atunci setează [scor v] la (0) așteaptă până când <(scor) > [4]> difuzează [nivel terminat v] end
Exerciții
🔑 Rezolvare
Pe lângă scripturile din fișă, scena are:
când tasta [n v] este apăsată difuzează [nivel terminat v] // numai pentru încercare; se șterge la final
când primesc [câștigat v] schimbă decorul la [Câștigat v]
🔑 Rezolvare
când primesc [pornește nivelul v] dacă <(nivel) = [2]> atunci mergi la x (210) y: (150) arată așteaptă până când <atinge [Sprite1 v]?> ascunde difuzează [nivel terminat v] altfel ascunde end
Ieșirea se ascunde înainte de mesaj, ca să nu fie atinsă încă o dată.
🔑 Rezolvare
când primesc [pornește nivelul v]
dacă <(nivel) = [3]> atunci
setează [timp v] la (20)
repetă până când <(timp) = [0]>
așteaptă (1) secunde
modifică [timp v] cu (-1)
end
difuzează [nivel terminat v]
end🔑 Rezolvare
start joc→ nivel = 1 →pornește nivelul;- primul
nivel terminat→ nivel = 2 →pornește nivelul; - al doilea
nivel terminat→ nivel = 3 →pornește nivelul; - al treilea
nivel terminat→ nivel = 4, mai mare decât 3 →câștigat.
Ce ai învățat
La finalul fișei, poți:
- să ții minte nivelul curent într-o variabilă;
- să schimbi decorul după nivel, cu un nume format cu „alătură”;
- să arăți și să ascunzi personajele după nivel;
- să construiești condiția de trecere pentru fiecare nivel și ecranul de final.