Isi kandungan:

Space Race Game Versi 2: 5 Langkah
Space Race Game Versi 2: 5 Langkah

Video: Space Race Game Versi 2: 5 Langkah

Video: Space Race Game Versi 2: 5 Langkah
Video: Space Racing 2 Gameplay Amazing 3D graphics science fiction racing game Off & Online Android Game. 2024, November
Anonim
Image
Image

Hai semua. Sebelum versi permainan ini, saya telah menerbitkan versi permainan pertama. Hari ini, saya akan menunjukkan kepada anda Space Race Game versi 2. Mari lihat langkah…

Langkah 1: BAHAGIAN

SKIM
SKIM

Berikut adalah senarai bahagian yang saya gunakan untuk membuat projek ini:

  • Arduino UNO
  • Modul Joystick
  • Jumper Wires (lelaki hingga lelaki dan lelaki hingga perempuan)
  • Papan roti

Langkah 2: SKIM

VCC -> Arduino 5V

BL -> Pin Arduino 3

GND -> Arduino GND

CLK (SCLK) -> Arduino pin 8

DIN (MOSI) -> Pin Arduino 9

DC -> Pin Arduino 10

CE atau CS -> Pin Arduino 12

RST (RESET) -> Arduino pin 11

Langkah 3: KOD

KOD
KOD

Kod tersebut mempunyai penjelasan mengenai fungsi kod. Anda akan mudah memahaminya. Sekiranya anda mempunyai masalah, anda boleh menghubungi saya.

#sertakan

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

boolean kontrol = benar;

boolean dusmanoldu = benar;

luaran uint8_t SmallFont ; // terangkan fon

extern uint8_t MediumNumbers ; luaran uint8_t arac ; // terangkan bentuk kami luaran uint8_t dusmanAraci ; // menghuraikan bentuk musuh const int xpin = A0; // kayu bedik x pin char pozisyon = 3; // terangkan lokasi, bentuk kami mula lokasi 3 int BL = 3; int skor = 0; int hiz = 0; int dusmankonum1; // terangkan musuh1 x lokasi int dusmankonum2; // terangkan musuh2 x lokasi int dusmankonum3; // terangkan musuh3 x lokasi int dusmankonum4; // menerangkan lokasi musuh4 x int dusmankonum5; // terangkan musuh5 x lokasi int dusmaninYdekonumu;

