using Content.Shared._CP14.MagicRitual.Prototypes;
using Content.Shared._CP14.MagicSpell.Spells;
using Content.Shared._CP14.MagicSpellStorage;
using Content.Shared.FixedPoint;
using Robust.Shared.Prototypes;
namespace Content.Shared._CP14.MagicSpell.Components;
///
/// Restricts the use of this action, by spending mana or user requirements.
///
[RegisterComponent, Access(typeof(CP14SharedMagicSystem), typeof(CP14SpellStorageSystem))]
public sealed partial class CP14MagicEffectComponent : Component
{
///
/// if this effect was provided by an spellstorage, it will be recorded here automatically.
///
[DataField]
public Entity? SpellStorage;
[DataField]
public FixedPoint2 ManaCost = 0f;
[DataField]
public ProtoId? MagicType = null;
///
/// Can the cost of casting this magic effect be changed from clothing or other sources?
///
[DataField]
public bool CanModifyManacost = true;
///
/// Effects that will trigger at the beginning of the cast, before mana is spent. Should have no gameplay importance, just special effects, popups and sounds.
///
[DataField]
public List TelegraphyEffects = new();
[DataField]
public List Effects = new();
}