This is an old revision of the document!
Autor: Popa Gloria-Alexandra 336CA
In primul rand, am desenat ecranul de start in care jucatorul este indemnat sa apese pe un buton pentru a incepe jocul. In urma acestei actiuni este redat fundalul si este plasata prima bucata de mancare pe harta. De asemenea, este afisat sarpele la o pozitie prestabilita (acesta incepe sa se miste intr-o directie determinata de care dintre butoane a fost apasat).
Jocul se petrece intr-un loop infinit, fiind resetat in momentul in care sarpele se loveste fie de un perete, fie de propriul sau corp. In acel moment apare ecranul de game over si buzzer-ul scoate un sunet specific.
Logica jocului se bazeaza in principiu pe implementarea unei liste simplu inlantuite, in care un nod reprezinta un patrat care alcatuieste sarpele. La fiecare iteratie, stabilesc care este noua pozitie a capului in functie de ce input este primit de la butoane. Practic, este nevoie doar sa desenez capul si sa sterg coada (ultimul nod din lista), restul sarpelui ramanand in pozitia precedenta. Asa se pastreaza dimensiunea sa constanta, iar in cazul in care creste punctajul nu se mai sterge ultimul bloc, incrementandu-se astfel aceasta dimensiune.
Punctele se acumuleaza pe masura ce sarpele colecteaza mancarea spawnata aleator pe harta, la o pozitie diferita de a sa. Fiecare punct obtinut este semnalat de catre buzzer printr-un bipait scurt.
Viteza sarpelui poate fi variata de catre player cu ajutorul unui potentiometru, aspect care ofera o dinamica mai buna jocului.
https://ocw.cs.pub.ro/courses/pm/prj2021/apredescu/gesture_controlled_music https://www.youtube.com/watch?v=72SrQuVU3Ww&ab_channel=Mr.maker https://www.arduino.cc/en/Tutorial/BuiltInExamples/Button https://create.arduino.cc/projecthub/SURYATEJA/use-a-buzzer-module-piezo-speaker-using-arduino-uno-89df45 https://www.arduino.cc/en/Reference/TFTLibrary