AirControl  1.3.0
Open Source, Modular, and Extensible Flight Simulator For Deep Learning Research
AC_AirplaneUI_Controller.cs
1 using System.Collections;
2 using System.Collections.Generic;
3 using UnityEngine;
4 using System.Linq;
5 using Communicator;
6 
7 namespace AirControl
8 {
12  public class AC_AirplaneUI_Controller : MonoBehaviour
13  {
14  #region Variables
15  public List<IAirplaneUI> instruments = new List<IAirplaneUI>();
16  private bool currentVisibility = true;
17  #endregion
18 
19  #region Builtin Methods
20  // Start is called before the first frame update
21  void Start()
22  {
23  instruments = transform.GetComponentsInChildren<IAirplaneUI>().ToList<IAirplaneUI>();
24  }
25 
26  // Update is called once per frame
27  void Update()
28  {
29  #region IOSwitch
30  bool showUIElements = StaticUISchema.ShowUIElements;
31  bool isActive = StaticUISchema.IsActive;
32  if(isActive)
33  {
34  transform.gameObject.SetActive(showUIElements);
35  }
36  #endregion
37 
38  if(instruments.Count>0)
39  {
40  foreach(IAirplaneUI instrument in instruments){
41  instrument.HandleAirplaneUI();
42  }
43  }
44  }
45  #endregion
46 
47  #region Custom Methods
48  #endregion
49  }
50 
51 
52 }
AirControl.IAirplaneUI
Definition: IAirplaneUI.cs:8
AirControl.AC_AirplaneUI_Controller
UI element controller
Definition: AC_AirplaneUI_Controller.cs:12
AirControl
Definition: AirplaneSelector.cs:8
Communicator
Definition: InputHandle.cs:10