Эх сурвалжийг харах

Merge remote-tracking branch 'remotes/origin/master' into yooasset

# Conflicts:
#	GameClient/Assets/ResIn/UI/PopWindow_atlas0.png
guodong 1 жил өмнө
parent
commit
6511e12d93
100 өөрчлөгдсөн 1849 нэмэгдсэн , 109 устгасан
  1. 1 1
      GameClient/Assets/Editor/Excel/Scanner/ItemApproachScanner.cs
  2. 3 0
      GameClient/Assets/Game/HotUpdate/Constant/ConstMessage.cs
  3. 13 2
      GameClient/Assets/Game/HotUpdate/Data/DressUpMenuItemDataManager.cs
  4. 38 0
      GameClient/Assets/Game/HotUpdate/Data/LimitedRechargeDBGiftDataManager.cs
  5. 11 0
      GameClient/Assets/Game/HotUpdate/Data/LimitedRechargeDBGiftDataManager.cs.meta
  6. 6 0
      GameClient/Assets/Game/HotUpdate/Data/RedDotDataManager.cs
  7. 2 0
      GameClient/Assets/Game/HotUpdate/Data/StoryDialogDataManager.cs
  8. 3 3
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/DailyWelfare/UI_ComProBonus2.cs
  9. 3 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/DailyWelfare/UI_DBGiftItem.cs
  10. 6 12
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/DailyWelfare/UI_GiftDetailUI.cs
  11. 6 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/DailyWelfare/UI_LimitedRechargeDBGiftUI.cs
  12. 9 3
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/FieldGuide/UI_CompGuideItem.cs
  13. 6 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/LuckyBox/UI_Component2.cs
  14. 3 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/LuckyBox/UI_LuckBoxBonusShowUI.cs
  15. 6 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/LuckyBox/UI_LuckyBoxBonusShowItem.cs
  16. 4 4
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_StoryFightTargetScoreUI.cs
  17. 1 0
      GameClient/Assets/Game/HotUpdate/Views/CreateRole/CreateRoleView.cs
  18. 60 4
      GameClient/Assets/Game/HotUpdate/Views/DailyWelfare/GiftDetailView.cs
  19. 64 27
      GameClient/Assets/Game/HotUpdate/Views/DailyWelfare/LimitedRechargeDBGiftView.cs
  20. 15 1
      GameClient/Assets/Game/HotUpdate/Views/FieldGuide/FieldGuideView.cs
  21. 101 32
      GameClient/Assets/Game/HotUpdate/Views/LuckyBox/LuckyBoxBonusShowView.cs
  22. 1 0
      GameClient/Assets/Game/HotUpdate/Views/LuckyBox/LuckyBoxNewDressView.cs
  23. 19 13
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryDialogView.cs
  24. 279 0
      GameClient/Assets/Game/HotUpdate/Views/MainStory/TypingFadeEffectPro.cs
  25. 11 0
      GameClient/Assets/Game/HotUpdate/Views/MainStory/TypingFadeEffectPro.cs.meta
  26. 25 6
      GameClient/Assets/Game/HotUpdate/Views/MainUI/MainUIView.cs
  27. 1 1
      GameClient/Assets/Game/HotUpdate/Views/Studio/StudioFilingRewardView.cs
  28. BIN
      GameClient/Assets/ResIn/UI/ActivityThemeLuckyBox/ActivityThemeLuckyBox_atlas0!a.png
  29. 96 0
      GameClient/Assets/ResIn/UI/ActivityThemeLuckyBox/ActivityThemeLuckyBox_atlas0!a.png.meta
  30. BIN
      GameClient/Assets/ResIn/UI/ActivityThemeLuckyBox/ActivityThemeLuckyBox_atlas0.png
  31. BIN
      GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0!a.png
  32. 96 0
      GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0!a.png.meta
  33. BIN
      GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0.png
  34. BIN
      GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_1!a.png
  35. 96 0
      GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_1!a.png.meta
  36. BIN
      GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_1.png
  37. BIN
      GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_2!a.png
  38. 96 0
      GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_2!a.png.meta
  39. BIN
      GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_2.png
  40. BIN
      GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_3!a.png
  41. 96 0
      GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_3!a.png.meta
  42. BIN
      GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_3.png
  43. BIN
      GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_4!a.png
  44. 96 0
      GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_4!a.png.meta
  45. BIN
      GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_4.png
  46. BIN
      GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_fui.bytes
  47. BIN
      GameClient/Assets/ResIn/UI/FieldGuide/FieldGuide_atlas0!a.png
  48. BIN
      GameClient/Assets/ResIn/UI/FieldGuide/FieldGuide_atlas0.png
  49. BIN
      GameClient/Assets/ResIn/UI/FieldGuide/FieldGuide_atlas0_1!a.png
  50. BIN
      GameClient/Assets/ResIn/UI/FieldGuide/FieldGuide_atlas0_1.png
  51. BIN
      GameClient/Assets/ResIn/UI/FieldGuide/FieldGuide_atlas0_2.png
  52. BIN
      GameClient/Assets/ResIn/UI/FieldGuide/FieldGuide_fui.bytes
  53. BIN
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0!a.png
  54. BIN
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0.png
  55. BIN
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_1!a.png
  56. BIN
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_1.png
  57. BIN
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_2!a.png
  58. BIN
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_2.png
  59. BIN
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_3!a.png
  60. BIN
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_3.png
  61. BIN
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_4!a.png
  62. BIN
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_4.png
  63. BIN
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_fui.bytes
  64. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0!a.png
  65. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0.png
  66. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_1!a.png
  67. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_1.png
  68. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_2.png
  69. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_3!a.png
  70. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_3.png
  71. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_4!a.png
  72. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_4.png
  73. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_5!a.png
  74. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_5.png
  75. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_6!a.png
  76. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_6.png
  77. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_7!a.png
  78. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_7.png
  79. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_8!a.png
  80. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_8.png
  81. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_9!a.png
  82. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_9.png
  83. BIN
      GameClient/Assets/ResIn/UI/Main/Main_fui.bytes
  84. BIN
      GameClient/Assets/ResIn/UI/PopWindow_atlas0!a.png
  85. 96 0
      GameClient/Assets/ResIn/UI/PopWindow_atlas0!a.png.meta
  86. BIN
      GameClient/Assets/ResIn/UI/PopWindow_atlas0.png
  87. BIN
      GameClient/Assets/ResIn/UI/Store/Store_atlas0!a.png
  88. 96 0
      GameClient/Assets/ResIn/UI/Store/Store_atlas0!a.png.meta
  89. BIN
      GameClient/Assets/ResIn/UI/Store/Store_atlas0.png
  90. BIN
      GameClient/Assets/ResIn/UI/Store/Store_atlas0_1!a.png
  91. 96 0
      GameClient/Assets/ResIn/UI/Store/Store_atlas0_1!a.png.meta
  92. BIN
      GameClient/Assets/ResIn/UI/Store/Store_atlas0_1.png
  93. BIN
      GameClient/Assets/ResIn/UI/Store/Store_atlas0_2!a.png
  94. 96 0
      GameClient/Assets/ResIn/UI/Store/Store_atlas0_2!a.png.meta
  95. BIN
      GameClient/Assets/ResIn/UI/Store/Store_atlas0_2.png
  96. BIN
      GameClient/Assets/ResIn/UI/Store/Store_atlas0_3!a.png
  97. 96 0
      GameClient/Assets/ResIn/UI/Store/Store_atlas0_3!a.png.meta
  98. BIN
      GameClient/Assets/ResIn/UI/Store/Store_atlas0_3.png
  99. BIN
      GameClient/Assets/ResIn/UI/Store/Store_atlas_hhx91q!a.png
  100. 96 0
      GameClient/Assets/ResIn/UI/Store/Store_atlas_hhx91q!a.png.meta

+ 1 - 1
GameClient/Assets/Editor/Excel/Scanner/ItemApproachScanner.cs

@@ -141,7 +141,7 @@ namespace GFGEditor
 
         private static void HandleItemAndDressUpTable(ItemCfg itemCfg, ref int count)
         {
-            if (itemCfg.isHide > 0)
+            if (itemCfg.isHide > 0 || itemCfg.mainScore == 0)
             {
                 return;
             }

+ 3 - 0
GameClient/Assets/Game/HotUpdate/Constant/ConstMessage.cs

@@ -172,6 +172,9 @@ namespace GFGGame
         //MainView to 同步刷新特惠礼包 限时礼包倒计时
         public const string LUCKY_BOX_TIME = "LUCKY_BOX_TIME";
 
+        //摘星奖品展示
+        public const string LUCKY_BOX_REWARD_SHOW = "LUCKY_BOX_REWARD_SHOW";
+
         // 服装散件图鉴配置加载完成
         public const string DRESS_PART_LOAD_FINISHED = "DRESS_PART_LOAD_FINISHED";
     }

