Talaan ng mga Nilalaman:

Space Race Game Bersyon 2: 5 Mga Hakbang
Space Race Game Bersyon 2: 5 Mga Hakbang

Video: Space Race Game Bersyon 2: 5 Mga Hakbang

Video: Space Race Game Bersyon 2: 5 Mga Hakbang
Video: Among Us Zombie animation season1 (EP1~5) 2024, Nobyembre
Anonim
Image
Image

Hoy lahat. Bago ang bersyon ng laro na ito, nag-publish ng unang bersyon ng laro. Ngayon, ipapakita sa iyo ang bersyon ng Space Race Game 2. Tingnan natin ang mga hakbang …

Hakbang 1: BAHAGI

SKEMA
SKEMA

Narito ang isang listahan ng mga bahagi na ginamit ko upang gawin ang proyektong ito:

  • Arduino UNO
  • Module ng Joystick
  • Jumper Wires (lalaki hanggang lalaki at lalaki hanggang babae)
  • Breadboard

Hakbang 2: SKEMA

VCC -> Arduino 5V

BL -> Arduino pin 3

GND -> Arduino GND

CLK (SCLK) -> Arduino pin 8

DIN (MOSI) -> Arduino pin 9

DC -> Arduino pin 10

CE o CS -> Arduino pin 12

RST (RESET) -> Arduino pin 11

Hakbang 3: CODE

KODE
KODE

Ang code ay may mga paliwanag ng mga pag-andar ng code. Madali mong mauunawaan ito. Kung mayroon kang problema, maaari kang makipag-ugnay sa akin.

# isama

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

boolean kontrol = totoo;

boolean dusmanoldu = totoo;

extern uint8_t SmallFont ; // ilarawan ang mga font

extern uint8_t MediumNumber ; extern uint8_t arac ; // ilarawan ang aming hugis extern uint8_t dusmanAraci ; // desribe kaaway hugis const int xpin = A0; // joystick x pin char pozisyon = 3; // ilarawan ang lokasyon, simulan ang aming hugis lokasyon 3 int BL = 3; int skor = 0; int hiz = 0; int dusmankonum1; // ilarawan ang kaaway1 x lokasyon int dusmankonum2; // ilarawan ang kaaway2 x lokasyon int dusmankonum3; // ilarawan ang kaaway3 x lokasyon int dusmankonum4; // ilarawan ang kaaway4 x lokasyon int dusmankonum5; // ilarawan ang kaaway5 x lokasyon int dusmaninYdekonumu;

