diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/ai/others/AdventurersGuide/AdventurersGuide.java b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/ai/others/AdventurersGuide/AdventurersGuide.java index f75b4d9ab9..b83820dd0b 100644 --- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/ai/others/AdventurersGuide/AdventurersGuide.java +++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/ai/others/AdventurersGuide/AdventurersGuide.java @@ -37,13 +37,11 @@ public class AdventurersGuide extends AbstractNpcAI 33950, }; // Items - private static final int ADENA = 57; - private static final int GEMSTONE_R = 19440; + private static final int ADENA = 57; + private static final int GEMSTONE_R = 19440; // Skills private static final SkillHolder BLESS_PROTECTION = new SkillHolder(5182, 1); // Blessing of Protection private static final SkillHolder FANTASIA = new SkillHolder(32840, 1); // Fantasia Harmony - Adventurer - - private static final SkillHolder[] GROUP_BUFFS = { new SkillHolder(15642, 1), // Horn Melody (Adventurer) @@ -54,16 +52,16 @@ public class AdventurersGuide extends AbstractNpcAI new SkillHolder(15652, 1), // Daring Sonata (Adventurer) new SkillHolder(15653, 1), // Refreshing Sonata (Adventurer) }; - private static final SkillHolder[] DONATE_BUFFS = - { - new SkillHolder(15642, 4), // Horn Melody (Adventurer) - new SkillHolder(15643, 4), // Drum Melody (Adventurer) - new SkillHolder(15644, 4), // Pipe Organ Melody (Adventurer) - new SkillHolder(15645, 4), // Guitar Melody (Adventurer) - new SkillHolder(15651, 1), // Prevailing Sonata (Adventurer) - new SkillHolder(15652, 1), // Daring Sonata (Adventurer) - new SkillHolder(15653, 1), // Refreshing Sonata (Adventurer) - }; + private static final SkillHolder[] DONATE_BUFFS = + { + new SkillHolder(15642, 4), // Horn Melody (Adventurer) + new SkillHolder(15643, 4), // Drum Melody (Adventurer) + new SkillHolder(15644, 4), // Pipe Organ Melody (Adventurer) + new SkillHolder(15645, 4), // Guitar Melody (Adventurer) + new SkillHolder(15651, 1), // Prevailing Sonata (Adventurer) + new SkillHolder(15652, 1), // Daring Sonata (Adventurer) + new SkillHolder(15653, 1), // Refreshing Sonata (Adventurer) + }; // Misc private static int MAX_LEVEL_BUFFS = 99; private static int MIN_LEVEL_PROTECTION = 40; @@ -113,49 +111,49 @@ public class AdventurersGuide extends AbstractNpcAI case "fantasia": { if (player.getLevel() > MAX_LEVEL_BUFFS) - { - return "guide-noBuffs.html"; - } - for (SkillHolder holder : GROUP_BUFFS) - { - SkillCaster.triggerCast(npc, player, holder.getSkill()); - } + { + return "guide-noBuffs.html"; + } + for (SkillHolder holder : GROUP_BUFFS) + { + SkillCaster.triggerCast(npc, player, holder.getSkill()); + } htmltext = applyBuffs(npc, player, FANTASIA.getSkill()); break; } case "fantasia_donate_adena": { if (getQuestItemsCount(player, ADENA) >= 3000000) - { - takeItems(player, ADENA, 3000000); - for (SkillHolder holder : DONATE_BUFFS) - { - SkillCaster.triggerCast(npc, player, holder.getSkill()); - } - htmltext = applyBuffs(npc, player, FANTASIA.getSkill()); - } - else - { - htmltext = "guide-noItems.html"; - } - break; + { + takeItems(player, ADENA, 3000000); + for (SkillHolder holder : DONATE_BUFFS) + { + SkillCaster.triggerCast(npc, player, holder.getSkill()); + } + htmltext = applyBuffs(npc, player, FANTASIA.getSkill()); + } + else + { + htmltext = "guide-noItems.html"; + } + break; } case "fantasia_donate_gemstones": { if (getQuestItemsCount(player, GEMSTONE_R) >= 5) - { - takeItems(player, GEMSTONE_R, 5); - for (SkillHolder holder : DONATE_BUFFS) - { - SkillCaster.triggerCast(npc, player, holder.getSkill()); - } - htmltext = applyBuffs(npc, player, FANTASIA.getSkill()); - } - else - { - htmltext = "guide-noItems.html"; - } - break; + { + takeItems(player, GEMSTONE_R, 5); + for (SkillHolder holder : DONATE_BUFFS) + { + SkillCaster.triggerCast(npc, player, holder.getSkill()); + } + htmltext = applyBuffs(npc, player, FANTASIA.getSkill()); + } + else + { + htmltext = "guide-noItems.html"; + } + break; } } return htmltext; diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q11025_PathOfDestinyProving/Q11025_PathOfDestinyProving.java b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q11025_PathOfDestinyProving/Q11025_PathOfDestinyProving.java index 9fc1021f7d..54d2ca5fef 100644 --- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q11025_PathOfDestinyProving/Q11025_PathOfDestinyProving.java +++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q11025_PathOfDestinyProving/Q11025_PathOfDestinyProving.java @@ -148,13 +148,14 @@ public class Q11025_PathOfDestinyProving extends Quest if (qs.isCond(6)) { giveAdena(player, 5000, true); - showOnScreenMsg(player, NpcStringId.CLASS_TRANSFER_IS_AVAILABLE_NCLICK_THE_CLASS_TRANSFER_ICON_IN_THE_NOTIFICATION_WINDOW_TO_TRANSFER_YOUR_CLASS, ExShowScreenMessage.TOP_CENTER, 10000); qs.exitQuest(false, true); if (CategoryData.getInstance().isInCategory(CategoryType.SECOND_CLASS_GROUP, player.getClassId().getId()) || // (CategoryData.getInstance().isInCategory(CategoryType.FIRST_CLASS_GROUP, player.getClassId().getId()) && (player.getRace() == Race.ERTHEIA))) { + showOnScreenMsg(player, NpcStringId.CLASS_TRANSFER_IS_AVAILABLE_NCLICK_THE_CLASS_TRANSFER_ICON_IN_THE_NOTIFICATION_WINDOW_TO_TRANSFER_YOUR_CLASS, ExShowScreenMessage.TOP_CENTER, 10000); player.sendPacket(ExRequestClassChangeUi.STATIC_PACKET); } + giveStoryBuffReward(npc, player); htmltext = event; break; } diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q11031_TrainingBeginsNow/Q11031_TrainingBeginsNow.java b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q11031_TrainingBeginsNow/Q11031_TrainingBeginsNow.java index f184df3bf3..664e6649fe 100644 --- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q11031_TrainingBeginsNow/Q11031_TrainingBeginsNow.java +++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q11031_TrainingBeginsNow/Q11031_TrainingBeginsNow.java @@ -115,7 +115,7 @@ public class Q11031_TrainingBeginsNow extends Quest { qs.setCond(3, true); player.sendPacket(new ExTutorialShowId(25)); // Adventurers Guide - // TODO: Buff player support in Quest class. + giveStoryBuffReward(npc, player); htmltext = event; break; } diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q11032_CurseOfUndying/Q11032_CurseOfUndying.java b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q11032_CurseOfUndying/Q11032_CurseOfUndying.java index 65a34a092e..ac9fbcdb70 100644 --- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q11032_CurseOfUndying/Q11032_CurseOfUndying.java +++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q11032_CurseOfUndying/Q11032_CurseOfUndying.java @@ -124,6 +124,8 @@ public class Q11032_CurseOfUndying extends Quest { if (qs.isCond(2)) { + addExpAndSp(player, 787633, 708); + qs.exitQuest(false, true); // Ertheias do not change. if (player.getRace() != Race.ERTHEIA) { @@ -133,8 +135,7 @@ public class Q11032_CurseOfUndying extends Quest player.sendPacket(ExRequestClassChangeUi.STATIC_PACKET); } } - addExpAndSp(player, 787633, 708); - qs.exitQuest(false, true); + giveStoryBuffReward(npc, player); htmltext = event; break; } diff --git a/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/quest/Quest.java b/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/quest/Quest.java index 76716388d4..8a0840edd0 100644 --- a/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/quest/Quest.java +++ b/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/quest/Quest.java @@ -112,7 +112,17 @@ public class Quest extends AbstractScript implements IIdentifiable private static final int RESET_HOUR = 6; private static final int RESET_MINUTES = 30; - private static final SkillHolder STORY_QUEST_BUFF_REWARD = new SkillHolder(27580, 1); + private static final SkillHolder[] STORY_QUEST_BUFFS = + { + new SkillHolder(15642, 1), // Horn Melody (Adventurer) + new SkillHolder(15643, 1), // Drum Melody (Adventurer) + new SkillHolder(15644, 1), // Pipe Organ Melody (Adventurer) + new SkillHolder(15645, 1), // Guitar Melody (Adventurer) + new SkillHolder(15651, 1), // Prevailing Sonata (Adventurer) + new SkillHolder(15652, 1), // Daring Sonata (Adventurer) + new SkillHolder(15653, 1), // Refreshing Sonata (Adventurer) + new SkillHolder(32840, 1), // Fantasia Harmony - Adventurer + }; /** * @return the reset hour for a daily quest, could be overridden on a script. @@ -3298,11 +3308,14 @@ public class Quest extends AbstractScript implements IIdentifiable } - public void giveStoryQuestReward(Npc npc, PlayerInstance player) + public void giveStoryBuffReward(Npc npc, PlayerInstance player) { if (Config.ENABLE_STORY_QUEST_BUFF_REWARD) { - SkillCaster.triggerCast(npc, player, STORY_QUEST_BUFF_REWARD.getSkill()); + for (SkillHolder holder : STORY_QUEST_BUFFS) + { + SkillCaster.triggerCast(npc, player, holder.getSkill()); + } } } }