rattletrap-9.0.3: source/library/Rattletrap/Encode/PartyLeaderAttribute.hs
module Rattletrap.Encode.PartyLeaderAttribute
( putPartyLeaderAttribute
)
where
import Rattletrap.Encode.RemoteId
import Rattletrap.Encode.Word8le
import Rattletrap.Type.PartyLeaderAttribute
import qualified Data.Binary.Bits.Put as BinaryBits
putPartyLeaderAttribute :: PartyLeaderAttribute -> BinaryBits.BitPut ()
putPartyLeaderAttribute partyLeaderAttribute = do
putWord8Bits (partyLeaderAttributeSystemId partyLeaderAttribute)
case partyLeaderAttributeId partyLeaderAttribute of
Nothing -> pure ()
Just (remoteId, localId) -> do
putRemoteId remoteId
putWord8Bits localId