Pygame 如何显示变量?

Pygame how do I display a variable?

我正在制作一个游戏,您可以在其中单击硬币并获得硬币,并且我试图显示您获得的硬币数量,但没有显示。

代码:

text = basicFont.render(str(coins), True, WHITE, BLACK)
textRect = text.get_rect()
textRect.centerx = windowSurface.get_rect().centerx
textRect.centery = windowSurface.get_rect().centery

创建对象后,使用 windowSurface.blit(text, (x<sub>1</sub>, y<sub> 将其绘制到屏幕中1</sub>).然后调用pygame.display.flip()显示.

如:

import pygame, sys
from pygame.locals import *

pygame.init()
windowSurface = pygame.display.set_mode()

myfont = pygame.font.SysFont("monospace", 15)

while True
    for event in pygame.event.get():
        if event.type == QUIT:
            pygame.quit()
            sys.exit()
    # render text
    label = myfont.render("Some text!", 1, (255,255,0))
    windowSurface.blit(label, (100, 100))
    pygame.display.flip()

你可以使用类似这样的东西:

score = 0
score_font = pygame.font.Font(None, 50)
score_surf = score_font.render(str(score), 1, (0, 0, 0))
score_pos = [10, 10]

score这里是变量,可以通过class(es)中的函数改变。 score_font 将确定文本的字体和大小。score_surf 将用于将文本渲染到表面上。它将需要带有必要字符串的变量、数字 1(我不太清楚为什么)以及文本的颜色。 score_pos 将用于将文本 blit 到给定的特定坐标上。以下是将文本 blit 到屏幕的方法:

screen.blit(score_surf, score_pos)

希望对您有所帮助!