protected void AddViewState <E, S>(E state, S viewState) where S : BaseViewState <StateViewWin <T> > { m_ViewStateMachine.AddViewState(Enum.GetName(typeof(E), state), viewState); }
protected override void OnInit() { base.OnInit(); m_ViewStateMachine = new ViewStateMachine <UIWaiGongFang>(this, m_UI.m_ViewState); m_ViewStateMachine.AddViewState(Enum.GetName(typeof(EViewState), EViewState.BuyList), new BuyListState()); m_ViewStateMachine.AddViewState(Enum.GetName(typeof(EViewState), EViewState.SelectSkillType), new SelectXinFaState()); m_ViewStateMachine.AddViewState(Enum.GetName(typeof(EViewState), EViewState.SelectSkill), new SelectCanBenState()); m_ViewStateMachine.AddViewState(Enum.GetName(typeof(EViewState), EViewState.SelectPupil), new SelectPupilState()); m_ViewStateMachine.AddViewState(Enum.GetName(typeof(EViewState), EViewState.CreatingBeforeChoke), new CreatingBeforeChokeState()); m_ViewStateMachine.AddViewState(Enum.GetName(typeof(EViewState), EViewState.Choking), new ChokingState()); m_ViewStateMachine.AddViewState(Enum.GetName(typeof(EViewState), EViewState.SelectPlace), new SelectPlaceState()); m_ViewStateMachine.AddViewState(Enum.GetName(typeof(EViewState), EViewState.CreatingBeforeEvent), new CreatingBeforeEventState()); m_ViewStateMachine.AddViewState(Enum.GetName(typeof(EViewState), EViewState.SelectEvent), new SelectEventState()); m_ViewStateMachine.AddViewState(Enum.GetName(typeof(EViewState), EViewState.CreatingAfterEvent), new CreatingAfterEventState()); m_ViewStateMachine.AddViewState(Enum.GetName(typeof(EViewState), EViewState.CreateFinished), new CreateFinishedState()); // 按钮绑定 m_UI.m_BtnBack.onClick.Set(ViewBack); // 返回 m_UI.m_BtnSelectBookFinish.onClick.Set(OnSelectBookFinish); m_UI.m_Progress.max = 1; m_UI.m_Progress.value = 0; m_UI.m_CreatingBookInfo.onAddedToStage.Set(OnRefreshCreatingBookInfo); m_UI.m_CreateSkillInfo.onAddedToStage.Set(OnRefreshCreateSkillInfo); var prefab = Resources.Load("Art_A/Effect/prefabs/UI_wx_zz_ldl"); var go = UnityEngine.Object.Instantiate(prefab) as GameObject; go.transform.localScale = new Vector3(100, 100, 1); m_UI.m_FireEffect.SetNativeObject(new GoWrapper(go)); prefab = Resources.Load("Art_A/Effect/prefabs/UI_wx_yd_xh"); go = UnityEngine.Object.Instantiate(prefab) as GameObject; go.transform.localScale = new Vector3(100, 100, 1); m_UI.m_CreatingEffect.SetNativeObject(new GoWrapper(go)); prefab = Resources.Load("Art_A/Effect/prefabs/UI_wx_yd_xh_1"); go = UnityEngine.Object.Instantiate(prefab) as GameObject; go.transform.localScale = new Vector3(100, 100, 1); m_UI.m_CreatingEffect1.SetNativeObject(new GoWrapper(go)); }