少年修仙传客户端代码仓库
lcy
2024-12-16 a39c35fc6449430cd02bccb681c4a0a880e46cd9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
using UnityEngine;
using System.Collections;
 
// AA 65 买一送多活动信息 #tagMCActBuyOneInfo
 
public class IL_HAA65_tagMCActBuyOneInfo : GameNetPackBasic {
    public byte ActNum;    //活动编号
    public string StartDate;    // 开始日期 y-m-d
    public string EndtDate;    // 结束日期 y-m-d
    public byte IsDayReset;    //是否每天重置
    public ushort LimitLV;    // 限制等级
    public byte GiftbagCount;    // 活动礼包个数
    public  tagMCActBuyOneInfoGiftbag[] GiftbagList;    // 礼包列表
 
    public IL_HAA65_tagMCActBuyOneInfo () {
        _cmd = (ushort)0xAA65;
    }
 
    public override void ReadFromBytes (byte[] vBytes) {
        TransBytes (out ActNum, vBytes, NetDataType.BYTE);
        TransBytes (out StartDate, vBytes, NetDataType.Chars, 10);
        TransBytes (out EndtDate, vBytes, NetDataType.Chars, 10);
        TransBytes (out IsDayReset, vBytes, NetDataType.BYTE);
        TransBytes (out LimitLV, vBytes, NetDataType.WORD);
        TransBytes (out GiftbagCount, vBytes, NetDataType.BYTE);
        GiftbagList = new tagMCActBuyOneInfoGiftbag[GiftbagCount];
        for (int i = 0; i < GiftbagCount; i ++) {
            GiftbagList[i] = new tagMCActBuyOneInfoGiftbag();
            TransBytes (out GiftbagList[i].CTGID, vBytes, NetDataType.DWORD);
            TransBytes (out GiftbagList[i].RecordIndex, vBytes, NetDataType.BYTE);
            TransBytes (out GiftbagList[i].FreeGiftCount, vBytes, NetDataType.BYTE);
            GiftbagList[i].FreeGiftList = new tagMCActBuyOneInfoFreeGift[GiftbagList[i].FreeGiftCount];
            for (int j = 0; j < GiftbagList[i].FreeGiftCount; j ++) {
                GiftbagList[i].FreeGiftList[j] = new tagMCActBuyOneInfoFreeGift();
                TransBytes (out GiftbagList[i].FreeGiftList[j].FreeIndex, vBytes, NetDataType.BYTE);
                TransBytes (out GiftbagList[i].FreeGiftList[j].FreeItemCount, vBytes, NetDataType.BYTE);
                GiftbagList[i].FreeGiftList[j].FreeItemList = new tagMCActBuyOneInfoFreeItem[GiftbagList[i].FreeGiftList[j].FreeItemCount];
                for (int k = 0; k < GiftbagList[i].FreeGiftList[j].FreeItemCount; k ++) {
                    GiftbagList[i].FreeGiftList[j].FreeItemList[k] = new tagMCActBuyOneInfoFreeItem();
                    TransBytes (out GiftbagList[i].FreeGiftList[j].FreeItemList[k].ItemID, vBytes, NetDataType.DWORD);
                    TransBytes (out GiftbagList[i].FreeGiftList[j].FreeItemList[k].ItemCount, vBytes, NetDataType.WORD);
                    TransBytes (out GiftbagList[i].FreeGiftList[j].FreeItemList[k].IsBind, vBytes, NetDataType.BYTE);
                }
            }
        }
    }
 
    public struct tagMCActBuyOneInfoGiftbag {
        public uint CTGID;        //所需充值ID
        public byte RecordIndex;        // 记录索引
        public byte FreeGiftCount;        // 免费礼包数
        public  tagMCActBuyOneInfoFreeGift[] FreeGiftList;        // 免费礼包列表
    }
 
    public struct tagMCActBuyOneInfoFreeItem {
        public uint ItemID;
        public ushort ItemCount;
        public byte IsBind;
    }
 
    public struct tagMCActBuyOneInfoFreeGift {
        public byte FreeIndex;        // 免费领取索引
        public byte FreeItemCount;        // 免费礼包数
        public  tagMCActBuyOneInfoFreeItem[] FreeItemList;        // 免费礼包列表
    }
 
}