From 60da066440dacc2aff8e156f731aacded5bebdd9 Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期日, 10 三月 2019 21:19:06 +0800
Subject: [PATCH] Merge branch 'master' into Equip

---
 Fight/GameActor/GA_Player.cs                                            |   40 +++++--------
 System/KnapSack/New/EquipPlaceCell.cs                                   |    4 
 System/Auction/MyFocusCell.cs                                           |    8 ++
 System/Equip/EquipModel.cs                                              |   31 ++++++++++
 Utility/EnumHelper.cs                                                   |   11 +--
 Core/NetworkPackage/ServerPack/H04_Scene/H0434_tagAreaPlayerAppearEx.cs |    8 --
 System/Equip/CandidateEquipWidget.cs                                    |   12 +++
 Core/SDK/SDKUtility.cs                                                  |    2 
 System/Auction/AttentionWin.cs                                          |    4 
 System/KnapSack/Logic/ItemLogicUtility.cs                               |    4 +
 System/Auction/FamilyAuctioncell.cs                                     |   10 +++
 System/Auction/FullServiceAuctioncell.cs                                |    8 ++
 12 files changed, 97 insertions(+), 45 deletions(-)

diff --git a/Core/NetworkPackage/ServerPack/H04_Scene/H0434_tagAreaPlayerAppearEx.cs b/Core/NetworkPackage/ServerPack/H04_Scene/H0434_tagAreaPlayerAppearEx.cs
index 924e25c..cfd87cf 100644
--- a/Core/NetworkPackage/ServerPack/H04_Scene/H0434_tagAreaPlayerAppearEx.cs
+++ b/Core/NetworkPackage/ServerPack/H04_Scene/H0434_tagAreaPlayerAppearEx.cs
@@ -94,11 +94,7 @@
         for (int i = 0; i < EquipCount; i++)
         {
             EquipInfo[i] = new tagEquipInfo();
-            TransBytes(out EquipInfo[i].Place, vBytes, NetDataType.BYTE);
             TransBytes(out EquipInfo[i].ItemID, vBytes, NetDataType.DWORD);
-            TransBytes(out EquipInfo[i].IsSuite, vBytes, NetDataType.BYTE);
-            TransBytes(out EquipInfo[i].UserDataLen, vBytes, NetDataType.DWORD);
-            TransBytes(out EquipInfo[i].UserData, vBytes, NetDataType.Chars, EquipInfo[i].UserDataLen);
         }
         TransBytes(out IsVisible, vBytes, NetDataType.BYTE);
         TransBytes(out EquipShowSwitch, vBytes, NetDataType.DWORD);
@@ -127,11 +123,7 @@
 
     public struct tagEquipInfo
     {
-        public byte Place;        //瑁呭浣嶇疆
         public uint ItemID;        //鐗╁搧ID
-        public byte IsSuite;        //鏄惁宸茬粡濂楄鍖�
-        public uint UserDataLen;
-        public string UserData;        // 闄勫姞鏁版嵁
     }
 
     public struct tagAreaPlayerBuff
diff --git a/Core/SDK/SDKUtility.cs b/Core/SDK/SDKUtility.cs
index 15f180d..47acbac 100644
--- a/Core/SDK/SDKUtility.cs
+++ b/Core/SDK/SDKUtility.cs
@@ -987,7 +987,7 @@
                         m_Json["serverName"] = ServerListCenter.Instance.currentServer.name;
                         m_Json["familyName"] = PlayerDatas.Instance.baseData.FamilyName;
                         m_Json["job"] = PlayerDatas.Instance.baseData.Job.ToString();
-                        m_Json["money"] = PlayerDatas.Instance.baseData.Gold.ToString();
+                        m_Json["money"] = PlayerDatas.Instance.baseData.copper.ToString();
                         m_Json["gameName"] = VersionConfig.Get().productName;
                         m_Json["vipLevel"] = PlayerDatas.Instance.baseData.VIPLv.ToString();
 
diff --git a/Fight/GameActor/GA_Player.cs b/Fight/GameActor/GA_Player.cs
index 7550f9a..5e97de1 100644
--- a/Fight/GameActor/GA_Player.cs
+++ b/Fight/GameActor/GA_Player.cs
@@ -59,33 +59,24 @@
 
         Dictionary<int, List<int>> _userDataDict;
         EquipInfo _info;
