mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-20 12:35:33 +01:00
Fixes a variety of input stalling exploits (#82577)
## About The Pull Request Fixes the following input stalling exploits (maybe missed some): - Changing GPS tag - Setting teleporter destination - Request Console Reply - Various AI law board interactions - Note, I used `is_holding` but technically this means these fail with telekinesis. I can swap them to `can_perform_action(...)`, which allows TK, but I noticed some places explicitly deny TK interactions with Ai law boards. Not sure which is preferred. - Borg Rename Board - Plumbing Machines and Ducts - APCs and SMES terminal placements - Stargazers Telepathy - Go Go Gadget Hat ## Changelog 🆑 Melbert fix: You can't change the GPS tag of something unless you can actually use the GPS fix: You can't set the teleporter to a location unless you can actually use the teleporter fix: You can't reply to request console requests unless you can actually use the console fix: You can't update AI lawboards unless you're actually holding them fix: You can't update a borg rename board unless you're actually holding it fix: You can't mess with plumbing machines unless you can actually use them fix: You can't recolor / relayer ducts unless you're actually holding them fix: You can't magically wire APCs and SMESs unless you're right by them fix: You can't use Stargazer Telepathy on people who you can't see fix: You can't configure the Inspector Hat unless you can actually use it /🆑
This commit is contained in:
@@ -48,7 +48,7 @@
|
||||
names += initial(thing.name)
|
||||
|
||||
var/choice = tgui_input_list(user, message = "Select an ability", title = "Bitrunning Program", items = names)
|
||||
if(isnull(choice))
|
||||
if(isnull(choice) || !user.is_holding(src))
|
||||
return
|
||||
|
||||
for(var/datum/action/thing as anything in selectable_actions)
|
||||
@@ -105,7 +105,7 @@
|
||||
names += initial(thing.name)
|
||||
|
||||
var/choice = tgui_input_list(user, message = "Select an ability", title = "Bitrunning Program", items = names)
|
||||
if(isnull(choice))
|
||||
if(isnull(choice) || !user.is_holding(src))
|
||||
return
|
||||
|
||||
for(var/obj/thing as anything in selectable_items)
|
||||
|
||||
Reference in New Issue
Block a user