about summary refs log tree commit diff
path: root/src/game/server/game_server.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/server/game_server.cpp')
-rw-r--r--src/game/server/game_server.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/game/server/game_server.cpp b/src/game/server/game_server.cpp
index 795e9941..559fa1bd 100644
--- a/src/game/server/game_server.cpp
+++ b/src/game/server/game_server.cpp
@@ -31,6 +31,7 @@ void create_damageind(vec2 p, vec2 dir, int amount);
 void create_explosion(vec2 p, int owner, int weapon, bool bnodamage);
 void create_smoke(vec2 p);
 void create_spawn(vec2 p);
+void create_death(vec2 p);
 void create_sound(vec2 pos, int sound, int loopflags = 0);
 class player *intersect_player(vec2 pos0, vec2 pos1, vec2 &new_pos, class entity *notthis = 0);
 
@@ -1137,6 +1138,7 @@ void player::die(int killer, int weapon)
 	dead = true;
 	die_tick = server_tick();
 	clear_flag(entity::FLAG_ALIVE);
+	create_death(pos);
 }
 
 bool player::take_damage(vec2 force, int dmg, int from, int weapon)
@@ -1410,6 +1412,14 @@ void create_spawn(vec2 p)
 	ev->y = (int)p.y;
 }
 
+void create_death(vec2 p)
+{
+	// create the event
+	ev_death *ev = (ev_death *)events.create(EVENT_DEATH, sizeof(ev_death));
+	ev->x = (int)p.x;
+	ev->y = (int)p.y;
+}
+
 void create_sound(vec2 pos, int sound, int loopingflags)
 {
 	if (sound < 0)