很多新接触电脑的朋友正在为打字而发愁,不用担心,我教大家写一个打字游戏,可以练打字的
基本设置:
import pygame,sys,random,time
pygame.init()
screen = pygame.display.set_mode((800,500))
pygame.display.set_caption("打字游戏")
myFont=pygame.font.SysFont(None,80)
letterList=["a","b","c","d","e","f","g","h",\
"i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"]
letterWait = []
t1=time.time()
letterSpeed = 1 # 字母下落速度
myFont1 = pygame.font.SysFont(None,20)
score = 0
scoreText = "score:0"
red = (255,0,0)
chance = 5
chanceText = "chance:5"
green = (0,255,0)
levelText = "level:1" # 设置关卡显示内容
blue = (0,0,255) # 设置颜色
#添加背景音乐
pygame.mixer.music.load("bgSound.wav")
pygame.mixer.music.play(-1)
分数、段位、难度进阶:
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
if event.type == pygame.KEYDOWN:
for letter in letterWait:
# 计算分数
if event.key == ord(letter["word"]):
letterWait.remove(letter)
score = score + 1
scoreText = "score:"+str(score)
if score <10>20:
print("bronze(青铜)")
t2 = time.time()
if t2 - t1 >= 2:
t1 = t2
letter1 = random.choice(letterList)
color1 = (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255))
x1 = random.randint(100, 700)
y1 = 0
letterDict = {"word": letter1, "color": color1, "x": x1, "y": y1}
letterWait.append(letterDict)
screen.fill((255, 255, 255))
for letter in letterWait: #