Fixed Tauti onAttack method starting quest timer with deleted NPC.

This commit is contained in:
MobiusDevelopment
2020-04-05 11:00:58 +00:00
parent f912c49c83
commit 601081c070
8 changed files with 40 additions and 16 deletions

View File

@@ -123,9 +123,11 @@ public class TautiWarzone extends AbstractInstance
} }
case "SPAWN_AXE": case "SPAWN_AXE":
{ {
final Npc axe = addSpawn(npc.getId() == TAUTI_EXTREME ? TAUTI_EXTREME_AXE : TAUTI_COMMON_AXE, npc, false, 0, false, npc.getInstanceId()); final Instance world = player.getInstanceWorld();
final Npc axe = addSpawn(world.getTemplateId() == EXTREME_TEMPLATE_ID ? TAUTI_EXTREME_AXE : TAUTI_COMMON_AXE, world.getParameters().getObject("AXE_LOCATION", Location.class), false, 0, false, world.getId());
axe.setRandomWalking(false); axe.setRandomWalking(false);
axe.setImmobilized(true); axe.setImmobilized(true);
world.getParameters().remove("AXE_LOCATION");
break; break;
} }
case "WORLD_STATUS_CHECK": case "WORLD_STATUS_CHECK":
@@ -204,8 +206,9 @@ public class TautiWarzone extends AbstractInstance
if (world.isStatus(5) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.15))) if (world.isStatus(5) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.15)))
{ {
world.setStatus(6); world.setStatus(6);
world.setParameter("AXE_LOCATION", npc.getLocation());
npc.deleteMe(); npc.deleteMe();
startQuestTimer("SPAWN_AXE", 15000, npc, null, false); startQuestTimer("SPAWN_AXE", 15000, null, attacker, false);
playMovie(world.getPlayers(), Movie.SC_TAUTI_PHASE); playMovie(world.getPlayers(), Movie.SC_TAUTI_PHASE);
} }
if (world.isStatus(4)) if (world.isStatus(4))

View File

@@ -123,9 +123,11 @@ public class TautiWarzone extends AbstractInstance
} }
case "SPAWN_AXE": case "SPAWN_AXE":
{ {
final Npc axe = addSpawn(npc.getId() == TAUTI_EXTREME ? TAUTI_EXTREME_AXE : TAUTI_COMMON_AXE, npc, false, 0, false, npc.getInstanceId()); final Instance world = player.getInstanceWorld();
final Npc axe = addSpawn(world.getTemplateId() == EXTREME_TEMPLATE_ID ? TAUTI_EXTREME_AXE : TAUTI_COMMON_AXE, world.getParameters().getObject("AXE_LOCATION", Location.class), false, 0, false, world.getId());
axe.setRandomWalking(false); axe.setRandomWalking(false);
axe.setImmobilized(true); axe.setImmobilized(true);
world.getParameters().remove("AXE_LOCATION");
break; break;
} }
case "WORLD_STATUS_CHECK": case "WORLD_STATUS_CHECK":
@@ -204,8 +206,9 @@ public class TautiWarzone extends AbstractInstance
if (world.isStatus(5) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.15))) if (world.isStatus(5) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.15)))
{ {
world.setStatus(6); world.setStatus(6);
world.setParameter("AXE_LOCATION", npc.getLocation());
npc.deleteMe(); npc.deleteMe();
startQuestTimer("SPAWN_AXE", 15000, npc, null, false); startQuestTimer("SPAWN_AXE", 15000, null, attacker, false);
playMovie(world.getPlayers(), Movie.SC_TAUTI_PHASE); playMovie(world.getPlayers(), Movie.SC_TAUTI_PHASE);
} }
if (world.isStatus(4)) if (world.isStatus(4))

View File

@@ -123,9 +123,11 @@ public class TautiWarzone extends AbstractInstance
} }
case "SPAWN_AXE": case "SPAWN_AXE":
{ {
final Npc axe = addSpawn(npc.getId() == TAUTI_EXTREME ? TAUTI_EXTREME_AXE : TAUTI_COMMON_AXE, npc, false, 0, false, npc.getInstanceId()); final Instance world = player.getInstanceWorld();
final Npc axe = addSpawn(world.getTemplateId() == EXTREME_TEMPLATE_ID ? TAUTI_EXTREME_AXE : TAUTI_COMMON_AXE, world.getParameters().getObject("AXE_LOCATION", Location.class), false, 0, false, world.getId());
axe.setRandomWalking(false); axe.setRandomWalking(false);
axe.setImmobilized(true); axe.setImmobilized(true);
world.getParameters().remove("AXE_LOCATION");
break; break;
} }
case "WORLD_STATUS_CHECK": case "WORLD_STATUS_CHECK":
@@ -204,8 +206,9 @@ public class TautiWarzone extends AbstractInstance
if (world.isStatus(5) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.15))) if (world.isStatus(5) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.15)))
{ {
world.setStatus(6); world.setStatus(6);
world.setParameter("AXE_LOCATION", npc.getLocation());
npc.deleteMe(); npc.deleteMe();
startQuestTimer("SPAWN_AXE", 15000, npc, null, false); startQuestTimer("SPAWN_AXE", 15000, null, attacker, false);
playMovie(world.getPlayers(), Movie.SC_TAUTI_PHASE); playMovie(world.getPlayers(), Movie.SC_TAUTI_PHASE);
} }
if (world.isStatus(4)) if (world.isStatus(4))

