module Rattletrap.AttributeValue.LoadoutsOnline where import Rattletrap.AttributeValue.LoadoutOnline import qualified Data.Binary.Bits.Get as BinaryBit import qualified Data.Binary.Bits.Put as BinaryBit data LoadoutsOnlineAttributeValue = LoadoutsOnlineAttributeValue { loadoutsOnlineAttributeValueBlue :: LoadoutOnlineAttributeValue , loadoutsOnlineAttributeValueOrange :: LoadoutOnlineAttributeValue , loadoutsOnlineAttributeValueUnknown1 :: Bool , loadoutsOnlineAttributeValueUnknown2 :: Bool } deriving (Eq, Ord, Show) getLoadoutsOnlineAttributeValue :: BinaryBit.BitGet LoadoutsOnlineAttributeValue getLoadoutsOnlineAttributeValue = do blueLoadout <- getLoadoutOnlineAttributeValue orangeLoadout <- getLoadoutOnlineAttributeValue unknown1 <- BinaryBit.getBool unknown2 <- BinaryBit.getBool pure (LoadoutsOnlineAttributeValue blueLoadout orangeLoadout unknown1 unknown2) putLoadoutsOnlineAttributeValue :: LoadoutsOnlineAttributeValue -> BinaryBit.BitPut () putLoadoutsOnlineAttributeValue loadoutsOnlineAttributeValue = do putLoadoutOnlineAttributeValue (loadoutsOnlineAttributeValueBlue loadoutsOnlineAttributeValue) putLoadoutOnlineAttributeValue (loadoutsOnlineAttributeValueOrange loadoutsOnlineAttributeValue) BinaryBit.putBool (loadoutsOnlineAttributeValueUnknown1 loadoutsOnlineAttributeValue) BinaryBit.putBool (loadoutsOnlineAttributeValueUnknown2 loadoutsOnlineAttributeValue)