moved queue management to own class

This commit is contained in:
steev 2023-12-18 08:43:33 +01:00
parent 2055786d4a
commit 83e363f7c7
3 changed files with 42 additions and 24 deletions

View File

@ -2,28 +2,10 @@ import json
from Classes.Objects.Player import Player
class Player:
__queue:list
__users:list
def __init__(self):
self.__queue = []
self.__users = []
def getQueue(self) -> list:
return self.__queue
def addToQueue(self, user):
if self.isInQueue(user["id"]):
self.__queue.append(user)
def isInQueue(self, user:int) -> bool:
for user in self.__queue:
if int(user["id"]) == user:
return user
def isInQueue(self, user:str) -> bool:
for user in self.__queue:
if user["username"] == user:
return user
def createUser(self, user:json):
self.__users.append(user)

View File

@ -0,0 +1,32 @@
from Classes.Objects.Player import Player
class QueueManager:
__queue:list
def __init__(self):
self.__queue = []
def getQueue(self) -> list:
return self.__queue
def addToQueue(self, user) -> list:
if self.isInQueue(user["id"]):
self.__queue.append(user)
return self.__queue
def removeFromQueue(self, player:Player) -> list:
self.__queue.remove(player)
return self.__queue
def isInQueue(self, user:int) -> bool:
for user in self.__queue:
if int(user["id"]) == user:
return True
return False
def isInQueue(self, user:str) -> bool:
for user in self.__queue:
if user["username"] == user:
return True
return False

View File

@ -18,6 +18,8 @@ class Server:
self.__udpPort = udpPort
self.__tcpSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
self.__udpSocket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
self.__UDPClientThread = None
self.__TCPClientThread = None
self.startServer()
@ -105,15 +107,17 @@ class Server:
pass
def handleUDPEvents(self, event):
if event["event"] == "placeCard":
if event["event"] == "placecard":
pass
elif event["event"] == "removeCard":
elif event["event"] == "movecard":
pass
elif event["event"] == "attackCard":
elif event["event"] == "removecard":
pass
elif event["event"] == "attackPlayer":
elif event["event"] == "attackcard":
pass
elif event["event"] == "activateeffectCard":
elif event["event"] == "attackplayer":
pass
elif event["event"] == "activateeffectcard":
pass
elif event["event"] == "activatemonstereffect":
pass