Sari la conținut
EduCamp
ScratchAvansatScratch de la zero · partea 9

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.

50 minuteNivel: AvansatEduCamp

Nume și prenume: ................................................    Clasa: .................    Data: .......................

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:

  1. Apasă Creează un bloc.
  2. Scrie numele blocului, de exemplu pregătește jocul.
  3. 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
end

Blocul 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
end

Câ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.
Autor: EduCampActualizat: 4 octombrie 2026