summaryrefslogtreecommitdiff
path: root/dispatcher.lua
diff options
context:
space:
mode:
Diffstat (limited to 'dispatcher.lua')
-rw-r--r--dispatcher.lua16
1 files changed, 12 insertions, 4 deletions
diff --git a/dispatcher.lua b/dispatcher.lua
index 5a2cef5..80bd6ef 100644
--- a/dispatcher.lua
+++ b/dispatcher.lua
@@ -84,6 +84,12 @@ end
local function handlefields(pos,_,fields,sender)
local playername = sender and sender:get_player_name() or ""
+ if core.settings:get_bool("celevator.controller_screen_protected",false) then
+ if core.is_protected(pos,playername) and not core.check_player_privs(playername,{protection_bypass=true}) then
+ core.record_protection_violation(pos,playername)
+ return
+ end
+ end
local event = {}
event.type = "ui"
event.fields = fields
@@ -151,10 +157,12 @@ core.register_node("celevator:dispatcher",{
return
end
local name = puncher:get_player_name()
- if core.is_protected(pos,name) and not core.check_player_privs(name,{protection_bypass=true}) then
- core.chat_send_player(name,S("Can't open cabinet - cabinet is locked."))
- core.record_protection_violation(pos,name)
- return
+ if core.settings:get_bool("celevator.controller_cabinet_protected",true) then
+ if core.is_protected(pos,name) and not core.check_player_privs(name,{protection_bypass=true}) then
+ core.chat_send_player(name,S("Can't open cabinet - cabinet is locked."))
+ core.record_protection_violation(pos,name)
+ return
+ end
end
node.name = "celevator:dispatcher_open"
core.swap_node(pos,node)