public class GoToRememberedPositionTask<T> extends Task<MobEntityWithAi>
Task.Status| Modifier and Type | Field and Description |
|---|---|
private MemoryModuleType<T> |
entityMemory |
private Function<T,Vec3d> |
posRetriever |
private int |
range |
private float |
speed |
requiredMemoryStates| Constructor and Description |
|---|
GoToRememberedPositionTask(MemoryModuleType<T> memoryType,
float speed,
int range,
boolean requiresWalkTarget,
Function<T,Vec3d> posRetriever) |
| Modifier and Type | Method and Description |
|---|---|
private Vec3d |
getPos(MobEntityWithAi entity) |
private boolean |
isWalkTargetPresentAndFar(MobEntityWithAi entity) |
protected void |
run(ServerWorld serverWorld,
MobEntityWithAi mobEntityWithAi,
long long2) |
private static void |
setWalkTarget(MobEntityWithAi entity,
Vec3d pos,
float speed) |
protected boolean |
shouldRun(ServerWorld serverWorld,
MobEntityWithAi mobEntityWithAi) |
static GoToRememberedPositionTask<BlockPos> |
toBlock(MemoryModuleType<BlockPos> memoryType,
float speed,
int range,
boolean requiresWalkTarget) |
static GoToRememberedPositionTask<? extends Entity> |
toEntity(MemoryModuleType<? extends Entity> memoryType,
float speed,
int range,
boolean requiresWalkTarget) |
finishRunning, getStatus, isTimeLimitExceeded, keepRunning, shouldKeepRunning, stop, tick, toString, tryStartingprivate final MemoryModuleType<T> entityMemory
private final float speed
private final int range
public GoToRememberedPositionTask(MemoryModuleType<T> memoryType, float speed, int range, boolean requiresWalkTarget, Function<T,Vec3d> posRetriever)
public static GoToRememberedPositionTask<BlockPos> toBlock(MemoryModuleType<BlockPos> memoryType, float speed, int range, boolean requiresWalkTarget)
public static GoToRememberedPositionTask<? extends Entity> toEntity(MemoryModuleType<? extends Entity> memoryType, float speed, int range, boolean requiresWalkTarget)
protected boolean shouldRun(ServerWorld serverWorld, MobEntityWithAi mobEntityWithAi)
shouldRun in class Task<MobEntityWithAi>private Vec3d getPos(MobEntityWithAi entity)
private boolean isWalkTargetPresentAndFar(MobEntityWithAi entity)
protected void run(ServerWorld serverWorld, MobEntityWithAi mobEntityWithAi, long long2)
run in class Task<MobEntityWithAi>private static void setWalkTarget(MobEntityWithAi entity, Vec3d pos, float speed)