zhangyuqian 11 сар өмнө
parent
commit
a2d2003457
20 өөрчлөгдсөн 353 нэмэгдсэн , 58 устгасан
  1. 1 0
      GameClient/Assets/Game/HotUpdate/Data/FieldWorkDataManager.cs
  2. 3 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Arena/UI_ArenaDressInfoUI.cs
  3. 71 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/FieldWork/UI_Component1.cs
  4. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/FieldWork/UI_Component1.cs.meta
  5. 71 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/FieldWork/UI_Component2.cs
  6. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/FieldWork/UI_Component2.cs.meta
  7. 10 3
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/FieldWork/UI_FieldWorkLevelInfoUI.cs
  8. 4 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/FieldWork/UI_FieldWorkRoundResultUI.cs
  9. 19 14
      GameClient/Assets/Game/HotUpdate/ServerProxy/FieldWorkSproxy.cs
  10. 20 2
      GameClient/Assets/Game/HotUpdate/Views/Arena/ArenaDressInfoView.cs
  11. 1 1
      GameClient/Assets/Game/HotUpdate/Views/DressUp/ArenaDressUpFightView.cs
  12. 26 1
      GameClient/Assets/Game/HotUpdate/Views/FieldWork/FieldWorkDressFIghtView.cs
  13. 9 8
      GameClient/Assets/Game/HotUpdate/Views/FieldWork/FieldWorkLevelInfoView.cs
  14. 60 19
      GameClient/Assets/Game/HotUpdate/Views/FieldWork/FieldWorkLevelView.cs
  15. 18 1
      GameClient/Assets/Game/HotUpdate/Views/FieldWork/FieldWorkRoundResultView.cs
  16. 5 5
      GameClient/Assets/Game/HotUpdate/Views/InstanceZones/InstanceZonesView.cs
  17. 9 3
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryCardChoose.cs
  18. 4 1
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryFightSingleScoreView.cs
  19. BIN
      GameClient/Assets/ResIn/UI/Arena/Arena_fui.bytes
  20. BIN
      GameClient/Assets/ResIn/UI/FieldWork/FieldWork_fui.bytes

+ 1 - 0
GameClient/Assets/Game/HotUpdate/Data/FieldWorkDataManager.cs

@@ -44,6 +44,7 @@ namespace GFGGame
         public int currentLevelID = 0;
         public List<string> nameList = new List<string>() 
         {"壹","贰","叄","肆","伍","陆","柒","捌","玖","拾","拾壹","终"};
+        public int guideLevelID = 100005009;
         /// <summary>
         /// 更新战斗结算总分,含胜负
         /// </summary>

+ 3 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Arena/UI_ArenaDressInfoUI.cs

@@ -24,6 +24,7 @@ namespace UI.Arena
         public UI_BtnTab3 m_btn2;
         public GButton m_btnDress;
         public GButton m_btnRecommend;
+        public GButton m_btnConfire;
         public const string URL = "ui://4lc5fhlbpsph1";
         public const string PACKAGE_NAME = "Arena";
         public const string RES_NAME = "ArenaDressInfoUI";
@@ -88,6 +89,7 @@ namespace UI.Arena
             m_btn2 = (UI_BtnTab3)UI_BtnTab3.Create(comp.GetChild("btn2"));
             m_btnDress = (GButton)comp.GetChild("btnDress");
             m_btnRecommend = (GButton)comp.GetChild("btnRecommend");
