Stephen Seo
105cd880f2
Impl sending/receiving emotes
2022-04-29 18:30:41 +09:00
Stephen Seo
36dd43bb70
Fixes related to new send emote functionality
2022-04-29 17:24:42 +09:00
Stephen Seo
a4bf4cbd25
Change fn string_from_board to accept board ref
2022-04-29 15:21:22 +09:00
Stephen Seo
e0ed5fc5d8
back_end: Fix bug where CyanWin is MagentaWin
2022-04-28 22:12:36 +09:00
Stephen Seo
059d0608b6
Impl match players via phrase
...
Front-end now has option to input phrase on game start.
Fixed back-end accepting empty strings (will treat empty strings as if
no phrase was given).
2022-04-27 12:47:45 +09:00
Stephen Seo
c9ba80e6a4
Impl "too_many_players" response from back-end
...
Previous implementation did not respond with the proper JSON response if
there were too many players.
2022-04-08 11:01:33 +09:00
Stephen Seo
74ca3fd696
Add GPL3 Licence headers to sources
2022-04-06 20:49:54 +09:00
Stephen Seo
59bdcc2a34
Tweak "board to string" and back for better info
2022-04-06 20:09:22 +09:00
Stephen Seo
567cec9500
Minor tweaks (and cargo fmt
got aggressive)
2022-04-06 19:38:59 +09:00
Stephen Seo
89b9bf860b
Working multiplayer between frontend backend
...
WIP Need to set the URL and host the backend on the website.
2022-04-06 18:43:17 +09:00
Stephen Seo
8c84aae173
605.607 WIP! working get-id and disconnect
...
The frontend "server" and backend server must be served via the same
port/address. This can be done by using nginx as the server, and using
reverse-proxies from nginx to the frontend and backend servers.
2022-04-06 13:39:12 +09:00
Stephen Seo
83a9ab2ea0
frontend: WIP! in progress setting up id request
2022-04-04 18:25:17 +09:00
Stephen Seo
0d9e35dd28
Refactorings and bug fixes
...
Protocol was also updated to match the output from the backend.
Fixed "id" not returning as an integer from the backend.
2022-04-01 17:17:42 +09:00
Stephen Seo
8782a731bc
Move some backend fns to the shared "state.rs"
2022-03-31 21:02:52 +09:00
Stephen Seo
e4d4d6e153
Move enum from yew_components mod to state mod
...
Preparation for symlinking shared code into the backend project.
2022-03-29 14:41:04 +09:00
Stephen Seo
ebf0cb5bb8
Impl async delay on AI choice
...
This commit is also a stepping-stone towards handling http requests
which will require deferred callbacks on Yew Components. By figuring
out how to delay callbacks in this commit, it should be easier to
figure out how to handle http requests that may require a deferred
callback.
2022-03-15 13:16:09 +09:00
Stephen Seo
d8377d280a
Tweaks to AI for correctness
2022-03-10 16:39:26 +09:00
Stephen Seo
89a12623b4
Incorporate game AI into game
...
Can select from three difficulties, and the AI makes their move when it
is their turn. AI probably still needs some tweaking..
2022-03-10 16:17:16 +09:00
Stephen Seo
e35870b240
Impl placed token indicator, fixes/refactorings
2022-03-10 15:43:03 +09:00
Stephen Seo
0d3d6b2a8d
Fix typo
2022-03-09 19:29:00 +09:00
Stephen Seo
7e9718a743
Refactorings and linter fixes
2022-03-09 18:14:01 +09:00
Stephen Seo
76e6d3be52
Impl buttons indicator that won the game
2022-03-09 18:10:13 +09:00
Stephen Seo
b902b1c7b4
Impl use of win/draw check, fixes
...
Also added unit tests for win/draw checks.
2022-03-09 17:29:53 +09:00
Stephen Seo
5e2c5b6d41
Minor refactoring
...
Use "From<>" instead of "Into<>" for MainMenuMessage to GameState.
2022-03-07 13:14:57 +09:00
Stephen Seo
2e58bc1288
Set up API for AI choice of slot on board
2022-03-07 13:12:05 +09:00
Stephen Seo
130cc42d86
Impl main menu
...
Only "LocalMultiplayer" can be chosen for the game-mode since neither
AI nor Networked-Multiplayer has been implemented yet.
2022-03-04 16:22:30 +09:00
Stephen Seo
079bf6229f
Impl convenience functions, refactoring
2022-03-03 18:01:46 +09:00
Stephen Seo
462dec9ea1
Remove NodeRef for getter, improve turn indicator
...
All NodeRefs have been removed in favor of "getElementById".
Turn indicator is now much more obvious to see.
2022-03-03 17:36:51 +09:00
Stephen Seo
52b841d98a
Replace slot "ref" with "id"
2022-03-03 14:08:35 +09:00
Stephen Seo
3b4d8b3483
Impl additional info text box, drop logic
...
Can place tokens, and not place tokens where there already is a token.
Additional info text box added to the side of the board.
More information to the UI regarding placed tokens.
2022-03-02 17:51:14 +09:00
Stephen Seo
8838dbae69
Cleanup and fixes
...
Remove state::MessageBus in favor of String messages sent to Wrapper
from Slot.
Update Slot state from inside Wrapper::update such that changes should
be immediately visible per Slot (moved code from Wrapper::rendered,
fixing updates not being immediately visble).
2022-03-02 16:25:01 +09:00
Stephen Seo
45e2c88745
Reverse info_text vertically
...
info_text's latest messages now appear at the top instead of at the
bottom.
2022-03-02 15:38:24 +09:00
Stephen Seo
15c7dc7654
Reorganize front-end source into modules
2022-03-02 15:18:21 +09:00