]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/turrets/util.qc
Fix memory leaks in ATTRIB(..., strzone(...)) calls.
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / turrets / util.qc
index 477df7b6808a4ef80eefa7bf08544ac71290a539..c56ba66e968a67c36ffe34e4b68884cd05c4f999 100644 (file)
@@ -114,7 +114,7 @@ vector angleofs3(vector from, vector from_a, entity to)
 * NOTICE this func overwrites the global v_forward, v_right and v_up vectors.
 */
 float turret_tag_fire_update()
-{
+{SELFPARAM();
        if(!self.tur_head)
        {
                error("Call to turret_tag_fire_update with self.tur_head missing!\n");
@@ -134,7 +134,7 @@ float turret_tag_fire_update()
 void FireImoBeam (vector start, vector end, vector smin, vector smax,
                                  float bforce, float f_dmg, float f_velfactor, int deathtype)
 
-{
+{SELFPARAM();
        vector hitloc, force, endpoint, dir;
        entity ent;
 
@@ -204,9 +204,8 @@ void FireImoBeam (vector start, vector end, vector smin, vector smax,
 }
 
 #ifdef TURRET_DEBUG
-void SUB_Remove();
 void marker_think()
-{
+{SELFPARAM();
        if(self.cnt)
        if(self.cnt < time)
        {
@@ -224,11 +223,8 @@ void marker_think()
 
 void mark_error(vector where,float lifetime)
 {
-       entity err;
-
-       err = spawn();
-       err.classname = "error_marker";
-       setmodel(err,"models/marker.md3");
+       entity err = new(error_marker);
+       setmodel(err, MDL_MARKER);
        setorigin(err,where);
        err.movetype = MOVETYPE_NONE;
        err.think = marker_think;
@@ -240,11 +236,8 @@ void mark_error(vector where,float lifetime)
 
 void mark_info(vector where,float lifetime)
 {
-       entity err;
-
-       err = spawn();
-       err.classname = "info_marker";
-       setmodel(err,"models/marker.md3");
+       entity err = spawn(info_marker);
+       setmodel(err, MDL_MARKER);
        setorigin(err,where);
        err.movetype = MOVETYPE_NONE;
        err.think = marker_think;
@@ -256,11 +249,8 @@ void mark_info(vector where,float lifetime)
 
 entity mark_misc(vector where,float lifetime)
 {
-       entity err;
-
-       err = spawn();
-       err.classname = "mark_misc";
-       setmodel(err,"models/marker.md3");
+       entity err = spawn(mark_misc);
+       setmodel(err, MDL_MARKER);
        setorigin(err,where);
        err.movetype = MOVETYPE_NONE;
        err.think = marker_think;
@@ -271,6 +261,8 @@ entity mark_misc(vector where,float lifetime)
        return err;
 }
 
+MODEL(TUR_C512, "models/turrets/c512.md3");
+
 /*
 * Paint a v_color colord circle on target onwho
 * that fades away over f_time
@@ -280,7 +272,7 @@ void paint_target(entity onwho, float f_size, vector v_color, float f_time)
        entity e;
 
        e = spawn();
-       setmodel(e, "models/turrets/c512.md3"); // precision set above
+       setmodel(e, MDL_TUR_C512); // precision set above
        e.scale = (f_size/512);
        //setsize(e, '0 0 0', '0 0 0');
        //setattachment(e,onwho,"");
@@ -299,7 +291,7 @@ void paint_target2(entity onwho, float f_size, vector v_color, float f_time)
        entity e;
 
        e = spawn();
-       setmodel(e, "models/turrets/c512.md3"); // precision set above
+       setmodel(e, MDL_TUR_C512); // precision set above
        e.scale = (f_size/512);
        setsize(e, '0 0 0', '0 0 0');
 
@@ -318,7 +310,7 @@ void paint_target3(vector where, float f_size, vector v_color, float f_time)
 {
        entity e;
        e = spawn();
-       setmodel(e, "models/turrets/c512.md3"); // precision set above
+       setmodel(e, MDL_TUR_C512); // precision set above
        e.scale = (f_size/512);
        setsize(e, '0 0 0', '0 0 0');
        setorigin(e,where+ '0 0 1');