public WaitingForPlayerMoveState(IPhutballBoard phutballBoard, MovesHistory movesHistory, IPlayersState playersState) { _phutballBoard = phutballBoard; _movesHistory = movesHistory; _playersState = playersState; _performMoves = new PerformMoves(phutballBoard, playersState); }
public PhutballBoardModel(IPhutballBoard phutballBoard, IEventPublisher eventPublisher, IPhutballOptions phutballOptions) { _phutballBoard = phutballBoard; _eventPublisher = eventPublisher; _phutballOptions = phutballOptions; _eventPublisher.Subscribe<PhutballBoardInitialized>(HandleGameInitialized); _eventPublisher.Subscribe<PhutballGameStarted>(HandleGameStart); _eventPublisher.Subscribe<PhutballGameEnded>(HandleGameEnded); _eventPublisher.Subscribe<ComputerStartedMoving>(m=> IsEnabled = false); _eventPublisher.Subscribe<ComputerStopedMoving>(m=> IsEnabled = true); _eventPublisher.Subscribe<PhutballGameFieldsChanged>(HandleGameFieldsChanged); }
public PlayerSelectedFieldStateMove( IPhutballBoard phutballBoard, IPlayersState playersState, Field selectedField, MovesHistory movesHistory) { _phutballBoard = phutballBoard; _movesHistory = movesHistory; _playersState = playersState; _performMoves = new PerformMoves(phutballBoard, _playersState); _selectedField = selectedField; }
public PhutballGameState( IEventPublisher eventPublisher, IPhutballBoard phutballBoard, IPlayersState playersState, BestMoveApplier bestMoveApplier, Func <IHandlePlayerMoves> handlePlayerMovesFactory) { _currentState = PhutballGameStateEnum.NotStarted; _eventPublisher = eventPublisher; _phutballBoard = phutballBoard; _playersState = playersState; _bestMoveApplier = bestMoveApplier; _handlePlayerMovesFactory = handlePlayerMovesFactory; _handlePlayerMoves = handlePlayerMovesFactory(); _eventPublisher.Subscribe <PlayerWonEvent>((e) => CurrentPlayerWon()); _eventPublisher.Subscribe <PlayerOnTheMoveChanged>(OnPlayerOnTheMoveChanged); _eventPublisher.Subscribe <ComputerStartedMoving>((e) => LongRunningProcess.Clear()); }
public PhutballGameState( IEventPublisher eventPublisher, IPhutballBoard phutballBoard, IPlayersState playersState, BestMoveApplier bestMoveApplier, Func<IHandlePlayerMoves> handlePlayerMovesFactory) { _currentState = PhutballGameStateEnum.NotStarted; _eventPublisher = eventPublisher; _phutballBoard = phutballBoard; _playersState = playersState; _bestMoveApplier = bestMoveApplier; _handlePlayerMovesFactory = handlePlayerMovesFactory; _handlePlayerMoves = handlePlayerMovesFactory(); _eventPublisher.Subscribe<PlayerWonEvent>((e)=> CurrentPlayerWon()); _eventPublisher.Subscribe<PlayerOnTheMoveChanged>(OnPlayerOnTheMoveChanged); _eventPublisher.Subscribe<ComputerStartedMoving>((e)=> LongRunningProcess.Clear()); }