我目前正在创建一个游戏,其中(目前)分数每秒增加 1 分。
但是,每当我运行程序时,使用我当前的代码(我相信它每秒都会更改变量),文本不会改变。它只是停留在0。
这是我的代码:(我在这个问题中提供了文本来解释我的代码,比如注释。)
第 1 节:导入 PyGame 和其他标准程序代码。
import sys, pygame
from pygame.locals import *
pygame.init()
size = width, height = 800,500
screen = pygame.display.set_mode(size)
第 2 部分:设置窗口标题和颜色变量。
pygame.display.set_caption("One Score (Created by - Not Really Working Lamp Productions:)")
WHITE = (255,255,255)
第 3 部分:声明变量“score”。我给了它一个单独的代码示例,因为它与问题密切相关。
score = 0
第 4 部分:填充屏幕并声明默认字体变量。
screen.fill (WHITE)
myfont = pygame.font.SysFont("monospace", 16)
第 5 部分:免责声明文本(或者是声明文本,我不太确定。)
disclaimertext = myfont.render("Copyright, 2013, Not Really Working Lamp Productions.", 1, (0,0,0))
screen.blit(disclaimertext, (5, 480))
第 6 部分:添加乐谱文本(可能是最关键的部分。)
scoretext = myfont.render("Score = "+str(score), 1, (0,0,0))
screen.blit(scoretext, (5, 10))
第 7 节:while 循环(可能是最关键的部分。)
while 1:
for event in pygame.event.get():
pygame.display.flip()
if event.type == pygame.QUIT:sys.exit()
pygame.time.wait(100)
score = score + 1
那么在我的代码中我应该在哪里放什么?(我需要屏幕不断更新分数,因为它从“while 1:”循环中每秒改变一次。)
谢谢你。