zhaoyang 3 rokov pred
rodič
commit
4a9e98deef
36 zmenil súbory, kde vykonal 313 pridanie a 215 odobranie
  1. 5 2
      FGUIProject/assets/CommonGame/RewardUI.xml
  2. 1 1
      FGUIProject/assets/Guide/GuideUI.xml
  3. 8 0
      FGUIProject/assets/Guide/components/ComHolder.xml
  4. 1 0
      FGUIProject/assets/Guide/package.xml
  5. 2 0
      GameClient/Assets/Game/HotUpdate/Constant/ConstStorageId.cs
  6. 30 12
      GameClient/Assets/Game/HotUpdate/Controller/GameController.cs
  7. 21 28
      GameClient/Assets/Game/HotUpdate/Controller/GuideController.cs
  8. 5 5
      GameClient/Assets/Game/HotUpdate/Controller/LoginController.cs
  9. 30 61
      GameClient/Assets/Game/HotUpdate/Data/GuideDataManager.cs
  10. 1 1
      GameClient/Assets/Game/HotUpdate/Data/MainStoryDataManager.cs
  11. 1 1
      GameClient/Assets/Game/HotUpdate/Data/StorageDataManager.cs
  12. 71 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Guide/UI_ComHolder.cs
  13. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Guide/UI_ComHolder.cs.meta
  14. 4 3
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Guide/UI_GuideUI.cs
  15. 9 5
      GameClient/Assets/Game/HotUpdate/ServerProxy/StorageSProxy.cs
  16. 1 1
      GameClient/Assets/Game/HotUpdate/Views/Card/CardDetailView.cs
  17. 11 1
      GameClient/Assets/Game/HotUpdate/Views/ClothingShop/ClothingShopView.cs
  18. 1 1
      GameClient/Assets/Game/HotUpdate/Views/ClothingSynthetic/ClothingSyntheticView.cs
  19. 1 1
      GameClient/Assets/Game/HotUpdate/Views/ClothingSynthetic/SuitSyntheticView.cs
  20. 5 0
      GameClient/Assets/Game/HotUpdate/Views/Common/Alert/AlertWindow.cs
  21. 3 3
      GameClient/Assets/Game/HotUpdate/Views/CommonGame/ApproachOfItemView.cs
  22. 1 1
      GameClient/Assets/Game/HotUpdate/Views/CommonGame/GetBonusView.cs
  23. 2 2
      GameClient/Assets/Game/HotUpdate/Views/CommonGame/GetSuitItemVIew.cs
  24. 2 1
      GameClient/Assets/Game/HotUpdate/Views/DressUp/DressUpFightView.cs
  25. 1 1
      GameClient/Assets/Game/HotUpdate/Views/DressUp/DressUpView.cs
  26. 49 59
      GameClient/Assets/Game/HotUpdate/Views/Guide/GuideView.cs
  27. 4 4
      GameClient/Assets/Game/HotUpdate/Views/LuckyBox/LuckyBoxStarView.cs
  28. 1 1
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryCardChoose.cs
  29. 1 1
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryChapterView.cs
  30. 8 1
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryFightSingleScoreView.cs
  31. 6 2
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryFightTargetScoreView.cs
  32. 2 2
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryLevelInfoView.cs
  33. 9 9
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StroyFightResultView.cs
  34. 5 5
      GameClient/Assets/Game/HotUpdate/Views/MainUI/MainUIView.cs
  35. BIN
      GameClient/Assets/ResIn/UI/CommonGame/CommonGame_fui.bytes
  36. BIN
      GameClient/Assets/ResIn/UI/Guide/Guide_fui.bytes

+ 5 - 2
FGUIProject/assets/CommonGame/RewardUI.xml

@@ -6,14 +6,17 @@
     <image id="n1_m9wm" name="imgTitle" src="m9wm8r" fileName="images/gxhd_btbt.png" xy="0,300" group="n8_m9wm">
       <relation target="" sidePair="center-center"/>
     </image>
-    <list id="n6_m9wm" name="listReward" xy="91,730" size="898,248" group="n8_m9wm" layout="row" overflow="scroll" scroll="horizontal" colGap="91" defaultItem="ui://eg2y0ldpm9wm8u" align="center">
+    <list id="n6_m9wm" name="listReward" xy="95,730" size="889,580" group="n8_m9wm" layout="flow_hz" overflow="scroll" lineGap="60" colGap="91" defaultItem="ui://eg2y0ldpm9wm8u" align="center">
       <relation target="" sidePair="center-center"/>
       <item/>
       <item/>
       <item/>
       <item/>
+      <item/>
+      <item/>
+      <item/>
     </list>
-    <group id="n8_m9wm" name="grp" xy="0,300" size="1080,816" advanced="true"/>
+    <group id="n8_m9wm" name="grp" xy="0,300" size="1080,1010" advanced="true"/>
     <text id="n7_m9wm" name="n7" xy="430,1822" size="220,49" fontSize="36" color="#958163" text="点击屏幕继续">
       <relation target="" sidePair="bottom-bottom"/>
     </text>

+ 1 - 1
FGUIProject/assets/Guide/GuideUI.xml

@@ -7,6 +7,6 @@
     <component id="n15_tu96" name="rectFrame" src="tu96f" fileName="components/Component3.xml" xy="404,798" visible="false" touchable="false"/>
     <component id="n17_tu96" name="compTxt" src="tu96d" fileName="components/Component1.xml" xy="261,1099" touchable="false"/>
     <image id="n18_a5x3" name="rectFrameTemp" src="tu96c" fileName="images/yd_tykuang_2.png" xy="272,822" visible="false"/>
-    <graph id="n19_bd1c" name="holder" xy="400,1285" size="100,100" touchable="false"/>
+    <component id="n19_bd1c" name="comHolder" src="axdii" fileName="components/ComHolder.xml" xy="400,1285" touchable="false"/>
   </displayList>
 </component>

+ 8 - 0
FGUIProject/assets/Guide/components/ComHolder.xml

@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<component size="100,100">
+  <displayList>
+    <graph id="n19_bd1c" name="holder" xy="0,0" pivot="0.5,0.5" size="100,100" touchable="false">
+      <relation target="" sidePair="center-center,middle-middle"/>
+    </graph>
+  </displayList>
+</component>

+ 1 - 0
FGUIProject/assets/Guide/package.xml

@@ -11,6 +11,7 @@
     <component id="tu96e" name="Component2.xml" path="/components/"/>
     <component id="tu96f" name="Component3.xml" path="/components/"/>
     <image id="o139g" name="yd_tykuang_3.png" path="/images/"/>
+    <component id="axdii" name="ComHolder.xml" path="/components/"/>
   </resources>
   <publish name="Guide" path="..\GameClient\Assets\ResIn\UI\Guide" packageCount="2" genCode="true" extractAlpha="true">
     <atlas name="默认" index="0"/>

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

@@ -4,6 +4,8 @@ namespace GFGGame
     {
         public const int STORAGE_GUIDE = 10000;//引导起始Id,引导存储id:10000+引导编号id
 
+        public const int STORAGE_SKIP_GUIDE = 20000;//跳过引导,1跳过,2不跳过
+
 
     }
 }

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

@@ -1,6 +1,7 @@
 using FairyGUI;
 using UnityEngine;
 using ET;
+using System.Threading.Tasks;
 
 namespace GFGGame
 {
@@ -60,7 +61,7 @@ namespace GFGGame
             ViewManager.Show(ViewName.CREATE_ROLE_VIEW);
         }
 
