aboutsummaryrefslogtreecommitdiff
path: root/src/client.h
diff options
context:
space:
mode:
authorJeija <norrepli@gmail.com>2013-01-23 18:32:02 +0100
committerPilzAdam <pilzadam@minetest.net>2013-03-23 23:16:29 +0100
commite1ff5b13619666e5b987ecf4faaf294400ffd979 (patch)
tree13885f396367c79625a72a4445fe6e81819d92c5 /src/client.h
parentab57fdac44bae20e43500b3edd39bac9a0f563c5 (diff)
downloaddragonfireclient-e1ff5b13619666e5b987ecf4faaf294400ffd979.tar.xz
Allow spawning particles from the server, from lua
Spawn single particles or make use of ParticleSpawner for many randomly spawned particles. Accessible in Lua using minetest.spawn_particle and minetest.add_particlespawner. Increase Protocol Version to 17. Conflicts: src/clientserver.h
Diffstat (limited to 'src/client.h')
-rw-r--r--src/client.h34
1 files changed, 33 insertions, 1 deletions
diff --git a/src/client.h b/src/client.h
index 570a6b3b0..d476a1d51 100644
--- a/src/client.h
+++ b/src/client.h
@@ -157,7 +157,10 @@ enum ClientEventType
CE_PLAYER_FORCE_MOVE,
CE_DEATHSCREEN,
CE_TEXTURES_UPDATED,
- CE_SHOW_FORMSPEC
+ CE_SHOW_FORMSPEC,
+ CE_SPAWN_PARTICLE,
+ CE_ADD_PARTICLESPAWNER,
+ CE_DELETE_PARTICLESPAWNER
};
struct ClientEvent
@@ -185,6 +188,35 @@ struct ClientEvent
} show_formspec;
struct{
} textures_updated;
+ struct{
+ v3f *pos;
+ v3f *vel;
+ v3f *acc;
+ f32 expirationtime;
+ f32 size;
+ bool collisiondetection;
+ std::string *texture;
+ } spawn_particle;
+ struct{
+ u16 amount;
+ f32 spawntime;
+ v3f *minpos;
+ v3f *maxpos;
+ v3f *minvel;
+ v3f *maxvel;
+ v3f *minacc;
+ v3f *maxacc;
+ f32 minexptime;
+ f32 maxexptime;
+ f32 minsize;
+ f32 maxsize;
+ bool collisiondetection;
+ std::string *texture;
+ u32 id;
+ } add_particlespawner;
+ struct{
+ u32 id;
+ } delete_particlespawner;
};
};