private static ICombatant CreateCombatant(string pCombatantKey) { var data = Database.Combatants[pCombatantKey]; var combatant = new Combatant(data.Name, data.Description, data.ExpReward, data.Level, data.Body, data.Mind, data.Soul, data.Experience, data.SkillPoints); foreach (var itemKey in data.Drops.Keys) { var chance = Utilities.Random.NextDouble(); if (!(data.Drops[itemKey] - chance > 0)) { continue; } var item = CreateItem(itemKey); combatant.AddItem(item); } foreach (var buffKey in data.Buffs.Keys) { var buff = CreateEffect(buffKey, data.Buffs[buffKey], -1); combatant.AddEffect(buff); } return(combatant); }