+ 13 - 2
GameClient/Assets/Game/HotUpdate/Data/DressUpMenuItemDataManager.cs

@@ -720,7 +720,7 @@ namespace GFGGame
 
             for (int i = 0; i < itemCfgs.Count; i++)
             {
-                if(itemCfgs[i].isHide <= 0)
+                if(CanShow(itemCfgs[i]))
                 {
                     result.Add(itemCfgs[i].id);
                 }
@@ -729,6 +729,17 @@ namespace GFGGame
             return result;
         }
 
+        private static bool CanShow(ItemCfg item)
+        {
+            // 默认的不显示
+            List<int> defaultID = new List<int>{ 10000, 20000, 30000, 50000, 60000 };
+            if (defaultID.Contains(item.id))
+            {
+                return false;
+            }
+            return (item.isHide <= 0 && item.mainScore > 0);
+        }
+
         public static List<int> GetAllDressUpGuideIdListBySubTypes(List<int> subTypes)
         {
             List<int> result = new List<int>();
@@ -780,7 +791,7 @@ namespace GFGGame
 
             for (int i = 0; i < itemCfgs.Count; i++)
             {
-                if (itemCfgs[i].isHide <= 0)
+                if (CanShow(itemCfgs[i]))
                 {
                     result.Add(itemCfgs[i].id);
                 }

+ 38 - 0
GameClient/Assets/Game/HotUpdate/Data/LimitedRechargeDBGiftDataManager.cs

@@ -0,0 +1,38 @@
+using ET;
+using GFGGame;
+using System.Collections;
+using UnityEngine;
+
+namespace Assets.Game.HotUpdate.Data
+{
+    public class LimitedRechargeDBGiftDataManager : SingletonBase<LimitedRechargeDBGiftDataManager>
+    {
+        public bool CanGetReward()
+        {
+            ActivityInfo _activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfoOneByType(ActivityType.DBGift);
+            if (_activityInfo == null) return false;
+            ActivityRecharge2Cfg[] _rechargeCfgs = ActivityRecharge2CfgArray.Instance.dataArray;
+            for (int i = 0; i < _rechargeCfgs.Length; i++)
+            {
+                if (_activityInfo.CountValue >= _rechargeCfgs[i].value && _activityInfo.GetRewards.IndexOf(_rechargeCfgs[i].id) < 0)
+                {
+                    return true;
+                }
+            }
+            return false;
+        }
+
+        public bool CheckOpen()
+        {
+            var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfoOneByType(ActivityType.DBGift);
+            return activityInfo != null && activityInfo.StartTime <= TimeHelper.ServerNow() &&
+                   activityInfo.EndTime > TimeHelper.ServerNow();
+        }
+
+        public long GetEndTime()
+        {
+            var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfoOneByType(ActivityType.DBGift);
+            return activityInfo.EndTime;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Data/LimitedRechargeDBGiftDataManager.cs.meta

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

+ 6 - 0
GameClient/Assets/Game/HotUpdate/Data/RedDotDataManager.cs

@@ -1,5 +1,6 @@
 using System.Collections.Generic;
 using System.Linq;
+using Assets.Game.HotUpdate.Data;
 using ET;
 using Hutool;
 
@@ -902,5 +903,10 @@ namespace GFGGame
 
             return false;
         }
+
+        public bool GetLimitedRechargeDBGiftRed()
+        {
+            return LimitedRechargeDBGiftDataManager.Instance.CanGetReward();
+        }
     }
 }

+ 2 - 0
GameClient/Assets/Game/HotUpdate/Data/StoryDialogDataManager.cs

@@ -15,12 +15,14 @@ namespace GFGGame
         private bool _waitPicFade = false;
         private bool _waitBgChange = false;
         private float _dialogShowDelay = 0.0f;
+        private bool _waiting = false;
 
         // Dialog wait pic's animation finished 
         public bool waitPicFade { get { return _waitPicFade; } set { _waitPicFade = value; } }
         public bool waitBgChange { get { return _waitBgChange; } set { _waitBgChange = value; } }
         public float dialogShowDelay { get { return _dialogShowDelay; } set { _dialogShowDelay = value; } }
 
+        public bool waiting { get { return _waiting; } set { _waiting = value; } }
     }
 }
 

+ 3 - 3
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/DailyWelfare/UI_ComProBonus2.cs

