* Initial radial menu prototyping for the RCD
* Radial UI buttons can send messages to the server
* Beginning to update RCDSystem
* RCD building system in progress
* Further updates
* Added extra effects, RCDSystem now reads RCD prototype data
* Replacing tiles is instant, multiple constructions are allowed, deconstruction is broken
* Added extra functionality to RadialContainers plus documentation
* Fixed localization of RCD UI strings
* Menu opens near cursor, added basic RCD
* Avoiding merge conflict
* Implemented atomized construction / deconstruction rules
* Increased RCD ammo base charges
* Moved input context definition to content
* Removed obsoleted code
* Updates to system
* Switch machine and computer frames for electrical cabling
* Added construction ghosts
* Fixed issue with keybind detection code
* Fixed RCD construction ghost mispredications
* Code clean up
* Updated deconstruction effects
* RCDs effects don't rotate
* Code clean up
* Balancing for ammo counts
* Code clean up
* Added missing localized strings
* More clean up
* Made directional window handling more robust
* Added documentation to radial menus and made them no longer dependent on Content
* Made radial containers more robust
* Further robustness to the radial menu
* The RCD submenu buttons are only shown when the destination layer has at least one children
* Expanded upon deconstructing plus construction balance
* Fixed line endings
* Updated list of RCD deconstructable entities. Now needs a component to deconstruct instead of a tag
* Bug fixes
* Revert unnecessary change
* Updated RCD strings
* Fixed bug
* More fixes
* Deconstructed tiles/subflooring convert to lattice instead
* Fixed failed tests (Linux doesn't like invalid spritespecifer paths)
* Fixing merge conflict
* Updated airlock assembly
* Fixing merge conflict
* Fixing merge conflict
* More fixing...
* Removed erroneous project file change
* Fixed string handling issue
* Trying to fix merge conflict
* Still fixing merge conflicts
* Balancing
* Hidden RCD construction ghosts when in 'build' mode
* Fixing merge conflict
* Implemented requested changes (Part 1)
* Added more requested changes
* Fix for failed test. Removed sussy null suppression
* Made requested changes - custom construction ghost system was replaced
* Fixing merge conflict
* Fixed merge conflict
* Fixed bug in RCD construction ghost validation
* Fixing merge conflict
* Merge conflict fixed
* Made required update
* Removed lingering RCD deconstruct tag
* Fixing merge conflict
* Merge conflict fixed
* Made requested changes
* Bug fixes and balancing
* Made string names more consistent
* Can no longer stack catwalks
* 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
* 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>