* Make every EntitySystem partial
* Oobs thats for a diff PR
* Also oops on that one
* Test systems
* git are we fr
* Update file templates
* cleanup empty classes while we are here
* forgor
---------
Co-authored-by: AJCM-git <ajcm_mail@disroot.org>
* Initial commit
* Added pods
* Transit tubes should no longer connect with disposal pipes
* Updated the transit tube sprites
* Revisited how the transit tubes work
* Fixing merge conflict
* Updated sprites
* Simplified disposal component collections and updated yaml
* Moved the majority of the disposals code to Shared
* Move disposed ents via physics
* Disposal unit now use generic visualizers
* Followers of disposed entities have predicted movement
* Made BeingDisposedSystem shared
* Added documentation for some components
* Code clean up
* Removed unneeded container entries, tubes use directions instead of angles
* Many EntityUid/Comp -> Entity<Comp> changes
* Updated DisposableSystem
* Review of DisposalTubeSystem
* Review of DisposalUnitSystem
* Review of DisposalSignalRouterSystem
* Unit updates
* Fixing merge conflict
* Merge conflict resolved
* Re-organization of systems and components
* Allow trapped entities to escape endless loops
* Fix for item ejection
* UI updates
* Minor tweak
* Fixes for transit tubes
* Removed placeholder sprite
* Removed transit tubes (for now)
* Moved exit stun time to DisposalHolderComponent
* Added a limit on the amount of damage that can sustained from disposals travel
* Fix for PVS-related sound issues
* Added a limit on the number of entities that can be inserted into units
* Clean up
* Undid file scoping
* Fixed test fail
* Fixed test fail
* Increased min default capacity of disposal units
* Fixed audio spam occurring when dumping multiple items into a disposal unit
* Tile prying now occurs whenever exiting an open pipe
* Prevent attacking and interactions while traveling through disposals
* Added generic verbs for entering/exiting disposal units
* Fixed UI prediction bug
* Bug fixes
* Small improvements
* Moved the disposal holder prototype from the disposal entry to the unit
* Minor clean up
* Added support for a disposal holder despawn effect
* Added prediction guard
* Test fail fix
* Re-added new escape behavior
* Removed outdated PVS code
* Clean up
* More escape behavior changes
* More clean up
* Updated exit selection logic
* Bug fix
* More clean up
* Split up disposal unit code
* Cleaned up disposal units some more
* Adjusted exit throw distance
* Capitalized disposal and mailing unit window titles
* Bug fixes
* Taggers and routers show existing tags when the UI opens
* Fixed test fail
* test fail fix
* Minor performance improvement
* Minor improvement in pathing
* merge conflicts
* Fix heisentest
* Fixed mispredict
* Updated system referencing conventions
* Updated to account for changes made to the code
* Attempting to fix submodule issue
* Addressing test fails
* Additional fixes for tests
* Addressing reviewer comments
* Cleaned up exit randomization
* T-ray can see disposal pipes when in 'pipe' mode
* Fix for flush animation flickering
* mild thing
* fix both
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
* Nubody
* fix test fails
* gibbing
* lung test returns
* doc comment
* hand organ test
* giblet test
* yaml formatting
* returning
* relocate
* trimming
* re-smite
* oops thusd tweak
* arachnids have slower metabolism i guess
* never mind the old behaviour is bad actually
* rider whyyy
* style changes and allat
* fix collision
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
* 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>
* Predict dumping
- This got soaped really fucking hard.
- Dumping is predicted, this required disposals to be predicte.d
- Disposals required mailing (because it's tightly coupled), and a smidge of other content systems.
- I also had to fix a compnetworkgenerator issue at the same time so it wouldn't mispredict.
* Fix a bunch of stuff
* nasty merge
* Some reviews
* Some more reviews while I stash
* Fix merge
* Fix merge
* Half of review
* Review
* re(h)f
* lizards
* feexes
* feex
* Various systems warnings cleanup
* Last changes before submitting PR
* Add guard for transform component, fix failing test
* Small corrections
* Audio params to specifiers datafields
* Using audio params on components and configs
* 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
* Add BreakOnDropItem, update do afters, remove unnecessary declarations
* bola
* Changed my mind about the nuke
* gennies too
* Make the comments more clear.
* Sorry for the trailing commas
* Revert "Sorry for the trailing commas"
This reverts commit e60fd9a30977393df3344948e6d5c0ce035723cd.
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
* Moved GasMixture to shared
* Temp Fix for sandbox violation, idk why Array.Resize isn't working properly. It's already sandboxed.
* The most powerful webedit in history
* Moved is canInsert check to before miss check
* Update Content.Server/Disposal/Unit/EntitySystems/DisposalUnitSystem.cs
---------
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.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
* Replaced uses of Dirty(Component) with Dirty(Uid, Component)
Modified some systems (notably pulling-related) to use uids.
* Missed a few
* Revert changes to pulling
* No
* 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
Fix disposals bins not automatically flushing after an object is inserted.
Because of Spaghetti Code™️, AfterInsert() in DisposalUnitSystem still handles insertion itself. Except in all cases except drag/drop insert, the object is already inserted so this check fails and the remaining logic doesn't happen anymore. Fixed now.
* system naming conventions
* remove obsolete warnings
* use EntityQueries
* tube comp clean up
* damage on turns
* remove OnRelayMovement because it didn't work
* reduce volume
* reduce damage to 1.0