-        public static void PreEnterGame()
+        public static async Task PreEnterGameAsync()
         {
             //RoleInfo roleInfo = null;
             GetSuitItemController.enable = false;
@@ -85,16 +86,31 @@ namespace GFGGame
             GFGUIPackage.AddPackage(ResPathUtil.GetUIPackagePath("CommonGame"));
             GFGUIPackage.AddPackage(ResPathUtil.GetUIPackagePath("Main"));
 
-            Alert.Show("是否跳过引导?如果您是第一次体验,建议不要跳过引导!")
-                    .SetLeftButton(true, "不用", (obj) =>
-                    {
-                        EnterGame();
-                    })
-                    .SetRightButton(true, "跳过", (obj) =>
-                    {
-                        GameGlobal.skipGuide = true;
-                        EnterGame();
-                    });
+
+            InstanceZonesSProxy.GetInstanceZonesInfos().Coroutine();
+            await StorageSProxy.ReqGetClientValues();
+
+            int skipGuide = StorageDataManager.Instance.GetStorageValue(ConstStorageId.STORAGE_SKIP_GUIDE);
+            if (skipGuide > 0)
+            {
+                if (skipGuide == 1) GameGlobal.skipGuide = true;
+                EnterGame();
+            }
+            else
+            {
+                Alert.Show("是否跳过引导?如果您是第一次体验,建议不要跳过引导!")
+                        .SetLeftButton(true, "不用", (obj) =>
+                        {
+                            EnterGame();
+                            StorageSProxy.ReqSetClientValue(ConstStorageId.STORAGE_SKIP_GUIDE, 2).Coroutine();
+                        })
+                        .SetRightButton(true, "跳过", (obj) =>
+                        {
+                            GameGlobal.skipGuide = true;
+                            EnterGame();
+                            StorageSProxy.ReqSetClientValue(ConstStorageId.STORAGE_SKIP_GUIDE, 1).Coroutine();
+                        });
+            }
         }
 
         public static void QuitToLoginView(bool logout)
@@ -111,6 +127,8 @@ namespace GFGGame
             PhotographDataManager.Instance.Clear();
             SkillDataManager.Instance.Clear();
             SuitFosterDataManager.Instance.Clear();
+            StudioDataManager.Instance.Clear();
+            StorageDataManager.Instance.Clear();
             if (logout)
             {
                 Logout();
@@ -165,8 +183,8 @@ namespace GFGGame
 
             ItemHelper.GetItemAttributeInfos().Coroutine();
             SuitFosterProxy.SendGetSuitInfos().Coroutine();
-            InstanceZonesSProxy.GetInstanceZonesInfos().Coroutine();
             MainStorySProxy.GetStoryInfos().Coroutine();
+
         }
 
         public static void PrepareUpdateTreasure()

+ 21 - 28
GameClient/Assets/Game/HotUpdate/Controller/GuideController.cs

@@ -4,6 +4,7 @@ using UI.Main;
 using System.Collections.Generic;
 using UnityEngine;
 using UI.ClothingSynthetic;
+using ET;
 
 namespace GFGGame
 {
@@ -26,30 +27,27 @@ namespace GFGGame
             bool isGuide = GameGlobal.skipGuide == false && !isAllGuideFinish;
             return isGuide;
         }
-        public static bool useNewGuide = true;
-        public static bool TryGuide(GObject target, string guideKey, int index, string guideStr = null, bool isList = false, int listIndex = 0, bool checkIndex = true, bool needUpdate = false, int yTxt = 0, float devWidth = 0, float devHeight = 0)
+
+        public static bool TryGuide(GObject target, string guideKey, int index, string guideStr = null, int listIndex = -1, bool checkPriorIndex = true, int yTxt = 0, float devWidth = 0, float devHeight = 0)
         {
-            if (!useNewGuide) return false;
 
             GuideCfg cfg = GuideCfgArray.Instance.GetCfg(guideKey);
 
-            if ((GuideDataManager.GetGuideCountCopy(guideKey) <= 0
-            && (cfg.priorId <= 0 || cfg.priorId > 0 && (GuideDataManager.GetGuideCountCopy(cfg.priorId) > 0))
-            && (!checkIndex || checkIndex && GuideDataManager.IsGuideIndexFinish(cfg.id, index - 1) == true && GuideDataManager.IsGuideIndexFinish(cfg.id, index) == false)
-            && (GuideDataManager.currentGuideId == 0 || GuideDataManager.currentGuideId == cfg.id && GuideDataManager.currentGuideIdIndex != index)
-            && (MainStoryDataManager.CurrentChapterOrder == 0 || MainStoryDataManager.CheckCurrentLevelPass() == false)
-            && InstanceZonesDataManager.CheckLevelPass(cfg.storyLevelId - 1)
-            && !InstanceZonesDataManager.CheckLevelPass(cfg.storyLevelId))
-            ||
-            (cfg.storyLevelId == 0
-            && GuideDataManager.GetGuideCountCopy(guideKey) <= 0
-            ))
+            bool isStoryLevelGuide = cfg.storyLevelId > 0;
+            bool isFinishCurId = StorageDataManager.Instance.GetStorageValue(ConstStorageId.STORAGE_GUIDE + cfg.id) > 0;//当前引导未完成
+            bool isFinishPriorId = cfg.priorId <= 0 || StorageDataManager.Instance.GetStorageValue(ConstStorageId.STORAGE_GUIDE + cfg.priorId) > 0;//前置引导已完成
+            bool isFinishCurIndex = GuideDataManager.IsGuideIndexFinish(cfg.id, index) == true;//当前index未完成
+            bool isFinishPriorIndex = !checkPriorIndex || checkPriorIndex && GuideDataManager.IsGuideIndexFinish(cfg.id, index - 1) == true;//前置index已完成
+            bool isCfgChapterOpen = MainStoryDataManager.CheckLevelUnlock(cfg.storyLevelId);//引导配置关卡已开启
+            bool isCfgChapter = MainStoryDataManager.currentLevelCfgId == 0 || MainStoryDataManager.currentLevelCfgId == cfg.storyLevelId;//无选择(进入游戏时无选择)或当前所选择为配置关卡
+
+            if (isStoryLevelGuide && !isFinishCurId && isFinishPriorId && !isFinishCurIndex && isFinishPriorIndex && isCfgChapterOpen && isCfgChapter || !isStoryLevelGuide && !isFinishCurId)
             {
                 GuideDataManager.currentGuideId = cfg.id;
                 GuideDataManager.currentGuideIdIndex = index;
 
                 GuideDataManager.SetGuideIndex(cfg.id, index);
-                if (isList)
+                if (listIndex >= 0)
                 {
 
                     if (target.asList.numItems > 0)
@@ -66,8 +64,8 @@ namespace GFGGame
                         return false;
                     }
                 }
-                ShowGuideByIndex(target, needUpdate, guideStr, yTxt, cfg.optionalGuide == 1, devWidth, devHeight, GuideDataManager.currentGuideId, GuideDataManager.currentGuideIdIndex);
-                if (!checkIndex)
+                ShowGuideByIndex(target, guideStr, yTxt, cfg.optionalGuide == 1, devWidth, devHeight, GuideDataManager.currentGuideId, GuideDataManager.currentGuideIdIndex);
+                if (!checkPriorIndex)
                 {
                     for (int i = 1; i < index; i++)
                     {
@@ -78,7 +76,7 @@ namespace GFGGame
             }
             return false;
         }
-        private static void ShowGuideByIndex(GObject target, bool needUpdate = false, string guideStr = null, int yTxt = 0, bool isOptionalGuide = false, float devWidth = 0, float devHeight = 0, int guideId = 0, int index = 0)
+        private static void ShowGuideByIndex(GObject target, string guideStr = null, int yTxt = 0, bool isOptionalGuide = false, float devWidth = 0, float devHeight = 0, int guideId = 0, int index = 0)
         {
             HideGuideIndex();
             if (GameGlobal.skipGuide)
@@ -86,39 +84,34 @@ namespace GFGGame
                 return;
             }
 
-            ViewManager.Show(ViewName.GUIDE_VIEW, new List<object> { target, needUpdate, guideStr, yTxt, isOptionalGuide, devWidth, devHeight, guideId, index });
+            ViewManager.Show(ViewName.GUIDE_VIEW, new List<object> { target, guideStr, yTxt, isOptionalGuide, devWidth, devHeight, guideId, index });
         }
         public static bool TryCompleteGuideIndex(int guideId, int index)
         {
-            if (!useNewGuide) return false;
 
             HideGuideIndex();
-            // bool result = GuideDataManager.TryCompleteGuideIndex(guideId, index);
             if (GuideDataManager.TryCompleteGuideIndex(guideId, index))
             {
                 return true;
             }
             return false;
         }
