void ShowBaseFSMInspectorGUI() { EditorUtils.CoolLabel("Transitions"); if (outConnections.Count == 0) { GUI.backgroundColor = new Color(1, 1, 1, 0.5f); GUILayout.BeginHorizontal("box"); GUILayout.Label("No Transitions"); GUILayout.EndHorizontal(); GUI.backgroundColor = Color.white; } var onFinishExists = false; EditorUtils.ReorderableList(outConnections, delegate(int i){ FSMConnection connection = (FSMConnection)outConnections[i]; GUI.backgroundColor = new Color(1, 1, 1, 0.5f); GUILayout.BeginHorizontal("box"); if (connection.condition) { GUILayout.Label(connection.condition.summaryInfo); } else { GUILayout.Label("OnFinish" + (onFinishExists? " (exists)" : "")); onFinishExists = true; } GUILayout.FlexibleSpace(); GUILayout.Label("--> '" + connection.targetNode.nodeName + "'"); if (GUILayout.Button(">")) { Graph.currentSelection = connection; } GUILayout.EndHorizontal(); GUI.backgroundColor = Color.white; }); if (this.GetType() != typeof(FSMAnyState)) { transitionEvaluation = (TransitionEvaluation)EditorGUILayout.EnumPopup(transitionEvaluation); } EditorUtils.BoldSeparator(); }