少年修仙传客户端代码仓库
client_Zxw
2018-08-20 04b3034c07f86aad4493f3be4bd26e2094c10d0c
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using TableConfig;
using System;
using Snxxz.UI;
//仙盟宝库
public class FamilyStoreItem//家族仓库物品信息
{
    public int Index;//仓库格子索引
    public int ItemID;//物品ID
    public ItemJsonData ItemData;
    public Dictionary<int, List<int>> _UserData;
    [Serializable]
    public class ItemJsonData
    {
        public string UserData;
        public int IsSuit;
        public int EquipGS;
    }
}
 
public class FamilyActionInfoClass//接收家族行为信息
{
    public int FamilyID;//家族ID
    public int ActionType;//类型
    public int Time;//时间
    public string Name;//玩家名
    public int OperationType;//操作类型1-捐献,2-兑换,3-销毁
    public int PlayerID;//操作的玩家ID;
    public int ItemID;//物品ID
    public ItemJsonData ItemData;
    public Dictionary<int, List<int>> _UserData;
    [Serializable]
    public class ItemJsonData
    {
        public int ItemID;
        public string UserData;
        public int IsSuit;
        public int EquipGS;
    }
 
}
 
 
public class PlayerFairyAuTreasureData : Model, IBeforePlayerDataInitialize
{
 
    public Dictionary<int, FamilyStoreItem> _DicfamilyStoreItem = new Dictionary<int, FamilyStoreItem>();//家族仓库物品信息
 
    public   List<FamilyActionInfoClass> _InformationList = new List<FamilyActionInfoClass>();
    public delegate void OnFairyAuIntegral();
    public static event OnFairyAuIntegral Event_FairyAuIntegral;//用于仙盟积分的刷新
    public delegate void OnFamilyActionInfo();
    public static event OnFamilyActionInfo Event_FamilyActionInfo;//家族行为信息的刷新
    public delegate void OnFamilyStoreItemInfo();
    public static event OnFamilyStoreItemInfo Event_FamilyStoreItemInfo;//仓库信息的刷新
    public int _FairyAuIntegral = 0;//获取仙盟积分
 
    public override void Init()
    {
        
    }
 
    public override void UnInit()
    {
       
    }
 
    public void OnBeforePlayerDataInitialize()
    {
        _FairyAuIntegral = 0;
    }
 
    public void FairyAuIntegral(int value)//获取仙盟积分
    {
        _FairyAuIntegral = value;
        if (Event_FairyAuIntegral != null)
            Event_FairyAuIntegral();
    }
 
    public void FamilyStoreItemInfo(HA406_tagGCFamilyStoreItemInfo info)//家族仓库信息
    {
        if (!_DicfamilyStoreItem.ContainsKey(0))
        {
            FamilyStoreItem _FamilyStoreItemP = new FamilyStoreItem();
            _FamilyStoreItemP.Index = 0;
            FuncConfigConfig _PetFoodExchange = ConfigManager.Instance.GetTemplate<FuncConfigConfig>("PetFoodExchange");
            _FamilyStoreItemP.ItemID = int.Parse(_PetFoodExchange.Numerical1);
            _DicfamilyStoreItem.Add(0, _FamilyStoreItemP);
        }
     
        for (int i = 0; i < info.Count; i++)
        {
            if (_DicfamilyStoreItem.ContainsKey(info.StoreItemList[i].Index + 1))
                continue;
            FamilyStoreItem _FamilyStoreItem = new FamilyStoreItem();
            _FamilyStoreItem.ItemData = JsonUtility.FromJson<FamilyStoreItem.ItemJsonData>(info.StoreItemList[i].ItemData);
            _FamilyStoreItem.Index = info.StoreItemList[i].Index+1;
            _FamilyStoreItem.ItemID = (int)info.StoreItemList[i].ItemID;
            _FamilyStoreItem._UserData = ConfigParse.Analysis(_FamilyStoreItem.ItemData.UserData);
            _DicfamilyStoreItem.Add((int)info.StoreItemList[i].Index+1, _FamilyStoreItem);
        }
      
        if (Event_FamilyStoreItemInfo != null)
            Event_FamilyStoreItemInfo();
 
 
 
 
    }
 
    public void WarehouseToRefresh()//仓库刷新
    {
        if (Event_FamilyStoreItemInfo != null)
        {
            Event_FamilyStoreItemInfo();
        }
           
 
    }
    public void FamilyStoreDel(int _index ,int ClearType)//家族仓库物品删除(清除的格子索引, 仅单格子清除时有效,从0开始代表第一格,0-单格子清除; 1-所有物品清除)
    {
        if (_DicfamilyStoreItem.ContainsKey(_index + 1) && ClearType==0)
        {
            _DicfamilyStoreItem.Remove(_index + 1);
        }
        if (ClearType == 1)
        {
            _DicfamilyStoreItem.Clear();
            if (!_DicfamilyStoreItem.ContainsKey(0))
            {
                FamilyStoreItem _FamilyStoreItemP = new FamilyStoreItem();
                _FamilyStoreItemP.Index = 0;
                FuncConfigConfig _PetFoodExchange = ConfigManager.Instance.GetTemplate<FuncConfigConfig>("PetFoodExchange");
                _FamilyStoreItemP.ItemID = int.Parse(_PetFoodExchange.Numerical1);
                _DicfamilyStoreItem.Add(0, _FamilyStoreItemP);
            }
        }   
    }
 
    public void FamilyActionInfo(HA403_tagGCFamilyActionInfo info)//接收家族行为信息
    {
        _InformationList.Clear();
        for (int i = 0; i < info.Count; i++)
        {
            FamilyActionInfoClass _FamilyActionInfoClass = new FamilyActionInfoClass();
            _FamilyActionInfoClass.FamilyID = (int)info.FamilyID;
            _FamilyActionInfoClass.ActionType = (int)info.ActionType;
            _FamilyActionInfoClass.Time =(int)info.FamilyActionList[i].Time;
            _FamilyActionInfoClass.Name = info.FamilyActionList[i].Name;
            _FamilyActionInfoClass.OperationType = (int)info.FamilyActionList[i].Value1;
            _FamilyActionInfoClass.PlayerID = (int)info.FamilyActionList[i].Value2;
            _FamilyActionInfoClass.ItemID = (int)info.FamilyActionList[i].Value3;
            _FamilyActionInfoClass.ItemData = JsonUtility.FromJson<FamilyActionInfoClass.ItemJsonData>(info.FamilyActionList[i].UseData);
            _FamilyActionInfoClass._UserData = ConfigParse.Analysis(_FamilyActionInfoClass.ItemData.UserData);
            _InformationList.Add(_FamilyActionInfoClass);
          
        }
        if (Event_FamilyActionInfo != null)
            Event_FamilyActionInfo();//家族行为信息的刷新
 
    }
 
   
}