]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/vehicles/vehicles.qc
Merge remote-tracking branch 'origin/terencehill/cmd_fixes'
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / vehicles / vehicles.qc
index 87ceecc0c61fd2688a5a6243fdf34f59d5561798..16a339e09f40380dec3e1f84cfb5512d63252d5f 100644 (file)
@@ -659,7 +659,11 @@ void vehicles_enter()
 
     CSQCVehicleSetup(self.owner, self.hud);
     
+    vh_player = other;
+    vh_vehicle = self;
     MUTATOR_CALLHOOK(VehicleEnter);
+    other = vh_player;
+    self = vh_vehicle;
 
     self.vehicle_enter();
     antilag_clear(other);
@@ -783,13 +787,6 @@ void vehicles_exit(float eject)
         _player.hud            = HUD_NORMAL;
         _player.switchweapon   = _vehicle.switchweapon;
 
-        if(_player.flagcarried)
-        {
-            _player.flagcarried.scale = 0.6;
-            setattachment(_player.flagcarried, _player, "");
-            setorigin(_player.flagcarried, FLAG_CARRY_POS);
-        }
-
         CSQCVehicleSetup(_player, HUD_NORMAL);
     }
     _vehicle.flags |= FL_NOTARGET;
@@ -802,10 +799,20 @@ void vehicles_exit(float eject)
     if(!teamplay)
         _vehicle.team = 0;
     else
-    
-    self.team = self.tur_head.team;
-   
+
+    vh_player = _player;
+    vh_vehicle = _vehicle;
     MUTATOR_CALLHOOK(VehicleExit);
+    _player = vh_player;
+    _vehicle = vh_vehicle;
+
+    _vehicle.team = _vehicle.tur_head.team;
+        
+    sound (_vehicle, CH_TRIGGER_SINGLE, "misc/null.wav", 1, ATTN_NORM);
+    _vehicle.vehicle_hudmodel.viewmodelforclient = _vehicle;   
+    _vehicle.phase = time + 1;
+    
+    _vehicle.vehicle_exit(eject);
     
     vehicles_setreturn();
     vehicles_reset_colors();