#ifndef MAPBLOCK_MESH_HEADER
#define MAPBLOCK_MESH_HEADER
-#include "common_irrlicht.h"
+#include "irrlichttypes_extrabloated.h"
#include "tile.h"
#include "voxel.h"
#include <map>
// Maps mesh buffer (i.e. material) indices to base texture names
std::map<u32, std::string> m_crack_materials;
+ // Animation info: texture animationi
+ // Maps meshbuffers to TileSpecs
+ std::map<u32, TileSpec> m_animation_tiles;
+ std::map<u32, int> m_animation_frames; // last animation frame
+ std::map<u32, int> m_animation_frame_offsets;
+
// Animation info: day/night transitions
// Last daynight_ratio value passed to animate()
u32 m_last_daynight_ratio;
// alpha in the A channel of the returned SColor
// day light (0-255) in the R channel of the returned SColor
// night light (0-255) in the G channel of the returned SColor
-inline video::SColor MapBlock_LightColor(u8 alpha, u16 light)
+// light source (0-255) in the B channel of the returned SColor
+inline video::SColor MapBlock_LightColor(u8 alpha, u16 light, u8 light_source=0)
{
- return video::SColor(alpha, (light & 0xff), (light >> 8), 0);
+ return video::SColor(alpha, (light & 0xff), (light >> 8), light_source);
}
// Compute light at node