Есть ли причина, по которой event.key не работает на полпути через мой код?
Я полагаю, у вас более 1 события l oop, соответственно, вызов pygame.event.get()
есть в вашем коде.
Примечание pygame.event.get()
удаляет события из очереди. Если у вас более 1 события l oop, то только один случайный l oop получит события, все остальные циклы go с пустыми руками. Это приводит к тому, что вы пропустите события.
Получите список событий один раз в главном приложении l oop и используйте один и тот же список событий в нескольких циклах событий. Например:
gameRun = True
while gameRun:
events = pygame.event.get()
for event in events:
if event.key == pygame.K_p:
print("This Should Work")
currency.balance.amount += 1
pygame.display.update()
# [...]
foo(event)
# [...]
for event in events:
# [...]
def foo(events):
for event in events:
# [...]