Add Binary instances

This commit is contained in:
2022-08-21 10:58:19 +01:00
parent 386a2b4732
commit 1ce7d4a72d
95 changed files with 345 additions and 3 deletions
+13
View File
@@ -5,6 +5,7 @@
module Dodge.Data.Terminal where
import Data.Binary
import Flat
import LinearHelp ()
import Color
@@ -17,6 +18,7 @@ import Dodge.Data.WorldEffect
data TerminalStatus = TerminalOff | TerminalBusy | TerminalReady
deriving (Eq, Ord, Show, Read, Generic, Flat)
instance Binary TerminalStatus
data TerminalInput = TerminalInput
{ _tiText :: T.Text
@@ -24,12 +26,14 @@ data TerminalInput = TerminalInput
, _tiSel :: (Int, Int)
}
deriving (Eq, Ord, Show, Read, Generic, Flat)
instance Binary TerminalInput
data TerminalBootProgram
= TerminalBootMempty
| TerminalBootLines [TerminalLine]
deriving (Eq, Show, Read, Generic)
--hderiving (Eq, Show, Read, Generic, Flat)
--instance Binary TerminalBootProgram
data Terminal = Terminal
{ _tmID :: Int
@@ -51,15 +55,18 @@ data Terminal = Terminal
}
deriving (Eq, Show, Read, Generic)
--hderiving (Eq, Show, Read, Generic, Flat)
--instance Binary Terminal
data TerminalLineString = TerminalLineConst String Color
deriving (Eq, Ord, Show, Read, Generic, Flat)
instance Binary TerminalLineString
data TmTm
= TmId
| TmTmClearDisplayedLines
| TmTmSetStatus TerminalStatus
deriving (Eq, Ord, Show, Read, Generic, Flat)
instance Binary TmTm
data TerminalLine
= TerminalLineDisplay
@@ -76,18 +83,21 @@ data TerminalLine
}
deriving (Eq, Show, Read, Generic)
--hderiving (Eq, Show, Read, Generic, Flat)
--instance Binary TerminalLine
data TerminalToggle = TerminalToggle
{ _ttTriggerID :: Int
, _ttDeathEffect :: BlBl
}
deriving (Eq, Ord, Show, Read, Generic, Flat)
instance Binary TerminalToggle
data BlBl
= BlNegate
| BlConst Bool
| BlId
deriving (Eq, Ord, Show, Read, Generic, Flat)
instance Binary BlBl
data EffectArguments
= NoArguments {_cmdEffect :: [TerminalLine]}
@@ -97,6 +107,7 @@ data EffectArguments
}
deriving (Eq, Show, Read, Generic)
--hderiving (Eq, Show, Read, Generic, Flat)
--instance Binary EffectArguments
data TerminalCommandEffect
= TerminalCommandArguments EffectArguments
@@ -110,6 +121,7 @@ data TerminalCommandEffect
| TerminalCommandEffectNone
deriving (Eq, Show, Read, Generic)
--hderiving (Eq, Show, Read, Generic, Flat)
--instance Binary TerminalCommandEffect
data TerminalCommand = TerminalCommand
{ _tcString :: String
@@ -119,6 +131,7 @@ data TerminalCommand = TerminalCommand
}
deriving (Eq, Show, Read, Generic)
--hderiving (Eq, Show, Read, Generic, Flat)
--instance Binary TerminalCommand
makeLenses ''TerminalInput
makeLenses ''Terminal