Class ConditionalTask<E extends LivingEntity>
java.lang.Object
net.minecraft.entity.ai.brain.task.Task<E>
net.minecraft.entity.ai.brain.task.ConditionalTask<E>
public class ConditionalTask<E extends LivingEntity> extends Task<E>
-
Nested Class Summary
Nested classes/interfaces inherited from class net.minecraft.entity.ai.brain.task.Task
Task.Status
-
Field Summary
Fields Modifier and Type Field Description private boolean
allowsContinuation
private Predicate<E>
condition
private Task<? super E>
delegate
Fields inherited from class net.minecraft.entity.ai.brain.task.Task
requiredMemoryStates
-
Constructor Summary
Constructors Constructor Description ConditionalTask(Predicate<E> condition, Task<? super E> delegate)
ConditionalTask(Map<MemoryModuleType<?>,MemoryModuleState> requiredMemoryStates, Predicate<E> condition, Task<? super E> delegate, boolean allowsContinuation)
-
Method Summary
Modifier and Type Method Description protected void
finishRunning(ServerWorld world, E entity, long time)
protected boolean
isTimeLimitExceeded(long time)
protected void
keepRunning(ServerWorld world, E entity, long time)
private static Map<MemoryModuleType<?>,MemoryModuleState>
merge(Map<MemoryModuleType<?>,MemoryModuleState> first, Map<MemoryModuleType<?>,MemoryModuleState> second)
protected void
run(ServerWorld world, E entity, long time)
protected boolean
shouldKeepRunning(ServerWorld world, E entity, long time)
protected boolean
shouldRun(ServerWorld world, E entity)
String
toString()
Methods inherited from class net.minecraft.entity.ai.brain.task.Task
getStatus, stop, tick, tryStarting
-
Field Details
-
condition
-
delegate
-
allowsContinuation
private final boolean allowsContinuation
-
-
Constructor Details
-
ConditionalTask
public ConditionalTask(Map<MemoryModuleType<?>,MemoryModuleState> requiredMemoryStates, Predicate<E> condition, Task<? super E> delegate, boolean allowsContinuation) -
ConditionalTask
-
-
Method Details
-
merge
private static Map<MemoryModuleType<?>,MemoryModuleState> merge(Map<MemoryModuleType<?>,MemoryModuleState> first, Map<MemoryModuleType<?>,MemoryModuleState> second) -
shouldRun
- Overrides:
shouldRun
in classTask<E extends LivingEntity>
-
shouldKeepRunning
- Overrides:
shouldKeepRunning
in classTask<E extends LivingEntity>
-
isTimeLimitExceeded
protected boolean isTimeLimitExceeded(long time)- Overrides:
isTimeLimitExceeded
in classTask<E extends LivingEntity>
-
run
- Overrides:
run
in classTask<E extends LivingEntity>
-
keepRunning
- Overrides:
keepRunning
in classTask<E extends LivingEntity>
-
finishRunning
- Overrides:
finishRunning
in classTask<E extends LivingEntity>
-
toString
- Overrides:
toString
in classTask<E extends LivingEntity>
-