-        public static bool TryCompleteGuide(string guideKey, int count)
+        public static async void TryCompleteGuide(string guideKey, int count)
         {
-            if (!useNewGuide) return false;
 
             GuideCfg cfg = GuideCfgArray.Instance.GetCfg(guideKey);
+            bool result = false;
+            if (!GuideDataManager.CheckAllIndexFinish(cfg.id, count)) return;
 
-            if (!GuideDataManager.CheckAllIndexFinish(cfg.id, count)) return false;
-            bool result = GuideDataManager.TryCompleteGuide(cfg.id);
+            result = await GuideDataManager.TryCompleteGuide(cfg.id);
             if (result)
             {
                 GuideDataManager.currentGuideId = 0;
                 HideGuideIndex();
             }
-            return result;
         }
         public static void HideGuideIndex()
         {
-            if (!useNewGuide) return;
-
             ViewManager.Hide(ViewName.GUIDE_VIEW);
         }
     }

+ 5 - 5
GameClient/Assets/Game/HotUpdate/Controller/LoginController.cs

@@ -55,7 +55,7 @@ namespace GFGGame
             }
             else
             {
-                if(ErrorCodeController.Handler(errorCode))
+                if (ErrorCodeController.Handler(errorCode))
                 {
                     ViewManager.Show<LoginInputView>();
                 }
@@ -80,7 +80,7 @@ namespace GFGGame
         public static async ETTask GetServerInfos()
         {
             int errorCode = await LoginHelper.GetServerInfos(GameGlobal.zoneScene);
-            if(errorCode != ErrorCode.ERR_Success)
+            if (errorCode != ErrorCode.ERR_Success)
             {
                 ErrorCodeController.Handler(errorCode);
                 await ETTask.Create();
@@ -104,7 +104,7 @@ namespace GFGGame
         public static async ETTask GetRoles()
         {
             int errorCode = await LoginHelper.GetRoles(GameGlobal.zoneScene);
-            if(errorCode != ErrorCode.ERR_Success)
+            if (errorCode != ErrorCode.ERR_Success)
             {
                 ErrorCodeController.Handler(errorCode);
                 await ETTask.Create();
@@ -145,7 +145,7 @@ namespace GFGGame
         public static async ETTask ReqEnterGame()
         {
             int errorCode = await LoginHelper.GetRealmKey(GameGlobal.zoneScene);
-            if(errorCode != ErrorCode.ERR_Success)
+            if (errorCode != ErrorCode.ERR_Success)
             {
                 ErrorCodeController.Handler(errorCode);
                 return;
@@ -156,7 +156,7 @@ namespace GFGGame
                 ErrorCodeController.Handler(errorCode);
                 return;
             }
-            GameController.PreEnterGame();
+            await GameController.PreEnterGameAsync();
         }
     }
 }

+ 30 - 61
GameClient/Assets/Game/HotUpdate/Data/GuideDataManager.cs

@@ -1,15 +1,16 @@
 using System.Collections.Generic;
 using System.Linq;
+using ET;
 
 namespace GFGGame
 {
 
     public class GuideDataManager
     {
-        //public static int currentGuideId;
-        private static Dictionary<int, GuideData> _dataDic = new Dictionary<int, GuideData>();
-        //本次登录引导的id缓存
-        private static Dictionary<int, bool> _guideDicAtThisLogin = new Dictionary<int, bool>();
+        // //public static int currentGuideId;
+        // private static Dictionary<int, GuideData> _dataDic = new Dictionary<int, GuideData>();
+        // //本次登录引导的id缓存
+        // private static Dictionary<int, bool> _guideDicAtThisLogin = new Dictionary<int, bool>();
 
         private static Dictionary<int, Dictionary<int, int>> _guideDicIndex = new Dictionary<int, Dictionary<int, int>>();
         public static int _currentGuideId;
@@ -29,21 +30,21 @@ namespace GFGGame
 
 
 
-        public static void InitServerData(List<GuideData> list)
-        {
-            currentGuideId = 0;
-            _dataDic.Clear();
-            _guideDicAtThisLogin.Clear();
-            if (list != null)
-            {
-                foreach (GuideData data in list)
-                {
-                    _dataDic.Add(data.guideId, data);
-                }
-            }
-        }
+        // public static void InitServerData(List<GuideData> list)
+        // {
+        //     currentGuideId = 0;
+        //     _dataDic.Clear();
+        //     _guideDicAtThisLogin.Clear();
+        //     if (list != null)
+        //     {
+        //         foreach (GuideData data in list)
+        //         {
+        //             _dataDic.Add(data.guideId, data);
+        //         }
+        //     }
+        // }
 
-        public static bool TryCompleteGuide(int guideId)
+        public static async ETTask<bool> TryCompleteGuide(int guideId)
         {
             if (GameGlobal.skipGuide)
             {
@@ -51,36 +52,20 @@ namespace GFGGame
             }
             if (currentGuideId == guideId)
             {
-                GuideData guideData = null;
-                if (_dataDic.ContainsKey(guideId))
-                {
-                    guideData = _dataDic[guideId];
-                }
-                else
-                {
-                    guideData = new GuideData();
-                    guideData.guideId = guideId;
-                    guideData.count = 0;
-                    _dataDic.Add(guideId, guideData);
-                }
-                guideData.count++;
-                currentGuideId = 0;
-                GameProxy.ReqUpdateRoleGuide(guideData);
-                _guideDicAtThisLogin[guideId] = true;
-                return true;
+                return await StorageSProxy.ReqSetClientValue(ConstStorageId.STORAGE_GUIDE + guideId, 1);
             }
             return false;
         }
 
 
-        public static bool CheckGuideIsCompletedAtThisLogin(int guideId)
-        {
-            if (_guideDicAtThisLogin.ContainsKey(guideId))
-            {
-                return _guideDicAtThisLogin[guideId];
-            }
-            return false;
-        }
+        // public static bool CheckGuideIsCompletedAtThisLogin(int guideId)
+        // {
+        //     if (_guideDicAtThisLogin.ContainsKey(guideId))
+        //     {
+        //         return _guideDicAtThisLogin[guideId];
+        //     }
+        //     return false;
+        // }
 
         public static int _currentGuideIdIndex;
 
@@ -110,29 +95,13 @@ namespace GFGGame
 
         public static int GetGuideCountCopy(string guideKey)
         {
-            if (!GuideController.useNewGuide) return 1;
             if (GameGlobal.skipGuide) return 1;
 
             GuideCfg cfg = GuideCfgArray.Instance.GetCfg(guideKey);
-            if (_dataDic.ContainsKey(cfg.id))
-            {
-                GuideData guideData = _dataDic[cfg.id];
-                return guideData.count;
-            }
-            return 0;
-        }
-        public static int GetGuideCountCopy(int guideId)
-        {
-            if (!GuideController.useNewGuide) return 1;
-            if (GameGlobal.skipGuide) return 1;
+            return StorageDataManager.Instance.GetStorageValue(ConstStorageId.STORAGE_GUIDE + cfg.id);
 
-            if (_dataDic.ContainsKey(guideId))
-            {
-                GuideData guideData = _dataDic[guideId];
-                return guideData.count;
-            }
-            return 0;
         }
+
         public static bool TryCompleteGuideIndex(int guideId, int index, bool checkInde = true)
         {
 

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

@@ -89,7 +89,7 @@ namespace GFGGame
 
         public static bool CheckOpenMainUI()
         {
-            return InstanceZonesDataManager.CheckLevelPass(10004) && GuideDataManager.GetGuideCountCopy(ConstGuideId.SINGLE_FIGHT) > 0;
+            return InstanceZonesDataManager.CheckLevelPass(100001004) && GuideDataManager.GetGuideCountCopy(ConstGuideId.SINGLE_FIGHT) > 0;
         }
 
         //检查指定章节对应的普通章节是否通关

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

@@ -12,7 +12,7 @@ namespace GFGGame
         }
 
 
-        public void RspStorageInfo(int key, int value)
+        public void InitStorageInfo(int key, int value)
         {
             if (!_storangeInfoById.ContainsKey(key))
             {

+ 71 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Guide/UI_ComHolder.cs

@@ -0,0 +1,71 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.Guide
+{
+    public partial class UI_ComHolder
+    {
+        public GComponent target;
+        public GGraph m_holder;
+        public const string URL = "ui://vxxz0ya7axdii";
+        public const string PACKAGE_NAME = "Guide";
+        public const string RES_NAME = "ComHolder";
+        private static UI_ComHolder _proxy;
+
+        public static UI_ComHolder Create(GObject gObject = null)
+        {
+            var ui = new UI_ComHolder();
+            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_ComHolder Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ComHolder();
+            }
+            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_holder = (GGraph)comp.GetChild("holder");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_holder = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Guide/UI_ComHolder.cs.meta

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

+ 4 - 3
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Guide/UI_GuideUI.cs

@@ -11,7 +11,7 @@ namespace UI.Guide
         public UI_Component3 m_rectFrame;
         public UI_Component1 m_compTxt;
         public GImage m_rectFrameTemp;
-        public GGraph m_holder;
+        public UI_ComHolder m_comHolder;
         public const string URL = "ui://vxxz0ya7rpol4";
         public const string PACKAGE_NAME = "Guide";
         public const string RES_NAME = "GuideUI";
@@ -63,7 +63,7 @@ namespace UI.Guide
             m_rectFrame = (UI_Component3)UI_Component3.Create(comp.GetChild("rectFrame"));
             m_compTxt = (UI_Component1)UI_Component1.Create(comp.GetChild("compTxt"));
             m_rectFrameTemp = (GImage)comp.GetChild("rectFrameTemp");
-            m_holder = (GGraph)comp.GetChild("holder");
+            m_comHolder = (UI_ComHolder)UI_ComHolder.Create(comp.GetChild("comHolder"));
         }
         public void Dispose(bool disposeTarget = false)
         {
@@ -74,7 +74,8 @@ namespace UI.Guide
             m_compTxt.Dispose();
             m_compTxt = null;
             m_rectFrameTemp = null;
-            m_holder = null;
+            m_comHolder.Dispose();
+            m_comHolder = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 9 - 5
GameClient/Assets/Game/HotUpdate/ServerProxy/StorageSProxy.cs

@@ -9,7 +9,7 @@ namespace GFGGame
     {
 
         //存储
-        public static async ETTask ReqSetClientValue(int key, int value)
+        public static async ETTask<bool> ReqSetClientValue(int key, int value)
         {
             M2C_SetClientValue response = null;
             response = (M2C_SetClientValue)await MessageHelper.SendToServer(new C2M_SetClientValue() { Key = key, Value = value });
@@ -17,14 +17,15 @@ namespace GFGGame
             {
                 if (response.Error == ErrorCode.ERR_Success)
                 {
-
-
+                    StorageDataManager.Instance.InitStorageInfo(response.Key, response.Value);
+                    return true;
                 }
             }
+            return false;
         }
 
         //获取
-        public static async ETTask ReqGetClientValues(int chapterId, int buyType, int buyCount)
+        public static async ETTask ReqGetClientValues()
         {
             M2C_GetClientValues response = null;
             response = (M2C_GetClientValues)await MessageHelper.SendToServer(new C2M_GetClientValues() { });
@@ -32,7 +33,10 @@ namespace GFGGame
             {
                 if (response.Error == ErrorCode.ERR_Success)
                 {
-
+                    for (int i = 0; i < response.Ks.Count; i++)
+                    {
+                        StorageDataManager.Instance.InitStorageInfo(response.Ks[i], response.Vs[i]);
+                    }
                 }
             }
         }

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Views/Card/CardDetailView.cs

@@ -152,7 +152,7 @@ namespace GFGGame
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
 
-            GuideController.TryGuide(_ui.m_listCard, ConstGuideId.UP_CARD_STAR, 3, "选择可升星的词牌", true, 0);
+            GuideController.TryGuide(_ui.m_listCard, ConstGuideId.UP_CARD_STAR, 3, "选择可升星的词牌", 1);
         }
     }
 }

+ 11 - 1
GameClient/Assets/Game/HotUpdate/Views/ClothingShop/ClothingShopView.cs

@@ -127,6 +127,8 @@ namespace GFGGame
                         {
                             _selectedType = dataArray[i].typeIndex;
                             _selectedItemClothingId = dataArray[i].id;
+                            ShopCfg clothingShopCfg = ShopCfgClothingArray.Instance.GetCfg(_selectedItemClothingId);
+                            _ui.m_listType.selectedIndex = clothingShopCfg.typeIndex;
                             break;
                         }
                     }
@@ -273,7 +275,15 @@ namespace GFGGame
                 int itemIndex = 0;
                 if (_selectedItemId > 0 && clothingShopCfg != null)
                 {
-                    itemIndex = _dataList.IndexOf(clothingShopCfg);
+                    // itemIndex = _dataList.IndexOf(clothingShopCfg);
+                    for (int i = 0; i < _dataList.Count; i++)
+                    {
+                        if (_dataList[i].id == _selectedItemClothingId)
+                        {
+                            itemIndex = i;
+                            break;
+                        }
+                    }
                     _ui.m_listShop.ScrollToView(itemIndex < 0 ? 0 : itemIndex);
                     // _selectedItemId = 0;
                 }

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Views/ClothingSynthetic/ClothingSyntheticView.cs

@@ -374,7 +374,7 @@ namespace GFGGame
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
 
-            GuideController.TryGuide(_ui.m_listClothing, ConstGuideId.CLOTHING_SYNTHETIC, 8, "找到需要合成的物品", true, 0);
+            GuideController.TryGuide(_ui.m_listClothing, ConstGuideId.CLOTHING_SYNTHETIC, 8, "找到需要合成的物品", 0);
             if (_ui.m_listMaterias.numChildren > 0)
             {
                 listTypeItem_CloSynthetic = UI_MateriasListItem.Proxy(_ui.m_listMaterias.GetChildAt(0));

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Views/ClothingSynthetic/SuitSyntheticView.cs

@@ -183,7 +183,7 @@ namespace GFGGame
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
 
-            GuideController.TryGuide(_ui.m_listSuit, ConstGuideId.CLOTHING_SYNTHETIC, 7, "查看已解锁的图谱", true, 0);
+            GuideController.TryGuide(_ui.m_listSuit, ConstGuideId.CLOTHING_SYNTHETIC, 7, "查看已解锁的图谱", 0);
         }
     }
 }

+ 5 - 0
GameClient/Assets/Game/HotUpdate/Views/Common/Alert/AlertWindow.cs

@@ -191,6 +191,11 @@ namespace GFGGame
             this.clickBlankToClose = value;
             return this;
         }
+        protected override void UpdateToCheckGuide(object param)
+        {
+            if (!ViewManager.CheckIsTopView(this.viewCom)) return;
+            GuideController.TryGuide(_ui.m_btnRight, ConstGuideId.LUCKY_BOX, 4, "点击确定");
+        }
 
     }
 }

+ 3 - 3
GameClient/Assets/Game/HotUpdate/Views/CommonGame/ApproachOfItemView.cs

@@ -79,14 +79,14 @@ namespace GFGGame
                 string value = infos[1];
                 var levelCfgId = int.Parse(value);
                 var levelCfg = StoryLevelCfgArray.Instance.GetCfg(levelCfgId);
-                if(levelCfg.type == ConstInstanceZonesType.Story)
+                if (levelCfg.type == ConstInstanceZonesType.Story)
                 {
                     var chapterCfg = StoryChapterCfgArray.Instance.GetCfg(levelCfg.chapterId);
                     string chapter = NumberUtil.GetChiniseNumberText(chapterCfg.order);
                     string level = NumberUtil.GetChiniseNumberText(levelCfg.order);
                     listItem.target.text = string.Format(gameFunctionCfg.name, chapter, level);
                 }
-                else if(levelCfg.type == ConstInstanceZonesType.Studio)
+                else if (levelCfg.type == ConstInstanceZonesType.Studio)
                 {
                     var studioCfg = StudioCfgArray.Instance.GetCfg(levelCfg.chapterId);
                     listItem.target.text = studioCfg.name;
@@ -165,7 +165,7 @@ namespace GFGGame
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
 
-            GuideController.TryGuide(_ui.m_listApproach, ConstGuideId.BUY_CLOTHING, 2, "该物品可以在服装店购买,点开服装店看看", true, 0);
+            GuideController.TryGuide(_ui.m_listApproach, ConstGuideId.BUY_CLOTHING, 2, "该物品可以在服装店购买,点开服装店看看", 0, true, 1400);
         }
     }
 }

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Views/CommonGame/GetBonusView.cs

