-
Opis projektu. Projekt jest grą „SNAKE” w konsoli windows
-
Wymagania • Menu z wyborem poziomu trudności i i tablicą wyników • Sterowanie wężem za pomocą klawiszy WSAD • Możliwość zbierania punktów na planszy powodujących powiększanie węża • Gdy wąż uderzy w swój ogon lub ścianę gra się kończy • Wygrywa się wtedy gdy nie będzie już wolnych pól na planszy • Zapisanie wyniku do pliku jeśli wynik ten jest najlepszy.
-
Przebieg realizacji Grę napisałem za pomocą standardowych bibliotek C++ Zacząłem od implementacji algorytmu samej gry:
Wąż jest reprezentowany przez tablicę 2D:
- 0 w tablicy oznacza puste pole:
- -1 w tablicy oznacza „pokarm” dla węża powodujący jego wzrost
- Liczby większe od 0 pokazują węża w tym 1 oznacza głowę węża i od tego miejsca wyznacza się następne pola do poruszania
Algorytm(powtarzany co sekundę):
- Oblicza zmienne x i y w nowym kierunku co każdą klatkę (jeśli kierunek jest prawidłowy, zwiększ x lub y o 1)
- Jeśli x i y jest nie prawidłowy (wychodzi poza tablice lub w miejscu x,y jest już wąż gra zwraca wartość 1= przegranej
- jeśli wartość snake w xy jest równa -1 dodaje do długości węża 1 i losuje nowe wolne pole na którym zapisuje -1
- Przechodzi pętlą po wężu i dodaje 1 do pól na których jest wąż i jeśli wartość jest większa od długości nadpisuje ją jako 0
Potem zająłem się resztą gry: utworzeniem menu, ekranu wygranej, przegranej i metodą zapisywania wyniku.
- Instrukcja użytkownika Menu wyboru obsługuje się poprzez naciśnięcie odpowiadającego klawisza na klawiaturze.
Poruszanie wężem odbywa się za pomocą klawiszy „WSAD”, gra polega na zbieraniu „jedzenia” i osiąganiu jak największej długości węża.