Table of Contents

Class CasterAttackingState

Namespace
FishMMO.Shared
Assembly
FishMMO.Shared.dll

Caster archetype preset (mages, warlocks, crowd controllers). Sits at the far edge of its spell range, refuses to be meleed, and interrupts its own cast to escape when something gets inside the panic radius.

[CreateAssetMenu(fileName = "New AI Caster Attacking State", menuName = "FishMMO/Character/NPC/AI/Caster Attacking State", order = 3)]
public class CasterAttackingState : BaseAttackingState, ICachedObject
Inheritance
Object
ScriptableObject
CasterAttackingState
Implements
Inherited Members
ScriptableObject.SetDirty()
ScriptableObject.CreateInstance<T>()
Object.GetEntityId()
Object.GetInstanceID()
Object.GetHashCode()
Object.InstantiateAsync<T>(T)
Object.InstantiateAsync<T>(T, Transform)
Object.InstantiateAsync<T>(T, Vector3, Quaternion)
Object.InstantiateAsync<T>(T, Transform, Vector3, Quaternion)
Object.Instantiate(Object, Vector3, Quaternion)
Object.Instantiate(Object, Vector3, Quaternion, Transform)
Object.Instantiate(Object)
Object.Instantiate(Object, Scene)
Object.Instantiate<T>(T, InstantiateParameters)
Object.Instantiate<T>(T, Vector3, Quaternion, InstantiateParameters)
Object.Instantiate(Object, Transform)
Object.Instantiate<T>(T)
Object.Instantiate<T>(T, Vector3, Quaternion)
Object.Instantiate<T>(T, Vector3, Quaternion, Transform)
Object.Instantiate<T>(T, Transform)
Object.Destroy(Object)
Object.DestroyImmediate(Object)
Object.DontDestroyOnLoad(Object)
Object.DestroyObject(Object)
Object.FindObjectsOfType<T>()
Object.FindObjectsByType<T>(FindObjectsSortMode)
Object.FindObjectsByType<T>(FindObjectsInactive, FindObjectsSortMode)
Object.FindObjectOfType<T>()
Object.FindFirstObjectByType<T>()
Object.FindAnyObjectByType<T>()
Object.FindFirstObjectByType<T>(FindObjectsInactive)
Object.FindAnyObjectByType<T>(FindObjectsInactive)
Object.FindObjectsByType<T>()
Object.FindObjectsByType<T>(FindObjectsInactive)
Object.ToString()
Object.name
Object.hideFlags

Remarks

Behaviourless by design — a caster is BaseAttackingState with a long PreferredDistance, a wide MinComfortDistance, and a slow AttackCooldown.

Crowd-control casters use this same class: what makes one a controller rather than a nuker is the AIAbilityRotation on the controller (root when the target is closing, snare on cooldown, nuke otherwise), not a different state class.