@@ -74,7 +74,7 @@ namespace GFGGame
         protected override void UpdateToCheckGuide(object param)
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
-            GuideController.TryGuide(null, ConstGuideId.GET_BONUS_FIRST, 1, "恭喜你,获得了第一份奖励,点击图标可以查看物品信息,点击半透明区域继续", false, 0, true, false, (int)(this.viewCom.y + _ui.target.y + _ui.target.height));
+            GuideController.TryGuide(null, ConstGuideId.GET_BONUS_FIRST, 1, "恭喜你,获得了第一份奖励,点击图标可以查看物品信息,点击半透明区域继续", -1, true, (int)(this.viewCom.y + _ui.target.y + _ui.target.height));
         }
         protected override void TryCompleteGuide()
         {

+ 2 - 2
GameClient/Assets/Game/HotUpdate/Views/CommonGame/GetSuitItemVIew.cs

@@ -150,8 +150,8 @@ namespace GFGGame
         protected override void UpdateToCheckGuide(object param)
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
-            if (guideId == 1) GuideController.TryGuide(null, ConstGuideId.GET_SUIT_ITEM_FULL, 1, "恭喜你,集齐了第一套套装,快去换装界面穿上试试吧!点击空白区域继续", false, 0, true, false, (int)(this.viewCom.height - 150));
-            if (guideId == 2) GuideController.TryGuide(null, ConstGuideId.GET_SUIT_ITEM_FIRST, 1, "恭喜你,获得了一件套装配件,集齐套装有惊喜哦!点击空白区域继续", false, 0, true, false, (int)(this.viewCom.height - 150));
+            if (guideId == 1) GuideController.TryGuide(null, ConstGuideId.GET_SUIT_ITEM_FULL, 1, "恭喜你,集齐了第一套套装,快去换装界面穿上试试吧!点击空白区域继续", -1, true, (int)(this.viewCom.height - 150));
+            if (guideId == 2) GuideController.TryGuide(null, ConstGuideId.GET_SUIT_ITEM_FIRST, 1, "恭喜你,获得了一件套装配件,集齐套装有惊喜哦!点击空白区域继续", -1, true, (int)(this.viewCom.height - 150));
         }
         protected override void TryCompleteGuide()
         {

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

@@ -107,6 +107,7 @@ namespace GFGGame
             _ui.m_txtRecommendCount.SetVar("v1", "" + GameGlobal.myNumericComponent.GetAsInt(ET.NumericType.RecommendCount)).FlushVars();
             _ui.m_btnRecommend.enabled = GameGlobal.myNumericComponent.GetAsInt(ET.NumericType.RecommendCount) > 0;
             _scoreIndex = _ui.m_partsList.m_comboBoxRarity.selectedIndex;
+            _ui.m_btnAutoPlay.selected = EquipDataCache.cacher.autoPlay;
             // _ui.m_btnAutoPlay.visible = FunctionOpenDataManager.Instance.CheckIsFunOpenById(ConstFunctionId.FUNCTION_AUTOPLAY_FIGHT, false);
             _levelID = (int)viewData;
             _levelCfg = StoryLevelCfgArray.Instance.GetCfg(_levelID);
@@ -713,7 +714,7 @@ namespace GFGGame
 
             GuideController.TryGuide(_ui.m_compNeed.target, ConstGuideId.BUY_CLOTHING, 1, "当提示有“必需品”时,需要穿上对应物品才能通关");
             if (listTypeItem_BuyClothing != null) GuideController.TryGuide(listTypeItem_BuyClothing.target, ConstGuideId.BUY_CLOTHING, 5, "在相应分类里就可以找到必需品啦");
-            GuideController.TryGuide(_ui.m_partsList.m_list, ConstGuideId.BUY_CLOTHING, 6, "点击换上吧", true, 0);
+            GuideController.TryGuide(_ui.m_partsList.m_list, ConstGuideId.BUY_CLOTHING, 6, "点击换上吧", 0);
             GuideController.TryCompleteGuide(ConstGuideId.BUY_CLOTHING, 6);
 
             GuideController.TryGuide(_ui.m_btnHint, ConstGuideId.TARGET_FIGHT, 1, "这次换装需要获得别人的认可呢");

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

@@ -570,7 +570,7 @@ namespace GFGGame
                 }
             }
             if (listTypeItem_FreedomDress != null) GuideController.TryGuide(listTypeItem_FreedomDress.target, ConstGuideId.FREEDOM_DRESS, 3, "套装分类里,可以查看集齐成套的服饰");
