Table des matières:

Jeu de course spatiale version 2 : 5 étapes
Jeu de course spatiale version 2 : 5 étapes

Vidéo: Jeu de course spatiale version 2 : 5 étapes

Vidéo: Jeu de course spatiale version 2 : 5 étapes
Vidéo: Pourquoi il ne faut pas PLEURER dans l'ESPACE ? 2024, Novembre
Anonim
Image
Image

Salut tout le monde. Avant cette version du jeu, a publié la première version du jeu. Aujourd'hui, ı vous montrera la version 2 de Space Race Game. Regardons les étapes…

Étape 1: PIÈCES

SCHÉMA
SCHÉMA

Voici une liste des pièces que j'ai utilisées pour réaliser ce projet:

  • Arduino UNO
  • Module de manette de jeu
  • Cavaliers (mâle à mâle et mâle à femelle)
  • Planche à pain

Étape 2: SCHÉMA

VCC -> Arduino 5V

BL -> Arduino broche 3

GND -> Arduino GND

CLK (SCLK) -> Arduino broche 8

DIN (MOSI) -> Arduino broche 9

CC -> Arduino broche 10

CE ou CS -> Arduino broche 12

RST (RESET) -> broche Arduino 11

Étape 3: CODEZ

CODE
CODE

Le code a des explications sur les fonctions du code. Vous le comprendrez facilement. Si vous avez un problème, vous pouvez me contacter.

#comprendre

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

booléen kontrol=true;

booléen dusmanoldu=true;

extern uint8_t SmallFont; // décrivez les polices

extern uint8_t MediumNumbers; extern uint8_t arac; //décrivez notre forme extern uint8_t dusmanAraci; //desribe la forme de l'ennemi const int xpin=A0; //joystick x pin char pozisyon=3; // décrivez l'emplacement, notre emplacement de départ de forme 3 int BL=3; int skor=0; int hiz=0; int dusmankonum1; //description de l'ennemi1 x emplacement int dusmankonum2; //description de l'ennemi2 x emplacement int dusmankonum3; //description de l'ennemi3 x emplacement int dusmankonum4; //description de l'ennemi4 x emplacement int dusmankonum5; //description de l'ennemi5 x emplacement int dusmaninYdekonumu;

void oyunEkrani(){ //définir l'écran de jeu

lcd.clrScr(); lcd.drawRect(0, 0, 47, 47); // nous dessinons le rectangle lcd.setFont(SmallFont); //définir la police lcd.print("skor", 57, 1); //impression de la partition lcd.print("hiz", 60, 24); // vitesse d'impression lcd.setFont(MediumNumbers); //définir la police lcd.printNumI(skor, 55, 8); // obtenir le score lcd.printNumI(hiz, 63, 32); // obtenir la vitesse lcd.update(); }

void dusmanAracidurum(int yer, int asama){ //définir les emplacements pour les formes ennemies

if(yer==1){ lcd.drawBitmap(2, asama, dusmanAraci, 7, 7);lcd.update();}//if location=1 dessiner l'ennemi façonner cet emplacement 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(){ //si nous échouons, le jeu est terminé

while(1){ délai(100); // attendre 1 milliseconde lcd.clrScr(); lcd.setFont(SmallFont); lcd.print("OYUN BITTI", CENTRE, 8); // imprimer le jeu sur lcd.print("skorunuz=", 3, 30); // imprimez votre partition lcd.setFont(MediumNumbers); lcd.printNumI(skor, 60, 25); // obtenir le dernier score lcd.update(); } }

void setup() {

pinMode(BL, SORTIE); //réinitialiser la lumière Output pinMode(xpin, INPUT); //définir x pin comme entrée lcd. InitLCD(); // initialise l'écran lcd lcd.setContrast(55); //définir le contraste (de 0 à 127) Serial.begin (9600); //commencer la communication en série }

boucle vide() {

analogWrite(BL, 350); oyunEkrani();

//joyistic durumu… //définir l'emplacement du 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 et le contrôle est vrai pozisyon++; // augmenter l'emplacement, cela signifie déplacer la forme vers la droite kontrol=false; } else if(durumx >300 && durumx <600){ kontrol=true; } //pozisyon durumu… //position state… if(pozisyon==1){ //if location=1; lcd.drawBitmap(2, 41, arac, 7, 7);lcd.update();}//dessiner notre vaisseau 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){ //si la forme ennemie est morte, vérifiez qu'elle est morte

dusmankonum1=pozisyon; //dessine la première forme ennemie dusmankonum2=random(0, 6);//dessine une autre forme ennemie quelque part dusmankonum3=random(0, 6); dusmankonum4=aléatoire(0, 6); dusmankonum5=aléatoire(0, 6); dusmaninYdekonumu=0; //amenez l'ennemi du haut dusmanoldu=false;} //l'ennemi est recréé pour qu'il ne soit pas mort

dusmanAracidurum(dusmankonum1, dusmaninYdekonumu);dusmaninYdekonumu++; //dessiner la première forme ennemie et la récupérer de haut en bas

dusmanAracidurum(dusmankonum2, dusmaninYdekonumu);dusmaninYdekonumu++; // dessinez la deuxième forme ennemie et récupérez-la de haut en bas dusmanAracidurum(dusmankonum3, dusmaninYdekonumu);dusmaninYdekonumu++; dusmanAracidurum(dusmankonum4, dusmaninYdekonumu);dusmaninYdekonumu++; if(dusmaninYdekonumu>35 && ((dusmankonum1 == pozisyon)||(dusmankonum2 == pozisyon)||(dusmankonum3 == pozisyon)||(dusmankonum4 == pozisyon)))){ //si notre forme touche les formes ennemies oyunbitti(); //le jeu est terminé }

if(dusmaninYdekonumu >42){//si notre forme s'échappe des ennemis

dusmanoldu = vrai; //tuer les formes ennemies skor++; //augmente un à un le score }

//skora gore hizi artiriyoruz //augmentation de la vitesse en fonction du score

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

}

Étape 4: CODE BITMAP

De plus, vous devez inclure un graphique bitmap pour les formes. Il doit s'agir d'un fichier.c.

#include //include pour la fonction progmem

const unsigned char arac PROGMEM = { //notre forme bitmap

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

const char dusmanAraci non signé PROGMEM = { // bitmap du vaisseau ennemi

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

Étape 5: Merci d'avoir regardé

Signification de certains mots:

Oyun => Jeu

Arac => Forme

Dusman => Ennemi

contrôle => contrôle

Konum, Yer => Emplacement

Oyun Bitti => Fin du jeu

Skor => Note

Hiz => Vitesse

Conseillé: