forked from MagicBane/Server
create PlayerManager static class
This commit is contained in:
@@ -15,6 +15,7 @@ import engine.Enum.GameObjectType;
|
||||
import engine.Enum.GridObjectType;
|
||||
import engine.InterestManagement.HeightMap;
|
||||
import engine.InterestManagement.WorldGrid;
|
||||
import engine.gameManager.PlayerManager;
|
||||
import engine.job.AbstractScheduleJob;
|
||||
import engine.job.JobContainer;
|
||||
import engine.job.JobScheduler;
|
||||
@@ -39,7 +40,7 @@ import java.util.concurrent.locks.ReentrantReadWriteLock;
|
||||
|
||||
public abstract class AbstractWorldObject extends AbstractGameObject {
|
||||
|
||||
protected final ReadWriteLock locationLock = new ReentrantReadWriteLock(true);
|
||||
public final ReadWriteLock locationLock = new ReentrantReadWriteLock(true);
|
||||
protected final ReadWriteLock updateLock = new ReentrantReadWriteLock(true);
|
||||
public float healthMax;
|
||||
public ConcurrentHashMap<String, Effect> effects = new ConcurrentHashMap<>(MBServerStatics.CHM_INIT_CAP, MBServerStatics.CHM_LOAD, MBServerStatics.CHM_THREAD_LOW);
|
||||
@@ -49,7 +50,7 @@ public abstract class AbstractWorldObject extends AbstractGameObject {
|
||||
public Regions landingRegion = null;
|
||||
public Vector3fImmutable lastLoc = Vector3fImmutable.ZERO;
|
||||
public Vector3fImmutable loc = new Vector3fImmutable(0.0f, 0.0f, 0.0f);
|
||||
protected AtomicFloat health = new AtomicFloat();
|
||||
public AtomicFloat health = new AtomicFloat();
|
||||
protected boolean load = true;
|
||||
protected GridObjectType gridObjectType;
|
||||
protected float altitude = 0;
|
||||
@@ -150,7 +151,7 @@ public abstract class AbstractWorldObject extends AbstractGameObject {
|
||||
Regions region = null;
|
||||
|
||||
if (worldObject.getObjectType().equals(GameObjectType.PlayerCharacter))
|
||||
if (((PlayerCharacter) worldObject).isFlying())
|
||||
if (PlayerManager.isFlying(((PlayerCharacter) worldObject)))
|
||||
return null;
|
||||
//Find building
|
||||
for (AbstractWorldObject awo : WorldGrid.getObjectsInRangePartial(worldObject.getLoc(), MBServerStatics.STRUCTURE_LOAD_RANGE, MBServerStatics.MASK_BUILDING)) {
|
||||
@@ -271,7 +272,7 @@ public abstract class AbstractWorldObject extends AbstractGameObject {
|
||||
if (this.getObjectType().equals(GameObjectType.PlayerCharacter))
|
||||
if (name.equals("Flight")) {
|
||||
((PlayerCharacter) this).update(false);
|
||||
PlayerCharacter.GroundPlayer((PlayerCharacter) this);
|
||||
PlayerManager.GroundPlayer((PlayerCharacter) this);
|
||||
}
|
||||
}
|
||||
applyAllBonuses();
|
||||
@@ -386,7 +387,7 @@ public abstract class AbstractWorldObject extends AbstractGameObject {
|
||||
//ground player
|
||||
if (this.getObjectType().equals(GameObjectType.PlayerCharacter)) {
|
||||
((PlayerCharacter) this).update(false);
|
||||
PlayerCharacter.GroundPlayer((PlayerCharacter) this);
|
||||
PlayerManager.GroundPlayer((PlayerCharacter) this);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@@ -415,7 +416,7 @@ public abstract class AbstractWorldObject extends AbstractGameObject {
|
||||
//ground player
|
||||
if (this.getObjectType().equals(GameObjectType.PlayerCharacter)) {
|
||||
((PlayerCharacter) this).update(false);
|
||||
PlayerCharacter.GroundPlayer((PlayerCharacter) this);
|
||||
PlayerManager.GroundPlayer((PlayerCharacter) this);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user