-            GuideController.TryGuide(_ui.m_partsList.m_list, ConstGuideId.FREEDOM_DRESS, 4, "点击一键换上", true, 0);
+            GuideController.TryGuide(_ui.m_partsList.m_list, ConstGuideId.FREEDOM_DRESS, 4, "点击一键换上", 0);
             GuideController.TryGuide(_ui.m_btnSave, ConstGuideId.FREEDOM_DRESS, 5, "搭配好的服饰,可以保存随时查看");
             GuideController.TryGuide(_ui.m_btnHome, ConstGuideId.FREEDOM_DRESS, 6, "保存成功,回主界面看看吧");
             GuideController.TryCompleteGuide(ConstGuideId.FREEDOM_DRESS, 6);

+ 49 - 59
GameClient/Assets/Game/HotUpdate/Views/Guide/GuideView.cs

@@ -1,3 +1,4 @@
+
 using UI.Guide;
 using FairyGUI;
 using UnityEngine;
@@ -13,6 +14,7 @@ namespace GFGGame
         private GObject guideTarget = null;
         private float devWidth;
         private float devHeight;
+        private int yTxt;
 
         private int guideId;
         private int guideIndex;
@@ -22,9 +24,7 @@ namespace GFGGame
         private GoWrapper _wrapper;
         public override void Dispose()
         {
-            SceneController.DestroyObjectFromView(_gameObject);
             base.Dispose();
-
         }
 
         protected override void OnInit()
