public virtual void Start() { if (NavigationSystem == null) { NavigationSystem = GetComponentInParent <NavigationSystem <T> >(); Debug.AssertFormat(NavigationSystem != null, "NavigationFilter<{0}> did not find appropriate NavigationSystem in the hierarchy and will not work!", typeof(T).Name); } if (!IsScreenPartOfActiveArray(NavigationSystem.CurrentScreen)) { gameObject.SetActive(false); } NavigationSystem.ScreenChanged += Navigation_ScreenChanged; }
private void Navigation_ScreenChanged(object sender, NavigationSystem <T> .ScreenChangedEventArgs e) { gameObject.SetActive(IsScreenPartOfActiveArray(e.NewScreen)); }