add timeout to unblock idle state

This commit is contained in:
Semjon Kerner 2022-02-20 20:00:30 +01:00
parent 6c4b00775e
commit 13319e2606

View File

@ -1,7 +1,8 @@
from enum import Enum
from time import time, sleep
subscribers = []
checkpoint = 0
class State(Enum):
IDLE = 0
@ -32,9 +33,17 @@ def loop(state_num: int):
Executed in the start of the main loop in fishy.py
Changes modes, calls mode events (callbacks) when mode is changed
"""
global checkpoint
FishingMode.CurrentMode = State(state_num)
if FishingMode.CurrentMode != FishingMode.PrevMode:
checkpoint = time()
_notify(FishingMode.CurrentMode)
elif FishingMode.CurrentMode == State.LOOKING:
if time() - checkpoint > 5:
_notify(FishingMode.CurrentMode)
checkpoint = time()
else:
sleep(0.5)
FishingMode.PrevMode = FishingMode.CurrentMode