summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZefram <zefram@fysh.org>2014-04-28 20:41:33 +0100
committerZefram <zefram@fysh.org>2014-04-30 00:22:02 +0100
commit03a5375e552c02ac24bb211b712e8e1c30d96dc2 (patch)
tree7667ad4305066702f8d4d6ff42cb118ea6b29974
parent99fd5dfee5a70b0656e40787168d2c67ba417738 (diff)
Fix can wear following tool workshop change
The cans used set_RE_wear() to manage their wear bars. As that now only sets wear for power tools, the cans need a separate function.
-rw-r--r--technic/tools/cans.lua23
1 files changed, 17 insertions, 6 deletions
diff --git a/technic/tools/cans.lua b/technic/tools/cans.lua
index e75b2db..ab92811 100644
--- a/technic/tools/cans.lua
+++ b/technic/tools/cans.lua
@@ -21,6 +21,17 @@ minetest.register_craft({
}
})
+local function set_can_wear(itemstack, level, max_level)
+ local temp
+ if level == 0 then
+ temp = 0
+ else
+ temp = 65536 - math.floor(level / max_level * 65535)
+ if temp > 65535 then temp = 65535 end
+ if temp < 1 then temp = 1 end
+ end
+ itemstack:set_wear(temp)
+end
minetest.register_tool("technic:water_can", {
description = S("Water Can"),
@@ -45,7 +56,7 @@ minetest.register_tool("technic:water_can", {
minetest.remove_node(pointed_thing.under)
charge = charge + 1
itemstack:set_metadata(tostring(charge))
- technic.set_RE_wear(itemstack, charge, water_can_max_load)
+ set_can_wear(itemstack, charge, water_can_max_load)
end
return itemstack
end
@@ -57,7 +68,7 @@ minetest.register_tool("technic:water_can", {
minetest.set_node(pointed_thing.under, {name="default:water_source"})
charge = charge - 1
itemstack:set_metadata(tostring(charge))
- technic.set_RE_wear(itemstack, charge, water_can_max_load)
+ set_can_wear(itemstack, charge, water_can_max_load)
return itemstack
end
@@ -66,7 +77,7 @@ minetest.register_tool("technic:water_can", {
minetest.set_node(pointed_thing.above, {name="default:water_source"})
charge = charge - 1;
itemstack:set_metadata(tostring(charge))
- technic.set_RE_wear(itemstack, charge, water_can_max_load)
+ set_can_wear(itemstack, charge, water_can_max_load)
return itemstack
end
end,
@@ -95,7 +106,7 @@ minetest.register_tool("technic:lava_can", {
minetest.remove_node(pointed_thing.under)
charge = charge + 1
itemstack:set_metadata(tostring(charge))
- technic.set_RE_wear(itemstack, charge, lava_can_max_load)
+ set_can_wear(itemstack, charge, lava_can_max_load)
end
return itemstack
end
@@ -107,7 +118,7 @@ minetest.register_tool("technic:lava_can", {
minetest.set_node(pointed_thing.under, {name="default:lava_source"})
charge = charge - 1
itemstack:set_metadata(tostring(charge))
- technic.set_RE_wear(itemstack, charge, lava_can_max_load)
+ set_can_wear(itemstack, charge, lava_can_max_load)
return itemstack
end
@@ -116,7 +127,7 @@ minetest.register_tool("technic:lava_can", {
minetest.set_node(pointed_thing.above, {name="default:lava_source"})
charge = charge - 1
itemstack:set_metadata(tostring(charge))
- technic.set_RE_wear(itemstack, charge, lava_can_max_load)
+ set_can_wear(itemstack, charge, lava_can_max_load)
return itemstack
end
end,