+            m_btnConfire = (GButton)comp.GetChild("btnConfire");
         }
         public void Dispose(bool disposeTarget = false)
         {
@@ -114,6 +116,7 @@ namespace UI.Arena
             m_btn2 = null;
             m_btnDress = null;
             m_btnRecommend = null;
+            m_btnConfire = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 71 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/FieldWork/UI_Component1.cs

@@ -0,0 +1,71 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.FieldWork
+{
+    public partial class UI_Component1
+    {
+        public GComponent target;
+        public GLoader m_guideTarget;
+        public const string URL = "ui://efym480mbc2226";
+        public const string PACKAGE_NAME = "FieldWork";
+        public const string RES_NAME = "Component1";
+        private static UI_Component1 _proxy;
+
+        public static UI_Component1 Create(GObject gObject = null)
+        {
+            var ui = new UI_Component1();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_Component1 Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_Component1();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_guideTarget = (GLoader)comp.GetChild("guideTarget");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_guideTarget = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/FieldWork/UI_Component1.cs.meta

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

+ 71 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/FieldWork/UI_Component2.cs

@@ -0,0 +1,71 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.FieldWork
+{
+    public partial class UI_Component2
+    {
+        public GComponent target;
+        public GLoader m_guide;
+        public const string URL = "ui://efym480mbc2227";
+        public const string PACKAGE_NAME = "FieldWork";
+        public const string RES_NAME = "Component2";
+        private static UI_Component2 _proxy;
+
+        public static UI_Component2 Create(GObject gObject = null)
+        {
+            var ui = new UI_Component2();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_Component2 Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_Component2();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_guide = (GLoader)comp.GetChild("guide");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_guide = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/FieldWork/UI_Component2.cs.meta

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

+ 10 - 3
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/FieldWork/UI_FieldWorkLevelInfoUI.cs

@@ -11,8 +11,10 @@ namespace UI.FieldWork
         public GLoader m_loaderHead;
         public GTextField m_txtTargetName;
         public GTextField m_txtTitle;
-        public GTextField m_txtHighestScore;
+        public GTextField m_targetScore;
         public GLoader m_scoreType;
+        public GTextField m_txtHighestScore;
+        public UI_Component1 m_guideTarget;
         public GList m_listBonus;
         public GButton m_btnStart;
         public UI_Button1 m_btnSkip;
@@ -68,8 +70,10 @@ namespace UI.FieldWork
             m_loaderHead = (GLoader)comp.GetChild("loaderHead");
             m_txtTargetName = (GTextField)comp.GetChild("txtTargetName");
             m_txtTitle = (GTextField)comp.GetChild("txtTitle");
-            m_txtHighestScore = (GTextField)comp.GetChild("txtHighestScore");
+            m_targetScore = (GTextField)comp.GetChild("targetScore");
             m_scoreType = (GLoader)comp.GetChild("scoreType");
+            m_txtHighestScore = (GTextField)comp.GetChild("txtHighestScore");
+            m_guideTarget = (UI_Component1)UI_Component1.Create(comp.GetChild("guideTarget"));
             m_listBonus = (GList)comp.GetChild("listBonus");
             m_btnStart = (GButton)comp.GetChild("btnStart");
             m_btnSkip = (UI_Button1)UI_Button1.Create(comp.GetChild("btnSkip"));
@@ -81,8 +85,11 @@ namespace UI.FieldWork
             m_loaderHead = null;
             m_txtTargetName = null;
             m_txtTitle = null;
-            m_txtHighestScore = null;
+            m_targetScore = null;
             m_scoreType = null;
+            m_txtHighestScore = null;
+            m_guideTarget.Dispose();
+            m_guideTarget = null;
             m_listBonus = null;
             m_btnStart = null;
             m_btnSkip.Dispose();

+ 4 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/FieldWork/UI_FieldWorkRoundResultUI.cs

@@ -10,6 +10,7 @@ namespace UI.FieldWork
         public UI_ComAllScoreResult m_ComResult;
         public GList m_list;
         public GLoader m_loaResule;
+        public UI_Component2 m_guide;
         public const string URL = "ui://efym480mo8tww";
         public const string PACKAGE_NAME = "FieldWork";
         public const string RES_NAME = "FieldWorkRoundResultUI";
@@ -60,6 +61,7 @@ namespace UI.FieldWork
             m_ComResult = (UI_ComAllScoreResult)UI_ComAllScoreResult.Create(comp.GetChild("ComResult"));
             m_list = (GList)comp.GetChild("list");
             m_loaResule = (GLoader)comp.GetChild("loaResule");
+            m_guide = (UI_Component2)UI_Component2.Create(comp.GetChild("guide"));
         }
         public void Dispose(bool disposeTarget = false)
         {
@@ -67,6 +69,8 @@ namespace UI.FieldWork
             m_ComResult = null;
             m_list = null;
             m_loaResule = null;
+            m_guide.Dispose();
+            m_guide = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 19 - 14
GameClient/Assets/Game/HotUpdate/ServerProxy/FieldWorkSproxy.cs

@@ -120,7 +120,7 @@ namespace GFGGame
                         }
                         else
                         {
-                            PromptController.Instance.ShowFloatTextPrompt("已通过,自动清除服装,保留卡牌!");
+                            PromptController.Instance.ShowFloatTextPrompt("已通过,自动清除搭配!");
                             FieldWorkDataManager.Instance.CimbingTowerLevelInfoList.Add(response.CimbingTowerLevelInfo.LevelId, response.CimbingTowerLevelInfo);
                         }
 
@@ -129,22 +129,22 @@ namespace GFGGame
                        for(int i=0;i<FieldWorkDataManager.Instance.DressupList.Count;i++)
                        {
                             FieldWorkDataManager.Instance.DressupList[i].itemList.Clear();
-                            foreach(var item in FieldWorkDataManager.Instance.CardAbrasionInfoList)
-                            {
-                                if(item.Card == FieldWorkDataManager.Instance.DressupList[i].cardId)
-                                {
-                                    if(item.UseNum >= limit)
-                                    {
+                            //foreach(var item in FieldWorkDataManager.Instance.CardAbrasionInfoList)
+                            //{
+                            //    if(item.Card == FieldWorkDataManager.Instance.DressupList[i].cardId)
+                            //    {
+                            //        if(item.UseNum >= limit)
+                            //        {
                                         FieldWorkDataManager.Instance.DressupList[i].cardId = 0;
                                         isDelete = true;
-                                    }
-                                }
-                            }                          
-                       }
-                       if(isDelete)
-                       {
-                            PromptController.Instance.ShowFloatTextPrompt("词牌磨损率过高已自动解除佩戴!");
+                                //    }
+                                //}
+                            //}                          
                        }
+                       //if(isDelete)
+                       //{
+                       //     PromptController.Instance.ShowFloatTextPrompt("词牌磨损率过高已自动解除佩戴!");
+                       //}
                         FieldWorkDataManager.Instance.BonusList = response.BonusList;
                         EventAgent.DispatchEvent(ConstMessage.FieldWork_StateCHANGE);
                         return true;
@@ -207,6 +207,11 @@ namespace GFGGame
                             FieldWorkDataManager.Instance.CimbingTowerLevelInfoList.Add(item.LevelId, item);
                         }
                     }
+                    for (int i = 0; i < FieldWorkDataManager.Instance.DressupList.Count; i++)
+                    {
+                        FieldWorkDataManager.Instance.DressupList[i].itemList.Clear();
+                        FieldWorkDataManager.Instance.DressupList[i].cardId = 0;
+                    }
                     EventAgent.DispatchEvent(ConstMessage.FieldWork_StateCHANGE);
                     return true;
                 }

+ 20 - 2
GameClient/Assets/Game/HotUpdate/Views/Arena/ArenaDressInfoView.cs

@@ -55,6 +55,7 @@ namespace GFGGame
 
             _ui.m_c2.onChanged.Add(OnThemeChange);
             _ui.m_btnBack.onClick.Add(OnClickBtnBack);
+            _ui.m_btnConfire.onClick.Add(OnClickConfire);
             _ui.m_btnDress.onClick.Add(OnBtnDressClick);
             _ui.m_btnRecommend.onClick.Add(OnBtnRecommendClick);
             _ui.m_comValueInfo.m_btnFightScoreRule.onClick.Add(OnBtnFightScoreRule);
@@ -113,6 +114,10 @@ namespace GFGGame
         {
             //ViewManager.GoBackFrom(typeof(ArenaDressInfoView).FullName); //返回竞技场主界面
             this.Hide();
+            if (_roleType == FightRoleType.FieldWork)
+            {
+                ViewManager.Show<FieldWorkLevelInfoView>(new object[] { FieldWorkDataManager.Instance.currentLevelID });
+            }           
             //this.OnHide();
             //ViewManager.Show<ArenaView>(null, new object[] { typeof(MainUIView).FullName, this.viewData });
             //if (!string.IsNullOrEmpty(_openViewName))
@@ -120,7 +125,14 @@ namespace GFGGame
             //    ViewManager.Show(_openViewName); //打开来源界面:如历史记录、排行榜
             //}
         }
-
+        private void OnClickConfire()
+        {
+            ViewManager.GoBackFrom(typeof(ArenaDressInfoView).FullName);
+            if (_roleType == FightRoleType.FieldWork)
+            {
+                ViewManager.Show<FieldWorkLevelInfoView>(new object[] { FieldWorkDataManager.Instance.currentLevelID });
+            }
+        }
         private void OnThemeChange()
         {
             _themeIndex = _ui.m_c2.selectedIndex;
@@ -315,7 +327,8 @@ namespace GFGGame
 
         private void CheckGuide(object param)
         {
-            if (GuideDataManager.IsGuideFinish(ConstGuideId.ARENA_OPEN) <= 0)
+            if (GuideDataManager.IsGuideFinish(ConstGuideId.ARENA_OPEN) <= 0
+                ||(GuideDataManager.IsGuideFinish(ConstGuideId.FIELD) <= 0 && InstanceZonesDataManager.FightScene == ConstInstanceZonesType.FieldWork && InstanceZonesDataManager.CheckLevelPass(FieldWorkDataManager.Instance.guideLevelID)))
             {
                 UpdateToCheckGuide(null);
             }
@@ -331,6 +344,11 @@ namespace GFGGame
 
             GuideController.TryGuide(_ui.m_btnRecommend, ConstGuideId.ARENA_OPEN, 6, "");
             GuideController.TryGuide(_ui.m_btnBack, ConstGuideId.ARENA_OPEN, 7, "搭配好啦,挑个对手比拼吧~");
+            if((GuideDataManager.IsGuideFinish(ConstGuideId.FIELD) <= 0 && InstanceZonesDataManager.FightScene == ConstInstanceZonesType.FieldWork))
+            {
+                GuideController.TryGuide(_ui.m_btnDress, ConstGuideId.FIELD, 6, "三套战斗方案可自由搭配且在同一关卡中服装可重复使用,让我们前往搭配吧!");
+                GuideController.TryGuide(_ui.m_btnBack, ConstGuideId.FIELD, 12, "返回!");
+            }
         }
 
         protected override void TryCompleteGuide()

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Views/DressUp/ArenaDressUpFightView.cs

@@ -160,6 +160,7 @@ namespace GFGGame
             SendLog();
 
             cardId = _roleData.cardId;
+
         }
 
         protected override void OnHide()
@@ -1000,6 +1001,5 @@ namespace GFGGame
         {
 
         }
-
     }
 }

+ 26 - 1
GameClient/Assets/Game/HotUpdate/Views/FieldWork/FieldWorkDressFIghtView.cs

@@ -160,6 +160,8 @@ namespace GFGGame
             SendLog();
 
             cardId = _roleData.cardId;
+
+            Timers.inst.AddUpdate(CheckGuide);
         }
 
         protected override void OnHide()