View File

@@ -123,9 +123,11 @@ public class TautiWarzone extends AbstractInstance
} }
case "SPAWN_AXE": case "SPAWN_AXE":
{ {
final Npc axe = addSpawn(npc.getId() == TAUTI_EXTREME ? TAUTI_EXTREME_AXE : TAUTI_COMMON_AXE, npc, false, 0, false, npc.getInstanceId()); final Instance world = player.getInstanceWorld();
final Npc axe = addSpawn(world.getTemplateId() == EXTREME_TEMPLATE_ID ? TAUTI_EXTREME_AXE : TAUTI_COMMON_AXE, world.getParameters().getObject("AXE_LOCATION", Location.class), false, 0, false, world.getId());
axe.setRandomWalking(false); axe.setRandomWalking(false);
axe.setImmobilized(true); axe.setImmobilized(true);
world.getParameters().remove("AXE_LOCATION");
break; break;
} }
case "WORLD_STATUS_CHECK": case "WORLD_STATUS_CHECK":
@@ -204,8 +206,9 @@ public class TautiWarzone extends AbstractInstance
if (world.isStatus(5) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.15))) if (world.isStatus(5) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.15)))
{ {
world.setStatus(6); world.setStatus(6);
world.setParameter("AXE_LOCATION", npc.getLocation());
npc.deleteMe(); npc.deleteMe();
startQuestTimer("SPAWN_AXE", 15000, npc, null, false); startQuestTimer("SPAWN_AXE", 15000, null, attacker, false);
playMovie(world.getPlayers(), Movie.SC_TAUTI_PHASE); playMovie(world.getPlayers(), Movie.SC_TAUTI_PHASE);
} }
if (world.isStatus(4)) if (world.isStatus(4))

View File

@@ -123,9 +123,11 @@ public class TautiWarzone extends AbstractInstance
} }
case "SPAWN_AXE": case "SPAWN_AXE":
{ {
final Npc axe = addSpawn(npc.getId() == TAUTI_EXTREME ? TAUTI_EXTREME_AXE : TAUTI_COMMON_AXE, npc, false, 0, false, npc.getInstanceId()); final Instance world = player.getInstanceWorld();
final Npc axe = addSpawn(world.getTemplateId() == EXTREME_TEMPLATE_ID ? TAUTI_EXTREME_AXE : TAUTI_COMMON_AXE, world.getParameters().getObject("AXE_LOCATION", Location.class), false, 0, false, world.getId());
axe.setRandomWalking(false); axe.setRandomWalking(false);
axe.setImmobilized(true); axe.setImmobilized(true);
world.getParameters().remove("AXE_LOCATION");
break; break;
} }
case "WORLD_STATUS_CHECK": case "WORLD_STATUS_CHECK":
@@ -204,8 +206,9 @@ public class TautiWarzone extends AbstractInstance
if (world.isStatus(5) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.15))) if (world.isStatus(5) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.15)))
{ {
world.setStatus(6); world.setStatus(6);
world.setParameter("AXE_LOCATION", npc.getLocation());
npc.deleteMe(); npc.deleteMe();
startQuestTimer("SPAWN_AXE", 15000, npc, null, false); startQuestTimer("SPAWN_AXE", 15000, null, attacker, false);
playMovie(world.getPlayers(), Movie.SC_TAUTI_PHASE); playMovie(world.getPlayers(), Movie.SC_TAUTI_PHASE);
} }
if (world.isStatus(4)) if (world.isStatus(4))

View File

