Class DaggerfallMissile
Missile component for spell casters and archers.
Designed to handle missile role in abstract way for other systems.
Collects list of affected entities for involved system to process.
Supports touch, target at range, area of effect.
Has some basic lighting effects that might expand later.
Does not currently support serialization, but this will be added later.
Currently ranged missiles can only move in a straight line as per classic.
Inheritance
DaggerfallMissile
Assembly: Assembly-CSharp.dll
Syntax
[RequireComponent(typeof(Light))]
[RequireComponent(typeof(SphereCollider))]
[RequireComponent(typeof(MeshCollider))]
[RequireComponent(typeof(Rigidbody))]
[RequireComponent(typeof(DaggerfallAudioSource))]
public class DaggerfallMissile : MonoBehaviour
Fields
|
Improve this Doc
View Source
BillboardFramesPerSecond
Declaration
public int BillboardFramesPerSecond
Field Value
|
Improve this Doc
View Source
ColliderRadius
Declaration
public float ColliderRadius
Field Value
|
Improve this Doc
View Source
EnableLight
Declaration
Field Value
|
Improve this Doc
View Source
EnableShadows
Declaration
public bool EnableShadows
Field Value
|
Improve this Doc
View Source
ExplosionRadius
Declaration
public float ExplosionRadius
Field Value
|
Improve this Doc
View Source
FlickerMaxInterval
Declaration
public float FlickerMaxInterval
Field Value
|
Improve this Doc
View Source
ImpactBillboardFramesPerSecond
Declaration
public int ImpactBillboardFramesPerSecond
Field Value
|
Improve this Doc
View Source
ImpactSound
Declaration
public SoundClips ImpactSound
Field Value
|
Improve this Doc
View Source
LifespanInSeconds
Declaration
public float LifespanInSeconds
Field Value
|
Improve this Doc
View Source
MovementSpeed
Declaration
public float MovementSpeed
Field Value
|
Improve this Doc
View Source
PostImpactLifespanInSeconds
Declaration
public float PostImpactLifespanInSeconds
Field Value
|
Improve this Doc
View Source
PostImpactLightMultiplier
Declaration
public float PostImpactLightMultiplier
Field Value
|
Improve this Doc
View Source
PulseColors
Declaration
public Color[] PulseColors
Field Value
|
Improve this Doc
View Source
PulseSpeed
Declaration
Field Value
|
Improve this Doc
View Source
SphereCastRadius
Declaration
public const float SphereCastRadius = 0.25F
Field Value
|
Improve this Doc
View Source
TouchRange
Declaration
public const float TouchRange = 3F
Field Value
Properties
|
Improve this Doc
View Source
Caster
Gets or sets caster who is origin of missile.
This must be set for all missile target types.
Caster is set automatically from payload when available.
Declaration
public DaggerfallEntityBehaviour Caster { get; set; }
Property Value
|
Improve this Doc
View Source
CustomAimDirection
Declaration
public Vector3 CustomAimDirection { get; set; }
Property Value
|
Improve this Doc
View Source
CustomAimPosition
Declaration
public Vector3 CustomAimPosition { get; set; }
Property Value
|
Improve this Doc
View Source
ElementType
Gets or sets element type.
Element is set automatically from payload when available.
Declaration
public ElementTypes ElementType { get; set; }
Property Value
|
Improve this Doc
View Source
IsArrow
Declaration
public bool IsArrow { get; set; }
Property Value
|
Improve this Doc
View Source
IsArrowSummoned
Declaration
public bool IsArrowSummoned { get; set; }
Property Value
|
Improve this Doc
View Source
Payload
Gets or sets effect bundle payload carried by this missile.
Any DaggerfallEntityBehaviour objects hit by this missile will
receive instance of bundle payload against their EntityEffectManager on contact.
Declaration
public EntityEffectBundle Payload { get; set; }
Property Value
|
Improve this Doc
View Source
Targets
Gets all target entities affected by this missile.
Any effect bundle payload will be applied automatically.
Use this property and OnComplete event for custom work.
Declaration
public DaggerfallEntityBehaviour[] Targets { get; }
Property Value
|
Improve this Doc
View Source
TargetType
Gets or sets target type.
Target is set automatically from payload when available.
Declaration
public TargetTypes TargetType { get; set; }
Property Value
Methods
|
Improve this Doc
View Source
GetEntityTargetInTouchRange(Vector3, Vector3)
Declaration
public static DaggerfallEntityBehaviour GetEntityTargetInTouchRange(Vector3 aimPosition, Vector3 aimDirection)
Parameters
Returns
|
Improve this Doc
View Source
RaiseOnCompleteEvent()
Declaration
protected virtual void RaiseOnCompleteEvent()
Events
|
Improve this Doc
View Source
OnComplete
Declaration
public static event DaggerfallMissile.OnCompleteEventHandler OnComplete
Event Type
Extension Methods
MBExtensions.Invoke<T1, T2, T3, T4>(MonoBehaviour, Action<T1, T2, T3, T4>, T1, T2, T3, T4, Single)