@@ -520,7 +522,7 @@ namespace GFGGame
             else
             {
                 List<long> fightScoreDatas = ArenaDataManager.Instance.GetFightScoreList(ArenaDataManager.Instance.DressupList);
-                bool result = await ArenaSproxy.ReqChangeArenaDressup(_dataManager.SelectThemeIndex, 0, MyDressUpHelper.dressUpObj.itemList, fightScoreDatas);
+                bool result = await FieldWorkSproxy.ReqChangeFieldWorkDressupOne(_dataManager.SelectThemeIndex, 0, MyDressUpHelper.dressUpObj.itemList);
                 if (result)
                 {
                     _itemList = new List<int>(MyDressUpHelper.dressUpObj.itemList);
@@ -1069,6 +1071,29 @@ namespace GFGGame
         {
 
         }
+        private void CheckGuide(object param)
+        {
+            if ((GuideDataManager.IsGuideFinish(ConstGuideId.FIELD) <= 0
+                && InstanceZonesDataManager.FightScene == ConstInstanceZonesType.FieldWork
+                && InstanceZonesDataManager.CheckLevelPass(FieldWorkDataManager.Instance.guideLevelID)))
+            {
+                UpdateToCheckGuide(null);
+            }
+            else
+            {
+                Timers.inst.Remove(CheckGuide);
+            }
+        }
 
+        protected override void UpdateToCheckGuide(object param)
+        {
+            if (!ViewManager.CheckIsTopView(this.viewCom)) return;
+            if ((GuideDataManager.IsGuideFinish(ConstGuideId.FIELD) <= 0 && InstanceZonesDataManager.FightScene == ConstInstanceZonesType.FieldWork))
+            {
+                GuideController.TryGuide(_ui.m_comListType1.m_listType, ConstGuideId.FIELD, 7, "选择服装进行战斗吧!", 1);
+                GuideController.TryGuide(_ui.m_partsList.m_list, ConstGuideId.FIELD, 8, "选择服装进行战斗吧!", 0);
+                GuideController.TryGuide(_ui.m_btnNext, ConstGuideId.FIELD, 9, "下一步!");
+            }
+        }
     }
 }

