diff options
author | Perttu Ahola <celeron55@gmail.com> | 2011-11-15 15:32:09 +0200 |
---|---|---|
committer | Perttu Ahola <celeron55@gmail.com> | 2011-11-29 19:13:43 +0200 |
commit | a48a0e77eb48a0afe8b2d66f3f5ea75e39b9d504 (patch) | |
tree | bd21bdf708a654e7cda88cd4a31a9626e8976ea7 /src/nodedef.h | |
parent | cf6e22e9a690c5654a3d4edf7365e1d1115083b1 (diff) | |
download | minetest-a48a0e77eb48a0afe8b2d66f3f5ea75e39b9d504.tar.gz minetest-a48a0e77eb48a0afe8b2d66f3f5ea75e39b9d504.tar.bz2 minetest-a48a0e77eb48a0afe8b2d66f3f5ea75e39b9d504.zip |
Prepare more for node definition serialization
Diffstat (limited to 'src/nodedef.h')
-rw-r--r-- | src/nodedef.h | 41 |
1 files changed, 23 insertions, 18 deletions
diff --git a/src/nodedef.h b/src/nodedef.h index 5e4e3378c..f5662967b 100644 --- a/src/nodedef.h +++ b/src/nodedef.h @@ -100,6 +100,19 @@ struct NodeBox struct MapNode; class NodeMetadata; +struct MaterialSpec +{ + std::string tname; + bool backface_culling; + + MaterialSpec(const std::string &tname_="", bool backface_culling_=true): + tname(tname_), + backface_culling(backface_culling_) + {} +}; + +#define CF_SPECIAL_COUNT 2 + struct ContentFeatures { #ifndef SERVER @@ -114,15 +127,14 @@ struct ContentFeatures // Special material/texture // - Currently used for flowing liquids - video::SMaterial *special_material; - video::SMaterial *special_material2; - AtlasPointer *special_atlas; + video::SMaterial *special_materials[CF_SPECIAL_COUNT]; + AtlasPointer *special_aps[CF_SPECIAL_COUNT]; #endif - // Texture names + // Visual definition std::string tname_tiles[6]; std::string tname_inventory; - std::string tname_special; + MaterialSpec mspec_special[CF_SPECIAL_COUNT]; u8 alpha; bool backface_culling; @@ -202,14 +214,16 @@ struct ContentFeatures inventory_texture = NULL; post_effect_color = video::SColor(0, 0, 0, 0); - special_material = NULL; - special_material2 = NULL; - special_atlas = NULL; + for(u16 j=0; j<CF_SPECIAL_COUNT; j++){ + special_materials[j] = NULL; + special_aps[j] = NULL; + } #endif for(u32 i=0; i<6; i++) tname_tiles[i] = ""; + for(u16 j=0; j<CF_SPECIAL_COUNT; j++) + mspec_special[j] = MaterialSpec(); tname_inventory = ""; - tname_special = ""; alpha = 255; backface_culling = true; used_texturenames.clear(); @@ -265,15 +279,6 @@ struct ContentFeatures void setInventoryTextureCube(std::string top, std::string left, std::string right); -#if 0 -#ifndef SERVER - void setTile(u16 i, const TileSpec &tile) - { tiles[i] = tile; } - void setAllTiles(const TileSpec &tile) - { for(u16 i=0; i<6; i++) setTile(i, tile); } -#endif -#endif - /* Some handy methods */ |