protected override void Dettach(M3DCharacterManager characterManager) { characterManager.DetachAndUnloadProp(morph3DDefinition.item); var itemsToRemove = characterManager .GetAllAttachedProps() .Where(item => item.name == morph3DDefinition.item.name); foreach (var item in itemsToRemove) { UnityEngine.Object.DestroyObject(item.gameObject); } characterManager.DetectAttachedProps(); }