* add EntityEffect aability support * delayed actions * renaming * delayed projectile spells * spawn on self + entityEffect on self spells * spawn on point spell * rename * clean up base species components * magic alert * move magic energy to Shared, add manacost to spells * magic recoil * improve magic recoil * verbal aspect * somatic aspect * add simple vfx proto and sprites * add casting VFX * add TODO
65 lines
1.6 KiB
C#
65 lines
1.6 KiB
C#
using Content.Shared.Actions;
|
|
using Content.Shared.DoAfter;
|
|
using Robust.Shared.Map;
|
|
using Robust.Shared.Serialization;
|
|
|
|
namespace Content.Shared._CP14.Magic.Events;
|
|
|
|
//World target
|
|
public sealed partial class CP14DelayedWorldTargetActionEvent : WorldTargetActionEvent, ICP14DelayedMagicEffect
|
|
{
|
|
[DataField]
|
|
public float Delay { get; private set; } = 1f;
|
|
|
|
[DataField]
|
|
public bool BreakOnMove { get; private set; } = true;
|
|
|
|
[DataField]
|
|
public bool BreakOnDamage { get; private set; } = true;
|
|
}
|
|
|
|
[Serializable, NetSerializable]
|
|
public sealed partial class CP14DelayedWorldTargetActionDoAfterEvent : DoAfterEvent
|
|
{
|
|
[DataField]
|
|
public NetCoordinates Target;
|
|
public override DoAfterEvent Clone() => this;
|
|
}
|
|
|
|
|
|
//Entity Target
|
|
public sealed partial class CP14DelayedEntityTargetActionEvent : EntityTargetActionEvent, ICP14DelayedMagicEffect
|
|
{
|
|
[DataField]
|
|
public float Delay { get; private set; } = 1f;
|
|
|
|
[DataField]
|
|
public bool BreakOnMove { get; private set; } = true;
|
|
|
|
[DataField]
|
|
public bool BreakOnDamage { get; private set; } = true;
|
|
}
|
|
|
|
[Serializable, NetSerializable]
|
|
public sealed partial class CP14DelayedEntityTargetActionDoAfterEvent : SimpleDoAfterEvent
|
|
{
|
|
}
|
|
|
|
//Instant
|
|
public sealed partial class CP14DelayedInstantActionEvent : InstantActionEvent, ICP14DelayedMagicEffect
|
|
{
|
|
[DataField]
|
|
public float Delay { get; private set; } = 1f;
|
|
|
|
[DataField]
|
|
public bool BreakOnMove { get; private set; } = true;
|
|
|
|
[DataField]
|
|
public bool BreakOnDamage { get; private set; } = true;
|
|
}
|
|
|
|
[Serializable, NetSerializable]
|
|
public sealed partial class CP14DelayedInstantActionDoAfterEvent : SimpleDoAfterEvent
|
|
{
|
|
}
|