]> git.lizzy.rs Git - dragonfireclient.git/blobdiff - src/wieldmesh.h
Fix on_rightclick() being called directly after placing node
[dragonfireclient.git] / src / wieldmesh.h
index 7761fd51b94e73ca47efc5073a7ba72f6c3ba0af..3f4f4fc042a5e5c46a5c41f02cee8de0a7e4ab94 100644 (file)
@@ -23,7 +23,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 #include "irrlichttypes_extrabloated.h"
 #include <string>
 
-class ItemStack;
+struct ItemStack;
 class IGameDef;
 class ITextureSource;
 struct TileSpec;
@@ -41,13 +41,16 @@ class WieldMeshSceneNode: public scene::ISceneNode
        void setCube(const TileSpec tiles[6],
                        v3f wield_scale, ITextureSource *tsrc);
        void setExtruded(const std::string &imagename,
-                       v3f wield_scale, ITextureSource *tsrc);
+                       v3f wield_scale, ITextureSource *tsrc, u8 num_frames);
        void setItem(const ItemStack &item, IGameDef *gamedef);
 
        // Sets the vertex color of the wield mesh.
        // Must only be used if the constructor was called with lighting = false
        void setColor(video::SColor color);
 
+       scene::IMesh *getMesh()
+       { return m_meshnode->getMesh(); }
+
        virtual void render();
 
        virtual const core::aabbox3d<f32>& getBoundingBox() const
@@ -58,10 +61,16 @@ class WieldMeshSceneNode: public scene::ISceneNode
 
        // Child scene node with the current wield mesh
        scene::IMeshSceneNode *m_meshnode;
+       video::E_MATERIAL_TYPE m_material_type;
 
        // True if EMF_LIGHTING should be enabled.
        bool m_lighting;
 
+       bool m_enable_shaders;
+       bool m_anisotropic_filter;
+       bool m_bilinear_filter;
+       bool m_trilinear_filter;
+
        // Bounding box culling is disabled for this type of scene node,
        // so this variable is just required so we can implement
        // getBoundingBox() and is set to an empty box.