using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; using Robust.Shared.Prototypes; using Content.Shared.Actions.ActionTypes; using Content.Server.Bible; using Robust.Shared.Utility; namespace Content.Server.Bible.Components { /// /// This lets you summon a mob or item with an alternative verb on the item /// [RegisterComponent] public sealed class SummonableComponent : Component { /// /// Used for a special item only the Chaplain can summon. Usually a mob, but supports regular items too. /// [DataField("specialItem", customTypeSerializer: typeof(PrototypeIdSerializer))] public string? SpecialItemPrototype = null; public bool AlreadySummoned = false; [DataField("requriesBibleUser")] public bool RequiresBibleUser = true; [DataField("summonAction")] public InstantAction SummonAction = new() { Icon = new SpriteSpecifier.Texture(new ResourcePath("Clothing/Head/Hats/witch.rsi/icon.png")), Name = "bible-summon-verb", Description = "bible-summon-verb-desc", Event = new SummonActionEvent(), }; } }