[!] Fastfix

[+] call_async_event onPlayerAuthenticated
This commit is contained in:
2024-07-25 02:54:20 +03:00
parent 666a76201e
commit 4c6a240f96
3 changed files with 11 additions and 2 deletions
+1 -1
View File
@@ -10,7 +10,7 @@ __title__ = 'KuiToi-Server'
__description__ = 'BeamingDrive Multiplayer server compatible with BeamMP clients.' __description__ = 'BeamingDrive Multiplayer server compatible with BeamMP clients.'
__url__ = 'https://github.com/kuitoi/kuitoi-Server' __url__ = 'https://github.com/kuitoi/kuitoi-Server'
__version__ = '0.4.6' __version__ = '0.4.6'
__build__ = 2421 # Я это считаю лог файлами __build__ = 2425 # Я это считаю лог файлами
__author__ = 'SantaSpeen' __author__ = 'SantaSpeen'
__author_email__ = 'admin@kuitoi.su' __author_email__ = 'admin@kuitoi.su'
__license__ = "FPA" __license__ = "FPA"
+6 -1
View File
@@ -160,11 +160,16 @@ class Core:
BEAM_backend = ["backend.beammp.com", "backup1.beammp.com", "backup2.beammp.com"] 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" _map = config.Game['map'] if "/" in config.Game['map'] else f"/levels/{config.Game['map']}/info.json"
tags = config.Server['tags'].replace(", ", ";").replace(",", ";") tags = config.Server['tags'].replace(", ", ";").replace(",", ";")
self.log.debug(f"[heartbeat] {_map=}")
self.log.debug(f"[heartbeat] {tags=}")
if tags and tags[-1:] != ";": if tags and tags[-1:] != ";":
tags += ";" tags += ";"
modlist = "".join(f"/{os.path.basename(mod['path'])};" for mod in self.mods_list[1:]) modlist = "".join(f"/{os.path.basename(mod['path'])};" for mod in self.mods_list[1:])
modstotalsize = self.mods_list[0] modstotalsize = self.mods_list[0]
modstotal = len(self.mods_list) - 1 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: while self.run:
playerslist = "".join(f"{client.nick};" for client in self.clients if client and client.alive) playerslist = "".join(f"{client.nick};" for client in self.clients if client and client.alive)
data = { data = {
@@ -174,7 +179,7 @@ class Core:
"port": config.Server["server_port"], "port": config.Server["server_port"],
"map": _map, "map": _map,
"private": config.Auth['private'], "private": config.Auth['private'],
"version": self.BeamMP_version, "version": f"KuiToi-{self.BeamMP_version}",
"clientversion": self.client_major_version, "clientversion": self.client_major_version,
"name": config.Server["name"], "name": config.Server["name"],
"tags": tags, "tags": tags,
+4
View File
@@ -89,6 +89,10 @@ class TCPServer:
return False, client return False, client
ev.call_event("onPlayerAuthenticated", player=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"]: if len(self.Core.clients_by_id) > config.Game["players"]:
await client.kick(i18n.core_player_kick_server_full) await client.kick(i18n.core_player_kick_server_full)