respawn while loop addition
This commit is contained in:
@@ -604,7 +604,9 @@ public class MobileFSM {
|
||||
}
|
||||
} else if (System.currentTimeMillis() > (aiAgent.deathTime + (aiAgent.spawnTime * 1000))) {
|
||||
//aiAgent.respawn();
|
||||
aiAgent.getParentZone().respawnQue.add(aiAgent);
|
||||
if(aiAgent.getParentZone().respawnQue.contains(aiAgent) == false) {
|
||||
aiAgent.getParentZone().respawnQue.add(aiAgent);
|
||||
}
|
||||
}
|
||||
} catch(Exception e){
|
||||
Logger.info(aiAgent.getObjectUUID() + " " + aiAgent.getName() + " Failed At: CheckForRespawn" + " " + e.getMessage());
|
||||
|
||||
@@ -26,6 +26,7 @@ import engine.objects.Zone;
|
||||
import org.pmw.tinylog.Logger;
|
||||
|
||||
import java.util.concurrent.ConcurrentLinkedQueue;
|
||||
import java.util.concurrent.atomic.LongAdder;
|
||||
|
||||
/**
|
||||
* Thread blocks until MagicBane dispatch messages are
|
||||
@@ -41,24 +42,25 @@ public class MobRespawnThread implements Runnable {
|
||||
|
||||
// Instance variables
|
||||
|
||||
|
||||
// Thread constructor
|
||||
|
||||
public MobRespawnThread() {
|
||||
|
||||
Boolean isAlive = false;
|
||||
Logger.info(" MobRespawnThread thread has started!");
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
for (Zone zone : ZoneManager.getAllZones()) {
|
||||
if (zone.respawnQue.isEmpty() == false && zone.lastRespawn + 100 < System.currentTimeMillis()) {
|
||||
if (zone.respawnQue.iterator().next() != null) {
|
||||
Mob respawner = zone.respawnQue.iterator().next();
|
||||
respawner.respawn();
|
||||
zone.respawnQue.remove(respawner);
|
||||
zone.lastRespawn = System.currentTimeMillis();
|
||||
while(true) {
|
||||
for (Zone zone : ZoneManager.getAllZones()) {
|
||||
if (zone.respawnQue.isEmpty() == false && zone.lastRespawn + 100 < System.currentTimeMillis()) {
|
||||
if (zone.respawnQue.iterator().next() != null) {
|
||||
Mob respawner = zone.respawnQue.iterator().next();
|
||||
respawner.respawn();
|
||||
zone.respawnQue.remove(respawner);
|
||||
zone.lastRespawn = System.currentTimeMillis();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user