Python Pygame,如何在透明层上显示文本?
我试图在点击奖励后在一个单独的透明层上显示文本。屏幕闪烁一毫秒,游戏继续。我在哪里犯了错误Python Pygame,如何在透明层上显示文本?,python,text,pygame,surface,Python,Text,Pygame,Surface,我试图在点击奖励后在一个单独的透明层上显示文本。屏幕闪烁一毫秒,游戏继续。我在哪里犯了错误 WIDTH=500 高度=600 screen=pygame.display.set_模式((宽度、高度)) surface=pygame.surface.surface((宽度、高度)) def hit(): 筛板(表面,(0,0)) bonus=BONUSFONT.render(“+3点!”,1,(0,0,0)) 奖金文本=(奖金,(200,150)) 奖金=pygame.time.get_ticks
WIDTH=500
高度=600
screen=pygame.display.set_模式((宽度、高度))
surface=pygame.surface.surface((宽度、高度))
def hit():
筛板(表面,(0,0))
bonus=BONUSFONT.render(“+3点!”,1,(0,0,0))
奖金文本=(奖金,(200,150))
奖金=pygame.time.get_ticks()+3000
如果有奖文本和pygame.time.get_ticks()
我检查了几乎所有关于曲面和层的问题,但没有任何帮助我在全局名称空间中创建两个变量:
bonus\u text=None
奖金=0
hit
设置bonus\u end
并在发生“hit”时调用一次:
def hit():
全球奖金结束,奖金文本
bonus=BONUSFONT.render(“+3点!”,1,(0,0,0))
奖金文本=(奖金,(200,150))
奖金=pygame.time.get_ticks()+3000
创建一个显示奖金文本的函数_
def show_bonus():
如果有奖文本和pygame.time.get_ticks()
在主应用程序循环中连续调用函数:
为True时:
# [...]
#显示奖金文本
显示奖金()
#更新显示
# [...]
但当我这样做时,我得到了一个警告:surface.blit(*bonus_text)“预期会有一个iretable,但没有”@marta那么你做错了什么。如果您评估如果奖金文本
,则奖金文本
在surface.blit(*bonus\u text)