From 8bb8a49701c1dc937139ca319f1c59b53f79987b Mon Sep 17 00:00:00 2001 From: octacian Date: Wed, 1 Mar 2017 17:30:50 -0800 Subject: [PATCH] Add `disabled` definition property --- api.lua | 28 ++++++++++++++++++++++++++++ doc/api.md | 2 ++ modules/ores/init.lua | 4 +++- 3 files changed, 33 insertions(+), 1 deletion(-) diff --git a/api.lua b/api.lua index 89fcbc9..0e782fb 100644 --- a/api.lua +++ b/api.lua @@ -3,6 +3,11 @@ local BASENAME = "microexpansion" -- [function] Register Recipe function microexpansion.register_recipe(output, recipe) + -- Check if disabled + if recipe.disabled == true then + return + end + local function isint(n) return n==math.floor(n) end @@ -29,12 +34,22 @@ function microexpansion.register_recipe(output, recipe) end for _, i in ipairs(recipe) do + -- Check if disabled + if recipe.disabled == true then + return + end + register(_) end end -- [function] Register oredef function microexpansion.register_oredef(ore, def) + -- Check if disabled + if def.disabled == true then + return + end + local function register(_) local def = def[_] def.ore = "microexpansion:"..ore @@ -42,6 +57,11 @@ function microexpansion.register_oredef(ore, def) end for _, i in ipairs(def) do + -- Check if disabled + if def.disabled == true then + return + end + register(_) end end @@ -59,6 +79,10 @@ end -- [function] Register Item function microexpansion.register_item(itemstring, def) + -- Check if disabled + if def.disabled == true then + return + end -- Set usedfor if def.usedfor then def.description = def.description .. "\n"..minetest.colorize("grey", def.usedfor) @@ -83,6 +107,10 @@ end -- [function] Register Node function microexpansion.register_node(itemstring, def) + -- Check if disabled + if def.disabled == true then + return + end -- Set usedfor if def.usedfor then def.description = def.description .. "\n"..minetest.colorize("grey", def.usedfor) diff --git a/doc/api.md b/doc/api.md index 8fc716f..be924d1 100644 --- a/doc/api.md +++ b/doc/api.md @@ -1,6 +1,8 @@ # Core API The core API is composed of several functions to make registering new items, nodes, and recipes for items and nodes more efficient and intuitive. Code for this public API is in `./api.lua`. This documentation is divided up per function. +__Note:__ Any definition table for registering anything using the ME API allow a `disabled` property to be specified. If set to `false`, the node/item will not be registered, if not set, it will. + #### `register_recipe(output, def)` __Usage:__ `microexpansion.register_recipe(, )` diff --git a/modules/ores/init.lua b/modules/ores/init.lua index d4072d2..62b0e27 100644 --- a/modules/ores/init.lua +++ b/modules/ores/init.lua @@ -20,6 +20,7 @@ me.register_node("incranium", { y_max = -90, }, }, + disabled = true, }) -- "Supernatet", pronounced "Super-nat-et" is Latin for "float", this ore will @@ -39,5 +40,6 @@ me.register_node("supernatet", { clust_size = 3, y_min = -300, y_max = -90, - } + }, + status = "unstable", })