classpublicPriority 3
CombatActionEvaluator
com.hypixel.hytale.builtin.npccombatactionevaluator.evaluator.CombatActionEvaluator
extends Evaluator
implements Component
51
Methods
51
Public Methods
32
Fields
2
Constructors
Constants
floatNO_TIMEOUT= 3.4028235E38F
Constructors
protected
CombatActionEvaluator()public
CombatActionEvaluator(Role role, CombatActionEvaluatorConfig config, CombatActionEvaluatorSystems.CombatConstructionData data)Methods
Public Methods (51)
public
boolean canUseBasicAttack(int selfIndex, ArchetypeChunk<EntityStore> archetypeChunk, CommandBuffer<EntityStore> commandBuffer)public
void clearCurrentBasicAttack()public
void clearPrimaryTarget()public
void clearTimeout()public
Component<EntityStore> clone()@Nonnull@Override
public
void completeCurrentAction(boolean forceClearAbility, boolean clearBasicAttack)public
double[] consumePostExecutionDistanceRange()public
Ref<EntityStore> getBasicAttackTarget()@Nullable
public
CombatActionEvaluatorConfig.BasicAttacks getBasicAttacks(int subState)public
double getChargeDistance()public
float getChargeFor()publicstatic
ComponentType<EntityStore, CombatActionEvaluator> getComponentType()public
CombatActionEvaluator.CombatOptionHolder getCurrentAction()@Nullable
public
String getCurrentAttack()@Nullable
public
String getCurrentBasicAttack()@Nullable
public
CombatActionEvaluatorConfig.BasicAttacks getCurrentBasicAttackSet()public
InteractionType getCurrentInteractionType()public
Function<InteractionContext, Map<String, String>> getCurrentInteractionVarsGetter()public
EvaluationContext getEvaluationContext()@Nonnull
public
long getLastRunNanos()public
int getMarkedTargetSlot()public
int getMaxRangeSlot()public
int getMinRangeSlot()public
double getMinRunUtility()public
int getNextBasicAttackIndex()public
Ref<EntityStore> getOptionTarget()@Nullable
public
Int2ObjectMap<List<Evaluator<CombatActionOption>.OptionHolder>> getOptionsBySubState()@Nonnull
public
int getPositioningAngleSlot()public
Ref<EntityStore> getPrimaryTarget()@Nullable
public
int getRunInState()public
CombatActionEvaluator.RunOption getRunOption()public
double getTotalUtility(double threshold)@Override
public
boolean hasTimedOut(float dt)public
boolean requiresAiming()public
void setActiveOptions(List<Evaluator<CombatActionOption>.OptionHolder> options)public
void setBasicAttackTarget(Ref<EntityStore> target)public
void setBasicAttackTimeout(double timeout)public
void setCurrentBasicAttack(String attack, boolean damageFriendlies, Function<InteractionContext, Map<String, String>> interactionVarsGetter)public
void setCurrentBasicAttackSet(int subState, CombatActionEvaluatorConfig.BasicAttacks attacks)public
void setLastRunNanos(long lastRunNanos)public
void setLastUsedNanos(long lastUsedNanos)public
void setNextBasicAttackIndex(int next)public
void setTimeout(float timeout)public
void setupNPC(Role role)@Override
public
void setupNPC(Holder<EntityStore> holder)@Override
public
boolean shouldDamageFriendlies()public
boolean shouldPositionFirst()public
void terminateCurrentAction()public
void tickBasicAttackCoolDown(float dt)public
boolean tickBasicAttackTimeout(float dt)public
double tryPick(double currentWeight, double threshold)@Override
Fields
Protected Fields (32)
protected
double basicAttackCooldownprotected
Ref<EntityStore> basicAttackTargetprotected
double basicAttackTimeoutprotected
double chargeDistanceprotected
float chargeForprotected
CombatActionEvaluator.CombatOptionHolder currentActionprotected
String currentBasicAttackprotected
boolean currentBasicAttackDamageFriendliesprotected
CombatActionEvaluatorConfig.BasicAttacks currentBasicAttackSetprotected
int currentBasicAttackSubStateprotected
Function<InteractionContext, Map<String, String>> currentBasicAttacksInteractionVarsGetterprotected
boolean currentDamageFriendliesprotected
String currentInteractionprotected
InteractionType currentInteractionTypeprotected
Function<InteractionContext, Map<String, String>> currentInteractionVarsGetterprotected
long lastRunNanosprotected
int markedTargetSlotprotected
int maxRangeSlotprotected
double minActionUtilityprotected
int minRangeSlotprotected
double minRunUtilityprotected
int nextBasicAttackIndexprotected
boolean positionFirstprotected
int positioningAngleSlotprotected
double[] postExecutionDistanceRangeprotected
float predictabilityprotected
Ref<EntityStore> previousTargetprotected
Ref<EntityStore> primaryTargetprotected
boolean requireAimingprotected
int runInStateprotected
CombatActionEvaluator.RunOption runOptionprotected
float timeout