@@ -8,7 +8,7 @@ namespace UI.DailyWelfare
     {
         public GComponent target;
         public GLoader m_loaIcon;
-        public GTextField m_txtDay;
+        public GTextField m_count;
         public GImage m_imgGot;
         public const string URL = "ui://t8nwuj7ievdh27";
         public const string PACKAGE_NAME = "DailyWelfare";
@@ -58,13 +58,13 @@ namespace UI.DailyWelfare
         private void Init(GComponent comp)
         {
             m_loaIcon = (GLoader)comp.GetChild("loaIcon");
-            m_txtDay = (GTextField)comp.GetChild("txtDay");
+            m_count = (GTextField)comp.GetChild("count");
             m_imgGot = (GImage)comp.GetChild("imgGot");
         }
         public void Dispose(bool disposeTarget = false)
         {
             m_loaIcon = null;
-            m_txtDay = null;
+            m_count = null;
             m_imgGot = null;
             if(disposeTarget && target != null)
             {

+ 3 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/DailyWelfare/UI_DBGiftItem.cs

@@ -7,6 +7,7 @@ namespace UI.DailyWelfare
     public partial class UI_DBGiftItem
     {
         public GComponent target;
+        public GLoader m_DBB;
         public GLoader m_loaIcon;
         public const string URL = "ui://t8nwuj7ievdh28";
         public const string PACKAGE_NAME = "DailyWelfare";
@@ -55,10 +56,12 @@ namespace UI.DailyWelfare
 
         private void Init(GComponent comp)
         {
+            m_DBB = (GLoader)comp.GetChild("DBB");
             m_loaIcon = (GLoader)comp.GetChild("loaIcon");
         }
         public void Dispose(bool disposeTarget = false)
         {
+            m_DBB = null;
             m_loaIcon = null;
             if(disposeTarget && target != null)
             {

+ 6 - 12
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/DailyWelfare/UI_GiftDetailUI.cs

@@ -9,10 +9,8 @@ namespace UI.DailyWelfare
         public GComponent target;
         public Controller m_c1;
         public GComponent m_bg;
-        public GTextField m_txtLock;
-        public GTextField m_txtWeekGiftBag;
-        public GList m_listWeekGiftBag;
-        public GButton m_btnGetWeekGiftBag;
+        public GList m_listGiftBag;
+        public GButton m_btnCheck;
         public const string URL = "ui://t8nwuj7ievdh2a";
         public const string PACKAGE_NAME = "DailyWelfare";
         public const string RES_NAME = "GiftDetailUI";
@@ -62,19 +60,15 @@ namespace UI.DailyWelfare
         {
             m_c1 = comp.GetController("c1");
             m_bg = (GComponent)comp.GetChild("bg");
-            m_txtLock = (GTextField)comp.GetChild("txtLock");
-            m_txtWeekGiftBag = (GTextField)comp.GetChild("txtWeekGiftBag");
-            m_listWeekGiftBag = (GList)comp.GetChild("listWeekGiftBag");
-            m_btnGetWeekGiftBag = (GButton)comp.GetChild("btnGetWeekGiftBag");
+            m_listGiftBag = (GList)comp.GetChild("listGiftBag");
+            m_btnCheck = (GButton)comp.GetChild("btnCheck");
         }
         public void Dispose(bool disposeTarget = false)
         {
             m_c1 = null;
             m_bg = null;
-            m_txtLock = null;
-            m_txtWeekGiftBag = null;
-            m_listWeekGiftBag = null;
-            m_btnGetWeekGiftBag = null;
+            m_listGiftBag = null;
+            m_btnCheck = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 6 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/DailyWelfare/UI_LimitedRechargeDBGiftUI.cs

@@ -7,11 +7,13 @@ namespace UI.DailyWelfare
     public partial class UI_LimitedRechargeDBGiftUI
     {
         public GComponent target;
+        public GComponent m_bg;
         public UI_ProgressBar2 m_progress;
         public UI_DBGiftItem m_DBGiftItem1;
         public UI_DBGiftItem m_DBGiftItem2;
         public UI_DBGiftItem m_DBGiftItem3;
         public UI_DBGiftItem m_DBGiftItem4;
+        public GGroup m_DBGiftItemGroup;
         public GTextField m_txtTime;
         public GGroup m_grpTime;
         public GButton m_btnTest;
@@ -62,17 +64,20 @@ namespace UI.DailyWelfare
 
         private void Init(GComponent comp)
         {
+            m_bg = (GComponent)comp.GetChild("bg");
             m_progress = (UI_ProgressBar2)UI_ProgressBar2.Create(comp.GetChild("progress"));
             m_DBGiftItem1 = (UI_DBGiftItem)UI_DBGiftItem.Create(comp.GetChild("DBGiftItem1"));
             m_DBGiftItem2 = (UI_DBGiftItem)UI_DBGiftItem.Create(comp.GetChild("DBGiftItem2"));
             m_DBGiftItem3 = (UI_DBGiftItem)UI_DBGiftItem.Create(comp.GetChild("DBGiftItem3"));
             m_DBGiftItem4 = (UI_DBGiftItem)UI_DBGiftItem.Create(comp.GetChild("DBGiftItem4"));
+            m_DBGiftItemGroup = (GGroup)comp.GetChild("DBGiftItemGroup");
             m_txtTime = (GTextField)comp.GetChild("txtTime");
             m_grpTime = (GGroup)comp.GetChild("grpTime");
             m_btnTest = (GButton)comp.GetChild("btnTest");
         }
         public void Dispose(bool disposeTarget = false)
         {
+            m_bg = null;
             m_progress.Dispose();
             m_progress = null;
             m_DBGiftItem1.Dispose();
@@ -83,6 +88,7 @@ namespace UI.DailyWelfare
             m_DBGiftItem3 = null;
             m_DBGiftItem4.Dispose();
             m_DBGiftItem4 = null;
+            m_DBGiftItemGroup = null;
             m_txtTime = null;
             m_grpTime = null;
             m_btnTest = null;

+ 9 - 3
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/FieldGuide/UI_CompGuideItem.cs

@@ -8,8 +8,10 @@ namespace UI.FieldGuide
     {
         public GComponent target;
         public GLoader m_loaderPic;
-        public GTextField m_txtProgress;
         public GTextField m_progressSymbol;
+        public GTextField m_txtProgress;
+        public GGroup m_progressGroup;
+        public GLoader m_lock;
         public Transition m_In;
         public Transition m_Init;
         public const string URL = "ui://vqq9h9h4pjipe";
@@ -60,16 +62,20 @@ namespace UI.FieldGuide
         private void Init(GComponent comp)
         {
             m_loaderPic = (GLoader)comp.GetChild("loaderPic");
-            m_txtProgress = (GTextField)comp.GetChild("txtProgress");
             m_progressSymbol = (GTextField)comp.GetChild("progressSymbol");
+            m_txtProgress = (GTextField)comp.GetChild("txtProgress");
+            m_progressGroup = (GGroup)comp.GetChild("progressGroup");
+            m_lock = (GLoader)comp.GetChild("lock");
             m_In = comp.GetTransition("In");
             m_Init = comp.GetTransition("Init");
         }
         public void Dispose(bool disposeTarget = false)
         {
             m_loaderPic = null;
-            m_txtProgress = null;
             m_progressSymbol = null;
+            m_txtProgress = null;
+            m_progressGroup = null;
+            m_lock = null;
             m_In = null;
             m_Init = null;
             if(disposeTarget && target != null)

+ 6 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/LuckyBox/UI_Component2.cs

@@ -15,6 +15,8 @@ namespace UI.LuckyBox
         public GLoader m_rarity;
         public GImage m_imgNew;
         public GTextField m_txtName;
+        public Transition m_t0;
+        public Transition m_t1;
         public const string URL = "ui://drx9d1usdcrotaa";
         public const string PACKAGE_NAME = "LuckyBox";
         public const string RES_NAME = "Component2";
@@ -70,6 +72,8 @@ namespace UI.LuckyBox
             m_rarity = (GLoader)comp.GetChild("rarity");
             m_imgNew = (GImage)comp.GetChild("imgNew");
             m_txtName = (GTextField)comp.GetChild("txtName");
+            m_t0 = comp.GetTransition("t0");
+            m_t1 = comp.GetTransition("t1");
         }
         public void Dispose(bool disposeTarget = false)
         {
@@ -81,6 +85,8 @@ namespace UI.LuckyBox
             m_rarity = null;
             m_imgNew = null;
             m_txtName = null;
+            m_t0 = null;
+            m_t1 = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 3 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/LuckyBox/UI_LuckBoxBonusShowUI.cs

@@ -24,6 +24,7 @@ namespace UI.LuckyBox
         public UI_LuckyBoxBonusShowItem m_item8;
         public UI_LuckyBoxBonusShowItem m_item9;
         public GButton m_BtnPass;
+        public GGraph m_touchFlipOpen;
         public Transition m_t0;
         public Transition m_t1;
         public const string URL = "ui://drx9d1use050tf3";
@@ -90,6 +91,7 @@ namespace UI.LuckyBox
             m_item8 = (UI_LuckyBoxBonusShowItem)UI_LuckyBoxBonusShowItem.Create(comp.GetChild("item8"));
             m_item9 = (UI_LuckyBoxBonusShowItem)UI_LuckyBoxBonusShowItem.Create(comp.GetChild("item9"));
             m_BtnPass = (GButton)comp.GetChild("BtnPass");
+            m_touchFlipOpen = (GGraph)comp.GetChild("touchFlipOpen");
             m_t0 = comp.GetTransition("t0");
             m_t1 = comp.GetTransition("t1");
         }
@@ -123,6 +125,7 @@ namespace UI.LuckyBox
             m_item9.Dispose();
             m_item9 = null;
             m_BtnPass = null;
+            m_touchFlipOpen = null;
             m_t0 = null;
             m_t1 = null;
             if(disposeTarget && target != null)

+ 6 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/LuckyBox/UI_LuckyBoxBonusShowItem.cs

@@ -9,6 +9,8 @@ namespace UI.LuckyBox
         public GComponent target;
         public UI_Component2 m_comIcon;
         public Transition m_t0;
+        public Transition m_t1;
+        public Transition m_t2;
         public const string URL = "ui://drx9d1use050tf4";
         public const string PACKAGE_NAME = "LuckyBox";
         public const string RES_NAME = "LuckyBoxBonusShowItem";
@@ -58,12 +60,16 @@ namespace UI.LuckyBox
         {
             m_comIcon = (UI_Component2)UI_Component2.Create(comp.GetChild("comIcon"));
             m_t0 = comp.GetTransition("t0");
+            m_t1 = comp.GetTransition("t1");
+            m_t2 = comp.GetTransition("t2");
         }
         public void Dispose(bool disposeTarget = false)
         {
             m_comIcon.Dispose();
             m_comIcon = null;
             m_t0 = null;
+            m_t1 = null;
+            m_t2 = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 4 - 4
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_StoryFightTargetScoreUI.cs

@@ -13,9 +13,9 @@ namespace UI.Main
         public GButton m_btnSkip;
         public UI_ComTargetSkillShow m_comTargetCard;
         public UI_ComDeduction m_comDeduction;
+        public UI_ProgressBarTargetScore m_proScore;
         public GComponent m_myHead;
         public GComponent m_targetHead;
-        public UI_ProgressBarTargetScore m_proScore;
         public Transition m_t1;
         public Transition m_t2;
         public const string URL = "ui://mfvz4q8k8xpg3w";
@@ -71,9 +71,9 @@ namespace UI.Main
             m_btnSkip = (GButton)comp.GetChild("btnSkip");
             m_comTargetCard = (UI_ComTargetSkillShow)UI_ComTargetSkillShow.Create(comp.GetChild("comTargetCard"));
             m_comDeduction = (UI_ComDeduction)UI_ComDeduction.Create(comp.GetChild("comDeduction"));
+            m_proScore = (UI_ProgressBarTargetScore)UI_ProgressBarTargetScore.Create(comp.GetChild("proScore"));
             m_myHead = (GComponent)comp.GetChild("myHead");
             m_targetHead = (GComponent)comp.GetChild("targetHead");
-            m_proScore = (UI_ProgressBarTargetScore)UI_ProgressBarTargetScore.Create(comp.GetChild("proScore"));
             m_t1 = comp.GetTransition("t1");
             m_t2 = comp.GetTransition("t2");
         }
@@ -88,10 +88,10 @@ namespace UI.Main
             m_comTargetCard = null;
             m_comDeduction.Dispose();
             m_comDeduction = null;
-            m_myHead = null;
-            m_targetHead = null;
             m_proScore.Dispose();
             m_proScore = null;
+            m_myHead = null;
+            m_targetHead = null;
             m_t1 = null;
             m_t2 = null;
             if(disposeTarget && target != null)

+ 1 - 0
GameClient/Assets/Game/HotUpdate/Views/CreateRole/CreateRoleView.cs

@@ -97,6 +97,7 @@ namespace GFGGame
                     _ui.m_t_AfterOpen.Play(()=>
                     {
                         this.Hide();
+                        StoryDialogDataManager.Instance.waiting = false;
                     });
                     break;
             }

+ 60 - 4
GameClient/Assets/Game/HotUpdate/Views/DailyWelfare/GiftDetailView.cs

@@ -1,10 +1,66 @@
-using System.Collections;
-using UnityEngine;
+using System.Threading.Tasks;
+using ET;
+using FairyGUI;
+using UI.DailyWelfare;
 
-namespace Assets.Game.HotUpdate.Views.DailyWelfare
+namespace GFGGame
 {
-    public class GiftDetailView : MonoBehaviour
+    public class GiftDetailView : BaseWindow
     {
+        private UI_GiftDetailUI _ui;
 
+        public override void Dispose()
+        {
+            if (_ui != null)
+            {
+                _ui.Dispose();
+            }
+            _ui = null;
+            base.Dispose();
+        }
+        protected override void OnHide()
+        {
+            base.OnHide();
+
+        }
+        protected override void OnInit()
+        {
+            base.OnInit();
+            packageName = UI_GiftDetailUI.PACKAGE_NAME;
+            _ui = UI_GiftDetailUI.Create();
+            this.viewCom = _ui.target;
+            this.viewCom.Center();
+            this.modal = true;
+            _ui.m_listGiftBag.itemRenderer = ListRewardItemRender;
+            _ui.m_btnCheck.onClick.Add(OnBtnCheckClick);
+        }
+
+        protected override void OnShown()
+        {
+            base.OnShown();
+            int id = (int)viewData;
+            ActivityRecharge2Cfg _rechargeCfgs = ActivityRecharge2CfgArray.Instance.GetCfg(id);
+            _ui.m_listGiftBag.data = _rechargeCfgs.bonusArr;
+            _ui.m_listGiftBag.numItems = _rechargeCfgs.bonusArr.Length;
+            _ui.m_listGiftBag.scrollPane.ScrollTop();
+        }
+
+        private void ListRewardItemRender(int index, GObject obj)
+        {
+            int[][] rewards = (int[][])obj.parent.data;
+
+            if (obj.data == null)
+            {
+                obj.data = new ItemView(obj as GComponent);
+            }
+            ItemData itemData = ItemUtil.createItemData(rewards[index]);
+            (obj.data as ItemView).SetData(itemData);
+            (obj.data as ItemView).ChangeTxtCountStyle();
+        }
+
+        private void OnBtnCheckClick(EventContext context)
+        {
+            ViewManager.Hide<GiftDetailView>();
+        }
     }
 }

+ 64 - 27
GameClient/Assets/Game/HotUpdate/Views/DailyWelfare/LimitedRechargeDBGiftView.cs

@@ -36,7 +36,7 @@ namespace GFGGame
             this.modal = true;
             viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
 
-            _ui.m_btnTest.onClick.Add(OnClickBtnTest);
+            _ui.m_btnTest.onClick.Add(OnBtnTestClick);
             _rechargeCfgs = ActivityRecharge2CfgArray.Instance.dataArray;
             InitProgressValueList();
             InitReward();
@@ -46,7 +46,6 @@ namespace GFGGame
         {
             base.AddEventListener();
             EventAgent.AddEventListener(ConstMessage.ACTIVITY_REWARD_ADD, UpdateView);
-            EventAgent.AddEventListener(ConstMessage.RED_CHANGE, UpdateView);
             EventAgent.AddEventListener(ConstMessage.ACTIVITY_COUNT_VALUE_CHANGE, UpdateView);
         }
 
@@ -54,7 +53,6 @@ namespace GFGGame
         {
             base.RemoveEventListener();
             EventAgent.RemoveEventListener(ConstMessage.ACTIVITY_REWARD_ADD, UpdateView);
-            EventAgent.RemoveEventListener(ConstMessage.RED_CHANGE, UpdateView);
             EventAgent.RemoveEventListener(ConstMessage.ACTIVITY_COUNT_VALUE_CHANGE, UpdateView);
         }
 
@@ -63,7 +61,7 @@ namespace GFGGame
             base.OnShown();
 
             UpdateView();
-            UpdateProgress();
+            UpdateTime(null);
             Timers.inst.Add(1, 0, UpdateTime);
         }
 
@@ -73,7 +71,7 @@ namespace GFGGame
             Timers.inst.Remove(UpdateTime);
         }
 
-        private void OnClickBtnTest(EventContext context)
+        private void OnBtnTestClick(EventContext context)
         {
             UpdateProgress();
         }
@@ -82,6 +80,9 @@ namespace GFGGame
         private int[] _progressValuePart;
         private int _partNum = 4;
 
+        /// <summary>
+        /// 计算奖励的分段列表
+        /// </summary>
         private void InitProgressValueList()
         {
             _progressValuePart = new int[_partNum];
@@ -102,25 +103,40 @@ namespace GFGGame
         /// </summary>
         private void InitReward()
         {
-            // 包子图
-
-            // 大奖icon
+            for (int i = 0; i < _partNum; i++)
+            {
+                GObject gift = _ui.target.GetChild("DBGiftItem" + (i + 1));
+                UI_DBGiftItem item = UI_DBGiftItem.Proxy(gift);
+                // 大奖icon
+                item.m_loaIcon.url = ResPathUtil.GetIconPath(ItemCfgArray.Instance.GetCfg(_rechargeCfgs[i].bonusArr[0][0]));
+                // 包子图
+                item.m_DBB.url = "ui://DailyWelfare/DBB_" + (i + 1);
+                gift.data = _rechargeCfgs[i].bonusArr[0][0];
+                gift.onClick.Add(OnRewardIconClick);
+                UI_DBGiftItem.ProxyEnd();
 
+                // 进度条分段值Text
+                GObject progressItem = _ui.m_progress.target.GetChild("comProBonus" + i);
+                UI_ComProBonus2 bonus = UI_ComProBonus2.Proxy(progressItem);
+                bonus.m_count.text = _rechargeCfgs[i].value.ToString();
+                UI_ComProBonus2.ProxyEnd();
+            }
         }
 
         private void UpdateProgress()
         {
             int max = (int)_ui.m_progress.target.max;
             long count = _activityInfo.CountValue;
+            int index = 1;
 
             // 确定count的区间
-            if (count == 0 || count == max)
+            if (count == 0 || count >= max)
             {
-                _ui.m_progress.target.value = count;
+                _ui.m_progress.target.value = Mathf.Min(count, max);
+                index = (count == 0 ? 0 : _partNum - 1);
             }
             else
             {
-                int index = 1;
                 for (; index < _progressValuePart.Length; index++)
                 {
                     if (count < _progressValuePart[index])
@@ -142,10 +158,9 @@ namespace GFGGame
                 {
                     _ui.m_progress.target.value = Mathf.Clamp(count, minProgressValue, maxProgressValue);
                 }
-
-                // 检测玩家是否领取奖励
-                UpdateRewardState(index);
             }
+            // 检测玩家是否领取奖励
+            UpdateRewardState(index);
         }
 
         private void UpdateTime(object param)
@@ -163,24 +178,24 @@ namespace GFGGame
 
         private struct GetState
         {
-            public int index;
+            public int rewardID;
             public bool canGet;
         }
+
         /// <summary>
-        /// 
+        /// 更新奖励状态
         /// </summary>
         /// <param name="index">玩家可领取的最大奖励index</param>
         private void UpdateRewardState(int index)
         {
-            GComponent comProBonusGroup = _ui.m_progress.m_comProBonusGroup.asCom;
-
             for(int i = 0; i < _partNum; i++)
             {
                 bool arrive = (i <= index);
-                UI_ComProBonus2 bonus = UI_ComProBonus2.Proxy(comProBonusGroup.GetChildAt(i));
+                GObject progressItem = _ui.m_progress.target.GetChild("comProBonus" + i);
+                UI_ComProBonus2 bonus = UI_ComProBonus2.Proxy(progressItem);
                 bonus.target.data = new GetState
                 {
-                    index = i,
+                    rewardID = _rechargeCfgs[i].id,
                     canGet = arrive
                 };
 
@@ -188,7 +203,7 @@ namespace GFGGame
                 if (arrive)
                 {
                     // 已领
-                    if (_activityInfo.GetRewards.IndexOf(_rechargeCfgs[i].id) > 0)
+                    if (_activityInfo.GetRewards.IndexOf(_rechargeCfgs[i].id) >= 0)
                     {
                         bonus.m_imgGot.visible = true;
                         bonus.target.touchable = false;
@@ -203,26 +218,48 @@ namespace GFGGame
                         RedDotController.Instance.SetComRedDot(bonus.target, true);
                     }
                 }
-                bonus.target.onClick.Set(OnClickGift);
+                progressItem.onClick.Set(OnGiftClick);
                 UI_ComProBonus2.ProxyEnd();
             }
         }
 
-        private void OnClickGift(EventContext eventContext)
+        /// <summary>
+        /// 点击最下方的礼物icon
+        /// </summary>
+        /// <param name="eventContext"></param>
+        private void OnGiftClick(EventContext eventContext)
         {
-            GObject gObject = (GObject)eventContext.data;
-            GetState getState = (GetState)gObject.data;
+            GObject gObject = eventContext.sender as GObject;
+            GetState getState = (GetState)(gObject.data);
 
             if (getState.canGet)
             {
-                ActivityGlobalSProxy.ReqGetActivityBonus(_activityInfo.ActivityId, _rechargeCfgs[getState.index].id).Coroutine();
+                ActivityGlobalSProxy.ReqGetActivityBonus(_activityInfo.ActivityId, getState.rewardID).Coroutine();
             }
             else
             {
                 // 显示奖励详细列表
-                //ViewManager.Show<UI_GiftDetailUI>
+                ViewManager.Show<GiftDetailView>(getState.rewardID, ViewManager.GetGoBackDatas(typeof(LimitedRechargeDBGiftView).FullName));
             }
         }
+
+        /// <summary>
+        /// 点击上方的奖励icon,显示单个奖励介绍(奖励配置中的第一个奖励)
+        /// </summary>
+        /// <param name="eventContext"></param>
+        private void OnRewardIconClick(EventContext eventContext)
+        {
+            GObject gObject = eventContext.sender as GObject;
+            int id = (int)(gObject.data);
+            GoodsItemTipsController.ShowItemTips(id);
+        }
+
+        public bool CheckOpen()
+        {
+            var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfoOneByType(ActivityType.DBGift);
+            return activityInfo != null && activityInfo.StartTime <= TimeHelper.ServerNow() &&
+                   activityInfo.EndTime > TimeHelper.ServerNow();
+        }
     }
 
 }

+ 15 - 1
GameClient/Assets/Game/HotUpdate/Views/FieldGuide/FieldGuideView.cs

@@ -114,6 +114,12 @@ namespace GFGGame
             listItem.m_loaderPic.url = "ui://FieldGuide/tujian_tup_" + id;
             listItem.target.data = id;
 
+            if(id == ConstFieldGuideId.CARD_GUIDE)
+            {
+                bool open = FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(CardDetailView).Name, false);
+                listItem.m_lock.visible = !open;
+                listItem.m_progressGroup.visible = open;
+            }
 
             if (_startInAnim)
             {
@@ -141,7 +147,15 @@ namespace GFGGame
                     ViewManager.Show<DressUpGuideView>(null, new object[] { typeof(FieldGuideView).FullName, this.viewData });
                     break;
                 case ConstFieldGuideId.CARD_GUIDE:
-                    ViewManager.Show<CardGuideView>(null, new object[] { typeof(FieldGuideView).FullName, this.viewData });
+                    bool open = FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(CardDetailView).Name, false);
+                    if (open)
+                    {
+                        ViewManager.Show<CardGuideView>(null, new object[] { typeof(FieldGuideView).FullName, this.viewData });
+                    }
+                    else
+                    {
+                        PromptController.Instance.ShowFloatTextPrompt("´Ë¹¦ÄÜ먦Æô~");
+                    }
                     break;
             }
         }

+ 101 - 32
GameClient/Assets/Game/HotUpdate/Views/LuckyBox/LuckyBoxBonusShowView.cs

@@ -14,12 +14,13 @@ namespace GFGGame
         private Dictionary<int , Dictionary<int, EffectUI>> _effListTen = new Dictionary<int, Dictionary<int, EffectUI>>();
         private Dictionary<int, EffectUI> _effList = new Dictionary<int, EffectUI>();
 
-        Dictionary<int, int> _itemIdList = new Dictionary<int, int>();
-        Dictionary<int, GComponent> _itemObjList = new Dictionary<int, GComponent>();
-        List<int> _recordOpenIndex = new List<int>();  //记录打开过得item位置
+        private Dictionary<int, int> _itemIdList = new Dictionary<int, int>();
+        private Dictionary<int, GComponent> _itemObjList = new Dictionary<int, GComponent>();
+        private List<int> _recordOpenIndex = new List<int>();  //记录打开过得item位置
+        private int _chooseIndex = -1;  //当前选中的index
         private int _countShow = 0;   //第几次展示
         private int _countNewRecord = 0;  //展示步骤
-        private bool touchFlipOpen = true;   //禁用点击
+        private bool _handClick = false;   //手动点击开启
 
         private EffectUI _effectUI1;
         private EffectUI _effectUI2;
@@ -88,6 +89,25 @@ namespace GFGGame
             _effectUI2 = EffectUIPool.CreateEffectUI(_ui.m_holder_bg, "ui_LuckyBox", "CK_UI");
             _effectUI3 = EffectUIPool.CreateEffectUI(_ui.m_holder_cloud, "ui_LuckyBox", "bg_cloud");
         }
+
+        protected override void AddEventListener()
+        {
+            base.AddEventListener();
+            EventAgent.AddEventListener(ConstMessage.LUCKY_BOX_REWARD_SHOW, ReferNextShow);
+        }
+
+        protected override void RemoveEventListener()
+        {
+            base.RemoveEventListener();
+            EventAgent.RemoveEventListener(ConstMessage.LUCKY_BOX_REWARD_SHOW, ReferNextShow);
+        }
+
+        protected void ReferNextShow()
+        {
+            if (_chooseIndex != -1)
+                ClickItem(_chooseIndex);
+        }
+
         protected override void OnShown()
         {
             base.OnShown();
@@ -96,6 +116,7 @@ namespace GFGGame
             _itemObjList.Clear();
             _recordOpenIndex.Clear();
             _ui.m_BtnPass.visible = true;
+            _ui.m_touchFlipOpen.touchable = false;
 
             if (_rewardList.Count == 1)
             {
@@ -130,6 +151,7 @@ namespace GFGGame
             item.m_comIcon.m_txtName.text = itemCfg.name;
             item.m_comIcon.m_icon.url = ResPathUtil.GetIconPath(itemCfg);
             item.m_comIcon.m_FlipOpenType.selectedIndex = 1;
+            item.m_comIcon.m_t1.Play();
 
             //带特效的处理先注释
             //item.m_comIcon.m_holder.visible = false;
@@ -196,44 +218,44 @@ namespace GFGGame
         {
             GObject obj = context.sender as GObject;
             int index = (int)obj.data;
-            TouchClickItem(index);
-            Timers.inst.Add(1f, 0, UpClickDataTime,index);
+            _chooseIndex = index;
+            HandClickItem(index);
         }
 
-        void TouchClickItem(int index)
+        private void HandClickItem(int index)
         {
-            if (!touchFlipOpen)
-                return;
-
+            _ui.m_touchFlipOpen.touchable = true;
+            _handClick = true;
             ClickItem(index);
+            Timers.inst.Add(1f, 1, UpClickDataTime,index);
         }
 
         void ClickItem(int index)
         {
-            if (!_recordOpenIndex.Contains(index)) {
-
-                //touchFlipOpen = false;
-
+            if (!_recordOpenIndex.Contains(index))
+            {
                 UI_LuckyBoxBonusShowItem item = UI_LuckyBoxBonusShowItem.Proxy(_itemObjList[index]);
-                item.m_comIcon.m_FlipOpenType.selectedIndex = 0;
-
-                if (_recordOpenIndex.Count >= _rewardList.Count)
+                if (_recordOpenIndex.Count >= _rewardList.Count - 1)
                     _ui.m_BtnPass.visible = false;
 
                 //先翻开牌面
-                if (!item.m_comIcon.m_imgNew.visible)
+                if (!item.m_comIcon.m_imgNew.visible || _countNewRecord < 1)
                 {
                     HideOtherShowWindow();
-                    _recordOpenIndex.Add(index);
-                    touchFlipOpen = true;
-                    return;
-                }
-                else {
-                    if (_countNewRecord <= 1) {
-                        HideOtherShowWindow();
-                        _countNewRecord += 1;
-                        return;
+                    item.m_comIcon.m_FlipOpenType.selectedIndex = 0;
+                    //item.m_t1.Play();
+                    item.m_t2.Play();
+                    item.m_comIcon.m_t0.Play();
+
+                    if (!item.m_comIcon.m_imgNew.visible) {
+                        if (_handClick)
+                            _ui.m_touchFlipOpen.touchable = false;
+                        _recordOpenIndex.Add(index);
                     }
+                    else if (_countNewRecord < 1)
+                        _countNewRecord += 1;
+
+                    return;
                 }
 
                 if (item.m_comIcon.m_imgNew.visible && _countNewRecord >= 1)
@@ -243,11 +265,11 @@ namespace GFGGame
                     {
                         if (_countShow < 1)
                         {
+                            _countShow += 1;
                             ViewManager.Hide<GetSuitItemVIew>();
                             _rewardItemList.Clear();
                             _rewardItemList.Add(_rewardList[index]);
                             ViewManager.Show<LuckyBoxNewDressView>(_rewardItemList);
-                            _countShow += 1;
                         }
                         else
                         {
@@ -255,7 +277,6 @@ namespace GFGGame
                             ViewManager.Hide<LuckyBoxNewCardView>();
                             GetSuitItemController.TryShow(_itemIdList[index]);
                             _recordOpenIndex.Add(index);
-                            touchFlipOpen = true;
                             _countShow = 0;
                             _countNewRecord = 0;
                         }
@@ -267,31 +288,78 @@ namespace GFGGame
                         _rewardItemList.Add(_rewardList[index]);
                         ViewManager.Show<LuckyBoxNewDressView>(_rewardItemList);
                         _recordOpenIndex.Add(index);
-                        touchFlipOpen = true;
                         _countNewRecord = 0;
                     }
                 }
                 UI_LuckyBoxBonusShowItem.ProxyEnd();
+
+                if (_handClick)
+                {
+                    _ui.m_touchFlipOpen.touchable = false;
+                    Timers.inst.Remove(UpClickDataTime);
+                }
             }
-            else
+            else{
                 GoodsItemTipsController.ShowItemTips(_itemIdList[index]);
+            }
         }
 
         private void OnClickLoaBg()
         {
             if (_recordOpenIndex.Count >= _rewardList.Count)
+            {
+                _chooseIndex = -1;
                 this.Hide();
+            }
+            else {
+                for (int index = 0; index < _rewardList.Count; index++)
+                {
+                    if (!_recordOpenIndex.Contains(index))
+                    {
+                        _chooseIndex = index;
+                        HandClickItem(index);
+                        break;
+                    }
+                }
+            }
         }
 
         private void OnClickBtnPass()
         {
+            for (int index = 0; index < _rewardList.Count; index++)
+            {
+                if (!_recordOpenIndex.Contains(index))
+                {
+                    int count = 0;
+                    bool isFirst = false;
+                    for (int i = 0; i < _rewardList.Count; i++)
+                    {
+                        if (_rewardList[i].id == _rewardList[index].id) count++;
+                        if (count == 1 && i == index) isFirst = true;
+                    }
+                    bool open = count == ItemDataManager.GetItemNum(_rewardList[index].id) && isFirst;
+
+                    if (!open)
+                    {
+                        _chooseIndex = index;
+                        ClickItem(index);
+                    }
+                }
+            }
+            ClickPass();
+        }
+
+        private void ClickPass()
+        {
+            _ui.m_touchFlipOpen.touchable = true;
             Timers.inst.Add(1f, 0, UpDataTime);
         }
 
         private void UpDataTime(object param = null)
         {
-            if (_recordOpenIndex.Count >= _rewardList.Count) { 
+            if (_recordOpenIndex.Count >= _rewardList.Count) {
                 Timers.inst.Remove(UpDataTime);
+                _ui.m_touchFlipOpen.touchable = false;
                 HideOtherShowWindow();
             }
 
@@ -310,6 +378,7 @@ namespace GFGGame
             if (_recordOpenIndex.Contains(index))
             {
                 Timers.inst.Remove(UpClickDataTime);
+                _ui.m_touchFlipOpen.touchable = false;
                 HideOtherShowWindow();
             }
             else

+ 1 - 0
GameClient/Assets/Game/HotUpdate/Views/LuckyBox/LuckyBoxNewDressView.cs

@@ -167,6 +167,7 @@ namespace GFGGame
                 //if (_newRewardList.Count == 0 && _oldRewardList.Count == 0)
                 //{
                     this.Hide();
+                    EventAgent.DispatchEvent(ConstMessage.LUCKY_BOX_REWARD_SHOW);
             //    }
             //    else {
             //        _ui.m_t_open.Play();

+ 19 - 13
GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryDialogView.cs

@@ -38,7 +38,7 @@ namespace GFGGame
         private string lastTextFieldType;   // 上一段文本框的类型
         private bool IsTeaParty;    //是否是茶话会里的对话
 
-        TypingFadeEffect _typingEffect;
+        TypingFadeEffectPro _typingEffect;
 
         //屏幕效果中
         private Action<object> _onScreenEffectComplete;
@@ -368,7 +368,7 @@ namespace GFGGame
             }
             else
             {
-                ShowDialog(storyDialogCfg);
+                Timers.inst.StartCoroutine(ShowDialog(storyDialogCfg));
             }
         }
 
@@ -401,17 +401,23 @@ namespace GFGGame
             _ui.m_list.visible = false;
         }
 
-        private void ShowDialog(StoryDialogCfg storyDialogCfg)
+        private IEnumerator ShowDialog(StoryDialogCfg storyDialogCfg)
         {
             if (storyDialogCfg.showChangeName == 1 && StorageDataManager.Instance.GetStorageValue(ConstStorageId.CHANGE_NAME) == 0)
             {
+                GameController.ShowCreateRole();
+                StoryDialogDataManager.Instance.waiting = true;
+                while (StoryDialogDataManager.Instance.waiting)
+                {
+                    yield return new WaitForEndOfFrame();
+                }
                 if (_autoPlay)
                 {
                     _ui.m_btnAutoPlay.selected = false;
                     OnClickBtnAutoPlay();
                 }
-                GameController.ShowCreateRole();
             }
+
             _ui.m_loaMask.url = ResPathUtil.GetBgImgPath(storyDialogCfg.maskRes);
             _ui.m_btnAutoPlay.enabled = true;
             _ui.m_list.visible = false;
@@ -522,11 +528,11 @@ namespace GFGGame
                 if (!lastTextFieldType.Equals("name"))
                 {
                     lastTextFieldType = "name";
-                    //if(IsTeaParty)
-                    //    _ui.m_t1.Play();
-                    //else
-                    //    _ui.m_t0.Play();
-                    _ui.m_t0.Play();
+                    StoryDialogDataManager.Instance.waiting = true;
+                    _ui.m_t0.Play(()=>
+                    {
+                        StoryDialogDataManager.Instance.waiting = false;
+                    });
                 }
             }
             else
@@ -544,7 +550,7 @@ namespace GFGGame
             }
             _wordList = Regex.Split(words, "&&");
             _wordIndex = 0;
-            _typingEffect = new TypingFadeEffect(_wordTextField);
+            _typingEffect = new TypingFadeEffectPro(_wordTextField);
             _typingEffect.typeFinishedAction = ShowCurrentWords;
 
             ShowNextDialog();
@@ -622,7 +628,7 @@ namespace GFGGame
             ArrayList letters = StoryUtil.GetLettersList(_currentWords);
             _canClickBtnNext = false;
 
-            while (StoryDialogDataManager.Instance.waitPicFade)
+            while (StoryDialogDataManager.Instance.waitPicFade || StoryDialogDataManager.Instance.waiting)
             {
                 yield return new WaitForEndOfFrame();
             }
@@ -634,7 +640,7 @@ namespace GFGGame
 
         private void StartTyping()
         {
-            _typingEffect.SetSpeed(GameConst.LETTERS_INTERVAL_MAX / _speedAutoPlay);
+            _typingEffect.SetSpeed(_speedAutoPlay);
             _typingEffect.Start();
         }
 
@@ -774,7 +780,7 @@ namespace GFGGame
                 _ui.m_btnSpeedUp.text = "";
             }
 
-            _typingEffect?.SetSpeed(GameConst.LETTERS_INTERVAL_MAX / _speedAutoPlay);
+            _typingEffect?.SetSpeed(_speedAutoPlay);
         }
 
         private void StopAutoPlay()

+ 279 - 0
GameClient/Assets/Game/HotUpdate/Views/MainStory/TypingFadeEffectPro.cs

@@ -0,0 +1,279 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using FairyGUI;
+using System;
+using System.Threading.Tasks;
+
+namespace GFGGame
+{
+    /// <summary>
+    /// 使用异步函数实现多个字同时渐变
+    /// </summary>
+    public class TypingFadeEffectPro: TypingEffect
+    {
+        protected Color32[] _backupColor32s;
+        protected Color32[] _color32s;
+
+        public Action typeFinishedAction;
+        // 出现下一个字符的间隔
+        public float showNextWordInternal = 0.06f;
+        // 字符渐变时间
+        protected float charFadeDuration = 0.08f;
+
+        /// <summary>
+        /// 
+        /// </summary>
+        /// <param name="textField"></param>
+        public TypingFadeEffectPro(TextField textField) : base(textField) { }
+
+        /// <summary>
+        /// 
+        /// </summary>
+        /// <param name="textField"></param>
+        public TypingFadeEffectPro(GTextField textField) : base(textField) { }
+
+        /// <summary>
+        /// 开始打字效果。可以重复调用重复启动。
+        /// </summary>
+        public new void Start()
+        {
+            _textField.graphics.meshModifier -= OnMeshModified;
+            _textField.Redraw();
+            _textField.graphics.meshModifier += OnMeshModified;
+
+            _stroke = false;
+            _shadow = false;
+            _strokeDrawDirs = 4;
+            _mainLayerStart = 0;
+            _mainLayerVertCount = 0;
+            _printIndex = 0;
+            _vertIndex = 0;
+            _started = true;
+
+            int vertCount = _textField.graphics.mesh.vertexCount;
+
+            UpdateBackUp();
+
+            // Clear mesh info
+            if (_vertices == null || _vertices.Length != vertCount)
+                _vertices = new Vector3[vertCount];
+
+            if (_color32s == null || _color32s.Length != vertCount)
+            {
+                _color32s = new Color32[vertCount];
+            }
+
+            Vector3 zero = Vector3.zero;
+            for (int i = 0; i < vertCount; i++)
+                _vertices[i] = zero;
+            _textField.graphics.mesh.vertices = _vertices;
+
+
+
+            //隐藏所有混排的对象
+            if (_textField.richTextField != null)
+            {
+                int ec = _textField.richTextField.htmlElementCount;
+                for (int i = 0; i < ec; i++)
+                    _textField.richTextField.ShowHtmlObject(i, false);
+            }
+
+            int charCount = _textField.charPositions.Count;
+            for (int i = 0; i < charCount; i++)
+            {
+                TextField.CharPosition cp = _textField.charPositions[i];
+                _mainLayerVertCount += cp.vertCount;
+            }
+
+            if (_mainLayerVertCount < vertCount) //说明有描边或者阴影
+            {
+                int repeat = vertCount / _mainLayerVertCount;
+                _stroke = repeat > 2;
+                _shadow = repeat % 2 == 0;
+                _mainLayerStart = vertCount - vertCount / repeat;
+                _strokeLayerStart = _shadow ? (vertCount / repeat) : 0;
+                _strokeDrawDirs = repeat > 8 ? 8 : 4;
+            }
+
+            Timers.inst.StartCoroutine(UpdateFadeProgress());
+        }
+
+        public void PrintFade(int printIndex, byte alpha, int vertIndex)
+        {
+            TextField.CharPosition cp;
+            List<TextField.CharPosition> charPositions = _textField.charPositions;
+            int listCnt = charPositions.Count;
+
+            cp = charPositions[printIndex];
+            if (cp.vertCount > 0)
+                output(cp.vertCount, alpha, vertIndex);
+            if (cp.imgIndex > 0) //这是一个图片
+            {
+                _textField.richTextField.ShowHtmlObject(cp.imgIndex - 1, true);
+                return;
+            }
+            else if (!char.IsWhiteSpace(_textField.parsedText[Mathf.Max(printIndex - 1, 0)]))
+                return;
+        }
+
+        private void output(int vertCount, byte alpha, int vertIndex)
+        {
+            int start, end;
+
+            start = _mainLayerStart + vertIndex;
+            end = start + vertCount;
+            //Vector3[] vertices = new Vector3[end - start];
+
+            for (int i = start; i < end; i++)
+            {
+                _vertices[i] = _backupVerts[i];
+                _color32s[i] = _backupColor32s[i];
+                _color32s[i].a = alpha;
+            }
+                
+            if (_stroke)
+            {
+                start = _strokeLayerStart + vertIndex;
+                end = start + vertCount;
+                for (int i = start; i < end; i++)
+                {
+                    for (int j = 0; j < _strokeDrawDirs; j++)
+                    {
+                        int k = i + _mainLayerVertCount * j;
+                        _vertices[k] = _backupVerts[k];
+                    }
+                }
+            }
+
+            if (_shadow)
+            {
+                start = vertIndex;
+                end = start + vertCount;
+                for (int i = start; i < end; i++)
+                {
+                    _vertices[i] = _backupVerts[i];
+                }
+            }
+
+            _textField.graphics.mesh.vertices = _vertices;
+            _textField.graphics.mesh.colors32 = _color32s;
+        }
+
+
+        public new void Cancel()
+        {
+            if (!_started)
+                return;
+
+            _started = false;
+            _textField.graphics.meshModifier -= OnMeshModified;
+            _textField.graphics.SetMeshDirty();
+        }
+
+        /// <summary>
+        /// 当打字过程中,文本可能会由于字体纹理更改而发生字体重建,要处理这种情况。
+        /// 图片对象不需要处理,因为HtmlElement.status里设定的隐藏标志不会因为Mesh更新而被冲掉。
+        /// </summary>
+        void OnMeshModified()
+        {
+            if (_textField.graphics.mesh.vertexCount != _backupVerts.Length) //可能文字都改了
+            {
+                Cancel();
+                return;
+            }
+
+            UpdateBackUp();
+
+            int vertCount = _vertices.Length;
+            Vector3 zero = Vector3.zero;
+            for (int i = 0; i < vertCount; i++)
+            {
+                if (_vertices[i] != zero)
+                    _vertices[i] = _backupVerts[i];
+            }
+
+            _textField.graphics.mesh.vertices = _vertices;
+        }
+
+        IEnumerator UpdateFadeProgress()
+        {
+            List<TextField.CharPosition> charPositions = _textField.charPositions;
+            int listCnt = charPositions.Count;
+            float timer = 0;
+
+            //for(int i = 0; i < listCnt - 1; i++)
+            //{
+            //    PrintFade(i, 0, charPositions[i].vertCount);
+            //    yield return new WaitForEndOfFrame();
+            //}
+
+            while (true)
+            {
+                if (!_started)
+                    break;
+
+                if(timer>= showNextWordInternal)
+                {
+                    timer = 0;
+                    if (_printIndex >= listCnt - 1)
+                    {
+                        Cancel();
+                        typeFinishedAction.Invoke();
+                        break;
+                    }
+                    else
+                    {
+                        UpdateFadeProgressSingle(_printIndex, _vertIndex);
+                        ++_printIndex;
+                        _vertIndex += charPositions[_printIndex].vertCount;
+                    }
+                }
+                timer += Time.deltaTime;
+                yield return new WaitForEndOfFrame();
+                //yield return new WaitForSeconds(progressShowNextWord);
+            }
+        }
+
+        async Task UpdateFadeProgressSingle(int printIndex, int vertIndex)
+        {
+            float _currentCharFadeTime = 0;
+            while (true)
+            {
+                if (!_started)
+                    break;
+
+                _currentCharFadeTime += 0.016f;
+                float progress = _currentCharFadeTime / charFadeDuration;
+                if (progress >= 1)
+                {
+                    PrintFade(printIndex, 255, vertIndex);
+                    break;
+                }
+                else
+                {
+                    byte alpha = (byte)(progress * 255);
+                    PrintFade(printIndex, alpha, vertIndex);
+                }
+                await Task.Delay(16);
+            }
+        }
+
+        // Back up origin text info
+        protected void UpdateBackUp()
+        {
+            _backupVerts = _textField.graphics.mesh.vertices;
+            _backupColor32s = _textField.graphics.mesh.colors32;
+        }
+
+        public void SetSpeed(float speed)
+        {
+            charFadeDuration /= speed;
+            showNextWordInternal /= speed;
+        }
+
+    }
+
+}
+
+

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/MainStory/TypingFadeEffectPro.cs.meta

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

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

@@ -7,6 +7,7 @@ using System;
 using System.Linq;
 using Hutool;
 using UI.CommonGame;
+using Assets.Game.HotUpdate.Data;
 
 namespace GFGGame
 {
@@ -239,6 +240,7 @@ namespace GFGGame
             Timers.inst.Remove(CheckGuide);
             Timers.inst.AddUpdate(CheckGuide);
             Timers.inst.AddUpdate(Update);
+            Update(null);
 
             _ui.m_openViewAction.Play(MainUIAnimFinished);
         }
@@ -782,20 +784,35 @@ namespace GFGGame
                 ActivityDataManager.Instance.AllSevenDayBonusGot()));
             }
 
