Blocurile mele
Secvențele de blocuri care se repetă devin un bloc nou, cu nume ales și cu parametri. Scripturile se scurtează și se citesc mai ușor.
Ai nevoie de:
- Un calculator cu acces la internet
- Proiectul cu labirintul, din fișa a patra
1. Un bloc nou
Categoria Blocurile mele conține blocurile create de autorul proiectului. Un bloc nou se creează astfel:
- Apasă Creează un bloc.
- Scrie numele blocului, de exemplu
pregătește jocul. - Apasă OK.
În zona de cod apare blocul definește pregătește jocul. Blocurile puse sub el se execută oriunde se folosește blocul nou.
definește pregătește jocul setează [scor v] la (0) setează [vieți v] la (3) mergi la x (0) y: (-130) schimbă costumul la [costume1 v]
când primesc [start joc v] pregătește jocul arată
2. Parametrii
Un parametru este o valoare dată blocului la fiecare folosire. În fereastra Creează un bloc sunt butoanele:
- Adaugă o intrare (număr sau text): un câmp alb, în care se scrie o valoare;
- Adaugă o intrare (boolean): un câmp pentru o condiție;
- Adaugă o etichetă: un text între parametri, care face blocul mai ușor de citit.
Parametrul apare în blocul definește ca un bloc rotunjit cu numele lui. Se trage de acolo în blocurile din definiție.
Blocul de mai jos face personajul să sară la înălțimea dată:
definește sari (înălțime) repetă (10) modifică y cu ((înălțime) / (10)) end repetă (10) modifică y cu ((0) - ((înălțime) / (10))) end
când tasta [spațiu v] este apăsată sari (60)
3. Labirintul, cu un bloc nou
În labirintul din fișa a patra, aceeași secvență se repetă de patru ori: pasul, verificarea peretelui, pasul înapoi. Cu un bloc cu doi parametri, secvența se scrie o singură dată:
definește pas x (dx) y (dy) modifică x cu (dx) modifică y cu (dy) dacă <atinge culoarea [#000000]?> atunci modifică x cu ((0) - (dx)) modifică y cu ((0) - (dy)) end
când se dă click pe @greenFlag
la infinit
dacă <tasta [săgeată dreapta v] apăsată?> atunci
pas x (3) y (0)
end
dacă <tasta [săgeată stânga v] apăsată?> atunci
pas x (-3) y (0)
end
dacă <tasta [săgeată în sus v] apăsată?> atunci
pas x (0) y (3)
end
dacă <tasta [săgeată jos v] apăsată?> atunci
pas x (0) y (-3)
end
endBlocul a fost creat cu: intrarea dx, eticheta y, intrarea dy, iar numele începe cu pas x.
4. Execuția fără împrospătarea ecranului
În fereastra Creează un bloc există opțiunea Rulează fără împrospătarea ecranului. Cu ea bifată, toate blocurile din definiție se execută înainte ca scena să fie redesenată. Opțiunea se folosește pentru calcule și pentru desene, nu pentru mișcări care trebuie să se vadă pas cu pas.
Exerciții
🔑 Rezolvare
definește clipește (ori) repetă (ori) ascunde așteaptă (0.2) secunde arată așteaptă (0.2) secunde end
când se dă click pe @greenFlag
la infinit
dacă <atinge [Rocks v]?> atunci
modifică [vieți v] cu (-1)
clipește (3)
end
endCât timp personajul clipește, scriptul nu verifică din nou atingerea, deci aceeași piatră nu scade două vieți.
🔑 Rezolvare
definește anunță (text) (valoare) spune (alătură (text) (valoare)) pentru (2) secunde
când primesc [nivel terminat v] anunță [Scor: ] (scor) anunță [Nivel: ] (nivel)
🔑 Rezolvare
Personajul parcurge conturul unui pătrat cu latura de 100 de pași, apoi conturul unui pătrat cu latura de 50 de pași. După fiecare pătrat se rotește de 4 ori cu 90°, adică o dată complet, deci ajunge în locul din care a pornit, cu aceeași orientare.
Ce ai învățat
La finalul fișei, poți:
- să creezi un bloc nou din categoria Blocurile mele;
- să adaugi parametri și etichete unui bloc;
- să înlocuiești o secvență repetată cu un bloc cu parametri;
- să alegi când se folosește opțiunea Rulează fără împrospătarea ecranului.