Exemple #1
0
        /// <summary>
        /// Sets a rating's value for each level.
        /// </summary>
        /// <param name="rating">The rating to set</param>
        /// <param name="values">The value to set</param>
        protected void Set(RatingStat rating, params int[] values)
        {
            if (!_ratingChart.ContainsKey(rating))
            {
                _ratingChart[rating] = new Dictionary <int, int>();
            }

            for (int level = 1; level <= values.Length; level++)
            {
                _ratingChart[rating][level] = values[level - 1];
            }
        }
Exemple #2
0
        /// <summary>
        /// Retrieves a value by rating and level.
        /// </summary>
        /// <param name="rating">The rating to retrieve.</param>
        /// <param name="level">The level to retrieve</param>
        /// <returns>The value for a given rating and level.</returns>
        public int Get(RatingStat rating, int level)
        {
            if (!_ratingChart.ContainsKey(rating))
            {
                throw new Exception($"Rating '{rating}' has not been registered.");
            }
            if (!_ratingChart[rating].ContainsKey(level))
            {
                throw new Exception($"Level {level} has not been registered for rating type {rating}");
            }

            return(_ratingChart[rating][level]);
        }