飞机大战是一种经典的 2D 射击游戏,通常初学者学习 Python 编程的一个很好的项目。通过这个课程帮助大家扎实 Python 基础知识和技能。 1. 效果展示 操作:W 前、S 后、A 左、D 右、J 发射1个子弹、...
我们的开发环境: Windows 11 PyCharm 2021.1.3 Python 3.8.5 PyGame 2.5.1 PyInstaller 5.13.2 Or Py2App 0.28.6 1. Python 解...
这一章节,我们主要学习 PyGame 相关的内容,为后面《飞机大战》程序的编写做铺垫。主要内容如下: PyGame 游戏窗口创建 PyGame 图像绘制操作 PyGame 事件处理机制 PyGame 音效相关实现 pyg...
在开始具体的飞机大战游戏功能开发之前,我们首先着手编写游戏的主体代码框架。随后的开发过程将围绕这个主体框架展开,只需填充和扩展框架中的空白部分。 需要注意的是,由于《飞机大战》项目相对简单,我们能够实现完整的代码框架。对...
飞机大战中,通过巧妙的地图滚动机制,玩家能够更加深刻地感受到飞机飞行的真实效果。这种不断变化的地图背景在游戏中犹如一幅壮丽的风景画,为飞机飞行提供了生动而多样化的舞台。 1. 地图滚动思路 首先: 准备一张图片,确保该图...
英雄飞机和敌人飞机都会发射子弹,我们先来实现子弹相关类。这里一共有两个类: Bullet 类:单个子弹类 BulletForHero 类:英雄飞机携带的弹夹类 1. Bullet 类 Bullet 类是单个子弹的实现类,...
英雄飞机的移动是通过鼠标或者键盘事件,即: 鼠标拖动英雄飞机,自动发射子弹 通过键盘控制飞机移动,按键发射子弹 我们这里实现第二种方式。这里需要注意:英雄飞机的移动是由按键事件驱动。 1. HeroPlane 类实现 英...
现在我们的主场景中还没有敌机,我们接下来实现多个敌机从上向屏幕下方移动,并能够随机发射子弹。 1. EnemyPlane 类 该类的定义了单个敌机的实现,主要实现方法如下: set_used 设置飞机可用,并随机设置其初...
在游戏开发中,碰撞检测是一种用于确定游戏中物体是否相互接触或碰撞的技术。这些物体可以是游戏中的角色、道具、障碍物、子弹等。碰撞检测的主要目的是检测游戏中的物体之间是否发生碰撞,以便触发适当的游戏逻辑、处理碰撞效果或改变物...
当子弹和敌机碰撞,我们并不想仅将飞机和子弹消失,应该在其发生碰撞的位置播放一组爆炸动画,播放爆炸音效,游戏效果更为逼真一些。 1. Bomb 类 爆炸动画实现思路很简单,我们将一组图片按照一定的时间间隔,将其按顺序绘制到...
1. Windows 打包步骤 首先,进入到项目根目录下然后,在项目根目录下执行命令:pyinstaller –noconsole –onefile –name plane App.p...