A Flappy bird nevű játék prototípusát készítjük el, melyben egy madár repül és folyamatosan esik lefelé, a szóközre kattintva ugrik egyet, miközben akadályokat kell elkerülnie. A játék akkor ér véget, ha akadálynak vagy a játéktér szélének ütközünk. Egy online játék ezen az oldalon található:
https://flappybird.io/.

Figyeljük meg, hogy a madár jobbra repülése illúzió; valójában egy helyben lebeg, miközben az akadályok érkeznek jobbról balra.
A játék elkészítése során megismerkedünk a feltételkezeléssel, a végtelen ciklussal, az ütközésvizsgálattal, a több jelmezzel, és rajzolni is fogunk.
Adjunk címet a játékunknak, pl. Lebegő madár.
Töröljük ki a macska szereplőt: vagy fent a kicsinyítéstől balra kettővel található ollóra kattintva, majd a macskára kattintva, vagy jobb egérrel a macskára kattintva, majd a kontextus menüből a törlést kiválasztva.
Hozzuk létre a madár szereplőt!
- Ehhez célszerű választanunk egy szereplőt a könyvtárból, pl. a papagájt (Állatok → Parrot).
- Méretezzük át megfelelően kisebbre; akkorára, hogy kényelmesen átférje az akadályon.
- Írjuk meg a madár kódját! A játék elején a megfelelő helyre ugrik, ott folyamatosan esik, szóköz lenyomására ugrik egyet, és a játék akkor ér véget, amikor vagy érinti az akadályt vagy a játéktér szélét. A kódban ismét megjelenik a végtelen ciklus, a feltételkezelés, az érzékelés, a logikai műveletek, valamint a játék vége. A kódot lépésenként építsük fel, és mindegyiket próbájuk ki: (1) folyamatos esés, (2) szóközre ugrás, (3) ütközéskor vége. Próbáljuk meg rávezetni a diákokat arra, hogy mit kell odaírni. Pl. arra, hogy a folyamatos esésnél az y koordinátát kell csökkenteni, az előző alkalom anyaga alapján rá kell tudniuk jönni.
- Ezen a ponton várjuk össze egymást.
Hozzuk létre az akadály szereplőt! Ezt magunk fogjuk elkészíteni úgy, hogy rajzolunk egyet!
- Kattintsunk az Új szereplő festése ikonra, majd változtassuk meg a nevét Szereplő1-ről Akadályra.
- Változtassuk meg az első jelmez nevét jelmez1-ről akadály1-re.
- Alakítsuk át a képet vektorossá. Itt röviden vázoljuk a vektoros és pixeles kép közötti különbségeket.
- A kitöltött téglalap eszköz segítségével rajzoljuk meg az akadály felső, majd alsó részét. Igyekezzünk középre tenni.
- Duplázzuk az akadály1 jelmezt. A név automatikusan akadály2 lesz. Egyszerűen cseréljük meg az akadálynak az alsó és a felső részét.
- Készítsük el az akadály kódját! Először tervezzük meg szóban: jobbról balra csúszik, majd amikor elérte a bal szélét, akkor jelmezt vált és ismét jobbról balra csúszik, mindez végtelenítve. A korábbiakhoz képest itt bejött a végtelen ciklus, valamint a következő jelmez utasítás. A végtelen ciklusról beszéljünk pár szót, mivel ez egy gyakran visszatérő, igen fontos utasítás lesz. A kód az alábbi:
- Futtassuk le a kódot. Itt addig ne lépjünk tovább, amíg minden diák el nem jutott eddig. Most vagyunk kb. a játék felénél.
Írjunk használati utasítást! Jobb felső sarokban láthatjuk a Vissza a projekt oldalra feliratot, arra kattintsunk, majd írjunk valamit a Használat alá, pl. ezt: A papagájt a szóköz billentyűvel lehet felfelé mozgatni.
Az alapprogram kész van, és megtalálható itt: https://scratch.mit.edu/projects/238527445/. Kiterjesztési lehetőségek (pl. ha marad még idő, vagy valaki ezt választja saját programként):
- A végén ne „fagyjon le” a program, hanem írja ki azt, hogy Vége.
- Hiba a programban: ha a játék úgy ért véget, hogy akadálynak ütközött a madár, majd újra indítjuk, akkor előfordulhat, hogy egyből véget ér. Ennek az az oka, hogy az akadály később ugrik a játéktér végére, mint ahogy a papagáj kódja ellenőrzi az ütközést. A prototípusnál, ahol az egyszerűségre törekszünk, ezt nem javítjuk, de komolyabb esteben már igen. Megoldás lehet pl. egyszerűen egy egytized másodperces szünet a papagáj kódjának elején, vagy még elegánsabban üzenetküldéssel.
- Kisebb hiányosság: a program a második jelmezzel indul. Ennek az az oka, hogy ha a jelmezváltás bal oldalon történik, akkor villan egyet, egyébként meg kétszer kellene kiírni az ugorj jobbra utasítást. Mivel a prototípusnál az egyszerűségre törekszünk, ezért így hagyjuk, de egy komolyabb megvalósításnál erre is ügyelnünk kell.
- A papagájnak (és még sok más, a könyvtárban levő szereplőnek is) két jelmeze van; repülés közben mozgathatja a szárnyait. Megvalósítás: a madár kódjában külön szálon végtelen ciklusban változtatjuk a jelmezt, 1-2 tizedmásodperces szünetekkel.
- Lehet benne több élet. A legtöbb játéknál 3 élet van. Ez még kiterjeszthető úgy is, hogy időnként megjelenik egy jutalomfalat, amivel új életet lehet szerzeni.
- Idővel begyorsulhat: 5 helyett 4, 3 stb. másodperces lehet a csúszás sebessége. Ügyelnünk kell arra is, hogy az esés sebessége és az ugrás nagysága is arányosan nőjön.
- Lehetnek benne nehezebb akadályok is, melyek csak később jönnek elő.
- Az akadályok érkezését lehet véletleníteni.
- Lehet pontszámítást belevinni, akár úgy, hogy az akadály kikerüléséért ad pontok, akár úgy is, hogy véletlenszerűen megjelenő jutalomfalatok érintéséért kap pontot a játékos.
- A maximális pontszámot lehet szerveren tárolni, és a végén gratulálni, ha sikerült megdönteni.
Egy teljesebb megvalósítás az alábbi: https://scratch.mit.edu/projects/238529648/.
A játék alapötletét a következő videó adta: https://www.youtube.com/watch?v=gzH8iX0k6aM.