void AddCharacter(object obj) { ME_GiveItem evt = (ME_GiveItem)target; int id = (int)obj; evt.CharacterId = id; }
void AddItem(object obj) { ME_GiveItem evt = (ME_GiveItem)target; int index = (int)obj; evt.itemToGive = EditorTools.ItemDatabase.items[index]; evt.amount = 1; }
public override void OnGUI() { ME_GiveItem evt = (ME_GiveItem)target; EditorGUILayout.BeginHorizontal(); if (evt.CharacterId != -1) { EditorGUILayout.LabelField("Character :" + miss.FindCharacter(evt.CharacterId)._Name); } else { EditorGUILayout.HelpBox("Please Set Character!", MessageType.Warning); } if (GUILayout.Button("Select")) { GenericMenu CreateMenu = new GenericMenu(); int _i = 0; for (int i = 0; i < miss.Teams.Count; i++) { int _q = 0; for (int q = 0; q < miss.Teams[i].members.Count; q++) { _i = i; _q = q; CreateMenu.AddItem(new GUIContent("Team " + i + "/" + miss.Teams[_i].members[_q]._Name), false, AddCharacter, miss.Teams[_i].members[_q].id.ToInt()); } } CreateMenu.ShowAsContext(); } EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); if (evt.itemToGive != null) { EditorGUILayout.LabelField("Item :" + evt.itemToGive.ItemName); } else { EditorGUILayout.HelpBox("Please Set Item!", MessageType.Warning); } if (GUILayout.Button("Select")) { GenericMenu CreateMenu = new GenericMenu(); int _i = 0; for (int i = 0; i < EditorTools.ItemDatabase.ItemNames.Length; i++) { _i = i; CreateMenu.AddItem(new GUIContent(EditorTools.ItemDatabase.ItemNames[i]), false, AddItem, _i); } CreateMenu.ShowAsContext(); } EditorGUILayout.EndHorizontal(); EditorGUI.BeginChangeCheck(); evt.amount = EditorGUILayout.IntField(evt.amount); if (EditorGUI.EndChangeCheck()) { evt.amount = Mathf.Max(1, evt.amount); } EditorGUILayout.Space(); base.OnGUI(); EditorGUILayout.Space(); }