/// <summary> /// Save all stats with PlayerPrefs. /// </summary> public static void SaveStats(RCC_CarControllerV3 vehicle) { if (!CheckVehicle(vehicle)) { return; } PlayerPrefs.SetFloat(vehicle.transform.name + "_FrontCamber", vehicle.FrontLeftWheelCollider.camber); PlayerPrefs.SetFloat(vehicle.transform.name + "_RearCamber", vehicle.RearLeftWheelCollider.camber); PlayerPrefs.SetFloat(vehicle.transform.name + "_FrontSuspensionsDistance", vehicle.FrontLeftWheelCollider.wheelCollider.suspensionDistance); PlayerPrefs.SetFloat(vehicle.transform.name + "_RearSuspensionsDistance", vehicle.RearLeftWheelCollider.wheelCollider.suspensionDistance); PlayerPrefs.SetFloat(vehicle.transform.name + "_FrontSuspensionsSpring", vehicle.FrontLeftWheelCollider.wheelCollider.suspensionSpring.spring); PlayerPrefs.SetFloat(vehicle.transform.name + "_RearSuspensionsSpring", vehicle.RearLeftWheelCollider.wheelCollider.suspensionSpring.spring); PlayerPrefs.SetFloat(vehicle.transform.name + "_FrontSuspensionsDamper", vehicle.FrontLeftWheelCollider.wheelCollider.suspensionSpring.damper); PlayerPrefs.SetFloat(vehicle.transform.name + "_RearSuspensionsDamper", vehicle.RearLeftWheelCollider.wheelCollider.suspensionSpring.damper); PlayerPrefs.SetFloat(vehicle.transform.name + "_MaximumSpeed", vehicle.maxspeed); PlayerPrefs.SetFloat(vehicle.transform.name + "_MaximumBrake", vehicle.brakeTorque); PlayerPrefs.SetFloat(vehicle.transform.name + "_MaximumTorque", vehicle.engineTorque); PlayerPrefs.SetString(vehicle.transform.name + "_DrivetrainMode", vehicle._wheelTypeChoise.ToString()); PlayerPrefs.SetFloat(vehicle.transform.name + "_GearShiftingThreshold", vehicle.gearShiftingThreshold); PlayerPrefs.SetFloat(vehicle.transform.name + "_ClutchingThreshold", vehicle.clutchInertia); RCC_PlayerPrefsX.SetBool(vehicle.transform.name + "_CounterSteering", vehicle.applyCounterSteering); foreach (RCC_Light _light in vehicle.GetComponentsInChildren <RCC_Light>()) { if (_light.lightType == RCC_Light.LightType.HeadLight) { RCC_PlayerPrefsX.SetColor(vehicle.transform.name + "_HeadlightsColor", _light.GetComponentInChildren <Light>().color); break; } } ParticleSystem ps = vehicle.RearLeftWheelCollider.allWheelParticles[0]; ParticleSystem.MainModule psmain = ps.main; RCC_PlayerPrefsX.SetColor(vehicle.transform.name + "_WheelsSmokeColor", psmain.startColor.color); RCC_PlayerPrefsX.SetBool(vehicle.transform.name + "_ABS", vehicle.ABS); RCC_PlayerPrefsX.SetBool(vehicle.transform.name + "_ESP", vehicle.ESP); RCC_PlayerPrefsX.SetBool(vehicle.transform.name + "_TCS", vehicle.TCS); RCC_PlayerPrefsX.SetBool(vehicle.transform.name + "_SH", vehicle.steeringHelper); RCC_PlayerPrefsX.SetBool(vehicle.transform.name + "NOS", vehicle.useNOS); RCC_PlayerPrefsX.SetBool(vehicle.transform.name + "Turbo", vehicle.useTurbo); RCC_PlayerPrefsX.SetBool(vehicle.transform.name + "ExhaustFlame", vehicle.useExhaustFlame); RCC_PlayerPrefsX.SetBool(vehicle.transform.name + "SteeringSensitivity", vehicle.steerAngleSensitivityAdjuster); RCC_PlayerPrefsX.SetBool(vehicle.transform.name + "RevLimiter", vehicle.useRevLimiter); RCC_PlayerPrefsX.SetBool(vehicle.transform.name + "ClutchMargin", vehicle.useClutchMarginAtFirstGear); }