Wizja projektu - m11chal/infun-games GitHub Wiki
Wstęp
Celem projektu jest stworzenie 2 komponentów webowych - gier: Mahjong oraz gry polegającej na narysowaniu ścieżki Eulera (One Touch Draw). Będą one częścią systemu umożliwiającego rozwiązywanie zadań online.
Mahjong
Mahjong to gra polegająca na usuwaniu par jednakowych płytek z planszy przy czym płytki nie mogą być blokowane z góry ani z obu boków.
Wymagania funkcjonalne
- użytkownik wybiera parę jednakowych płytek do usunięcia z planszy, które nie są blokowane
- płytki zostają usunięte tylko wtedy, gdy wybrane płytki są jednakowe
- nie można wybrać płytek, które są blokowane
- zakończenie gry, gdy gracz usunie wszystkie pary płytek
- konfigurowalna trudność na podstawie wieku uczestnika
- po zakończeniu gry przeniesienie na stronę z wynikami
- w komponencie zawarta krótka instrukcja gry
Wymagania niefunkcjonalne
- interfejs komponentu dostosowany do potrzeb serwera zadań
- gra z białym tłem i kolorowymi elementami
- możliwość gry na smartfonie - responsywność
- brak zależności w Internecie
Konfiguracja poziomu trudności
Liczba płytek jest zależna od wieku. Może ona wynosić od 20 do 56.
Liczbę płytek, w zależności od wieku, można określić następująco:
- 20, gdy wiek <= 3
- 24 + 2 * (wiek - 4), gdy 3 < wiek < 20
- 56, gdy 20 <= wiek
One Touch Draw
Gra w której należy poprowadzić linię rozpoczynając od wybranego punktu tak, aby przechodziła przez każdą krawędź dokładnie raz.
Wymagania funkcjonalne
- gracz wybiera kolejno punkty, przez które będzie przechodziła linia
- gra zostaje zakończona, gdy linia przejdzie przez każdą krawędź dokładnie raz
- gracz przegrywa, gdy nie jest możliwy dalszy ruch, a nie wszystkie z krawędzi zostały wykorzystane
- konfigurowalna trudność na podstawie wieku uczestnika
- po zakończeniu gry przeniesienie na stronę z wynikami
- w komponencie zawarta krótka instrukcja gry
Wymagania niefunkcjonalne
- interfejs komponentu dostosowany do potrzeb serwera zadań
- gra z białym tłem i kolorowymi elementami
- możliwość gry na smartfonie - responsywność
- brak zależności w Internecie
Konfiguracja poziomu trudności
Liczba punktów łączących krawędzie zależna jest od wieku. Może ona wynosić od 4 do 12.
Liczbę punktów łączących krawędzie, w zależności od wieku, można określić następująco:
- 4, gdy wiek <= 3
- floor((wiek + 5) / 2), gdy 3 < wiek < 19
- 12, gdy 19 <= wiek