Python & Pygame: Atualizando todos os elementos em uma lista sob um loop durante a iteração
Eu estou trabalhando em um programa em Python e usando Pygame. é assim que o código básico se parece:
while 1:
screen.blit(background, (0,0))
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
if event.type == KEYDOWN and event.key == K_c:
circle_create = True
circle_list.append(Circle())
if event.type == MOUSEBUTTONDOWN and circle_create == True:
if clicks == 0:
circle_list[i].center()
clicks += 1
if event.type == MOUSEMOTION and clicks == 1 and circle_create == True:
circle_list[i].stretch()
if circle_create == True:
circle_list[i].draw_circle()
if clicks == 2:
clicks = 0
i += 1
circle_create = False
pygame.display.update()
O que eu quero fazer é que a função do objeto draw_circle () seja constantemente atualizada pelo loop, de forma que o círculo desenhado seja mostrado para todos os objetos na lista, mas como a lista é iterada, ele atualiza o novo objeto adicionado e os objetos já anexados não são atualizados.
O programa funciona, atrai os círculos na entrada do usuário, mas o problema de atualização é o único problema que eu preciso resolver. Existe alguma maneira possível de ter todos os elementos na lista de objetos sendo atualizados pelo loop while? Eu tentei por muitos dias e não consegui encontrar uma boa solução. quaisquer ideias são apreciadas. obrigado