Some updates for exalted quests.

Contributed by CostyKiller.
This commit is contained in:
MobiusDevelopment
2021-04-03 07:54:37 +00:00
parent 479d82cad7
commit 8b0c77147b
12 changed files with 370 additions and 96 deletions

View File

@@ -16,13 +16,18 @@
*/ */
package quests.Q10507_ObtainingNewPower; package quests.Q10507_ObtainingNewPower;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.Config; import org.l2jmobius.Config;
import org.l2jmobius.gameserver.enums.QuestSound; import org.l2jmobius.gameserver.enums.QuestSound;
import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
import org.l2jmobius.gameserver.model.quest.Quest; import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState; import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State; import org.l2jmobius.gameserver.model.quest.State;
import org.l2jmobius.gameserver.network.NpcStringId;
import quests.Q10879_ExaltedGuideToPower.Q10879_ExaltedGuideToPower; import quests.Q10879_ExaltedGuideToPower.Q10879_ExaltedGuideToPower;
@@ -40,6 +45,7 @@ public class Q10507_ObtainingNewPower extends Quest
// Misc // Misc
private static final int MIN_LEVEL = 107; private static final int MIN_LEVEL = 107;
private static final int MIN_COMPLETE_LEVEL = 110; private static final int MIN_COMPLETE_LEVEL = 110;
private static final int REACH_LV_110 = NpcStringId.REACH_LV_110.getId();
private static final int PROOF_OF_STRENGTH_NEEDED = 160000; private static final int PROOF_OF_STRENGTH_NEEDED = 160000;
// Monsters // Monsters
private static final int[] MONSTERS = private static final int[] MONSTERS =
@@ -233,6 +239,23 @@ public class Q10507_ObtainingNewPower extends Quest
{ {
qs.setCond(2, true); qs.setCond(2, true);
} }
sendNpcLogList(player);
} }
} }
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
if (player.getLevel() >= MIN_COMPLETE_LEVEL)
{
holder.add(new NpcLogListHolder(REACH_LV_110, true, 1));
}
return holder;
}
return super.getNpcLogList(player);
}
} }

View File

