ba947ae5e4
Fix routing and move handling
2023-12-25 17:50:58 +01:00
17ac437f5b
Pop promotion dialog with context.pop()
2023-12-25 02:07:03 +01:00
abf322572d
Merge pull request 'Make passphrase entry a dialog instead of a page.' ( #3 ) from store-lobby-id-and-player-id into master
...
Reviewed-on: #3
2023-12-23 16:47:07 +01:00
7a51e71767
Make passphrase entry a dialog instead of a page.
...
Additionally, we set some groundwork for storing the game data (lobby
id, player id, passphrase) in permanent storage in order to reconnect
with it later.
2023-12-23 16:44:23 +01:00
4a9047fd67
Merge pull request 'Handle board status message' ( #2 ) from handle-status-reconnects into master
...
Reviewed-on: #2
2023-12-09 20:51:15 +01:00
8f4cd2266f
Handle board status message
...
This is another step to allow reconnecting after connection loss or
browser closing.
When the game is left with the X button on the bottom right, we will
close the websocket connection, to let the server know, that we are
gone.
The server still has issues that prevent this from working flawlessly.
Remove unused import
2023-12-09 20:48:36 +01:00
e441aaec1e
pub ugrade
2023-11-27 00:20:02 +01:00
130a2dae79
Make ChessSquare a stateful widget.
2023-09-04 21:52:40 +02:00
01dcc74cfc
Refactor chess square and prepare display of square in check.
2023-09-04 21:39:51 +02:00
102c0de20d
Merge pull request 'Fix green flicker of squares on invalid move' ( #1 ) from fix-green-square-flicker into master
...
Reviewed-on: #1
2023-08-25 10:39:08 +00:00
f45ec47285
Fix green flicker of squares on invalid move
2023-08-25 12:28:58 +02:00
b9d574f2ab
Fix 1-pixel lines between squares
...
In window widths or heigths that are not divisible by 8, the chess board
would contain lines between the squares (since the contraints of the
chess board rows would contain non-integer constraints).
With this commit, we calculate margins manually, in order to constrict
the chess board to widths and heights that are divisible by 8.
2023-08-22 04:24:30 +02:00
7c5439a635
Display last played move.
...
We now color the squares of the last move. This makes the state of the
board clearer and shows whose turn it is.
2023-08-19 03:45:03 +02:00
80fe378241
Remove unused function.
2023-08-15 00:47:08 +02:00
43d8d77abc
Fix the current position in ChessPositionManager, now that we rely on position instead of detecting en passant ourselves.
2023-08-15 00:39:10 +02:00
c213d9b1f3
Use position to build board
...
Now the client considers the position sent by the server to build the
position on the board.
2023-08-14 17:04:25 +02:00
a281d2acfa
Change README.
2023-08-14 00:16:04 +02:00
f2a4893b6f
Do not convert short piece name to lower case.
2023-08-12 11:43:51 +02:00
105b6e7565
Fix two bugs
...
1. Fix the bug that made black move first in a new game when the old
game was ended during blacks turn.
2. Fix bug that offered the promotion dialog to the player when a pawn
was moved on the last rank from any square
Also, a late initializer error was fixed because the wrong move variable
was used when a pawn reached the last rank.
2023-07-11 22:29:55 +02:00
da986c8d9b
Make passphrase selectable.
2023-07-06 15:01:27 +02:00
4b8624f82b
Fix bug that did not change the move color when a promotion was received.
2023-07-06 00:12:03 +02:00
95fba78d0c
Change behavior of promotion dialog.
2023-07-06 00:06:03 +02:00
fea24c8274
Make castling work.
2023-07-05 21:16:01 +02:00
c3d747a60e
Fix position.
2023-07-03 20:05:14 +02:00
9ce188ae32
dart fix
2023-07-03 19:55:44 +02:00
a5befed62c
Make promotions work.
2023-07-03 19:41:12 +02:00
0f27fc6b4e
Remove unused import.
2023-07-01 09:31:48 +02:00
3bec7a84d8
Lay foundation for promotions.
2023-07-01 09:29:43 +02:00
52540ec96c
A lot of changes again?!?
2023-06-30 01:49:18 +02:00
43fca47dae
Changes you see? To many to name them. And a splash screen for flutter web of course.
2023-06-28 12:37:59 +02:00
e27f1c7c22
Change the point in time when the board gets cleared.
2023-06-09 13:19:03 +02:00
d55c7bbe1a
Fix resetting the board in case a new game is started.
2023-06-08 20:23:00 +02:00
0627a627d8
Send new websocket message type for sending a move.
2023-06-08 17:14:50 +02:00
6e5d84364d
Various changes.
2023-06-08 17:10:48 +02:00
605743c0d2
Introduce api types and some changes.
2023-06-02 23:28:40 +02:00
b0d6f4002c
Change connection handling (Use playerID from registering to connect via websocket.
2023-05-28 17:44:22 +02:00
299b77d249
Resolve problems in files.
2023-05-28 14:56:01 +02:00
9492644ac9
Introduce changes in API (register game first, then ws connection).
2023-05-28 14:54:46 +02:00
cf12bc08c4
Add helper functions and fix the bug that replayed the move sent from the server.
2023-01-30 23:40:46 +01:00
8572aa73e6
Add ChessPosition that will handle position.
2023-01-30 22:39:13 +01:00
122731ac50
Remove html depencencies and alway connecto to remote server.
2023-01-29 21:09:18 +01:00
c7810d4e7e
Remove /# from URL when using the web app
2022-12-28 20:27:38 +01:00
330aeed476
Make ChessAppRouter a class.
2022-12-25 20:30:42 +01:00
d1ba004ebb
Restructure app. Change design.
2022-12-25 20:18:50 +01:00
4626084abd
Do some more restructuring. ChessApp is now the app. ChessGame is the widget that contains the game and board.
2022-12-25 19:57:47 +01:00
80a24bafd6
Add GoRouter and do a lot of renaming.
2022-12-25 16:16:23 +01:00
bff46e6f3d
Fix that only allows the correct pieces to be allowed to move.
2022-12-22 00:36:30 +01:00
0356268b32
Only show turn indicator and server output when in debug mode.
2022-12-22 00:00:35 +01:00
0b7c3897e5
1. Remove leading counter from move message,
...
2. Only allow color to move when it's their turn.
2022-12-21 23:14:53 +01:00
aaaf40bb2b
Remove a redundant call to ChessBloc that caused the position to be renewed twice.
...
Fix a index error (Column started with 0 while rows started with 1).
2022-12-18 23:43:06 +01:00