Code:
int nRecoverDurability = Math.Max(0, Item.Stats.Durability - Item.CurDurability); if (nRecoverDurability == 0) return; byte Quality = ItemManipulation.GetQuality((int)Item.Stats.ID); double QualityMultipier = 0; switch (Quality) { case 9: QualityMultipier = 1.125; break; case 8: QualityMultipier = 0.975; break; case 7: QualityMultipier = 0.9; break; case 6: QualityMultipier = 0.825; break; default: QualityMultipier = 0.75; break; } int nRepairCost = 0; if (Item.Item.ShopBuyPrice > 0) nRepairCost = (int)Math.Ceiling((Item.Stats.ShopBuyPrice * nRecoverDurability / Item.Stats.Durability) * QualityMultipier); nRepairCost = Math.Max(1, nRepairCost);