@@ -16,6 +16,9 @@
*/ */
package quests.Q10811_ExaltedOneWhoFacesTheLimit; package quests.Q10811_ExaltedOneWhoFacesTheLimit;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.Config; import org.l2jmobius.Config;
import org.l2jmobius.gameserver.data.xml.CategoryData; import org.l2jmobius.gameserver.data.xml.CategoryData;
import org.l2jmobius.gameserver.enums.CategoryType; import org.l2jmobius.gameserver.enums.CategoryType;
@@ -24,9 +27,11 @@ import org.l2jmobius.gameserver.enums.Movie;
import org.l2jmobius.gameserver.enums.Race; import org.l2jmobius.gameserver.enums.Race;
import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
import org.l2jmobius.gameserver.model.quest.Quest; import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState; import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State; import org.l2jmobius.gameserver.model.quest.State;
import org.l2jmobius.gameserver.network.NpcStringId;
/** /**
* Exalted, One Who Faces the Limit (10811) * Exalted, One Who Faces the Limit (10811)
@@ -42,24 +47,25 @@ public class Q10811_ExaltedOneWhoFacesTheLimit extends Quest
// Misc // Misc
private static final int MIN_LEVEL = 100; private static final int MIN_LEVEL = 100;
private static final int MIN_COMPLETE_LEVEL = 101; private static final int MIN_COMPLETE_LEVEL = 101;
private static final int REACH_LV_101 = NpcStringId.REACH_LV_101.getId();
private static final int SLAYERS_PROOF_NEEDED = 40000; private static final int SLAYERS_PROOF_NEEDED = 40000;
// Reward // Reward
private static final int SPELLBOOK_DIGNITY_OF_THE_EXALTED = 45922; private static final int SPELLBOOK_DIGNITY_OF_THE_EXALTED_LV1 = 45922;
private static final int EXATLED_HEAVY_ARMOR_PACK = 81203; private static final int EXALTED_HEAVY_ARMOR_PACK = 81203;
private static final int EXATLED_LIGHT_ARMOR_PACK = 81204; private static final int EXALTED_LIGHT_ARMOR_PACK = 81204;
private static final int EXATLED_ROBE_PACK = 81205; private static final int EXALTED_ROBE_PACK = 81205;
private static final int FIRST_EXALTED_QUEST_REWARD_PHYSICAL = 81207; private static final int FIRST_EXALTED_QUEST_REWARD_PHYSICAL = 81207;
private static final int FIRST_EXALTED_QUEST_REWARD_MAGIC = 81208; private static final int FIRST_EXALTED_QUEST_REWARD_MAGIC = 81208;
private static final int EXALTED_CUTTER = 81157; private static final int EXALTED_CUTTER = 81157;
private static final int EXALTED_SLASHER = 81158; private static final int EXALTED_SLASHER = 81158;
private static final int EXALTED_AVENGER = 81159; private static final int EXALTED_AVENGER = 81159;
private static final int EXALTED_FIGHTER = 81160; private static final int EXALTED_FIGHTER = 81160;
private static final int EXALTED_STROMER = 81161; private static final int EXALTED_STORMER = 81161;
private static final int EXALTED_THROWER = 81162; private static final int EXALTED_THROWER = 81162;
private static final int EXALTED_SHOOTER = 81163; private static final int EXALTED_SHOOTER = 81163;
private static final int EXALTED_BUSTER = 81164; private static final int EXALTED_BUSTER = 81164;
private static final int EXALTED_CASTER = 81165; private static final int EXALTED_CASTER = 81165;
private static final int EXALTED_RETIBUTER = 81166; private static final int EXALTED_RETRIBUTER = 81166;
private static final int EXALTED_DUAL_SWORDS = 81167; private static final int EXALTED_DUAL_SWORDS = 81167;
private static final int EXALTED_DUAL_DAGGERS = 81168; private static final int EXALTED_DUAL_DAGGERS = 81168;
// Monsters // Monsters
@@ -256,7 +262,7 @@ public class Q10811_ExaltedOneWhoFacesTheLimit extends Quest
{ {
if (qs.isCond(3)) if (qs.isCond(3))
{ {
giveItems(player, SPELLBOOK_DIGNITY_OF_THE_EXALTED, 1); giveItems(player, SPELLBOOK_DIGNITY_OF_THE_EXALTED_LV1, 1);
switch (race) switch (race)
{ {
case HUMAN: case HUMAN:
@@ -266,49 +272,49 @@ public class Q10811_ExaltedOneWhoFacesTheLimit extends Quest
if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_FEOH_GROUP, classId.getId())) if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_FEOH_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_BUSTER, 1); giveItems(player, EXALTED_BUSTER, 1);
giveItems(player, EXATLED_ROBE_PACK, 1); giveItems(player, EXALTED_ROBE_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_MAGIC, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_MAGIC, 1);
} }
else if ((CategoryData.getInstance().isInCategory(CategoryType.SIXTH_WYNN_GROUP, classId.getId()))) else if ((CategoryData.getInstance().isInCategory(CategoryType.SIXTH_WYNN_GROUP, classId.getId())))
{ {
giveItems(player, EXALTED_RETIBUTER, 1); giveItems(player, EXALTED_RETRIBUTER, 1);
giveItems(player, EXATLED_ROBE_PACK, 1); giveItems(player, EXALTED_ROBE_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_EOLH_GROUP, classId.getId())) else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_EOLH_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_CASTER, 1); giveItems(player, EXALTED_CASTER, 1);
giveItems(player, EXATLED_ROBE_PACK, 1); giveItems(player, EXALTED_ROBE_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_MAGIC, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_MAGIC, 1);
} }
else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_OTHEL_GROUP, classId.getId())) else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_OTHEL_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_DUAL_DAGGERS, 1); giveItems(player, EXALTED_DUAL_DAGGERS, 1);
giveItems(player, EXATLED_LIGHT_ARMOR_PACK, 1); giveItems(player, EXALTED_LIGHT_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_YR_GROUP, classId.getId())) else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_YR_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_THROWER, 1); giveItems(player, EXALTED_THROWER, 1);
giveItems(player, EXATLED_LIGHT_ARMOR_PACK, 1); giveItems(player, EXALTED_LIGHT_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_IS_GROUP, classId.getId()) || (player.getClassId() == ClassId.TYRR_DUELIST)) else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_IS_GROUP, classId.getId()) || (player.getClassId() == ClassId.TYRR_DUELIST))
{ {
giveItems(player, EXALTED_DUAL_SWORDS, 1); giveItems(player, EXALTED_DUAL_SWORDS, 1);
giveItems(player, EXATLED_HEAVY_ARMOR_PACK, 1); giveItems(player, EXALTED_HEAVY_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else if (player.getClassId() == ClassId.TYRR_DREADNOUGHT) else if (player.getClassId() == ClassId.TYRR_DREADNOUGHT)
{ {
giveItems(player, EXALTED_STROMER, 1); giveItems(player, EXALTED_STORMER, 1);
giveItems(player, EXATLED_HEAVY_ARMOR_PACK, 1); giveItems(player, EXALTED_HEAVY_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_SIGEL_GROUP, classId.getId())) else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_SIGEL_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_CUTTER, 1); giveItems(player, EXALTED_CUTTER, 1);
giveItems(player, EXATLED_HEAVY_ARMOR_PACK, 1); giveItems(player, EXALTED_HEAVY_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
break; break;
@@ -318,13 +324,13 @@ public class Q10811_ExaltedOneWhoFacesTheLimit extends Quest
if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_OTHEL_GROUP, classId.getId())) if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_OTHEL_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_DUAL_DAGGERS, 1); giveItems(player, EXALTED_DUAL_DAGGERS, 1);
giveItems(player, EXATLED_LIGHT_ARMOR_PACK, 1); giveItems(player, EXALTED_LIGHT_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else else
{ {
giveItems(player, EXALTED_AVENGER, 1); giveItems(player, EXALTED_AVENGER, 1);
giveItems(player, EXATLED_HEAVY_ARMOR_PACK, 1); giveItems(player, EXALTED_HEAVY_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
break; break;
@@ -334,19 +340,19 @@ public class Q10811_ExaltedOneWhoFacesTheLimit extends Quest
if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_IS_GROUP, classId.getId())) if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_IS_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_DUAL_SWORDS, 1); giveItems(player, EXALTED_DUAL_SWORDS, 1);
giveItems(player, EXATLED_HEAVY_ARMOR_PACK, 1); giveItems(player, EXALTED_HEAVY_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else if (player.getClassId() == ClassId.TYRR_GRAND_KHAVATARI) else if (player.getClassId() == ClassId.TYRR_GRAND_KHAVATARI)
{ {
giveItems(player, EXALTED_FIGHTER, 1); giveItems(player, EXALTED_FIGHTER, 1);
giveItems(player, EXATLED_LIGHT_ARMOR_PACK, 1); giveItems(player, EXALTED_LIGHT_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else if (player.getClassId() == ClassId.TYRR_TITAN) else if (player.getClassId() == ClassId.TYRR_TITAN)
{ {
giveItems(player, EXALTED_SLASHER, 1); giveItems(player, EXALTED_SLASHER, 1);
giveItems(player, EXATLED_HEAVY_ARMOR_PACK, 1); giveItems(player, EXALTED_HEAVY_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
break; break;
@@ -356,19 +362,19 @@ public class Q10811_ExaltedOneWhoFacesTheLimit extends Quest
if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_FEOH_GROUP, classId.getId())) if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_FEOH_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_BUSTER, 1); giveItems(player, EXALTED_BUSTER, 1);
giveItems(player, EXATLED_ROBE_PACK, 1); giveItems(player, EXALTED_ROBE_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_MAGIC, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_MAGIC, 1);
} }
else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_YR_GROUP, classId.getId())) else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_YR_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_SHOOTER, 1); giveItems(player, EXALTED_SHOOTER, 1);
giveItems(player, EXATLED_LIGHT_ARMOR_PACK, 1); giveItems(player, EXALTED_LIGHT_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else else
{ {
giveItems(player, EXALTED_SLASHER, 1); giveItems(player, EXALTED_SLASHER, 1);
giveItems(player, EXATLED_LIGHT_ARMOR_PACK, 1); giveItems(player, EXALTED_LIGHT_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
break; break;
} }
@@ -378,14 +384,14 @@ public class Q10811_ExaltedOneWhoFacesTheLimit extends Quest
{ {
if (player.isMageClass()) if (player.isMageClass())
{ {
giveItems(player, EXALTED_RETIBUTER, 1); giveItems(player, EXALTED_RETRIBUTER, 1);
giveItems(player, EXATLED_ROBE_PACK, 1); giveItems(player, EXALTED_ROBE_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_MAGIC, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_MAGIC, 1);
} }
else else
{ {
giveItems(player, EXALTED_FIGHTER, 1); giveItems(player, EXALTED_FIGHTER, 1);
giveItems(player, EXATLED_LIGHT_ARMOR_PACK, 1); giveItems(player, EXALTED_LIGHT_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
break; break;
@@ -459,6 +465,23 @@ public class Q10811_ExaltedOneWhoFacesTheLimit extends Quest
{ {
qs.setCond(3, true); qs.setCond(3, true);
} }
sendNpcLogList(player);
} }
} }
}
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(2))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
if (player.getLevel() >= MIN_COMPLETE_LEVEL)
{
holder.add(new NpcLogListHolder(REACH_LV_101, true, 1));
}
return holder;
}
return super.getNpcLogList(player);
}
}

View File

@@ -16,6 +16,9 @@
*/ */
package quests.Q10817_ExaltedOneWhoOvercomesTheLimit; package quests.Q10817_ExaltedOneWhoOvercomesTheLimit;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.Config; import org.l2jmobius.Config;
import org.l2jmobius.gameserver.data.xml.CategoryData; import org.l2jmobius.gameserver.data.xml.CategoryData;
import org.l2jmobius.gameserver.enums.CategoryType; import org.l2jmobius.gameserver.enums.CategoryType;
@@ -23,9 +26,11 @@ import org.l2jmobius.gameserver.enums.ClassId;
import org.l2jmobius.gameserver.enums.Race; import org.l2jmobius.gameserver.enums.Race;
import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
import org.l2jmobius.gameserver.model.quest.Quest; import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState; import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State; import org.l2jmobius.gameserver.model.quest.State;
import org.l2jmobius.gameserver.network.NpcStringId;
import quests.Q10811_ExaltedOneWhoFacesTheLimit.Q10811_ExaltedOneWhoFacesTheLimit; import quests.Q10811_ExaltedOneWhoFacesTheLimit.Q10811_ExaltedOneWhoFacesTheLimit;
@@ -42,15 +47,16 @@ public class Q10817_ExaltedOneWhoOvercomesTheLimit extends Quest
private static final int PROOF_OF_RESISTANCE = 80823; private static final int PROOF_OF_RESISTANCE = 80823;
private static final int LIONEL_MISSION_LIST_2 = 45632; private static final int LIONEL_MISSION_LIST_2 = 45632;
// Rewards // Rewards
private static final int SPELLBOOK_DIGNITY_OF_THE_EXALTED = 45923; private static final int SPELLBOOK_DIGNITY_OF_THE_EXALTED_LV2 = 45923;
private static final int SPELLBOOK_BELIEF_OF_THE_EXALTED = 45925; private static final int SPELLBOOK_BELIEF_OF_THE_EXALTED = 45925;
private static final int SPELLBOOK_FAVOR_OF_THE_EXALTED = 45928; private static final int SPELLBOOK_FAVOR_OF_THE_EXALTED_LV1 = 45928;
private static final int EXALSTED_WEAPON_UPGRADE_STONE = 81200; private static final int EXALTED_WEAPON_UPGRADE_STONE = 81200;
private static final int SECOND_EXALTED_QUEST_REWARD_P = 81209; private static final int SECOND_EXALTED_QUEST_REWARD_P = 81209;
private static final int SECOND_EXALTED_QUEST_REWARD_M = 81210; private static final int SECOND_EXALTED_QUEST_REWARD_M = 81210;
// Misc // Misc
private static final int MIN_LEVEL = 101; private static final int MIN_LEVEL = 101;
private static final int MIN_COMPLETE_LEVEL = 102; private static final int MIN_COMPLETE_LEVEL = 102;
private static final int REACH_LV_102 = NpcStringId.REACH_LV_102.getId();
private static final int PROOF_OF_RESISTANCE_NEEDED = 40000; private static final int PROOF_OF_RESISTANCE_NEEDED = 40000;
// Monsters // Monsters
private static final int[] MONSTERS = private static final int[] MONSTERS =
@@ -207,7 +213,7 @@ public class Q10817_ExaltedOneWhoOvercomesTheLimit extends Quest
addKillId(MONSTERS); addKillId(MONSTERS);
addCondMinLevel(MIN_LEVEL, "33907-07.html"); addCondMinLevel(MIN_LEVEL, "33907-07.html");
addCondCompletedQuest(Q10811_ExaltedOneWhoFacesTheLimit.class.getSimpleName(), "33907-02.html"); addCondCompletedQuest(Q10811_ExaltedOneWhoFacesTheLimit.class.getSimpleName(), "33907-02.html");
registerQuestItems(LIONEL_MISSION_LIST_2, PROOF_OF_RESISTANCE_NEEDED); registerQuestItems(LIONEL_MISSION_LIST_2, PROOF_OF_RESISTANCE);
} }
@Override @Override
@@ -244,10 +250,10 @@ public class Q10817_ExaltedOneWhoOvercomesTheLimit extends Quest
{ {
if (qs.isCond(2) && (player.getLevel() >= MIN_COMPLETE_LEVEL)) if (qs.isCond(2) && (player.getLevel() >= MIN_COMPLETE_LEVEL))
{ {
giveItems(player, SPELLBOOK_DIGNITY_OF_THE_EXALTED, 1); giveItems(player, SPELLBOOK_DIGNITY_OF_THE_EXALTED_LV2, 1);
giveItems(player, SPELLBOOK_BELIEF_OF_THE_EXALTED, 1); giveItems(player, SPELLBOOK_BELIEF_OF_THE_EXALTED, 1);
giveItems(player, SPELLBOOK_FAVOR_OF_THE_EXALTED, 1); giveItems(player, SPELLBOOK_FAVOR_OF_THE_EXALTED_LV1, 1);
giveItems(player, EXALSTED_WEAPON_UPGRADE_STONE, 1); giveItems(player, EXALTED_WEAPON_UPGRADE_STONE, 1);
switch (race) switch (race)
{ {
@@ -468,7 +474,23 @@ public class Q10817_ExaltedOneWhoOvercomesTheLimit extends Quest
{ {
qs.setCond(2, true); qs.setCond(2, true);
} }
sendNpcLogList(player);
} }
} }
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
if (player.getLevel() >= MIN_COMPLETE_LEVEL)
{
holder.add(new NpcLogListHolder(REACH_LV_102, true, 1));
}
return holder;
}
return super.getNpcLogList(player);
}
} }

