diff options
-rw-r--r-- | api_action_on.lua (renamed from api.lua) | 4 | ||||
-rw-r--r-- | api_nodetimer.lua | 49 | ||||
-rw-r--r-- | depends.txt | 3 | ||||
-rw-r--r-- | flush.lua | 2 | ||||
-rw-r--r-- | globalstep.lua | 4 | ||||
-rw-r--r-- | init.lua | 4 | ||||
-rw-r--r-- | privs.lua | 4 | ||||
-rw-r--r-- | readme.md | 38 | ||||
-rw-r--r-- | register.lua | 47 |
9 files changed, 146 insertions, 9 deletions
diff --git a/api.lua b/api_action_on.lua index 87fb2e9..6046f90 100644 --- a/api.lua +++ b/api_action_on.lua @@ -29,7 +29,7 @@ mesecons_debug.register_action_on_toggle = function(def) minetest.register_chatcommand("mesecons_debug_disable_" .. def.suffix, { description = "disables the mesecon action_on() function for " .. def.node, - privs = {server=true}, + privs = {mesecons_debug=true}, func = function() enabled = false return true, "Disabled action_on() for " .. def.node @@ -38,7 +38,7 @@ mesecons_debug.register_action_on_toggle = function(def) minetest.register_chatcommand("mesecons_debug_enable_" .. def.suffix, { description = "enables the mesecon action_on() function for " .. def.node, - privs = {server=true}, + privs = {mesecons_debug=true}, func = function() enabled = true return true, "Enabled action_on() for " .. def.node diff --git a/api_nodetimer.lua b/api_nodetimer.lua new file mode 100644 index 0000000..8e64277 --- /dev/null +++ b/api_nodetimer.lua @@ -0,0 +1,49 @@ + + +-- node.on_timer wrapper +-- def = { node = "", suffix = "" } +mesecons_debug.register_nodetimer_toggle = function(def) + + local nodedef = minetest.registered_nodes[def.node] + + local old_on_timer = nodedef and nodedef.on_timer + + if not old_on_timer then + minetest.log( + "action", + "[mesecons_debug] invalid definition for " .. def.node + ) + return + end + + local enabled = true + + nodedef.on_timer = function(...) + if enabled then + return old_on_timer(...) + else + -- rerun nodetimer again + return true + end + end + + minetest.register_chatcommand("mesecons_debug_disable_" .. def.suffix, { + description = "disables the nodetimer for " .. def.node, + privs = {mesecons_debug=true}, + func = function() + enabled = false + return true, "Disabled nodetimer for " .. def.node + end + }) + + minetest.register_chatcommand("mesecons_debug_enable_" .. def.suffix, { + description = "enables the nodetimer for " .. def.node, + privs = {mesecons_debug=true}, + func = function() + enabled = true + return true, "Enabled nodetimer for " .. def.node + end + }) + + +end diff --git a/depends.txt b/depends.txt index acaa924..135c0aa 100644 --- a/depends.txt +++ b/depends.txt @@ -1 +1,4 @@ mesecons +mesecons_blinkyplant? +pipeworks? +technic? @@ -2,7 +2,7 @@ minetest.register_chatcommand("mesecons_flush", { description = "flushes the mesecon actionqueue", - privs = {server=true}, + privs = {mesecons_debug=true}, func = function(name) minetest.log("warning", "Player " .. name .. " flushes mesecon actionqueue") mesecon.queue.actions = {} diff --git a/globalstep.lua b/globalstep.lua index 8b40669..6b02128 100644 --- a/globalstep.lua +++ b/globalstep.lua @@ -45,7 +45,7 @@ end minetest.register_chatcommand("mesecons_enable", { description = "enables the mesecons globlastep", - privs = {server=true}, + privs = {mesecons_debug=true}, func = function() enabled = true return true, "mesecons enabled" @@ -54,7 +54,7 @@ minetest.register_chatcommand("mesecons_enable", { minetest.register_chatcommand("mesecons_disable", { description = "disables the mesecons globlastep", - privs = {server=true}, + privs = {mesecons_debug=true}, func = function() enabled = false -- flush actions, while we are on it @@ -2,7 +2,9 @@ local MP = minetest.get_modpath("mesecons_debug") mesecons_debug = {} -dofile(MP.."/api.lua") +dofile(MP.."/privs.lua") +dofile(MP.."/api_action_on.lua") +dofile(MP.."/api_nodetimer.lua") dofile(MP.."/register.lua") dofile(MP.."/flush.lua") dofile(MP.."/globalstep.lua") diff --git a/privs.lua b/privs.lua new file mode 100644 index 0000000..eededf9 --- /dev/null +++ b/privs.lua @@ -0,0 +1,4 @@ + +minetest.register_privilege("mesecons_debug", { + description = "Allows execution of mesecon debug chatcommands" +}) @@ -1,7 +1,43 @@ Mesecons debug collection ================== +# Chatcommands +All of those require the `mesecons_debug` priv +## mesecons executor -mesecons_debug_disable_ +* `/mesecons_flush` +* `/mesecons_enable` +* `/mesecons_disable` + +## various nodes action_on() effector + +* `mesecons_debug_enable_pipeworks_filter` +* `mesecons_debug_disable_pipeworks_filter` + +* `mesecons_debug_enable_pipeworks_mese_filter` +* `mesecons_debug_disable_pipeworks_mese_filter` + +* `mesecons_debug_enable_pipeworks_dispenser` +* `mesecons_debug_disable_pipeworks_dispenser` + +* `mesecons_debug_enable_pipeworks_deployer` +* `mesecons_debug_disable_pipeworks_deployer` + +* `mesecons_debug_enable_pipeworks_nodebreaker` +* `mesecons_debug_disable_pipeworks_nodebreaker` + +* `mesecons_debug_enable_constructor_mk1` +* `mesecons_debug_disable_constructor_mk1` + +* `mesecons_debug_enable_constructor_mk2` +* `mesecons_debug_disable_constructor_mk2` + +* `mesecons_debug_enable_constructor_mk3` +* `mesecons_debug_disable_constructor_mk3` + +## Various nodes on_timer() call + +* `mesecons_debug_enable_blinky_plant` +* `mesecons_debug_disable_blinky_plant` diff --git a/register.lua b/register.lua index 22c836b..ba2ece8 100644 --- a/register.lua +++ b/register.lua @@ -1,6 +1,49 @@ +-- mesecons.effector.action_on mesecons_debug.register_action_on_toggle({ - node = "", - suffix = "" + node = "pipeworks:filter", + suffix = "pipeworks_filter" +}) + +mesecons_debug.register_action_on_toggle({ + node = "pipeworks:mese_filter", + suffix = "pipeworks_mese_filter" +}) + +mesecons_debug.register_action_on_toggle({ + node = "pipeworks:dispenser_off", + suffix = "pipeworks_dispenser" +}) + +mesecons_debug.register_action_on_toggle({ + node = "pipeworks:deployer_off", + suffix = "pipeworks_deployer" +}) + +mesecons_debug.register_action_on_toggle({ + node = "pipeworks:nodebreaker_off", + suffix = "pipeworks_nodebreaker" +}) + +mesecons_debug.register_action_on_toggle({ + node = "technic:constructor_mk1_off", + suffix = "constructor_mk1" +}) + +mesecons_debug.register_action_on_toggle({ + node = "technic:constructor_mk2_off", + suffix = "constructor_mk2" +}) + +mesecons_debug.register_action_on_toggle({ + node = "technic:constructor_mk3_off", + suffix = "constructor_mk3" +}) + +-- nodetimer + +mesecons_debug.register_nodetimer_toggle({ + node = "mesecons_blinkyplant:blinky_plant_off", + suffix = "blinky_plant" }) |