Aici sunt prezentate diferențele dintre versiunile selectate și versiunea curentă a paginii.
Both sides previous revision Previous revision Next revision | Previous revision | ||
module:06-conditii-in-programare:lectia-03 [2014/03/07 20:31] razvan [3. Resetare poziție pisică] |
module:06-conditii-in-programare:lectia-03 [2016/03/13 10:50] (curent) anca.balutoiu |
||
---|---|---|---|
Linia 46: | Linia 46: | ||
Mesajele în Scratch sunt transmise de la un sprite la alt sprite în momentul producerii unui eveniment. De exemplu, dacă un sprite a realizat o acțiune atunci dorește să comunice acea acțiune și altui sprite în forma unui mesaj. Pentru aceasta folosim blocurile "broadcast message" și "When I receive message", din setul "Events". | Mesajele în Scratch sunt transmise de la un sprite la alt sprite în momentul producerii unui eveniment. De exemplu, dacă un sprite a realizat o acțiune atunci dorește să comunice acea acțiune și altui sprite în forma unui mesaj. Pentru aceasta folosim blocurile "broadcast message" și "When I receive message", din setul "Events". | ||
- | Blocul "broadcast message" trimite un mesaj către toți cei care așteaptă mesaj. Blocul "When I receive message" așteaptă un mesaj să fie trimis; programul este blocat în blocul "When I receive message" până când mesajul este blocat. | + | Blocul "broadcast message" trimite un mesaj către toți cei care așteaptă mesaj. Blocul "When I receive message" așteaptă un mesaj să fie primit; programul este blocat în blocul "When I receive message" până când mesajul este blocat. |
Hai să vedem cum funcționează în [[http://scratch.mit.edu/projects/18937575/|exemplul Scratch de aici]]. Deschide exemplul și creează un remix în Scratch. | Hai să vedem cum funcționează în [[http://scratch.mit.edu/projects/18937575/|exemplul Scratch de aici]]. Deschide exemplul și creează un remix în Scratch. | ||
Linia 71: | Linia 71: | ||
Trebuie să implementezi aceste schimbări pentru programul tuturor celor trei mingi. | Trebuie să implementezi aceste schimbări pentru programul tuturor celor trei mingi. | ||
+ | |||
+ | Poți face drag pe un program peste alt sprite ca să copiezi programul în acel sprite. | ||
</note> | </note> | ||
===== 3. Resetare poziție pisică ===== | ===== 3. Resetare poziție pisică ===== | ||
Linia 77: | Linia 79: | ||
<note tip> | <note tip> | ||
- | În programul sprite-ului pisică trebuie să ai, de asemenea, un bloc ''When I receive game-over''. Când pisica primește mesajul ''game-over'', este plasată în poziția inițială. | + | În programul sprite-ului pisică trebuie să ai, de asemenea, un bloc ''When I receive game-over''. Când pisica primește mesajul ''game-over'', este plasată în poziția centrală a planșei. |
</note> | </note> | ||
===== 4. Mesaje diferite din partea câinelui ===== | ===== 4. Mesaje diferite din partea câinelui ===== | ||
Linia 86: | Linia 88: | ||
* Bravo, ai strans toate mingile. | * Bravo, ai strans toate mingile. | ||
+ | <note tip> | ||
+ | Cel mai simplu este să pui un set de blocuri ''if'' în programul sprite-ului câine. În conditii verifici dacă scorul este ''1'', ''2'' sau ''3''. | ||
+ | </note> | ||
===== 5. Mai multe mingi ===== | ===== 5. Mai multe mingi ===== | ||
- | Continuă programul anterior și pune 5 mingi pe planșă. Trebuie să ajungă acum scorul la 5 înainte să fie resetat iar câinele să spună, pe rând: | + | Continuă programul anterior și pune 5 mingi pe planșă. |
+ | |||
+ | <note tip> | ||
+ | Poți da click dreapta pe sprite-ul minge și selecta opțiunea "Duplicate". | ||
+ | </note> | ||
+ | |||
+ | Trebuie să ajungă acum scorul la 5 înainte să fie resetat iar câinele să spună, pe rând: | ||
* Bravo, mai ai patru mingi de strans! | * Bravo, mai ai patru mingi de strans! | ||
* Bravo, mai ai trei mingi de strans! | * Bravo, mai ai trei mingi de strans! | ||
Linia 94: | Linia 105: | ||
* Bravo, mai ai o singura minge de strans! | * Bravo, mai ai o singura minge de strans! | ||
* Bravo, ai strans toate mingile. | * Bravo, ai strans toate mingile. | ||
+ | |||
+ | <note tip> | ||
+ | Parcurge toate programele sprite-urilor și fă-le să meargă cu 5 mingi, nu doar cu 3. | ||
+ | </note> | ||
===== Bonus 1: Scor cu cerculețe roșii ===== | ===== Bonus 1: Scor cu cerculețe roșii ===== | ||
Linia 99: | Linia 114: | ||
Continuați programul și adăugați această funcționalitate: să ținem scorul cu cerculețele roșii. Pune cerculețele în stânga sus. Nu mai afișa variabila "scor"; este mai frumos să apară doar cerculețele. | Continuați programul și adăugați această funcționalitate: să ținem scorul cu cerculețele roșii. Pune cerculețele în stânga sus. Nu mai afișa variabila "scor"; este mai frumos să apară doar cerculețele. | ||
+ | |||
+ | |||
+ | Cel mai bine scrii programul pentru un cerculeț, apoi îl duplici și îl modifici. | ||
+ | |||
+ | Ai nevoie de trei blocuri ''When ...'' pentru fiecare cerculeț: | ||
+ | * ''When green flag clicked'' | ||
+ | * ''When I receive minge-atinsa'' | ||
+ | * ''When I receive game-over'' | ||
+ | |||
===== Bonus 2: Încă un sprite și alternanță la strâns mingi ===== | ===== Bonus 2: Încă un sprite și alternanță la strâns mingi ===== | ||
Linia 109: | Linia 133: | ||
<note tip> | <note tip> | ||
- | Folosește un mesaj ca să fie transmis când e rândul pisicii și apoi când e rândul fluturelui. | + | Programul pentru fluture este similar celui pentru pisică. Copiază programul din pisică cu drag peste sprite-ul fluture. |
+ | |||
+ | Este dificil să folosești mesaje. Cel mai bine, în funcție de tipul scorului, decizi ce faci: | ||
+ | * dacă scorul este par atunci te miști, spre exemplu, cu pisica | ||
+ | * dacă scorul este impar atunci te miști, spre exemplu, cu fluturele | ||
+ | |||
+ | E nevoie de actualizări și în programul sprite-urilor de tip minge. Acestea trebuie să crească scorul dacă sunt atinse de pisică **SAU** de fluture. | ||
</note> | </note> | ||
Linia 117: | Linia 147: | ||
===== Lucru pentru acasă ===== | ===== Lucru pentru acasă ===== | ||
- | Implementează [[http://www.youtube.com/watch?v=SHsYjWm8XSI|jocul Pong]] în Scratch. | + | Implementează [[http://www.ponggame.org/|jocul Pong]] în Scratch. |