资源简介
用python语言制作的管道小鸟游戏,可以通过键盘的空格键来控制小鸟的上下移动
代码片段和文件信息
import pygame
import pygame.locals as locals
import random
class Game(object):
SIZE = (300 400)
FPS = 30
def __init__(self):
self.surface = pygame.display.set_mode(Game.SIZE)
self.clock = pygame.time.Clock()
def init(self):
self.background = Background()
self.bird = Bird()
self.score_obj = Score()
self.pipes = []
self.pipes.append(Pipe())
self.time = 0
self.is_running = True
self.score = 0
def start(self):
self.init()
while self.is_running:
self.time += 1
if self.time == 100000000:
self.time = 0
self.control()
self.update()
self.draw()
pygame.display.update()
self.clock.tick(Game.FPS)
def control(self):
for event in pygame.event.get():
if event.type == locals.QUIT:
exit()
if event.type == locals.KEYDOWN:
if event.key == locals.K_SPACE:
self.bird.fly()
def create_pipe(self):
if self.time % 50 == 0:
self.pipes.append(Pipe())
def update_pipes(self):
index = len(self.pipes) - 1
while index >= 0:
if self.pipes[index].need_remove():
del (self.pipes[index])
else:
self.pipes[index].update()
index -= 1
def draw_pipes(self surface):
for pipe in self.pipes:
pipe.draw(surface)
def update(self):
if self.bird.is_dead(self.pipes):
self.is_running = False
for pipe in self.pipes:
if pipe.need_add_score(self.bird):
self.score += 1
self.create_pipe()
self.background.update()
self.bird.update()
self.update_pipes()
self.score_obj.update(self.score)
def draw(self):
self.background.draw(self.surface)
self.bird.draw(self.surface)
self.draw_pipes(self.surface)
self.score_obj.draw(self.surface)
class Background(object):
def __init__(self):
pass
def update(self):
pass
def draw(self surface):
surface.fill((200 200 200))
class Bird(object):
IMG = pygame.image.load(“./res/bird.png“)
def __init__(self):
self.x = 50
self.y = 180
self.width = Bird
- 上一篇:python图像处理三维重建所有代码
- 下一篇:BP算法Python代码
相关资源
- BP算法Python代码
- python图像处理三维重建所有代码
- treePlotter
- 天猫评论爬虫
- 股票爬取python
- python量化金融项目视频教程
- 基于朴素贝叶斯实现的文本分类
- 单纯形法python
- Python实现简单遗传,粒子群,蚁群,
- 在 VisualStudio 2017环境下使用Python之爬
- python实现图片拼接
- 调用python接口使用googlenet进行图像识
- 最详细神经网络python描写附注释
- Pygame——AI重力四子棋
- 基于Python的计算机网络实验设计
- 西电数据挖掘作业——k中心聚类pyt
- python实现SVM
- 老男孩python全栈开发学习笔记文字整
- python3 HTMLTestRunner截图&美化&优化
- 爬取网页视频,解析m3u8文件,获取
- dmPython.zip
- python实现的改进的遗传算法解决工件
- Python简易滚动抽奖界面程序
- 超限学习机—逻辑回归Python代码
- python3爬取中国天气网天气并写入csv
- Python2.7 贪吃蛇小游戏源码
- python实现logistics的分叉图
- 对任意关键字爬虫对应图片代码
- 图虫网爬虫python实现
- 网站图片爬取代码
评论
共有 条评论