View File

@@ -16,12 +16,17 @@
*/ */
package quests.Q10823_ExaltedOneWhoShattersTheLimit; package quests.Q10823_ExaltedOneWhoShattersTheLimit;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.Config; import org.l2jmobius.Config;
import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
import org.l2jmobius.gameserver.model.quest.Quest; import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState; import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State; import org.l2jmobius.gameserver.model.quest.State;
import org.l2jmobius.gameserver.network.NpcStringId;
import quests.Q10817_ExaltedOneWhoOvercomesTheLimit.Q10817_ExaltedOneWhoOvercomesTheLimit; import quests.Q10817_ExaltedOneWhoOvercomesTheLimit.Q10817_ExaltedOneWhoOvercomesTheLimit;
@@ -41,14 +46,15 @@ public class Q10823_ExaltedOneWhoShattersTheLimit extends Quest
private static final int EXALTED_CLOAK = 37763; private static final int EXALTED_CLOAK = 37763;
private static final int OBTAIN_EXALTED_STATUS = 45638; private static final int OBTAIN_EXALTED_STATUS = 45638;
private static final int EXALTED_TIARA = 45644; private static final int EXALTED_TIARA = 45644;
private static final int DIGNITY_OF_THE_EXALTED = 45924; private static final int DIGNITY_OF_THE_EXALTED_LV3 = 45924;
private static final int BLESSING_OF_THE_EXALTED = 45926; private static final int BLESSING_OF_THE_EXALTED = 45926;
private static final int SUMMON_BATTLE_POTION = 45927; private static final int SUMMON_BATTLE_POTION = 45927;
private static final int FATE_OF_THE_EXALTED = 46036; private static final int FATE_OF_THE_EXALTED = 46036;
private static final int FAVOR_OF_THE_EXALTED = 45870; private static final int FAVOR_OF_THE_EXALTED_LV2 = 45870;
// Misc // Misc
private static final int MIN_LEVEL = 102; private static final int MIN_LEVEL = 102;
private static final int MIN_COMPLETE_LEVEL = 103; private static final int MIN_COMPLETE_LEVEL = 103;
private static final int REACH_LV_103 = NpcStringId.REACH_LV_103.getId();
private static final int PROOF_OF_PREPARATION_NEEDED = 40000; private static final int PROOF_OF_PREPARATION_NEEDED = 40000;
// Monsters // Monsters
private static final int[] MONSTERS = private static final int[] MONSTERS =
@@ -228,11 +234,11 @@ public class Q10823_ExaltedOneWhoShattersTheLimit extends Quest
giveItems(player, EXALTED_CLOAK, 1); giveItems(player, EXALTED_CLOAK, 1);
giveItems(player, OBTAIN_EXALTED_STATUS, 1); giveItems(player, OBTAIN_EXALTED_STATUS, 1);
giveItems(player, EXALTED_TIARA, 1); giveItems(player, EXALTED_TIARA, 1);
giveItems(player, DIGNITY_OF_THE_EXALTED, 1); giveItems(player, DIGNITY_OF_THE_EXALTED_LV3, 1);
giveItems(player, BLESSING_OF_THE_EXALTED, 1); giveItems(player, BLESSING_OF_THE_EXALTED, 1);
giveItems(player, SUMMON_BATTLE_POTION, 1); giveItems(player, SUMMON_BATTLE_POTION, 1);
giveItems(player, FATE_OF_THE_EXALTED, 1); giveItems(player, FATE_OF_THE_EXALTED, 1);
giveItems(player, FAVOR_OF_THE_EXALTED, 1); giveItems(player, FAVOR_OF_THE_EXALTED_LV2, 1);
// Give Exalted status here? // Give Exalted status here?
// https://l2wiki.com/Noblesse // https://l2wiki.com/Noblesse
player.setNobleLevel(2); player.setNobleLevel(2);
@@ -301,6 +307,23 @@ public class Q10823_ExaltedOneWhoShattersTheLimit extends Quest
{ {
qs.setCond(2, true); qs.setCond(2, true);
} }
sendNpcLogList(player);
} }
} }
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
if (player.getLevel() >= MIN_COMPLETE_LEVEL)
{
holder.add(new NpcLogListHolder(REACH_LV_103, true, 1));
}
return holder;
}
return super.getNpcLogList(player);
}
} }

