namespace Content.Server.Atmos; /// /// Internal Atmospherics struct that stores data about a hotspot in a tile. /// Hotspots are used to model (slow-spreading) fires and firestarters. /// public struct Hotspot { /// /// Whether this hotspot is currently representing fire and needs to be processed. /// Set when the hotspot "becomes alight". This is never set to false /// because Atmospherics will just assign /// a new struct when the fire goes out. /// [ViewVariables] public bool Valid; /// /// Whether this hotspot has skipped its first process cycle. /// AtmosphereSystem.Hotspot skips processing a hotspot beyond /// setting it to active (for LINDA processing) the first /// time it is processed. /// [ViewVariables] public bool SkippedFirstProcess; /// /// Whether this hotspot is currently using the tile for reacting and fire processing /// instead of a fraction of the tile's air. /// /// When a tile is considered a hotspot, Hotspot will pull a fraction of that tile's /// air out of the tile and perform a reaction on that air, merging it back afterward. /// Bypassing triggers when the hotspot volume nears the tile's volume, making the system /// use the tile's GasMixture instead of pulling a fraction out. /// [ViewVariables] public bool Bypassing; /// /// Current temperature of the hotspot's volume, in Kelvin. /// [ViewVariables] public float Temperature; /// /// Current volume of the hotspot, in liters. /// You can think of this as the volume of the current fire in the tile. /// [ViewVariables] public float Volume; /// /// State for the fire sprite. /// [ViewVariables] public byte State; }