LeRoyce Pearson
fc166b9ee9
feat: get list of IP addresses to send to potential players
2024-03-03 22:58:09 -07:00
LeRoyce Pearson
cb62ac2f63
start implementing mDNS discovery on client side
2024-03-03 02:21:30 -07:00
LeRoyce Pearson
a6fe88b65e
start implementing mDNS service discovery for multiplayer
2024-03-03 00:45:06 -07:00
LeRoyce Pearson
0ab23322ea
further refine element tree
2024-03-01 17:30:37 -07:00
LeRoyce Pearson
32f8b66761
refactor: go all in on Element abstraction to prepare for multiplayer support
2024-03-01 16:07:13 -07:00
LeRoyce Pearson
0a0a7d8d49
remove history len debug text
2024-02-29 13:47:04 -07:00
LeRoyce Pearson
527c3aa0ce
feat: make text gray if it has no command
2024-02-29 13:45:41 -07:00
LeRoyce Pearson
6d7c4d8b74
feat: marking cards no longer clogs the undo history
2024-02-29 13:40:43 -07:00
LeRoyce Pearson
a14e5c3839
feat: refine screen size based sprite selection
...
Before this change, medium was selected even for devices that could use
the large sprites.
I also changed the metric from `framebuffer_size[1]` to `window_size[1]`.
This is pixel art with pixels that are designed to be seen. We care more
about its size on the screen.
2024-02-29 13:15:21 -07:00
LeRoyce Pearson
dbe5a92b54
fix: don't crash if joystick doesn't have expected inputs
...
My laptop and desktop both have devices that appear as joysticks, but are
very clearly not. Before this change this meant that I couldn't test the
game on desktop after adding joystick support.
2024-02-29 13:13:09 -07:00
LeRoyce Pearson
e2a52dad0b
feat: discard a card to end the turn
2024-02-28 15:26:13 -07:00
LeRoyce Pearson
52a247bceb
don't reset position of selection when selecting cards
...
This makes it easier to select the next card.
2024-02-28 15:00:50 -07:00
LeRoyce Pearson
807712af79
fix: remove slight offset when cards were rendered
...
Fixed by updating version of seizer to one that doesn't offset the canvas
projection.
2024-02-28 14:47:35 -07:00
LeRoyce Pearson
84d8766124
send one move input per joystick button press
...
This makes it easier to control on the RG351M, as inputting a single
move no longer requires a frame perfect press and release.
2024-02-28 13:46:14 -07:00
LeRoyce Pearson
980d8cb6a1
initial support for RG351M controller input
2024-02-28 13:39:39 -07:00
LeRoyce Pearson
197756e5c3
feat: open window with size of workarea
2024-02-28 12:20:02 -07:00
LeRoyce Pearson
6f42b35e14
only activate "New Meld" when a valid meld is marked
2024-02-27 00:27:09 -07:00
LeRoyce Pearson
f0e6bc4e0d
add TextElement for "New Meld" button
2024-02-26 23:58:38 -07:00
LeRoyce Pearson
2dde105a58
feat: mark/unmark cards after drawing
2024-02-26 22:24:47 -07:00
LeRoyce Pearson
c5526ba229
feat: activating and undoing actions
2024-02-26 21:55:51 -07:00
LeRoyce Pearson
1134f0ee08
improve navigation with the arrow keys
2024-02-26 21:00:01 -07:00
LeRoyce Pearson
45bd514bd3
remove `element` from `Action`, rely only on `command`
2024-02-26 20:39:10 -07:00
LeRoyce Pearson
a7bc7e87e0
replace `Spread` with `CardElements` and an `HBox`
2024-02-26 20:18:39 -07:00
LeRoyce Pearson
91f896c5ef
implement hovering over elements
2024-02-26 19:50:26 -07:00
LeRoyce Pearson
54d04f4a2b
refactor: handler that returns a tree of elements
2024-02-26 18:27:31 -07:00
LeRoyce Pearson
d63a6d06fb
feat: highlight selected card, change highlight card
2024-02-26 13:59:14 -07:00
LeRoyce Pearson
45bc09b612
render draw/discard/hand
2024-02-25 00:19:34 -07:00
LeRoyce Pearson
695c4d6280
feat: add small size graphics
2024-02-24 16:44:41 -07:00
LeRoyce Pearson
680f56a39d
feat: render stack of cards
...
Added `tile_offset` and `tile_stride` to render exactly the card without
the blank space surrounding it on the tile.
2024-02-24 16:27:37 -07:00
LeRoyce Pearson
755518bb5d
feat: use framebuffer size to choose sprite set
...
Using multiple sizes of sprites will hopefully make porting the game to
a wider range of devices easier.
2024-02-24 15:58:55 -07:00
LeRoyce Pearson
15e1670ec3
get medium cards rendering
2024-02-23 14:44:27 -07:00