public abstract class PathNavigator
extends java.lang.Object
修飾子とタイプ | フィールドと説明 |
---|---|
protected Path |
currentPath |
protected MobEntity |
entity |
protected Vec3d |
lastPosCheck |
protected long |
lastTimeoutCheck |
protected long |
lastTimeUpdated |
protected float |
maxDistanceToWaypoint |
protected NodeProcessor |
nodeProcessor |
protected double |
speed |
protected int |
ticksAtLastPos |
protected Vec3d |
timeoutCachedNode |
protected double |
timeoutLimit |
protected long |
timeoutTimer |
protected int |
totalTicks |
protected boolean |
tryUpdatePath |
protected World |
world |
コンストラクタと説明 |
---|
PathNavigator(MobEntity entityIn,
World worldIn) |
修飾子とタイプ | メソッドと説明 |
---|---|
boolean |
canEntityStandOnPos(BlockPos pos) |
protected abstract boolean |
canNavigate()
If on ground or swimming and can swim
|
boolean |
canUpdatePathOnTimeout()
Returns true if path can be changed by
onUpdateNavigation() |
protected void |
checkForStuck(Vec3d positionVec3)
Checks if entity haven't been moved when last checked and if so, clears current
net.minecraft.pathfinding.PathEntity |
void |
clearPath()
sets active PathEntity to null
|
void |
func_220970_c(BlockPos p_220970_1_) |
Path |
func_225463_a(java.util.stream.Stream<BlockPos> p_225463_1_,
int p_225463_2_) |
protected Path |
func_225464_a(java.util.Set<BlockPos> p_225464_1_,
int p_225464_2_,
boolean p_225464_3_,
int p_225464_4_) |
void |
func_226335_a_(float p_226335_1_) |
void |
func_226336_g_() |
boolean |
func_226337_n_() |
boolean |
getCanSwim() |
protected abstract Vec3d |
getEntityPosition() |
NodeProcessor |
getNodeProcessor() |
Path |
getPath()
gets the actively used PathEntity
|
protected abstract PathFinder |
getPathFinder(int p_179679_1_) |
Path |
getPathToEntity(Entity entityIn,
int p_75494_2_)
Returns the path to the given EntityLiving.
|
Path |
getPathToPos(BlockPos pos,
int p_179680_2_)
Returns path to given BlockPos
|
Path |
getPathToPos(double p_225466_1_,
double p_225466_3_,
double p_225466_5_,
int p_225466_7_) |
BlockPos |
getTargetPos() |
protected abstract boolean |
isDirectPathBetweenPoints(Vec3d posVec31,
Vec3d posVec32,
int sizeX,
int sizeY,
int sizeZ)
Checks if the specified entity can safely walk to the specified location.
|
protected boolean |
isInLiquid()
Returns true if the entity is in water or lava, false otherwise
|
boolean |
noPath()
If null path or reached the end
|
protected void |
pathFollow() |
void |
setCanSwim(boolean canSwim) |
boolean |
setPath(Path pathentityIn,
double speedIn)
Sets a new path.
|
void |
setSpeed(double speedIn)
Sets the speed
|
void |
tick() |
protected void |
trimPath()
Trims path data from the end to the first sun covered block
|
boolean |
tryMoveToEntityLiving(Entity entityIn,
double speedIn)
Try to find and set a path to EntityLiving.
|
boolean |
tryMoveToXYZ(double x,
double y,
double z,
double speedIn)
Try to find and set a path to XYZ.
|
void |
updatePath() |
protected final MobEntity entity
protected final World world
@Nullable protected Path currentPath
protected double speed
protected int totalTicks
protected int ticksAtLastPos
protected Vec3d lastPosCheck
protected Vec3d timeoutCachedNode
protected long timeoutTimer
protected long lastTimeoutCheck
protected double timeoutLimit
protected float maxDistanceToWaypoint
protected boolean tryUpdatePath
protected long lastTimeUpdated
protected NodeProcessor nodeProcessor
public void func_226336_g_()
public void func_226335_a_(float p_226335_1_)
public BlockPos getTargetPos()
protected abstract PathFinder getPathFinder(int p_179679_1_)
public void setSpeed(double speedIn)
public boolean canUpdatePathOnTimeout()
onUpdateNavigation()
public void updatePath()
@Nullable public final Path getPathToPos(double p_225466_1_, double p_225466_3_, double p_225466_5_, int p_225466_7_)
@Nullable public Path func_225463_a(java.util.stream.Stream<BlockPos> p_225463_1_, int p_225463_2_)
@Nullable public Path getPathToPos(BlockPos pos, int p_179680_2_)
@Nullable public Path getPathToEntity(Entity entityIn, int p_75494_2_)
@Nullable protected Path func_225464_a(java.util.Set<BlockPos> p_225464_1_, int p_225464_2_, boolean p_225464_3_, int p_225464_4_)
public boolean tryMoveToXYZ(double x, double y, double z, double speedIn)
public boolean tryMoveToEntityLiving(Entity entityIn, double speedIn)
public boolean setPath(@Nullable Path pathentityIn, double speedIn)
@Nullable public Path getPath()
public void tick()
protected void pathFollow()
protected void checkForStuck(Vec3d positionVec3)
net.minecraft.pathfinding.PathEntity
public boolean noPath()
public boolean func_226337_n_()
public void clearPath()
protected abstract Vec3d getEntityPosition()
protected abstract boolean canNavigate()
protected boolean isInLiquid()
protected void trimPath()
protected abstract boolean isDirectPathBetweenPoints(Vec3d posVec31, Vec3d posVec32, int sizeX, int sizeY, int sizeZ)
public boolean canEntityStandOnPos(BlockPos pos)
public NodeProcessor getNodeProcessor()
public void setCanSwim(boolean canSwim)
public boolean getCanSwim()
public void func_220970_c(BlockPos p_220970_1_)