0
Как бы добавить ключевые команды для сантехники? Ниже приведена моя попытка, но нет результата при нажатии кнопки «вверх». Как бы я установил ud, и ld изменился на 10 при нажатии кнопки кнопки?Как добавить ключевые команды для спрайтов?
pink = (255, 64, 64)
w = 640
h = 480
ld = 0
ud = 0
screen = pygame.display.set_mode((w, h))
running = 1
def key_event(self, event):
if event.key == pygame.K_UP:
ud - 10
ld + 10
def show_sprites():
screen.blit(plumbers,(50+ld ,100+ud))
def setup_background():
screen.fill((pink))
screen.blit(cloud_background,(0,0))
brick_width, brick_height = brick_tile.get_width(), brick_tile.get_height()
for x,y in itertools.product(range(0,640,brick_width),
range(390,480,brick_height)):
screen.blit(brick_tile, (x,y))
while running:
setup_background()
event = pygame.event.poll()
show_sprites()
pygame.display.flip()
if event.type == pygame.QUIT:
sys.exit()
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
elif event.type == pygame.KEYDOWN:
w.key_event(event)
Я попробовал и получил: 'AttributeError:«INT»объект не имеет атрибута«key_event'' это в refrence to: 'w.key_event (event)' Что бы я заменил событие? – enrique2334
Я думаю, это связано с тем, что в вашем коде w есть целое число, но вы пытаетесь использовать его как объект с key_event как функцию-член. Я добавил версию кода, который я использовал для ответа (который имеет некоторые изменения в способе вызова key_event) –
Так что это дает мне эту ошибку 'TypeError: key_event() принимает ровно 2 аргумента (1 данный)', как мне добавьте второй аргумент/что бы сделал второй аргумент. – enrique2334