void moveDown(GameEntity e, IntVector2 position) { var nextRowPos = GameBoardLogic.GetNextEmptyRow(_context, position); if (nextRowPos != position.y) { e.ReplacePosition(new IntVector2(position.x, nextRowPos)); } }
void moveDown(GameEntity e, int column, int row) { var nextRowPos = GameBoardLogic.GetNextEmptyRow(_context, column, row); if (nextRowPos != row) { e.ReplacePosition(column, nextRowPos); } }
protected override void Execute(List <GameEntity> entities) { var gameBoard = _context.gameBoard; for (int column = 0; column < gameBoard.columns; column++) { var nextRowPos = GameBoardLogic.GetNextEmptyRow(_context, column, gameBoard.rows); while (nextRowPos != gameBoard.rows) { _context.CreateRandomPiece(column, nextRowPos); nextRowPos = GameBoardLogic.GetNextEmptyRow(_context, column, gameBoard.rows); } } }
public void Execute(List <Entity> entities) { var gameBoard = _pool.gameBoard; for (int column = 0; column < gameBoard.columns; column++) { var nextRowPos = GameBoardLogic.GetNextEmptyRow(_pool, column, gameBoard.rows); while (nextRowPos != gameBoard.rows) { _pool.CreateRandomPiece(column, nextRowPos); nextRowPos = GameBoardLogic.GetNextEmptyRow(_pool, column, gameBoard.rows); } } }
protected override void Execute(List <GameEntity> entities) { var gameBoard = _context.gameBoard; int rows = gameBoard.rows; var position = new IntVector2(0, rows); for (int column = 0; column < gameBoard.columns; column++) { position.x = column; int nextRowPos = GameBoardLogic.GetNextEmptyRow(_context, position); int numSpawns = rows - nextRowPos; for (int spawnRow = rows, spawnEnd = rows + numSpawns; spawnRow < spawnEnd; ++spawnRow) { _context.CreateRandomPiece(column, spawnRow); } } }