module Rattletrap.Decode.ClubColorsAttribute
  ( decodeClubColorsAttributeBits
  )
where

import Rattletrap.Decode.Common
import Rattletrap.Decode.Word8le
import Rattletrap.Type.ClubColorsAttribute

decodeClubColorsAttributeBits :: DecodeBits ClubColorsAttribute
decodeClubColorsAttributeBits :: DecodeBits ClubColorsAttribute
decodeClubColorsAttributeBits =
  Bool -> Word8le -> Bool -> Word8le -> ClubColorsAttribute
ClubColorsAttribute
    (Bool -> Word8le -> Bool -> Word8le -> ClubColorsAttribute)
-> BitGet Bool
-> BitGet (Word8le -> Bool -> Word8le -> ClubColorsAttribute)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> BitGet Bool
getBool
    BitGet (Word8le -> Bool -> Word8le -> ClubColorsAttribute)
-> BitGet Word8le
-> BitGet (Bool -> Word8le -> ClubColorsAttribute)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> BitGet Word8le
decodeWord8leBits
    BitGet (Bool -> Word8le -> ClubColorsAttribute)
-> BitGet Bool -> BitGet (Word8le -> ClubColorsAttribute)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> BitGet Bool
getBool
    BitGet (Word8le -> ClubColorsAttribute)
-> BitGet Word8le -> DecodeBits ClubColorsAttribute
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> BitGet Word8le
decodeWord8leBits