i hope this works
This commit is contained in:
@@ -120,6 +120,8 @@ public abstract class AbstractCharacter extends AbstractWorldObject {
|
||||
private long lastHateUpdate = 0;
|
||||
private byte aoecntr = 0;
|
||||
|
||||
public Vector3fImmutable destination = Vector3fImmutable.ZERO;
|
||||
|
||||
public int hidden = 0; // current rank of hide/sneak/invis
|
||||
public CopyOnWriteArrayList<Integer> minions = new CopyOnWriteArrayList();
|
||||
|
||||
|
||||
@@ -20,7 +20,6 @@ import engine.jobs.DeferredPowerJob;
|
||||
import engine.jobs.UpgradeNPCJob;
|
||||
import engine.math.Bounds;
|
||||
import engine.math.Vector3fImmutable;
|
||||
import engine.mobileAI.utilities.MovementUtilities;
|
||||
import engine.net.ByteBufferWriter;
|
||||
import engine.net.Dispatch;
|
||||
import engine.net.DispatchMessage;
|
||||
@@ -54,7 +53,7 @@ public class Mob extends AbstractIntelligenceAgent implements Delayed {
|
||||
public long nextCallForHelp = 0;
|
||||
public ReentrantReadWriteLock minionLock = new ReentrantReadWriteLock();
|
||||
public boolean despawned = false;
|
||||
public Vector3fImmutable destination = Vector3fImmutable.ZERO;
|
||||
|
||||
public MobBase mobBase;
|
||||
public int spawnDelay;
|
||||
public Zone parentZone;
|
||||
@@ -1901,7 +1900,4 @@ public class Mob extends AbstractIntelligenceAgent implements Delayed {
|
||||
return toIntExact(this.respawnTime - ((Mob) o).respawnTime);
|
||||
}
|
||||
|
||||
public void setDestination(Vector3fImmutable destination) {
|
||||
MovementUtilities.pathfind(this,destination);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,12 +9,14 @@
|
||||
|
||||
package engine.objects;
|
||||
|
||||
import engine.InterestManagement.Terrain;
|
||||
import engine.InterestManagement.WorldGrid;
|
||||
import engine.gameManager.BuildingManager;
|
||||
import engine.math.Bounds;
|
||||
import engine.math.FastMath;
|
||||
import engine.math.Vector3f;
|
||||
import engine.math.Vector3fImmutable;
|
||||
import engine.mobileAI.utilities.PathingUtilities;
|
||||
import engine.server.MBServerStatics;
|
||||
|
||||
import java.awt.*;
|
||||
@@ -287,6 +289,22 @@ public class Regions {
|
||||
}
|
||||
return region;
|
||||
}
|
||||
public static Regions getRegionAtPoint(PathingUtilities.Point point) {
|
||||
Vector3fImmutable baseLoc = new Vector3fImmutable(point.x,0,point.y);
|
||||
baseLoc.setY(Terrain.getWorldHeight(baseLoc));
|
||||
Building building = BuildingManager.getBuildingAtLocation(baseLoc);
|
||||
if(building == null)
|
||||
return null;
|
||||
for(Regions region : building.getBounds().getRegions())
|
||||
if(region.isPointInPolygon(baseLoc))
|
||||
return region;
|
||||
return null;
|
||||
}
|
||||
|
||||
public float getHeightAtPoint(PathingUtilities.Point point){
|
||||
Vector3fImmutable baseLoc = new Vector3fImmutable(point.x,0,point.y);
|
||||
return this.lerpY(baseLoc);
|
||||
}
|
||||
|
||||
public int getRoom() {
|
||||
return room;
|
||||
|
||||
Reference in New Issue
Block a user