Skip to content

Instantly share code, notes, and snippets.

@St3eT
Last active December 15, 2015 20:49
Show Gist options
  • Save St3eT/5321243 to your computer and use it in GitHub Desktop.
Save St3eT/5321243 to your computer and use it in GitHub Desktop.
Clan Traders moved from core do datapack
### Eclipse Workspace Patch 1.0
#P L2J_Server_BETA
Index: java/com/l2jserver/gameserver/model/actor/instance/L2ClanTraderInstance.java
===================================================================
--- java/com/l2jserver/gameserver/model/actor/instance/L2ClanTraderInstance.java (revision 5918)
+++ java/com/l2jserver/gameserver/model/actor/instance/L2ClanTraderInstance.java (working copy)
@@ -1,150 +0,0 @@
-/*
- * Copyright (C) 2004-2013 L2J Server
- *
- * This file is part of L2J Server.
- *
- * L2J Server 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.
- *
- * L2J Server 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 com.l2jserver.gameserver.model.actor.instance;
-
-import com.l2jserver.Config;
-import com.l2jserver.gameserver.model.actor.L2Npc;
-import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
-import com.l2jserver.gameserver.model.items.instance.L2ItemInstance;
-import com.l2jserver.gameserver.network.SystemMessageId;
-import com.l2jserver.gameserver.network.serverpackets.ActionFailed;
-import com.l2jserver.gameserver.network.serverpackets.NpcHtmlMessage;
-import com.l2jserver.gameserver.network.serverpackets.PledgeShowInfoUpdate;
-import com.l2jserver.gameserver.network.serverpackets.SystemMessage;
-
-public final class L2ClanTraderInstance extends L2Npc
-{
- public L2ClanTraderInstance(int objectId, L2NpcTemplate template)
- {
- super(objectId, template);
- setInstanceType(InstanceType.L2ClanTraderInstance);
- }
-
- @Override
- public void onBypassFeedback(L2PcInstance player, String command)
- {
- NpcHtmlMessage html = new NpcHtmlMessage(1);
-
- if (command.equalsIgnoreCase("crp"))
- {
- if (player.getClan().getLevel() > 4)
- {
- html.setFile(player.getHtmlPrefix(), "data/html/clantrader/" + getNpcId() + "-2.htm");
- }
- else
- {
- html.setFile(player.getHtmlPrefix(), "data/html/clantrader/" + getNpcId() + "-1.htm");
- }
-
- sendHtmlMessage(player, html);
- return;
- }
- else if (command.startsWith("exchange"))
- {
- int itemId = Integer.parseInt(command.substring(9).trim());
-
- int reputation = 0;
- int itemCount = 0;
-
- L2ItemInstance item = player.getInventory().getItemByItemId(itemId);
- long playerItemCount = item == null ? 0 : item.getCount();
-
- switch (itemId)
- {
- case 9911:
- reputation = Config.BLOODALLIANCE_POINTS;
- itemCount = 1;
- break;
- case 9910:
- reputation = Config.BLOODOATH_POINTS;
- itemCount = 10;
- break;
- case 9912:
- reputation = Config.KNIGHTSEPAULETTE_POINTS;
- itemCount = 100;
- break;
- }
-
- if (playerItemCount >= itemCount)
- {
- player.destroyItemByItemId("exchange", itemId, itemCount, player, true);
-
- player.getClan().addReputationScore(reputation, true);
- player.getClan().broadcastToOnlineMembers(new PledgeShowInfoUpdate(player.getClan()));
-
- SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.CLAN_ADDED_S1S_POINTS_TO_REPUTATION_SCORE);
- sm.addNumber(reputation);
- player.sendPacket(sm);
-
- html.setFile(player.getHtmlPrefix(), "data/html/clantrader/" + getNpcId() + "-ExchangeSuccess.htm");
- }
- else
- {
- html.setFile(player.getHtmlPrefix(), "data/html/clantrader/" + getNpcId() + "-ExchangeFailed.htm");
- }
-
- sendHtmlMessage(player, html);
- return;
- }
- else
- {
- super.onBypassFeedback(player, command);
- }
- }
-
- private void sendHtmlMessage(L2PcInstance player, NpcHtmlMessage html)
- {
- html.replace("%objectId%", String.valueOf(getObjectId()));
- player.sendPacket(html);
- }
-
- @Override
- public void showChatWindow(L2PcInstance player)
- {
- player.sendPacket(ActionFailed.STATIC_PACKET);
- String filename = "data/html/clantrader/" + getNpcId() + "-no.htm";
-
- if (player.isClanLeader())
- {
- filename = "data/html/clantrader/" + getNpcId() + ".htm";
- }
-
- NpcHtmlMessage html = new NpcHtmlMessage(1);
- html.setFile(player.getHtmlPrefix(), filename);
- html.replace("%objectId%", String.valueOf(getObjectId()));
- player.sendPacket(html);
- }
-
- @Override
- public String getHtmlPath(int npcId, int val)
- {
- String pom = "";
-
- if (val == 0)
- {
- pom = "" + npcId;
- }
- else
- {
- pom = npcId + "-" + val;
- }
-
- return "data/html/clantrader/" + pom + ".htm";
- }
-}
\ No newline at end of file
Index: java/com/l2jserver/gameserver/model/L2Object.java
===================================================================
--- java/com/l2jserver/gameserver/model/L2Object.java (revision 5918)
+++ java/com/l2jserver/gameserver/model/L2Object.java (working copy)
@@ -152,7 +152,6 @@
L2AdventurerInstance(L2NpcInstance),
L2AuctioneerInstance(L2Npc),
L2ClanHallManagerInstance(L2MerchantInstance),
- L2ClanTraderInstance(L2Npc),
L2FameManagerInstance(L2Npc),
L2FishermanInstance(L2MerchantInstance),
L2ManorManagerInstance(L2MerchantInstance),
#P L2J_DataPack_BETA
Index: dist/sql/game/npc.sql
===================================================================
--- dist/sql/game/npc.sql (revision 9596)
+++ dist/sql/game/npc.sql (working copy)
@@ -8080,8 +8080,8 @@
(32021, 32021, "Ice Sculpture", 0, "", 0, "LineageNpcEV.ice_sculpture_c", 16, 20.5, 70, "etc", "L2Npc", 40, 2444.46819, 1345.8, 7.5, 2.7, 40, 43, 30, 21, 20, 20, 0, 0, 688.86373, 295.91597, 470.40463, 216.53847, 253, 4, 333, 0, 0, 0, 50, 120, 0, 1),
(32022, 32022, "Kier", 0, "", 0, "LineageNpcEV.ice_sculpture_b", 12, 24, 70, "etc", "L2Npc", 40, 2444.46819, 1345.8, 7.5, 2.7, 40, 43, 30, 21, 20, 20, 0, 0, 688.86373, 295.91597, 470.40463, 216.53847, 253, 4, 333, 0, 0, 0, 50, 120, 0, 1),
(32023, 32023, "Ice Shelf", 0, "", 0, "LineageNpcEV.ice_shelf", 35, 14.5, 70, "etc", "L2Npc", 40, 2444.46819, 1345.8, 7.5, 2.7, 40, 43, 30, 21, 20, 20, 0, 0, 688.86373, 295.91597, 470.40463, 216.53847, 253, 4, 333, 0, 0, 0, 50, 120, 0, 1),
-(32024, 32024, "Mulia", 0, "Clan Trader", 0, "LineageNPC.e_smith_master_MDwarf", 8, 16.5, 70, "male", "L2ClanTrader", 40, 2444.46819, 1345.8, 7.5, 2.7, 40, 43, 30, 21, 20, 20, 0, 0, 688.86373, 295.91597, 470.40463, 216.53847, 253, 4, 333, 0, 0, 0, 50, 120, 0, 1),
-(32025, 32025, "Ilia", 0, "Clan Trader", 0, "LineageNPC.e_smith_Fdwarf", 8, 17.5, 70, "female", "L2ClanTrader", 40, 2444.46819, 1345.8, 7.5, 2.7, 40, 43, 30, 21, 20, 20, 0, 0, 688.86373, 295.91597, 470.40463, 216.53847, 253, 4, 333, 0, 0, 0, 50, 120, 0, 1),
+(32024, 32024, "Mulia", 0, "Clan Trader", 0, "LineageNPC.e_smith_master_MDwarf", 8, 16.5, 70, "male", "L2Npc", 40, 2444.46819, 1345.8, 7.5, 2.7, 40, 43, 30, 21, 20, 20, 0, 0, 688.86373, 295.91597, 470.40463, 216.53847, 253, 4, 333, 0, 0, 0, 50, 120, 0, 1),
+(32025, 32025, "Ilia", 0, "Clan Trader", 0, "LineageNPC.e_smith_Fdwarf", 8, 17.5, 70, "female", "L2Npc", 40, 2444.46819, 1345.8, 7.5, 2.7, 40, 43, 30, 21, 20, 20, 0, 0, 688.86373, 295.91597, 470.40463, 216.53847, 253, 4, 333, 0, 0, 0, 50, 120, 0, 1),
(32026, 32026, "Hestui Guard", 0, "", 0, "LineageNPC.e_fighterguild_teacher_MOrc", 8, 28.5, 70, "male", "L2Npc", 40, 2444.46819, 1345.8, 7.5, 2.7, 40, 43, 30, 21, 20, 20, 0, 0, 688.86373, 295.91597, 470.40463, 216.53847, 253, 4, 333, 0, 0, 0, 50, 120, 0, 1),
(32027, 32027, "Holy Brazier", 0, "", 0, "LineageNpcEV.grail_brazier_b", 30, 31, 78, "etc", "L2Npc", 40, 2974.356864, 1607.4, 8.5, 3, 40, 43, 30, 21, 20, 20, 0, 0, 890.50086, 332.70061, 608.09666, 243.45587, 253, 4, 333, 0, 0, 0, 50, 120, 0, 1),
(32028, 32028, "Holy Grail", 0, "", 0, "LineageNpcEV.holy_grail", 6.2, 7, 70, "etc", "L2Npc", 40, 2444.46819, 1345.8, 7.5, 2.7, 40, 43, 30, 21, 20, 20, 0, 0, 688.86373, 295.91597, 470.40463, 216.53847, 253, 4, 333, 0, 0, 0, 50, 120, 0, 1),
Index: dist/game/data/html/clantrader/32024-ExchangeFailed.htm
===================================================================
--- dist/game/data/html/clantrader/32024-ExchangeFailed.htm (revision 9596)
+++ dist/game/data/html/clantrader/32024-ExchangeFailed.htm (working copy)
@@ -1,4 +0,0 @@
-<html><body>Clan Trader Mulia:<br>
-You have not brought a sufficient number of the items I requested to justify an increase in reputation.<br>
-<a action="bypass -h npc_%objectId%_Chat 0">Back.</a>
-</body></html>
\ No newline at end of file
Index: dist/game/data/scripts/ai/npc/ClanTrader/ClanTrader.java
===================================================================
--- dist/game/data/scripts/ai/npc/ClanTrader/ClanTrader.java (revision 0)
+++ dist/game/data/scripts/ai/npc/ClanTrader/ClanTrader.java (working copy)
@@ -0,0 +1,125 @@
+/*
+ * Copyright (C) 2004-2013 L2J DataPack
+ *
+ * This file is part of L2J DataPack.
+ *
+ * L2J DataPack 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.
+ *
+ * L2J DataPack 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.npc.ClanTrader;
+
+import ai.npc.AbstractNpcAI;
+
+import com.l2jserver.Config;
+import com.l2jserver.gameserver.model.L2Clan;
+import com.l2jserver.gameserver.model.actor.L2Npc;
+import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
+import com.l2jserver.gameserver.network.SystemMessageId;
+import com.l2jserver.gameserver.network.serverpackets.SystemMessage;
+
+/**
+ * Clan Trader AI
+ * @author St3eT
+ */
+public class ClanTrader extends AbstractNpcAI
+{
+ // Npc
+ private static final int[] CLAN_TRADER =
+ {
+ 32024, // Mulia
+ 32025, // Ilia
+ };
+ // Item
+ private static final int BLOOD_ALLIANCE = 9911; // Blood Alliance
+ private static final int BLOOD_ALLIANCE_COUNT = 1; // Blood Alliance Count
+ private static final int BLOOD_OATH = 9910; // Blood Oath
+ private static final int BLOOD_OATH_COUNT = 10; // Blood Oath Count
+ private static final int KNIGHTS_EPAULETTE = 9912; // Knight's Epaulette
+ private static final int KNIGHTS_EPAULETTE_COUNT = 100; // Knight's Epaulette Count
+
+ private ClanTrader(String name, String descr)
+ {
+ super(name, descr);
+ addStartNpc(CLAN_TRADER);
+ addTalkId(CLAN_TRADER);
+ addFirstTalkId(CLAN_TRADER);
+ }
+
+ @Override
+ public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
+ {
+ String htmltext = null;
+ switch (event)
+ {
+ case "32024.html":
+ case "32024-02.html":
+ case "32025.html":
+ case "32025-02.html":
+ {
+ htmltext = event;
+ break;
+ }
+ case "repinfo":
+ {
+ htmltext = (player.getClan().getLevel() > 4) ? npc.getNpcId() + "-02.html" : npc.getNpcId() + "-05.html";
+ break;
+ }
+ case "exchange-ba":
+ {
+ htmltext = giveReputation(npc, player, Config.BLOODALLIANCE_POINTS, BLOOD_ALLIANCE, BLOOD_ALLIANCE_COUNT);
+ break;
+ }
+ case "exchange-bo":
+ {
+ htmltext = giveReputation(npc, player, Config.BLOODOATH_POINTS, BLOOD_OATH, BLOOD_OATH_COUNT);
+ break;
+ }
+ case "exchange-ke":
+ {
+ htmltext = giveReputation(npc, player, Config.KNIGHTSEPAULETTE_POINTS, KNIGHTS_EPAULETTE, KNIGHTS_EPAULETTE_COUNT);
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ private String giveReputation(L2Npc npc, L2PcInstance player, int count, int itemId, int itemCount)
+ {
+ if (getQuestItemsCount(player, itemId) >= itemCount)
+ {
+ takeItems(player, itemId, itemCount);
+ player.getClan().addReputationScore(count, true);
+
+ final SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.CLAN_ADDED_S1S_POINTS_TO_REPUTATION_SCORE);
+ sm.addNumber(count);
+ player.sendPacket(sm);
+ return npc.getNpcId() + "-04.html";
+ }
+ return npc.getNpcId() + "-03.html";
+ }
+
+ @Override
+ public String onFirstTalk(L2Npc npc, L2PcInstance player)
+ {
+ if (player.isClanLeader() || ((player.getClanPrivileges() & L2Clan.CP_CL_TROOPS_FAME) == L2Clan.CP_CL_TROOPS_FAME))
+ {
+ return npc.getNpcId() + ".html";
+ }
+ return npc.getNpcId() + "-01.html";
+ }
+
+ public static void main(String[] args)
+ {
+ new ClanTrader(ClanTrader.class.getSimpleName(), "ai/npc");
+ }
+}
\ No newline at end of file
Index: dist/game/data/html/clantrader/32024-no.htm
===================================================================
--- dist/game/data/html/clantrader/32024-no.htm (revision 9596)
+++ dist/game/data/html/clantrader/32024-no.htm (working copy)
@@ -1,5 +0,0 @@
-<html><body>Clan Trader Mulia:<br>
-I seek the leader of a Clan!<br>
-That person alone can validate their Clan's reputation and be justly rewarded for doing so...<br>
-<a action="bypass -h npc_%objectId%_Quest">Quest</a>
-</body></html>
\ No newline at end of file
Index: dist/game/data/scripts/ai/npc/ClanTrader/32024-04.html
===================================================================
--- dist/game/data/scripts/ai/npc/ClanTrader/32024-04.html (revision 0)
+++ dist/game/data/scripts/ai/npc/ClanTrader/32024-04.html (working copy)
@@ -0,0 +1,4 @@
+<html><head><body>Clan Trader Mulia:<br>
+Your reputation has been increased.<br><br>
+<a action="bypass -h Quest ClanTrader 32024.html">Back.</a><br>
+</body></html>
\ No newline at end of file
Index: dist/game/data/scripts/ai/npc/ClanTrader/32024-01.html
===================================================================
--- dist/game/data/scripts/ai/npc/ClanTrader/32024-01.html (revision 0)
+++ dist/game/data/scripts/ai/npc/ClanTrader/32024-01.html (working copy)
@@ -0,0 +1,5 @@
+<html><head><body>Clan Trader Mulia:<br>
+I seek the leader of a Clan!<br>
+That person alone can validate their Clan's reputation and be justly rewarded for doing so...<br>
+<a action="bypass -h npc_%objectId%_Quest">Quest</a><br>
+</body></html>
\ No newline at end of file
Index: dist/game/data/html/clantrader/32025-ExchangeSuccess.htm
===================================================================
--- dist/game/data/html/clantrader/32025-ExchangeSuccess.htm (revision 9596)
+++ dist/game/data/html/clantrader/32025-ExchangeSuccess.htm (working copy)
@@ -1,4 +0,0 @@
-<html><body>Clan Trader Ilia:<br>
-You have successfully increase your clan reputation score.<br>
-<a action="bypass -h npc_%objectId%_Chat 0">Back.</a>
-</body></html>
\ No newline at end of file
Index: dist/game/data/scripts/ai/npc/ClanTrader/32025-03.html
===================================================================
--- dist/game/data/scripts/ai/npc/ClanTrader/32025-03.html (revision 0)
+++ dist/game/data/scripts/ai/npc/ClanTrader/32025-03.html (working copy)
@@ -0,0 +1,4 @@
+<html><head><body>Clan Trader Ilia:<br>
+You have not brought a sufficient number of the items I requested to justify an increase in reputation.<br><br>
+<a action="bypass -h Quest ClanTrader 32025.html">Back.</a><br>
+</body></html>
Index: dist/game/data/scripts/ai/npc/ClanTrader/32025-04.html
===================================================================
--- dist/game/data/scripts/ai/npc/ClanTrader/32025-04.html (revision 0)
+++ dist/game/data/scripts/ai/npc/ClanTrader/32025-04.html (working copy)
@@ -0,0 +1,4 @@
+<html><head><body>Clan Trader Ilia:<br>
+Your reputation has been increased.<br><br>
+<a action="bypass -h Quest ClanTrader 32025.html">Back.</a><br>
+</body></html>
Index: dist/game/data/scripts/ai/npc/ClanTrader/32024-02.html
===================================================================
--- dist/game/data/scripts/ai/npc/ClanTrader/32024-02.html (revision 0)
+++ dist/game/data/scripts/ai/npc/ClanTrader/32024-02.html (working copy)
@@ -0,0 +1,9 @@
+<html><head><body>Clan Trader Mulia:<br>
+There are many ways to increase your clan's reputation, from capturing a castle or fortress in battle, to helping out wandering newbies. Protecting a territory is also laudable, and in that spirit I wish to make you an offer if you can bring me these items: <br><br>
+<font color = "LEVEL">1 Blood Alliance</font> to prove that you have successfully defended a castle, <font color = "LEVEL">10 Blood Oaths gained by preserving civic order in a territory</font>, and finally <font color = "LEVEL">100 Knight's Epaulettes to prove that you are invincible in battle</font>.<br><br>
+Bring me these things, and I will personally see to it that your reputation increases.<br><br>
+<a action="bypass -h Quest ClanTrader exchange-ba">Provide 1 Blood Alliance.</a><br>
+<a action="bypass -h Quest ClanTrader exchange-bo">Provide 10 Blood Oaths.</a><br>
+<a action="bypass -h Quest ClanTrader exchange-ke">Provide 100 Knight's Epaulettes.</a><br>
+<a action="bypass -h Quest ClanTrader 32024.html">Back.</a>
+</body></html>
Index: dist/game/data/html/clantrader/32025-no.htm
===================================================================
--- dist/game/data/html/clantrader/32025-no.htm (revision 9596)
+++ dist/game/data/html/clantrader/32025-no.htm (working copy)
@@ -1,5 +0,0 @@
-<html><body>Clan Trader Ilia:<br>
-I seek a partner to a blood oath, the most sacred pledge of allegiance!<br>
-I will not release any item to anyone else! Our reputation depends on it!<br>
-<a action="bypass -h npc_%objectId%_Quest">Quest</a>
-</body></html>
\ No newline at end of file
Index: dist/game/data/scripts/ai/npc/ClanTrader/32025-01.html
===================================================================
--- dist/game/data/scripts/ai/npc/ClanTrader/32025-01.html (revision 0)
+++ dist/game/data/scripts/ai/npc/ClanTrader/32025-01.html (working copy)
@@ -0,0 +1,5 @@
+<html><head><body>Clan Trader Ilia:<br>
+I seek a partner to a blood oath, the most sacred pledge of allegiance!<br>
+I will not release any item to anyone else! Our reputation depends on it!<br>
+<a action="bypass -h npc_%objectId%_Quest">Quest</a><br>
+</body></html>
\ No newline at end of file
Index: dist/game/data/html/clantrader/32024.htm
===================================================================
--- dist/game/data/html/clantrader/32024.htm (revision 9596)
+++ dist/game/data/html/clantrader/32024.htm (working copy)
@@ -1,7 +0,0 @@
-<html><body>Clan Trader Mulia:<br>
-Ah, you are the one who leads the clan. Your excellent reputation precedes you! What do you wish from me?<br>
-<a action="bypass -h npc_%objectId%_multisell 1235">Buy clan items.</a><br>
-<a action="bypass -h npc_%objectId%_crp">Ask about clan reputation.</a><br>
-<a action="bypass -h npc_%objectId%_TerritoryStatus">View information about the lord and tax rate.</a><br>
-<a action="bypass -h npc_%objectId%_Quest">Quest</a>
-</body></html>
\ No newline at end of file
Index: dist/game/data/multisell/1236.xml
===================================================================
--- dist/game/data/multisell/1236.xml (revision 0)
+++ dist/game/data/multisell/1236.xml (working copy)
@@ -0,0 +1,123 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<list applyTaxes="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/multisell.xsd">
+ <item>
+ <!-- Apella Helm -->
+ <ingredient count="1" id="7860" />
+ <!-- Clan reputation points -->
+ <ingredient count="350" id="-200" />
+ <!-- Knight's Epaulette -->
+ <ingredient count="26" id="9912" />
+ <!-- Adena -->
+ <ingredient count="704000" id="57" />
+ <!-- Improved Apella Helm -->
+ <production count="1" id="9830" />
+ </item>
+ <item>
+ <!-- Apella Plate Armor -->
+ <ingredient count="1" id="7861" />
+ <!-- Clan reputation points -->
+ <ingredient count="1824" id="-200" />
+ <!-- Knight's Epaulette -->
+ <ingredient count="115" id="9912" />
+ <!-- Adena -->
+ <ingredient count="3671000" id="57" />
+ <!-- Improved Apella Plate Armor -->
+ <production count="1" id="9831" />
+ </item>
+ <item>
+ <!-- Apella Gauntlet - Heavy Armor -->
+ <ingredient count="1" id="7862" />
+ <!-- Clan reputation points -->
+ <ingredient count="233" id="-200" />
+ <!-- Knight's Epaulette -->
+ <ingredient count="18" id="9912" />
+ <!-- Adena -->
+ <ingredient count="469160" id="57" />
+ <!-- Improved Apella Gauntlet - Heavy Armor -->
+ <production count="1" id="9832" />
+ </item>
+ <item >
+ <!-- Apella Solleret - Heavy Armor -->
+ <ingredient count="1" id="7863" />
+ <!-- Clan reputation points -->
+ <ingredient count="233" id="-200" />
+ <!-- Knight's Epaulette -->
+ <ingredient count="18" id="9912" />
+ <!-- Adena -->
+ <ingredient count="469160" id="57" />
+ <!-- Improved Apella Solleret - Heavy Armor -->
+ <production count="1" id="9833" />
+ </item>
+ <item>
+ <!-- Apella Brigandine -->
+ <ingredient count="1" id="7864" />
+ <!-- Clan reputation points -->
+ <ingredient count="1367" id="-200" />
+ <!-- Knight's Epaulette -->
+ <ingredient count="86" id="9912" />
+ <!-- Adena -->
+ <ingredient count="2751800" id="57" />
+ <!-- Improved Apella Brigandine -->
+ <production count="1" id="9834" />
+ </item>
+ <item>
+ <!-- Apella Leather Gloves - Light Armor -->
+ <ingredient count="1" id="7865" />
+ <!-- Clan reputation points -->
+ <ingredient count="233" id="-200" />
+ <!-- Knight's Epaulette -->
+ <ingredient count="18" id="9912" />
+ <!-- Adena -->
+ <ingredient count="469160" id="57" />
+ <!-- Improved Apella Leather Gloves - Light Armor -->
+ <production count="1" id="9835" />
+ </item>
+ <item>
+ <!-- Apella Boots - Light Armor -->
+ <ingredient count="1" id="7866" />
+ <!-- Clan reputation points -->
+ <ingredient count="233" id="-200" />
+ <!-- Knight's Epaulette -->
+ <ingredient count="18" id="9912" />
+ <!-- Adena -->
+ <ingredient count="469160" id="57" />
+ <!-- Improved Apella Boots - Light Armor -->
+ <production count="1" id="9836" />
+ </item>
+ <item>
+ <!-- Apella Doublet -->
+ <ingredient count="1" id="7867" />
+ <!-- Clan reputation points -->
+ <ingredient count="1367" id="-200" />
+ <!-- Knight's Epaulette -->
+ <ingredient count="86" id="9912" />
+ <!-- Adena -->
+ <ingredient count="2751800" id="57" />
+ <!-- Improved Apella Doublet -->
+ <production count="1" id="9837" />
+ </item>
+ <item>
+ <!-- Apella Silk Gloves - Robe -->
+ <ingredient count="1" id="7868" />
+ <!-- Clan reputation points -->
+ <ingredient count="233" id="-200" />
+ <!-- Knight's Epaulette -->
+ <ingredient count="18" id="9912" />
+ <!-- Adena -->
+ <ingredient count="469160" id="57" />
+ <!-- Improved Apella Silk Gloves - Robe -->
+ <production count="1" id="9838" />
+ </item>
+ <item>
+ <!-- Apella Sandals - Robe -->
+ <ingredient count="1" id="7869" />
+ <!-- Clan reputation points -->
+ <ingredient count="233" id="-200" />
+ <!-- Knight's Epaulette -->
+ <ingredient count="18" id="9912" />
+ <!-- Adena -->
+ <ingredient count="469160" id="57" />
+ <!-- Improved Apella Sandals - Robe -->
+ <production count="1" id="9839" />
+ </item>
+</list>
\ No newline at end of file
Index: dist/game/data/scripts/ai/npc/ClanTrader/32025-02.html
===================================================================
--- dist/game/data/scripts/ai/npc/ClanTrader/32025-02.html (revision 0)
+++ dist/game/data/scripts/ai/npc/ClanTrader/32025-02.html (working copy)
@@ -0,0 +1,9 @@
+<html><head><body>Clan Trader Ilia:<br>
+There are many ways to increase your clan's reputation, from capturing a castle or fortress in battle, to helping out wandering newbies. Protecting a territory is also laudable, and in that spirit I wish to make you an offer if you can bring me these items:<br><br>
+<font color = "LEVEL">1 Blood Alliance</font> to prove that you have successfully defended a castle, <font color = "LEVEL">10 Blood Oaths gained by preserving civic order in a territory</font>, and finally <font color = "LEVEL">100 Knight's Epaulettes to prove that you are invincible in battle</font>.<br><br>
+Bring me these things, and I will personally see to it that your reputation increases.<br><br>
+<a action="bypass -h Quest ClanTrader exchange-ba">Provide 1 Blood Alliance.</a><br>
+<a action="bypass -h Quest ClanTrader exchange-bo">Provide 10 Blood Oaths.</a><br>
+<a action="bypass -h Quest ClanTrader exchange-ke">Provide 100 Knight's Epaulettes.</a><br>
+<a action="bypass -h Quest ClanTrader 32025.html">Back.</a><br>
+</body></html>
Index: dist/game/data/html/clantrader/32025-ExchangeFailed.htm
===================================================================
--- dist/game/data/html/clantrader/32025-ExchangeFailed.htm (revision 9596)
+++ dist/game/data/html/clantrader/32025-ExchangeFailed.htm (working copy)
@@ -1,4 +0,0 @@
-<html><body>Clan Trader Ilia:<br>
-You have not brought a sufficient number of the items I requested to justify an increase in reputation.<br>
-<a action="bypass -h npc_%objectId%_Chat 0">Back.</a>
-</body></html>
\ No newline at end of file
Index: dist/game/data/scripts.cfg
===================================================================
--- dist/game/data/scripts.cfg (revision 9596)
+++ dist/game/data/scripts.cfg (working copy)
@@ -15,6 +15,7 @@
ai/npc/CastleBlacksmith/CastleBlacksmith.java
ai/npc/CastleTeleporter/CastleTeleporter.java
ai/npc/CastleWarehouse/CastleWarehouse.java
+ai/npc/ClanTrader/ClanTrader.java
ai/npc/Dorian/Dorian.java
ai/npc/DragonVortex/DragonVortex.java
ai/npc/ForgeOfTheGods/ForgeOfTheGods.java
Index: dist/game/data/html/clantrader/32024-1.htm
===================================================================
--- dist/game/data/html/clantrader/32024-1.htm (revision 9596)
+++ dist/game/data/html/clantrader/32024-1.htm (working copy)
@@ -1,4 +0,0 @@
-<html><body>Clan Trader Mulia:<br>
-The maximum clan level for raising reputation is 5.<br>
-<a action="bypass -h npc_%objectId%_Chat 0">Back.</a>
-</body></html>
\ No newline at end of file
Index: dist/game/data/scripts/ai/npc/ClanTrader/32024-05.html
===================================================================
--- dist/game/data/scripts/ai/npc/ClanTrader/32024-05.html (revision 0)
+++ dist/game/data/scripts/ai/npc/ClanTrader/32024-05.html (working copy)
@@ -0,0 +1,4 @@
+<html><head><body>Clan Trader Mulia:<br>
+The maximum clan level for raising reputation is 5.<br><br>
+<a action="bypass -h Quest ClanTrader 32024.html">Back.</a><br>
+</body></html>
\ No newline at end of file
Index: dist/game/data/html/clantrader/32024-ExchangeSuccess.htm
===================================================================
--- dist/game/data/html/clantrader/32024-ExchangeSuccess.htm (revision 9596)
+++ dist/game/data/html/clantrader/32024-ExchangeSuccess.htm (working copy)
@@ -1,4 +0,0 @@
-<html><body>Clan Trader Mulia:<br>
-You have successfully increase your clan reputation score.<br>
-<a action="bypass -h npc_%objectId%_Chat 0">Back.</a>
-</body></html>
\ No newline at end of file
Index: dist/game/data/scripts/ai/npc/ClanTrader/32024-03.html
===================================================================
--- dist/game/data/scripts/ai/npc/ClanTrader/32024-03.html (revision 0)
+++ dist/game/data/scripts/ai/npc/ClanTrader/32024-03.html (working copy)
@@ -0,0 +1,4 @@
+<html><head><body>Clan Trader Mulia:<br>
+You have not brought a sufficient number of the items I requested to justify an increase in reputation.<br><br>
+<a action="bypass -h Quest ClanTrader 32024.html">Back.</a><br>
+</body></html>
Index: dist/game/data/html/clantrader/32025.htm
===================================================================
--- dist/game/data/html/clantrader/32025.htm (revision 9596)
+++ dist/game/data/html/clantrader/32025.htm (working copy)
@@ -1,7 +0,0 @@
-<html><body>Clan Trader Ilia:<br>
-Ah! A resolution pledged with blood, and a pledge to unite. Since you are a master of that pledge, what is it you wish from me?<br>
-<a action="bypass -h npc_%objectId%_multisell 1235">Buy clan items.</a><br>
-<a action="bypass -h npc_%objectId%_crp">Ask about clan reputation.</a><br>
-<a action="bypass -h npc_%objectId%_TerritoryStatus">View information about the lord and tax rate.</a><br>
-<a action="bypass -h npc_%objectId%_Quest">Quest.</a>
-</body></html>
\ No newline at end of file
Index: dist/game/data/scripts/ai/npc/ClanTrader/32025.html
===================================================================
--- dist/game/data/scripts/ai/npc/ClanTrader/32025.html (revision 0)
+++ dist/game/data/scripts/ai/npc/ClanTrader/32025.html (working copy)
@@ -0,0 +1,8 @@
+<html><head><body>Clan Trader Ilia:<br>
+We swore the blood oath together, did we not? If you are that oath-holder, come speak with me.<br>
+<a action="bypass -h npc_%objectId%_multisell 1235">Buy a Clan Item.</a><br>
+<a action="bypass -h npc_%objectId%_multisell 1236">Upgrade a clan item.</a><br>
+<a action="bypass -h Quest ClanTrader repinfo">Ask about Clan Reputation Points.</a><br>
+<a action="bypass -h npc_%objectId%_TerritoryStatus">Ask about the local lord and tax rate.</a><br>
+<a action="bypass -h npc_%objectId%_Quest">Quest.</a><br>
+</body></html>
\ No newline at end of file
Index: dist/game/data/html/clantrader/32025-1.htm
===================================================================
--- dist/game/data/html/clantrader/32025-1.htm (revision 9596)
+++ dist/game/data/html/clantrader/32025-1.htm (working copy)
@@ -1,4 +0,0 @@
-<html><body>Clan Trader Ilia:<br>
-The maximum clan level for raising reputation is 5.<br>
-<a action="bypass -h npc_%objectId%_Chat 0">Back.</a>
-</body></html>
\ No newline at end of file
Index: dist/game/data/html/clantrader/32024-2.htm
===================================================================
--- dist/game/data/html/clantrader/32024-2.htm (revision 9596)
+++ dist/game/data/html/clantrader/32024-2.htm (working copy)
@@ -1,9 +0,0 @@
-<html><body>Clan Trader Mulia:<br>
-There are many ways to increase your clan's reputation, from capturing a castle or fortress in battle, to helping our wandering newbies. Protection a territory is also laudable, and in that spirit I wish to make you an offer if you can bring me these items:<br>
-<font color="LEVEL">1 Blood Alliance</font> to prove that you have successfully defended a castle, <font color="LEVEL">10 Blood Oaths gained by preserving civic order in a territory</font>, and finally <font color="LEVEL">100 Knight's Epaulettes to prove that you are invincible in battle</font>.<br>
-Bring me these things, and I will personally see to it that your reputation increases.<br>
-<a action="bypass -h npc_%objectId%_exchange 9911">Provide 1 Blood Alliance.</a><br>
-<a action="bypass -h npc_%objectId%_exchange 9910">Provide 10 Blood Oaths.</a><br>
-<a action="bypass -h npc_%objectId%_exchange 9912">Provide 100 Knight's Epaulettes.</a><br>
-<a action="bypass -h npc_%objectId%_Chat 0">Back.</a>
-</body></html>
\ No newline at end of file
Index: dist/game/data/scripts/ai/npc/ClanTrader/32025-05.html
===================================================================
--- dist/game/data/scripts/ai/npc/ClanTrader/32025-05.html (revision 0)
+++ dist/game/data/scripts/ai/npc/ClanTrader/32025-05.html (working copy)
@@ -0,0 +1,4 @@
+<html><head><body>Clan Trader Ilia:<br>
+The maximum clan level for raising reputation is 5.<br><br>
+<a action="bypass -h Quest ClanTrader 32025.html">Back.</a><br>
+</body></html>
\ No newline at end of file
Index: dist/game/data/html/clantrader/32025-2.htm
===================================================================
--- dist/game/data/html/clantrader/32025-2.htm (revision 9596)
+++ dist/game/data/html/clantrader/32025-2.htm (working copy)
@@ -1,9 +0,0 @@
-<html><body>Clan Trader Ilia:<br>
-There are many ways to increase your clan's reputation, from capturing a castle or fortress in battle, to helping our wandering newbies. Protection a territory is also laudable, and in that spirit I wish to make you an offer if you can bring me these items:<br>
-<font color="LEVEL">1 Blood Alliance</font> to prove that you have successfully defended a castle, <font color="LEVEL">10 Blood Oaths gained by preserving civic order in a territory</font>, and finally <font color="LEVEL">100 Knight's Epaulettes to prove that you are invincible in battle</font>.<br>
-Bring me these things, and I will personally see to it that your reputation increases.<br>
-<a action="bypass -h npc_%objectId%_exchange 9911">Provide 1 Blood Alliance.</a><br>
-<a action="bypass -h npc_%objectId%_exchange 9910">Provide 10 Blood Oaths.</a><br>
-<a action="bypass -h npc_%objectId%_exchange 9912">Provide 100 Knight's Epaulettes.</a><br>
-<a action="bypass -h npc_%objectId%_Chat 0">Back.</a>
-</body></html>
\ No newline at end of file
Index: dist/game/data/scripts/ai/npc/ClanTrader/32024.html
===================================================================
--- dist/game/data/scripts/ai/npc/ClanTrader/32024.html (revision 0)
+++ dist/game/data/scripts/ai/npc/ClanTrader/32024.html (working copy)
@@ -0,0 +1,8 @@
+<html><head><body>Clan Trader Mulia:<br>
+Oh, renowned leader of the clan! What business do you have with me?<br>
+<a action="bypass -h npc_%objectId%_multisell 1235">Buy a Clan Item.</a><br>
+<a action="bypass -h npc_%objectId%_multisell 1236">Upgrade a clan item.</a><br>
+<a action="bypass -h Quest ClanTrader repinfo">Ask about Clan Reputation Points.</a><br>
+<a action="bypass -h npc_%objectId%_TerritoryStatus">Ask about the local lord and tax rate.</a><br>
+<a action="bypass -h npc_%objectId%_Quest">Quest.</a><br>
+</body></html>
\ No newline at end of file
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment