Revamp bucket system
This commit is contained in:
parent
90df776796
commit
ecafa581bb
@ -236,6 +236,8 @@ PyuTest.make_liquid = function(name, desc, groups, texture, speed, extra_conf)
|
||||
local g = groups or {}
|
||||
g["liquid"] = 1
|
||||
|
||||
PyuTest.make_node(name .. "_source", desc .. " Source", g, { texture }, make_liquid_flags("source"))
|
||||
PyuTest.make_node(name .. "_source", desc .. " Source", PyuTest.util.tableconcat(g, {
|
||||
liquid_source = 1
|
||||
}), { texture }, make_liquid_flags("source"))
|
||||
PyuTest.make_node(name .. "_flowing", "Flowing " .. desc, g, { texture }, make_liquid_flags("flowing"))
|
||||
end
|
||||
|
@ -1,7 +1,7 @@
|
||||
PyuTest.make_item("pyutest_buckets:bucket", "Empty Bucket", {}, "pyutest-bucket.png", {
|
||||
pointabilities = {
|
||||
nodes = {
|
||||
["group:liquid"] = true
|
||||
["group:liquid_source"] = true
|
||||
}
|
||||
},
|
||||
|
||||
@ -15,8 +15,8 @@ PyuTest.make_item("pyutest_buckets:bucket", "Empty Bucket", {}, "pyutest-bucket.
|
||||
local node = minetest.get_node(pos)
|
||||
local def = minetest.registered_nodes[node.name]
|
||||
|
||||
if def.__source then
|
||||
PyuTest.give_item_or_drop(ItemStack(def.__source), user:get_inventory(), "main", user:get_pos())
|
||||
if def.__bucket then
|
||||
PyuTest.give_item_or_drop(ItemStack(def.__bucket), user:get_inventory(), "main", user:get_pos())
|
||||
minetest.remove_node(pos)
|
||||
|
||||
itemstack:take_item()
|
||||
@ -34,22 +34,29 @@ minetest.register_craft({
|
||||
}
|
||||
})
|
||||
|
||||
PyuTest.make_liquid_bucket = function (source, flowing, source_desc, color)
|
||||
PyuTest.make_liquid_bucket = function (name, desc, source, color)
|
||||
local texture = string.format("pyutest-bucket.png^(pyutest-bucket-overlay.png^[colorize:%s)", color)
|
||||
|
||||
minetest.override_item(source, {
|
||||
description = source_desc,
|
||||
PyuTest.make_node(name, desc, {
|
||||
bucket = 1
|
||||
}, {}, {
|
||||
drawtype = "airlike",
|
||||
walkable = false,
|
||||
pointable = false,
|
||||
wield_image = texture,
|
||||
inventory_image = texture,
|
||||
|
||||
after_place_node = function (pos, placer)
|
||||
if placer == nil then return end
|
||||
PyuTest.give_item_or_drop(ItemStack("pyutest_buckets:bucket"), placer:get_inventory(), "main", placer:get_pos())
|
||||
minetest.set_node(pos, {name = source})
|
||||
end,
|
||||
})
|
||||
|
||||
__source = source,
|
||||
minetest.override_item(source, {
|
||||
__bucket = name,
|
||||
})
|
||||
end
|
||||
|
||||
PyuTest.make_liquid_bucket("pyutest_blocks:water_source", "pyutest_blocks:water_flowing", "Water Bucket", "blue")
|
||||
PyuTest.make_liquid_bucket("pyutest_blocks:lava_source", "pyutest_blocks:lava_flowing", "Lava Bucket", "orange")
|
||||
PyuTest.make_liquid_bucket("pyutest_buckets:water_bucket", "Water Bucket", "pyutest_blocks:water_source", "blue")
|
||||
PyuTest.make_liquid_bucket("pyutest_buckets:lava_bucket", "Lava Bucket", "pyutest_blocks:lava_source", "orange")
|
||||
|
@ -42,17 +42,12 @@ minetest.register_on_player_hpchange(function (player, hp_change, reason)
|
||||
end
|
||||
end
|
||||
|
||||
minetest.log(new_hp_change)
|
||||
|
||||
if current_hp > (max_hp / 4) then
|
||||
local defense = PyuTest.get_player_stat(player, "defense")
|
||||
-- new_hp_change = new_hp_change * (1 / defense)
|
||||
new_hp_change = new_hp_change / defense
|
||||
new_hp_change = math.floor(new_hp_change + 0.5)
|
||||
end
|
||||
|
||||
minetest.log(new_hp_change)
|
||||
|
||||
return new_hp_change
|
||||
end, true)
|
||||
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 164 B After Width: | Height: | Size: 179 B |
Loading…
x
Reference in New Issue
Block a user