// Update is called once per frame void Update () { timeAcum += Time.deltaTime; if(timeAcum >= timeChangeState) { timeAcum = 0; switch (state) { case SemaphoreStates.RouteOne: state = SemaphoreStates.FromRouteOne; break; case SemaphoreStates.RouteTwo: state = SemaphoreStates.FromRouteTwo; break; case SemaphoreStates.FromRouteOne: state = SemaphoreStates.RouteTwo; break; case SemaphoreStates.FromRouteTwo: state = SemaphoreStates.RouteOne; break; } changeSemaphores(); } }
// Use this for initialization void Start () { if (!Generator.getInstance().withSemaphores) { for(int i = 0; i < routeOne.Length; i++) { Destroy(routeOne[i]); } for (int i = 0; i < routeTwo.Length; i++) { Destroy(routeTwo[i]); } this.enabled = false; return; } timeSemaphone = Random.Range(m_minTimeChange, m_maxTimeChange) + Random.value; timeAcum = 0; state = (SemaphoreStates)Random.Range(0,4); changeSemaphores(); }