Реализация многопоточности в pygame

Пишу простенькую игру с видом сверху на pygame. Есть несколько модулей всё такое. При нажатии лкм персонаж начинает двигаться в точку куда была нажата лкм. Но есть одна проблема, догадаться о способе решения которой мне пока не удалось: как заставить персонажа поменять маршрут прямо во время движения при нажатии лкм?

while True:

        for event in pygame.event.get():

            if event.type == pygame.QUIT:

                pygame.quit()

            if event.type == pygame.MOUSEBUTTONUP:

                Mouse_Position = X_Click_Pos, Y_Click_Pos = pygame.mouse.get_pos()
                print(Mouse_Position)

                for Subject in Subjects.All_Subjects['TactileObjects']:

                    if not ((Subject.X_Cord + Subject.Hit_Box_Width > X_Click_Pos > Subject.X_Cord) and
                       (Subject.Y_Cord + Subject.Hit_Box_Height > Y_Click_Pos > Subject.Y_Cord)):

                        Warrior_one.directional_movement(X_Click_Pos, Y_Click_Pos)

Ответы (1 шт):

Автор решения: валерий

Я бы сделал так:

def add_Notify():
    if trhead == 0:
        pygame.threads.__nonzero__()
        pygame.threads.start()
           
    
def run_loop():
    running =True
    while running:
        add_Notify()
        for i in pygame.event.get():
            if i.type == pygame.QUIT:
                running = False
        clock.tick(FPS) 
        pygame.display.update()   
            
run_loop()

Осталось вставить в этот код ваш.

→ Ссылка