diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/instances/SanctumOfAnakim.xml b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/instances/SanctumOfAnakim.xml deleted file mode 100644 index 81f7d3beac..0000000000 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/instances/SanctumOfAnakim.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/instances/SanctumOfLilith.xml b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/instances/SanctumOfLilith.xml deleted file mode 100644 index 6e3699298d..0000000000 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/instances/SanctumOfLilith.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/instances/SevenSignsRBs/SevenSignsRBs.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/instances/SevenSignsRBs/SevenSignsRBs.java deleted file mode 100644 index b8ee1d4681..0000000000 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/instances/SevenSignsRBs/SevenSignsRBs.java +++ /dev/null @@ -1,252 +0,0 @@ -/* - * This file is part of the L2J Mobius project. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package instances.SevenSignsRBs; - -import java.util.List; - -import org.l2jmobius.gameserver.instancemanager.ZoneManager; -import org.l2jmobius.gameserver.model.Location; -import org.l2jmobius.gameserver.model.Party; -import org.l2jmobius.gameserver.model.actor.Creature; -import org.l2jmobius.gameserver.model.actor.Npc; -import org.l2jmobius.gameserver.model.actor.Player; -import org.l2jmobius.gameserver.model.instancezone.Instance; -import org.l2jmobius.gameserver.model.zone.type.NoRestartZone; - -import instances.AbstractInstance; - -/** - * @author RobikBobik - * @NOTE: Retail like work - * @TODO: When one RB die, the second will be invul for 5 minutes. - */ -public class SevenSignsRBs extends AbstractInstance -{ - // NPCs - private static final int ANAKIM_GATEKEEPER_SPIRIT = 31089; - private static final int LILITH_GATEKEEPER_SPIRIT = 31087; - private static final int GATEKEEPER_SPIRIT_OUT_TELEPORT = 31088; - private static final int ANAKIM = 25286; - private static final int LILITH = 25283; - - // Misc - private static final int ANAKIM_TEMPLATE_ID = 200; - private static final int LILITH_TEMPLATE_ID = 199; - - private static final int MAX_PLAYERS_IN_ZONE = 300; - - private static final NoRestartZone ANAKIM_ZONE = ZoneManager.getInstance().getZoneById(70052, NoRestartZone.class); - private static final NoRestartZone LILITH_ZONE = ZoneManager.getInstance().getZoneById(70053, NoRestartZone.class); - - // TELEPORTS - private static final Location[] TELEPORT_TO_DARK_ELVEN = - { - new Location(12168, 17149, -4575), - new Location(11688, 18219, -4585), - new Location(10502, 17112, -4588), - new Location(11169, 15922, -4585), - }; - - // TODO: When teleport from instance done. Enable it - /* - * private static final Location[] TELEPORT_TO_ADEN = { new Location(148053, 26935, -2206), new Location(148053, 28017, -2269), new Location(146558, 28017, -2269), new Location(146558, 26935, -2206), }; - */ - - public SevenSignsRBs() - { - super(ANAKIM_TEMPLATE_ID, LILITH_TEMPLATE_ID); - addStartNpc(ANAKIM_GATEKEEPER_SPIRIT, LILITH_GATEKEEPER_SPIRIT); - addTalkId(ANAKIM_GATEKEEPER_SPIRIT, LILITH_GATEKEEPER_SPIRIT, GATEKEEPER_SPIRIT_OUT_TELEPORT); - addKillId(ANAKIM, LILITH); - addAttackId(ANAKIM, LILITH); - addInstanceLeaveId(ANAKIM_TEMPLATE_ID, LILITH_TEMPLATE_ID); - } - - @Override - public String onAdvEvent(String event, Npc npc, Player player) - { - switch (event) - { - case "ANAKIM_ENTER": - { - if (player.isInParty()) - { - final Party party = player.getParty(); - final boolean isInCC = party.isInCommandChannel(); - final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); - if (members.size() > (MAX_PLAYERS_IN_ZONE - ANAKIM_ZONE.getPlayersInside().size())) - { - player.sendMessage("Lilith Sanctum reached 300 players. You cannot enter now."); - } - else - { - for (Player member : members) - { - if (!member.isInsideRadius3D(npc, 1000)) - { - player.sendMessage("Player " + member.getName() + " must go closer to Gatekeeper Spirit."); - } - enterInstance(member, npc, ANAKIM_TEMPLATE_ID); - } - } - } - else if (player.isGM()) - { - enterInstance(player, npc, ANAKIM_TEMPLATE_ID); - player.sendMessage("SYS: You have entered as GM/Admin to Anakim Instance"); - } - else - { - if (!player.isInsideRadius3D(npc, 1000)) - { - player.sendMessage("You must go closer to Gatekeeper Spirit."); - } - enterInstance(player, npc, ANAKIM_TEMPLATE_ID); - } - break; - } - case "LILITH_ENTER": - { - if (player.isInParty()) - { - final Party party = player.getParty(); - final boolean isInCC = party.isInCommandChannel(); - final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); - if (members.size() > (MAX_PLAYERS_IN_ZONE - LILITH_ZONE.getPlayersInside().size())) - { - player.sendMessage("Lilith Sanctum reached 300 players. You cannot enter now."); - } - else - { - for (Player member : members) - { - if (!member.isInsideRadius3D(npc, 1000)) - { - player.sendMessage("Player " + member.getName() + " must go closer to Gatekeeper Spirit."); - } - enterInstance(member, npc, LILITH_TEMPLATE_ID); - } - } - } - else if (player.isGM()) - { - enterInstance(player, npc, LILITH_TEMPLATE_ID); - player.sendMessage("SYS: You have entered as GM/Admin to Anakim Instance"); - } - else - { - if (!player.isInsideRadius3D(npc, 1000)) - { - player.sendMessage("You must go closer to Gatekeeper Spirit."); - } - enterInstance(player, npc, LILITH_TEMPLATE_ID); - } - break; - } - case "REMOVE_PLAYERS_FROM_ZONE_ANAKIM": - { - for (Creature charInside : ANAKIM_ZONE.getCharactersInside()) - { - if ((charInside != null) && charInside.isPlayer()) - { - charInside.teleToLocation(-20185 + getRandom(50), 13476 + getRandom(50), -4901); - } - } - break; - } - case "REMOVE_PLAYERS_FROM_ZONE_LILITH": - { - for (Creature charInside : LILITH_ZONE.getCharactersInside()) - { - if ((charInside != null) && charInside.isPlayer()) - { - charInside.teleToLocation(171346 + getRandom(50), -17599 + getRandom(50), -4901); - } - } - break; - } - case "TELEPORT_OUT": - { - // TODO: Different teleport location from instance. - // switch (player.getInstanceId()) - // { - // case ANAKIM_TEMPLATE_ID: - // { - // final Location destination = TELEPORT_TO_DARK_ELVEN[getRandom(TELEPORT_TO_DARK_ELVEN.length)]; - // player.teleToLocation(destination.getX() + getRandom(100), destination.getY() + getRandom(100), destination.getZ()); - // break; - // } - // case LILITH_TEMPLATE_ID: - // { - // final Location destination = TELEPORT_TO_ADEN[getRandom(TELEPORT_TO_ADEN.length)]; - // player.teleToLocation(destination.getX() + getRandom(100), destination.getY() + getRandom(100), destination.getZ()); - // break; - // } - // } - final Location destination = TELEPORT_TO_DARK_ELVEN[getRandom(TELEPORT_TO_DARK_ELVEN.length)]; - player.teleToLocation(destination.getX() + getRandom(100), destination.getY() + getRandom(100), destination.getZ()); - break; - } - case "ANAKIM_DEATH_CAST_LILITH_INVUL": - { - // TODO: When one RB die, the second will be invul for 5 minutes. - break; - } - case "LILITH_DEATH_CAST_ANAKIM_INVUL": - { - // TODO: When one RB die, the second will be invul for 5 minutes. - break; - } - } - return null; - } - - @Override - public String onKill(Npc npc, Player player, boolean isSummon) - { - switch (npc.getId()) - { - case ANAKIM: - { - // TODO: - // startQuestTimer("ANAKIM_DEATH_CAST_LILITH_INVUL", 1000, null, null); - startQuestTimer("REMOVE_PLAYERS_FROM_ZONE_ANAKIM", 600000, null, player); - addSpawn(GATEKEEPER_SPIRIT_OUT_TELEPORT, -6664, 18501, -5495, 0, false, 600000, false, npc.getInstanceId()); - break; - } - case LILITH: - { - // TODO: - // startQuestTimer("LILITH_DEATH_CAST_ANAKIM_INVUL", 1000, null, null); - startQuestTimer("REMOVE_PLAYERS_FROM_ZONE_LILITH", 600000, null, player); - addSpawn(GATEKEEPER_SPIRIT_OUT_TELEPORT, 185062, -9612, -5493, 0, false, 600000, false, npc.getInstanceId()); - break; - } - } - final Instance world = npc.getInstanceWorld(); - if (world != null) - { - world.finishInstance(); - } - return super.onKill(npc, player, isSummon); - } - - public static void main(String[] args) - { - new SevenSignsRBs(); - } -} diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/spawns/RaidbossSpawns.xml b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/spawns/RaidbossSpawns.xml index a702914b48..0cc89d7091 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/spawns/RaidbossSpawns.xml +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/spawns/RaidbossSpawns.xml @@ -1,5 +1,4 @@  - @@ -156,8 +155,6 @@ - - @@ -165,4 +162,10 @@ + + + + + + diff --git a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/instances/SanctumOfAnakim.xml b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/instances/SanctumOfAnakim.xml deleted file mode 100644 index 81f7d3beac..0000000000 --- a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/instances/SanctumOfAnakim.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - diff --git a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/instances/SanctumOfLilith.xml b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/instances/SanctumOfLilith.xml deleted file mode 100644 index 6e3699298d..0000000000 --- a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/instances/SanctumOfLilith.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - diff --git a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/instances/SevenSignsRBs/SevenSignsRBs.java b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/instances/SevenSignsRBs/SevenSignsRBs.java deleted file mode 100644 index b8ee1d4681..0000000000 --- a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/instances/SevenSignsRBs/SevenSignsRBs.java +++ /dev/null @@ -1,252 +0,0 @@ -/* - * This file is part of the L2J Mobius project. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package instances.SevenSignsRBs; - -import java.util.List; - -import org.l2jmobius.gameserver.instancemanager.ZoneManager; -import org.l2jmobius.gameserver.model.Location; -import org.l2jmobius.gameserver.model.Party; -import org.l2jmobius.gameserver.model.actor.Creature; -import org.l2jmobius.gameserver.model.actor.Npc; -import org.l2jmobius.gameserver.model.actor.Player; -import org.l2jmobius.gameserver.model.instancezone.Instance; -import org.l2jmobius.gameserver.model.zone.type.NoRestartZone; - -import instances.AbstractInstance; - -/** - * @author RobikBobik - * @NOTE: Retail like work - * @TODO: When one RB die, the second will be invul for 5 minutes. - */ -public class SevenSignsRBs extends AbstractInstance -{ - // NPCs - private static final int ANAKIM_GATEKEEPER_SPIRIT = 31089; - private static final int LILITH_GATEKEEPER_SPIRIT = 31087; - private static final int GATEKEEPER_SPIRIT_OUT_TELEPORT = 31088; - private static final int ANAKIM = 25286; - private static final int LILITH = 25283; - - // Misc - private static final int ANAKIM_TEMPLATE_ID = 200; - private static final int LILITH_TEMPLATE_ID = 199; - - private static final int MAX_PLAYERS_IN_ZONE = 300; - - private static final NoRestartZone ANAKIM_ZONE = ZoneManager.getInstance().getZoneById(70052, NoRestartZone.class); - private static final NoRestartZone LILITH_ZONE = ZoneManager.getInstance().getZoneById(70053, NoRestartZone.class); - - // TELEPORTS - private static final Location[] TELEPORT_TO_DARK_ELVEN = - { - new Location(12168, 17149, -4575), - new Location(11688, 18219, -4585), - new Location(10502, 17112, -4588), - new Location(11169, 15922, -4585), - }; - - // TODO: When teleport from instance done. Enable it - /* - * private static final Location[] TELEPORT_TO_ADEN = { new Location(148053, 26935, -2206), new Location(148053, 28017, -2269), new Location(146558, 28017, -2269), new Location(146558, 26935, -2206), }; - */ - - public SevenSignsRBs() - { - super(ANAKIM_TEMPLATE_ID, LILITH_TEMPLATE_ID); - addStartNpc(ANAKIM_GATEKEEPER_SPIRIT, LILITH_GATEKEEPER_SPIRIT); - addTalkId(ANAKIM_GATEKEEPER_SPIRIT, LILITH_GATEKEEPER_SPIRIT, GATEKEEPER_SPIRIT_OUT_TELEPORT); - addKillId(ANAKIM, LILITH); - addAttackId(ANAKIM, LILITH); - addInstanceLeaveId(ANAKIM_TEMPLATE_ID, LILITH_TEMPLATE_ID); - } - - @Override - public String onAdvEvent(String event, Npc npc, Player player) - { - switch (event) - { - case "ANAKIM_ENTER": - { - if (player.isInParty()) - { - final Party party = player.getParty(); - final boolean isInCC = party.isInCommandChannel(); - final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); - if (members.size() > (MAX_PLAYERS_IN_ZONE - ANAKIM_ZONE.getPlayersInside().size())) - { - player.sendMessage("Lilith Sanctum reached 300 players. You cannot enter now."); - } - else - { - for (Player member : members) - { - if (!member.isInsideRadius3D(npc, 1000)) - { - player.sendMessage("Player " + member.getName() + " must go closer to Gatekeeper Spirit."); - } - enterInstance(member, npc, ANAKIM_TEMPLATE_ID); - } - } - } - else if (player.isGM()) - { - enterInstance(player, npc, ANAKIM_TEMPLATE_ID); - player.sendMessage("SYS: You have entered as GM/Admin to Anakim Instance"); - } - else - { - if (!player.isInsideRadius3D(npc, 1000)) - { - player.sendMessage("You must go closer to Gatekeeper Spirit."); - } - enterInstance(player, npc, ANAKIM_TEMPLATE_ID); - } - break; - } - case "LILITH_ENTER": - { - if (player.isInParty()) - { - final Party party = player.getParty(); - final boolean isInCC = party.isInCommandChannel(); - final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); - if (members.size() > (MAX_PLAYERS_IN_ZONE - LILITH_ZONE.getPlayersInside().size())) - { - player.sendMessage("Lilith Sanctum reached 300 players. You cannot enter now."); - } - else - { - for (Player member : members) - { - if (!member.isInsideRadius3D(npc, 1000)) - { - player.sendMessage("Player " + member.getName() + " must go closer to Gatekeeper Spirit."); - } - enterInstance(member, npc, LILITH_TEMPLATE_ID); - } - } - } - else if (player.isGM()) - { - enterInstance(player, npc, LILITH_TEMPLATE_ID); - player.sendMessage("SYS: You have entered as GM/Admin to Anakim Instance"); - } - else - { - if (!player.isInsideRadius3D(npc, 1000)) - { - player.sendMessage("You must go closer to Gatekeeper Spirit."); - } - enterInstance(player, npc, LILITH_TEMPLATE_ID); - } - break; - } - case "REMOVE_PLAYERS_FROM_ZONE_ANAKIM": - { - for (Creature charInside : ANAKIM_ZONE.getCharactersInside()) - { - if ((charInside != null) && charInside.isPlayer()) - { - charInside.teleToLocation(-20185 + getRandom(50), 13476 + getRandom(50), -4901); - } - } - break; - } - case "REMOVE_PLAYERS_FROM_ZONE_LILITH": - { - for (Creature charInside : LILITH_ZONE.getCharactersInside()) - { - if ((charInside != null) && charInside.isPlayer()) - { - charInside.teleToLocation(171346 + getRandom(50), -17599 + getRandom(50), -4901); - } - } - break; - } - case "TELEPORT_OUT": - { - // TODO: Different teleport location from instance. - // switch (player.getInstanceId()) - // { - // case ANAKIM_TEMPLATE_ID: - // { - // final Location destination = TELEPORT_TO_DARK_ELVEN[getRandom(TELEPORT_TO_DARK_ELVEN.length)]; - // player.teleToLocation(destination.getX() + getRandom(100), destination.getY() + getRandom(100), destination.getZ()); - // break; - // } - // case LILITH_TEMPLATE_ID: - // { - // final Location destination = TELEPORT_TO_ADEN[getRandom(TELEPORT_TO_ADEN.length)]; - // player.teleToLocation(destination.getX() + getRandom(100), destination.getY() + getRandom(100), destination.getZ()); - // break; - // } - // } - final Location destination = TELEPORT_TO_DARK_ELVEN[getRandom(TELEPORT_TO_DARK_ELVEN.length)]; - player.teleToLocation(destination.getX() + getRandom(100), destination.getY() + getRandom(100), destination.getZ()); - break; - } - case "ANAKIM_DEATH_CAST_LILITH_INVUL": - { - // TODO: When one RB die, the second will be invul for 5 minutes. - break; - } - case "LILITH_DEATH_CAST_ANAKIM_INVUL": - { - // TODO: When one RB die, the second will be invul for 5 minutes. - break; - } - } - return null; - } - - @Override - public String onKill(Npc npc, Player player, boolean isSummon) - { - switch (npc.getId()) - { - case ANAKIM: - { - // TODO: - // startQuestTimer("ANAKIM_DEATH_CAST_LILITH_INVUL", 1000, null, null); - startQuestTimer("REMOVE_PLAYERS_FROM_ZONE_ANAKIM", 600000, null, player); - addSpawn(GATEKEEPER_SPIRIT_OUT_TELEPORT, -6664, 18501, -5495, 0, false, 600000, false, npc.getInstanceId()); - break; - } - case LILITH: - { - // TODO: - // startQuestTimer("LILITH_DEATH_CAST_ANAKIM_INVUL", 1000, null, null); - startQuestTimer("REMOVE_PLAYERS_FROM_ZONE_LILITH", 600000, null, player); - addSpawn(GATEKEEPER_SPIRIT_OUT_TELEPORT, 185062, -9612, -5493, 0, false, 600000, false, npc.getInstanceId()); - break; - } - } - final Instance world = npc.getInstanceWorld(); - if (world != null) - { - world.finishInstance(); - } - return super.onKill(npc, player, isSummon); - } - - public static void main(String[] args) - { - new SevenSignsRBs(); - } -} diff --git a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/spawns/RaidbossSpawns.xml b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/spawns/RaidbossSpawns.xml index 06c047a961..80b9b4f51a 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/spawns/RaidbossSpawns.xml +++ b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/spawns/RaidbossSpawns.xml @@ -1,96 +1,103 @@  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + \ No newline at end of file diff --git a/L2J_Mobius_Essence_6.1_BattleChronicle/dist/game/data/instances/SanctumOfAnakim.xml b/L2J_Mobius_Essence_6.1_BattleChronicle/dist/game/data/instances/SanctumOfAnakim.xml deleted file mode 100644 index 81f7d3beac..0000000000 --- a/L2J_Mobius_Essence_6.1_BattleChronicle/dist/game/data/instances/SanctumOfAnakim.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - diff --git a/L2J_Mobius_Essence_6.1_BattleChronicle/dist/game/data/instances/SanctumOfLilith.xml b/L2J_Mobius_Essence_6.1_BattleChronicle/dist/game/data/instances/SanctumOfLilith.xml deleted file mode 100644 index 6e3699298d..0000000000 --- a/L2J_Mobius_Essence_6.1_BattleChronicle/dist/game/data/instances/SanctumOfLilith.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - diff --git a/L2J_Mobius_Essence_6.1_BattleChronicle/dist/game/data/scripts/instances/SevenSignsRBs/SevenSignsRBs.java b/L2J_Mobius_Essence_6.1_BattleChronicle/dist/game/data/scripts/instances/SevenSignsRBs/SevenSignsRBs.java deleted file mode 100644 index b8ee1d4681..0000000000 --- a/L2J_Mobius_Essence_6.1_BattleChronicle/dist/game/data/scripts/instances/SevenSignsRBs/SevenSignsRBs.java +++ /dev/null @@ -1,252 +0,0 @@ -/* - * This file is part of the L2J Mobius project. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package instances.SevenSignsRBs; - -import java.util.List; - -import org.l2jmobius.gameserver.instancemanager.ZoneManager; -import org.l2jmobius.gameserver.model.Location; -import org.l2jmobius.gameserver.model.Party; -import org.l2jmobius.gameserver.model.actor.Creature; -import org.l2jmobius.gameserver.model.actor.Npc; -import org.l2jmobius.gameserver.model.actor.Player; -import org.l2jmobius.gameserver.model.instancezone.Instance; -import org.l2jmobius.gameserver.model.zone.type.NoRestartZone; - -import instances.AbstractInstance; - -/** - * @author RobikBobik - * @NOTE: Retail like work - * @TODO: When one RB die, the second will be invul for 5 minutes. - */ -public class SevenSignsRBs extends AbstractInstance -{ - // NPCs - private static final int ANAKIM_GATEKEEPER_SPIRIT = 31089; - private static final int LILITH_GATEKEEPER_SPIRIT = 31087; - private static final int GATEKEEPER_SPIRIT_OUT_TELEPORT = 31088; - private static final int ANAKIM = 25286; - private static final int LILITH = 25283; - - // Misc - private static final int ANAKIM_TEMPLATE_ID = 200; - private static final int LILITH_TEMPLATE_ID = 199; - - private static final int MAX_PLAYERS_IN_ZONE = 300; - - private static final NoRestartZone ANAKIM_ZONE = ZoneManager.getInstance().getZoneById(70052, NoRestartZone.class); - private static final NoRestartZone LILITH_ZONE = ZoneManager.getInstance().getZoneById(70053, NoRestartZone.class); - - // TELEPORTS - private static final Location[] TELEPORT_TO_DARK_ELVEN = - { - new Location(12168, 17149, -4575), - new Location(11688, 18219, -4585), - new Location(10502, 17112, -4588), - new Location(11169, 15922, -4585), - }; - - // TODO: When teleport from instance done. Enable it - /* - * private static final Location[] TELEPORT_TO_ADEN = { new Location(148053, 26935, -2206), new Location(148053, 28017, -2269), new Location(146558, 28017, -2269), new Location(146558, 26935, -2206), }; - */ - - public SevenSignsRBs() - { - super(ANAKIM_TEMPLATE_ID, LILITH_TEMPLATE_ID); - addStartNpc(ANAKIM_GATEKEEPER_SPIRIT, LILITH_GATEKEEPER_SPIRIT); - addTalkId(ANAKIM_GATEKEEPER_SPIRIT, LILITH_GATEKEEPER_SPIRIT, GATEKEEPER_SPIRIT_OUT_TELEPORT); - addKillId(ANAKIM, LILITH); - addAttackId(ANAKIM, LILITH); - addInstanceLeaveId(ANAKIM_TEMPLATE_ID, LILITH_TEMPLATE_ID); - } - - @Override - public String onAdvEvent(String event, Npc npc, Player player) - { - switch (event) - { - case "ANAKIM_ENTER": - { - if (player.isInParty()) - { - final Party party = player.getParty(); - final boolean isInCC = party.isInCommandChannel(); - final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); - if (members.size() > (MAX_PLAYERS_IN_ZONE - ANAKIM_ZONE.getPlayersInside().size())) - { - player.sendMessage("Lilith Sanctum reached 300 players. You cannot enter now."); - } - else - { - for (Player member : members) - { - if (!member.isInsideRadius3D(npc, 1000)) - { - player.sendMessage("Player " + member.getName() + " must go closer to Gatekeeper Spirit."); - } - enterInstance(member, npc, ANAKIM_TEMPLATE_ID); - } - } - } - else if (player.isGM()) - { - enterInstance(player, npc, ANAKIM_TEMPLATE_ID); - player.sendMessage("SYS: You have entered as GM/Admin to Anakim Instance"); - } - else - { - if (!player.isInsideRadius3D(npc, 1000)) - { - player.sendMessage("You must go closer to Gatekeeper Spirit."); - } - enterInstance(player, npc, ANAKIM_TEMPLATE_ID); - } - break; - } - case "LILITH_ENTER": - { - if (player.isInParty()) - { - final Party party = player.getParty(); - final boolean isInCC = party.isInCommandChannel(); - final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); - if (members.size() > (MAX_PLAYERS_IN_ZONE - LILITH_ZONE.getPlayersInside().size())) - { - player.sendMessage("Lilith Sanctum reached 300 players. You cannot enter now."); - } - else - { - for (Player member : members) - { - if (!member.isInsideRadius3D(npc, 1000)) - { - player.sendMessage("Player " + member.getName() + " must go closer to Gatekeeper Spirit."); - } - enterInstance(member, npc, LILITH_TEMPLATE_ID); - } - } - } - else if (player.isGM()) - { - enterInstance(player, npc, LILITH_TEMPLATE_ID); - player.sendMessage("SYS: You have entered as GM/Admin to Anakim Instance"); - } - else - { - if (!player.isInsideRadius3D(npc, 1000)) - { - player.sendMessage("You must go closer to Gatekeeper Spirit."); - } - enterInstance(player, npc, LILITH_TEMPLATE_ID); - } - break; - } - case "REMOVE_PLAYERS_FROM_ZONE_ANAKIM": - { - for (Creature charInside : ANAKIM_ZONE.getCharactersInside()) - { - if ((charInside != null) && charInside.isPlayer()) - { - charInside.teleToLocation(-20185 + getRandom(50), 13476 + getRandom(50), -4901); - } - } - break; - } - case "REMOVE_PLAYERS_FROM_ZONE_LILITH": - { - for (Creature charInside : LILITH_ZONE.getCharactersInside()) - { - if ((charInside != null) && charInside.isPlayer()) - { - charInside.teleToLocation(171346 + getRandom(50), -17599 + getRandom(50), -4901); - } - } - break; - } - case "TELEPORT_OUT": - { - // TODO: Different teleport location from instance. - // switch (player.getInstanceId()) - // { - // case ANAKIM_TEMPLATE_ID: - // { - // final Location destination = TELEPORT_TO_DARK_ELVEN[getRandom(TELEPORT_TO_DARK_ELVEN.length)]; - // player.teleToLocation(destination.getX() + getRandom(100), destination.getY() + getRandom(100), destination.getZ()); - // break; - // } - // case LILITH_TEMPLATE_ID: - // { - // final Location destination = TELEPORT_TO_ADEN[getRandom(TELEPORT_TO_ADEN.length)]; - // player.teleToLocation(destination.getX() + getRandom(100), destination.getY() + getRandom(100), destination.getZ()); - // break; - // } - // } - final Location destination = TELEPORT_TO_DARK_ELVEN[getRandom(TELEPORT_TO_DARK_ELVEN.length)]; - player.teleToLocation(destination.getX() + getRandom(100), destination.getY() + getRandom(100), destination.getZ()); - break; - } - case "ANAKIM_DEATH_CAST_LILITH_INVUL": - { - // TODO: When one RB die, the second will be invul for 5 minutes. - break; - } - case "LILITH_DEATH_CAST_ANAKIM_INVUL": - { - // TODO: When one RB die, the second will be invul for 5 minutes. - break; - } - } - return null; - } - - @Override - public String onKill(Npc npc, Player player, boolean isSummon) - { - switch (npc.getId()) - { - case ANAKIM: - { - // TODO: - // startQuestTimer("ANAKIM_DEATH_CAST_LILITH_INVUL", 1000, null, null); - startQuestTimer("REMOVE_PLAYERS_FROM_ZONE_ANAKIM", 600000, null, player); - addSpawn(GATEKEEPER_SPIRIT_OUT_TELEPORT, -6664, 18501, -5495, 0, false, 600000, false, npc.getInstanceId()); - break; - } - case LILITH: - { - // TODO: - // startQuestTimer("LILITH_DEATH_CAST_ANAKIM_INVUL", 1000, null, null); - startQuestTimer("REMOVE_PLAYERS_FROM_ZONE_LILITH", 600000, null, player); - addSpawn(GATEKEEPER_SPIRIT_OUT_TELEPORT, 185062, -9612, -5493, 0, false, 600000, false, npc.getInstanceId()); - break; - } - } - final Instance world = npc.getInstanceWorld(); - if (world != null) - { - world.finishInstance(); - } - return super.onKill(npc, player, isSummon); - } - - public static void main(String[] args) - { - new SevenSignsRBs(); - } -} diff --git a/L2J_Mobius_Essence_6.1_BattleChronicle/dist/game/data/spawns/RaidbossSpawns.xml b/L2J_Mobius_Essence_6.1_BattleChronicle/dist/game/data/spawns/RaidbossSpawns.xml index 06c047a961..80b9b4f51a 100644 --- a/L2J_Mobius_Essence_6.1_BattleChronicle/dist/game/data/spawns/RaidbossSpawns.xml +++ b/L2J_Mobius_Essence_6.1_BattleChronicle/dist/game/data/spawns/RaidbossSpawns.xml @@ -1,96 +1,103 @@  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + \ No newline at end of file diff --git a/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/instances/SanctumOfAnakim.xml b/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/instances/SanctumOfAnakim.xml deleted file mode 100644 index 81f7d3beac..0000000000 --- a/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/instances/SanctumOfAnakim.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - diff --git a/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/instances/SanctumOfLilith.xml b/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/instances/SanctumOfLilith.xml deleted file mode 100644 index 6e3699298d..0000000000 --- a/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/instances/SanctumOfLilith.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - diff --git a/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/scripts/instances/SevenSignsRBs/SevenSignsRBs.java b/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/scripts/instances/SevenSignsRBs/SevenSignsRBs.java deleted file mode 100644 index b8ee1d4681..0000000000 --- a/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/scripts/instances/SevenSignsRBs/SevenSignsRBs.java +++ /dev/null @@ -1,252 +0,0 @@ -/* - * This file is part of the L2J Mobius project. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package instances.SevenSignsRBs; - -import java.util.List; - -import org.l2jmobius.gameserver.instancemanager.ZoneManager; -import org.l2jmobius.gameserver.model.Location; -import org.l2jmobius.gameserver.model.Party; -import org.l2jmobius.gameserver.model.actor.Creature; -import org.l2jmobius.gameserver.model.actor.Npc; -import org.l2jmobius.gameserver.model.actor.Player; -import org.l2jmobius.gameserver.model.instancezone.Instance; -import org.l2jmobius.gameserver.model.zone.type.NoRestartZone; - -import instances.AbstractInstance; - -/** - * @author RobikBobik - * @NOTE: Retail like work - * @TODO: When one RB die, the second will be invul for 5 minutes. - */ -public class SevenSignsRBs extends AbstractInstance -{ - // NPCs - private static final int ANAKIM_GATEKEEPER_SPIRIT = 31089; - private static final int LILITH_GATEKEEPER_SPIRIT = 31087; - private static final int GATEKEEPER_SPIRIT_OUT_TELEPORT = 31088; - private static final int ANAKIM = 25286; - private static final int LILITH = 25283; - - // Misc - private static final int ANAKIM_TEMPLATE_ID = 200; - private static final int LILITH_TEMPLATE_ID = 199; - - private static final int MAX_PLAYERS_IN_ZONE = 300; - - private static final NoRestartZone ANAKIM_ZONE = ZoneManager.getInstance().getZoneById(70052, NoRestartZone.class); - private static final NoRestartZone LILITH_ZONE = ZoneManager.getInstance().getZoneById(70053, NoRestartZone.class); - - // TELEPORTS - private static final Location[] TELEPORT_TO_DARK_ELVEN = - { - new Location(12168, 17149, -4575), - new Location(11688, 18219, -4585), - new Location(10502, 17112, -4588), - new Location(11169, 15922, -4585), - }; - - // TODO: When teleport from instance done. Enable it - /* - * private static final Location[] TELEPORT_TO_ADEN = { new Location(148053, 26935, -2206), new Location(148053, 28017, -2269), new Location(146558, 28017, -2269), new Location(146558, 26935, -2206), }; - */ - - public SevenSignsRBs() - { - super(ANAKIM_TEMPLATE_ID, LILITH_TEMPLATE_ID); - addStartNpc(ANAKIM_GATEKEEPER_SPIRIT, LILITH_GATEKEEPER_SPIRIT); - addTalkId(ANAKIM_GATEKEEPER_SPIRIT, LILITH_GATEKEEPER_SPIRIT, GATEKEEPER_SPIRIT_OUT_TELEPORT); - addKillId(ANAKIM, LILITH); - addAttackId(ANAKIM, LILITH); - addInstanceLeaveId(ANAKIM_TEMPLATE_ID, LILITH_TEMPLATE_ID); - } - - @Override - public String onAdvEvent(String event, Npc npc, Player player) - { - switch (event) - { - case "ANAKIM_ENTER": - { - if (player.isInParty()) - { - final Party party = player.getParty(); - final boolean isInCC = party.isInCommandChannel(); - final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); - if (members.size() > (MAX_PLAYERS_IN_ZONE - ANAKIM_ZONE.getPlayersInside().size())) - { - player.sendMessage("Lilith Sanctum reached 300 players. You cannot enter now."); - } - else - { - for (Player member : members) - { - if (!member.isInsideRadius3D(npc, 1000)) - { - player.sendMessage("Player " + member.getName() + " must go closer to Gatekeeper Spirit."); - } - enterInstance(member, npc, ANAKIM_TEMPLATE_ID); - } - } - } - else if (player.isGM()) - { - enterInstance(player, npc, ANAKIM_TEMPLATE_ID); - player.sendMessage("SYS: You have entered as GM/Admin to Anakim Instance"); - } - else - { - if (!player.isInsideRadius3D(npc, 1000)) - { - player.sendMessage("You must go closer to Gatekeeper Spirit."); - } - enterInstance(player, npc, ANAKIM_TEMPLATE_ID); - } - break; - } - case "LILITH_ENTER": - { - if (player.isInParty()) - { - final Party party = player.getParty(); - final boolean isInCC = party.isInCommandChannel(); - final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers(); - if (members.size() > (MAX_PLAYERS_IN_ZONE - LILITH_ZONE.getPlayersInside().size())) - { - player.sendMessage("Lilith Sanctum reached 300 players. You cannot enter now."); - } - else - { - for (Player member : members) - { - if (!member.isInsideRadius3D(npc, 1000)) - { - player.sendMessage("Player " + member.getName() + " must go closer to Gatekeeper Spirit."); - } - enterInstance(member, npc, LILITH_TEMPLATE_ID); - } - } - } - else if (player.isGM()) - { - enterInstance(player, npc, LILITH_TEMPLATE_ID); - player.sendMessage("SYS: You have entered as GM/Admin to Anakim Instance"); - } - else - { - if (!player.isInsideRadius3D(npc, 1000)) - { - player.sendMessage("You must go closer to Gatekeeper Spirit."); - } - enterInstance(player, npc, LILITH_TEMPLATE_ID); - } - break; - } - case "REMOVE_PLAYERS_FROM_ZONE_ANAKIM": - { - for (Creature charInside : ANAKIM_ZONE.getCharactersInside()) - { - if ((charInside != null) && charInside.isPlayer()) - { - charInside.teleToLocation(-20185 + getRandom(50), 13476 + getRandom(50), -4901); - } - } - break; - } - case "REMOVE_PLAYERS_FROM_ZONE_LILITH": - { - for (Creature charInside : LILITH_ZONE.getCharactersInside()) - { - if ((charInside != null) && charInside.isPlayer()) - { - charInside.teleToLocation(171346 + getRandom(50), -17599 + getRandom(50), -4901); - } - } - break; - } - case "TELEPORT_OUT": - { - // TODO: Different teleport location from instance. - // switch (player.getInstanceId()) - // { - // case ANAKIM_TEMPLATE_ID: - // { - // final Location destination = TELEPORT_TO_DARK_ELVEN[getRandom(TELEPORT_TO_DARK_ELVEN.length)]; - // player.teleToLocation(destination.getX() + getRandom(100), destination.getY() + getRandom(100), destination.getZ()); - // break; - // } - // case LILITH_TEMPLATE_ID: - // { - // final Location destination = TELEPORT_TO_ADEN[getRandom(TELEPORT_TO_ADEN.length)]; - // player.teleToLocation(destination.getX() + getRandom(100), destination.getY() + getRandom(100), destination.getZ()); - // break; - // } - // } - final Location destination = TELEPORT_TO_DARK_ELVEN[getRandom(TELEPORT_TO_DARK_ELVEN.length)]; - player.teleToLocation(destination.getX() + getRandom(100), destination.getY() + getRandom(100), destination.getZ()); - break; - } - case "ANAKIM_DEATH_CAST_LILITH_INVUL": - { - // TODO: When one RB die, the second will be invul for 5 minutes. - break; - } - case "LILITH_DEATH_CAST_ANAKIM_INVUL": - { - // TODO: When one RB die, the second will be invul for 5 minutes. - break; - } - } - return null; - } - - @Override - public String onKill(Npc npc, Player player, boolean isSummon) - { - switch (npc.getId()) - { - case ANAKIM: - { - // TODO: - // startQuestTimer("ANAKIM_DEATH_CAST_LILITH_INVUL", 1000, null, null); - startQuestTimer("REMOVE_PLAYERS_FROM_ZONE_ANAKIM", 600000, null, player); - addSpawn(GATEKEEPER_SPIRIT_OUT_TELEPORT, -6664, 18501, -5495, 0, false, 600000, false, npc.getInstanceId()); - break; - } - case LILITH: - { - // TODO: - // startQuestTimer("LILITH_DEATH_CAST_ANAKIM_INVUL", 1000, null, null); - startQuestTimer("REMOVE_PLAYERS_FROM_ZONE_LILITH", 600000, null, player); - addSpawn(GATEKEEPER_SPIRIT_OUT_TELEPORT, 185062, -9612, -5493, 0, false, 600000, false, npc.getInstanceId()); - break; - } - } - final Instance world = npc.getInstanceWorld(); - if (world != null) - { - world.finishInstance(); - } - return super.onKill(npc, player, isSummon); - } - - public static void main(String[] args) - { - new SevenSignsRBs(); - } -} diff --git a/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/spawns/RaidbossSpawns.xml b/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/spawns/RaidbossSpawns.xml index 06c047a961..80b9b4f51a 100644 --- a/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/spawns/RaidbossSpawns.xml +++ b/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/spawns/RaidbossSpawns.xml @@ -1,96 +1,103 @@  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + \ No newline at end of file