private Contribution GetContribution(P3dColorCounter counter)
        {
            if (contributions == null)
            {
                contributions = new List <Contribution>();
            }

            for (var i = contributions.Count - 1; i >= 0; i--)
            {
                var contribution = contributions[i];

                if (contribution.Counter == counter)
                {
                    return(contribution);
                }
            }

            var newContribution = new Contribution();

            contributions.Add(newContribution);

            newContribution.Counter = counter;

            return(newContribution);
        }
Ejemplo n.º 2
0
        protected virtual void Update()
        {
            var finalCounters = counters.Count > 0 ? counters : null;
            var ratio         = P3dColorCounter.GetRatio(color, finalCounters);

            if (inverse == true)
            {
                ratio = 1.0f - ratio;
            }

            cachedImage.fillAmount = Mathf.Clamp01(ratio);
        }
Ejemplo n.º 3
0
        private bool TryGetContribution(P3dColorCounter counter, ref Contribution contribution)
        {
            if (contributions == null)
            {
                contributions = new List <Contribution>();
            }

            for (var i = contributions.Count - 1; i >= 0; i--)
            {
                contribution = contributions[i];

                if (contribution.Counter == counter)
                {
                    return(true);
                }
            }

            return(false);
        }
Ejemplo n.º 4
0
        public void Contribute(P3dColorCounter counter, int solid)
        {
            var contribution = default(Contribution);

            if (TryGetContribution(counter, ref contribution) == false)
            {
                if (solid <= 0)
                {
                    return;
                }

                contribution = new Contribution();

                contributions.Add(contribution);

                contribution.Counter = counter;
            }

            contribution.Solid = solid;
        }
Ejemplo n.º 5
0
        protected virtual void Update()
        {
            var finalCounters = counters.Count > 0 ? counters : null;
            var total         = P3dColorCounter.GetTotal(finalCounters);
            var count         = P3dColorCounter.GetCount(color, finalCounters);

            if (inverse == true)
            {
                count = total - count;
            }

            var final   = format;
            var percent = P3dHelper.RatioToPercentage(P3dHelper.Divide(count, total), decimalPlaces);

            final = final.Replace("{TOTAL}", total.ToString());
            final = final.Replace("{COUNT}", count.ToString());
            final = final.Replace("{PERCENT}", percent.ToString());

            cachedText.text = final;
        }
        public void Contribute(P3dColorCounter counter, int solid)
        {
            var contribution = GetContribution(counter);

            contribution.Solid = solid;
        }