Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2019-11-29 | Use menus for combat and picking up items | Griffin Smith | 1 | -1/+1 | |
Refactor a bunch of stuff around to allow for polymorphically surfacing an EntityChar for all entities, and use this to write a generic `entityMenu` function, which generates a menu from the chars of a list of entities - and use that to fully implement (removing `undefined`) menus for both attacking and picking things up when there are multiple entities on the relevant tile. | |||||
2019-11-29 | Implement saving+loading the game | Griffin Smith | 1 | -0/+54 | |
Implement ToJSON and FromJSON for all of the various pieces of the game state, and add a pair of functions saveGame/loadGame implementing a prism to save the game as zlib-compressed JSON. To test this, there's now Arbitrary, CoArbitrary, and Function instances for all the parts of the game state - to get around circular imports with the concrete entities this unfortunately is happening via orphan instances, plus an hs-boot file to break a circular import that was just a little too hard to remove by moving things around. Ugh. |