Fixed rewards for quest 11025.

Contributed by SmiDmi.
This commit is contained in:
MobiusDevelopment
2019-12-05 07:29:24 +00:00
parent c24b9673b7
commit f46dde4b37
2 changed files with 111 additions and 158 deletions

View File

@@ -23,7 +23,6 @@ import org.l2jmobius.gameserver.enums.Race;
import org.l2jmobius.gameserver.model.Location; import org.l2jmobius.gameserver.model.Location;
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.base.ClassId;
import org.l2jmobius.gameserver.model.events.EventType; import org.l2jmobius.gameserver.model.events.EventType;
import org.l2jmobius.gameserver.model.events.ListenerRegisterType; import org.l2jmobius.gameserver.model.events.ListenerRegisterType;
import org.l2jmobius.gameserver.model.events.annotations.RegisterEvent; import org.l2jmobius.gameserver.model.events.annotations.RegisterEvent;
@@ -56,6 +55,7 @@ public class Q11025_PathOfDestinyProving extends Quest
// Class change rewards // Class change rewards
private static final int SS_R = 33780; private static final int SS_R = 33780;
private static final int BSS_R = 33794; private static final int BSS_R = 33794;
private static final int BS_R = 6645;
private static final int BOX_R_HEAVY = 46924; private static final int BOX_R_HEAVY = 46924;
private static final int BOX_R_LIGHT = 46925; private static final int BOX_R_LIGHT = 46925;
private static final int BOX_R_ROBE = 46926; private static final int BOX_R_ROBE = 46926;
@@ -70,7 +70,11 @@ public class Q11025_PathOfDestinyProving extends Quest
private static final int WEAPON_STAFF_R = 47017; private static final int WEAPON_STAFF_R = 47017;
private static final int WEAPON_DUALSWORD_R = 47018; private static final int WEAPON_DUALSWORD_R = 47018;
private static final int WEAPON_CROSSBOW_R = 47014; private static final int WEAPON_CROSSBOW_R = 47014;
private static final int WEAPON_BUSTER_R = 47015;
private static final int WEAPON_CASTER_R = 47016;
private static final int WEAPON_SIGIL_R = 47037;
private static final int ORICHALCUM_BOLT_R = 19443; private static final int ORICHALCUM_BOLT_R = 19443;
private static final int ORICHALCUM_ARROW_R = 18550;
// Location // Location
private static final Location TRAINING_GROUNDS_TELEPORT = new Location(-4983, 116607, -3344); private static final Location TRAINING_GROUNDS_TELEPORT = new Location(-4983, 116607, -3344);
// Misc // Misc
@@ -312,14 +316,7 @@ public class Q11025_PathOfDestinyProving extends Quest
return; return;
} }
if (player.getRace() == Race.ERTHEIA) if (!CategoryData.getInstance().isInCategory(CategoryType.THIRD_CLASS_GROUP, player.getClassId().getId()))
{
if (!CategoryData.getInstance().isInCategory(CategoryType.SECOND_CLASS_GROUP, player.getClassId().getId()))
{
return;
}
}
else if (!CategoryData.getInstance().isInCategory(CategoryType.THIRD_CLASS_GROUP, player.getClassId().getId()))
{ {
return; return;
} }
@@ -330,158 +327,120 @@ public class Q11025_PathOfDestinyProving extends Quest
giveItems(player, SS_R, 3000); giveItems(player, SS_R, 3000);
giveItems(player, BSS_R, 2000); giveItems(player, BSS_R, 2000);
final int classId = player.getClassId().getId(); switch (player.getClassId())
switch (player.getRace())
{ {
case HUMAN: case WARLORD:
case ELF:
case DARK_ELF:
{ {
if (CategoryData.getInstance().isInCategory(CategoryType.DIVISION_WIZARD, classId)) giveItems(player, BOX_R_HEAVY, 1);
{ giveItems(player, WEAPON_SPEAR_R, 1);
giveItems(player, BOX_R_ROBE, 1);
giveItems(player, WEAPON_STAFF_R, 1);
}
else if (CategoryData.getInstance().isInCategory(CategoryType.SUBJOB_GROUP_BOW, classId))
{
giveItems(player, BOX_R_LIGHT, 1);
giveItems(player, WEAPON_BOW_R, 1);
}
else if (CategoryData.getInstance().isInCategory(CategoryType.SUBJOB_GROUP_DAGGER, classId))
{
giveItems(player, BOX_R_LIGHT, 1);
giveItems(player, WEAPON_DUALDAGGER_R, 1);
}
else if (CategoryData.getInstance().isInCategory(CategoryType.SUBJOB_GROUP_DANCE, classId) || (player.getClassId() == ClassId.GLADIATOR))
{
giveItems(player, BOX_R_HEAVY, 1);
giveItems(player, WEAPON_DUALSWORD_R, 1);
}
else if (player.getClassId() == ClassId.WARLORD)
{
giveItems(player, BOX_R_HEAVY, 1);
giveItems(player, WEAPON_SPEAR_R, 1);
}
else if (player.getClassId() == ClassId.DUELIST)
{
giveItems(player, BOX_R_HEAVY, 1);
giveItems(player, WEAPON_DUALSWORD_R, 1);
}
else if (CategoryData.getInstance().isInCategory(CategoryType.TANKER_GROUP, classId))
{
giveItems(player, BOX_R_HEAVY, 1);
giveItems(player, WEAPON_SWORD_R, 1);
giveItems(player, WEAPON_SHIELD_R, 1);
}
else if (CategoryData.getInstance().isInCategory(CategoryType.RECOM_WARRIOR_GROUP, classId))
{
giveItems(player, BOX_R_HEAVY, 1);
giveItems(player, WEAPON_SWORD_R, 1);
}
else
{
giveItems(player, BOX_R_HEAVY, 1);
giveItems(player, WEAPON_SWORD_R, 1);
giveItems(player, WEAPON_GSWORD_R, 1);
}
break; break;
} }
case DWARF: case GLADIATOR:
case WARCRYER:
case PROPHET:
case BLADEDANCER:
{ {
if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_OTHEL_GROUP, classId)) giveItems(player, BOX_R_HEAVY, 1);
{ giveItems(player, WEAPON_DUALSWORD_R, 1);
giveItems(player, BOX_R_LIGHT, 1);
giveItems(player, WEAPON_DUALDAGGER_R, 1);
}
else if (CategoryData.getInstance().isInCategory(CategoryType.DWARF_BOUNTY_CLASS, classId))
{
giveItems(player, BOX_R_LIGHT, 1);
giveItems(player, WEAPON_DUALDAGGER_R, 1);
}
else
{
giveItems(player, BOX_R_HEAVY, 1);
giveItems(player, WEAPON_BLUNT_R, 1);
}
break; break;
} }
case ORC: case PALADIN:
case DARK_AVENGER:
case TEMPLE_KNIGHT:
case SWORDSINGER:
case SHILLIEN_KNIGHT:
case OVERLORD:
{ {
if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_IS_GROUP, classId)) giveItems(player, BOX_R_HEAVY, 1);
{ giveItems(player, WEAPON_SWORD_R, 1);
giveItems(player, BOX_R_LIGHT, 1); giveItems(player, WEAPON_SHIELD_R, 1);
giveItems(player, WEAPON_DUALSWORD_R, 1);
}
else if (player.getClassId() == ClassId.TYRR_GRAND_KHAVATARI)
{
giveItems(player, BOX_R_LIGHT, 1);
giveItems(player, WEAPON_FIST_R, 1);
}
else if (player.getClassId() == ClassId.TYRR_TITAN)
{
giveItems(player, BOX_R_HEAVY, 1);
giveItems(player, WEAPON_GSWORD_R, 1);
}
else if (player.isMageClass())
{
giveItems(player, BOX_R_LIGHT, 1);
giveItems(player, WEAPON_STAFF_R, 1);
}
else if (CategoryData.getInstance().isInCategory(CategoryType.LIGHT_ARMOR_CLASS, classId))
{
giveItems(player, BOX_R_LIGHT, 1);
giveItems(player, WEAPON_FIST_R, 1);
}
else
{
giveItems(player, BOX_R_HEAVY, 1);
giveItems(player, WEAPON_GSWORD_R, 1);
}
break; break;
} }
case KAMAEL: case TREASURE_HUNTER:
case PLAINS_WALKER:
case ABYSS_WALKER:
case BOUNTY_HUNTER:
{ {
if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_FEOH_GROUP, classId)) giveItems(player, BOX_R_LIGHT, 1);
{ giveItems(player, WEAPON_DUALDAGGER_R, 1);
giveItems(player, BOX_R_ROBE, 1); break;
giveItems(player, WEAPON_STAFF_R, 1);
}
else if (CategoryData.getInstance().isInCategory(CategoryType.SIXTH_YR_GROUP, classId))
{
giveItems(player, BOX_R_LIGHT, 1);
giveItems(player, ORICHALCUM_BOLT_R, 5000);
giveItems(player, WEAPON_CROSSBOW_R, 1);
}
else if (CategoryData.getInstance().isInCategory(CategoryType.DIVISION_WIZARD, classId))
{
giveItems(player, BOX_R_ROBE, 1);
giveItems(player, WEAPON_STAFF_R, 1);
}
else if (CategoryData.getInstance().isInCategory(CategoryType.DIVISION_ARCHER, classId))
{
giveItems(player, BOX_R_LIGHT, 1);
giveItems(player, ORICHALCUM_BOLT_R, 5000);
giveItems(player, WEAPON_CROSSBOW_R, 1);
}
else
{
giveItems(player, BOX_R_LIGHT, 1);
giveItems(player, WEAPON_GSWORD_R, 1);
break;
}
} }
case ERTHEIA: case HAWKEYE:
case SILVER_RANGER:
case PHANTOM_RANGER:
{ {
if (player.isMageClass()) giveItems(player, BOX_R_LIGHT, 1);
{ giveItems(player, WEAPON_BOW_R, 1);
giveItems(player, BOX_R_ROBE, 1); giveItems(player, ORICHALCUM_ARROW_R, 20000);
giveItems(player, WEAPON_STAFF_R, 1); break;
} }
else case SORCERER:
{ case NECROMANCER:
giveItems(player, BOX_R_LIGHT, 1); case SPELLSINGER:
giveItems(player, WEAPON_FIST_R, 1); case SPELLHOWLER:
} case MALE_SOULBREAKER:
case FEMALE_SOULBREAKER:
{
giveItems(player, BOX_R_ROBE, 1);
giveItems(player, WEAPON_BUSTER_R, 1);
giveItems(player, WEAPON_SIGIL_R, 1);
break;
}
case WARLOCK:
case ELEMENTAL_SUMMONER:
case PHANTOM_SUMMONER:
{
giveItems(player, BOX_R_LIGHT, 1);
giveItems(player, WEAPON_STAFF_R, 1);
giveItems(player, BS_R, 1000); // TODO: Confirm.
break;
}
case BISHOP:
case ELDER:
case SHILLIEN_ELDER:
{
giveItems(player, BOX_R_ROBE, 1);
giveItems(player, WEAPON_CASTER_R, 1);
giveItems(player, WEAPON_SIGIL_R, 1);
break;
}
case WARSMITH:
{
giveItems(player, BOX_R_HEAVY, 1);
giveItems(player, WEAPON_BLUNT_R, 1);
giveItems(player, WEAPON_SHIELD_R, 1);
break;
}
case DESTROYER:
case BERSERKER:
{
giveItems(player, BOX_R_HEAVY, 1);
giveItems(player, WEAPON_GSWORD_R, 1);
break;
}
case TYRANT:
{
giveItems(player, BOX_R_HEAVY, 1);
giveItems(player, WEAPON_FIST_R, 1);
break;
}
case ARBALESTER:
{
giveItems(player, BOX_R_LIGHT, 1);
giveItems(player, ORICHALCUM_BOLT_R, 20000);
giveItems(player, WEAPON_CROSSBOW_R, 1);
break;
}
case MARAUDER:
{
giveItems(player, BOX_R_LIGHT, 1);
giveItems(player, WEAPON_FIST_R, 1);
break;
}
case CLOUD_BREAKER:
{
giveItems(player, BOX_R_ROBE, 1);
giveItems(player, WEAPON_STAFF_R, 1);
break; break;
} }
} }

