Freya AI improvements.

This commit is contained in:
MobiusDev
2018-09-03 15:26:13 +00:00
parent 65b8374a32
commit 288c1cf4ad
5 changed files with 65 additions and 45 deletions

View File

@@ -294,6 +294,7 @@ public final class IceQueensCastleBattle extends AbstractInstance
{
final L2GrandBossInstance frey = (L2GrandBossInstance) addSpawn(FREYA_SPELLING, FREYA_SPELLING_SPAWN, false, 0, true, world.getInstanceId());
frey.setIsInvul(true);
frey.setRandomWalking(false);
frey.disableCoreAI(true);
manageTimer(world, 60, NpcStringId.TIME_REMAINING_UNTIL_NEXT_BATTLE);
world.setStatus(2);
@@ -355,6 +356,7 @@ public final class IceQueensCastleBattle extends AbstractInstance
}
case "STAGE_3_MOVIE":
{
freya.deleteMe();
manageMovie(world, Movie.SC_BOSS_FREYA_PHASECH_B);
startQuestTimer("STAGE_3_START", 21500, controller, null);
break;
@@ -374,7 +376,6 @@ public final class IceQueensCastleBattle extends AbstractInstance
}
}
}
freya.deleteMe();
final L2Npc frey = addSpawn((isHardMode ? FREYA_STAND_HARD : FREYA_STAND_EASY), FREYA_SPAWN, false, 0, true, world.getInstanceId());
world.setStatus(4);
world.setParameter("canSpawnMobs", true);
@@ -479,13 +480,6 @@ public final class IceQueensCastleBattle extends AbstractInstance
}
break;
}
case "FINISH_STAGE":
{
freya.teleToLocation(FREYA_CORPSE);
world.getNpc(SUPP_JINIA).deleteMe();
world.getNpc(SUPP_KEGOR).teleToLocation(KEGOR_FINISH);
break;
}
case "START_SPAWN":
{
for (L2Npc statues : getKnightStatues(world))
@@ -1142,6 +1136,17 @@ public final class IceQueensCastleBattle extends AbstractInstance
case FREYA_STAND_HARD:
{
world.setParameter("isSupportActive", false);
npc.teleToLocation(FREYA_CORPSE);
final L2Npc jinia = world.getNpc(SUPP_JINIA);
final L2Npc kegor = world.getNpc(SUPP_KEGOR);
if (jinia != null)
{
world.getNpc(SUPP_JINIA).deleteMe();
}
if (kegor != null)
{
world.getNpc(SUPP_KEGOR).teleToLocation(KEGOR_FINISH);
}
manageMovie(world, Movie.SC_BOSS_FREYA_ENDING_A);
manageDespawnMinions(world);
finishInstance(world);
@@ -1149,7 +1154,6 @@ public final class IceQueensCastleBattle extends AbstractInstance
cancelQuestTimer("GIVE_SUPPORT", controller, null);
cancelQuestTimer("CAST_BLIZZARD", controller, null);
cancelQuestTimer("FREYA_BUFF", controller, null);
startQuestTimer("FINISH_STAGE", 16000, controller, null);
startQuestTimer("FINISH_WORLD", 300000, controller, null);
break;
}