Turinys:

„Space Race“žaidimo versija 2: 5 žingsniai
„Space Race“žaidimo versija 2: 5 žingsniai

Video: „Space Race“žaidimo versija 2: 5 žingsniai

Video: „Space Race“žaidimo versija 2: 5 žingsniai
Video: Форрест Хоуи Макдональд-Silver Platinum и Gold 1975-1976 был самой в... 2024, Liepa
Anonim
Image
Image

Sveiki visi. Prieš šią žaidimo versiją paskelbiau pirmąją žaidimo versiją. Šiandien aš jums parodysiu „Space Race Game“2 versiją. Pažvelkime į žingsnius…

1 žingsnis: DALYS

SCHEMA
SCHEMA

Čia yra dalių, kurias naudoju kurdamas šį projektą, sąrašas:

  • Arduino UNO
  • Vairasvirtės modulis
  • Jumperiniai laidai (nuo vyrų iki vyrų ir vyrų nuo moterų)
  • Bandomoji Lenta

2 žingsnis: SCHEMA

VCC -> Arduino 5V

BL -> „Arduino“kaištis 3

GND -> Arduino GND

CLK (SCLK) -> „Arduino“kaištis 8

DIN (MOSI) -> „Arduino“kaištis 9

DC -> „Arduino“kaištis 10

CE arba CS -> „Arduino“kaištis 12

RST (RESET) -> „Arduino“kaištis 11

3 žingsnis: KODAS

KODAS
KODAS

Kodas turi kodo funkcijų paaiškinimus. Jūs lengvai tai suprasite. Jei turite problemų, galite susisiekti su manimi.

#įtraukti

LCD5110 LCD (8, 9, 10, 11, 12); // (clk, cin, dc,, rst, ce)

boolean kontrol = tiesa;

boolean dusmanoldu = tiesa;

extern uint8_t SmallFont ; // aprašyti šriftus

extern uint8_t Vidutiniai skaičiai ; extern uint8_t arac ; // aprašyk mūsų formą extern uint8_t dusmanAraci ; // aprašyti priešo formą const int xpin = A0; // vairasvirtė x kaištis char pozisyon = 3; // aprašyti vietą, mūsų formos pradžios vietą 3 int BL = 3; int skor = 0; int hiz = 0; int dusmankonum1; // aprašyti priešą1 x vietą int dusmankonum2; // aprašyti priešą2 x vieta int dusmankonum3; // aprašyti priešą3 x vieta int dusmankonum4; // apibūdinti priešą4 x vieta int dusmankonum5; // apibūdinti priešą5 x vieta int dusmaninYdekonumu;

