* Make ghost roles collapsible
* Save `BodyVisible` state of each `Collapsible` box
* Make ghost role collapsible only when group has more than 1 role
* Make it a little prettier
* Make only ghost role buttons collapsible
* Apply requested changes
* Typo
* Small cleanup
* Store in list, instead of iterating
* Make unique ids more unique
* Move it out of the cycle
* Make _collapsibleBoxes into dictionary and use key instead of Collapsible boxes names
Added TODO. So after the problem will be fixed in `GhostRolesEui`, it should be mirrored and fixed here too.
* Put TODO in GhostRolesEui. I guess Issue must be made for this
* Use HashSet instead of Dictionary as suggested. Invert the HashSet, so being present means it uncollapsed
I decided to invert HashSet to _uncollapsedStates, because players surely will have more collapsed buttons than opened, so we optimise memory usage a little bit.
* Remove extra space from ghost roles window
* Add buttons stretching. Size 3:1
* Atmospheric alerts computer
* Moved components, restricted access to them
* Minor tweaks
* The screen will now turn off when the computer is not powered
* Bug fix
* Adjusted label
* Updated to latest master version
* Initial commit
* Tidy up
* Add firelocks to the nav map
* Add nav map regions to atmos alerts computer
* Added support for multiple region overlay sets per grid
* Fixed issue where console values were not updating correctly
* Fixing merge conflict
* Fixing merge conflicts
* Finished all major features
* Removed station map regions (to be re-added in a separate PR)
* Improved clarity
* Adjusted the color saturation of the regions displayed on the atmos alerts computer
* Format job requirements as hours and minutes
* Use TimeSpan.ToString for playtime instead of custom method
* wehflicts
---------
Co-authored-by: jmcb <joelsgp@protonmail.com>
This code was a mess. Now it's less of a mess and user UserDbDataManager now.
Fixes the following bugs:
* If you connect to a server, restart your client, connect again in the same round, you role bans would not be visible in the client.
* If you role ban somebody who is not connected to the server, then they connect within the round, they will only have the recently-applied ban.
Likely fixes#24781, #27282
* Make APC UI work correctly with multiple users
* Check access only on client, when constructing UI
* Do TODO (Thanks, Robust 236.1)
---------
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
* Avoid rebuilding all buttons on action state change
Allows for drag events to continue when actions change
* Remove excess action buttons
---------
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
* Fix borg hands showing up in stripping menu
Borgs can't drop their items anyways, and the amount of hands borgs have causes the UI to just bug out.
* Add more checks
* Boom! Emergency access!
* Emergency access sound
* locale
* Updated sounds
* bleh
* Door electrify base
* feat: popups on attempt to activate AI action when wires cut
* refactor: use SharedApcPowerReceiverComponent to check if AI can interact with door
* refactor: added icon and sound for door overcharge
* meta.json should use tabs not spaces
* refactor: extracted sounds for airlock overcharge to static field in system
* refactor: cleanup, ScarKy0 mentions for resources
* refactor: removed unused textures
* feat: now notification is displayed when AI attempting to interact with door which have wire cut
* StationAiWhitelistComponent is properly gating BUI OnMessageAttempt, SharedPowerReceiverSystem.IsPowered is now used to check if device powered
* refactor: use PlayLocal to play electrify sound only for AI player
* refactor: SetBoltsDown now uses TrySetBoltDown, checks for power.
* bolts now check for power using SharedPowerReceiverSystem
* electrify localization and louder electrify sounds
* extracted ShowDeviceNotRespondingPopup, reverted airlocks not opening/closing when ai wire was cut
* refactor: cleanup
* New sprites and fixes
* Copyright
* even more sprite changes
* refactore: cleanup, rename overcharge => electrify
---------
Co-authored-by: ScarKy0 <scarky0@onet.eu>
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>