importpygameclassDisplayboard():'''展示程序中的文本'''

def __init__(self, my_settings, screen):

self.screen=screen

self.my_settings=my_settings

self.screen_rect=screen.get_rect()#获取字体对象

self.s_font = pygame.font.Font(r'fonts\freesansbold.ttf',

my_settings.s_font_size)

self.m_font= pygame.font.Font(r'fonts\freesansbold.ttf',

my_settings.m_font_size)

self.l_font= pygame.font.Font(r'fonts\freesansbold.ttf',

my_settings.l_font_size)#获取文本图片

self.top_text_image =self.s_font.render(my_settings.top_text, True,

my_settings.YELLOW)

self.typing_flag_image= self.s_font.render("typing!", True,

my_settings.DARKGRAY)

self.start_text_image=self.m_font.render(my_settings.start_text, True,

my_settings.GREEN, my_settings.OLIVE)#获取surface的rect

self.start_image_rect =self.start_text_image.get_rect()

self.start_image_rect.center=self.screen_rect.center

self.typing_image_rect=self.typing_flag_image.get_rect()

self.typing_image_rect.right= self.screen_rect.right - 20self.typing_image_rect.top= 20

#显示各个文本的函数

defdisplay_top_text(self):

self.screen.blit(self.top_text_image,

self.my_settings.top_text_position)defdisplay_typing_text(self):

self.screen.blit(self.typing_flag_image, self.typing_image_rect)defdisplay_start_text(self):

self.screen.blit(self.start_text_image, self.start_image_rect)defdisplay_speed_text(self, speed):

speed_text_image= self.s_font.render("Current Speed:" + str(speed) + "letters/min",

True, self.my_settings.YELLOW)

speed_text_rect=speed_text_image.get_rect()

speed_text_rect.centery= self.screen_rect.centery / 2speed_text_rect.right= self.screen_rect.right - 20self.screen.blit(speed_text_image, speed_text_rect)defdisplay_letter_text(self, letter):

letter_text_image=self.l_font.render(letter, True,

self.my_settings.RED)

letter_rect=letter_text_image.get_rect()

letter_rect.centerx=self.screen_rect.centerx

letter_rect.centery= self.screen_rect.bottom * 2 / 3self.screen.blit(letter_text_image, letter_rect)defdisplay_remaining_time_text(self, remaining_time):

remaining_time_image= self.s_font.render("Remaining Time:" +str(remaining_time),

True, self.my_settings.OLIVE)

remaining_time_rect=remaining_time_image.get_rect()

remaining_time_rect.top= self.screen_rect.top + 20remaining_time_rect.centerx=self.screen_rect.centerx

self.screen.blit(remaining_time_image, remaining_time_rect)defdisplay_fastest_text(self, fastest_speed):

fastest_speed_image= self.s_font.render("Fastest Speed:" +str(fastest_speed),

True, self.my_settings.YELLOW)

fastest_speed_rect=fastest_speed_image.get_rect()

fastest_speed_rect.centery= self.screen_rect.centery / 2fastest_speed_rect.left= 20self.screen.blit(fastest_speed_image, fastest_speed_rect)

