* Update AccessReaderSystem.cs
Fixes#40987
Related to PR #40883
Set DenyReason in CheckUserHasLockAccessEvent when access is denied to display "Access denied." popup to users. Uses ??= to avoid overriding reasons from possible systems.
* RE-FIX: Localize default deny reason in LockSystem.HasUserAccess
The default deny reason was being passed as a localization key string instead of being localized before display.
* Re-added null coalescing operator
Per maint request
* Predicted gas pumps
I wanted to try out atmos and first thing I found.
* a
* Atmos device prediction
- Canisters
- Tanks
- Internals
AirMixes aren't predicted so nothing on that front but all the UIs should be a lot closer.
* Remove details range
* Gas tank prediction
* Even more sweeping changes
* Alerts
* rehg
* Popup fix
* Fix merge conflicts
* Fix
* Review
* Adds wand of locker and locker projectile
* Adds IsOpen method to check if storage is open
* Adds store on collide
* Adds Store On Collide to Wizard Locker
* Adds Lock API
* Adds locking support
* Adds resist override and custom visual layers
* Fixes decursed states, adds comment for a future visualizer
* adds locker wand visuals and descriptions
* shrinks locker radius, moves TODO for throw support
* Adds whitelist and moves storage and lock logic into their own methods
* Adds support to disable store on collide after the first open. Fixes prediction issues with disabling.
* Adds wand of locker to the grimoire
* Adds wizard access prototype
* Adds Wizard to universal access
* Moves Lock on collide to on collide method
* Comments
* Changes layer order
* Fixes prediction issues when locking.
* Adds Wiz access to universal ID
* 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>
* prevent borgs from using locks
* e
* bru
* a
* blacklist borgs and robotics console
* frogro
* add IsAllowed to EntityWhitelistSystem
* use IsAllowed
* move thing to new LockingWhitelistSystem
* :trollface:
* review
* use renamed CheckBoth in locking whitelist
* remove unused stuff and add more to doc
* Use target entity instead to remove self check
* Rename to _whitelistSystem
* Add deny lock toggle popup
* Prevent duplicate checks and popups
* Fix wrong entity in popup when toggling another borg
* Make new event
* Update comment to user for new event
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
* create devicenet frequencies
* create borg transponder and give it to all nt borgs
* add robotics console
* actually implement battery charge display + some fix
* tab
* real explosion
* little safer
* disable destroy button clientside too when on cooldown
* m
* how do i do this when i review things...
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* webedit ops
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
* ui updates
* oracle java
* do a thing
* update ui when a borg times out
* maybe fix test
* add IsLocked to LockSystem
* make destroying gib the chassis again, so emagging isnt sus
* use locking
* require using alt click to unlock so normal click is open ui
* the
* use LogType.Action
* take this L
* pocket lint?
* sharer
* pro ops
* robor pushmarkup
* m
* update and make it not use prototype anymore
* frame0
* update yaml
* untroll
* bad
* h
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
* 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
* LockVisualizer
* Fix state
* Clean some code
* Make it component, fix tests fail
* Fix for StateUnlocked
Now it is possible to manually set the unlocked state and it will work!
* Optimize LockVisualizer, add check for unlocked state
* No todo I guess
People are using these as unhackable and hard-to-tailgate airlocks into sec. They should not be trivial for security officers to move through.
Made LockComponent have configurable lock times to implement this.