]> git.lizzy.rs Git - dragonfireclient.git/blobdiff - src/inventory.h
Minimap messages: Improve 'disabled by server' message
[dragonfireclient.git] / src / inventory.h
index d04dc1e69f36f35d6b11285afee6235241e868bb..465aa66db346934fb95314765c5b1b2199fc4e68 100644 (file)
@@ -111,12 +111,15 @@ struct ItemStack
        const ToolCapabilities& getToolCapabilities(
                        IItemDefManager *itemdef) const
        {
-               ToolCapabilities *cap;
-               cap = itemdef->get(name).tool_capabilities;
-               if(cap == NULL)
-                       cap = itemdef->get("").tool_capabilities;
-               assert(cap != NULL);
-               return *cap;
+               const ToolCapabilities *item_cap =
+                       itemdef->get(name).tool_capabilities;
+
+               if (item_cap == NULL)
+                       // Fall back to the hand's tool capabilities
+                       item_cap = itemdef->get("").tool_capabilities;
+
+               assert(item_cap != NULL);
+               return metadata.getToolCapabilities(*item_cap); // Check for override
        }
 
        // Wear out (only tools)