private ASState FindState(string stateName) { ASState state = null; if (!m_StateDict.TryGetValue(stateName, out state)) { Debug.LogError("不存在次状态"); return(null); } return(state); }
public void SwitchState(string newState) { ASState state = FindState(newState); if (state == null) { Debug.Log("不能找到,是不是名字出错了"); return; } m_StateList[m_StateList.Count - 1].Exit(state); state.Enter(m_StateList[m_StateList.Count - 1]); m_StateList.RemoveAt(m_StateList.Count - 1); m_StateList.Add(state); }
public override void Exit(ASState to) { this.gameObject.SetActive(false); taskText.text = "结束任务,我要退出舞台了"; }
public override void Enter(ASState @from) { this.gameObject.SetActive(true); taskText = transform.GetChild(0).GetComponent <Text>(); taskText.text = "我是任务系统:你的任务就是了解有限状态机....."; }
public abstract void Enter(ASState from);
public abstract void Exit(ASState to);
public override void Exit(ASState to) { this.gameObject.SetActive(false); shopText.text = "谢谢惠顾,欢迎下次光临....."; }
public override void Enter(ASState from) { this.gameObject.SetActive(true); shopText = transform.GetChild(0).GetComponent <Text>(); shopText.text = "我是老板,有什么东西找我买..."; }
public override void Exit(ASState to) { this.gameObject.SetActive(false); integralText.text = "我要退出了"; }
public override void Enter(ASState @from) { this.gameObject.SetActive(true); integralText = transform.GetChild(0).GetComponent <Text>(); integralText.text = "我是计分系统,你的分数由我主宰"; }