瀏覽代碼

Merge remote-tracking branch 'remotes/origin/guodong' into zhaoyang

zhaoyang 3 年之前
父節點
當前提交
18b25d579f

+ 1 - 1
GameClient/Assets/Game/CSShare

@@ -1 +1 @@
-Subproject commit ff27e356ce2680481ba9fc0af2427eac0697c6db
+Subproject commit de965c0b7b29ba1382c6ef238abc68e4ccba019a

+ 1 - 0
GameClient/Assets/Game/HotUpdate/Constant/ConstStorageId.cs

@@ -8,6 +8,7 @@ namespace GFGGame
         public const int STORAGE_AUTO_PLAY = 20001;//自动战斗,0不自动战斗,1自动战斗
         public const int STORAGE_AUTO_PLAY_SPEED = 20002;//战斗速度
         public const int SKIP_CHECK_OPEN = 20003;//跳过检查功能开启0不跳过,1跳过
+        public const int STORAGE_CUSTOME_SUIT_INDEX = 20004;//自定义套装当前使用索引
 
     }
 }

+ 0 - 12
GameClient/Assets/Game/HotUpdate/Controller/GameController.cs

@@ -195,18 +195,6 @@ namespace GFGGame
 
         }
 
-        public static void PrepareUpdateTreasure()
-        {
-            if (!Timers.inst.Exists(UpdateTreasure))
-            {
-                Timers.inst.Add(0.1f, 1, UpdateTreasure);
-            }
-        }
-
-        private static void UpdateTreasure(object param)
-        {
-            GameProxy.ReqUpdateTreasure();
-        }
 
 
     }

+ 17 - 29
GameClient/Assets/Game/HotUpdate/Data/CustomSuitDataManager.cs

@@ -1,17 +1,18 @@
 using System.Collections.Generic;
 using System.Collections;
