véletlenszám címkével jelölt bejegyzések

Listák

Ebben a leckében megtanulod használni:

  • A listákat
  • variables8_131

A változók után ebben a leckében a listákkal ismerkedhetsz meg. A következő játékot készítjük el, melyben az irányítótorony által meghatározott város fölé kell repülni (ha odaértél, nyomd meg a szóköz billentyűt).

A listákban számokat vagy szövegeket tárolhatunk sorban egymás után. Új elem hozzáadásakor az elem a lista végére kerül, tehát ez a szerkezet hasonlít egy egyszerű bevásárló listához: ha eszünkbe jut valami, amit venni kell, a lista végére írjuk.

A listák létrehozása

Listákat is a változók csoportban hozhatsz létre a variables8_131 gombbal. A létrehozás ugyanúgy történik, mint változók esetén. A lista létrejötte után megjelennek a listakezelő parancsok:010203

A listák elemeit felveheted, törölheted és módosíthatod a program működése közben a fenti parancsok segítségével, vagy a játéktérben megjelenő listakezelőben is:04

Azt, hogy melyik listakezelési módot érdemes használni, mindig az adott probléma határozza meg.

A játék elkészítése

  • szereplők: repülő, irányítótorony (tőle kapja a repülő a következő célállomást), város (de ő csak hiba esetén jelzi célváros helyét). A hátteret és a szereplőket letöltheted.
  • változó: cél (a célállomás listabeli sorszámát tartalmazza)
  • listák: város (az európai fővárosok nevét tartalmazza), X_koordináta (a városok x koordinátáját tartalmazza), Y_koordináta (a városok y koordinátáját tartalmazza)
  • A játék: repülj a repülővel az irányítótorony által megadott város fölé, majd nyomd meg a szóköz billentyűt. Ha jó város fölé szálltál, akkor új feladványt kapsz. Ha rossz a találatod, akkor egy pillanatra felvillan a város helye, megmutatja, hová kell repülnöd.
  • Először hozd létre a listákat. A városok nevét és a megadott háttérhez tartozó koordinátáikat itt találod. Figyelj arra, hogy a város neve, x és y koordinátái az egyes listák ugyanolyan sorszámú helyére kerüljenek. Ha túl hosszúnak találod a listát, elég csak 5-10 város adatait megadnod belőle, a játék működését ez nem befolyásolja.

Az irányítótorony feladatai05A város feladatai06A repülőgép feladatai

A repülőgép irányítása tetszőlegesen megvalósítható. Egy feltételre kell figyelni: amikor a játékos megnyomja a szóköz billentyűt, akkor előfordulhat, hogy bár a repülő a megfelelő város fölött van, mégis téves üzenetet küld a program. Ez azért van, mert nagyon nehéz pontosan eltalálni a játéktér egy bizonyos koordinátájú pontját. A játék akkor is élvezetes marad, ha 10 pixelnyi “szabadságot” adunk a cél eltalálásakor:Clipboard01

Mentsd el a projektedet repcsi néven!

A kész játékot ide kattintva megtekintheted.

Írta és tervezte: Takács Valéria

Változók és véletlenszámok

Ebben a leckében megtanulod használni:

  • A változókat
  • variables1

Az eddig megismert módszerekkel nem lehet igazán izgalmas, „tétre menő” játékokat készíteni. Ebben a leckében végre megtudhatod, hogyan lehet például pontokat szerezni és időt mérni.

A következő játékot készítjük el:

Változó

A változó (az informatikában) legegyszerűbben megfogalmazva olyan hely a számítógépen, ahol valamilyen mennyiséget tárolunk. A változónak van neve és valamilyen értéke – ez az érték a program futása során változhat.

A változót úgy lehet elképzelni, mint egy dobozt, amelyben tárolhatunk valamilyen értéket. Amikor szükségünk van rá, akkor azt kivesszük és felhasználjuk, majd esetleg egy másik értéket teszünk vissza helyette.

Változók

