App Inventor - Térképes kvíz

Ez a program egy kvíz: Magyarország és szomszédai fővárosait kell eltalálnunk a térképen. Angol nyelvű útmutató:

A játék a térkép (Map) komponenst mutatja be. A területek körülrajzolásához a geojson formátumot használjuk. Az interneten számos területet találunk meg ebben a formában; Európa országai (ami alapján ez a kvíz is elkészült), itt található: https://github.com/leakyMirror/map-of-europe.

Design

kv%C3%ADz-komponensek.png
  • Screen1 title: Magyarország és szomszédai
  • Felső HorizontalArrangement: kerüljön bele 3 felirat (Label), melyeknél a HasMargins legyen kikapcsolva.
    • Első felirat szövege: "Melyik ország fővárosa "
    • Második felirat szövege: egyelőre maradjon az alapértelmezett
    • Harmadik felirat szövege: "?"
  • Maps -> Map
    • CenterFromString: 45,20
    • Height, Width: Fill parent…
    • ZoomLevel: 4
  • A fenti térképbe kerüljön bele egy Maps -> FeatureCollection
  • Legyen alul egy Újraindít nyomógomb (a példában középre zárva).

A képernyőterv kb. így néz ki:

kv%C3%ADz-kin%C3%A9zet.png

Blocks

Először hozzunk létre egy fővárosok globális, kezdetben üres listát, valamint egy kezdés eljárást, melyet meghívunk rögtön a képernyő betöltésekor, valamint újraindításkor is:

kv%C3%ADz-k%C3%B3d1.png

Valósítsuk meg a kezdési beállításokat végrehajtó eljárást! Itt a következőket kell tenni:

  • Mindegyik országnak adjuk meg címében a fővárosát. (A zöld részeket a Térkép -> Országok alatt találjuk, az egyes országokra kattintva. Ha az egyiket kiválasztottuk, akkor már tudjuk duplázni.)
  • Töltsük fel a fővárosok globális listát az országok "címeivel". Itt amiatt kell ismét kiüríteni a lista tartalmát, mert ha az újraindítás nyomógombra kattintva jutottunk ide, akkor lehetséges, hogy nem üres.
  • Színezzük be sárgára az egyes országokat.

A kék komponenseket a Built-in -> Lists, míg a Polygon-t legalul az Any Component -> Any Polygon alatt.

kv%C3%ADz-k%C3%B3d2.png

Készítsünk egy függvényt fővárostVálaszt névvel, amely kiválaszt egy véletlenszerű fővárost, és beleírja a kérdésbe. Ezt rögtön hívjuk is meg a kezdeti beállító eljárás végén. Amiatt szervezzük ki külön eljárásba, mert máshonnan is meg fogjuk hívni.

kv%C3%ADz-k%C3%B3d3.png

Végül azt az eljárást kell megvalósítanunk, ami az egyes országokra kattintva fut le. Ezt a Screen1 -> Térkép -> Országok részen belül találjuk. Itt:

  • Ha eltalálta a játékos a megfelelő országot (tehát a kiválasztott terület címe megegyezik a kérdés második részével), akkor egyrészt beszínezzük zöldre az adott országot, kivesszük a fővárosok listából az eltalált elemet, majd ha még nem fogyott el mind, választunk egy véletlenszerű fővárost.
  • Ha nem találja el, akkor a kiválasztott ország színét pirosra változtatjuk.
kv%C3%ADz-k%C3%B3d4.png

Végeredmény: Kviz.aia.

Ezt a játékot számos ponton lehet továbbfejleszteni:

  • Ha egy ország már "kizöldült", akkor rákattintva ne legyen ismét piros.
  • Akkor is másik kérdést tegyen fel, ha a játékos nem találta el.
  • A piros (helytelen) csak egy rövid ideig villanjon fel, ne maradjon úgy.
  • A végén tűnjön el a kérdés, és írjon ki egy alkalmas üzenetet.
  • Időmérőt is be lehetne tenni.
  • Egyéb térképe egyéb kérdésekkel: pl. Magyarország megyéi.

Ezek viszont már azok a lépések, amellyel sok munkával kevés látványos eredményt tudunk elérni, így egy egyszeri alkalomba már nem férnek bele.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License