示例#1
0
        private void ArrangementFigures(IGameDef gameDef)
        {
            foreach (var startInfoFigureDef in gameDef.StartInfoFigureDefs)
            {
                var figureDef    = startInfoFigureDef.Def;
                var team         = startInfoFigureDef.Team;
                var figureEntity = FigureCreator.Create(figureDef, team);

                var cell = BoardModel.GetCell(startInfoFigureDef.StartCol, startInfoFigureDef.StartRow);
                FigureController.MoveFigure(figureEntity, cell);
            }
        }
        protected IGameMoveTurnData CreateMoveTurnData(int indexX, int indexY)
        {
            var moveToCell = BoardModel.GetCell(indexX, indexY);

            if (!CheckCanMove(moveToCell))
            {
                return(GameMoveTurnData.Empty);
            }

            moveToCell.Status = BoardCellStatus.AvailableForMove;

            var removedFigure = moveToCell.IsBusy ? moveToCell.Figure : default;

            return(new GameMoveTurnData(moveToCell, removedFigure));
        }
示例#3
0
        public void SetUp()
        {
            BoardModel = new BoardModel();

            var boardCreator = new BoardCreator();

            boardCreator.CreateCells(BoardModel);

            GameModel = Substitute.For <IGameModel>();
            GameModel.CurTeamTurn.Returns(Team);

            //create figure and cell
            _mainFigure = Substitute.For <IFigureEntity>();
            _mainFigure.Team.Returns(Team);

            _mainCell = BoardModel.GetCell(CellCol, CellRow);
            _mainFigure.PlacedCell.Returns(_mainCell);
        }
示例#4
0
        private void CheckAvailableCell(BoardCellCol col, BoardCellRow row)
        {
            var cell = BoardModel.GetCell(col, row);

            Assert.IsTrue(cell.Status == BoardCellStatus.AvailableForMove);
        }
示例#5
0
        public void GetCell_CheckExistingCellNotNull_ExistingCellNotNull()
        {
            var existingCell = BoardModel.GetCell(BoardCellCol.ColA, BoardCellRow.Row1);

            Assert.IsNotNull(existingCell, "existingCell != null");
        }