资源简介
学习Python版的飞机大战的,里面含有飞机大战的全部素材及飞机大战源码
代码片段和文件信息
from 飞机大战.plane_sprites import *
class PlaneGame(object):
“““飞机大战主游戏类“““
def __init__(self):
“““游戏初始化“““
# 1.创建游戏游戏窗口
self.screen = pygame.display.set_mode(SCREEN_RECT.size)
# 2.创建游戏时钟
self.clock = pygame.time.Clock()
# 3,调用私有方法,精灵和精灵组创建
self.__create_sprites()
# 4.设置定时器事件 -创建敌机 1s
pygame.time.set_timer(CREATE_ENEMY_EVENT 1000)
# 5.设置定时器事件 -创建子弹 0.5s
pygame.time.set_timer(CREATE_BULLET_EVENT 500)
def start_game(self):
“““启动游戏“““
while True:
# 1.设置刷新帧率
self.clock.tick(frame_PER_SEC)
# 2.事件检测
self.__event_handler()
# 3.碰撞检测
self.__check_collode()
# 4.更新/绘制精灵组
self.__update_sprites()
# 5.更新显示
pygame.display.update()
def __create_sprites(self):
“““精灵和精灵组创建“““
# 创建背景精灵和精灵组
bg1 = Background()
bg2 = Background(True)
self.back_group = pygame.sprite.Group(bg1 bg2)
# 创建敌机的精灵组,因为精灵在定时器中会定时创建
self.enemy_group = pygame.sprite.Group()
# 创建英雄精灵和精灵组
self.hero = Hero()
self.hero_group = pygame.sprite.Group(self.hero)
def __event_handler(self):
“““事件检测“““
# 获得所有事件
event_list = pygame.event.get()
# 遍历事件
for event in event_list:
# 1.判断是否是退出游戏
if event.type == pygame.QUIT:
self.__game_over()
# 2.判断是否是创建敌机的定时器
if event.type == CREATE_ENEMY_EVENT:
# 1.创建敌机精灵
enemy = Enemy()
# 2.将敌机精灵添加到敌机精灵组
self.enemy_group.add(enemy)
# 3.判断用户按下的键是向左还是向右
“““
# 方法一:按一次触发一次
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT:
# 向左移动
print(“向左移动“)
if event.key == pygame.K_RIGHT:
# 向右移动
print(“向右移动“)
“““
# 方法二:按下会一直触发事件
# 获取键盘按键元组
keys_pressed = pygame.key.get_pressed()
# 判断元组中对应的按键索引值是否是1
if keys_pressed[pygame.K_RIGHT]:
# 向右移动
self.hero.speed = 4
elif keys_pressed[pygame.K_LEFT]:
# 向左移动
self.hero.speed = -4
else:
# 不移动
self.hero.speed = 0
# 4.判断是否英雄发射子弹的定时器
if event.type == CREATE_BULLET_EVENT:
# 英雄发射子弹
self.hero.fire()
def __check_collode(self):
“““碰撞检测“““
# 调用碰撞检测方法
# 检测敌机和子弹的碰撞,碰撞后都消失
collide = pygame.sprite.groupcollide(self.hero.bullets self.enemy_group True True)
# print(collide)
# 检测敌机和英雄的碰撞,碰撞后英雄死亡
enemies = pygame.sprite.spritecollide(self.hero self.enemy_group True)
# 如果发生碰撞,英雄牺牲退出游戏
if
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-09-22 19:20 Python版的飞机大战\
目录 0 2018-09-22 19:19 Python版的飞机大战\images\
文件 7444 2018-09-07 14:39 Python版的飞机大战\images\New Atlas.png
文件 31443 2018-09-20 11:47 Python版的飞机大战\images\background.png
文件 427573 2018-09-07 14:39 Python版的飞机大战\images\bg.png
文件 2658 2018-09-07 14:39 Python版的飞机大战\images\bomb-1.gif
文件 2067 2018-09-07 14:39 Python版的飞机大战\images\bomb-2.gif
文件 5600 2018-09-07 14:39 Python版的飞机大战\images\bomb.png
文件 8948 2018-09-07 14:39 Python版的飞机大战\images\btn_finish.png
文件 122 2018-09-07 14:39 Python版的飞机大战\images\bullet-1.gif
文件 151 2018-09-07 14:39 Python版的飞机大战\images\bullet-2.gif
文件 401 2018-09-07 14:39 Python版的飞机大战\images\bullet-3.gif
文件 23131 2018-09-07 14:39 Python版的飞机大战\images\bullet.png
文件 490 2018-09-07 14:39 Python版的飞机大战\images\bullet1.png
文件 498 2018-09-07 14:39 Python版的飞机大战\images\bullet2.png
文件 29625 2018-09-07 14:39 Python版的飞机大战\images\button_nor.png
文件 28998 2018-09-07 14:39 Python版的飞机大战\images\button_p.png
文件 1678 2018-09-07 14:39 Python版的飞机大战\images\enemy-1.gif
文件 2829 2018-09-07 14:39 Python版的飞机大战\images\enemy-2.gif
文件 13927 2018-09-07 14:39 Python版的飞机大战\images\enemy-3.gif
文件 2970 2018-09-07 14:39 Python版的飞机大战\images\enemy0.png
文件 3423 2018-09-07 14:39 Python版的飞机大战\images\enemy0_down1.png
文件 3863 2018-09-07 14:39 Python版的飞机大战\images\enemy0_down2.png
文件 5305 2018-09-07 14:39 Python版的飞机大战\images\enemy0_down3.png
文件 1730 2018-09-07 14:39 Python版的飞机大战\images\enemy0_down4.png
文件 8117 2018-09-07 14:39 Python版的飞机大战\images\enemy1.png
文件 10477 2018-09-07 14:39 Python版的飞机大战\images\enemy1_down1.png
文件 11696 2018-09-07 14:39 Python版的飞机大战\images\enemy1_down2.png
文件 13388 2018-09-07 14:39 Python版的飞机大战\images\enemy1_down3.png
文件 3429 2018-09-07 14:39 Python版的飞机大战\images\enemy1_down4.png
文件 9183 2018-09-07 14:39 Python版的飞机大战\images\enemy1_hit.png
............此处省略43个文件信息
相关资源
- python实现SGBM图像匹配算法
- python实现灰度直方图均衡化
- scrapy_qunar_one
- Python学习全系列教程永久可用
- python简明教程.chm
- 抽奖大转盘python的图形化界面
- 双边滤波器实验报告及代码python
- python +MYSQL+HTML实现21蛋糕网上商城
- Python-直播答题助手自动检测出题搜索
- OpenCV入门教程+OpenCV官方教程中文版
- Python 串口工具源码+.exe文件
- Python开发的全栈股票系统.zip
- Python操作Excel表格并将其中部分数据写
- python书籍 PDF
- 利用python绘制散点图
- python+labview+No1.vi
- 老男孩python项目实战
- python源码制作whl文件.rar
- python3.5可用的scipy
- PYTHON3 经典50案例.pptx
- 计算机科学导论-python.pdf
- python模拟鼠标点击屏幕
- windows鼠标自动点击py脚本
- 鱼c小甲鱼零基础学python全套课后题和
- Python 练习题100道
- Practical Programming 2nd Edition
- wxPython Application Development Cookbook
- python 3.6
- Python 3.5.2 中文文档 互联网唯一CHM版本
- python3.5.2.chm官方文档
评论
共有 条评论