Gra w kolory

Dzisiaj zrobimy sobie bardzo przyjemną grę logiczną. Polega ona na klikaniu w pewien wyświetlany wzór kolorów. Gra po ukończeniu będzie wyglądać jak na filmie, film zawiera również prezentację jak rozmieścić wszystkie elementy gry na formię.

Będzie miała nieograniczoną liczbę poziomów, rosnący stopień trudności i sumującą się liczbę punktów. Grę będzie można samemu bez problemów modyfikować, postaram się wszystko wyjaśnić w biegu tworzenia gry 🙂 .
Zaczniemy od dodania zmiennych w Form1 wpisujemy:

Teraz dodamy sobie konfigurację w momencie załadowania formy, w tym celu klikamy dwukrotnie na naszą formę dodając Form1_Load wpisujemy w nim

Każdy Panel ma swój oddzielny kolor, każdy kolor ma zmniejszoną wartość wizualizacji, przyjmuje ona wartość z przedziału od 0-255 im jest mniejsza tym kolor jest bardziej przezroczysty. Po uruchomieniu nasza forma będzie wyglądała tak jak na obrazku:

gra_w_kolory_1

Poprzez zmianę wartości z 25 na 255 będziemy wyostrzać pewną sekwencje kolorów którą użytkownik będzie musiał powtórzyć. Sekwencja będzie wybierana losowa w zależności od aktualnego poziomu.

Do opóźnienia danego efektu służy metoda: Await Task.Delay(„wartość opóźnienia”). po dodaniu tej metody nasz program będzie kontynuował swoje działanie po przekroczeniu tego czasu. Czyli zrobimy tak, najpierw podświetlimy sobie jeden kwadracik następnie poczekamy jakiś czas, (ta wartość będzie zależna od poziomu trudności) zgasimy go i zapalimy kolejny. Najpierw zrobimy sobie dwie metody które będą gasić i świecić nam kwadraty:

Teraz dodajemy metodę która według wylosowanego wcześniej wzoru będzie sekwencyjnie zapalać kolorki:

Jest to bardzo prosta metoda, a główne jej elementy to oczywiście podswietlenieKoloru() i zgaszenieKoloru(). Tworzymy sobie odwołanie do przycisku „Start” zobaczymy czy wszystko działa jak trzeba.

Pozbywając się chwilowo nieaktywnych metod (podkreślonych na czerwono) przyciśnięcie przycisku „Start” powinno spowodować pojawienie się sekwencji kolorów. Do każdego Panelu dodajemy zdarzenie „MouseClick” następnie zmieniamy je w następujący sposób:

To daje nam możliwość klikania na każdy panel i sprawdzania czy trafiliśmy odpowiednie kolory. Sercem naszego programu będzie metoda sprawdzLiczbe() która po wprowadzeniu wartości z wybranego panelu będzie sprawdzał czy wartość ta znajduje się w wylosowanych liczbach.

Dodatkowe wartości i metody dodajemy w kodzie poniżej, wyświetlają one poziom trudności, odejmują serduszko, otwierają ustawienia.

Dwie wartości ustawiliśmy jako publiczne, dzięki temu możemy bez problemu zmieniać ich wartości w innych oknach. Po otworzeniu drugiej formy wypełniamy ją kodem:

To pozwoli zmienić nam szybkość gry i ilość wyświetlanych kolorów. gra_w_kolory_3

Projekt dostępny do pobrania tutaj: Gra_w_kolory

 

Permalink do tego artykułu: https://visualmonsters.cba.pl/gra-w-kolory/

Dodaj komentarz

Twój adres email nie będzie publikowany.