From e11854b0f4cb76bb2838e57c7583087c15ac5ead Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Mon, 20 Apr 2020 20:53:06 +0000 Subject: [PATCH] Use Instance as config reference to remove SeedOfDestruction buffs. Contributed by pecanha. --- .../SeedOfDestruction/SeedOfDestruction.java | 17 ++++++++++++++--- .../SeedOfDestruction/SeedOfDestruction.java | 17 ++++++++++++++--- 2 files changed, 28 insertions(+), 6 deletions(-) diff --git a/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/scripts/ai/areas/Gracia/instances/SeedOfDestruction/SeedOfDestruction.java b/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/scripts/ai/areas/Gracia/instances/SeedOfDestruction/SeedOfDestruction.java index 33a151b247..cc8d606498 100644 --- a/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/scripts/ai/areas/Gracia/instances/SeedOfDestruction/SeedOfDestruction.java +++ b/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/scripts/ai/areas/Gracia/instances/SeedOfDestruction/SeedOfDestruction.java @@ -900,6 +900,7 @@ public class SeedOfDestruction extends AbstractNpcAI { return 0; } + world = new SODWorld(System.currentTimeMillis() + 5400000); world.setInstance(InstanceManager.getInstance().createDynamicInstance(INSTANCE_ID)); InstanceManager.getInstance().addWorld(world); @@ -913,6 +914,7 @@ public class SeedOfDestruction extends AbstractNpcAI } } LOGGER.info("Seed of Destruction started " + INSTANCE_ID + " Instance: " + instanceId + " created by player: " + player.getName()); + ((SODWorld) world).ZoneWaitForTP = true; teleto.instanceId = instanceId; @@ -921,7 +923,10 @@ public class SeedOfDestruction extends AbstractNpcAI player.sendMessage("Welcome to Seed of Destruction. Time to finish the instance is 130 minutes."); InstanceManager.getInstance().setInstanceTime(player.getObjectId(), INSTANCE_ID, (System.currentTimeMillis())); teleportplayer(player, teleto, (SODWorld) world); - removeBuffs(player); + if (InstanceManager.getInstance().getInstance(instanceId).isRemoveBuffEnabled()) + { + removeBuffs(player); + } world.addAllowed(player); } else if (player.getParty().getCommandChannel() != null) @@ -931,7 +936,10 @@ public class SeedOfDestruction extends AbstractNpcAI player.sendMessage("Welcome to Seed of Destruction. Time to finish the instance is 130 minutes."); InstanceManager.getInstance().setInstanceTime(channelMember.getObjectId(), INSTANCE_ID, (System.currentTimeMillis())); teleportplayer(channelMember, teleto, (SODWorld) world); - removeBuffs(channelMember); + if (InstanceManager.getInstance().getInstance(instanceId).isRemoveBuffEnabled()) + { + removeBuffs(channelMember); + } world.addAllowed(channelMember); } } @@ -942,7 +950,10 @@ public class SeedOfDestruction extends AbstractNpcAI player.sendMessage("Welcome to Seed of Destruction. Time to finish the instance is 130 minutes."); InstanceManager.getInstance().setInstanceTime(partyMember.getObjectId(), INSTANCE_ID, (System.currentTimeMillis())); teleportplayer(partyMember, teleto, (SODWorld) world); - removeBuffs(partyMember); + if (InstanceManager.getInstance().getInstance(instanceId).isRemoveBuffEnabled()) + { + removeBuffs(partyMember); + } world.addAllowed(partyMember); } } diff --git a/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/ai/areas/Gracia/instances/SeedOfDestruction/SeedOfDestruction.java b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/ai/areas/Gracia/instances/SeedOfDestruction/SeedOfDestruction.java index 33a151b247..cc8d606498 100644 --- a/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/ai/areas/Gracia/instances/SeedOfDestruction/SeedOfDestruction.java +++ b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/ai/areas/Gracia/instances/SeedOfDestruction/SeedOfDestruction.java @@ -900,6 +900,7 @@ public class SeedOfDestruction extends AbstractNpcAI { return 0; } + world = new SODWorld(System.currentTimeMillis() + 5400000); world.setInstance(InstanceManager.getInstance().createDynamicInstance(INSTANCE_ID)); InstanceManager.getInstance().addWorld(world); @@ -913,6 +914,7 @@ public class SeedOfDestruction extends AbstractNpcAI } } LOGGER.info("Seed of Destruction started " + INSTANCE_ID + " Instance: " + instanceId + " created by player: " + player.getName()); + ((SODWorld) world).ZoneWaitForTP = true; teleto.instanceId = instanceId; @@ -921,7 +923,10 @@ public class SeedOfDestruction extends AbstractNpcAI player.sendMessage("Welcome to Seed of Destruction. Time to finish the instance is 130 minutes."); InstanceManager.getInstance().setInstanceTime(player.getObjectId(), INSTANCE_ID, (System.currentTimeMillis())); teleportplayer(player, teleto, (SODWorld) world); - removeBuffs(player); + if (InstanceManager.getInstance().getInstance(instanceId).isRemoveBuffEnabled()) + { + removeBuffs(player); + } world.addAllowed(player); } else if (player.getParty().getCommandChannel() != null) @@ -931,7 +936,10 @@ public class SeedOfDestruction extends AbstractNpcAI player.sendMessage("Welcome to Seed of Destruction. Time to finish the instance is 130 minutes."); InstanceManager.getInstance().setInstanceTime(channelMember.getObjectId(), INSTANCE_ID, (System.currentTimeMillis())); teleportplayer(channelMember, teleto, (SODWorld) world); - removeBuffs(channelMember); + if (InstanceManager.getInstance().getInstance(instanceId).isRemoveBuffEnabled()) + { + removeBuffs(channelMember); + } world.addAllowed(channelMember); } } @@ -942,7 +950,10 @@ public class SeedOfDestruction extends AbstractNpcAI player.sendMessage("Welcome to Seed of Destruction. Time to finish the instance is 130 minutes."); InstanceManager.getInstance().setInstanceTime(partyMember.getObjectId(), INSTANCE_ID, (System.currentTimeMillis())); teleportplayer(partyMember, teleto, (SODWorld) world); - removeBuffs(partyMember); + if (InstanceManager.getInstance().getInstance(instanceId).isRemoveBuffEnabled()) + { + removeBuffs(partyMember); + } world.addAllowed(partyMember); } }