Satura rādītājs:
- 1. darbība: DAĻAS
- 2. solis: SHĒMA
- 3. darbība: KODĒT
- 4. darbība: KODĒT BITMAP
- 5. darbība. Paldies, ka skatījāties
Video: Kosmosa sacensību spēles versija 2: 5 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:56
Sveiki visiem. Pirms šīs spēles versijas es publicēju spēles pirmo versiju. Šodien es jums parādīšu Space Race Game 2. versiju. Apskatīsim soļus…
1. darbība: DAĻAS
Šeit ir to daļu saraksts, kuras es izmantoju, lai izveidotu šo projektu:
- Arduino UNO
- Kursorsviras modulis
- Jumper vadi (no vīrieša uz vīrieti un no vīrieša uz sievieti)
- Maizes dēlis
2. solis: SHĒMA
VCC -> Arduino 5V
BL -> Arduino tapa 3
GND -> Arduino GND
CLK (SCLK) -> Arduino tapa 8
DIN (MOSI) -> Arduino tapa 9
DC -> Arduino tapa 10
CE vai CS -> Arduino tapa 12
RST (RESET) -> Arduino tapa 11
3. darbība: KODĒT
Kodā ir koda funkciju skaidrojumi. Jūs to viegli sapratīsit. Ja jums ir problēma, varat sazināties ar mani.
#iekļaut
LCD5110 LCD (8, 9, 10, 11, 12); // (clk, cin, dc,, rst, ce)
Būla kontrol = taisnība;
Būla dusmanoldu = taisnība;
extern uint8_t SmallFont ; // aprakstiet fontus
extern uint8_t MediumNumbers ; extern uint8_t arac ; // aprakstiet mūsu formu extern uint8_t dusmanAraci ; // aprakstīt ienaidnieka formu const int xpin = A0; // kursorsviru x pin char pozisyon = 3; // aprakstīt atrašanās vietu, mūsu formas sākuma vietu 3 int BL = 3; int skor = 0; int hiz = 0; int dusmankonum1; // aprakstīt ienaidnieku1 x atrašanās vieta int dusmankonum2; // aprakstīt ienaidnieku2 x atrašanās vieta int dusmankonum3; // aprakstīt ienaidnieku3 x atrašanās vieta int dusmankonum4; // aprakstīt ienaidnieku4 x atrašanās vieta int dusmankonum5; // aprakstīt ienaidnieku5 x atrašanās vieta int dusmaninYdekonumu;
void oyunEkrani () {// iestatīt spēles ekrānu
lcd.clrScr (); lcd.drawRect (0, 0, 47, 47); // zīmējam taisnstūri lcd.setFont (SmallFont); // iestatīt fontu lcd.print ("skor", 57, 1); // drukāt rezultātu lcd.print ("hiz", 60, 24); // drukas ātrums lcd.setFont (MediumNumbers); // iestatīt fontu lcd.printNumI (skor, 55, 8); // iegūt rezultātu lcd.printNumI (hiz, 63, 32); // iegūt ātrumu lcd.update (); }
void dusmanAracidurum (int yer, int asama) {// noteikt vietas ienaidnieka formām
if (yer == 1) {lcd.drawBitmap (2, asama, dusmanAraci, 7, 7); lcd.update ();} // ja atrašanās vieta = 1 uzzīmē ienaidnieku, veidojot šo vietu, ja (yer == 2) {lcd.drawBitmap (10, asama, dusmanAraci, 7, 7); lcd.update ();} if (yer == 3) {lcd.drawBitmap (18, asama, dusmanAraci, 7, 7); lcd.update (); } ja (yer == 4) {lcd.drawBitmap (26, asama, dusmanAraci, 7, 7); lcd.update ();} if (yer == 5) {lcd.drawBitmap (34, asama, dusmanAraci, 7, 7); lcd.update ();} if (yer == 6) {lcd.drawBitmap (42, asama, dusmanAraci, 7, 7); lcd.update ();}}
void oyunbitti () {// ja mums neizdodas, spēle beigusies
kamēr (1) {kavēšanās (100); // pagaidiet 1 milisekundi lcd.clrScr (); lcd.setFont (SmallFont); lcd.print ("OYUN BITTI", CENTRS, 8); // drukāt spēli virs lcd.print ("skorunuz =", 3, 30); // izdrukājiet savu rezultātu lcd.setFont (MediumNumbers); lcd.printNumI (skor, 60, 25); // iegūt pēdējo rezultātu lcd.update (); }}
void setup () {
pinMode (BL, OUTPUT); // izslēgt apgaismojumu Izvades pinMode (xpin, INPUT); // iestatiet x tapu kā ievades lcd. InitLCD (); // inicializēt LCD ekrānu lcd.setContrast (55); // iestatīt kontrastu (no 0 līdz 127) Serial.begin (9600); // sākt sērijveida saziņu}
void loop () {
analogWrite (BL, 350); oyunEkrani ();
// joyistic durumu … // iestatiet joyistick atrašanās vietu …
int durumx = analogRead (xpin); if (durumx <300 && pozisyon! = 1 && kontrol == true) {// if location! = 1, x state600 && pozisyon! = 6 && kontrol == true) {// if location! = 3, x state> 600 un kontrole ir patiesa pozisyon ++; // palielināt atrašanās vietu tas nozīmē pārvietot formu uz labo kontrolieri = false; } cits if (durumx> 300 && durumx <600) {kontrol = true; } // pozisyon durumu… // pozīcijas stāvoklis… if (pozisyon == 1) {// if location = 1; lcd.drawBitmap (2, 41, arac, 7, 7); lcd.update ();} // uzzīmējiet mūsu kuģi, ja (pozisyon == 2) {lcd.drawBitmap (10, 41, arac, 7, 7); lcd.update ();} if (pozisyon == 3) {lcd.drawBitmap (18, 41, arac, 7, 7); lcd.update ();}} (pozisyon == 4) {lcd.drawBitmap (26, 41, arac, 7, 7); lcd.update ();} if (pozisyon == 5) {lcd.drawBitmap (34, 41, arac, 7, 7); lcd.update ();} if (pozisyon == 6) {lcd.drawBitmap (42, 41, arac, 7, 7); lcd.update ();}
ja (dusmanoldu) {// ja ienaidnieka forma ir mirusi, pārbaudiet, vai tie ir miruši
dusmankonum1 = pozisyon; // izdarīt pirmo ienaidnieka formu dusmankonum2 = nejauši (0, 6); // kaut kur uzzīmēt citu ienaidnieka formu dusmankonum3 = nejauši (0, 6); dusmankonum4 = nejaušs (0, 6); dusmankonum5 = nejaušs (0, 6); dusmaninYdekonumu = 0; // ienest ienaidnieku no augšas dusmanoldu = false;} // ienaidnieks tiek atjaunots, lai tie nebūtu miruši
dusmanAracidurum (dusmankonum1, dusmaninYdekonumu); dusmaninYdekonumu ++; // uzzīmējiet pirmo ienaidnieka formu un iegūstiet to no augšas uz leju
dusmanAracidurum (dusmankonum2, dusmaninYdekonumu); dusmaninYdekonumu ++; // uzzīmējiet otro ienaidnieka formu un iegūstiet to no augšas uz leju dusmanAracidurum (dusmankonum3, dusmaninYdekonumu); dusmaninYdekonumu ++; dusmanAracidurum (dusmankonum4, dusmaninYdekonumu); dusmaninYdekonumu ++; if (dusmaninYdekonumu> 35 && ((dusmankonum1 == pozisyon) || (dusmankonum2 == pozisyon) || (dusmankonum3 == pozisyon) || (dusmankonum4 == pozisyon)))) {// ja mūsu forma pieskaras ienaidnieka formām oyunbitti (); //spēle ir beigusies }
ja (dusmaninYdekonumu> 42) {// ja mūsu forma aizbēg no ienaidniekiem
dusmanoldu = taisnība; // nogalināt ienaidnieka formas skor ++; // palielināt rezultātu pa vienam}
// skora gore hizi artiriyoruz // palielināt ātrumu atbilstoši rezultātam
ja (skor> = 0 && skor = 10 && skor = 20 && skor = 30 && skor = 40 && skor = 50) {hiz = 6; kavēšanās (5); }
}
4. darbība: KODĒT BITMAP
Turklāt formām ir jāiekļauj bitkartes grafika. Tam jābūt.c failam.
#include // include programmas funkcijai
const unsigned char arac PROGMEM = {// mūsu formas bitkarte
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,};
const unsigned char dusmanAraci PROGMĒMA = {// ienaidnieka kuģa bitkarte
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,};
5. darbība. Paldies, ka skatījāties
Dažu vārdu nozīme:
Oyun => Spēle
Arac => Forma
Dusmans => ienaidnieks
kontrol => kontrole
Konum, Yer => Atrašanās vieta
Oyun Bitti => Spēle beigusies
Skor => Rezultāts
Hiz => Ātrums
Ieteicams:
VEX torņa pārņemšanas sacensību robots: 8 soļi
VEX torņa pārņemšanas sacensību robots: šajā apmācībā es jums, puišiem, parādīšu Vex Robotics Tower pārņemšanas sacensību pamatus un to, kā izveidot robotu šai spēlei. LŪDZU, pārbaudiet izejmateriālu cilni. PIEZĪME: Vex EDR detaļas ir ĻOTI dārgas, ja nevarat atļauties tērēt USD
Arduino kosmosa sacīkšu spēles versija _1: 5 soļi
Arduino kosmosa sacīkšu spēles versija _1: Sveiki draugi. Šodien es esmu ganna parādīs, kā jūs varat izveidot kosmosa sacīkšu spēli, izmantojot LCD5110 ekrānu un kursorsviru. Apskatīsim soļus
Uzlabojiet kosmosa palaišanu, izmantojot Kerbal kosmosa programmas fizisko izvietošanas pogu: 6 soļi
Uzlabojiet kosmosa palaišanu, izmantojot Kerbal kosmosa programmas fizisko izvietošanas pogu: Es nesen paņēmu Kerbal kosmosa programmas demonstrācijas versiju. Kerbala kosmosa programma ir simulatora spēle, kas ļauj izstrādāt un palaist raķetes un virzīties uz tāliem pavadoņiem un planētām. Es joprojām cenšos veiksmīgi nolaisties uz Mēness (o
Kā augšupielādēt spēles Arduboy un 500 spēles Flash grozā: 8 soļi
Kā augšupielādēt spēles Arduboy un 500 spēles Flash grozā: es izveidoju mājās gatavotu Arduboy ar sērijas zibatmiņu, kurā var uzglabāt ne vairāk kā 500 spēles, ko spēlēt uz ceļa. Es ceru padalīties ar to, kā tajā ielādēt spēles, tostarp par to, kā saglabāt spēles sērijas zibatmiņā un izveidot savu konsolidēto spēļu paketi
KerbalController: pielāgots vadības panelis raķešu spēles Kerbal kosmosa programmai: 11 soļi (ar attēliem)
KerbalController: pielāgots vadības panelis raķešu spēlei Kerbal kosmosa programma: Kāpēc veidot KerbalController? Nu, tāpēc, ka pogu nospiešana un fizisko slēdžu izmešana ir daudz svarīgāka nekā noklikšķināšana uz peles. It īpaši, ja tas ir liels sarkans drošības slēdzis, kur vispirms jāatver vāks, velciet slēdzi