//Protobuffer从MemoryStream进行反序列化 public bool FromMemoryStream(MemoryStream protoMS) { LoginRpcCharacterListReply pb = ProtoBuf.Serializer.Deserialize <LoginRpcCharacterListReply>(protoMS); FromPB(pb); return(true); }
//转化成Protobuffer类型函数 public LoginRpcCharacterListReply ToPB() { LoginRpcCharacterListReply v = new LoginRpcCharacterListReply(); v.Result = m_Result; for (int i = 0; i < (int)m_CharacterList.Count; i++) { v.CharacterList.Add(m_CharacterList[i].ToPB()); } v.LastSelectRoleId = m_LastSelectRoleId; return(v); }
//从Protobuffer类型初始化 public void FromPB(LoginRpcCharacterListReply v) { if (v == null) { return; } m_Result = v.Result; m_CharacterList.Clear(); for (int i = 0; i < v.CharacterList.Count; i++) { m_CharacterList.Add(new CharacterInfoWraper()); } for (int i = 0; i < v.CharacterList.Count; i++) { m_CharacterList[i].FromPB(v.CharacterList[i]); } m_LastSelectRoleId = v.LastSelectRoleId; }