if (this.health)
{
+ //this.canteamdamage = true; // TODO
this.takedamage = DAMAGE_YES;
this.event_damage = door_damage;
}
if (this.health)
{
+ //this.canteamdamage = true; // TODO
this.takedamage = DAMAGE_YES;
this.event_damage = door_damage;
}
if (this.spawnflags & SECRET_YES_SHOOT)
{
+ //this.canteamdamage = true; // TODO
this.health = 10000;
this.takedamage = DAMAGE_YES;
this.event_damage = fd_secret_damage;
if(this.spawnflags & DOOR_NOSPLASH)
if(!(DEATH_ISSPECIAL(deathtype)) && (deathtype & HITTYPE_SPLASH))
return;
+ if(this.team)
+ if(((this.spawnflags & 4) == 0) == (this.team != attacker.team))
+ return;
this.health = this.health - damage;
if (this.health <= 0)
{
{
if (this.spawnflags & SPAWNFLAG_NOTOUCH)
objerror (this, "health and notouch don't make sense\n");
+ this.canteamdamage = true;
this.max_health = this.health;
this.event_damage = multi_eventdamage;
this.takedamage = DAMAGE_YES;
// set when showing a kill countdown
.entity killindicator;
+.bool canteamdamage;
+
void Damage (entity targ, entity inflictor, entity attacker, float damage, int deathtype, vector hitloc, vector force);
float lockteams;
force = '0 0 0';
}
}
- else
+ else if(!targ.canteamdamage)
damage = 0;
}
}