Kyseisessä ohjelmassa asetamme ensimäisenä ohjelmassa valmiiksi luodun stage-olion taustan kesätaustaksi kutsumalla sen set_background –metodia ja antamalla kutsun argumentiksi ”summer”. ”Summer” argumentin ympärillä on ”-hipsut, koska summer-argumentti on tietotyypiltään string, eli merkkijonotyyppi.

Tämän jälkeen luomme siili ja kukkaoliot  Sprite-luokasta. Oliolla on luotaessa useita prototyyppejä eli ominaisuuksia kuten sen x- ja y-koordinaatit sekä vaate/ulkonäkö, jotka annamme oiota kutsuttaessa sille argumentteina.

Oheisessa harjoituksessa siili-olio ohjataan käyttäjän toimesta nuolinäppäin-tapahtumilla oikeassa reunassa olevan kukan luo.

Kun näppäimiä painetaan tai siili koskee kukkaan tapahtuu collision-tapahtuma. Tampahtuma kutsuu sille argumenttina annettua callback-funktiota. 

Left_key ja right_key -callback funktioissa kutsumme siiliolion move_right ja ja move_left -metodeja.

Collision callback-funktiossa tutkimme globaalilla muuttujalla onko siili koskenut mihinkään aiemmin ja jos ei ole, laitamme hit_sprite-parametrin sisältämän kukkaolion lentämään kutsumalla sille sen set_x_speed- ja set_y_speed –metodeja.

Collision-funktiossa luomme kukkalista-listan, jota käytämme, kun haluamme luoda lisää lentäviä erinäköisiä kukkaolioita siilin iloksi. Lisäkukkaolioden luominen ja lentoon lähettäminen toteutetaan for kukka in kukkalista –loopissa.

 

Toimiva ohjelma löytyy täältä ja voit vapaasti käyttää sitä ja yllä olevia ohjeita sekä itsesi että muiden opettamiseen ?