-
+        ItemConfig _itemConfig;
         // 鍥犱负琛f湇鏄墍鏈夎澶囩殑鐖惰妭鐐�, 闇�瑕侀鍏堝鐞嗚。鏈�
         for (int i = 0; i < m_H0434.EquipCount; ++i)
         {
             _equipInfo = m_H0434.EquipInfo[i];
-
+            _itemConfig = ItemConfig.Get((int)_equipInfo.ItemID);
             _info = new EquipInfo
             {
                 itemID = _equipInfo.ItemID
             };
 
-            if (_equipInfo.UserDataLen > 2)
-            {
-                _userDataDict = ConfigParse.Analysis(_equipInfo.UserData);
-                if (_userDataDict != null && _userDataDict.ContainsKey(25))
-                {
-                    _info.suitLV_1 = (byte)_userDataDict[25][0];
-                    _info.suitLV_2 = (byte)_userDataDict[25][1];
-                }
-            }
-            m_EquipDict[_equipInfo.Place] = _info;
+            m_EquipDict[_itemConfig.EquipPlace] = _info;
 
-            if (_equipInfo.Place == (byte)RoleEquipType.FashionClothes)
+            if (_itemConfig.EquipPlace == (byte)RoleEquipType.FashionClothes)
             {
-                SwitchClothes(_equipInfo.ItemID, _equipInfo.Place);
+                SwitchClothes(_equipInfo.ItemID, _itemConfig.EquipPlace);
             }
-            else if (_equipInfo.Place == (byte)RoleEquipType.Clothes)
+            else if (_itemConfig.EquipPlace == (byte)RoleEquipType.Clothes)
             {
                 SwitchClothes(_equipInfo.ItemID);
             }
@@ -101,33 +92,34 @@
         for (int i = 0; i < m_H0434.EquipCount; ++i)
         {
             _equipInfo = m_H0434.EquipInfo[i];
-            if (_equipInfo.Place == (int)RoleEquipType.FashionWeapon)
+            _itemConfig = ItemConfig.Get((int)_equipInfo.ItemID);
+            if (_itemConfig.EquipPlace == (int)RoleEquipType.FashionWeapon)
             {
-                SwitchWeapon(_equipInfo.ItemID, _equipInfo.Place);
+                SwitchWeapon(_equipInfo.ItemID, _itemConfig.EquipPlace);
                 continue;
             }
-            else if (_equipInfo.Place == (int)RoleEquipType.Weapon)
+            else if (_itemConfig.EquipPlace == (int)RoleEquipType.Weapon)
             {
                 SwitchWeapon(_equipInfo.ItemID);
                 continue;
             }
 
-            if (_equipInfo.Place == (int)RoleEquipType.FashionWeapon2)
+            if (_itemConfig.EquipPlace == (int)RoleEquipType.FashionWeapon2)
             {
-                SwitchSecondary(_equipInfo.ItemID, _equipInfo.Place);
+                SwitchSecondary(_equipInfo.ItemID, _itemConfig.EquipPlace);
                 continue;
             }
-            else if (_equipInfo.Place == (int)RoleEquipType.Weapon2)
+            else if (_itemConfig.EquipPlace == (int)RoleEquipType.Weapon2)
             {
                 SwitchSecondary(_equipInfo.ItemID);
                 continue;
             }
 
-            if (_equipInfo.Place == (int)RoleEquipType.Wing)
+            if (_itemConfig.EquipPlace == (int)RoleEquipType.Wing)
             {
                 SwitchWing(_equipInfo.ItemID);
             }
-            else if (_equipInfo.Place == (int)RoleEquipType.Guard1)
+            else if (_itemConfig.EquipPlace == (int)RoleEquipType.Guard1)
             {
                 var _index = BattleEffectPlayRule.Instance.GetIndex(ServerInstID);
                 if (_index != -1 && _index < BattleEffectPlayRule.Instance.petLimit)
@@ -136,7 +128,7 @@
                 }
                 serverGuardId = (int)_equipInfo.ItemID;
             }
-            else if (_equipInfo.Place == (int)RoleEquipType.Mount)
+            else if (_itemConfig.EquipPlace == (int)RoleEquipType.Mount)
             {
                 ActorInfo.horseItemID = _equipInfo.ItemID;
             }
diff --git a/System/Auction/AttentionWin.cs b/System/Auction/AttentionWin.cs
index 76f29cc..210f8ce 100644
--- a/System/Auction/AttentionWin.cs
+++ b/System/Auction/AttentionWin.cs
@@ -21,7 +21,7 @@
         [SerializeField] Button m_CloseButton;
         AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } }
         AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } }
-        List<AuctionItemConfig> auctionItemList;
+        List<AuctionItemConfig> auctionItemList=new List<AuctionItemConfig>();
         int ItemType = 1;
         #region Built-in
         enum AttentionType
@@ -109,7 +109,7 @@
                         DebugEx.LogError("鐗╁搧琛ㄦ病鏈夋壘鍒拌鐗╁搧锛岀墿鍝両D涓�" + auctionItem.ItemID);
                         return;
                     }
-                    ItemCellModel cellModel = new ItemCellModel(itemConfig.ID, true, (ulong)1, itemConfig.BindType);
+                    ItemCellModel cellModel = new ItemCellModel(itemConfig.ID, true, (ulong)1,0);
                     itemCell.Init(cellModel);
                     textName.text = itemConfig.ItemName;
                     if (model.AttentionAuctionItemIDdic.ContainsKey(auctionItem.ItemID))
diff --git a/System/Auction/FamilyAuctioncell.cs b/System/Auction/FamilyAuctioncell.cs
index 71a524e..b89547c 100644
--- a/System/Auction/FamilyAuctioncell.cs
+++ b/System/Auction/FamilyAuctioncell.cs
@@ -99,7 +99,15 @@
                 needJade = familyAuctionItem.BidderPrice + auctionItem.BiddingAdd;
             }
             m_JadeNumber.text = (needJade).ToString();
