Exemplo n.º 1
0
 public static void Serialize(uLink.BitStream stream, object value, params object[] codecOptions)
 {
     try
     {
         TownTradeItemInfo ttii = value as TownTradeItemInfo;
         stream.WriteInt32(ttii.pos.x);
         stream.WriteInt32(ttii.pos.y);
         stream.WriteInt32(ttii.csti.id);
         stream.WriteSingle(ttii.m_CurTime);
         stream.WriteSingle(ttii.m_Time);
         stream.WriteInt32(ttii.needItems.Count);
         foreach (TradeObj to in ttii.needItems)
         {
             TradeObj.Serialize(stream, to);
         }
         stream.WriteInt32(ttii.rewardItems.Count);
         foreach (TradeObj to in ttii.rewardItems)
         {
             TradeObj.Serialize(stream, to);
         }
     }
     catch (System.Exception e)
     {
         throw e;
     }
 }
Exemplo n.º 2
0
 public static object Deserialize(uLink.BitStream stream, params object[] codecOptions)
 {
     try
     {
         IntVector2        pos  = new IntVector2(stream.ReadInt32(), stream.ReadInt32());
         TownTradeItemInfo ttii = new TownTradeItemInfo(pos);
         ttii.csti      = CSTradeInfoData.GetData(stream.ReadInt32());
         ttii.m_CurTime = stream.ReadSingle();
         ttii.m_Time    = stream.ReadSingle();
         int needItemsCount = stream.ReadInt32();
         for (int m = 0; m < needItemsCount; m++)
         {
             ttii.needItems.Add((TradeObj)TradeObj.Deserialize(stream));
         }
         int rewardItemsCount = stream.ReadInt32();
         for (int m = 0; m < rewardItemsCount; m++)
         {
             ttii.rewardItems.Add((TradeObj)TradeObj.Deserialize(stream));
         }
         return(ttii);
     }
     catch (System.Exception e)
     {
         throw e;
     }
 }