Python实现飞机大战小游戏(含源码+图片资源)
1. 项目描述
该飞机大战小游戏是利用python语言实现的,该项目为之前学习python时,参考一些教程并进行改进的结果。现在由于疫情呆在家里,而且这学期课程并不多,所以想花点时间整理并回顾一下这个项目,也希望对大家能有些许帮助。完整Github项目地址,欢迎大家评论和交流。
该项目实现了飞机大战游戏的基本功能,玩家可以通过w、a、s、d键控制飞机移动,通过k键发射子弹。同时该项目实现了游戏时的暂停和继续功能以及排行榜功能,记录历史最好游戏成绩。敌方飞机有三种类型,大小、攻击力、移动速度各不相同,当然击杀获得的奖励也有差异。下图为敌机类型二系列图片:
2. 依赖包导入
该项目需要导入的包如下,如果没有安装的可以利用pip命令进行安装,这里就不再进行详细叙述了。
import codecs
import pygame
from pygame.locals import * # 常量
from sys import exit
import time
import random
3. 代码实现
当时实现该项目时,没太注重功能的划分,因此所有的实现逻辑均在一个文件中。不过,大家放心,该项目实现逻辑比较简单的,且源代码中包含必要的注释。
3.1 类构建
首先构建子弹类、敌机类以及我方战机类,子弹类示例代码如下(其它不予详细介绍,完整项目地址见上):
# 子弹类
class Bullet(pygame.sprite.Sprite):
# 构造函数参数为子弹图片和初始位置
def __init__(self, bullet_img, init_pos):
pygame.sprite.Sprite.__