Python, pygame таймеры
Создаю свою игру на библиотеке pygame, установил таймер:
timer = USEREVENT
python.time.set_timer(ghost_timer, 3000)
Все работает.
Попытался сделать второй таймер тем же способом, но оба работают одним и тем же временем(3000)
Как создать 2 таймера в пайгейм?
Библиотека Pygame предлагает естественный способ создания и управления несколькими таймерами одновременно. Вот базовый пример, как это можно сделать:
import pygame
from pygame.locals import *
pygame.init()
# Создаём два разных события
TIMER_ONE = USEREVENT + 1
TIMER_TWO = USEREVENT + 2
# Устанавливаем два таймера
pygame.time.set_timer(TIMER_ONE, 1000) # Timer one set to trigger every 1000 ms
pygame.time.set_timer(TIMER_TWO, 2000) # Timer two set to trigger every 2000 ms
# Главный цикл игры
running = True
while running:
for event in pygame.event.get():
if event.type == TIMER_ONE:
print("Timer one tick")
elif event.type == TIMER_TWO:
print("Timer two tick")
elif event.type == QUIT:
running = False
В этом коде два разных события таймера создаются, каждое со своим собственным интервалом. Затем в главном цикле игры проверяются типы событий, и для каждого интервального таймера выполняются определенные действия.
Обратите внимание, что USEREVENT является константой, определенной в Pygame, которую вы можете использовать как базовое значение при определении своих собственных событий. Здесь USEREVENT + 1 и USEREVENT + 2 используются для создания двух уникальных событий.