Ошибка Pygame с Display_Width не определена - PullRequest
0 голосов
/ 12 июня 2018

Я использую Pygame и пытаюсь отобразить автомобиль, который я нарисовал. Когда я пытаюсь его использовать, я получаю следующую ошибку о ширине, которую я устанавливаю для машины.Помогите мне исправить это.

Файл "C: \ Users \ perfe \ AppData \ Local \ Programs \ Python \ Python36-32 \ game.py", строка 16, в x = (display_width * 0.1) NameError: имя 'display_width' не определено

Мой код для Pygame это

import pygame

pygame.init()

gameDisplay = pygame.display.set_mode((800,600))

pygame.display.set_caption("Hi There")

clock = pygame.time.Clock()

carImg = pygame.image.load("mycar.png")

def car(x,y):
    gameDisplay.blit(carImg, (x,y))

x = (display_width * 0.1)
y = (display_height * 0.3)

x_change = 0

crashed = False

while not crashed:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            crashed = True


    if event.type == pygame.KEYDOWN:
        if event.key == pygame.K_LEFT:
                 x_change = -5
        elif event.key == pygame.K_RIGHT:
                 x_change = 5

        if event.type == pygame.KEYUP:
            if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT:
                 x_change = 0


    x += x_change

    gameDisplay.fill(white)

    car(x,y)
    pygame.display.update()

    clock.tick(60)

pygame.quit()
quit()

Ответы [ 2 ]

0 голосов
/ 12 июня 2018

Не похоже, что вы определили display_width или display_height в вашей программе.Я бы посоветовал определить их сверху так:

display_width = 800
display_height = 600

, тогда вы также можете использовать эти переменные при вызове pygame.display.set_mode

0 голосов
/ 12 июня 2018

Как говорит ошибка, display_width не определено.Вам нужно будет присвоить значение этой переменной перед ее использованием.Точно так же вам также нужно будет присвоить значение display_height.

. Вы можете внести следующие изменения, чтобы исправить ошибку и упростить изменение высоты и ширины в будущем

display_width = 800
display_height = 600
...
gameDisplay = pygame.display.set_mode((display_width, display_height))
...
x = (display_width * 0.1)
y = (display_height * 0.3)
...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...