+using ET;
+
 namespace GFGGame
 {
     public class CustomSuitDataManager
     {
-        private static int _currentIndex = 0;
         public static int currentIndex
         {
-            get {return _currentIndex;}
+            get { return StorageDataManager.Instance.GetStorageValue(ConstStorageId.STORAGE_CUSTOME_SUIT_INDEX); }
         }
 
         private static Dictionary<int, CustomSuitData> _dataDic = new Dictionary<int, CustomSuitData>();
-        private static void SaveSuit(int index, int[] arrayList, int bgID = 0, int suitId = 0, int pic = 0)
+        public static void SaveSuit(int index, List<int> arrayList, int bgID = 0, int suitId = 0, bool pic = false)
         {
             CustomSuitData suitSavedData = null;
             if(_dataDic.ContainsKey(index))
@@ -27,7 +28,6 @@ namespace GFGGame
             suitSavedData.bg = bgID;
             suitSavedData.pic = pic;
             suitSavedData.suitId = suitId;
-            GameProxy.ReqUpdateRoleSuit(suitSavedData);
         }
 
         public static CustomSuitData GetSuitList(int index)
@@ -48,10 +48,10 @@ namespace GFGGame
         public static CustomSuitData CreateDefaultSuitData(int index)
         {
             CustomSuitData suitSavedData = new CustomSuitData(index);
-            suitSavedData.equipDatas = new int[3]{10000, 30000, 50000};
+            suitSavedData.equipDatas = new List<int>{10000, 30000, 50000};
             suitSavedData.bg = 180001;
-            suitSavedData.pic = 0;
             suitSavedData.suitId = 0;
+            suitSavedData.pic = false;
             return suitSavedData;
         }
 
@@ -64,39 +64,27 @@ namespace GFGGame
         {
             if(currentIndex != index)
             {
-                _currentIndex = index;
-                GameProxy.ReqUpdateRoleSuitIndex(index);
+                StorageSProxy.ReqSetClientValue(ConstStorageId.STORAGE_CUSTOME_SUIT_INDEX ,index).Coroutine();
             }
-            SaveSuit(currentIndex, EquipDataCache.cacher.equipDatas, EquipDataCache.cacher.bgId, EquipDataCache.cacher.suitId, EquipDataCache.cacher.picStatus);
+            CustomSuitSProxy.UpdateCustomSuit(index, EquipDataCache.cacher.equipDatas, EquipDataCache.cacher.bgId, EquipDataCache.cacher.suitId, EquipDataCache.cacher.picStatus).Coroutine();
         }
 
-        public static void InitServerData(int suitIndex, List<RoleSuit> list)
+        public static void InitServerData(List<CustomSuitProto> list)
         {
-            _currentIndex = 0;
             _dataDic.Clear();
             if(list != null)
             {
-                _currentIndex = suitIndex;
-                foreach(RoleSuit roleSuit in list)
+                foreach(var roleSuit in list)
                 {
-                    CustomSuitData suitSavedData = new CustomSuitData(roleSuit.pos);
-                    _dataDic[roleSuit.pos] = suitSavedData;
-                    if(roleSuit.equipIds.Length > 0)
-                    {
-                        string[] ids = roleSuit.equipIds.Split(',');
-                        suitSavedData.equipDatas = new int[ids.Length];
-                        for(int i = 0; i < ids.Length; i++)
-                        {
-                            suitSavedData.equipDatas[i] = int.Parse(ids[i]);
-                        }
-                    }
-                    else
+                    CustomSuitData suitSavedData = new CustomSuitData(roleSuit.Pos);
+                    _dataDic[roleSuit.Pos] = suitSavedData;
+                    suitSavedData.bg = roleSuit.BgId;
+                    suitSavedData.suitId = roleSuit.SuitId;
+                    suitSavedData.pic = roleSuit.Pic;
+                    foreach (var equipId in roleSuit.EquipIds)
                     {
-                        suitSavedData.equipDatas = new int[]{};
+                        suitSavedData.equipDatas.Add(equipId);
                     }
-                    suitSavedData.bg = roleSuit.bg;
-                    suitSavedData.pic = roleSuit.pic;
-                    suitSavedData.suitId = roleSuit.suitId;
                 }
             }
         }

+ 2 - 2
GameClient/Assets/Game/HotUpdate/Data/DressUpMenuSuitDataManager.cs

@@ -168,10 +168,10 @@ namespace GFGGame
         {
             if (EquipDataCache.cacher.suitId > 0) return EquipDataCache.cacher.suitId;
 
-            int[] equipDatas = EquipDataCache.cacher.equipDatas;
+            var equipDatas = EquipDataCache.cacher.equipDatas;
             int dressSuitId = 0;
             List<int> _equipDatas = new List<int>();
-            for (int i = 0; i < equipDatas.Length; i++)
+            for (int i = 0; i < equipDatas.Count; i++)
             {
                 if (DressUpMenuItemDataManager.CheckIsSceneType(equipDatas[i])) continue;
                 if (equipDatas[i] != ConstItemID.DEFULT_FA_XING && equipDatas[i] != ConstItemID.DEFULT_LIAN_YI_QUN && equipDatas[i] != ConstItemID.DEFULT_NEI_DA && equipDatas[i] != ConstItemID.DEFULT_XIA_ZHUANG)

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Data/PhotographDataManager.cs

@@ -70,7 +70,7 @@ namespace GFGGame
         {
             _equipRoleData.Clear();
             _equipSceneData.Clear();
-            for (int i = 0; i < EquipDataCache.cacher.equipDatas.Length; i++)
+            for (int i = 0; i < EquipDataCache.cacher.equipDatas.Count; i++)
             {
                 ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(EquipDataCache.cacher.equipDatas[i]);
                 if (itemCfg.subType == ConstDressUpItemType.QIAN_JING || itemCfg.subType == ConstDressUpItemType.BEI_SHI || itemCfg.subType == ConstDressUpItemType.HUAN_JING || itemCfg.subType == ConstDressUpItemType.FEN_WEI)

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Data/PhotographSceneManager.cs

@@ -53,7 +53,7 @@ namespace GFGGame
         public void AddBodyItem()
         {
             GameObject bodyParent = sceneObject.transform.Find("Scene/Role").gameObject;
-            SceneController.UpdatePhotographBody(PhotographDataManager.Instance._equipRoleData.ToArray(), sceneObject, bodyParent);
+            SceneController.UpdatePhotographBody(PhotographDataManager.Instance._equipRoleData, sceneObject, bodyParent);
             PhotographDataManager.Instance.AddItemGameObject(bodyParent, false);
         }
     }

+ 4 - 4
GameClient/Assets/Game/HotUpdate/Data/ScoreSystemData.cs

@@ -17,8 +17,8 @@ namespace GFGGame
         public void SetEquipDicWithType()
         {
             equipDicWithPartId.Clear();
-            int[] equipDatas = EquipDataCache.cacher.equipDatas;
-            for (int i = 0; i < equipDatas.Length; i++)
+            var equipDatas = EquipDataCache.cacher.equipDatas;
+            for (int i = 0; i < equipDatas.Count; i++)
             {
 
                 FightScoreCfg[] typeCfgs = FightScoreCfgArray.Instance.dataArray;
@@ -58,13 +58,13 @@ namespace GFGGame
         {
             //(部件属性分数+标签分数+人物基础分+卡牌属性分数)*4
 
-            int[] equipDatas = EquipDataCache.cacher.equipDatas;
+            var equipDatas = EquipDataCache.cacher.equipDatas;
             int partScore = 0;
             double tagProportion = 0;
             StoryLevelCfg levelCfg = StoryLevelCfgArray.Instance.GetCfg(InstanceZonesDataManager.currentLevelCfgId);
             StoryFightCfg fightCfg = StoryFightCfgArray.Instance.GetCfg(levelCfg.fightID);
 
-            for (int i = 0; i < equipDatas.Length; i++)
+            for (int i = 0; i < equipDatas.Count; i++)
             {
                 partScore += DressUpMenuItemDataManager.GetItemScore(equipDatas[i]);
 

+ 2 - 2
GameClient/Assets/Game/HotUpdate/Data/VO/CustomSuitData.cs

@@ -8,9 +8,9 @@ namespace GFGGame
             this.pos = index;
         }
         public int pos;
-        public int[] equipDatas;
+        public List<int> equipDatas = new List<int>();
         public int bg;
-        public int pic;
+        public bool pic;
         public int suitId;
     }
 }

+ 7 - 7
GameClient/Assets/Game/HotUpdate/DressUp/DressUpObjDataCache.cs

@@ -34,19 +34,19 @@ namespace GFGGame
         }
 
         private bool _isPic;
-        public int picStatus
+        public bool picStatus
         {
             get
             {
-                return _isPic ? 1 : 0;
+                return _isPic;
             }
         }
         private List<int> _equipDatas = new List<int>();
-        public int[] equipDatas
+        public List<int> equipDatas
         {
             get
             {
-                return _equipDatas.ToArray();
+                return _equipDatas.ToList();
             }
         }
 
@@ -331,7 +331,7 @@ namespace GFGGame
             _suitId = 0;
             _isPic = false;
             // AddOrRemove(propID, false, true);
-            int[] tempList = equipDatas;
+            var tempList = equipDatas;
             foreach (int itemID in tempList)
             {
                 AddOrRemove(itemID, false, false, true);
@@ -359,7 +359,7 @@ namespace GFGGame
             _isPic = !_isPic;
             if (_isPic)
             {
-                int[] tempList = equipDatas;
+                var tempList = equipDatas;
                 foreach (int itemID in tempList)
                 {
                     if (!DressUpMenuItemDataManager.CheckIsSceneType(itemID))
@@ -474,7 +474,7 @@ namespace GFGGame
                 AddOrRemove(itemID, false, true);
             }
             _suitId = suitSavedData.suitId;
-            _isPic = suitSavedData.pic > 0;
+            _isPic = suitSavedData.pic;
             checkDefaultItem();
             UpdatePicAction();
         }

+ 10 - 3
GameClient/Assets/Game/HotUpdate/DressUp/SceneController.cs

@@ -3,6 +3,8 @@ using System.Collections;
 using System;
 using UnityEditor;
 using FairyGUI;
+using System.Collections.Generic;
+using System.Linq;
 
 namespace GFGGame
 {
@@ -32,9 +34,9 @@ namespace GFGGame
             spr.sprite = sp;
             //角色
             CustomSuitData suitSavedData = CustomSuitDataManager.GetCurrentSuitList();
-            int[] equipDatas = suitSavedData.equipDatas;
+            List<int> equipDatas = suitSavedData.equipDatas;
             UpdateRole(equipDatas, sceneObj, false);
-            if (suitSavedData.pic > 0 && suitSavedData.suitId > 0)
+            if (suitSavedData.pic && suitSavedData.suitId > 0)
             {
                 SuitCfg suitCfg = SuitCfgArray.Instance.GetCfg(suitSavedData.suitId);
                 DressUpUtil.UpdateBody(suitCfg.picRes, sceneObj, !string.IsNullOrEmpty(suitCfg.aniRes), suitCfg.effRes);
@@ -65,6 +67,11 @@ namespace GFGGame
             DressUpUtil.UpdateBody(null, sceneObj, false, null, needSetMask, parentObj);
         }
 
+        public static void UpdateRole(List<int> equipDatas, GameObject sceneObj, bool needSetMask = false, int[] exceptTypes = null, bool showAni = true, GameObject parentObj = null)
+        {
+            UpdateRole(equipDatas.ToArray(), sceneObj, needSetMask, exceptTypes, showAni, parentObj);
+        }
+
         public static void UpdateDialogBg(string value, GameObject sceneObj)
         {
             Transform tf = sceneObj.transform.Find("Bg");
@@ -165,7 +172,7 @@ namespace GFGGame
 
 
         //拍照角色
-        public static void UpdatePhotographBody(int[] equipDatas, GameObject sceneObj, GameObject parentObj)
+        public static void UpdatePhotographBody(List<int> equipDatas, GameObject sceneObj, GameObject parentObj)
         {
             SceneController.UpdateRole(equipDatas, sceneObj, false, null, false, parentObj);
             if (EquipDataCache.cacher.IsSuitPic && EquipDataCache.cacher.suitId > 0)

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Net/Proxy/GameProxy.cs

@@ -128,7 +128,7 @@ namespace GFGGame
         {
             Dictionary<string, object> data = JsonUtil.createJsonDic("pos", suitSavedData.pos,
                                                                     "roleId", RoleDataManager.roleId,
-                                                                    "equipIds", ArrayUtil<int>.JoinArrayToString(suitSavedData.equipDatas),
+                                                                    //"equipIds", ArrayUtil<int>.JoinArrayToString(suitSavedData.equipDatas),
                                                                     "bg", suitSavedData.bg,
                                                                     "pic", suitSavedData.pic,
                                                                     "suitId", suitSavedData.suitId

+ 35 - 0
GameClient/Assets/Game/HotUpdate/ServerProxy/CustomSuitSProxy.cs

@@ -0,0 +1,35 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Runtime.InteropServices.ComTypes;
+using System.Text;
+using ET;
+
+namespace GFGGame
+{
+    public class CustomSuitSProxy
+    {
+        public static async ETTask UpdateCustomSuit(int index, List<int> arrayList, int bgID = 0, int suitId = 0, bool pic = false)
+        {
+            CustomSuitProto suitProto = new CustomSuitProto();
+            suitProto.BgId = bgID;
+            suitProto.SuitId = suitId;
+            suitProto.Pic = pic;
+            foreach (var equipId in arrayList)
+            {
+                suitProto.EquipIds.Add(equipId);
+            }
+            M2C_SaveCustomSuit response = (M2C_SaveCustomSuit) await MessageHelper.SendToServer(new C2M_SaveCustomSuit()
+            {
+                suit = suitProto
+            });
+            if (response != null)
+            {
+                if (response.Error == ErrorCode.ERR_Success)
+                {
+                    
+                }
+            }
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/ServerProxy/CustomSuitSProxy.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 44062fbbf4a521a48b77f3ac1457619a
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: