From 840588538da090b7b22201ff641560ab8cb5c9b9 Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Sun, 17 Apr 2022 12:33:25 +0000 Subject: [PATCH] Moved custom Pagan key drops to AI. --- .../ai/areas/PaganTemple/PaganKeys.java | 109 ++++++++++++++++++ .../ai/areas/PaganTemple/PaganKeys.java | 109 ++++++++++++++++++ .../ai/areas/PaganTemple/PaganKeys.java | 109 ++++++++++++++++++ .../ai/areas/PaganTemple/PaganKeys.java | 109 ++++++++++++++++++ .../ai/areas/PaganTemple/PaganKeys.java | 109 ++++++++++++++++++ .../ai/areas/PaganTemple/PaganKeys.java | 109 ++++++++++++++++++ .../ai/areas/PaganTemple/PaganKeys.java | 109 ++++++++++++++++++ .../ai/areas/PaganTemple/PaganKeys.java | 109 ++++++++++++++++++ .../ai/areas/PaganTemple/PaganKeys.java | 109 ++++++++++++++++++ .../ai/areas/PaganTemple/PaganKeys.java | 109 ++++++++++++++++++ .../ai/areas/PaganTemple/PaganKeys.java | 109 ++++++++++++++++++ .../ai/areas/PaganTemple/PaganKeys.java | 109 ++++++++++++++++++ .../ai/areas/PaganTemple/PaganKeys.java | 109 ++++++++++++++++++ .../dist/game/data/stats/npcs/22100-22199.xml | 1 - .../ai/areas/PaganTemple/PaganKeys.java | 109 ++++++++++++++++++ .../dist/game/data/stats/npcs/22100-22199.xml | 3 - .../ai/areas/PaganTemple/PaganKeys.java | 109 ++++++++++++++++++ 17 files changed, 1635 insertions(+), 4 deletions(-) create mode 100644 L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java create mode 100644 L2J_Mobius_02.5_Underground/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java create mode 100644 L2J_Mobius_03.0_Helios/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java create mode 100644 L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java create mode 100644 L2J_Mobius_05.0_Salvation/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java create mode 100644 L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java create mode 100644 L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java create mode 100644 L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java create mode 100644 L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java create mode 100644 L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java create mode 100644 L2J_Mobius_10.1_MasterClass/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java create mode 100644 L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java create mode 100644 L2J_Mobius_CT_2.4_Epilogue/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java create mode 100644 L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java create mode 100644 L2J_Mobius_Classic_Interlude/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java diff --git a/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java b/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java new file mode 100644 index 0000000000..b087969bbf --- /dev/null +++ b/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java @@ -0,0 +1,109 @@ +/* + * 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 ai.areas.PaganTemple; + +import org.l2jmobius.Config; +import org.l2jmobius.commons.util.Rnd; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.Player; + +import ai.AbstractNpcAI; + +/** + * Custom script to remove custom key drop from NPC XMLs.
+ * Used to access more conveniently Pagan Temple. + * @author Mobius + */ +public class PaganKeys extends AbstractNpcAI +{ + // Items + private static final int ANTEROOM_KEY = 8273; + private static final int CHAPEL_KEY = 8274; + private static final int KEY_OF_DARKNESS = 8275; + // NPCs + private static final int ZOMBIE_WORKER = 22140; + private static final int TRIOLS_LAYPERSON = 22142; + private static final int TRIOLS_PRIEST = 22168; + // Misc + private static final int ANTEROOM_KEY_CHANCE = 10; + private static final int CHAPEL_KEY_CHANCE = 10; + private static final int KEY_OF_DARKNESS_CHANCE = 10; + + private PaganKeys() + { + addKillId(ZOMBIE_WORKER, TRIOLS_LAYPERSON, TRIOLS_PRIEST); + } + + @Override + public String onKill(Npc npc, Player killer, boolean isSummon) + { + switch (npc.getId()) + { + case ZOMBIE_WORKER: + { + if (Rnd.get(100) < ANTEROOM_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, ANTEROOM_KEY, 1); + } + else + { + npc.dropItem(killer, ANTEROOM_KEY, 1); + } + } + break; + } + case TRIOLS_LAYPERSON: + { + if (Rnd.get(100) < CHAPEL_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, CHAPEL_KEY, 1); + } + else + { + npc.dropItem(killer, CHAPEL_KEY, 1); + } + } + break; + } + case TRIOLS_PRIEST: + { + if (Rnd.get(100) < KEY_OF_DARKNESS_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, KEY_OF_DARKNESS, 1); + } + else + { + npc.dropItem(killer, KEY_OF_DARKNESS, 1); + } + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + public static void main(String[] args) + { + new PaganKeys(); + } +} diff --git a/L2J_Mobius_02.5_Underground/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java b/L2J_Mobius_02.5_Underground/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java new file mode 100644 index 0000000000..b087969bbf --- /dev/null +++ b/L2J_Mobius_02.5_Underground/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java @@ -0,0 +1,109 @@ +/* + * 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 ai.areas.PaganTemple; + +import org.l2jmobius.Config; +import org.l2jmobius.commons.util.Rnd; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.Player; + +import ai.AbstractNpcAI; + +/** + * Custom script to remove custom key drop from NPC XMLs.
+ * Used to access more conveniently Pagan Temple. + * @author Mobius + */ +public class PaganKeys extends AbstractNpcAI +{ + // Items + private static final int ANTEROOM_KEY = 8273; + private static final int CHAPEL_KEY = 8274; + private static final int KEY_OF_DARKNESS = 8275; + // NPCs + private static final int ZOMBIE_WORKER = 22140; + private static final int TRIOLS_LAYPERSON = 22142; + private static final int TRIOLS_PRIEST = 22168; + // Misc + private static final int ANTEROOM_KEY_CHANCE = 10; + private static final int CHAPEL_KEY_CHANCE = 10; + private static final int KEY_OF_DARKNESS_CHANCE = 10; + + private PaganKeys() + { + addKillId(ZOMBIE_WORKER, TRIOLS_LAYPERSON, TRIOLS_PRIEST); + } + + @Override + public String onKill(Npc npc, Player killer, boolean isSummon) + { + switch (npc.getId()) + { + case ZOMBIE_WORKER: + { + if (Rnd.get(100) < ANTEROOM_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, ANTEROOM_KEY, 1); + } + else + { + npc.dropItem(killer, ANTEROOM_KEY, 1); + } + } + break; + } + case TRIOLS_LAYPERSON: + { + if (Rnd.get(100) < CHAPEL_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, CHAPEL_KEY, 1); + } + else + { + npc.dropItem(killer, CHAPEL_KEY, 1); + } + } + break; + } + case TRIOLS_PRIEST: + { + if (Rnd.get(100) < KEY_OF_DARKNESS_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, KEY_OF_DARKNESS, 1); + } + else + { + npc.dropItem(killer, KEY_OF_DARKNESS, 1); + } + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + public static void main(String[] args) + { + new PaganKeys(); + } +} diff --git a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java new file mode 100644 index 0000000000..b087969bbf --- /dev/null +++ b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java @@ -0,0 +1,109 @@ +/* + * 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 ai.areas.PaganTemple; + +import org.l2jmobius.Config; +import org.l2jmobius.commons.util.Rnd; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.Player; + +import ai.AbstractNpcAI; + +/** + * Custom script to remove custom key drop from NPC XMLs.
+ * Used to access more conveniently Pagan Temple. + * @author Mobius + */ +public class PaganKeys extends AbstractNpcAI +{ + // Items + private static final int ANTEROOM_KEY = 8273; + private static final int CHAPEL_KEY = 8274; + private static final int KEY_OF_DARKNESS = 8275; + // NPCs + private static final int ZOMBIE_WORKER = 22140; + private static final int TRIOLS_LAYPERSON = 22142; + private static final int TRIOLS_PRIEST = 22168; + // Misc + private static final int ANTEROOM_KEY_CHANCE = 10; + private static final int CHAPEL_KEY_CHANCE = 10; + private static final int KEY_OF_DARKNESS_CHANCE = 10; + + private PaganKeys() + { + addKillId(ZOMBIE_WORKER, TRIOLS_LAYPERSON, TRIOLS_PRIEST); + } + + @Override + public String onKill(Npc npc, Player killer, boolean isSummon) + { + switch (npc.getId()) + { + case ZOMBIE_WORKER: + { + if (Rnd.get(100) < ANTEROOM_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, ANTEROOM_KEY, 1); + } + else + { + npc.dropItem(killer, ANTEROOM_KEY, 1); + } + } + break; + } + case TRIOLS_LAYPERSON: + { + if (Rnd.get(100) < CHAPEL_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, CHAPEL_KEY, 1); + } + else + { + npc.dropItem(killer, CHAPEL_KEY, 1); + } + } + break; + } + case TRIOLS_PRIEST: + { + if (Rnd.get(100) < KEY_OF_DARKNESS_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, KEY_OF_DARKNESS, 1); + } + else + { + npc.dropItem(killer, KEY_OF_DARKNESS, 1); + } + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + public static void main(String[] args) + { + new PaganKeys(); + } +} diff --git a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java new file mode 100644 index 0000000000..b087969bbf --- /dev/null +++ b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java @@ -0,0 +1,109 @@ +/* + * 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 ai.areas.PaganTemple; + +import org.l2jmobius.Config; +import org.l2jmobius.commons.util.Rnd; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.Player; + +import ai.AbstractNpcAI; + +/** + * Custom script to remove custom key drop from NPC XMLs.
+ * Used to access more conveniently Pagan Temple. + * @author Mobius + */ +public class PaganKeys extends AbstractNpcAI +{ + // Items + private static final int ANTEROOM_KEY = 8273; + private static final int CHAPEL_KEY = 8274; + private static final int KEY_OF_DARKNESS = 8275; + // NPCs + private static final int ZOMBIE_WORKER = 22140; + private static final int TRIOLS_LAYPERSON = 22142; + private static final int TRIOLS_PRIEST = 22168; + // Misc + private static final int ANTEROOM_KEY_CHANCE = 10; + private static final int CHAPEL_KEY_CHANCE = 10; + private static final int KEY_OF_DARKNESS_CHANCE = 10; + + private PaganKeys() + { + addKillId(ZOMBIE_WORKER, TRIOLS_LAYPERSON, TRIOLS_PRIEST); + } + + @Override + public String onKill(Npc npc, Player killer, boolean isSummon) + { + switch (npc.getId()) + { + case ZOMBIE_WORKER: + { + if (Rnd.get(100) < ANTEROOM_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, ANTEROOM_KEY, 1); + } + else + { + npc.dropItem(killer, ANTEROOM_KEY, 1); + } + } + break; + } + case TRIOLS_LAYPERSON: + { + if (Rnd.get(100) < CHAPEL_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, CHAPEL_KEY, 1); + } + else + { + npc.dropItem(killer, CHAPEL_KEY, 1); + } + } + break; + } + case TRIOLS_PRIEST: + { + if (Rnd.get(100) < KEY_OF_DARKNESS_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, KEY_OF_DARKNESS, 1); + } + else + { + npc.dropItem(killer, KEY_OF_DARKNESS, 1); + } + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + public static void main(String[] args) + { + new PaganKeys(); + } +} diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java new file mode 100644 index 0000000000..b087969bbf --- /dev/null +++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java @@ -0,0 +1,109 @@ +/* + * 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 ai.areas.PaganTemple; + +import org.l2jmobius.Config; +import org.l2jmobius.commons.util.Rnd; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.Player; + +import ai.AbstractNpcAI; + +/** + * Custom script to remove custom key drop from NPC XMLs.
+ * Used to access more conveniently Pagan Temple. + * @author Mobius + */ +public class PaganKeys extends AbstractNpcAI +{ + // Items + private static final int ANTEROOM_KEY = 8273; + private static final int CHAPEL_KEY = 8274; + private static final int KEY_OF_DARKNESS = 8275; + // NPCs + private static final int ZOMBIE_WORKER = 22140; + private static final int TRIOLS_LAYPERSON = 22142; + private static final int TRIOLS_PRIEST = 22168; + // Misc + private static final int ANTEROOM_KEY_CHANCE = 10; + private static final int CHAPEL_KEY_CHANCE = 10; + private static final int KEY_OF_DARKNESS_CHANCE = 10; + + private PaganKeys() + { + addKillId(ZOMBIE_WORKER, TRIOLS_LAYPERSON, TRIOLS_PRIEST); + } + + @Override + public String onKill(Npc npc, Player killer, boolean isSummon) + { + switch (npc.getId()) + { + case ZOMBIE_WORKER: + { + if (Rnd.get(100) < ANTEROOM_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, ANTEROOM_KEY, 1); + } + else + { + npc.dropItem(killer, ANTEROOM_KEY, 1); + } + } + break; + } + case TRIOLS_LAYPERSON: + { + if (Rnd.get(100) < CHAPEL_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, CHAPEL_KEY, 1); + } + else + { + npc.dropItem(killer, CHAPEL_KEY, 1); + } + } + break; + } + case TRIOLS_PRIEST: + { + if (Rnd.get(100) < KEY_OF_DARKNESS_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, KEY_OF_DARKNESS, 1); + } + else + { + npc.dropItem(killer, KEY_OF_DARKNESS, 1); + } + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + public static void main(String[] args) + { + new PaganKeys(); + } +} diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java new file mode 100644 index 0000000000..b087969bbf --- /dev/null +++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java @@ -0,0 +1,109 @@ +/* + * 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 ai.areas.PaganTemple; + +import org.l2jmobius.Config; +import org.l2jmobius.commons.util.Rnd; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.Player; + +import ai.AbstractNpcAI; + +/** + * Custom script to remove custom key drop from NPC XMLs.
+ * Used to access more conveniently Pagan Temple. + * @author Mobius + */ +public class PaganKeys extends AbstractNpcAI +{ + // Items + private static final int ANTEROOM_KEY = 8273; + private static final int CHAPEL_KEY = 8274; + private static final int KEY_OF_DARKNESS = 8275; + // NPCs + private static final int ZOMBIE_WORKER = 22140; + private static final int TRIOLS_LAYPERSON = 22142; + private static final int TRIOLS_PRIEST = 22168; + // Misc + private static final int ANTEROOM_KEY_CHANCE = 10; + private static final int CHAPEL_KEY_CHANCE = 10; + private static final int KEY_OF_DARKNESS_CHANCE = 10; + + private PaganKeys() + { + addKillId(ZOMBIE_WORKER, TRIOLS_LAYPERSON, TRIOLS_PRIEST); + } + + @Override + public String onKill(Npc npc, Player killer, boolean isSummon) + { + switch (npc.getId()) + { + case ZOMBIE_WORKER: + { + if (Rnd.get(100) < ANTEROOM_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, ANTEROOM_KEY, 1); + } + else + { + npc.dropItem(killer, ANTEROOM_KEY, 1); + } + } + break; + } + case TRIOLS_LAYPERSON: + { + if (Rnd.get(100) < CHAPEL_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, CHAPEL_KEY, 1); + } + else + { + npc.dropItem(killer, CHAPEL_KEY, 1); + } + } + break; + } + case TRIOLS_PRIEST: + { + if (Rnd.get(100) < KEY_OF_DARKNESS_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, KEY_OF_DARKNESS, 1); + } + else + { + npc.dropItem(killer, KEY_OF_DARKNESS, 1); + } + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + public static void main(String[] args) + { + new PaganKeys(); + } +} diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java new file mode 100644 index 0000000000..b087969bbf --- /dev/null +++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java @@ -0,0 +1,109 @@ +/* + * 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 ai.areas.PaganTemple; + +import org.l2jmobius.Config; +import org.l2jmobius.commons.util.Rnd; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.Player; + +import ai.AbstractNpcAI; + +/** + * Custom script to remove custom key drop from NPC XMLs.
+ * Used to access more conveniently Pagan Temple. + * @author Mobius + */ +public class PaganKeys extends AbstractNpcAI +{ + // Items + private static final int ANTEROOM_KEY = 8273; + private static final int CHAPEL_KEY = 8274; + private static final int KEY_OF_DARKNESS = 8275; + // NPCs + private static final int ZOMBIE_WORKER = 22140; + private static final int TRIOLS_LAYPERSON = 22142; + private static final int TRIOLS_PRIEST = 22168; + // Misc + private static final int ANTEROOM_KEY_CHANCE = 10; + private static final int CHAPEL_KEY_CHANCE = 10; + private static final int KEY_OF_DARKNESS_CHANCE = 10; + + private PaganKeys() + { + addKillId(ZOMBIE_WORKER, TRIOLS_LAYPERSON, TRIOLS_PRIEST); + } + + @Override + public String onKill(Npc npc, Player killer, boolean isSummon) + { + switch (npc.getId()) + { + case ZOMBIE_WORKER: + { + if (Rnd.get(100) < ANTEROOM_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, ANTEROOM_KEY, 1); + } + else + { + npc.dropItem(killer, ANTEROOM_KEY, 1); + } + } + break; + } + case TRIOLS_LAYPERSON: + { + if (Rnd.get(100) < CHAPEL_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, CHAPEL_KEY, 1); + } + else + { + npc.dropItem(killer, CHAPEL_KEY, 1); + } + } + break; + } + case TRIOLS_PRIEST: + { + if (Rnd.get(100) < KEY_OF_DARKNESS_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, KEY_OF_DARKNESS, 1); + } + else + { + npc.dropItem(killer, KEY_OF_DARKNESS, 1); + } + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + public static void main(String[] args) + { + new PaganKeys(); + } +} diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java new file mode 100644 index 0000000000..b087969bbf --- /dev/null +++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java @@ -0,0 +1,109 @@ +/* + * 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 ai.areas.PaganTemple; + +import org.l2jmobius.Config; +import org.l2jmobius.commons.util.Rnd; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.Player; + +import ai.AbstractNpcAI; + +/** + * Custom script to remove custom key drop from NPC XMLs.
+ * Used to access more conveniently Pagan Temple. + * @author Mobius + */ +public class PaganKeys extends AbstractNpcAI +{ + // Items + private static final int ANTEROOM_KEY = 8273; + private static final int CHAPEL_KEY = 8274; + private static final int KEY_OF_DARKNESS = 8275; + // NPCs + private static final int ZOMBIE_WORKER = 22140; + private static final int TRIOLS_LAYPERSON = 22142; + private static final int TRIOLS_PRIEST = 22168; + // Misc + private static final int ANTEROOM_KEY_CHANCE = 10; + private static final int CHAPEL_KEY_CHANCE = 10; + private static final int KEY_OF_DARKNESS_CHANCE = 10; + + private PaganKeys() + { + addKillId(ZOMBIE_WORKER, TRIOLS_LAYPERSON, TRIOLS_PRIEST); + } + + @Override + public String onKill(Npc npc, Player killer, boolean isSummon) + { + switch (npc.getId()) + { + case ZOMBIE_WORKER: + { + if (Rnd.get(100) < ANTEROOM_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, ANTEROOM_KEY, 1); + } + else + { + npc.dropItem(killer, ANTEROOM_KEY, 1); + } + } + break; + } + case TRIOLS_LAYPERSON: + { + if (Rnd.get(100) < CHAPEL_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, CHAPEL_KEY, 1); + } + else + { + npc.dropItem(killer, CHAPEL_KEY, 1); + } + } + break; + } + case TRIOLS_PRIEST: + { + if (Rnd.get(100) < KEY_OF_DARKNESS_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, KEY_OF_DARKNESS, 1); + } + else + { + npc.dropItem(killer, KEY_OF_DARKNESS, 1); + } + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + public static void main(String[] args) + { + new PaganKeys(); + } +} diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java new file mode 100644 index 0000000000..b087969bbf --- /dev/null +++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java @@ -0,0 +1,109 @@ +/* + * 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 ai.areas.PaganTemple; + +import org.l2jmobius.Config; +import org.l2jmobius.commons.util.Rnd; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.Player; + +import ai.AbstractNpcAI; + +/** + * Custom script to remove custom key drop from NPC XMLs.
+ * Used to access more conveniently Pagan Temple. + * @author Mobius + */ +public class PaganKeys extends AbstractNpcAI +{ + // Items + private static final int ANTEROOM_KEY = 8273; + private static final int CHAPEL_KEY = 8274; + private static final int KEY_OF_DARKNESS = 8275; + // NPCs + private static final int ZOMBIE_WORKER = 22140; + private static final int TRIOLS_LAYPERSON = 22142; + private static final int TRIOLS_PRIEST = 22168; + // Misc + private static final int ANTEROOM_KEY_CHANCE = 10; + private static final int CHAPEL_KEY_CHANCE = 10; + private static final int KEY_OF_DARKNESS_CHANCE = 10; + + private PaganKeys() + { + addKillId(ZOMBIE_WORKER, TRIOLS_LAYPERSON, TRIOLS_PRIEST); + } + + @Override + public String onKill(Npc npc, Player killer, boolean isSummon) + { + switch (npc.getId()) + { + case ZOMBIE_WORKER: + { + if (Rnd.get(100) < ANTEROOM_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, ANTEROOM_KEY, 1); + } + else + { + npc.dropItem(killer, ANTEROOM_KEY, 1); + } + } + break; + } + case TRIOLS_LAYPERSON: + { + if (Rnd.get(100) < CHAPEL_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, CHAPEL_KEY, 1); + } + else + { + npc.dropItem(killer, CHAPEL_KEY, 1); + } + } + break; + } + case TRIOLS_PRIEST: + { + if (Rnd.get(100) < KEY_OF_DARKNESS_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, KEY_OF_DARKNESS, 1); + } + else + { + npc.dropItem(killer, KEY_OF_DARKNESS, 1); + } + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + public static void main(String[] args) + { + new PaganKeys(); + } +} diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java new file mode 100644 index 0000000000..b087969bbf --- /dev/null +++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java @@ -0,0 +1,109 @@ +/* + * 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 ai.areas.PaganTemple; + +import org.l2jmobius.Config; +import org.l2jmobius.commons.util.Rnd; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.Player; + +import ai.AbstractNpcAI; + +/** + * Custom script to remove custom key drop from NPC XMLs.
+ * Used to access more conveniently Pagan Temple. + * @author Mobius + */ +public class PaganKeys extends AbstractNpcAI +{ + // Items + private static final int ANTEROOM_KEY = 8273; + private static final int CHAPEL_KEY = 8274; + private static final int KEY_OF_DARKNESS = 8275; + // NPCs + private static final int ZOMBIE_WORKER = 22140; + private static final int TRIOLS_LAYPERSON = 22142; + private static final int TRIOLS_PRIEST = 22168; + // Misc + private static final int ANTEROOM_KEY_CHANCE = 10; + private static final int CHAPEL_KEY_CHANCE = 10; + private static final int KEY_OF_DARKNESS_CHANCE = 10; + + private PaganKeys() + { + addKillId(ZOMBIE_WORKER, TRIOLS_LAYPERSON, TRIOLS_PRIEST); + } + + @Override + public String onKill(Npc npc, Player killer, boolean isSummon) + { + switch (npc.getId()) + { + case ZOMBIE_WORKER: + { + if (Rnd.get(100) < ANTEROOM_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, ANTEROOM_KEY, 1); + } + else + { + npc.dropItem(killer, ANTEROOM_KEY, 1); + } + } + break; + } + case TRIOLS_LAYPERSON: + { + if (Rnd.get(100) < CHAPEL_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, CHAPEL_KEY, 1); + } + else + { + npc.dropItem(killer, CHAPEL_KEY, 1); + } + } + break; + } + case TRIOLS_PRIEST: + { + if (Rnd.get(100) < KEY_OF_DARKNESS_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, KEY_OF_DARKNESS, 1); + } + else + { + npc.dropItem(killer, KEY_OF_DARKNESS, 1); + } + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + public static void main(String[] args) + { + new PaganKeys(); + } +} diff --git a/L2J_Mobius_10.1_MasterClass/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java b/L2J_Mobius_10.1_MasterClass/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java new file mode 100644 index 0000000000..b087969bbf --- /dev/null +++ b/L2J_Mobius_10.1_MasterClass/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java @@ -0,0 +1,109 @@ +/* + * 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 ai.areas.PaganTemple; + +import org.l2jmobius.Config; +import org.l2jmobius.commons.util.Rnd; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.Player; + +import ai.AbstractNpcAI; + +/** + * Custom script to remove custom key drop from NPC XMLs.
+ * Used to access more conveniently Pagan Temple. + * @author Mobius + */ +public class PaganKeys extends AbstractNpcAI +{ + // Items + private static final int ANTEROOM_KEY = 8273; + private static final int CHAPEL_KEY = 8274; + private static final int KEY_OF_DARKNESS = 8275; + // NPCs + private static final int ZOMBIE_WORKER = 22140; + private static final int TRIOLS_LAYPERSON = 22142; + private static final int TRIOLS_PRIEST = 22168; + // Misc + private static final int ANTEROOM_KEY_CHANCE = 10; + private static final int CHAPEL_KEY_CHANCE = 10; + private static final int KEY_OF_DARKNESS_CHANCE = 10; + + private PaganKeys() + { + addKillId(ZOMBIE_WORKER, TRIOLS_LAYPERSON, TRIOLS_PRIEST); + } + + @Override + public String onKill(Npc npc, Player killer, boolean isSummon) + { + switch (npc.getId()) + { + case ZOMBIE_WORKER: + { + if (Rnd.get(100) < ANTEROOM_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, ANTEROOM_KEY, 1); + } + else + { + npc.dropItem(killer, ANTEROOM_KEY, 1); + } + } + break; + } + case TRIOLS_LAYPERSON: + { + if (Rnd.get(100) < CHAPEL_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, CHAPEL_KEY, 1); + } + else + { + npc.dropItem(killer, CHAPEL_KEY, 1); + } + } + break; + } + case TRIOLS_PRIEST: + { + if (Rnd.get(100) < KEY_OF_DARKNESS_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, KEY_OF_DARKNESS, 1); + } + else + { + npc.dropItem(killer, KEY_OF_DARKNESS, 1); + } + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + public static void main(String[] args) + { + new PaganKeys(); + } +} diff --git a/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java b/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java new file mode 100644 index 0000000000..b087969bbf --- /dev/null +++ b/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java @@ -0,0 +1,109 @@ +/* + * 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 ai.areas.PaganTemple; + +import org.l2jmobius.Config; +import org.l2jmobius.commons.util.Rnd; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.Player; + +import ai.AbstractNpcAI; + +/** + * Custom script to remove custom key drop from NPC XMLs.
+ * Used to access more conveniently Pagan Temple. + * @author Mobius + */ +public class PaganKeys extends AbstractNpcAI +{ + // Items + private static final int ANTEROOM_KEY = 8273; + private static final int CHAPEL_KEY = 8274; + private static final int KEY_OF_DARKNESS = 8275; + // NPCs + private static final int ZOMBIE_WORKER = 22140; + private static final int TRIOLS_LAYPERSON = 22142; + private static final int TRIOLS_PRIEST = 22168; + // Misc + private static final int ANTEROOM_KEY_CHANCE = 10; + private static final int CHAPEL_KEY_CHANCE = 10; + private static final int KEY_OF_DARKNESS_CHANCE = 10; + + private PaganKeys() + { + addKillId(ZOMBIE_WORKER, TRIOLS_LAYPERSON, TRIOLS_PRIEST); + } + + @Override + public String onKill(Npc npc, Player killer, boolean isSummon) + { + switch (npc.getId()) + { + case ZOMBIE_WORKER: + { + if (Rnd.get(100) < ANTEROOM_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, ANTEROOM_KEY, 1); + } + else + { + npc.dropItem(killer, ANTEROOM_KEY, 1); + } + } + break; + } + case TRIOLS_LAYPERSON: + { + if (Rnd.get(100) < CHAPEL_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, CHAPEL_KEY, 1); + } + else + { + npc.dropItem(killer, CHAPEL_KEY, 1); + } + } + break; + } + case TRIOLS_PRIEST: + { + if (Rnd.get(100) < KEY_OF_DARKNESS_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, KEY_OF_DARKNESS, 1); + } + else + { + npc.dropItem(killer, KEY_OF_DARKNESS, 1); + } + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + public static void main(String[] args) + { + new PaganKeys(); + } +} diff --git a/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java b/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java new file mode 100644 index 0000000000..b087969bbf --- /dev/null +++ b/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java @@ -0,0 +1,109 @@ +/* + * 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 ai.areas.PaganTemple; + +import org.l2jmobius.Config; +import org.l2jmobius.commons.util.Rnd; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.Player; + +import ai.AbstractNpcAI; + +/** + * Custom script to remove custom key drop from NPC XMLs.
+ * Used to access more conveniently Pagan Temple. + * @author Mobius + */ +public class PaganKeys extends AbstractNpcAI +{ + // Items + private static final int ANTEROOM_KEY = 8273; + private static final int CHAPEL_KEY = 8274; + private static final int KEY_OF_DARKNESS = 8275; + // NPCs + private static final int ZOMBIE_WORKER = 22140; + private static final int TRIOLS_LAYPERSON = 22142; + private static final int TRIOLS_PRIEST = 22168; + // Misc + private static final int ANTEROOM_KEY_CHANCE = 10; + private static final int CHAPEL_KEY_CHANCE = 10; + private static final int KEY_OF_DARKNESS_CHANCE = 10; + + private PaganKeys() + { + addKillId(ZOMBIE_WORKER, TRIOLS_LAYPERSON, TRIOLS_PRIEST); + } + + @Override + public String onKill(Npc npc, Player killer, boolean isSummon) + { + switch (npc.getId()) + { + case ZOMBIE_WORKER: + { + if (Rnd.get(100) < ANTEROOM_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, ANTEROOM_KEY, 1); + } + else + { + npc.dropItem(killer, ANTEROOM_KEY, 1); + } + } + break; + } + case TRIOLS_LAYPERSON: + { + if (Rnd.get(100) < CHAPEL_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, CHAPEL_KEY, 1); + } + else + { + npc.dropItem(killer, CHAPEL_KEY, 1); + } + } + break; + } + case TRIOLS_PRIEST: + { + if (Rnd.get(100) < KEY_OF_DARKNESS_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, KEY_OF_DARKNESS, 1); + } + else + { + npc.dropItem(killer, KEY_OF_DARKNESS, 1); + } + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + public static void main(String[] args) + { + new PaganKeys(); + } +} diff --git a/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/stats/npcs/22100-22199.xml b/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/stats/npcs/22100-22199.xml index 0aa8f50aec..97ce325cdf 100644 --- a/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/stats/npcs/22100-22199.xml +++ b/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/stats/npcs/22100-22199.xml @@ -5494,7 +5494,6 @@ - diff --git a/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java new file mode 100644 index 0000000000..b087969bbf --- /dev/null +++ b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java @@ -0,0 +1,109 @@ +/* + * 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 ai.areas.PaganTemple; + +import org.l2jmobius.Config; +import org.l2jmobius.commons.util.Rnd; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.Player; + +import ai.AbstractNpcAI; + +/** + * Custom script to remove custom key drop from NPC XMLs.
+ * Used to access more conveniently Pagan Temple. + * @author Mobius + */ +public class PaganKeys extends AbstractNpcAI +{ + // Items + private static final int ANTEROOM_KEY = 8273; + private static final int CHAPEL_KEY = 8274; + private static final int KEY_OF_DARKNESS = 8275; + // NPCs + private static final int ZOMBIE_WORKER = 22140; + private static final int TRIOLS_LAYPERSON = 22142; + private static final int TRIOLS_PRIEST = 22168; + // Misc + private static final int ANTEROOM_KEY_CHANCE = 10; + private static final int CHAPEL_KEY_CHANCE = 10; + private static final int KEY_OF_DARKNESS_CHANCE = 10; + + private PaganKeys() + { + addKillId(ZOMBIE_WORKER, TRIOLS_LAYPERSON, TRIOLS_PRIEST); + } + + @Override + public String onKill(Npc npc, Player killer, boolean isSummon) + { + switch (npc.getId()) + { + case ZOMBIE_WORKER: + { + if (Rnd.get(100) < ANTEROOM_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, ANTEROOM_KEY, 1); + } + else + { + npc.dropItem(killer, ANTEROOM_KEY, 1); + } + } + break; + } + case TRIOLS_LAYPERSON: + { + if (Rnd.get(100) < CHAPEL_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, CHAPEL_KEY, 1); + } + else + { + npc.dropItem(killer, CHAPEL_KEY, 1); + } + } + break; + } + case TRIOLS_PRIEST: + { + if (Rnd.get(100) < KEY_OF_DARKNESS_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, KEY_OF_DARKNESS, 1); + } + else + { + npc.dropItem(killer, KEY_OF_DARKNESS, 1); + } + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + public static void main(String[] args) + { + new PaganKeys(); + } +} diff --git a/L2J_Mobius_CT_2.6_HighFive/dist/game/data/stats/npcs/22100-22199.xml b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/stats/npcs/22100-22199.xml index a9b4a13ac5..c333b9ab1d 100644 --- a/L2J_Mobius_CT_2.6_HighFive/dist/game/data/stats/npcs/22100-22199.xml +++ b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/stats/npcs/22100-22199.xml @@ -3280,7 +3280,6 @@ - @@ -3454,7 +3453,6 @@ - @@ -5565,7 +5563,6 @@ - diff --git a/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java b/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java new file mode 100644 index 0000000000..b087969bbf --- /dev/null +++ b/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/ai/areas/PaganTemple/PaganKeys.java @@ -0,0 +1,109 @@ +/* + * 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 ai.areas.PaganTemple; + +import org.l2jmobius.Config; +import org.l2jmobius.commons.util.Rnd; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.Player; + +import ai.AbstractNpcAI; + +/** + * Custom script to remove custom key drop from NPC XMLs.
+ * Used to access more conveniently Pagan Temple. + * @author Mobius + */ +public class PaganKeys extends AbstractNpcAI +{ + // Items + private static final int ANTEROOM_KEY = 8273; + private static final int CHAPEL_KEY = 8274; + private static final int KEY_OF_DARKNESS = 8275; + // NPCs + private static final int ZOMBIE_WORKER = 22140; + private static final int TRIOLS_LAYPERSON = 22142; + private static final int TRIOLS_PRIEST = 22168; + // Misc + private static final int ANTEROOM_KEY_CHANCE = 10; + private static final int CHAPEL_KEY_CHANCE = 10; + private static final int KEY_OF_DARKNESS_CHANCE = 10; + + private PaganKeys() + { + addKillId(ZOMBIE_WORKER, TRIOLS_LAYPERSON, TRIOLS_PRIEST); + } + + @Override + public String onKill(Npc npc, Player killer, boolean isSummon) + { + switch (npc.getId()) + { + case ZOMBIE_WORKER: + { + if (Rnd.get(100) < ANTEROOM_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, ANTEROOM_KEY, 1); + } + else + { + npc.dropItem(killer, ANTEROOM_KEY, 1); + } + } + break; + } + case TRIOLS_LAYPERSON: + { + if (Rnd.get(100) < CHAPEL_KEY_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, CHAPEL_KEY, 1); + } + else + { + npc.dropItem(killer, CHAPEL_KEY, 1); + } + } + break; + } + case TRIOLS_PRIEST: + { + if (Rnd.get(100) < KEY_OF_DARKNESS_CHANCE) + { + if (Config.AUTO_LOOT) + { + giveItems(killer, KEY_OF_DARKNESS, 1); + } + else + { + npc.dropItem(killer, KEY_OF_DARKNESS, 1); + } + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + public static void main(String[] args) + { + new PaganKeys(); + } +}