public static void OpenAnimationWindow(bool pIsPlayer = false) { if (mWindow != null) { mWindow.Close(); mWindow = null; } mWindow = GetWindow <AddAnimationWindow>(); mWindow.minSize = new Vector2(500, 500); mWindow.titleContent = new GUIContent("Add New Animation"); mIsPlayer = pIsPlayer; mWindow.mAnimationData.mAnimationName = "New Animation"; mWindow.mAnimationData.mAnimSpeed = 5.0f; mWindow.mAnimationData = new AnimationData(); mWindow.mAnimationData.mSprites = new List <Sprite>(); mWindow.mAnimations = new ReorderableList(mWindow.mAnimationData.mSprites, typeof(Sprite)); mWindow.mAnimations.drawHeaderCallback = (Rect aRect) => { EditorGUI.LabelField(aRect, "Animation Sprites"); }; mWindow.mAnimations.drawElementCallback = mWindow.UpdateAnimationList; mWindow.mAnimations.onAddCallback = mWindow.AddNewAnimation; }