rattletrap-9.3.2: src/lib/Rattletrap/Type/GameModeAttribute.hs
{-# LANGUAGE TemplateHaskell #-}
module Rattletrap.Type.GameModeAttribute
( GameModeAttribute(..)
)
where
import Rattletrap.Type.Common
data GameModeAttribute = GameModeAttribute
{ gameModeAttributeNumBits :: Int
-- ^ This field is guaranteed to be small. In other words, it won't overflow.
-- It's stored as a regular 'Int' rather than something more precise like an
-- 'Int8' because it just gets passed to functions that expect 'Int's.
-- There's no reason to do a bunch of conversions.
, gameModeAttributeWord :: Word8
} deriving (Eq, Ord, Show)
$(deriveJson ''GameModeAttribute)