private void SetIndicatorState(E_Indicator indicator, bool state) { int i_state = state ? 1 : 0; int i_indicator = (int)indicator; indicator_renderers[i_indicator].material.SetColor("_Color", indicator_diffuse[i_state]); indicator_renderers[i_indicator].material.SetColor("_Emissive", indicator_emmisive[i_state]); indicator_state[i_indicator] = state; }
private void Activate_Indicator(E_Indicator indicator_code) { int indicator_index = (int)indicator_code; if (indicator_index >= 10) { return; } indicator_states[indicator_index] = true; indicator_renderers[indicator_index].material.SetColor("_Color", indicator_diffuse[1]); indicator_renderers[indicator_index].material.SetColor("_Emissive", indicator_emissive[1]); }
private void Toggle_Indicator(E_Indicator indicator_code) { int indicator_index = (int)indicator_code; if (indicator_index >= 10) { return; } indicator_states[indicator_index] = !indicator_states[indicator_index]; int i_state = indicator_states[indicator_index] ? 1 : 0; indicator_renderers[indicator_index].material.SetColor("_Color", indicator_diffuse[i_state]); indicator_renderers[indicator_index].material.SetColor("_Emissive", indicator_emissive[i_state]); }
//A coroutine for testing the color change. IEnumerator TestColorChange() { E_Indicator current_indicator = E_Indicator.E_THROTTLE_UP; while (true) { bool state = GetIndicatorState(current_indicator); SetIndicatorState(current_indicator, !state); if (current_indicator == E_Indicator.E_ROLL_RIGHT) { current_indicator = E_Indicator.E_THROTTLE_UP; } else { current_indicator = (E_Indicator)(((int)current_indicator) + 1); } yield return(new WaitForSeconds(1f)); } }
private bool GetIndicatorState(E_Indicator indicator) { int i_indicator = (int)indicator; return(indicator_state[i_indicator]); }