diff --git a/app/src/main/java/chess/model/Game.java b/app/src/main/java/chess/model/Game.java index 6b976c8..d8c0bf4 100644 --- a/app/src/main/java/chess/model/Game.java +++ b/app/src/main/java/chess/model/Game.java @@ -1,6 +1,7 @@ package chess.model; import java.util.HashMap; +import java.util.List; import java.util.Map; import java.util.Stack; @@ -139,4 +140,8 @@ public class Game { undoTraitPiecesPos(Color.getEnemy(playerTurn)); } + public List getMoves() { + return this.movesHistory; + } + } diff --git a/app/src/main/java/chess/pgn/PgnExport.java b/app/src/main/java/chess/pgn/PgnExport.java new file mode 100644 index 0000000..71f9347 --- /dev/null +++ b/app/src/main/java/chess/pgn/PgnExport.java @@ -0,0 +1,34 @@ +package chess.pgn; + +import chess.controller.CommandExecutor; +import chess.controller.commands.NewGameCommand; +import chess.controller.event.GameAdaptator; +import chess.model.ChessBoard; +import chess.model.Game; +import chess.simulator.FoolCheckMate; +import chess.view.consolerender.Console; + +public class PgnExport { + + public static void main(String[] args) { + final Game game = new Game(new ChessBoard()); + final CommandExecutor commandExecutor = new CommandExecutor(game); + + FoolCheckMate checkMate = new FoolCheckMate(commandExecutor); + commandExecutor.addListener(checkMate); + + commandExecutor.addListener(new GameAdaptator() { + @Override + public void onGameEnd() { + System.out.println(exportGame(game)); + commandExecutor.close(); + } + }); + + commandExecutor.executeCommand(new NewGameCommand()); + } + + public static String exportGame(Game game) { + return "coucou"; + } +}