teisipäev, 20. detsember 2016

Joonistamine (ilutulestik)

Täna vaatame joonistamise tööriista. Scratchis on võimalik spraidiga lavale joonistada (vastavalt etteantud programmile või siis näiteks nooleklahve kasutades spraiti juhtides - vt. http://viimsiproge.blogspot.com/2014/10/5-tund-tegelaste-juhtimine-klaviatuuri.html).
Oluline on teada, et joon jääb nähtavaks siis, kui pliiats on all (pliiats alla) ning joonistamine (joone näitamine) lõpeb siis, kui pliiats on üleval (pliiats üles).

Kogu joonistuse kustutamiseks on käsklus "kustuta" (see kustutab ära kõik jooned, mitte ainult viimase).

Jäljend teeb objektist koopia ehk jätab maha objektikujulise jälje. Erinevalt kloonist ei saa jäljendeid eraldi programmeerida. Kõik jäljendid saab kustutada "kustuta" nupuga.

Ülesanne 1 - ilutulestiku loomine
Laval suvalises kohas klõpsates "plahvatab" seal iga kord erinevat värvi "ilutulestik".
  1. Loo uus projekt ning vali taustaks näiteks öine linn, eemalda kass. Pane projektile nimeks "ilutulestik".
  2. Lisa joonista sprait, mis koosneks 5-6 punktikesest. Spraiti joonistades vaata, et punktikesed satuksid enam-vähem ümber keskpunkti tähistava ristikese! Ristikese nägemiseks joonistusvälja paremal all olevat suurendusnuppu!
  3. Selleks, et ilutulestik ilmuks laval seal, kus parasjagu hiirega klõpsati, tuleb kirjutada lavale skript (klõpsa laval ja vali "skriptid"), mis saadaks peale klõpsamist ilutulestikule teate, et siin tuleb "plahvatada". 
  4. Plahvatamisel peaks sprait (täpikesed) alguses olema väike (võta suuruseks näiteks 5%) ning siis jäljendit jättes järjest suurenema (näiteks 20 korda ning muuda suurust 10 võrra).
  5. Selleks, et "ilutulestik" oleks iga kord erinevat värvi, lisa värvi efekti plokk selliselt, et iga kord võetakse erinev värv (kasuta juhuarvu vahemikus 1 kuni 255).
  6. Loo võimalus "ilutulestiku" kustutamiseks ehk lava puhastamiseks. Selleks kasuta "kustuta" käsklust, mis võiks käivituda näiteks tühiku vajutamisel.


J. Vilipõllu tööleht 

Ülesanne 2 - erinevad ilutulestikud
Laval suvalises kohas klõpsates "plahvatavad" seal erinevad "ilutulestikud".
  1. Täienda eelmist projekti teist tüüpi "ilutulestikuga". Selleks, et erinevat tüüpi ilutulestikud ei "plahvataks" kõik ühest kohast, tuleb kasutada muutujat, mis käivitab iga kord ainult 1 "ilutulestiku".
  2. Erinevat tüüpi ilutulestiku saamiseks katseta näiteks sellega, et lisa eelmise ilutulestiku kordusskripti juurde pööramine. 
  3. Kui lisad korduskripti y koordinaadi muutumise näiteks -3 võrra, siis saad allapoole langeva ilutulestiku.
Näide:

esmaspäev, 19. detsember 2016

Animeeritud jõulukaardi valmistamine

Jõulukaart

Täna proovime Scratchiga teha animeeritud jõulukaarti ja seda siis ka avalikustada nii, et saate tuttavatega jagada.
1. Ava Scratch keskkond ning loo uus projekt.

2. Otsi internetist üks ilus jõulupilt või kasuta taustapildina Scratchi enda taustu.
Vabalt kasutamiseks mõeldud pilte leiad:  https://pixabay.com/ ja https://www.pexels.com/ (fotod), https://openclipart.org/ (animatsioonid)
Taust salvesta arvutisse ja siis lae sealt Scratchi keskkonda üles.
Samuti võid tausta ise joonistada, kasutades Scratchi joonistusvahendeid.

NB! Kui soovid, et näiteks internetist leitud pildil olevad tegelased "räägiksid", siis tuleb sama taust ka tegelasena Scratch keskkonda üles laadida ning tegelane sealt lihtsalt välja lõigata (kustuta ülejäänud taust ära) ning siis sättida, et ta taustapildil õigel kohal oleks.

3. Lisa pildile tegelased, kes liiguksid ja ütleksid midagi (näiteks "Häid jõule" vms).

Programmi saab lisada ka muusikat. Vabalt kasutamiseks mõeldud helifaile leiad: http://viimsiharidustehnoloog.blogspot.com.ee/2017/09/tasuta-helifailide-pangad.html

4. Lisa pildile lumehelbed. 
Pidevalt "alla kukkuvate" lumehelveste tegemiseks saad kasutada joonemängu kukkuva "õuna" skripti.
Paljunda lumehelbeid ning muuda nende skripti nii, et osa muudaksid kukkudes värvi, osa liiguksid nagu lumehelbed vabalt langedes lisaks allapoole liikumisele veel ka vasakule ja paremale (liugleksid).

5. Kui jõulukaart on valmis, siis avalikusta see (nupp "Jaga") ja lisa oma rühma Stuudiosse.

Näide:



Lisaülesanne - taustamuusika lisamine
http://multimeediaring.blogspot.com/2012/11/muusika-lisamine-videole-voi-piltidele.html

pühapäev, 18. detsember 2016

Mäng agar.io ainetel

Täna proovime valmis teha mängu lihtsustud versiooni, kus üks "täpp" sööb teisi täppe ja muutub seeläbi ise järjest suuremaks.

Ülesanne 1

  1. Loo uus projekt ja eemalda sealt kass.
  2. Joonista uus täpikujuline sprait - see, millega hakkad teisi täppe püüdma
  3. Joonista teine täpikujuline sprait - see, mida hakatakse sööma.
  4. Programmeeri mängutäpi liikumine (täpp liigub hiirekursori suunas, lisa ka kontroll, et ta hiirekursori juurde jõudes lõpetaks liikumise ehk siis liiguks ainult siis, kui kaugus hiirekursorist on teatud numbrist suurem).

  1. Loo muutuja (näiteks nimega "suurus"), mis hakkab mängutäpile suuruse muutmiseks märku andma. Muutuja peab olema kindlasti kõikide spraitide jaoks kättesaadav.


"Söögiks" olevate täppide tekitamiseks on kõige parem kasutada kloonimist. Täpp teeb endast teatud aja järel koopia ning et neid koopiaid liiga palju ei saaks, siis veidi aja pärast ka kustutab ennast.


Samad täpid saab panna ka reageerima kokkupuutele mängutäpiga.
Muutuja "suurus" tuleb lisada mängutäpi skripti, et mängutäpi suurus teise täpi puudutamisest ("ära söömisest") muutuks.

Kui soovid, et täpid vahepeal ka kaoks, siis lisa "söögitäppide" skripti kloonide kustutamine.

Ülesanne 2
  1. Lisa mängutäpile ka kontroll, et kui ta läheb liiga suureks, siis annaks mäng sellest teada ja lõpetaks (või muudaks mängutäpi tagasi algsuurusesse).
Ülesanne 3
  1. Mõtle, kuidas muuta programmi nii, et mida suuremaks muutub mängutäpp, seda aeglasemalt ta liikuma hakkab! Vihje: muutuja nimega "kiirus".




teisipäev, 13. detsember 2016

Matemaatikamäng

Ülesanne 1

Loo matemaatikamäng, kus mängija käest küsitakse erinevaid matemaatikatehteid (5-10 erinevat) ja antakse tagasisidet, kas vastus oli õige või vale.
Anna mängijale mängu alguses teada, mitu tehet temalt küsitakse.

Näiteid programmi koostamiseks leiad siit.

Vihje: et programm küsiks iga kord erinevate arvudega tehteid, siis kasuta juhuarvu! Kuna pead programmi alguses päris tihti ka testima, siis alusta näiteks vahemikuga 1 ... 10.


Selles näites loeb punkte muutuja nimega "loendur". Uusi tehteid küsitakse seni, kuni vastaja on kogunud 3 punkti. Iga vale vastuse eest võetakse punkt maha.



Ülesanne 2

Lisa oma matemaatikamängu muutuja, mis loendaks õigeid vastuseid.
Anna mängijale peale vastamist teada, mitu vastust tal õiged olid (osavamad võivad anda teada ka õigete vastuste % ja näiteks sellele vastava tähe).


Ülesanne 3

Disaini oma mängule sobiv taust, mõtle välja algus ja lõpp ja kujunda vastavalt kas lavapildid või pane tegelane ütlema vastavaid teateid.


NB! Jaga oma mängu Stuudios!

Ideid matemaatikamängudeks!



Täiusta oma mängu ("levelid", erineva tehted) ja esita see kooli programmeerimisvõistlusele!