From 01cbfb43ea43364387b96c7a4937ea92de869c01 Mon Sep 17 00:00:00 2001
From: MobiusDev <8391001+MobiusDevelopment@users.noreply.github.com>
Date: Sun, 1 Oct 2017 20:31:03 +0000
Subject: [PATCH] Updated Retrieving the Fragment of Chaos (775). Contributed
by Stayway.
---
.../Q00775_RetrievingTheChaosFragment.java | 105 +++++++++---------
.../game/data/stats/items/47100-47199.xml | 74 ++++++++++--
2 files changed, 120 insertions(+), 59 deletions(-)
diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java
index fdee665c08..3c34f53c5c 100644
--- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java
+++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java
@@ -16,6 +16,7 @@
*/
package quests.Q00775_RetrievingTheChaosFragment;
+import com.l2jmobius.gameserver.enums.Faction;
import com.l2jmobius.gameserver.enums.QuestSound;
import com.l2jmobius.gameserver.enums.QuestType;
import com.l2jmobius.gameserver.model.actor.L2Npc;
@@ -33,9 +34,9 @@ import quests.Q10455_ElikiasLetter.Q10455_ElikiasLetter;
*/
public class Q00775_RetrievingTheChaosFragment extends Quest
{
- // NPC's
+ // NPCs
private static final int LEONA_BLACKBIRD = 31595;
- // Monster's
+ // Monsters
private static final int[] MONSTERS =
{
23388, // Kandiloth
@@ -66,8 +67,9 @@ public class Q00775_RetrievingTheChaosFragment extends Quest
private static final int MIN_LEVEL = 99;
// Item
private static final int CHAOS_FRAGMENT = 37766;
- private static final int BLOODIED_DEMONIC_TOME = 37893;
- private static final int LEONAS_REWARD_BOX = 46559;
+ private static final int BASIC_SUPPLY_BOX = 47172;
+ private static final int INTERMEDIATE_SUPPLY_BOX = 47173;
+ private static final int ADVANCED_SUPPLY_BOX = 47174;
public Q00775_RetrievingTheChaosFragment()
{
@@ -104,50 +106,30 @@ public class Q00775_RetrievingTheChaosFragment extends Quest
}
case "31595-03.html":
{
- if ((getQuestItemsCount(player, CHAOS_FRAGMENT) >= 200) && (getQuestItemsCount(player, CHAOS_FRAGMENT) < 300))
+ if (qs.isCond(2))
{
- giveItems(player, LEONAS_REWARD_BOX, 1);
+ if (player.getFactionLevel(Faction.BLACKBIRD_CLAN) == 0)
+ {
+ player.addFactionPoints(Faction.BLACKBIRD_CLAN, 100);
+ giveItems(player, BASIC_SUPPLY_BOX, 1);
+ addExpAndSp(player, 4522369500L, 10853640);
+ }
+ else if (player.getFactionLevel(Faction.BLACKBIRD_CLAN) <= 1)
+ {
+ player.addFactionPoints(Faction.BLACKBIRD_CLAN, 200);
+ giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
+ addExpAndSp(player, 9044739000L, 21707280);
+ }
+ else if (player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 2)
+ {
+ player.addFactionPoints(Faction.BLACKBIRD_CLAN, 300);
+ giveItems(player, ADVANCED_SUPPLY_BOX, 1);
+ addExpAndSp(player, 13567108500L, 32560920);
+ }
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ break;
}
- else if ((getQuestItemsCount(player, CHAOS_FRAGMENT) >= 300) && (getQuestItemsCount(player, CHAOS_FRAGMENT) < 400))
- {
- giveItems(player, LEONAS_REWARD_BOX, 2);
- }
- else if ((getQuestItemsCount(player, CHAOS_FRAGMENT) >= 400) && (getQuestItemsCount(player, CHAOS_FRAGMENT) < 500))
- {
- giveItems(player, LEONAS_REWARD_BOX, 3);
- }
- else if ((getQuestItemsCount(player, CHAOS_FRAGMENT) >= 500) && (getQuestItemsCount(player, CHAOS_FRAGMENT) < 600))
- {
- giveItems(player, LEONAS_REWARD_BOX, 4);
- }
- else if ((getQuestItemsCount(player, CHAOS_FRAGMENT) >= 600) && (getQuestItemsCount(player, CHAOS_FRAGMENT) < 700))
- {
- giveItems(player, LEONAS_REWARD_BOX, 5);
- }
- else if ((getQuestItemsCount(player, CHAOS_FRAGMENT) >= 700) && (getQuestItemsCount(player, CHAOS_FRAGMENT) < 800))
- {
- giveItems(player, LEONAS_REWARD_BOX, 6);
- }
- else if ((getQuestItemsCount(player, CHAOS_FRAGMENT) >= 800) && (getQuestItemsCount(player, CHAOS_FRAGMENT) < 900))
- {
- giveItems(player, LEONAS_REWARD_BOX, 7);
- }
- else if ((getQuestItemsCount(player, CHAOS_FRAGMENT) >= 900) && (getQuestItemsCount(player, CHAOS_FRAGMENT) < 1000))
- {
- giveItems(player, LEONAS_REWARD_BOX, 8);
- }
- else if (getQuestItemsCount(player, CHAOS_FRAGMENT) >= 1000)
- {
- giveItems(player, LEONAS_REWARD_BOX, 900);
- }
- if (getRandom(100) < 50)
- {
- giveItems(player, BLOODIED_DEMONIC_TOME, 1);
- }
- addExpAndSp(player, 463097250, 111143);
- qs.exitQuest(QuestType.DAILY, true);
- htmltext = event;
- break;
}
}
return htmltext;
@@ -209,14 +191,35 @@ public class Q00775_RetrievingTheChaosFragment extends Quest
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
{
final QuestState qs = getRandomPartyMemberState(killer, -1, 3, npc);
- if ((qs != null) && qs.isStarted() && (getQuestItemsCount(killer, CHAOS_FRAGMENT) < 1000))
+ if (qs != null)
{
- if (getQuestItemsCount(killer, CHAOS_FRAGMENT) == 100)
+ if ((killer.getFactionLevel(Faction.BLACKBIRD_CLAN) == 0) && (getQuestItemsCount(killer, CHAOS_FRAGMENT) < 250))
{
- qs.setCond(2, true);
+ if (getQuestItemsCount(killer, CHAOS_FRAGMENT) == 250)
+ {
+ qs.setCond(2, true);
+ }
+ giveItems(killer, CHAOS_FRAGMENT, 1);
+ playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ if ((killer.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 1) && (getQuestItemsCount(killer, CHAOS_FRAGMENT) < 500))
+ {
+ if (getQuestItemsCount(killer, CHAOS_FRAGMENT) == 500)
+ {
+ qs.setCond(2, true);
+ }
+ giveItems(killer, CHAOS_FRAGMENT, 1);
+ playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ if ((killer.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 2) && (getQuestItemsCount(killer, CHAOS_FRAGMENT) < 750))
+ {
+ if (getQuestItemsCount(killer, CHAOS_FRAGMENT) == 750)
+ {
+ qs.setCond(2, true);
+ }
+ giveItems(killer, CHAOS_FRAGMENT, 1);
+ playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
- giveItems(killer, CHAOS_FRAGMENT, 1);
- playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
return super.onKill(npc, killer, isSummon);
}
diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/stats/items/47100-47199.xml b/L2J_Mobius_3.0_Helios/dist/game/data/stats/items/47100-47199.xml
index c3f86ca5f8..624feadab2 100644
--- a/L2J_Mobius_3.0_Helios/dist/game/data/stats/items/47100-47199.xml
+++ b/L2J_Mobius_3.0_Helios/dist/game/data/stats/items/47100-47199.xml
@@ -681,32 +681,65 @@
-
-
+
+
-
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
+
+
+
+
+
+
+
+
+
+
-
@@ -801,12 +834,37 @@
-
-
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-