remove ownership from anvil

master
Milan* 2017-10-25 15:59:49 +02:00
parent e40a4ee838
commit cab2825e4c
1 changed files with 28 additions and 26 deletions

View File

@ -86,46 +86,48 @@ minetest.register_node("cottages:anvil", {
meta:set_string("formspec", cottages_anvil_formspec );
end,
after_place_node = function(pos, placer)
local meta = minetest.get_meta(pos);
meta:set_string("owner", placer:get_player_name() or "");
meta:set_string("infotext", S("Anvil (owned by %s)"):format((meta:get_string("owner") or "")));
meta:set_string("formspec",
cottages_anvil_formspec,
"label[2.5,-0.5;"..S("Owner: %s"):format(meta:get_string('owner') or "").."]");
end,
--after_place_node = function(pos, placer)
--local meta = minetest.get_meta(pos);
--meta:set_string("owner", placer:get_player_name() or "");
--meta:set_string("infotext", S("Anvil (owned by %s)"):format((meta:get_string("owner") or "")));
-- meta:set_string("formspec",
-- cottages_anvil_formspec,
-- "label[2.5,-0.5;"..S("Owner: %s"):format(meta:get_string('owner') or "").."]");
--end,
can_dig = function(pos,player)
local meta = minetest.get_meta(pos);
local inv = meta:get_inventory();
local owner = meta:get_string('owner');
-- local owner = meta:get_string('owner');
if( not( inv:is_empty("input"))
-- or not( inv:is_empty("material"))
-- or not( inv:is_empty("sample"))
or not( inv:is_empty("hammer"))
or not( player )
or ( owner and owner ~= '' and player:get_player_name() ~= owner )) then
return false;
end
return true;
end,
or not( inv:is_empty("hammer")))
-- or not( player )
-- or ( owner and owner ~= '' and player:get_player_name() ~= owner ))]] then
then
return true;
--else
end
end,
-- return true;
-- end,
allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
local meta = minetest.get_meta(pos)
if( player and player:get_player_name() ~= meta:get_string('owner' ) and from_list~="input") then
return 0
end
--if( player and player:get_player_name() ~= meta:get_string('owner' ) and from_list~="input") then
-- return 0
--end
return count;
end,
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
local meta = minetest.get_meta(pos)
if( player and player:get_player_name() ~= meta:get_string('owner' ) and listname~="input") then
--[[if( player and player:get_player_name() ~= meta:get_string('owner' ) and listname~="input") then
return 0;
end
end]]
if( listname=='hammer' and stack and stack:get_name() ~= 'cottages:hammer') then
return 0;
end
@ -143,9 +145,9 @@ minetest.register_node("cottages:anvil", {
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
local meta = minetest.get_meta(pos)
if( player and player:get_player_name() ~= meta:get_string('owner' ) and listname~="input") then
--[[if( player and player:get_player_name() ~= meta:get_string('owner' ) and listname~="input") then
return 0
end
end]]
return stack:get_count()
end,
@ -172,10 +174,10 @@ minetest.register_node("cottages:anvil", {
or input:get_name() == "technic:water_can"
or input:get_name() == "technic:lava_can" ) then
meta:set_string("formspec",
--[[meta:set_string("formspec",
cottages_anvil_formspec,
"label[2.5,-0.5;"..S("Owner: %s"):format(meta:get_string('owner') or "").."]");
return;
return;]]
end
-- 65535 is max damage