Improved RCDs (#22799)

* 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
This commit is contained in:
chromiumboy
2024-03-30 23:29:47 -05:00
committed by GitHub
parent 4d2aa1a70a
commit 02273ca0e7
100 changed files with 2765 additions and 380 deletions

View File

@@ -1,18 +1,66 @@
### UI
# Shown when an RCD is examined in details range
rcd-component-examine-detail = It's currently on {$mode} mode.
rcd-component-examine-mode-details = It's currently set to '{$mode}' mode.
rcd-component-examine-build-details = It's currently set to build {MAKEPLURAL($name)}.
### Interaction Messages
# Shown when changing RCD Mode
rcd-component-change-mode = The RCD is now set to {$mode} mode.
# Mode change
rcd-component-change-mode = The RCD is now set to '{$mode}' mode.
rcd-component-change-build-mode = The RCD is now set to build {MAKEPLURAL($name)}.
rcd-component-no-ammo-message = The RCD is out of ammo!
rcd-component-tile-obstructed-message = That tile is obstructed!
rcd-component-tile-indestructible-message = That tile can't be destroyed!
# Ammo count
rcd-component-no-ammo-message = The RCD has run out of charges!
rcd-component-insufficient-ammo-message = The RCD doesn't have enough charges left!
# Deconstruction
rcd-component-tile-indestructible-message = That tile can't be destructed!
rcd-component-deconstruct-target-not-on-whitelist-message = You can't deconstruct that!
rcd-component-cannot-build-floor-tile-not-empty-message = You can only build a floor on space!
rcd-component-cannot-build-wall-tile-not-empty-message = You cannot build a wall on space!
rcd-component-cannot-build-airlock-tile-not-empty-message = Cannot build an airlock on space!
rcd-component-nothing-to-deconstruct-message = There's nothing to deconstruct!
rcd-component-tile-obstructed-message = You can't deconstruct tiles when there's something on top of them!
# Construction
rcd-component-no-valid-grid = You're too far into open space to build here!
rcd-component-must-build-on-empty-tile-message = A foundation already exists here!
rcd-component-cannot-build-on-empty-tile-message = You can't build that without a foundation!
rcd-component-must-build-on-subfloor-message = You can only build that on exposed subfloor!
rcd-component-cannot-build-on-subfloor-message = You can't build that on exposed subfloor!
rcd-component-cannot-build-on-occupied-tile-message = You can't build here, the space is already occupied!
rcd-component-cannot-build-identical-tile = That tile already exists there!
### Category names
rcd-component-walls-and-flooring = Walls and flooring
rcd-component-windows-and-grilles = Windows and grilles
rcd-component-airlocks = Airlocks
rcd-component-electrical = Electrical
rcd-component-lighting = Lighting
### Prototype names (note: constructable items will be puralized)
rcd-component-deconstruct = deconstruct
rcd-component-wall-solid = solid wall
rcd-component-floor-steel = steel tile
rcd-component-plating = hull plate
rcd-component-catwalk = catwalk
rcd-component-wall-reinforced = reinforced wall
rcd-component-grille = grille
rcd-component-window = window
rcd-component-window-directional = directional window
rcd-component-window-reinforced-directional = directional reinforced window
rcd-component-reinforced-window = reinforced window
rcd-component-airlock = standard airlock
rcd-component-airlock-glass = glass airlock
rcd-component-firelock = firelock
rcd-component-computer-frame = computer frame
rcd-component-machine-frame = machine frame
rcd-component-tube-light = light
rcd-component-window-bulb-light = small light
rcd-component-window-lv-cable = LV cable
rcd-component-window-mv-cable = MV cable
rcd-component-window-hv-cable = HV cable
rcd-component-window-cable-terminal = cable terminal