Esempio n. 1
0
        private void BoardModelOnTileSpawned(Tile tile, TilePosition position)
        {
            var destination = GetTileDrawPosition(position.Row, position.Col);
            var tileView    = TileFactory.CreateTileView(tile);

            tileView.Position = new Vector2(destination.X, -TileView.TextureSize.Y);
            _matrix[position.Row, position.Col] = tileView;
            _animations.Add(new MoveTileAnimation(350, _matrix[position.Row, position.Col], destination));
        }
Esempio n. 2
0
        public BoardView(BoardModel boardModel, Vector2 offset)
        {
            BoardModel  = boardModel;
            _offset     = offset;
            _animations = new List <MoveTileAnimation>();
            _matrix     = new TileView[BoardModel.Rows, BoardModel.Columns];

            for (var row = 0; row < BoardModel.Rows; row++)
            {
                for (var col = 0; col < BoardModel.Columns; col++)
                {
                    var tile     = BoardModel.Matrix[row, col];
                    var tileView = TileFactory.CreateTileView(tile);
                    tileView.Position = GetTileDrawPosition(row, col);
                    _matrix[row, col] = tileView;
                }
            }

            BoardModel.TileSwapped += BoardModelOnTileSwapped;
            BoardModel.TileSpawned += BoardModelOnTileSpawned;
            BoardModel.TileDeleted += BoardModelOnTileDeleted;
        }