+            UpdateLimitedActvityState();
+            UpdateTime();
+
+            //特惠礼包/限时礼包窗口内的倒计时
+            UpGiftBox1();
+            UpGiftBox2();
+            EventAgent.DispatchEvent(ConstMessage.LUCKY_BOX_TIME);
+        }
+
+        private void UpdateLimitedActvityState()
+        {
             _ui.m_btnActivityDay7.target.visible = ActivityDay7DataManager.Instance.CheckOpen();
+            //_ui.m_btnLimitedRechargeDBGift.target.visible = LimitedRechargeDBGiftDataManager.Instance.CheckOpen();
+            _ui.m_btnLimitedRechargeDBGift.target.visible = false;
+        }
 
+        private void UpdateTime()
+        {
             if (_ui.m_btnActivityDay7.target.visible)
             {
                 long time = ActivityDay7DataManager.Instance.GetEndTime() - TimeHelper.ServerNow();
                 _ui.m_btnActivityDay7.m_txtTime.text = time > TimeUtil.SECOND_PER_DAY * 1000 ? TimeUtil.FormattingTimeTo_DDHHmm(time) : TimeUtil.FormattingTimeTo_HHmmss(time);
-
             }
 
-
-            //特惠礼包/限时礼包窗口内的倒计时
-            UpGiftBox1();
-            UpGiftBox2();
-            EventAgent.DispatchEvent(ConstMessage.LUCKY_BOX_TIME);
+            if (_ui.m_btnLimitedRechargeDBGift.target.visible)
+            {
+                long time = LimitedRechargeDBGiftDataManager.Instance.GetEndTime() - TimeHelper.ServerNow();
+                _ui.m_btnLimitedRechargeDBGift.m_txtTime.text = time > TimeUtil.SECOND_PER_DAY * 1000 ? TimeUtil.FormattingTimeTo_DDHHmm(time) : TimeUtil.FormattingTimeTo_HHmmss(time);
+            }
         }
 
         private void ShowExitAlert()
