DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ PlayerDisconnected()

void MissionBase::PlayerDisconnected ( PlayerBase player,
PlayerIdentity identity,
string uid )
inlineprotected

См. определение в файле missionServer.c строка 631

632 {
633 // Note: At this point, identity can be already deleted
634 if (!player)
635 {
636 Print("[Logout]: Skipping player " + uid + ", already removed");
637 return;
638 }
639
640 // disable reconnecting to old char
641 //GetGame().RemoveFromReconnectCache(uid);
642
643 // now player can't cancel logout anymore, so call everything needed upon disconnect
644 InvokeOnDisconnect(player);
645
646 Print("[Logout]: Player " + uid + " finished");
647
648 if (GetHive())
649 {
650 // save player
651 player.Save();
652
653 // unlock player in DB
654 GetHive().CharacterExit(player);
655 }
656
657 // handle player's existing char in the world
658 player.ReleaseNetworkControls();
659 HandleBody(player);
660
661 // remove player from server
662 GetGame().DisconnectPlayer(identity, uid);
663 // Send list of players at all clients
664 GetGame().GetCallQueue(CALL_CATEGORY_SYSTEM).CallLater(SyncEvents.SendPlayerList, 1000);
665 }
proto native Hive GetHive()
override ScriptCallQueue GetCallQueue(int call_category)
Определения DayZGame.c:1187
proto native void DisconnectPlayer(PlayerIdentity identity, string uid="")
Destroy player info and disconnect.
proto native void CharacterExit(Man player)
void HandleBody(PlayerBase player)
Определения missionServer.c:689
void InvokeOnDisconnect(PlayerBase player)
Определения missionServer.c:383
proto void CallLater(func fn, int delay=0, bool repeat=false, void param1=NULL, void param2=NULL, void param3=NULL, void param4=NULL, void param5=NULL, void param6=NULL, void param7=NULL, void param8=NULL, void param9=NULL)
adds call into the queue with given parameters and arguments (arguments are held in memory until the ...
proto native CGame GetGame()
proto void Print(void var)
Prints content of variable to console/log.
const int CALL_CATEGORY_SYSTEM
Определения tools.c:8

Перекрестные ссылки CALL_CATEGORY_SYSTEM, ScriptCallQueue::CallLater(), Hive::CharacterExit(), CGame::DisconnectPlayer(), CGame::GetCallQueue(), GetGame(), GetHive(), HandleBody(), InvokeOnDisconnect(), Print() и SyncEvents::SendPlayerList().

Используется в OnClientDisconnectedEvent() и UpdateLogoutPlayers().