package dev.kske.chess.event;
import dev.kske.chess.board.BoardState;
import dev.kske.chess.board.Move;
/**
* Project: Chess
* File: MoveEvent.java
* Created: 7 Aug 2019
*
* @since Chess v0.4-alpha
* @author Kai S. K. Engelbart
*/
public class MoveEvent implements Event {
private final Move move;
private final BoardState boardState;
/**
* Creates an instance of {@link MoveEvent}.
*
* @param move the move by which the event was triggered
* @param boardState the state of the board after the move
*/
public MoveEvent(Move move, BoardState boardState) {
this.move = move;
this.boardState = boardState;
}
@Override
public Move getData() { return move; }
/**
* @return the state of the board after the move
*/
public BoardState getBoardState() { return boardState; }
}