using Content.Shared.Damage; using Robust.Shared.Audio; namespace Content.Server.ImmovableRod; [RegisterComponent] public sealed partial class ImmovableRodComponent : Component { public int MobCount = 0; [DataField("hitSound")] public SoundSpecifier Sound = new SoundCollectionSpecifier("MetalSlam"); [DataField("hitSoundProbability")] public float HitSoundProbability = 0.1f; [DataField("minSpeed")] public float MinSpeed = 10f; [DataField("maxSpeed")] public float MaxSpeed = 35f; /// /// Stuff like wizard rods might want to set this to false, so that they can set the velocity themselves. /// [DataField("randomizeVelocity")] public bool RandomizeVelocity = true; /// /// Overrides the random direction for an immovable rod. /// [DataField("directionOverride")] public Angle DirectionOverride = Angle.Zero; /// /// With this set to true, rods will automatically set the tiles under them to space. /// [DataField("destroyTiles")] public bool DestroyTiles = true; /// /// If true, this will gib & delete bodies /// [DataField] public bool ShouldGib = true; /// /// Damage done, if not gibbing /// [DataField] public DamageSpecifier? Damage; }