@@ -37,6 +37,8 @@ namespace GFGGame
             this.clickBlankToClose = false;
             // this.layer = ConstViewLayer.TOP;
             isfullScreen = true;
+            _ui.m_rectFrameTemp.visible = false;
+            _ui.m_rectFrame.target.visible = false;
             _ui.m_rectFrame.target.AddRelation(_ui.m_mask.m_guideArea, RelationType.Width);
             _ui.m_rectFrame.target.AddRelation(_ui.m_mask.m_guideArea, RelationType.Height);
             _ui.m_rectFrame.target.AddRelation(_ui.m_mask.m_guideArea, RelationType.Left_Left);
@@ -46,7 +48,7 @@ namespace GFGGame
                 if (isOptionalGuide) this.Hide();
             });
             string resPath0 = ResPathUtil.GetViewEffectPath("ui_yd/ui_yd_y", "ui_yd_y");
-            SceneController.AddObjectToView(_gameObject, _wrapper, _ui.m_holder, resPath0, out _gameObject, out _wrapper);
+            SceneController.AddObjectToView(_gameObject, _wrapper, _ui.m_comHolder.m_holder, resPath0, out _gameObject, out _wrapper);
         }
 
         protected override void OnShown()
@@ -54,20 +56,15 @@ namespace GFGGame
             base.OnShown();
             List<object> dataList = viewData as List<object>;
             guideTarget = dataList[0] as GObject;
-            _needUpdate = (bool)dataList[1];
-            string txtContent = (string)dataList[2];
-            int yTxt = (int)dataList[3];
-            isOptionalGuide = (bool)dataList[4];
-            devWidth = (float)dataList[5];
-            devHeight = (float)dataList[6];
+            string txtContent = (string)dataList[1];
+            yTxt = (int)dataList[2];
+            isOptionalGuide = (bool)dataList[3];
+            devWidth = (float)dataList[4];
+            devHeight = (float)dataList[5];
 
+            guideId = (int)dataList[6];
+            guideIndex = (int)dataList[7];
 
-
-            if (GuideController.useNewGuide)
-            {
-                guideId = (int)dataList[7];
-                guideIndex = (int)dataList[8];
-            }
             if (txtContent != null && txtContent.Length > 0)
             {
                 _ui.m_compTxt.m_txt.text = txtContent;
@@ -86,43 +83,38 @@ namespace GFGGame
                 _ui.m_compTxt.target.visible = false;
             }
 
-            // _ui.m_rectFrameTemp.width = _ui.m_mask.target.width;
-            // _ui.m_rectFrameTemp.height = _ui.m_mask.target.height;
-            // _ui.m_rectFrameTemp.x = 0;
-            // _ui.m_rectFrameTemp.y = 0;
+            _ui.m_rectFrameTemp.width = _ui.m_mask.target.width;
+            _ui.m_rectFrameTemp.height = _ui.m_mask.target.height;
+            _ui.m_rectFrameTemp.x = 0;
+            _ui.m_rectFrameTemp.y = 0;
             if (guideTarget != null)
             {
                 UpdateGuideRect();
-                // _needUpdate = true;
-                // if (_needUpdate)
-                // {
-                //     Timers.inst.AddUpdate(UpdateGuideRect);
-                // }
+                Timers.inst.AddUpdate(UpdateGuideRect);
                 _ui.m_mask.target.visible = true;
+                _ui.m_comHolder.target.visible = true;
+
+                guideTarget.onClick.Add(OnClickTarget);
+                if (guideTarget == null) OnClickTarget();
 
-                if (GuideController.useNewGuide)
-                {
-                    guideTarget.onClick.Add(OnClickTarget);
-                    if (guideTarget == null) OnClickTarget();
-                }
             }
             else
             {
-
+                _ui.m_comHolder.target.visible = false;
                 _ui.m_mask.target.visible = false;
-                _ui.m_compTxt.target.y = Math.Min(yTxt, GRoot.inst.height - _ui.m_compTxt.target.height - 3);
             }
-            // _ui.m_rectFrame.target.visible = _ui.m_mask.target.visible;
-            _ui.m_rectFrame.target.visible = false;
-            // _ui.m_rectFrameTemp.visible = _ui.m_mask.target.visible;
+            _ui.m_compTxt.target.y = Math.Min(yTxt, GRoot.inst.height - _ui.m_compTxt.target.height - 3);
+            // _ui.m_rectFrame.target.visible = true;
         }
 
         protected override void OnHide()
         {
-            // Timers.inst.Remove(UpdateGuideRect);
+            Timers.inst.Remove(UpdateGuideRect);
             base.OnHide();
-            _ui.m_holder.visible = false;
-            OnClickTarget();
+            if (guideTarget == null)
+            {
+                OnClickTarget();
+            }
             guideTarget = null;
 
         }
@@ -132,41 +124,39 @@ namespace GFGGame
         {
             if (guideTarget != null)
             {
+
                 Rect rect = guideTarget.TransformRect(new Rect(0 + devWidth, devHeight, guideTarget.width, guideTarget.height), _ui.target);
+
                 _ui.m_mask.m_guideArea.size = new Vector2((int)rect.size.x, (int)rect.size.y);
                 _ui.m_mask.m_guideArea.position = new Vector2((int)rect.position.x, (int)rect.position.y);
-                float x = _ui.m_mask.m_guideArea.position.x + _ui.m_mask.m_guideArea.size.x * 0.5f;
-                float y = _ui.m_mask.m_guideArea.position.y + _ui.m_mask.m_guideArea.size.y * 0.5f;
-                _ui.m_holder.position = new Vector2(x, y);
-                int padding = 30;
+
+
+                _ui.m_comHolder.target.position = _ui.m_mask.m_guideArea.position;
+                _ui.m_comHolder.target.size = _ui.m_mask.m_guideArea.size;
+                int padding = 80;
                 bool atBottom = _ui.m_mask.m_guideArea.y + _ui.m_mask.m_guideArea.height + padding + _ui.m_compTxt.target.height + padding > GRoot.inst.height;
-                if (atBottom)
+                if (yTxt == 0)
                 {
-                    _ui.m_compTxt.target.y = _ui.m_mask.m_guideArea.y - _ui.m_compTxt.target.height - padding;
+                    if (atBottom)
+                    {
+                        _ui.m_compTxt.target.y = _ui.m_mask.m_guideArea.y - _ui.m_compTxt.target.height - padding;
+                    }
+                    else
+                    {
+                        _ui.m_compTxt.target.y = _ui.m_mask.m_guideArea.y + _ui.m_mask.m_guideArea.height + padding;
+                    }
                 }
-                else
+                int targetWidth = 20;
+                if (Mathf.Abs(_ui.m_rectFrameTemp.width - _ui.m_rectFrame.target.width) <= targetWidth && Mathf.Abs(_ui.m_rectFrameTemp.height - _ui.m_rectFrame.target.height) <= targetWidth)
                 {
-                    _ui.m_compTxt.target.y = _ui.m_mask.m_guideArea.y + _ui.m_mask.m_guideArea.height + padding;
+                    Timers.inst.Remove(UpdateGuideRect);
                 }
-                // int targetWidth = 20;
-                // if (Mathf.Abs(_ui.m_rectFrameTemp.width - _ui.m_rectFrame.target.width) > targetWidth && Mathf.Abs(_ui.m_rectFrameTemp.height - _ui.m_rectFrame.target.height) > targetWidth)
-                // {
-                //     _ui.m_rectFrameTemp.visible = true;
-                //     float duration = 0.5f;
-                //     _ui.m_rectFrameTemp.TweenResize(new Vector2(_ui.m_rectFrame.target.width, _ui.m_rectFrame.target.height), duration);
-                //     _ui.m_rectFrameTemp.TweenMove(new Vector2(_ui.m_rectFrame.target.x, _ui.m_rectFrame.target.y), duration);
-                // }
-                // else
-                // {
-                _ui.m_rectFrameTemp.visible = false;
-                // _ui.m_rectFrame.target.visible = _ui.m_mask.target.visible;
-                _ui.m_holder.visible = _ui.m_mask.target.visible;
-                // }
             }
         }
         private void OnClickTarget()
         {
             // if (guideTarget == null) return;
+            // if (!ViewManager.CheckIsTopView(this.viewCom)) return;
             if (guideTarget != null) guideTarget.onClick.Remove(OnClickTarget);
             GuideController.TryCompleteGuideIndex(guideId, guideIndex);
         }

