This commit is contained in:
Felix Steghofer
2022-12-04 01:25:28 +01:00
commit 3db4f94e6a
31 changed files with 2762 additions and 0 deletions

View File

@@ -0,0 +1,42 @@
package reversi.controller;
import reversi.model.Player;
import reversi.model.Reversi;
import reversi.view.ReversiView;
/**
* Creates a new thread for the machine move.
*/
public class MachineMoveThread extends Thread {
private Reversi model;
private ReversiView view;
private Player bot;
MachineMoveThread(final Reversi model, final ReversiView view) {
this.model = model;
this.view = view;
this.bot = model.next();
}
@Override
public final void run() {
this.model.machineMove();
javax.swing.SwingUtilities.invokeLater(new Runnable() {
@Override
public final void run() {
view.updatePlayField(model);
view.setMovePossible(true);
}
});
if (model.next() == bot && !model.gameOver()) {
this.run();
javax.swing.SwingUtilities.invokeLater(new Runnable() {
@Override
public final void run() {
view.viewMessage("Human has to miss a turn");
}
});
}
}
}