View File

@@ -16,12 +16,17 @@
*/ */
package quests.Q10873_ExaltedReachingAnotherLevel; package quests.Q10873_ExaltedReachingAnotherLevel;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.Config; import org.l2jmobius.Config;
import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
import org.l2jmobius.gameserver.model.quest.Quest; import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState; import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State; import org.l2jmobius.gameserver.model.quest.State;
import org.l2jmobius.gameserver.network.NpcStringId;
import quests.Q10823_ExaltedOneWhoShattersTheLimit.Q10823_ExaltedOneWhoShattersTheLimit; import quests.Q10823_ExaltedOneWhoShattersTheLimit.Q10823_ExaltedOneWhoShattersTheLimit;
@@ -38,11 +43,12 @@ public class Q10873_ExaltedReachingAnotherLevel extends Quest
private static final int PROOF_OF_REPUTATION = 80826; private static final int PROOF_OF_REPUTATION = 80826;
private static final int LIONEL_MISSION_LIST_4 = 47829; private static final int LIONEL_MISSION_LIST_4 = 47829;
// Rewards // Rewards
private static final int DIGNITY_OF_THE_EXALTED = 47852; private static final int DIGNITY_OF_THE_EXALTED_LV4 = 47852;
private static final int VITALITY_OF_THE_EXALTED = 47854; private static final int VITALITY_OF_THE_EXALTED_LV1 = 47854;
// Misc // Misc
private static final int MIN_LEVEL = 103; private static final int MIN_LEVEL = 103;
private static final int MIN_COMPLETE_LEVEL = 105; private static final int MIN_COMPLETE_LEVEL = 105;
private static final int REACH_LV_105 = NpcStringId.REACH_LV_105.getId();
private static final int PROOF_OF_REPUTATION_NEEDED = 80000; private static final int PROOF_OF_REPUTATION_NEEDED = 80000;
// Monsters // Monsters
private static final int[] MONSTERS = private static final int[] MONSTERS =
@@ -221,8 +227,8 @@ public class Q10873_ExaltedReachingAnotherLevel extends Quest
{ {
if (qs.isCond(2) && (player.getLevel() >= MIN_COMPLETE_LEVEL)) if (qs.isCond(2) && (player.getLevel() >= MIN_COMPLETE_LEVEL))
{ {
giveItems(player, DIGNITY_OF_THE_EXALTED, 1); giveItems(player, DIGNITY_OF_THE_EXALTED_LV4, 1);
giveItems(player, VITALITY_OF_THE_EXALTED, 1); giveItems(player, VITALITY_OF_THE_EXALTED_LV1, 1);
qs.exitQuest(false, true); qs.exitQuest(false, true);
htmltext = event; htmltext = event;
} }
@@ -293,6 +299,23 @@ public class Q10873_ExaltedReachingAnotherLevel extends Quest
{ {
qs.setCond(2, true); qs.setCond(2, true);
} }
sendNpcLogList(player);
} }
} }
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
if (player.getLevel() >= MIN_COMPLETE_LEVEL)
{
holder.add(new NpcLogListHolder(REACH_LV_105, true, 1));
}
return holder;
}
return super.getNpcLogList(player);
}
} }

View File

@@ -16,12 +16,17 @@
*/ */
package quests.Q10879_ExaltedGuideToPower; package quests.Q10879_ExaltedGuideToPower;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.Config; import org.l2jmobius.Config;
import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
import org.l2jmobius.gameserver.model.quest.Quest; import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState; import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State; import org.l2jmobius.gameserver.model.quest.State;
import org.l2jmobius.gameserver.network.NpcStringId;
import quests.Q10873_ExaltedReachingAnotherLevel.Q10873_ExaltedReachingAnotherLevel; import quests.Q10873_ExaltedReachingAnotherLevel.Q10873_ExaltedReachingAnotherLevel;
@@ -38,11 +43,12 @@ public class Q10879_ExaltedGuideToPower extends Quest
private static final int PROOF_OF_PRIDE = 80827; private static final int PROOF_OF_PRIDE = 80827;
private static final int LIONEL_MISSION_LIST_5 = 47834; private static final int LIONEL_MISSION_LIST_5 = 47834;
// Rewards // Rewards
private static final int DIGNITY_OF_THE_EXALTED = 47853; private static final int DIGNITY_OF_THE_EXALTED_LV5 = 47853;
private static final int VITALITY_OF_THE_EXALTED = 47855; private static final int VITALITY_OF_THE_EXALTED_LV2 = 47855;
// Misc // Misc
private static final int MIN_LEVEL = 105; private static final int MIN_LEVEL = 105;
private static final int MIN_COMPLETE_LEVEL = 107; private static final int MIN_COMPLETE_LEVEL = 107;
private static final int REACH_LV_107 = NpcStringId.REACH_LV_107.getId();
private static final int PROOF_OF_PRIDE_NEEDED = 80000; private static final int PROOF_OF_PRIDE_NEEDED = 80000;
// Monsters // Monsters
private static final int[] MONSTERS = private static final int[] MONSTERS =
@@ -210,8 +216,8 @@ public class Q10879_ExaltedGuideToPower extends Quest
{ {
if (qs.isCond(2) && (player.getLevel() >= MIN_COMPLETE_LEVEL)) if (qs.isCond(2) && (player.getLevel() >= MIN_COMPLETE_LEVEL))
{ {
giveItems(player, DIGNITY_OF_THE_EXALTED, 1); giveItems(player, DIGNITY_OF_THE_EXALTED_LV5, 1);
giveItems(player, VITALITY_OF_THE_EXALTED, 1); giveItems(player, VITALITY_OF_THE_EXALTED_LV2, 1);
qs.exitQuest(false, true); qs.exitQuest(false, true);
htmltext = event; htmltext = event;
} }
@@ -282,6 +288,23 @@ public class Q10879_ExaltedGuideToPower extends Quest
{ {
qs.setCond(2, true); qs.setCond(2, true);
} }
sendNpcLogList(player);
} }
} }
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
if (player.getLevel() >= MIN_COMPLETE_LEVEL)
{
holder.add(new NpcLogListHolder(REACH_LV_107, true, 1));
}
return holder;
}
return super.getNpcLogList(player);
}
} }

