Source: kyousha.js

import Piece from './piece'

/** A kyousha piece. Moves forward any number of squares. */
class Kyousha extends Piece {
  /**
   * The destinations thata Kyousha can move to from a square on a board.
   * @param {Square} square - The origin square.
   * @param {GameState} gameState - the game state being played on.
   * @return {SquareSet}
   */
  destinations(square, gameState) {
    return gameState.squares.orthogonal(square).inDirection(square, this.playerNumber).unoccupiedOrOccupiedByOpponent(this.playerNumber).unblocked(square, gameState.squares);
  }
}

export default Kyousha