Stop attacking admin when using invisible.

Contributed by facab.
This commit is contained in:
MobiusDev
2018-06-16 22:44:33 +00:00
parent 42f1fdd132
commit 4f9bf81f74
8 changed files with 168 additions and 4 deletions

View File

@@ -19,6 +19,7 @@ package handlers.admincommandhandlers;
import java.util.Arrays; import java.util.Arrays;
import java.util.StringTokenizer; import java.util.StringTokenizer;
import com.l2jmobius.gameserver.ai.CtrlIntention;
import com.l2jmobius.gameserver.enums.Movie; import com.l2jmobius.gameserver.enums.Movie;
import com.l2jmobius.gameserver.enums.Team; import com.l2jmobius.gameserver.enums.Team;
import com.l2jmobius.gameserver.handler.IAdminCommandHandler; import com.l2jmobius.gameserver.handler.IAdminCommandHandler;
@@ -125,6 +126,16 @@ public class AdminEffects implements IAdminCommandHandler
activeChar.setInvisible(true); activeChar.setInvisible(true);
activeChar.broadcastUserInfo(); activeChar.broadcastUserInfo();
activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar)); activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar));
L2World.getInstance().forEachVisibleObject(activeChar, L2Character.class, target ->
{
if ((target != null) && (target.getTarget() == activeChar))
{
target.setTarget(null);
target.abortAttack();
target.abortCast();
target.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
}
});
BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen."); BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen.");
} }
else else
@@ -144,6 +155,16 @@ public class AdminEffects implements IAdminCommandHandler
activeChar.setInvisible(true); activeChar.setInvisible(true);
activeChar.broadcastUserInfo(); activeChar.broadcastUserInfo();
activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar)); activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar));
L2World.getInstance().forEachVisibleObject(activeChar, L2Character.class, target ->
{
if ((target != null) && (target.getTarget() == activeChar))
{
target.setTarget(null);
target.abortAttack();
target.abortCast();
target.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
}
});
BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen."); BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen.");
} }
else if (command.startsWith("admin_vis")) else if (command.startsWith("admin_vis"))

View File

@@ -19,6 +19,7 @@ package handlers.admincommandhandlers;
import java.util.Arrays; import java.util.Arrays;
import java.util.StringTokenizer; import java.util.StringTokenizer;
import com.l2jmobius.gameserver.ai.CtrlIntention;
import com.l2jmobius.gameserver.enums.Movie; import com.l2jmobius.gameserver.enums.Movie;
import com.l2jmobius.gameserver.enums.Team; import com.l2jmobius.gameserver.enums.Team;
import com.l2jmobius.gameserver.handler.IAdminCommandHandler; import com.l2jmobius.gameserver.handler.IAdminCommandHandler;
@@ -125,6 +126,16 @@ public class AdminEffects implements IAdminCommandHandler
activeChar.setInvisible(true); activeChar.setInvisible(true);
activeChar.broadcastUserInfo(); activeChar.broadcastUserInfo();
activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar)); activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar));
L2World.getInstance().forEachVisibleObject(activeChar, L2Character.class, target ->
{
if ((target != null) && (target.getTarget() == activeChar))
{
target.setTarget(null);
target.abortAttack();
target.abortCast();
target.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
}
});
BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen."); BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen.");
} }
else else
@@ -144,6 +155,16 @@ public class AdminEffects implements IAdminCommandHandler
activeChar.setInvisible(true); activeChar.setInvisible(true);
activeChar.broadcastUserInfo(); activeChar.broadcastUserInfo();
activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar)); activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar));
L2World.getInstance().forEachVisibleObject(activeChar, L2Character.class, target ->
{
if ((target != null) && (target.getTarget() == activeChar))
{
target.setTarget(null);
target.abortAttack();
target.abortCast();
target.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
}
});
BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen."); BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen.");
} }
else if (command.startsWith("admin_vis")) else if (command.startsWith("admin_vis"))

View File

@@ -19,6 +19,7 @@ package handlers.admincommandhandlers;
import java.util.Arrays; import java.util.Arrays;
import java.util.StringTokenizer; import java.util.StringTokenizer;
import com.l2jmobius.gameserver.ai.CtrlIntention;
import com.l2jmobius.gameserver.enums.Movie; import com.l2jmobius.gameserver.enums.Movie;
import com.l2jmobius.gameserver.enums.Team; import com.l2jmobius.gameserver.enums.Team;
import com.l2jmobius.gameserver.handler.IAdminCommandHandler; import com.l2jmobius.gameserver.handler.IAdminCommandHandler;
@@ -125,6 +126,16 @@ public class AdminEffects implements IAdminCommandHandler
activeChar.setInvisible(true); activeChar.setInvisible(true);
activeChar.broadcastUserInfo(); activeChar.broadcastUserInfo();
activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar)); activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar));
L2World.getInstance().forEachVisibleObject(activeChar, L2Character.class, target ->
{
if ((target != null) && (target.getTarget() == activeChar))
{
target.setTarget(null);
target.abortAttack();
target.abortCast();
target.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
}
});
BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen."); BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen.");
} }
else else
@@ -144,6 +155,16 @@ public class AdminEffects implements IAdminCommandHandler
activeChar.setInvisible(true); activeChar.setInvisible(true);
activeChar.broadcastUserInfo(); activeChar.broadcastUserInfo();
activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar)); activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar));
L2World.getInstance().forEachVisibleObject(activeChar, L2Character.class, target ->
{
if ((target != null) && (target.getTarget() == activeChar))
{
target.setTarget(null);
target.abortAttack();
target.abortCast();
target.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
}
});
BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen."); BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen.");
} }
else if (command.startsWith("admin_vis")) else if (command.startsWith("admin_vis"))

