]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Attach flagcarries flag to vehicle, scale up and position flag when carried by vehicle
authorJakob MG <jakob_mg@hotmail.com>
Sun, 12 Jun 2011 17:09:49 +0000 (19:09 +0200)
committerJakob MG <jakob_mg@hotmail.com>
Sun, 12 Jun 2011 17:09:49 +0000 (19:09 +0200)
qcsrc/server/vehicles/racer.qc
qcsrc/server/vehicles/raptor.qc
qcsrc/server/vehicles/spiderbot.qc
qcsrc/server/vehicles/vehicles.qc

index 2e705d212ba88291bebab6f1dd0f5df78fa478a0..f62925f299b659efdc671b89a7bc28f607477335 100644 (file)
@@ -487,6 +487,9 @@ void racer_enter()
     self.movetype = MOVETYPE_BOUNCE;
     self.owner.vehicle_health = (self.vehicle_health / autocvar_g_vehicle_racer_health);
     self.owner.vehicle_shield = (self.vehicle_shield / autocvar_g_vehicle_racer_shield);
+    
+    if(self.owner.flagcarried)
+       setorigin(self.owner.flagcarried, '-190 0 96');
 }
 
 void racer_exit(float eject)
index 65ac2c977fe22a3bb4be6fb00178a901e1f94206..e51174b79fa18199d589f110c8520263eb11a5a2 100644 (file)
@@ -197,6 +197,9 @@ void raptor_enter()
     self.delay = time + autocvar_g_vehicle_raptor_bombs_refire;
     self.lip   = time;
 
+    if(self.owner.flagcarried)
+       setorigin(self.owner.flagcarried, '-20 0 96');
+
 }
 
 void raptor_land()
index 966001e2dbcbadf00654c3ec93ebef461d8aafd4..1c33e53f3bf7b3d3cc558a3ca8bd45c0e560fe7c 100644 (file)
@@ -423,6 +423,14 @@ void spiderbot_enter()
 
     self.owner.vehicle_health = (self.vehicle_health / autocvar_g_vehicle_spiderbot_health);
     self.owner.vehicle_shield = (self.vehicle_shield / autocvar_g_vehicle_spiderbot_shield);
+
+    if(self.owner.flagcarried)
+    {
+        setattachment(self.owner.flagcarried, self.tur_head, ""); 
+        setorigin(self.owner.flagcarried, '-20 0 120'); 
+    }
+       
+
 }
 
 void spiderbot_exit(float eject)
index 1a2079b9cac49321a5e6e7fb1424501f36c7cb60..8a5e3f81b8a201d28772b3c6c0fbf6ef5e1383e8 100644 (file)
@@ -497,7 +497,14 @@ void vehicles_enter()
     vehicles_clearrturn();
 
     CSQCVehicleSetup(self.owner, self.hud);
-
+    
+    if(other.flagcarried)
+    {
+        other.flagcarried.scale = 1;
+        setattachment(other.flagcarried, self, ""); 
+        setorigin(other, '0 0 96');
+    }
+    
     self.vehicle_enter();
 }
 
@@ -508,7 +515,7 @@ void vehicles_enter()
 **/
 vector vehicles_findgoodexit(vector prefer_spot)
 {
-    vector exitspot;
+    //vector exitspot;
     float mysize;
     
     tracebox(self.origin + '0 0 32', PL_MIN, PL_MAX, prefer_spot, MOVE_NORMAL, self.owner);
@@ -601,6 +608,13 @@ void vehicles_exit(float eject)
     if(!teamplay)
         self.team = 0;
 
+    if(self.owner.flagcarried)
+    {
+        self.owner.flagcarried.scale = 0.6;
+        setattachment(self.owner.flagcarried, self.owner, ""); 
+        setorigin(self.owner.flagcarried, FLAG_CARRY_POS);
+    }
+    
     self.vehicle_exit(eject);
     self.owner = world;
 }