public static string MethodNamePopup(GameObject gameobject, MonoBehaviour behaviour, int maxParameters, bool coroutinesOnly) { int indentLevel = EditorGUI.get_indentLevel(); EditorGUI.set_indentLevel(0); List <string> list = new List <string>(); list.Add(Strings.get_Label_None()); List <string> list2 = list; if (gameobject != null) { if (behaviour == null) { MonoBehaviour[] components = gameobject.GetComponents <MonoBehaviour>(); for (int i = 0; i < components.Length; i++) { MonoBehaviour behaviour2 = components[i]; list2.AddRange(SkillEditorGUILayout.GetMethodNames(behaviour2, maxParameters, coroutinesOnly)); } } else { list2.AddRange(SkillEditorGUILayout.GetMethodNames(behaviour, maxParameters, coroutinesOnly)); } } int num = EditorGUILayout.Popup(-1, list2.ToArray(), new GUILayoutOption[] { GUILayout.MaxWidth(20f) }); EditorGUI.set_indentLevel(indentLevel); if (num <= 0) { return(""); } return(list2.get_Item(num)); }