Class PolygonalMap2
java.lang.Object
zombie.pathfind.PolygonalMap2
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final booleanfinal zombie.pathfind.ClosestPointOnEdgestatic final booleanstatic final booleanfinal CollideWithObstaclesPolystatic final intstatic final intstatic final intstatic final PolygonalMap2static final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final booleanstatic final floatstatic final floatbooleanfinal Objectfinal zombie.pathfind.RequestQueuestatic final intfinal gnu.trove.map.hash.TIntObjectHashMap<Node> static final Vector2final HashMap<BaseVehicle, zombie.pathfind.Vehicle> final ArrayList<zombie.pathfind.Vehicle> final ByteBuffer -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddChunkToWorld(IsoChunk chunk) zombie.pathfind.PathFindRequestaddRequest(IPathfinder pathfinder, Mover mover, float startX, float startY, float startZ, float targetX, float targetY, float targetZ) voidaddVehicleToWorld(BaseVehicle vehicle) allocChunkIfNeeded(int wx, int wy) voidvoidbreakConnection(Node node1, Node node2) voidcancelRequest(Mover mover) booleancanMoveBetween(PMMover mover, int x1, int y1, int z1, int x2, int y2, int z2) booleancanNotMoveBetween(PMMover mover, int x1, int y1, int z1, int x2, int y2, int z2) booleancanStandAt(float x, float y, int z, IsoMovingObject ignoreVehicle, boolean ignoreDoors, boolean closeToWalls) booleancanStandAt(float x, float y, int z, BaseVehicle ignoreVehicle, int flags) connectTwoNodes(Node node1, Node node2) connectTwoNodes(Node node1, Node node2, int flags) floatgetApparentZ(IsoGridSquare square) zombie.pathfind.CellgetCellFromChunkPos(int wx, int wy) getChunkFromChunkPos(int wx, int wy) getChunkFromSquarePos(int x, int y) getCollidepoint(float fromX, float fromY, float toX, float toY, int z, IsoMovingObject ignoreVehicle, int flags) getExistingNodeForSquare(Square square) getNodeForSquare(Square square) getPointInLine(float fromX, float fromY, float toX, float toY, int z) getPointOutsideObjects(Square square, float targetX, float targetY) getSquare(int x, int y, int z) getSquareRawZ(int x, int y, int z) getVisGraphAt(float x, float y, int z, int expand) getVisGraphForSquare(Square square) voidgetVisibilityGraphsAdjacentToChunk(Chunk chunk, int level, ArrayList<VisibilityGraph> graphs) voidgetVisibilityGraphsOverlappingChunk(Chunk chunk, int level, ArrayList<VisibilityGraph> graphs) voidinit(IsoMetaGrid metaGrid) booleanintersectLineWithVehicle(float x1, float y1, float x2, float y2, BaseVehicle vehicle, Vector2 out) booleanisBlockedInAllDirections(int x, int y, int z) booleanlineClearCollide(float fromX, float fromY, float toX, float toY, int z) booleanlineClearCollide(float fromX, float fromY, float toX, float toY, int z, IsoMovingObject ignoreVehicle) booleanlineClearCollide(float fromX, float fromY, float toX, float toY, int z, IsoMovingObject ignoreVehicle, boolean ignoreDoors, boolean closeToWalls) booleanlineClearCollide(float fromX, float fromY, float toX, float toY, int z, IsoMovingObject ignoreVehicle, int flags) voidremoveChunkFromWorld(IsoChunk chunk) voidremoveVehicleFromWorld(BaseVehicle vehicle) voidrender()org.joml.Vector2fresolveCollision(IsoGameCharacter chr, float nx, float ny, org.joml.Vector2f finalPos) booleanresolveCollision(IsoGameCharacter chr, float radius, org.joml.Vector2f out_finalPos) voidsquareChanged(IsoGridSquare square) voidstop()voidsupercover(float x0, float y0, float x1, float y1, int z, zombie.pathfind.PointPool pointPool, ArrayList<Point> pts) voidvoidvoidupdateVehicle(BaseVehicle vehicle)
-
Field Details
-
instance
-
RADIUS
public static final float RADIUS- See Also:
-
CLOSE_TO_WALLS
public static final boolean CLOSE_TO_WALLS- See Also:
-
PATHS_UNDER_VEHICLES
public static final boolean PATHS_UNDER_VEHICLES- See Also:
-
COLLIDE_CLIPPER
public static final boolean COLLIDE_CLIPPER- See Also:
-
COLLIDE_BEVEL
public static final boolean COLLIDE_BEVEL- See Also:
-
CXN_FLAG_CAN_PATH
public static final int CXN_FLAG_CAN_PATH- See Also:
-
CXN_FLAG_THUMP
public static final int CXN_FLAG_THUMP- See Also:
-
NODE_FLAG_CRAWL
public static final int NODE_FLAG_CRAWL- See Also:
-
NODE_FLAG_CRAWL_INTERIOR
public static final int NODE_FLAG_CRAWL_INTERIOR- See Also:
-
NODE_FLAG_IN_CHUNK_DATA
public static final int NODE_FLAG_IN_CHUNK_DATA- See Also:
-
NODE_FLAG_PERIMETER
public static final int NODE_FLAG_PERIMETER- See Also:
-
NODE_FLAG_STAIR
public static final int NODE_FLAG_STAIR- See Also:
-
NODE_FLAG_KEEP
public static final int NODE_FLAG_KEEP- See Also:
-
LCC_ZERO
public static final int LCC_ZERO- See Also:
-
LCC_IGNORE_DOORS
public static final int LCC_IGNORE_DOORS- See Also:
-
LCC_CLOSE_TO_WALLS
public static final int LCC_CLOSE_TO_WALLS- See Also:
-
LCC_CHECK_COST
public static final int LCC_CHECK_COST- See Also:
-
LCC_RENDER
public static final int LCC_RENDER- See Also:
-
LCC_ALLOW_ON_EDGE
public static final int LCC_ALLOW_ON_EDGE- See Also:
-
RADIUS_DIAGONAL
public static final float RADIUS_DIAGONAL -
temp
-
SQUARES_PER_CHUNK
public static final int SQUARES_PER_CHUNK- See Also:
-
LEVELS_PER_CHUNK
public static final int LEVELS_PER_CHUNK- See Also:
-
GROUND_LEVEL
public static final int GROUND_LEVEL- See Also:
-
CHUNKS_PER_CELL
public static final int CHUNKS_PER_CELL- See Also:
-
BIT_SOLID
public static final int BIT_SOLID- See Also:
-
BIT_COLLIDE_W
public static final int BIT_COLLIDE_W- See Also:
-
BIT_COLLIDE_N
public static final int BIT_COLLIDE_N- See Also:
-
BIT_STAIR_TW
public static final int BIT_STAIR_TW- See Also:
-
BIT_STAIR_MW
public static final int BIT_STAIR_MW- See Also:
-
BIT_STAIR_BW
public static final int BIT_STAIR_BW- See Also:
-
BIT_STAIR_TN
public static final int BIT_STAIR_TN- See Also:
-
BIT_STAIR_MN
public static final int BIT_STAIR_MN- See Also:
-
BIT_STAIR_BN
public static final int BIT_STAIR_BN- See Also:
-
BIT_SOLID_FLOOR
public static final int BIT_SOLID_FLOOR- See Also:
-
BIT_WINDOW_W
public static final int BIT_WINDOW_W- See Also:
-
BIT_WINDOW_N
public static final int BIT_WINDOW_N- See Also:
-
BIT_CAN_PATH_W
public static final int BIT_CAN_PATH_W- See Also:
-
BIT_CAN_PATH_N
public static final int BIT_CAN_PATH_N- See Also:
-
BIT_THUMP_W
public static final int BIT_THUMP_W- See Also:
-
BIT_THUMP_N
public static final int BIT_THUMP_N- See Also:
-
BIT_THUMPABLE
public static final int BIT_THUMPABLE- See Also:
-
BIT_DOOR_E
public static final int BIT_DOOR_E- See Also:
-
BIT_DOOR_S
public static final int BIT_DOOR_S- See Also:
-
BIT_WINDOW_W_UNBLOCKED
public static final int BIT_WINDOW_W_UNBLOCKED- See Also:
-
BIT_WINDOW_N_UNBLOCKED
public static final int BIT_WINDOW_N_UNBLOCKED- See Also:
-
BIT_DOOR_W_UNBLOCKED
public static final int BIT_DOOR_W_UNBLOCKED- See Also:
-
BIT_DOOR_N_UNBLOCKED
public static final int BIT_DOOR_N_UNBLOCKED- See Also:
-
BIT_HOPPABLE_N
public static final int BIT_HOPPABLE_N- See Also:
-
BIT_HOPPABLE_W
public static final int BIT_HOPPABLE_W- See Also:
-
ALL_STAIR_BITS
public static final int ALL_STAIR_BITS- See Also:
-
renderLock
-
closestPointOnEdge
public final zombie.pathfind.ClosestPointOnEdge closestPointOnEdge -
squareToNode
-
xyBufferThread
-
vehicles
-
vehicleMap
-
requests
public final zombie.pathfind.RequestQueue requests -
collideWithObstaclesPoly
-
clipperThread
-
rebuild
public boolean rebuild
-
-
Constructor Details
-
PolygonalMap2
public PolygonalMap2()
-
-
Method Details
-
getNodeForSquare
-
getExistingNodeForSquare
-
getVisGraphAt
-
getVisGraphForSquare
-
getVisibilityGraphsOverlappingChunk
public void getVisibilityGraphsOverlappingChunk(Chunk chunk, int level, ArrayList<VisibilityGraph> graphs) -
getVisibilityGraphsAdjacentToChunk
public void getVisibilityGraphsAdjacentToChunk(Chunk chunk, int level, ArrayList<VisibilityGraph> graphs) -
connectTwoNodes
-
connectTwoNodes
-
breakConnection
-
breakConnection
-
getPointOutsideObjects
-
getApparentZ
-
render
public void render() -
squareChanged
-
addChunkToWorld
-
removeChunkFromWorld
-
addVehicleToWorld
-
updateVehicle
-
removeVehicleFromWorld
-
getCellFromChunkPos
public zombie.pathfind.Cell getCellFromChunkPos(int wx, int wy) -
allocChunkIfNeeded
-
getChunkFromChunkPos
-
getChunkFromSquarePos
-
getSquare
-
getSquareRawZ
-
isBlockedInAllDirections
public boolean isBlockedInAllDirections(int x, int y, int z) -
canMoveBetween
-
canNotMoveBetween
-
init
-
stop
public void stop() -
updateMain
public void updateMain() -
updateThread
public void updateThread() -
addRequest
public zombie.pathfind.PathFindRequest addRequest(IPathfinder pathfinder, Mover mover, float startX, float startY, float startZ, float targetX, float targetY, float targetZ) -
cancelRequest
-
getPointInLine
-
supercover
-
lineClearCollide
public boolean lineClearCollide(float fromX, float fromY, float toX, float toY, int z) -
lineClearCollide
public boolean lineClearCollide(float fromX, float fromY, float toX, float toY, int z, IsoMovingObject ignoreVehicle) -
lineClearCollide
public boolean lineClearCollide(float fromX, float fromY, float toX, float toY, int z, IsoMovingObject ignoreVehicle, boolean ignoreDoors, boolean closeToWalls) -
lineClearCollide
public boolean lineClearCollide(float fromX, float fromY, float toX, float toY, int z, IsoMovingObject ignoreVehicle, int flags) -
getCollidepoint
public Vector2 getCollidepoint(float fromX, float fromY, float toX, float toY, int z, IsoMovingObject ignoreVehicle, int flags) -
canStandAt
public boolean canStandAt(float x, float y, int z, IsoMovingObject ignoreVehicle, boolean ignoreDoors, boolean closeToWalls) -
canStandAt
-
intersectLineWithVehicle
public boolean intersectLineWithVehicle(float x1, float y1, float x2, float y2, BaseVehicle vehicle, Vector2 out) -
resolveCollision
public org.joml.Vector2f resolveCollision(IsoGameCharacter chr, float nx, float ny, org.joml.Vector2f finalPos) -
resolveCollision
-