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); } }
private void OnTreeStateComponentUpdate(TreeState.Update update) { if (update.currentState.HasValue) { UpdateTreeTag(update.currentState.Value); } }
private void UpdateVisualization(TreeState.Update newState) { ShowTreeModel(newState.currentState.Value); }