private float GetStrengthenMoney(int curlevel, int nextLevel, int expTotal) { EquipmentInfo equipmentInfo = EquipmentStrengthenProxy.instance.StrengthenEquipInfo; int expTempTotal = expTotal; float moneyTotal = 0; float partMoney = 0; int goldNeed = 0; float addExpPercent = 0; float totalExpPercent = 0; if (expTotal != 0) { for (int i = curlevel; i <= nextLevel; i++) { EquipmentStrengthenNeedData needData = EquipmentStrengthenNeedData.GetStrengthenNeedDataByLv(i); if (needData == null) { needData = EquipmentStrengthenNeedData.LastNeedData(); } goldNeed = needData.GetGoldNeedByStar(equipmentInfo.equipmentData.star); if (i == nextLevel) { partMoney = (expTempTotal + 0.0f) / expTotal * goldNeed; moneyTotal += partMoney; addExpPercent = (expTempTotal + 0.0f) / needData.exp_need; totalExpPercent += addExpPercent; } else if (i == curlevel) { int exp = needData.exp_need - equipmentInfo.strengthenExp; partMoney = (exp + 0.0f) / expTotal * goldNeed; moneyTotal += partMoney; expTempTotal -= exp; addExpPercent = (exp + 0.0f) / needData.exp_need; totalExpPercent += addExpPercent; } else { partMoney = (needData.exp_need + 0.0f) / expTotal * goldNeed; moneyTotal += partMoney; expTempTotal -= needData.exp_need; totalExpPercent += 1; } } } addExpText.text = string.Format("+{0}% EXP", (int)(totalExpPercent * 100)); return(moneyTotal); }