This is an old revision of the document!
Survival Shooter
Nume: Anghel Mihai-Gabriel
Grupa: 336CC
Introducere
Jocul constă într-un personaj ce este controlat de un joystick, se poate mișca sus-jos, stânga-dreapta, trăgând cu proiectile în obiecte care se mișcă pe verticală (sus → jos). Când player-ul elimină obiecte, punctajul crește și buzzer-ul produce un zgomot, altfel punctajul va scădea. Player-ul are 3 vieți de-a lungul unei sesiuni de joc, evidențiate prin trei leduri care se sting secvențial în momentul în care personajul este atins de un obiect. La anumite perioade de timp, viteza cu care obiectele vin și/sau densitatea lor va crește, pentru o dificultate sporită. Personajul va ataca în momentul apăsării unui buton. Anumite informații legate de joc, cum ar fi: timestamp-ul și scorul jucătorului cu cele mai bune rezultate, se vor salva pe un card microSD. Scopul jocului este ca player-ul să rămână în viață cât mai mult timp și să acumuleze un punctaj cât mai mare.
Descriere generală
Descriere
Toate componentele hardware sunt conectate la plăcuța Arduino UNO.
Input:
Joystick-ul face deplasarea player-ului
Butonul declanșează lansarea proiectilului
Modulul RTC pentru a putea stabili timestamp-ul
Modulul microSD de pe care se vor citi date
Output:
Ecranul LCD pe care apare animația
Trei LED-uri care indică nivelul vieții player-ului
Buzzer-ul care scoate un sunet când player-ul doboară un obiect și probabil atunci când se finalizează jocul
Modulul microSD pe care se vor scrie anumite date
Joystick-ul este conectat la pinii analogici A0, A1 ai plăcuței Arduino
Butonul este conectat la pinul digital 2 folosește o rezistență de pull-down de 1kohm
Buzzer-ul este conectat la pinul digital 3
Display-ul folosește pinii
Hardware Design
Aici puneţi tot ce ţine de hardware design:
listă de piese
-
diagrame de semnal
rezultatele simulării
Schema electrică:
Listă piese:
Placă Arduino UNO
LCD Nokia 5110
Modul RTC
Modul microSD
Breadboard
Buton
Joystick
Buzzer
LED-uri
Shift register
Rezistențe
Fire
Software Design
Descrierea codului aplicaţiei (firmware):
mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR)
librării şi surse 3rd-party (e.g. Procyon AVRlib)
algoritmi şi structuri pe care plănuiţi să le implementaţi
(etapa 3) surse şi funcţii implementate
Mediu dezvoltare
Biblioteci
SPI.h
SD.h
Adafruit_PCD8544.h
Sursa + funcțiile și structurile implementate
void readMAXScore()
void writeMAXScore()
updateShiftRegister(byte updateLed)
void turnOnLeds()
void turnOffLeds(int Led, bool leds)
void startJingle()
void setDisplay(int level)
void setLevel(int level, int deltatime, float objSpeed)
void level1_setup()
void level2_setup()
void level3_setup()
void drawPlayer(float x, float y)
void drawBullet()
void drawObject()
void movePlayer(float *x, float *y, int deltaX, int deltaY)
bool bulletCollision(int i)
void checkPlayerLives()
void computeScore()
bool checkGameOver()
În ceea ce privește structurile, am creat două: object și _bullet
object - un obiect de tip object conține date despre: poziție, viteză asociată, activ / inactiv, o perioadă de timp pe care o folosesc pentru generere de obiecte
_bullet - un obiect de acest tip înglobează: poziție, viteză asociată, activ / inactiv
Rezultate Obţinute
Care au fost rezultatele obţinute în urma realizării proiectului vostru.
Mai jos puteți vedea rezultatele obținute
Concluzii
Download
O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună
.
Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.
Jurnal
Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.
Data | Progres |
03.05.2022 | Pagina wiki |
05.05.2022 | 1) Descriere proiect
2) Schema bloc
3) Lista componente
4) Mediu de dezvoltare |
25.05.2022 | 1) Schema electrica
2) Biblioteci folosite |
Bibliografie/Resurse
Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.
Export to PDF