/// <summary> /// Generates the random character. /// </summary> /// <returns>The random character.</returns> public CharacterSheet GenerateRandomCharacter() { var skillGen = new SkillPointGenerator(); var character = this.CreateLevel0(); this.SelectClass(character); character.AddFeat(Feat.GetQualifyingFeats(character).ToList().ChooseOne()); // var levelUpGen = new LevelUpGenerator (new HitPointGenerator()); // levelUpGen.BringCharacterToLevel(character, UnityEngine.Random.Range (1, 21)); // levelUpGen.BringCharacterToLevel(character, 1); // Assign Skill Points skillGen.AssignSkillPointsRandomly(character); // Get some gear! var equip = new EquipMeleeAndRangedWeapon(this.weaponGateway); equip.AssignWeapons(character.Inventory, character.Offense.WeaponProficiencies); var equipArmor = new PurchaseInitialArmor(this.armorGateway); equipArmor.PurchaseArmorAndShield(character.Inventory, character.Defense.ArmorProficiencies); return(character); }