batal oyunEkrani () {// tetapkan skrin permainan

lcd.clrScr (); lcd.drawRect (0, 0, 47, 47); // kami melukis segi empat tepat lcd.setFont (SmallFont); // tetapkan font lcd.print ("skor", 57, 1); // skor cetak lcd.print ("hiz", 60, 24); // laju cetak lcd.setFont (Nombor Sederhana); // tetapkan font lcd.printNumI (skor, 55, 8); // dapatkan skor lcd.printNumI (hiz, 63, 32); // dapatkan kelajuan lcd.update (); }

void dusmanAracidurum (int yer, int asama) {// tetapkan lokasi untuk bentuk musuh

if (yer == 1) {lcd.drawBitmap (2, asama, dusmanAraci, 7, 7); lcd.update ();} // jika lokasi = 1 lukis musuh membentuk lokasi ini jika (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 ();}}

batal oyunbitti () {// jika kita gagal, permainan akan berakhir

sementara (1) {kelewatan (100); // tunggu 1 milisaat lcd.clrScr (); lcd.setFont (SmallFont); lcd.print ("OYUN BITTI", PUSAT, 8); // mencetak permainan melalui lcd.print ("skorunuz =", 3, 30); // cetak skor anda lcd.setFont (Nombor Sederhana); lcd.printNumI (skor, 60, 25); // dapatkan skor terakhir lcd.update (); }}

batal persediaan () {

pinMode (BL, OUTPUT); // tetapkan lampu belakang Output pinMode (xpin, INPUT); // tetapkan pin pin sebagai input lcd. InitLCD (); // masukkan skrin lcd lcd.setContrast (55); // tetapkan kontras (antara 0 hingga 127) Serial.begin (9600); // mulakan komunikasi bersiri}

gelung kosong () {

analogWrite (BL, 350); oyunEkrani ();

// sukacita durumu… // tetapkan lokasi Joyistick…

int durumx = analogRead (xpin); jika (durumx <300 && pozisyon! = 1 && kontrol == true) {// if location! = 1, x state600 && pozisyon! = 6 && kontrol == true) {// if location! = 3, x state> 600 dan kawalan adalah benar pozisyon ++; // tingkatkan lokasi itu artinya pindah bentuk ke kontrol kanan = false; } lain jika (durumx> 300 && durumx <600) {kontrol = true; } // pozisyon durumu… // keadaan kedudukan… jika (pozisyon == 1) {// jika lokasi = 1; lcd.drawBitmap (2, 41, arac, 7, 7); lcd.update ();} // tarik kapal kami jika (pozisyon == 2) {lcd.drawBitmap (10, 41, arac, 7, 7); lcd.update ();} if (pozisyon == 3) {lcd.drawBitmap (18, 41, arac, 7, 7); lcd.update ();} if (pozisyon == 4) {lcd.drawBitmap (26, 41, arac, 7, 7); lcd.update ();} if (pozisyon == 5) {lcd.drawBitmap (34, 41, arac, 7, 7); lcd.update ();} jika (pozisyon == 6) {lcd.drawBitmap (42, 41, arac, 7, 7); lcd.update ();}

jika (dusmanoldu) {// jika bentuk musuh sudah mati, periksa apakah mereka sudah mati

dusmankonum1 = pozisyon; // lukis bentuk musuh pertama dusmankonum2 = rawak (0, 6); // lukiskan bentuk musuh lain di suatu tempat dusmankonum3 = rawak (0, 6); dusmankonum4 = rawak (0, 6); dusmankonum5 = rawak (0, 6); dusmaninYdekonumu = 0; // bawa musuh dari atas dusmanoldu = false;} // musuh diciptakan semula supaya mereka tidak mati

dusmanAracidurum (dusmankonum1, dusmaninYdekonumu); dusmaninYdekonumu ++; // lukiskan bentuk musuh pertama dan dapatkan dari atas ke bawah

dusmanAracidurum (dusmankonum2, dusmaninYdekonumu); dusmaninYdekonumu ++; // lukis bentuk musuh kedua dan dapatkannya dari atas ke bawah dusmanAracidurum (dusmankonum3, dusmaninYdekonumu); dusmaninYdekonumu ++; dusmanAracidurum (dusmankonum4, dusmaninYdekonumu); dusmaninYdekonumu ++; if (dusmaninYdekonumu> 35 && ((dusmankonum1 == pozisyon) || (dusmankonum2 == pozisyon) || (dusmankonum3 == pozisyon) || (dusmankonum4 == pozisyon)))) {// jika bentuk kita menyentuh musuh membentuk oyunbitt); //permainan telah tamat }

jika (dusmaninYdekonumu> 42) {// jika bentuk kita melarikan diri dari musuh

dusmanoldu = benar; // bunuh musuh bentuk skor ++; // tingkatkan satu demi satu skor}

// skora gore hizi artiriyoruz // tingkatkan kelajuan mengikut skor

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

}

Langkah 4: KOD BITMAP

Tambahan pula, anda mesti memasukkan grafik bitmap untuk bentuk. Ia mestilah fail.c.

#sertakan // sertakan untuk fungsi progmem

const unsigned char arac PROGMEM = {// bentuk bitmap kami

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

const unsigned char dusmanAraci PROGMEM = {// bitmap kapal musuh

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

Langkah 5: Terima kasih kerana Melihat

Maksud beberapa perkataan:

Oyun => Permainan

Arac => Bentuk

Dusman => Musuh

kawalan => kawalan

Konum, Yer => Lokasi

Oyun Bitti => Permainan Selesai

Skor => Skor

Hiz => Kelajuan

Disyorkan: