Program napsaný v Javě, který umožňuje dvěma hráčům u jednoho počítače hrát šachy s možností přepnout libovolného hráče na počítač. Vytvořeno jako semestrální práce na KIV/UPG.
Go to file
2023-03-23 22:38:01 +01:00
.idea Added chessboard & abstract piece 2023-03-07 14:59:15 +01:00
assets Added all pieces 2023-03-07 14:59:58 +01:00
src Added missing javadoc 2023-03-23 22:37:50 +01:00
.gitignore Added scripts 2023-03-21 13:59:45 +01:00
build.sh Added scripts 2023-03-21 13:59:45 +01:00
Chess.iml Added chessboard & abstract piece 2023-03-07 14:59:15 +01:00
makedocs.sh Added scripts 2023-03-21 13:59:45 +01:00
README.md Added partial README 2023-03-23 22:38:01 +01:00
run.sh Added scripts 2023-03-21 13:59:45 +01:00

Šachy

Program umožňuje hrát šachy dvěma hráčům u jednoho počítače. V současné době je implementována pouze základní funkčnost, tedy vykreslení šachovnice, černých a bílých kamenů společně s možností přesunu kamenů na jiná libovolná políčka. V případě přesunutí kamenu na obsazené políčko se původní kámen odstraní.

Popis implementace

Hra je naprogramována v programovacím jazyce Java za použití grafické knihovny Swing pro vykreslování šachovnice a kamenů. Hlavní třídou je Chess, která vytváří a nastavuje okno programu a pokračuje s vytvořením šachovnice a jednotlivých kamenů.

Šachovnice je v programu reprezentována třídou Chessboard, která vykresluje jednotlivá políčka a uchovává dvourozměrné pole kamenů na ní umístěných. Kameny jsou tvořeny třídami, které dědí od abstraktní třídy AbstractPiece a implementují rozhraní IPiece.

Přesouvání kamenů je umožněno pomocí kliknutí a přesunutí myší, které je řešeno třídou ChessboardMouseAdapter. Tato třída zaznamenává kliknutí myší, pohyb myši a uvolnění tlačítka, a na základě těchto událostí provádí přesun kamenů.