类 Brain<E extends LivingEntity>
java.lang.Object
net.minecraft.world.entity.ai.Brain<E>
-
嵌套类概要
嵌套类 -
字段概要
字段修饰符和类型字段说明private final Map<Activity,
Set<MemoryModuleType<?>>> private final Map<Activity,
Set<com.mojang.datafixers.util.Pair<MemoryModuleType<?>, MemoryStatus>>> private Activity
private long
(专用程序包) static final org.slf4j.Logger
private final Map<MemoryModuleType<?>,
Optional<? extends ExpirableValue<?>>> private Schedule
private static final int
-
构造器概要
构造器构造器说明Brain
(Collection<? extends MemoryModuleType<?>> pMemoryModuleTypes, Collection<? extends SensorType<? extends Sensor<? super E>>> pSensorTypes, com.google.common.collect.ImmutableList<Brain.MemoryValue<?>> pMemoryValues, Supplier<com.mojang.serialization.Codec<Brain<E>>> pCodec) -
方法概要
修饰符和类型方法说明private boolean
activityRequirementsAreMet
(Activity pActivity) void
addActivity
(Activity pActivity, int pPriorityStart, com.google.common.collect.ImmutableList<? extends BehaviorControl<? super E>> pTasks) void
addActivity
(Activity pActivity, com.google.common.collect.ImmutableList<? extends com.mojang.datafixers.util.Pair<Integer, ? extends BehaviorControl<? super E>>> pTasks) void
addActivityAndRemoveMemoriesWhenStopped
(Activity pActivity, com.google.common.collect.ImmutableList<? extends com.mojang.datafixers.util.Pair<Integer, ? extends BehaviorControl<? super E>>> pTasks, Set<com.mojang.datafixers.util.Pair<MemoryModuleType<?>, MemoryStatus>> pMemorieStatuses, Set<MemoryModuleType<?>> pMemoryTypes) void
addActivityAndRemoveMemoryWhenStopped
(Activity pActivity, int pPriorityStart, com.google.common.collect.ImmutableList<? extends BehaviorControl<? super E>> pTasks, MemoryModuleType<?> pMemoryType) void
addActivityWithConditions
(Activity pActivity, com.google.common.collect.ImmutableList<? extends com.mojang.datafixers.util.Pair<Integer, ? extends BehaviorControl<? super E>>> pTasks, Set<com.mojang.datafixers.util.Pair<MemoryModuleType<?>, MemoryStatus>> pMemoryStatuses) boolean
checkMemory
(MemoryModuleType<?> pMemoryType, MemoryStatus pMemoryStatus) void
static <E extends LivingEntity>
com.mojang.serialization.Codec<Brain<E>>codec
(Collection<? extends MemoryModuleType<?>> pMemoryTypes, Collection<? extends SensorType<? extends Sensor<? super E>>> pSensorTypes) (专用程序包) com.google.common.collect.ImmutableList<? extends com.mojang.datafixers.util.Pair<Integer,
? extends BehaviorControl<? super E>>> createPriorityPairs
(int pPriorityStart, com.google.common.collect.ImmutableList<? extends BehaviorControl<? super E>> pTasks) private void
eraseMemoriesForOtherActivitesThan
(Activity pActivity) <U> void
eraseMemory
(MemoryModuleType<U> pType) private void
已过时。Map<MemoryModuleType<?>,
Optional<? extends ExpirableValue<?>>> 已过时。<U> Optional<U>
getMemory
(MemoryModuleType<U> pType) <U> Optional<U>
getMemoryInternal
(MemoryModuleType<U> pType) List<BehaviorControl<? super E>>
已过时。<U> long
getTimeUntilExpiry
(MemoryModuleType<U> pMemoryType) boolean
hasMemoryValue
(MemoryModuleType<?> pType) boolean
private boolean
isEmptyCollection
(Object pCollection) <U> boolean
isMemoryValue
(MemoryModuleType<U> pMemoryType, U pMemory) (专用程序包) Stream<Brain.MemoryValue<?>>
memories()
static <E extends LivingEntity>
Brain.Provider<E>provider
(Collection<? extends MemoryModuleType<?>> pMemoryTypes, Collection<? extends SensorType<? extends Sensor<? super E>>> pSensorTypes) void
<T> com.mojang.serialization.DataResult<T>
serializeStart
(com.mojang.serialization.DynamicOps<T> pOps) private void
setActiveActivity
(Activity pActivity) void
setActiveActivityIfPossible
(Activity pActivity) void
setActiveActivityToFirstValid
(List<Activity> pActivities) void
setCoreActivities
(Set<Activity> pNewActivities) void
setDefaultActivity
(Activity pNewFallbackActivity) <U> void
setMemory
(MemoryModuleType<U> pMemoryType, Optional<? extends U> pMemory) <U> void
setMemory
(MemoryModuleType<U> pMemoryType, U pMemory) (专用程序包) <U> void
setMemoryInternal
(MemoryModuleType<U> pMemoryType, Optional<? extends ExpirableValue<?>> pMemory) <U> void
setMemoryWithExpiry
(MemoryModuleType<U> pMemoryType, U pMemory, long pTimeToLive) void
setSchedule
(Schedule pNewSchedule) private void
startEachNonRunningBehavior
(ServerLevel pLevel, E pEntity) void
stopAll
(ServerLevel pLevel, E pOwner) void
tick
(ServerLevel pLevel, E pEntity) private void
tickEachRunningBehavior
(ServerLevel pLevel, E pEntity) private void
tickSensors
(ServerLevel pLevel, E pBrainHolder) void
updateActivityFromSchedule
(long pDayTime, long pGameTime) void
-
字段详细资料
-
LOGGER
static final org.slf4j.Logger LOGGER -
codec
-
SCHEDULE_UPDATE_DELAY
private static final int SCHEDULE_UPDATE_DELAY- 另请参阅:
-
memories
-
sensors
private final Map<SensorType<? extends Sensor<? super E extends LivingEntity>>,Sensor<? super E extends LivingEntity>> sensors -
availableBehaviorsByPriority
private final Map<Integer,Map<Activity, availableBehaviorsByPrioritySet<BehaviorControl<? super E extends LivingEntity>>>> -
schedule
-
activityRequirements
private final Map<Activity,Set<com.mojang.datafixers.util.Pair<MemoryModuleType<?>, activityRequirementsMemoryStatus>>> -
activityMemoriesToEraseWhenStopped
-
coreActivities
-
activeActivities
-
defaultActivity
-
lastScheduleUpdate
private long lastScheduleUpdate
-
-
构造器详细资料
-
Brain
public Brain(Collection<? extends MemoryModuleType<?>> pMemoryModuleTypes, Collection<? extends SensorType<? extends Sensor<? super E>>> pSensorTypes, com.google.common.collect.ImmutableList<Brain.MemoryValue<?>> pMemoryValues, Supplier<com.mojang.serialization.Codec<Brain<E>>> pCodec)
-
-
方法详细资料
-
provider
public static <E extends LivingEntity> Brain.Provider<E> provider(Collection<? extends MemoryModuleType<?>> pMemoryTypes, Collection<? extends SensorType<? extends Sensor<? super E>>> pSensorTypes) -
codec
public static <E extends LivingEntity> com.mojang.serialization.Codec<Brain<E>> codec(Collection<? extends MemoryModuleType<?>> pMemoryTypes, Collection<? extends SensorType<? extends Sensor<? super E>>> pSensorTypes) -
serializeStart
public <T> com.mojang.serialization.DataResult<T> serializeStart(com.mojang.serialization.DynamicOps<T> pOps) -
memories
Stream<Brain.MemoryValue<?>> memories() -
hasMemoryValue
-
clearMemories
public void clearMemories() -
eraseMemory
-
setMemory
-
setMemoryWithExpiry
-
setMemory
-
setMemoryInternal
<U> void setMemoryInternal(MemoryModuleType<U> pMemoryType, Optional<? extends ExpirableValue<?>> pMemory) -
getMemory
-
getMemoryInternal
-
getTimeUntilExpiry
-
getMemories
已过时。 -
isMemoryValue
-
checkMemory
-
getSchedule
-
setSchedule
-
setCoreActivities
-
getActiveActivities
已过时。 -
getRunningBehaviors
已过时。 -
useDefaultActivity
public void useDefaultActivity() -
getActiveNonCoreActivity
-
setActiveActivityIfPossible
-
setActiveActivity
-
eraseMemoriesForOtherActivitesThan
-
updateActivityFromSchedule
public void updateActivityFromSchedule(long pDayTime, long pGameTime) -
setActiveActivityToFirstValid
-
setDefaultActivity
-
addActivity
public void addActivity(Activity pActivity, int pPriorityStart, com.google.common.collect.ImmutableList<? extends BehaviorControl<? super E>> pTasks) -
addActivityAndRemoveMemoryWhenStopped
public void addActivityAndRemoveMemoryWhenStopped(Activity pActivity, int pPriorityStart, com.google.common.collect.ImmutableList<? extends BehaviorControl<? super E>> pTasks, MemoryModuleType<?> pMemoryType) -
addActivity
public void addActivity(Activity pActivity, com.google.common.collect.ImmutableList<? extends com.mojang.datafixers.util.Pair<Integer, ? extends BehaviorControl<? super E>>> pTasks) -
addActivityWithConditions
public void addActivityWithConditions(Activity pActivity, com.google.common.collect.ImmutableList<? extends com.mojang.datafixers.util.Pair<Integer, ? extends BehaviorControl<? super E>>> pTasks, Set<com.mojang.datafixers.util.Pair<MemoryModuleType<?>, MemoryStatus>> pMemoryStatuses) -
addActivityAndRemoveMemoriesWhenStopped
public void addActivityAndRemoveMemoriesWhenStopped(Activity pActivity, com.google.common.collect.ImmutableList<? extends com.mojang.datafixers.util.Pair<Integer, ? extends BehaviorControl<? super E>>> pTasks, Set<com.mojang.datafixers.util.Pair<MemoryModuleType<?>, MemoryStatus>> pMemorieStatuses, Set<MemoryModuleType<?>> pMemoryTypes) -
removeAllBehaviors
public void removeAllBehaviors() -
isActive
-
copyWithoutBehaviors
-
tick
-
tickSensors
-
forgetOutdatedMemories
private void forgetOutdatedMemories() -
stopAll
-
startEachNonRunningBehavior
-
tickEachRunningBehavior
-
activityRequirementsAreMet
-
isEmptyCollection
-
createPriorityPairs
com.google.common.collect.ImmutableList<? extends com.mojang.datafixers.util.Pair<Integer,? extends BehaviorControl<? super E>>> createPriorityPairs(int pPriorityStart, com.google.common.collect.ImmutableList<? extends BehaviorControl<? super E>> pTasks)
-