# Pixel Gamble [](https://python.org) [](https://pygame.org) [](LICENSE) ## Описание проекта Pixel Gamble — это полнофункциональная 2D action-RPG игра, разработанная на Python с использованием библиотеки Pygame. Проект демонстрирует реализацию классических игровых механик в современной объектно-ориентированной архитектуре. ## Ключевые особенности ### Игровые механики - **Система боя**: Реализован динамический боевой процесс с различными типами атак - **ИИ противников**: Интеллектуальные противники с различными поведенческими паттернами - **Система прогрессии**: Механика получения опыта и развития персонажа - **Физика столкновений**: Точная система коллизий с оптимизированными хитбоксами ### Техническая архитектура - **Модульная структура**: Четкое разделение логики игры по компонентам - **Система камеры**: Следящая камера с плавным движением - **Карты уровней**: CSV-основанная система генерации игрового мира - **Аудиосистема**: Интегрированное воспроизведение звуковых эффектов ## Технологический стек - **Язык программирования**: Python 3.8+ - **Игровой движок**: Pygame 2.0+ - **Управление ресурсами**: CSV для уровней, PNG для графики - **Архитектурный паттерн**: Entity-Component-System (ECS) ## Структура проекта ``` pixel_gamble/ ├── code/ │ ├── main.py # Точка входа в приложение │ ├── game.py # Основной игровой цикл │ ├── level.py # Логика уровней и камеры │ ├── player.py # Класс игрока │ ├── enemy.py # Система противников │ ├── entity.py # Базовый класс сущностей │ └── data.py # Конфигурация и утилиты ├── data/ │ ├── map/ # CSV файлы карт │ ├── textures/ # Графические ресурсы │ └── audio/ # Звуковые файлы └── requirements.txt # Зависимости проекта ``` ## Установка и запуск ### Требования к системе - Python 3.8 или выше - Pygame 2.0+ ### Процесс установки 1. **Клонирование репозитория**: ```bash git clone https://github.com/DeevEV/pixel_gamble.git cd pixel_gamble ``` 2. **Установка зависимостей**: ```bash pip install -r requirements.txt ``` 3. **Запуск игры**: ```bash cd code python main.py ``` ## Управление - **W, A, S, D** — Перемещение персонажа - **ЛКМ** — Атака - **ESC** — Выход из игры ## Архитектурные решения ### Система сущностей Игра построена на базовом классе `Entity`, обеспечивающем унифицированный интерфейс для всех игровых объектов с поддержкой: - Движения и физики - Анимационной системы - Обработки столкновений ### Управление ресурсами - CSV-файлы для описания структуры уровней - Модульная система загрузки графических ресурсов - Централизованное управление игровыми данными ### Производительность - Оптимизированная система рендеринга с сортировкой по глубине - Эффективная обработка столкновений - Управление памятью через группы спрайтов Pygame ## Возможности расширения Проект спроектирован с учетом масштабируемости: - Легкое добавление новых типов противников - Расширяемая система оружия - Модульная архитектура уровней - Гибкая система анимаций ## Лицензия Этот проект распространяется под лицензией MIT. ## Контакты разработчика **Деев Егор Викторович** - Backend Developer - GitHub: [@EDeev](https://github.com/EDeev) - Email: egor@deev.space - Telegram: [@Egor_Deev](https://t.me/Egor_Deev) ---
Создано с ❤️ от вашего дорогого - deev.space ©