Tartalomjegyzék:
Videó: Floppy Bird: 3 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:40
Ma egy játékot készítünk TFT LCD -vel. Ez úgy néz ki, mint egy igazán népszerű játék, és még mindig sokan játszanak ezzel a játékkal. A játékot Flappy Bird -nek hívják, de ez a játék egy kicsit más, mert a felhasználói felület és a játékmód is más. Ezt a játékot Floppy Bird -nek neveztem, mivel ez szerzői jogi problémákhoz vezethet. Ennek ellenére nagyon szórakoztató játék, és könnyen elkészíthető. Ezt az oktathatóvá tettem, amely lehetővé teszi, hogy teljesen elkészítse a játékot, és úgy működjön, mint én. Ha bármilyen kérdése van, kérjük, írjon megjegyzést alább, és megpróbálok a lehető leggyorsabban válaszolni ezekre a kérdésekre.
Kellékek
- Arduino Mega 2560 és kábel
- Arduino Mega Shield
- Arduino TFT LCD kompatibilis az Arduino Mega 2560 készülékkel
- SD kártya
1. lépés: A TFT LCD összeszerelése
Most elkezdhetjük összeszerelni a TFT LCD -t. Csatlakoztatjuk a TFT LCD -t az árnyékoláshoz, ezért először vegyük a TFT LCD -t, és alapvetően igazítsuk a pajzson lévő csapokhoz. Miután beállította a csapokat, nyomja lefelé a TFT LCD -t, hogy a helyére illeszkedjen. Amikor az összes tűfej a pajzsban van, és nem látja a csapfejeket, akkor tudja, hogy a TFT LCD megfelelően van csatlakoztatva. Ezután csatlakoztathatjuk a pajzsot az Arduino Mega 2560 -hoz. Igazítsa a pajzs csapjait az Arduino Mega -hoz, és dugja be. Ha az összes csapfej az Arduino Mega -ban van, és nem látja a csapfejeket, akkor amikor tudja, hogy a TFT LCD megfelelően van csatlakoztatva, és készen áll a bekapcsolásra. Csatlakoztassa az Arduino -t, és ellenőrizze, hogy megfelelően csatlakoztatta -e az LCD -t, ha az LCD bekapcsol, és a képernyő fehér, akkor gratulálunk, sikeresen csatlakoztatta a TFT LCD -t, és most készen áll a programozásra. Végül egy dolgunk van: az SD -kártya csatlakoztatása az LCD -hez. A TFT LCD hátoldalán található egy SD kártyahely, ahová egyszerűen csatlakoztathatja az SD kártyát. Ezért csak csatlakoztassa és kész.
2. lépés: A TFT LCD programozása
Most beprogramozzuk az LCD -t, hogy futtassa a játékot, és játszhatunk vele. Az alábbiakban a kódot kell összeállítania és feltöltenie az Arduino IDE használatával.
Problémái lehetnek:
Módosítsa a TFT LCD paramétereit az adott modellnek megfelelően.
TELJES KÓD:
#befoglalni #befoglalni #befoglalni
// ==== Objektumok létrehozása
UTFT myGLCD (ILI9341_16, 38, 39, 40, 41); // A paramétereket a Display/Shield URTouch myTouch (6, 5, 4, 3, 2) modellhez kell igazítani;
// ==== Betűtípusok meghatározása
extern uint8_t SmallFont ; extern uint8_t BigFont ; extern uint8_t SevenSegNumFont ;
extern unsigned int bird01 [0x41A]; // Madár Bitmap
int x, y; // A kijelző koordinátáinak változói
// Floppy Bird
int xP = 319; int yP = 100; int yB = 50; int moveRate = 3; int fallRateInt = 0; float fallRate = 0; int pontszám = 0; int lastSpeedUpScore = 0; int legmagasabb pontszám; boolean screenPressed = hamis; boolean gameStarted = false;
void setup () {
// myGLCD. InitLCD () megjelenítésének kezdeményezése; myGLCD.clrScr (); myTouch. InitTouch (); myTouch.setPrecision (PREC_MEDIUM); legmagasabb pontszám = EEPROM.read (0); // Olvassa el az EEPROM initiateGame () legmagasabb pontszámát; // Kezdd el a játékot}
void loop () {
xP = xP-moveRate; // xP - a polárok x koordinátája; tartomány: 319 - (-51) drawPilars (xP, yP); // Megrajzolja a madár pilléreit // yB - y koordinátáját, amely a leesőRate változó értékétől függ yB+= fallRateInt; fallRate = fallRate+0,4; // Minden beavatkozásnál az esés mértéke növekszik, hogy képesek legyünk a gyorsulás/ gravitáció fallRateInt = int (fallRate) hatására; // Ellenőrzi az ütközést, ha (yB> = 180 || yB <= 0) {// felül és lent gameOver (); } if ((xP = 5) && (yB <= yP-2)) {// felső pillér gameOver (); } if ((xP = 5) && (yB> = yP+60)) {// alsó pillér gameOver (); } // Rajzolja a madár drawBird (yB);
// Miután az oszlop áthaladt a képernyőn
ha (xPRESET = 250) && (x = 0) && (y = 0) && (x = 30) && (y = 270) {myGLCD.setColor (0, 200, 20); myGLCD.fillRect (318, 0, x, y-1); myGLCD.setColor (0, 0, 0); myGLCD.drawRect (319, 0, x-1, y);
myGLCD.setColor (0, 200, 20);
myGLCD.fillRect (318, y+81, x, 203); myGLCD.setColor (0, 0, 0); myGLCD.drawRect (319, y+80, x-1, 204); } else if (x <= 268) {// Kék téglalapot rajzol a myGLCD.setColor pillér jobbra (114, 198, 206); myGLCD.fillRect (x+51, 0, x+60, y); // Megrajzolja a myGLCD.setColor oszlopot (0, 200, 20); myGLCD.fillRect (x+49, 1, x+1, y-1); // Megrajzolja a myGLCD.setColor oszlop fekete keretét (0, 0, 0); myGLCD.drawRect (x+50, 0, x, y); // Megrajzolja a kék téglalapot a myGLCD.setColor pillér bal oldalán (114, 198, 206); myGLCD.fillRect (x-1, 0, x-3, y);
// Az alsó pillér
myGLCD.setColor (114, 198, 206); myGLCD.fillRect (x+51, y+80, x+60, 204); myGLCD.setColor (0, 200, 20); myGLCD.fillRect (x+49, y+81, x+1, 203); myGLCD.setColor (0, 0, 0); myGLCD.drawRect (x+50, y+80, x, 204); myGLCD.setColor (114, 198, 206); myGLCD.fillRect (x-1, y+80, x-3, 204); } // felhívja a pontszámot myGLCD.setColor (0, 0, 0); myGLCD.setBackColor (221, 216, 148); myGLCD.setFont (BigFont); myGLCD.printNumI (pontszám, 100, 220); }
// ====== drawBird () - Egyéni funkció
void drawBird (int y) {// Rajzolja a madarat - bitmap myGLCD.drawBitmap (50, y, 35, 30, bird01); // Kék téglalapokat rajzol a madár fölé és alá, hogy tisztázza korábbi myGLCD.setColor állapotát (114, 198, 206); myGLCD.fillRoundRect (50, y, 85, y-6); myGLCD.fillRoundRect (50, y+30, 85, y+36); } // ======== gameOver () - Egyedi függvény void gameOver () {delay (3000); // 1 másodperc // Törli a képernyőt és kinyomtatja a szöveget myGLCD.clrScr (); myGLCD.setColor (255, 255, 255); myGLCD.setBackColor (0, 0, 0); myGLCD.setFont (BigFont); myGLCD.print ("GAME OVER", CENTER, 40); myGLCD.print ("Pontszám:", 100, 80); myGLCD.printNumI (pontszám, 200, 80); myGLCD.print ("Újraindítás …", CENTER, 120); myGLCD.setFont (SevenSegNumFont); myGLCD.printNumI (2, CENTER, 150); késleltetés (1000); myGLCD.printNumI (1, CENTER, 150); késleltetés (1000); // A legmagasabb pontszámot írja az EEPROM -ban, ha (pontszám> legmagasabb pontszám) {legmagasabb pontszám = pontszám; EEPROM.write (0, legmagasabb pontszám); } // Visszaállítja a változókat a kezdőpozíció értékére xP = 319; yB = 50; fallRate = 0; pontszám = 0; lastSpeedUpScore = 0; mozgó arány = 3; gameStarted = hamis; // A játék újraindítása initiateGame (); }
3. lépés: Kész
Elkészítettük az áramkört és összeállítottuk a kódot. Most csak csatlakoztatnunk kell az Arduino mega -t, és játszanunk kell.
Itt van egy linkem egy videóhoz, amely bemutatja, hogyan működik ez a játék, és mit kell tennie annak beállításához:
drive.google.com/file/d/18hKQ8v2w2OkM_std-…
Tudassa velem, ha bármilyen problémája van lent.
Ajánlott:
Floppy Disk IR Camera Hack: 8 lépés (képekkel)
Floppy Disk IR Camera Hack: Az elmúlt hét évben egy törött digitális fényképezőgép hevert. Még mindig képes fényképezni, de szinte lehetetlen használni a törött képernyő miatt. Az alapvető probléma az, hogy néha a menü véletlenül eljut
Intelligens kormányrendszer robotkocsikhoz a régi floppy/CD -meghajtó léptetőmotorjával: 8 lépés (képekkel)
Intelligens kormányrendszer robotkocsikhoz A régi hajlékonylemez/CD -meghajtó léptetőmotorját használva: Intelligens kormányrendszer robotautókhoz Aggódik, hogy jó kormányrendszert készít a robotkocsija számára? Íme egy kiváló megoldás, csak a régi floppy/ CD/ DVD meghajtók használatával. vigyázzon, és képet kapjon rólaLátogasson el a georgeraveen.blogspot.com oldalra
Apple II Floppy Hackintosh I7-7700 3.6Ghz: 7 lépés
Apple II Floppy Hackintosh I7-7700 3.6Ghz: Ez az első kép arra hivatkozik, hogy egy hibátlan meghajtóra (eredeti szivárványos Apple logóval), az enyém egy kicsit több futásteljesítménnyel rendelkezik. A második kép a belső részek, elfelejtettem lefotózni, mielőtt szétszereltem, szóval a Goog jóvoltából
Amiga Arduino floppy meghajtó tok/ház: 5 lépés
Amiga Arduino floppy meghajtó tok/ház: Ez az oktatóanyag elmagyarázza, hogyan kell összeállítani a hajlékonylemez -meghajtót az Arduino Amiga Floppy Disk Reader/Writer for Windows projekthez. A projekt befejezéséhez szüksége lesz: 3D nyomtatóra az abón
SD/MMC illeszkedik a Floppy Edge csatlakozóba: 8 lépés (képekkel)
SD/MMC illeszkedik a Floppy Edge csatlakozóba: Az SD-kamera memóriakártyáját bármely, néhány I/O-tűvel rendelkező, házilag készített barkácsprojekthez csatlakoztathatja, a szokásos csatlakozók használatával, amelyek jelenleg valószínűleg rendelkezésre állnak. eszközillesztőket, és különféle nyílt forráskódú Linux distr telepítését