Compare commits

...

5 Commits

Author SHA1 Message Date
Christophe Drevet c0a5a21bf8 fix buggy protector interface exit (#7) 2016-12-20 16:12:09 +01:00
Zeg9 498225cf95 Merge pull request #2 from kaeza/master
Some small fixes.
2014-02-25 21:47:30 +01:00
Zeg9 61012b3c0c Merge pull request #3 from Ginger88895/master
Fixed issues with unified_inventory
2014-02-25 21:44:40 +01:00
Ginger88895 a169234d2f Fixed issues with unified_inventory 2014-01-25 06:59:55 -05:00
kaeza 8bc0700a8d Misc fixes.
- Make local some variables which are meant to be local.
- Fix some indentation issues.
- Optimize `protector.set_member_list' a bit.
- Remove reference to deprecated `tile_images' field.
2013-11-11 10:48:27 -02:00
1 changed files with 19 additions and 21 deletions

View File

@ -15,22 +15,17 @@ protector.node = "protector:protect"
protector.item = "protector:stick"
protector.get_member_list = function(meta)
s = meta:get_string("members")
list = s:split(" ")
local s = meta:get_string("members")
local list = s:split(" ")
return list
end
protector.set_member_list = function(meta, list)
s = ""
for _, i in ipairs(list) do
s = s .. i .. " "
end
s = s:sub(0,s:len()-1) -- remove last space
meta:set_string("members",s)
meta:set_string("members", table.concat(list, " "))
end
protector.is_member = function (meta, name)
list = protector.get_member_list(meta)
local list = protector.get_member_list(meta)
for _, n in ipairs(list) do
if n == name then
return true
@ -41,13 +36,13 @@ end
protector.add_member = function(meta, name)
if protector.is_member(meta, name) then return end
list = protector.get_member_list(meta)
local list = protector.get_member_list(meta)
table.insert(list,name)
protector.set_member_list(meta,list)
end
protector.del_member = function(meta,name)
list = protector.get_member_list(meta)
local list = protector.get_member_list(meta)
for i, n in ipairs(list) do
if n == name then
table.remove(list, i)
@ -59,7 +54,7 @@ end
protector.generate_formspec = function (meta)
if meta:get_int("page") == nil then meta:set_int("page",0) end
formspec = "size[8,8]"
local formspec = "size[8,8]"
.."label[0,0;-- Protector interface --]"
.."label[0,1;Punch the node to show the protected area.]"
.."label[0,2;Current members:]"
@ -147,8 +142,9 @@ local old_node_dig = minetest.node_dig
function minetest.node_dig(pos, node, digger)
local ok=true
if node.name ~= protector.node then
ok = protector.can_dig(5,pos,digger)
else ok = protector.can_dig(5,pos,digger,true)
ok = protector.can_dig(5,pos,digger)
else
ok = protector.can_dig(5,pos,digger,true)
end
if ok == true then
old_node_dig(pos, node, digger)
@ -174,10 +170,10 @@ function minetest.item_place(itemstack, placer, pointed_thing)
end
return old_node_place(itemstack, placer, pointed_thing)
end
protect = {}
local protect = {}
minetest.register_node(protector.node, {
description = "Protection",
tile_images = {"protector_top.png","protector_top.png","protector_side.png"},
tiles = {"protector_top.png","protector_top.png","protector_side.png"},
sounds = default.node_sound_stone_defaults(),
groups = {dig_immediate=2},
drawtype = "nodebox",
@ -257,10 +253,12 @@ minetest.register_on_player_receive_fields(function(player,formname,fields)
if fields.protector_page_next then
meta:set_int("page",meta:get_int("page")+1)
end
minetest.show_formspec(
player:get_player_name(), formname,
protector.generate_formspec(meta)
)
if not fields.quit then
minetest.show_formspec(
player:get_player_name(), formname,
protector.generate_formspec(meta)
)
end
end
end)
@ -276,7 +274,7 @@ minetest.register_craftitem(protector.item, {
})
minetest.register_craft({
output = '"' .. protector.node .. '" 4',
output = protector.node .. " 4",
recipe = {
{"default:stone","default:stone","default:stone"},
{"default:stone","default:steel_ingot","default:stone"},