namespace Content.Server._NF.Solar.Components; /// /// Represents a grid that's outputting solar power. /// Stores tracking information, power generation stats, and bookkeeping info for solar power. /// [RegisterComponent] public sealed partial class SolarPoweredGridComponent : Component { /// /// The angle that panels on the grid should rotate towards. /// [DataField] public Angle TargetPanelRotation = Angle.Zero; /// /// The angle that the target rotation rotates in a second. /// [DataField] public Angle TargetPanelVelocity = Angle.Zero; /// /// The total solar power, in watts, being generated by this grid. /// [DataField] public float TotalPanelPower = 0; /// /// The last tick that the solar power generation info was changed on this grid. /// Used to cull power generation info from grids that are no longer generating solar power. /// [DataField] public uint LastUpdatedTick = 0; /// /// If true, will initialize to the angle and velocity of the sun. /// Useful to keep POIs running where players might not touch the solars. /// [DataField] public bool TrackOnInit; /// /// If true, this component will not be culled. /// Again, useful for POIs where tracking is expected. /// [DataField] public bool DoNotCull; }