+ 4 - 4
GameClient/Assets/Game/HotUpdate/Views/LuckyBox/LuckyBoxStarView.cs

@@ -59,7 +59,7 @@ namespace GFGGame
             this.viewCom = _ui.target;
             isfullScreen = true;
 
-            _ui.m_btnBack.visible = true;
+            _ui.m_btnBack.visible = false;
             _ui.m_btnBack.onClick.Add(OnClickBtnBack);
 
 
@@ -251,7 +251,7 @@ namespace GFGGame
         {
 
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
-            GuideController.TryGuide(null, ConstGuideId.LUCKY_BOX, 4, "点击将星星链接在一起", false, 0, true, false, (int)(this.viewCom.height - 150));
+            GuideController.TryGuide(null, ConstGuideId.LUCKY_BOX, 5, "点击将星星链接在一起", -1, true, (int)(this.viewCom.height - 150));
             TryCompleteGuide();
         }
         protected override void TryCompleteGuide()
@@ -260,8 +260,8 @@ namespace GFGGame
             {
                 GuideCfg cfg = GuideCfgArray.Instance.GetCfg(ConstGuideId.LUCKY_BOX);
 
-                GuideController.TryCompleteGuideIndex(cfg.id, 4);
-                GuideController.TryCompleteGuide(ConstGuideId.LUCKY_BOX, 4);
+                GuideController.TryCompleteGuideIndex(cfg.id, 5);
+                GuideController.TryCompleteGuide(ConstGuideId.LUCKY_BOX, 5);
             }
             else
             {

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

@@ -114,7 +114,7 @@ namespace GFGGame
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
 
-            GuideController.TryGuide(_ui.m_listCard, ConstGuideId.SKILL_CARD_FIGHT, 1, "选择一张合适的词牌,增加过关战斗力", true, 0);
+            GuideController.TryGuide(_ui.m_listCard, ConstGuideId.SKILL_CARD_FIGHT, 1, "选择一张合适的词牌,增加过关战斗力", 0);
             GuideController.TryCompleteGuide(ConstGuideId.SKILL_CARD_FIGHT, 1);
         }
     }

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

@@ -247,7 +247,7 @@ namespace GFGGame
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
             GuideController.TryGuide(_unPasslevelItem, ConstGuideId.START_STORY, 1, "点击关卡,开启新历程");
 
-            GuideController.TryGuide(_unPasslevelItem, ConstGuideId.SINGLE_FIGHT, 1, "遇到意外事件了,暂时解释不清,先按请求换上服饰吧");
+            GuideController.TryGuide(_unPasslevelItem, ConstGuideId.SINGLE_FIGHT, 1, "遇到意外事件了,暂时解释不清,先按请求换上服饰吧", -1, true, -110);
             GuideController.TryGuide(_ui.m_btnHome, ConstGuideId.LUCKY_BOX, 1, "点击返回主界面");
 
             GuideController.TryGuide(_unPasslevelItem, ConstGuideId.CLOTHING_SYNTHETIC, 1, "点击下一关");

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

@@ -20,6 +20,8 @@ namespace GFGGame
         private const int _range = 100;//圆圈随机范围
         private float _time = 0;// 登峰造极按住的时间
 
