diff options
Diffstat (limited to 'genericswitch.lua')
| -rw-r--r-- | genericswitch.lua | 158 |
1 files changed, 80 insertions, 78 deletions
diff --git a/genericswitch.lua b/genericswitch.lua index 9cdf31c..71342f8 100644 --- a/genericswitch.lua +++ b/genericswitch.lua @@ -1,13 +1,15 @@ +local S = core.get_translator("celevator") + local inputoptions = { { id = "none", - desc = "(none)", + desc = S("(none)"), func_on = function() end, needsfloor = false, }, { id = "carcall", - desc = "Car Call at Landing:", + desc = S("Car Call at Landing:"), func_on = function(controllerpos,floor) celevator.controller.run(controllerpos,{ type = "remotemsg", @@ -19,7 +21,7 @@ local inputoptions = { }, { id = "upcall", - desc = "Up Call (simplex car) at Landing:", + desc = S("Up Call (simplex car) at Landing:"), func_on = function(controllerpos,floor) celevator.controller.run(controllerpos,{ type = "remotemsg", @@ -31,7 +33,7 @@ local inputoptions = { }, { id = "downcall", - desc = "Down Call (simplex car) at Landing:", + desc = S("Down Call (simplex car) at Landing:"), func_on = function(controllerpos,floor) celevator.controller.run(controllerpos,{ type = "remotemsg", @@ -43,7 +45,7 @@ local inputoptions = { }, { id = "swingupcall", - desc = "Up Call (swing) at Landing:", + desc = S("Up Call (swing) at Landing:"), func_on = function(controllerpos,floor) celevator.controller.run(controllerpos,{ type = "remotemsg", @@ -55,7 +57,7 @@ local inputoptions = { }, { id = "swingdowncall", - desc = "Down Call (swing) at Landing:", + desc = S("Down Call (swing) at Landing:"), func_on = function(controllerpos,floor) celevator.controller.run(controllerpos,{ type = "remotemsg", @@ -67,7 +69,7 @@ local inputoptions = { }, { id = "fs1off", - desc = "Deactivate Fire Service Phase 1", + desc = S("Deactivate Fire Service Phase 1"), func_on = function(controllerpos) celevator.controller.run(controllerpos,{ type = "fs1switch", @@ -78,7 +80,7 @@ local inputoptions = { }, { id = "fs1on", - desc = "Activate Fire Service (main landing) Phase 1", + desc = S("Activate Fire Service (main landing) Phase 1"), func_on = function(controllerpos) celevator.controller.run(controllerpos,{ type = "fs1switch", @@ -89,7 +91,7 @@ local inputoptions = { }, { id = "fs1onalt", - desc = "Activate Fire Service (alternate landing) Phase 1", + desc = S("Activate Fire Service (alternate landing) Phase 1"), func_on = function(controllerpos) celevator.controller.run(controllerpos,{ type = "fs1switch", @@ -101,7 +103,7 @@ local inputoptions = { }, { id = "mrsmoke", - desc = "Machine Room or Hoistway Smoke Detector", + desc = S("Machine Room or Hoistway Smoke Detector"), func_on = function(controllerpos) celevator.controller.run(controllerpos,{ type = "mrsmoke", @@ -111,7 +113,7 @@ local inputoptions = { }, { id = "secdeny", - desc = "Lock Car Calls at Landing:", + desc = S("Lock Car Calls at Landing:"), func_on = function(controllerpos,floor) celevator.controller.run(controllerpos,{ type = "remotemsg", @@ -126,7 +128,7 @@ local inputoptions = { }, { id = "secauth", - desc = "Require Auth for Car Calls at Landing:", + desc = S("Require Auth for Car Calls at Landing:"), func_on = function(controllerpos,floor) celevator.controller.run(controllerpos,{ type = "remotemsg", @@ -141,7 +143,7 @@ local inputoptions = { }, { id = "secallow", - desc = "Unlock Car Calls at Landing:", + desc = S("Unlock Car Calls at Landing:"), func_on = function(controllerpos,floor) celevator.controller.run(controllerpos,{ type = "remotemsg", @@ -156,7 +158,7 @@ local inputoptions = { }, { id = "swingon", - desc = "Activate Swing Operation", + desc = S("Activate Swing Operation"), func_on = function(controllerpos) celevator.controller.run(controllerpos,{ type = "remotemsg", @@ -168,7 +170,7 @@ local inputoptions = { }, { id = "swingoff", - desc = "Deactivate Swing Operation", + desc = S("Deactivate Swing Operation"), func_on = function(controllerpos) celevator.controller.run(controllerpos,{ type = "remotemsg", @@ -183,13 +185,13 @@ local inputoptions = { local dinputoptions = { { id = "none", - desc = "(none)", + desc = S("(none)"), func_on = function() end, needsfloor = false, }, { id = "upcall", - desc = "Up Call at Landing:", + desc = S("Up Call at Landing:"), func_on = function(dispatcherpos,floor) celevator.dispatcher.run(dispatcherpos,{ type = "remotemsg", @@ -201,7 +203,7 @@ local dinputoptions = { }, { id = "downcall", - desc = "Down Call at Landing:", + desc = S("Down Call at Landing:"), func_on = function(dispatcherpos,floor) celevator.dispatcher.run(dispatcherpos,{ type = "remotemsg", @@ -213,7 +215,7 @@ local dinputoptions = { }, { id = "fs1off", - desc = "Deactivate Fire Service Phase 1", + desc = S("Deactivate Fire Service Phase 1"), func_on = function(dispatcherpos) celevator.dispatcher.run(dispatcherpos,{ type = "fs1switch", @@ -224,7 +226,7 @@ local dinputoptions = { }, { id = "fs1on", - desc = "Activate Fire Service Phase 1", + desc = S("Activate Fire Service Phase 1"), func_on = function(dispatcherpos) celevator.dispatcher.run(dispatcherpos,{ type = "fs1switch", @@ -236,46 +238,46 @@ local dinputoptions = { } local function updateinputform(pos) - local meta = minetest.get_meta(pos) + local meta = core.get_meta(pos) local dmode = meta:get_int("dispatcher") == 1 - local fs = "formspec_version[7]size[8,8.5]" - fs = fs.."tabheader[0,0;1;tab;Controller,Dispatcher;"..(dmode and "2" or "1")..";true;true]" - fs = fs.."vertlabel[0.33,1;ON]" - fs = fs.."dropdown[1,0.5;6,1;signal_on;" + local fs = "formspec_version[7]size[9,8.5]" + fs = fs.."tabheader[0,0;1;tab;"..S("Controller")..","..S("Dispatcher")..";"..(dmode and "2" or "1")..";true;true]" + fs = fs.."vertlabel[0.33,1;"..S("ON").."]" + fs = fs.."dropdown[1,0.5;7,1;signal_on;" local selected_on = 1 local currentid_on = meta:get_string("signal_on") for k,v in ipairs(dmode and dinputoptions or inputoptions) do - fs = fs..minetest.formspec_escape(v.desc).."," + fs = fs..core.formspec_escape(v.desc).."," if v.id == currentid_on then selected_on = k end end fs = string.sub(fs,1,-2) fs = fs..";"..selected_on..";false]" - fs = fs.."field[0.5,2;3,1;carid;"..(dmode and "Dispatcher ID" or "Car ID")..";${carid}]" - fs = fs.."field[4.5,2;3,1;floor_on;Landing Number;${floor_on}]" - fs = fs.."box[0,3.25;8,0.1;#CCCCCC]" - fs = fs.."vertlabel[0.33,4;OFF]" - fs = fs.."dropdown[1,3.5;6,1;signal_off;" + fs = fs.."field[0.5,2;3,1;carid;"..(dmode and S("Dispatcher ID") or S("Car ID"))..";${carid}]" + fs = fs.."field[4.5,2;3,1;floor_on;"..S("Landing Number")..";${floor_on}]" + fs = fs.."box[0,3.25;9,0.1;#CCCCCC]" + fs = fs.."vertlabel[0.33,4;"..S("OFF").."]" + fs = fs.."dropdown[1,3.5;7,1;signal_off;" local selected_off = 1 local currentid_off = meta:get_string("signal_off") for k,v in ipairs(dmode and dinputoptions or inputoptions) do - fs = fs..minetest.formspec_escape(v.desc).."," + fs = fs..core.formspec_escape(v.desc).."," if v.id == currentid_off then selected_off = k end end fs = string.sub(fs,1,-2) fs = fs..";"..selected_off..";false]" - fs = fs.."field[4.5,5;3,1;floor_off;Landing Number;${floor_off}]" - fs = fs.."label[1.5,6.5;Not all signal options require a landing number.]" - fs = fs.."button_exit[2.5,7;3,1;save;Save]" + fs = fs.."field[4.5,5;3,1;floor_off;"..S("Landing Number")..";${floor_off}]" + fs = fs.."label[1.5,6.5;"..S("Not all signal options require a landing number.").."]" + fs = fs.."button_exit[2.5,7;3,1;save;"..S("Save").."]" meta:set_string("formspec",fs) end local function handleinputfields(pos,_,fields,player) if fields.quit and not fields.save then return end - local meta = minetest.get_meta(pos) + local meta = core.get_meta(pos) local name = player:get_player_name() - if minetest.is_protected(pos,name) and not minetest.check_player_privs(name,{protection_bypass=true}) then + if core.is_protected(pos,name) and not core.check_player_privs(name,{protection_bypass=true}) then if player:is_player() then - minetest.record_protection_violation(pos,name) + core.record_protection_violation(pos,name) end return end @@ -284,24 +286,24 @@ local function handleinputfields(pos,_,fields,player) if not tonumber(fields.carid) then return end meta:set_int("carid",fields.carid) local carid = tonumber(fields.carid) - local carinfo = minetest.deserialize(celevator.storage:get_string(string.format("car%d",carid))) or {} + local carinfo = core.deserialize(celevator.storage:get_string(string.format("car%d",carid))) or {} if dmode then if not carinfo.dispatcherpos then return end if not celevator.dispatcher.isdispatcher(carinfo.dispatcherpos) then return end - if minetest.is_protected(carinfo.dispatcherpos,name) and not minetest.check_player_privs(name,{protection_bypass=true}) then + if core.is_protected(carinfo.dispatcherpos,name) and not core.check_player_privs(name,{protection_bypass=true}) then if player:is_player() then - minetest.chat_send_player(name,"Can't connect to a dispatcher you don't have access to.") - minetest.record_protection_violation(carinfo.dispatcherpos,name) + core.chat_send_player(name,S("Can't connect to a dispatcher you don't have access to.")) + core.record_protection_violation(carinfo.dispatcherpos,name) end return end else if not carinfo.controllerpos then return end if not celevator.controller.iscontroller(carinfo.controllerpos) then return end - if minetest.is_protected(carinfo.controllerpos,name) and not minetest.check_player_privs(name,{protection_bypass=true}) then + if core.is_protected(carinfo.controllerpos,name) and not core.check_player_privs(name,{protection_bypass=true}) then if player:is_player() then - minetest.chat_send_player(name,"Can't connect to a controller you don't have access to.") - minetest.record_protection_violation(carinfo.controllerpos,name) + core.chat_send_player(name,S("Can't connect to a controller you don't have access to.")) + core.record_protection_violation(carinfo.controllerpos,name) end return end @@ -329,22 +331,22 @@ local function handleinputfields(pos,_,fields,player) meta:set_string("signal_on",def_on.id) meta:set_string("signal_off",def_off.id) updateinputform(pos) - local infotext = carid.." - "..def_on.desc..(def_on.needsfloor and " "..floor_on or "") + local infotext = " - "..def_on.desc..(def_on.needsfloor and " "..floor_on or "") if def_on.id == "none" or def_off.id ~= "none" then infotext = infotext.." / "..def_off.desc..(def_off.needsfloor and " "..floor_off or "") end if dmode then - infotext = "Dispatcher: "..infotext + infotext = S("Dispatcher: @1",carid)..infotext else - infotext = "Car: "..infotext + infotext = S("Car: @1",carid)..infotext end meta:set_string("infotext",infotext) if def_on.id ~= "none" or def_off.id ~= "none" then meta:set_string("formspec","") local momentary = def_off.id == "none" - local node = minetest.get_node(pos) + local node = core.get_node(pos) node.name = (momentary and "celevator:genericswitch_momentary_off" or "celevator:genericswitch_maintained_off") - minetest.swap_node(pos,node) + core.swap_node(pos,node) end elseif fields.tab then meta:set_int("dispatcher",tonumber(fields.tab)-1) @@ -353,10 +355,10 @@ local function handleinputfields(pos,_,fields,player) end local function handleinput(pos,on) - local meta = minetest.get_meta(pos) + local meta = core.get_meta(pos) local carid = meta:get_int("carid") if carid == 0 then return end - local carinfo = minetest.deserialize(celevator.storage:get_string(string.format("car%d",carid))) or {} + local carinfo = core.deserialize(celevator.storage:get_string(string.format("car%d",carid))) or {} local dmode = meta:get_int("dispatcher") == 1 if dmode then if not carinfo.dispatcherpos then return end @@ -382,8 +384,8 @@ local function handleinput(pos,on) end end -minetest.register_node("celevator:genericswitch",{ - description = "Elevator Keyswitch", +core.register_node("celevator:genericswitch",{ + description = S("Elevator Keyswitch"), tiles = { "celevator_cabinet_sides.png", "celevator_cabinet_sides.png", @@ -405,15 +407,15 @@ minetest.register_node("celevator:genericswitch",{ }, }, after_place_node = function(pos) - local meta = minetest.get_meta(pos) + local meta = core.get_meta(pos) meta:set_int("floor",1) updateinputform(pos) end, on_receive_fields = handleinputfields, }) -minetest.register_node("celevator:genericswitch_maintained_off",{ - description = "Elevator Keyswitch (maintained, off state - you hacker you!)", +core.register_node("celevator:genericswitch_maintained_off",{ + description = S("Elevator Keyswitch (maintained, off state - you hacker you!)"), tiles = { "celevator_cabinet_sides.png", "celevator_cabinet_sides.png", @@ -438,19 +440,19 @@ minetest.register_node("celevator:genericswitch_maintained_off",{ }, on_rightclick = function(pos,node,player) local name = player:get_player_name() - if minetest.is_protected(pos,name) and not minetest.check_player_privs(name,{protection_bypass=true}) then - minetest.chat_send_player(name,"You don't have a key for this switch.") - minetest.record_protection_violation(pos,name) + if core.is_protected(pos,name) and not core.check_player_privs(name,{protection_bypass=true}) then + core.chat_send_player(name,S("You don't have a key for this switch.")) + core.record_protection_violation(pos,name) return end node.name = "celevator:genericswitch_maintained_on" - minetest.swap_node(pos,node) + core.swap_node(pos,node) handleinput(pos,true) end, }) -minetest.register_node("celevator:genericswitch_maintained_on",{ - description = "Elevator Keyswitch (maintained, on state - you hacker you!)", +core.register_node("celevator:genericswitch_maintained_on",{ + description = S("Elevator Keyswitch (maintained, on state - you hacker you!)"), tiles = { "celevator_cabinet_sides.png", "celevator_cabinet_sides.png", @@ -475,19 +477,19 @@ minetest.register_node("celevator:genericswitch_maintained_on",{ }, on_rightclick = function(pos,node,player) local name = player:get_player_name() - if minetest.is_protected(pos,name) and not minetest.check_player_privs(name,{protection_bypass=true}) then - minetest.chat_send_player(name,"You don't have a key for this switch.") - minetest.record_protection_violation(pos,name) + if core.is_protected(pos,name) and not core.check_player_privs(name,{protection_bypass=true}) then + core.chat_send_player(name,S("You don't have a key for this switch.")) + core.record_protection_violation(pos,name) return end node.name = "celevator:genericswitch_maintained_off" - minetest.swap_node(pos,node) + core.swap_node(pos,node) handleinput(pos,false) end, }) -minetest.register_node("celevator:genericswitch_momentary_off",{ - description = "Elevator Keyswitch (momentary, off state - you hacker you!)", +core.register_node("celevator:genericswitch_momentary_off",{ + description = S("Elevator Keyswitch (momentary, off state - you hacker you!)"), tiles = { "celevator_cabinet_sides.png", "celevator_cabinet_sides.png", @@ -512,26 +514,26 @@ minetest.register_node("celevator:genericswitch_momentary_off",{ }, on_rightclick = function(pos,node,player) local name = player:get_player_name() - if minetest.is_protected(pos,name) and not minetest.check_player_privs(name,{protection_bypass=true}) then - minetest.chat_send_player(name,"You don't have a key for this switch.") - minetest.record_protection_violation(pos,name) + if core.is_protected(pos,name) and not core.check_player_privs(name,{protection_bypass=true}) then + core.chat_send_player(name,S("You don't have a key for this switch.")) + core.record_protection_violation(pos,name) return end node.name = "celevator:genericswitch_momentary_on" - minetest.swap_node(pos,node) + core.swap_node(pos,node) handleinput(pos,true) - minetest.after(1,function() - local newnode = minetest.get_node(pos) + core.after(1,function() + local newnode = core.get_node(pos) if newnode.name == "celevator:genericswitch_momentary_on" then newnode.name = "celevator:genericswitch_momentary_off" - minetest.swap_node(pos,newnode) + core.swap_node(pos,newnode) end end) end, }) -minetest.register_node("celevator:genericswitch_momentary_on",{ - description = "Elevator Keyswitch (momentary, on state - you hacker you!)", +core.register_node("celevator:genericswitch_momentary_on",{ + description = S("Elevator Keyswitch (momentary, on state - you hacker you!)"), tiles = { "celevator_cabinet_sides.png", "celevator_cabinet_sides.png", |
