From 8869c490a5c26f0da9fe9a112f993193e5bbb094 Mon Sep 17 00:00:00 2001 From: Jonas Zeunert Date: Wed, 31 Aug 2022 17:49:41 +0200 Subject: [PATCH] thread --- GameState.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/GameState.py b/GameState.py index 8440848..a92999e 100644 --- a/GameState.py +++ b/GameState.py @@ -5,13 +5,15 @@ from lamps.Lamp import CREDIT from itertools import cycle from lamps.LampGroup import * import asyncio +import threading class GameState: players = None credits = config.BALLS_PER_GAME isPlaying = False isStarted = False - isIdle = asyncio.Event() + isIdle = True + idleThread = None def __init__(self, playerStateFactory, highscore, specialDisplay, currentPlayerID = 0): CREDIT.activate() @@ -45,13 +47,17 @@ class GameState: def startIdleLoop(self): logging.info("Starting Idle Loop") - asyncio.run(self.idleLoop()) + self.isIdle = True + self.idleThread = threading.Thread(target=self.idleLoop) + self.idleThread.start() pass def stopIdleLoop(self): logging.info("Stopping Idle Loop") - self.isIdle.set() + self.isIdle = False + self.idleThread.join() self.deactivate_all() + pass def deactivate_all(self):