Table of Contents

Slot Machine

Autor: Andrei-Cristi Gherghe Grupa: 331CC

Introducere

Simulator Slot Machine cu ecran LCD

Descriere generală

Jucatorul va miza sume la alegere cu ajutorul unui buton si al unui joystick pe combinatii aleatorii de simboluri ce vor fi afisate pe un ecran LCD. Combinatiile castigatoare vor fi intampinate de aprinderea unui LED si o animatie pe ecran. Jocul este similar cu Sizzling Hot si scopul acestuia este de a obtine cat mai multe simboluri de acelasi fel pe o linie sau pe diagonala. Numarul minim necesar de simboluri consecutive de acelasi tip este 2 daca simbolul este cerc de culoare magenta, altfel 3 si simbolul '7' va genera in combinatiile norocoase un castig de 8 ori mai mare decat in cazul celorlalte.

Hardware Design

  1. Arduino UNO
  2. Breadboard
  3. LCD Display
  4. Buton
  5. Modul LED RGB
  6. Rezistenta 330 Ω
  7. Fire pentru legatura
  8. Joystick

Software Design

Pentru dezvoltarea programului pentru simulatorul de pacanele am folosit IDE-ul Arduino iar debugging-ul in consola de output pentru seriala. Am folosit bibliotecile Adafruit_GFX si Adafruit_ST7735 specifica LCD-ului TFTST7735 pentru desenarea simbolurilor si background-ului, doar cu functii primitive precum drawRect(…) si fillRect(…). Codul sursa se gaseste la sectiunea “Bibliografie/Resurse”. Exista 2 functii principale: drawMainMenu(), in care se deseneaza pe ecran meniul principal in care se selecteaza credit-ul initial pentru joc si drawGame() in care sunt generate simbolurile si optiunile pentru inceperea jocului, alegerea bet-ului si pentru intoarcerea in meniul principal.

Rezultate Obţinute

Concluzii

Ar fi fost mai usor daca nu desenam simbolurile cu functii primitive pentru forme geometrice simple, ci doar le citeam de pe un modul cu card microSD conectat la Arduino, dar mi-am dat seama prea tarziu xD. Partea dificila a fost la partea de scrierea a programului, avand in vedere coliziunile dintre forme, sincronizarea intre rendering-urile acestora si incadrarea acestora in alte forme.

Download

https://ocw.cs.pub.ro/courses/pm/prj2021/apredescu/slotmachine?do=export_pdf

Jurnal

Bibliografie/Resurse