python打字测速_【pygame游戏编程】第四篇-----打字测速游戏相关推荐

  1. java swing游戏编程高仿金山打字教程-拯救苹果

    原文:java swing游戏编程高仿金山打字教程-拯救苹果 源代码下载地址:http://www.zuidaima.com/share/1786650901515264.htm 这几天学习了一下ja ...

  2. DirectX5.0最新游戏编程指南 DirectDraw篇 四、DirectDraw高级特性 (转)

    DirectX5.0最新游戏编程指南 DirectDraw篇 四.DirectDraw高级特性 (转)[@more@] 四.DirectDraw高级特性 1.直接内存访问DMA   有些显示设备能够在 ...

  3. 【通知】▁▂▃ Himi 最新著作《iOS游戏编程之从零开始—Cocos2d-x与cocos2d引擎游戏开发》★书籍源码+第4/5/6样章★-免费下载★ ▃▂▁

    2013年新年,Himi的第二本著作:<iOS游戏编程之从零开始-Cocos2d-x与cocos2d引擎游戏开发>一书正式发售: (大家可以到新华书店.淘宝.拍拍.当当.亚马逊等进行购买) ...

  4. linux 脚本编写 -eq,关于shell脚本基础编程第四篇

    shell脚本基础编程第四篇 本章主要内容:函数 函数 function: function 名称 { 命令 ; } 或 name () { 命令 ; } 定义 shell 函数. 创建一个以 NAM ...

  5. Python游戏编程(四)Hangman

    Hangman是一个双人游戏,通常用纸和铅笔来玩.一个玩家想好一个单词,然在纸上为单词的每个字母画一个空格.然后第二个玩家猜测这个单词中可能包含的字母. 如果第二个玩家猜测对了,第一个玩家就在正确的空 ...

  6. 如何制作一款HTML5 RPG游戏引擎——第四篇,情景对话

    今天我们来实现情景对话.这是一个重要的功能,没有它,游戏将变得索然无味.所以我们不得不来完成它. 但是要知道,使用对话可不是一件简单的事,因为它内部的东西很多,比如说人物头像,人物名称,对话内容... ...

  7. python一级考试题目_全国青少年软件编程(Python)等级考试试卷(一级)br测试卷-20191114123907422...

    全国青少年软件编程 ( Python ) 等级考试试卷 (一 级) 测试卷 分数: 100.00 题数: 50 一.单选题 (共 30 题,每题 2 分,共 60 分) 1. 关于 Python 的编 ...

  8. 谢绝枯燥快乐编程,四大游戏编程网站,让你边玩游戏,边学Python

    欢迎点击右上角关注小编,除了分享技术文章之外还有很多福利,点击:资料 可以领取包括不限于Python实战演练.PDF电子文档.面试集锦.学习资料等. 前言 学习编程虽然对有些人来说是件乐事,但是对大多 ...

  9. 风变编程python小课课件_风变编程Python小课最近很火,大家学完感受如何?

    我也是上了体验课之后想了一天交了全款.自以为自己真的是一个拖延症患者加三分钟热度的人,这也是我为什么想了一天的原因.后来实在是因为编程未来的适用范围太广了(前面很多答案说的很棒我就不重复啦)加上下个学 ...

最新文章

  1. 【C++】多线程互斥锁、条件变量
  2. python中mode_python中的model模板中的数据类型
  3. 亚马逊AWS:正确设置FTP
  4. Windows环境下学习Lisp和Scheme的两大利器
  5. “达克效应”让人们信心满满还是畏惧不前?- 更应该是谨慎地冒险
  6. 如何显示服务器上的图片,显示服务器上的图片怎么写
  7. 有关单点登录的几种方案
  8. 不兼容结构的协调——适配器模式
  9. matlab怎么写集合,matlab集合操作
  10. 【java】switch的用法介绍
  11. html切西瓜游戏源码,html5切水果源码(水果忍者)
  12. phpQuery使用经验,抓取网页快捷,拒绝正则表达式
  13. 超详细设置Idea类注释模板和方法注释模板
  14. (转)SonicStage CP 4.3 中文迷你版和完整版下载
  15. 爱快路由器接水星交换机-划分vlan
  16. storyboard(故事版)新手教程 图文详解 3.在故事版上使用scrollview
  17. 永恒之塔修改服务器名字,永恒之塔修改称号提升人物各种属性教程
  18. 社会实践论文关于计算机网络,计算机社会实践毕业论文题目大全 计算机社会实践专业论文题目怎样拟...
  19. 微信小程序_调用openAi搭建虚拟伙伴聊天
  20. 2008春天在玉渊潭看到传说中的榆钱树

热门文章

  1. PDF文件如何提取页面,PDF提取页面的小技巧
  2. 关于travis scott的网名_文案| 关于【太阳】的惊艳句子
  3. 关于netty的IllegalReferenceCountException refCnt: 0, decrement: 1
  4. 拓嘉启远电商:拼多多缺货会降权吗?如何处理
  5. windows-sys9 :windows 系统官方下载网址
  6. 啃下这些Framework技术笔记,专题解析
  7. wordpress中文主题,开源wordpress中文免费主题模板
  8. 从汉语与英语最常用字词,分析汉语与英语的异同(一)
  9. 安卓和iOS的兼容性问题: 键盘弹起时,固定在底部的按钮是否被弹到键盘上方
  10. C++程序设计作业--坦克大战[分享]