46 Commits

Author SHA1 Message Date
b70abac827 unexport things that don't need to be exported
Most of all, this lets staticcheck point out things that are unused.
Also delete an unused thing found as a result of this.
2024-02-04 10:37:20 -06:00
1d4bad751c use the right source for move timer in dto 2024-02-03 23:01:32 -06:00
c7ee3760ba implement player loses on move timer expires
Fixes #11.
2024-02-03 22:38:09 -06:00
566de4066b skeleton move timer
For #11.
2024-02-03 21:11:09 -06:00
1c0db61385 don't preserve items when shooting self with blank 2024-02-03 14:59:22 -06:00
27f872dda5 helps to refresh after making changes to the wobsite 2024-02-03 13:46:44 -06:00
0b89773f57 why does the shell list never show 2024-02-03 13:44:22 -06:00
e2bdf3e23b fix cuffs 2024-02-03 13:42:56 -06:00
76195d21cb why do cuffs not work 2024-02-03 13:37:26 -06:00
9a02235eba only report match winners 2024-02-03 12:55:02 -06:00
1068060e94 transmit game actions and winner in dto 2024-02-03 11:44:11 -06:00
73b5ac7960 use distinct types for player and session ids 2024-01-31 22:40:12 -06:00
3d9a0b9836 indicate in game state whose turn it is 2024-01-30 21:09:50 -06:00
e8a181a4f7 include shell counts in game dto 2024-01-29 21:20:17 -06:00
f3fbec98d7 clamp hp to zero 2024-01-29 13:18:26 -06:00
a3bf457fd6 simplify game state tracking 2024-01-29 13:16:34 -06:00
6077316a0d indicate round and game end with errors
Fixes #8.
2024-01-29 11:41:29 -06:00
f7be9beabc distinguish round and match winners 2024-01-28 21:47:14 -06:00
711724bc4d improve terminology in game controller 2024-01-28 12:42:42 -06:00
e8786073aa implement conceding 2024-01-23 20:45:00 -06:00
e95d526266 implement matchmaking lobby
Fixes #2.
2024-01-21 19:53:08 -06:00
935fe8e2e4 use cigs even when they have no effect 2024-01-21 18:41:43 -06:00
85824ef22f send all player's items to clients 2024-01-21 12:56:12 -06:00
24af4b7602 test most game invariants 2024-01-21 11:21:50 -06:00
46563f9115 unexport game state fields 2024-01-21 04:18:55 -06:00
bc1685d5ee start games with player ids
Fixes #1.
2024-01-21 04:15:03 -06:00
5a5f709dd6 rename game.NewGame -> game.New 2024-01-21 01:31:24 -06:00
05acb1053f skip turn if cuffed 2024-01-21 01:22:44 -06:00
18e1793b16 add shell count info for start of round 2024-01-21 01:16:30 -06:00
9b6b645cfe group and turn numbers are hidden information 2024-01-21 01:09:36 -06:00
5fa8de142b add JSON DTOs for game state 2024-01-21 00:56:45 -06:00
5466785bbc test item strings 2024-01-21 00:50:54 -06:00
22ec96787f add item strings 2024-01-21 00:48:13 -06:00
4b044a3523 add method to peek the current shell 2024-01-21 00:33:39 -06:00
449d90bc98 start the first round when creating a game 2024-01-21 00:28:57 -06:00
178a86c597 track previous shell 2024-01-21 00:28:29 -06:00
402e3768e5 hp is set at start of round, not start of group 2024-01-21 00:25:51 -06:00
4d2f5a43dc consolidate turn advance 2024-01-21 00:14:32 -06:00
93aa4b49d0 require proof of turn to use items or shoot 2024-01-21 00:02:22 -06:00
18ba9fd568 move player id to a separate package
Later, this package could hold stuff like MMR. It's just a type for now.
2024-01-20 23:56:03 -06:00
a0608dac03 implement round end 2024-01-20 23:52:58 -06:00
56f8387385 don't care about player index, we have ids 2024-01-20 23:39:59 -06:00
b7c7fd260f fix initialization 2024-01-20 23:03:34 -06:00
8691cda9eb implemented item use 2024-01-20 23:02:15 -06:00
e173225b6e second commit, too busy flowing to isolate work 2024-01-20 22:52:44 -06:00
f0dc3716e8 initial commit, game init implemented 2024-01-20 22:06:56 -06:00