Class Brain<E extends LivingEntity>

java.lang.Object
net.minecraft.world.entity.ai.Brain<E>

public class Brain<E extends LivingEntity> extends Object
  • Field Details

  • Constructor Details

  • Method Details

    • 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<?>> p_21947_, Collection<? extends SensorType<? extends Sensor<? super E>>> p_21948_)
    • serializeStart

      public <T> com.mojang.serialization.DataResult<T> serializeStart(com.mojang.serialization.DynamicOps<T> p_21915_)
    • memories

      Stream<Brain.MemoryValue<?>> memories()
    • hasMemoryValue

      public boolean hasMemoryValue(MemoryModuleType<?> pType)
    • clearMemories

      public void clearMemories()
    • eraseMemory

      public <U> void eraseMemory(MemoryModuleType<U> pType)
    • setMemory

      public <U> void setMemory(MemoryModuleType<U> pMemoryType, @Nullable U pMemory)
    • setMemoryWithExpiry

      public <U> void setMemoryWithExpiry(MemoryModuleType<U> pMemoryType, U pMemory, long pTimeToLive)
    • setMemory

      public <U> void setMemory(MemoryModuleType<U> pMemoryType, Optional<? extends U> pMemory)
    • setMemoryInternal

      <U> void setMemoryInternal(MemoryModuleType<U> pMemoryType, Optional<? extends ExpirableValue<?>> pMemory)
    • getMemory

      public <U> Optional<U> getMemory(MemoryModuleType<U> pType)
    • getMemoryInternal

      @Nullable public <U> Optional<U> getMemoryInternal(MemoryModuleType<U> pType)
    • getTimeUntilExpiry

      public <U> long getTimeUntilExpiry(MemoryModuleType<U> pMemoryType)
    • getMemories

      @Deprecated public Map<MemoryModuleType<?>,Optional<? extends ExpirableValue<?>>> getMemories()
      Deprecated.
    • isMemoryValue

      public <U> boolean isMemoryValue(MemoryModuleType<U> pMemoryType, U pMemory)
    • checkMemory

      public boolean checkMemory(MemoryModuleType<?> pMemoryType, MemoryStatus pMemoryStatus)
    • getSchedule

      public Schedule getSchedule()
    • setSchedule

      public void setSchedule(Schedule pNewSchedule)
    • setCoreActivities

      public void setCoreActivities(Set<Activity> pNewActivities)
    • getActiveActivities

      @Deprecated public Set<Activity> getActiveActivities()
      Deprecated.
    • getRunningBehaviors

      @Deprecated public List<BehaviorControl<? super E>> getRunningBehaviors()
      Deprecated.
    • useDefaultActivity

      public void useDefaultActivity()
    • getActiveNonCoreActivity

      public Optional<Activity> getActiveNonCoreActivity()
    • setActiveActivityIfPossible

      public void setActiveActivityIfPossible(Activity pActivity)
    • setActiveActivity

      private void setActiveActivity(Activity pActivity)
    • eraseMemoriesForOtherActivitesThan

      private void eraseMemoriesForOtherActivitesThan(Activity pActivity)
    • updateActivityFromSchedule

      public void updateActivityFromSchedule(long pDayTime, long pGameTime)
    • setActiveActivityToFirstValid

      public void setActiveActivityToFirstValid(List<Activity> pActivities)
    • setDefaultActivity

      public void setDefaultActivity(Activity pNewFallbackActivity)
    • addActivity

      public void addActivity(Activity p_21892_, int p_21893_, com.google.common.collect.ImmutableList<? extends BehaviorControl<? super E>> p_21894_)
    • addActivityAndRemoveMemoryWhenStopped

      public void addActivityAndRemoveMemoryWhenStopped(Activity p_21896_, int p_21897_, com.google.common.collect.ImmutableList<? extends BehaviorControl<? super E>> p_21898_, MemoryModuleType<?> p_21899_)
    • addActivity

      public void addActivity(Activity p_21901_, com.google.common.collect.ImmutableList<? extends com.mojang.datafixers.util.Pair<Integer,? extends BehaviorControl<? super E>>> p_21902_)
    • addActivityWithConditions

      public void addActivityWithConditions(Activity p_21904_, com.google.common.collect.ImmutableList<? extends com.mojang.datafixers.util.Pair<Integer,? extends BehaviorControl<? super E>>> p_21905_, Set<com.mojang.datafixers.util.Pair<MemoryModuleType<?>,MemoryStatus>> p_21906_)
    • addActivityAndRemoveMemoriesWhenStopped

      public void addActivityAndRemoveMemoriesWhenStopped(Activity p_21908_, com.google.common.collect.ImmutableList<? extends com.mojang.datafixers.util.Pair<Integer,? extends BehaviorControl<? super E>>> p_21909_, Set<com.mojang.datafixers.util.Pair<MemoryModuleType<?>,MemoryStatus>> p_21910_, Set<MemoryModuleType<?>> p_21911_)
    • removeAllBehaviors

      public void removeAllBehaviors()
    • isActive

      public boolean isActive(Activity pActivity)
    • copyWithoutBehaviors

      public Brain<E> copyWithoutBehaviors()
    • tick

      public void tick(ServerLevel pLevel, E pEntity)
    • tickSensors

      private void tickSensors(ServerLevel pLevel, E pBrainHolder)
    • forgetOutdatedMemories

      private void forgetOutdatedMemories()
    • stopAll

      public void stopAll(ServerLevel pLevel, E pOwner)
    • startEachNonRunningBehavior

      private void startEachNonRunningBehavior(ServerLevel pLevel, E pEntity)
    • tickEachRunningBehavior

      private void tickEachRunningBehavior(ServerLevel pLevel, E pEntity)
    • activityRequirementsAreMet

      private boolean activityRequirementsAreMet(Activity pActivity)
    • isEmptyCollection

      private boolean isEmptyCollection(Object pCollection)
    • createPriorityPairs

      com.google.common.collect.ImmutableList<? extends com.mojang.datafixers.util.Pair<Integer,? extends BehaviorControl<? super E>>> createPriorityPairs(int p_21860_, com.google.common.collect.ImmutableList<? extends BehaviorControl<? super E>> p_21861_)