X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=src%2Fnodedef.h;h=1f596e46baff75fc977e3bc3e5754b1e87c847da;hb=58e6d25e033c76dc91aaac18fdeda92ac23fe0e1;hp=714e1ba2c22f27c78dc8f6de0d58302852b0a4f2;hpb=0e89bca173fb000368786e5c9f5614e506737b92;p=oweals%2Fminetest.git diff --git a/src/nodedef.h b/src/nodedef.h index 714e1ba2c..1f596e46b 100644 --- a/src/nodedef.h +++ b/src/nodedef.h @@ -28,6 +28,7 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "mapnode.h" #ifndef SERVER #include "tile.h" +#include "shader.h" #endif #include "itemgroup.h" #include "sound.h" // SimpleSoundSpec @@ -35,6 +36,7 @@ with this program; if not, write to the Free Software Foundation, Inc., class IItemDefManager; class ITextureSource; +class IShaderSource; class IGameDef; typedef std::list > GroupItems; @@ -149,7 +151,7 @@ enum NodeDrawType // uses 2 textures, one for frames, second for faces }; -#define CF_SPECIAL_COUNT 2 +#define CF_SPECIAL_COUNT 6 struct ContentFeatures { @@ -228,12 +230,14 @@ struct ContentFeatures std::string freezemelt; // Number of flowing liquids surrounding source u8 liquid_range; - bool drowning; + u8 drowning; // Amount of light the node emits u8 light_source; u32 damage_per_second; NodeBox node_box; NodeBox selection_box; + // Used for waving leaves/plants + u8 waving; // Compatibility with old maps // Set to true if paramtype used to be 'facedir_simple' bool legacy_facedir_simple; @@ -321,7 +325,8 @@ public: /* Update tile textures to latest return values of TextueSource. */ - virtual void updateTextures(ITextureSource *tsrc)=0; + virtual void updateTextures(ITextureSource *tsrc, + IShaderSource *shdsrc)=0; virtual void serialize(std::ostream &os, u16 protocol_version)=0; virtual void deSerialize(std::istream &is)=0;