vezérlés címkével jelölt bejegyzések

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

Feltételek

A játékok jelentős részében a szereplők nem ugyanúgy viselkednek minden helyzetben. Ennek megvalósítására feltételekhez kötjük az egyes parancsok végrehajtását.

Ezt az egyszerű labirintusos játékot fogjuk elkészíteni, melynek célja, hogy a Gobo nevű szereplőt a sárga négyzetről a magenta színűre juttassuk anélkül, hogy a falhoz érnénk. A Lila szereplő ekkor örömmel kiáltson fel, hogy barátja megtalálta


Ebben a leckében megtanulod használni:

  • ha
  • hakülönben

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

  • A háttér letölthető innen. Szereplők: Fantázia/Gobo (mérete az eredeti méret 40%-a), Fantázia/Hippo (mérete az eredeti 35%-a).
  • Gobo mozgatása tetszőleges (pl. a második leckében megismert is lehet). Ezúttal egy koordináta-rendszerre támaszkodót használunk, mivel a szereplő csak jobbra-balra, illetve fel-le mozog és az ilyen típusú mozgás az x és y koordináták változtatásával jól megvalósítható:Forgatás
  • Fontos, hogy a játék kezdetén Gobo a start (sárga) négyzeten álljon. Ehhez a következő feladatot kell adnunk neki:

UgrásA játék lényege, hogy a szereplőnek úgy kell végigmennie a labirintuson, hogy nem érhet hozzá a falhoz. Azonban Gobo ezt most gond nélkül megteszi. Ennek megakadályozásához arra lenne szükség, hogy ha falhoz ér, akkor „kapjon büntetést”, pl. kezdje újra a játékot.
Ezt a Ha paranccsal valósíthatod meg:

Fel

A szereplő feladatai tehát:

Feladatok

Egymásba ágyazás

A lila szereplő ha nem érintkezik Goboval, akkor folyamatosan egy helyben forog. Különben (a Goboval való érintkezéskor) azt mondja, hogy “Megtaláltál!”.

Ennek megvalósításához több parancs egymásba ágyazására van szükség. Ilyennel már találkoztál a ciklusoknál is, amikor a ciklus belsejébe illesztetted a parancsokat. Ennek a leckének az első felében pedig a ha parancs feltételét kellett megadnod beillesztés segítségével.

A szereplő feladatai:

Feladat

Ezt a feladatot a következőképpen rakhatod össze:

Ágyazás

A ha…különben parancs két ágába helyezett parancsok felcserélhetők, ha a feltételt tagadod. Így a két feladat hatására ugyanazt csinálja a szereplő:

Egymásba ágazás

Mentsd el a projektedet labirintus néven!

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

Variáció: Próbáld meg magadtól megvalósítani az alábbi játékot.

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

Ismétlődések

Az előző leckében a szereplő akkor tett meg valamit, ha leütöttünk egy billentyűt. Most megmutatjuk, hogy szereplőink beavatkozás nélkül is tudnak feladatokat elvégezni.

Egy olyan programot készítünk, amelyben egy napsütéses délutánon egy kutya végigsétál a képernyőn

 


Ebben a leckében megtanulod használni:

  • várj
  • kattintásakor
  • mindig

Ciklusok

A ciklusok ismétlődő tevékenységek megvalósítására szolgálnak. Ebben a leckében két ciklusfajtával ismerkedhetsz meg:

Ciklusok

Most lássunk egy példát is a parancsok használatára. Egy olyan programot készítünk, amelyben egy napsütéses délutánon egy kutya végigsétál a képernyőn.

A program elkészítése

  • Szereplők: Nap (a jelmezeit letöltheted), Kutya (jelmezei: Állatok/dog2-b, Állatok/dog2-c)
  • A parancsok végrehajtása a zöld zászlóra kattintáskor indul, tehát a Kapcsoló sapkához kapcsoljuk őket.
  • A Nap a program indításától kezdve folyamatosan – mindig – változtatja a jelmezeit, tehát az ő feladata:

MindigA Kutya nem ismétli végtelen sokszor a feladatát: elindul, megy egy darabig – valahányszor megismétli a Menj 10 lépést parancsot – majd megáll. Az ő feladata:Feladat

Mentsd el a projektedet kutya néven!

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

Variáció: Próbáld meg magadtól megvalósítani az alábbi játékot.

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

Megmozdulnak a szereplők

Egy játék akkor szórakoztató, ha irányíthatjuk a szereplőit (vagy legalább a főszereplőt). Ebből a leckéből megtudhatod, hogyan lehet ezt megtenni.

 

Egy egyszerű játékot fogunk elkészíteni, amelyben egy papagájt lehet röptetni az égen.


Ebben a leckében megtanulod használni:

  • fordulás
  • következőjelmez
  • lenyomásakor

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

  • Először töröld ki a macskát a játéktérből és töltsd be az Animals könyvtárból a parrot1-a nevű papagájt. A nevét változtasd Papagájra. A háttér legyen kék ég felhőkkel (ezt letöltheted innen vagy megrajzolhatod a festőablakban.)
  • Most a papagájnak adunk feladatokat. Ehhez húzd a parancsokat az egérrel a parancskészletből a programozási térbe. A parancsokból akkor lesz feladat, ha megfelelő sorrendben összeillesztjük őket egy sapka alatt.
  • Először oldjuk meg azt, hogy a fel nyíl lenyomásakor a papagáj haladjon egy kicsit előre. Ehhez a következő parancsokra lesz szükség:

Parancsok

  • Ahhoz, hogy a papagáj haladási irányát is változtatni tudjuk, még két egyszerű feladatot kell adnunk az eddigihez:

Parancsok

  • Most már csak az a baj, hogy a papagáj nem mozgatja a szárnyait repülés közben. Ezen könnyen lehet segíteni az előző leckében említett jelmezek ügyes váltogatásával. Töltsd be a Papagáj jelmezei közé az Állatok könyvtárból a parrot-a és parrot-b nevűt, vagy mint új szereplő vedd fel az Állatok könyvtárból a Parrot nevűt. Ha egymás után kattintasz a jelmezekre, a játéktérben úgy látszik, mintha a papagáj csapkodna a szárnyaival. A jelmezeket nem csak így lehet váltogatni.
    Ha minden egyes feladathoz hozzáilleszted a Következő jelmez parancsot, akkor a szereplő a gombnyomások hatására elfordul vagy repül egy kicsit és még a sorban következő jelmezt is magára ölti. (Mivel most csak két jelmez van, ezért e kettő fog váltakozni.)

A papagáj feladatai tehát:

Feladatok

Mentsd el a projektedet papagaj néven!

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

Variáció: Próbáld meg magadtól megvalósítani az alábbi játékot.

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