Pong, vihdoin ja viimein


(Klikkaa peliruutua aktivoidaksesi näppäimet)

Vaikka ensimmäisen Godot-projektini valmistumisessa kesti yllättävän pitkään, ei syy ollut Godot Enginessä, vaan pikemminkin lämpimissä kesäsäissä. Nyt, ilmojen hieman viilennyttyä, sain vihdoin otettua ensimmäiset kunnon askeleet Godot-maailmaan ja samalla Pong-kloonini valmiiksi.

Päälimmäisenä tästä projektista mieleeni jäi se, miten mukavaa peliä oli askarrella Godotilla ja GDScriptillä, ja miten helposti kaikkiin vastaantulleisiin kysymyksiin löytyi vastaus joko Godotin omasta dokumentaatiosta tai pikaisella googletuksella. Ja miten näppärästi sisäänrakennetun koodieditorin tilalle sai vaihdettua Visual Studio Coden Godot Tools -lisäpalikan avulla.

Itse pelin rakentelin hyvin yksinkertaisessa muodossa. Peliruudun tekstejä lukuunottamatta koko graafinen ulkoasu koostuu suorakulmiosta, eli draw_rect()-funktio tuli projektin aikana hyvin tutuksi. Pelin tapahtumia luodessani tutustuin myös Godotin versioon tarkkailija-mallista, joka perustuu signaaleihin ja ajastimiin. Tutuksi tuli myös Godotin tapa jaotella sisältö scene-objekteihin. Ennen kuin aloittelen seuraavaa projektia, aion lukaista mitä scene-objektien organisoinnista ja käytöstä kerrotaan dokumentaation Best practises -osiossa. Päädyin nimittäin itse – näin jälkikäteen ajateltuna – toteuttamaan mailat vähän typerästi.

Nyt pelissä on yksi maila-scene, josta pelatessa esillä on kaksi ilmentymää. Maila-sceneen on liitetty vain yksi skripti, joka ihmispelaajan ohjastamana ottaa näppäinkomennot vastaan ja tietokoneen ohjaamana ennustaa mihin pallo tulee liikkumaan ja siirtelee mailaa sen mukaan. Fiksumpi tapa olisi ehkäpä ollut luoda yksi scene, joka sisältää ihmis- ja tietokonepelaajan mailojen yhteiset piirteet ja laatia periyttämällä omat maila-scenet tietokoneen ja ihmisen ohjastamille mailoille. No, jatkossa tiedän tämänkin.

Seuraavaksi sitten Breakout.

P.S. HTML5-eksporttien testaaminen käy kätevästi, jos koneelta löytyy Python 3. Siirry komentorivillä export-kansioon ja käynnistä paikallinen palvelin komennolla python -m http.server ja avaa selaimessa osoite http://localhost:8000.

 

Leave a Reply

Your email address will not be published. Required fields are marked *