using UnityEngine; //using static StreamingAssetLoader; //using static CheckServer; //using static CommunicationEvents; public class IngameUI_OnOff_mobile : MonoBehaviour { public int myUI_ID; public int default_value; private bool myUI_ID_is_valid; private int lasttime = -99; void Start() { myUI_ID_is_valid = myUI_ID >= 0 && myUI_ID < UIconfig.CanvasOnOff_Array.Length; if (myUI_ID_is_valid) { if (UIconfig.CanvasOnOff_Array[myUI_ID] != 2 || UIconfig.CanvasOnOff_Array[myUI_ID] != 3) { UIconfig.CanvasOnOff_Array[myUI_ID] = default_value; //Update(); } } } private void Update() { if (myUI_ID_is_valid && lasttime != UIconfig.CanvasOnOff_Array[myUI_ID]) { switch (UIconfig.CanvasOnOff_Array[myUI_ID]) { case 1: ActivateUIC(); break; case 0: ClearUIC(); break; case 3: ActivateUIC(); break; case 2: ClearUIC(); break; default: ClearUIC(); break; } lasttime = UIconfig.CanvasOnOff_Array[myUI_ID]; } } /// <summary> /// activates all child objects. /// </summary> private void ActivateUIC() { for (int i = 0; i < gameObject.transform.childCount; i++) { gameObject.transform.GetChild(i).gameObject.SetActive(true); } } /// <summary> /// Deactivates all child objects. /// </summary> private void ClearUIC() { for (int i = 0; i < gameObject.transform.childCount; i++) { gameObject.transform.GetChild(i).gameObject.SetActive(false); } } }