public Character CreateCharacterWithBaseAttributes(CharacterCreationObject premade, string context) { var _game = _games.SingleOrDefault(g => g.HasName(context)); Character result = new Character(); result.Name = premade.Name; _game.SetCareer(result, premade.CareerName); result.GameName = premade.GameName; //Template character for the game _game.SetupCharacter(result); //Set base attributes from premade _game.SetCaracteristicFromCaracteristicViewModel(result.BaseAttributes, premade.BaseAttributes); _game.SetSpecies(result, premade.SpeciesName); //_game.SetCaracteristicFromCaracteristicViewModel(result.Skills, premade.Skills); _game.SetDefaultSkills(result); _game.SetCareerSkills(result); _game.SetDefaultSpendablePoints(result); _game.SetDefaultStats(result); if (_game.ValidateCreation(result)) { return(result); } else { throw new ArgumentException(nameof(premade)); } }
public Character Create(CharacterCreationObject premade, string context, bool includeSkills) { var hero = includeSkills ? _factory.CreateCharacterWithSkills(premade, context) : _factory.CreateCharacterWithBaseAttributes(premade, context); _archivist.SaveCharacterAsJson(hero); return(hero); }
public Character CreateCharacterWithSkills(CharacterCreationObject premade, string context) { var _game = _games.SingleOrDefault(g => g.HasName(context)); Character result = CreateCharacterWithBaseAttributes(premade, context); _game.SetChosenSkills(premade.Skills, result); return(result); }
public IActionResult Create(string game, [FromBody] CharacterCreationObject premade, bool includeSkills) { _logger.Log("In create with parameter " + premade.Name); try { var myCharac = _service.Create(game, premade, includeSkills); var response = new CharacterViewModel(myCharac); return(Ok(response)); }catch (Exception ex) { _logger.Log("Error in character creation process : " + ex.Message + Environment.NewLine + ex.InnerException); return(BadRequest()); } }
public Character Create(string contextName, CharacterCreationObject charac, bool includeSkills) { //var _repo = _repositories.SingleOrDefault(x => x.HasName(contextName)); return(_repo.Create(charac, contextName, includeSkills)); }