]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Change the effect slightly for the seeker, and swap primary with secondary
authorSamual <samual@xonotic.org>
Mon, 21 Mar 2011 07:57:11 +0000 (03:57 -0400)
committerSamual <samual@xonotic.org>
Mon, 21 Mar 2011 07:57:11 +0000 (03:57 -0400)
models/sprites/make-sprites.sh
qcsrc/client/projectile.qc
qcsrc/server/w_seeker.qc

index 87f24a6d0b49fed6eb041a421f8b080d1e99002e..9f08c21f9ba13bf30c4540a194507a1ce508e8c0 100644 (file)
@@ -206,3 +206,5 @@ sprite item-fuelregen     "Fuel regen"    ff8000 000000 0.5 ff8000 ffff00 0.5
 sprite item-jetpack       "Jet Pack"      808080 000000 0.5 808080 ffff00 0.5
 
 sprite freezetag_frozen   "Frozen!"       40e6ff 000000 0.0 # bright cyan
+
+sprite tagged-target                   "Tagged"                                80ff0f 000000 0.25 80ff0f ffff80 0.25
index cede03c5a082c3e756cb9378b09885212d843781..319c36b9ae9461c59d8908e90817d063470fd5ab 100644 (file)
@@ -293,7 +293,7 @@ void Ent_Projectile()
                        case PROJECTILE_FIREMINE: self.model = ""; self.modelindex = 0; self.traileffect = particleeffectnum("firemine"); break; // particle effect is good enough
                        case PROJECTILE_TAG: setmodel(self, "models/laser.mdl"); self.traileffect = particleeffectnum("TR_ROCKET"); break;
                        case PROJECTILE_FLAC: setmodel(self, "models/hagarmissile.mdl"); self.scale = 0.4; self.traileffect = particleeffectnum("TR_ROCKET"); break;
-                       case PROJECTILE_SEEKER: setmodel(self, "models/tagrocket.md3"); self.scale = 2; self.traileffect = particleeffectnum("TR_ROCKET"); break;
+                       case PROJECTILE_SEEKER: setmodel(self, "models/tagrocket.md3"); self.traileffect = particleeffectnum("TR_ROCKET"); break;
                        default:
                                error("Received invalid CSQC projectile, can't work with this!");
                                break;
@@ -372,7 +372,6 @@ void Ent_Projectile()
                                self.maxs = '4 4 4';
                                break;
                        case PROJECTILE_TAG:
-                               loopsound(self, CHAN_PROJECTILE, "weapons/tag_rocket_fly.wav", VOL_BASE, ATTN_NORM);
                                self.mins = '-2 -2 -2';
                                self.maxs = '2 2 2';
                                break;
@@ -381,6 +380,7 @@ void Ent_Projectile()
                                self.maxs = '2 2 2';
                                break;
                        case PROJECTILE_SEEKER:
+                               loopsound(self, CHAN_PROJECTILE, "weapons/tag_rocket_fly.wav", VOL_BASE, ATTN_NORM);
                                self.mins = '-4 -4 -4';
                                self.maxs = '4 4 4';
                                break;
index 76709cf1e84b17edf19932c71b6d93d434edf0da..20519606910a5f45985cfa949431d6fc38d7829e 100644 (file)
@@ -235,8 +235,9 @@ void Seeker_Attack()
        traceline(self.origin + self.view_ofs, closest_target.origin, MOVE_NOMONSTERS, self);
        if ((!closest_target) || ((trace_fraction < 1) && (trace_ent != closest_target)))
                closest_target = world;
-       
-       Seeker_Fire_Missile('0 0 0', closest_target);
+        
+       // we don't need to do this because the model is going to be changed anyway. 
+       // CLEAN THIS UP IN THE FUTURE !!!!!!!!!!!
        /*
        switch(mod(self.bulletcounter, 4))
        {
@@ -255,7 +256,8 @@ void Seeker_Attack()
                        break;
        }
        */
-
+       
+       Seeker_Fire_Missile('0 0 0', closest_target);
 }
 
 void Seeker_Tracker_Think() 
@@ -332,7 +334,7 @@ void Seeker_Tag_Touch()
                        e.tag_time    = time;
                }
                        
-               WaypointSprite_Spawn("nb-ball", autocvar_g_balance_seeker_tag_tracker_lifetime, 0, other, '0 0 64', self.owner, 0, other, wps_tag_tracker, TRUE);
+               WaypointSprite_Spawn("tagged-target", autocvar_g_balance_seeker_tag_tracker_lifetime, 0, other, '0 0 64', self.owner, 0, other, wps_tag_tracker, TRUE);
                WaypointSprite_UpdateRule(other.wps_tag_tracker, 0, SPRITERULE_DEFAULT);
        }
 
@@ -390,9 +392,9 @@ float w_seeker(float req)
        if (req == WR_AIM)
        {
                if (Seeker_Tagged_Info(self, self.enemy) != world)
-                       self.BUTTON_ATCK2 = bot_aim(autocvar_g_balance_seeker_missile_speed_max, 0, autocvar_g_balance_seeker_missile_lifetime, FALSE);
+                       self.BUTTON_ATCK = bot_aim(autocvar_g_balance_seeker_missile_speed_max, 0, autocvar_g_balance_seeker_missile_lifetime, FALSE);
                else
-                       self.BUTTON_ATCK = bot_aim(autocvar_g_balance_seeker_tag_speed, 0, autocvar_g_balance_seeker_tag_lifetime, FALSE);
+                       self.BUTTON_ATCK2 = bot_aim(autocvar_g_balance_seeker_tag_speed, 0, autocvar_g_balance_seeker_tag_lifetime, FALSE);
        }
        else if (req == WR_THINK)
        {
@@ -401,19 +403,19 @@ float w_seeker(float req)
                        
                else if (self.BUTTON_ATCK)
                {
-                       if (weapon_prepareattack(0, autocvar_g_balance_seeker_tag_refire))
+                       if (weapon_prepareattack(0, autocvar_g_balance_seeker_missile_refire))
                        {
-                               Seeker_Fire_Tag();
-                               weapon_thinkf(WFRAME_FIRE1, autocvar_g_balance_seeker_tag_animtime, w_ready);
+                               Seeker_Attack();
+                               weapon_thinkf(WFRAME_FIRE2, autocvar_g_balance_seeker_missile_animtime, w_ready);
                        }
                }
 
                else if (self.BUTTON_ATCK2)
                {
-                       if (weapon_prepareattack(1, autocvar_g_balance_seeker_missile_refire))
+                       if (weapon_prepareattack(1, autocvar_g_balance_seeker_tag_refire))
                        {
-                               Seeker_Attack();
-                               weapon_thinkf(WFRAME_FIRE2, autocvar_g_balance_seeker_missile_animtime, w_ready);
+                               Seeker_Fire_Tag();
+                               weapon_thinkf(WFRAME_FIRE1, autocvar_g_balance_seeker_tag_animtime, w_ready);
                        }
                }
        }
@@ -434,14 +436,14 @@ float w_seeker(float req)
        }
        else if (req == WR_CHECKAMMO1)
        {
-               ammo_amount = self.ammo_rockets >= autocvar_g_balance_seeker_tag_ammo;
-               ammo_amount += self.weapon_load[WEP_SEEKER] >= autocvar_g_balance_seeker_tag_ammo;
+               ammo_amount = self.ammo_rockets >= autocvar_g_balance_seeker_missile_ammo;
+               ammo_amount += self.weapon_load[WEP_SEEKER] >= autocvar_g_balance_seeker_missile_ammo;
                return ammo_amount;
        }
        else if (req == WR_CHECKAMMO2)
        {
-               ammo_amount = self.ammo_rockets >= autocvar_g_balance_seeker_missile_ammo;
-               ammo_amount += self.weapon_load[WEP_SEEKER] >= autocvar_g_balance_seeker_missile_ammo;
+               ammo_amount = self.ammo_rockets >= autocvar_g_balance_seeker_tag_ammo;
+               ammo_amount += self.weapon_load[WEP_SEEKER] >= autocvar_g_balance_seeker_tag_ammo;
                return ammo_amount;
        }
        else if (req == WR_RELOAD)