]> git.lizzy.rs Git - minetest.git/commitdiff
Fix inventory_overlay for nodes without inventory_image (#8433)
authorDS <vorunbekannt75@web.de>
Wed, 7 Aug 2019 10:07:30 +0000 (12:07 +0200)
committersfan5 <sfan5@live.de>
Wed, 7 Aug 2019 10:07:30 +0000 (12:07 +0200)
src/client/hud.cpp

index 51746f788492cee9974e8d8234d978f18d78a21c..291d038167a40851996213ff39c291780e56e43d 100644 (file)
@@ -714,6 +714,16 @@ void drawItemStack(video::IVideoDriver *driver,
                driver->setTransform(video::ETS_VIEW, oldViewMat);
                driver->setTransform(video::ETS_PROJECTION, oldProjMat);
                driver->setViewPort(oldViewPort);
+
+               // draw the inventory_overlay
+               if (def.type == ITEM_NODE && def.inventory_image.empty() &&
+                               !def.inventory_overlay.empty()) {
+                       ITextureSource *tsrc = client->getTextureSource();
+                       video::ITexture *overlay_texture = tsrc->getTexture(def.inventory_overlay);
+                       core::dimension2d<u32> dimens = overlay_texture->getOriginalSize();
+                       core::rect<s32> srcrect(0, 0, dimens.Width, dimens.Height);
+                       draw2DImageFilterScaled(driver, overlay_texture, rect, srcrect, clip, 0, true);
+               }
        }
 
        if(def.type == ITEM_TOOL && item.wear != 0)