Commit Graph
103 Commits
Author SHA1 Message Date
Steve Barnegren 7311b9add1 Use hard ai for ai vs ai game example 2017-03-16 21:19:50 +00:00
Steve Barnegren c50d4de8d7 Make board squares setter private 2017-02-19 19:57:59 +00:00
Steve Barnegren e7b92a6ceb Added difficulty levels 2017-02-09 21:51:13 +00:00
Steve Barnegren 216bbfe0dd Fix bug in threat rater 2017-02-09 21:41:31 +00:00
Steve Barnegren 7c4e85e855 Fix typo 2017-02-09 20:32:56 +00:00
Steve Barnegren 73d3dbbd38 Behaviour tests passing 2017-02-09 19:36:31 +00:00
Steve Barnegren 717de7b90c Fix threat rating tests 2017-02-09 18:42:02 +00:00
Steve Barnegren 782269b3d5 New threat rating logic 2017-02-09 17:59:04 +00:00
Steve Barnegren d04cffff36 Pieces store their location 2017-02-05 17:21:07 +00:00
Steve Barnegren 2f2b6e2d39 Update project settings 2017-02-05 16:39:15 +00:00
Steve Barnegren 17221a7f78 Improved piece movement performance 2017-02-05 10:36:58 +00:00
Steve Barnegren 1f64711de9 Piece movement performance improvements 2017-02-05 10:22:28 +00:00
Steve Barnegren 8b92378030 Performance optimisation for diagonal movement 2017-02-05 09:39:55 +00:00
Steve Barnegren 50514237ff Improved pawn movement validation performance 2017-02-03 16:34:45 +00:00
Steve Barnegren 59eebff8ed AI performance improvements 2017-02-03 16:06:24 +00:00
Steve Barnegren 2ab3ec8f98 Added performance tests for move validation 2017-02-02 22:01:34 +00:00
Steve Barnegren 7a5c82b638 Don't allow players to move if game not in progress 2017-02-01 22:19:47 +00:00
Steve Barnegren 702ac1ce2c AI works on background thread 2017-02-01 22:05:58 +00:00
Steve Barnegren 30e274b05f Fixed bug with Square Equatable 2017-02-01 08:47:33 +00:00
Steve Barnegren 55795bf00a Fixed board equatable conformance 2017-02-01 08:44:47 +00:00
Steve Barnegren 2ee384172c Added failing test case for board equality 2017-02-01 08:39:51 +00:00
Steve Barnegren b3ab7cfbf0 Break out openings in to separate moves and board states 2017-01-31 21:26:13 +00:00
Steve Barnegren c0cc240716 Added tests for board location 2017-01-31 18:26:33 +00:00
Steve Barnegren ee073d5edf Added board method to be able to get possible moves locations for a piece 2017-01-30 21:44:20 +00:00
Steve Barnegren 8592eb4928 Use forEach to make a few verbose loops more concise 2017-01-28 10:57:21 +00:00
Steve Barnegren 1594973694 Added game state enum to game 2017-01-26 20:38:57 +00:00
Steve Barnegren aaec289f33 Made ASCIIBoard part of SwiftChess module 2017-01-09 21:35:27 +00:00
Steve Barnegren 8fd84bea84 Implemented en passant 2017-01-09 21:12:40 +00:00
Steve Barnegren 8fa6ca0002 Added failing tests for en passant rule 2017-01-08 19:47:43 +00:00
Steve Barnegren b200acaffb Fix issue with pawns not being able to check king 2017-01-08 18:37:18 +00:00
Steve Barnegren 150e763d87 Added behavioural test 2017-01-08 11:07:11 +00:00
Steve Barnegren 18339d9710 Added configuration weighting for board rater centre four occupation 2017-01-04 07:56:56 +00:00
Steve Barnegren 2a3c883793 Added BoardRaterCenterFourOccupation 2017-01-03 19:40:48 +00:00
Steve Barnegren 227c4f3b45 Added tests for all AIConfiguration properties 2017-01-03 19:24:33 +00:00
Steve Barnegren ed73233a7e Added tests for AIConfiguration 2017-01-03 08:39:23 +00:00
Steve Barnegren 6a81b0ec19 Added AIConfiguration 2017-01-02 19:16:08 +00:00
Steve Barnegren 118837a2f4 Change board rater from protocol to class 2017-01-02 18:44:04 +00:00
Steve Barnegren 6426a4754f Added BoardRaterCheckMateOpportunity 2017-01-02 18:21:52 +00:00
Steve Barnegren 59f467ab60 Added BoardRaterKingSurroundingPossession 2016-12-29 22:27:25 +00:00
Steve Barnegren 9f69f21d25 Human player able to castle 2016-12-29 19:05:59 +00:00
Steve Barnegren 1831a35ff4 Added ability to perform castle moves to board 2016-12-29 18:58:44 +00:00
Steve Barnegren 69a8722c2a Added some failing tests preventing castling from working correctly 2016-12-29 18:09:05 +00:00
Steve Barnegren a61a638ba7 Implemented castling logic 2016-12-29 17:08:40 +00:00
Steve Barnegren 70f561a9cd Added 'hasMoved' property to pieces 2016-12-29 15:22:06 +00:00
Steve Barnegren 4f6ae8c817 Minor changes 2016-12-29 13:59:20 +00:00
Steve Barnegren 1b66c0bedb Implemented pawn promotion for human player 2016-12-29 13:17:44 +00:00
Steve Barnegren 3f7c6c58f2 Add board method to get promotable pawn locations 2016-12-28 23:11:36 +00:00
Steve Barnegren f698396599 Added a few more tests 2016-12-28 22:37:01 +00:00
Steve Barnegren a9e8889ff0 Prevent pieces from trying to take king 2016-12-28 21:49:06 +00:00
Steve Barnegren ee67afa6dc Fix bugs allowing pawn to jump over other pieces 2016-12-28 19:42:49 +00:00