// Use this for initialization private void Start() { //lightSide = GetVehicleLightSide(lightType); if (!VehicleAPI.IsValidIndividualLight(lightType)) { throw new Exception("Light sides need to have a valid value, revise your code."); } setAppart = gameObject.GetComponent <Light>() != null; GameObject obj = gameObject; if (setAppart) { obj = new GameObject("Blinker"); obj.transform.parent = parent; obj.transform.position = parent.position + Vector3.right * (IsLeftSide ? -1 : 1) * .2f; obj.transform.localRotation = Quaternion.Euler(new Vector3(0, 30 * (IsLeftSide ? -1 : 1), 0)); } blinkerLight = obj.AddComponent <Light>(); VehicleAPI.SetLightProps(lightType, ref blinkerLight, true); defaultIntensity = blinkerLight.intensity; ToggleBlinker(false); InvokeRepeating("Cycle", 0, repeatInterval); }
// Use this for initialization private void Start() { if (!VehicleAPI.IsValidIndividualLight(lightType)) { throw new Exception("Light sides need to have a valid value, revise your code."); } GameObject obj = GameObject.CreatePrimitive(PrimitiveType.Capsule); //If you uncomment this wheels won't steer //Destroy(obj.GetComponent<CapsuleCollider>()); obj.name = string.Format("Blinker ({0})", lightType.ToString()); obj.transform.parent = parent; obj.transform.position = parent.position + Vector3.right * (IsLeftSide ? -1 : 1) * .2f; //obj.transform.localRotation = Quaternion.Euler(new Vector3(0, 30 * (IsLeftSide ? -1 : 1), 0)); obj.transform.localScale = Vector3.one * .2f; blinkerRenderer = obj.GetComponent <MeshRenderer>(); blinkerRenderer.material = Resources.Load <Material>("Materials/Blinker"); defaultIntensity = blinkerRenderer.material.GetFloat("_MKGlowPower"); blinkerSwitch = false; InvokeRepeating("Cycle", 0, repeatInterval); }