Addition of the Chronos class.

This commit is contained in:
MobiusDevelopment
2021-02-20 11:17:45 +00:00
parent dd0d74a8e6
commit c16a199407
3419 changed files with 13203 additions and 8113 deletions

View File

@@ -29,6 +29,7 @@ import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.l2jmobius.commons.concurrent.ThreadPool;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.commons.util.IXmlReader;
import org.l2jmobius.gameserver.ai.CtrlIntention;
import org.l2jmobius.gameserver.enums.ChatType;
@@ -519,7 +520,7 @@ public class FourSepulchers extends AbstractNpcAI implements IXmlReader
final GlobalVariablesManager vars = GlobalVariablesManager.getInstance();
final long var = vars.getLong("FourSepulchers" + npcId, 0) + (TIME_ATTACK * 60 * 1000);
if (var > System.currentTimeMillis())
if (var > Chronos.currentTimeMillis())
{
showHtmlFile(player, npcId + "-NE.html", npc, null);
return;
@@ -587,7 +588,7 @@ public class FourSepulchers extends AbstractNpcAI implements IXmlReader
}, TIME_ATTACK * 60 * 1000);
// Save attack time
vars.set("FourSepulchers" + npcId, System.currentTimeMillis());
vars.set("FourSepulchers" + npcId, Chronos.currentTimeMillis());
// Init progress
STORED_PROGRESS.put(sepulcherId, 1); // start from 1
// Start

View File

