Python продолжает падать с функцией Pygame - PullRequest
0 голосов
/ 24 января 2019

Я не могу заставить Python работать, когда я использую функцию Raycast для отображения изображений, как мне это исправить?

Я попытался переместить некоторые переменные и поиграться с функцией, но я не могу заставить ее работать.

import pygame
pygame.init()

Screen = "Title"
DB = 0
Width = 800
Height = 600

Frame = pygame.display.set_mode((Width,Height))
pygame.display.set_caption("GAME")
FPS = pygame.time.Clock()

def Raycast(RayXPos, RayYPos):
    RaycastThis = pygame.image.load(TTR)
    Frame.blit(RaycastThis, (RayXPos, RayYPos))
    Loop = True
    while Loop == True:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                exit()
    pygame.display.update()

    FPS.tick(60)

    while Screen == "Title" and DB == 0:
        TTR = 'TitleScreenSmall.png'
        Raycast(0, 0)

Я ожидал, что во фрейме будет отображаться изображение (того же размера, что и у окна), и вместо этого оно упало, и я не могу запустить программу

1 Ответ

0 голосов
/ 25 января 2019

Ваша проблема в бесконечном цикле:

while Screen == "Title" and DB == 0:
    TTR = 'TitleScreenSmall.png'
    Raycast(0, 0)

Поскольку переменные управления циклом Screen и DB никогда не меняются, у вас нет возможности выйти из цикла. Вы застряли здесь, вечно повторяя функцию, которая делает очень мало и не включает никаких изменений для наблюдения.

Смотрите этот прекрасный debug блог за помощью.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...