Commit Graph

30 Commits

Author SHA1 Message Date
ekzyis 392cf19ae6 Parse checkmates but don't verify 2024-10-16 20:18:42 +02:00
ekzyis d7645edea9 Parse algebraic notation as input 2024-09-26 18:37:32 +02:00
ekzyis 0175ac077f Add queenside castle 2024-09-26 10:38:40 +02:00
ekzyis 7aa65f4ec0 Add kingside castle 2024-09-26 10:30:04 +02:00
ekzyis be247e1f46 Add test for pins 2024-09-26 09:50:28 +02:00
ekzyis 908cc1cfda Add checks 2024-09-26 09:50:07 +02:00
ekzyis aa072ca4aa Add pawn promotion 2024-09-26 07:32:57 +02:00
ekzyis bbcd0b7725 Add TODO about ambiguous queen moves 2024-09-26 07:10:58 +02:00
ekzyis 4a3315eaa0 Fix ambiguous knight moves 2024-09-26 07:05:51 +02:00
ekzyis bab667d0ed Fix ambiguous rook moves 2024-09-26 07:05:51 +02:00
ekzyis e6f9c529f8 Parse file and rank from move
I realized that ambiguous moves might require the file _and_ rank.

Also, ambiguous moves are not limited to capturing moves.
2024-09-26 06:25:41 +02:00
ekzyis 87856f694d Test bishop captures 2024-09-26 04:02:28 +02:00
ekzyis 6a60aee89a Add more tests about blocked paths 2024-09-26 03:50:36 +02:00
ekzyis cb92e66580 Opt-in to parallel tests
Tests now take 2 seconds to complete. They took 12 seconds before!
2024-09-26 02:51:37 +02:00
ekzyis 8f2dc00d9f Fix missing assertions for b.Parse and b.Move 2024-09-26 02:49:20 +02:00
ekzyis 6fefeb44f5 Test ambiguous pawn captures 2024-09-26 02:39:53 +02:00
ekzyis a9a4216d4e Fix ambiguous knight capture 2024-09-26 02:27:51 +02:00
ekzyis e12946ca5d Implement king moves 2024-09-26 00:49:24 +02:00
ekzyis 45c0dfce6f Test more invalid moves 2024-09-26 00:38:23 +02:00
ekzyis d3966685db Check for collisions with own pieces on target 2024-09-26 00:17:35 +02:00
ekzyis e6b7582ae9 Rename to chessbot 2024-09-23 00:46:00 +02:00
ekzyis 5a52d48ef8 Implement pawn diagonal attack 2024-09-23 00:46:00 +02:00
ekzyis 044e7a959e Implement queen moves 2024-09-18 07:00:36 +02:00
ekzyis 2c6a7133e3 Implement rook moves 2024-09-18 07:00:36 +02:00
ekzyis 8e881fc0b3 Implement bishop moves 2024-09-18 06:44:59 +02:00
ekzyis 5e9e4a14d5 Fix missing boundary checks 2024-09-18 06:27:00 +02:00
ekzyis 8f5075d668 Implement knight moves 2024-09-18 06:18:07 +02:00
ekzyis a77fbcbd8b Test invalid pawn moves 2024-09-18 05:52:50 +02:00
ekzyis 552f42cc96 Fix SIGSEGV in tests 2024-09-18 05:52:50 +02:00
ekzyis b29034bab0 Add simple pawn move + tests 2024-09-18 05:52:50 +02:00