|
7a324ee7ef
|
Add gameID directly into Game data structure
|
2020-01-13 08:40:38 +01:00 |
|
|
ce0f51720a
|
Declare ID for Games
|
2020-01-04 12:07:26 +01:00 |
|
|
31ad94e5af
|
Require a type «a» to define a prefix to get an instance of Show (ID a)
|
2019-11-20 18:22:27 +01:00 |
|
|
3440c84543
|
Expose internal Int in IDs and make the type an instance of Random (generating only positive IDs)
|
2019-11-12 22:15:39 +01:00 |
|
|
e0003c5906
|
Make Move instance of Show to ease generating debug message
|
2019-11-12 22:11:45 +01:00 |
|
|
0b6fd62255
|
Fix bug in dealing cards to Players — it is supposed to reset the players' meld and yakus while setting their hand
|
2019-10-23 15:25:34 +02:00 |
|
|
e12f8e1f0d
|
Take player turns out of the Player data structure
|
2019-10-22 17:42:23 +02:00 |
|
|
d2918c5256
|
Finally export the useful Player type instanciated for KoiKoi games since that the only ones we support so far
|
2019-10-21 23:29:21 +02:00 |
|
|
ff1a31a105
|
Remove parameter from Game type, games will be shared publicly with a different type
|
2019-10-16 10:30:31 +02:00 |
|
|
61eeac8bc6
|
Add IDs handling directly in library + add a couple useful functions on Hanafuda cards
|
2019-08-24 23:04:37 +02:00 |
|
|
f1ee562809
|
Handle the end of games
|
2019-08-12 23:07:09 +02:00 |
|
|
14d58d002e
|
Replace list by triple in deal function following error on failable pattern with GHC 8.6.3
|
2019-01-13 13:17:49 +01:00 |
|
Tissevert
|
18d544e13f
|
Remove constructor for errors to handle them in a MonadError instead and add a MonadWriter for logs
|
2019-01-08 22:37:09 +01:00 |
|
Tissevert
|
561ef5060d
|
Generalize the output monad of basic functions by only expressing constraints on it
|
2019-01-08 22:34:29 +01:00 |
|
Sasha
|
f2428f353f
|
Remove WillowRed accidentally present in plains' set
|
2018-08-27 20:12:03 +02:00 |
|
Sasha
|
4fca4791fa
|
Bump version to 0.3.0.1
|
2018-08-26 20:05:26 +02:00 |
|
Sasha
|
46071152a4
|
Reset all of player's properties when dealing cards
|
2018-07-28 19:23:16 +02:00 |
|
Sasha
|
4d1a2f7fee
|
Bumping to 0.3.0.0 for making the Game type signature parametric in the players' type
|
2018-07-24 22:34:29 +02:00 |
|
Sasha
|
8ad996914d
|
Unify Points type + export it with Score and Step types in module KoiKoi
|
2018-05-12 11:17:37 +02:00 |
|
Sasha
|
0c58e94c6f
|
Add missing import needed to use the library
|
2018-03-28 22:39:01 +02:00 |
|
Sasha
|
091e0e5c55
|
Fix warnings
|
2018-03-19 12:28:15 +01:00 |
|
Sasha
|
8f8d5afc28
|
Compile with all warning to write cleaner code
|
2018-03-19 12:11:44 +01:00 |
|
Sasha
|
645c2b2e32
|
Reflect recent administrative changes on the project structure
|
2018-03-16 19:13:01 +01:00 |
|
Sasha
|
b63c06a317
|
Restructure project to expose only what's needed to play KoiKoi and hide
all the inner logic in that module
|
2018-03-16 12:18:33 +01:00 |
|
Sasha
|
d596a220b5
|
Refactor to put all KoiKoi specifics into a separate submodule
|
2018-03-10 23:25:44 +01:00 |
|
Sasha
|
7d672589b2
|
Remove unused imports, minor code simplifications
|
2018-03-09 18:12:27 +01:00 |
|
Sasha
|
5b78285303
|
Optimize game states and moves to reduce client-server to-and-fro
|
2018-03-09 18:12:27 +01:00 |
|
Sasha
|
95b2132a10
|
Purify types into newtypes to ease writing instances
|
2018-03-09 18:12:27 +01:00 |
|
Sasha
|
dfccff2915
|
Package with cabal and implement game automaton
|
2018-03-09 18:12:22 +01:00 |
|
Sasha
|
034fee8ecd
|
Implement KoiKoi's yakus
|
2018-02-26 09:07:53 +01:00 |
|
Sasha
|
786dfe4bb8
|
Expose the size of card packs
|
2018-02-26 09:03:43 +01:00 |
|
Sasha
|
c2a324b905
|
Remove unused and broken modules
|
2018-02-25 23:17:51 +01:00 |
|
Sasha
|
6dbd72cf36
|
Card as enum and packs with bit sets
|
2018-02-25 23:15:43 +01:00 |
|
Sasha
|
e7619af640
|
First attempt at defining the game's states
|
2018-02-04 23:01:42 +01:00 |
|
Sasha
|
ea96530511
|
Initial state generation
|
2018-02-04 22:59:22 +01:00 |
|
Sasha
|
b03e97bb81
|
Implement card capture (さくら!)
|
2018-02-03 18:25:11 +01:00 |
|
Sasha
|
c95d611024
|
Build yaku dictionary a bit more efficiently
|
2018-02-03 18:23:31 +01:00 |
|
Sasha
|
3f43d960f4
|
Take KoiKoi-specific objects out of Cards module
|
2018-02-03 18:08:17 +01:00 |
|
Sasha
|
3ffabc578e
|
Build a yaku dictionary indexed by Cards
|
2018-02-02 17:44:35 +01:00 |
|
Sasha
|
871f1a383f
|
Shuffle is more a CCard thing than something specific to KoiKoi or other Games
|
2018-02-02 17:25:10 +01:00 |
|
Sasha
|
51436f4eb2
|
Shorten shuffle and improve its randomness (previous one declusters poorly)
|
2018-02-01 18:34:24 +01:00 |
|
Sasha
|
77bc2faa4e
|
Implement shuffle
|
2018-02-01 18:07:31 +01:00 |
|
Sasha
|
561df60b57
|
Start implementing yakus
|
2018-02-01 14:04:21 +01:00 |
|
Sasha
|
4659f308a2
|
Use enum instead of magic int constants
|
2018-02-01 12:23:44 +01:00 |
|
Sasha
|
59beaa5cc9
|
Add cards packs
|
2018-01-30 18:18:12 +01:00 |
|
Sasha
|
7de6040289
|
Try a stub of a C-style version of types
|
2018-01-30 17:34:47 +01:00 |
|
Sasha
|
f7b3f21a83
|
Start with a Card module and a stub of Game
|
2018-01-22 22:50:40 +01:00 |
|