private void RefreshCurrency()
 {
     EnumUtils.ForEach((CurrencyTypes currencyType) => {
         int amount = currencyType.GetAmount();
         UpdateCurrency(amount, currencyType, false);
     });
 }
    void AddBoostTypes(string colorHex, string category)
    {
        Color color = colorHex.ToHexColor();

        AddCategory(loc.GetText(category));

        EnumUtils.ForEach((BoostType boostType) => {
            if (boostType == BoostType.None)
            {
                return;
            }

            string boostStr       = boostType.ToString().ToUpper();
            string[] labelAndDesc = loc.GetText("LABEL_BOOST_" + boostStr).Split("\n");
            string title          = labelAndDesc[0];
            string desc           = labelAndDesc.Slice(1).Join("\n");

            var boostData = DataManager.Instance.boostDataList.Find(b => b.boostType == boostType);
            Sprite sprite = boostData == null ? null : boostData.LoadSprite();

            AddItem(title, desc, boostType.GetAmount(), sprite, color);
        });
    }
    //////////////////////////////////////////////////////

    public void ResetCurrencies()
    {
        EnumUtils.ForEach <CurrencyTypes>(currency => _currencies.AddOrSet(currency, 0));
        EnumUtils.ForEach <BoostType>(boost => _boosts.AddOrSet(boost, 0));
    }
 public void NotifyAllCurrencies()
 {
     EnumUtils.ForEach <CurrencyTypes>(currency => NotifyCurrency(currency));
 }