A játék elkészítése

  • Szereplők: tátogó fej, színes labdák (könnyen megrajzolhatod, de le is töltheted őket)
  • Változó: pontszám
  • A szereplők mozgása, irányítása kissé eltér az eddigiektől. Erről a hajtás után, a véletlenszámok kapcsán olvashatsz.
  • A játék lényege, hogy a fejet irányítva 30 másodperc alatt (ennek megvalósítását Az óra című leckében találod) minél több pontot kell szerezni a véletlenszerűen mozgó színes labdák elkapásával. A fekete labda érintése pontlevonással jár.

Pontszámolás

  • A pontszám a játék indulásakor 0. Eggyel nő, ha a fej elkap egy színes labdát és eggyel csökken, ha hozzáér a feketéhez. Tehát a pontszám egy változó. Létrehozása:Változók

Változók2

  • Ekkor megjelenik a pontszám változó és a vele kapcsolatos parancsok a parancskészlet változók csoportjában, a játéktérben pedig a változó „kijelzője”. Ez háromféle lehet, a jobb egérgombbal kattintva előjövő helyi menüből választható ki, hogy melyik jelenjen meg a játéktérben. (ha nem szeretnéd, hogy a játéktérben megjelenjen a változó, tüntesd el a pipát a változó neve elől a parancskészletben):

Változók

  • Első lépésként állítsuk be, hogy a pontszám kezdetben 0 legyen. Ezt a feladatot adjuk pl. a játéktérnek (de mindegy, hogy melyik szereplő kapja ezt a feladatot).Clipboard03
  • Ha valamelyik színes golyó hozzáér a fejhez, akkor a pontszám nőjön eggyel:
  • A fekete golyó nem tűnik el érintkezéskor, így máshogyan kell megoldani a pontlevonást, különben több pontot is levonna, amíg áll. Ezért is van szükség a várakozásra, hogy addig a fej el tudjon menni a közeléből. Az érintkezés akár 1 Változókmásodpercig is eltarthat, ezalatt az idő alatt a program fut tovább – mindig érintkezést érzékel, így többször is levon egy pontot (pedig látszólag csak egyszer találkozik a két szereplő).
    A színes golyóknál ez azért nem probléma, mert az érintkezéskor azonnal eltűnnek és a láthatatlan szereplőkre nem működik az érintkezésvizsgálat. Tehát a fekete golyó feladatai:Fekete

Véletlenszámok

A játékban a labdák véletlenszerűen mozognak, a fej pedig egy kicsit „gyorsabb”, mint az eddigi főszereplőink. Most megtudhatod, hogyan lehet ezt megoldani.

A véletlenszámok nagy segítséget jelenthetnek a játékok elkészítésében. Segítségükkel megvalósítható például az „ellenségek” kiszámíthatatlan mozgása, amitől érdekesebbé válik a játék.

A Scratch-ben két szám közötti véletlenszámot adhatunk meg: numbers5

Ez a parancs ebben az esetben egy 1 és 10 közötti számot ad és mindegyiket egyforma eséllyel, ugyanúgy, mintha egy 10 oldalú dobókockával dobnánk. Persze az 1 és 10 helyett más számokat (vagy akár változókat) is megadhatsz. Ha mindkét szám (a tartomány végpontjai, amelyből véletlenül választ a program számot) egész, akkor eredményül is egész számot kapsz. Ha valamelyik végpont nem egész szám, akkor a kapott szám sem lesz az.

A mozgások megvalósítása

  • lássuk először a golyókat:Clipboard06
  • Ha ezek után lemásolod a szereplőt (hogy több golyó legyen a pályán), akkor minden golyó hasonló irányban fog mozogni, mivel ugyanarról a helyről indulnak és nem túl nagy tartományban mozog az elfordulásuk és a lépéshosszuk. Ez könnyen kiküszöbölhető, ha a golyók kezdőpozíciója is véletlen:Clipboard08
  • A fej irányításához – az eddigiekkel ellentétben – billentyűérzékelést használunk. Nézzük, miben különbözik ez a „sapkás” megoldástól.13
  • Tehát a fej irányítása:Clipboard09

Mentsd el a projektedet hamihami néven!

A kész játékot ide kattintva megtekintheted.

Írta és tervezte: Takács Valéria