aboutsummaryrefslogtreecommitdiff
path: root/src/main.lisp
AgeCommit message (Collapse)Author
2025-07-10OverhaulmasterAryadev Chavali
Loads of changes, some which I wasn't sure what I was on when doing them
2025-03-02Fix some issues in mainAryadev Chavali
2025-02-14Implement read-and-confirm for extra step before re-dealAryadev Chavali
Found that I sometimes did a misinput which lead to losing a critical card - implemented a function which asks for confirmation (with a print out of the cards that will be redealt) before doing the redeal.
2025-02-14Rework cantedraw.main:start to run a read-redeal-print-loopAryadev Chavali
We've now got one of the major stages of the game down. I think it's worth investing in some testing functions now - we've reached just the level of complexity.
2025-02-14Implement a read -> redeal -> print loopAryadev Chavali
Like REPL stands for Read -> Evaluate -> Print -> Loop, here we implement a similar loop which reads a set of indices for cards to remove from the user, redeals those cards then loops back. This keeps happening until either: - the user does not want to redeal (empty input) - there aren't enough cards for a redeal
2025-02-14Fix problem with alexandria:shuffle not being truly randomAryadev Chavali
Due to the way random works, we need to see it on each run of the binary - thus need to make a new random state.
2025-02-14Rework read-until-valid-integers to work better for redeal inputsAryadev Chavali
A player may: - not redeal any cards - redeal all their cards Therefore the indices must be between 0,5 and there can be at most 5 inputs.
2025-02-14Split source code into different modules for cleanlinessAryadev Chavali