少年修仙传客户端代码仓库
hch
4 天以前 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
//--------------------------------------------------------
//    [Author]:           Alee
//    [  Date ]:           2021年7月1日
//--------------------------------------------------------
 
using LitJson;
using System.Collections.Generic;
using UnityEngine;
 
//分部类
public partial class ILEquipShenEvolveConfig : IConfigPostProcess
{
    static Dictionary<int, int[][]> equipShenEvolveMaterial = new Dictionary<int, int[][]>();
    public static List<int> materialIDs = new List<int>();
    public static Dictionary<int, int> equipEvolveSourceIDs = new Dictionary<int, int>(); //回溯进阶装备
    public static Dictionary<int, List<Int2>> materialToEquipPos = new Dictionary<int, List<Int2>>(); //材料对应的装备位
 
    public void OnConfigParseCompleted()
    {
        var materials = JsonMapper.ToObject<int[][]>(EvolveNeedItemIDInfo);
        equipShenEvolveMaterial[ID] = materials;
        var itemConfig = ItemConfig.Get(ID);
        if (itemConfig == null)
        { 
            Debug.LogErrorFormat("装备红装进阶没有此ID {0}", ID);
            return;
        }
        
        for (int i = 0; i < materials.Length; i++)
        {
            var id = materials[i][0];
            if (!materialIDs.Contains(id))
            {
                materialIDs.Add(id);
            }
            if (!materialToEquipPos.ContainsKey(id))
            {
                materialToEquipPos[id] = new List<Int2>();
            }
 
            materialToEquipPos[id].Add(new Int2(itemConfig.LV, itemConfig.EquipPlace));
        }
 
        equipEvolveSourceIDs[EvolveID] = ID;
    }
 
    public static int[][] TryGetMaterial(int ID)
    {
        if (equipShenEvolveMaterial.ContainsKey(ID))
        {
            return equipShenEvolveMaterial[ID];
        }
        return null;
    }
}