1
0
Fork 0
mirror of https://github.com/luanti-org/luanti.git synced 2025-06-27 16:36:03 +00:00

Add hardware node coloring. Includes:

- Increase ContentFeatures serialization version
- Color property and palettes for nodes
- paramtype2 = "color", "colored facedir" or "colored wallmounted"
This commit is contained in:
Dániel Juhász 2017-01-12 15:46:30 +01:00 committed by Ekdohibs
parent 43822de5c6
commit d04d8aba70
27 changed files with 1207 additions and 554 deletions

View file

@ -32,6 +32,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
struct ClientEvent;
class ParticleManager;
class ClientEnvironment;
class MapNode;
class ContentFeatures;
class Particle : public scene::ISceneNode
{
@ -53,7 +55,8 @@ class Particle : public scene::ISceneNode
v2f texpos,
v2f texsize,
const struct TileAnimationParams &anim,
u8 glow
u8 glow,
video::SColor color = video::SColor(0xFFFFFFFF)
);
~Particle();
@ -100,7 +103,10 @@ private:
v3f m_acceleration;
LocalPlayer *m_player;
float m_size;
u8 m_light;
//! Color without lighting
video::SColor m_base_color;
//! Final rendered color
video::SColor m_color;
bool m_collisiondetection;
bool m_collision_removal;
bool m_vertical;
@ -184,13 +190,16 @@ public:
scene::ISceneManager* smgr, LocalPlayer *player);
void addDiggingParticles(IGameDef* gamedef, scene::ISceneManager* smgr,
LocalPlayer *player, v3s16 pos, const TileSpec tiles[]);
LocalPlayer *player, v3s16 pos, const MapNode &n,
const ContentFeatures &f);
void addPunchingParticles(IGameDef* gamedef, scene::ISceneManager* smgr,
LocalPlayer *player, v3s16 pos, const TileSpec tiles[]);
LocalPlayer *player, v3s16 pos, const MapNode &n,
const ContentFeatures &f);
void addNodeParticle(IGameDef* gamedef, scene::ISceneManager* smgr,
LocalPlayer *player, v3s16 pos, const TileSpec tiles[]);
LocalPlayer *player, v3s16 pos, const MapNode &n,
const ContentFeatures &f);
protected:
void addParticle(Particle* toadd);