Asgard.Core.Network.Packets.ClientStatePacket.Serialize C# (CSharp) Method

Serialize() public method

public Serialize ( Bitstream msg ) : void
msg Bitstream
return void
        public override void Serialize(Bitstream msg)
        {
            var count = State.Count;
            msg.Write((ushort)State.Count);
            if (count > 0 && _ownerType == null)
            {
                _ownerType = State[0].GetType();
                _lookupItem = DataLookupTable.Get(_ownerType.GetTypeInfo());
            }
            if (count > 0)
            {
                ushort objTypeId = ObjectMapper.LookupType(_ownerType);
                msg.Write((byte)objTypeId);
                msg.WriteVariableUInt32(PlayerId);
            }

            PlayerStateData pState = PreviousState;
            foreach (var o in State)
            {
                DataObjectPacket.WriteNetObject(_lookupItem, msg, o, pState);
                pState = o;
            }
        }
ClientStatePacket