From 4c6a240f964c647a94816591680c5e86c51130ad Mon Sep 17 00:00:00 2001 From: SantaSpeen Date: Thu, 25 Jul 2024 02:54:20 +0300 Subject: [PATCH] [!] Fastfix [+] call_async_event onPlayerAuthenticated --- src/core/__init__.py | 2 +- src/core/core.py | 7 ++++++- src/core/tcp_server.py | 4 ++++ 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/core/__init__.py b/src/core/__init__.py index f1750bc..217969b 100644 --- a/src/core/__init__.py +++ b/src/core/__init__.py @@ -10,7 +10,7 @@ __title__ = 'KuiToi-Server' __description__ = 'BeamingDrive Multiplayer server compatible with BeamMP clients.' __url__ = 'https://github.com/kuitoi/kuitoi-Server' __version__ = '0.4.6' -__build__ = 2421 # Я это считаю лог файлами +__build__ = 2425 # Я это считаю лог файлами __author__ = 'SantaSpeen' __author_email__ = 'admin@kuitoi.su' __license__ = "FPA" diff --git a/src/core/core.py b/src/core/core.py index 51cc7ae..d189234 100644 --- a/src/core/core.py +++ b/src/core/core.py @@ -160,11 +160,16 @@ class Core: BEAM_backend = ["backend.beammp.com", "backup1.beammp.com", "backup2.beammp.com"] _map = config.Game['map'] if "/" in config.Game['map'] else f"/levels/{config.Game['map']}/info.json" tags = config.Server['tags'].replace(", ", ";").replace(",", ";") + self.log.debug(f"[heartbeat] {_map=}") + self.log.debug(f"[heartbeat] {tags=}") if tags and tags[-1:] != ";": tags += ";" modlist = "".join(f"/{os.path.basename(mod['path'])};" for mod in self.mods_list[1:]) modstotalsize = self.mods_list[0] modstotal = len(self.mods_list) - 1 + self.log.debug(f"[heartbeat] {modlist=}") + self.log.debug(f"[heartbeat] {modstotalsize=}") + self.log.debug(f"[heartbeat] {modstotal=}") while self.run: playerslist = "".join(f"{client.nick};" for client in self.clients if client and client.alive) data = { @@ -174,7 +179,7 @@ class Core: "port": config.Server["server_port"], "map": _map, "private": config.Auth['private'], - "version": self.BeamMP_version, + "version": f"KuiToi-{self.BeamMP_version}", "clientversion": self.client_major_version, "name": config.Server["name"], "tags": tags, diff --git a/src/core/tcp_server.py b/src/core/tcp_server.py index 5d6473c..03410ec 100644 --- a/src/core/tcp_server.py +++ b/src/core/tcp_server.py @@ -89,6 +89,10 @@ class TCPServer: return False, client ev.call_event("onPlayerAuthenticated", player=client) + await ev.call_async_event("onPlayerAuthenticated", player=client) + if not client.alive: + await client.kick("Not accepted.") + return False, client if len(self.Core.clients_by_id) > config.Game["players"]: await client.kick(i18n.core_player_kick_server_full)