hotspot
Hotspot objects interfaces with the temperature of turf gasmixtures while also providing visual effects. One important thing to note about hotspots are that they can roughly be divided into two categories based on the bypassing variable.
Vars | |
bypassing | Whether the hotspot becomes passive and follows the gasmix temp instead of changing it. |
---|---|
cold_fire | Are we burning freon? |
fire_stage | base sprite used for our icon states when smoothing BAAAASICALY the same as icon_state but is helpful to avoid duplicated work |
just_spawned | Whether the hotspot is new or not. Used for bypass logic. |
our_hot_group | the group of hotspots we are a part of |
temperature | Temperature handles the initial ignition and the colouring. |
volume | Volume is the representation of how big and healthy a fire is. Hotspot volume will be divided by turf volume to get the ratio for temperature setting on non bypassing mode. Also some visual stuffs for fainter fires. |
Procs | |
gauss_lerp | Mathematics to be used for color calculation. |
perform_exposure | Perform interactions between the hotspot and the gasmixture. |
process | Regular process proc for hotspots governed by the controller. Handles the calling of perform_exposure() which handles the bulk of temperature processing. Burning or fire_act() are also called by perform_exposure(). Also handles the dying and qdeletion of the hotspot and hotspot creations on adjacent cardinal turfs. And some visual stuffs too! Colors and fainter icons for specific conditions. |
Var Details
bypassing
Whether the hotspot becomes passive and follows the gasmix temp instead of changing it.
cold_fire
Are we burning freon?
fire_stage
base sprite used for our icon states when smoothing BAAAASICALY the same as icon_state but is helpful to avoid duplicated work
just_spawned
Whether the hotspot is new or not. Used for bypass logic.
our_hot_group
the group of hotspots we are a part of
temperature
Temperature handles the initial ignition and the colouring.
volume
Volume is the representation of how big and healthy a fire is. Hotspot volume will be divided by turf volume to get the ratio for temperature setting on non bypassing mode. Also some visual stuffs for fainter fires.
Proc Details
gauss_lerp
Mathematics to be used for color calculation.
perform_exposure
Perform interactions between the hotspot and the gasmixture.
For the first tick, hotspots will take a sample of the air in the turf, set the temperature equal to a certain amount, and then reacts it. In some implementations the ratio comes out to around 1, so all of the air in the turf.
Afterwards if the reaction is big enough it mostly just tags along the fire, copying the temperature and handling the colouring. If the reaction is too small it will perform like the first tick.
Also calls fire_act() which handles burning.
process
Regular process proc for hotspots governed by the controller. Handles the calling of perform_exposure() which handles the bulk of temperature processing. Burning or fire_act() are also called by perform_exposure(). Also handles the dying and qdeletion of the hotspot and hotspot creations on adjacent cardinal turfs. And some visual stuffs too! Colors and fainter icons for specific conditions.