View File

@@ -16,13 +16,18 @@
*/ */
package quests.Q10507_ObtainingNewPower; package quests.Q10507_ObtainingNewPower;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.Config; import org.l2jmobius.Config;
import org.l2jmobius.gameserver.enums.QuestSound; import org.l2jmobius.gameserver.enums.QuestSound;
import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
import org.l2jmobius.gameserver.model.quest.Quest; import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState; import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State; import org.l2jmobius.gameserver.model.quest.State;
import org.l2jmobius.gameserver.network.NpcStringId;
import quests.Q10879_ExaltedGuideToPower.Q10879_ExaltedGuideToPower; import quests.Q10879_ExaltedGuideToPower.Q10879_ExaltedGuideToPower;
@@ -40,6 +45,7 @@ public class Q10507_ObtainingNewPower extends Quest
// Misc // Misc
private static final int MIN_LEVEL = 107; private static final int MIN_LEVEL = 107;
private static final int MIN_COMPLETE_LEVEL = 110; private static final int MIN_COMPLETE_LEVEL = 110;
private static final int REACH_LV_110 = NpcStringId.REACH_LV_110.getId();
private static final int PROOF_OF_STRENGTH_NEEDED = 160000; private static final int PROOF_OF_STRENGTH_NEEDED = 160000;
// Monsters // Monsters
private static final int[] MONSTERS = private static final int[] MONSTERS =
@@ -233,6 +239,23 @@ public class Q10507_ObtainingNewPower extends Quest
{ {
qs.setCond(2, true); qs.setCond(2, true);
} }
sendNpcLogList(player);
} }
} }
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
if (player.getLevel() >= MIN_COMPLETE_LEVEL)
{
holder.add(new NpcLogListHolder(REACH_LV_110, true, 1));
}
return holder;
}
return super.getNpcLogList(player);
}
} }

View File

