X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=src%2Fparticles.h;h=101fc49ce145cb8cb5a0bd72f8e8315318ec6543;hb=a020d1b653f94fbcaac06c15f9dbab4521fda355;hp=308da551f997825c33febb3aa3ee856f1ba449bd;hpb=e1ff5b13619666e5b987ecf4faaf294400ffd979;p=oweals%2Fminetest.git diff --git a/src/particles.h b/src/particles.h index 308da551f..101fc49ce 100644 --- a/src/particles.h +++ b/src/particles.h @@ -42,7 +42,10 @@ class Particle : public scene::ISceneNode float expirationtime, float size, bool collisiondetection, - AtlasPointer texture + bool vertical, + video::ITexture *texture, + v2f texpos, + v2f texsize ); ~Particle(); @@ -64,35 +67,35 @@ class Particle : public scene::ISceneNode virtual void OnRegisterSceneNode(); virtual void render(); - void step(float dtime, ClientEnvironment &env); + void step(float dtime); bool get_expired () { return m_expiration < m_time; } private: - void updateLight(ClientEnvironment &env); + void updateLight(); void updateVertices(); video::S3DVertex m_vertices[4]; float m_time; float m_expiration; + ClientEnvironment *m_env; IGameDef *m_gamedef; core::aabbox3d m_box; core::aabbox3d m_collisionbox; video::SMaterial m_material; + v2f m_texpos; + v2f m_texsize; v3f m_pos; v3f m_velocity; v3f m_acceleration; - float tex_x0; - float tex_x1; - float tex_y0; - float tex_y1; LocalPlayer *m_player; float m_size; - AtlasPointer m_ap; u8 m_light; bool m_collisiondetection; + bool m_vertical; + v3s16 m_camera_offset; }; class ParticleSpawner @@ -109,7 +112,8 @@ class ParticleSpawner float minexptime, float maxexptime, float minsize, float maxsize, bool collisiondetection, - AtlasPointer ap, + bool vertical, + video::ITexture *texture, u32 id); ~ParticleSpawner(); @@ -136,12 +140,13 @@ class ParticleSpawner float m_maxexptime; float m_minsize; float m_maxsize; - AtlasPointer m_ap; + video::ITexture *m_texture; std::vector m_spawntimes; bool m_collisiondetection; + bool m_vertical; }; -void allparticles_step (float dtime, ClientEnvironment &env); +void allparticles_step (float dtime); void allparticlespawners_step (float dtime, ClientEnvironment &env); void delete_particlespawner (u32 id);