Tuesday, November 18, 2014

Mitu erinevalt liikuvat objekti ("Veemaailm")

Täna proovime valmis saada sellise rakenduse, kus on mitu liikuvat objekti ning kõik nad liiguvad erineva reeglistiku järgi.


Krabi - liigub ühtlaselt mööda põhja edasi tagasi. Vahetab kostüümi. Kui jõuab lava serva, siis põrkab tagasi.

Kollane kala (kalake) - liigub juhuslikult ja põrkab servadest tagasi. Teine skript põhjustab kala ootamatuid suunamuutusi.

Hai - ajab kollast kala (kalake) taga. Tagaajamiseks on kostüüm, millel on suu lahti. Kui saab kala kätte, siis paneb suu kinni ja saadab teate välja (teade käivitab kaheksajala skripti).


Kaheksajalg - püsib paigal kuni saabub teade "kalakäes" (hai saab kala kätte). Siis võtab kaheksajalg hoogu ja hüppab sinna, kus on kollane kala.

Punane täpiline kala - jälitab hiirekursorit. Kui saab kursori kätte, siis jääb seisma.


Lilla kala - liigub täiesti suvaliselt. Kahjuks selle liikumisploki kasutamine ei luba tal end pöörata, sellepärast ujub vahepeal saba ees.

Meritäht - liigub kukerpallitades mööda põhja. Kui jõuab servani, siis kukerpallitab teises suunas tagasi.

Sukelduja - ujub taustal aeglaselt vasakult paremale

Lisaülesanne - muuda kalakese skripti nii, et kala liikumise kiirust saaks määrata liuguriga
Selleks tuleb sisestada kalakesele muutuja (Andmed) kiirus (see tegelikult näitab seda, mitu pikslit ta korraga edasi liigub).
Liuguri saamiseks tuleb muutujat laval näidata (linnuke Andmed, kiirus ees) ja siis selle peal hiire paremat klahvi klõpsates saab valida näitamisviisiks "liugur". Samas saab määrata ka liuguri minimaalse ja maksimaalse väärtuse.




Põhjalikum juhend veemaailma loomiseks

Thursday, November 13, 2014

Muutujad - punktide lugemine

Selleks, et programm saaks sisestatud andmeid (kasutaja vastus, mõni välja arvutatud tulemus) ka edaspidi kasutada, tuleb kasutusele võtta muutujad.

Muutuja on nimega varustatud koht arvuti mälus, kuhu saab salvestada mingi väärtuse, näiteks arvu, teksti jms. Seda väärtust saab programm edaspidi kasutada, näiteks kuvab kogutud punktid, arvutab uue väärtuse või käivitab järgmise protsessi (kui muutuja väärtus saab võrdseks mingi muu väärtusega).

Muutujate lisamiseks Scratchis tuleb klõpsata nupul "Andmed" ning edasi "Loo muutuja".

Selleks, et muutujat saaks programmis edasi kasutada, tuleb anda talle nimi. Nime andmisel on üldine reegel (kehtib ka teistes programmeerimiskeeltes), et muutuja nimi peab koosnema ühest tähest või tähtede ja numbrite jadast, mis peab algama tähega. Nimes ei tohi olla tähtedest ja numbritest erinevaid märke (tehtemärgid, kirjavahemärgid, sulud jmt), välja arvatud allkriipsud. Nimes ei tohi olla ka tühikuid.



Peale muutuja lisamist tekivad "Andmed" jaotuse alla lisaplokid, mida saab programmi tegemisel kasutada.



Muutujate loomise juures on valikud:
Kõikide spraitide jaoks - muutujat saavad kasutada kõik programmi spraidid ja lava ehk muutuja muutumist saab kasutada kõikide nende skriptides. Selliseid muutujaid nimetatakse globaalseteks muutujateks.
Ainult selle spraidi jaoks - muutujat saab programmis kasutada ainult see sprait, mis oli muutuja loomise hetkel valitud. Teiste spraitide ja lava jaoks ei ole see muutuja kättesaadav. Selliseid muutujaid nimetatakse lokaalseteks muutujateks.

Kui soovid, võid kasutada õpetaja poolt eelmises tunnis valmis tehtud põhja. Selle leiad siit: http://scratch.mit.edu/projects/31939250/

Projekti täiendamiseks klõpsa nuppu "Vaata seespoolt".