ThreadPool manager rework.
This commit is contained in:
@@ -127,7 +127,7 @@ public final class DenOfEvil extends AbstractNpcAI
|
||||
zone.addSkill(skillId, skillLevel + 1);
|
||||
if (skillLevel == 3) // 3+1=4
|
||||
{
|
||||
ThreadPoolManager.getInstance().scheduleAi(new KashaDestruction(zone), 2 * 60 * 1000l);
|
||||
ThreadPoolManager.schedule(new KashaDestruction(zone), 2 * 60 * 1000l);
|
||||
zone.broadcastPacket(SystemMessage.getSystemMessage(SystemMessageId.DEFEAT_KASHA_S_EYES_TO_LIFT_THE_GREAT_CURSE));
|
||||
}
|
||||
else if (skillLevel == 2)
|
||||
@@ -140,7 +140,7 @@ public final class DenOfEvil extends AbstractNpcAI
|
||||
@Override
|
||||
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
|
||||
{
|
||||
ThreadPoolManager.getInstance().scheduleAi(new RespawnNewEye(npc.getLocation()), 15000);
|
||||
ThreadPoolManager.schedule(new RespawnNewEye(npc.getLocation()), 15000);
|
||||
final L2EffectZone zone = ZoneManager.getInstance().getZone(npc, L2EffectZone.class);
|
||||
if (zone == null)
|
||||
{
|
||||
@@ -213,7 +213,7 @@ public final class DenOfEvil extends AbstractNpcAI
|
||||
final L2Npc npc = (L2Npc) character;
|
||||
if (CommonUtil.contains(EYE_IDS, npc.getId()))
|
||||
{
|
||||
ThreadPoolManager.getInstance().scheduleAi(new RespawnNewEye(npc.getLocation()), 15000);
|
||||
ThreadPoolManager.schedule(new RespawnNewEye(npc.getLocation()), 15000);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -129,11 +129,11 @@ public final class Parade extends AbstractNpcAI
|
||||
{
|
||||
// Starts at 8:00 and repeats every 6 hours.
|
||||
final long diff = timeLeftMilli(8, 0, 0), cycle = 3600000L;
|
||||
ThreadPoolManager.getInstance().scheduleGeneralAtFixedRate(new Start(), diff, cycle);
|
||||
ThreadPoolManager.scheduleAtFixedRate(new Start(), diff, cycle);
|
||||
|
||||
// Test - Starts 3 minutes after server startup and repeats every 20 minutes.
|
||||
// final long diff = timeLeftMilli(8, 0, 0), cycle = 600000L;
|
||||
// ThreadPoolManager.getInstance().scheduleGeneralAtFixedRate(new Start(), 180000L, cycle);
|
||||
// ThreadPoolManager.scheduleAtFixedRate(new Start(), 180000L, cycle);
|
||||
|
||||
_log.info("Fantasy Isle: Parade starting at " + new SimpleDateFormat("yyyy/MM/dd HH:mm").format(System.currentTimeMillis() + diff) + " and is scheduled each next " + (cycle / 3600000) + " hours.");
|
||||
}
|
||||
@@ -171,9 +171,9 @@ public final class Parade extends AbstractNpcAI
|
||||
public void run()
|
||||
{
|
||||
load();
|
||||
spawnTask = ThreadPoolManager.getInstance().scheduleGeneralAtFixedRate(new Spawn(), 0, 5000);
|
||||
deleteTask = ThreadPoolManager.getInstance().scheduleGeneralAtFixedRate(new Delete(), 10000, 1000);
|
||||
cleanTask = ThreadPoolManager.getInstance().scheduleGeneral(new Clean(), 420000);
|
||||
spawnTask = ThreadPoolManager.scheduleAtFixedRate(new Spawn(), 0, 5000);
|
||||
deleteTask = ThreadPoolManager.scheduleAtFixedRate(new Delete(), 10000, 1000);
|
||||
cleanTask = ThreadPoolManager.schedule(new Clean(), 420000);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -141,7 +141,7 @@ public final class GainakSiege extends AbstractNpcAI
|
||||
final L2SiegeZone zone = ZoneManager.getInstance().getZone(npc, L2SiegeZone.class);
|
||||
if ((zone != null) && (zone.getId() == 60019) && zone.isActive())
|
||||
{
|
||||
ThreadPoolManager.getInstance().scheduleAi(new RespawnNewAssassin(npc.getLocation()), 60000);
|
||||
ThreadPoolManager.schedule(new RespawnNewAssassin(npc.getLocation()), 60000);
|
||||
}
|
||||
return super.onKill(npc, killer, isSummon);
|
||||
}
|
||||
|
@@ -256,7 +256,7 @@ public final class FourSepulchers extends AbstractNpcAI implements IGameXmlReade
|
||||
if ((doorInfo[0] == sepulcherId) && (doorInfo[1] == currentWave))
|
||||
{
|
||||
openDoor(doorInfo[2], 0);
|
||||
ThreadPoolManager.getInstance().scheduleGeneral(() ->
|
||||
ThreadPoolManager.schedule(() ->
|
||||
{
|
||||
closeDoor(doorInfo[2], 0);
|
||||
}, 15000);
|
||||
@@ -578,7 +578,7 @@ public final class FourSepulchers extends AbstractNpcAI implements IGameXmlReade
|
||||
showHtmlFile(player, npcId + "-OK.html", npc, null);
|
||||
|
||||
// Kick all players when/if time is over
|
||||
ThreadPoolManager.getInstance().scheduleGeneral(() ->
|
||||
ThreadPoolManager.schedule(() ->
|
||||
{
|
||||
ZoneManager.getInstance().getZoneById(MANAGER_ZONES.get(npcId)).oustAllPlayers();
|
||||
}, TIME_ATTACK * 60 * 1000);
|
||||
|
@@ -109,7 +109,7 @@ public class AltarOfSacrifice extends AbstractNpcAI
|
||||
|
||||
private void sendMessage(L2Npc npc, NpcStringId npcString, int delay)
|
||||
{
|
||||
ThreadPoolManager.getInstance().scheduleGeneral(() ->
|
||||
ThreadPoolManager.schedule(() ->
|
||||
{
|
||||
if (npc != null)
|
||||
{
|
||||
|
@@ -349,7 +349,7 @@ public final class AwakeningMaster extends AbstractNpcAI
|
||||
player.sendSkillList();
|
||||
}
|
||||
|
||||
ThreadPoolManager.getInstance().scheduleGeneral(() ->
|
||||
ThreadPoolManager.schedule(() ->
|
||||
{
|
||||
player.sendPacket(ExShowUsm.AWAKENING_END);
|
||||
}, 10000);
|
||||
|
@@ -174,7 +174,7 @@ public class HarnakUndergroundRuinsZone extends AbstractNpcAI
|
||||
_templates.stream().forEach(t -> t.spawn(g -> String.valueOf(g.getName()).equalsIgnoreCase(zoneName.concat("_demonic")), null));
|
||||
zone.getPlayersInside().forEach(temp -> temp.sendPacket(new ExSendUIEvent(temp, false, false, 600, 0, NpcStringId.DEMONIC_SYSTEM_ACTIVATED)));
|
||||
currentInfo.setZoneStage(7);
|
||||
ThreadPoolManager.getInstance().scheduleGeneral(new changeZoneStage(zone), 600000); // 10min
|
||||
ThreadPoolManager.schedule(new changeZoneStage(zone), 600000); // 10min
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -202,7 +202,7 @@ public class HarnakUndergroundRuinsZone extends AbstractNpcAI
|
||||
if (currentInfo.getZoneStage() < 6)
|
||||
{
|
||||
currentInfo.setZoneStage(currentInfo.getZoneStage() + 1);
|
||||
ThreadPoolManager.getInstance().scheduleGeneral(new changeZoneStage(zone), 5000);
|
||||
ThreadPoolManager.schedule(new changeZoneStage(zone), 5000);
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
@@ -248,7 +248,7 @@ public class HarnakUndergroundRuinsZone extends AbstractNpcAI
|
||||
if (calcPoints >= 300)
|
||||
{
|
||||
calcPoints = 300;
|
||||
ThreadPoolManager.getInstance().scheduleGeneral(new changeZoneStage(currentZone.getKey()), 1000);
|
||||
ThreadPoolManager.schedule(new changeZoneStage(currentZone.getKey()), 1000);
|
||||
}
|
||||
currentInfo.setCurrentPoint(calcPoints);
|
||||
for (L2PcInstance player : currentZone.getKey().getPlayersInside())
|
||||
|
@@ -258,7 +258,7 @@ public final class QueenAnt extends AbstractNpcAI
|
||||
{
|
||||
((L2MonsterInstance) npc).getMinionList().spawnMinions(npc.getParameters().getMinionList("Privates"));
|
||||
}
|
||||
_task = ThreadPoolManager.getInstance().scheduleAiAtFixedRate(new QueenAntTask(), 5 * 1000, 5 * 1000);
|
||||
_task = ThreadPoolManager.scheduleAtFixedRate(new QueenAntTask(), 5 * 1000, 5 * 1000);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@@ -701,7 +701,7 @@ public final class EnergySeeds extends AbstractNpcAI
|
||||
|
||||
public void scheduleRespawn(long waitTime)
|
||||
{
|
||||
ThreadPoolManager.getInstance().scheduleGeneral(() ->
|
||||
ThreadPoolManager.schedule(() ->
|
||||
{
|
||||
// if the AI is inactive, do not spawn the NPC
|
||||
if (isSeedActive(_seedId))
|
||||
|
@@ -90,6 +90,6 @@ public class NpcBufferAI implements Runnable
|
||||
|
||||
_npc.doCast(skill);
|
||||
|
||||
ThreadPoolManager.getInstance().scheduleGeneral(this, skill.getReuseDelay());
|
||||
ThreadPoolManager.schedule(this, skill.getReuseDelay());
|
||||
}
|
||||
}
|
@@ -53,7 +53,7 @@ public final class NpcBuffers extends AbstractNpcAI
|
||||
final NpcBufferData data = _npcBuffers.getNpcBuffer(npc.getId());
|
||||
for (NpcBufferSkillData skill : data.getSkills())
|
||||
{
|
||||
ThreadPoolManager.getInstance().scheduleAi(new NpcBufferAI(npc, skill), skill.getInitialDelay());
|
||||
ThreadPoolManager.schedule(new NpcBufferAI(npc, skill), skill.getInitialDelay());
|
||||
}
|
||||
return super.onSpawn(npc);
|
||||
}
|
||||
|
Reference in New Issue
Block a user