void oyunEkrani () {// set game screen

lcd.clrScr (); lcd.drawRect (0, 0, 47, 47); // gumuhit kami ng rektanggulo lcd.setFont (SmallFont); // set font lcd.print ("skor", 57, 1); // print score lcd.print ("hiz", 60, 24); // speed speed lcd.setFont (MediumNumber); // set font lcd.printNumI (skor, 55, 8); // get score lcd.printNumI (hiz, 63, 32); // get speed lcd.update (); }

void dusmanAracidurum (int yer, int asama) {// magtakda ng mga lokasyon para sa mga hugis ng kaaway

kung (yer == 1) {lcd.drawBitmap (2, asama, dusmanAraci, 7, 7); lcd.update ();} // kung lokasyon = 1 iguhit ng kaaway ang lokasyong ito kung (yer == 2) {lcd.drawBitmap (10, asama, dusmanAraci, 7, 7); lcd.update ();} kung (yer == 3) {lcd.drawBitmap (18, asama, dusmanAraci, 7, 7); lcd.update (); } kung (yer == 4) {lcd.drawBitmap (26, asama, dusmanAraci, 7, 7); lcd.update ();} kung (yer == 5) {lcd.drawBitmap (34, asama, dusmanAraci, 7, 7); lcd.update ();} kung (yer == 6) {lcd.drawBitmap (42, asama, dusmanAraci, 7, 7); lcd.update ();}}

void oyunbitti () {// kung nabigo tayo, natapos ang laro

habang (1) {pagkaantala (100); // wait 1 milisecond lcd.clrScr (); lcd.setFont (SmallFont); lcd.print ("OYUN BITTI", CENTER, 8); // print game over lcd.print ("skorunuz =", 3, 30); // print your score lcd.setFont (MediumNumber); lcd.printNumI (skor, 60, 25); // get last score lcd.update (); }}

walang bisa ang pag-setup () {

pinMode (BL, OUTPUT); // set back light Output pinMode (xpin, INPUT); // set x pin bilang isang input lcd. InitLCD (); // initilaze the lcd screen lcd.setContrast (55); // set contrad (amound 0 to 127) Serial.begin (9600); // start serial comunation}

void loop () {

analogWrite (BL, 350); oyunEkrani ();

// joyistic durumu … // itakda ang lokasyon ng joyistick …

int durumx = analogRead (xpin); kung (durumx <300 && pozisyon! = 1 && kontrol == true) {// if location! = 1, x state600 && pozisyon! = 6 && kontrol == true) {// if location! = 3, x state> 600 at ang control ay totoong pozisyon ++; // dagdagan ang lokasyon nangangahulugang ilipat ang hugis sa kanang kontrol = false; } iba pa kung (durumx> 300 && durumx <600) {kontrol = true; } // pozisyon durumu… // posisyon ng estado… kung (pozisyon == 1) {// kung lokasyon = 1; lcd.drawBitmap (2, 41, arac, 7, 7); lcd.update ();} // iguhit ang aming barko kung (pozisyon == 2) {lcd.drawBitmap (10, 41, arac, 7, 7); lcd.update ();} kung (pozisyon == 3) {lcd.drawBitmap (18, 41, arac, 7, 7); lcd.update ();} kung (pozisyon == 4) {lcd.drawBitmap (26, 41, arac, 7, 7); lcd.update ();} kung (pozisyon == 5) {lcd.drawBitmap (34, 41, arac, 7, 7); lcd.update ();} kung (pozisyon == 6) {lcd.drawBitmap (42, 41, arac, 7, 7); lcd.update ();}

kung (dusmanoldu) {// kung ang hugis ng kaaway ay patay, suriin kung patay na ba sila

dusmankonum1 = pozisyon; // gumuhit ng unang hugis ng kaaway dusmankonum2 = random (0, 6); // gumuhit ng isa pang hugis ng kaaway sa kung saan dusmankonum3 = random (0, 6); dusmankonum4 = random (0, 6); dusmankonum5 = random (0, 6); dusmaninYdekonumu = 0; // magdala ng kaaway mula sa tuktok dusmanoldu = false;} // kaaway ay nilikha muli upang hindi sila patay

dusmanAracidurum (dusmankonum1, dusmaninYdekonumu); dusmaninYdekonumu ++; // gumuhit ng unang hugis ng kaaway at makuha ito mula sa itaas hanggang sa ibaba

dusmanAracidurum (dusmankonum2, dusmaninYdekonumu); dusmaninYdekonumu ++; // gumuhit ng pangalawang hugis ng kaaway at makuha ito mula sa itaas hanggang sa ibaba dusmanAracidurum (dusmankonum3, dusmaninYdekonumu); dusmaninYdekonumu ++; dusmanAracidurum (dusmankonum4, dusmaninYdekonumu); dusmaninYdekonumu ++; kung (dusmaninYdekonumu> 35 && ((dusmankonum1 == pozisyon) || (dusmankonum2 == pozisyon) || (dusmankonum3 == pozisyon) || (dusmankonum4 == pozisyon))) {// kung ang aming hugis na hinawakan ng kaaway ay hugis oyunbitti (); //tapos na ang laro }

kung (dusmaninYdekonumu> 42) {// kung ang aming hugis ay makatakas mula sa mga kaaway

dusmanoldu = totoo; // pumatay ng mga hugis ng kaaway skor ++; // dagdagan isa-isa ang iskor}

// skora gore hizi artiriyoruz // dagdagan ang bilis ayon sa iskor

kung (skor> = 0 && skor = 10 && skor = 20 && skor = 30 && skor = 40 && skor = 50) {hiz = 6; antala (5); }

}

Hakbang 4: CODE BITMAP

Bukod dito, kailangan mong isama ang bitmap graphic para sa mga hugis. Dapat itong isang.c file.

isama ang // isama para sa pagpapaandar ng progmem

const unsigned char arac PROGMEM = {// bitmap ng aming hugis

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

const unsigned char dusmanAraci PROGMEM = {// bitmap ng barko ng kaaway

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

Hakbang 5: Salamat sa Pagtingin

Kahulugan ng ilang mga salita:

Oyun => Laro

Arac => Hugis

Dusman => Kaaway

kontrol => control

Konum, Yer => Lokasyon

Oyun Bitti => Game Over

Skor => Kalidad

Hiz => Bilis

Inirerekumendang: