diff --git a/du8/README.md b/du8/README.md new file mode 100644 index 0000000..26711ec --- /dev/null +++ b/du8/README.md @@ -0,0 +1,48 @@ + +## Ovládanie + +- Pohyb: `W`, `A`, `S`, `D` +- Potvrdenie ťahu: medzerník + +## Ukončenie hry + +Hra končí, keď: +- jeden hráč získa 3 znaky v rade (vodorovne, zvisle alebo diagonálne), +- všetky polia sú zaplnené (remíza). + +## Štruktúra a funkcie + +### `GameState` – štruktúra hry: +- `board`: 2D pole pre hernú plochu +- `board_size`: veľkosť (2,3,4) +- `num_players`: počet hráčov (1,2,3) +- `symbols`: pole znakov hráčov (napr. 'X', 'O', 'a') +- `mode`: herný režim +- `current_player`: index aktuálneho hráča +- `moves_made`: počet ťahov + +### Kľúčové funkcie: +- `init_game()`: Inicializácia hracieho stavu +- `draw_game()`: Vykreslenie stavu cez `world*` +- `handle_input()`: Interakcia s hráčom (ovládanie) +- `computer_move()`: Jednoduchá AI +- `check_winner()`: Detekcia výhry + +## Použitie knižnice `world` + +Použili sme nasledujúce funkcie z `world.h`: +- `world_init()` * +- `world_clear()` * +- `world_print()` * +- `world_read_key()` * +- `world_set_cursor()` * +- `world_end()` * + +Všetky volania NCURSES boli spravené výhradne cez knižnicu `world`. + +## Zdroje +- [Knižnica world](https://github.com/hladek/world) +- Vlastné znalosti + + +