Add _synced #1

This commit is contained in:
Maxim Khomutov 2023-08-17 21:25:47 +03:00
parent 42e4a8e05e
commit a06c48dca5
3 changed files with 10 additions and 1 deletions

View File

@ -32,6 +32,7 @@ class Client:
self.nick = None
self.roles = None
self._guest = True
self._synced = False
self._ready = False
self._identifiers = []
self._cars = [None] * 21 # Max 20 cars per player + 1 snowman
@ -72,6 +73,10 @@ class Client:
def guest(self):
return self._guest
@property
def synced(self):
return self._synced
@property
def ready(self):
return self._ready
@ -706,6 +711,7 @@ class Client:
tasks = self.__tasks
recv = asyncio.create_task(self._recv())
tasks.append(recv)
self._synced = True
while self.__alive:
if len(self.__packets_queue) > 0:
for index, packet in enumerate(self.__packets_queue):

View File

@ -32,6 +32,7 @@ class Client:
self.roles: str = None
self._guest = True
self.__alive = True
self._synced = False
self._ready = False
self._focus_car = -1
self._identifiers = []
@ -55,6 +56,8 @@ class Client:
@property
def guest(self) -> bool: ...
@property
def synced(self) -> bool: ...
@property
def ready(self) -> bool: ...
@property
def identifiers(self) -> list: ...

View File

@ -57,7 +57,7 @@ class Core:
return None
if cid is not None:
if cid == -1:
return [i for i in self.clients if i is not None]
return [i for i in self.clients if i is not None and i.synced]
return self.clients_by_id.get(cid)
if nick:
return self.clients_by_nick.get(nick)