Skip to content

Commit e821355

Browse files
committed
update(scripting): Trying to fix calls for OnClientDisconnect/Connect
1 parent b26affe commit e821355

File tree

2 files changed

+9
-19
lines changed

2 files changed

+9
-19
lines changed

src/entrypoint.cpp

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -235,6 +235,11 @@ bool scripting_OnClientConnect(const OnClientConnect *e);
235235

236236
bool SwiftlyPlugin::Hook_ClientConnect(CPlayerSlot slot, const char *pszName, uint64 xuid, const char *pszNetworkID, bool unk1, CBufferString *pRejectReason)
237237
{
238+
Player *player = new Player(false, slot.Get(), pszName, xuid);
239+
g_playerManager->RegisterPlayer(player);
240+
241+
player->SetConnected(true);
242+
238243
OnClientConnect clientConnectEvent = OnClientConnect(&slot, pszName, xuid, pszNetworkID, unk1, pRejectReason);
239244
hooks::emit(clientConnectEvent);
240245
RETURN_META_VALUE(MRES_SUPERCEDE, scripting_OnClientConnect(&clientConnectEvent));
@@ -252,6 +257,10 @@ void SwiftlyPlugin::Hook_ClientDisconnect(CPlayerSlot slot, int reason, const ch
252257
OnClientDisconnect clientDisconnectEvent = OnClientDisconnect(&slot, reason, pszName, xuid, pszNetworkID);
253258
scripting_OnClientDisconnect(&clientDisconnectEvent);
254259

260+
Player *player = g_playerManager->GetPlayer(&slot);
261+
if (player)
262+
g_playerManager->UnregisterPlayer(&slot);
263+
255264
hooks::emit(clientDisconnectEvent);
256265
}
257266

src/player/PlayerManager.cpp

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -29,23 +29,6 @@ void OnClientConnectedOnServer(const OnClientConnected *e)
2929
}
3030
}
3131

32-
void OnClientConnectOnServer(const OnClientConnect *e)
33-
{
34-
Player *player = new Player(false, e->slot->Get(), e->pszName, e->xuid);
35-
g_playerManager->RegisterPlayer(player);
36-
37-
player->SetConnected(true);
38-
}
39-
40-
void OnClientDisconnected(const OnClientDisconnect *e)
41-
{
42-
Player *player = g_playerManager->GetPlayer(e->slot);
43-
if (!player)
44-
return;
45-
46-
g_playerManager->UnregisterPlayer(e->slot);
47-
}
48-
4932
void OnClientSpawn(const OnPlayerSpawn *e)
5033
{
5134
CBasePlayerController *controller = (CBasePlayerController *)e->pEvent->GetPlayerController("userid");
@@ -63,8 +46,6 @@ void OnClientSpawn(const OnPlayerSpawn *e)
6346
void PlayerManager::SetupHooks()
6447
{
6548
hooks::on<OnClientConnected>(OnClientConnectedOnServer);
66-
hooks::on<OnClientConnect>(OnClientConnectOnServer);
67-
hooks::on<OnClientDisconnect>(OnClientDisconnected);
6849

6950
gameevents::on<OnPlayerSpawn>(OnClientSpawn);
7051
}

0 commit comments

Comments
 (0)