[nexuiz-commits] r7733 - trunk/data/qcsrc/server
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Fri Sep 11 09:28:40 EDT 2009
Author: div0
Date: 2009-09-11 09:28:40 -0400 (Fri, 11 Sep 2009)
New Revision: 7733
Modified:
trunk/data/qcsrc/server/g_damage.qc
trunk/data/qcsrc/server/w_fireball.qc
Log:
try to work around dead bodies
Modified: trunk/data/qcsrc/server/g_damage.qc
===================================================================
--- trunk/data/qcsrc/server/g_damage.qc 2009-09-11 13:15:13 UTC (rev 7732)
+++ trunk/data/qcsrc/server/g_damage.qc 2009-09-11 13:28:40 UTC (rev 7733)
@@ -1132,16 +1132,23 @@
float dps;
float maxtime, mintime, maxdamage, mindamage, maxdps, mindps, totaldamage, totaltime;
- if(e.classname != "player")
- if(!e.fire_burner)
+ if(e.classname == "player")
{
- // print("adding a fire burner to ", e.classname, "\n");
- e.fire_burner = spawn();
- e.fire_burner.classname = "fireburner";
- e.fire_burner.think = fireburner_think;
- e.fire_burner.nextthink = time;
- e.fire_burner.owner = e;
+ if(e.deadflag)
+ return -1;
}
+ else
+ {
+ if(!e.fire_burner)
+ {
+ // print("adding a fire burner to ", e.classname, "\n");
+ e.fire_burner = spawn();
+ e.fire_burner.classname = "fireburner";
+ e.fire_burner.think = fireburner_think;
+ e.fire_burner.nextthink = time;
+ e.fire_burner.owner = e;
+ }
+ }
t = max(t, 0.1);
dps = d / t;
@@ -1204,7 +1211,7 @@
e.fire_hitsound = FALSE;
}
}
- return totaldamage - mindamage; // can never be negative
+ return max(0, totaldamage - mindamage); // can never be negative, but to make sure
}
else
return 0;
Modified: trunk/data/qcsrc/server/w_fireball.qc
===================================================================
--- trunk/data/qcsrc/server/w_fireball.qc 2009-09-11 13:15:13 UTC (rev 7732)
+++ trunk/data/qcsrc/server/w_fireball.qc 2009-09-11 13:28:40 UTC (rev 7733)
@@ -213,14 +213,12 @@
{
PROJECTILE_TOUCH;
if (other.takedamage == DAMAGE_AIM)
+ if(Fire_AddDamage(other, self.realowner, cvar("g_balance_fireball_primary_damage"), cvar("g_balance_fireball_primary_damagetime"), self.projectiledeathtype | HITTYPE_HEADSHOT) >= 0)
{
- Fire_AddDamage(other, self.realowner, cvar("g_balance_fireball_primary_damage"), cvar("g_balance_fireball_primary_damagetime"), self.projectiledeathtype | HITTYPE_HEADSHOT);
remove(self);
+ return;
}
- else
- {
- self.projectiledeathtype |= HITTYPE_BOUNCE;
- }
+ self.projectiledeathtype |= HITTYPE_BOUNCE;
}
void W_Fireball_Attack1()
More information about the nexuiz-commits
mailing list