mirror of
https://github.com/sbrl/Minetest-WorldEditAdditions.git
synced 2024-11-15 20:52:59 +00:00
check (maybe working?)
This commit is contained in:
parent
f9ac0e65ec
commit
e5443bc3ce
1 changed files with 24 additions and 12 deletions
|
@ -1,14 +1,26 @@
|
|||
function worldeditadditions_core.register_command(def)
|
||||
local def = table.copy(def)
|
||||
assert(name and #name > 0)
|
||||
assert(def.privs)
|
||||
function worldeditadditions_core.check_command(name, def)
|
||||
if not (name and #name > 0) then
|
||||
return false, "Error: No command name."
|
||||
end
|
||||
if not def.privs then
|
||||
return false, "Error: privs is nill. Expected table."
|
||||
end
|
||||
def.require_pos = def.require_pos or 0
|
||||
assert(def.require_pos >= 0 and def.require_pos < 3)
|
||||
if def.params == "" and not def.parse then
|
||||
if not (def.require_pos >= 0 and def.require_pos < 3) then
|
||||
return false, "Error: require_pos must be greater than -1 and less than 3."
|
||||
end
|
||||
if not def.parse then
|
||||
if def.params == "" then
|
||||
def.parse = function(params_text) return true end
|
||||
else
|
||||
assert(def.parse)
|
||||
return false, "Error: parse function is invalid."
|
||||
end
|
||||
assert(def.nodes_needed == nil or type(def.nodes_needed) == "function")
|
||||
assert(def.func)
|
||||
end
|
||||
if not (def.nodes_needed == nil or type(def.nodes_needed) == "function") then
|
||||
return false, "Error: nodes_needed must be nil or function."
|
||||
end
|
||||
if not def.func then
|
||||
return false, "Error: main function is invalid."
|
||||
end
|
||||
return true
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue