Differences

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

Link to this comparison view

pm:prj2024:iotelea:ana.glodariu [2024/05/25 16:07]
ana.glodariu [Software Design]
pm:prj2024:iotelea:ana.glodariu [2024/05/25 22:41] (current)
ana.glodariu [Download]
Line 125: Line 125:
  
 Funcția **chestZone()** alertează jucătorul când se află în apropierea cufărului cu ajutorul buzzer-ului și al ecranului OLED. Funcția **chestZone()** alertează jucătorul când se află în apropierea cufărului cu ajutorul buzzer-ului și al ecranului OLED.
 +
 +Funcția **checkHazard()** verifică dacă jucătorul a picat fix pe poziția monstrului.
 +
 +Funcția **checkLoot()** verifică dacă jucătorul a colectat arma din cufăr.
  
 Am definite niște variabile de tip bool și în funcție de valoarea lor, pe ecran va apărea o imagine cu eroul, prințesa (în cazul în care câștigă),​ cufărul (când se află în preajma lui), sabia (când deschide cufărul), monstrul (când se află în preajma lui) sau un mormânt (cănd eroul este mâncat de monstru). Imaginile pixelate au fost create în GIMP și după convertite în bitmap cu ajutorul site-ului: ​ Am definite niște variabile de tip bool și în funcție de valoarea lor, pe ecran va apărea o imagine cu eroul, prințesa (în cazul în care câștigă),​ cufărul (când se află în preajma lui), sabia (când deschide cufărul), monstrul (când se află în preajma lui) sau un mormânt (cănd eroul este mâncat de monstru). Imaginile pixelate au fost create în GIMP și după convertite în bitmap cu ajutorul site-ului: ​
 https://​javl.github.io/​image2cpp/​ https://​javl.github.io/​image2cpp/​
  
-Eroul **pierde** jocul în următoarele situații+Eroul **pierde** jocul în următoarele situații:
   * a rămas fără timp (au trecut 60 de secunde)   * a rămas fără timp (au trecut 60 de secunde)
   * a încercat să lovească monstrul și nu l-a nimerit (monstrul are un auz foarte dezvoltat și va veni să atace eroul, astfel va fi omorât)   * a încercat să lovească monstrul și nu l-a nimerit (monstrul are un auz foarte dezvoltat și va veni să atace eroul, astfel va fi omorât)
Line 139: Line 143:
 De fiecare dată când jucătorul pierde sau câștigă, **jocul se resetează**. De fiecare dată când jucătorul pierde sau câștigă, **jocul se resetează**.
   * __void(* reset) (void) = 0;__ = declanșează execuția codului de la adresa 0, ce este echivalentă cu o resetare a sistemului.   * __void(* reset) (void) = 0;__ = declanșează execuția codului de la adresa 0, ce este echivalentă cu o resetare a sistemului.
 +
 +Pentru afișarea drumului parcurs de jucător folosesc o matrice de 8x8, pozițiile vizitate luând valoarea 1, iar pentru ca jucătorul să știe poziția curentă, led-ul pe care se află va clipi.
 +
 +De asemenea, ca atunci când jucătorul se mișcă stânga, dreapta, sus sau jos, acesta să se deplaseze cu o singură poziție în sensul corespunzător,​ am simulat un delay de o secundă între 2 deplasări, folosindu-mă de contorul utilizat la timer (contorul este incrementat de fiecare dată când întreruperea este generată).
  
  
Line 157: Line 165:
  
 Cu toate acestea, chiar dacă am întâmpinat unele probleme, a fost plăcut să gasesc soluții la ele de una singură. Cu toate acestea, chiar dacă am întâmpinat unele probleme, a fost plăcut să gasesc soluții la ele de una singură.
 +{{:​pm:​prj2024:​huntorbehunted.zip|}}
 ===== Download ===== ===== Download =====
 +{{:​pm:​prj2024:​huntorbehunted.zip|}} 
 +(arhiva încă conține cod pentru afișări de date seriale în cazul în care mai e nevoie de debugging)
 <note warning> <note warning>
 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ă ;-). 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ă ;-).
pm/prj2024/iotelea/ana.glodariu.1716642464.txt.gz · Last modified: 2024/05/25 16:07 by ana.glodariu
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