Delay fifteen milliseconds before making administrators invisible on EnterWorld.

This commit is contained in:
MobiusDevelopment
2019-07-31 11:10:42 +00:00
parent c704d4687a
commit 914f3aee14
14 changed files with 480 additions and 437 deletions

View File

@@ -586,46 +586,49 @@ public class EnterWorld extends GameClientPacket
{
if (player.isGM())
{
gmStartupProcess:
ThreadPool.schedule(() -> // Needs a small delay.
{
if (Config.GM_STARTUP_BUILDER_HIDE && AdminCommandAccessRights.getInstance().hasAccess("admin_hide", player.getAccessLevel()))
gmStartupProcess:
{
player.setInRefusalMode(true);
player.setIsInvul(true);
player.getAppearance().setInvisible();
if (Config.GM_STARTUP_BUILDER_HIDE && AdminCommandAccessRights.getInstance().hasAccess("admin_hide", player.getAccessLevel()))
{
player.setInRefusalMode(true);
player.setIsInvul(true);
player.getAppearance().setInvisible();
BuilderUtil.sendSysMessage(player, "hide is default for builder.");
BuilderUtil.sendSysMessage(player, "FriendAddOff is default for builder.");
BuilderUtil.sendSysMessage(player, "whisperoff is default for builder.");
// It isn't recommend to use the below custom L2J GMStartup functions together with retail-like GMStartupBuilderHide, so breaking the process at that stage.
break gmStartupProcess;
}
BuilderUtil.sendSysMessage(player, "hide is default for builder.");
BuilderUtil.sendSysMessage(player, "FriendAddOff is default for builder.");
BuilderUtil.sendSysMessage(player, "whisperoff is default for builder.");
if (Config.GM_STARTUP_INVULNERABLE && AdminCommandAccessRights.getInstance().hasAccess("admin_invul", player.getAccessLevel()))
{
player.setIsInvul(true);
}
// It isn't recommend to use the below custom L2J GMStartup functions together with retail-like GMStartupBuilderHide, so breaking the process at that stage.
break gmStartupProcess;
if (Config.GM_STARTUP_INVISIBLE && AdminCommandAccessRights.getInstance().hasAccess("admin_invisible", player.getAccessLevel()))
{
player.getAppearance().setInvisible();
}
if (Config.GM_STARTUP_SILENCE && AdminCommandAccessRights.getInstance().hasAccess("admin_silence", player.getAccessLevel()))
{
player.setInRefusalMode(true);
}
if (Config.GM_STARTUP_AUTO_LIST && AdminCommandAccessRights.getInstance().hasAccess("admin_gmliston", player.getAccessLevel()))
{
GmListTable.getInstance().addGm(player, false);
}
else
{
GmListTable.getInstance().addGm(player, true);
}
}
if (Config.GM_STARTUP_INVULNERABLE && AdminCommandAccessRights.getInstance().hasAccess("admin_invul", player.getAccessLevel()))
{
player.setIsInvul(true);
}
if (Config.GM_STARTUP_INVISIBLE && AdminCommandAccessRights.getInstance().hasAccess("admin_invisible", player.getAccessLevel()))
{
player.getAppearance().setInvisible();
}
if (Config.GM_STARTUP_SILENCE && AdminCommandAccessRights.getInstance().hasAccess("admin_silence", player.getAccessLevel()))
{
player.setInRefusalMode(true);
}
if (Config.GM_STARTUP_AUTO_LIST && AdminCommandAccessRights.getInstance().hasAccess("admin_gmliston", player.getAccessLevel()))
{
GmListTable.getInstance().addGm(player, false);
}
else
{
GmListTable.getInstance().addGm(player, true);
}
}
}, 15);
if (Config.GM_SPECIAL_EFFECT)
{