+ 9 - 8
GameClient/Assets/Game/HotUpdate/Views/FieldWork/FieldWorkLevelInfoView.cs

@@ -49,6 +49,7 @@ namespace GFGGame
             FieldWorkDataManager.Instance.SetDataScoreType();
             InstanceZonesDataManager.FightScene = ConstInstanceZonesType.FieldWork;
             FieldWorkDataManager.Instance.CurFightIndex = 0;
+            FieldWorkDataManager.Instance.currentLevelID = _levelID;
             UpDressdate();
             UpdateView();
             Timers.inst.AddUpdate(CheckGuide);
@@ -75,6 +76,8 @@ namespace GFGGame
             _ui.m_loaderHead.url = ResPathUtil.GetNpcHeadPath("self");
             _ui.m_txtHighestScore.text = FieldWorkDataManager.Instance.GetHeihtScore(_levelID);
             _ui.m_txtTitle.text = levelCfg.name;
+            _ui.m_scoreType.url = "ui://CommonGame/kp_sx_" + levelCfg.scoreType;
+            _ui.m_targetScore.text = levelCfg.ClearanceScore.ToString();
             _ui.m_cardList.numItems = 3;
             //只有首通奖励
             bool once = true;
@@ -144,7 +147,7 @@ namespace GFGGame
             {
                 item.m_c1.selectedIndex = 1;
                 ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(cardId);
-                item.m_txtCardName.text = itemCfg.name;
+                item.m_txtCardName.text = "我的搭配";
                 item.m_comCard.m_loaCard.url = ResPathUtil.GetCardIconPath(itemCfg.res);
                 item.m_loaScore.url = ResPathUtil.GetScorePath(itemCfg.mainScore);
                 RarityIconController.UpdateRarityIcon(item.m_loaRarity, cardId, false);
@@ -160,10 +163,6 @@ namespace GFGGame
         }
         private void OnClickCardList(EventContext context)
         {
-            if (GuideDataManager.IsGuideFinish(ConstGuideId.FIELD) <= 0)
-            {
-                return;
-            }
             GObject obj = context.sender as GObject;
             int index = (int)obj.data;
             FieldWorkDataManager.Instance.SelectThemeIndex = index;
@@ -172,8 +171,8 @@ namespace GFGGame
         }
         private void OnClickBtnStart()
         {
-            //判断是否搭配了三套衣服和词牌
             FieldWorkDataManager.Instance.currentLevelID = _levelID;
+            //判断是否搭配了三套衣服和词牌
             if (FieldWorkDataManager.Instance.SetCanStart())
             {
                 UpDressdate();
@@ -197,6 +196,7 @@ namespace GFGGame
             {
                 FieldWorkDataManager.Instance.myScore.Clear();
                 FieldWorkDataManager.Instance.GetFightResult();
+                this.Hide();
                 ViewManager.Show<FieldWorkRoundResultView>();
             }
             else
@@ -218,8 +218,9 @@ namespace GFGGame
         protected override void UpdateToCheckGuide(object param)
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
-            GuideController.TryGuide(_ui.m_cardList, ConstGuideId.FIELD, 4, "点击选择搭配!挑战成功的衣服本周不可使用!",0);
-            GuideController.TryCompleteGuide(ConstGuideId.FIELD, 4);
+            GuideController.TryGuide(_ui.m_guideTarget.target, ConstGuideId.FIELD, 4, "在这里可以看见过关要求!");
+            GuideController.TryGuide(_ui.m_cardList, ConstGuideId.FIELD, 5, "搭配多套服装和词牌可以得到更高的分数!", 0);
+            GuideController.TryGuide(_ui.m_btnStart, ConstGuideId.FIELD, 13, "开始挑战!");
         }
     }
 }

