Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2024:cpatru:stefan.ionescu1609 [2024/05/26 22:25]
stefan.ionescu1609
pm:prj2024:cpatru:stefan.ionescu1609 [2024/05/27 12:36] (current)
stefan.ionescu1609 [Bibliografie/Resurse]
Line 51: Line 51:
 ===== Software Design ===== ===== Software Design =====
 <note tip> <note tip>
- In cadrul acestui proiect, actiunea se petrece in interiorul functiei de loop. Daca nu ruleaza jocul si nu este pauza atunci verific daca s-a scurs counter-ul care este timpul alocat jucatorului in acest caz 20 de secunde. Daca da, atunci inseamna ca nu a avut loc nici o coliziune si jucatorul a castigat. In continuare, resetez numaratorea si jocul o va lua de la capat cu mesajul "BEGIN ?" "PRESS START !". In acest ipostaz, jucatorul se afla in postura de repaus. Ca sa inceapa jocul apas pe buton. Pentru realizarea unei astfel de operatii ma folosesc de intreruperi. Daca se va apasa pe buton, jocul incepe si harta incepe sa fie desenata. Aceasta contine mai multe obstacole sub forma unor copaci. Fiecare copac are un timp de viata cat este afisat pe ecran. Jucatorul in sine va fi mereu pozitionat pe celula de jos. Pentru a realiza lucrurile mai dinamic, am inclus si niste miscari de sarituri pentru jucator in matricea de miscare. Felul cum harta va fi generata in continuare este realizata tot in loop, unde in functie de pozitia jucatorului decid cum va arata urmatorul frame. Am si un buton de pause , care are rolul de a pune pauza jocului oricand jucatorul are nevoie iar dupa cateva secunde de la apasarea acestui buton se va rezuma la joc. O data ce butonul de pauza a fost apasat, un mesaj : "GAME PAUSED"​ va fi afisat pe ecranul LCD. Insotit de acest mesaj este printat si scorul actual al jucatorului. Daca a avut loc o coliziune, LED-ul rosu se va aprinde alaturi de mesajul "LOST ! AGAIN ?" urmat de scorul obtinut. Daca jocul va fi pus pe pauza LED-ul galben se va aprinde, alaturi de mesajul "GAME PAUSED"​ si scorul actual. Iar daca jucatorul va castiga se va afisa mesajul "YOU WON" "​ANOTHER ONE ?", simultan cu el LED-ul verde se va aprinde.  ​+ In cadrul acestui proiect, actiunea se petrece in interiorul functiei de loop. Daca nu ruleaza jocul si nu este pauza atunci verific daca s-a scurs counter-ul care este timpul alocat jucatorului in acest caz 20 de secunde. Daca da, atunci inseamna ca nu a avut loc nici o coliziune si jucatorul a castigat. In continuare, resetez numaratorea si jocul o va lua de la capat cu mesajul "BEGIN ?" "PRESS START !"; tind sa mentionez faptul ca in aceasta faza, este si muzica ce va fi rulata am ales PinkPanther;​ muzica va fi redata pe masura ce mesajele "BEGIN ?" "PRESS START !" sunt afisate. In acest ipostaz, jucatorul se afla in postura de repaus. Ca sa inceapa jocul apas pe buton. Pentru realizarea unei astfel de operatii ma folosesc de intreruperi. Daca se va apasa pe buton, jocul incepe si harta incepe sa fie desenata. Aceasta contine mai multe obstacole sub forma unor copaci. Fiecare copac are un timp de viata cat este afisat pe ecran. Jucatorul in sine va fi mereu pozitionat pe celula de jos. Pentru a realiza lucrurile mai dinamic, am inclus si niste miscari de sarituri pentru jucator in matricea de miscare. Felul cum harta va fi generata in continuare este realizata tot in loop, unde in functie de pozitia jucatorului decid cum va arata urmatorul frame. Am si un buton de pause , care are rolul de a pune pauza jocului oricand jucatorul are nevoie iar dupa cateva secunde de la apasarea acestui buton se va rezuma la joc. O data ce butonul de pauza a fost apasat, un mesaj : "GAME PAUSED"​ va fi afisat pe ecranul LCD. Insotit de acest mesaj este printat si scorul actual al jucatorului. Daca a avut loc o coliziune, LED-ul rosu se va aprinde alaturi de mesajul "LOST ! AGAIN ?" urmat de scorul obtinut; daca aceste doua mesaje cu  "GAME PAUSED"​ si "LOST ! AGAIN ?" sunt afisate pe ecran o muzica va fi redata este muzica de GameOver in cod. Daca jocul va fi pus pe pauza LED-ul galben se va aprinde, alaturi de mesajul "GAME PAUSED"​ si scorul actual. Iar daca jucatorul va castiga se va afisa mesajul "YOU WON" "​ANOTHER ONE ?", simultan cu el LED-ul verde se va aprinde.  ​
  
 In functia map_initialisation, ​ harta este creata, iar in functia map_animation se va decide care va fi urmatorul pas in reprezentarea hartii. In functia map_initialisation, ​ harta este creata, iar in functia map_animation se va decide care va fi urmatorul pas in reprezentarea hartii.
Line 94: Line 94:
 \\ \\
 ===== Download ===== ===== Download =====
-  * Archive : {{pm:​prj2024:​cpatru:​arcade_mascot_game.zip}}+  * Archive : {{pm:​prj2024:​cpatru:​arcade_mascot_game_1.zip}}
   * GitHub : [[https://​github.com/​stefanione/​Arcade-Mascot-Game]]   * GitHub : [[https://​github.com/​stefanione/​Arcade-Mascot-Game]]
 ===== Jurnal ===== ===== Jurnal =====
Line 111: Line 111:
 <​note>​ <​note>​
   * https://​maxpromer.github.io/​LCD-Character-Creator/​   * https://​maxpromer.github.io/​LCD-Character-Creator/​
 +  * https://​www.circuito.io/​blog/​arduino-uno-pinout/​
   * https://​github.com/​robsoncouto/​arduino-songs/​tree/​master/​pinkpanther   * https://​github.com/​robsoncouto/​arduino-songs/​tree/​master/​pinkpanther
   * https://​www.youtube.com/​watch?​v=CvqHkXeXN3M&​t=74s   * https://​www.youtube.com/​watch?​v=CvqHkXeXN3M&​t=74s
pm/prj2024/cpatru/stefan.ionescu1609.1716751519.txt.gz · Last modified: 2024/05/26 22:25 by stefan.ionescu1609
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0