feat(gs/xanthous): Allow disabling saving

Add a command-line parameter to disable the Save command, so people
don't save and fill up my disk when I'm running this on the internet.

Change-Id: I2408e60de2d99764ac53c21c3ea784282576d400
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3808
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
This commit is contained in:
Griffin Smith 2021-11-07 15:44:57 -05:00 committed by grfn
parent e3724448a2
commit 9577d97a8f
4 changed files with 68 additions and 34 deletions

View file

@ -1,8 +1,12 @@
{-# LANGUAGE TemplateHaskell #-}
--------------------------------------------------------------------------------
module Xanthous.Game.Env
( GameEnv(..)
( Config(..)
, defaultConfig
, disableSaving
, GameEnv(..)
, eventChan
, config
) where
--------------------------------------------------------------------------------
import Xanthous.Prelude
@ -11,9 +15,23 @@ import Brick.BChan (BChan)
import Xanthous.Data.App (AppEvent)
--------------------------------------------------------------------------------
data Config = Config
{ _disableSaving :: Bool
}
deriving stock (Generic, Show, Eq)
makeLenses ''Config
{-# ANN Config ("HLint: ignore Use newtype instead of data" :: String) #-}
defaultConfig :: Config
defaultConfig = Config
{ _disableSaving = False
}
--------------------------------------------------------------------------------
data GameEnv = GameEnv
{ _eventChan :: BChan AppEvent
, _config :: Config
}
deriving stock (Generic)
makeLenses ''GameEnv
{-# ANN GameEnv ("HLint: ignore Use newtype instead of data" :: String) #-}