Addition of Quest Test of the Healer (226) spawn checks.

Thanks to L2Hanesfor.
This commit is contained in:
MobiusDevelopment 2023-01-19 02:29:47 +02:00
parent b902cdaaa4
commit 11d4eb3015
2 changed files with 68 additions and 18 deletions

View File

@ -17,6 +17,7 @@
package quests.Q226_TestOfTheHealer;
import org.l2jmobius.gameserver.enums.ClassId;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.Player;
import org.l2jmobius.gameserver.model.quest.Quest;
@ -415,39 +416,43 @@ public class Q226_TestOfTheHealer extends Quest
htmltext = "30661-01.htm";
st.setCond(14);
st.playSound(QuestState.SOUND_BEFORE_BATTLE);
addSpawn(LETO_LIZARDMAN_ASSASSIN, player, true, 0);
addSpawn(LETO_LIZARDMAN_ASSASSIN, player, true, 0);
addSpawn(LETO_LIZARDMAN_ASSASSIN, player, true, 0);
addSpawn(LETO_LIZARDMAN_ASSASSIN, player, true, 300000);
addSpawn(LETO_LIZARDMAN_ASSASSIN, player, true, 300000);
addSpawn(LETO_LIZARDMAN_ASSASSIN, player, true, 300000);
}
else if (cond == 14)
{
htmltext = "30661-01.htm";
checkSpawn(LETO_LIZARDMAN_ASSASSIN, 3, player);
}
else if (cond == 15)
{
htmltext = "30661-02.htm";
st.setCond(16);
st.playSound(QuestState.SOUND_BEFORE_BATTLE);
addSpawn(LETO_LIZARDMAN_SNIPER, player, true, 0);
addSpawn(LETO_LIZARDMAN_SNIPER, player, true, 0);
addSpawn(LETO_LIZARDMAN_SNIPER, player, true, 0);
addSpawn(LETO_LIZARDMAN_SNIPER, player, true, 300000);
addSpawn(LETO_LIZARDMAN_SNIPER, player, true, 300000);
addSpawn(LETO_LIZARDMAN_SNIPER, player, true, 300000);
}
else if (cond == 16)
{
htmltext = "30661-02.htm";
checkSpawn(LETO_LIZARDMAN_SNIPER, 3, player);
}
else if (cond == 17)
{
htmltext = "30661-03.htm";
st.setCond(18);
st.playSound(QuestState.SOUND_BEFORE_BATTLE);
addSpawn(LETO_LIZARDMAN_WIZARD, player, true, 0);
addSpawn(LETO_LIZARDMAN_WIZARD, player, true, 0);
addSpawn(LETO_LIZARDMAN_LORD, player, true, 0);
addSpawn(LETO_LIZARDMAN_WIZARD, player, true, 300000);
addSpawn(LETO_LIZARDMAN_WIZARD, player, true, 300000);
addSpawn(LETO_LIZARDMAN_LORD, player, true, 300000);
}
else if (cond == 18)
{
htmltext = "30661-03.htm";
checkSpawn(LETO_LIZARDMAN_WIZARD, 2, player);
checkSpawn(LETO_LIZARDMAN_LORD, 1, player);
}
else if (cond == 19)
{
@ -559,4 +564,24 @@ public class Q226_TestOfTheHealer extends Quest
return null;
}
private void checkSpawn(int npcId, int count, Player player)
{
int found = 0;
while (found < count)
{
found = 0;
for (Creature creature : player.getKnownList().getKnownCharacters())
{
if (creature.isNpc() && (((Npc) creature).getNpcId() == npcId))
{
found++;
}
}
if (found < count)
{
addSpawn(npcId, player, true, 300000);
}
}
}
}

View File

@ -17,6 +17,7 @@
package quests.Q226_TestOfTheHealer;
import org.l2jmobius.gameserver.enums.ClassId;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.Player;
import org.l2jmobius.gameserver.model.quest.Quest;
@ -415,39 +416,43 @@ public class Q226_TestOfTheHealer extends Quest
htmltext = "30661-01.htm";
st.setCond(14);
st.playSound(QuestState.SOUND_BEFORE_BATTLE);
addSpawn(LETO_LIZARDMAN_ASSASSIN, player, true, 0);
addSpawn(LETO_LIZARDMAN_ASSASSIN, player, true, 0);
addSpawn(LETO_LIZARDMAN_ASSASSIN, player, true, 0);
addSpawn(LETO_LIZARDMAN_ASSASSIN, player, true, 300000);
addSpawn(LETO_LIZARDMAN_ASSASSIN, player, true, 300000);
addSpawn(LETO_LIZARDMAN_ASSASSIN, player, true, 300000);
}
else if (cond == 14)
{
htmltext = "30661-01.htm";
checkSpawn(LETO_LIZARDMAN_ASSASSIN, 3, player);
}
else if (cond == 15)
{
htmltext = "30661-02.htm";
st.setCond(16);
st.playSound(QuestState.SOUND_BEFORE_BATTLE);
addSpawn(LETO_LIZARDMAN_SNIPER, player, true, 0);
addSpawn(LETO_LIZARDMAN_SNIPER, player, true, 0);
addSpawn(LETO_LIZARDMAN_SNIPER, player, true, 0);
addSpawn(LETO_LIZARDMAN_SNIPER, player, true, 300000);
addSpawn(LETO_LIZARDMAN_SNIPER, player, true, 300000);
addSpawn(LETO_LIZARDMAN_SNIPER, player, true, 300000);
}
else if (cond == 16)
{
htmltext = "30661-02.htm";
checkSpawn(LETO_LIZARDMAN_SNIPER, 3, player);
}
else if (cond == 17)
{
htmltext = "30661-03.htm";
st.setCond(18);
st.playSound(QuestState.SOUND_BEFORE_BATTLE);
addSpawn(LETO_LIZARDMAN_WIZARD, player, true, 0);
addSpawn(LETO_LIZARDMAN_WIZARD, player, true, 0);
addSpawn(LETO_LIZARDMAN_LORD, player, true, 0);
addSpawn(LETO_LIZARDMAN_WIZARD, player, true, 300000);
addSpawn(LETO_LIZARDMAN_WIZARD, player, true, 300000);
addSpawn(LETO_LIZARDMAN_LORD, player, true, 300000);
}
else if (cond == 18)
{
htmltext = "30661-03.htm";
checkSpawn(LETO_LIZARDMAN_WIZARD, 2, player);
checkSpawn(LETO_LIZARDMAN_LORD, 1, player);
}
else if (cond == 19)
{
@ -559,4 +564,24 @@ public class Q226_TestOfTheHealer extends Quest
return null;
}
private void checkSpawn(int npcId, int count, Player player)
{
int found = 0;
while (found < count)
{
found = 0;
for (Creature creature : player.getKnownList().getKnownCharacters())
{
if (creature.isNpc() && (((Npc) creature).getNpcId() == npcId))
{
found++;
}
}
if (found < count)
{
addSpawn(npcId, player, true, 300000);
}
}
}
}