void UpdateRestockUI(int id) { float totalPrice = 0; int totalStock = 0; if (addedStocks[id] != 0) { restockRows[id].stockText.text = string.Format("{0:N0} ({1:+#;-#;0})", Logistics.GetStock((GameType)id), addedStocks[id]); } else { restockRows[id].stockText.text = string.Format("{0:N0}", Logistics.GetStock((GameType)id)); } restockRows[id].priceText.text = string.Format("${0:N0}", MarketManager.GetBuyPrice(id) * addedStocks[id]); for (int i = 0; i < addedStocks.Length; i++) { if (MarketManager.IsGameAvailable(i)) { totalPrice += MarketManager.GetBuyPrice(i) * addedStocks[i]; totalStock += addedStocks[i]; } } instance.moneyText.text = GameManager.Cash > 0 ? string.Format("${0:N0}", GameManager.Cash - totalPrice) : string.Format("<color=red>-${0:N0}</color>", Mathf.Abs(GameManager.Cash - totalPrice));; if (Logistics.GetTotalStocks() + totalStock > Logistics.GetCapacity()) { restockTitle.text = string.Format("Restock <color=red>({0}/{1})</color>", Logistics.GetTotalStocks() + totalStock, Logistics.GetCapacity()); } else { restockTitle.text = string.Format("Restock ({0}/{1})", Logistics.GetTotalStocks() + totalStock, Logistics.GetCapacity()); } if (Logistics.GetTotalStocks() + totalStock > Logistics.GetCapacity() || GameManager.Cash - totalPrice < 0) { instance.commitButton.interactable = false; } else { instance.commitButton.interactable = true; } }
public void OnCommit() { restocksOrig = new int[5]; float totalCash = 0; for (int i = 0; i < restockRows.Length; i++) { if (MarketManager.IsGameAvailable(i) && addedStocks[i] > 0) { totalCash += addedStocks[i] * MarketManager.GetBuyPrice(i); restocksOrig[i] += addedStocks[i]; Logistics.RestockGame((GameType)i, addedStocks[i]); } } GameManager.AdjustCash(totalCash); addedStocks = new int[5]; PopulateInitialRestock(); }