Kai S. K. Engelbart
3bff5aa56e
Fixed setter parameter naming for fullmove number in Log
2019-12-11 07:53:44 +01:00
Kai S. K. Engelbart
0487b47691
Fixed missing end of line chunk in movetext
2019-12-11 07:45:39 +01:00
Kai S. K. Engelbart
39b7ce20b1
Fixed fullmove counters in PGN export
2019-12-10 21:27:06 +01:00
Kai S. K. Engelbart
91512b7774
Including fullmove counters in PGN export
2019-12-08 22:15:29 +01:00
Kai S. K. Engelbart
44f91591b4
Implemented saving to PGN file
...
+ copyVariations parameter in copy constructors of Board and Log
This procedure still required work in the form of efficiently rewinding
the board to the first position for SAN move extraction and shortening
SAN moves to the smallest possible representation.
2019-12-06 23:54:11 +01:00
Kai S. K. Engelbart
6af213ed4f
Working on SAN serialization of moves
...
+ SAN generation for castling moves
+ Appending promotion piece symbol in pawn promotion SAN
+ Asking the user to view a generated PGN file
2019-11-24 21:31:32 +01:00
Kai S. K. Engelbart
fbf66e6ec1
Created Move#fromSAN, moved implementation from Board
2019-11-19 06:30:53 +01:00
Kai S. K. Engelbart
6360a8a4ba
Added a PGN file saving routine
...
+ showFileSaveDialog in DialogUtil
+ Javadoc in Log and PGNDatabase
+ "Save game file" button in MenuBar
+ saveFile method in MainWindow
+ Formatting and result tag in PGNGame tag pair serialization
2019-11-08 15:22:12 +01:00
Kai S. K. Engelbart
78bac2e913
Added empty save methods to PGNDatabase and PGNGame
2019-11-07 05:53:28 +01:00
Kai S. K. Engelbart
44f6a4b9b8
Fixed color switching button
...
* Renamed RestartEvent to GameStartEvent
* Moved event trigger to Game
* Renamed GameState to BoardState
* Added BoardState instance to MoveEvent
* Disabling the color switching button when a checkmate or stalemate is
reached
Fixes #1
2019-11-06 19:52:52 +01:00
Kai S. K. Engelbart
6bbef7deee
Using reflection in FENString, fixed input field in MainWindow
2019-11-05 05:51:41 +01:00
Kai S. K. Engelbart
15cdf00eb1
Added pawn promotion selection
...
* Letting a NaturalPlayer select the promotion piece with a combo box
* Optimized reflection use in PawnPromotion
* Changed toString method of Move to use LAN
Closes #9
2019-11-05 05:41:26 +01:00
Kai S. K. Engelbart
37c5f2bd23
Added pawn promotion support to LAN
2019-11-04 18:11:23 +01:00
Kai S. K. Engelbart
02c5e33f10
Removed Type enumeration from Piece class
2019-11-04 05:51:11 +01:00
Kai S. K. Engelbart
28939f0471
Implemented proper pawn promotion
...
* Moved move execution and reversion to the Move class
* Removed Move.Type enumeration
* Added Move subclasses Castling, EnPassant and PawnPromotion
* Generating all four possible pawn promotions in the Pawn class
* Temporarily removed special move support from NaturalPlayer
2019-11-03 15:46:08 +01:00
Kai S. K. Engelbart
b5c30d59af
Created getters for all fields in Move
2019-10-31 19:09:43 +01:00
Kai S. K. Engelbart
2e672841cd
Moved board evaluation logic to MoveProcessor
2019-10-30 17:11:57 +01:00
Kai S. K. Engelbart
1e44234f7e
Added RestartEvent to clear move list after game restart
2019-10-30 06:12:31 +01:00
Kai S. K. Engelbart
792f93fc3f
Fully implemented castling conditions
...
Closes #8
2019-10-29 06:24:44 +01:00
Kai S. K. Engelbart
27f37a8cf0
Implemented 'go' command in UCI protocol
...
Closes #5
2019-10-28 18:54:00 +01:00
Kai S. K. Engelbart
4d943c1a19
Implemented 'position moves' command in UCI protocol
2019-10-28 18:31:18 +01:00
Kai S. K. Engelbart
1d78b8f071
Implemented 'currline' command in UCI protocol
2019-10-28 18:24:26 +01:00
Kai S. K. Engelbart
a41a2819da
Changed class Javadoc to use @author and @since tags
2019-10-26 07:55:21 +02:00
Kai S. K. Engelbart
cbf6aa2013
Moved loadFile method to MainWindow, removed redundancies
2019-10-25 16:58:18 +02:00
Kai S. K. Engelbart
5dbd38d1c0
Removed old FEN string methods, fixed FEN regex
2019-10-25 11:52:48 +02:00
Kai S. K. Engelbart
4857b48e4e
Moved castling right logging to Log
...
* Removed move counter from Piece
* Added castling right array to MoveNode and Log
* Removed castling right map from Board
* Added castling right serialization and deserialization to FENString
* Modified LogTest
2019-10-25 11:34:07 +02:00
Kai S. K. Engelbart
c438dd00cb
Enhanced FENString class, added unit test and Board#equals()
2019-10-24 19:54:59 +02:00
Kai S. K. Engelbart
7e8f75a008
Added FENString class
2019-10-24 06:09:16 +02:00
Kai S. K. Engelbart
db8fe1c4c0
Renamed FEN string fullmove counter to fullmove number
2019-10-22 21:25:06 +02:00
Kai S. K. Engelbart
2f1ae6e9c8
Created io package, moved IO-related classes
2019-10-20 17:27:52 +02:00
Kai S. K. Engelbart
1f2cedd455
Replaced game configuration dialog by a JOptionPane
2019-10-20 11:51:56 +02:00
Kai S. K. Engelbart
1d19f17c56
Improved PGN parsing, added PGN file loading
2019-10-20 11:22:58 +02:00
Kai S. K. Engelbart
86cf2afc8f
Implemented game loading from FEN file
2019-10-18 17:45:13 +02:00
Kai S. K. Engelbart
8b9793611a
Added file chooser dialog, renamed GameConfigurationDialog to DialogUtil
2019-10-14 06:31:03 +02:00
Kai S. K. Engelbart
446f895ae1
Replaced LogPanel by a JList inside GamePane with a custom cell renderer
2019-10-13 21:34:22 +02:00
Kai S. K. Engelbart
9839d5a23e
Fixed texture scaling method in TextureUtil
2019-10-13 14:37:35 +02:00
Kai S. K. Engelbart
713c95338e
Added PGNDatabase and PGNGame classes with support for PGN parsing
2019-10-09 21:03:39 +02:00
Kai S. K. Engelbart
84b3e1503f
Renamed SAN-like coordinate notation to LAN, added SAN support to Board
2019-10-09 21:02:22 +02:00
Kai S. K. Engelbart
cc0440233b
Added ChessException class
2019-10-04 18:18:00 +02:00
Kai S. K. Engelbart
286ea93ee3
Moved MoveNode into a separate file
2019-10-04 10:25:03 +02:00
Kai S. K. Engelbart
994cb84729
Fixed LogPanel to support new log data model
2019-09-23 17:37:42 +02:00
Kai S. K. Engelbart
54e4a0e2e4
Fixed memory leak, improved copy constructors
2019-09-19 21:31:24 +02:00
Kai S. K. Engelbart
1ecafa5485
Fixed Log with respect to variations
2019-09-18 15:00:31 +02:00
Kai S. K. Engelbart
c987bfcebb
Added variations in Log, added LogTest
2019-09-13 18:13:34 +02:00
Kai S. K. Engelbart
249480724a
Refactoring
...
- Simplified FEN-string generation
- Made GameConfigurationDialog a utility class
2019-09-09 19:05:57 +02:00
Kai S. K. Engelbart
216877b76b
Added LogPanel to GamePane
2019-09-09 06:14:37 +02:00
Kai S. K. Engelbart
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
Kai S. K. Engelbart
08ac0ac114
Fixed frozen game after adding a new one
2019-09-06 13:24:58 +02:00
Kai S. K. Engelbart
de9cd05602
Opening the new tab after starting a game
2019-09-01 18:57:31 +02:00
Kai S. K. Engelbart
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