+ 60 - 19
GameClient/Assets/Game/HotUpdate/Views/FieldWork/FieldWorkLevelView.cs

@@ -79,10 +79,7 @@ namespace GFGGame
             yield return new WaitForSeconds(0.1f);
             if (gamey != null)
             {
-                int levelCount = CimbingTowerLevelCfgArray.Instance.dataArray.Length - FieldWorkDataManager.Instance.CimbingTowerLevelInfoList.Count;
-                indexY = 212.0f * Mathf.Max(0, (float)levelCount);
-                _ui.m_chapter.m_compChapterScroll.target.y = 0;
-                gamey.transform.position = new Vector3(0, indexY, 0);
+                //gamey.transform.position = new Vector3(0, indexY, 0);
             }
         }
 
@@ -113,8 +110,10 @@ namespace GFGGame
                 levelItem.target.onClick.Add(OnClickLevelItem);
                 UI_CompStoryLevelItem.ProxyEnd();
             }
-            Timers.inst.StartCoroutine(InitChapter());
-            _ui.m_chapter.m_compChapterScroll.target.y = 1;
+            //Timers.inst.StartCoroutine(InitChapter());
+            int levelCount = CimbingTowerLevelCfgArray.Instance.dataArray.Length - FieldWorkDataManager.Instance.CimbingTowerLevelInfoList.Count;
+            indexY = 200.0f * Mathf.Max(0, (float)levelCount);
+            _ui.m_chapter.target.scrollPane.posY = indexY;
         }
         private void OnClickLevelItem(EventContext context)
         {
@@ -125,6 +124,17 @@ namespace GFGGame
                 PromptController.Instance.ShowFloatTextPrompt("请通过前置关卡");
                 return;
             }
