MeirGavish
1d71be674d
Changed the capitalization of hand names and centered them ( #391 )
2026-03-08 15:31:19 +02:00
MeirGavish
45b2275b68
Fixed round counter not resetting on game over + removed unused variable ( #394 )
...
* Fixed round not resetting on game over + removed unused variable
2026-03-07 11:45:49 +02:00
MeirGavish and Copilot
b292d227f9
Fix round start top left blind panel animation background ( #377 )
...
* Refactored helper sides copying code in expand 3x3 code
* Implemented main_bg_se_copy_expand_3w_row()
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-01-31 08:13:54 +02:00
MeirGavish and Copilot
0f9ebd56f6
Changed L and R keys to play and discard respectively ( #374 )
...
* Changed L and R keys to play and discard respectively, removed sorting key in favor of on-screen buttons
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-01-28 19:08:47 +02:00
Geralt and MathisMartin31
fe4820cf65
Fix cards in deck count shifting when too few cards remain ( #370 )
...
* fix
* fix deck size/max size text not getting erased
* add TODO for future deck size overflow fix
---------
Co-authored-by: MathisMartin31 <mathis.martin31@gmail.com >
2026-01-26 09:22:20 +02:00
Geralt and MathisMartin31
339d8dc79f
Fix selecting a card by accident when moving too fast on round start ( #369 )
...
* fix bug
* make timers ints instead of uints
---------
Co-authored-by: MathisMartin31 <mathis.martin31@gmail.com >
2026-01-26 05:36:31 +02:00
MeirGavish
97bf8b3efd
Added sort by rank/suit buttons ( #351 )
...
* Added definitions for sorting buttons (cherry pick, does not compile)
* Re-applied changes lost in merge
* Added sort buttons functionality (cherry-pick, has issues)
* Fixed sort buttons issue
* Removed stray code from merge
* clang-format
* Removed code from merge error
* Removed unused function from merge error
* Removed "E" typo from "SUIT" button
* Changed all the 2x5 S's in the UI to be 1 pixel wider at 3x5
* Revert "Changed all the 2x5 S's in the UI to be 1 pixel wider at 3x5"
This reverts commit f70e0d5ab76dd851c564672c01ab60cd25c28b63.
* Changed the width of the "SUIT" button to be consistent with the "RANK" button
2026-01-24 10:06:51 +02:00
Geralt and MathisMartin31
02799ddc54
Optimize "whole hand" conditions checks for Joker effects ( #213 )
...
* Introduce a ContainedHandTypes type
* Separate computing of hand_type and _contained_hand_types variables
---------
Co-authored-by: MathisMartin31 <mathis.martin31@gmail.com >
2026-01-22 14:22:48 +02:00
Emma
fc5767c96e
Reset selection_y after blind skip ( #362 )
2026-01-16 08:11:47 +02:00
5300846f73
Refactored to use selection grid during round ( #348 )
...
* Added wrapping to selection grid
* Added return value to on_selection_changed to allow aborting on wrap
* Extracted button code to button.c/.h
* Bounds checking changes for selection_grid_move_selection_horz()
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Rickey <ric@rf3.xyz >
2026-01-15 20:32:09 +02:00
MeirGavish
b7cc3ec5d6
[Optimization] Slow score lerping from 60 to 30 FPS ( #336 )
2026-01-14 16:43:53 -08:00
Horváth Balázs
11dafe26ac
Fix Four Fingers joker effect persisting after game over ( #359 )
...
* Fix four fingers joker effect stuck after game over
* Fix game_over_on_exit() not removing owned jokers
2026-01-11 23:18:40 +02:00
MeirGavish
db9879b5b5
Added blind score requirement and reward in blind select screen ( #282 )
...
* Added blind select requirement and rewards printing
* Broke game_blind_select_print_blinds_reqs_and_rewards() into separate functions
2026-01-06 11:06:24 +02:00
MeirGavish and Copilot
6575fc7f94
Update the truncate number function to use decimal point ( #333 )
...
* Fixed to truncate as "1.234M" instead of "1234K"
* Optimized by switching to strings to avoid divisions
* Changed FP constants to strings
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-23 07:52:30 +02:00
MeirGavish
f76c25614c
Change selection grid to maintain relative horizontal position when switching rows ( #329 )
...
* Change selection grid to maintain relative horizontal position when switching rows
* clang-format
* Fixed joker selling index error
* Protect against division by 0 and removed redundant fixed point conversions.
2025-12-21 22:00:08 -08:00
faa75a4eea
Swap Cards in Hand ( #280 )
...
* card sorting
* Added refactor from @MeirGavish
---------
Co-authored-by: MathisMartin31 <mathis.martin31@gmail.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-18 15:14:28 +02:00
Copilot and MeirGavish
b146bb667b
Add parentheses to timer macro expressions ( #319 )
...
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: MeirGavish <34395426+MeirGavish@users.noreply.github.com >
2025-12-16 11:43:07 +02:00
MeirGavish
e90f23661d
Sound effects for score accumulation and blind menu pop-up ( #313 )
2025-12-16 10:32:04 +02:00
MeirGavish
177a3a9741
Fixed bug where the mult wasn't truncated ( #315 )
2025-12-16 09:53:50 +02:00
MeirGavish
81e6b7ab31
Button sound effect ( #312 )
...
* Removed magic number for CARD_FOCUS_SFX_PITCH_OFFSET_RANGE
2025-12-13 16:10:15 +02:00
MeirGavish
8a9750b0b3
Used proper text centering for price printing and consolidated functions for printing and erasing ( #308 )
2025-12-13 09:03:06 +02:00
Marcel Schulz
f9ed858549
[Fixed] Joker shop price not properly erased on purchase ( #286 )
2025-12-11 08:39:09 +02:00
MeirGavish
d96bc9b1c2
Renamed GBLA_UNUSED -> GBAL_UNUSED and updated RowOnKeyTransitFunc documentation ( #292 )
2025-12-10 17:17:28 -08:00
bf66f96844
Add swapping order of Owned Jokers ( #258 )
...
* swap Jokers
* Hide score properly
* add key_released to inputs triggering selection_grid process input
* format code
* Add suggestions and bug fixes from @MeirGavish
* Add comment
* format selection_grid
* toto
* format
* format
* Turned clang-format off for selection grid rows
* revert reroll bug fix, already adressed
* format selection_grid.c
* Move conditions around in game.c
* typo
* Attempt at fixing braced initializer indent format
---------
Co-authored-by: MathisMartin31 <mathis.martin31@gmail.com >
Co-authored-by: MeirGavish <meir.gavish@gmail.com >
2025-12-07 02:58:50 -08:00
MeirGavish
28ff6c81ef
Fixed bug where reroll button is triggered by any key ( #279 )
2025-12-05 10:06:43 +02:00
MeirGavish
9f170f298d
Restored removed joker shop availability check function ( #276 )
2025-12-04 18:21:10 -08:00
291edaf4f2
Clang format and refactor game.h/c + update Bracket Alignment to BlockIndent ( #259 )
...
* Refactor and clang-format game.h/c
* Updated clang-format AlignAfterOpenBracket: BlockIndent and ColumnLimit: 100 and refactored all files accordingly
---------
Co-authored-by: MeirGavish <meir.gavish@gmail.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-03 13:49:31 +02:00
MeirGavish and Copilot
43d837571e
Truncate Scores ( #269 )
...
* Fixed score truncation erasure, and centering for chips, mult, score and "temp score
* Added centering for money
* Added tests for truncate_uint_to_suffixed_str()
* Fixed u32 bug with get_digits
* Fixed score flames for large numbers
* Small change to update documentation
* Added 1 pixel on to score rect on the left to make room for full character tile + reset_top_left_panel_bottom_row() refactor
* Replaced directional defines with enums
* Updated ante_lut comment
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-02 08:28:36 +02:00
Tygyh and Copilot
8bba449196
Convert BG_ID_* defines to enum BackgroundId ( #265 )
...
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com >
2025-11-30 08:53:51 +02:00
Geralt and MathisMartin31
0953a430c4
Implement Seltzer and Joker Expiration effect ( #252 )
...
* Add Seltzer art
* Implement Joker expiration
* Add exception to copying Jokers + Seltzer message fix
* Move all scoring logic to joker_object_score away from check_and_score_joker_for_event
---------
Co-authored-by: MathisMartin31 <mathis.martin31@gmail.com >
2025-11-30 08:52:42 +02:00
Rickey
09dd996181
Clang Format Blinds ( #253 )
...
* Quick cleanup on bitset docs
* Clang format blind.h/c
* Replace `_` with `s_` for functions
* Fix newline size for macros.
* Fix format for ci
* Add macro for "unused" attribute
2025-11-25 13:47:44 -08:00
MeirGavish
f51380c93c
Added sound effects for chips, mult, and xmult ( #229 )
2025-11-22 07:27:43 +02:00
Geralt and MathisMartin31
2fb41e533c
Make Chips, Mult and Score unsigned and protect against overflow ( #212 )
...
---------
Co-authored-by: MathisMartin31 <mathis.martin31@gmail.com >
2025-11-20 12:39:15 +02:00
1ac55692e9
Break up the played cards scoring loop into several functions ( #224 )
...
* rename PLAY_PLAYING state into PLAY_STARTING
* make discarded_card and sound_played global variables
* Broken up cards_score state update
---------
Co-authored-by: MathisMartin31 <mathis.martin31@gmail.com >
Co-authored-by: MeirGavish <meir.gavish@gmail.com >
2025-11-16 17:33:01 +02:00
Geralt and MathisMartin31
1f3d3bffbd
Fix bug occurring when a retriggered card has a non-scoring card to the left ( #218 )
...
---------
Co-authored-by: MathisMartin31 <mathis.martin31@gmail.com >
2025-11-12 16:06:37 +02:00
Geralt and MathisMartin31
4183f563ab
Implement cards held in hand effects ( #205 )
...
* Adapt existing Jokers to the Held Card mechanic + effect display location
* Add suggestions from @ricfehr3
* Add suggestions from @MeirGavish
---------
Co-authored-by: MathisMartin31 <mathis.martin31@gmail.com >
2025-11-12 13:18:53 +02:00
Rickey and rfehr-idexx
e0cffab768
Update list implementation to work with memory pools ( #168 )
...
* Introduce indexed list implementation
* Fix CI tests for pool
* Take bitset out of pool
* Replace joker bitset interactions with wrappers
* Add bitset tests
* Add test to gitignore
---------
Co-authored-by: rfehr-idexx <ric-fehr@idexx.com >
2025-11-11 17:56:21 +02:00
d5f59e904b
Fixed game stuck due to interest bug + cleanup refactor ( #214 )
...
Co-authored-by: MeirGavish <34395426+MeirGavish@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: MeirGavish <34395426+MeirGavish@users.noreply.github.com >
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com >
2025-11-07 00:33:52 +02:00
MeirGavish
64dd586df8
Optimized score lerping by changing the number of steps to a power of 2 ( #211 )
2025-11-06 12:15:07 +02:00
Geralt and MathisMartin31
e7eaa82c9d
Add flaming effect when exceeding score requirements ( #210 )
...
* Fix grit palette swapping
* Add suggestions from @MeirGavish
---------
Co-authored-by: MathisMartin31 <mathis.martin31@gmail.com >
2025-11-04 12:31:09 +02:00
MeirGavish
ada2650c50
New Run Button ( #206 )
...
* New Run Button
* Refactor - replaced cashout copies with main_bg_se_copy_expand_3x3_rect() - WIP (Palette still messed)
2025-11-03 07:34:46 +02:00
03273de829
Adds Shortcut and Four Fingers ( #95 )
...
* adds shortcut joker
* adds Four Fingers joker, and combination support for Four Fingers + Shortcut
---------
Co-authored-by: MeirGavish <meir.gavish@gmail.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-11-01 16:28:40 +02:00
eb815b7820
Refactor of scoring flow, Joker Callbacks and Card Retriggers ( #160 )
...
* Remove Baseball Card for now, will have to wait a future PR
* Removed cards held in hand joker scoring stage - should be in another PR
---------
Co-authored-by: MonteCrysto <mathis.martin31@gmail.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: MeirGavish <meir.gavish@gmail.com >
2025-11-01 15:50:52 +02:00
MeirGavish
dfe6edad88
Refactor - Replaced magic number copies with main_bg_se_copy_rect() ( #192 )
2025-11-01 08:12:20 +02:00
c510e78704
Implement Interest ( #144 )
...
* Implemented Interest
* Very carefully applied changes from PR #144 to implement interest and fixed magic numbers
---------
Co-authored-by: JustinL-12 <jlong30@uic.edu >
Co-authored-by: MeirGavish <meir.gavish@gmail.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-29 20:43:26 +02:00
b38433d191
Weight jokers by rarity in the shop ( #152 )
...
* Added weight for the rarity of jokers in the shop
* Includes manual conflict resolution
---------
Co-authored-by: JustinL-12 <jlong30@uic.edu >
Co-authored-by: MeirGavish <meir.gavish@gmail.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-27 19:18:48 +02:00
MeirGavish
b01e9e5f01
Added option for a second test joker
2025-10-25 15:18:23 +03:00
MeirGavish
9c78094399
Fixed invalid access to game state array
2025-10-21 12:49:02 +03:00
MeirGavish
462c040e9a
Changed the check in game_change_state() to full bounds checking
2025-10-19 11:45:48 +03:00
MeirGavish
53d2e53d78
Changed music to start after Splash Screen
2025-10-17 13:43:21 +03:00