//Protobuffer从MemoryStream进行反序列化 public bool FromMemoryStream(MemoryStream protoMS) { ActionSkillInfoV1 pb = ProtoBuf.Serializer.Deserialize <ActionSkillInfoV1>(protoMS); FromPB(pb); return(true); }
//转化成Protobuffer类型函数 public ActionSkillInfoV1 ToPB() { ActionSkillInfoV1 v = new ActionSkillInfoV1(); v.Name = m_Name; for (int i = 0; i < (int)m_CommandList.Count; i++) { v.CommandList.Add(m_CommandList[i].ToPB()); } v.TotalTime = m_TotalTime; v.IsSing = m_IsSing; v.SingTime = m_SingTime; return(v); }
//从Protobuffer类型初始化 public void FromPB(ActionSkillInfoV1 v) { if (v == null) { return; } m_Name = v.Name; m_CommandList.Clear(); for (int i = 0; i < v.CommandList.Count; i++) { m_CommandList.Add(new ActionCommandInfoWraperV1()); } for (int i = 0; i < v.CommandList.Count; i++) { m_CommandList[i].FromPB(v.CommandList[i]); } m_TotalTime = v.TotalTime; m_IsSing = v.IsSing; m_SingTime = v.SingTime; }