using System.Numerics; using Robust.Shared.GameStates; namespace Content.Shared.Sprite; /// /// Used to set the datafield to a certain value from the server. /// [RegisterComponent, NetworkedComponent, AutoGenerateComponentState] [Access(typeof(SharedScaleVisualsSystem))] public sealed partial class ScaleVisualsComponent : Component { /// /// The current sprite scale. /// [DataField, AutoNetworkedField] [ViewVariables] public Vector2 Scale = Vector2.One; /// /// The original sprite scale, which we revert to if this component is removed. /// Only set on the client. /// [DataField] [ViewVariables] public Vector2? OriginalScale; /// /// DeltaV - Contains the species scale. Set dynamically by /// baseScale in the Species prototype. /// [DataField, AutoNetworkedField] [ViewVariables] public Vector2 SpeciesScale = new(1f, 1f); /// /// DeltaV - Contains the user-defined scale from the character creation /// screen. /// [DataField, AutoNetworkedField] [ViewVariables] public Vector2 ProfileScale = new(1f, 1f); /// /// DeltaV - Contains the computer scale from applying Scale, SpeciesScale, and ProfileScale. /// This will contain the actual scale after all modifiers are applied. /// [DataField, AutoNetworkedField] [ViewVariables] public Vector2 ComputedScale; }