+            else
+            {
+                if(FieldWorkDataManager.Instance.CimbingTowerLevelInfoList.ContainsKey(levelCfgId))
+                {
+                    if(FieldWorkDataManager.Instance.CimbingTowerLevelInfoList[levelCfgId].IsPass)
+                    {
+                        PromptController.Instance.ShowFloatTextPrompt("关卡已通过!");
+                        return;
+                    }
+                }
+            }
             UI_CompStoryLevelItem.ProxyEnd();
             ViewManager.Show<FieldWorkLevelInfoView>(new object[] { levelCfgId });
         }
@@ -156,34 +166,63 @@ namespace GFGGame
         {
             ViewManager.Show<StoreView>(new object[] { ConstStoreTabId.STORE_EXCHANGE, 3 });
         }
-        private async void OnClickBtnReSet()
+        private void OnClickBtnReSet()
         {
             if (GuideDataManager.IsGuideFinish(ConstGuideId.FIELD) <= 0)
             {
                 return;
             }
-            bool result = await FieldWorkSproxy.ReqFieldWorkReset();
-            if (result)
+            if (FieldWorkDataManager.Instance.CimbingTowerLevelInfoList.Count == 0)
             {
-                UpdateLevel();
-                PromptController.Instance.ShowFloatTextPrompt("重置成功!");
+                PromptController.Instance.ShowFloatTextPrompt("本周暂未参与该玩法,无法使用此功能!");
+                return;
             }
             else
             {
-                PromptController.Instance.ShowFloatTextPrompt("没有重置次数!");
+                AlertUI.Show("重置后当前关卡进度将被清空,每周可使用一次,是否重置?")
+                .SetLeftButton(true, "否").SetRightButton(true, "是", async (object data) =>
+                {
+                    bool result = await FieldWorkSproxy.ReqFieldWorkReset();
+                    if (result)
+                    {
+                        UpdateLevel();
+                        PromptController.Instance.ShowFloatTextPrompt("重置成功!");
+                    }
+                    else
+                    {
+                        PromptController.Instance.ShowFloatTextPrompt("没有重置次数!");
+                    }
+                });
             }
         }
-        private async void OnClickBtnSkip()
+        private void OnClickBtnSkip()
         {
-            bool result = await FieldWorkSproxy.ReqFieldWorkOneClickPass();
-            if (result)
+            int normal = CimbingTowerCfgArray.Instance.dataArray[0].ClearanceLimit;
+            int vip = CimbingTowerCfgArray.Instance.dataArray[0].VipClearanceLimit;
+            if (RoleDataManager.CheckIsMonthCardOpenByType(1) || RoleDataManager.CheckIsMonthCardOpenByType(1))
             {
-                UpdateLevel();
-                PromptController.Instance.ShowFloatTextPrompt("跳过成功!");
+                if(FieldWorkDataManager.Instance.CimbingTowerLevelInfoList.Count > vip)
+                {
+                    PromptController.Instance.ShowFloatTextPrompt("通关数量已超过最大可通关数量!");
+                    return;
+                }
             }
             else
             {
-                PromptController.Instance.ShowFloatTextPrompt("每周仅一次!");
+                AlertUI.Show("一键通关不消耗服装和词牌的使用次数,每周可使用一次,是否快速通关?")
+                .SetLeftButton(true, "否").SetRightButton(true, "是", async (object data) =>
+                {
+                    bool result = await FieldWorkSproxy.ReqFieldWorkOneClickPass();
+                    if (result)
+                    {
+                        UpdateLevel();
+                        PromptController.Instance.ShowFloatTextPrompt("跳过成功!");
+                    }
+                    else
+                    {
+                        PromptController.Instance.ShowFloatTextPrompt("暂未满足通关要求,无法使用此功能!");
+                    }
+                });
             }
         }
         private void CheckGuide(object param)
@@ -200,8 +239,10 @@ namespace GFGGame
         protected override void UpdateToCheckGuide(object param)
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
-            GuideController.TryGuide(_ui.m_resetBtn.target, ConstGuideId.FIELD, 2, "可重置关卡数据,每周一次!");            
+            GuideController.TryGuide(_ui.m_listTag, ConstGuideId.FIELD, 2, "每周主题标签将会获得额外的属性加成!");          
             GuideController.TryGuide(objGuide, ConstGuideId.FIELD, 3, "点击开始挑战!");