@@ -973,6 +990,8 @@ namespace GFGGame
             RedDotController.Instance.SetComRedDot(_ui.m_btnActivityLuckyBox.target, RedDotDataManager.Instance.GetMeiRiTeHuiRed() || RedDotDataManager.Instance.GetActLuckyBoxRewardRed() || RedDotDataManager.Instance.GetActLuckyBoxTaskdRed() || RedDotDataManager.Instance.GetGiftBagRewardRed(), "", 9, -1);
             RedDotController.Instance.SetComRedDot(_btnBag, RedDotDataManager.Instance.GetMainBagGiftRed(), "", -8);
             RedDotController.Instance.SetComRedDot(_ui.m_btnActivityDay7.target, RedDotDataManager.Instance.GetActivityDay7Red());
+            RedDotController.Instance.SetComRedDot(_ui.m_btnLimitedRechargeDBGift.target, RedDotDataManager.Instance.GetLimitedRechargeDBGiftRed());
+
 
             RedDotController.Instance.SetComRedDot(_ui.m_btnXiuFang.target, RedDotDataManager.Instance.GetClothingFosterRed() || RedDotDataManager.Instance.GetClothingSyntheticRed(), "", -10, 20);
             RedDotController.Instance.SetComRedDot(_ui.m_btnCiPai.target, RedDotDataManager.Instance.GetCardRed(), "", -10, 20);

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Views/Studio/StudioFilingRewardView.cs

