/shot_game

A barrage shooting game.

Primary LanguagePython

简介

使用 pygame 库实现的仿东方简易弹幕游戏。

游戏:按键接收、碰撞检测(角色和物品、角色和怪物、角色和怪物子弹)、难度选择、擦弹计数、分数记录(文件记录)、高分展示、游戏暂停、页面交互、设置修改、fps 显示、音乐播放、怪物和子弹上限

角色:位置、正常移动、慢速移动(子机移动动画)、发射子弹(伤害、攻击间隔)、炸弹、顶端判断、复活无敌、死亡~~、作弊~~

怪物:生成(血量、位置、移动方向和速度)、攻击、死亡

子弹:普通弹、追踪弹、运动、屏内检测

物品:四种种类(加分、加攻击力、加炸弹、加命)概率、二次函数曲线移动

依赖

pip install -r requirements.txt

游戏操作

上下左右移动,X 炸弹,Z 攻击,Shift 慢速

说明

通过一些优化,大部分函数都为线性时间复杂度,大部分时间*用于画面绘图,因此在我的 surface pro 5 上实测可以达到约600+fps**。因为一些原因(素材懒得找和适配)

游戏整体的美观程度并不高,但是通过抠图(用的画图),还是完成了灵梦,和她的两种攻击方式:普通弹和追踪弹。以后准备加入更多角色,并尽力美化,以及完成一页的TODO

*:经实测,约三分之一时间用于计算,约三分之二时间用于绘图

**:600+fps 为"实验室"测得,正常情况下,fps被限制在120fps,需手动设置fps=0解锁帧数

演示视频

演示demo

author: mcwindy

QQ: 645830306