View File

@@ -19,6 +19,7 @@ package handlers.admincommandhandlers;
import java.util.Arrays; import java.util.Arrays;
import java.util.StringTokenizer; import java.util.StringTokenizer;
import com.l2jmobius.gameserver.ai.CtrlIntention;
import com.l2jmobius.gameserver.enums.Movie; import com.l2jmobius.gameserver.enums.Movie;
import com.l2jmobius.gameserver.enums.Team; import com.l2jmobius.gameserver.enums.Team;
import com.l2jmobius.gameserver.handler.IAdminCommandHandler; import com.l2jmobius.gameserver.handler.IAdminCommandHandler;
@@ -125,6 +126,16 @@ public class AdminEffects implements IAdminCommandHandler
activeChar.setInvisible(true); activeChar.setInvisible(true);
activeChar.broadcastUserInfo(); activeChar.broadcastUserInfo();
activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar)); activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar));
L2World.getInstance().forEachVisibleObject(activeChar, L2Character.class, target ->
{
if ((target != null) && (target.getTarget() == activeChar))
{
target.setTarget(null);
target.abortAttack();
target.abortCast();
target.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
}
});
BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen."); BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen.");
} }
else else
@@ -144,6 +155,16 @@ public class AdminEffects implements IAdminCommandHandler
activeChar.setInvisible(true); activeChar.setInvisible(true);
activeChar.broadcastUserInfo(); activeChar.broadcastUserInfo();
activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar)); activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar));
L2World.getInstance().forEachVisibleObject(activeChar, L2Character.class, target ->
{
if ((target != null) && (target.getTarget() == activeChar))
{
target.setTarget(null);
target.abortAttack();
target.abortCast();
target.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
}
});
BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen."); BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen.");
} }
else if (command.startsWith("admin_vis")) else if (command.startsWith("admin_vis"))

View File

@@ -18,6 +18,7 @@ package handlers.admincommandhandlers;
import java.util.StringTokenizer; import java.util.StringTokenizer;
import com.l2jmobius.gameserver.ai.CtrlIntention;
import com.l2jmobius.gameserver.enums.Team; import com.l2jmobius.gameserver.enums.Team;
import com.l2jmobius.gameserver.handler.IAdminCommandHandler; import com.l2jmobius.gameserver.handler.IAdminCommandHandler;
import com.l2jmobius.gameserver.model.L2Object; import com.l2jmobius.gameserver.model.L2Object;
@@ -114,8 +115,16 @@ public class AdminEffects implements IAdminCommandHandler
{ {
activeChar.setInvisible(true); activeChar.setInvisible(true);
activeChar.broadcastUserInfo(); activeChar.broadcastUserInfo();
activeChar.decayMe(); L2World.getInstance().forEachVisibleObject(activeChar, L2Character.class, target ->
activeChar.spawnMe(); {
if ((target != null) && (target.getTarget() == activeChar))
{
target.setTarget(null);
target.abortAttack();
target.abortCast();
target.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
}
});
BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen."); BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen.");
} }
else else
@@ -132,8 +141,16 @@ public class AdminEffects implements IAdminCommandHandler
{ {
activeChar.setInvisible(true); activeChar.setInvisible(true);
activeChar.broadcastUserInfo(); activeChar.broadcastUserInfo();
activeChar.decayMe(); L2World.getInstance().forEachVisibleObject(activeChar, L2Character.class, target ->
activeChar.spawnMe(); {
if ((target != null) && (target.getTarget() == activeChar))
{
target.setTarget(null);
target.abortAttack();
target.abortCast();
target.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
}
});
BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen."); BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen.");
} }
else if (command.startsWith("admin_vis")) else if (command.startsWith("admin_vis"))

View File