@@ -53,7 +53,7 @@ namespace GFGGame
         protected override void OnShown()
         {
             base.OnShown();
-            _ui.m_bg.url = ResPathUtil.GetCommonGameResPath("ty_tc_s");
+            _ui.m_bg.url = ResPathUtil.GetCommonGameResPath("ty_tc_l");
             _ui.m_txtScore.text = string.Format("本章评分: {0}", StudioDataManager.Instance.GetStudioDataById(StudioDataManager.Instance.filingChapterId).ChapterScore);
             UpdateView();
         }

BIN
GameClient/Assets/ResIn/UI/ActivityThemeLuckyBox/ActivityThemeLuckyBox_atlas0!a.png


+ 96 - 0
GameClient/Assets/ResIn/UI/ActivityThemeLuckyBox/ActivityThemeLuckyBox_atlas0!a.png.meta

@@ -0,0 +1,96 @@
+fileFormatVersion: 2
+guid: 9aaf3b15c96f8c348a7983796a2737d6
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
GameClient/Assets/ResIn/UI/ActivityThemeLuckyBox/ActivityThemeLuckyBox_atlas0.png


BIN
GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0!a.png


+ 96 - 0
GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0!a.png.meta

@@ -0,0 +1,96 @@
+fileFormatVersion: 2
+guid: 70d83c9b5148e1547a7ff65c62d8ff46
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0.png


