X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Ftturrets%2Fsystem%2Fsystem_main.qc;h=726aa7be44c9df5f6963e79a5af55ac820a038bc;hb=1633673cc6c65bdca0120f2a4fc33e8c2449f06d;hp=b1a97ba44649ea4cd616650513c15a4ef9312528;hpb=966ecd5b871fc8ef6db7665c08bd17971a8830db;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/tturrets/system/system_main.qc b/qcsrc/server/tturrets/system/system_main.qc index b1a97ba44..726aa7be4 100644 --- a/qcsrc/server/tturrets/system/system_main.qc +++ b/qcsrc/server/tturrets/system/system_main.qc @@ -145,7 +145,7 @@ void turret_projectile_explode() { self.takedamage = DAMAGE_NO; - self.event_damage = SUB_Null; + self.event_damage = func_null; #ifdef TURRET_DEBUG float d; d = RadiusDamage (self, self.owner, self.owner.shot_dmg, 0, self.owner.shot_radius, self, self.owner.shot_force, self.totalfrags, world); @@ -381,7 +381,7 @@ void turret_stdproc_track() } // CSQC - self.SendFlags = TNSF_ANG; + self.SendFlags |= TNSF_ANG; return; @@ -718,15 +718,13 @@ entity turret_select_target() float m_score; // currently best scoreing target's score m_score = 0; - if(self.enemy) - if(self.enemy.takedamage) - if(turret_validate_target(self,self.enemy,self.target_validate_flags) > 0) + if(self.enemy && self.enemy.takedamage && turret_validate_target(self,self.enemy,self.target_validate_flags) > 0) { e_enemy = self.enemy; m_score = self.turret_score_target(self,e_enemy) * self.target_select_samebias; } else - self.enemy = world; + e_enemy = self.enemy = world; e = findradius(self.origin, self.target_range); @@ -871,7 +869,7 @@ void turret_think() // Check if we have a vailid enemy, and try to find one if we dont. // g_turrets_targetscan_maxdelay forces a target re-scan at least this often - float do_target_scan; + float do_target_scan = 0; if((self.target_select_time + autocvar_g_turrets_targetscan_maxdelay) < time) do_target_scan = 1; @@ -1018,7 +1016,7 @@ void turrets_manager_think() */ float turret_stdproc_init (string cvar_base_name, string base, string head, float _turret_type) { - entity e, ee; + entity e, ee = world; // Are turrets allowed? if (autocvar_g_turrets == 0) @@ -1062,12 +1060,7 @@ float turret_stdproc_init (string cvar_base_name, string base, string head, floa self.effects = EF_NODRAW; // Handle turret teams. - if (autocvar_g_assault != 0) - { - if not (self.team) - self.team = 14; // Assume turrets are on the defending side if not explicitly set otehrwize - } - else if not (teamplay) + if not (teamplay) self.team = MAX_SHOT_DISTANCE; // Group all turrets into the same team, so they dont kill eachother. else if(g_onslaught && self.targetname) {