类 GoalSelector
- java.lang.Object
-
- net.minecraft.entity.ai.goal.GoalSelector
-
public class GoalSelector extends Object
Manages a set of goals, which are competing for certain controls on the mob. Multiple goals can run at the same time, so long as they are all using different controls.A running goal will always be replaced with a goal with a lower priority, if such a goal exists, it's competing for the same control and its
canStart()method returns true. (Note that some goals randomize this method.)If two goals have the same priority and are competing for the same control, then one goal cannot replace the other if it's running. The goal selector tries to run goals in the order they were added.
- Mappings:
Namespace Name official ayrintermediary net/minecraft/class_1355named net/minecraft/entity/ai/goal/GoalSelector
-
-
字段概要
字段 修饰符和类型 字段 说明 private EnumSet<Goal.Control>disabledControlsprivate intfield_30212private Set<PrioritizedGoal>goalsprivate Map<Goal.Control,PrioritizedGoal>goalsByControlprivate static LoggerLOGGERprivate Supplier<Profiler>profilerprivate static PrioritizedGoalREPLACEABLE_GOALprivate inttimeInterval
-
构造器概要
构造器 构造器 说明 GoalSelector(Supplier<Profiler> profiler)
-
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 voidadd(int priority, Goal goal)Adds a goal with a certain priority.voidclear()voiddisableControl(Goal.Control control)voidenableControl(Goal.Control control)Set<PrioritizedGoal>getGoals()Stream<PrioritizedGoal>getRunningGoals()voidremove(Goal goal)voidsetControlEnabled(Goal.Control control, boolean enabled)voidsetTimeInterval(int timeInterval)voidtick()
-
-
-
字段详细资料
-
LOGGER
private static final Logger LOGGER
- Mappings:
Namespace Name Mixin selector official aLayr;a:Lorg/apache/logging/log4j/Logger;intermediary field_6466Lnet/minecraft/class_1355;field_6466:Lorg/apache/logging/log4j/Logger;named LOGGERLnet/minecraft/entity/ai/goal/GoalSelector;LOGGER:Lorg/apache/logging/log4j/Logger;
-
REPLACEABLE_GOAL
private static final PrioritizedGoal REPLACEABLE_GOAL
- Mappings:
Namespace Name Mixin selector official bLayr;b:Lbad;intermediary field_18410Lnet/minecraft/class_1355;field_18410:Lnet/minecraft/class_4135;named REPLACEABLE_GOALLnet/minecraft/entity/ai/goal/GoalSelector;REPLACEABLE_GOAL:Lnet/minecraft/entity/ai/goal/PrioritizedGoal;
-
goalsByControl
private final Map<Goal.Control,PrioritizedGoal> goalsByControl
- Mappings:
Namespace Name Mixin selector official cLayr;c:Ljava/util/Map;intermediary field_18411Lnet/minecraft/class_1355;field_18411:Ljava/util/Map;named goalsByControlLnet/minecraft/entity/ai/goal/GoalSelector;goalsByControl:Ljava/util/Map;
-
goals
private final Set<PrioritizedGoal> goals
- Mappings:
Namespace Name Mixin selector official dLayr;d:Ljava/util/Set;intermediary field_6461Lnet/minecraft/class_1355;field_6461:Ljava/util/Set;named goalsLnet/minecraft/entity/ai/goal/GoalSelector;goals:Ljava/util/Set;
-
profiler
private final Supplier<Profiler> profiler
- Mappings:
Namespace Name Mixin selector official eLayr;e:Ljava/util/function/Supplier;intermediary field_6463Lnet/minecraft/class_1355;field_6463:Ljava/util/function/Supplier;named profilerLnet/minecraft/entity/ai/goal/GoalSelector;profiler:Ljava/util/function/Supplier;
-
disabledControls
private final EnumSet<Goal.Control> disabledControls
- Mappings:
Namespace Name Mixin selector official fLayr;f:Ljava/util/EnumSet;intermediary field_6462Lnet/minecraft/class_1355;field_6462:Ljava/util/EnumSet;named disabledControlsLnet/minecraft/entity/ai/goal/GoalSelector;disabledControls:Ljava/util/EnumSet;
-
field_30212
private int field_30212
- Mappings:
Namespace Name Mixin selector official gLayr;g:Iintermediary field_30212Lnet/minecraft/class_1355;field_30212:Inamed field_30212Lnet/minecraft/entity/ai/goal/GoalSelector;field_30212:I
-
timeInterval
private int timeInterval
- Mappings:
Namespace Name Mixin selector official hLayr;h:Iintermediary field_6464Lnet/minecraft/class_1355;field_6464:Inamed timeIntervalLnet/minecraft/entity/ai/goal/GoalSelector;timeInterval:I
-
-
构造器详细资料
-
GoalSelector
public GoalSelector(Supplier<Profiler> profiler)
- Mappings:
Namespace Name Mixin selector official <init>Layr;<init>(Ljava/util/function/Supplier;)Vintermediary <init>Lnet/minecraft/class_1355;<init>(Ljava/util/function/Supplier;)Vnamed <init>Lnet/minecraft/entity/ai/goal/GoalSelector;<init>(Ljava/util/function/Supplier;)V
-
-
方法详细资料
-
add
public void add(int priority, Goal goal)Adds a goal with a certain priority. Goals with lower priorities will replace running goals with a higher priority.- Mappings:
Namespace Name Mixin selector official aLayr;a(ILayq;)Vintermediary method_6277Lnet/minecraft/class_1355;method_6277(ILnet/minecraft/class_1352;)Vnamed addLnet/minecraft/entity/ai/goal/GoalSelector;add(ILnet/minecraft/entity/ai/goal/Goal;)V
-
clear
public void clear()
- Mappings:
Namespace Name Mixin selector official aLayr;a()Vintermediary method_35113Lnet/minecraft/class_1355;method_35113()Vnamed clearLnet/minecraft/entity/ai/goal/GoalSelector;clear()V
-
remove
public void remove(Goal goal)
- Mappings:
Namespace Name Mixin selector official aLayr;a(Layq;)Vintermediary method_6280Lnet/minecraft/class_1355;method_6280(Lnet/minecraft/class_1352;)Vnamed removeLnet/minecraft/entity/ai/goal/GoalSelector;remove(Lnet/minecraft/entity/ai/goal/Goal;)V
-
tick
public void tick()
- Mappings:
Namespace Name Mixin selector official bLayr;b()Vintermediary method_6275Lnet/minecraft/class_1355;method_6275()Vnamed tickLnet/minecraft/entity/ai/goal/GoalSelector;tick()V
-
getGoals
public Set<PrioritizedGoal> getGoals()
- Mappings:
Namespace Name Mixin selector official cLayr;c()Ljava/util/Set;intermediary method_35115Lnet/minecraft/class_1355;method_35115()Ljava/util/Set;named getGoalsLnet/minecraft/entity/ai/goal/GoalSelector;getGoals()Ljava/util/Set;
-
getRunningGoals
public Stream<PrioritizedGoal> getRunningGoals()
- Mappings:
Namespace Name Mixin selector official dLayr;d()Ljava/util/stream/Stream;intermediary method_19048Lnet/minecraft/class_1355;method_19048()Ljava/util/stream/Stream;named getRunningGoalsLnet/minecraft/entity/ai/goal/GoalSelector;getRunningGoals()Ljava/util/stream/Stream;
-
setTimeInterval
public void setTimeInterval(int timeInterval)
- Mappings:
Namespace Name Mixin selector official aLayr;a(I)Vintermediary method_35114Lnet/minecraft/class_1355;method_35114(I)Vnamed setTimeIntervalLnet/minecraft/entity/ai/goal/GoalSelector;setTimeInterval(I)V
-
disableControl
public void disableControl(Goal.Control control)
- Mappings:
Namespace Name Mixin selector official aLayr;a(Layq$a;)Vintermediary method_6274Lnet/minecraft/class_1355;method_6274(Lnet/minecraft/class_1352$class_4134;)Vnamed disableControlLnet/minecraft/entity/ai/goal/GoalSelector;disableControl(Lnet/minecraft/entity/ai/goal/Goal$Control;)V
-
enableControl
public void enableControl(Goal.Control control)
- Mappings:
Namespace Name Mixin selector official bLayr;b(Layq$a;)Vintermediary method_6273Lnet/minecraft/class_1355;method_6273(Lnet/minecraft/class_1352$class_4134;)Vnamed enableControlLnet/minecraft/entity/ai/goal/GoalSelector;enableControl(Lnet/minecraft/entity/ai/goal/Goal$Control;)V
-
setControlEnabled
public void setControlEnabled(Goal.Control control, boolean enabled)
- Mappings:
Namespace Name Mixin selector official aLayr;a(Layq$a;Z)Vintermediary method_6276Lnet/minecraft/class_1355;method_6276(Lnet/minecraft/class_1352$class_4134;Z)Vnamed setControlEnabledLnet/minecraft/entity/ai/goal/GoalSelector;setControlEnabled(Lnet/minecraft/entity/ai/goal/Goal$Control;Z)V
-
-