public void RemovePlayerFromVehicle() { CmdSetDriving(false); isDriving = false; var vehicleIdentity = vehicle.GetComponent <NetworkIdentity>(); interaction.CmdSetVehicleActive(false, vehicleIdentity); interaction.CmdSetPlayerInSeat(false, vehicleIdentity); vehicle.seatedPlayer = null; CmdRemoveVehicleAuthority(vehicleIdentity); transform.position = vehicle.seat.position; transform.rotation = vehicle.seat.rotation; vehicle = null; }
private void EnterVehicleWithTimer(VehicleBehaviour vehicleBrain) { if (Input.GetKey(KeyCode.F)) { enterTimer += Time.fixedDeltaTime; //INCREMENT TIME WHILE THE 'F' KEY IS HELD } else { enterTimer = 0; //RESET TIMER } if (enterTimer >= TimeToEnterVehicle) { var vActive = vehicleBrain.vehicleActive; var vehicleIdentity = vehicleBrain.GetComponent <NetworkIdentity>(); if (!isHolding && !vehicleBrain.isDestroyed) //DO NOT ENTER VEHICLE WHILE HOLDING AN ITEM, OR IF THE VEHICLE IS DESTROYED { if (!vActive && playerBrain.vehicle == null) //CHECK IF THE VEHICLE IS ALREADY IN USE { //GET IN THE VEHICLE playerBrain.CmdSetDriving(true); playerBrain.SetVehicle(vehicleBrain); CmdSetVehicleActive(true, vehicleIdentity); CmdSetPlayerInSeat(true, vehicleIdentity); CmdSetVehicleColor(playerBrain.vehicleColor, vehicleIdentity); CmdAssignVehicleAuthority(vehicleIdentity); vehicleBrain.seatedPlayer = playerBrain; var player_netIdentity = playerBrain.GetComponent <NetworkIdentity>(); vehicleBrain.owner = player_netIdentity; exitTimer = 0.0f; enterTimer = 0.0f; } } } }