Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Index: dist/game/data/scripts/ai/others/BlackMarketeerOfMammon/31092-02.html
- ===================================================================
- --- dist/game/data/scripts/ai/others/BlackMarketeerOfMammon/31092-02.html (revision 7680)
- +++ dist/game/data/scripts/ai/others/BlackMarketeerOfMammon/31092-02.html (working copy)
- @@ -1,4 +1,4 @@
- -<html><head><body>Black Marketeer of Mammon:<br>
- +<html><body>Black Marketeer of Mammon:<br>
- <font color="FF0000">[Exchange failure]</font><br>
- You've entered an invalid value. Please input a correct amount.<br>
- <Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest BlackMarketeerOfMammon 31092-01.html">Back</Button>
- Index: dist/game/data/scripts/ai/others/BlackMarketeerOfMammon/31092-03.html
- ===================================================================
- --- dist/game/data/scripts/ai/others/BlackMarketeerOfMammon/31092-03.html (revision 7680)
- +++ dist/game/data/scripts/ai/others/BlackMarketeerOfMammon/31092-03.html (working copy)
- @@ -1,4 +1,4 @@
- -<html><head><body>Black Marketeer of Mammon:<br>
- +<html><body>Black Marketeer of Mammon:<br>
- <font color="FF0000">[Exchange failure]</font><br>
- You don't have enough of the item that you're trying to exchange.<br>
- <Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest BlackMarketeerOfMammon 31092-01.html">Back</Button>
- Index: dist/game/data/scripts/ai/others/BlackMarketeerOfMammon/31092-05.html
- ===================================================================
- --- dist/game/data/scripts/ai/others/BlackMarketeerOfMammon/31092-05.html (revision 7680)
- +++ dist/game/data/scripts/ai/others/BlackMarketeerOfMammon/31092-05.html (nonexistent)
- @@ -1,7 +0,0 @@
- -<html><body>Black Marketeer of Mammon:<br>
- -Do you have a <font color="LEVEL">Guard Agathion Fragment</font>? Then you've come to the right place. I use those fragments to create <font color="LEVEL">Agathion Charms containing the power of Masia's, Paulina's or Tersi's Guard</font>.<br>
- -Also, I make exchanges with <font color="LEVEL">Book of Growth: Guard Agathion</font> which helps with the growth of the Guard Agathion. You'll need <font color="LEVEL">Angel's Breath</font> to exchange and it's sold a Merchant of Mammon.<br>
- -<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 310922001">"Exchange for Guard Agathion Charm."</Button>
- -<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 310922002">"Exchange for Book of Growth: Guard Agathion"</Button>
- -<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest BlackMarketeerOfMammon 31092.html">To the beginning.</Button>
- -</body></html>
- \ No newline at end of file
- Index: dist/game/data/scripts/ai/others/BlackMarketeerOfMammon/31092.html
- ===================================================================
- --- dist/game/data/scripts/ai/others/BlackMarketeerOfMammon/31092.html (revision 7680)
- +++ dist/game/data/scripts/ai/others/BlackMarketeerOfMammon/31092.html (working copy)
- @@ -1,5 +1,8 @@
- <html><body>Black Marketeer of Mammon:<br>
- The LordHush!<br>
- -TraditioThe government is out to get me, so I am forced to do business in the shadows.<br>
- +The government is out to get me, so I am forced to do business in the shadows.<br>
- <Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest BlackMarketeerOfMammon 31092-01.html">"I want to exchange Ancient Adena for Adena."</Button>
- +<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 31092001">"I want to upgrade Talisman of Protection."</Button>
- +<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 31092002">"I want to get a Citrine Pendant."</Button>
- +<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 31092003">"I want to get a Proof of Battle (ForHonor Quest)."</Button>
- </body></html>
- \ No newline at end of file
- Index: dist/game/data/scripts/ai/others/BlackMarketeerOfMammon/BlackMarketeerOfMammon.java
- ===================================================================
- --- dist/game/data/scripts/ai/others/BlackMarketeerOfMammon/BlackMarketeerOfMammon.java (revision 7680)
- +++ dist/game/data/scripts/ai/others/BlackMarketeerOfMammon/BlackMarketeerOfMammon.java (working copy)
- @@ -45,7 +45,7 @@
- public String onAdvEvent(String event, Npc npc, PlayerInstance player)
- {
- String htmltext = event;
- - if (event.equals("31092-01.html") || event.equals("31092-05.html"))
- + if (event.equals("31092-01.html"))
- {
- return event;
- }
- Index: dist/game/data/scripts/ai/others/CastleFlagOfProtection/CastleFlagOfProtection-01.html
- ===================================================================
- --- dist/game/data/scripts/ai/others/CastleFlagOfProtection/CastleFlagOfProtection-01.html (nonexistent)
- +++ dist/game/data/scripts/ai/others/CastleFlagOfProtection/CastleFlagOfProtection-01.html (working copy)
- @@ -0,0 +1,3 @@
- +<html><body>Flag of Protection:<br>
- +(Only characters who are performing For Victory sub quest, from the Exalted, One Who Shatters the Limit quest may take the reward.)<br><br>
- +</body></html>
- \ No newline at end of file
- Index: dist/game/data/scripts/ai/others/CastleFlagOfProtection/CastleFlagOfProtection.html
- ===================================================================
- --- dist/game/data/scripts/ai/others/CastleFlagOfProtection/CastleFlagOfProtection.html (nonexistent)
- +++ dist/game/data/scripts/ai/others/CastleFlagOfProtection/CastleFlagOfProtection.html (working copy)
- @@ -0,0 +1,6 @@
- +<html><body>Flag of Protection:<br>
- +(It's a Flag of Protection with the symbol of the castle. It's the same as what Merlot mentioned)<br><br>
- +<center>
- +<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10825_ForVictory mark">"I'll take this."</Button>
- +</center>
- +</body></html>
- \ No newline at end of file
- Index: dist/game/data/scripts/ai/others/CastleFlagOfProtection/CastleFlagOfProtection.java
- ===================================================================
- --- dist/game/data/scripts/ai/others/CastleFlagOfProtection/CastleFlagOfProtection.java (nonexistent)
- +++ dist/game/data/scripts/ai/others/CastleFlagOfProtection/CastleFlagOfProtection.java (working copy)
- @@ -0,0 +1,67 @@
- +/*
- + * 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 <http://www.gnu.org/licenses/>.
- + */
- +package ai.others.CastleFlagOfProtection;
- +
- +import org.l2jmobius.gameserver.model.actor.Npc;
- +import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
- +import org.l2jmobius.gameserver.model.quest.QuestState;
- +
- +import ai.AbstractNpcAI;
- +
- +/**
- + * Castle Flag of Protection AI.
- + * @author CostyKiller
- + */
- +public class CastleFlagOfProtection extends AbstractNpcAI
- +{
- + // Flag of Protection NPCs
- + private static final int FLAG_GLUDIO = 36741; // 1 Gludio Castle
- + private static final int FLAG_DION = 36742; // 2 Dion Castle
- + private static final int FLAG_GIRAN = 36743; // 3 Giran Castle
- + private static final int FLAG_OREN = 36744; // 4 Oren Castle
- + private static final int FLAG_ADEN = 36745; // 5 Aden Castle
- + private static final int FLAG_INNADRIL = 36746; // 6 Innadril Castle
- + private static final int FLAG_GODDARD = 36747; // 7 Goddard Castle
- + private static final int FLAG_RUNE = 36748; // 8 Rune Castle
- + private static final int FLAG_SCHUTTGART = 36749; // 9 Schuttgart Castle
- +
- + private CastleFlagOfProtection()
- + {
- + addFirstTalkId(FLAG_GLUDIO, FLAG_DION, FLAG_GIRAN, FLAG_OREN, FLAG_ADEN, FLAG_INNADRIL, FLAG_GODDARD, FLAG_RUNE, FLAG_SCHUTTGART);
- + }
- +
- + @Override
- + public String onFirstTalk(Npc npc, PlayerInstance player)
- + {
- + String htmltext;
- + final QuestState qs = player.getQuestState("Q10825_ForVictory");
- + if (((qs != null) && qs.isCond(1)))
- + {
- + htmltext = "CastleFlagOfProtection.html";
- + }
- + else
- + {
- + htmltext = "CastleFlagOfProtection-01.html";
- + }
- + return htmltext;
- + }
- +
- + public static void main(String[] args)
- + {
- + new CastleFlagOfProtection();
- + }
- +}
- \ No newline at end of file
- Index: dist/game/data/scripts/ai/others/FactionCertificates/FactionCertificates.java
- ===================================================================
- --- dist/game/data/scripts/ai/others/FactionCertificates/FactionCertificates.java (nonexistent)
- +++ dist/game/data/scripts/ai/others/FactionCertificates/FactionCertificates.java (working copy)
- @@ -0,0 +1,123 @@
- +/*
- + * 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 <http://www.gnu.org/licenses/>.
- + */
- +package ai.others.FactionCertificates;
- +
- +import org.l2jmobius.gameserver.enums.Faction;
- +import org.l2jmobius.gameserver.model.actor.Npc;
- +import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
- +import org.l2jmobius.gameserver.model.quest.QuestState;
- +
- +import ai.AbstractNpcAI;
- +import quests.Q10875_ForReputation.Q10875_ForReputation;
- +import quests.Q10881_ForThePride.Q10881_ForThePride;
- +
- +/**
- + * Custom Faction Certificates AI.
- + * @author CostyKiller
- + */
- +public class FactionCertificates extends AbstractNpcAI
- +{
- + // NPCs
- + private static final int LEONA_BLACKBIRD = 31595; // Blackbird Guild Leader
- + private static final int KEKROPUS = 34222; // Giant Trackers Guild Leader
- + private static final int IRENE = 34233; // Mother Tree Guardians Guild Leader
- + private static final int FERIN = 34054; // Unwordly Visitors Guild Leader
- + private static final int LOGART_VAN_DIKE = 34235; // Royal Kingdom Guards Guild Leader
- + // Certificates
- + private static final int BLACKBIRD_CLAN_CERTIFICATION = 47840;
- + private static final int GIANT_TRACKERS_CERTIFICATION = 47841;
- + private static final int MOTHER_TREE_GUARDIANS_CERTIFICATION = 47844;
- + private static final int UNWORDLY_VISITORS_CERTIFICATION = 47845;
- + private static final int KINGDOM_ROYAL_GUARDS_CERTIFICATION = 47846;
- + // Other
- + private static final int FACTION_LEVEL = 6;
- +
- + private FactionCertificates()
- + {
- + addStartNpc(LEONA_BLACKBIRD, KEKROPUS, IRENE, FERIN, LOGART_VAN_DIKE);
- + addTalkId(LEONA_BLACKBIRD, KEKROPUS, IRENE, FERIN, LOGART_VAN_DIKE);
- + }
- +
- + @Override
- + public String onAdvEvent(String event, Npc npc, PlayerInstance player)
- + {
- + String htmltext = null;
- + final QuestState qs1 = player.getQuestState(Q10875_ForReputation.class.getSimpleName());
- + final QuestState qs2 = player.getQuestState(Q10881_ForThePride.class.getSimpleName());
- + if (((qs1 != null) && qs1.isStarted()) || ((qs2 != null) && qs2.isStarted()))
- + {
- + if (event.equals("getCertificate"))
- + {
- + switch (npc.getId())
- + {
- + case LEONA_BLACKBIRD:
- + {
- + if (!hasQuestItems(player, BLACKBIRD_CLAN_CERTIFICATION) && (player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= FACTION_LEVEL))
- + {
- + giveItems(player, BLACKBIRD_CLAN_CERTIFICATION, 1);
- + htmltext = "certificate.html";
- + }
- + break;
- + }
- + case KEKROPUS:
- + {
- + if (!hasQuestItems(player, GIANT_TRACKERS_CERTIFICATION) && (player.getFactionLevel(Faction.GIANT_TRACKERS) >= FACTION_LEVEL))
- + {
- + giveItems(player, GIANT_TRACKERS_CERTIFICATION, 1);
- + htmltext = "certificate.html";
- + }
- + break;
- + }
- + case IRENE:
- + {
- + if (!hasQuestItems(player, MOTHER_TREE_GUARDIANS_CERTIFICATION) && (player.getFactionLevel(Faction.MOTHER_TREE_GUARDIANS) >= FACTION_LEVEL))
- + {
- + giveItems(player, MOTHER_TREE_GUARDIANS_CERTIFICATION, 1);
- + htmltext = "certificate.html";
- + }
- + break;
- + }
- + case FERIN:
- + {
- + if (!hasQuestItems(player, UNWORDLY_VISITORS_CERTIFICATION) && (player.getFactionLevel(Faction.UNWORLDLY_VISITORS) >= FACTION_LEVEL))
- + {
- + giveItems(player, UNWORDLY_VISITORS_CERTIFICATION, 1);
- + htmltext = "certificate.html";
- + }
- + break;
- + }
- + case LOGART_VAN_DIKE:
- + {
- + if (!hasQuestItems(player, KINGDOM_ROYAL_GUARDS_CERTIFICATION) && (player.getFactionLevel(Faction.KINGDOM_ROYAL_GUARDS) >= FACTION_LEVEL))
- + {
- + giveItems(player, KINGDOM_ROYAL_GUARDS_CERTIFICATION, 1);
- + htmltext = "certificate.html";
- + }
- + break;
- + }
- + }
- + }
- + }
- + htmltext = "not-ready.html";
- + return htmltext;
- + }
- +
- + public static void main(String[] args)
- + {
- + new FactionCertificates();
- + }
- +}
- Index: dist/game/data/scripts/ai/others/FactionCertificates/certificate.html
- ===================================================================
- --- dist/game/data/scripts/ai/others/FactionCertificates/certificate.html (nonexistent)
- +++ dist/game/data/scripts/ai/others/FactionCertificates/certificate.html (working copy)
- @@ -0,0 +1,3 @@
- +<html><body>Guild Leader:<br>
- +Here is our guild certificate. Use it wisely.<br>
- +</body></html>
- \ No newline at end of file
- Index: dist/game/data/scripts/ai/others/FactionCertificates/not-ready.html
- ===================================================================
- --- dist/game/data/scripts/ai/others/FactionCertificates/not-ready.html (nonexistent)
- +++ dist/game/data/scripts/ai/others/FactionCertificates/not-ready.html (working copy)
- @@ -0,0 +1,4 @@
- +<html><body>Guild Leader:<br>
- +You are not ready to get our certificate. Come back when you are ready.<br>
- +(For Reputation or For The Pride exalted sub quests must be in progress.)
- +</body></html>
- \ No newline at end of file
Add Comment
Please, Sign In to add comment