Seekord jätkame siis sündmustega.
Esmalt vaatame, kuidas nt kuvada mängija nime:
game.Players.PlayerAdded:Connect(function(mangija)
print("Tere! "..mangija.Name.." tuli mängu")
end)
print(“Tere! “..mangija.Name..” tuli mängu”) – väljundisse kuvatav tekst, “Tere! “ ja ” tuli mängu” kuvatakse nii, nagu need on, kaks punkti (..) on kasutusel selleks, et teksti omavahel ühendada, ja mangija.Name on muutuja mangija üks omadustest, nt kuvatakse mängija nimi
end) – PlayerAdded:Connect funktsiooni lõpp (NB! pärast sõna end on sulg!)
Erinevate objektidega seotud sündmused on leitavad:
- kui muuta nähtavaks Object Browser (lehelt View ülemisest ribast aktiveerida Object Browser)
- valida sealt soovitud objekt, nt Player
- selle alt kollase piksenoolega tähistatud read, nt PlayerAdded
Alustuseks loome endale uue funktsiooni varvimine (parameetriga varvinimi):
function varvimine(varvinimi)
game.Workspace.Baseplate.BrickColor=BrickColor.new(varvinimi)
end
Kui nüüd kasutada koodi
varvimine("Gold")
muutub alusplaat koheselt kuldseks.
Jätame selle rea koodi alles ja lisame järgmise osa juhul, kui mingi objekt alusplaati puudutab.
Selleks tekitame mängualale uue detaili, nimega Kivi, ning paigutama selle õhku, st Kivi->Properties->Position y-teljel paiknemise väärtus (kolmest numbrist keskmine) peab olema nullist suurem, nt 50 (et Kivil oleks aega kukkuda ja saaksime paremini jälgida seda, mis toimub). Ja kindlasti tuleb veenduda, et Kivi->Properties->Anchored kastis ei oleks linnukest (st et see võib vabalt alla kukkuda).
Nüüd siis loome sündmuse, juhuks, kui Kivi puutub kokku alusplaadiga:
game.Workspace.Kivi.Touched:Connect(function(puutuvosa)
print("Kokkupuutuv osa: ",puutuvosa)
if (puutuvosa==game.Workspace.Baseplate) then
varvimine("Forest green")
end
end)
print(“Kokkupuutuv osa: “,puutuvosa) – väljundisse kuvatakse puutuva osa kohta info (NB! teksti “Kokkupuutuv osa: ” järel on koma (,) ja kuvatakse muutuja puutuvosa väärtus)
if (puutuvosa==game.Workspace.Baseplate) then – kui muutuja puutuvosa on game.Workspace.Baseplate (NB! võrdluse jaoks kaks võrdlusmärki (==)!)
varvimine(“Forest green”) – käivitatakse funktsioon varvimine, kus muutujale varvinimi omistatakse väärtus “Forest green”
Seekordseks ülesandeks on:
- muuta alusplaadi värvi, kui mängija astub esimest korda Kivi peale
- muuta alusplaadi värvi, kui mängija on Kivi peale astunud 10 korda
Vihjed on järgmised:
- vihje nr 1: kasutada saab eelnevat Touch sündmust, lisades if -lausesse else-osa
- vihje nr 2: kasutada saab muutujat, mis loeb kokku, mitu korda kasutaja puudutab Kivi
- muutuja tuleb määratleda väljaspool Touch-sündmust ja selle algväärtus on 0
- iga kord kui Kivi puudutatakse (else-osa all), suurendatakse muutuja väärtust 1 võrra
- vihje nr 3: kasutada saab eelneval funktsiooni varvimine
Seekordseks nuputamisülesandeks on liugpusle.