Autorul poate fi contactat la adresa: Login pentru adresa
Labyrinth Escape este un joculet pe LCD ce presupune parcurgerea unui labirint de catre un personaj ce va trebui sa aleaga calea castigatoare catre final, trecand peste toate obstacolele intalnite pe parcurs.
Descriere generala
Jocul pe LCD Labyrinth Escape este alcatuit din diverse labirinturi de diferite dificultati. Jucatorul va trebui sa aleaga calea spre iesire intr-un numar cat mai mic de pasi, trebuiind sa fie atent mai ales la rutele gresite pe care le poate urma. Totodata, se vor contoriza si numarul de coliziui avute cu peretii labirintului. Pentru a gasi iesirea, jucatorul are nevioe de un nivel ridicat de orientare, utilizand cele 4 butoane pentru deplasarea inainte, inapoi, la stanga si la dreapta ce vor fi monatate pe placa, si totodata atentie asupra traseului ce il urmeaza.
Listă de piese:
Shema electrica:
Penru implementarea software-ului am folosit ca mediu de dezvoltare AVR Studio, cu ajutorul caruia am compilat sursa labirint.c, obtinand fisierul cu extensia .hex. Ca si editor am utilizat programmers notepad. La partea de librarii am folosit biblioteca u8glib de la arduino, ce a fost de mare ajutor pentru LCD-ul ce l-am folosit.
In principal jocul are o interfata agrebila de catre utilizator.Pentru a incepe un nou joc utilizator este rugat sa apese unul din cele 4 butoane disponibile. Jocul are doua nivele, dintre care primul este mai usor, iar al doilea este putin mai complicat.
Algoritmul implementat contine functii ce au diferite roluri, ca verificarea daca jucatorul se afla in aria plansei, ce este utilizata pentru a contoriza numarul de coliziuni. Totodata, numarul de pasi efectuati de catre jucatori sunt contorizati, pentru a vedea care a fost cel mai scurt drum. Pentru atentionarea jucatorului ca directia urmata este gresita, adica s-a efectuat o coliziune, buzzerul va face un sunet. Odata ce plansa a fost terminata, jucatorul este anuntat ca a trecut mai departe tot printr-un sunet al buzzerului. Se verifica constant pozitia jucatorului in funtie de directiile alese. Pentru a iesi din labirint, am initializat un interval pe axa x, prin care se efectuaza iesirea.
Rezultatele obtinute in urma realizaii proiectului au fost urmatoarele:
Revenirea la ecranul de start dupa incheierea ultimului nivel:
Acest proiect mi s-a parut unul interesant, din care am reusit sa acumulez noi cunostiinte si mai ales am invatat cum are loc interactiunea dintre software si hardware.
- Stabilirea componentelor necesare pentru proiect
- Realizarea placutei de baza
- Schema electrica aferenta proiectului
- Incheierea partii hardware
- Implementarea partii software