Windows Forms

Writing /home/grochu/public_html/wiki/data/cache/6/6a144e1ef0d2fc97e358edb7996763d9.i failed
Unable to save cache file. Hint: disk full; file permissions; safe_mode setting.
Writing /home/grochu/public_html/wiki/data/cache/6/6a144e1ef0d2fc97e358edb7996763d9.metadata failed
Writing /home/grochu/public_html/wiki/data/cache/d/db782e8f08e5d231199d457799b196b1.i failed
Writing /home/grochu/public_html/wiki/data/cache/d/db782e8f08e5d231199d457799b196b1.metadata failed
Writing /home/grochu/public_html/wiki/data/cache/6/6a144e1ef0d2fc97e358edb7996763d9.i failed
Unable to save cache file. Hint: disk full; file permissions; safe_mode setting.
Writing /home/grochu/public_html/wiki/data/cache/5/50b0c717ab237d35c122de584a7af43f.xhtml failed

Windows Forms

Zadanie - Gra Snake

Wykorzystując Windows Forms zaimplementuj grę Snake (Wąź).

  1. Utwórz projekt Windows Forms i na formie umieść:
    • kontrolkę PictureBox o wymiarach 400×400, reprezentującą planszę po której porusza się wąż,
    • etykiety prezentujące aktualny wynik (ilość zjedzonego pożywienia),
    • kontrolkę Timer, która z interwałem co 100 ms uruchamia kolejne kroki gry.
  2. Utwórz klasę reprezentującą węża, która zawiera informacje o położeniu głowy węża i wszystkich elementów ciała oraz informację o kierunku poruszania. Klasa udostępnia następujące operacje:
    • pobranie informacji o położeniu głowy,
    • możliwość ustawienia kierunku poruszania się węża (góra, dół, lewo, prawo),
    • ruch węża we wskazanym kierunku. Jeżeli wąż skonsumuje pożywienie umieszczone na planszy wówczas jego ciało wydłuża się o jeden element,
    • rysowanie węża na dostarczonym obiekcie Graphics,
    • pobranie informacji o wystąpieniu kolizji (wąż gryzie siebie w ogon).
  3. Utwórz klasę realizującą mechanikę gry. Obiekt zawiera informacje o położeniu węża oraz pożywienia na planszy i udostępnia następujące operacje:
    • zainicjowanie nowej gry: waż o długości 1, losowo usytuowane pożywienie, zerowanie punktacji,
    • pobranie informacji o stanie gry (czy zakończona, czy w toku),
    • wykonanie pojedynczej iteracji: przesuniecie węża, sprawdzenie kolizji i ewentualnie zakończenie gry,
    • obsługa klawiszy: zmiana kierunku poruszania węża przy wciśnięciu odpowiedniego klawisza,
    • rysowanie planszy z aktualnym położeniem węża i pożywienia, ewentualnie w przypadku gdy gra jest zakończona wypisywany jest tekst „Game Over”