Commit Graph

48 Commits

Author SHA1 Message Date
Southbridge edbc861c78
Add copy threshold button to air alarms (#34346) 2025-01-09 22:55:05 -08:00
metalgearsloth 9365e3a99b
Predicted gas pumps (#33717)
* Predicted gas pumps

I wanted to try out atmos and first thing I found.

* a

* Remove details range
2024-12-07 14:39:52 +11:00
chromiumboy 403528cbf3
Gas pipe sensors (#33128)
* Initial commit

* Monitored pipe node is now referenced by name

* Review changes

* Simplified construction

* Tweaked deconstruction to match other binary atmos devices

* Helper function removal

* Updated attribution
2024-11-21 21:46:10 -06:00
Partmedia a9602cbab3
Check air alarm sensors when repowering (#29857)
If air sensor/vent detects danger while the air alarm is unpowered, the air alarm won't be updated accordingly when it gains power. This can cause situations where the alarm says that everything's normal, even though the alarm UI shows stuff like 10000kPa and all sensors display danger.

When AtmosAlarmable (air alarm) is powered on, it runs the Sync method of AtmosDeviceNetworkSystem. AtmosMonitors then answer by sending a SyncData packet back, however AtmosAlarmable doesn't handle this packet in any way. This happens because the packet doesn't have any tags set, so they are ignored, and even if they weren't, there's no case in the switch statement which handles the syncing.

The proper way to do this fix is probably by actually handling this packet in some way, but I'm lazy rn so I'll just use this quick fix: Whenever AtmosMonitor gets a request to sync, it runs the Alert method, informing the connected air alarms of it's current state.
2024-08-28 18:43:27 -08:00
metalgearsloth a89d4c750b
Power stuff (#31314)
* Power stuff

- Add shared IsPowered
- Add shared ResolveApc
- Move PowerChangedEvent to shared for now
- Add SlimPoweredLight that actually functions how you'd expect a PoweredLight to function it id didn't have a bunch of bloat on it.

* big update

* boing
2024-08-25 22:18:42 +10:00
osjarw 303b5c8393 Air alarms check sensors upon power returning 2024-07-09 23:28:28 +03:00
Leon Friedrich 888a3bda51
Atmos device performance improvements (#26493)
* Atmos device performance improvements

* AtmosDirection perf improvements

* Fix errors

* Add GasTileOverlayComponent arguments

* Make excite no longer invalidate a tile
2024-03-30 15:17:53 +11:00
metalgearsloth 05a2ddff1c
Predict two-way levers (#25043)
* Predict two-way levers

Annoys me the rare occasions I touch cargo. Doesn't predict the signal but at least the lever responds immediately.

* space

* a
2024-02-11 14:19:45 +11:00
Kara bc1f8b0e40
Convert atmos device events to ref events (#22843) 2023-12-21 17:48:18 -08:00
DrSmugleaf f560f88eb5
Remove 700 usages of Component.Owner (#21100) 2023-10-19 12:34:31 -07:00
Leon Friedrich 6982f238e8
Add SaveLoadSavePrototype test (#18859) 2023-08-08 17:27:16 +10:00
Menshin 409af4f481
Fixes air sensors not accessing gas mixture on construction + visual fixes (#15224) 2023-04-08 19:25:38 -07:00
Flipp Syder 6e108bd400
Surveillance camera listening/speaking (#11640) 2022-10-17 04:44:14 +11:00
metalgearsloth 0b38589728
Raise power events by ref and not broadcast (#11923)
Also some other minor stuff.
2022-10-14 23:08:15 -05:00
Flipp Syder 8389bde2c0
Clear and reregister devices for atmos alarms (#11391)
* deregister sensors upon device list update and re-register after clearing devices

* fire alarms, too

* adds the last set of known devices to the device list update event

* update UI upon clearing everything out

* addresses reviews
2022-10-01 09:36:59 -07:00
vulppine e0bf77490d number of things, fixing warnings, AtmosAlarmType instead of AtmosMonitorAlarmType 2022-08-29 07:37:26 -07:00
vulppine b3a4ef9997 file-scoped namespaces 2022-08-23 10:55:46 -07:00
vulppine df25715ed3 renames AtmosMonitorAlarmEvent to AtmosAlarmEvent 2022-08-23 10:42:03 -07:00
vulppine 546e70730e or instead of and 2022-08-22 17:45:29 -07:00
vulppine 8de6193ff2 monitors will now always alarm if threshold types have been tripped/reset to normal on update 2022-08-22 17:42:47 -07:00
vulppine 7fd510d252 power check for firelocks, atmos monitor power cycle should now alert 2022-08-22 16:47:34 -07:00
vulppine ff9d9ab75c Revert "ResetAll no longer clears the alarm state for an atmos monitor"
This reverts commit d774741121.
2022-08-22 16:11:32 -07:00
vulppine d774741121 ResetAll no longer clears the alarm state for an atmos monitor 2022-08-22 11:55:08 -07:00
vulppine 84027b4e67 alarmables now check if the type of alarm matches the alarms they can check (optional) 2022-08-22 11:30:37 -07:00
vulppine 786bddff0a resetall now affects atmos monitor alerts 2022-08-22 09:19:02 -07:00
vulppine 6be3265084 tag sync, replaces monitor references with alarmable references 2022-08-22 05:49:51 -07:00
vulppine 85effbd33d force alert on alarmable, enforces synchronization with alarmables to be bounded by the tags that it can sync with 2022-08-22 05:01:31 -07:00
vulppine 550ea771a7 sync alarms, reset all, etc 2022-08-22 04:21:20 -07:00
vulppine 25bb45aa98 atmosdevicenetworksystem for generic device network stuff for atmos devices 2022-08-22 01:14:39 -07:00
vulppine a2d18e7a6d starts moving alarm sync logic to alarmables 2022-08-20 07:36:53 -07:00
vulppine b444c0bbbe whoops, forgot to actually sync monitor data in 2022-08-18 07:26:01 -07:00
vulppine 024e301516 set thresholds from network, reset command, removes OnFire from sensor data 2022-08-18 03:15:13 -07:00
vulppine 068527b13c alert sounds from alarmables, sensor data ctor 2022-08-18 02:37:12 -07:00
vulppine 32e2686a4b threshold cloning 2022-08-17 20:52:04 -07:00
vulppine b075606f61 air sensor model (works well enough) 2022-08-17 20:32:31 -07:00
Leon Friedrich 193b9f467d
Remove string appearance keys (#10114) 2022-08-08 11:44:16 +10:00
Vera Aguilera Puerto aa9281d667
Refactors the AtmosphereSystem public-facing API to allow for multiple atmos backends. (#8134)
* Refactors the entirety of the AtmosphereSystem public-facing API to allow for multiple atmos backends.

* actually compiles

* Remove commented out code

* funny bracket

* Move archived moles, temperature from GasMixture to TileAtmosphere.

* WIP customizable map default mixture
still VERY buggy

* broken mess
aaaaaaaaaaaaa

* Fix lattice, etc not being considered space

* visualization for "IsSpace"

* help

* Update Content.Client/Atmos/Overlays/AtmosDebugOverlay.cs

Co-authored-by: Moony <moonheart08@users.noreply.github.com>

* Holy SHIT it compiles AGAIN

* Fix AtmosDeviceSystem crash at shutdown

* Fix immutable tiles on map blueprints not being fixed by fixgridatmos/revalidate.

* Use space instead of gasmixture immutable for heat capacity calculations

* Remove all LINDA-specific code from GasMixture, move it to TileAtmosphere/AtmosphereSystem instead.

* Fix roundstart tiles not processing

* Update Content.Server/Atmos/Commands/SetTemperatureCommand.cs

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Update Content.Server/Atmos/EntitySystems/AtmosphereSystem.API.cs

Changed Files tab is so large I can't commit both suggestions at once mfw

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

Co-authored-by: Moony <moonheart08@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-07-04 09:51:34 -05:00
metalgearsloth 8905996cfc
Make raiselocalevent not broadcast by default (#8998) 2022-06-22 09:53:41 +10:00
keronshb f7b1bda3e5
Reorders Sound Systems signatures to match Popup Systems. (#8728) 2022-06-13 09:45:47 +10:00
Leon Friedrich ca7960382b
Missing nullables (#8634) 2022-06-04 17:17:48 +10:00
metalgearsloth 2d873a2cf2
Add static "IsPowered" method (#8434)
* Add static "IsPowered" method

* Use IsPowered in more places

Co-authored-by: wrexbe <wrexbe@protonmail.com>
2022-05-26 17:36:12 -07:00
wrexbe bc68ac96dd
Cleanup the namespaces (#8132) 2022-05-13 17:59:03 +10:00
Leon Friedrich a4d55235cc
Rejig Device networks (#7380) 2022-04-08 22:27:10 +10:00
metalgearsloth 07b38e5acd
Minor atmos optimisations (#6625) 2022-02-20 17:43:20 +11:00
mirrorcult ec4d4688c7
Seal/abstract/virtual everything (#6739) 2022-02-16 18:23:23 +11:00
Leon Friedrich 65eeae7188
Required air alarm offset changes for engine PR (#6216) 2022-01-18 19:39:39 +11:00
Paul Ritter 9e1607722d
removes componentdependencies (#6160) 2022-01-15 13:26:37 +11:00
Flipp Syder b1584793bf
Adds fire/air alarms (#5018)
Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
Co-authored-by: E F R <602406+Efruit@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-01-02 15:56:24 +11:00