@@ -19,6 +19,7 @@ package handlers.admincommandhandlers;
import java.util.Arrays; import java.util.Arrays;
import java.util.StringTokenizer; import java.util.StringTokenizer;
import com.l2jmobius.gameserver.ai.CtrlIntention;
import com.l2jmobius.gameserver.enums.Movie; import com.l2jmobius.gameserver.enums.Movie;
import com.l2jmobius.gameserver.enums.Team; import com.l2jmobius.gameserver.enums.Team;
import com.l2jmobius.gameserver.handler.IAdminCommandHandler; import com.l2jmobius.gameserver.handler.IAdminCommandHandler;
@@ -125,6 +126,16 @@ public class AdminEffects implements IAdminCommandHandler
activeChar.setInvisible(true); activeChar.setInvisible(true);
activeChar.broadcastUserInfo(); activeChar.broadcastUserInfo();
activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar)); activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar));
L2World.getInstance().forEachVisibleObject(activeChar, L2Character.class, target ->
{
if ((target != null) && (target.getTarget() == activeChar))
{
target.setTarget(null);
target.abortAttack();
target.abortCast();
target.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
}
});
BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen."); BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen.");
} }
else else
@@ -144,6 +155,16 @@ public class AdminEffects implements IAdminCommandHandler
activeChar.setInvisible(true); activeChar.setInvisible(true);
activeChar.broadcastUserInfo(); activeChar.broadcastUserInfo();
activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar)); activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar));
L2World.getInstance().forEachVisibleObject(activeChar, L2Character.class, target ->
{
if ((target != null) && (target.getTarget() == activeChar))
{
target.setTarget(null);
target.abortAttack();
target.abortCast();
target.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
}
});
BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen."); BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen.");
} }
else if (command.startsWith("admin_vis")) else if (command.startsWith("admin_vis"))

View File

@@ -19,6 +19,7 @@ package handlers.admincommandhandlers;
import java.util.Arrays; import java.util.Arrays;
import java.util.StringTokenizer; import java.util.StringTokenizer;
import com.l2jmobius.gameserver.ai.CtrlIntention;
import com.l2jmobius.gameserver.enums.Movie; import com.l2jmobius.gameserver.enums.Movie;
import com.l2jmobius.gameserver.enums.Team; import com.l2jmobius.gameserver.enums.Team;
import com.l2jmobius.gameserver.handler.IAdminCommandHandler; import com.l2jmobius.gameserver.handler.IAdminCommandHandler;
@@ -125,6 +126,16 @@ public class AdminEffects implements IAdminCommandHandler
activeChar.setInvisible(true); activeChar.setInvisible(true);
activeChar.broadcastUserInfo(); activeChar.broadcastUserInfo();
activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar)); activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar));
L2World.getInstance().forEachVisibleObject(activeChar, L2Character.class, target ->
{
if ((target != null) && (target.getTarget() == activeChar))
{
target.setTarget(null);
target.abortAttack();
target.abortCast();
target.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
}
});
BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen."); BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen.");
} }
else else
@@ -144,6 +155,16 @@ public class AdminEffects implements IAdminCommandHandler
activeChar.setInvisible(true); activeChar.setInvisible(true);
activeChar.broadcastUserInfo(); activeChar.broadcastUserInfo();
activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar)); activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar));
L2World.getInstance().forEachVisibleObject(activeChar, L2Character.class, target ->
{
if ((target != null) && (target.getTarget() == activeChar))
{
target.setTarget(null);
target.abortAttack();
target.abortCast();
target.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
}
});
BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen."); BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen.");
} }
else if (command.startsWith("admin_vis")) else if (command.startsWith("admin_vis"))

View File

@@ -19,6 +19,7 @@ package handlers.admincommandhandlers;
import java.util.Arrays; import java.util.Arrays;
import java.util.StringTokenizer; import java.util.StringTokenizer;
import com.l2jmobius.gameserver.ai.CtrlIntention;
import com.l2jmobius.gameserver.enums.Movie; import com.l2jmobius.gameserver.enums.Movie;
import com.l2jmobius.gameserver.enums.Team; import com.l2jmobius.gameserver.enums.Team;
import com.l2jmobius.gameserver.handler.IAdminCommandHandler; import com.l2jmobius.gameserver.handler.IAdminCommandHandler;
@@ -125,6 +126,16 @@ public class AdminEffects implements IAdminCommandHandler
activeChar.setInvisible(true); activeChar.setInvisible(true);
activeChar.broadcastUserInfo(); activeChar.broadcastUserInfo();
activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar)); activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar));
L2World.getInstance().forEachVisibleObject(activeChar, L2Character.class, target ->
{
if ((target != null) && (target.getTarget() == activeChar))
{
target.setTarget(null);
target.abortAttack();
target.abortCast();
target.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
}
});
BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen."); BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen.");
} }
else else
@@ -144,6 +155,16 @@ public class AdminEffects implements IAdminCommandHandler
activeChar.setInvisible(true); activeChar.setInvisible(true);
activeChar.broadcastUserInfo(); activeChar.broadcastUserInfo();
activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar)); activeChar.sendPacket(new ExUserInfoAbnormalVisualEffect(activeChar));
L2World.getInstance().forEachVisibleObject(activeChar, L2Character.class, target ->
{
if ((target != null) && (target.getTarget() == activeChar))
{
target.setTarget(null);
target.abortAttack();
target.abortCast();
target.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
}
});
BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen."); BuilderUtil.sendSysMessage(activeChar, "Now, you cannot be seen.");
} }
else if (command.startsWith("admin_vis")) else if (command.startsWith("admin_vis"))