Proper grandboss id for Fafurion.

This commit is contained in:
MobiusDev
2019-03-05 16:38:26 +00:00
parent c82a09c367
commit 89f7c2db29
2 changed files with 19 additions and 18 deletions

View File

@@ -26,4 +26,4 @@ INSERT IGNORE INTO `grandboss_data` (`boss_id`,`loc_x`,`loc_y`,`loc_z`,`heading`
(29348, 185062, -9605, -5499, 15640, 486021997, 79600), -- Lilith (29348, 185062, -9605, -5499, 15640, 486021997, 79600), -- Lilith
(26124, 0, 0, 0, 0, 13945521, 50920), -- Kelbim (26124, 0, 0, 0, 0, 13945521, 50920), -- Kelbim
(29305, 0, 0, 0, 0, 589355368, 51696), -- Helios (29305, 0, 0, 0, 0, 589355368, 51696), -- Helios
(29364, 180712, 210664, -14823, 22146, 412872295, 124077); -- Fafurion (19740, 180712, 210664, -14823, 22146, 412872295, 124077); -- Fafurion

View File

@@ -35,7 +35,8 @@ public class Fafurion extends AbstractNpcAI
{ {
// NPCs // NPCs
private static final int HEART_OF_TSUNAMI = 34488; private static final int HEART_OF_TSUNAMI = 34488;
private static final int FAFURION = 29364; private static final int FAFURION_GRANDBOSS_ID = 19740;
private static final int FAFURION_FINAL_FORM = 29364;
// Item // Item
private static final int FONDUS_STONE = 80322; private static final int FONDUS_STONE = 80322;
// Locations // Locations
@@ -55,10 +56,10 @@ public class Fafurion extends AbstractNpcAI
addStartNpc(HEART_OF_TSUNAMI); addStartNpc(HEART_OF_TSUNAMI);
addTalkId(HEART_OF_TSUNAMI); addTalkId(HEART_OF_TSUNAMI);
addFirstTalkId(HEART_OF_TSUNAMI); addFirstTalkId(HEART_OF_TSUNAMI);
addKillId(FAFURION); addKillId(FAFURION_FINAL_FORM);
// Unlock // Unlock
final StatsSet info = GrandBossManager.getInstance().getStatsSet(FAFURION); final StatsSet info = GrandBossManager.getInstance().getStatsSet(FAFURION_GRANDBOSS_ID);
final int status = GrandBossManager.getInstance().getBossStatus(FAFURION); final int status = GrandBossManager.getInstance().getBossStatus(FAFURION_GRANDBOSS_ID);
if (status == DEAD) if (status == DEAD)
{ {
final long time = info.getLong("respawn_time") - System.currentTimeMillis(); final long time = info.getLong("respawn_time") - System.currentTimeMillis();
@@ -68,12 +69,12 @@ public class Fafurion extends AbstractNpcAI
} }
else else
{ {
GrandBossManager.getInstance().setBossStatus(FAFURION, ALIVE); GrandBossManager.getInstance().setBossStatus(FAFURION_GRANDBOSS_ID, ALIVE);
} }
} }
else if (status != ALIVE) else if (status != ALIVE)
{ {
GrandBossManager.getInstance().setBossStatus(FAFURION, ALIVE); GrandBossManager.getInstance().setBossStatus(FAFURION_GRANDBOSS_ID, ALIVE);
} }
} }
@@ -85,32 +86,32 @@ public class Fafurion extends AbstractNpcAI
{ {
case "unlock_fafurion": case "unlock_fafurion":
{ {
GrandBossManager.getInstance().setBossStatus(FAFURION, ALIVE); GrandBossManager.getInstance().setBossStatus(FAFURION_GRANDBOSS_ID, ALIVE);
break; break;
} }
case "beginning": case "beginning":
{ {
if (GrandBossManager.getInstance().getBossStatus(FAFURION) == WAITING) if (GrandBossManager.getInstance().getBossStatus(FAFURION_GRANDBOSS_ID) == WAITING)
{ {
GrandBossManager.getInstance().setBossStatus(FAFURION, FIGHTING); GrandBossManager.getInstance().setBossStatus(FAFURION_GRANDBOSS_ID, FIGHTING);
bossInstance = addSpawn(FAFURION, FAFURION_SPAWN_LOC.getX(), FAFURION_SPAWN_LOC.getY(), FAFURION_SPAWN_LOC.getZ(), FAFURION_SPAWN_LOC.getHeading(), false, 0, false); bossInstance = addSpawn(FAFURION_FINAL_FORM, FAFURION_SPAWN_LOC.getX(), FAFURION_SPAWN_LOC.getY(), FAFURION_SPAWN_LOC.getZ(), FAFURION_SPAWN_LOC.getHeading(), false, 0, false);
startQuestTimer("resetRaid", RAID_DURATION * 60 * 60 * 1000, bossInstance, null); startQuestTimer("resetRaid", RAID_DURATION * 60 * 60 * 1000, bossInstance, null);
} }
break; break;
} }
case "resetRaid": case "resetRaid":
{ {
final int status = GrandBossManager.getInstance().getBossStatus(FAFURION); final int status = GrandBossManager.getInstance().getBossStatus(FAFURION_GRANDBOSS_ID);
if ((status > ALIVE) && (status < DEAD)) if ((status > ALIVE) && (status < DEAD))
{ {
GrandBossManager.getInstance().setBossStatus(FAFURION, ALIVE); GrandBossManager.getInstance().setBossStatus(FAFURION_GRANDBOSS_ID, ALIVE);
npc.deleteMe(); npc.deleteMe();
} }
break; break;
} }
case "enter_area": case "enter_area":
{ {
final int status = GrandBossManager.getInstance().getBossStatus(FAFURION); final int status = GrandBossManager.getInstance().getBossStatus(FAFURION_GRANDBOSS_ID);
if (player.isGM()) if (player.isGM())
{ {
player.teleToLocation(RAID_ENTER_LOC, true); player.teleToLocation(RAID_ENTER_LOC, true);
@@ -161,7 +162,7 @@ public class Fafurion extends AbstractNpcAI
} }
if (status == ALIVE) if (status == ALIVE)
{ {
GrandBossManager.getInstance().setBossStatus(FAFURION, WAITING); GrandBossManager.getInstance().setBossStatus(FAFURION_GRANDBOSS_ID, WAITING);
startQuestTimer("beginning", Config.FAFURION_WAIT_TIME * 60000, null, null); startQuestTimer("beginning", Config.FAFURION_WAIT_TIME * 60000, null, null);
} }
break; break;
@@ -178,11 +179,11 @@ public class Fafurion extends AbstractNpcAI
// { // {
// case FAFURION: // case FAFURION:
// { // {
GrandBossManager.getInstance().setBossStatus(FAFURION, DEAD); GrandBossManager.getInstance().setBossStatus(FAFURION_GRANDBOSS_ID, DEAD);
final long respawnTime = (Config.FAFURION_SPAWN_INTERVAL + getRandom(-Config.FAFURION_SPAWN_RANDOM, Config.FAFURION_SPAWN_RANDOM)) * 3600000; final long respawnTime = (Config.FAFURION_SPAWN_INTERVAL + getRandom(-Config.FAFURION_SPAWN_RANDOM, Config.FAFURION_SPAWN_RANDOM)) * 3600000;
final StatsSet info = GrandBossManager.getInstance().getStatsSet(FAFURION); final StatsSet info = GrandBossManager.getInstance().getStatsSet(FAFURION_GRANDBOSS_ID);
info.set("respawn_time", System.currentTimeMillis() + respawnTime); info.set("respawn_time", System.currentTimeMillis() + respawnTime);
GrandBossManager.getInstance().setStatsSet(FAFURION, info); GrandBossManager.getInstance().setStatsSet(FAFURION_GRANDBOSS_ID, info);
startQuestTimer("unlock_fafurion", respawnTime, null, null); startQuestTimer("unlock_fafurion", respawnTime, null, null);
// break; // break;
// } // }