少年修仙传客户端代码仓库
hch
2025-03-03 28785d6ddf9c08e49527ede9405c7b6c93c6ed32
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
68
69
70
71
72
73
74
75
76
77
using UnityEngine;
using System.Collections;
 
// C0 12 幸运云购轮次信息 #tagGCLuckyCloudBuyRoundInfo
 
public class IL_HC012_tagGCLuckyCloudBuyRoundInfo : GameNetPackBasic {
    public byte ZoneID;    // 所属分区ID
    public string StartDate;    // 开始日期 y-m-d
    public string EndtDate;    // 结束日期 y-m-d
    public byte RoundTimeCount;
    public  tagGCLuckyCloudBuyRoundTime[] RoundTimeList;    //轮次时间段
    public uint RoundID;    // 轮次唯一ID标识,当收到的轮次ID变更时,前端需清空购买号码记录缓存
    public byte RoundNum;    // 当前时段第几轮
    public uint SuperItemID;    // 大奖物品ID
    public byte SuperItemCount;    // 大奖物品个数
    public byte SuperItemMoneyType;    // 大奖价值货币类型
    public uint SuperItemMoneyValue;    // 大奖价值
    public ushort LVLimit;    //开启等级
    public byte BaseItemCount;    // 每次购买固定奖励物品数
    public  tagGCLuckyCloudBuyRoundItem[] BaseItemList;    // 每次购买固定奖励物品信息
    public byte RandItemCount;    // 每次购买随机奖励物品数
    public  tagGCLuckyCloudBuyRoundItem[] RandItemList;    // 每次购买随机奖励物品信息
 
    public IL_HC012_tagGCLuckyCloudBuyRoundInfo () {
        _cmd = (ushort)0xC012;
    }
 
    public override void ReadFromBytes (byte[] vBytes) {
        TransBytes (out ZoneID, vBytes, NetDataType.BYTE);
        TransBytes (out StartDate, vBytes, NetDataType.Chars, 10);
        TransBytes (out EndtDate, vBytes, NetDataType.Chars, 10);
        TransBytes (out RoundTimeCount, vBytes, NetDataType.BYTE);
        RoundTimeList = new tagGCLuckyCloudBuyRoundTime[RoundTimeCount];
        for (int i = 0; i < RoundTimeCount; i ++) {
            RoundTimeList[i] = new tagGCLuckyCloudBuyRoundTime();
            TransBytes (out RoundTimeList[i].StartTime, vBytes, NetDataType.Chars, 5);
            TransBytes (out RoundTimeList[i].EndtTime, vBytes, NetDataType.Chars, 5);
            TransBytes (out RoundTimeList[i].RoundMax, vBytes, NetDataType.BYTE);
        }
        TransBytes (out RoundID, vBytes, NetDataType.DWORD);
        TransBytes (out RoundNum, vBytes, NetDataType.BYTE);
        TransBytes (out SuperItemID, vBytes, NetDataType.DWORD);
        TransBytes (out SuperItemCount, vBytes, NetDataType.BYTE);
        TransBytes (out SuperItemMoneyType, vBytes, NetDataType.BYTE);
        TransBytes (out SuperItemMoneyValue, vBytes, NetDataType.DWORD);
        TransBytes (out LVLimit, vBytes, NetDataType.WORD);
        TransBytes (out BaseItemCount, vBytes, NetDataType.BYTE);
        BaseItemList = new tagGCLuckyCloudBuyRoundItem[BaseItemCount];
        for (int i = 0; i < BaseItemCount; i ++) {
            BaseItemList[i] = new tagGCLuckyCloudBuyRoundItem();
            TransBytes (out BaseItemList[i].ItemID, vBytes, NetDataType.DWORD);
            TransBytes (out BaseItemList[i].ItemCount, vBytes, NetDataType.WORD);
            TransBytes (out BaseItemList[i].IsBind, vBytes, NetDataType.BYTE);
        }
        TransBytes (out RandItemCount, vBytes, NetDataType.BYTE);
        RandItemList = new tagGCLuckyCloudBuyRoundItem[RandItemCount];
        for (int i = 0; i < RandItemCount; i ++) {
            RandItemList[i] = new tagGCLuckyCloudBuyRoundItem();
            TransBytes (out RandItemList[i].ItemID, vBytes, NetDataType.DWORD);
            TransBytes (out RandItemList[i].ItemCount, vBytes, NetDataType.WORD);
            TransBytes (out RandItemList[i].IsBind, vBytes, NetDataType.BYTE);
        }
    }
 
    public struct tagGCLuckyCloudBuyRoundTime {
        public string StartTime;        // 开始时间 H:M
        public string EndtTime;        // 结束时间 H:M
        public byte RoundMax;        // 本时段最大轮次
    }
 
    public struct tagGCLuckyCloudBuyRoundItem {
        public uint ItemID;
        public ushort ItemCount;
        public byte IsBind;        // 是否拍品
    }
 
}