Noticias:

Debes de estar registrado para poder ver el contenido indicado. Registrate o Conectate

Menú Principal

Returning To Spawn Point

Iniciado por Swarlog, Ago 31, 2022, 08:29 PM

Tema anterior - Siguiente tema

Swarlog

Para que los BOSS vuelvan a su localización de spawn cuando no ocurre nada.

Index: java/com/l2jserver/gameserver/model/actor/L2Attackable.java
===================================================================
--- java/com/l2jserver/gameserver/model/actor/L2Attackable.java (revision 5622)
+++ java/com/l2jserver/gameserver/model/actor/L2Attackable.java (working copy)
@@ -2363,7 +2363,7 @@
  public void returnHome()
  {
  clearAggroList();
-
+ setisReturningToSpawnPoint(true);
  if (hasAI() && getSpawn() != null)
  getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new L2CharPosition(getSpawn().getLocx(), getSpawn().getLocy(), getSpawn().getLocz(), 0));
  }
Index: java/com/l2jserver/gameserver/model/actor/L2Character.java
===================================================================
--- java/com/l2jserver/gameserver/model/actor/L2Character.java (revision 5622)
+++ java/com/l2jserver/gameserver/model/actor/L2Character.java (working copy)
@@ -61,6 +61,7 @@
 import com.l2jserver.gameserver.model.L2World;
 import com.l2jserver.gameserver.model.L2WorldRegion;
 import com.l2jserver.gameserver.model.Location;
+import com.l2jserver.gameserver.model.actor.instance.L2GrandBossInstance;
 import com.l2jserver.gameserver.model.actor.instance.L2NpcInstance;
 import com.l2jserver.gameserver.model.actor.instance.L2NpcWalkerInstance;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
@@ -793,6 +794,11 @@
  if (isAttackingDisabled())
  return;
 
+ if (target instanceof L2GrandBossInstance && ((L2Attackable) target).isReturningToSpawnPoint())
+ {
+ return;
+ }
+
  if(!fireAttackListeners(target))
  {
  return;
@@ -6768,6 +6774,14 @@
  return;
  }
 
+ if (target instanceof L2GrandBossInstance && ((L2Attackable) target).isReturningToSpawnPoint())
+ {
+ abortAttack();
+ abortCast();
+ getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
+ return;
+ }
+
  // Check if over-hit is possible
  if (skill.isOverhit())
  {