if
XRAY_MODE == off
then
XRAY_ON = nil and
XRAY_OFF ~= nil
elseif
XRAY_MODE == on
then
XRAY_OFF = nil and
XRAY_ON ~= nil
end
local function xray_on(func)
XRAY_ON = func
end
local function xray_off(func)
XRAY_OFF = func
end
cornernote wrote:I removed "if XRAY_MODE == 'off' then" from the elseif, and just made it an else.
If XRAY_MODE is not "on", then it has to run the off stuff now.
same gist link
if param == 'on' then xray(on)
if param == 'on' then xray("on")
action = function(pos, node, active_object_count, active_object_count_wider)
if XRAY_MODE == on and XRAY_OFF == nil then <-- OPEN IF1
if node.name == "default:stone" then <-- OPEN IF2
minetest.env:add_node(pos,{name="xray:stone"})
elseif node.name == "default:gravel" then <-- ELSE IF2
minetest.env:add_node(pos,{name="xray:gravel"})
<-- I think you need to END here
elseif XRAY_MODE == off and XRAY_ON == nil then <-- ELSE IF2 -- i think you need an END before this
if node.name == "xray:stone" then
minetest.env:add_node(pos,{name="default:stone"})
elseif node.name == "xray:gravel" then
minetest.env:add_node(pos,{name="default:gravel"})
end
end <-- i moved this END upto the place it should be
end
end
minetest.register_abm({
nodenames = {"default:stone", "xray:stone", "default:gravel", "xray:gravel"},
interval = 0,
chance = 1,
action = function(pos, node, active_object_count, active_object_count_wider)
if XRAY_MODE == on and XRAY_OFF == nil then
if node.name == "default:stone" then
minetest.env:add_node(pos,{name="xray:stone"})
elseif node.name == "default:gravel" then
minetest.env:add_node(pos,{name="xray:gravel"})
elseif XRAY_MODE == off and XRAY_ON == nil then
if node.name == "xray:stone" then
minetest.env:add_node(pos,{name="default:stone"})
elseif node.name == "xray:gravel" then
minetest.env:add_node(pos,{name="default:gravel"})
end
end
end
end
})
Users browsing this forum: No registered users and 32 guests