@@ -16,6 +16,9 @@
*/ */
package quests.Q10811_ExaltedOneWhoFacesTheLimit; package quests.Q10811_ExaltedOneWhoFacesTheLimit;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.Config; import org.l2jmobius.Config;
import org.l2jmobius.gameserver.data.xml.CategoryData; import org.l2jmobius.gameserver.data.xml.CategoryData;
import org.l2jmobius.gameserver.enums.CategoryType; import org.l2jmobius.gameserver.enums.CategoryType;
@@ -24,9 +27,11 @@ import org.l2jmobius.gameserver.enums.Movie;
import org.l2jmobius.gameserver.enums.Race; import org.l2jmobius.gameserver.enums.Race;
import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
import org.l2jmobius.gameserver.model.quest.Quest; import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState; import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State; import org.l2jmobius.gameserver.model.quest.State;
import org.l2jmobius.gameserver.network.NpcStringId;
/** /**
* Exalted, One Who Faces the Limit (10811) * Exalted, One Who Faces the Limit (10811)
@@ -42,24 +47,25 @@ public class Q10811_ExaltedOneWhoFacesTheLimit extends Quest
// Misc // Misc
private static final int MIN_LEVEL = 100; private static final int MIN_LEVEL = 100;
private static final int MIN_COMPLETE_LEVEL = 101; private static final int MIN_COMPLETE_LEVEL = 101;
private static final int REACH_LV_101 = NpcStringId.REACH_LV_101.getId();
private static final int SLAYERS_PROOF_NEEDED = 40000; private static final int SLAYERS_PROOF_NEEDED = 40000;
// Reward // Reward
private static final int SPELLBOOK_DIGNITY_OF_THE_EXALTED = 45922; private static final int SPELLBOOK_DIGNITY_OF_THE_EXALTED_LV1 = 45922;
private static final int EXATLED_HEAVY_ARMOR_PACK = 81203; private static final int EXALTED_HEAVY_ARMOR_PACK = 81203;
private static final int EXATLED_LIGHT_ARMOR_PACK = 81204; private static final int EXALTED_LIGHT_ARMOR_PACK = 81204;
private static final int EXATLED_ROBE_PACK = 81205; private static final int EXALTED_ROBE_PACK = 81205;
private static final int FIRST_EXALTED_QUEST_REWARD_PHYSICAL = 81207; private static final int FIRST_EXALTED_QUEST_REWARD_PHYSICAL = 81207;
private static final int FIRST_EXALTED_QUEST_REWARD_MAGIC = 81208; private static final int FIRST_EXALTED_QUEST_REWARD_MAGIC = 81208;
private static final int EXALTED_CUTTER = 81157; private static final int EXALTED_CUTTER = 81157;
private static final int EXALTED_SLASHER = 81158; private static final int EXALTED_SLASHER = 81158;
private static final int EXALTED_AVENGER = 81159; private static final int EXALTED_AVENGER = 81159;
private static final int EXALTED_FIGHTER = 81160; private static final int EXALTED_FIGHTER = 81160;
private static final int EXALTED_STROMER = 81161; private static final int EXALTED_STORMER = 81161;
private static final int EXALTED_THROWER = 81162; private static final int EXALTED_THROWER = 81162;
private static final int EXALTED_SHOOTER = 81163; private static final int EXALTED_SHOOTER = 81163;
private static final int EXALTED_BUSTER = 81164; private static final int EXALTED_BUSTER = 81164;
private static final int EXALTED_CASTER = 81165; private static final int EXALTED_CASTER = 81165;
private static final int EXALTED_RETIBUTER = 81166; private static final int EXALTED_RETRIBUTER = 81166;
private static final int EXALTED_DUAL_SWORDS = 81167; private static final int EXALTED_DUAL_SWORDS = 81167;
private static final int EXALTED_DUAL_DAGGERS = 81168; private static final int EXALTED_DUAL_DAGGERS = 81168;
// Monsters // Monsters
@@ -256,7 +262,7 @@ public class Q10811_ExaltedOneWhoFacesTheLimit extends Quest
{ {
if (qs.isCond(3)) if (qs.isCond(3))
{ {
giveItems(player, SPELLBOOK_DIGNITY_OF_THE_EXALTED, 1); giveItems(player, SPELLBOOK_DIGNITY_OF_THE_EXALTED_LV1, 1);
switch (race) switch (race)
{ {
case HUMAN: case HUMAN:
@@ -266,49 +272,49 @@ public class Q10811_ExaltedOneWhoFacesTheLimit extends Quest
if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_FEOH_GROUP, classId.getId())) if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_FEOH_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_BUSTER, 1); giveItems(player, EXALTED_BUSTER, 1);
giveItems(player, EXATLED_ROBE_PACK, 1); giveItems(player, EXALTED_ROBE_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_MAGIC, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_MAGIC, 1);
} }
else if ((CategoryData.getInstance().isInCategory(CategoryType.SIXTH_WYNN_GROUP, classId.getId()))) else if ((CategoryData.getInstance().isInCategory(CategoryType.SIXTH_WYNN_GROUP, classId.getId())))
{ {
giveItems(player, EXALTED_RETIBUTER, 1); giveItems(player, EXALTED_RETRIBUTER, 1);
giveItems(player, EXATLED_ROBE_PACK, 1); giveItems(player, EXALTED_ROBE_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_EOLH_GROUP, classId.getId())) else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_EOLH_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_CASTER, 1); giveItems(player, EXALTED_CASTER, 1);
giveItems(player, EXATLED_ROBE_PACK, 1); giveItems(player, EXALTED_ROBE_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_MAGIC, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_MAGIC, 1);
} }
else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_OTHEL_GROUP, classId.getId())) else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_OTHEL_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_DUAL_DAGGERS, 1); giveItems(player, EXALTED_DUAL_DAGGERS, 1);
giveItems(player, EXATLED_LIGHT_ARMOR_PACK, 1); giveItems(player, EXALTED_LIGHT_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_YR_GROUP, classId.getId())) else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_YR_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_THROWER, 1); giveItems(player, EXALTED_THROWER, 1);
giveItems(player, EXATLED_LIGHT_ARMOR_PACK, 1); giveItems(player, EXALTED_LIGHT_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_IS_GROUP, classId.getId()) || (player.getClassId() == ClassId.TYRR_DUELIST)) else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_IS_GROUP, classId.getId()) || (player.getClassId() == ClassId.TYRR_DUELIST))
{ {
giveItems(player, EXALTED_DUAL_SWORDS, 1); giveItems(player, EXALTED_DUAL_SWORDS, 1);
giveItems(player, EXATLED_HEAVY_ARMOR_PACK, 1); giveItems(player, EXALTED_HEAVY_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else if (player.getClassId() == ClassId.TYRR_DREADNOUGHT) else if (player.getClassId() == ClassId.TYRR_DREADNOUGHT)
{ {
giveItems(player, EXALTED_STROMER, 1); giveItems(player, EXALTED_STORMER, 1);
giveItems(player, EXATLED_HEAVY_ARMOR_PACK, 1); giveItems(player, EXALTED_HEAVY_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_SIGEL_GROUP, classId.getId())) else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_SIGEL_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_CUTTER, 1); giveItems(player, EXALTED_CUTTER, 1);
giveItems(player, EXATLED_HEAVY_ARMOR_PACK, 1); giveItems(player, EXALTED_HEAVY_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
break; break;
@@ -318,13 +324,13 @@ public class Q10811_ExaltedOneWhoFacesTheLimit extends Quest
if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_OTHEL_GROUP, classId.getId())) if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_OTHEL_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_DUAL_DAGGERS, 1); giveItems(player, EXALTED_DUAL_DAGGERS, 1);
giveItems(player, EXATLED_LIGHT_ARMOR_PACK, 1); giveItems(player, EXALTED_LIGHT_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else else
{ {
giveItems(player, EXALTED_AVENGER, 1); giveItems(player, EXALTED_AVENGER, 1);
giveItems(player, EXATLED_HEAVY_ARMOR_PACK, 1); giveItems(player, EXALTED_HEAVY_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
break; break;
@@ -334,19 +340,19 @@ public class Q10811_ExaltedOneWhoFacesTheLimit extends Quest
if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_IS_GROUP, classId.getId())) if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_IS_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_DUAL_SWORDS, 1); giveItems(player, EXALTED_DUAL_SWORDS, 1);
giveItems(player, EXATLED_HEAVY_ARMOR_PACK, 1); giveItems(player, EXALTED_HEAVY_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else if (player.getClassId() == ClassId.TYRR_GRAND_KHAVATARI) else if (player.getClassId() == ClassId.TYRR_GRAND_KHAVATARI)
{ {
giveItems(player, EXALTED_FIGHTER, 1); giveItems(player, EXALTED_FIGHTER, 1);
giveItems(player, EXATLED_LIGHT_ARMOR_PACK, 1); giveItems(player, EXALTED_LIGHT_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else if (player.getClassId() == ClassId.TYRR_TITAN) else if (player.getClassId() == ClassId.TYRR_TITAN)
{ {
giveItems(player, EXALTED_SLASHER, 1); giveItems(player, EXALTED_SLASHER, 1);
giveItems(player, EXATLED_HEAVY_ARMOR_PACK, 1); giveItems(player, EXALTED_HEAVY_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
break; break;
@@ -356,19 +362,19 @@ public class Q10811_ExaltedOneWhoFacesTheLimit extends Quest
if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_FEOH_GROUP, classId.getId())) if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_FEOH_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_BUSTER, 1); giveItems(player, EXALTED_BUSTER, 1);
giveItems(player, EXATLED_ROBE_PACK, 1); giveItems(player, EXALTED_ROBE_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_MAGIC, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_MAGIC, 1);
} }
else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_YR_GROUP, classId.getId())) else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_YR_GROUP, classId.getId()))
{ {
giveItems(player, EXALTED_SHOOTER, 1); giveItems(player, EXALTED_SHOOTER, 1);
giveItems(player, EXATLED_LIGHT_ARMOR_PACK, 1); giveItems(player, EXALTED_LIGHT_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
else else
{ {
giveItems(player, EXALTED_SLASHER, 1); giveItems(player, EXALTED_SLASHER, 1);
giveItems(player, EXATLED_LIGHT_ARMOR_PACK, 1); giveItems(player, EXALTED_LIGHT_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
break; break;
} }
@@ -378,14 +384,14 @@ public class Q10811_ExaltedOneWhoFacesTheLimit extends Quest
{ {
if (player.isMageClass()) if (player.isMageClass())
{ {
giveItems(player, EXALTED_RETIBUTER, 1); giveItems(player, EXALTED_RETRIBUTER, 1);
giveItems(player, EXATLED_ROBE_PACK, 1); giveItems(player, EXALTED_ROBE_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_MAGIC, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_MAGIC, 1);
} }
else else
{ {
giveItems(player, EXALTED_FIGHTER, 1); giveItems(player, EXALTED_FIGHTER, 1);
giveItems(player, EXATLED_LIGHT_ARMOR_PACK, 1); giveItems(player, EXALTED_LIGHT_ARMOR_PACK, 1);
giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1); giveItems(player, FIRST_EXALTED_QUEST_REWARD_PHYSICAL, 1);
} }
break; break;
@@ -459,6 +465,23 @@ public class Q10811_ExaltedOneWhoFacesTheLimit extends Quest
{ {
qs.setCond(3, true); qs.setCond(3, true);
} }
sendNpcLogList(player);
} }
} }
}
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(2))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
if (player.getLevel() >= MIN_COMPLETE_LEVEL)
{
holder.add(new NpcLogListHolder(REACH_LV_101, true, 1));
}
return holder;
}
return super.getNpcLogList(player);
}
}

View File

@@ -16,6 +16,9 @@
*/ */
package quests.Q10817_ExaltedOneWhoOvercomesTheLimit; package quests.Q10817_ExaltedOneWhoOvercomesTheLimit;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.Config; import org.l2jmobius.Config;
import org.l2jmobius.gameserver.data.xml.CategoryData; import org.l2jmobius.gameserver.data.xml.CategoryData;
import org.l2jmobius.gameserver.enums.CategoryType; import org.l2jmobius.gameserver.enums.CategoryType;
@@ -23,9 +26,11 @@ import org.l2jmobius.gameserver.enums.ClassId;
import org.l2jmobius.gameserver.enums.Race; import org.l2jmobius.gameserver.enums.Race;
import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
import org.l2jmobius.gameserver.model.quest.Quest; import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState; import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State; import org.l2jmobius.gameserver.model.quest.State;
import org.l2jmobius.gameserver.network.NpcStringId;
import quests.Q10811_ExaltedOneWhoFacesTheLimit.Q10811_ExaltedOneWhoFacesTheLimit; import quests.Q10811_ExaltedOneWhoFacesTheLimit.Q10811_ExaltedOneWhoFacesTheLimit;
@@ -42,15 +47,16 @@ public class Q10817_ExaltedOneWhoOvercomesTheLimit extends Quest
private static final int PROOF_OF_RESISTANCE = 80823; private static final int PROOF_OF_RESISTANCE = 80823;
private static final int LIONEL_MISSION_LIST_2 = 45632; private static final int LIONEL_MISSION_LIST_2 = 45632;
// Rewards // Rewards
private static final int SPELLBOOK_DIGNITY_OF_THE_EXALTED = 45923; private static final int SPELLBOOK_DIGNITY_OF_THE_EXALTED_LV2 = 45923;
private static final int SPELLBOOK_BELIEF_OF_THE_EXALTED = 45925; private static final int SPELLBOOK_BELIEF_OF_THE_EXALTED = 45925;
private static final int SPELLBOOK_FAVOR_OF_THE_EXALTED = 45928; private static final int SPELLBOOK_FAVOR_OF_THE_EXALTED_LV1 = 45928;
private static final int EXALSTED_WEAPON_UPGRADE_STONE = 81200; private static final int EXALTED_WEAPON_UPGRADE_STONE = 81200;
private static final int SECOND_EXALTED_QUEST_REWARD_P = 81209; private static final int SECOND_EXALTED_QUEST_REWARD_P = 81209;
private static final int SECOND_EXALTED_QUEST_REWARD_M = 81210; private static final int SECOND_EXALTED_QUEST_REWARD_M = 81210;
// Misc // Misc
private static final int MIN_LEVEL = 101; private static final int MIN_LEVEL = 101;
private static final int MIN_COMPLETE_LEVEL = 102; private static final int MIN_COMPLETE_LEVEL = 102;
private static final int REACH_LV_102 = NpcStringId.REACH_LV_102.getId();
private static final int PROOF_OF_RESISTANCE_NEEDED = 40000; private static final int PROOF_OF_RESISTANCE_NEEDED = 40000;
// Monsters // Monsters
private static final int[] MONSTERS = private static final int[] MONSTERS =
@@ -207,7 +213,7 @@ public class Q10817_ExaltedOneWhoOvercomesTheLimit extends Quest
addKillId(MONSTERS); addKillId(MONSTERS);
addCondMinLevel(MIN_LEVEL, "33907-07.html"); addCondMinLevel(MIN_LEVEL, "33907-07.html");
addCondCompletedQuest(Q10811_ExaltedOneWhoFacesTheLimit.class.getSimpleName(), "33907-02.html"); addCondCompletedQuest(Q10811_ExaltedOneWhoFacesTheLimit.class.getSimpleName(), "33907-02.html");
registerQuestItems(LIONEL_MISSION_LIST_2, PROOF_OF_RESISTANCE_NEEDED); registerQuestItems(LIONEL_MISSION_LIST_2, PROOF_OF_RESISTANCE);
} }
@Override @Override
@@ -244,10 +250,10 @@ public class Q10817_ExaltedOneWhoOvercomesTheLimit extends Quest
{ {
if (qs.isCond(2) && (player.getLevel() >= MIN_COMPLETE_LEVEL)) if (qs.isCond(2) && (player.getLevel() >= MIN_COMPLETE_LEVEL))
{ {
giveItems(player, SPELLBOOK_DIGNITY_OF_THE_EXALTED, 1); giveItems(player, SPELLBOOK_DIGNITY_OF_THE_EXALTED_LV2, 1);
giveItems(player, SPELLBOOK_BELIEF_OF_THE_EXALTED, 1); giveItems(player, SPELLBOOK_BELIEF_OF_THE_EXALTED, 1);
giveItems(player, SPELLBOOK_FAVOR_OF_THE_EXALTED, 1); giveItems(player, SPELLBOOK_FAVOR_OF_THE_EXALTED_LV1, 1);
giveItems(player, EXALSTED_WEAPON_UPGRADE_STONE, 1); giveItems(player, EXALTED_WEAPON_UPGRADE_STONE, 1);
switch (race) switch (race)
{ {
@@ -468,7 +474,23 @@ public class Q10817_ExaltedOneWhoOvercomesTheLimit extends Quest
{ {
qs.setCond(2, true); qs.setCond(2, true);
} }
sendNpcLogList(player);
} }
} }
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
if (player.getLevel() >= MIN_COMPLETE_LEVEL)
{
holder.add(new NpcLogListHolder(REACH_LV_102, true, 1));
}
return holder;
}
return super.getNpcLogList(player);
}
} }

