重绘图像不起作用?

2024-10-03 11:13:14 发布

您现在位置:Python中文网/ 问答频道 /正文

所以,我有一个pygame.circle公司我想搬家。我有它移动等,但它只是复制了图像,并没有删除以前的。我理解“Blit”的概念,并且理解它复制一个像素数组。所以我想我会尝试重新画出我的整个游戏,以下是我的:

            if event.type == pygame.KEYDOWN and event.key == pygame.K_a:
                diceRoll = random.randint(1, 4)
                diceRollLabel = myFont.render(str(diceRoll), 1, black)
                window.blit(diceRollLabel, (750, 40))
                window.fill(black)
                game()

                count1 = pygame.draw.circle(window, (black),(150, countY - 72 * diceRoll), 25, 0)
                game = False
                game2 = True
                print("Test")

                player1Text = myFont.render(("Player twos turn!"), 1, black)
                window.blit(player1Text, (650, 750))
                pygame.display.update()
                break

当它调用“game()”时,它应该调用包含所有游戏屏幕的函数,所以纹理等。但是出于某种原因,它什么都不做?屏幕变黑了?你知道吗

它说“Bool object not callable”,但我的函数不是布尔函数?你知道吗


Tags: 函数eventgame游戏屏幕renderwindowpygame
2条回答

在循环开始时填充屏幕。你知道吗

def draw():
    screen.fill(Color('black'))
    # draw
    pygame.display.flip()

您已将游戏设置为布尔值

game = False

所以当你调用“game()”时,它和“False()”是一样的,这就是你出错的原因。你知道吗

你也填补了屏幕黑色后,光点骰子标签(黑色),然后你似乎画了一个黑色的圆圈在一个黑色的屏幕。你知道吗

完整的代码会有帮助。你知道吗

相关问题 更多 >