+        private float _playTime = 1.25f;
+
         protected override void OnInit()
         {
             base.OnInit();
@@ -63,6 +65,11 @@ namespace GFGGame
             _prefectCount = 0;
             _mainScore = ScoreSystemData.Instance.GetMainScore();
 
+            if (_index == 0 && GuideDataManager.GetGuideCountCopy(ConstGuideId.SINGLE_FIGHT) <= 0)//引导中禁止自动战斗
+            {
+                EquipDataCache.cacher.fightSpeed = 1;
+                EquipDataCache.cacher.autoPlay = false;
+            }
             Timers.inst.Add(0.5f, 1, (param) =>
             {
                 SkillScoreStart(null);
@@ -101,7 +108,7 @@ namespace GFGGame
             if (_index == 0 && GuideDataManager.GetGuideCountCopy(ConstGuideId.SINGLE_FIGHT) <= 0)
             {
                 _ui.m_comClickCircle.m_loaCircle.touchable = false;
-                _ui.m_comClickCircle.m_t0.Play(1, 0, 0, 0.5f, () =>
+                _ui.m_comClickCircle.m_t0.Play(1, 0, 0, _playTime / 2, () =>
                 {
                     _ui.m_comClickCircle.m_loaCircle.touchable = true;
                 });

+ 6 - 2
GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryFightTargetScoreView.cs

@@ -139,7 +139,11 @@ namespace GFGGame
         {
             Reset();
 
-
+            if (_index == 0 && GuideDataManager.GetGuideCountCopy(ConstGuideId.TARGET_FIGHT) <= 0)//引导中禁止自动战斗
+            {
+                EquipDataCache.cacher.fightSpeed = 1;
+                EquipDataCache.cacher.autoPlay = false;
+            }
             RoleSkillCfg[] roleSkillCfgs = RoleSkillCfgArray.Instance.dataArray;
             for (int i = 0; i < roleSkillCfgs.Length; i++)
             {
@@ -516,7 +520,7 @@ namespace GFGGame
 
             if (playStop)
             {
-                GuideController.TryGuide(_ui.m_comMineCircle.target, ConstGuideId.TARGET_FIGHT, 2, "这里可以观察双方的分数计算", false, 0, true, false, 0, -128f, -128f);
+                GuideController.TryGuide(_ui.m_comMineCircle.target, ConstGuideId.TARGET_FIGHT, 2, "这里可以观察双方的分数计算", -1, true, 0, -128f, -128f);
             }
             GuideController.TryGuide(_ui.m_btnSkill0.target, ConstGuideId.TARGET_FIGHT, 3, "使用技能,可以增加胜出的几率哦,点击看看");
             GuideController.TryCompleteGuide(ConstGuideId.TARGET_FIGHT, 3);

+ 2 - 2
GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryLevelInfoView.cs

@@ -252,8 +252,8 @@ namespace GFGGame
             {
                 _ui.m_btnStart.touchable = false;
             }
-            GuideController.TryGuide(null, ConstGuideId.CLOTHING_SYNTHETIC, 3, "点击空白处关闭", false, 0, true, false, (int)(this.viewCom.y + _ui.m_groupPass.y));
-            GuideController.TryGuide(_ui.m_listTag, ConstGuideId.OPEN_TAGS, 1, "选择相应的关卡标签,可提高分数", false, 0, true, false, 0);
+            GuideController.TryGuide(null, ConstGuideId.CLOTHING_SYNTHETIC, 3, "点击空白处关闭", -1, true, (int)(this.viewCom.y + _ui.m_groupPass.y));
+            GuideController.TryGuide(_ui.m_listTag, ConstGuideId.OPEN_TAGS, 1, "选择相应的关卡标签,可提高分数", -1, true, 0);
             GuideController.TryCompleteGuide(ConstGuideId.OPEN_TAGS, 1);
 
 

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

@@ -59,7 +59,7 @@ namespace GFGGame
         protected override void OnShown()
         {
             base.OnShown();
-            var resultData = (StoryFightResultData)this.viewData;
+            _resultData = (StoryFightResultData)this.viewData;
             // Timers.inst.AddUpdate(UpdateToCheckGuide);
 
             if (_sceneObject == null)
@@ -68,17 +68,17 @@ namespace GFGGame
             }
 
             SceneController.UpdateRole(EquipDataCache.cacher.equipDatas, _sceneObject);
-            _ui.m_selfScore.m_txtScore.text = "" + resultData.Score;
+            _ui.m_selfScore.m_txtScore.text = "" + _resultData.Score;
             _ui.m_expBar.m_txtLvl.text = "" + GameGlobal.myNumericComponent.GetAsInt(NumericType.Lvl);
             RoleLevelCfg roleLevelCfg = RoleLevelCfgArray.Instance.GetCfg(GameGlobal.myNumericComponent.GetAsInt(NumericType.Lvl));
             _ui.m_expBar.m_pbExp.max = roleLevelCfg.exp;
             _ui.m_expBar.m_pbExp.value = GameGlobal.myNumericComponent.GetAsInt(NumericType.Exp);
 
-            StoryUtil.UpdateStar(resultData.Star, _ui.m_selfScore.m_flower.target);
-            _ui.m_selfScore.m_bg.url = "ui://Main/zd_jsjm_jszi_" + resultData.Star;
+            StoryUtil.UpdateStar(_resultData.Star, _ui.m_selfScore.m_flower.target);
+            _ui.m_selfScore.m_bg.url = "ui://Main/zd_jsjm_jszi_" + _resultData.Star;
             TextFormat tf = _ui.m_selfScore.m_txtScore.textFormat;
             UpdateToCheckGuide(null);
-            if (!_resultData.Result)
+            if (!this._resultData.Result)
             {
                 tf.font = "ui://Main/Font3";
                 _ui.m_expBar.m_txtLvlAdded.text = "0";
@@ -94,7 +94,7 @@ namespace GFGGame
                 StoryLevelCfg levelCfg = StoryLevelCfgArray.Instance.GetCfg(InstanceZonesDataManager.currentLevelCfgId);
                 StoryFightCfg fightCfg = StoryFightCfgArray.Instance.GetCfg(levelCfg.fightID);
                 _ui.m_expBar.m_txtLvlAdded.text = "" + fightCfg.exp;
-                Timers.inst.Add(0.5f, 1, AddExp);
+                Timers.inst.Add(0.5f, 1, this.AddExp);
             }
             _ui.m_selfScore.m_txtScore.textFormat = tf;
 
@@ -135,9 +135,9 @@ namespace GFGGame
         protected override void UpdateToCheckGuide(object param)
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
-            if (!_resultData.Result) GuideController.TryGuide(null, ConstGuideId.FIRST_FIGHT_FAILED, 1, "不要气馁呀,可以通过再次挑战已通关的关卡、摘星、绣坊等途径获取更多的物资来提升自己的战斗力哦!", false, 0, true, false, (int)(this.viewCom.height - 150));
-            if (_resultData.Result) GuideController.TryGuide(null, ConstGuideId.FIRST_FIGHT_SINGLE_WIN, 1, "这条连衣裙可真好看!点击空白区域继续", false, 0, true, false, (int)(this.viewCom.height - 150));
-            if (_resultData.Result) GuideController.TryGuide(null, ConstGuideId.FIRST_FIGHT_TARGET_WIN, 1, "你太厉害了,初次对战就获得了这么好的战绩,继续加油吧", false, 0, true, false, (int)(this.viewCom.height - 350));
+            if (!_resultData.Result) GuideController.TryGuide(null, ConstGuideId.FIRST_FIGHT_FAILED, 1, "不要气馁呀,可以通过再次挑战已通关的关卡、摘星、绣坊等途径获取更多的物资来提升自己的战斗力哦!", -1, true, (int)(this.viewCom.height - 150));
+            if (_resultData.Result) GuideController.TryGuide(null, ConstGuideId.FIRST_FIGHT_SINGLE_WIN, 1, "这条连衣裙可真好看!点击空白区域继续", -1, true, (int)(this.viewCom.height - 150));
+            if (_resultData.Result) GuideController.TryGuide(null, ConstGuideId.FIRST_FIGHT_TARGET_WIN, 1, "你太厉害了,初次对战就获得了这么好的战绩,继续加油吧", -1, true, (int)(this.viewCom.height - 350));
         }
 
         protected override void TryCompleteGuide()

+ 5 - 5
GameClient/Assets/Game/HotUpdate/Views/MainUI/MainUIView.cs

@@ -305,16 +305,16 @@ namespace GFGGame
         protected override void UpdateToCheckGuide(object param)
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
-            GuideController.TryGuide(_ui.m_btnZhaiXing.target, ConstGuideId.LUCKY_BOX, 2, "“摘星”里可以通过星辰的力量获得服饰", false, 0, false);
+            GuideController.TryGuide(_ui.m_btnZhaiXing.target, ConstGuideId.LUCKY_BOX, 2, "“摘星”里可以通过星辰的力量获得服饰", -1, false);
 
             GuideController.TryCompleteGuide(ConstGuideId.FREEDOM_DRESS, 6);
-            GuideController.TryGuide(_ui.m_btnHuanZhuang.target, ConstGuideId.FREEDOM_DRESS, 2, "在这里,可以自由搭配服饰和分享哦~", false, 0, false);
+            GuideController.TryGuide(_ui.m_btnHuanZhuang.target, ConstGuideId.FREEDOM_DRESS, 2, "在这里,可以自由搭配服饰和分享哦~", -1, false);
 
-            GuideController.TryGuide(_ui.m_btnXiuFang.target, ConstGuideId.CLOTHING_SYNTHETIC, 5, "绣坊里增添了新功能", false, 0, false);
+            GuideController.TryGuide(_ui.m_btnXiuFang.target, ConstGuideId.CLOTHING_SYNTHETIC, 5, "绣坊里增添了新功能", -1, false);
             GuideController.TryCompleteGuide(ConstGuideId.CLOTHING_SYNTHETIC, 11);
 
-            GuideController.TryGuide(_ui.m_btnCiPai.target, ConstGuideId.UP_CARD_STAR, 2, "已经收集了足够的材料,可以给词牌升星了");
-            GuideController.TryGuide(_ui.m_btnHuanZhuang.target, ConstGuideId.PHOTOGRAPH, 2, "点这里看看吧", false, 0, false);
+            GuideController.TryGuide(_ui.m_btnCiPai.target, ConstGuideId.UP_CARD_STAR, 2, "已经收集了足够的材料,可以给词牌升星了", -1, false);
+            GuideController.TryGuide(_ui.m_btnHuanZhuang.target, ConstGuideId.PHOTOGRAPH, 2, "点这里看看吧", -1, false);
 
         }
     }

BIN
GameClient/Assets/ResIn/UI/CommonGame/CommonGame_fui.bytes


BIN
GameClient/Assets/ResIn/UI/Guide/Guide_fui.bytes