Fix reloading of start of level

This commit is contained in:
2021-09-13 00:34:14 +01:00
parent 49274064a0
commit d11d19c9e8
4 changed files with 27 additions and 36 deletions
+21
View File
@@ -0,0 +1,21 @@
module Dodge.Save
where
import Dodge.Data
import Data.Maybe
import Control.Lens
import qualified Data.Set as S
storeLevel :: World -> World
storeLevel w = case _storedLevel w of
Nothing -> w & storedLevel ?~ clearKeys w
_ -> w
loadStoredLevel :: World -> World
loadStoredLevel w = fromMaybe w $ _storedLevel w
doQuicksave :: World -> World
doQuicksave w = w & quicksaveLevel ?~ clearKeys w
clearKeys :: World -> World
clearKeys = (keys .~ S.empty) . (mouseButtons .~ S.empty)