void Awake() { // Subscribe to setSteeringController event. Events.setSteeringController += OnSetSteeringController; // Obtain WheeledVehicle reference. wheeledVehicle = GetComponentInChildren <WheeledVehicle>(); if (!wheeledVehicle) { Debug.LogWarning("Unable to find required WheeledVehicle for WheeledVehicleSteeringModeAdapter on " + name); return; } // Go through all SteerCharacteristics and store names in a dictionary for easy lookup. foreach (SteerCharacteristics sc in steerCharacteristics) { steerCharacteristicDictionary.Add(sc.steeringControllerName, sc); } // Save original values as defaults. defaultCharacteristics.maxTurnSpeed = wheeledVehicle.maxTurnSpeed; defaultCharacteristics.maxTurnSpeedAtMax = wheeledVehicle.maxTurnSpeedAtMax; defaultCharacteristics.maxTurnAngle = wheeledVehicle.maxTurnAngle; defaultCharacteristics.maxTurnAngleAtMax = wheeledVehicle.maxTurnAngleAtMax; // Init current controller if (Events.currentSteeringController) { OnSetSteeringController(Events.currentSteeringController); } }
protected virtual void Awake() { // Obtain Wheeled vehicle reference. wheeledVehicle = GetComponent <WheeledVehicle>(); if (!wheeledVehicle) { Debug.LogWarning("No WheeledVehicle found for WheeledVehicleSound on " + name); } }