refactor tanks, add xgui with template

This commit is contained in:
Jordan Snelling 2014-07-05 22:41:36 +01:00
parent fa08dfe6f9
commit bcc2d66d58
21 changed files with 653 additions and 97 deletions

View File

@ -158,6 +158,17 @@ minetest.register_node("deco:chest", {
tiles = {"deco_chest_top.png", "deco_chest_top.png", "deco_chest_side.png",
"deco_chest_side.png", "deco_chest_side.png", "deco_chest_front.png"},
paramtype2 = "facedir",
drawtype = "nodebox",
paramtype = "light",
node_box = {
type = "fixed",
fixed = {
{-0.4375, -0.5, -0.4375, 0.4375, 0.4375, 0.4375}, -- MainBody
{-0.125, -0.0625, -0.5, -0.0625, 0.0625, -0.4375}, -- LockingPinP1
{0.0625, -0.125, -0.4375, -0.0625, 0.0625, -0.5}, -- LockingPinP2
{0.0625, -0.0625, -0.5, 0.125, 0.0625, -0.4375}, -- LockingPinP3
}
},
groups = {choppy=2,oddly_breakable_by_hand=2},
legacy_facedir_simple = true,
is_ground_content = false,
@ -203,6 +214,17 @@ end
minetest.register_node("deco:chest_locked", {
description = "Locked Chest",
drawtype = "nodebox",
paramtype = "light",
node_box = {
type = "fixed",
fixed = {
{-0.4375, -0.5, -0.4375, 0.4375, 0.4375, 0.4375}, -- MainBody
{-0.125, -0.0625, -0.5, -0.0625, 0.25, -0.4375}, -- LockingPinP1
{0.0625, -0.125, -0.4375, -0.0625, 0.1875, -0.5}, -- LockingPinP2
{0.0625, -0.0625, -0.5, 0.125, 0.25, -0.4375}, -- LockingPinP3
}
},
tiles = {"deco_chest_top.png", "deco_chest_top.png", "deco_chest_side.png",
"deco_chest_side.png", "deco_chest_side.png", "deco_chest_lock.png"},
paramtype2 = "facedir",

Binary file not shown.

Before

Width:  |  Height:  |  Size: 761 B

After

Width:  |  Height:  |  Size: 813 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 864 B

After

Width:  |  Height:  |  Size: 855 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 709 B

After

Width:  |  Height:  |  Size: 774 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 627 B

After

Width:  |  Height:  |  Size: 705 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 612 B

View File

@ -33,6 +33,21 @@ minetest.register_biome({
humidity_point = 45,
})
minetest.register_biome({
name = "soapstone",
node_top = "mapgen:grass",
depth_top = 1,
node_filler = "mapgen:soap_stone",
depth_filler = 40,
node_dust = "air",
height_min = 10,
height_max = 30000,
heat_point = 35,
humidity_point = 34,
})
minetest.register_biome({
name = "snowy_plains",

View File

@ -871,6 +871,18 @@ minetest.register_node("mapgen:wheat_grass_5", {
end,
})
--
-- don't drop the *soap*stone
--
minetest.register_node("mapgen:soap_stone", {
description = "Soap Stone",
tiles = {"mapgen_soap_stone.png"},
groups = {cracky=2, stone=1},
is_ground_content = true,
sounds = default.node_sound_stone_defaults(),
})
---
--- Stuff
---

Binary file not shown.

After

Width:  |  Height:  |  Size: 705 B

View File

@ -290,7 +290,7 @@ minetest.register_node("ores:oil_flowing", {
liquid_alternative_source = "ores:oil_source",
liquid_viscosity = 12,
post_effect_color = {a=250, r=10, g=10, b=10},
groups = {water=3, liquid=3, flammable=1},
groups = {liquid=3, flammable=1},
})
minetest.register_node("ores:oil_source", {
@ -323,5 +323,5 @@ minetest.register_node("ores:oil_source", {
liquid_alternative_source = "ores:oil_source",
liquid_viscosity = 12,
post_effect_color = {a=250, r=10, g=10, b=10},
groups = {water=3, liquid=3, flammable=1},
groups = {liquid=3, flammable=1},
})

View File

@ -146,98 +146,491 @@ register_tank("o", 1)
-- black magic here
-- minetest.register_on_punchnode(function(pos, node, puncher)
-- if not puncher then return end
-- tnodename = minetest.get_node(pos)
-- bname = puncher:get_wielded_item():get_name()
minetest.register_on_punchnode(function(pos, node, puncher)
if not puncher then return end
tnodepos = pos
-- for level=1,8 do
-- if tnodename.name == "tanks:level_0" then
-- if bname == "bucket:oil" then
-- puncher:set_wielded_item("bucket:bucket_empty 1")
-- minetest.set_node(pos, {name="tanks:o_level_1"})
-- end
-- end
--store the highest tank point to be drained
highpoint = 1
-- if tnodename.name == "tanks:o_level_"..level then
-- if bname == "bucket:bucket_empty" then
-- puncher:set_wielded_item("bucket:oil 1")
-- if tnodename.name == "tanks:o_level_1" then
-- minetest.set_node(pos, {name="tanks:level_0"})
-- else
-- minetest.set_node(pos, {name="tanks:o_level_"..level-1})
-- end
-- end
-- if bname == "bucket:oil" then
-- if tnodename.name == "tanks:o_level_8" then
-- --nothing
-- else
-- minetest.set_node(pos, {name="tanks:o_level_"..level+1})
-- puncher:set_wielded_item("bucket:bucket_empty 1")
-- end
-- end
-- --level = level + 1
-- end
-- end
tnodename = minetest.get_node(pos)
bname = puncher:get_wielded_item():get_name()
-- for level=1,8 do
-- if tnodename.name == "tanks:level_0" then
-- if bname == "bucket:bucket_water" then
-- puncher:set_wielded_item("bucket:bucket_empty 1")
-- minetest.set_node(pos, {name="tanks:w_level_1"})
-- end
-- end
for level=1,8 do
if tnodename.name == "tanks:level_0" then
if bname == "bucket:oil" then
puncher:set_wielded_item("bucket:bucket_empty 1")
minetest.set_node(pos, {name="tanks:o_level_1"})
end
end
-- if tnodename.name == "tanks:w_level_"..level then
-- if bname == "bucket:bucket_empty" then
-- puncher:set_wielded_item("bucket:bucket_water 1")
-- if tnodename.name == "tanks:w_level_1" then
-- minetest.set_node(pos, {name="tanks:level_0"})
-- else
-- minetest.set_node(pos, {name="tanks:w_level_"..level-1})
-- end
-- end
-- end
if tnodename.name == "tanks:o_level_"..level then
if bname == "bucket:bucket_empty" then
-- if bname == "bucket:bucket_water" then
-- if tnodename.name == "tanks:w_level_8" then
-- --do nothing
-- else
-- minetest.set_node(pos, {name="tanks:w_level_"..level+1})
-- puncher:set_wielded_item("bucket:bucket_empty 1")
-- end
-- end
-- end
-- end
if tnodename.name == "tanks:o_level_1" then
minetest.set_node(pos, {name="tanks:level_0"})
puncher:set_wielded_item("bucket:oil 1")
else
nodeset = "false"
for nodeup=1,16 do
tnodepos.y = tnodepos.y + 1
abovenode = minetest.get_node(tnodepos)
--print (abovenode.name)
if abovenode.name == "tanks:o_level_8" or abovenode.name == "tanks:o_level_1" or abovenode.name == "tanks:o_level_2" or abovenode.name == "tanks:o_level_3" or abovenode.name == "tanks:o_level_4" or abovenode.name == "tanks:o_level_5" or abovenode.name == "tanks:o_level_6" or abovenode.name == "tanks:o_level_7" then
--do nothing
else
highpoint = nodeup
print ('high point found at '..highpoint)
tnodepos.y = tnodepos.y-nodeup --reset tnodepos
break
end
end
-- for level=1,8 do
-- if tnodename.name == "tanks:level_0" then
-- if bname == "bucket:bucket_lava" then
-- puncher:set_wielded_item("bucket:bucket_empty 1")
-- minetest.set_node(pos, {name="tanks:l_level_1"})
-- end
-- end
abovenode = minetest.get_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z})
-- if tnodename.name == "tanks:l_level_"..level then
-- if bname == "bucket:bucket_empty" then
-- puncher:set_wielded_item("bucket:bucket_lava 1")
-- if tnodename.name == "tanks:l_level_1" then
-- minetest.set_node(pos, {name="tanks:level_0"})
-- else
-- minetest.set_node(pos, {name="tanks:l_level_"..level-1})
-- end
-- end
nodeset = "false"
-- if bname == "bucket:bucket_lava" then
-- if tnodename.name == "tanks:l_level_8" then
-- --do nothing
-- else
-- minetest.set_node(pos, {name="tanks:l_level_"..level+1})
-- puncher:set_wielded_item("bucket:bucket_empty 1")
-- end
-- end
-- end
-- end
if abovenode.name == "tanks:o_level_1" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:level_0"})
puncher:set_wielded_item("bucket:oil 1")
nodeset = "true"
end
-- end)
if abovenode.name == "tanks:o_level_2" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:o_level_1"})
puncher:set_wielded_item("bucket:oil 1")
nodeset = "true"
end
if abovenode.name == "tanks:o_level_3" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:o_level_2"})
puncher:set_wielded_item("bucket:oil 1")
nodeset = "true"
end
if abovenode.name == "tanks:o_level_4" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:o_level_3"})
puncher:set_wielded_item("bucket:oil 1")
nodeset = "true"
end
if abovenode.name == "tanks:o_level_5" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:o_level_4"})
puncher:set_wielded_item("bucket:oil 1")
nodeset = "true"
end
if abovenode.name == "tanks:o_level_6" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:o_level_5"})
puncher:set_wielded_item("bucket:oil 1")
nodeset = "true"
end
if abovenode.name == "tanks:o_level_7" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:o_level_6"})
puncher:set_wielded_item("bucket:oil 1")
nodeset = "true"
end
if abovenode.name == "tanks:o_level_8" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:o_level_7"})
puncher:set_wielded_item("bucket:oil 1")
nodeset = "true"
end
abovenode = minetest.get_node({x=pos.x, y=pos.y+1, z=pos.z})
if abovenode.name:find("tanks:level_0", 1, true) ~= nil and nodeset == "false" then
minetest.set_node(pos, {name="tanks:o_level_"..level-1})
puncher:set_wielded_item("bucket:oil 1")
nodeset = "true"
end
end
end
if bname == "bucket:oil" then
if tnodename.name == "tanks:o_level_8" then
nodeset = "false"
for nodeup=1,16 do
tnodepos.y = tnodepos.y + 1
abovenode = minetest.get_node(tnodepos)
if abovenode.name == "tanks:level_0" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:o_level_1"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:o_level_1" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:o_level_2"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:o_level_2" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:o_level_3"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:o_level_3" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:o_level_4"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:o_level_4" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:o_level_5"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:o_level_5" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:o_level_6"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:o_level_6" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:o_level_7"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:o_level_7" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:o_level_8"})
puncher:set_wielded_item("bucket:bucket_empty 1")
--return
end
if abovenode.name:find("level_0", 1, true) == true then
print 'broke loop, tank not found'
break
end
end
else
minetest.set_node(pos, {name="tanks:o_level_"..level+1})
puncher:set_wielded_item("bucket:bucket_empty 1")
end
end
end
end
for level=1,8 do
if tnodename.name == "tanks:level_0" then
if bname == "bucket:bucket_water" then
puncher:set_wielded_item("bucket:bucket_empty 1")
minetest.set_node(pos, {name="tanks:w_level_1"})
end
end
if tnodename.name == "tanks:w_level_"..level then
if bname == "bucket:bucket_empty" then
if tnodename.name == "tanks:w_level_1" then
minetest.set_node(pos, {name="tanks:level_0"})
puncher:set_wielded_item("bucket:bucket_water 1")
else
nodeset = "false"
for nodeup=1,16 do
tnodepos.y = tnodepos.y + 1
abovenode = minetest.get_node(tnodepos)
--print (abovenode.name)
if abovenode.name == "tanks:w_level_8" or abovenode.name == "tanks:w_level_1" or abovenode.name == "tanks:w_level_2" or abovenode.name == "tanks:w_level_3" or abovenode.name == "tanks:w_level_4" or abovenode.name == "tanks:w_level_5" or abovenode.name == "tanks:w_level_6" or abovenode.name == "tanks:w_level_7" then
--do nothing
else
highpoint = nodeup
print ('high point found at '..highpoint)
tnodepos.y = tnodepos.y-nodeup --reset tnodepos
break
end
end
abovenode = minetest.get_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z})
nodeset = "false"
if abovenode.name == "tanks:w_level_1" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:level_0"})
puncher:set_wielded_item("bucket:bucket_water 1")
nodeset = "true"
end
if abovenode.name == "tanks:w_level_2" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:w_level_1"})
puncher:set_wielded_item("bucket:bucket_water 1")
nodeset = "true"
end
if abovenode.name == "tanks:w_level_3" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:w_level_2"})
puncher:set_wielded_item("bucket:bucket_water 1")
nodeset = "true"
end
if abovenode.name == "tanks:w_level_4" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:w_level_3"})
puncher:set_wielded_item("bucket:bucket_water 1")
nodeset = "true"
end
if abovenode.name == "tanks:w_level_5" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:w_level_4"})
puncher:set_wielded_item("bucket:bucket_water 1")
nodeset = "true"
end
if abovenode.name == "tanks:w_level_6" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:w_level_5"})
puncher:set_wielded_item("bucket:bucket_water 1")
nodeset = "true"
end
if abovenode.name == "tanks:w_level_7" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:w_level_6"})
puncher:set_wielded_item("bucket:bucket_water 1")
nodeset = "true"
end
if abovenode.name == "tanks:w_level_8" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:w_level_7"})
puncher:set_wielded_item("bucket:bucket_water 1")
nodeset = "true"
end
abovenode = minetest.get_node({x=pos.x, y=pos.y+1, z=pos.z})
if abovenode.name:find("tanks:level_0", 1, true) ~= nil and nodeset == "false" then
minetest.set_node(pos, {name="tanks:w_level_"..level-1})
puncher:set_wielded_item("bucket:bucket_water 1")
nodeset = "true"
end
end
end
if bname == "bucket:bucket_water" then
if tnodename.name == "tanks:w_level_8" then
nodeset = "false"
for nodeup=1,16 do
tnodepos.y = tnodepos.y + 1
abovenode = minetest.get_node(tnodepos)
if abovenode.name == "tanks:level_0" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:w_level_1"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:w_level_1" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:w_level_2"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:w_level_2" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:w_level_3"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:w_level_3" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:w_level_4"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:w_level_4" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:w_level_5"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:w_level_5" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:w_level_6"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:w_level_6" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:w_level_7"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:w_level_7" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:w_level_8"})
puncher:set_wielded_item("bucket:bucket_empty 1")
--return
end
if abovenode.name:find("level_0", 1, true) == true then
print 'broke loop, tank not found'
break
end
end
else
minetest.set_node(pos, {name="tanks:w_level_"..level+1})
puncher:set_wielded_item("bucket:bucket_empty 1")
end
end
end
end
for level=1,8 do
if tnodename.name == "tanks:level_0" then
if bname == "bucket:bucket_lava" then
puncher:set_wielded_item("bucket:bucket_empty 1")
minetest.set_node(pos, {name="tanks:l_level_1"})
end
end
if tnodename.name == "tanks:l_level_"..level then
if bname == "bucket:bucket_empty" then
if tnodename.name == "tanks:l_level_1" then
minetest.set_node(pos, {name="tanks:level_0"})
puncher:set_wielded_item("bucket:bucket_lava 1")
else
nodeset = "false"
for nodeup=1,16 do
tnodepos.y = tnodepos.y + 1
abovenode = minetest.get_node(tnodepos)
--print (abovenode.name)
if abovenode.name == "tanks:l_level_8" or abovenode.name == "tanks:l_level_1" or abovenode.name == "tanks:l_level_2" or abovenode.name == "tanks:l_level_3" or abovenode.name == "tanks:l_level_4" or abovenode.name == "tanks:l_level_5" or abovenode.name == "tanks:l_level_6" or abovenode.name == "tanks:l_level_7" then
--do nothing
else
highpoint = nodeup
print ('high point found at '..highpoint)
tnodepos.y = tnodepos.y-nodeup --reset tnodepos
break
end
end
abovenode = minetest.get_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z})
nodeset = "false"
if abovenode.name == "tanks:l_level_1" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:level_0"})
puncher:set_wielded_item("bucket:bucket_lava 1")
nodeset = "true"
end
if abovenode.name == "tanks:l_level_2" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:l_level_1"})
puncher:set_wielded_item("bucket:bucket_lava 1")
nodeset = "true"
end
if abovenode.name == "tanks:l_level_3" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:l_level_2"})
puncher:set_wielded_item("bucket:bucket_lava 1")
nodeset = "true"
end
if abovenode.name == "tanks:l_level_4" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:l_level_3"})
puncher:set_wielded_item("bucket:bucket_lava 1")
nodeset = "true"
end
if abovenode.name == "tanks:l_level_5" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:l_level_4"})
puncher:set_wielded_item("bucket:bucket_lava 1")
nodeset = "true"
end
if abovenode.name == "tanks:l_level_6" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:l_level_5"})
puncher:set_wielded_item("bucket:bucket_lava 1")
nodeset = "true"
end
if abovenode.name == "tanks:l_level_7" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:l_level_6"})
puncher:set_wielded_item("bucket:bucket_lava 1")
nodeset = "true"
end
if abovenode.name == "tanks:l_level_8" and nodeset == "false" then
minetest.set_node({x=pos.x, y=pos.y+highpoint-1, z=pos.z}, {name="tanks:l_level_7"})
puncher:set_wielded_item("bucket:bucket_lava 1")
nodeset = "true"
end
abovenode = minetest.get_node({x=pos.x, y=pos.y+1, z=pos.z})
if abovenode.name:find("tanks:level_0", 1, true) ~= nil and nodeset == "false" then
minetest.set_node(pos, {name="tanks:l_level_"..level-1})
puncher:set_wielded_item("bucket:bucket_lava 1")
nodeset = "true"
end
end
end
if bname == "bucket:bucket_lava" then
if tnodename.name == "tanks:l_level_8" then
nodeset = "false"
for nodeup=1,16 do
tnodepos.y = tnodepos.y + 1
abovenode = minetest.get_node(tnodepos)
if abovenode.name == "tanks:level_0" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:l_level_1"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:l_level_1" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:l_level_2"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:l_level_2" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:l_level_3"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:l_level_3" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:l_level_4"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:l_level_4" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:l_level_5"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:l_level_5" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:l_level_6"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:l_level_6" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:l_level_7"})
puncher:set_wielded_item("bucket:bucket_empty 1")
nodeset = "true"
end
if abovenode.name == "tanks:l_level_7" and nodeset == "false" then
minetest.set_node(tnodepos, {name="tanks:l_level_8"})
puncher:set_wielded_item("bucket:bucket_empty 1")
--return
end
if abovenode.name:find("level_0", 1, true) == true then
print 'broke loop, tank not found'
break
end
end
else
minetest.set_node(pos, {name="tanks:l_level_"..level+1})
puncher:set_wielded_item("bucket:bucket_empty 1")
end
end
end
end
end)

View File

@ -1,2 +0,0 @@
--crafts.lua
--tools mod for BFD.

View File

@ -19,7 +19,7 @@
-- You should have received a copy of the GNU General Public License
-- along with BFD. If not, see <http://www.gnu.org/licenses/>.
dofile(minetest.get_modpath("tools").."/crafts.lua")
--dofile(minetest.get_modpath("tools").."/custom_tools.lua")
minetest.register_craft({
type = "toolrepair",
@ -707,3 +707,98 @@ minetest.register_craft({
{'', 'tools:stick', ''},
}
})
-- mese stuff
--mese pick
minetest.register_tool("tools:pick_mese", {
description = "Mese Pickaxe",
inventory_image = "tool_mesepick.png",
tool_capabilities = {
full_punch_interval = 1.67,
max_drop_level = 0,
groupcaps = {
cracky = {times={[1]=1.7, [2]=1.7/2, [3]=1.7/4}, uses=128, maxlevel=1},
hardness = {times={[1]=27, [2]=18, [3]=9}, uses=64, maxlevel=1},
},
damage_groups = {fleshy=7},
}
})
minetest.register_tool("tools:shovel_mese", {
description = "Mese Shovel",
inventory_image = "tool_meseshovel.png^[transformR90",
tool_capabilities = {
full_punch_interval = 1.67,
max_drop_level = 0,
groupcaps = {
crumbly = {times={[1]=1.55/2, [2]=0.75/2, [3]=0.75/4}, uses = 122, maxlevel=1},
},
damage_groups = {fleshy=5},
}
})
minetest.register_tool("tools:axe_mese", {
description = "Mese Axe",
inventory_image = "tool_meseaxe.png",
tool_capabilities = {
full_punch_interval = 1.67,
max_drop_level = 0,
groupcaps = {
choppy = {times={[1]=4.2/2, [2]=3.1/2, [1]=1.55/2}, uses = 42, maxlevel=1},
},
damage_groups = {fleshy=8},
}
})
minetest.register_tool("tools:sword_mese", {
description = "Mese Sword",
inventory_image = "tool_mesesword.png",
tool_capabilities = {
full_punch_interval = 1.78,
max_drop_level = 0,
groupcaps = {
snappy = {times={[1]=0.3/2, [2]=0.15/2, [3]=0.7/2}, uses = 32, maxlevel=1},
},
damage_groups = {fleshy = 12},
}
})
-- mese tool crafting
minetest.register_craft({
output = 'tools:pick_mese',
recipe = {
{'ores:mese_crystal', 'ores:mese_crystal', 'ores:mese_crystal'},
{'', 'tools:stick', ''},
{'', 'tools:stick', ''},
}
})
minetest.register_craft({
output = 'tools:shovel_mese',
recipe = {
{'ores:mese_crystal'},
{'tools:stick'},
{'tools:stick'},
}
})
minetest.register_craft({
output = 'tools:axe_mese',
recipe = {
{'ores:mese_crystal', 'ores:mese_crystal'},
{'ores:mese_crystal', 'tools:stick'},
{'', 'tools:stick'},
}
})
minetest.register_craft({
output = 'tools:sword_mese',
recipe = {
{'ores:mese_crystal'},
{'ores:mese_crystal'},
{'tools:stick'},
}
})

1
mods/xgui/depends.txt Normal file
View File

@ -0,0 +1 @@
default

20
mods/xgui/init.lua Normal file
View File

@ -0,0 +1,20 @@
local default = "inventory.png"
local function getFormSize(formspec)
end
local function setFormspec(player, formspec)
local size = getFormSize(formspec)
player:set_inventory_formspec(formspec.."background[-0.25,-0.5;8.5,8.5;"..default.."]")
end
minetest.register_on_joinplayer(function(player)
minetest.after(0.5, function() end)
setFormspec(player, player:get_inventory_formspec())
end)
minetest.register_on_player_receive_fields(function(player, formname, fields)
minetest.after(0.5, function() end)
setFormspec(player, player:get_inventory_formspec())
end)

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 686 B

Binary file not shown.