Third class quests rework.

This commit is contained in:
MobiusDev 2016-07-13 16:01:25 +00:00
parent 123830773f
commit 36b365fa80
5 changed files with 54 additions and 7 deletions

View File

@ -437,7 +437,7 @@ public final class EvilIncubator extends AbstractInstance
} }
else if (waveId < 8) else if (waveId < 8)
{ {
if (world.getAliveNpcs(MONSTERS).isEmpty()) if (world.getAliveNpcs(MONSTERS).size() <= 1)
{ {
getTimers().addTimer("SPAWN_WAVE", 5000, e -> manageWaveSpawn(world)); getTimers().addTimer("SPAWN_WAVE", 5000, e -> manageWaveSpawn(world));
} }

View File

@ -1,4 +1,4 @@
<html><head><body>Grand Master Brome:<br> <html><head><body>Grand Master Brome:<br>
Remember, your destiny is blocked until you face this challenge.<br>Go now to Shilen's Seal and find Aden Vanguard. Help them to fulfill their mission.<br> Remember, your destiny is blocked until you face this challenge.<br>Go now to Shilen's Seal and find Aden Vanguard. Help them to fulfill their mission.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10346_DayOfDestinyKamaelsFate 32221-05.htm>">"Count me in."</Button> <Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10346_DayOfDestinyKamaelsFate 32221-05.htm">"Count me in."</Button>
</body></html> </body></html>

View File

@ -55,7 +55,12 @@ public abstract class ThirdClassTransferQuest extends Quest
33169, 33169,
}; };
// Items // Items
private static final int SOLDIER_TAG = 17750; // Vanguard Soldier's Dog Tags private static final int SOLDIER_TAG_HUMAN = 17748;
private static final int SOLDIER_TAG_ELF = 17749;
private static final int SOLDIER_TAG_DARK_ELF = 17750;
private static final int SOLDIER_TAG_ORC = 17751;
private static final int SOLDIER_TAG_DWARF = 17752;
private static final int SOLDIER_TAG_KAMAEL = 17753;
private static final int STEEL_DOOR_COIN = 37045; private static final int STEEL_DOOR_COIN = 37045;
private static final int SOUL_SHOT_PACK = 22576; private static final int SOUL_SHOT_PACK = 22576;
private static final int SPIRIT_SHOT_PACK = 22607; private static final int SPIRIT_SHOT_PACK = 22607;
@ -71,7 +76,13 @@ public abstract class ThirdClassTransferQuest extends Quest
addTalkId(QUARTERMASTER, VANGUARD_MEMBER); addTalkId(QUARTERMASTER, VANGUARD_MEMBER);
addTalkId(VANGUARDS); addTalkId(VANGUARDS);
//@formatter:off //@formatter:off
registerQuestItems(SOLDIER_TAG, registerQuestItems(
SOLDIER_TAG_HUMAN,
SOLDIER_TAG_ELF,
SOLDIER_TAG_DARK_ELF,
SOLDIER_TAG_ORC,
SOLDIER_TAG_DWARF,
SOLDIER_TAG_KAMAEL,
17484, // Cry of Destiny - Gladiator 17484, // Cry of Destiny - Gladiator
17485, // Cry of Destiny - Warlord 17485, // Cry of Destiny - Warlord
17486, // Cry of Destiny - Paladin 17486, // Cry of Destiny - Paladin
@ -140,7 +151,7 @@ public abstract class ThirdClassTransferQuest extends Quest
{ {
st.setCond(4, true); st.setCond(4, true);
st.unset("vanguard"); st.unset("vanguard");
takeItems(player, SOLDIER_TAG, -1); takeItems(player, getSoldierTag(player), -1);
htmltext = event; htmltext = event;
} }
break; break;
@ -162,10 +173,10 @@ public abstract class ThirdClassTransferQuest extends Quest
final int vanguard = st.getInt("vanguard"); final int vanguard = st.getInt("vanguard");
if ((vanguard & bit) != bit) if ((vanguard & bit) != bit)
{ {
giveItems(player, SOLDIER_TAG, 1); giveItems(player, getSoldierTag(player), 1);
st.set("vanguard", vanguard | bit); st.set("vanguard", vanguard | bit);
if (getQuestItemsCount(player, SOLDIER_TAG) == 4) if (getQuestItemsCount(player, getSoldierTag(player)) == 4)
{ {
st.setCond(3, true); st.setCond(3, true);
htmltext = "vanguard-04.html"; htmltext = "vanguard-04.html";
@ -234,6 +245,42 @@ public abstract class ThirdClassTransferQuest extends Quest
return htmltext; return htmltext;
} }
/**
* @param player
* @return
*/
private int getSoldierTag(L2PcInstance player)
{
switch (player.getRace())
{
case HUMAN:
{
return SOLDIER_TAG_HUMAN;
}
case ELF:
{
return SOLDIER_TAG_ELF;
}
case DARK_ELF:
{
return SOLDIER_TAG_DARK_ELF;
}
case ORC:
{
return SOLDIER_TAG_ORC;
}
case DWARF:
{
return SOLDIER_TAG_DWARF;
}
case KAMAEL:
{
return SOLDIER_TAG_KAMAEL;
}
}
return 0;
}
@Override @Override
public String onTalk(L2Npc npc, L2PcInstance player, boolean isSimulated) public String onTalk(L2Npc npc, L2PcInstance player, boolean isSimulated)
{ {