Exemple #1
0
        internal void ScoreboardStrip_Update(On.RoR2.UI.ScoreboardStrip.orig_Update orig, ScoreboardStrip self)
        {
            orig(self);

            if (self.master && self.master.inventory)
            {
                BetterUI.sharedStringBuilder.Clear();
                BetterUI.sharedStringBuilder.Append(Util.GetBestMasterName(self.master));
                BetterUI.sharedStringBuilder.Append("\n<#F8FC97>");
                BetterUI.sharedStringBuilder.Append(self.master.money);
                BetterUI.sharedStringBuilder.Append("</color>");

                self.nameLabel.text = BetterUI.sharedStringBuilder.ToString();
                BetterUI.sharedStringBuilder.Clear();
                BetterUI.sharedStringBuilder.Append("<#FFFFFF>");



                if (mod.config.ItemCountersShowItemSum.Value)
                {
                    itemSum = 0;
                    foreach (var tier in mod.config.ItemCountersItemSumTiers)
                    {
                        itemSum += self.master.inventory.GetTotalItemCountOfTier(tier);
                    }
                    BetterUI.sharedStringBuilder.Append(itemSum);
                    if (mod.config.ItemCountersShowItemScore.Value)
                    {
                        BetterUI.sharedStringBuilder.Append(" | ");
                    }
                }
                if (mod.config.ItemCountersShowItemScore.Value)
                {
                    itemScore = 0;
                    foreach (var item in self.master.inventory.itemAcquisitionOrder)
                    {
                        int value;
                        itemScore += mod.config.ItemCountersItemScores.TryGetValue(ItemCatalog.GetItemDef(item).nameToken, out value) ? value * self.master.inventory.GetItemCount(item) : 0;
                    }
                    BetterUI.sharedStringBuilder.Append(itemScore);
                }

                if (mod.config.ItemCountersShowItemsByTier.Value)
                {
                    BetterUI.sharedStringBuilder.Append("\n");
                    foreach (var tier in mod.config.ItemCountersItemsByTierOrder)
                    {
                        BetterUI.sharedStringBuilder.Append(" <#");
                        BetterUI.sharedStringBuilder.Append(tierColorMap[(int)tier]);
                        BetterUI.sharedStringBuilder.Append(">");
                        BetterUI.sharedStringBuilder.Append(self.master.inventory.GetTotalItemCountOfTier(tier));
                        BetterUI.sharedStringBuilder.Append("</color>");
                    }
                }

                BetterUI.sharedStringBuilder.Append("</color>");

                self.moneyText.text = BetterUI.sharedStringBuilder.ToString();
            }
        }
Exemple #2
0
        private void SetItemCountDisplay(
            On.RoR2.UI.ScoreboardStrip.orig_Update orig,
            RoR2.UI.ScoreboardStrip self
            )
        {
            orig(self);

            var master = self.GetFieldValue <CharacterMaster>("master");

            self.moneyText.text = string.Format("{0} Items ${1}", GetItemCount(master), master.money);
        }