void oyunEkrani () {// nustatyti žaidimo ekraną

lcd.clrScr (); lcd.drawRect (0, 0, 47, 47); // brėžiame stačiakampį lcd.setFont (SmallFont); // nustatyti šriftą lcd.print ("skor", 57, 1); // spausdinimo rezultatas lcd.print ("hiz", 60, 24); // spausdinimo greitis lcd.setFont (MediumNumbers); // nustatyti šriftą lcd.printNumI (skor, 55, 8); // gauti rezultatą lcd.printNumI (hiz, 63, 32); // gauti greitį lcd.update (); }

void dusmanAracidurum (int yer, int asama) {// nustatyti priešo formų vietas

if (yer == 1) {lcd.drawBitmap (2, asama, dusmanAraci, 7, 7); lcd.update ();} // jei vieta = 1 nupiešti priešą formuoja šią vietą, jei (yer == 2) {lcd.drawBitmap (10, asama, dusmanAraci, 7, 7); lcd.update ();} if (yer == 3) {lcd.drawBitmap (18, asama, dusmanAraci, 7, 7); lcd.update (); } if (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 () {// jei mums nepavyks, žaidimas baigsis

o (1) {uždelsimas (100); // palaukti 1 milisekundė lcd.clrScr (); lcd.setFont („SmallFont“); lcd.print ("OYUN BITTI", CENTRAS, 8); // spausdinti žaidimą per lcd.print ("skorunuz =", 3, 30); // atspausdinkite savo rezultatą lcd.setFont (MediumNumbers); lcd.printNumI (skor, 60, 25); // gauti paskutinį rezultatą lcd.update (); }}

void setup () {

pinMode (BL, OUTPUT); // nustatyti atgalinį šviesą Išvesties pinMode (xpin, INPUT); // nustatyti x PIN kaip įvesties lcd. InitLCD (); // inicijuoti LCD ekraną lcd.setContrast (55); // nustatyti kontrastą (nuo 0 iki 127) Serial.begin (9600); // pradėti serijinį bendravimą}

void loop () {

analogWrite (BL, 350); oyunEkrani ();

// joyistic durumu … // nustatyti džiaugsmo taško vietą …

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 ir valdymas yra tikras pozisyon ++; // padidinti vietą tai reiškia perkelti figūrą į dešinę kontrol = false; } else if (durumx> 300 && durumx <600) {kontrol = true; } // pozisyon durumu… // pozicijos būsena… if (pozisyon == 1) {// if location = 1; lcd.drawBitmap (2, 41, arac, 7, 7); lcd.update ();} // nupieškite mūsų laivą, jei (pozisyon == 2) {lcd.drawBitmap (10, 41, arac, 7, 7); lcd.update ();} if (pozisyon == 3) {lcd.drawBitmap (18, 41, arac, 7, 7); lcd.update ();}} jei (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 ();}

if (dusmanoldu) {// jei priešo forma negyva, patikrinkite, ar jie negyvi

dusmankonum1 = pozisyon; // piešti pirmąją priešo figūrą dusmankonum2 = atsitiktinis (0, 6); // kažkur nupiešti kitą priešo figūrą dusmankonum3 = atsitiktinis (0, 6); dusmankonum4 = atsitiktinis (0, 6); dusmankonum5 = atsitiktinis (0, 6); dusmaninYdekonumu = 0; // atnešti priešą iš viršaus dusmanoldu = false;} // priešas atkurtas, kad jie nebūtų mirę

dusmanAracidurum (dusmankonum1, dusmaninYdekonumu); dusmaninYdekonumu ++; // nupieškite pirmąją priešo formą ir gaukite ją iš viršaus į apačią

dusmanAracidurum (dusmankonum2, dusmaninYdekonumu); dusmaninYdekonumu ++; // nupieškite antrą priešo formą ir gaukite ją iš viršaus į apačią dusmanAracidurum (dusmankonum3, dusmaninYdekonumu); dusmaninYdekonumu ++; dusmanAracidurum (dusmankonum4, dusmaninYdekonumu); dusmaninYdekonumu ++; if (dusmaninYdekonumu> 35 && ((dusmankonum1 == pozisyon) || (dusmankonum2 == pozisyon) || (dusmankonum3 == pozisyon) || (dusmankonum4 == pozisyon)))) {// jei mūsų forma liečia priešo formas oyunbitti (); //žaidimas baigtas }

if (dusmaninYdekonumu> 42) {// jei mūsų figūra bėga nuo priešų

dusmanoldu = tiesa; // nužudyti priešo formas skor ++; // padidinti rezultatą po vieną}

// skora gore hizi artiriyoruz // padidinti greitį pagal rezultatą

jei (skor> = 0 && skor = 10 && skor = 20 && skor = 30 && skor = 40 && skor = 50) {hiz = 6; vėlavimas (5); }

}

4 žingsnis: KODUOKITE BITMAP

Be to, turite įtraukti bitų žemėlapių grafiką. Tai turi būti.c failas.

#include // include programos funkcijai

const unsigned char arac PROGMEM = {// mūsų formos bitkartė

0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,};

const unsigned char dusmanAraci PROGMEM = {// priešo laivo bitmap

0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,};

5 veiksmas: ačiū, kad peržiūrėjote

Kai kurių žodžių reikšmė:

Oyun => Žaidimas

Arac => Forma

Dusmanas => Priešas

kontrol => kontroliuoti

Konum, Yer => Vieta

Oyun Bitti => Žaidimas baigtas

Skor => Rezultatas

Hiz => Greitis

Rekomenduojamas: