* Borg hands & hand whitelisting
* yaml linted
* yaml linted (x2)
* yaml linted (x3)
* my storage tests so pass
* no need for SetCount
* ok new stuff you can get fixed too
* oops
* staque
* what if we addressed feedback
* my place so holder
* what if we addresesd feedback
* what if i did it correctly
* terminating or deleted
* Fix the sensor monitoring console forcing a GC every 3 seconds (#38146)
* Optimize sensor monitoring window graph drawing
* Add shared static Vector2 pool for all GraphView instances
* Address requested changes
* remove lock
* Update submodule to 264.0.0 (#38629)
* Toy/Plushie Inhands and Wearables (#38514)
* Fixed dependency injection and some other issues in a few places.
* More issue fixes
* patchfor broken NetworkConfiguratorLinkMenu (#38632)
fix
* Fix solutions flickering when transferring contents (#34838)
* Use Solution clones when applying SolutionComponent states
* Revert "Use Solution clones when applying SolutionComponent states"
This reverts commit 013fd111cf92b22562e00f98a7aaa49bc4b4ed62.
* Make Solution implement ICloneable and rename Clone method.
* Copy CanReact value when cloning a Solution
* Convert to IRobustCloneable
* Fix typos in guidebook: Buisness → Business (#38636)
* Fix typo in `MinorAntagonists.xml`
Buisness → Business
* Fix typo in `YourFirstCharacter.xml`
Buisness → Business
* Various Headphones Fixes and Tweaks (#38479)
* sprites, wearables
* neck
* icon-on sprite
* Cleanup prototype instantiation in `DamageTest` (#38639)
Cleanup prototype instantiation in DamageTest
* Cleanup prototype instantiation in `ExplosionSystem` (#38642)
Cleanup prototype instantiation in ExplosionSystem
* AddBodyPartCommand localization. (#38612)
commit
* fix ItemSlotsSystem debug assert (#38655)
* Allow the Command & Super door remotes to use the access of their user. (Re-creation of PR due to changes to game balance) (#35536)
* Added directional beacons (#38284)
* Added directional beacons
Signed-off-by: Nox38 <nebulousnox38@gmail.com>
* Fixed names
Signed-off-by: Nox38 <nebulousnox38@gmail.com>
---------
Signed-off-by: Nox38 <nebulousnox38@gmail.com>
* Power stat and nuke codes commands get some LEC love. (#38585)
* commit
* requested changes.
* Dsay Dirty and Follow commands converted to LEC and localized. (#38666)
* commit
* whoopwhoopwhoop
* Retro laser sprite fix (#38676)
* Fixed everything except the icon
Signed-off-by: Nox38 <nebulousnox38@gmail.com>
* fixed icon
Signed-off-by: Nox38 <nebulousnox38@gmail.com>
---------
Signed-off-by: Nox38 <nebulousnox38@gmail.com>
* fix water coolers (#38681)
* Monochromacy typo fix (#38686)
* fixes the typo
* Fixed cloning looking for the trait, not the component, RE https://github.com/space-wizards/space-station-14/pull/38686#issuecomment-3025093504
* Apply suggestions from code review
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Validate `CloningSettingsPrototype`s (#38688)
* Validate CloningSettingsPrototypes
* Update Content.IntegrationTests/Tests/Cloning/CloningSettingsPrototypeTest.cs
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Check EventComponents too
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Add test of objective-related console commands (#36400)
* Add test of objective add/list/remove commands
* Not sure why we're validating test prototypes, but sure
* We don't need a map
* Improvements and fixups for New Status Effect API (#38660)
* Predict healing and bloodstream (#38690)
* initial commit
* reapply 38126
* fix rootable
* someone missed an important minus sign here
* try this
* fix
* fix
* reenable crit hits
* cleanup
* fix status time dirtying
* fix
* camelCase
* Healing and bloodstream prediction fixes.
* Resolving Wizard casting recall on nuke disk making it impossible to disarm (#38661)
* Resolving Wizard Recall on Nuke disk making it impossible to disarm
- Adding a DisarmBomb case to nuke status update loop
- Changing a few methods and parameters to properly follow formatting standards
- Updating some names to follow camelCase
* Updating missed tag
* Reverting DataField change
Should prevent this preventative bugfix being a breaking change.
* Switch HSV to the default colorspace for character customization (#38434)
* Made HSV default for character editor
* Adds/fixes comments to HSV defaulting
* Added dropbox fix, potentially cursed
* Revert "Added dropbox fix, potentially cursed"
This reverts commit a709883366fbee813e839742125e70844672af29.
---------
Co-authored-by: TrixxedHeart <46364955+TrixxedBit@users.noreply.github.com>
* Fix: Don't deploy foldables when clicking on items inside containers (#38709)
* Fix
* Apply suggestions from code review
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Pressure Relief Valve (#36708)
* initial system (this math is probably WRONG)
* General code cleanup and OnExamined support
(holy moly this code sucks)
* UICode and related events foundation
TODO:
- Actually write the XAML UI and the underlying system
- Un-shitcode the entire thing
- Actually test everything...
* Working UI code
TODO: Make predicted, as this certainly isn't predicted. Even though I said it was. It isn't.
* Remove one TODO for unshitcoding the examine code
* Add reminder
yea
* Make predicted (defenitely isn't)
(also defenitely isn't a copypaste from pressure pump code)
* It's predicted!
TODO:
- Give it snazzy predicted visuals!
- Have a different field for pressure entry, lest it gets bulldozed every UI update.
* Improve gas pressure relief valve UI
TODO: Reminder to reduce amount of dirties using deltafields
* Implement DirtyField prediction
* Entity<T> cleanup
A lot of Entity<T> conversions and lukewarm cleanup.
Also got caught copy pasting code in 4K UHD but it's not like you couldn't tell.
* More cleanup and comments
* Remove TODO comment on bulldozing window title
* """refactoring"""
- Move appearance out of shared and finally fix it. Pointless to predict appearance in this instance.
- More Entity<T> conversions because I like them.
- Move UI creation handling over entirely to the ActivatableUI system.
- Fix a hardcoded locale string (why????).
* Add visuals
* Revert debugging variable replacememt
yea
* Revert skissue
* Remove unused using directives and remove TODO
* Localize, cleanup, document
* Fix adminlogging discrepancy
* Add ability to construct, add guidebook entry
* Clear up comment
* Add guidebook tooltip to valve
* Convert GasPressureReliefValveBoundUserInterface declaration into primary constructor
* Adds more input handling and adds autofill on open
* Un-deepfry input validator shitcode
Genuinely what was I smoking
* improve visuals logic
* Refactor again
- Update math to the correct implementation
- Moved code that could be re-used in the future into a helper method under AtmosphereSystem.Gases.cs
* I'm sorry but I hate warnings
* Remove unused using directive in AtmosphereSystem.Gases.cs
* Review and cleanup
* Lukewarm UI glossup
* Maintainer for the upstream project btw
* Remove redundant state sets and messy logic
* Unduplicate valve updater code
* Redo UI (im sorry Slarti)
* run tests
* Test refactored UI messaging
* Second round of UI improvements
- God please find a way to improve this system. Feels bad.
* Update loop implementation
* Further predict UI
* Clear up SetToCurrentThreshold
* cleanup
* Update to master + pipe layers and bug fixes
want to run tests
* fixes
* Deploy rename pipebomb
* Documentation and requested changes
* Rename the method that wiggled away
* Undo rounding changes
* Fix comment
* Rename and cleanup
* Apply suggestions from code review
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Fix TextLinkTag (#32203)
* Adjust uplink buy button to be under item icon (#38596)
* Adjusted uplink buy button to be under item icon
* Put the discount subtext under the icon
* Indent fixes, added margin
---------
Co-authored-by: TrixxedHeart <46364955+TrixxedBit@users.noreply.github.com>
* Scurrets - Audio Improvements (#38482)
* Scurret audio tuning
* Add new sfx
* Update sneezing sfx
* YAML support
* Rename a folder
* make telesci wreck easier (#37569)
rel
* Validate `ShaderPrototype` IDs (#38728)
* Convert all shader prototype string literals to protoids in overlays
* Convert more shader prototype literal strings to protoids
* Convert ValidatePrototypeId to ProtoId
* Later
* [BUGFIX] Fixed revenant malfunction ability not working properly only MediBots and Stasis bed (#38664)
* fixed
* clean up
* orks fix smart
* review fix 1
* more requested changes
* less cursed
* more descriptive description
* better wording
* Tiny Tiny Cleanup of the EyeClosingSystem. (#38734)
Update EyeClosingSystem.cs
* Fix human skin tone distribution (#38701)
* fix: Use PredictedQueueDel for gib spell (#38729)
* fix: don't default to uncharged sprite state for cells (#38730)
* Fix Hristov description - remove inaccurate technical specs (#38746)
- Removes inaccurate 'armor piercing 14.5mm shells' reference
- Replaces it with a more funny description, matching the style of the other snipers and guns
- Keeps ammunition type '.60 anti-materiel ammo' specification
- Fixes issue #38590
Co-authored-by: Arthur Fiorese de Andrade <aandrade@cmcxs.gov.br>
* feat: allow mopping evaporating puddles (#38743)
* Validate remaining `ProtoId` strings (#38747)
Validate remaining ProtoId strings
* Validate `ProtoId`s in tests (#38745)
* Convert string literals to protoids in Content.Tests
* Convert string literals to protoids or consts in Content.IntegrationTests
* Fix linter failures
Tricksy static using misled me
* Cleanup warning in StomachSystem (#38748)
you did not see this
* Vox scars (#38592)
* Added vox scars n'stuff, renamed vox_tattoos.ftl to just vox.ftl
* Revert "Added vox scars n'stuff, renamed vox_tattoos.ftl to just vox.ftl"
This reverts commit c73da55ba3b39ddf93b493aecd85604c54dd8a15.
* locale key fix
* Changed top surgery scar names to be more generalized
* Adjusted face scars
* Formatting fixes
---------
Co-authored-by: TrixxedHeart <46364955+TrixxedBit@users.noreply.github.com>
* UnlockNode command to LEC. (#38751)
* commit
* Update UnlockNodeCommand.cs
* commit
* move command locale to its own file.
* Update Content.Server/Xenoarchaeology/Artifact/UnlockNodeCommand.cs
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Typofixes for figurine dialogue (#38737)
* Typofixes for figurine dialogue
* Forgot two
* Janitor Tool: Wire Brush (#38667)
* Wow! It's -brush-
* spacing.
* Update Resources/Prototypes/Entities/Objects/Specific/Janitorial/janitor.yml
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Update Resources/Prototypes/Entities/Objects/Specific/Janitorial/janitor.yml
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* fixed changes
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Minor escape menu UX improvements (#38650)
* fix: spellbooks can have infinite charges (#38376)
* fix: spellbooks can have infinite charges
* refactor: indicate infinite spellbook charges with null
Not sure if I like this much better...
* Upgraded UseDelay to support multiple delays per entity
* Implement secondary delay for bibles.
Also some improvements to make it work nicely.
* Documentation is good
* Reserve the previous change; now Storage uses the special ID and Bible uses the default.
* .0
* Added VV support to UseDelayInfo
* Serialize better
* No register, just setlength
(cherry picked from commit b292905216948e0c85b04e8ef65a5291dd868eee)
* Always display item status panel fully
Initial feedback from the UI changes seems to be that a lot of people go "why is there empty space" so let's fix that.
* Fix item status middle hand being on the wrong side
I think I switched this around when fixing the left/right being inverted in the UI code.
* Minor status panel UI tweaks
Bottom-align contents now that the panel itself doesn't dynamically expand, prevent weird gaps.
Clip contents for panel
* Fix clipping on implanters and network configurators.
Made them take less space. For implanters the name has to be cut off, which I did by adding a new ClipControl to achieve that in rich text.
* Update visibility of item status panels based on whether you have hands at all.
This avoids UI for borgs looking silly.
Added a new "HandUILocation" enum that doesn't have middle hands to avoid confusion in UI code.
* Use BulletRender for laser guns too.
Provides all the benefits like fixing layout overflow and allowing multi-line stuff. Looks great now.
This involved generalizing BulletRender a bit so it can be used for not-just-bullets.
* Fix geiger word wrapping if you're really fucked
(cherry picked from commit 7b90c08a2c7315b2c5a6cb17dfd82a5ac9863a53)
* THE RETURN OF ITEM STATUS
Item status is now inline with the hands again. You can now see item status for both hands at once.
If you have more than 2 hands, the last active hand of that side is displayed in the respective item status.
The item status for the active hand is also highlighted.
Item status has been given a new look so it looks unique and matches every UI theme.
* Shrink item status to 125px
This is going to require fixing the existing controls. Do that later.
* New bullet item status rendering
sex
* Make gun item status look just a little bit nicer.
Avoid only one or two bullets ending up on a single row of an item status.
* Delete Eris theme files
* More improvements
Fixed the fact that left/right were flipped around when assigning status panel locations. Involved renaming all the UI textures.
Redid how content margins are set from the theme. Less complex and cleaner now.
Made the item name always left-aligned, just looks better since other UI elements don't adapt anyways.
* Compact down item status text
Now it fits 3 lines of text on one line. Yay.
This is achieved by compacting RichTextLabels by reducing their line height and giving them a negative bottom margin.
* Add item status sprites for Ashen theme.
* Add status control to show beaker/bucket/jug solution/transfer volumes
Also PollingItemStatusControl I'll be using that more.
* Fix welder item status, clean up welder code
The item status control implementation was ancient and bad. That's why it was buggy.
Removed all the complex dated networking stuff for welders, we just sync the solution contents now anyways so none of that is needed anymore. This moves a buncha stuff to shared and just removes code.
Cleanup. The code was doing some really dumb stuff.
* Spray bottles show contents in item status.
* cowtools
* Fix plasmafire and clockwork themes.
Actual git gaslighting wtf.
---------
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 58f025ba8043bcf5c32204b08eec8ae9e5d2bd41)
* attempt at moving MainViewport to UIWidget
* oldchat (prototype)
* separate oldchat and default ss14 HUD into their own files
* restores original default game screen logic and adds that logic into separated chat game screen
* hand reloading, several tweaks to port oldchat to main ss14 branch
oldchat is currently not selectable
* screen type cvar, gameplay state screen reloading/loading
* reload screen on ui layout cvar change
* fixes up basic reloading (HUD switching is still very bad)
* some UI widget reloading for main UI screen switching
* alert sync on screen change
* inventory reload
* hotbar margin fix
* chat bubbles above viewport
* whoops
* fixes ordering of speech bubble root
* should fix the chat focus issue (at least in-game, not lobby yet)
* should fix up the lobby/game chat focus
* fixes chat for lobby, turns lobby into a UI state
* viewport UI controller
* viewport ratio selection
* whoops
* adds the /tg/ widescreen ratio
* removes warning from inventory UI controller, adds background to separated chat game screen's chat portion
* menu button reload
* unload menu buttons only from gameplay state shutdown
* bugfix
* character button fix
* adds config options for viewport width/UI layout
* variable naming changes, get or null instead of get to avoid exceptions
* moves entity system get into controller