Commit graph

1573 commits

Author SHA1 Message Date
Eric House
970c2f6f9a make android compile/run with wasm changes 2021-03-19 14:29:20 -07:00
Eric House
34aee3d7d0 add remaining langs to code-to-lang table 2021-03-19 14:29:20 -07:00
Eric House
f0d8a71deb split dict faces using js so utf8 chars are ok
As with java, the platform knows utf-8 better than vanilla C, so use a
JS inlined function to split a binary stream into its "face" components.
2021-03-19 14:29:20 -07:00
Eric House
567c3dbf9e show mempool stats (DEBUG builds) 2021-03-19 14:27:04 -07:00
Eric House
4937d13273 use indexeddb for storage 2021-03-19 14:27:04 -07:00
Eric House
2a6931fdcf add and start using indexeddb via emscripten APIs
Replace a couple of load/store actions with new APIs that do so
asynchronously (using indexeddb underneath, via emscripten APIs.)
Required restructuring how app starts. More changes to come. The idea is
to replace wordlist storage: this'll keep 'em smaller and not require
conversion to string.
2021-03-19 14:27:04 -07:00
Eric House
d5e7dc4c97 game from a downloaded wordlist works!!!! 2021-03-19 14:27:04 -07:00
Eric House
afc3ff156e make game ask for dicts when needed
It's awkward for platform code to create a dictionary prior to opening a
game whose data contains the information about what dict to open. So add
a dutil method to fetch a dict, and call it from inside game opening
code. Makes linux code better at least.
2021-03-19 14:27:04 -07:00
Eric House
7924c046d6 fix linux compile 2021-03-19 14:27:04 -07:00
Eric House
06b530c443 add notion of index to storage
I'm heading toward being able to know what all the games are by how
they're stored in a xplatform way. This is a start. Adding a second key
to storage, and looking at grouping everything where one key or the
other matches.
2021-03-19 14:27:04 -07:00
Eric House
61be81cf1a invite known players 2021-03-19 14:27:04 -07:00
Eric House
534e245048 change load-from-storage to not require free() 2021-03-19 14:27:04 -07:00
Eric House
41cd3d8f39 open game to receive message 2021-03-19 14:27:04 -07:00
Eric House
23cb7bb85d unsigned->signed to fix drawing garbage in empty tiles 2021-03-19 14:27:04 -07:00
Eric House
74109ce172 fix to send after connect 2021-03-19 14:27:04 -07:00
Eric House
7dc949fb38 choose font sizes to fit
Make on demand rather than guessing. Only wind up with six or so, so the
linear search is probably ok.
2021-03-19 14:27:04 -07:00
Eric House
96829b5478 fix so release build builds
without MEMDEBUG defined that is
2021-03-19 14:27:04 -07:00
Eric House
880bff747d use js runtime for timers too 2021-03-19 14:26:18 -07:00
Eric House
c57471364f get URL-encoded invitation receipt working 2021-03-19 14:26:18 -07:00
Eric House
4612ca70c7 snapshot: message exchange mostly works 2021-03-19 14:26:18 -07:00
Eric House
e3814bf0eb snapshot: sends message to inviter 2021-03-19 14:26:18 -07:00
Eric House
9bc72d0745 move stream storage into super 2021-03-19 14:26:18 -07:00
Eric House
ec9570ab81 improve drawCell() 2021-03-19 14:26:18 -07:00
Eric House
d620461574 fix so all compile 2021-03-19 14:26:18 -07:00
Eric House
633896292a snapshot: drawing empty board 2021-03-19 14:26:18 -07:00
Eric House
b62ab69799 add missing file 2021-03-19 14:26:18 -07:00
Eric House
d5546b484d cleanup (mostly non-DBG compile errors) 2021-03-19 13:03:39 -07:00
Eric House
3f6f16c2f4 add script to print comms msg exchange details 2021-03-19 12:50:32 -07:00
Eric House
f335ea7ad9 remove or tweak logging 2021-03-19 12:50:28 -07:00
Eric House
5fa44e54fa remove unneeded .h file 2021-03-19 12:50:23 -07:00
Eric House
f9e1deabfc don't include dict tiles/values in initial server msg
There's code on all platforms to force user to have dict prior to
opening a game or responding to an invitation. "Empty" dict play hasn't
made sense in a long time.
2021-03-19 12:50:19 -07:00
Eric House
ca88d9c0bf backout ack change for now 2021-03-12 07:16:28 -08:00
Eric House
f947382f4c in comms, send ack on receipt of duplicate msg 2021-03-11 21:43:26 -08:00
Eric House
6c50fcb818 cleanup; make original tiles-values choice the default
We've decided that on upgrade users shouldn't be surprised by a busy
board and unaware of how to fix it. So keep it the way it's been and let
the curious discover the new ability. Also, simplify code.
2021-02-17 15:47:55 -08:00
Eric House
be0a6f83f3 drive letters/values from a three-value enum
There are three choices now. The button pops up a menu on android and
moves through the choices on linux.
2021-02-11 14:11:02 -08:00
Eric House
64f1d83b5d show-values mode now means show along with face
not instead of. It now feels as if it should be a global setting, not a
per-game thing to toggle. We'll see what folks think.
2021-02-10 20:43:11 -08:00
Eric House
d3cf74920e remove unused method 2021-02-10 19:37:19 -08:00
Eric House
0ea9b42db8 clear high-bit when generating gameIDs
postgres DB, at least on ARM, doesn't like it.
2021-01-25 07:58:49 -08:00
Eric House
ceec6e7468 fix crash verifying first tray can yield a move
Had never needed an engine for a remote player before. So create one on
demand and nuke after use.
2021-01-18 16:55:20 -08:00
Eric House
d41d5c700f don't let first player have unplayable rack 2021-01-09 20:39:33 -08:00
Eric House
64a470185c display known player timestamp when known (debug only)
For some reason it's getting cleared sometimes. Will fix.
2021-01-04 08:12:05 -08:00
Eric House
35bdd2282e limit pattern parse by max length of tiles 2020-12-27 11:53:36 -08:00
Eric House
d0f5d9949a handle two-letter tiles better
Choose the two-letter tile where possible. Not sure though if this is
always the right move.
2020-12-26 20:45:34 -08:00
Eric House
45bc623975 enable RAISETILE feature for linux and android
It's timer-based. Not sure I like that, but let's see how it feels
on-device.
2020-12-02 17:55:49 -08:00
Eric House
3760d735bc fix compile when XWFEATURE_RAISETILE defined
Doesn't seem to work, and that's not addressed by this.
2020-12-02 17:21:47 -08:00
Eric House
31eeb1de43 when dragging, move crosshairs even over tile
Change so you still see dragging happening via crosshairs movement, but
the dragged tile itself doesn't move except over a place it can be
dropped.
2020-12-02 08:41:52 -08:00
Eric House
99a7930dfb add loop to print a bunch of devids (disabled) 2020-11-29 11:43:19 -08:00
Eric House
623f3ad145 inform when client's game complete too
Board needs to know when to dismiss the waiting-for-host alert. A
similiar need host-side was handled from common/; do same for client
side.
2020-11-28 17:57:33 -08:00
Eric House
00588f50f3 show an cannot-play-yet alert on guest side too 2020-11-28 13:55:36 -08:00
Eric House
f3bb0c99a9 invite alert changes
Create new class that owns the alert. Let it decide whether to post,
remove, etc. Seems to work, but I've removed some of the "reinvite"
options I'm not sure were helpful anyway. To be considered...
2020-11-20 18:07:19 -08:00