BIN
GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_1!a.png


+ 96 - 0
GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_1!a.png.meta

@@ -0,0 +1,96 @@
+fileFormatVersion: 2
+guid: a7664341a53f8d748a0e568cd669cf78
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_1.png


BIN
GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_2!a.png


+ 96 - 0
GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_2!a.png.meta

@@ -0,0 +1,96 @@
+fileFormatVersion: 2
+guid: 91af07572af61894a92987654b2b9e9b
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_2.png


BIN
GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_3!a.png


+ 96 - 0
GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_3!a.png.meta

@@ -0,0 +1,96 @@
+fileFormatVersion: 2
+guid: d30728ad26aa5f54bbebea3cfd8bf713
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_3.png


BIN
GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_4!a.png


+ 96 - 0
GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_4!a.png.meta

@@ -0,0 +1,96 @@
+fileFormatVersion: 2
+guid: 759aa5926eeeb3548b1b86fc45f6f9b8
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_atlas0_4.png


BIN
GameClient/Assets/ResIn/UI/DailyWelfare/DailyWelfare_fui.bytes


BIN
GameClient/Assets/ResIn/UI/FieldGuide/FieldGuide_atlas0!a.png


BIN
GameClient/Assets/ResIn/UI/FieldGuide/FieldGuide_atlas0.png


