]> git.lizzy.rs Git - xdecor.git/commitdiff
Work table : restrict repairing function to some tools
authorkilbith <jeanpatrick.guerrero@gmail.com>
Sat, 23 Jan 2016 12:06:42 +0000 (13:06 +0100)
committerkilbith <jeanpatrick.guerrero@gmail.com>
Sat, 23 Jan 2016 12:26:19 +0000 (13:26 +0100)
worktable.lua

index 9d0cfd5885071f6b77a21ef0660eae30b3494ce5..350e9a0e426f4f9cb29790322be7f94bc8efec15 100644 (file)
@@ -299,9 +299,14 @@ end
 function worktable.put(pos, listname, _, stack)
        local stackname = stack:get_name()
        local mod, node = stackname:match("(.*):(.*)")
+       local allowed_tools = "pick, axe, shovel, sword, hoe, armor"
 
-       if (listname == "tool" and stack:get_wear() > 0 and stackname ~= "xdecor:hammer") or
-                       (listname == "input" and worktable.allowed(nodes[mod], node)) or
+       for v in allowed_tools:gmatch("[%w_]+") do
+               if listname == "tool" and stack:get_wear() > 0 and stackname:find(v) then
+                       return stack:get_count()
+               end
+       end
+       if (listname == "input" and worktable.allowed(nodes[mod], node)) or
                        (listname == "hammer" and stackname == "xdecor:hammer") or
                        listname == "storage" or listname == "trash" then
                if listname == "trash" then trash_delete(pos) end