public GameViewModel(INavigator navigator, IComputerAlgorithmService computerAlgorithm, IBoatPlacementGenerationService boatPlacementGenerator, IListToGridTransformer listToGridTransformer, IBoatApearanceManager boatApearanceManager, ISaveGameService saveGameService, GameModel game) { // Dependency Injection _navigator = navigator; _computerAlgorithm = computerAlgorithm; _boatPlacementGenerator = boatPlacementGenerator; _listToGridTransformer = listToGridTransformer; _boatApearanceManager = boatApearanceManager; _saveGameService = saveGameService; // Assign fields and properties User = game.User; Computer = game.Computer; _currentPlayersTurn = User; AssignCommands(navigator); AssignTarget(); // Prep data TransformBoatsToBoard(); // Start Game BeginGameplay(); }
public GameViewModel(INavigator navigator, IComputerAlgorithmService computerAlgorithm, IBoatPlacementGenerationService boatPlacementGenerator, IListToGridTransformer listToGridTransformer, IBoatApearanceManager boatApearanceManager, ISaveGameService saveGameService, Player user) { // Dependency Injection _navigator = navigator; _computerAlgorithm = computerAlgorithm; _boatPlacementGenerator = boatPlacementGenerator; _listToGridTransformer = listToGridTransformer; _boatApearanceManager = boatApearanceManager; _saveGameService = saveGameService; // Assign fields and properties User = user; Computer = new Player(nameof(Computer)) { Boats = new ObservableCollection <IBoat>(_boatPlacementGenerator.GenerateBoats(5, BoardDimention)) }; _currentPlayersTurn = User; AssignCommands(navigator); AssignTarget(); // Prep data TransformBoatsToBoard(); PrepBoats(); // Start Game BeginGameplay(); }