Autorul poate fi contactat la adresa: Login pentru adresa
Proiectul constă în realizarea unei variante a jocului Snake folosind un LCD grafic. Implementarea va pleca de la varianta clasică a jocului, însă va aduce în plus următoarele funcţionalitaţi:
Scopul proiecului este unul recreaţional şi de divertisment, în funcţie de funcţinalitaţile implementate acesta va oferi o experientă cât mai placută utilizatorului.
Motivul alegerii temei proiectului a constat atât în folosirea noţiunilor învaţate în cadrul laboratorelor de pe parcursul semestrului cât şi placerea de a juca acest joc pe primul meu telefon Nokia.
Jucatorul va interacţiona cu jocul prin intermediul butoanelor ce vor fi de mai multe tipuri: de selecţie, de mişcare(sus, jos, stanga, dreapta).
Fiecare jucator va avea iniţial 3 vieti ce vor fi semnalate prin intermediul unor led-uri. În funcţie de activitatea jucatorului, jocul va avea anumite sunete. Momentul în care jucatorul caştigă sau pierde va fi semnalat prin sunete şi jocuri de lumini ale led-urilor.
Lista de piese:
Am folosit pentru a implementa partea software editorul Sublime si compilatorul avr-gcc. Alte medii folosite sunt: BootloaderHID si EAGLE.
Pentru a putea intractiona cu LCD-ul am folosit biblioteca nokia5110. Alte biblioteci folosite in realizarea proiectului sunt: avr/io.h, stdio.h si util/delay.h.
Am folosit un vector static de structuri ce reprezinta sarpele. In fiecare structura se afla coordonatele acestuia.
Intregul program se gaseste in fisierul main.c al arhivei de mai jos si contine o multitudine de functii:
Jocul contine pe mai multe nivele diferite prin dificultatea data atat de viteza de miscare a sarpelui cat si de power-ups, nivele ce pot si selectate dintr-un meniu. Fiecare moment important din joc este pus in evidenta prin diferite sunete/melodii, dar si diverse jocuri de lumini. In timp real, jucatorul isi poate vedea scorul dar si numarul de vieti ramase (semnalat atat prin leduri cat si prin caractere pe ecranul Lcd-ului).
Power-ups:
A fost unul dintre cele mai interesante proiecte de pana acum, pe care am putut sa-l modelez si sa-l personalizez dupa cum am vrut eu.
Hardware:
Software:
Resurse Software:
Resurse Hardware: