- You can now put supermatter crates onto tiles where supermatters exist
- This allows you to put a supermatter back into a crate and close it, AS LONG AS THE SUPERMATTER HAS NOT TAKEN DAMAGE
- Also fixes a GC issue with ventcrawling
During normal operation, this shouldn't happen. But runtime logs shows
it has happened at least once. Most likely caused by mobs being spawned
on, or teleported onto the crystal (which doesn't destroy them until
they attempt to move, AND would break the crystal's process() !)
Changelog included
Removed update_values(). RIP, shine on you CPU diamond.
Removed get_moles_by_id and get_archived_moles_by_id, all moles are now accessed directly to reduce call cost.
Added set_temperature and set_volume procs which recalc pressure when temperature or pressure change.
Heat_capacity is now a var updated when gases update.
Modified adjust_gas to use set_gas, modified set_gas to alter heat_capacity, total_moles, and pressure as needed.
Moved gas_mixture gas numbers to a list which is connected to a global gas_datum list, like with reagents.
Modified some maths procs to be more sane, added adjust_gas and set_gas to help with processing.
Added a modular system for gas flags - gases can now be marked as fuel and oxidiser with a flag, logged with a flag, scanned with a flag, etc.
Changed scrubbers to use a list of scrubbing gases rather than a set of vars.
Made miners and xenoarch effects more sensible - they now produce gas by ID, not manually.
Made turfs' starting gases into a list, removed turf gas number vars.
A lot of fixes that became intertwined.
- rscadd: "BEAMS! Emitters now put out a constant beam of energy, which is far less laggy that the old bullet-based method. They also look cooler."
- rscadd: "Prisms can combine emitter beams that multiply the damage."
- rscadd: "Infrared triggers use the same system as emitters."
- rscadd: "Burst HE pipes have their own sprite"
- rscadd: "High-performance event observers (needed for beams)"
- rscadd: "Supermatter audio alerts"
- rscadd: "Added radiation floor decals."
- bugfix: "Burst pipes are no longer baleeted by their own explosions."
- bugfix: "Pipes are given time to release pressure before the next round of pressure checks."
- bugfix: "Explosions are slightly delayed to avoid choruses of simultaneous explosions"
- bugfix: "Gas miners no longer melt."
```yaml
changes:
- tweak: "Device Analyzers can no longer scan some items. Other items can only be scanned with the traitor variant of the scanner."
- tweak: "Flatpacks take 10-20 seconds to open."
- bugfix: "Flatpacks hit multiple times by a crowbar will only open once."
```