public override void BuildRelation() { FSMWorldState state = FSMWroldStateFactory.Creat(); state.SetProperty(E_PropType.Speed, 1); _owner.AddRelation(E_ActionTYpe.Idle, E_ActionTYpe.Walk, state, 1); }
/// <summary> /// 初始化状态机 /// </summary> public void Initialize() { foreach (FSMBaseAction action in _actionSet.Values) { action.BuildRelation(); } _currentState = FSMWroldStateFactory.Creat(); _currentState.Initialize(); if (_actionSet.ContainsKey(_defaultAction)) { _currentAction = _actionSet[_defaultAction]; ActiveAction(_currentAction); } else { Debug.LogError("No This Action"); } }
/// <summary> /// 重置状态机 /// </summary> public void Reset() { if (_currentAction != null) { DeactiveAction(_currentAction); _currentAction = null; } if (_actionSet.ContainsKey(_defaultAction)) { _currentAction = _actionSet[_defaultAction]; } if (_currentAction == null) { Debug.LogError("No this Action"); } _isStop = false; _isTransform = true; _currentState = FSMWroldStateFactory.Creat(); }