Eric House
f406757fb2
add generic timers (with dutil component for scheduling)
2024-08-12 21:11:14 -07:00
Eric House
ad651c6cba
more work on stats
2024-08-11 20:45:11 -07:00
Eric House
0a992c5a4b
move mutex into a struct (for future dev advantage)
2024-08-11 19:59:38 -07:00
Eric House
464e124038
add debug-only stats submenu, and ability to print stats
...
They won't persist on Android if I count on dutil shutting down, since
there's no such thing. So I save on every change, which is way too
often but good enough for now.
2024-08-10 20:54:56 -07:00
Eric House
2f8164d8c7
add test for email-style invitation
2024-08-09 10:48:27 -07:00
Eric House
c09ac28759
fix warnings about zeroing static structs (no behavior change)
2024-08-07 22:29:46 -07:00
Eric House
7286156c87
add a few more stats
2024-08-07 22:13:02 -07:00
Eric House
4ab6b1930f
new stats module gathering data for debugging and upload (soon)
2024-08-07 08:16:12 -07:00
Eric House
72082cde0d
add mutex utility
...
since I'm using them more now
2024-08-06 10:23:20 -07:00
Eric House
696c47ace4
fix harvesting of known player names to not mismatch name/address
...
The buggy code assumed two arrays were in sync that weren't guaranteed
to be so. So now I'm leveraging rematch code that already put
addresses in player order.
2024-07-30 16:15:44 -07:00
Eric House
daacc66ffe
send ack info as array for later optimization
2024-07-30 16:15:44 -07:00
Eric House
2f91ff1f78
display known player names for pending invites
...
When an invitation is pending for a player in GameSummary or
scoreboard, show "<Name> invited" instead of "remote missing."
2024-07-28 08:48:33 -07:00
Eric House
f3fb43e93b
handle invitations for excessive new addresses
...
Deal with somebody creating a new invitation, e.g. because it's been
realized that an existing one won't be accepted. Unused channels are
used first (though there will be none in a 4-device game), then
channels with old invites (only) are recycled.
2024-07-28 08:48:33 -07:00
Eric House
d61b4ce485
make comms choose channel for invitations
...
Since server will ultimately assign them as registrations come in
there's no point in trying to force an order earlier.
2024-07-28 08:48:33 -07:00
Eric House
b8e2877880
remove some logging
2024-07-28 08:48:33 -07:00
Eric House
ae03f4ed5b
trivial API change
2024-07-28 08:48:33 -07:00
Eric House
a3078fb549
cleanup: fix flashing quarantine count and reduce logging
2024-07-19 22:48:34 -07:00
Eric House
3ee909df7d
use mutex in comms
...
I've long had logging to detect (and assert(0))when two methods access
comms at the same time on different threads. I'm getting that
assertion more often now due, I guess, to subtle changes introduced by
the kotlin port. I wanted to avoid a mutex in cross-platform code, but
I've been using them without problems in a couple of less critical
modules so let's just do the simple thing.
2024-07-18 08:38:24 -07:00
Eric House
9c96397ece
plug memory leak
2024-07-09 21:43:43 -07:00
Eric House
41e1a2e3c3
cleanup, esp. to remove some nullable params
...
squash me
2024-07-07 20:17:10 -07:00
Eric House
6e1b36f38f
remove assertion firing when relay games present
2024-07-02 22:25:55 -07:00
Eric House
840086e98c
remove mistaken assertion
2024-05-27 10:01:08 -07:00
Eric House
3d51de4bf7
fix crash tile-picking when too few tiles left
2024-05-17 08:41:51 -07:00
Eric House
18bbc37516
cleanup and fix for release builds
2024-04-26 10:29:43 -07:00
Eric House
21990ece1c
Display "legal phonies" using same code as studylist words
...
Converted studylist to Kotlin, then made most of it a superclass
from which legal phonies display also inherits
2024-04-26 10:29:40 -07:00
Eric House
cb540c23c0
add (unused still) timers to dutil
...
I'll want timers and idle procs for device operations, not just games.
2024-04-26 09:33:59 -07:00
Eric House
1ea0c97115
get rid of getMQTTIDsFor
2024-04-26 09:33:59 -07:00
Eric House
c73fcd336e
cleanup from code review
2024-04-18 11:15:44 -07:00
Eric House
3a4748b7f7
remove release compile errors
2024-04-13 17:16:47 -07:00
Eric House
7d1636d65f
cleanup approved phonies UI
2024-04-09 11:23:06 -07:00
Eric House
8be9d18287
new feature to remember acceptable phonies
...
Present to user option to remember "phonies", words played but not
in the current wordlist. They're stored by language (not by wordlist)
and not available for hints or the robot to use (as that would require
incorporating them into a wordlist, a much larger change.)
2024-04-09 10:52:43 -07:00
Eric House
b163441bb6
fix bug deleting dllist elem
2024-04-05 14:17:10 -07:00
Eric House
707c9a08b1
add thread checking for more comms methods
...
And add a hack for that requiring non-const decls for DEBUG builds
2024-03-15 16:16:39 -07:00
Eric House
01c53daa1d
select cur-turn player so move can succeed
2024-03-15 16:16:39 -07:00
Eric House
2f8082b093
return COMMS_CHECKSUM entirely
2024-03-15 16:02:21 -07:00
Eric House
2feee7dc56
update logging macros
2024-03-11 15:38:49 -07:00
Eric House
e61573928e
more safety checks
2024-03-04 10:45:30 -08:00
Eric House
2b58cc702a
test for stream size
2024-03-04 10:21:08 -08:00
Eric House
3537975514
gtk version fixes: blanks, scores, buttons
2024-03-04 09:19:25 -08:00
Eric House
fae8c0e28f
check for null
2024-03-01 08:59:02 -08:00
Eric House
fd26763ea5
set pending flag correctly
...
I hope...
2024-02-29 17:00:02 -08:00
Eric House
8643c8ae83
fix npe when network fails
2024-02-29 12:14:22 -08:00
Eric House
e3670c1295
include thread when dumping stack
2024-02-29 09:51:26 -08:00
Eric House
bb1a589ab0
make non-debug build compile
2024-02-27 16:07:47 -08:00
Eric House
b791d8eb99
cleanup from code review
2024-02-27 15:59:42 -08:00
Eric House
f2d7ce3daa
attribute sent chat to local player if non-local selected
2024-02-23 07:55:07 -08:00
Eric House
f3c7fcffd3
fix assertion chatting when remote player selected
2024-02-22 07:39:04 -08:00
Eric House
6d17d0636e
fix (new) problems communicating chat sender name
2024-02-22 07:06:14 -08:00
Eric House
fbad300e48
finish chat fix to not crash when old messages come in
2024-02-20 15:53:24 -08:00
Eric House
d446d3d463
always send from a local player
...
Seeing assertion failures with >2 dev games. I think the selPlayer
variable doesn't always point at a local player, so don't use it.
2024-02-20 15:32:58 -08:00