refactor tanks, add xgui with template
@ -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",
|
||||
|
Before Width: | Height: | Size: 761 B After Width: | Height: | Size: 813 B |
Before Width: | Height: | Size: 864 B After Width: | Height: | Size: 855 B |
Before Width: | Height: | Size: 709 B After Width: | Height: | Size: 774 B |
Before Width: | Height: | Size: 627 B After Width: | Height: | Size: 705 B |
Before Width: | Height: | Size: 612 B |
@ -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",
|
||||
|
||||
|
@ -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
|
||||
---
|
||||
|
BIN
mods/mapgen/textures/mapgen_soap_stone.png
Normal file
After Width: | Height: | Size: 705 B |
@ -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},
|
||||
})
|
@ -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)
|
||||
|
@ -1,2 +0,0 @@
|
||||
--crafts.lua
|
||||
--tools mod for BFD.
|
@ -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
@ -0,0 +1 @@
|
||||
default
|
20
mods/xgui/init.lua
Normal 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)
|
BIN
mods/xgui/textures/inventory.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
mods/xgui/textures/inventory.xcf
Normal file
BIN
mods/xgui/textures/inventory_alternate.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
mods/xgui/textures/inventory_default.xcf
Normal file
BIN
mods/xgui/textures/inventory_template.png
Normal file
After Width: | Height: | Size: 686 B |