//Protobuffer从MemoryStream进行反序列化 public bool FromMemoryStream(MemoryStream protoMS) { ActivityScheduleRpcSyncDataReply pb = ProtoBuf.Serializer.Deserialize <ActivityScheduleRpcSyncDataReply>(protoMS); FromPB(pb); return(true); }
//从Protobuffer类型初始化 public void FromPB(ActivityScheduleRpcSyncDataReply v) { if (v == null) { return; } m_Result = v.Result; m_ThiefData.Clear(); for (int i = 0; i < v.ThiefData.Count; i++) { m_ThiefData.Add(new ActivityNpcDataWraper()); } for (int i = 0; i < v.ThiefData.Count; i++) { m_ThiefData[i].FromPB(v.ThiefData[i]); } m_SubdueMonsterData.Clear(); for (int i = 0; i < v.SubdueMonsterData.Count; i++) { m_SubdueMonsterData.Add(new ActivityNpcDataWraper()); } for (int i = 0; i < v.SubdueMonsterData.Count; i++) { m_SubdueMonsterData[i].FromPB(v.SubdueMonsterData[i]); } m_WorldBossData.Clear(); for (int i = 0; i < v.WorldBossData.Count; i++) { m_WorldBossData.Add(new WorldBossObjWraper()); } for (int i = 0; i < v.WorldBossData.Count; i++) { m_WorldBossData[i].FromPB(v.WorldBossData[i]); } m_WorldBossRank.Clear(); for (int i = 0; i < v.WorldBossRank.Count; i++) { m_WorldBossRank.Add(new WorldBossRankObjWraper()); } for (int i = 0; i < v.WorldBossRank.Count; i++) { m_WorldBossRank[i].FromPB(v.WorldBossRank[i]); } }
//转化成Protobuffer类型函数 public ActivityScheduleRpcSyncDataReply ToPB() { ActivityScheduleRpcSyncDataReply v = new ActivityScheduleRpcSyncDataReply(); v.Result = m_Result; for (int i = 0; i < (int)m_ThiefData.Count; i++) { v.ThiefData.Add(m_ThiefData[i].ToPB()); } for (int i = 0; i < (int)m_SubdueMonsterData.Count; i++) { v.SubdueMonsterData.Add(m_SubdueMonsterData[i].ToPB()); } for (int i = 0; i < (int)m_WorldBossData.Count; i++) { v.WorldBossData.Add(m_WorldBossData[i].ToPB()); } for (int i = 0; i < (int)m_WorldBossRank.Count; i++) { v.WorldBossRank.Add(m_WorldBossRank[i].ToPB()); } return(v); }