Halma Simple

Halma
HalmaExeOnly

Poznámka

Na to, aby ste hru spustili, musíte mať nainštalovaný .NET Framework 3.5. Našťastie táto veľmi prospešná knižnica je predinštalovaná vo všetkých Windowsoch Vista a Windows 7. Tento projekt, ani .exe súbor nie sú pod iným operačným systémom ako Windows použiteľné.

Úvod

Starting position for Halma

Ide o aplikáciu, ktorá umožňuje hrať Halmu (Chinese Checkers) na jednom počítači. Halma je preskakovaná na hexagonálnom (šesťuholníkom) pláne v tvare Dávidovej hviezdy. Pochádza z východnej Ázie.

Do programu nie sú pridané žiadne pravidlá, takže sa dá skákať ako sa komu zachce, v ľubovolnom poradí hráčov. Je možné začať hrať ihneď po zapnutí programu. Nie je naprogramovaná žiadna umelá inteligencia. Aplikácia slúži iba pre virtuálne “stelesnenie” hracej plochy.

Ako feature hry je naprogramované, že po kliknutí na kameň sa zobrazia všetky potenciálne miesta, kde on môže skočiť (pravidlo skákania do zadu táto procedúra nezahrňuje). (Highlight On)
Je možné hru ukladať do textového súboru a potom si ju prehrať. (Save, Replay)

Zobrazovanie možných ťahov vyznačeným kameňom

História tvorby
Na LTT sme mali takú hru, kde účastníci za malé činnosti (cviky, počítanie) získali kartičky, ktoré im umožňovali pohybovať sa s vlastnými figúrkami len v istých smeroch. Aby sme nemuseli kresliť obrovský plán a potom sa hrať s figúrkami, dávať si pozor aby ich nepohlo, neodfúklo,… tak som to radšej naprogramoval. Aspoň som si to precvičil.

Záver
Je to jednoduchá aplikácia s minimálnym potenciálom na trhu. Zopár ľudí si vypýtalo zdrojové kódy pre tento projekt a preto som ich pomerne dobre (tradične v angličtine) okomentoval. Nech to má aspoň čiastočný edukatívny význam.

Aplikácia používa pomerne novú knižnicu WPF pre tvorbu interaktívnych aplikácií s užívateľským rozhraním. Táto knižnica je dobre zdokumentovaná na MSDN, bohužiaľ k nej existuje len pomerne málo dobrých návodov (tutoriálov) a preto je veľmi vhodné poznať základy programovania vo Winforms, Qt, alebo podobných knižniciach vzťahujúcich sa na užívateľské rozhranie (keď už nič iné, tak aspoň HTML).

Leave a Reply

Your email address will not be published. Required fields are marked *