|
@@ -16,19 +16,20 @@
|
|
|
* 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 hellbound.Hude;
|
|
|
+package hellbound.AI.NPC.Hude;
|
|
|
|
|
|
import com.l2jserver.gameserver.datatables.MultisellData;
|
|
|
-import com.l2jserver.gameserver.instancemanager.HellboundManager;
|
|
|
import com.l2jserver.gameserver.model.actor.L2Npc;
|
|
|
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
|
|
|
import com.l2jserver.gameserver.model.quest.Quest;
|
|
|
-import com.l2jserver.gameserver.model.quest.QuestState;
|
|
|
+
|
|
|
+import hellbound.HellboundEngine;
|
|
|
|
|
|
/**
|
|
|
+ * Hude AI.
|
|
|
* @author DS
|
|
|
*/
|
|
|
-public class Hude extends Quest
|
|
|
+public final class Hude extends Quest
|
|
|
{
|
|
|
private static final int HUDE = 32298;
|
|
|
private static final int BASIC_CERT = 9850;
|
|
@@ -40,25 +41,27 @@ public class Hude extends Quest
|
|
|
private static final int MAP = 9994;
|
|
|
private static final int STINGER = 10012;
|
|
|
|
|
|
+ public Hude()
|
|
|
+ {
|
|
|
+ super(-1, Hude.class.getSimpleName(), "hellbound/AI/NPC");
|
|
|
+ addFirstTalkId(HUDE);
|
|
|
+ addStartNpc(HUDE);
|
|
|
+ addTalkId(HUDE);
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public final String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
|
|
|
{
|
|
|
- QuestState qs = player.getQuestState(getName());
|
|
|
- if (qs == null)
|
|
|
- {
|
|
|
- qs = newQuestState(player);
|
|
|
- }
|
|
|
-
|
|
|
if ("scertif".equalsIgnoreCase(event))
|
|
|
{
|
|
|
- if (HellboundManager.getInstance().getLevel() > 3)
|
|
|
+ if (HellboundEngine.getInstance().getLevel() > 3)
|
|
|
{
|
|
|
- if (qs.hasQuestItems(BASIC_CERT) && (qs.getQuestItemsCount(MARK_OF_BETRAYAL) >= 30) && (qs.getQuestItemsCount(STINGER) >= 60))
|
|
|
+ if (hasQuestItems(player, BASIC_CERT) && (getQuestItemsCount(player, MARK_OF_BETRAYAL) >= 30) && (getQuestItemsCount(player, STINGER) >= 60))
|
|
|
{
|
|
|
- qs.takeItems(MARK_OF_BETRAYAL, 30);
|
|
|
- qs.takeItems(STINGER, 60);
|
|
|
- qs.takeItems(BASIC_CERT, 1);
|
|
|
- qs.giveItems(STANDART_CERT, 1);
|
|
|
+ takeItems(player, MARK_OF_BETRAYAL, 30);
|
|
|
+ takeItems(player, STINGER, 60);
|
|
|
+ takeItems(player, BASIC_CERT, 1);
|
|
|
+ giveItems(player, STANDART_CERT, 1);
|
|
|
return "32298-04a.htm";
|
|
|
}
|
|
|
}
|
|
@@ -66,15 +69,15 @@ public class Hude extends Quest
|
|
|
}
|
|
|
else if ("pcertif".equalsIgnoreCase(event))
|
|
|
{
|
|
|
- if (HellboundManager.getInstance().getLevel() > 6)
|
|
|
+ if (HellboundEngine.getInstance().getLevel() > 6)
|
|
|
{
|
|
|
- if (qs.hasQuestItems(STANDART_CERT) && (qs.getQuestItemsCount(LIFE_FORCE) >= 56) && (qs.getQuestItemsCount(CONTAINED_LIFE_FORCE) >= 14))
|
|
|
+ if (hasQuestItems(player, STANDART_CERT) && (getQuestItemsCount(player, LIFE_FORCE) >= 56) && (getQuestItemsCount(player, CONTAINED_LIFE_FORCE) >= 14))
|
|
|
{
|
|
|
- qs.takeItems(LIFE_FORCE, 56);
|
|
|
- qs.takeItems(CONTAINED_LIFE_FORCE, 14);
|
|
|
- qs.takeItems(STANDART_CERT, 1);
|
|
|
- qs.giveItems(PREMIUM_CERT, 1);
|
|
|
- qs.giveItems(MAP, 1);
|
|
|
+ takeItems(player, LIFE_FORCE, 56);
|
|
|
+ takeItems(player, CONTAINED_LIFE_FORCE, 14);
|
|
|
+ takeItems(player, STANDART_CERT, 1);
|
|
|
+ giveItems(player, PREMIUM_CERT, 1);
|
|
|
+ giveItems(player, MAP, 1);
|
|
|
return "32298-06a.htm";
|
|
|
}
|
|
|
}
|
|
@@ -82,14 +85,14 @@ public class Hude extends Quest
|
|
|
}
|
|
|
else if ("multisell1".equalsIgnoreCase(event))
|
|
|
{
|
|
|
- if (qs.hasQuestItems(STANDART_CERT) || qs.hasQuestItems(PREMIUM_CERT))
|
|
|
+ if (hasQuestItems(player, STANDART_CERT) || hasQuestItems(player, PREMIUM_CERT))
|
|
|
{
|
|
|
MultisellData.getInstance().separateAndSend(322980001, player, npc, false);
|
|
|
}
|
|
|
}
|
|
|
else if ("multisell2".equalsIgnoreCase(event))
|
|
|
{
|
|
|
- if (qs.hasQuestItems(PREMIUM_CERT))
|
|
|
+ if (hasQuestItems(player, PREMIUM_CERT))
|
|
|
{
|
|
|
MultisellData.getInstance().separateAndSend(322980002, player, npc, false);
|
|
|
}
|
|
@@ -101,41 +104,22 @@ public class Hude extends Quest
|
|
|
public final String onFirstTalk(L2Npc npc, L2PcInstance player)
|
|
|
{
|
|
|
String htmltext = "";
|
|
|
- QuestState qs = player.getQuestState(getName());
|
|
|
- if (qs == null)
|
|
|
- {
|
|
|
- qs = newQuestState(player);
|
|
|
- }
|
|
|
-
|
|
|
- if (!qs.hasQuestItems(BASIC_CERT) && !qs.hasQuestItems(STANDART_CERT) && !qs.hasQuestItems(PREMIUM_CERT))
|
|
|
+ if (!hasAtLeastOneQuestItem(player, BASIC_CERT, STANDART_CERT, PREMIUM_CERT))
|
|
|
{
|
|
|
htmltext = "32298-01.htm";
|
|
|
}
|
|
|
- else if (qs.hasQuestItems(BASIC_CERT) && !qs.hasQuestItems(STANDART_CERT) && !qs.hasQuestItems(PREMIUM_CERT))
|
|
|
+ else if (hasQuestItems(player, BASIC_CERT) && !hasAtLeastOneQuestItem(player, STANDART_CERT, PREMIUM_CERT))
|
|
|
{
|
|
|
htmltext = "32298-03.htm";
|
|
|
}
|
|
|
- else if (qs.hasQuestItems(STANDART_CERT) && !qs.hasQuestItems(PREMIUM_CERT))
|
|
|
+ else if (hasQuestItems(player, STANDART_CERT) && !hasQuestItems(player, PREMIUM_CERT))
|
|
|
{
|
|
|
htmltext = "32298-05.htm";
|
|
|
}
|
|
|
- else if (qs.hasQuestItems(PREMIUM_CERT))
|
|
|
+ else if (hasQuestItems(player, PREMIUM_CERT))
|
|
|
{
|
|
|
htmltext = "32298-07.htm";
|
|
|
}
|
|
|
return htmltext;
|
|
|
}
|
|
|
-
|
|
|
- public Hude(int questId, String name, String descr)
|
|
|
- {
|
|
|
- super(questId, name, descr);
|
|
|
- addFirstTalkId(HUDE);
|
|
|
- addStartNpc(HUDE);
|
|
|
- addTalkId(HUDE);
|
|
|
- }
|
|
|
-
|
|
|
- public static void main(String[] args)
|
|
|
- {
|
|
|
- new Hude(-1, "Hude", "hellbound");
|
|
|
- }
|
|
|
}
|