Sync with L2JServer Feb 7th 2015.

This commit is contained in:
mobius
2015-02-07 23:48:56 +00:00
parent 1e166ca657
commit ecd17fdefb
1949 changed files with 3120 additions and 33466 deletions

View File

@@ -21,15 +21,12 @@ package gracia.AI;
import java.util.Map;
import javolution.util.FastMap;
import quests.Q00692_HowtoOpposeEvil.Q00692_HowtoOpposeEvil;
import ai.npc.AbstractNpcAI;
import com.l2jserver.Config;
import com.l2jserver.gameserver.ThreadPoolManager;
import com.l2jserver.gameserver.ai.CtrlIntention;
import com.l2jserver.gameserver.data.xml.impl.DoorData;
import com.l2jserver.gameserver.data.xml.impl.NpcData;
import com.l2jserver.gameserver.enums.QuestSound;
import com.l2jserver.gameserver.idfactory.IdFactory;
import com.l2jserver.gameserver.instancemanager.GraciaSeedsManager;
import com.l2jserver.gameserver.instancemanager.ZoneManager;
@@ -41,7 +38,6 @@ import com.l2jserver.gameserver.model.actor.instance.L2DoorInstance;
import com.l2jserver.gameserver.model.actor.instance.L2MonsterInstance;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
import com.l2jserver.gameserver.model.quest.QuestState;
import com.l2jserver.gameserver.model.skills.Skill;
import com.l2jserver.gameserver.model.zone.L2ZoneType;
import com.l2jserver.gameserver.network.SystemMessageId;
@@ -54,7 +50,6 @@ import com.l2jserver.gameserver.util.Util;
*/
public class EnergySeeds extends AbstractNpcAI
{
private static final int HOWTOOPPOSEEVIL_CHANCE = 60;
private static final int RATE = 1;
private static final int RESPAWN = 480000;
private static final int RANDOM_RESPAWN_OFFSET = 180000;
@@ -316,26 +311,9 @@ public class EnergySeeds extends AbstractNpcAI
{
return;
}
QuestState st = player.getQuestState(Q00692_HowtoOpposeEvil.class.getSimpleName());
switch (seedType)
{
case INFINITY:
if ((st != null) && st.isCond(3))
{
handleQuestDrop(player, 13798);
}
break;
case DESTRUCTION:
if ((st != null) && st.isCond(3))
{
handleQuestDrop(player, 13867);
}
break;
case ANNIHILATION_BISTAKON:
if ((st != null) && st.isCond(3))
{
handleQuestDrop(player, 15535);
}
if (getRandom(100) < 50)
{
L2MonsterInstance mob = spawnSupriseMob(seedEnergy, ANNIHILATION_SUPRISE_MOB_IDS[0][getRandom(ANNIHILATION_SUPRISE_MOB_IDS[0].length)]);
@@ -345,10 +323,6 @@ public class EnergySeeds extends AbstractNpcAI
}
break;
case ANNIHILATION_REPTILIKON:
if ((st != null) && st.isCond(3))
{
handleQuestDrop(player, 15535);
}
if (getRandom(100) < 50)
{
L2MonsterInstance mob = spawnSupriseMob(seedEnergy, ANNIHILATION_SUPRISE_MOB_IDS[1][getRandom(ANNIHILATION_SUPRISE_MOB_IDS[1].length)]);
@@ -358,10 +332,6 @@ public class EnergySeeds extends AbstractNpcAI
}
break;
case ANNIHILATION_COKRAKON:
if ((st != null) && st.isCond(3))
{
handleQuestDrop(player, 15535);
}
if (getRandom(100) < 50)
{
L2MonsterInstance mob = spawnSupriseMob(seedEnergy, ANNIHILATION_SUPRISE_MOB_IDS[2][getRandom(ANNIHILATION_SUPRISE_MOB_IDS[2].length)]);
@@ -386,22 +356,6 @@ public class EnergySeeds extends AbstractNpcAI
return monster;
}
private void handleQuestDrop(L2PcInstance player, int itemId)
{
double chance = HOWTOOPPOSEEVIL_CHANCE * Config.RATE_QUEST_DROP;
int numItems = (int) (chance / 100);
chance = chance % 100;
if (getRandom(100) < chance)
{
numItems++;
}
if (numItems > 0)
{
giveItems(player, itemId, numItems);
playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
private void addSpawnsToList()
{
// Seed of Destruction