Task6
【作业】完成飞机大战游戏设计
1.自己敲一遍源代码,对自己负责
2.写出代码的整体框架
首先设置游戏界面的大小、标题、背景图片、飞机图片(正常、爆炸)、子弹图片;然后设置两个list,分别存储敌机和被击毁的飞机;然后初始化分数、射击频率、敌机移动频率,并设置游戏循环帧率;然后进入游戏的主循环部分;然后在gameover后显示最终得分;最后处理游戏退出。
在游戏的主循环部分主要包括以下部分:(1)按一定频率发射子弹;(2)按一定频率生成敌机;(3)移动子弹;(4)移动敌机;(5)敌机与玩家飞机相撞处理方法;(6)敌机被子弹击中处理方法;(7)一系列绘制、显示的方法,包括:绘制背景、绘制玩家飞机、显示子弹、显示敌机、绘制得分、更新屏幕;(8)获取、处理键盘事件;(9)处理退出游戏。
共建立了3个类,分别是:(1)子弹类;(2)玩家飞机类;(3)敌机类
3.写出每个类及每个函数的作用
子弹类
子弹类里包含了两个函数,一个是用来定义子弹的基本属性,包括:子弹的图片、位置、移动速度,另一个用来计算子弹位置。
玩家飞机类
主要有三个函数:
(1) 定义基本属性:设置了飞机的图片、大小、位置、速度、是否被撞,并建立了存储飞机发射子弹的集合;
(2) 如何发射子弹:调用了子弹类,给子弹类传递了实参,包括子弹的图片和位置;
(3)如何移动:设置了飞机上、下、左、右移动的方法,并防止飞机出界面。
敌机类
主要是三个函数:
(1)定义基本属性:包括敌机图片、敌机坠毁图片、敌机位置、敌机速度
(2)如何移动:计算敌机位置
4.整理代码实现过程中遇到的问题
刚开始未安装无法使用pygame函数,安装后可以使用
群里发的压缩文件解压后未放到指定文件夹中导致报错在第93行背景图一块报错,解压到指定文件夹后即正常运行
5.实验结果截图