* Fix errors
* Cleanup CanMetabolizeInhaledAir
* Wait no don't do that
* Revert changes for real
* Fix
* Code cleanup and some safety rails
* Better tests and also comments
* Better comments
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
* Respirator Debodied
* Forgot about alerts (also respirator testa and events)
* Fix Urist eating air and not giving it back
* Stop nuke ops from taking in a breath then taking in a second breath causing them to get a headache from carbon dioxide poisoning and failing TryStopNukeOpsFromConstantlyFailing();
* Consts are smelly,
* Actually we don't need to raise the entity, just the component
* Don't forget to remove the unused code today, said me yesterday
* Remove all fallbacks
* Debody that too
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
* Use distinct action labels for toggling internals on and off.
* Implement specific actions for enabling/disabling internals
Avoids potential confusing race conditions where two people might perform the "Toggle Internals On" action an the same person,
which would have jsut toggled twice.
* If no gas tank, will give popup
---------
Co-authored-by: beck-thompson <beck314159@hotmail.com>
* Predicted gas pumps
I wanted to try out atmos and first thing I found.
* a
* Atmos device prediction
- Canisters
- Tanks
- Internals
AirMixes aren't predicted so nothing on that front but all the UIs should be a lot closer.
* Remove details range
* Gas tank prediction
* Even more sweeping changes
* Alerts
* rehg
* Popup fix
* Fix merge conflicts
* Fix
* Review
* blah, setup
* Updates GasTankSystem and InternalsSystem to not use Component.Owner
* squish the diff
* Fixa the rest
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
* remove deprecated entity coordinate extension functions. Reduces warning count by approximately 50
* final toCoords Removed
* Remove all unused variables and dead code paths
* remove always true variable, should be a cvar or something instead
* remove superfluous variables from tests
* Fix test
* Kill float accumulators
* Use entity proxy methods
* DataField auto name generation where possible
* Kill comp properties
* Clean up server comps
* Make events record structs
* Clean up shared body code
* Clean up server body code
* Rename organ events to be same names as in med refactor
* Merge BreakOnWeightlessMove and BreakOnMove. Provide different theshold for weightless movement.
* Adjust WeightlessMovementThresholds. Put a thing I forgot to put in the doafterargs.
* Make DoAfterArgs only use OnMove to determine whether to check for
movement and MoveThreshold to determine the threshold regardless of
weightlessness. Gave DistanceThreshold a default value which will always
be checked now.
* Fix issue introduced by merge.
* Use interaction system for determining whether a distance is within range
* Fix incorrect doafter args introduced by previous merge.
Forgor to commit these.
* Exorcise ghost.
The execution system should have been deleted when I merged previously.
For a reason I cannot comprehend it came back, but only the execution
system.
* Exorcise ghost Pt. 2
* Allow for movement check to be overriden in zero g and adjust doafter args where needed.
You can now override checking for movement in zero g with the BreakOnWeightlessMove bool. By default it will check.
The following doafters were made to ignore the movement check in zero g:
- Healing yourself with healing items,
- Removing embedded projectiles,
- Using tools like welders and crowbars
* Adjust distance for cuffing/uncuffing to work. Make injections not break on weightless movement.
* Fix evil incorrect and uneeded comments