static void AddByDesc(List <string> reward, RewardInterval interval, List <string> descs, Random random) { var count = random.Next(interval.Min, interval.Max + 1); for (var i = 0; i < count; i++) { var itemDesc = descs[random.Next(descs.Count)]; reward.Add(itemDesc); } }
static void AddResources(Reward reward, RewardInterval interval, Random random) { if (interval.Max == 0) { return; } var resource = _allResources[random.Next(_allResources.Count)]; reward.Resources.Add(resource, random.Next(interval.Min, interval.Max + 1)); }
static void AddUnits(Reward reward, RewardInterval interval, Dictionary <string, UnitConfig> units, Random random) { AddByDesc(reward.Units, interval, units.Keys.ToList(), random); }
static void AddItems(Reward reward, RewardInterval interval, Dictionary <string, BaseItemConfig> items, Random random) { AddByDesc(reward.Items, interval, items.Keys.ToList(), random); }