Когда я использую этот код (это часть цикла):
def collide():
arrow_pos = (arrow.x + arrow.w // 2, arrow.y + arrow.h // 2)
mpos = (-1, -1)
if arrow.alive:
for event in pygame.event.get():
print(event)
if event.type == pygame.MOUSEBUTTONUP:
mpos = pygame.mouse.get_pos()
print(mpos)
for square in squares:
if square.rect.collidepoint(mpos):
square.act = not square.act
if square.act:
if arrow_pos == square.center:
square.run()
Кажется, что события не работают правильно.Единственное, что напечатано, это событие MouseMotion, и даже не последовательно.MouseButtonUp и Down никогда не показываются.
Я подумал, что может потребоваться много времени, чтобы вызвать эту функцию в цикле, но я сомневаюсь в этом, и я не знаю, как это исправить.это возможная проблема.
Какие-либо решения?