|
3威望
- import sys, random, time, pygame
- from pygame.locals import *
- def print_text(font, x, y, text, color=(255,255,255)):
- imgText = fon.render(text, True, color)
- screen.blit(imgText, (x,y))
- pygame.init()
- screen = pygame.display.set_mode((600,500))
- pygame.display.set_caption("测试你的打字速度")
- font1 = pygame.font.Font(None, 24)
- font2 = pygame.font.Font(None, 200)
- white = 255,255,255
- yellow = 255,255,0
- key_flag = False
- correct_answer = 97
- seconds = 11
- score = 0
- clock_start = 0
- game_over = True
- while True:
- for event in pygame.event.get():
- if event.type == QUIT:
- sys.exit()
- elif event.type == KEYDOWN:
- key_flag = True
- elif event.type == KEYUP:
- key_flag = False
- keys = pygame.key.get_pressed()
- if keys[K_ESCAPE]:
- sys.exit()
-
- if keys[K_RETURN]:
- if game_over:
- game_over = False
- score = 0
- seconds = 11
- clock_start = time.clock()
- current = time.clock() - clock_start
- speed = score * 6
- if seconds-current < 0:
- game_over = True
- elif current <= 10:
- if keys[correct_answer]:
- correct_answer = random.randint(97,122)
- score += 1
- screen.fill((0,100,0))
- print_text(font1, 0, 0, "让我们看看你打字有多快!")
- print_text(font1, 0, 20, "尽量保持10秒钟……")
- if key_flag:
- print_text(font1, 500, 0, "<用计算机键盘输入>")
- if not game_over:
- print_text(font1, 0, 80, "时间: " + str(int(seconds-current)))
- print_text(font1, 0, 100, "速度: " + str(speed) + "字母/分钟")
- if game_over:
- print_text(font1, 0, 160, "按回车键开始……")
- print_text(font2, 0, 240, chr(correct_answer-32), yellow)
- pygame.display.update()
复制代码
|
|