From a639b5b9e9996ab2536acb4dfbf228ef9cd0cec9 Mon Sep 17 00:00:00 2001
From: Chomp <jonreid3@gmail.com>
Date: Tue, 17 Aug 2021 16:21:27 +0100
Subject: [PATCH] add skills/standing/experience to bot output

---
 Generator/BaseBotGenerator.cs | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/Generator/BaseBotGenerator.cs b/Generator/BaseBotGenerator.cs
index 64e71df..0a85216 100644
--- a/Generator/BaseBotGenerator.cs
+++ b/Generator/BaseBotGenerator.cs
@@ -44,6 +44,9 @@ namespace Generator
 
                 UpdateBodyPartHealth(botToUpdate, rawBotsOfSameType);
                 AddDifficulties(botToUpdate, _workingPath);
+                AddExperience(botToUpdate, rawBotsOfSameType);
+                AddStandingForKill(botToUpdate, rawBotsOfSameType);
+                AddSkills(botToUpdate, rawBotsOfSameType);
 
                 foreach (var rawParsedBot in rawBotsOfSameType)
                 {
@@ -59,6 +62,31 @@ namespace Generator
             return rawBots;
         }
 
+        private void AddSkills(Bot botToUpdate, List<Datum> rawBotsOfSameType)
+        {
+            var firstBotOfDesiredType = rawBotsOfSameType.FirstOrDefault();
+
+            foreach (var skill in firstBotOfDesiredType.Skills.Common)
+            {
+                botToUpdate.skills.Common.Add(skill.Id, new MinMax(skill.Progress, skill.Progress));
+            }
+        }
+
+        private void AddStandingForKill(Bot botToUpdate, List<Datum> rawBotsOfSameType)
+        {
+            var firstBotOfDesiredType = rawBotsOfSameType.FirstOrDefault();
+
+            botToUpdate.experience.standingForKill = firstBotOfDesiredType.Info.Settings.StandingForKill;
+        }
+
+        private void AddExperience(Bot botToUpdate, List<Datum> rawBotsOfSameType)
+        {
+            var firstBotOfDesiredType = rawBotsOfSameType.FirstOrDefault();
+
+            botToUpdate.experience.reward.min = firstBotOfDesiredType.Info.Settings.Experience;
+            botToUpdate.experience.reward.max = firstBotOfDesiredType.Info.Settings.Experience;
+        }
+
         private void AddVoice(Bot bot, Datum rawParsedBot)
         {
             bot.appearance.voice.AddUnique(rawParsedBot.Info.Voice);