+            GuideController.TryGuide(_ui.m_resetBtn.target, ConstGuideId.FIELD, 15, "每周一5:00可以获得一次重置的机会,若遇到困难时可以考虑重置后再试试哦!", -1, true, _ui.target.height - 600);
+            GuideController.TryCompleteGuide(ConstGuideId.FIELD, 15);
         }
     }
 }

+ 18 - 1
GameClient/Assets/Game/HotUpdate/Views/FieldWork/FieldWorkRoundResultView.cs

@@ -91,7 +91,7 @@ namespace GFGGame
             {
                 Timers.inst.Add(1, 1, StartNextRound);
             }
-
+            Timers.inst.AddUpdate(CheckGuide);
         }
 
         protected override void OnHide()
@@ -146,5 +146,22 @@ namespace GFGGame
                 dataManager.BonusList.Clear();
             }
         }
+
+        private void CheckGuide(object param)
+        {
+            if (GuideDataManager.IsGuideFinish(ConstGuideId.FIELD) <= 0 && isFinallyFight)
+            {
+                UpdateToCheckGuide(null);
+            }
+            else
+            {
+                Timers.inst.Remove(CheckGuide);
+            }
+        }
+        protected override void UpdateToCheckGuide(object param)
+        {
+            if (!ViewManager.CheckIsTopView(this.viewCom)) return;
+           GuideController.TryGuide(_ui.m_guide.target, ConstGuideId.FIELD, 14, "三轮累计的分数将决定关卡的通关与否!");
+        }
     }
 }

+ 5 - 5
GameClient/Assets/Game/HotUpdate/Views/InstanceZones/InstanceZonesView.cs

@@ -14,7 +14,7 @@ namespace GFGGame
         private EffectUI _effectUI1;
         private EffectUI _effectUI2;
         private EffectUI _effectUI3;
-        private int fieldWorkLockLevel = 100005009;
+        private int fieldWorkLockLevel = FieldWorkDataManager.Instance.guideLevelID;
 
         public override void Dispose()
         {
@@ -109,9 +109,9 @@ namespace GFGGame
                 || GuideDataManager.IsGuideFinish(ConstGuideId.STUDIO_FILING) <= 0
                 || GuideDataManager.IsGuideFinish("TimeTracingShowView") <= 0
                 || GuideDataManager.IsGuideFinish("ClothingSelectView") <= 0
-                //|| (GuideDataManager.IsGuideFinish("DAPEISAI_1") <=0 && MatchingCompetitionDataManager.Instance.MatchingState == 1 && MatchingCompetitionDataManager.Instance.MatchingCompetitionSeason != 0 && InstanceZonesDataManager.CheckLevelPass(100003004))
-                //|| (GuideDataManager.IsGuideFinish("DAPEISAI_2") <= 0 && MatchingCompetitionDataManager.Instance.MatchingState == 2 && MatchingCompetitionDataManager.Instance.MatchingCompetitionSeason != 0 && InstanceZonesDataManager.CheckLevelPass(100003004))
-                || (GuideDataManager.IsGuideFinish(ConstGuideId.FIELD) <= 0 && InstanceZonesDataManager.CheckLevelPass(100005009)))
+                || (GuideDataManager.IsGuideFinish("DAPEISAI_1") <=0 && MatchingCompetitionDataManager.Instance.MatchingState == 1 && MatchingCompetitionDataManager.Instance.MatchingCompetitionSeason != 0 && InstanceZonesDataManager.CheckLevelPass(100003004))
+                || (GuideDataManager.IsGuideFinish("DAPEISAI_2") <= 0 && MatchingCompetitionDataManager.Instance.MatchingState == 2 && MatchingCompetitionDataManager.Instance.MatchingCompetitionSeason != 0 && InstanceZonesDataManager.CheckLevelPass(100003004))
+                || (GuideDataManager.IsGuideFinish(ConstGuideId.FIELD) <= 0 && InstanceZonesDataManager.CheckLevelPass(FieldWorkDataManager.Instance.guideLevelID)))
             {
                 UpdateToCheckGuide(null);
             }
@@ -218,7 +218,7 @@ namespace GFGGame
             //_ui.m_loaGuidestudio.visible = false;
             GuideController.TryGuide(_ui.m_instance.m_btnStudio.target, ConstGuideId.STUDIO_PORCELAIN, 3, "工作室开门啦,进去看看~");
             GuideController.TryGuide(_ui.m_instance.m_btnStudio.target, ConstGuideId.STUDIO_FILING, 3, "工作室有新的任务啦。");
