飞机大战制作笔记4
2016-06-12 15:39
134 查看
1.显示分数(显示特殊文字方法)
Font方法:(用于载入字体,一般写在游戏主循环外)
render方法:(把字体(text)变成surface对象,一般写在有序主循环内)
2.暂停按钮
3.难度的设置
在游戏主循环中,通过对玩家得分进行简单的if...else...判断即可实现
4.全屏炸弹
炸弹图片载入
爆炸效果:清除正在屏幕中的飞机
Font方法:(用于载入字体,一般写在游戏主循环外)
score_font = pygame.font.Font("font/font.ttf", 36) ##括号的第一个参数是字体的路径(ttf格式),第二的参数是字体的大小
render方法:(把字体(text)变成surface对象,一般写在有序主循环内)
score_text = score_font.render("Score : %s" % str(score), True,WHITE) ##第一个参数是text(以字符串的形式),第二个参数是"是否消除锯齿",第三个参数是字体颜色
2.暂停按钮
#游戏暂停按钮 paused = False paused_nor_image = pygame.image.load("Images/shoot/game_pause_nor.png").convert_alpha() #载入浅色暂停按钮 paused_pressed_image = pygame.image.load("Images/shoot/game_pause_pressed.png").convert_alpha() #载入深色暂停按钮 resume_nor_image = pygame.image.load("Images/shoot/game_resume_nor.png").convert_alpha() #载入浅色开始按钮 resume_pressed_image = pygame.image.load("Images/shoot/game_resume_pressed.png").convert_alpha() #载入深色开始按钮 paused_rect = paused_nor_image.get_rect() #获取图片矩形位置 paused_rect.left, paused_rect.top = width - paused_rect.width - 10, 10 paused_image = paused_nor_image #pause按钮的默认初始状态 ...while中... for event in pygame.event.get(): ... elif event.type == MOUSEBUTTONDOWN: if event.button == 1 and paused_rect.collidepoint(event.pos): paused = not paused elif event.type == MOUSEMOTION: if paused_rect.collidepoint(event.pos): #判断鼠标的位置是否在paused_rect这个位置上,如果是就显示“深 色”图标 if paused: paused_image = resume_pressed_image #如果在暂停的情况下,图片变成“深 色 继 续”图片 else: paused_image = paused_pressed_image #如果在继续的情况下,图片变成“深 色 暂 停”图片 else: #如果鼠标没在paused_rect上方的话,就显示 “浅 色” 图标 if paused: paused_image = resume_nor_image else: paused_image = paused_nor_image ... #绘制暂停按钮 screen.blit(paused_image, paused_rect)
3.难度的设置
在游戏主循环中,通过对玩家得分进行简单的if...else...判断即可实现
4.全屏炸弹
炸弹图片载入
爆炸效果:清除正在屏幕中的飞机
相关文章推荐
- Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数
- CTEX - 在线文档 - TeX/LaTeX 常用宏包
- Java源码之LinkedHashSet
- (JSP)给jsp前台页面传递参数给textarea文本框
- Mac环境下SVN实战
- ITEM M6 自增(INCREMENT)、自减(DECREMENT)操作符前缀形式与后缀形式的区别
- android ,广播接受者。调用服务内部方法
- DotProject首页、文档和下载 - 项目管理工具 - 开源中国社区
- Ng-cloak解决angularJs中的闪烁问题
- DFS深度遍历 leetcode 17 Letter Combinations of a Phone Number
- Android 自定义View引用xml布局
- LaTeX 科技排版 课程
- Qt中利用定时器QTimer准实时显示当前日期和时间
- HDU 5691 --tsp变型
- 面试题7:用两个栈实现队列
- LVS+KeepAlived搭建
- 使用Jacob自动替换书签内容
- 消息机制,KVC,KVO
- Java基础--泛型
- git初级常用命令