public void OutofVehicle() { switch (actualVehicle.vehicleType) { case VehicleType.Drone: camera.transform.parent = null; actualVehicle.GetComponent <SteeringDrone>().enabled = false; break; case VehicleType.Tractor: playerSteering.simpleCamera.enabled = false; mainVehicle.transform.parent = null; mainVehicle.GetComponent <Rigidbody>().isKinematic = false; foreach (Shooter weapon in weaponManager.weapons_Shooter) { weapon.aimer.GetComponent <PlayerAim>().enabled = false; } actualVehicle.GetComponent <SteeringTractor>().enabled = false; actualVehicle.GetComponent <TrailerTrolley>().enabled = false; break; case VehicleType.Robot: playerSteering.simpleSmooth.enabled = false; mainVehicle.transform.parent = null; mainVehicle.GetComponent <Rigidbody>().isKinematic = false; actualVehicle.GetComponent <RobotLegsWheelsSteering>().enabled = false; actualVehicle.GetComponent <RobotGrabber>().enabled = false; break; } }
public void IntoVehicle(VehicleTypeDefiner newVehicle) { ParentAndZero(newVehicle.transform, transform); UnparentRigidbodies UNPR = newVehicle.GetComponent <UnparentRigidbodies>(); Transform[] manytransforms; if (UNPR != null) { manytransforms = UNPR.originalChildren; } else { manytransforms = newVehicle.GetComponentsInChildren <Transform>(); } Transform cameraPoint = null; Transform Driver = null; for (int i = 0; i < manytransforms.Length; i++) { if (manytransforms[i].name == "CameraPoint") { cameraPoint = manytransforms[i]; } if (manytransforms[i].name == "Driver") { Driver = manytransforms[i]; } } if (cameraPoint == null) { Debug.LogError("There's no \"CameraPoint\" in " + newVehicle.name); return; } weaponManager = newVehicle.GetComponent <WeaponManager>(); if (weaponManager == null) { Debug.Log("There's no \"WeaponManager\" in " + newVehicle.name); } //camera = GameManager.Instance.camera.transform; switch (newVehicle.vehicleType) { case VehicleType.Drone: ParentAndZero(cameraPoint, camera.transform); playerSteering.steeringDrone = newVehicle.GetComponent <SteeringDrone>(); playerSteering.steeringDrone.enabled = true; break; case VehicleType.Tractor: playerSteering.simpleCamera.enabled = true; playerSteering.simpleCamera.target = cameraPoint; if (Driver) { mainVehicle.GetComponent <Rigidbody>().isKinematic = true; ParentAndZero(Driver, mainVehicle.transform); } foreach (Shooter weapon in weaponManager.weapons_Shooter) { PlayerAim PA = weapon.aimer.GetComponent <PlayerAim>(); PA.enabled = true; PA.camera = camera.transform; } playerSteering.tractorScriptEasy = newVehicle.GetComponent <SteeringTractor>(); playerSteering.trailerTrolley = newVehicle.GetComponent <TrailerTrolley>(); playerSteering.tractorScriptEasy.enabled = true; playerSteering.trailerTrolley.enabled = true; break; case VehicleType.Robot: playerSteering.simpleSmooth.enabled = true; playerSteering.simpleSmooth.target = cameraPoint; playerSteering.simpleSmooth.lookTarget = newVehicle.transform; playerSteering.smoothHelper = newVehicle.GetComponentInChildren <RobotSimpleSmoothHelper>(); ParentAndZero(camera.transform, mainVehicle.transform); mainVehicle.GetComponent <Rigidbody>().isKinematic = true; playerSteering.robotWheelsSteering = newVehicle.GetComponent <RobotLegsWheelsSteering>(); playerSteering.robotWheelsSteering.enabled = true; playerSteering.robotGrabber = newVehicle.GetComponent <RobotGrabber>(); playerSteering.robotGrabber.enabled = true; break; } actualVehicle = newVehicle; actualRigidbody = actualVehicle.GetComponent <Rigidbody>(); GUI.setGUI(newVehicle); }
public void setGUI(VehicleTypeDefiner what) { switch (what.vehicleType) { case VehicleType.Drone: if (!GUIDrone.activeSelf) { GUIDrone.SetActive(true); } if (GUIRobot.activeSelf) { GUIRobot.SetActive(false); } if (GUITractor.activeSelf) { GUITractor.SetActive(false); } leanCamera.SetActive(false); drone = GUIDrone.GetComponent <GUIDrone>(); drone.altmeter = what.GetComponent <AltitudeMeter>(); drone.lightPanel.SetState(new bool[] { player.playerSteering.steeringDrone.motorsOn, player.playerSteering.steeringDrone.selfLeveling, player.playerSteering.steeringDrone.keepAltitude, player.playerSteering.steeringDrone.stabilize }); GUIDrone.GetComponentInChildren <HealthBarScript>().life = what.GetComponent <Life>(); break; case VehicleType.Tractor: if (GUIDrone.activeSelf) { GUIDrone.SetActive(false); } if (GUIRobot.activeSelf) { GUIRobot.SetActive(false); } if (!GUITractor.activeSelf) { GUITractor.SetActive(true); } GUITractor.GetComponentInChildren <HealthBarScript>().life = what.GetComponent <Life>(); leanCamera.SetActive(false); break; case VehicleType.Robot: if (GUIDrone.activeSelf) { GUIDrone.SetActive(false); } if (!GUIRobot.activeSelf) { GUIRobot.SetActive(true); } if (GUITractor.activeSelf) { GUITractor.SetActive(false); } GUIRobot.GetComponentInChildren <HealthBarScript>().life = what.GetComponent <Life>(); leanCamera.SetActive(false); break; } }