Skip to content

SpaceGame - прототип легендарной игры Space Invaders, созданной в 1978 году.

Notifications You must be signed in to change notification settings

koloideal/SpaceGame

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SpaceGame

SpaceGame - это аналог легендарной игры Space Invaders, созданной в 1978 году.

Требования

  • Установленный Python 3.x версии
  • Установленные зависимости, указанные в файле requirements.txt
pip install -r requirements.txt

Установка и настройка

  • Склонируйте репозиторий
  • Создайте локальный репозиторий
  • В папке проекта создайте папку с именем DataBase, путь этой папки должен выглядеть примерно так: .../SpaceGame/DataBase/

Особенности

  • Версия 1.1 (на данный момент последняя) сохраняет пользовательские рекорды в базе данных в файле highscore.db (создаётся сам призапуске программы)

  • Управление осуществляется нажатием кнопок a - движение влево, d - движение вправо, space(пробел) - стрельба, прижелании эти параметры можно переназначить путём изменения соответствующих параметров в функции events в файле controls.py

  • При желании конвертации данного кода в исполняемый exe файл вы можете выполнить следующие действия:

    • Установить библиотеку pyinstaller консольной командой pip install pyinstaller (обязателен установленный пакетный менеджер pip)

    • Базовая команда для конвертации - pyinstaller main.py

    • Возможные флаги в команде:

      • -F (рекомедуется к использованию) - сокращение от --onefile, создает файл спецификации, который позволяет упаковать и упаковывает всё необходимое в один exe-файл, противоположен по выполняемой функции флагу -D
      • --noconsole (при использовании расширения .pyw в main файле не необходим, в противном случае рекомендуется к использованию) - при запуске собранного с использованием этого флага exe файла НЕ запускается консоль, в противном случае консоль будет запущена на мнгновение
      • D - сокращение от --onedir при использовании этого флага получаем одну папку (с именем main), она содержит файл с именем main.exe вместе со всеми необходимыми зависимостями
      • i - сокращение от --icon, изменяет аватар создваемого exe файла, пример использования: pyinstaller -i example.ico main.pyw, Важно ! - файл используемый для аватара должен быть обязательно в формате .ico
    • Рекомендуемая вариация команды для конвертации в exe файл - pyinstaller -F main.pyw

    • Необходимо находится в директории проекта, то есть приблизительно так: .../SpaceGame/

    • После успешной конвертации создаётся папка dist с exe файлом в директории проекта, в неё также необходимо добавить папку image из проекта

  • При желании изменить внешний вид противников или пушки - измените файлы в папке image: ino и gun соответственно, важно не менять название файлов, изображение должно быть форматом .png или .jpeg, поддерживаются и другие форматы, но это рекомендуемые, для сохранения отношения размеров обьектов следует изменять файл gun.png на изображение размером ~ 50 на 50 пикселей, а файл ino.png на изображение размером ~ 40 на 40 пикселей

Расширенные возможности

  • При желании облегчить или усложнить игру можно сделать следующие действия:

    • Чтобы изменить количество жизней - измените значение self.gun_left в файле stats.py на то, количество скольки жизней вы хотите получить

    • Чтобы изменить размеры пуль - измените значение self.rect в файле bullet.py, итоговый вид параметра должен выглядеть так: self.rect = pygame.Rect(0, 0, x, y), где x и y это размеры пули

    • Чтобы изменить скорость пули измените значение self.speed в файле bullet.py, в данном случае скорость - величина условная

    • Чтобы изменить скорость противников - измените значение self.y в функции update в файле ino.py

    • Чтобы изменить скороть пушки при движении вправо - измените значение self.center в блоке if в функции update_gun в файле gun.py

    • Чтобы изменить скороть пушки при движении влево - измените значение self.center в блоке elif в функции update_gun в файле gun.py

Примечание: Данная версия игры не является исчерпывающей, если у вас есть идеи по её улучшению - пишите в telegram: @kolo_id

About

SpaceGame - прототип легендарной игры Space Invaders, созданной в 1978 году.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages