* Update DamageableSystem to modern standards
* DamageContainerId -> DamageContainerID with lint flag
* Replace strings with protoids
* Make CVar subscription declarations all consistently whitespaced
* ChangeDamage -> TryChangeDamage, cope with C# jank
* Revert event signature changes
* Restore a comment
* Re-add two queries
* Init the queries
* Use appearanceQuery in DamageChanged
* Use damageableQuery in TryChangeDamage
* Use damageableQuery in SetDamageModifierSetId
* Final cleanup, fix sandboxing
* Rectify ExplosionSystem:::ProcessEntity's call to TryChangeDamage
* Re-organize DamageableSystem
* first big fuck you breaking change.
* THATS A LOT OF DAMAGE!!!
* Fix test fails
* test fixes 2
* push it
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
* Create TurfSystem equivalent for and obsolete TurfHelpers.GetTileRef
* Fix EntitySystem uses of TurfHelpers.GetTileRef
* Fix EntitySystem uses of TurfHelpers.TryGetTileRef
* Fix construction condition uses of TurfHelpers.GetTileRef
* Fix last use of TurfHelpers.IsBlockedTurf
* Create TurfSystem equivalent to and obsolete TurfHelpers.GetContentTileDefinition
* Fix uses of TurfHelpers.GetContentTileDefinition(TileRef)
* Fix uses of TurfHelpers.GetContentTileDefinition(Tile)
* Create TurfSystem equivalent to and obsolete TurfHelpers.IsSpace
* Fix EntitySystem uses of TurfHelpers.IsSpace(Tile)
* Fix EntitySystem uses of TurfHelpers.IsSpace(TileRef)
* Fix remaining uses of TurfHelpers.IsSpace
* Fix uses of TurfHelpers.GetEntitiesInTile
* Delete TurfHelpers.cs
* Add GetEntitiesInTile lookup methods
* Convert some GetEntitiesInTile methods to LookupSystem extension methods
* Use new GetEntitiesInTile methods
* Recycle spiderweb hashset
* Recycle floor tile hashset
* Shuttles now use their proper friction values
* Documentation
* Shuttles now use their proper friction values
* Documentation
* What the instrumentsystem doin
* what the instrumentsystem doing 2
* Format DockingSystem.Shuttle
* arrivals system
* docking system
* shuttle console system
* emergency shuttle system
* shuttle system
* thruster system
* Fix compile error
---------
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
* Move vgroid much closer
General feedback is map spam + it takes too long to get to. This is somewhat "close" (considering 1/4 of the distance is the vgroid itself) but without a jetpack / shuttle it's going to be an endeavour.
* Decrease max
* Tweaks
* godzilla
* Update Content.Server/Shuttles/Components/GridSpawnComponent.cs
* Dungeon spawn support for grid spawns
* Recursive dungeons working
* Mask approach working
* zack
* More work
* Fix recursive dungeons
* Heap of work
* weh
* the cud
* rar
* Job
* weh
* weh
* weh
* Master merges
* orch
* weh
* vgroid most of the work
* Tweaks
* Tweaks
* weh
* do do do do do do
* Basic layout
* Ore spawning working
* Big breaking changes
* Mob gen working
* weh
* Finalising
* emo
* More finalising
* reverty
* Reduce distance
* Add admin log when someone gets gibbed by a shuttle
* Make shuttle gibbing work properly again
* Fix immovable rod gibbing, no longer puts you into nullspace
* Update Content.Server/ImmovableRod/ImmovableRodSystem.cs
* Update Content.Server/Shuttles/Systems/ShuttleSystem.FasterThanLight.cs
---------
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
The FTL UI on the shuttle console would reset the FTL progress bar every time you open it. This is because the server only sends "time until completion", not a start/end time. The FTL code now uses a separate start/end time so the exact same progress bar can be preserved.
For convenience, I made a StartEndTime record struct that stores the actual tuple. This is now used by the code and has some helpers.
* Use new Subs.CVar helper
Removes manual config OnValueChanged calls, removes need to remember to manually unsubscribe.
This both reduces boilerplate and fixes many issues where subscriptions weren't removed on entity system shutdown.
* Fix a bunch of warnings
* More warning fixes
* Use new DateTime serializer to get rid of ISerializationHooks in changelog code.
* Get rid of some more ISerializationHooks for enums
* And a little more
* Apply suggestions from code review
Co-authored-by: 0x6273 <0x40@keemail.me>
---------
Co-authored-by: 0x6273 <0x40@keemail.me>
* -Changes gibbing on FTL when on a spaced tile to yeeting on FTL if you're not buckled and on a space tile.
* -Throw relative to local shuttle position instead, fine for most cases and more performant
-Use throw code to throw.
* Blanks removal
woops
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
---------
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>