Daftar Isi:

Game Balap Luar Angkasa Versi 2: 5 Langkah
Game Balap Luar Angkasa Versi 2: 5 Langkah

Video: Game Balap Luar Angkasa Versi 2: 5 Langkah

Video: Game Balap Luar Angkasa Versi 2: 5 Langkah
Video: MISI KE LUAR ANGKASA MENGGUNAKAN PESAWAT GARUDA INDONESIA DI GTA 5 - GTA 5 MOD 2024, November
Anonim
Image
Image

Hai semuanya. Sebelum versi game ini, menerbitkan game versi pertama. Hari ini, akan menampilkan Game Space Race versi 2. Mari kita lihat langkah-langkahnya…

Langkah 1: BAGIAN

SKEMA
SKEMA

Berikut adalah daftar bagian yang saya gunakan untuk membuat proyek ini:

  • Arduino UNO
  • Modul Joystick
  • Kabel Jumper (jantan ke jantan dan jantan ke betina)
  • Papan tempat memotong roti

Langkah 2: SKEMA

VCC -> Arduino 5V

BL -> Pin Arduino 3

GND -> Arduino GND

CLK (SCLK) -> Arduino pin 8

DIN (MOSI) -> Arduino pin 9

DC -> Pin Arduino 10

CE atau CS -> Arduino pin 12

RST (RESET) -> Arduino pin 11

Langkah 3: KODE

KODE
KODE

Kode memiliki penjelasan fungsi kode. Anda akan dengan mudah memahaminya. Jika Anda memiliki masalah, Anda dapat menghubungi saya.

#termasuk

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

boolean kontrol=true;

boolean dusmanoldu=benar;

extern uint8_t SmallFont; //deskripsikan fontnya

extern uint8_t MediumNumbers; extern uint8_t arac; //deskripsikan bentuk kita extern uint8_t dusmanAraci; //desribe bentuk musuh const int xpin=A0; //joystick x pin char pozisyon=3; //deskripsikan lokasi, bentuk kita mulai lokasi 3 int BL=3; int skor=0; int hiz=0; int dusmankonum1; //deskripsikan lokasi musuh1 x int dusmankonum2; //deskripsikan lokasi musuh2 x int dusmankonum3; //deskripsikan lokasi musuh3 x int dusmankonum4; //deskripsikan lokasi musuh4 x int dusmankonum5; //deskripsikan lokasi musuh5 x int dusmaninYdekonumu;

void oyunEkrani(){ //mengatur layar permainan

lcd.clrScr(); lcd.drawRect(0, 0, 47, 47); //kita menggambar persegi panjang lcd.setFont(SmallFont); //set font lcd.print("skor", 57, 1); //cetak skor lcd.print("hiz", 60, 24); //kecepatan cetak lcd.setFont(Angka Sedang); //set font lcd.printNumI(skor, 55, 8); //mendapatkan skor lcd.printNumI(hiz, 63, 32); //mendapatkan kecepatan lcd.update(); }

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

if(yer==1){ lcd.drawBitmap(2, asama, dusmanAraci, 7, 7);lcd.update();}//if location=1 gambar musuh bentuk lokasi ini if(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(){ //jika kita gagal, game over

while(1){ penundaan(100); //tunggu 1 milidetik lcd.clrScr(); lcd.setFont(Font Kecil); lcd.print("OYUN BITTI", TENGAH, 8); //cetak game melalui lcd.print("skorunuz=", 3, 30); //cetak skor Anda lcd.setFont(MediumNumbers); lcd.printNumI(skor, 60, 25); //dapatkan skor terakhir lcd.update(); } }

batalkan pengaturan() {

pinMode(BL, OUTPUT); //set back light Output pinMode(xpin, INPUT); //set x pin sebagai input lcd. InitLCD(); //inisialisasi layar lcd lcd.setContrast(55); //set kontras(sekitar 0 sampai 127) Serial.begin(9600); //mulai komunikasi serial }

lingkaran kosong() {

analogWrite(BL, 350); oyunEkrani();

//joyistic durumu… //set lokasi joyistick…

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 dan kontrol benar pozisyon++; //menambah lokasi artinya pindah bentuk ke kanan kontrol=false; } else if(durumx >300 && durumx <600){ kontrol=true; } //pozisyon durumu… //status posisi… if(pozisyon==1){ //if lokasi=1; lcd.drawBitmap(2, 41, arac, 7, 7);lcd.update();}//draw kapal kita if(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();} if(pozisyon ==6){ lcd.drawBitmap(42, 41, arac, 7, 7);lcd.update();}

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

dusmankonum1=pozisyon; //gambar bentuk musuh pertama dusmankonum2=random(0, 6);//gambar bentuk musuh lain di suatu tempat dusmankonum3=random(0, 6); dusmankonum4=acak(0, 6); dusmankonum5=acak(0, 6); dusmaninYdekonumu=0; //bawa musuh dari atas dusmanoldu=false;} //musuh dibuat ulang agar tidak mati

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

dusmanAracidurum(dusmankonum2, dusmaninYdekonumu);dusmaninYdekonumu++; //gambar bentuk musuh kedua dan ambil 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 bentuk musuh oyunbitti(); //permainan selesai }

if(dusmaninYdekonumu >42){//jika bentuk kita lolos dari musuh

dusmanoldu = benar; //membunuh musuh membentuk skor++; //menambahkan skor satu per satu }

//skora gore hizi artiriyoruz //menambah kecepatan sesuai skor

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

}

Langkah 4: KODE BITMAP

Selanjutnya, Anda harus menyertakan grafik bitmap untuk bentuk. Ini harus berupa file.c.

#include //sertakan untuk fungsi progmem

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

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 telah Melihat

Arti dari beberapa kata:

Oyun => Permainan

Arac => Bentuk

Dusman => Musuh

kendali => kendalikan

Konum, Yer => Lokasi

Oyun Bitti => Permainan Berakhir

Skor => Skor

Hiz => Kecepatan

Direkomendasikan: