diff options
author | Griffin Smith <root@gws.fyi> | 2019-11-30T20·00-0500 |
---|---|---|
committer | Griffin Smith <root@gws.fyi> | 2019-11-30T20·00-0500 |
commit | 97a5c61f28ba98728bab390e0ea745edfbea7103 (patch) | |
tree | 25304c30990cffb5756f44c79542edf9dd2e5ac6 /src/Xanthous/Data.hs | |
parent | 310ea90985adcb6d9efe2ab05c67a235c2fb0ea2 (diff) |
Fix an injectivity issue with saving the game
Fix an injectivity issue with JSON-encoding the entity map that was causing the game saving to not properly round-trip. As part of this, there's a refactor to the internals of the entity map to use sets instead of vectors, which should also get us a nice perf boost.
Diffstat (limited to 'src/Xanthous/Data.hs')
-rw-r--r-- | src/Xanthous/Data.hs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/Xanthous/Data.hs b/src/Xanthous/Data.hs index fdeb71beb5eb..dfad2cffd392 100644 --- a/src/Xanthous/Data.hs +++ b/src/Xanthous/Data.hs @@ -115,7 +115,7 @@ type Position = Position' Int instance Arbitrary a => Arbitrary (Position' a) where arbitrary = genericArbitrary - shrink = genericShrink + shrink (Position px py) = Position <$> shrink px <*> shrink py instance Num a => Semigroup (Position' a) where |