Hra „Safety matches“*

Vaším úkolem je napsat program, který umožní hrát hru zápalky pro dva hráče. Hraje se na hracím poli, které je tvořeno čtvercovou sítí N × N, kde N je celé číslo od 2 do 10. Oba hráči střídavě přikládají do stran čtvercové sítě zápalky. Hráč, který přiloží čtvrtou zápalku do čtverce, získává bod a pokračuje v tahu (tj. pokládá další zápalku). Získané čtverce se pro každého hráče barevně označují. Hra končí v okamžiku, kdy je celé hrací pole vyplněné zápalkami.

V programu postupně implementujte následující funkce. Funkce s vyšším číslem bude hodnocena pouze v případě, že budou implementovány i všechny předcházející funkce s nižším číslem.

  1. Zobrazení hracího pole.
  2. Položení zápalky hráčem pomocí myši.
  3. Položení zápalky pomocí klávesnice. Ovládání pomocí myši i klávesnice je dostupné současně.
  4. Získání bodu po položení čtvrté zápalky do čtverce.
  5. Průběžné zobrazování skóre hráčů.
  6. Tabulka top-ten deseti nejúspěšnějších hráčů.
  7. Hráč si může vyžádat nápovědu od programu – v tomto případě nejvýhodnější tah vybere a provede automaticky počítač.
  8. Na začátku hry lze zvolit hru proti počítači místo proti reálnému hráči. Program nyní pokládá zápalky místo druhého hráče a snaží se dosáhnout co nejlepšího skóre.
  9. Program je možné spustit v demo režimu, kdy hraje počítač proti počítači. V průběhu dema lze měnit velikost časové prodlevy mezi tahy.

Poznámky

Všechny zdrojové kódy vašeho programu pravidelně ukládejte do určeného adresáře. Program a všechny jeho moduly musí jako první a druhé písmeno, případně jako druhé a třetí obsahovat vaše startovní číslo. Na začátek programu napište do komentáře vaše startovní číslo a seznam všech použitých modulů.

 

 


* též bezpečnostní zápalky, lidově řečeno sirky