/// <summary> /// Reset the supplied node properties. /// <param name="node">The node to be reseted.</param> /// </summary> public static void ResetNode(ActionNode node) { // Get the owner as an Uniyt object var ownerUnityObj = node != null ? node.owner as UnityEngine.Object : null; // Validate parameters if (ownerUnityObj != null) { // Register Undo #if UNITY_4_0_0 || UNITY_4_1 || UNITY_4_2 Undo.RegisterUndo(ownerUnityObj, "Reset Node"); #else Undo.RecordObject(ownerUnityObj, "Reset Node"); #endif node.name = node.GetType().Name; node.Reset(); node.OnValidate(); StateUtility.SetDirty(node.owner); } }