aboutsummaryrefslogtreecommitdiff
path: root/src/game/MiscHandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/MiscHandler.cpp')
-rw-r--r--src/game/MiscHandler.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/game/MiscHandler.cpp b/src/game/MiscHandler.cpp
index cb9a7cd673f..a618d83c15a 100644
--- a/src/game/MiscHandler.cpp
+++ b/src/game/MiscHandler.cpp
@@ -295,8 +295,8 @@ void WorldSession::HandleLogoutRequestOpcode( WorldPacket & /*recv_data*/ )
return;
}
- //instant logout in taverns/cities or on taxi
- if(GetPlayer()->HasFlag(PLAYER_FLAGS, PLAYER_FLAGS_RESTING) || GetPlayer()->isInFlight())
+ //instant logout in taverns/cities or on taxi or if its enabled in mangosd.conf
+ if(GetPlayer()->HasFlag(PLAYER_FLAGS, PLAYER_FLAGS_RESTING) || GetPlayer()->isInFlight() || sWorld.getConfig(CONFIG_INSTANT_LOGOUT))
{
LogoutPlayer(true);
return;
@@ -575,6 +575,13 @@ void WorldSession::HandleZoneUpdateOpcode( WorldPacket & recv_data )
if(newZone != _player->GetZoneId())
GetPlayer()->SendInitWorldStates(); // only if really enters to new zone, not just area change, works strange...
+ // AntiCheat.GMIsland
+ if(sWorld.getConfig(CONFIG_KICK_FROM_GMISLAND))
+ {
+ if(newZone == 876 && GetPlayer()->GetSession()->GetSecurity() == SEC_PLAYER)
+ _player->TeleportTo(13,0,0,0,0);
+ }
+
GetPlayer()->UpdateZone(newZone);
}