为了账号安全,请及时绑定邮箱和手机立即绑定

Pygame 字体文本未显示正确的数字

Pygame 字体文本未显示正确的数字

慕村225694 2021-09-14 16:30:15
因此,对于我正在开发的游戏,我发现了一个错误,我无法在任何地方找到答案。这是我的 UI 中的代码片段if not self.game.rot_lim == 0:    pg.draw.rect(self.ui, (255,255,255), (730,16,32,32))    rotators = str(self.game.rot_rem)    self.draw_text("Prisms Remaining: " + rotators, 770)rot_lim 是一个整数,它存储用户可以为该级别放置的旋转器总数的值。同样,rot_rem 是可以放置的剩余数量。我的绘制文本功能如下:def draw_text(self, text, x, y = 20):    # Renders text    draw = self.game.text.render(text, False, (0,0,0), (170, 170, 170))    # Draws on UI    self.ui.blit(draw, (x,y))现在我的问题是总共显示 10 个或更多。当我低于 10 时,它会在末尾显示一个额外的 0(例如,如果我放置 1,它会变为 90)。对于我在它之后放置的每一个忽略最后一个 0,它不存在于代码中(用打印语句测试),所以它只存在于它的渲染端。
查看完整描述

1 回答

?
茅侃侃

TA贡献1842条经验 获得超21个赞

好吧,我设法重新创建了这个问题,它与重新绘制屏幕有关(与您发布的代码无关)。由于我们只能看到您的部分代码,我不能完全确定我的娱乐是否符合您的问题。

确保您正在做以下两件事之一:

1)通过重新填充背景颜色清除谁屏幕 screen.fill((255, 255, 200))

2)通过重新填充来清除文本所在的部分(可能它在需要重绘的矩形内)

这应该发生在游戏的每次循环中。基本上,确保每次都刷新屏幕,因为目前它只是在绘制


查看完整回答
反对 回复 2021-09-14
  • 1 回答
  • 0 关注
  • 152 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信