using Content.Shared.Weapons.Ranged.Systems; using Robust.Shared.GameStates; namespace Content.Shared.Weapons.Ranged.Components; /// /// Allows GunSystem to automatically fire while this component is enabled /// [RegisterComponent, NetworkedComponent, Access(typeof(SharedGunSystem)), AutoGenerateComponentState] public sealed partial class AutoShootGunComponent : Component { [DataField, ViewVariables(VVAccess.ReadWrite), AutoNetworkedField] public bool Enabled; /// /// Frontier - Whether the gun is switched on (e.g. through user interaction) /// [DataField, ViewVariables(VVAccess.ReadWrite)] public bool On { get; set; } = true; /// /// Frontier - Whether or not the gun can actually fire (i.e. switched on and receiving power if needed) /// [ViewVariables(VVAccess.ReadWrite)] public bool CanFire; /// /// Frontier - Amount of power this gun needs from an APC in Watts to function. /// public float OriginalLoad { get; set; } = 0; }