Python少儿编程 进阶篇 11-飞机大战2 课件 .ppt

Python少儿编程 进阶篇 11-飞机大战2 课件 .ppt

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Python少儿编程 进阶篇 公开课 优质课 适用 如遇课件中视频、音频无法正常播放,请在网站联系上传者索取完整版本。 如需与课件配套的教学设计、随堂练习,请与上传者联系索取。 Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. 少儿编程课 飞机大战2 本节我们来使用另一种方式绘制小方块,并使其能够在屏幕中左右移动 Pygame中的精灵 除了绘制飞机,还可以通过创建精灵的方式来生成飞机 1 精灵是游戏开发中的术语。简单来说,游戏中会动的东西都叫精灵 飞机 陨石 子弹 飞机大战中的精灵 2 对于本游戏来说,目前有以下几种精灵 使用精灵类来制作角色,会更加有利于对角色的管理以及功能的添加 Pygame中提供了精灵类,继承它就可以定义自己的精灵,下面我们定义飞机精灵 1 2 定义飞机精灵类Player,定义初始化方法 为了方便确定创建出的正方形的位置,设置一下它的中心和底的值, class Player(pygame.sprite.Sprite): def __init__(self): # 完成精灵的初始化 pygame.sprite.Sprite.__init__(self) # 初始化飞机精灵的图像,也就是长什么样 self.image = pygame.Surface((50, 50)) # 初始化飞机精灵图像的颜色 self.image.fill((0, 255, 0)) 这里的get_rect能够获取飞机的图像的长方形,也就是我们定义的长方形本身。 # 角色的长方形 self.rect = self.image.get_rect() # 设置长方形中心的x的值 self.rect.centerx = WIDTH / 2 # 设置长方形底的值 self.rect.bottom = HEIGHT - 10 通过设置rect的centerx值和bottom值,就能确定长方形所在的位置了。 这里将image属性设置为方块,那么飞机的表现形式就是一个方块。 飞机精灵类定义完成之后,画到屏幕中 1 2 添加黄色部分代码—创建player对象,并绘制到屏幕 # 定义玩家飞机对象 player = Player() running = True while running: for event in pygame.event.get(): if event.type == pygame.QUIT: # 结束游戏 running = False elif event.type == pygame.KEYDOWN: if event.key == pygame.K_ESCAPE: # 结束游戏 running = False # 将玩家飞机绘制到屏幕上 screen.blit(player.image, player.rect) # 重绘游戏界面,相当于刷新一次 pygame.display.flip() pygame.quit 运行程序,可以看到屏幕中同样出现了绿色小方块 绘制到屏幕时,不需要指定位置,直接传入player.rect即可 飞机左右移动 接下来我们让飞机能够移动,首先来分析 (0,0) 600 480 (0,600) (480,0) (480,600) X轴 Y轴 左右移动,改变的是角色的X坐标 当按下左移键 240 200 160 120 280 320 360 X坐标减少 当按下右移键 X坐标增加 然后设置角色的X轴坐标为当前坐标加上这个变量,在死循环中不断的更新位置就可以了 所以我们可以创建一个初始值为0,按下左键时设为负值、按下右键时设为正值的变量 在player类中增加update方法,更新飞机的位置 1 在首先初始化X轴速度并获得按键状态 2 根据不同按键,将X轴速度设为不同值 def update(self): self.speedx = 0 # 获取按键状态 keys = pygame.

文档评论(0)

138****5351 + 关注
实名认证
内容提供者

如有问题,请于后台留言联系上传者解决,如文档无法编辑,课件中音视频无法播放等。

1亿VIP精品文档

相关文档