View File

@@ -1129,12 +1129,9 @@
<set name="is_private_storeable" val="false" /> <set name="is_private_storeable" val="false" />
<capsuled_items> <capsuled_items>
<item chance="100.0" id="40200" max="1" min="1" /> <!-- Sayha's Cloak --> <item chance="100.0" id="40200" max="1" min="1" /> <!-- Sayha's Cloak -->
<item chance="100.0" id="32316" max="5" min="5" /> <!-- Elixir of Blessing --> <item chance="100.0" id="80320" max="1" min="1" /> <!-- Paulina Twilight Bracelet -->
<item chance="100.0" id="33502" max="1" min="1" /> <!-- Weapon Attribute Change Crystal (S-grade) --> <item chance="100.0" id="46782" max="1" min="1" /> <!-- Graduation Gift -->
</capsuled_items> </capsuled_items>
<skills>
<skill id="12801" level="1" /> <!-- Box for the Awakened -->
</skills>
</item> </item>
<item id="40269" name="Sayha's Box" additionalName="Sayha's Seer" type="EtcItem"> <item id="40269" name="Sayha's Box" additionalName="Sayha's Seer" type="EtcItem">
<!-- Box containing Sayha's power. Double-click to use. --> <!-- Box containing Sayha's power. Double-click to use. -->
@@ -1154,12 +1151,9 @@
<set name="is_private_storeable" val="false" /> <set name="is_private_storeable" val="false" />
<capsuled_items> <capsuled_items>
<item chance="100.0" id="40201" max="1" min="1" /> <!-- Sayha's Cloak --> <item chance="100.0" id="40201" max="1" min="1" /> <!-- Sayha's Cloak -->
<item chance="100.0" id="32316" max="5" min="5" /> <!-- Elixir of Blessing --> <item chance="100.0" id="80320" max="1" min="1" /> <!-- Paulina Twilight Bracelet -->
<item chance="100.0" id="33502" max="1" min="1" /> <!-- Weapon Attribute Change Crystal (S-grade) --> <item chance="100.0" id="46782" max="1" min="1" /> <!-- Graduation Gift -->
</capsuled_items> </capsuled_items>
<skills>
<skill id="12801" level="1" /> <!-- Box for the Awakened -->
</skills>
</item> </item>
<item id="40270" name="Appearance Stone: Dark Assassin Suit" type="EtcItem"> <item id="40270" name="Appearance Stone: Dark Assassin Suit" type="EtcItem">
<!-- Changes the appearance of your entire armor into that of a Dark Assassin Suit. Tops and one-pieces only. Modified armor can be restored to their original appearance with a Restoration Stone. --> <!-- Changes the appearance of your entire armor into that of a Dark Assassin Suit. Tops and one-pieces only. Modified armor can be restored to their original appearance with a Restoration Stone. -->