]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/triggers/trigger/swamp.qc
Merge branch 'terencehill/menu_languages' into 'master'
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / triggers / trigger / swamp.qc
index b99332b984533c9853a79b0618c859e4c5a78eff..ae29a75342fa4fee0a6446a85cf41a5d48ca7e75 100644 (file)
@@ -1,11 +1,10 @@
 #if defined(CSQC)
 #elif defined(MENUQC)
 #elif defined(SVQC)
-       #include "../../../server/_all.qh"
-    #include "../../../warpzonelib/util_server.qh"
+    #include "../../../lib/warpzone/util_server.qh"
     #include "../../weapons/all.qh"
     #include "../../../server/defs.qh"
-    #include "../../deathtypes.qh"
+    #include "../../deathtypes/all.qh"
 #endif
 
 /*
@@ -21,9 +20,9 @@
 .entity swampslug;
 
 #ifdef SVQC
-void spawnfunc_trigger_swamp(void);
+spawnfunc(trigger_swamp);
 #endif
-void swamp_touch(void);
+void swamp_touch();
 void swampslug_think();
 
 
@@ -37,8 +36,8 @@ void swampslug_think();
 *
 * I do it this way becuz there is no "untouch" event.
 */
-void swampslug_think(void)
-{
+void swampslug_think()
+{SELFPARAM();
        //Slowly kill the slug
        self.health = self.health - 1;
 
@@ -55,14 +54,14 @@ void swampslug_think(void)
        // Or we have exited it very recently.
        // Do the damage and renew the timer.
 #ifdef SVQC
-       Damage (self.owner, self, self, self.dmg, DEATH_SWAMP, other.origin, '0 0 0');
+       Damage (self.owner, self, self, self.dmg, DEATH_SWAMP.m_id, other.origin, '0 0 0');
 #endif
 
        self.nextthink = time + self.swamp_interval;
 }
 
-void swamp_touch(void)
-{
+void swamp_touch()
+{SELFPARAM();
        // If whatever thats touching the swamp is not a player
        // or if its a dead player, just dont care abt it.
        if(!IS_PLAYER(other) || PHYS_DEAD(other))
@@ -93,10 +92,12 @@ void swamp_touch(void)
        other.swampslug.health = 2;
 }
 
+REGISTER_NET_LINKED(ENT_CLIENT_SWAMP)
+
 #ifdef SVQC
 float swamp_send(entity to, float sf)
-{
-       WriteByte(MSG_ENTITY, ENT_CLIENT_LADDER);
+{SELFPARAM();
+       WriteHeader(MSG_ENTITY, ENT_CLIENT_SWAMP);
 
        WriteByte(MSG_ENTITY, self.dmg); // can probably get away with using a single byte here
        WriteByte(MSG_ENTITY, self.swamp_slowdown);
@@ -108,7 +109,7 @@ float swamp_send(entity to, float sf)
 }
 
 void swamp_link()
-{
+{SELFPARAM();
        Net_LinkEntity(self, false, 0, func_ladder_send);
 }
 
@@ -116,7 +117,7 @@ void swamp_link()
 Players gettin into the swamp will
 get slowd down and damaged
 */
-void spawnfunc_trigger_swamp(void)
+spawnfunc(trigger_swamp)
 {
        // Init stuff
        EXACTTRIGGER_INIT;
@@ -135,7 +136,7 @@ void spawnfunc_trigger_swamp(void)
 
 #elif defined(CSQC)
 
-void ent_swamp()
+NET_HANDLE(ENT_CLIENT_SWAMP, bool isnew)
 {
        self.dmg = ReadByte();
        self.swamp_slowdown = ReadByte();
@@ -143,6 +144,8 @@ void ent_swamp()
 
        trigger_common_read(false);
 
+       return = true;
+
        self.classname = "trigger_swamp";
        self.solid = SOLID_TRIGGER;
        self.draw = trigger_draw_generic;