//Protobuffer从MemoryStream进行反序列化 public bool FromMemoryStream(MemoryStream protoMS) { GodWeaponGodWeaponDataV1 pb = ProtoBuf.Serializer.Deserialize <GodWeaponGodWeaponDataV1>(protoMS); FromPB(pb); return(true); }
//从Protobuffer类型初始化 public void FromPB(GodWeaponGodWeaponDataV1 v) { if (v == null) { return; } m_GodWeaponArray.Clear(); for (int i = 0; i < v.GodWeaponArray.Count; i++) { m_GodWeaponArray.Add(new GodWeaponGodWeaponObjWraperV1()); } for (int i = 0; i < v.GodWeaponArray.Count; i++) { m_GodWeaponArray[i].FromPB(v.GodWeaponArray[i]); } m_GemBagArray.Clear(); for (int i = 0; i < v.GemBagArray.Count; i++) { m_GemBagArray.Add(new GodWeaponGemGridObjWraperV1()); } for (int i = 0; i < v.GemBagArray.Count; i++) { m_GemBagArray[i].FromPB(v.GemBagArray[i]); } }
//转化成Protobuffer类型函数 public GodWeaponGodWeaponDataV1 ToPB() { GodWeaponGodWeaponDataV1 v = new GodWeaponGodWeaponDataV1(); for (int i = 0; i < (int)m_GodWeaponArray.Count; i++) { v.GodWeaponArray.Add(m_GodWeaponArray[i].ToPB()); } for (int i = 0; i < (int)m_GemBagArray.Count; i++) { v.GemBagArray.Add(m_GemBagArray[i].ToPB()); } return(v); }