forked from VoxeLibre/VoxeLibre
Add screwdriver support to doors
This commit is contained in:
parent
d21e959055
commit
cfa77288c1
|
@ -287,7 +287,17 @@ function mcl_doors:register_door(name, def)
|
||||||
action_on = on_mesecons_signal_open,
|
action_on = on_mesecons_signal_open,
|
||||||
}},
|
}},
|
||||||
|
|
||||||
on_rotate = false,
|
on_rotate = function(pos, node, user, mode, param2)
|
||||||
|
if mode == screwdriver.ROTATE_FACE then
|
||||||
|
minetest.remove_node(pos)
|
||||||
|
node.param2 = screwdriver.rotate.facedir(pos, node, mode)
|
||||||
|
minetest.set_node(pos, node)
|
||||||
|
node.name = name .."_t_1"
|
||||||
|
minetest.set_node({x=pos.x,y=pos.y+1,z=pos.z}, node)
|
||||||
|
return true
|
||||||
|
end
|
||||||
|
return false
|
||||||
|
end,
|
||||||
|
|
||||||
can_dig = check_player_priv,
|
can_dig = check_player_priv,
|
||||||
})
|
})
|
||||||
|
@ -336,7 +346,17 @@ function mcl_doors:register_door(name, def)
|
||||||
action_on = on_mesecons_signal_open_top,
|
action_on = on_mesecons_signal_open_top,
|
||||||
}},
|
}},
|
||||||
|
|
||||||
on_rotate = false,
|
on_rotate = function(pos, node, user, mode, param2)
|
||||||
|
if mode == screwdriver.ROTATE_FACE then
|
||||||
|
minetest.remove_node(pos)
|
||||||
|
node.param2 = screwdriver.rotate.facedir(pos, node, mode)
|
||||||
|
minetest.set_node(pos, node)
|
||||||
|
node.name = name .."_b_1"
|
||||||
|
minetest.set_node({x=pos.x,y=pos.y-1,z=pos.z}, node)
|
||||||
|
return true
|
||||||
|
end
|
||||||
|
return false
|
||||||
|
end,
|
||||||
|
|
||||||
can_dig = check_player_priv,
|
can_dig = check_player_priv,
|
||||||
})
|
})
|
||||||
|
@ -385,7 +405,17 @@ function mcl_doors:register_door(name, def)
|
||||||
action_off = on_mesecons_signal_close,
|
action_off = on_mesecons_signal_close,
|
||||||
}},
|
}},
|
||||||
|
|
||||||
on_rotate = false,
|
on_rotate = function(pos, node, user, mode, param2)
|
||||||
|
if mode == screwdriver.ROTATE_FACE then
|
||||||
|
minetest.remove_node(pos)
|
||||||
|
node.param2 = screwdriver.rotate.facedir(pos, node, mode)
|
||||||
|
minetest.set_node(pos, node)
|
||||||
|
node.name = name .."_t_2"
|
||||||
|
minetest.set_node({x=pos.x,y=pos.y+1,z=pos.z}, node)
|
||||||
|
return true
|
||||||
|
end
|
||||||
|
return false
|
||||||
|
end,
|
||||||
|
|
||||||
can_dig = check_player_priv,
|
can_dig = check_player_priv,
|
||||||
})
|
})
|
||||||
|
@ -434,7 +464,17 @@ function mcl_doors:register_door(name, def)
|
||||||
action_off = on_mesecons_signal_close_top,
|
action_off = on_mesecons_signal_close_top,
|
||||||
}},
|
}},
|
||||||
|
|
||||||
on_rotate = false,
|
on_rotate = function(pos, node, user, mode, param2)
|
||||||
|
if mode == screwdriver.ROTATE_FACE then
|
||||||
|
minetest.remove_node(pos)
|
||||||
|
node.param2 = screwdriver.rotate.facedir(pos, node, mode)
|
||||||
|
minetest.set_node(pos, node)
|
||||||
|
node.name = name .."_b_2"
|
||||||
|
minetest.set_node({x=pos.x,y=pos.y-1,z=pos.z}, node)
|
||||||
|
return true
|
||||||
|
end
|
||||||
|
return false
|
||||||
|
end,
|
||||||
|
|
||||||
can_dig = check_player_priv,
|
can_dig = check_player_priv,
|
||||||
})
|
})
|
||||||
|
|
Loading…
Reference in New Issue