Esempio n. 1
0
        public void TriggerTransition(TreeFSMState newState)
        {
            if (tree == null)
            {
                Debug.LogError("Trying to change state without authority.");
                return;
            }

            if (IsValidTransition(newState))
            {
                Data.CurrentState = newState;

                var update = new TreeState.Update()
                {
                    CurrentState = Data.CurrentState,
                };
                tree.SendUpdate(update);

                TransitionTo(newState);
            }
            else
            {
                Debug.LogErrorFormat("Tree: Invalid transition from {0} to {1} detected.", Data.CurrentState, newState);
            }
        }
Esempio n. 2
0
 private void OnTreeStateComponentUpdate(TreeState.Update update)
 {
     if (update.currentState.HasValue)
     {
         UpdateTreeTag(update.currentState.Value);
     }
 }
 private void UpdateVisualization(TreeState.Update newState)
 {
     ShowTreeModel(newState.currentState.Value);
 }