private IEnumerator <YieldInstruction> CheckActionGroupEditor() { while (EditorLogic.fetch == null) { yield return(null); } EditorLogic editor = EditorLogic.fetch; while (EditorLogic.fetch != null) { if (editor.editorScreen == EditorScreen.Actions) { if (!ActionGroupMode) { HideGUI(); OnActionGroupEditorOpened.Fire(); } EditorActionGroups age = EditorActionGroups.Instance; if (missile_module && !age.GetSelectedParts().Contains(missile_module.part)) { HideGUI(); } ActionGroupMode = true; } else { if (ActionGroupMode) { HideGUI(); OnActionGroupEditorClosed.Fire(); } ActionGroupMode = false; } yield return(null); } }