fbf66e6ec1
Created Move#fromSAN, moved implementation from Board
2019-11-19 06:30:53 +01:00
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
78bac2e913
Added empty save methods to PGNDatabase and PGNGame
2019-11-07 05:53:28 +01:00
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
6bbef7deee
Using reflection in FENString, fixed input field in MainWindow
2019-11-05 05:51:41 +01:00
a98ca5e350
Merge pull request #11 from CyB3RC0nN0R/f/pawn_promotion
...
Added pawn promotion
2019-11-05 05:44:11 +01:00
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
37c5f2bd23
Added pawn promotion support to LAN
2019-11-04 18:11:23 +01:00
02c5e33f10
Removed Type enumeration from Piece class
2019-11-04 05:51:11 +01:00
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
b5c30d59af
Created getters for all fields in Move
2019-10-31 19:09:43 +01:00
2e672841cd
Moved board evaluation logic to MoveProcessor
2019-10-30 17:11:57 +01:00
1e44234f7e
Added RestartEvent to clear move list after game restart
2019-10-30 06:12:31 +01:00
792f93fc3f
Fully implemented castling conditions
...
Closes #8
2019-10-29 06:24:44 +01:00
27f37a8cf0
Implemented 'go' command in UCI protocol
...
Closes #5
2019-10-28 18:54:00 +01:00
4d943c1a19
Implemented 'position moves' command in UCI protocol
2019-10-28 18:31:18 +01:00
1d78b8f071
Implemented 'currline' command in UCI protocol
2019-10-28 18:24:26 +01:00
a41a2819da
Changed class Javadoc to use @author and @since tags
2019-10-26 07:55:21 +02:00
40d80fdc12
Merge pull request #7 from CyB3RC0nN0R/feature/io
...
Refined IO functionality, fixed FEN string serialization and deserialization
2019-10-25 17:01:55 +02:00
cbf6aa2013
Moved loadFile method to MainWindow, removed redundancies
2019-10-25 16:58:18 +02:00
5dbd38d1c0
Removed old FEN string methods, fixed FEN regex
2019-10-25 11:52:48 +02:00
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
c438dd00cb
Enhanced FENString class, added unit test and Board#equals()
2019-10-24 19:54:59 +02:00
7e8f75a008
Added FENString class
2019-10-24 06:09:16 +02:00
db8fe1c4c0
Renamed FEN string fullmove counter to fullmove number
2019-10-22 21:25:06 +02:00
acb0e63c82
Added PGNDatabaseTest and test file
2019-10-21 21:45:38 +02:00
2f1ae6e9c8
Created io package, moved IO-related classes
2019-10-20 17:27:52 +02:00
1f2cedd455
Replaced game configuration dialog by a JOptionPane
2019-10-20 11:51:56 +02:00
1d19f17c56
Improved PGN parsing, added PGN file loading
2019-10-20 11:22:58 +02:00
86cf2afc8f
Implemented game loading from FEN file
2019-10-18 17:45:13 +02:00
8b9793611a
Added file chooser dialog, renamed GameConfigurationDialog to DialogUtil
2019-10-14 06:31:03 +02:00
446f895ae1
Replaced LogPanel by a JList inside GamePane with a custom cell renderer
2019-10-13 21:34:22 +02:00
9839d5a23e
Fixed texture scaling method in TextureUtil
2019-10-13 14:37:35 +02:00
713c95338e
Added PGNDatabase and PGNGame classes with support for PGN parsing
2019-10-09 21:03:39 +02:00
84b3e1503f
Renamed SAN-like coordinate notation to LAN, added SAN support to Board
2019-10-09 21:02:22 +02:00
cc0440233b
Added ChessException class
2019-10-04 18:18:00 +02:00
286ea93ee3
Moved MoveNode into a separate file
2019-10-04 10:25:03 +02:00
994cb84729
Fixed LogPanel to support new log data model
2019-09-23 17:37:42 +02:00
54e4a0e2e4
Fixed memory leak, improved copy constructors
2019-09-19 21:31:24 +02:00
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
3941a75c91
Changed unit test package structure
...
- Changed unit test package structure to match src
- Refactored PositionTest
+ TestToString method in PositionTest
2019-09-10 21:15:31 +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