void CheckFocusedUnityWindow() { if (UnityEditor.EditorWindow.focusedWindow == null) { return; } string name = UnityEditor.EditorWindow.focusedWindow.ToString(); bool[] m_bPrevFocusWindows = new bool[(int)(UNITYWINDOW.Count)]; for (int n = 0; n < m_bFocusUnityWindows.Length; n++) { m_bPrevFocusWindows[n] = m_bFocusUnityWindows[n]; } NgUtil.ClearBools(m_bFocusUnityWindows); if (name.Contains(".ProjectWindow")) { m_bFocusUnityWindows[(int)(UNITYWINDOW.ProjectWindow)] = true; } if (name.Contains(".HierarchyWindow")) { m_bFocusUnityWindows[(int)(UNITYWINDOW.HierarchyWindow)] = true; } if (name.Contains(".InspectorWindow")) { m_bFocusUnityWindows[(int)(UNITYWINDOW.InspectorWindow)] = true; } if (name.Contains(".ConsoleWindow")) { m_bFocusUnityWindows[(int)(UNITYWINDOW.ConsoleWindow)] = true; } if (name.Contains(".GameView")) { m_bFocusUnityWindows[(int)(UNITYWINDOW.GameView)] = true; } if (name.Contains(".ColorPicker")) { m_bFocusUnityWindows[(int)(UNITYWINDOW.ColorPicker)] = true; } if (name.Contains(".ParticlsSystemWindow")) { m_bFocusUnityWindows[(int)(UNITYWINDOW.ParticlsSystemWindow)] = true; } if (m_bPrevFocusWindows[(int)(UNITYWINDOW.ProjectWindow)] == false && m_bFocusUnityWindows[(int)(UNITYWINDOW.ProjectWindow)] == true) { // NgUtil.LogMessage("Focused ProjectWindow !!!"); // SaveTool("AutoSave Prjoect"); } if (m_bPrevFocusWindows[(int)(UNITYWINDOW.ProjectWindow)] == true && m_bFocusUnityWindows[(int)(UNITYWINDOW.ProjectWindow)] == false) { // NgUtil.LogMessage("Unfocused ProjectWindow !!!"); // LoadTool("AutoReloaded Prjoect"); } if (m_bPrevFocusWindows[(int)(UNITYWINDOW.GameView)] == true && m_bFocusUnityWindows[(int)(UNITYWINDOW.GameView)] == false) { // NgUtil.LogMessage("Unfocused GameView !!!"); FxmPopupManager.inst.HideAllPopup(true); } if (m_bPrevFocusWindows[(int)(UNITYWINDOW.GameView)] == false && m_bFocusUnityWindows[(int)(UNITYWINDOW.GameView)] == true) { // NgUtil.LogMessage("Focused GameView !!!"); FXMakerHierarchy.inst.OnActiveHierarchy(); CreateCurrentInstanceEffect(true); } if ((m_bPrevFocusWindows[(int)(UNITYWINDOW.HierarchyWindow)] || m_bPrevFocusWindows[(int)(UNITYWINDOW.InspectorWindow)]) && m_bFocusUnityWindows[(int)(UNITYWINDOW.GameView)] == true) { // enable save FXMakerEffect.inst.SetChangePrefab(); // save background if (m_nToolIndex == 0) { SaveTool("AutoSave"); } // gUtil.LogMessage("Unfocused HierarchyWindow or InspectorWindow !!!"); // ShowToolMessage("Update FxmHierarchy"); // GetFXMakerHierarchy().ShowHierarchy(null); } }