/// <summary>Called by the container to</summary> protected internal virtual void DoDestroy() { ItemRecord record = m_record; m_owner.Inventory.OnAmountChanged(this, -Amount); if (record == null) { return; } record.OwnerId = 0; record.DeleteLater(); m_record = null; Dispose(); }