* SpookyExtinguish, oooooo
* comments, intensity
* Use allowedIntensity in GhostSystem
* commento-stuffed
* GhostComponent: return to BooCount for sanity
* unindento
* fix ghost component, dependency order (holy shit)
* More cleanup than feature at this point
* Add partial to PoweredLightSystem
* event field order, ghost system comments
* Separate spooky, consistency w.r.t. DoGhostEvent
* BooActionEvent handler to GhostSystem.Boo, fix ext
* featuring kenny blankenship and vic romano
* fix maximum value
* Fix BooIntensity comment
* remove whitespace
* comments, RevenantSystem: set handled
* "for a typical ghost"
* Address PR suggestions
* Use Handled, SpookyLight: BooIntensity->Intensity
* Use Handled in BooActionEvent handler, update name
* remove query
* address beck-thompson's requested changes + Handled
* ResponseIntensity setter, private Handled setter
* Check Handled, not !Handled
* there is a third
* the hell was this using placement
* Obsolete Extinguish, Try with Entity<T>
* why wasn't this using TimeOffsetSerializer
---------
Co-authored-by: iaada <iaada@users.noreply.github.com>
* Hope I'm not forgetting anything...
* They call me the sender the way I'm sending it.
* remove commented out YAML
* last of the slop
* fix test fails
* first batch of test fails
* no more test fails
* make cryo pods work again.
* Make cryo work better-er
* I didn't like that a firesuit helmet was so effective on its own so I decided to be a dick about it.
* review.com
* oop
* actually real quick do this
* fix YAML issues
* IHeatContainer my beloved <3
* borger
* not networked :(
* jackets
* burgeewqjfrwjkhaskfjfsahjkfsahjkfsahjkfsajhkfsa
* utter yaml nonsense
* phishing
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
* needs to be anchored datafield
* add verb
* improve description
* Use Captalization
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* remove redudant thing
* remove redudant check
* update examine text
* make stinkt person not show examine text of a gas miner
* Update Content.Shared/Atmos/Components/GasMinerComponent.cs
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Axes the easy IMapManager references
* Axes the references to unported (obsolete) IMapManager methods
* Converts salvageruler command to a LocalizedEntityCommand so it can use SharedMapSystem
* Removes IMapManager from GameTicker
This required axing the map nuke during restart, but that should be fine?
Maps are entities so EntityManager.FlushEntities should delete them all and that's the preceding line
* submodule update(?)
---------
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
* max cap more fixes and rebalances
* arbitrary
* bugefix cleanup, rebalance
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
* file scope
* cleanup and method extraction
* inline and rename var
* fix ema
* (in HL scientist voice) this should help
* cleanup comp as well while we're here
* Working commit
* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
* fix the tests I broke
* Remove methods that the client shouldn't be calling. Hamburger.
* light cleanup for now
* review
* whoop
* Commit this shit
* More stages. Something something, hamburger.
* last of the sprites. Now it's just lights, shaking, and sounds
* move comments
* bomb
* fuck it I'm done
* whoops!
* fix test fails
* review
* actually this is better™️
* forgot about you!
* remove unused space
* make it actually build smile
* borger
* grah!!!!
* review time
* Adj powerfactor
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
* cleanup
* fix some localizations
* fix typo
* review and test fix
* rename
* minus one
---------
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
* revert of the revert
* tests
* changes
* more fun
* test
* ccvvvar
* works but bad
* now its better
* more fixes
* more cleanup
* cleaning
* last fixes before move to glasses activ
* x
* glasses only
* working
* fix toolbox
* cleanup
* ThermalByte added
* small fix
* small optimalisations
* float bux fix
* comments add
* more comments
* more comments
* last fix
* revert cvar delete
* wrong blue shades
* cvar refactor
* Update Content.Shared/Atmos/EntitySystems/SharedGasTileOverlaySystem.cs
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
* Update Content.Client/Atmos/Overlays/GasTileDangerousTemperatureOverlay.cs
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
* tweak to TryGetTemperature comment
* Factors are now const
* renames
* Interface for ThermalByte
* tile color vaccum and more comments
* saving yeeted
* integration test
* rename and cleanup
* fix
* cleanup
* switch
* UT fix (hopefully)
* small bug+ rename
* vaccum limit + space is now invalid
* typo
* typo
* fix
* cleanup
---------
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
* Add CryoPodWindow (placeholder)
* Change HealthAnalyzerWindow: split off reusable HealthAnalyzerControl for cryo pod UI
* Improve CryoPodWindow: add health analyzer
* Improve CryoPodWindow: add eject button
This wasn't requested in the issue but I implemented it as practice with the UI system.
* Rewrote GasAnalyzerWindow, split off reusable gas mix viewer for cryo pod
* Change GasAnalyzerWindow: change back to three columns
With two rows you get a layouting bug when there's a lot of different gases, which looks somewhat bad. I didn't feel like fixing the layouting bug (it's an engine issue) so we're going back to three columns. That way you don't ever get two rows in practice.
* Change GasAnalyzerWindow: simplify by disabling Resizable
I added a lot of complexity to make resizable work nicely with a derived max & min size, but it's not necessary.
* Change GasAnalyzerWindow: file-wide namespace
* Change GasAnalyzerSystem: add GenerateGasMixEntry
* Split HealthAnalyzerUiState from HealthAnalyzerScannedUserMessage
* Rewrote CryoPodWindow, add atmos info
* Improve CryoPodWindow: add loading placeholder
* Improve CryoPodWindow: add internationalization support
* Fix GasAnalyzerControl: add missing translation
* Improve CryoPodWindow: add beaker info, high temperature warning
* Improve CryoPodWindow/System: inject button in window + necessary system changes
* Fix CryoPodWindow: Entering cryopod now closes window
This way you can't heal yourself with a cryopod.
* Change CryoPodWindow: add & update comments
* Change HealthAnalyzerComponent: remove `uiKey` property (no longer necessary)
* Tiny fixes
* Improve CryoPodUiMessage: replace string with enum
* Change GasAnalyzerWindow: simplify Measure code
* Change CryoPodComponent: rename Injecting to InjectionBuffer
* Change CryoPodBUI: tiny code simplification
* Fix HealthAnalyzerComponent: Removed stray import
* Improve CryoPodWindow: Prettier, concise atmos
* Improve CryoPodWindow: Chemicals bar chart
* Improve CryoPodWindow: Add Ruler to reagents
* Change CryoPodWindow: More horizontal layout
* Improve CryoPodWindow: Reduce height jiggling
The health analyzer's height changes a lot, which can be annoying with the buttons (for example when the oxygen damage label is popping in and out)
* Improve CryoPodWindow: Add setup checklist
This is mostly here to fill vertical space in the new horizontal layout.
* Improve CryoPodWindow: Eject beaker button
* Improve CryoPodWindow: Localization
* Improve CryoPodWindow: Add BeakerBarChart
An animated version of the chemicals chart
* Fix CryoPodSystem: Ejecting beaker no longer clears injection buffer
* Improve BeakerBarChart: Not animated on first frame
* Fix CryoPodWindow: Fix broken translation
* Improve CryoPodWindow: Reorder sections
* Fix BeakerBarChart: Tooltips now show up
* Change BeakerBarChart: Reorder functions
* Change CryoPodWindow: Reorder sections, change margins
* Change CryoPodWindow: Edit flavor text
* Revert changes to GasAnalyzerWindow
Since GasAnalyzerControl is no longer used in CryoPodWindow, these changes are no longer relevant to this PR.
* Tidy CryoPodWindow: Remove old workarounds
These are old layouting bug workarounds from the older version of CryoPodWindow that had a ScrollContainer in it. They're no longer necessary. Less ScrollContainers less problems.
* Tidy up: Remove unused imports
* Remove LabelledSplitBar
It was replaced by BeakerBarChart, which is a lot fancier.
* Tidy up: Tiny code style fix
* Change CryoPodSystem: Move code from server to shared
This is still without adding UI prediction
* move a ton of stuff to shared.
* one last thing
* Improve BeakerBarChart: Keep visual entry width when swapping beakers
* Improve BeakerBarChart: Respect beaker order of reagents
* Improve CryoPodWindow: Ensure space for injection buffer
We need to keep space on the chart for the injection buffer after swapping to a full beaker.
* Improve CryoPodWindow: Prettier ejection error
* Improve CryoPodWindow: Add "Cooling patient" status
* BeakerBarChart: Fix UI scale bug
* BeakerBarChart: Fix bluespace beaker ugliness
* BeakerBarChart: Add more pod status strings
* HealthAnalyzerControl: Filewide namespace, sort imports
* Style fix: Replace `bool x = y` with `var x = y`
* CryoPodUiMessage: Split off separate class for inject
* SharedCryoPodSystem: Move message-related code into Subs.BuiEvents
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
Refactor AirtightSystem to skip rotation checks for omnidirectional blocks on init
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>