App Inventor Űrhajó
Most megvalósítjuk az űrhajós játék mobiltelefonos változatát. A Scratch változat itt látható: https://scratch.mit.edu/projects/238536384/. (Ehhez hasonló program található itt: http://appinventor.mit.edu/explore/ai2/space-invaders.html.) A megvalósítás során néhány előre valószínűleg nem várt nehézséggel nézünk szembe:
- Az App Inventorban nem lehet szereplőről másolatot készíteni. Ez egy olyan korlátozás, mely kizárja pl. azt, hogy egyszerre több golyó legyen a képernyőn.
- Az App Inventor szereplőválasztéka igen gyér: lehet kitöltött kör (ami a golyónak pont megfelel), és egy általános szereplő, amihez nekünk magunknak kell feltöltenünk a képét. A képek többnyire pixelesek (és valószínűleg nem is tud a rendszer vektoros képet kezelni).
- Ezzel kapcsolatos következő probléma: a kép beszerzése. Fontos ugyanis, hogy a háttér átlátszó legyen. (Az ilyen képek elkészítése kívül esik ezen a tanfolyamon)
A mostani programhoz az alábbi szereplőkre lesz szükség, melyeket a megvalósítás felgyorsítása érdekében innen feltölthetőek:
A képernyő portré módú legyen. A designerben hozzuk létre az alábbit:
- A Screen1-en adjunk nevet a játéknak, pl. Űrhajó.
- Adjunk hozzá egy vásznat (Canvas), amely kitölti a teljes ablakot. A színe legyen fekete.
- A vászonra helyezzünk 4 szereplőt:
- Űrhajó (ImageSprite, a magasság-szélesség legyen 100x70 képpont, a képe (Picture) legyen a fenti űrhajó, az X-Y pozíciója (120, 300))
- Boszorka (ImageSprite, 70x80 képpont, boszorkány kép, (120, 0), a sebessége (Speed) legyen 10.0)
- Vége (ImageSprite, 50x150, vége kép, (87, 127), kapcsoljuk ki a láthatóságát)
- Golyó (Ball, narancssárga, átmérő: 10, a pozíció mindegy, kapcsoljuk ki a láthatóságát)
A képernyő így néz ki:
Készítsük el a kódot!
- Az űrhajó mozgatásának a kódja az alábbi. Mivel igen látványos, kezdhetjük ezzel. Mozgatni a szereplő vonszolásával tudjuk.
- A játék elején az beállító rész a következő. Célszerű a fenti kódrészlet fölé helyezni. Az új_játék egy eljárás: Procedures → to … do; itt adjunk neki nevet. (Az boszi szintén egy eljárás, amit később valósítunk meg; azt egyelőre hagyjuk ki.)
- Ha a játékos rákattint az űrhajóra, akkor az űrhajó lő egyet. Amíg egy golyó repül, másikat nem lehet lőni. Ennek ez a kódja:
- A boszorkány kódja az alábbi. Ha a boszorkány eléri a játéktér szélét, akkor egy fenti véletlenszerű pozícióba ugrik, és elindul az űrhajó felé. Ne feledjük a már elkészített új_játék eljárásba beletenni az eljárás meghívását.
- Ha a golyó eltalálja a boszorkányt, akkor az eltűnik, majd újraindul.
- Ha a boszorkány nekimegy az űrhajónak, akkor véget ér a játék.
- Végül a játék újraindul, ha rákattintunk a VÉGE feliratra.
Végeredmény: Urhajo.aia.
Még nagyon sok kiterjesztési lehetőség van: több élet, több szereplővel megoldott több golyó és több boszorkány, gyorsuló, nehezedő játék, pontszámítás stb.
oldalváltozat: 29, utoljára szerkesztve: 01 Jul 2021 08:11