-            if (GuideDataManager.IsGuideFinish(ConstGuideId.FIELD) <= 0 && InstanceZonesDataManager.CheckLevelPass(100005009))
+            if (GuideDataManager.IsGuideFinish(ConstGuideId.FIELD) <= 0 && InstanceZonesDataManager.CheckLevelPass(FieldWorkDataManager.Instance.guideLevelID))
             {
                 GuideController.TryGuide(_ui.m_instance.m_btnFieldWork.target, ConstGuideId.FIELD, 1, "外出进行考察,会有意想不到的收获哦。");
             }

+ 9 - 3
GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryCardChoose.cs

@@ -376,8 +376,7 @@ namespace GFGGame
                 FieldWorkSproxy.ReqChangeFieldWorkDressupOne(dataManager.SelectThemeIndex, cardId, MyDressUpHelper.dressUpObj.itemList).Coroutine();
                 if (InstanceZonesDataManager.FightScene == ConstInstanceZonesType.FieldWork)
                 {
-                    //ViewManager.GoBackFrom(typeof(ArenaDressUpFightView).FullName);
-                    ViewManager.Show<ArenaDressInfoView>(new object[] { FightRoleType.FieldWork, 0, dataManager.DressupList, "" }, true);
+                    ViewManager.GoBackFrom(typeof(FieldWorkDressFightView).FullName);                  
                     PromptController.Instance.ShowFloatTextPrompt("保存成功");
                 }
             }
@@ -408,7 +407,8 @@ namespace GFGGame
 
         private void CheckGuide(object param)
         {
-            if (GuideDataManager.IsGuideFinish(ConstGuideId.SKILL_CARD_FIGHT) <= 0)
+            if (GuideDataManager.IsGuideFinish(ConstGuideId.SKILL_CARD_FIGHT) <= 0
+                || (GuideDataManager.IsGuideFinish(ConstGuideId.FIELD) <= 0 && InstanceZonesDataManager.FightScene == ConstInstanceZonesType.FieldWork && InstanceZonesDataManager.CheckLevelPass(FieldWorkDataManager.Instance.guideLevelID)))
             {
                 UpdateToCheckGuide(null);
             }
@@ -426,6 +426,12 @@ namespace GFGGame
                 _ui.m_btnCancel.y + _ui.m_btnCancel.height);
             GuideController.TryGuide(_ui.m_listCard, ConstGuideId.SKILL_CARD_FIGHT, 2, "选择一张合适的词牌,增加过关战斗力。", 0);
             GuideController.TryCompleteGuide(ConstGuideId.SKILL_CARD_FIGHT, 2);
+
+            if ((GuideDataManager.IsGuideFinish(ConstGuideId.FIELD) <= 0 && InstanceZonesDataManager.FightScene == ConstInstanceZonesType.FieldWork))
+            {
+                GuideController.TryGuide(_ui.m_listCard, ConstGuideId.FIELD, 10, "战斗结束时使用过的词牌会根据对应的关卡难度形成不同程度损耗关卡的难度合理搭配阵容!", 0);
+                GuideController.TryGuide(_ui.m_btnConfirm, ConstGuideId.FIELD, 11, "确认!");
+            }
         }
         private void AddEffect()
         {

+ 4 - 1
GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryFightSingleScoreView.cs

@@ -197,7 +197,6 @@ namespace GFGGame
             _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("zd_g_bg");
             if (InstanceZonesDataManager.FightScene == ConstInstanceZonesType.FieldWork)
             {
-                _ui.m_btnBack.visible = false;
                 FightDataManager.Instance.autoPlay = true;
             }
             if (!FightDataManager.Instance.autoPlay)
@@ -252,6 +251,10 @@ namespace GFGGame
                 _ui.m_btnBack.visible = true;
                 Timers.inst.Add(0.5f, 1, TryShowCardSkill);
             }
+            if (GuideDataManager.IsGuideFinish(ConstGuideId.FIELD) <= 0 && InstanceZonesDataManager.FightScene == ConstInstanceZonesType.FieldWork)
+            {
+                _ui.m_btnBack.visible = false;
+            }
             tryGuide = false;
             Timers.inst.AddUpdate(CheckGuide);
         }

BIN
GameClient/Assets/ResIn/UI/Arena/Arena_fui.bytes


BIN
GameClient/Assets/ResIn/UI/FieldWork/FieldWork_fui.bytes