31 lines
680 B
Java
31 lines
680 B
Java
package chess.pgn;
|
|
|
|
|
|
import java.util.List;
|
|
|
|
import chess.controller.CommandExecutor;
|
|
import chess.controller.PlayerCommand;
|
|
import chess.controller.event.GameAdapter;
|
|
import common.Signal0;
|
|
|
|
public class PgnSimulator extends GameAdapter {
|
|
|
|
private final CommandExecutor commandExecutor;
|
|
private final String pgn;
|
|
|
|
public final Signal0 onComplete = new Signal0();
|
|
|
|
public PgnSimulator(CommandExecutor commandExecutor, String pgn) {
|
|
this.commandExecutor = commandExecutor;
|
|
this.pgn = pgn;
|
|
}
|
|
|
|
@Override
|
|
public void onGameStart() {
|
|
List<PlayerCommand> cmds = PgnImport.importGame(this.pgn);
|
|
this.commandExecutor.executeCommands(cmds);
|
|
this.onComplete.emit();
|
|
}
|
|
|
|
}
|