Commit Graph

53 Commits

Author SHA1 Message Date
1ecafa5485 Fixed Log with respect to variations 2019-09-18 15:00:31 +02:00
c987bfcebb Added variations in Log, added LogTest 2019-09-13 18:13:34 +02:00
249480724a Refactoring
- Simplified FEN-string generation
- Made GameConfigurationDialog a utility class
2019-09-09 19:05:57 +02:00
216877b76b Added LogPanel to GamePane 2019-09-09 06:14:37 +02:00
19712a2bb7 Refactoring and documentation, improved FEN integration
+ Adding a new game when loading a FEN string
+ Loading multiple FEN files with drag and drop
2019-09-08 21:37:47 +02:00
08ac0ac114 Fixed frozen game after adding a new one 2019-09-06 13:24:58 +02:00
de9cd05602 Opening the new tab after starting a game 2019-09-01 18:57:31 +02:00
3b73cd1efb Added creation of new game tabs
- Switched to GridBagLayout in GamePane
- New games created in MenuBar are appended to the tabbed pane in
MainWindow
+ LogPanel class for displaying the game log inside a GamePane
- Removed LogFrame in favor of LogPanel
2019-09-01 12:45:06 +02:00
964de02e24 Associated DropTarget with MainWindow
When a FEN file is dropped into the main window, the drop target
automatically loads it into the currently visible (=selected) game.
2019-08-24 16:04:09 +02:00
76fa3859ef Added game tab support
+ GamePane component with the game displaying functionality from
MainWindow
- Simplified MainWindow, added JTabbedPane with GamePane elements
- Adjusted FENDropTarget and MenuBar
2019-08-23 22:00:30 +02:00
c1a8589a04 Fixed documentation 2019-08-23 21:10:19 +02:00
358654b1ed Added drag and drop support for FEN files 2019-08-14 20:17:28 +02:00
642a0bf4d1 Fixed Game and Log synchronization on FEN loading 2019-08-13 05:59:47 +02:00
14c7167ce4 Changed event model
+ MoveEvent
2019-08-07 18:54:00 +02:00
90c100e0e1 Working on board loading from FEN-encoded string 2019-08-05 21:02:54 +02:00
e7af9f40c2 Implemented LogFrame updating
+ Export to SAN in move
+ Updating LogFrame after a move
- Turned EventBus into a singleton
2019-08-04 14:40:25 +02:00
3d8877ddbd Implemented LogFrame, added menu item for opening it 2019-08-03 21:48:10 +02:00
83c6e48f03 Added event package with EventBus class 2019-08-02 18:46:00 +02:00
545f946aa0 Simplified EngineUtil and MenuBar 2019-07-30 06:18:24 +02:00
cac235a0db Fixed letter alignment below the board 2019-07-28 09:43:53 +02:00
1f5242935f Added board coordinates 2019-07-27 09:34:40 +02:00
51558797cc Added border around board, changed display order in OverlayComponent 2019-07-27 08:06:43 +02:00
5abc51688b Added log resetting, disabled resizing in MainFrame 2019-07-25 21:38:49 +02:00
8bcd89d975 Simplified game creation, added new configuration dialog 2019-07-25 07:21:07 +02:00
4c0432ca30 Fixed engine menu reloading on engine addition 2019-07-24 19:07:22 +02:00
2da185a8fb Added tools menu in MenuBar with FEN export menu item 2019-07-24 07:41:45 +02:00
e353aef867 Added engine info serialization and integration into MenuBar 2019-07-23 16:28:53 +02:00
delvh
b25acff367 Working on external engine integration, added extra menu
+ EngineUtil for storing engine information
- Changed all UCIListener methods to default
2019-07-23 11:54:43 +02:00
delvh
184c96db8c Added checkmate and stalemate notification through dialog, changed icon 2019-07-23 11:02:34 +02:00
delvh
309495cfae Improved BoardOverlay, disabled color swap in natural-vs-natural game 2019-07-23 10:38:19 +02:00
delvh
91962c01e0 Added dynamic color swap button text 2019-07-23 09:59:22 +02:00
delvh
b3710a878f Implemented color swapping
+ swapColor method in Board
+ Button for swapping colors in MainWindow
2019-07-23 09:31:20 +02:00
68d1996bd6 Fixed castling, added castling export to FEN
+ isFreePath implementation in Piece
- Removed isFreePath from Bishop, Rook, Queen and King
+ canCastleKingside and canCastleQueenside methods in King
+ Castling rights record in Board + FEN export

+ equals method in Position
+ UCI 'position startpos' command
- Switched to Java 8 compliance for compatibility reasons
2019-07-22 21:40:25 +02:00
b5b7a749d6 Implemented UCI handshake with engine
+ UCI game start in MenuBar
+ UCI game creation method in Game
- Fixed double game instance bug after starting a new game
+ Name and author parsing in UCIReceiver
2019-07-21 14:35:14 +02:00
d8f5f3bbf4 Fixed input listening bug in NaturalPlayer
+ disconnect methods in Game and Player
+ NaturalPlayer removes its MouseListener from OverlayComponent after
the disconnect method is called
2019-07-18 15:01:15 +02:00
4dcc9f7ca0 Set white king as MainWindow icon 2019-07-18 11:19:58 +02:00
cfd71af142 Moved game and board creation to Game 2019-07-17 08:26:51 +02:00
fcd8bfb26b Fixed game state related bugs 2019-07-16 18:24:48 +02:00
cde7f63996 Fixed UI bugs, added move drawing to OverlayComponent 2019-07-16 15:32:02 +02:00
8ea0c7a603 Added alpha-beta pruning threshold to the AI and a configuration dialog 2019-07-16 14:42:10 +02:00
8eda941284 Moved tests in test source folder, replaced GameModeDialog by MenuBar 2019-07-16 11:58:51 +02:00
7a986ab9c4 Added resource folder to class path, implemented proper texture scaling 2019-07-15 18:16:45 +02:00
c245cdb640 Implemented game restarting
+ Restarting method in Game
+ Abstract cancelMove method in Player
+ Stopping calculations in AIPlayer when the game has been restarted
2019-07-14 12:03:45 +02:00
58340ca6ac Added castling, fixed some minor bugs 2019-07-13 11:38:44 +02:00
199d2f06c6 Made application terminate when GameModeDialog is closed 2019-07-12 13:33:34 +02:00
6d98d9a963 Added positional board evaluation 2019-07-11 19:57:54 +02:00
9cf121699f Separated board and overlay rendering
+ BoardPane class for managing rendering layers
+ OverlayComponent for drawing overlays
- Renamed BoardPanel to BoardComponent
- Simplified calls in the rendering process
2019-07-09 09:20:30 +02:00
3dfc16943f Added multithreading to AIPlayer for better performance
+ MoveProcessor and ProcessingResult classes for handling multithreaded
move calculation
+ Separate package for AIPlayer and its components
2019-07-08 16:44:21 +02:00
55e9cfb620 Fixed checkmate detection, simplified event handling 2019-07-07 21:07:58 +02:00
dd5170066b Added simple (yet surprisingly effective) AI player
+ AIPlayer class
+ Evaluation method in Board
+ AI vs AI button in GameModeDialog (produces a rendering delay)
2019-07-07 14:37:33 +02:00