* Creates TemperatureDamageThresholdsComponent
* Obsolete TemperatureComponent fields
* Use TemperatureDamageThresholdsComponent
Moves all the uses of the relocated TemperatureComponent fields to use the TDTC versions
* Removes the obsolete TemperatureComponent fields
* Update YAML definitions
* Update doc comments
* Split TemperatureSystem
Creates TemperatureDamageSystem and moves the damage handling from TemperatureSystem
* Cull unused using statements
* Use component-based damage tick scheduling
* Fix temperature damage processing
Check was inverted resulting in things never starting to take temperature damage
* Poke tests
* Add TemperatureDamageThresholds to new prototypes
* Move TemperatureDamageThresholdsComponent to Shared
Parity with TemperatureComponent
* While I'm here
Fixes warning regarding obsolete ProtoId validator attribute
* Fix YAML errors
* Fix merge errors
* Rename TemperatureDamageThresholdsComponent -> TemperatureDamageComponent
* Use ContentHelpers.RoundToLevels for temperature alerts
* Fix YML
* A fuckton of cleanup
* working cleanup
* fix
* misc additions
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
* Make ServerPackaging automatically get extra server assemblies
* Make the switch
* Use Content.Server.deps.json instead
* Remove debug
* Rewrite
Now recursively fetches dependencies from Content.Server
Only copies dependencies not covered by Robust
This removes the need to manually specify most of the dependencies, even the content ones!
Also look at runtime key properly to figure out the proper dll name.
This actually removes some assemblies that were duplicated between the main directory and assemblies (various Microsoft.Extensions stuff)
* Fix test compile errors when updating dependencies
Ran across this while updating dependencies on the RT .NET 10 update. Should be fine to merge immediately.
* More .NET 10 prep
* Convert to SLNX
Hell yeah
* slnx now has size-2 indents
* Update SLNX with new RT system
* Remove reference to RT test in toolshed test
* Remove accidental usage of transitive RT dependencies
* Move Robust project references to RobustApi
* Update solution file
* Fix warnings in pow3r
* Fix nullable warnings in integration tests
idk where these came from
* gitignore binlog files
* Fix transitive dependency warnings in Content.Benchmarks
* Update slnx
* Okay, the Robust API thing didn't pan out. New plan.
It apparently broke clean builds, as the dependencies aren't in the project asset list or something anymore. I tried to fix this, but it seems impossible to do without relying on .NET SDK internals, as there's no point in the NuGet graph walk process that seems cleanly extensible.
Instead let's just do the much dumber thing: a bunch of .props files for content to import. Hooray!
This also means that I have to go through and *explicitly* disable transitive dependencies everywhere in RT. This thankfully isn't too hard.
* Update RT to 269.0.0
* One last solution update
* Fix more data definition issues
* Update RT to 269.0.1
* Fix it again
---------
Co-authored-by: DrSmugleaf <drsmugleaf@gmail.com>
* refactor: make MoverController use more queries
* perf: don't process paused MoverControllers
* perf: track active input movers via events
* Revert "place stored changeling identities next to each other (#39452)"
This reverts commit 9b5d2ff11b8f19fafbf97d6ceab238028ca6dfeb.
* perf: keep around the seen movers hashset
* fix: don't reintroduce wild wild west ordering
* style: use virtual method
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* docs: better ActiveInputMoverComponent motiviation
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* fix: pass through known comp
* fix: properly order relay movers for real
* perf: use proxy Transform() and inline it
Actually this might be a slight performance improvement since it avoids
the dictionary lookup until the case that its body status is on ground.
* style: switch an event handler to Entity<T>
* fix: just-in-case track for relay loops
* merg conflix
* borger
* whitespace moment
* whoops
* empty
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
* feat: RnD tech research console now have reroll feature
* fix: disable Rediscover button when there is not enough currency or user have no access
* refactor: xml-doc, extract method, minor simplify xaml
* minor cleanup after review
* refactor: change sending research server points amount into BUI from state to ResearchServerComponent (using AfterAutoHandleStateEvent)
* feat: now tech rerolls will have cooldown to ensure no one can spam-spend all dept budget instantly
* refactor: revert unneeded code
* refactor: whitespaces
---------
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
* merged chemical into bloodstream
* changed injectable to bloodstream
* separated bleeding and direct blood removal
* removed blood gain from protein
* reduced blood gain from saline
* rejuvenating fills to reference volume
* fixed blood regulation
* red mead requires stirring to make
* reverted accidental line deletion
* cleared the skeletons from the closet
* additional routing
* field rename for xeno
* removed mention of chemstream and field rename for asteroid mobs
* minor optimizations
* Revert "reduced blood gain from saline"
This reverts commit de26fd1c0d99f3019fe7dd1451a50230cc90f058.
* Revert "removed blood gain from protein"
This reverts commit 7a1648caf39fe26406db73c2a5afa389b82c612f.
* removed unused component fetch
* dead check mini refactor
* eventized blood exclusion
* quick fix
* Pain
* Commit of doom
* COMMIT
* renamed bloodMaxFactor to MaxVolumeFactor
* addressed floating point error
* returned vomiting chemicals
* blood reagent always skips the flush
* no need to mention blood reagent
* fixed passing blood flush
* adadsafasfasfassfasf
* whoops
* merge fixed injectors
* Revert "adadsafasfasfassfasf"
This reverts commit 0a5313a68dd6484d36d28d08930c76851b72ae38.
* simplify reagent removal
* enabled foreign blood transfusion
* Revert "COMMIT"
This reverts commit 19abd679cd7761ebd47bb242bd644176a3006a42.
* simplified reagent removal when modifying blood level
* removed misleading coment since the changes
* documented MetabolismExclusionEvent
* fixed negative negative modification of blood level
* fixed hypervolemia not normalizing
* constrainted blood modification
* returned bloodpack stop on fully healed
* forgot to stage this
* band aid for diona blood
* swapping GetReagent with GetPrototype
* optimize blood filtering
* multiplicative multi reagent blood level calculation
* removed unused stuff
* optimized blood calculation a tiny bit
* added per reagent blood regulation
* optimized (referenceVolume + bloodReagents) into referenceSolution
* polished coded to proper function
* forgot to stage rootable system change
* clean up, unnecessary GetBloodLevel call
* rename method name to TryAddToBloodstream instead of Chemicals
* placed overfill safety
* cleanup and final touches
* final touch
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
* add door control module
* some commentary
* can't eject stuff anymore
* make xenoborg door remote eletrify doors
* clean yml
* anchors and aliases
* not show stuff about id in xenoborg access config
* engi xenoborg can see eletrified doors
* Ignite atmosphere on explosions
* Fixed to add a temperature property
* Code review corrections
* Removed unused usings
* Correction to use TryComp instead of EntityManager to make it prettier
* Code review corrections
* Code review corrections
* Corrections
* misc fixes
---------
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
* add two methods
* move stuff to damage system api
* use TryIndex
* simplify
* minor fix
* add helper functions
* fix
* remove random new line
* simplify
* remove unnecessary lines
* rename to GetDamage
* Got it working
* make more clear
* why backwards
* value should be the amount to heal
* fix
* fix all dumb fixedpoint2 edge cases I hope
* One more thing
* fix
* make it more simple
* ops it was backwards
* valueHeal can't be more than remaining
* add all keys beforehand and no need to check and add them inside the loop
* break for loop in case remaining is zero
* comment was wrong
* optimized, works
* remove random spaces
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
* Added random gate
* minor edit
* cleaning up my shit after trying to do something faster
* new lines
* some changes
* joke
* UI
* Long Division
* Dont use ctrl + x in 3 am
* I hope these are the final touches
* One thing, I don't know why
* noname commit
* no way, 1kk of code lines edit
* sudo rm -rf ... and something there...
* update
* sometimes its sad
* broble
* slightly cleaner I guess actually
* im straight refactoring it, and by it, i mean.... my entity
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
* Add voice mask implant
* Remove voice mask
* Voice mask implant now overrides your identity
* voice mask implant can now be extracted, when taking out the voice mask implant it now updates your name proplery
* Simplify logic
* Reduce explosion airtight cache memory usage
This means you can happily add explosion prototypes again
New approach has the tolerance value data in a shared storage with reference counting.
* Oops fix index removal
* Remove debug code and fix merge conflicts
* Also address my other review
* Oh it's in two places lmao
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
* no longer calls evac if evac is called or if the round is over
* can't recall shuttle
* some commentary
* can recall next round
* cancel evac recalling
* add this back
* only call once
* admins can recall anyway now
* 1 bool is better than 2 i guess
* some cleanup
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
* feat: added lslaws command
* feat: add lswatchlisted command
* tweak: nicer formatting for lswatchlisted
* tweak: nicer formatting for lslaws
* feat: lsobjectives lists everyone's objectives if no user specified
* feat: mark ghosted players in players tab
* docs: add missing DeltaV patch comment
* feat: only alert admins if meatspiking player characters
* feat: always alert about station explosions, don't spam off-station alerts
* feat: stripping alert tweaks
* feat: admin alert on low hour latejoin
* refactor: forgot to make onspawncomplete non-async, wasn't necessary after all
* feat: EORG alerts
* feat: getping command
* refactor: remove unused imports, format
* refactor: early return in onspawncomplete
* feat: add coordinate link to eorg destroy alert
* tweak: cache watchlist data to avoid db calls, use in lswatchlisted
* fix: null-check in OnNoteAdded
* feat: watchlist indicator on admin overlay
* feat: optionally mark watchlisted in f7 players
* feat: refresh admin playerlist data on wl change
* fix: update player list after cache write
* feat: add tp links to prayer messages
* tweak: don't alert when uncuffing self
* tweak: lower uncuff other alert impact if mindshielded
* docs: add deltav comments to imports
* refactor: address review comments
* style: deltav comments on same line as change
* performance: get metadata only if objectives > 0
* fix: actually check user if explosion gridPos not on station
* style: remove extraneous newlines
* refactor: use fancy getOrNew method
* feat: refresh player list UI if marking pref changed
* feat: latejoin alert hours configurable
* fix: also list objectives for non-humanoids and dead people