/// <summary> /// Event invoked when a character deletion is confirmed. /// </summary> private void OnCharacterDeleteConfirm() { if (this.m_DeletingCharacter == null) { return; } // If this character is selected if (this.m_DeletingCharacter.isSelected && this.m_CharactersContainer != null) { // Find and select new character foreach (Transform t in this.m_CharactersContainer) { Demo_CharacterSelectList_Character character = t.gameObject.GetComponent <Demo_CharacterSelectList_Character>(); // If the character is not the one we are deleting if (!character.Equals(this.m_DeletingCharacter)) { character.SetSelected(true); break; } } } // Invoke the on delete event if (this.m_OnCharacterDelete != null) { this.m_OnCharacterDelete.Invoke(this.m_DeletingCharacter.characterInfo); } // Delete the character game object Destroy(this.m_DeletingCharacter.gameObject); }