]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Remove unused neutral check from target validation & remove unnecessary enemy checks...
authorMario <mario.mario@y7mail.com>
Thu, 7 Mar 2013 05:39:53 +0000 (16:39 +1100)
committerMario <mario.mario@y7mail.com>
Thu, 7 Mar 2013 05:39:53 +0000 (16:39 +1100)
qcsrc/server/monsters/lib/monsters.qc
qcsrc/server/monsters/monster/demon.qc
qcsrc/server/monsters/monster/spider.qc
qcsrc/server/mutators/gamemode_towerdefense.qc

index a9d70694582e931b879568f5dea45c9b0f8456f3..3bd719af024437db811827b91b4b06791c380062 100644 (file)
@@ -60,7 +60,7 @@ void Monster_DropItem (string itype, string itemsize)
        self = oldself;
 }
 
-float monster_isvalidtarget (entity targ, entity ent, float neutral)
+float monster_isvalidtarget (entity targ, entity ent)
 {
        if(!targ || !ent)
                return FALSE; // this check should fix a crash
@@ -79,9 +79,6 @@ float monster_isvalidtarget (entity targ, entity ent, float neutral)
        if(trace_ent != targ)
                return FALSE; // we can't see the enemy
                
-       if(neutral == TRUE)
-               return TRUE; // we come in peace!
-               
        if(targ.takedamage == DAMAGE_NO)
                return FALSE; // enemy can't be damaged
                
@@ -143,7 +140,7 @@ entity FindTarget (entity ent)
        local entity e;
        for(e = world; (e = findflags(e, monster_attack, TRUE)); ) 
        {
-               if(monster_isvalidtarget(e, ent, FALSE))
+               if(monster_isvalidtarget(e, ent))
                {
                        return e;
                }
@@ -158,7 +155,7 @@ void MonsterTouch ()
                
        if(self.enemy != other)
        if not(other.flags & FL_MONSTER)
-       if(monster_isvalidtarget(other, self, FALSE))
+       if(monster_isvalidtarget(other, self))
                self.enemy = other;
 }
 
@@ -389,7 +386,7 @@ void monster_use ()
        if (self.health <= 0)
                return;
 
-       if(!monster_isvalidtarget(activator, self, -1))
+       if(!monster_isvalidtarget(activator, self))
                return;
 
        self.enemy = activator;
@@ -627,7 +624,7 @@ void monsters_damage (entity inflictor, entity attacker, float damage, float dea
                return;
                
        if((ignore_turrets && !(attacker.turrcaps_flags & TFL_TURRCAPS_ISTURRET)) || !ignore_turrets)
-       if(monster_isvalidtarget(attacker, self, FALSE))
+       if(monster_isvalidtarget(attacker, self))
                self.enemy = attacker;
        
        self.health -= damage;
index 3e9ba34f8c2f55549bfce217c0424c82efa014a7..7f0f4bc40053261b974ce587a6db1e59f7285feb 100644 (file)
@@ -44,7 +44,7 @@ void Demon_JumpTouch ()
                
        float bigdmg = autocvar_g_monster_demon_attack_jump_damage * self.scale;
 
-       if (monster_isvalidtarget(other, self, FALSE))
+       if (monster_isvalidtarget(other, self))
        {
                if (vlen(self.velocity) > 300)
                {
index a578628d0b4f80bd640e8008267781574ea8590e..ddd68805ae8d4a655fcef17eee13f93bc4ca5792 100644 (file)
@@ -46,34 +46,24 @@ void spider_die ()
 /**
  * Performe a standing attack on self.enemy.
  */
-void spider_attack_standing() {
+void spider_attack_standing()
+{
        float dot = 0, bigdmg = autocvar_g_monster_spider_attack_stand_damage * self.scale;
 
        self.velocity_x = 0;
        self.velocity_y = 0;
-       
-       if(self.monster_owner == self.enemy)
-       {
-               self.enemy = world;
-               return;
-       }
 
        makevectors (self.angles);
        dot = normalize (self.enemy.origin - self.origin) * v_forward;
        if(dot > 0.3)
-       {
                Damage(self.enemy, self, self, bigdmg * monster_skill, DEATH_MONSTER_SPIDER, self.origin, '0 0 0');
-       }
-       
-       if (!monster_isvalidtarget(self.enemy, self, FALSE))
-               self.enemy = world;
                
        if(random() < 0.50)
                self.frame = spider_anim_attack;
        else
                self.frame = spider_anim_attack2;
 
-       self.nextthink = time + autocvar_g_monster_spider_attack_stand_delay;
+       self.attack_finished_single = time + autocvar_g_monster_spider_attack_stand_delay;
 }
 
 void spider_web_explode ()
index e75afac288a3829014d1814269e7ed38733927c6..eee62194fe9759291cccb556d9132019268e8c21 100644 (file)
@@ -873,7 +873,7 @@ MUTATOR_HOOKFUNCTION(td_MonsterFindTarget)
                if(e.turrcaps_flags & TFL_TURRCAPS_ISTURRET)
                        continue;
                
-               if(monster_isvalidtarget(e, self, FALSE))
+               if(monster_isvalidtarget(e, self))
                if((vlen(trace_endpos - self.origin) < 200 && e.turrcaps_flags & TFL_TURRCAPS_ISTURRET) || (vlen(trace_endpos - self.origin) < 200 && e.classname != "td_generator") || (vlen(trace_endpos - self.origin) < 500 && e.classname == "td_generator"))
                {
                        self.enemy = e;