-            m_JadeNumber1.text = auctionItem.BuyoutPrice.ToString();          
+            m_JadeNumber1.text = auctionItem.BuyoutPrice.ToString();
+            if (auctionItem.BuyoutPrice == 0)
+            {
+                m_PriceButton.gameObject.SetActive(false);
+            }
+            else
+            {
+                m_PriceButton.gameObject.SetActive(true);
+            }
             m_PriceButton.SetListener(() => //涓�鍙d环
             {
                 int jade = (int)PlayerDatas.Instance.baseData.diamond;
diff --git a/System/Auction/FullServiceAuctioncell.cs b/System/Auction/FullServiceAuctioncell.cs
index cd5dc07..32cb8d9 100644
--- a/System/Auction/FullServiceAuctioncell.cs
+++ b/System/Auction/FullServiceAuctioncell.cs
@@ -118,6 +118,14 @@
             }
             m_JadeNumber.text = needJade.ToString();
             m_JadeNumber1.text = auctionItem.BuyoutPrice.ToString();
+            if (auctionItem.BuyoutPrice == 0)
+            {
+                m_PriceButton.gameObject.SetActive(false);
+            }
+            else
+            {
+                m_PriceButton.gameObject.SetActive(true);
+            }
             m_PriceButton.SetListener(() => //涓�鍙d环
             {
                 int jade = (int)PlayerDatas.Instance.baseData.diamond;
diff --git a/System/Auction/MyFocusCell.cs b/System/Auction/MyFocusCell.cs
index b7033b4..06d9558 100644
--- a/System/Auction/MyFocusCell.cs
+++ b/System/Auction/MyFocusCell.cs
@@ -108,6 +108,14 @@
                 needJade = myAuction.BidderPrice + auctionItem.BiddingAdd;
             }
             m_JadeNumber.text = (needJade).ToString();
+            if (auctionItem.BuyoutPrice == 0)
+            {
+                m_PriceButton.gameObject.SetActive(false);
+            }
+            else
+            {
+                m_PriceButton.gameObject.SetActive(true);
+            }
             m_JadeNumber1.text = auctionItem.BuyoutPrice.ToString();
             m_PriceButton.SetListener(() => //涓�鍙d环
             {
diff --git a/System/Equip/CandidateEquipWidget.cs b/System/Equip/CandidateEquipWidget.cs
index d23d8a7..8be37c4 100644
--- a/System/Equip/CandidateEquipWidget.cs
+++ b/System/Equip/CandidateEquipWidget.cs
@@ -14,8 +14,13 @@
         [SerializeField] RectTransform m_GetWayContainer;
         [SerializeField] WayCell[] m_GetWayCells;
 
+        EquipModel model { get { return ModelCenter.Instance.GetModel<EquipModel>(); } }
+
+        int place = 0;
         public void Display(int place, List<CandidateEquip> candidates)
         {
+            this.place = place;
+
             if (place == 0)
             {
                 m_Title.text = "鍏ㄩ儴";
@@ -46,7 +51,12 @@
 
         private void DisplayGetWays()
         {
-            var getWays = new List<int>();
+            var getWays = model.GetGetWays(model.selectedLevel.value, place);
+            if (getWays == null)
+            {
+                return;
+            }
+
             for (var i = 0; i < m_GetWayCells.Length; i++)
             {
                 var behaviour = m_GetWayCells[i];
diff --git a/System/Equip/EquipModel.cs b/System/Equip/EquipModel.cs
index 55a6d21..d48d8fa 100644
--- a/System/Equip/EquipModel.cs
+++ b/System/Equip/EquipModel.cs
@@ -300,6 +300,37 @@
             return equipSets[level].GetFightPoint();
         }
 
+        public List<int> GetGetWays(int level, int place)
+        {
+            if (level == 0)
+            {
+                return null;
+            }
+
+            if (place != 0)
+            {
+                var config = EquipControlConfig.Get(level, place);
+                return new List<int>(config.getWays);
+            }
+            else
+            {
+                var getWays = new List<int>();
+                for (int i = 1; i <= 12; i++)
+                {
+                    var config = EquipControlConfig.Get(level, i);
+                    foreach (int getWay in config.getWays)
+                    {
+                        if (!getWays.Contains(getWay))
+                        {
+                            getWays.Add(getWay);
+                        }
+                    }
+                }
+
+                return getWays;
+            }
+        }
+
         public void PutOn(string equipGuid)
         {
             var item = packModel.GetItemByGuid(equipGuid);
diff --git a/System/KnapSack/Logic/ItemLogicUtility.cs b/System/KnapSack/Logic/ItemLogicUtility.cs
index 9c471f6..88d0406 100644
--- a/System/KnapSack/Logic/ItemLogicUtility.cs
+++ b/System/KnapSack/Logic/ItemLogicUtility.cs
@@ -144,6 +144,10 @@
             public void AddBaseProperties(int itemId, List<int> reference)
             {
                 var config = ItemConfig.Get(itemId);
+                if (config == null)
+                {
+                    return;
+                }
                 if (config.Effect1 != 0 && reference.Contains(config.Effect1))
                 {
                     properties.Add(config.Effect1, config.EffectValueA1);
diff --git a/System/KnapSack/New/EquipPlaceCell.cs b/System/KnapSack/New/EquipPlaceCell.cs
index f72b82c..a05a9f4 100644
--- a/System/KnapSack/New/EquipPlaceCell.cs
+++ b/System/KnapSack/New/EquipPlaceCell.cs
@@ -17,7 +17,7 @@
         public void Display(RoleEquipType equipType)
         {
             this.equipType = equipType;
-            var item = packModel.GetItemByIndex(PackType.Equip, (int)equipType);
+            var item = packModel.GetItemByIndex(PackType.Equip, EquipSet.ClientPlaceToServerPlace(0, (int)equipType));
             if (item == null)
             {
                 m_ItemCell.gameObject.SetActive(false);
@@ -43,7 +43,7 @@
         private void AddEqup()
         {
             var item = packModel.GetItemByIndex(PackType.Equip, (int)equipType);
-            if (item!=null)
+            if (item != null)
             {
                 return;
             }
diff --git a/Utility/EnumHelper.cs b/Utility/EnumHelper.cs
index 777cefb..db0d7e5 100644
--- a/Utility/EnumHelper.cs
+++ b/Utility/EnumHelper.cs
@@ -370,13 +370,12 @@
     FairyCan1 = 10,      //浠欏櫒
     FairyCan2 = 11,      //浠欏櫒
     Jade = 12,              //鐜変僵
+    Wing = 13,               //缈呰唨
+    Guard1 = 14,            //瀹堟姢1
+    Guard2 = 15,            //瀹堟姢2
 
-    Wing=13,               //缈呰唨
-    Guard1=14,            //瀹堟姢1
-    Guard2=15,            //瀹堟姢2
-
-    PeerlessWeapon1=16,//缁濅笘姝﹀櫒
-    PeerlessWeapon2=17,//缁濅笘鍓墜
+    PeerlessWeapon1 = 16,//缁濅笘姝﹀櫒
+    PeerlessWeapon2 = 17,//缁濅笘鍓墜
 
     Mount = 19,              //褰撳墠鐨勫潗楠�
 

--
Gitblit v1.8.0