View File

@@ -16,12 +16,17 @@
*/ */
package quests.Q10823_ExaltedOneWhoShattersTheLimit; package quests.Q10823_ExaltedOneWhoShattersTheLimit;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.Config; import org.l2jmobius.Config;
import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
import org.l2jmobius.gameserver.model.quest.Quest; import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState; import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State; import org.l2jmobius.gameserver.model.quest.State;
import org.l2jmobius.gameserver.network.NpcStringId;
import quests.Q10817_ExaltedOneWhoOvercomesTheLimit.Q10817_ExaltedOneWhoOvercomesTheLimit; import quests.Q10817_ExaltedOneWhoOvercomesTheLimit.Q10817_ExaltedOneWhoOvercomesTheLimit;
@@ -41,14 +46,15 @@ public class Q10823_ExaltedOneWhoShattersTheLimit extends Quest
private static final int EXALTED_CLOAK = 37763; private static final int EXALTED_CLOAK = 37763;
private static final int OBTAIN_EXALTED_STATUS = 45638; private static final int OBTAIN_EXALTED_STATUS = 45638;
private static final int EXALTED_TIARA = 45644; private static final int EXALTED_TIARA = 45644;
private static final int DIGNITY_OF_THE_EXALTED = 45924; private static final int DIGNITY_OF_THE_EXALTED_LV3 = 45924;
private static final int BLESSING_OF_THE_EXALTED = 45926; private static final int BLESSING_OF_THE_EXALTED = 45926;
private static final int SUMMON_BATTLE_POTION = 45927; private static final int SUMMON_BATTLE_POTION = 45927;
private static final int FATE_OF_THE_EXALTED = 46036; private static final int FATE_OF_THE_EXALTED = 46036;
private static final int FAVOR_OF_THE_EXALTED = 45870; private static final int FAVOR_OF_THE_EXALTED_LV2 = 45870;
// Misc // Misc
private static final int MIN_LEVEL = 102; private static final int MIN_LEVEL = 102;
private static final int MIN_COMPLETE_LEVEL = 103; private static final int MIN_COMPLETE_LEVEL = 103;
private static final int REACH_LV_103 = NpcStringId.REACH_LV_103.getId();
private static final int PROOF_OF_PREPARATION_NEEDED = 40000; private static final int PROOF_OF_PREPARATION_NEEDED = 40000;
// Monsters // Monsters
private static final int[] MONSTERS = private static final int[] MONSTERS =
@@ -228,11 +234,11 @@ public class Q10823_ExaltedOneWhoShattersTheLimit extends Quest
giveItems(player, EXALTED_CLOAK, 1); giveItems(player, EXALTED_CLOAK, 1);
giveItems(player, OBTAIN_EXALTED_STATUS, 1); giveItems(player, OBTAIN_EXALTED_STATUS, 1);
giveItems(player, EXALTED_TIARA, 1); giveItems(player, EXALTED_TIARA, 1);
giveItems(player, DIGNITY_OF_THE_EXALTED, 1); giveItems(player, DIGNITY_OF_THE_EXALTED_LV3, 1);
giveItems(player, BLESSING_OF_THE_EXALTED, 1); giveItems(player, BLESSING_OF_THE_EXALTED, 1);
giveItems(player, SUMMON_BATTLE_POTION, 1); giveItems(player, SUMMON_BATTLE_POTION, 1);
giveItems(player, FATE_OF_THE_EXALTED, 1); giveItems(player, FATE_OF_THE_EXALTED, 1);
giveItems(player, FAVOR_OF_THE_EXALTED, 1); giveItems(player, FAVOR_OF_THE_EXALTED_LV2, 1);
// Give Exalted status here? // Give Exalted status here?
// https://l2wiki.com/Noblesse // https://l2wiki.com/Noblesse
player.setNobleLevel(2); player.setNobleLevel(2);
@@ -301,6 +307,23 @@ public class Q10823_ExaltedOneWhoShattersTheLimit extends Quest
{ {
qs.setCond(2, true); qs.setCond(2, true);
} }
sendNpcLogList(player);
} }
} }
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
if (player.getLevel() >= MIN_COMPLETE_LEVEL)
{
holder.add(new NpcLogListHolder(REACH_LV_103, true, 1));
}
return holder;
}
return super.getNpcLogList(player);
}
} }

