public IActionResult SetUpGameConfirm(SetUpGameViewModel model, SetUpGameAction action, Int32 removeIndex) { switch (action) { case SetUpGameAction.Civilization: model.ChosenTab = "Civilization"; break; case SetUpGameAction.Opponents: model.ChosenTab = "Opponents"; break; case SetUpGameAction.BasicSettings: model.ChosenTab = "BasicSettings"; break; case SetUpGameAction.AdvancedSettings: model.ChosenTab = "AdvancedSettings"; break; case SetUpGameAction.Start: _database.PushData(new Data { ChosenName = model.ChosenName, ChosenCivilization = model.ChosenCivilization, ChosenOpponents = model.ChosenOpponents, ChosenMapType = model.ChosenMapType, ChosenMapSize = model.ChosenMapSize, ChosenDifficulty = model.ChosenDifficulty, ChosenVictoryType = model.ChosenVictoryType, ChosenAdvancedGameOptions = model.ChosenAdvancedGameOptions, AdvancedGameOptions = model.AdvancedGameOptions }); var data = _database.GetData()[_database.GetData().Count - 1]; var newModel = new LoadGameViewModel { Name = data.ChosenName, Civilization = data.ChosenCivilization == null ? null : _civilizationDataProviderService.FindEntity((Int32)data.ChosenCivilization), Opponents = new List <Civilization>(), MapType = _mapTypeDataProviderService.FindEntity(data.ChosenMapType), MapSize = _mapSizeDataProviderService.FindEntity(data.ChosenMapSize), Difficulty = _difficultyDataProviderService.FindEntity(data.ChosenDifficulty), VictoryTypes = new List <VictoryType>(), AdvancedGameOptions = new List <String>(), NumberOfGames = _database.GetData().Count }; if (data.ChosenOpponents != null) { foreach (var opponent in data.ChosenOpponents) { if (opponent == null) { newModel.Opponents.Add(null); } else { newModel.Opponents.Add(_civilizationDataProviderService.FindEntity((Int32)opponent)); } } } for (var i = 0; i < data.ChosenVictoryType.Count; i++) { if (data.ChosenVictoryType[i]) { newModel.VictoryTypes.Add(_victoryTypeDataProviderService.FindEntity(i)); } } for (var i = 0; i < data.ChosenAdvancedGameOptions.Count; i++) { if (data.ChosenAdvancedGameOptions[i]) { newModel.AdvancedGameOptions.Add(data.AdvancedGameOptions[i]); } } newModel.ChosenGame = _database.GetData().Count - 1; return(View("LoadGame", newModel)); case SetUpGameAction.Add: if (model.ChosenOpponents == null) { model.ChosenOpponents = new List <Int32?>(); } model.ChosenOpponents.Add(null); break; case SetUpGameAction.Remove: model.ChosenOpponents.RemoveAt(removeIndex); break; default: throw new ArgumentOutOfRangeException(nameof(action), action, null); } return(View(model)); }
public IActionResult SetUpGame(SetUpGameViewModel model) { return(View(model)); }