@@ -21,6 +21,7 @@ import java.util.List;
import java.util.Map;
import org.l2jmobius.Config;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.commons.util.CommonUtil;
import org.l2jmobius.gameserver.ai.CtrlIntention;
import org.l2jmobius.gameserver.enums.MountType;
@@ -169,14 +170,14 @@ public class Antharas extends AbstractNpcAI
_antharas = (GrandBossInstance) addSpawn(ANTHARAS, loc_x, loc_y, loc_z, heading, false, 0);
_antharas.setCurrentHpMp(curr_hp, curr_mp);
addBoss(_antharas);
_lastAttack = System.currentTimeMillis();
_lastAttack = Chronos.currentTimeMillis();
startQuestTimer("CHECK_ATTACK", 60000, _antharas, null);
startQuestTimer("SPAWN_MINION", 300000, _antharas, null);
break;
}
case DEAD:
{
final long remain = respawnTime - System.currentTimeMillis();
final long remain = respawnTime - Chronos.currentTimeMillis();
if (remain > 0)
{
startQuestTimer("CLEAR_STATUS", remain, null, null);
@@ -272,7 +273,7 @@ public class Antharas extends AbstractNpcAI
_antharas.setRandomWalking(false);
_antharas.teleToLocation(181323, 114850, -7623, 32542);
setStatus(IN_FIGHT);
_lastAttack = System.currentTimeMillis();
_lastAttack = Chronos.currentTimeMillis();
zone.broadcastPacket(new PlaySound("BS02_A"));
startQuestTimer("CAMERA_1", 23, _antharas, null);
break;
@@ -367,7 +368,7 @@ public class Antharas extends AbstractNpcAI
}
case "CHECK_ATTACK":
{
if ((npc != null) && ((_lastAttack + 900000) < System.currentTimeMillis()))
if ((npc != null) && ((_lastAttack + 900000) < Chronos.currentTimeMillis()))
{
setStatus(ALIVE);
for (Creature creature : zone.getCharactersInside())
@@ -619,7 +620,7 @@ public class Antharas extends AbstractNpcAI
@Override
public String onAttack(Npc npc, PlayerInstance attacker, int damage, boolean isSummon, Skill skill)
{
_lastAttack = System.currentTimeMillis();
_lastAttack = Chronos.currentTimeMillis();
if (npc.getId() == BOMBER)
{
if (npc.calculateDistance3D(attacker) < 230)
@@ -765,7 +766,7 @@ public class Antharas extends AbstractNpcAI
private void setRespawn(long respawnTime)
{
GrandBossManager.getInstance().getStatSet(ANTHARAS).set("respawn_time", System.currentTimeMillis() + respawnTime);
GrandBossManager.getInstance().getStatSet(ANTHARAS).set("respawn_time", Chronos.currentTimeMillis() + respawnTime);
}
private final void refreshAiParams(PlayerInstance attacker, int damage)

View File

@@ -17,6 +17,7 @@
package ai.bosses.Baium;
import org.l2jmobius.Config;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.commons.util.CommonUtil;
import org.l2jmobius.gameserver.ai.CtrlIntention;
import org.l2jmobius.gameserver.enums.CategoryType;
@@ -136,7 +137,7 @@ public class Baium extends AbstractNpcAI
final int heading = info.getInt("heading");
_baium = (GrandBossInstance) addSpawn(BAIUM, loc_x, loc_y, loc_z, heading, false, 0);
_baium.setCurrentHpMp(curr_hp, curr_mp);
_lastAttack = System.currentTimeMillis();
_lastAttack = Chronos.currentTimeMillis();
addBoss(_baium);
for (Location loc : ARCHANGEL_LOC)
@@ -149,7 +150,7 @@ public class Baium extends AbstractNpcAI
}
case DEAD:
{
final long remain = info.getLong("respawn_time") - System.currentTimeMillis();
final long remain = info.getLong("respawn_time") - Chronos.currentTimeMillis();
if (remain > 0)
{
startQuestTimer("CLEAR_STATUS", remain, null, null);
@@ -209,7 +210,7 @@ public class Baium extends AbstractNpcAI
_baium.disableCoreAI(true);
_baium.setRandomWalking(false);
addBoss(_baium);
_lastAttack = System.currentTimeMillis();
_lastAttack = Chronos.currentTimeMillis();
startQuestTimer("WAKEUP_ACTION", 50, _baium, null);
startQuestTimer("MANAGE_EARTHQUAKE", 2000, _baium, player);
startQuestTimer("CHECK_ATTACK", 60000, _baium, null);
@@ -375,7 +376,7 @@ public class Baium extends AbstractNpcAI
}
case "CHECK_ATTACK":
{
if ((npc != null) && ((_lastAttack + 1800000) < System.currentTimeMillis()))
if ((npc != null) && ((_lastAttack + 1800000) < Chronos.currentTimeMillis()))
{
notifyEvent("CLEAR_ZONE", null, null);
addSpawn(BAIUM_STONE, BAIUM_LOC, false, 0);
@@ -383,7 +384,7 @@ public class Baium extends AbstractNpcAI
}
else if (npc != null)
{
if (((_lastAttack + 300000) < System.currentTimeMillis()) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.75)))
if (((_lastAttack + 300000) < Chronos.currentTimeMillis()) && (npc.getCurrentHp() < (npc.getMaxHp() * 0.75)))
{
npc.setTarget(npc);
npc.doCast(HEAL_OF_BAIUM.getSkill());
@@ -484,7 +485,7 @@ public class Baium extends AbstractNpcAI
@Override
public String onAttack(Npc npc, PlayerInstance attacker, int damage, boolean isSummon, Skill skill)
{
_lastAttack = System.currentTimeMillis();
_lastAttack = Chronos.currentTimeMillis();
if (npc.getId() == BAIUM)
{
if ((attacker.getMountType() == MountType.STRIDER) && !attacker.isAffectedBySkill(ANTI_STRIDER.getSkillId()) && !npc.isSkillDisabled(ANTI_STRIDER.getSkill()))
@@ -663,7 +664,7 @@ public class Baium extends AbstractNpcAI
private void setRespawn(long respawnTime)
{
GrandBossManager.getInstance().getStatSet(BAIUM).set("respawn_time", (System.currentTimeMillis() + respawnTime));
GrandBossManager.getInstance().getStatSet(BAIUM).set("respawn_time", (Chronos.currentTimeMillis() + respawnTime));
}
private void manageSkills(Npc npc)

View File

@@ -23,6 +23,7 @@ import java.util.Map.Entry;
import java.util.concurrent.ConcurrentHashMap;
import org.l2jmobius.Config;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.enums.ChatType;
import org.l2jmobius.gameserver.instancemanager.GlobalVariablesManager;
import org.l2jmobius.gameserver.instancemanager.GrandBossManager;
@@ -88,7 +89,7 @@ public class Core extends AbstractNpcAI
if (GrandBossManager.getInstance().getBossStatus(CORE) == DEAD)
{
// Load the unlock date and time for Core from DB.
final long temp = info.getLong("respawn_time") - System.currentTimeMillis();
final long temp = info.getLong("respawn_time") - Chronos.currentTimeMillis();
// If Core is locked until a certain time, mark it so and start the unlock timer the unlock time has not yet expired.
if (temp > 0)
{
@@ -204,7 +205,7 @@ public class Core extends AbstractNpcAI
startQuestTimer("core_unlock", respawnTime, null, null);
// Also save the respawn time so that the info is maintained past reboots.
final StatSet info = GrandBossManager.getInstance().getStatSet(CORE);
info.set("respawn_time", System.currentTimeMillis() + respawnTime);
info.set("respawn_time", Chronos.currentTimeMillis() + respawnTime);
GrandBossManager.getInstance().setStatSet(CORE, info);
startQuestTimer("despawn_minions", 20000, null, null);
cancelQuestTimers("spawn_minion");

View File

@@ -16,6 +16,7 @@
*/
package ai.bosses.DrChaos;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.commons.util.Rnd;
import org.l2jmobius.gameserver.ai.CtrlIntention;
import org.l2jmobius.gameserver.enums.ChatType;
@@ -68,7 +69,7 @@ public class DrChaos extends AbstractNpcAI
// Load the reset date and time for Dr. Chaos from DB.
if (status == DEAD)
{
final long temp = (info.getLong("respawn_time") - System.currentTimeMillis());
final long temp = (info.getLong("respawn_time") - Chronos.currentTimeMillis());
if (temp > 0)
{
startQuestTimer("reset_drchaos", temp, null, null, false);
@@ -98,7 +99,7 @@ public class DrChaos extends AbstractNpcAI
_golem.setRunning();
// start monitoring Dr. Chaos's inactivity
_lastAttackVsGolem = System.currentTimeMillis();
_lastAttackVsGolem = Chronos.currentTimeMillis();
startQuestTimer("golem_despawn", 60000, _golem, null, true);
}
// Spawn the regular NPC.
@@ -121,7 +122,7 @@ public class DrChaos extends AbstractNpcAI
{
if (npc.getId() == CHAOS_GOLEM)
{
if ((_lastAttackVsGolem + 1800000) < System.currentTimeMillis())
if ((_lastAttackVsGolem + 1800000) < Chronos.currentTimeMillis())
{
// Despawn the war golem.
npc.deleteMe();
@@ -163,7 +164,7 @@ public class DrChaos extends AbstractNpcAI
golem.broadcastPacket(new PlaySound(1, "Rm03_A", 0, 0, 0, 0, 0));
// start monitoring Dr. Chaos's inactivity
_lastAttackVsGolem = System.currentTimeMillis();
_lastAttackVsGolem = Chronos.currentTimeMillis();
startQuestTimer("golem_despawn", 60000, golem, null, true);
}
// Check every sec if someone is in range, if found, launch one task to decrease the timer.
@@ -249,7 +250,7 @@ public class DrChaos extends AbstractNpcAI
// also save the respawn time so that the info is maintained past reboots
final StatSet info = GrandBossManager.getInstance().getStatSet(CHAOS_GOLEM);
info.set("respawn_time", System.currentTimeMillis() + respawnTime);
info.set("respawn_time", Chronos.currentTimeMillis() + respawnTime);
GrandBossManager.getInstance().setStatSet(CHAOS_GOLEM, info);
return null;
}

View File

@@ -23,6 +23,7 @@ import static org.l2jmobius.gameserver.ai.CtrlIntention.AI_INTENTION_IDLE;
import java.util.ArrayList;
import java.util.List;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.data.xml.SkillData;
import org.l2jmobius.gameserver.geoengine.GeoEngine;
import org.l2jmobius.gameserver.model.WorldObject;
@@ -145,11 +146,11 @@ public class ScarletVanHalisha extends AbstractNpcAI
{
return SkillData.getInstance().getSkill(FRINTEZZA_DAEMON_CHARGE, 2);
}
else if (((_lastRangedSkillTime + _rangedSkillMinCoolTime) < System.currentTimeMillis()) && (getRandom(100) < 10))
else if (((_lastRangedSkillTime + _rangedSkillMinCoolTime) < Chronos.currentTimeMillis()) && (getRandom(100) < 10))
{
return SkillData.getInstance().getSkill(FRINTEZZA_DAEMON_FIELD, 1);
}
else if (((_lastRangedSkillTime + _rangedSkillMinCoolTime) < System.currentTimeMillis()) && (getRandom(100) < 10))
else if (((_lastRangedSkillTime + _rangedSkillMinCoolTime) < Chronos.currentTimeMillis()) && (getRandom(100) < 10))
{
return SkillData.getInstance().getSkill(FRINTEZZA_DAEMON_MORPH, 1);
}
@@ -254,7 +255,7 @@ public class ScarletVanHalisha extends AbstractNpcAI
case FRINTEZZA_DAEMON_MORPH:
case FRINTEZZA_DAEMON_FIELD:
{
_lastRangedSkillTime = System.currentTimeMillis();
_lastRangedSkillTime = Chronos.currentTimeMillis();
skillRange = 550;
break;
}

View File

@@ -20,6 +20,7 @@ import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import org.l2jmobius.Config;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.ai.CtrlIntention;
import org.l2jmobius.gameserver.enums.ChatType;
import org.l2jmobius.gameserver.instancemanager.GrandBossManager;
@@ -97,7 +98,7 @@ public class Orfen extends AbstractNpcAI
if (status == DEAD)
{
// load the unlock date and time for Orfen from DB
final long temp = info.getLong("respawn_time") - System.currentTimeMillis();
final long temp = info.getLong("respawn_time") - Chronos.currentTimeMillis();
// if Orfen is locked until a certain time, mark it so and start the unlock timer
// the unlock time has not yet expired.
if (temp > 0)
@@ -328,7 +329,7 @@ public class Orfen extends AbstractNpcAI
startQuestTimer("orfen_unlock", respawnTime, null, null);
// also save the respawn time so that the info is maintained past reboots
final StatSet info = GrandBossManager.getInstance().getStatSet(ORFEN);
info.set("respawn_time", System.currentTimeMillis() + respawnTime);
info.set("respawn_time", Chronos.currentTimeMillis() + respawnTime);
GrandBossManager.getInstance().setStatSet(ORFEN, info);
cancelQuestTimer("check_minion_loc", npc, null);
cancelQuestTimer("check_orfen_pos", npc, null);

View File

@@ -20,6 +20,7 @@ import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import org.l2jmobius.Config;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.ai.CtrlIntention;
import org.l2jmobius.gameserver.instancemanager.GrandBossManager;
import org.l2jmobius.gameserver.instancemanager.ZoneManager;
@@ -96,7 +97,7 @@ public class QueenAnt extends AbstractNpcAI
if (status == DEAD)
{
// load the unlock date and time for queen ant from DB
final long temp = info.getLong("respawn_time") - System.currentTimeMillis();
final long temp = info.getLong("respawn_time") - Chronos.currentTimeMillis();
// if queen ant is locked until a certain time, mark it so and start the unlock timer
// the unlock time has not yet expired.
if (temp > 0)
@@ -367,7 +368,7 @@ public class QueenAnt extends AbstractNpcAI
cancelQuestTimer("heal", null, null);
// also save the respawn time so that the info is maintained past reboots
final StatSet info = GrandBossManager.getInstance().getStatSet(QUEEN);
info.set("respawn_time", System.currentTimeMillis() + respawnTime);
info.set("respawn_time", Chronos.currentTimeMillis() + respawnTime);
GrandBossManager.getInstance().setStatSet(QUEEN, info);
_nurses.clear();
_larva.deleteMe();

View File

@@ -16,6 +16,7 @@
*/
package ai.bosses.Sailren;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.enums.TeleportWhereType;
import org.l2jmobius.gameserver.instancemanager.GlobalVariablesManager;
import org.l2jmobius.gameserver.instancemanager.ZoneManager;
@@ -71,7 +72,7 @@ public class Sailren extends AbstractNpcAI
addKillId(VELOCIRAPTOR, PTEROSAUR, TREX, SAILREN);
addAttackId(VELOCIRAPTOR, PTEROSAUR, TREX, SAILREN);
final long remain = GlobalVariablesManager.getInstance().getLong("SailrenRespawn", 0) - System.currentTimeMillis();
final long remain = GlobalVariablesManager.getInstance().getLong("SailrenRespawn", 0) - Chronos.currentTimeMillis();
if (remain > 0)
{
STATUS = Status.DEAD;
@@ -118,7 +119,7 @@ public class Sailren extends AbstractNpcAI
{
takeItems(player, GAZKH, 1);
STATUS = Status.IN_FIGHT;
_lastAttack = System.currentTimeMillis();
_lastAttack = Chronos.currentTimeMillis();
for (PlayerInstance member : player.getParty().getMembers())
{
if (member.isInsideRadius3D(npc, 1000))
@@ -237,7 +238,7 @@ public class Sailren extends AbstractNpcAI
}
case "CHECK_ATTACK":
{
if (!zone.getPlayersInside().isEmpty() && ((_lastAttack + 600000) < System.currentTimeMillis()))
if (!zone.getPlayersInside().isEmpty() && ((_lastAttack + 600000) < Chronos.currentTimeMillis()))
{
cancelQuestTimer("TIME_OUT", null, null);
notifyEvent("TIME_OUT", null, null);
@@ -257,7 +258,7 @@ public class Sailren extends AbstractNpcAI
{
if (zone.isCharacterInZone(attacker))
{
_lastAttack = System.currentTimeMillis();
_lastAttack = Chronos.currentTimeMillis();
}
return super.onAttack(npc, attacker, damage, isSummon);
}
@@ -274,7 +275,7 @@ public class Sailren extends AbstractNpcAI
STATUS = Status.DEAD;
addSpawn(CUBIC, 27644, -6638, -2008, 0, false, 300000);
final long respawnTime = RESPAWN * 3600000;
GlobalVariablesManager.getInstance().set("SailrenRespawn", System.currentTimeMillis() + respawnTime);
GlobalVariablesManager.getInstance().set("SailrenRespawn", Chronos.currentTimeMillis() + respawnTime);
cancelQuestTimer("CHECK_ATTACK", null, null);
cancelQuestTimer("TIME_OUT", null, null);
startQuestTimer("CLEAR_STATUS", respawnTime, null, null);

View File

@@ -20,6 +20,7 @@ import java.util.ArrayList;
import java.util.List;
import org.l2jmobius.Config;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.ai.CtrlIntention;
import org.l2jmobius.gameserver.data.xml.SkillData;
import org.l2jmobius.gameserver.enums.MountType;
@@ -129,7 +130,7 @@ public class Valakas extends AbstractNpcAI
if (status == DEAD)
{
// load the unlock date and time for valakas from DB
final long temp = info.getLong("respawn_time") - System.currentTimeMillis();
final long temp = info.getLong("respawn_time") - Chronos.currentTimeMillis();
if (temp > 0)
{
// The time has not yet expired. Mark Valakas as currently locked (dead).
@@ -168,7 +169,7 @@ public class Valakas extends AbstractNpcAI
if (status == FIGHTING)
{
// stores current time for inactivity task.
_timeTracker = System.currentTimeMillis();
_timeTracker = Chronos.currentTimeMillis();
startQuestTimer("regen_task", 60000, valakas, null, true);
startQuestTimer("skill_task", 2000, valakas, null, true);
@@ -196,7 +197,7 @@ public class Valakas extends AbstractNpcAI
if (event.equalsIgnoreCase("beginning"))
{
// Stores current time
_timeTracker = System.currentTimeMillis();
_timeTracker = Chronos.currentTimeMillis();
// Teleport Valakas to his lair.
npc.teleToLocation(VALAKAS_LAIR);
@@ -220,7 +221,7 @@ public class Valakas extends AbstractNpcAI
else if (event.equalsIgnoreCase("regen_task"))
{
// Inactivity task - 15min
if ((GrandBossManager.getInstance().getBossStatus(VALAKAS) == FIGHTING) && ((_timeTracker + 900000) < System.currentTimeMillis()))
if ((GrandBossManager.getInstance().getBossStatus(VALAKAS) == FIGHTING) && ((_timeTracker + 900000) < Chronos.currentTimeMillis()))
{
npc.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
npc.teleToLocation(VALAKAS_REGENERATION_LOC);
@@ -416,7 +417,7 @@ public class Valakas extends AbstractNpcAI
npc.setTarget(attacker);
npc.doCast(SkillData.getInstance().getSkill(4258, 1));
}
_timeTracker = System.currentTimeMillis();
_timeTracker = Chronos.currentTimeMillis();
return super.onAttack(npc, attacker, damage, isSummon);
}
@@ -447,7 +448,7 @@ public class Valakas extends AbstractNpcAI
startQuestTimer("valakas_unlock", respawnTime, null, null);
// also save the respawn time so that the info is maintained past reboots
final StatSet info = GrandBossManager.getInstance().getStatSet(VALAKAS);
info.set("respawn_time", System.currentTimeMillis() + respawnTime);
info.set("respawn_time", Chronos.currentTimeMillis() + respawnTime);
GrandBossManager.getInstance().setStatSet(VALAKAS, info);
return super.onKill(npc, killer, isSummon);

View File

@@ -17,6 +17,7 @@
package ai.bosses.Zaken;
import org.l2jmobius.Config;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.instancemanager.GrandBossManager;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.actor.Npc;
@@ -53,7 +54,7 @@ public class Zaken extends AbstractNpcAI
if (status == DEAD)
{
// load the unlock date and time from DB
final long temp = info.getLong("respawn_time") - System.currentTimeMillis();
final long temp = info.getLong("respawn_time") - Chronos.currentTimeMillis();
if (temp > 0)
{
startQuestTimer("zaken_unlock", temp, null, null);
@@ -97,7 +98,7 @@ public class Zaken extends AbstractNpcAI
startQuestTimer("zaken_unlock", respawnTime, null, null);
// also save the respawn time so that the info is maintained past reboots
final StatSet info = GrandBossManager.getInstance().getStatSet(ZAKEN);
info.set("respawn_time", System.currentTimeMillis() + respawnTime);
info.set("respawn_time", Chronos.currentTimeMillis() + respawnTime);
GrandBossManager.getInstance().setStatSet(ZAKEN, info);
return super.onKill(npc, killer, isSummon);
}

View File

@@ -46,8 +46,8 @@ import org.l2jmobius.gameserver.model.events.impl.creature.npc.OnNpcManorBypass;
import org.l2jmobius.gameserver.model.holders.SkillHolder;
import org.l2jmobius.gameserver.model.itemcontainer.Inventory;
import org.l2jmobius.gameserver.model.siege.Castle;
import org.l2jmobius.gameserver.model.siege.Fort;
import org.l2jmobius.gameserver.model.siege.Castle.CastleFunction;
import org.l2jmobius.gameserver.model.siege.Fort;
import org.l2jmobius.gameserver.model.teleporter.TeleportHolder;
import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.ExShowCropInfo;

View File

@@ -26,6 +26,7 @@ import java.util.Optional;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.data.xml.ClanHallData;
import org.l2jmobius.gameserver.instancemanager.ClanHallAuctionManager;
import org.l2jmobius.gameserver.model.actor.Npc;
@@ -154,7 +155,7 @@ public class ClanHallAuctioneer extends AbstractNpcAI
htmltext = htmltext.replace("%id%", String.valueOf(clanHallAuction.getClanHallId()));
htmltext = htmltext.replace("%minBid%", String.valueOf(clanHallAuction.getHighestBid()));
htmltext = htmltext.replace("%myBid%", String.valueOf(clanHallAuction.getClanBid(clan)));
htmltext = htmltext.replace("%auctionEnd%", builder.appendPattern("dd/MM/yyyy HH").appendLiteral(" hour ").appendPattern("mm").appendLiteral(" minutes").toFormatter().format(Instant.ofEpochMilli(System.currentTimeMillis() + clanHallAuction.getRemaingTime()).atZone(ZoneId.systemDefault())));
htmltext = htmltext.replace("%auctionEnd%", builder.appendPattern("dd/MM/yyyy HH").appendLiteral(" hour ").appendPattern("mm").appendLiteral(" minutes").toFormatter().format(Instant.ofEpochMilli(Chronos.currentTimeMillis() + clanHallAuction.getRemaingTime()).atZone(ZoneId.systemDefault())));
}
}
else
@@ -190,7 +191,7 @@ public class ClanHallAuctioneer extends AbstractNpcAI
final ClanHall clanHall = ClanHallData.getInstance().getClanHallById(clanHallAuction.getClanHallId());
final Clan owner = clanHall.getOwner();
final long remainingTime = clanHallAuction.getRemaingTime();
final Instant endTime = Instant.ofEpochMilli(System.currentTimeMillis() + remainingTime);
final Instant endTime = Instant.ofEpochMilli(Chronos.currentTimeMillis() + remainingTime);
final DateTimeFormatterBuilder builder = new DateTimeFormatterBuilder();
htmltext = getHtm(player, "ClanHallAuctioneer-bidInfo.html");
@@ -248,7 +249,7 @@ public class ClanHallAuctioneer extends AbstractNpcAI
final ClanHallAuction clanHallAuction = ClanHallAuctionManager.getInstance().getClanHallAuctionById(clanHallId);
final Clan owner = clanHall.getOwner();
final long remainingTime = clanHallAuction.getRemaingTime();
final Instant endTime = Instant.ofEpochMilli(System.currentTimeMillis() + remainingTime);
final Instant endTime = Instant.ofEpochMilli(Chronos.currentTimeMillis() + remainingTime);
final DateTimeFormatterBuilder builder = new DateTimeFormatterBuilder();
final NpcHtmlMessage html = new NpcHtmlMessage(npc.getObjectId());
html.setHtml(getHtm(player, "ClanHallAuctioneer-info.html"));
@@ -297,7 +298,7 @@ public class ClanHallAuctioneer extends AbstractNpcAI
sb.append("\"><font color=\"ffffaa\">&%");
sb.append(clanHall.getResidenceId());
sb.append(";[0]</font></a></td><td width=50>");
sb.append(DateTimeFormatter.ofPattern("dd/MM/yyyy").format(Instant.ofEpochMilli(System.currentTimeMillis() + auction.getRemaingTime()).atZone(ZoneId.systemDefault())));
sb.append(DateTimeFormatter.ofPattern("dd/MM/yyyy").format(Instant.ofEpochMilli(Chronos.currentTimeMillis() + auction.getRemaingTime()).atZone(ZoneId.systemDefault())));
sb.append("</td><td width=70 align=right><font color=\"aaffff\">");
sb.append(auction.getHighestBid());
sb.append("</font></td></tr>");

View File

@@ -16,6 +16,7 @@
*/
package events.HappyHours;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.model.World;
import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
@@ -39,7 +40,7 @@ public class HappyHours extends LongTimeEvent
// Other
private static final int MIN_LEVEL = 20;
private static final int REWARD_INTERVAL = 60 * 60 * 1000; // 1 hour
private static long _lastRewardTime = System.currentTimeMillis();
private static long _lastRewardTime = Chronos.currentTimeMillis();
private HappyHours()
{
@@ -76,9 +77,9 @@ public class HappyHours extends LongTimeEvent
{
if (isEventPeriod())
{
if ((System.currentTimeMillis() - (_lastRewardTime + REWARD_INTERVAL)) > 0) // Exploit check - Just in case.
if ((Chronos.currentTimeMillis() - (_lastRewardTime + REWARD_INTERVAL)) > 0) // Exploit check - Just in case.
{
_lastRewardTime = System.currentTimeMillis();
_lastRewardTime = Chronos.currentTimeMillis();
final ExShowScreenMessage screenMsg = new ExShowScreenMessage("You obtained 20 Sibi's coins.", ExShowScreenMessage.TOP_CENTER, 7000, 0, true, true);
final SystemMessage systemMsg = new SystemMessage(SystemMessageId.YOU_OBTAINED_S1_SIBI_S_COINS);
systemMsg.addInt(20);

View File

@@ -19,6 +19,7 @@ package handlers.admincommandhandlers;
import java.util.Collection;
import java.util.StringTokenizer;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.handler.IAdminCommandHandler;
import org.l2jmobius.gameserver.instancemanager.CursedWeaponsManager;
import org.l2jmobius.gameserver.model.CursedWeapon;
@@ -209,7 +210,7 @@ public class AdminCursedWeapons implements IAdminCommandHandler
{
activeChar.addItem("AdminCursedWeaponAdd", id, 1, activeChar, true);
}
cw.setEndTime(System.currentTimeMillis() + (cw.getDuration() * 60000));
cw.setEndTime(Chronos.currentTimeMillis() + (cw.getDuration() * 60000));
cw.reActivate();
}
}

View File

@@ -19,6 +19,7 @@ package handlers.admincommandhandlers;
import java.util.Calendar;
import java.util.StringTokenizer;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.handler.IAdminCommandHandler;
import org.l2jmobius.gameserver.instancemanager.GraciaSeedsManager;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
@@ -66,7 +67,7 @@ public class AdminGraciaSeeds implements IAdminCommandHandler
if (GraciaSeedsManager.getInstance().getSoDTimeForNextStateChange() > 0)
{
final Calendar nextChangeDate = Calendar.getInstance();
nextChangeDate.setTimeInMillis(System.currentTimeMillis() + GraciaSeedsManager.getInstance().getSoDTimeForNextStateChange());
nextChangeDate.setTimeInMillis(Chronos.currentTimeMillis() + GraciaSeedsManager.getInstance().getSoDTimeForNextStateChange());
html.replace("%sodtime%", nextChangeDate.getTime().toString());
}
else

View File

@@ -20,6 +20,7 @@ import java.util.Map;
import java.util.Map.Entry;
import java.util.StringTokenizer;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.handler.IAdminCommandHandler;
import org.l2jmobius.gameserver.instancemanager.InstanceManager;
import org.l2jmobius.gameserver.model.World;
@@ -118,7 +119,7 @@ public class AdminInstanceZone implements IAdminCommandHandler
int hours = 0;
int minutes = 0;
final int id = entry.getKey();
final long remainingTime = (entry.getValue() - System.currentTimeMillis()) / 1000;
final long remainingTime = (entry.getValue() - Chronos.currentTimeMillis()) / 1000;
if (remainingTime > 0)
{
hours = (int) (remainingTime / 3600);

View File

@@ -24,6 +24,7 @@ import java.util.StringTokenizer;
import java.util.logging.Logger;
import org.l2jmobius.Config;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.commons.util.CommonUtil;
import org.l2jmobius.gameserver.cache.HtmCache;
import org.l2jmobius.gameserver.data.sql.CharNameTable;
@@ -233,7 +234,7 @@ public class AdminPunishment implements IAdminCommandHandler
long expirationTime = Integer.parseInt(exp);
if (expirationTime > 0)
{
expirationTime = System.currentTimeMillis() + (expirationTime * 60 * 1000);
expirationTime = Chronos.currentTimeMillis() + (expirationTime * 60 * 1000);
}
final PunishmentAffect affect = PunishmentAffect.getByName(af);

View File

@@ -24,6 +24,7 @@ import java.util.Set;
import java.util.concurrent.TimeUnit;
import org.l2jmobius.Config;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.GameServer;
import org.l2jmobius.gameserver.GameTimeController;
import org.l2jmobius.gameserver.cache.HtmCache;
@@ -60,7 +61,7 @@ public class AdminServerInfo implements IAdminCommandHandler
html.replace("%gameTime%", GameTimeController.getInstance().getGameHour() + ":" + GameTimeController.getInstance().getGameMinute());
html.replace("%dayNight%", GameTimeController.getInstance().isNight() ? "Night" : "Day");
html.replace("%geodata%", Config.PATHFINDING ? "Enabled" : "Disabled");
html.replace("%serverTime%", SDF.format(new Date(System.currentTimeMillis())));
html.replace("%serverTime%", SDF.format(new Date(Chronos.currentTimeMillis())));
html.replace("%serverUpTime%", getServerUpTime());
html.replace("%onlineAll%", getPlayersCount("ALL"));
html.replace("%offlineTrade%", getPlayersCount("OFF_TRADE"));
@@ -76,7 +77,7 @@ public class AdminServerInfo implements IAdminCommandHandler
private String getServerUpTime()
{
long time = System.currentTimeMillis() - GameServer.dateTimeServerStarted.getTimeInMillis();
long time = Chronos.currentTimeMillis() - GameServer.dateTimeServerStarted.getTimeInMillis();
final long days = TimeUnit.MILLISECONDS.toDays(time);
time -= TimeUnit.DAYS.toMillis(days);

View File

@@ -21,6 +21,7 @@ import java.util.Map;
import java.util.Map.Entry;
import org.l2jmobius.Config;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.commons.util.Rnd;
import org.l2jmobius.gameserver.enums.ChatType;
import org.l2jmobius.gameserver.handler.IBypassHandler;
@@ -133,7 +134,7 @@ public class FindPvP implements IBypassHandler
player.setSpawnProtection(true);
if (!player.isGM())
{
player.setPvpFlagLasts(System.currentTimeMillis() + Config.PVP_PVP_TIME);
player.setPvpFlagLasts(Chronos.currentTimeMillis() + Config.PVP_PVP_TIME);
player.startPvPFlag();
}
}

View File

@@ -16,6 +16,7 @@
*/
package handlers.dailymissionhandlers;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.enums.DailyMissionStatus;
import org.l2jmobius.gameserver.handler.AbstractDailyMissionHandler;
import org.l2jmobius.gameserver.model.DailyMissionDataHolder;
@@ -61,9 +62,9 @@ public class LoginMonthDailyMissionHandler extends AbstractDailyMissionHandler
final long lastCompleted = entry.getLastCompleted();
if (lastCompleted == 0) // Initial entry.
{
entry.setLastCompleted(System.currentTimeMillis());
entry.setLastCompleted(Chronos.currentTimeMillis());
}
else if ((System.currentTimeMillis() - lastCompleted) > 2506000000L) // 2506000000L (29 day) delay.
else if ((Chronos.currentTimeMillis() - lastCompleted) > 2506000000L) // 2506000000L (29 day) delay.
{
entry.setProgress(1);
entry.setStatus(DailyMissionStatus.AVAILABLE);

View File

@@ -18,6 +18,7 @@ package handlers.dailymissionhandlers;
import java.util.Calendar;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.enums.DailyMissionStatus;
import org.l2jmobius.gameserver.handler.AbstractDailyMissionHandler;
import org.l2jmobius.gameserver.model.DailyMissionDataHolder;
@@ -63,7 +64,7 @@ public class LoginWeekendDailyMissionHandler extends AbstractDailyMissionHandler
final int currentDay = Calendar.getInstance().get(Calendar.DAY_OF_WEEK);
final long lastCompleted = entry.getLastCompleted();
if (((currentDay == Calendar.SATURDAY) || (currentDay == Calendar.SUNDAY)) // Reward only on weekend.
&& ((lastCompleted == 0) || ((System.currentTimeMillis() - lastCompleted) > 172800000))) // Initial entry or 172800000 (2 day) delay.
&& ((lastCompleted == 0) || ((Chronos.currentTimeMillis() - lastCompleted) > 172800000))) // Initial entry or 172800000 (2 day) delay.
{
entry.setProgress(1);
entry.setStatus(DailyMissionStatus.AVAILABLE);

View File

@@ -16,6 +16,7 @@
*/
package handlers.punishmenthandlers;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.LoginServerThread;
import org.l2jmobius.gameserver.handler.IPunishmentHandler;
import org.l2jmobius.gameserver.model.World;
@@ -126,7 +127,7 @@ public class ChatBanHandler implements IPunishmentHandler
*/
private void applyToPlayer(PunishmentTask task, PlayerInstance player)
{
final long delay = ((task.getExpirationTime() - System.currentTimeMillis()) / 1000);
final long delay = ((task.getExpirationTime() - Chronos.currentTimeMillis()) / 1000);
if (delay > 0)
{
player.sendMessage("You've been chat banned for " + (delay > 60 ? ((delay / 60) + " minutes.") : delay + " seconds."));

View File

@@ -17,6 +17,7 @@
package handlers.punishmenthandlers;
import org.l2jmobius.commons.concurrent.ThreadPool;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.LoginServerThread;
import org.l2jmobius.gameserver.cache.HtmCache;
import org.l2jmobius.gameserver.handler.IPunishmentHandler;
@@ -180,7 +181,7 @@ public class JailHandler implements IPunishmentHandler
player.sendPacket(msg);
if (task != null)
{
final long delay = ((task.getExpirationTime() - System.currentTimeMillis()) / 1000);
final long delay = ((task.getExpirationTime() - Chronos.currentTimeMillis()) / 1000);
if (delay > 0)
{
player.sendMessage("You've been jailed for " + (delay > 60 ? ((delay / 60) + " minutes.") : delay + " seconds."));

View File

@@ -16,6 +16,7 @@
*/
package handlers.telnethandlers.player;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.data.sql.CharNameTable;
import org.l2jmobius.gameserver.instancemanager.PunishmentManager;
import org.l2jmobius.gameserver.model.punishment.PunishmentAffect;
@@ -65,7 +66,7 @@ public class Ban implements ITelnetCommand
if (Util.isDigit(token))
{
time = Integer.parseInt(token) * 60 * 1000;
time += System.currentTimeMillis();
time += Chronos.currentTimeMillis();
}
if (args.length > 2)
{

View File

@@ -16,6 +16,7 @@
*/
package handlers.telnethandlers.player;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.data.sql.CharNameTable;
import org.l2jmobius.gameserver.instancemanager.PunishmentManager;
import org.l2jmobius.gameserver.model.punishment.PunishmentAffect;
@@ -65,7 +66,7 @@ public class BanChat implements ITelnetCommand
if (Util.isDigit(token))
{
time = Integer.parseInt(token) * 60 * 1000;
time += System.currentTimeMillis();
time += Chronos.currentTimeMillis();
}
if (args.length > 2)
{

View File

@@ -16,6 +16,7 @@
*/
package handlers.telnethandlers.player;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.data.sql.CharNameTable;
import org.l2jmobius.gameserver.instancemanager.PunishmentManager;
import org.l2jmobius.gameserver.model.punishment.PunishmentAffect;
@@ -65,7 +66,7 @@ public class Jail implements ITelnetCommand
if (Util.isDigit(token))
{
time = Integer.parseInt(token) * 60 * 1000;
time += System.currentTimeMillis();
time += Chronos.currentTimeMillis();
}
if (args.length > 2)
{

View File

@@ -18,6 +18,7 @@ package handlers.usercommandhandlers;
import java.text.SimpleDateFormat;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.handler.IUserCommandHandler;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
@@ -46,7 +47,7 @@ public class ClanPenalty implements IUserCommandHandler
final StringBuilder htmlContent = new StringBuilder(500);
htmlContent.append("<html><body><center><table width=270 border=0 bgcolor=111111><tr><td width=170>Penalty</td><td width=100 align=center>Expiration Date</td></tr></table><table width=270 border=0><tr>");
if (player.getClanJoinExpiryTime() > System.currentTimeMillis())
if (player.getClanJoinExpiryTime() > Chronos.currentTimeMillis())
{
htmlContent.append("<td width=170>Unable to join a clan.</td><td width=100 align=center>");
htmlContent.append(format.format(player.getClanJoinExpiryTime()));
@@ -54,7 +55,7 @@ public class ClanPenalty implements IUserCommandHandler
penalty = true;
}
if (player.getClanCreateExpiryTime() > System.currentTimeMillis())
if (player.getClanCreateExpiryTime() > Chronos.currentTimeMillis())
{
htmlContent.append("<td width=170>Unable to create a clan.</td><td width=100 align=center>");
htmlContent.append(format.format(player.getClanCreateExpiryTime()));
@@ -62,7 +63,7 @@ public class ClanPenalty implements IUserCommandHandler
penalty = true;
}
if ((player.getClan() != null) && (player.getClan().getCharPenaltyExpiryTime() > System.currentTimeMillis()))
if ((player.getClan() != null) && (player.getClan().getCharPenaltyExpiryTime() > Chronos.currentTimeMillis()))
{
htmlContent.append("<td width=170>Unable to invite a clan member.</td><td width=100 align=center>");
htmlContent.append(format.format(player.getClan().getCharPenaltyExpiryTime()));

View File

@@ -20,6 +20,7 @@ import java.text.SimpleDateFormat;
import java.util.Date;
import org.l2jmobius.Config;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.GameTimeController;
import org.l2jmobius.gameserver.handler.IUserCommandHandler;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
@@ -74,7 +75,7 @@ public class Time implements IUserCommandHandler
player.sendPacket(sm);
if (Config.DISPLAY_SERVER_TIME)
{
player.sendMessage("Server time is " + SDF.format(new Date(System.currentTimeMillis())));
player.sendMessage("Server time is " + SDF.format(new Date(Chronos.currentTimeMillis())));
}
return true;
}

View File

@@ -18,6 +18,7 @@ package handlers.voicedcommandhandlers;
import java.util.StringTokenizer;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.data.sql.CharNameTable;
import org.l2jmobius.gameserver.data.xml.AdminData;
import org.l2jmobius.gameserver.handler.IVoicedCommandHandler;
@@ -103,7 +104,7 @@ public class ChatAdmin implements IVoicedCommandHandler
return false;
}
PunishmentManager.getInstance().startPunishment(new PunishmentTask(objId, PunishmentAffect.CHARACTER, PunishmentType.CHAT_BAN, System.currentTimeMillis() + (expirationTime * 1000 * 60), "Chat banned by moderator", activeChar.getName()));
PunishmentManager.getInstance().startPunishment(new PunishmentTask(objId, PunishmentAffect.CHARACTER, PunishmentType.CHAT_BAN, Chronos.currentTimeMillis() + (expirationTime * 1000 * 60), "Chat banned by moderator", activeChar.getName()));
if (expirationTime > 0)
{
BuilderUtil.sendSysMessage(activeChar, "Player " + player.getName() + " chat banned for " + expirationTime + " minutes.");

View File

@@ -19,6 +19,7 @@ package handlers.voicedcommandhandlers;
import java.text.SimpleDateFormat;
import org.l2jmobius.Config;
import org.l2jmobius.commons.util.Chronos;
import org.l2jmobius.gameserver.handler.IVoicedCommandHandler;
import org.l2jmobius.gameserver.instancemanager.PremiumManager;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
@@ -74,7 +75,7 @@ public class Premium implements IVoicedCommandHandler
html.append("<tr><td>Spoil Chance: <font color=\"LEVEL\">x" + (Config.RATE_SPOIL_DROP_CHANCE_MULTIPLIER * Config.PREMIUM_RATE_SPOIL_CHANCE) + " <br1></font></td></tr>");
html.append("<tr><td>Spoil Amount: <font color=\"LEVEL\">x" + (Config.RATE_SPOIL_DROP_AMOUNT_MULTIPLIER * Config.PREMIUM_RATE_SPOIL_AMOUNT) + " <br1></font></td></tr>");
html.append("<tr><td>Expires: <font color=\"00A5FF\">" + format.format(endDate) + "</font></td></tr>");
html.append("<tr><td>Current Date: <font color=\"70FFCA\">" + format.format(System.currentTimeMillis()) + "<br><br></font></td></tr>");
html.append("<tr><td>Current Date: <font color=\"70FFCA\">" + format.format(Chronos.currentTimeMillis()) + "<br><br></font></td></tr>");
html.append("<tr><td><center>Premium Info & Rules<br></center></td></tr>");
html.append("<tr><td><font color=\"70FFCA\">1. Premium accounts CAN NOT BE TRANSFERED.<br1></font></td></tr>");
html.append("<tr><td><font color=\"70FFCA\">2. Premium does not effect party members.<br1></font></td></tr>");