少年修仙传客户端代码仓库
hch
3 天以前 600733c8f592cb9e65f2b7a3e110ac1d686e6bfe
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 vnxbqy.UI;
using System.Collections.Generic;
using UnityEngine;
 
class ILItemCommon
{
    static PackModel packModel { get { return ModelCenter.Instance.GetModelEx<PackModel>(); } }
    public  static Dictionary<int, int> GetLegendProperty(string guid)
    {
        Dictionary<int, int> legendProperty = new Dictionary<int, int>();
        var item = packModel.GetItemByGuid(guid);
        if (item == null)
        {
            return legendProperty;
        }
 
        var ids = item.GetUseData((int)ItemUseDataKey.legendAttrID);
        var values = item.GetUseData((int)ItemUseDataKey.legendAttrValue);
        if (!ids.IsNullOrEmpty() && !values.IsNullOrEmpty())
        {
            var count = Mathf.Min(ids.Count, values.Count);
            for (int i = 0; i < count; i++)
            {
                legendProperty[ids[i]] = values[i];
            }
        }
 
        return legendProperty;
    }
 
    //复制底层的GetGetWay
    public static ItemTipUtility.GetWay GetGetWay(int itemId)
    {
        var config = ItemConfig.Get(itemId);
        if (config == null)
        {
            return default(ItemTipUtility.GetWay);
        }
 
        var getWay = new ItemTipUtility.GetWay();
        getWay.itemId = itemId;
        getWay.ways = new List<int>();
        for (int i = 0; i < config.GetWay.Length; i++)
        {
            var way = config.GetWay[i];
            var wayConfig = GetItemWaysConfig.Get(way);
            if (wayConfig.FuncOpenId == 0 || FuncOpen.Instance.IsFuncOpen(wayConfig.FuncOpenId))
            {
                int activityType = 0;  // 活动模板 参考OpenServerActivityCenter.ActivityType
                if (wayConfig.customize == 2)
                {
                    activityType = (int)OpenServerActivityCenter.ActivityType.AT_JRZF;
                }
                else if (wayConfig.customize == 3)
                {
                    activityType = (int)OpenServerActivityCenter.ActivityType.AT_HFHD;
                }
                if (wayConfig.ActiveType == -1 || OpenServerActivityCenter.Instance.IsActivityOpen(wayConfig.ActiveType, activityType))
                {
                    getWay.ways.Add(way);
                }
            }
        }
 
        return getWay;
    }
}