BIN
GameClient/Assets/ResIn/UI/FieldGuide/FieldGuide_atlas0_1!a.png


BIN
GameClient/Assets/ResIn/UI/FieldGuide/FieldGuide_atlas0_1.png


BIN
GameClient/Assets/ResIn/UI/FieldGuide/FieldGuide_atlas0_2.png


BIN
GameClient/Assets/ResIn/UI/FieldGuide/FieldGuide_fui.bytes


BIN
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0!a.png


BIN
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0.png


BIN
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_1!a.png


BIN
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_1.png


BIN
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_2!a.png


BIN
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_2.png


BIN
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_3!a.png


BIN
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_3.png


BIN
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_4!a.png


BIN
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_4.png


BIN
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_fui.bytes


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0!a.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0_1!a.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0_1.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0_2.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0_3!a.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0_3.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0_4!a.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0_4.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0_5!a.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0_5.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0_6!a.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0_6.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0_7!a.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0_7.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0_8!a.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0_8.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0_9!a.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_atlas0_9.png


BIN
GameClient/Assets/ResIn/UI/Main/Main_fui.bytes


BIN
GameClient/Assets/ResIn/UI/PopWindow_atlas0!a.png


+ 96 - 0
GameClient/Assets/ResIn/UI/PopWindow_atlas0!a.png.meta

@@ -0,0 +1,96 @@
+fileFormatVersion: 2
+guid: 67fee5d0d0de7d646a81eb188e2d25cc
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
GameClient/Assets/ResIn/UI/PopWindow_atlas0.png


BIN
GameClient/Assets/ResIn/UI/Store/Store_atlas0!a.png


+ 96 - 0
GameClient/Assets/ResIn/UI/Store/Store_atlas0!a.png.meta

@@ -0,0 +1,96 @@
+fileFormatVersion: 2
+guid: a337a7437266fbc4da300b710f6dda4f
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
GameClient/Assets/ResIn/UI/Store/Store_atlas0.png


BIN
GameClient/Assets/ResIn/UI/Store/Store_atlas0_1!a.png


+ 96 - 0
GameClient/Assets/ResIn/UI/Store/Store_atlas0_1!a.png.meta

@@ -0,0 +1,96 @@
+fileFormatVersion: 2
+guid: f8cda7b3279810043a202c5e4ffe7360
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
GameClient/Assets/ResIn/UI/Store/Store_atlas0_1.png


BIN
GameClient/Assets/ResIn/UI/Store/Store_atlas0_2!a.png


+ 96 - 0
GameClient/Assets/ResIn/UI/Store/Store_atlas0_2!a.png.meta

@@ -0,0 +1,96 @@
+fileFormatVersion: 2
+guid: fff22622da324a44ea26f2be2bb75b6e
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
GameClient/Assets/ResIn/UI/Store/Store_atlas0_2.png


BIN
GameClient/Assets/ResIn/UI/Store/Store_atlas0_3!a.png


+ 96 - 0
GameClient/Assets/ResIn/UI/Store/Store_atlas0_3!a.png.meta

@@ -0,0 +1,96 @@
+fileFormatVersion: 2
+guid: ede7a706dbad5ac4f869e1a5b4ef8bfe
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

BIN
GameClient/Assets/ResIn/UI/Store/Store_atlas0_3.png


BIN
GameClient/Assets/ResIn/UI/Store/Store_atlas_hhx91q!a.png


+ 96 - 0
GameClient/Assets/ResIn/UI/Store/Store_atlas_hhx91q!a.png.meta

@@ -0,0 +1,96 @@
+fileFormatVersion: 2
+guid: 0b43cf3784cf64b46bff23df79b83b90
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

Энэ ялгаанд хэт олон файл өөрчлөгдсөн тул зарим файлыг харуулаагүй болно