ver 1.0.1

This commit is contained in:
dima 2025-01-30 23:19:05 +03:00
parent 906107995c
commit d0fd828c39

126
README.md
View File

@ -0,0 +1,126 @@
# Шахматы с Открытым Миром (HP + Бонусы + Бой)
**Версия:** 1.5
**Дата Обновления:** 2025-04-27
## Обзор
**Шахматы с Открытым Миром (HP + Бонусы + Бой)** — это инновационная вариация классических шахмат, сочетающая в себе элементы RPG, такие как здоровье (HP) фигур, различные бонусы и боевые столкновения. Дополнительно в игре реализован механизм **тумана войны**, который добавляет стратегическую глубину и динамику игровому процессу.
## Основные Особенности
- **Здоровье (HP) Фигур:** Каждая фигура обладает текущим и максимальным здоровьем. Фигуры могут получать урон и восстанавливаться.
- **Бонусные Клетки:** На игровом поле случайным образом появляются бонусы, которые могут повышать здоровье, наносить урон или предоставлять другие преимущества.
- **Туман Войны:** Некоторые части игрового поля скрыты от игроков и открываются по мере продвижения фигур. Бонусы могут появляться как в видимых, так и в скрытых областях через механизм тумана войны.
- **Бой:** При столкновении фигур происходит бой, исход которого зависит от их текущего здоровья.
- **Смена Ходов:** Игра пошаговая. Белые ходят первыми, затем ходят чёрные.
- **Победа:** Побеждает тот, чей король останется последним на поле.
## Правила Игры
### 1. Цель Игры
Целью игры является уничтожение короля противника. Как только король одного из игроков погибает, игра завершается победой противоположного игрока.
### 2. Здоровье Фигур
- **Король:** Максимальное здоровье — 5 HP.
- **Ладья, Конь, Слон, Ферзь:** Максимальное здоровье — 3 HP.
- **Пешка:** Максимальное здоровье — 1 HP.
Фигуры могут получать урон во время боя или при прохождении через специальные бонусные клетки. Если здоровье фигуры падает до 0, она удаляется с поля.
### 3. Бонусные Клетки
На игровом поле случайным образом генерируются бонусные клетки различных типов:
- **`regen` (Регенерация):** Восстанавливает 12 HP выбранной фигуры (не короля).
- **`hp_upgrade` (Повышение HP):** Увеличивает максимальное здоровье фигуры на 1 без восстановления текущего HP (не королю).
- **`damage` (Урон):** Наносит случайный урон (05) фигуре, проходящей через клетку.
- **`king_hp_upgrade` (Повышение HP Короля):** Повышает максимальное здоровье короля или восстанавливает его HP до максимума.
- **`add_piece` (Добавление Фигуры):** Позволяет добавить новую фигуру того же типа рядом с текущей фигурой, если это возможно.
**Важно:**
- При **начальной генерации** бонусы **не** появляются под стартовыми позициями фигур.
- В дальнейшем бонусы могут появляться в **любых** свободных клетках, включая стартовые ряды, через механизм тумана войны.
### 4. Туман Войны
- **Механика:**
- Клетки, находящиеся в зоне видимости фигур (расстояние до 2 клеток), остаются открытыми.
- Клетки, выходящие за пределы зоны видимости, скрываются под туманом войны через **5 ходов** после последнего обнаружения.
- Перед закрытием клетки помечаются светло-серым цветом, указывая на предстоящее сокрытие.
- **Бонусы через Туман Войны:**
- При повторном открытии клеток через туман войны существует **10%** шанс появления нового бонуса, если клетка свободна и не занята фигурой.
### 5. Бой
Когда фигура перемещается на клетку, занятую вражеской фигурой, происходит бой:
- **Исход боя:**
- **Если HP атакующей < HP защитника:** Защитник теряет HP равный HP атакующей, атакующая погибает.
- **Если HP атакующей > HP защитника:** Атакующая теряет HP равный HP защитника, защитник погибает.
- **Если HP атакующей == HP защитника:** Атакующая побеждает, защитник погибает, а атакующая остается с 1 HP.
- **Примеры:**
- **Атакующая (HP=2) vs Защитник (HP=3):** Защитник становится с HP=1, атакующая уничтожается.
- **Атакующая (HP=4) vs Защитник (HP=2):** Атакующая остается с HP=2, защитник уничтожается.
- **Атакующая (HP=3) vs Защитник (HP=3):** Защитник уничтожается, атакующая остается с HP=1.
### 6. Специальные Бонусы
- **`regen`:** Восстанавливает 12 HP выбранной фигуры (не короля).
- **`hp_upgrade`:** Увеличивает максимальное здоровье фигуры на 1 без восстановления текущего HP (не королю).
- **`king_hp_upgrade`:** Повышает максимальное здоровье короля или восстанавливает его HP до максимума.
- **`damage`:** Наносит случайный урон (05) фигуре, проходящей через клетку.
- **`add_piece`:** Позволяет добавить новую фигуру того же типа рядом с текущей фигурой, если это возможно.
### 7. Смена Ходов
Игра является пошаговой:
1. **Ход Белых:**
- Выбирается фигура белых, доступная для хода.
- Выбирается возможная клетка для перемещения.
- Выполняется перемещение и применяются эффекты бонусов/боя.
2. **Ход Чёрных:**
- Аналогично, выбирается фигура чёрных и выполняется ход.
Смена хода происходит после завершения всех действий текущего игрока.
### 8. Победа
Побеждает тот, чей король остаётся последним на поле. Игра завершается, когда король одного из игроков погибает.
## Установка и Запуск
### Требования
- **Python 3.x**
- **Pygame** библиотека
### Установка
1. **Клонирование Репозитория:**
```bash
git clone https://github.com/ваш-репозиторий/шахматы-с-открытым-миром.git
```
2. **Установка Зависимостей:**
Убедитесь, что у вас установлен Python 3 и Pygame. Установить Pygame можно с помощью pip:
```bash
pip install pygame
```
### Запуск Игры
Перейдите в директорию с клонированным репозиторием и запустите игру:
```bash
python chess_game.py