public void SendOnComboSuccess(ComboSequence sequence)
 {
     foreach (IComboListener listener in listeners)
     {
         listener.OnComboSuccess(sequence.Name);
     }
 }
        void ShowComboSequences()
        {
            if (string.IsNullOrEmpty(comboManagerProperty.FindPropertyRelative("inputEnumName").GetValue<string>()))
            {
                EditorGUILayout.HelpBox("Create an Enum starting with the prefix 'Combo' with your input options.", MessageType.Info);
                return;
            }

            combosProperty = comboManagerProperty.FindPropertyRelative("combos");

            if (AddFoldOut(combosProperty, "Combos".ToGUIContent()))
            {
                comboManager.combos[comboManager.combos.Length - 1] = new ComboSequence(comboSystem);
                comboManager.combos[comboManager.combos.Length - 1].SetUniqueName(comboManager.combos, "default", "");
            }

            if (combosProperty.isExpanded)
            {
                EditorGUI.indentLevel += 1;

                for (int i = 0; i < combosProperty.arraySize; i++)
                {
                    currentSequence = comboManager.combos[i];
                    currentSequenceProperty = combosProperty.GetArrayElementAtIndex(i);

                    BeginBox();

                    if (DeleteFoldOut(combosProperty, i, GetComboSequenceName(currentSequence).ToGUIContent(), GetComboSequenceStyle()))
                    {
                        break;
                    }

                    ShowComboSequence();

                    EndBox();
                }

                Separator();
                EditorGUI.indentLevel -= 1;
            }
        }
        string GetComboSequenceName(ComboSequence sequence)
        {
            string displayName = sequence.Name + " (";

            foreach (ComboSequenceItem item in sequence.items)
            {
                displayName += GetComboSequenceItemName(item);

                if (item != sequence.items.Last())
                {
                    displayName += " + ";
                }
            }

            displayName += ")";

            return displayName;
        }