FIRST AFTER ROLLBACK: reintroduce mines

This commit is contained in:
2024-06-02 15:50:21 -05:00
parent a8e3cfa8f7
commit 8b03fbc15b
4 changed files with 172 additions and 255 deletions
+12 -26
View File
@@ -23,6 +23,7 @@ import engine.gameManager.*;
import engine.job.JobContainer;
import engine.job.JobScheduler;
import engine.jobs.LogoutCharacterJob;
import engine.math.Vector3fImmutable;
import engine.mobileAI.Threads.MobAIThread;
import engine.mobileAI.Threads.MobRespawnThread;
import engine.net.Dispatch;
@@ -209,7 +210,7 @@ public class WorldServer {
LocalDateTime nextHourlyJobTime = LocalDateTime.now().withMinute(0).withSecond(0).plusHours(0);
LocalDateTime nextWareHousePushTime = LocalDateTime.now();
LocalDateTime nextDiscSpawn = LocalDateTime.now().withMinute(0).withSecond(0).plusHours(1);
LocalDateTime nextMinePulse = LocalDateTime.now().withMinute(0).withSecond(0);
LocalDateTime minePulse = LocalDateTime.now().withMinute(0).withSecond(0).plusHours(0);
// Begin execution of main game loop
@@ -251,11 +252,11 @@ public class WorldServer {
if(LocalDateTime.now().isAfter(nextDiscSpawn)) {
switch (LocalDateTime.now().getHour()) {
case 0:
case 3:
case 7:
case 11:
case 15:
case 19:
case 4:
case 8:
case 12:
case 16:
case 20:
for (Mob dropper : Mob.disciplineDroppers) {
if (!dropper.isAlive()) {
Zone.respawnQue.add(dropper);
@@ -266,12 +267,9 @@ public class WorldServer {
}
nextDiscSpawn = nextDiscSpawn.plusHours(1);
}
if (LocalDateTime.now().isAfter(nextMinePulse)) {
Thread mineThread = new Thread(new MineThread());
mineThread.setName("mineThread");
mineThread.start();
nextMinePulse = nextMinePulse.plusMinutes(30);
if(LocalDateTime.now().isAfter(minePulse)) {
Mine.processMineWindows();
minePulse = minePulse.plusMinutes(30);
}
ThreadUtils.sleep(50);
}
@@ -552,18 +550,6 @@ public class WorldServer {
Logger.info("Running garbage collection...");
System.gc();
//Logger.info("Starting Mine Thread...");
//Thread mineThread = new Thread(new MineThread());
//mineThread.setName("mine thread");
//mineThread.start();
//Logger.info("Starting Power Thread...");
//Thread powerThread = new Thread(new PowersThread());
//powerThread.setName("power thread");
//powerThread.start();
//Logger.info("Starting Box Flag Thread");
//BoxFlagThread.startBoxFlagThread();
return true;
}
@@ -843,9 +829,9 @@ public class WorldServer {
loadedMob.playerAgroMap.remove(player.getObjectUUID());
}
player.getTimestamps().put("logout", System.currentTimeMillis());
player.enteredWorld = false;
player.setEnteredWorld(false);
// remove from simulation and zero current loc
// remove from simulation and zero current loc
WorldGrid.RemoveWorldObject(player);