View File

@@ -16,12 +16,17 @@
*/ */
package quests.Q10873_ExaltedReachingAnotherLevel; package quests.Q10873_ExaltedReachingAnotherLevel;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.Config; import org.l2jmobius.Config;
import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
import org.l2jmobius.gameserver.model.quest.Quest; import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState; import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State; import org.l2jmobius.gameserver.model.quest.State;
import org.l2jmobius.gameserver.network.NpcStringId;
import quests.Q10823_ExaltedOneWhoShattersTheLimit.Q10823_ExaltedOneWhoShattersTheLimit; import quests.Q10823_ExaltedOneWhoShattersTheLimit.Q10823_ExaltedOneWhoShattersTheLimit;
@@ -38,11 +43,12 @@ public class Q10873_ExaltedReachingAnotherLevel extends Quest
private static final int PROOF_OF_REPUTATION = 80826; private static final int PROOF_OF_REPUTATION = 80826;
private static final int LIONEL_MISSION_LIST_4 = 47829; private static final int LIONEL_MISSION_LIST_4 = 47829;
// Rewards // Rewards
private static final int DIGNITY_OF_THE_EXALTED = 47852; private static final int DIGNITY_OF_THE_EXALTED_LV4 = 47852;
private static final int VITALITY_OF_THE_EXALTED = 47854; private static final int VITALITY_OF_THE_EXALTED_LV1 = 47854;
// Misc // Misc
private static final int MIN_LEVEL = 103; private static final int MIN_LEVEL = 103;
private static final int MIN_COMPLETE_LEVEL = 105; private static final int MIN_COMPLETE_LEVEL = 105;
private static final int REACH_LV_105 = NpcStringId.REACH_LV_105.getId();
private static final int PROOF_OF_REPUTATION_NEEDED = 80000; private static final int PROOF_OF_REPUTATION_NEEDED = 80000;
// Monsters // Monsters
private static final int[] MONSTERS = private static final int[] MONSTERS =
@@ -221,8 +227,8 @@ public class Q10873_ExaltedReachingAnotherLevel extends Quest
{ {
if (qs.isCond(2) && (player.getLevel() >= MIN_COMPLETE_LEVEL)) if (qs.isCond(2) && (player.getLevel() >= MIN_COMPLETE_LEVEL))
{ {
giveItems(player, DIGNITY_OF_THE_EXALTED, 1); giveItems(player, DIGNITY_OF_THE_EXALTED_LV4, 1);
giveItems(player, VITALITY_OF_THE_EXALTED, 1); giveItems(player, VITALITY_OF_THE_EXALTED_LV1, 1);
qs.exitQuest(false, true); qs.exitQuest(false, true);
htmltext = event; htmltext = event;
} }
@@ -293,6 +299,23 @@ public class Q10873_ExaltedReachingAnotherLevel extends Quest
{ {
qs.setCond(2, true); qs.setCond(2, true);
} }
sendNpcLogList(player);
} }
} }
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
if (player.getLevel() >= MIN_COMPLETE_LEVEL)
{
holder.add(new NpcLogListHolder(REACH_LV_105, true, 1));
}
return holder;
}
return super.getNpcLogList(player);
}
} }

View File

@@ -16,12 +16,17 @@
*/ */
package quests.Q10879_ExaltedGuideToPower; package quests.Q10879_ExaltedGuideToPower;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.Config; import org.l2jmobius.Config;
import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
import org.l2jmobius.gameserver.model.quest.Quest; import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState; import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State; import org.l2jmobius.gameserver.model.quest.State;
import org.l2jmobius.gameserver.network.NpcStringId;
import quests.Q10873_ExaltedReachingAnotherLevel.Q10873_ExaltedReachingAnotherLevel; import quests.Q10873_ExaltedReachingAnotherLevel.Q10873_ExaltedReachingAnotherLevel;
@@ -38,11 +43,12 @@ public class Q10879_ExaltedGuideToPower extends Quest
private static final int PROOF_OF_PRIDE = 80827; private static final int PROOF_OF_PRIDE = 80827;
private static final int LIONEL_MISSION_LIST_5 = 47834; private static final int LIONEL_MISSION_LIST_5 = 47834;
// Rewards // Rewards
private static final int DIGNITY_OF_THE_EXALTED = 47853; private static final int DIGNITY_OF_THE_EXALTED_LV5 = 47853;
private static final int VITALITY_OF_THE_EXALTED = 47855; private static final int VITALITY_OF_THE_EXALTED_LV2 = 47855;
// Misc // Misc
private static final int MIN_LEVEL = 105; private static final int MIN_LEVEL = 105;
private static final int MIN_COMPLETE_LEVEL = 107; private static final int MIN_COMPLETE_LEVEL = 107;
private static final int REACH_LV_107 = NpcStringId.REACH_LV_107.getId();
private static final int PROOF_OF_PRIDE_NEEDED = 80000; private static final int PROOF_OF_PRIDE_NEEDED = 80000;
// Monsters // Monsters
private static final int[] MONSTERS = private static final int[] MONSTERS =
@@ -210,8 +216,8 @@ public class Q10879_ExaltedGuideToPower extends Quest
{ {
if (qs.isCond(2) && (player.getLevel() >= MIN_COMPLETE_LEVEL)) if (qs.isCond(2) && (player.getLevel() >= MIN_COMPLETE_LEVEL))
{ {
giveItems(player, DIGNITY_OF_THE_EXALTED, 1); giveItems(player, DIGNITY_OF_THE_EXALTED_LV5, 1);
giveItems(player, VITALITY_OF_THE_EXALTED, 1); giveItems(player, VITALITY_OF_THE_EXALTED_LV2, 1);
qs.exitQuest(false, true); qs.exitQuest(false, true);
htmltext = event; htmltext = event;
} }
@@ -282,6 +288,23 @@ public class Q10879_ExaltedGuideToPower extends Quest
{ {
qs.setCond(2, true); qs.setCond(2, true);
} }
sendNpcLogList(player);
} }
} }
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
if (player.getLevel() >= MIN_COMPLETE_LEVEL)
{
holder.add(new NpcLogListHolder(REACH_LV_107, true, 1));
}
return holder;
}
return super.getNpcLogList(player);
}
} }