Skip to content

YKuklevskiy/space-invaders-qt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

space-invaders-qt

Primitive C++ Space Invaders game (Qt)

Описание

Написан, если это можно так назвать, примитивный движок для игр, где все обьекты прямоугольны и сонаправлены (нету не прямых/развернутых углов). Базовым классом игровых обьектов является класс GameObject, содержащий в себе экземпляры классов Transform и Render. От этого класса наследуются классы AlienShip, SpaceShip, LinearProjectile. LinearProjectile продолжает класс GameObject и является обобщением всех снарядов, будь то ракеты или бомбы пришельцев в нашем случае. Спрайты для игры хранятся как ресурсы Qt в файле textures.qrc, а указатели на них храняться в экземпляре класса TextureHolder. Все игровые константы хранятся в файле gameconsts.h

Особенности геймплея

Физика игры завязана на времени между кадрами deltaTime. Корабль имеет подобие инерции. Бомбочки сбрасываются случайно самыми нижними пришельцами. При попадании бомбочки в ракету ракета разрушается. Бомбочка не разрушается. Попадание бомбочки в корабль ведет за собой потерю жизни. Попадание ракеты в пришельца убивает пришельца и разрушает ракету. Максимальное количество слоев пришельцев - 6. Когда пришельцы спускаются до игрока, он проигрывает сразу. Пришельцы ускоряются в зависимости от того, сколько пришельцев уже убито из текущего кластера пришельцев. Управление: горизонтальные стрелочки - движение, пробел - запуск ракет.

About

Primitive C++ Space Invaders game (Qt)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published