@@ -123,9 +123,11 @@ public class TautiWarzone extends AbstractInstance
} }
case "SPAWN_AXE": case "SPAWN_AXE":
{ {
final Npc axe = addSpawn(npc.getId() == TAUTI_EXTREME ? TAUTI_EXTREME_AXE : TAUTI_COMMON_AXE, npc, false, 0, false, npc.getInstanceId()); final Instance world = player.getInstanceWorld();
final Npc axe = addSpawn(world.getTemplateId() == EXTREME_TEMPLATE_ID ? TAUTI_EXTREME_AXE : TAUTI_COMMON_AXE, world.getParameters().getObject("AXE_LOCATION", Location.class), false, 0, false, world.getId());
axe.setRandomWalking(false); axe.setRandomWalking(false);
axe.setImmobilized(true); axe.setImmobilized(true);
world.getParameters().remove("AXE_LOCATION");
break; break;
} }
case "WORLD_STATUS_CHECK": case "WORLD_STATUS_CHECK":
@@ -204,8 +206,9 @@ public class TautiWarzone extends AbstractInstance
if (world.isStatus(5) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.15))) if (world.isStatus(5) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.15)))
{ {
world.setStatus(6); world.setStatus(6);
world.setParameter("AXE_LOCATION", npc.getLocation());
npc.deleteMe(); npc.deleteMe();
startQuestTimer("SPAWN_AXE", 15000, npc, null, false); startQuestTimer("SPAWN_AXE", 15000, null, attacker, false);
playMovie(world.getPlayers(), Movie.SC_TAUTI_PHASE); playMovie(world.getPlayers(), Movie.SC_TAUTI_PHASE);
} }
if (world.isStatus(4)) if (world.isStatus(4))

View File

@@ -123,9 +123,11 @@ public class TautiWarzone extends AbstractInstance
} }
case "SPAWN_AXE": case "SPAWN_AXE":
{ {
final Npc axe = addSpawn(npc.getId() == TAUTI_EXTREME ? TAUTI_EXTREME_AXE : TAUTI_COMMON_AXE, npc, false, 0, false, npc.getInstanceId()); final Instance world = player.getInstanceWorld();
final Npc axe = addSpawn(world.getTemplateId() == EXTREME_TEMPLATE_ID ? TAUTI_EXTREME_AXE : TAUTI_COMMON_AXE, world.getParameters().getObject("AXE_LOCATION", Location.class), false, 0, false, world.getId());
axe.setRandomWalking(false); axe.setRandomWalking(false);
axe.setImmobilized(true); axe.setImmobilized(true);
world.getParameters().remove("AXE_LOCATION");
break; break;
} }
case "WORLD_STATUS_CHECK": case "WORLD_STATUS_CHECK":
@@ -204,8 +206,9 @@ public class TautiWarzone extends AbstractInstance
if (world.isStatus(5) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.15))) if (world.isStatus(5) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.15)))
{ {
world.setStatus(6); world.setStatus(6);
world.setParameter("AXE_LOCATION", npc.getLocation());
npc.deleteMe(); npc.deleteMe();
startQuestTimer("SPAWN_AXE", 15000, npc, null, false); startQuestTimer("SPAWN_AXE", 15000, null, attacker, false);
playMovie(world.getPlayers(), Movie.SC_TAUTI_PHASE); playMovie(world.getPlayers(), Movie.SC_TAUTI_PHASE);
} }
if (world.isStatus(4)) if (world.isStatus(4))

View File

@@ -123,9 +123,11 @@ public class TautiWarzone extends AbstractInstance
} }
case "SPAWN_AXE": case "SPAWN_AXE":
{ {
final Npc axe = addSpawn(npc.getId() == TAUTI_EXTREME ? TAUTI_EXTREME_AXE : TAUTI_COMMON_AXE, npc, false, 0, false, npc.getInstanceId()); final Instance world = player.getInstanceWorld();
final Npc axe = addSpawn(world.getTemplateId() == EXTREME_TEMPLATE_ID ? TAUTI_EXTREME_AXE : TAUTI_COMMON_AXE, world.getParameters().getObject("AXE_LOCATION", Location.class), false, 0, false, world.getId());
axe.setRandomWalking(false); axe.setRandomWalking(false);
axe.setImmobilized(true); axe.setImmobilized(true);
world.getParameters().remove("AXE_LOCATION");
break; break;
} }
case "WORLD_STATUS_CHECK": case "WORLD_STATUS_CHECK":
@@ -204,8 +206,9 @@ public class TautiWarzone extends AbstractInstance
if (world.isStatus(5) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.15))) if (world.isStatus(5) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.15)))
{ {
world.setStatus(6); world.setStatus(6);
world.setParameter("AXE_LOCATION", npc.getLocation());
npc.deleteMe(); npc.deleteMe();
startQuestTimer("SPAWN_AXE", 15000, npc, null, false); startQuestTimer("SPAWN_AXE", 15000, null, attacker, false);
playMovie(world.getPlayers(), Movie.SC_TAUTI_PHASE); playMovie(world.getPlayers(), Movie.SC_TAUTI_PHASE);
} }
if (world.isStatus(4)) if (world.isStatus(4))