private void OnTriggerExit2D(Collider2D other) { if (other.gameObject.CompareTag(tagsFurniture)) { int idFurniture = other.gameObject.GetComponent <IFurniture>().GetID(); int findIndex = furnitures.Select((item, index) => new { Item = item, Index = index }) .First(i => { IFurniture furni = i.Item.GetComponent <IFurniture>(); return(furni.GetID() == idFurniture); }) .Index; furnitures.RemoveAt(findIndex); } if (other.gameObject.CompareTag(tagsMobs)) { int idmobs = other.gameObject.GetComponent <IMob>().GetID(); int findIndex = mobs.Select((item, index) => new { Item = item, Index = index }) .First(i => { IMob mobs = i.Item.GetComponent <IMob>(); if (mobs != null) { return(mobs.GetID() == idmobs); } return(false); }) .Index; mobs.RemoveAt(findIndex); } }