Class EntityAI
Inheritance
object
UnityEngine.Object
UnityEngine.Component
UnityEngine.Behaviour
UnityEngine.MonoBehaviour
Mirror.NetworkBehaviour
EntityAI
Assembly: Dew.Core.dll
Syntax
[HideMonoScript]
[LogicUpdatePriority(-301)]
public class EntityAI : EntityComponent, ILogicUpdate
Fields
AggroPropagationDelayMax
Declaration
public const float AggroPropagationDelayMax = 0.7
Field Value
AggroPropagationDelayMin
Declaration
public const float AggroPropagationDelayMin = 0.1
Field Value
AggroPropagationRange
Declaration
public const float AggroPropagationRange = 17
Field Value
AITickCongestionThreshold
Declaration
public const int AITickCongestionThreshold = 5000
Field Value
BossAITickInterval
Declaration
public const float BossAITickInterval = 0.25
Field Value
BossDetectionRange
Declaration
public const float BossDetectionRange = 25
Field Value
CombatAITickInterval
Declaration
public const float CombatAITickInterval = 0.5
Field Value
customBehaviors
You can customize AI behavior of this entity externally using this.
Available only on server. Null on clients.
Declaration
public CustomAIBehaviors customBehaviors
Field Value
DefaultDetectionRange
Declaration
public const float DefaultDetectionRange = 15
Field Value
disableAI
Declaration
Field Value
DisableAI
Declaration
public static bool DisableAI
Field Value
excludeFromAutoTargeting
Declaration
public bool excludeFromAutoTargeting
Field Value
IdleAITickInterval
Declaration
public const float IdleAITickInterval = 1
Field Value
LoseTargetedEnemyTime
Declaration
public const float LoseTargetedEnemyTime = 5
Field Value
PositionSampleCount
Declaration
public static int PositionSampleCount
Field Value
PositionSampleInterval
Declaration
public static float PositionSampleInterval
Field Value
PositionSampleLagBehindFrames
Declaration
public static int PositionSampleLagBehindFrames
Field Value
predictionStrengthOverride
Declaration
[NonSerialized]
public Func<float> predictionStrengthOverride
Field Value
| Type |
Description |
| System.Func<TResult><float> |
|
RetargetingDistanceFuzziness
Declaration
public const float RetargetingDistanceFuzziness = 0.3
Field Value
RetargetingMaxTime
Declaration
public const float RetargetingMaxTime = 4
Field Value
RetargetingMinTime
Declaration
public const float RetargetingMinTime = 1
Field Value
WanderIntervalMax
Declaration
public const float WanderIntervalMax = 15
Field Value
WanderIntervalMin
Declaration
public const float WanderIntervalMin = 4
Field Value
WanderSpeedMultiplier
Declaration
public const float WanderSpeedMultiplier = 0.6
Field Value
Properties
context
Declaration
public EntityAIContext context { get; }
Property Value
detectionRange
Declaration
public float detectionRange { get; }
Property Value
estimatedVelocity
Available only on server.
Declaration
public Vector3 estimatedVelocity { get; }
Property Value
| Type |
Description |
| UnityEngine.Vector3 |
|
estimatedVelocityUnclamped
Available only on server.
Declaration
public Vector3 estimatedVelocityUnclamped { get; }
Property Value
| Type |
Description |
| UnityEngine.Vector3 |
|
isAITicking
Declaration
public bool isAITicking { get; set; }
Property Value
Methods
Aggro(Entity, bool)
Declaration
public void Aggro(Entity target, bool doPropagation = false)
Parameters
| Type |
Name |
Description |
| Entity |
target |
|
| bool |
doPropagation |
|
Declaration
public void CallAIUpdateImmediately()
Helper_CanBeCast(AbilityTrigger)
Declaration
public bool Helper_CanBeCast(AbilityTrigger abil)
Parameters
Returns
Helper_CanBeCast<T>()
Declaration
public bool Helper_CanBeCast<T>() where T : AbilityTrigger
Returns
Type Parameters
Helper_CastAbility<T>(CastInfo)
Declaration
public void Helper_CastAbility<T>(CastInfo info) where T : AbilityTrigger
Parameters
Type Parameters
Helper_CastAbilityAuto(AbilityTrigger)
Casts this ability with automatically populated CastInfo.
This will select a target and then use ability trigger's prediction data.
Declaration
public bool Helper_CastAbilityAuto(AbilityTrigger abil)
Parameters
Returns
Helper_CastAbilityAuto<T>()
Casts this ability with automatically populated CastInfo.
This will select a target and then use ability trigger's prediction data.
Declaration
public void Helper_CastAbilityAuto<T>() where T : AbilityTrigger
Type Parameters
Helper_ChaseTarget()
Chase targeted enemy. Note this will not interrupt ongoing chase if it's already chasing the same target.
Declaration
public void Helper_ChaseTarget()
Helper_GetAbility<T>()
Get ability of given type. Supports normal abilities and attack trigger.
Declaration
public T Helper_GetAbility<T>() where T : AbilityTrigger
Returns
Type Parameters
Helper_IsTargetInRange(AbilityTrigger)
Declaration
public bool Helper_IsTargetInRange(AbilityTrigger abil)
Parameters
Returns
Helper_IsTargetInRange<T>()
Declaration
public bool Helper_IsTargetInRange<T>() where T : AbilityTrigger
Returns
Type Parameters
Helper_IsTargetInRangeOfAttack()
Declaration
public bool Helper_IsTargetInRangeOfAttack()
Returns
Helper_TryGetCastInfoAuto(AbilityTrigger, out CastInfo)
Declaration
public bool Helper_TryGetCastInfoAuto(AbilityTrigger abil, out CastInfo info)
Parameters
Returns
Helper_TryGetCastInfoAuto<T>(out CastInfo)
Declaration
public bool Helper_TryGetCastInfoAuto<T>(out CastInfo info) where T : AbilityTrigger
Parameters
Returns
Type Parameters
LogicUpdate(float)
Declaration
public override void LogicUpdate(float dt)
Parameters
| Type |
Name |
Description |
| float |
dt |
|
Overrides
OnStartServer()
Declaration
public override void OnStartServer()
Overrides
OnStopServer()
Declaration
public override void OnStopServer()
Overrides
Implements
Extension Methods