Browse Source

Merge branch 'master' into zhaoyang

zhaoyang 2 years ago
parent
commit
33ab3ce3dd
100 changed files with 995 additions and 492 deletions
  1. 1 1
      FGUIProject/assets/ActivityThemeLuckyBox/compoents/ListItem.xml
  2. 5 5
      FGUIProject/assets/Arena/components/ComFightScore.xml
  3. BIN
      FGUIProject/assets/Arena/images/jzsjzs_ksyxks.png
  4. 12 9
      FGUIProject/assets/Bag/GiftBoxSelectorUI.xml
  5. 2 2
      FGUIProject/assets/CommonGame/BuyConfirmUI.xml
  6. 39 32
      FGUIProject/assets/CommonGame/ItemExchangeUI.xml
  7. 2 4
      FGUIProject/assets/CommonGame/components/BtnStyle1Big.xml
  8. 19 19
      FGUIProject/assets/CommonGame/components/ComponentValueBar.xml
  9. BIN
      FGUIProject/assets/CommonGame/images/back.png
  10. BIN
      FGUIProject/assets/CommonGame/images/db_jiajian_1.png
  11. BIN
      FGUIProject/assets/CommonGame/images/lm_db_3.png
  12. BIN
      FGUIProject/assets/CommonGame/images/tanchuang_2.png
  13. BIN
      FGUIProject/assets/CommonGame/images/wplb_db.png
  14. 5 1
      FGUIProject/assets/CommonGame/package.xml
  15. 1 1
      FGUIProject/assets/DailyWelfare/components/ListChargeItem.xml
  16. 5 5
      FGUIProject/assets/DressUp/components/ComFightScore.xml
  17. 2 2
      FGUIProject/assets/League/LeagueAnswerUI.xml
  18. 5 3
      FGUIProject/assets/League/LeagueAnsweringUI.xml
  19. 1 1
      FGUIProject/assets/League/LeagueConstructUI.xml
  20. 3 2
      FGUIProject/assets/League/LeagueJoinUI.xml
  21. 7 7
      FGUIProject/assets/League/LeagueMemberAppointUI.xml
  22. 2 2
      FGUIProject/assets/League/LeagueMemberUI.xml
  23. 2 2
      FGUIProject/assets/League/ListAnswerRuleItem.xml
  24. 9 8
      FGUIProject/assets/League/components/ListJoinItem.xml
  25. 2 2
      FGUIProject/assets/League/package.xml
  26. 1 1
      FGUIProject/assets/LuckyBox/LuckyBoxActivityUI.xml
  27. 3 1
      FGUIProject/assets/LuckyBox/LuckyBoxNewDressUI.xml
  28. 1 1
      FGUIProject/assets/LuckyBox/components/ComCard.xml
  29. 7 3
      FGUIProject/assets/Main/MainUI.xml
  30. 7 6
      FGUIProject/assets/Main/components/ListCardItem.xml
  31. BIN
      FGUIProject/assets/Main/imagesNew/db_qipaokuang.png
  32. 1 0
      FGUIProject/assets/Main/package.xml
  33. 0 1
      FGUIProject/assets/Store/components/ComVipLv.xml
  34. 2 2
      FGUIProject/assets/Store/components/ListGiftItem.xml
  35. 3 3
      FGUIProject/assets/Store/components/ListShopItem.xml
  36. 1 1
      FGUIProject/assets/Store/components/ProgressBar1.xml
  37. 1 1
      FGUIProject/assets/Task/BattlePassRewardUI.xml
  38. 2 2
      FGUIProject/assets/Task/CombTaskUI.xml
  39. 2 2
      FGUIProject/assets/Task/TaskUI.xml
  40. 1 1
      GameClient/Assets/Editor/ArtsRes/ImagesClip/ImagesClip.cs
  41. 31 11
      GameClient/Assets/Editor/Xasset/Builds/BuildTask.cs
  42. 6 4
      GameClient/Assets/Game/HotUpdate/Constant/ConstMessage.cs
  43. 1 1
      GameClient/Assets/Game/HotUpdate/Constant/ConstStoreSubId.cs
  44. 21 21
      GameClient/Assets/Game/HotUpdate/Controller/BuyConfirmController.cs
  45. 1 0
      GameClient/Assets/Game/HotUpdate/Controller/GameController.cs
  46. 4 4
      GameClient/Assets/Game/HotUpdate/Controller/GuideController.cs
  47. 19 0
      GameClient/Assets/Game/HotUpdate/Data/ActivityDataManager.cs
  48. 43 4
      GameClient/Assets/Game/HotUpdate/Data/ActivityDay7DataManager.cs
  49. 11 3
      GameClient/Assets/Game/HotUpdate/Data/ArenaDataManager.cs
  50. 9 1
      GameClient/Assets/Game/HotUpdate/Data/BattlePassTaskDataManager.cs
  51. 1 1
      GameClient/Assets/Game/HotUpdate/Data/DressUpMenuSuitDataManager.cs
  52. 2 4
      GameClient/Assets/Game/HotUpdate/Data/FunctionOpenDataManager.cs
  53. 3 1
      GameClient/Assets/Game/HotUpdate/Data/InstanceZonesDataManager.cs
  54. 13 0
      GameClient/Assets/Game/HotUpdate/Data/ItemDataManager.cs
  55. 12 1
      GameClient/Assets/Game/HotUpdate/Data/LeagueDataManager.cs
  56. 11 0
      GameClient/Assets/Game/HotUpdate/Data/LimitedTimeGiftBoxDataManager.cs
  57. 4 1
      GameClient/Assets/Game/HotUpdate/Data/MainStoryDataManager.cs
  58. 196 7
      GameClient/Assets/Game/HotUpdate/Data/RedDotDataManager.cs
  59. 12 1
      GameClient/Assets/Game/HotUpdate/Data/ShopViewManager.cs
  60. 1 1
      GameClient/Assets/Game/HotUpdate/Data/StudioDataManager.cs
  61. 24 5
      GameClient/Assets/Game/HotUpdate/Data/TaskDataManager.cs
  62. 22 16
      GameClient/Assets/Game/HotUpdate/DressUp/DressUpObj.cs
  63. 113 97
      GameClient/Assets/Game/HotUpdate/DressUp/DressUpUtil.cs
  64. 1 1
      GameClient/Assets/Game/HotUpdate/DressUp/SceneController.cs
  65. 3 3
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Bag/UI_GiftBoxSelectorUI.cs
  66. 6 6
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CommonGame/UI_BuyConfirmUI.cs
  67. 3 6
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CommonGame/UI_ItemExchangeUI.cs
  68. 0 3
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_ListCardItem.cs
  69. 3 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_MainUI.cs
  70. 0 3
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Store/UI_ComVipLv.cs
  71. 6 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Task/UI_CombTaskUI.cs
  72. 6 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Task/UI_TaskUI.cs
  73. 1 0
      GameClient/Assets/Game/HotUpdate/ServerProxy/ActivityDay7SProxy.cs
  74. 2 1
      GameClient/Assets/Game/HotUpdate/ServerProxy/ActivityGlobalSProxy.cs
  75. 1 1
      GameClient/Assets/Game/HotUpdate/ServerProxy/ActivitySProxy.cs
  76. 9 2
      GameClient/Assets/Game/HotUpdate/ServerProxy/ArenaSproxy.cs
  77. 3 0
      GameClient/Assets/Game/HotUpdate/ServerProxy/BattlePassTaskSProxy.cs
  78. 2 2
      GameClient/Assets/Game/HotUpdate/ServerProxy/DailyWelfareSProxy.cs
  79. 21 0
      GameClient/Assets/Game/HotUpdate/ServerProxy/ItemProxy.cs
  80. 15 7
      GameClient/Assets/Game/HotUpdate/ServerProxy/LeagueSproxy.cs
  81. 4 0
      GameClient/Assets/Game/HotUpdate/ServerProxy/PoemGallerySProxy.cs
  82. 3 1
      GameClient/Assets/Game/HotUpdate/ServerProxy/ShopSProxy.cs
  83. 2 1
      GameClient/Assets/Game/HotUpdate/ServerProxy/TaskSProxy.cs
  84. 3 3
      GameClient/Assets/Game/HotUpdate/Utils/ResPathUtil.cs
  85. 9 11
      GameClient/Assets/Game/HotUpdate/Views/ActivityDay7/ActivityDay7View.cs
  86. 2 0
      GameClient/Assets/Game/HotUpdate/Views/ActivityThemeLuckyBox/ActivityThemeLuckyBoxBonusView.cs
  87. 15 2
      GameClient/Assets/Game/HotUpdate/Views/ActivityThemeLuckyBox/ActivityThemeLuckyBoxView.cs
  88. 2 1
      GameClient/Assets/Game/HotUpdate/Views/Arena/ArenaRankView.cs
  89. 4 17
      GameClient/Assets/Game/HotUpdate/Views/Arena/ArenaView.cs
  90. 85 13
      GameClient/Assets/Game/HotUpdate/Views/Bag/BagExchangeView.cs
  91. 19 4
      GameClient/Assets/Game/HotUpdate/Views/Bag/BagView.cs
  92. 1 1
      GameClient/Assets/Game/HotUpdate/Views/Bag/GiftBoxSelectorView.cs
  93. 12 7
      GameClient/Assets/Game/HotUpdate/Views/Card/CardFosterView.cs
  94. 1 1
      GameClient/Assets/Game/HotUpdate/Views/Card/CardSkillView.cs
  95. 1 1
      GameClient/Assets/Game/HotUpdate/Views/Common/Controller/LuckyBoxController.cs
  96. 11 0
      GameClient/Assets/Game/HotUpdate/Views/Common/Controller/ValueBarController.cs
  97. 1 1
      GameClient/Assets/Game/HotUpdate/Views/CommonGame/ApproachView.cs
  98. 15 72
      GameClient/Assets/Game/HotUpdate/Views/CommonGame/BuyConfirmView.cs
  99. 7 1
      GameClient/Assets/Game/HotUpdate/Views/DailyWelfare/DailyWelfareView.cs
  100. 0 3
      GameClient/Assets/Game/HotUpdate/Views/DressUp/ArenaDressUpFightView.cs

+ 1 - 1
FGUIProject/assets/ActivityThemeLuckyBox/compoents/ListItem.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <component size="882,208">
-  <controller name="c1" pages="0,,1,,2,,3," selected="0">
+  <controller name="c1" pages="0,,1,,2,,3," selected="1">
     <remark page="0" value="不可领取"/>
     <remark page="1" value="可领取"/>
     <remark page="2" value="已领取"/>

+ 5 - 5
FGUIProject/assets/Arena/components/ComFightScore.xml

@@ -6,11 +6,11 @@
       <gearSize controller="c1" pages="1" values="365,168,-1,-1" default="365,168,-1,1"/>
     </image>
     <image id="n55_jcej" name="n55" src="jcej4o" fileName="images/jjcdi_jjxian.png" xy="19,53" group="n60_jcej"/>
-    <text id="n56_jcej" name="n56" xy="20,8" size="152,42" group="n60_jcej" fontSize="30" color="#f8f1db" text="竞技场战力"/>
-    <text id="n57_jcej" name="txtSuitScore" xy="20,60" size="124,32" group="n60_jcej" fontSize="22" color="#f8f1db" vars="true" text="搭配战力:{value=0}"/>
-    <text id="n58_jcej" name="txtClickScore" xy="20,87" size="167,32" group="n60_jcej" fontSize="22" color="#f8f1db" vars="true" text="卓越点击战力:{value=0}"/>
-    <text id="n59_jcej" name="txtCardScore" xy="20,114" size="124,32" group="n60_jcej" fontSize="22" color="#f8f1db" vars="true" text="卡牌战力:{value=0}"/>
-    <group id="n60_jcej" name="n60" xy="19,8" size="326,138" advanced="true">
+    <text id="n56_jcej" name="n56" xy="20,8" size="152,42" group="n60_jcej" fontSize="30" color="#f8f1db" text="飞花令战力"/>
+    <text id="n57_jcej" name="txtSuitScore" xy="20,60" size="122,31" group="n60_jcej" fontSize="22" color="#f8f1db" vars="true" text="搭配战力:{value=0}"/>
+    <text id="n58_jcej" name="txtClickScore" xy="20,87" size="166,31" group="n60_jcej" fontSize="22" color="#f8f1db" vars="true" text="卓越点击战力:{value=0}"/>
+    <text id="n59_jcej" name="txtCardScore" xy="20,114" size="122,31" group="n60_jcej" fontSize="22" color="#f8f1db" vars="true" text="卡牌战力:{value=0}"/>
+    <group id="n60_jcej" name="n60" xy="19,8" size="326,137" advanced="true">
       <gearXY controller="c1" pages="0,1" values="19,8|19,19"/>
     </group>
   </displayList>

BIN
FGUIProject/assets/Arena/images/jzsjzs_ksyxks.png


+ 12 - 9
FGUIProject/assets/Bag/GiftBoxSelectorUI.xml

@@ -3,15 +3,18 @@
   <displayList>
     <image id="n0_v5no" name="n0" src="v5notm5" fileName="images/tanchuang_2.png" xy="-61,-37" size="1023,1026"/>
     <component id="n31_cu9w" name="btnCancel" src="cu9wtmj" fileName="components/BtnCancel.xml" xy="849,-29" group="n11_v5no"/>
-    <image id="n14_v5no" name="n14" src="v5notm0" fileName="images/lm_db_3.png" xy="331,135" size="575,274" group="n11_v5no"/>
-    <image id="n1_v5no" name="n1" src="9jv65m" fileName="imagesNew/lm_dt_zsx1.png" pkg="eg2y0ldp" xy="243,72" group="n11_v5no"/>
-    <image id="n2_v5no" name="n2" src="9jv65m" fileName="imagesNew/lm_dt_zsx1.png" pkg="eg2y0ldp" xy="587,71" pivot="0.5,0" group="n11_v5no" scale="-1,1"/>
-    <image id="n6_v5no" name="n6" src="v5notm9" fileName="images/wplb_db.png" xy="-9,76" group="n11_v5no"/>
-    <text id="n15_v5no" name="txtItemDes" xy="390,165" size="462,217" group="n11_v5no" fontSize="32" color="#b08d5c" leading="1" autoSize="ellipsis" text="摘星道具摘星道具摘星道具摘星道 具摘星道具摘星道具摘星道具"/>
-    <text id="n3_v5no" name="txtName" xy="376,53" size="210,54" group="n11_v5no" fontSize="40" color="#8d6f45" align="center" vAlign="middle" leading="1" autoSize="shrink" text="稀有升星材料(自选)"/>
-    <text id="n5_v5no" name="txtTotalNum" xy="725,86" size="206,41" group="n11_v5no" fontSize="28" color="#b08d5c" align="center" leading="1" autoSize="shrink" text="已拥有:1940"/>
-    <loader id="n7_v5no" name="loaIcon" xy="171,252" pivot="0.5,0.5" anchor="true" size="164,164" group="n11_v5no" aspect="true" autoSize="true"/>
-    <group id="n11_v5no" name="n11" xy="-9,-29" size="946,456"/>
+    <image id="n14_v5no" name="n14" src="v5notm0" fileName="images/lm_db_3.png" xy="331,138" size="575,274" group="n11_v5no"/>
+    <image id="n6_v5no" name="n6" src="v5notm9" fileName="images/wplb_db.png" xy="-9,79" group="n11_v5no"/>
+    <text id="n15_v5no" name="txtItemDes" xy="390,168" size="462,217" group="n11_v5no" fontSize="32" color="#b08d5c" leading="1" autoSize="ellipsis" text="摘星道具摘星道具摘星道具摘星道 具摘星道具摘星道具摘星道具"/>
+    <text id="n5_v5no" name="txtTotalNum" xy="725,89" size="206,41" group="n11_v5no" fontSize="28" color="#b08d5c" align="center" leading="1" autoSize="shrink" text="已拥有:1940"/>
+    <loader id="n7_v5no" name="loaIcon" xy="171,255" pivot="0.5,0.5" anchor="true" size="164,164" group="n11_v5no" aspect="true" autoSize="true"/>
+    <image id="n1_v5no" name="n1" src="9jv65m" fileName="imagesNew/lm_dt_zsx1.png" pkg="eg2y0ldp" xy="130,69" pivot="0.5,0.5" group="n33_x8jz"/>
+    <text id="n3_v5no" name="txtName" xy="279,51" pivot="0.5,0" size="404,54" group="n33_x8jz" fontSize="40" color="#8d6f45" align="center" vAlign="middle" leading="1" autoClearText="true" text="稀有升星稀星稀星稀星"/>
+    <image id="n2_v5no" name="n2" src="9jv65m" fileName="imagesNew/lm_dt_zsx1.png" pkg="eg2y0ldp" xy="702,71" pivot="0.5,0.5" group="n33_x8jz" scale="-1,1"/>
+    <group id="n33_x8jz" name="n33" xy="130,51" size="702,54" group="n11_v5no" advanced="true" layout="hz" colGap="19" excludeInvisibles="true">
+      <relation target="" sidePair="center-center"/>
+    </group>
+    <group id="n11_v5no" name="n11" xy="-9,-29" size="946,459"/>
     <image id="n18_v5no" name="n18" src="v5notm4" fileName="images/lm_zsx0.png" xy="117,423" group="n21_v5no"/>
     <text id="n19_v5no" name="n19" xy="378,422" size="206,44" group="n21_v5no" fontSize="32" color="#b69566" align="center" leading="1" autoSize="none" text="自选道具"/>
     <list id="n20_v5no" name="list" xy="43,494" size="875,241" group="n21_v5no" layout="flow_vt" overflow="scroll" scroll="horizontal" colGap="20" defaultItem="ui://2bsz6nelv5notmb" align="center">

+ 2 - 2
FGUIProject/assets/CommonGame/BuyConfirmUI.xml

@@ -2,8 +2,8 @@
 <component size="962,536">
   <displayList>
     <component id="n0_ds62" name="bg" src="si5ztih" fileName="components/ComBg.xml" pkg="mk0fwx0x" xy="0,0" size="962,536"/>
-    <text id="n3_ds62" name="txtNeed" xy="344,124" pivot="0.5,0" size="279,56" fontSize="42" color="#876e54" text="还需要购买7个"/>
-    <text id="n4_ds62" name="txtNum" xy="299,299" pivot="0.5,0" size="369,46" fontSize="34" color="#a0845c" text="是否花费700鲛绡购买?">
+    <text id="n3_ds62" name="txtMessage" xy="346,124" pivot="0.5,0" size="274,56" fontSize="42" color="#876e54" text="还需要购买7个"/>
+    <text id="n4_ds62" name="txtTips" xy="306,299" pivot="0.5,0" size="355,46" fontSize="34" color="#a0845c" text="是否花费700鲛绡购买?">
       <relation target="n1_ds62" sidePair="bottom-top"/>
     </text>
     <component id="n2_ds62" name="btnCancel" src="r9ritjh" fileName="components/Button18.xml" pkg="mk0fwx0x" xy="88,379">

+ 39 - 32
FGUIProject/assets/CommonGame/ItemExchangeUI.xml

@@ -1,48 +1,55 @@
 <?xml version="1.0" encoding="utf-8"?>
-<component size="962,1025">
+<component size="962,1116">
   <displayList>
-    <component id="n0_si5z" name="comBg" src="si5ztih" fileName="components/ComBg.xml" pkg="mk0fwx0x" xy="0,0" size="962,1025">
-      <relation target="n33_l500" sidePair="height-height"/>
-    </component>
-    <text id="n5_si5z" name="txtName" xy="65,58" size="186,61" group="n12_si5z" fontSize="46" color="#8a7253" autoClearText="true" text="物品名字"/>
-    <text id="n6_si5z" name="txtOwned" xy="752,80" pivot="1,0" size="129,41" group="n12_si5z" fontSize="30" color="#90877f" vars="true" text="已拥有:{count=20}"/>
-    <image id="n7_si5z" name="n7" src="si5ztig" fileName="imgnew/tc_xiant.png" xy="56,130" group="n12_si5z"/>
-    <loader id="n8_si5z" name="loaRarity" xy="40,164" size="44,94" group="n12_si5z" url="ui://eg2y0ldpd4iw4z" autoSize="true"/>
-    <loader id="n9_si5z" name="loaIcon" xy="165,253" pivot="0.5,0.5" anchor="true" size="200,200" group="n12_si5z" aspect="true" autoSize="true"/>
-    <image id="n10_si5z" name="n10" src="r9ritjl" fileName="imgnew/tc_kuangk.png" xy="357,167" group="n12_si5z"/>
-    <text id="n11_si5z" name="txtDesc" xy="375,189" size="506,166" group="n12_si5z" fontSize="30" color="#998a79" ubb="true" autoSize="none" autoClearText="true" text="手机课程很快就要开课咯!!同学们有没有很期待哇过 几天课上见昂!!28节课希望大家都可以跟下来一起度 过有趣儿的两个月吧。"/>
-    <text id="n28_s5s9" name="txtExchangeCount" xy="243,314" pivot="1,0" size="56,49" group="n12_si5z" fontSize="36" color="#fbf6eb" vars="true" strokeColor="#5c4e3f" strokeSize="2" text="x{count=20}"/>
-    <group id="n12_si5z" name="n12" xy="40,58" size="866,313" group="n33_l500" advanced="true"/>
-    <list id="n32_l500" name="listItem" xy="205,391" pivot="0.5,0" size="569,131" group="n33_l500" layout="row" colGap="20" defaultItem="ui://eg2y0ldp9jv6tls" align="center">
+    <image id="n37_qdaz" name="n37" src="qdaztno" fileName="images/tanchuang_2.png" xy="-59,-31" size="1021,1169"/>
+    <text id="n6_si5z" name="txtOwned" xy="750,124" pivot="1,0" size="131,42" group="n12_si5z" fontSize="30" color="#b08d5c" vars="true" text="已拥有:{count=20}"/>
+    <image id="n39_x8jz" name="n39" src="x8jztnq" fileName="images/wplb_db.png" xy="-11,128" size="346,336" group="n12_si5z" aspect="true"/>
+    <loader id="n8_si5z" name="loaRarity" xy="42,197" size="44,94" group="n12_si5z" url="ui://eg2y0ldpd4iw4z" autoSize="true"/>
+    <loader id="n9_si5z" name="loaIcon" xy="163,295" pivot="0.5,0.5" anchor="true" size="180,180" group="n12_si5z" aspect="true" autoSize="true"/>
+    <image id="n40_x8jz" name="n40" src="x8jztnr" fileName="images/lm_db_3.png" xy="357,196" size="543,204" group="n12_si5z"/>
+    <text id="n11_si5z" name="txtDesc" xy="375,218" size="506,166" group="n12_si5z" fontSize="32" color="#b08d5c" leading="1" ubb="true" autoSize="shrink" autoClearText="true" text="手机课程很快就要开课咯!!同学们有没有很期待哇过 几天课上见昂!!28节课希望大家都可以跟下来一起度 过有趣儿的两个月吧。"/>
+    <text id="n28_s5s9" name="txtExchangeCount" xy="240,353" pivot="1,0" size="56,49" group="n12_si5z" fontSize="36" color="#fbf6eb" vars="true" strokeColor="#5c4e3f" strokeSize="2" text="x{count=20}"/>
+    <image id="n41_x8jz" name="n41" src="9jv65m" fileName="imagesNew/lm_dt_zsx1.png" xy="177,90" pivot="0.5,0.5" size="123,18" group="n43_x8jz"/>
+    <text id="n5_si5z" name="txtName" xy="341,70" pivot="0.5,0" size="284,54" group="n43_x8jz" fontSize="40" color="#8d6f45" align="center" vAlign="middle" leading="1" autoClearText="true" text="物品名字物品名"/>
+    <image id="n42_x8jz" name="n42" src="9jv65m" fileName="imagesNew/lm_dt_zsx1.png" xy="666,91" pivot="0.5,0.5" size="119,17" group="n43_x8jz" scale="-1,1"/>
+    <group id="n43_x8jz" name="n43" xy="177,70" size="608,54" group="n12_si5z" advanced="true" layout="hz" colGap="41" excludeInvisibles="true">
+      <relation target="" sidePair="center-center"/>
+    </group>
+    <group id="n12_si5z" name="n12" xy="-11,70" size="911,394" group="n33_l500" advanced="true"/>
+    <list id="n32_l500" name="listItem" xy="205,484" pivot="0.5,0" size="569,131" group="n33_l500" layout="flow_vt" overflow="scroll" scroll="horizontal" colGap="20" defaultItem="ui://eg2y0ldp9jv6tls" align="center" autoClearItems="true">
+      <item/>
+      <item/>
+      <item/>
+      <item/>
       <item/>
       <item/>
       <item/>
     </list>
-    <image id="n2_si5z" name="n2" src="si5zti8" fileName="imgnew/tc_zszs.png" xy="32,564" size="897,15" group="n4_si5z"/>
-    <text id="n3_si5z" name="txtShow" xy="359,542" size="244,54" group="n4_si5z" fontSize="40" color="#8a7253" text="选择使用数量"/>
-    <group id="n4_si5z" name="n4" xy="32,542" size="897,54" group="n34_l500"/>
-    <image id="n13_si5z" name="n13" src="si5ztik" fileName="imgnew/tc_tyjjdi.png" xy="197,619" group="n19_si5z"/>
-    <component id="n17_si5z" name="btnMinus" src="si5ztin" fileName="components/Button2.xml" xy="175,617" group="n19_si5z">
+    <image id="n2_si5z" name="n2" src="si5zti8" fileName="imgnew/tc_zszs.png" xy="32,657" size="897,15" group="n4_si5z"/>
+    <text id="n3_si5z" name="txtShow" xy="359,635" size="244,54" group="n4_si5z" fontSize="40" color="#8a7253" text="选择使用数量"/>
+    <group id="n4_si5z" name="n4" xy="32,635" size="897,54" group="n34_l500"/>
+    <image id="n13_si5z" name="n13" src="si5ztik" fileName="imgnew/tc_tyjjdi.png" xy="197,712" group="n19_si5z"/>
+    <component id="n17_si5z" name="btnMinus" src="si5ztin" fileName="components/Button2.xml" xy="175,710" group="n19_si5z">
       <Button icon="ui://eg2y0ldps5s9tip"/>
     </component>
-    <component id="n16_si5z" name="btnAdd" src="si5ztip" fileName="components/Button16.xml" xy="490,618" group="n19_si5z"/>
-    <component id="n18_si5z" name="btnMax" src="si5ztio" fileName="components/Button3.xml" xy="597,616" group="n19_si5z">
+    <component id="n16_si5z" name="btnAdd" src="si5ztip" fileName="components/Button16.xml" xy="490,711" group="n19_si5z"/>
+    <component id="n18_si5z" name="btnMax" src="si5ztio" fileName="components/Button3.xml" xy="597,709" group="n19_si5z">
       <Button icon="ui://eg2y0ldpsi5ztil"/>
     </component>
-    <text id="n22_si5z" name="txtCostCount" xy="343,624" pivot="0.5,0" size="43,54" group="n19_si5z" fontSize="40" color="#816e57" text="50"/>
-    <group id="n19_si5z" name="n19" xy="175,616" size="612,70" group="n34_l500"/>
-    <text id="n24_si5z" name="txtTips" xy="319,706" pivot="0.5,0" size="323,51" group="n26_si5z" fontSize="38" color="#8e7c6b" align="center" text="是否使用1个道具?"/>
-    <component id="n25_si5z" name="comCost" src="n3xha1" fileName="components/ComCostCurrency.xml" xy="416,797" pivot="0.5,0" group="n26_si5z" scale="1.2,1.2" visible="false" controller="c1,1"/>
-    <text id="n36_l500" name="txtRmbCost" xy="450,787" pivot="0.5,0" size="62,54" group="n26_si5z" fontSize="40" color="#716b59" align="center" text="999"/>
-    <group id="n26_si5z" name="n26" xy="319,706" size="323,135" group="n34_l500" advanced="true" layout="vt" lineGap="30" excludeInvisibles="true"/>
-    <component id="n14_si5z" name="btnCancle" src="si5ztim" fileName="components/Button1.xml" xy="124,863" group="n20_si5z">
+    <text id="n22_si5z" name="txtCostCount" xy="343,717" pivot="0.5,0" size="43,54" group="n19_si5z" fontSize="40" color="#816e57" text="50"/>
+    <group id="n19_si5z" name="n19" xy="175,709" size="612,70" group="n34_l500"/>
+    <text id="n24_si5z" name="txtTips" xy="317,799" pivot="0.5,0" size="326,52" group="n26_si5z" fontSize="38" color="#8e7c6b" align="center" text="是否使用1个道具?"/>
+    <component id="n25_si5z" name="comCost" src="n3xha1" fileName="components/ComCostCurrency.xml" xy="415,879" pivot="0.5,0" size="115,46" group="n26_si5z" scale="1.2,1.2" visible="false" controller="c1,1"/>
+    <text id="n36_l500" name="txtRmbCost" xy="450,881" pivot="0.5,0" size="62,54" group="n26_si5z" fontSize="40" color="#716b59" align="center" text="999"/>
+    <group id="n26_si5z" name="n26" xy="317,799" size="326,136" group="n34_l500" advanced="true" layout="vt" lineGap="30" excludeInvisibles="true"/>
+    <component id="n14_si5z" name="btnCancle" src="si5ztim" fileName="components/Button1.xml" xy="124,948" group="n20_si5z">
       <Button icon="ui://eg2y0ldps5s9tim"/>
     </component>
-    <component id="n15_si5z" name="btnConfirm" src="si5ztim" fileName="components/Button1.xml" xy="544,863" size="294,89" group="n20_si5z">
+    <component id="n15_si5z" name="btnConfirm" src="si5ztim" fileName="components/Button1.xml" xy="544,948" size="294,89" group="n20_si5z">
       <Button icon="ui://eg2y0ldps5s9til"/>
     </component>
-    <group id="n20_si5z" name="n20" xy="124,863" size="714,89" group="n34_l500"/>
-    <group id="n34_l500" name="n34" xy="32,542" size="897,410" group="n33_l500" advanced="true"/>
-    <group id="n33_l500" name="n33" xy="32,58" size="897,894" advanced="true" layout="vt" lineGap="20" excludeInvisibles="true"/>
+    <group id="n20_si5z" name="n20" xy="124,948" size="714,89" group="n34_l500"/>
+    <group id="n34_l500" name="n34" xy="32,635" size="897,402" group="n33_l500" advanced="true"/>
+    <group id="n33_l500" name="n33" xy="-11,70" size="940,967" advanced="true" layout="vt" lineGap="20" excludeInvisibles="true"/>
   </displayList>
 </component>

+ 2 - 4
FGUIProject/assets/CommonGame/components/BtnStyle1Big.xml

@@ -1,10 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <component size="187,56" extention="Button">
-  <controller name="button" pages="0,up,1,down,4,,5,,6,disable" selected="0"/>
+  <controller name="button" pages="0,up,1,down" selected="0"/>
   <displayList>
-    <loader id="n4_u2u3" name="icon" xy="0,0" size="187,56" aspect="true" url="ui://eg2y0ldpwm603f" fill="scale" autoSize="true">
-      <gearIcon controller="button" pages="4,6" values="|ui://eg2y0ldpwm603g" default="ui://eg2y0ldpwm603f"/>
-    </loader>
+    <loader id="n4_u2u3" name="icon" xy="0,0" size="187,56" aspect="true" url="ui://eg2y0ldpwm603g" fill="scale" autoSize="true"/>
     <text id="n3_u2u3" name="title" xy="71,8" pivot="0.5,0" size="44,39" font="ui://eg2y0ldpa0cftky" fontSize="28" color="#683c28" align="center" vars="true" text="{value=0}/{maxValue=0}">
       <relation target="" sidePair="center-center"/>
     </text>

+ 19 - 19
FGUIProject/assets/CommonGame/components/ComponentValueBar.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <component size="1080,70" opaque="false">
-  <controller name="c1" exported="true" pages="0,,1,,3,,4,,5,,6,,7,,8,,9,,10,,12,,13,,14," selected="0">
+  <controller name="c1" exported="true" pages="0,,1,,3,,4,,5,,6,,7,,8,,9,,10,,12,,13,,14," selected="3">
     <remark page="0" value="体力金币马蹄珍珠"/>
     <remark page="1" value="体力金币马蹄"/>
     <remark page="2" value="抽卡兑换"/>
@@ -16,57 +16,57 @@
     <remark page="12" value="商店列表"/>
   </controller>
   <displayList>
-    <component id="n43_vek8" name="btnCJLuoXing" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="460,0">
+    <component id="n43_vek8" name="btnCJLuoXing" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="460,5">
       <gearDisplay controller="c1" pages="3"/>
       <gearXY controller="c1" pages="0,3" values="460,0|814,0" default="460,5"/>
       <Button title="100" icon="ui://eg2y0ldpq08x4"/>
     </component>
-    <component id="n44_vek8" name="btnCJHuoDong" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="460,0">
-      <gearDisplay controller="c1" pages="4"/>
+    <component id="n44_vek8" name="btnCJHuoDong" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="814,0" visible="false">
+      <gearDisplay controller="c1" pages=""/>
       <gearXY controller="c1" pages="0,4" values="460,0|814,0" default="460,5"/>
       <Button title="100" icon="ui://eg2y0ldpq08x4"/>
     </component>
-    <component id="n47_wono" name="btnTravel" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="814,0">
+    <component id="n47_wono" name="btnTravel" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="688,5">
       <gearDisplay controller="c1" pages="8"/>
       <gearXY controller="c1" pages="0,1,5,6,8" values="814,0|684,2|684,2|684,2|814,0" default="688,5"/>
       <Button title="100" icon="ui://eg2y0ldpq08x5"/>
     </component>
-    <component id="n48_r9ri" name="btnGallery" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="814,0">
+    <component id="n48_r9ri" name="btnGallery" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="688,5">
       <gearDisplay controller="c1" pages="9"/>
       <gearXY controller="c1" pages="0,1,3,5,6,8,9" values="814,0|684,2|814,2|684,2|684,2|814,2|814,0" default="688,5"/>
       <Button title="100" icon="ui://eg2y0ldpdhoatk2"/>
     </component>
-    <component id="n38_r9gf" name="btnPower" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="37,0">
+    <component id="n38_r9gf" name="btnPower" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="0,5">
       <gearDisplay controller="c1" pages="0,1"/>
       <gearXY controller="c1" pages="0,1,5" values="37,0|296,0|296,5" default="0,5"/>
       <Button title="100" icon="ui://eg2y0ldpq08x4"/>
     </component>
-    <component id="n46_ighs" name="btnCJ" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="-215,0">
-      <gearDisplay controller="c1" pages="5"/>
-      <gearXY controller="c1" pages="0,1,3,5" values="-215,0|1079,5|979,5|296,0" default="460,5"/>
+    <component id="n46_ighs" name="btnCJ" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="296,0">
+      <gearDisplay controller="c1" pages="4,5"/>
+      <gearXY controller="c1" pages="0,1,3,4,5" values="-215,0|1079,5|979,5|296,0|296,0" default="460,5"/>
       <Button title="100" icon="ui://eg2y0ldpq08x4"/>
     </component>
-    <component id="n40_r9gf" name="btnGold" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="296,0">
-      <gearDisplay controller="c1" pages="0,1,6,7,10,12"/>
-      <gearXY controller="c1" pages="0,1,6,7,10,12" values="296,0|555,0|555,0|814,0|296,0|296,0" default="230,5"/>
+    <component id="n40_r9gf" name="btnGold" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="555,0">
+      <gearDisplay controller="c1" pages="0,1,4,6,7,10,12"/>
+      <gearXY controller="c1" pages="0,1,4,6,7,10,12" values="296,0|555,0|555,0|555,0|814,0|296,0|296,0" default="230,5"/>
       <Button title="100" icon="ui://eg2y0ldpq08x3"/>
     </component>
-    <component id="n39_r9gf" name="btnDiamondRed" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="555,0">
+    <component id="n39_r9gf" name="btnDiamondRed" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="460,5">
       <gearDisplay controller="c1" pages="0,1,5,6,10,12"/>
       <gearXY controller="c1" pages="0,1,3,5,6,10,12" values="555,0|814,0|979,5|555,0|814,0|555,0|555,0" default="460,5"/>
       <Button title="100" icon="ui://eg2y0ldpq08x6"/>
     </component>
-    <component id="n41_r9gf" name="btnDiamondPurple" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="814,0">
-      <gearDisplay controller="c1" pages="0,5,10"/>
-      <gearXY controller="c1" pages="0,1,3,5,6,8,10" values="814,0|814,2|1207,5|814,0|814,2|688,5|814,0" default="688,5"/>
+    <component id="n41_r9gf" name="btnDiamondPurple" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="815,-1">
+      <gearDisplay controller="c1" pages="0,4,5,10"/>
+      <gearXY controller="c1" pages="0,1,3,4,5,6,8,10" values="814,0|814,2|1207,5|815,-1|814,0|814,2|688,5|814,0" default="688,5"/>
       <Button title="100" icon="ui://eg2y0ldpq08x5"/>
     </component>
-    <component id="n49_psph" name="btnArena" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="814,0">
+    <component id="n49_psph" name="btnArena" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="688,5">
       <gearDisplay controller="c1" pages="12"/>
       <gearXY controller="c1" pages="0,1,3,5,6,8,10,12" values="814,0|814,2|1207,5|814,0|814,2|688,5|814,0|814,0" default="688,5"/>
       <Button title="100" icon="ui://eg2y0ldpkztethq"/>
     </component>
-    <component id="n50_pvb4" name="btnLeagueContribuation" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="814,0">
+    <component id="n50_pvb4" name="btnLeagueContribuation" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="688,5">
       <gearDisplay controller="c1" pages="13"/>
       <gearXY controller="c1" pages="0,1,3,5,6,8,10,12,13" values="814,0|814,2|1207,5|814,0|814,2|688,5|814,0|814,0|814,1" default="688,5"/>
       <Button title="100" icon="ui://eg2y0ldpkztethq"/>

BIN
FGUIProject/assets/CommonGame/images/back.png


BIN
FGUIProject/assets/CommonGame/images/db_jiajian_1.png


BIN
FGUIProject/assets/CommonGame/images/lm_db_3.png


BIN
FGUIProject/assets/CommonGame/images/tanchuang_2.png


BIN
FGUIProject/assets/CommonGame/images/wplb_db.png


+ 5 - 1
FGUIProject/assets/CommonGame/package.xml

@@ -322,7 +322,6 @@
     <component id="qik1tcb" name="ComBg000.xml" path="/componentsBg/" exported="true"/>
     <image id="qik1tca" name="lm_dt_zsx2.png" path="/componentsBg/"/>
     <image id="9jv65m" name="lm_dt_zsx1.png" path="/imagesNew/" exported="true"/>
-    <image id="qik1tm7" name="db_jiajian_1.png" path="/images/"/>
     <component id="mdmdtn5" name="ComItem001_1.xml" path="/components/" exported="true"/>
     <image id="uxxstma" name="wpk_db_2.png" path="/imagesNew/" exported="true"/>
     <image id="uxxstm5" name="wpk_sz_db2.png" path="/imagesNew/" exported="true"/>
@@ -349,6 +348,11 @@
     <image id="volstnk" name="an_bt_jin.png" path="/imagesNew/" exported="true"/>
     <image id="volstnl" name="wp_bg_yuan.png" path="/imagesNew/"/>
     <image id="volstnm" name="wp_own.png" path="/imagesNew/"/>
+    <image id="qdaztnn" name="db_jiajian_1.png" path="/images/"/>
+    <image id="qdaztno" name="tanchuang_2.png" path="/images/"/>
+    <image id="x8jztnp" name="back.png" path="/images/"/>
+    <image id="x8jztnq" name="wplb_db.png" path="/images/"/>
+    <image id="x8jztnr" name="lm_db_3.png" path="/images/"/>
   </resources>
   <publish name="" path="../GameClient/Assets/ResIn/UI/CommonGame" packageCount="2" genCode="true" extractAlpha="true"/>
 </packageDescription>

+ 1 - 1
FGUIProject/assets/DailyWelfare/components/ListChargeItem.xml

@@ -8,7 +8,7 @@
   <displayList>
     <image id="n2_mbf1" name="n2" src="uxxstmj" fileName="imagesNew/mrrw_db.png" pkg="eg2y0ldp" xy="0,0"/>
     <image id="n9_idkd" name="n9" src="uxxstmq" fileName="imagesNew/mrrw_bq_qb.png" pkg="eg2y0ldp" xy="37,5"/>
-    <list id="n3_mbf1" name="listRewards" xy="93,65" size="662,131" layout="row" overflow="scroll" scroll="horizontal" colGap="6" defaultItem="ui://eg2y0ldp9jv6tls">
+    <list id="n3_mbf1" name="listRewards" xy="90,65" size="670,131" layout="row" overflow="scroll" scroll="horizontal" colGap="6" defaultItem="ui://eg2y0ldp9jv6tls">
       <item/>
       <item/>
       <item/>

+ 5 - 5
FGUIProject/assets/DressUp/components/ComFightScore.xml

@@ -6,11 +6,11 @@
       <gearSize controller="c1" pages="1" values="365,168,-1,-1" default="365,168,-1,1"/>
     </image>
     <image id="n55_jcej" name="n55" src="v461f5" fileName="images/jjcdi_jjxian.png" xy="19,53" group="n60_jcej"/>
-    <text id="n56_jcej" name="n56" xy="20,8" size="152,42" group="n60_jcej" fontSize="30" color="#f8f1db" text="竞技场战力"/>
-    <text id="n57_jcej" name="txtSuitScore" xy="20,60" size="124,32" group="n60_jcej" fontSize="22" color="#f8f1db" vars="true" text="搭配之力:{value=0}"/>
-    <text id="n58_jcej" name="txtClickScore" xy="20,87" size="167,32" group="n60_jcej" fontSize="22" color="#f8f1db" vars="true" text="卓越点击战力:{value=0}"/>
-    <text id="n59_jcej" name="txtCardScore" xy="20,114" size="124,32" group="n60_jcej" fontSize="22" color="#f8f1db" vars="true" text="卡牌战力:{value=0}"/>
-    <group id="n60_jcej" name="n60" xy="19,8" size="326,138" advanced="true">
+    <text id="n56_jcej" name="n56" xy="20,8" size="152,42" group="n60_jcej" fontSize="30" color="#f8f1db" text="飞花令战力"/>
+    <text id="n57_jcej" name="txtSuitScore" xy="20,60" size="122,31" group="n60_jcej" fontSize="22" color="#f8f1db" vars="true" text="搭配之力:{value=0}"/>
+    <text id="n58_jcej" name="txtClickScore" xy="20,87" size="166,31" group="n60_jcej" fontSize="22" color="#f8f1db" vars="true" text="卓越点击战力:{value=0}"/>
+    <text id="n59_jcej" name="txtCardScore" xy="20,114" size="122,31" group="n60_jcej" fontSize="22" color="#f8f1db" vars="true" text="卡牌战力:{value=0}"/>
+    <group id="n60_jcej" name="n60" xy="19,8" size="326,137" advanced="true">
       <gearXY controller="c1" pages="0,1" values="19,8|19,19"/>
     </group>
   </displayList>

+ 2 - 2
FGUIProject/assets/League/LeagueAnswerUI.xml

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <component size="1080,647">
   <displayList>
-    <image id="n8_9jv6" name="n8" src="o9gh40" fileName="images/tanchuang.png" xy="0,0" pkg="eg2y0ldp"/>
+    <image id="n8_9jv6" name="n8" src="o9gh40" fileName="imagesNew/tanchuang.png" pkg="eg2y0ldp" xy="0,0"/>
     <image id="n17_9jv6" name="n17" src="a0cf2u" fileName="images/lm_zhuangshixian.png" xy="74,491"/>
     <component id="n9_9jv6" name="btnClose" src="a0cftl2" fileName="components/BtnClose.xml" pkg="eg2y0ldp" xy="899,26"/>
     <component id="n3_pvb4" name="btnRank" src="9jv67a" fileName="components/Button122.xml" xy="922,415">
@@ -17,7 +17,7 @@
     <text id="n6_pvb4" name="txtRule" xy="386,198" size="602,289" font="ui://eg2y0ldpa0cftks" fontSize="28" color="#a9733e" autoSize="none" text="1.每天19:10分开启雅集夜宴&#xD;&#xA;2.活动需要成员尽可能在10分钟内快速回答问题,每答对一题在场的所有成员均可获得一份奖励&#xD;&#xA;3.活动结束时按照全员答对题数,仍在场的成员还可获得一份额外大奖&#xD;&#xA;4.每个成员每道题目只有一次回答机会,请认真回答哦"/>
     <text id="n4_pvb4" name="txtTime" xy="458,539" pivot="0.5,0" size="163,35" font="ui://eg2y0ldpa0cftks" fontSize="25" color="#716660" align="center" text="23:59:59后开启"/>
     <component id="n5_pvb4" name="btnAnswer" src="rv091p" fileName="components/BtnStyle1Big.xml" pkg="eg2y0ldp" xy="446,530">
-      <Button title="开始答题"/>
+      <Button title="开始答题" icon="ui://eg2y0ldpwm603f"/>
     </component>
     <text id="n15_9jv6" name="n15" xy="388,140" size="132,44" font="ui://eg2y0ldpa0cftks" fontSize="32" color="#a9733e" text="玩法描述"/>
     <image id="n16_9jv6" name="n16" src="9jv663" fileName="images/lm_zhuangshixian_2.png" xy="377,192"/>

+ 5 - 3
FGUIProject/assets/League/LeagueAnsweringUI.xml

@@ -12,7 +12,7 @@
     <remark page="1" value="选择题"/>
     <remark page="2" value="填空题"/>
   </controller>
-  <controller name="ctrlResult" pages="0,,1,,2,,3," selected="0">
+  <controller name="ctrlResult" pages="0,,1,,2,,3," selected="1">
     <remark page="1" value="有人答对题目"/>
     <remark page="2" value="没人答对题目"/>
     <remark page="3" value="全部题目答完"/>
@@ -64,7 +64,9 @@
     <text id="n17_pvb4" name="txtResult" xy="602,470" size="271,42" group="n19_pvb4" font="ui://eg2y0ldpa0cftks" fontSize="30" color="#b68f52" align="center" autoSize="none" text="" input="true" prompt="[color=#A7957E]点此输入答案[/color]">
       <gearDisplay controller="ctrlQuestionType" pages="2"/>
     </text>
-    <graph id="n62_t6j1" name="n62" xy="607,509" size="269,2" group="n19_pvb4" type="rect" lineSize="0" fillColor="#ffb68f52"/>
+    <graph id="n62_t6j1" name="n62" xy="607,509" size="269,2" group="n19_pvb4" type="rect" lineSize="0" fillColor="#ffb68f52">
+      <gearDisplay controller="ctrlQuestionType" pages="2"/>
+    </graph>
     <group id="n19_pvb4" name="n19" xy="360,470" size="516,43" group="n15_pvb4" advanced="true">
       <gearDisplay controller="ctrlQuestionType" pages=""/>
       <gearXY controller="ctrlHasIcon" pages="0,1" values="360,470|229,470"/>
@@ -92,7 +94,7 @@
     <image id="n55_miy3" name="n55" src="9jv65l" fileName="images/lm_dt_tsdk.png" xy="110,424" group="n24_pvb4">
       <gearDisplay controller="ctrlResult" pages="3"/>
     </image>
-    <text id="n22_pvb4" name="txtInfo" xy="539,514" pivot="0.5,0" anchor="true" size="245,44" group="n24_pvb4" font="ui://eg2y0ldpa0cftks" fontSize="32" color="#915e15" align="center" text="全部题目答完啦~">
+    <text id="n22_pvb4" name="txtInfo" xy="539,560" pivot="0.5,0" anchor="true" size="245,44" group="n24_pvb4" font="ui://eg2y0ldpa0cftks" fontSize="32" color="#915e15" align="center" text="全部题目答完啦~">
       <gearXY controller="ctrlResult" pages="0,1,2,3" values="539,514|539,560|539,560|539,417"/>
     </text>
     <image id="n53_miy3" name="n53" src="9jv65l" fileName="images/lm_dt_tsdk.png" xy="110,614" group="n54_miy3"/>

+ 1 - 1
FGUIProject/assets/League/LeagueConstructUI.xml

@@ -35,7 +35,7 @@
       <property target="txtDesc" propertyId="0" value="成员上限"/>
     </component>
     <component id="n16_rv09" name="comHotel1" src="rv0925" fileName="components/ComConstruct.xml" xy="424,522" group="n56_o9gh">
-      <property target="txtDesc" propertyId="0" value="花上限"/>
+      <property target="txtDesc" propertyId="0" value="花上限"/>
     </component>
     <component id="n18_rv09" name="comHotel2" src="rv0925" fileName="components/ComConstruct.xml" xy="424,557" group="n56_o9gh">
       <property target="txtDesc" propertyId="0" value="每日新加上限"/>

+ 3 - 2
FGUIProject/assets/League/LeagueJoinUI.xml

@@ -25,7 +25,7 @@
     <text id="n13_a0cf" name="n13" xy="608,422" pivot="0.5,0" size="116,39" group="n15_a0cf" font="ui://eg2y0ldpa0cftks" fontSize="28" color="#553c1d" align="center" text="是否审核"/>
     <text id="n14_a0cf" name="n14" xy="857,422" pivot="0.5,0" size="60,39" group="n15_a0cf" font="ui://eg2y0ldpa0cftks" fontSize="28" color="#553c1d" align="center" text="操作"/>
     <group id="n15_a0cf" name="n15" xy="0,420" size="1080,41" group="n16_a0cf"/>
-    <list id="n5_u2u3" name="list" xy="70,484" size="936,968" group="n16_a0cf" lineGap="17" defaultItem="ui://tw70qm9drv091f" autoClearItems="true">
+    <list id="n5_u2u3" name="list" xy="70,484" size="936,968" group="n16_a0cf" lineGap="5" defaultItem="ui://tw70qm9drv091f" autoClearItems="true">
       <relation target="" sidePair="bottomext-bottom"/>
       <item/>
       <item/>
@@ -33,8 +33,9 @@
       <item/>
       <item/>
       <item/>
+      <item/>
     </list>
-    <component id="n6_u2u3" name="btnChange" src="a0cf2z" fileName="components/Button42.xml" xy="375,1510" group="n16_a0cf">
+    <component id="n6_u2u3" name="btnChange" src="a0cf2z" fileName="components/Button42.xml" xy="375,1526" group="n16_a0cf">
       <relation target="" sidePair="bottom-bottom"/>
       <Button title="换一批"/>
     </component>

+ 7 - 7
FGUIProject/assets/League/LeagueMemberAppointUI.xml

@@ -1,16 +1,16 @@
 <?xml version="1.0" encoding="utf-8"?>
 <component size="1080,647">
-  <controller name="c1" pages="0,,1," selected="0">
+  <controller name="c1" pages="0,,1," selected="1">
     <remark page="0" value="副会长"/>
     <remark page="1" value="会长"/>
   </controller>
   <controller name="c2" pages="0,,1,,2,,3," selected="0"/>
   <displayList>
-    <image id="n7_wm60" name="n7" src="o9gh40" fileName="images/tanchuang.png" xy="0,0" size="1021,647" pkg="eg2y0ldp"/>
+    <image id="n7_wm60" name="n7" src="o9gh40" fileName="imagesNew/tanchuang.png" pkg="eg2y0ldp" xy="0,0" size="1021,647"/>
     <image id="n10_o9gh" name="n10" src="o9gh4j" fileName="images/lm_biaotizi_6.png" xy="260,88"/>
     <component id="n17_o9gh" name="btnClose" src="a0cftl2" fileName="components/BtnClose.xml" pkg="eg2y0ldp" xy="911,26"/>
     <component id="n6_rv09" name="btnRule" src="psphtkg" fileName="components/BtnRule.xml" pkg="eg2y0ldp" xy="612,88" size="36,37">
-      <Button icon="ui://tw70qm9do9gh4b"/>
+      <Button icon="ui://eg2y0ldpo9gh4b"/>
     </component>
     <image id="n11_o9gh" name="n11" src="o9gh4h" fileName="images/lm_kuang_3.png" xy="60,149" group="n16_o9gh"/>
     <text id="n12_o9gh" name="n12" xy="270,151" size="60,39" group="n16_o9gh" font="ui://eg2y0ldpa0cftks" fontSize="28" color="#553c1d" text="职位"/>
@@ -27,15 +27,15 @@
       <Button controller="c2" page="2"/>
       <property target="txtName" propertyId="0" value="副社长"/>
     </component>
-    <component id="n2_rv09" name="btnAppoint2" src="rv091s" fileName="components/Button15.xml" xy="230,211" group="n3_rv09">
+    <component id="n2_rv09" name="btnAppoint2" src="rv091s" fileName="components/Button15.xml" xy="230,357" group="n3_rv09">
       <gearDisplay controller="c1" pages="0,1"/>
       <Button controller="c2" page="3"/>
-      <property target="txtName" propertyId="0" value="御史"/>
+      <property target="txtName" propertyId="0" value="社花"/>
     </component>
-    <group id="n3_rv09" name="n3" xy="230,211" size="620,53" advanced="true" layout="vt" lineGap="20" excludeInvisibles="true"/>
+    <group id="n3_rv09" name="n3" xy="230,211" size="620,199" advanced="true" layout="vt" lineGap="20" excludeInvisibles="true"/>
     <component id="n5_rv09" name="btnKick" src="rv091g" fileName="components/BtnBig.xml" pkg="mk0fwx0x" xy="410,520">
       <Button title="请离雅集"/>
     </component>
-    <image id="n18_o9gh" name="n18" src="wm603t" fileName="images/lm_zhuangshixian_duan.png" xy="132,480" pkg="eg2y0ldp"/>
+    <image id="n18_o9gh" name="n18" src="wm603t" fileName="imagesNew/lm_zhuangshixian_duan.png" pkg="eg2y0ldp" xy="132,480"/>
   </displayList>
 </component>

+ 2 - 2
FGUIProject/assets/League/LeagueMemberUI.xml

@@ -38,10 +38,10 @@
       <Button title="招募成员"/>
     </component>
     <component id="n22_rv09" name="btnApplyList" src="rv091p" fileName="components/BtnStyle1Big.xml" pkg="eg2y0ldp" xy="317,1564" group="n25_rv09">
-      <Button title="申请列表"/>
+      <Button title="申请列表" icon="ui://eg2y0ldpwm603f"/>
     </component>
     <component id="n24_rv09" name="btnMemberLog" src="rv091p" fileName="components/BtnStyle1Big.xml" pkg="eg2y0ldp" xy="544,1564" group="n25_rv09">
-      <Button title="雅集信息"/>
+      <Button title="雅集信息" icon="ui://eg2y0ldpwm603f"/>
     </component>
     <component id="n21_rv09" name="btnExit" src="rv091o" fileName="components/Button11.xml" pkg="eg2y0ldp" xy="771,1562" group="n25_rv09">
       <Button title="退出雅集"/>

+ 2 - 2
FGUIProject/assets/League/ListAnswerRuleItem.xml

@@ -1,11 +1,11 @@
 <?xml version="1.0" encoding="utf-8"?>
 <component size="815,47">
   <displayList>
-    <graph id="n20_9jv6" name="n20" xy="19,26" size="1,21" type="rect" lineSize="0" fillColor="#fff2e8e4">
+    <graph id="n20_9jv6" name="n20" xy="19,26" size="1,31" type="rect" lineSize="0" fillColor="#fff2e8e4">
       <relation target="n18_pvb4" sidePair="height-height"/>
     </graph>
     <image id="n19_9jv6" name="n19" src="9jv664" fileName="images/lm_zsd.png" xy="10,11"/>
-    <text id="n18_pvb4" name="txtRule" xy="45,1" size="769,39" font="ui://eg2y0ldpa0cftks" fontSize="28" color="#a9733e" ubb="true" autoSize="none" text="每天 开启雅集夜宴"/>
+    <text id="n18_pvb4" name="txtRule" xy="45,1" size="769,39" font="ui://eg2y0ldpa0cftks" fontSize="28" color="#a9733e" ubb="true" autoSize="height" text="每天 开启雅集夜宴"/>
   </displayList>
   <relation target="n18_pvb4" sidePair="height-height"/>
 </component>

+ 9 - 8
FGUIProject/assets/League/components/ListJoinItem.xml

@@ -1,14 +1,15 @@
 <?xml version="1.0" encoding="utf-8"?>
-<component size="935,137">
+<component size="935,144">
   <displayList>
-    <text id="n7_u2u3" name="txtLeagueName" xy="150,23" size="188,39" font="ui://eg2y0ldpa0cftkz" fontSize="28" color="#923c1a" autoClearText="true" text="联盟名字7个字"/>
-    <text id="n11_u2u3" name="txtMemberCount" xy="401,49" pivot="0.5,0" size="55,37" fontSize="27" color="#66512c" align="center" vars="true" text="{value=0}/{maxValue=70}"/>
-    <text id="n12_rv09" name="txtCheck" xy="584,49" pivot="0.5,0" size="30,38" font="ui://eg2y0ldpa0cftks" fontSize="27" color="#66512c" align="center" text="是"/>
-    <component id="n14_rv09" name="btnJoin" src="rv091e" fileName="components/Button5.xml" xy="704,43" pkg="mk0fwx0x">
+    <text id="n7_u2u3" name="txtLeagueName" xy="150,23" size="188,39" group="n19_duuf" font="ui://eg2y0ldpa0cftkz" fontSize="28" color="#923c1a" autoClearText="true" text="联盟名字7个字"/>
+    <text id="n11_u2u3" name="txtMemberCount" xy="401,49" pivot="0.5,0" size="54,37" group="n19_duuf" fontSize="27" color="#66512c" align="center" vars="true" text="{value=0}/{maxValue=70}"/>
+    <text id="n12_rv09" name="txtCheck" xy="584,49" pivot="0.5,0" size="30,37" group="n19_duuf" font="ui://eg2y0ldpa0cftks" fontSize="27" color="#66512c" align="center" text="是"/>
+    <component id="n14_rv09" name="btnJoin" src="rv091e" fileName="components/BtnSmall.xml" pkg="mk0fwx0x" xy="704,43" group="n19_duuf">
       <Button title="申请"/>
     </component>
-    <component id="n15_a0cf" name="comLeagueHead" src="a0cf30" fileName="components/ComLeagueHead.xml" xy="5,0"/>
-    <image id="n17_a0cf" name="n17" src="a0cf2u" fileName="images/lm_zhuangshixian.png" xy="2,138"/>
-    <image id="n18_a0cf" name="imgAd" src="a0cf2j" fileName="images/lm_yz.png" xy="150,74"/>
+    <component id="n15_a0cf" name="comLeagueHead" src="a0cf30" fileName="components/ComLeagueHead.xml" xy="5,0" group="n19_duuf"/>
+    <image id="n17_a0cf" name="n17" src="a0cf2u" fileName="images/lm_zhuangshixian.png" xy="2,138" group="n19_duuf"/>
+    <image id="n18_a0cf" name="imgAd" src="a0cf2j" fileName="images/lm_yz.png" xy="150,74" group="n19_duuf"/>
+    <group id="n19_duuf" name="n19" xy="2,0" size="931,150"/>
   </displayList>
 </component>

+ 2 - 2
FGUIProject/assets/League/package.xml

@@ -159,8 +159,8 @@
     <image id="9jv66q" name="lm_dt_cy_db.png" path="/images/" scale="9grid" scale9grid="85,298,170,596"/>
     <image id="9jv66r" name="lm_dt_cy_dk.png" path="/images/"/>
     <image id="9jv66s" name="lm_dt_db.png" path="/images/" scale="9grid" scale9grid="270,1549,540,182"/>
-    <image id="9jv66t" name="lm_dt_dhdk.png" path="/images/" scale="9grid" scale9grid="67,24,128,11"/>
-    <image id="9jv66u" name="lm_dt_dhdk2.png" path="/images/" scale="9grid" scale9grid="99,28,200,36"/>
+    <image id="9jv66t" name="lm_dt_dhdk.png" path="/images/" scale="9grid" scale9grid="23,24,226,11"/>
+    <image id="9jv66u" name="lm_dt_dhdk2.png" path="/images/" scale="9grid" scale9grid="9,27,366,36"/>
     <image id="9jv66v" name="lm_bq_xcm.png" path="/images/"/>
     <image id="9jv66w" name="lm_dt_icon_db.png" path="/images/"/>
     <image id="9jv66x" name="lm_biaoqian_1.png" path="/images/" exported="true"/>

+ 1 - 1
FGUIProject/assets/LuckyBox/LuckyBoxActivityUI.xml

@@ -27,7 +27,7 @@
     <group id="n52_mbf1" name="n52" xy="9,246" size="151,459" advanced="true"/>
     <image id="n56_mbf1" name="n56" src="mbf1tam" fileName="images/cj_tswz_db.png" xy="136,1497" group="n54_mbf1"/>
     <image id="n53_mbf1" name="n53" src="mbf1tam" fileName="images/cj_tswz_db.png" xy="136,1497" group="n54_mbf1"/>
-    <text id="n44_mbf1" name="txtCount" xy="284,1496" pivot="0.5,0" size="511,42" group="n54_mbf1" font="ui://eg2y0ldpa0cftkz" fontSize="30" color="#fff7d4" align="center" vars="true" text="{value=15}次摘星内必得【{name=沧海月明}】限定部件"/>
+    <text id="n44_mbf1" name="txtCount" xy="280,1496" pivot="0.5,0" size="519,42" group="n54_mbf1" font="ui://eg2y0ldpa0cftkz" fontSize="30" color="#fff7d4" align="center" ubb="true" vars="true" text="[color=#4BFB4B]{value=15}[/color] 次摘星内必得【{name=沧海月明}】限定部件"/>
     <group id="n54_mbf1" name="n54" xy="136,1496" size="808,43" advanced="true">
       <relation target="" sidePair="bottom-bottom"/>
     </group>

+ 3 - 1
FGUIProject/assets/LuckyBox/LuckyBoxNewDressUI.xml

@@ -8,7 +8,9 @@
     <image id="n6_duuf" name="n6" src="volstar" fileName="imageNews/zx_tx_hengxiang.png" xy="0,420" group="n9_duuf"/>
     <image id="n7_duuf" name="n7" src="volstav" fileName="imageNews/zx_tx_yuanquan.png" xy="28,381" group="n9_duuf"/>
     <image id="n8_duuf" name="n8" src="volstaw" fileName="imageNews/zx_tx_zhongjian.png" xy="53,484" group="n9_duuf"/>
-    <group id="n9_duuf" name="n9" xy="0,381" size="1080,1158"/>
+    <group id="n9_duuf" name="n9" xy="0,381" size="1080,1158" visible="false" advanced="true">
+      <relation target="" sidePair="center-center,middle-middle"/>
+    </group>
     <component id="n0_qdrt" name="comCard" src="qdrt1a" fileName="components/ComCard.xml" xy="66,475" pivot="0.5,0.5" touchable="false">
       <relation target="" sidePair="center-center,middle-middle"/>
     </component>

+ 1 - 1
FGUIProject/assets/LuckyBox/components/ComCard.xml

@@ -2,7 +2,7 @@
 <component size="948,970">
   <displayList>
     <graph id="n6_dcro" name="holder" xy="473,484" size="1,1" visible="false" touchable="false" type="rect"/>
-    <loader id="n2_qdrt" name="loaIcon" xy="295,257" size="424,424" aspect="true" url="ui://eg2y0ldpkubi7e" align="center" vAlign="middle" fill="scaleMatchWidth"/>
+    <loader id="n2_qdrt" name="loaIcon" xy="332,294" pivot="0.5,0.5" size="350,350" aspect="true" url="ui://eg2y0ldpm9wm8v" align="center" vAlign="middle" fill="scaleMatchWidth"/>
     <text id="n5_qdrt" name="txtDiscribe" xy="473,1056" pivot="0.5,0" anchor="true" size="406,101" visible="false" fontSize="30" color="#c2a773" autoSize="none" text="赵钱孙李周吴郑王赵钱孙李周吴郑王赵钱孙李周吴郑王赵钱孙李周吴郑王赵钱孙李周吴郑王赵钱孙李周吴郑王赵钱孙李周吴郑王赵钱孙李周吴郑王"/>
     <image id="n12_duuf" name="n12" src="volstbk" fileName="imageNews/zx_zhuangshi_diaoshi.png" xy="645,164" group="n13_duuf"/>
     <loader id="n1_qdrt" name="loaType" xy="645,299" size="44,94" group="n13_duuf" url="ui://eg2y0ldpo9ghtll" fill="scaleMatchWidth" autoSize="true"/>

+ 7 - 3
FGUIProject/assets/Main/MainUI.xml

@@ -46,7 +46,8 @@
     <group id="n88_ktf2" name="n88" xy="547,162" size="503,132" group="n52_qqat" advanced="true" layout="hz" colGap="40" excludeInvisibles="true">
       <relation target="" sidePair="right-right"/>
     </group>
-    <list id="n41_wg7t" name="list" xy="942,321" size="108,1284" group="n57_oju1" overflow="hidden" scroll="horizontal" margin="20,0,0,0" lineGap="20" colGap="14" scrollItemToViewOnClick="false" foldInvisibleItems="true">
+    <list id="n41_wg7t" name="list" xy="939,321" size="120,1284" group="n57_oju1" overflow="hidden" scroll="horizontal" margin="20,0,0,0" lineGap="20" colGap="14" align="right" scrollItemToViewOnClick="false" foldInvisibleItems="true">
+      <relation target="" sidePair="right-right"/>
       <item url="ui://mfvz4q8kwg7t8y" icon="ui://mfvz4q8kq08x9" name="btnGongGao"/>
       <item url="ui://mfvz4q8kwg7t8y" icon="ui://mfvz4q8kq08xj" name="btnYouJian"/>
       <item url="ui://mfvz4q8kwg7t8y" icon="ui://mfvz4q8kq08xa" name="btnHaoYou"/>
@@ -59,10 +60,13 @@
       <item url="ui://mfvz4q8kwg7t8y" icon="ui://mfvz4q8kq08xb" name="btnJInShu"/>
       <item url="ui://mfvz4q8kwg7t8y" icon="ui://mfvz4q8kq08xf" name="btnTianGong"/>
     </list>
-    <component id="n43_wg7t" name="btnChange" src="wg7t8z" fileName="components/ButtonChange.xml" xy="995,1597" pivot="0.5,0" anchor="true" size="102,117" group="n57_oju1" visible="false">
+    <component id="n43_wg7t" name="btnChange" src="wg7t8z" fileName="components/ButtonChange.xml" xy="1001,1597" pivot="0.5,0" anchor="true" size="114,117" group="n57_oju1" visible="false">
       <relation target="n41_wg7t" sidePair="center-center,bottom-bottom"/>
     </component>
-    <group id="n57_oju1" name="grpList" xy="942,321" size="108,1397" group="n52_qqat" advanced="true">
+    <image id="n91_jt8d" name="n91" src="jt8doy" fileName="imagesNew/db_qipaokuang.png" xy="733,1106" group="n93_jt8d"/>
+    <text id="n92_jt8d" name="n92" xy="749,1107" pivot="0.5,0" size="179,35" group="n93_jt8d" fontSize="25" color="#fef7f7" letterSpacing="-2" strokeColor="#836330" text="雅集夜宴进行中..."/>
+    <group id="n93_jt8d" name="grpLeagueAnswer" xy="733,1106" size="216,39" group="n57_oju1" advanced="true"/>
+    <group id="n57_oju1" name="grpList" xy="733,321" size="326,1393" group="n52_qqat" advanced="true">
       <relation target="" sidePair="right-right,top-top"/>
     </group>
     <component id="n90_vols" name="comListAd" src="volsos" fileName="components/ComAd.xml" xy="0,314" size="411,145" group="n89_vols"/>

+ 7 - 6
FGUIProject/assets/Main/components/ListCardItem.xml

@@ -4,18 +4,19 @@
   <displayList>
     <component id="n9_wzce" name="comCardMask" src="wzce9v" fileName="components/ComCardMask.xml" xy="0,1"/>
     <image id="n8_sx2v" name="n8" src="sx2v9s" fileName="imagesStory/zd_tctcdikugn_1.png" xy="1,154"/>
-    <text id="n3_r1a9" name="txtName" xy="55,228" size="103,46" fontSize="34" color="#6a5d56" text="赵钱孙"/>
-    <component id="n11_wzce" name="comStar" src="ojlzh" fileName="components/ComStar.xml" pkg="eg2y0ldp" xy="10,196"/>
-    <text id="n12_wzce" name="txtLv" xy="170,170" pivot="0.5,0" size="36,56" fontSize="24" color="#fff9f1" leading="-8" ubb="true" vars="true" text="Lv.&#xA;30"/>
+    <text id="n3_r1a9" name="txtName" xy="55,228" size="105,46" fontSize="34" color="#6a5d56" text="赵钱孙"/>
+    <text id="n12_wzce" name="txtLv" xy="157,192" pivot="1,0" size="51,34" fontSize="24" color="#fff9f1" align="right" leading="-8" ubb="true" vars="true" text="30级"/>
     <loader id="n7_sx2v" name="loaRarity" xy="162,10" size="44,94" url="ui://eg2y0ldpd4iw52" autoSize="true"/>
     <loader id="n16_qr4e" name="loaMainScore" xy="9,11" size="46,46" aspect="true" url="ui://eg2y0ldp842s6h" fill="scaleMatchHeight"/>
     <image id="n15_dcro" name="n15" src="sx2v9t" fileName="imagesStory/zd_tctcdikugn_2.png" xy="-1,0"/>
     <graph id="n13_dcro" name="holder" xy="107,114" size="1,1" touchable="false" type="rect">
       <gearDisplay controller="button" pages="1"/>
     </graph>
-    <image id="n17_v461" name="n17" src="pq5x64" fileName="imagesExport/kp_xingx.png" pkg="eg2y0ldp" xy="4,197" group="n19_v461"/>
-    <text id="n18_v461" name="txtStarLv" xy="30,193" pivot="1,0" size="32,34" group="n19_v461" fontSize="24" color="#fff9f1" align="right" leading="-5" text="30"/>
-    <group id="n19_v461" name="n19" xy="4,193" size="58,34" advanced="true" layout="hz" excludeInvisibles="true"/>
+    <text id="n18_v461" name="txtStarLv" xy="156,171" pivot="1,0" size="27,34" group="n19_v461" fontSize="24" color="#fff9f1" align="right" leading="-5" text="30"/>
+    <image id="n17_v461" name="n17" src="pq5x64" fileName="imagesExport/kp_xingx.png" pkg="eg2y0ldp" xy="183,175" group="n19_v461"/>
+    <group id="n19_v461" name="n19" xy="156,171" size="53,34" advanced="true" layout="hz" excludeInvisibles="true">
+      <relation target="" sidePair="right-right"/>
+    </group>
   </displayList>
   <Button mode="Radio"/>
 </component>

BIN
FGUIProject/assets/Main/imagesNew/db_qipaokuang.png


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

@@ -646,6 +646,7 @@
     <component id="volsov" name="ComTargetSkillShow.xml" path="/components/"/>
     <component id="t6j1ow" name="BtnModle2.xml" path="/components/"/>
     <image id="t6j1ox" name="zd_shanghai_db.png" path="/imagesNew/"/>
+    <image id="jt8doy" name="db_qipaokuang.png" path="/imagesNew/"/>
   </resources>
   <publish name="" path="../GameClient/Assets/ResIn/UI/Main" packageCount="2" genCode="true" extractAlpha="true"/>
 </packageDescription>

+ 0 - 1
FGUIProject/assets/Store/components/ComVipLv.xml

@@ -16,6 +16,5 @@
     <component id="n44_hhx9" name="btnRule" src="psphtkg" fileName="components/BtnRule.xml" pkg="eg2y0ldp" xy="862,63" size="52,52">
       <Button icon="ui://p9mtgheofqortar"/>
     </component>
-    <text id="n45_l500" name="txtTipsFull" xy="505,107" size="100,44" fontSize="32" color="#8c8580" ubb="true" vars="true" text="已满级"/>
   </displayList>
 </component>

+ 2 - 2
FGUIProject/assets/Store/components/ListGiftItem.xml

@@ -12,8 +12,8 @@
     <image id="n22_10not" name="n22" src="hhx91f" fileName="imagesNew/GiftBag_baseboard1.png" xy="26,0"/>
     <image id="n47_l500" name="imgDouble" src="hhx9v" fileName="imagesNew/font_save_baseboard.png" xy="0,-1" group="n26_10not"/>
     <text id="n48_l500" name="n48" xy="17,7" size="69,46" group="n26_10not" fontSize="34" color="#ffffff" letterSpacing="-2" text="超值"/>
-    <text id="n49_l500" name="txtDesc" xy="8,32" pivot="0.5,0" size="55,51" group="n51_l500" fontSize="38" color="#ffffff" align="center" letterSpacing="-2" strokeColor="#cc3300" text="800"/>
-    <text id="n50_l500" name="n50" xy="63,42" size="22,36" group="n51_l500" fontSize="26" color="#ffffff" letterSpacing="-2" text="%"/>
+    <text id="n49_l500" name="txtDesc" xy="8,32" pivot="0.5,0" size="55,51" group="n51_l500" fontSize="38" color="#ffffff" align="center" letterSpacing="-2" strokeColor="#e4622d" strokeSize="2" text="800"/>
+    <text id="n50_l500" name="n50" xy="63,42" size="22,36" group="n51_l500" fontSize="26" color="#ffffff" letterSpacing="-2" strokeColor="#e4622d" strokeSize="2" text="%"/>
     <group id="n51_l500" name="n51" xy="8,32" size="77,51" group="n26_10not" advanced="true" layout="hz" excludeInvisibles="true">
       <relation target="" sidePair="center-center"/>
     </group>

+ 3 - 3
FGUIProject/assets/Store/components/ListShopItem.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <component size="290,455" overflow="hidden">
-  <controller name="c1" alias="礼包购买状态" pages="0,,1," selected="1">
+  <controller name="c1" alias="礼包购买状态" pages="0,,1," selected="0">
     <remark page="0" value="可购买"/>
     <remark page="1" value="已售罄"/>
   </controller>
@@ -13,8 +13,8 @@
     <image id="n55_l500" name="n55" src="fqortau" fileName="imagesNew/sc_xian.png" xy="27,119" size="236,4"/>
     <image id="n47_l500" name="imgDouble" src="hhx9v" fileName="imagesNew/font_save_baseboard.png" xy="191,263" group="n26_10not"/>
     <text id="n48_l500" name="n48" xy="208,271" size="69,46" group="n26_10not" fontSize="34" color="#ffffff" letterSpacing="-2" text="超值"/>
-    <text id="n49_l500" name="txtDesc" xy="207,301" pivot="0.5,0" size="55,51" group="n51_l500" fontSize="38" color="#ffffff" align="center" letterSpacing="-2" strokeColor="#cc3300" text="800"/>
-    <text id="n50_l500" name="n50" xy="262,310" size="22,36" group="n51_l500" fontSize="26" color="#ffffff" letterSpacing="-2" text="%"/>
+    <text id="n49_l500" name="txtDesc" xy="207,301" pivot="0.5,0" size="55,51" group="n51_l500" fontSize="38" color="#ffffff" align="center" letterSpacing="-2" strokeColor="#e4622d" strokeSize="2" text="800"/>
+    <text id="n50_l500" name="n50" xy="262,310" size="22,36" group="n51_l500" fontSize="26" color="#ffffff" letterSpacing="-2" strokeColor="#e4622d" strokeSize="2" text="%"/>
     <group id="n51_l500" name="n51" xy="207,301" size="77,51" group="n26_10not" advanced="true" layout="hz" excludeInvisibles="true">
       <relation target="" sidePair="center-center"/>
     </group>

+ 1 - 1
FGUIProject/assets/Store/components/ProgressBar1.xml

@@ -7,7 +7,7 @@
     </image>
     <image id="n1_hhx9" name="bar" src="hhx9f" fileName="imagesNew/VipLevel_Progress_fill.png" xy="4,3" size="656,18" fillMethod="hz"/>
     <image id="n2_hhx9" name="n2" src="hhx9d" fileName="imagesNew/VipLevel_Progress_frame2.png" xy="0,0" fillMethod="hz"/>
-    <text id="n4_hhx9" name="txttitle" xy="576,21" pivot="1,0" size="71,39" fontSize="28" color="#8c8580" align="right" ubb="true" vars="true" text="[color=#5A3E16]{value=0}[/color]/{max=100}"/>
+    <text id="n4_hhx9" name="txttitle" xy="551,21" pivot="1,0" size="96,39" fontSize="28" color="#8c8580" align="right" ubb="true" vars="true" text="[color=#5A3E16]{value=0}[/color]/{max=MAX}"/>
   </displayList>
   <ProgressBar titleType="valueAndmax"/>
 </component>

+ 1 - 1
FGUIProject/assets/Task/BattlePassRewardUI.xml

@@ -5,7 +5,7 @@
     <image id="n15_nd17" name="n15" src="uxxstmf" fileName="images/sj_dk.png" xy="0,264">
       <relation target="" sidePair="left-right"/>
     </image>
-    <text id="n19_nd17" name="LeftTime" xy="37,264" size="200,44" font="ui://eg2y0ldpa0cftks" fontSize="32" color="#fffaec" autoSize="none" text="15天24时60分"/>
+    <text id="n19_nd17" name="LeftTime" xy="37,264" size="200,44" font="ui://eg2y0ldpa0cftks" fontSize="32" color="#fffaec" autoSize="none" text=""/>
     <component id="n16_nd17" name="tip" src="nyhmtly" fileName="components/ButtonRed.xml" pkg="eg2y0ldp" xy="246,257" size="61,61"/>
     <component id="n18_nd17" name="LevelProcess" src="e3m1tnl" fileName="components/ExpProcess.xml" xy="107,604">
       <relation target="" sidePair="left-left"/>

+ 2 - 2
FGUIProject/assets/Task/CombTaskUI.xml

@@ -25,10 +25,10 @@
       <gearText controller="c1" pages="0" values="每天5:00刷新" default="周一5:00刷新"/>
     </text>
     <image id="n17_ids4" name="n17" src="uxxstm8" fileName="images/yeqian_db.png" xy="302,804" size="491,72"/>
-    <component id="n25_ids4" name="n25" src="ids44e" fileName="components/TabButton.xml" xy="294,805" group="n27_ids4">
+    <component id="n25_ids4" name="btnDailyTask" src="ids44e" fileName="components/TabButton.xml" xy="294,805" group="n27_ids4">
       <Button checked="true" controller="c1" page="0"/>
     </component>
-    <component id="n26_ids4" name="n26" src="ids44e" fileName="components/TabButton.xml" xy="555,805" group="n27_ids4">
+    <component id="n26_ids4" name="btnBattlePassTask" src="ids44e" fileName="components/TabButton.xml" xy="555,805" group="n27_ids4">
       <Button title="织造任务" controller="c1" page="1"/>
     </component>
     <group id="n27_ids4" name="n27" xy="294,805" size="522,72" advanced="true" layout="hz" excludeInvisibles="true"/>

+ 2 - 2
FGUIProject/assets/Task/TaskUI.xml

@@ -15,10 +15,10 @@
     <component id="n6_wet2" name="btnBack" src="9xlo8" fileName="components/BtnBack.xml" pkg="eg2y0ldp" xy="48,153">
       <relation target="" sidePair="left-left,top-top"/>
     </component>
-    <component id="n15_fqor" name="n15" src="ojlzr" fileName="components/BtnTab.xml" pkg="eg2y0ldp" xy="246,165" group="n17_fqor">
+    <component id="n15_fqor" name="btnTask" src="ojlzr" fileName="components/BtnTab.xml" pkg="eg2y0ldp" xy="246,165" group="n17_fqor">
       <Button title="今日任务" controller="c1" page="0"/>
     </component>
-    <component id="n16_fqor" name="n16" src="ojlzr" fileName="components/BtnTab.xml" pkg="eg2y0ldp" xy="536,165" group="n17_fqor">
+    <component id="n16_fqor" name="btnBattlePass" src="ojlzr" fileName="components/BtnTab.xml" pkg="eg2y0ldp" xy="536,165" group="n17_fqor">
       <Button title="锦罗织造" controller="c1" page="1"/>
     </component>
     <group id="n17_fqor" name="n17" xy="246,165" size="580,70" advanced="true" layout="hz" excludeInvisibles="true"/>

+ 1 - 1
GameClient/Assets/Editor/ArtsRes/ImagesClip/ImagesClip.cs

@@ -88,7 +88,7 @@ public class ImagesClip : MonoBehaviour
             }
             if (find) break;
         }
-        bmp = Cut(bmp, left, top, right - left, bottom - top);
+        bmp = Cut(bmp, left, top, right - left + 1, bottom - top + 1);
         if (bmp != null)
         {
             bmp.Save(TargetPath + fileName);

+ 31 - 11
GameClient/Assets/Editor/Xasset/Builds/BuildTask.cs

@@ -107,10 +107,6 @@ namespace VEngine.Editor.Builds
             var suitCfgs = SuitCfgArray.Instance.dataArray;
             foreach(var suitCfg in suitCfgs)
             {
-                if (suitCfg.isHide <= 0)
-                {
-                    continue;
-                }
                 HideSuitActionRes(suitCfg, hideFilePathList, hideDirPahtList);
             }
             //卡牌资源打包屏蔽
@@ -152,18 +148,42 @@ namespace VEngine.Editor.Builds
         private void HideSuitActionRes(SuitCfg suitCfg, List<string> hideFilePathList, List<string> hideDirPahtList)
         {
             string resPath;
-            //动画
             if(!string.IsNullOrEmpty(suitCfg.aniRes))
             {
+                //屏蔽立绘资源,临时代码,下个大版本将删除
+                bool used = false;
+                var luckyboxCfgs = LuckyBoxCfgArray.Instance.dataArray;
+                foreach(var luckyboxCfg in luckyboxCfgs)
+                {
+                    if(luckyboxCfg.isAni <= 0 && luckyboxCfg.suitIdArr != null)
+                    {
+
+                        if (Array.IndexOf(luckyboxCfg.suitIdArr, suitCfg.id) >= 0)
+                        {
+                            used = true;
+                        }
+                    }
+                }
+                if(used)
+                {
+                    Debug.Log($"suit {suitCfg.id} used picture res");
+                }
+                else
+                {
+                    resPath = ResPathUtil.GetDressUpPath(suitCfg.aniRes);
+                    hideFilePathList.Add(resPath);
+                }
+                if (suitCfg.isHide <= 0)
+                {
+                    return;
+                }
+                //动画
                 resPath = ResPathUtil.GetDressUpAnimationDirPath(suitCfg.aniRes);
                 hideDirPahtList.Add(resPath);
-            }
-            //特效
-            if (!string.IsNullOrEmpty(suitCfg.effRes))
-            {
-                resPath = ResPathUtil.GetDressUpEffectDirPath(suitCfg.effRes);
+                //特效
+                resPath = ResPathUtil.GetDressUpEffectDirPath(suitCfg.aniRes);
                 hideDirPahtList.Add(resPath);
-                resPath = ResPathUtil.GetDressUpEffectDirPath(suitCfg.effRes, true);
+                resPath = ResPathUtil.GetDressUpEffectDirPath(suitCfg.aniRes, true);
                 hideDirPahtList.Add(resPath);
             }
         }

+ 6 - 4
GameClient/Assets/Game/HotUpdate/Constant/ConstMessage.cs

@@ -124,7 +124,7 @@ namespace GFGGame
         public const string CONTINUOUS_REBATE_GIFT = "CONTINUOUS_REBATE_GIFT";//领取连续返利礼包
         public const string CONTINUOUS_REBATE_GIFT_SHOP_BUY = "CONTINUOUS_REBATE_GIFT_SHOP_BUY";
         public const string ACTIVITY_LUCKY_BOX = "ACTIVITY_LUCKY_BOX";//通知限时抽奖活动剩余次数
-        
+
         //通知活动移除
         public const string ACTIVITY_REMOVE = "ACTIVITY_REMOVE";
         //通知活动添加
@@ -132,16 +132,18 @@ namespace GFGGame
         // ACTIVITY_REWARD_ADD
         public const string ACTIVITY_REWARD_ADD = "ACTIVITY_REWARD_ADD";
         public static string ACTIVITY_COUNT_VALUE_CHANGE = "ACTIVITY_COUNT_VALUE_CHANGE";
-        
+
         //通知开启通行证
         public const string NOTICE_PASSPORT_OPEN = "NOTICE_PASSPORT_OPEN";
         //通知通行证等级变化
         public const string NOTICE_PASSPORT_LEVEL_CHANGE = "NOTICE_PASSPORT_LEVEL_CHANGE";
         //通知通行证赛季变更
         public const string NOTICE_PASSPORT_SEASON_CHANGE = "NOTICE_PASSPORT_SEASON_CHANGE";
-        
+
         //通知任务状态变更
         public const string NOTICE_TASK_STATE_CHANGE = "NOTICE_TASK_STATE_CHANGE";
-        
+        //引导界面关闭
+        public const string GUIDE_VIEW_HIDE = "GUIDE_VIEW_HIDE";
+
     }
 }

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Constant/ConstStoreSubId.cs

@@ -4,7 +4,7 @@ namespace GFGGame
     {
         public const int STORE_CHARGE = 0;//充值
         public const int STORE_CHARGE_ADDUP = 1;//累计充值
-        public const int STORE_MONTH_GLOAD_CARD = 0;//金卡
+        public const int STORE_MONTH_GOLD_CARD = 0;//金卡
         public const int STORE_MONTH_BLACK_CARD = 1;//黑金卡
         public const int STORE_GIFT_BAG_ACTIVITY = 0;//活动
         public const int STORE_GIFT_BAG_TIME_LIMIT = 1;//限时活动

+ 21 - 21
GameClient/Assets/Game/HotUpdate/Controller/BuyConfirmController.cs

@@ -5,28 +5,28 @@ namespace GFGGame
 
     public class BuyConfirmController : SingletonBase<BuyConfirmController>
     {
-        private static BuyConfirmView _buyConfirmView;
+        //     private static BuyConfirmView _buyConfirmView;
 
-        public static void Show(int itemId, int count, Action onSuccess = null, string message = "")
-        {
-            if (_buyConfirmView == null)
-            {
-                _buyConfirmView = new BuyConfirmView();
-            }
-            _buyConfirmView.SetParams(itemId, count, onSuccess, message);
-            _buyConfirmView.Show();
-        }
+        //     public static void Show(string message, string tips = "", Action onBtnSureSuccess = null, bool hideView = true)
+        //     {
+        //         if (_buyConfirmView == null)
+        //         {
+        //             _buyConfirmView = new BuyConfirmView();
+        //         }
+        // _buyConfirmView.SetParams(message, tips, onBtnSureSuccess, hideView);
+        // _buyConfirmView.Show();
+        //     }
 
-        public static void hide()
-        {
-            if (_buyConfirmView != null)
-            {
-                _buyConfirmView.Hide();
-            }
-        }
-        public static void Dispose()
-        {
-            _buyConfirmView = null;
-        }
+        //     public static void hide()
+        //     {
+        //         if (_buyConfirmView != null)
+        //         {
+        //             _buyConfirmView.Hide();
+        //         }
+        //     }
+        //     public static void Dispose()
+        //     {
+        //         _buyConfirmView = null;
+        //     }
     }
 }

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

@@ -184,6 +184,7 @@ namespace GFGGame
             LimitedTimeGiftBoxDataManager.Instance.Clear();
             BattlePassTaskDataManager.Instance.Clear();
             TaskDataManager.Instance.Clear();
+            LeagueDataManager.Instance.Clear();
             GameGlobal.zoneScene.GetComponent<SessionComponent>()?.Disconnect();
             GameGlobal.zoneScene.GetComponent<ServerInfosComponent>()?.ServerInfoList?.Clear();
             GameGlobal.zoneScene.GetComponent<AccountInfoComponent>()?.Clear();

+ 4 - 4
GameClient/Assets/Game/HotUpdate/Controller/GuideController.cs

@@ -63,7 +63,7 @@ namespace GFGGame
 
         }
         private static GList targetList = null;
-        public static bool TryGuide(GComponent target, string guideKey, int index, string guideStr = null, int listIndex = -1, bool checkPriorIndex = true, float yTxt = 0, bool justHint = false)
+        public static bool TryGuide(GComponent target, string guideKey, int index, string guideStr = null, int listIndex = -1, bool checkPriorIndex = true, float yTxt = 0, bool justHint = false, bool noTips = false)
         {
             if (!GameGlobal.DataInited)
             {
@@ -121,7 +121,7 @@ namespace GFGGame
                         return false;
                     }
                 }
-                ShowGuideByIndex(target, guideKey, guideStr, GuideDataManager.currentGuideId, GuideDataManager.currentGuideIdIndex, yTxt, justHint);
+                ShowGuideByIndex(target, guideKey, guideStr, GuideDataManager.currentGuideId, GuideDataManager.currentGuideIdIndex, yTxt, justHint, noTips);
                 if (!checkPriorIndex)
                 {
                     for (int i = 1; i < index; i++)
@@ -136,7 +136,7 @@ namespace GFGGame
 
             return false;
         }
-        private static void ShowGuideByIndex(GObject target, string guideKey, string guideStr = null, int guideId = 0, int index = 0, float yTxt = 0, bool justHint = false)
+        private static void ShowGuideByIndex(GObject target, string guideKey, string guideStr = null, int guideId = 0, int index = 0, float yTxt = 0, bool justHint = false, bool noTips = false)
         {
             HideGuide();
             if (GameGlobal.skipGuide)
@@ -144,7 +144,7 @@ namespace GFGGame
                 return;
             }
             LogServerHelper.SendNodeLog(GuideDataManager.currentGuideId * 100 + 1);
-            ViewManager.Show(ViewName.GUIDE_VIEW, new List<object> { target, guideKey, guideStr, guideId, index, yTxt, justHint });
+            ViewManager.Show(ViewName.GUIDE_VIEW, new List<object> { target, guideKey, guideStr, guideId, index, yTxt, justHint, noTips });
         }
         public static bool TryCompleteGuideIndex(string guideKey, int index)
         {

+ 19 - 0
GameClient/Assets/Game/HotUpdate/Data/ActivityDataManager.cs

@@ -58,8 +58,27 @@ namespace GFGGame
         /// <typeparam name="int">值由ConstBonusStatus定义</typeparam>
         /// <returns></returns>
         public Dictionary<int, int> luckyBoxActBonusState = new Dictionary<int, int>();
+        public List<ActivityLuckybonusCfg> SortActivityLuckybonusCfg(List<ActivityLuckybonusCfg> list)
+        {
+            list.Sort((ActivityLuckybonusCfg a, ActivityLuckybonusCfg b) =>
+            {
+
+                long allPlayTimes = ActivityDataManager.Instance.allPlayTimes;// GameGlobal.myNumericComponent.GetAsInt(NumericType.TotalRechargeScore);
+                int stateA = ActivityDataManager.Instance.luckyBoxActBonusState.ContainsKey(a.num) ? 1 : -1;
+                int stateB = ActivityDataManager.Instance.luckyBoxActBonusState.ContainsKey(b.num) ? 1 : -1;
+
+                if (allPlayTimes >= a.num && allPlayTimes < b.num && stateA < 0) return -1;
+                if (allPlayTimes >= b.num && allPlayTimes < a.num && stateB < 0) return 1;
 
 
+                if (stateA >= 0 && stateB < 0) return 1;
+                if (stateB >= 0 && stateA < 0) return -1;
+
+                return a.num - b.num;
+            });
+            return list;
+        }
+
         /**********************************************************每日登录*************************************************/
         private int _sevenDayLoginLoginId = 1;
         /// <summary>

+ 43 - 4
GameClient/Assets/Game/HotUpdate/Data/ActivityDay7DataManager.cs

@@ -8,7 +8,7 @@ namespace GFGGame
         {
             //获取7日任务活动
             var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfoOneByType(ActivityType.Day7);
-            return activityInfo == null ? 0 : TimeUtil.GetDayByTime(activityInfo.StartTime, TimeHelper.ServerNow());
+            return activityInfo == null ? 0 : TimeUtil.GetDay5(activityInfo.StartTime);
         }
 
         public long GetScore()
@@ -16,11 +16,50 @@ namespace GFGGame
             return ItemDataManager.GetItemNum(ConstItemID.ACTIVITY_DAY_7_SCORE);
         }
 
-        //NumericType.Day7ActivityReward
-        public bool GetActivityDay7RewardState(int day)
+        //NumericType.Day7ActivityReward,true表示已获得?
+        public bool GetActivityDay7RewardState(int id)
         {
             var day7ActivityReward = GameGlobal.myNumericComponent.GetAsInt(NumericType.Day7ActivityReward);
-            return MathHelper.isBitSet(day7ActivityReward, day);
+            return MathHelper.isBitSet(day7ActivityReward, id);
+        }
+
+        //检测7日活动活跃奖励是否可领
+        public bool CheckActivityDay7RewardCanGet(int id)
+        {
+            var activity7DaysCfg = Activity7DaysCfgArray.Instance.GetCfg(id);
+            var got = ActivityDay7DataManager.Instance.GetActivityDay7RewardState(id);
+            if (got)
+            {
+                return false;
+            }
+            //判断积分是否够
+            var score = ActivityDay7DataManager.Instance.GetScore();
+            if (score < activity7DaysCfg.score)
+            {
+                return false;
+            }
+            return true;
+        }
+
+        //检查指定天数有没有任务奖励可领
+        public bool CheckActivityDay7TaskRewrdCanGetByDay(int day)
+        {
+            //检查天数
+            var currentDay = ActivityDay7DataManager.Instance.GetActivityDay7Day();
+            if (currentDay < day)
+            {
+                return false;
+            }
+            var activity7DaysTaskCfg = Activity7DaysTaskCfgArray.Instance.GetCfg(day);
+            var taskIdArr = activity7DaysTaskCfg.taskIdArr;
+            foreach(int taskId in taskIdArr)
+            {
+                if(TaskDataManager.Instance.GetTaskStateById(taskId) == ConstBonusStatus.CAN_GET)
+                {
+                    return true;
+                }
+            }
+            return false;
         }
 
         public bool CheckOpen()

+ 11 - 3
GameClient/Assets/Game/HotUpdate/Data/ArenaDataManager.cs

@@ -111,7 +111,7 @@ namespace GFGGame
         /// <value></value>
         public bool IsSeasonOpen
         {
-            get 
+            get
             {
                 ArenaOpenCfg cfg = ArenaOpenCfgArray.Instance.GetCfg(SeasonId);
                 if (TimeUtil.IsBeforeCurTime(cfg.openTime) && TimeUtil.IsLaterCurTime(cfg.endTime))
@@ -421,11 +421,19 @@ namespace GFGGame
             }
             RemoveCheckSeasonOpenTimer();
         }
-        public void ReqArenaInfo()
+        public async void ReqArenaInfo()
         {
             if (FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(ArenaView).Name, false))
             {
-                ArenaSproxy.ReqArenaInfos().Coroutine();
+                await ArenaSproxy.ReqArenaInfos();
+                for (int i = 0; i < ArenaDataManager.Instance.Targets.Count; i++)
+                {
+                    ArenaTargetData targetData = ArenaDataManager.Instance.Targets[i];
+                    if (targetData.Type == FightTargetType.PLAYER)
+                    {
+                        ArenaSproxy.ReqArenaFightAttr(targetData.RoleInfo.roleId, targetData.FightDatas).Coroutine();
+                    }
+                }
                 ArenaSproxy.ReqArenaHistory().Coroutine();
             }
         }

+ 9 - 1
GameClient/Assets/Game/HotUpdate/Data/BattlePassTaskDataManager.cs

@@ -6,6 +6,9 @@ namespace GFGGame
 {
     public class BattlePassTaskDataManager : SingletonBase<BattlePassTaskDataManager>
     {
+        //是否初始化服务器数据
+        public bool initedFromServer;
+
         //通行证赛季Id
         private int SeasonId;
 
@@ -164,9 +167,13 @@ namespace GFGGame
 
         public bool GetHadCanGetReward()
         {
+            if(!initedFromServer)
+            {
+                return false;
+            }
             var battlePassLevel = GetBattlePassLevel();
             var isBuy = GetIsBuy();
-            for (var i = 1; i < battlePassLevel; i++)
+            for (var i = 1; i <= battlePassLevel; i++)
             {
                 if (!NormalRewards.Contains(i)) return true;
                 if (!isBuy) continue;
@@ -184,6 +191,7 @@ namespace GFGGame
             NormalRewards.Clear();
             SuperRewards.Clear();
             tempItems.Clear();
+            initedFromServer = false;
         }
     }
 }

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

@@ -232,7 +232,7 @@ namespace GFGGame
         public static bool CheckSuitHasActionRes(int suitId)
         {
             var suitCfg = SuitCfgArray.Instance.GetCfg(suitId);
-            return suitCfg != null && ResPathUtil.CheckDressUpAnimationExist(suitCfg.aniRes);
+            return suitCfg != null && ResPathUtil.CheckDressUpAnimationResExist(suitCfg.aniRes);
         }
 
     }

+ 2 - 4
GameClient/Assets/Game/HotUpdate/Data/FunctionOpenDataManager.cs

@@ -68,7 +68,7 @@ namespace GFGGame
             List<string> listCfg = new List<string>();
             for (int i = 0; i < cfgs.Length; i++)
             {
-                if (cfgs[i].id == typeof(ArenaView).Name) ArenaDataManager.Instance.ReqArenaInfo();
+                if (cfgs[i].id == typeof(ArenaView).Name && cfgs[i].storyLevelId == storyLevelCfgId) ArenaDataManager.Instance.ReqArenaInfo();
 
                 if (cfgs[i].show == 0) continue;
                 if (cfgs[i].special > 0) continue;
@@ -96,8 +96,7 @@ namespace GFGGame
             List<string> listCfg = new List<string>();
             for (int i = 0; i < cfgs.Length; i++)
             {
-                if (cfgs[i].id == typeof(ArenaView).Name) ArenaDataManager.Instance.ReqArenaInfo();
-
+                if (cfgs[i].id == typeof(ArenaView).Name && oldLv < cfgs[i].lv && cfgs[i].lv == lv) ArenaDataManager.Instance.ReqArenaInfo();
                 if ((cfgs[i].special > 0)) continue;
                 if (cfgs[i].show == 0) continue;
                 if (lv <= 0) continue;
@@ -124,7 +123,6 @@ namespace GFGGame
             for (int i = 0; i < cfgs.Length; i++)
             {
                 if (cfgs[i].id == typeof(ArenaView).Name) ArenaDataManager.Instance.ReqArenaInfo();
-
                 if (cfgs[i].show == 0) continue;
                 if (cfgs[i].storyLevelId > 0) continue;
                 if (cfgs[i].lv > 0) continue;

+ 3 - 1
GameClient/Assets/Game/HotUpdate/Data/InstanceZonesDataManager.cs

@@ -86,7 +86,9 @@ namespace GFGGame
             _roleData.scoreType = InstanceZonesDataManager.currentScoreType;
             _roleData.baseScore = RoleLevelCfgArray.Instance.GetCfg(RoleDataManager.lvl).baseScore;
             _roleData.cardId = InstanceZonesDataManager.currentCardId; ;//卡牌id
-            _roleData.cardScore = _roleData.cardId <= 0 ? 0 : CardDataManager.GetCardDataById(_roleData.cardId).scores[_roleData.scoreType];//卡牌对应主题的属性分数
+
+            CardData cardData = CardDataManager.GetCardDataById(_roleData.cardId);
+            _roleData.cardScore = _roleData.cardId <= 0 || cardData == null ? 0 : cardData.scores[_roleData.scoreType];//卡牌对应主题的属性分数
 
 
             StoryLevelCfg levelCfg = StoryLevelCfgArray.Instance.GetCfg(InstanceZonesDataManager.currentLevelCfgId);

+ 13 - 0
GameClient/Assets/Game/HotUpdate/Data/ItemDataManager.cs

@@ -314,5 +314,18 @@ namespace GFGGame
             }
             return false;
         }
+
+        /// <summary>
+        /// 检测背包中是否存在礼包
+        /// </summary>
+        /// <returns></returns>
+        public static bool BagIsExistGiftBag()
+        {
+            var isExistGiftBag = _dataDic.Values.Any(a =>
+                (a.itemType == ConstItemType.USEABLE && a.subType == ConstItemSubType.USEABLE_GIFT_BAG_SELECTABLE) ||
+                (a.itemType == ConstItemType.USEABLE && a.subType == ConstItemSubType.USEABLE_GIFT_BAG_RANDOM));
+
+            return isExistGiftBag;
+        }
     }
 }

+ 12 - 1
GameClient/Assets/Game/HotUpdate/Data/LeagueDataManager.cs

@@ -9,6 +9,11 @@ namespace GFGGame
         public static int NobodyRight = 2;// 2:无人答对
         public static int Ending = 3;// 3:答题结束
     }
+    public class LeagueJoinType
+    {
+        public static int Join = 1;//1:已经加入军团
+        public static int UnJoin = 2;//1:未加入军团
+    }
     public class LeagueDataManager : SingletonBase<LeagueDataManager>
     {
         public int Type = 2;// 1:已经加入军团 2:未加入军团
@@ -29,13 +34,14 @@ namespace GFGGame
 
         public void Clear()
         {
-            Type = 2;
+            Type = LeagueJoinType.UnJoin;
             ListDatas.Clear();
             LeagueData = null;
             ListApplyDatas.Clear();
             ListLogDatas.Clear();
             ListAnsweringDatas.Clear();
             LastAnswerRoleData = null;
+            LeagueNumber.Clear();
         }
         public void SetNumeric(int type, long value)
         {
@@ -74,6 +80,10 @@ namespace GFGGame
         }
         public int GetMyPos()
         {
+            if (LeagueDataManager.Instance.LeagueData == null)
+            {
+                return LeaguePos.Member;
+            }
             if (LeagueDataManager.Instance.LeagueData.LeagueMemberDatas.TryGetValue(RoleDataManager.roleId, out LeagueMemberData memberData))
             {
                 return memberData.Pos;
@@ -188,6 +198,7 @@ namespace GFGGame
                         isGet = GameGlobal.myNumericComponent.GetAsInt(NumericType.LeagueWelfareSuperDay) == 1;
                         break;
                 }
+                // ET.Log.Debug("isBuy:" + isBuy);
                 if (isBuy)
                 {
                     LeagueGiftGetData giftGetData = new LeagueGiftGetData();

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

@@ -7,6 +7,10 @@ namespace GFGGame
 {
     public class LimitedTimeGiftBoxDataManager : SingletonBase<LimitedTimeGiftBoxDataManager>
     {
+        //每日特惠每次登录没有打开过就给红点
+        private bool _isOpenMeiRiTeHui = false;
+        public bool IsOpenMeiRiTeHui => _isOpenMeiRiTeHui;
+        
         //列表数据3--等级条件的数据
         private List<LimitedTimeGiftBoxItemData> _ltgGbItemData3 = new List<LimitedTimeGiftBoxItemData>();
         public List<LimitedTimeGiftBoxItemData> LtgGbItemData3 => _ltgGbItemData3;
@@ -24,6 +28,13 @@ namespace GFGGame
             _ltgGbItemData3.Clear();
             _ltgGbItemData4.Clear();
             _ltgGbItemData5.Clear();
+            _isOpenMeiRiTeHui = false;
+        }
+
+        public void SetIsOpenMeiRiTeHui()
+        {
+            _isOpenMeiRiTeHui = true;
+            EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
         }
 
         public void UpLtgGbItemData3()

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

@@ -122,7 +122,10 @@ namespace GFGGame
             var preChapterCfg = StoryChapterCfgArray.Instance.GetCfg(preChapterId);
             if (preChapterCfg != null)
             {
-                return InstanceZonesDataManager.CheckChapterPass(preChapterCfg.type, preChapterCfg.subType, preChapterCfg.id, preChapterCfg.levelCount);
+                if(!InstanceZonesDataManager.CheckChapterPass(preChapterCfg.type, preChapterCfg.subType, preChapterCfg.id, preChapterCfg.levelCount))
+                {
+                    return false;
+                }
             }
             //前置关卡
             return CheckNeedChapterPass(chapterId, out var needChapterId);

+ 196 - 7
GameClient/Assets/Game/HotUpdate/Data/RedDotDataManager.cs

@@ -30,14 +30,15 @@ namespace GFGGame
         {
             //判断活跃奖励是否有可以领取
             var hadGetRewardNum = DailyTaskDataManager.Instance.GetHadGetRewardNum();
-            if (hadGetRewardNum) return true;
-            var taskInfos = TaskDataManager.Instance.GetTaskInfos(TaskType.Daily);
-            if (taskInfos.Select(taskInfo => taskInfo.Value).Any(info => info.State == ConstBonusStatus.CAN_GET))
+            if (hadGetRewardNum)
             {
                 return true;
             }
-            taskInfos = TaskDataManager.Instance.GetTaskInfos(TaskType.BattlePass);
-            if (taskInfos.Select(taskInfo => taskInfo.Value).Any(info => info.State == ConstBonusStatus.CAN_GET))
+            if (TaskDataManager.Instance.CheckTaskRewardCanGet(TaskType.Daily))
+            {
+                return true;
+            }
+            if (TaskDataManager.Instance.CheckTaskRewardCanGet(TaskType.BattlePass))
             {
                 return true;
             }
@@ -45,6 +46,30 @@ namespace GFGGame
             return BattlePassTaskDataManager.Instance.GetHadCanGetReward();
         }
 
+        //七日活动红点
+        public bool GetActivityDay7Red()
+        {
+            //任务奖励
+            var currentDay = ActivityDay7DataManager.Instance.GetActivityDay7Day();
+            for (var day = currentDay; day > 0; day--)
+            {
+                if (ActivityDay7DataManager.Instance.CheckActivityDay7TaskRewrdCanGetByDay(day))
+                {
+                    return true;
+                }
+            }
+            //活跃奖励
+            var activity7DaysCfgs = Activity7DaysCfgArray.Instance.dataArray;
+            foreach (var cfg in activity7DaysCfgs)
+            {
+                if (ActivityDay7DataManager.Instance.CheckActivityDay7RewardCanGet(cfg.id))
+                {
+                    return true;
+                }
+            }
+            return false;
+        }
+
         /// <summary>
         /// 七天签到
         /// </summary>
@@ -319,8 +344,16 @@ namespace GFGGame
             return itemHas >= itemNeed && costHas >= costNeed;
         }
 
-        //商店-会员中心
-        public bool GetChargeAddUpReward()
+        /// <summary>
+        /// 商城
+        /// </summary>
+        /// <returns></returns>
+        public bool GetShopRed()
+        {
+            return GetChargeAddUpRewardRed() || GetGiftBagRewardRed() || GetGoldCardRewardRed() || GetBlackCardRewardRed() || GetBlackCardClothingRed();
+        }
+        //商店-充值-会员中心
+        public bool GetChargeAddUpRewardRed()
         {
             VipCfg[] vipCfgs = VipCfgArray.Instance.dataArray;
 
@@ -334,5 +367,161 @@ namespace GFGGame
             return GameGlobal.myNumericComponent.GetAsInt(NumericType.VipWeekGetStatus) == 0 &&
                    RoleDataManager.vipLv > 0;
         }
+
+
+
+        //商店-礼包-活动礼包
+        public bool GetGiftBagRewardRed()
+        {
+            List<ShopCfg> shopCfgs = ShopCfgArray.Instance.GetCfgsBymenu1Andmenu2(ConstStoreTabId.STORE_GIFT_BAG, ConstStoreSubId.STORE_GIFT_BAG_ACTIVITY);
+            shopCfgs = ShopDataManager.Instance.RemoveNotOpenCfg(shopCfgs);
+            for (int i = 0; i < shopCfgs.Count; i++)
+            {
+                if (shopCfgs[i].price == 0 && ShopDataManager.Instance.GetGoodsBuyNumById(shopCfgs[i].id) < shopCfgs[i].maxBuyNum) return true;
+            }
+            return false;
+        }
+        /// <summary>
+        /// 商城-月卡-金卡
+        /// </summary>
+        /// <returns></returns>
+        public bool GetGoldCardRewardRed()
+        {
+            return RoleDataManager.CheckIsMonthCardOpenByType(MonthCardType.Gold) && GameGlobal.myNumericComponent.GetAsInt(NumericType.MonthCardGoldReward) <= 0;
+        }
+        /// <summary>
+        /// 商城-月卡-黑金卡
+        /// </summary>
+        /// <returns></returns>
+        public bool GetBlackCardRewardRed()
+        {
+            return RoleDataManager.CheckIsMonthCardOpenByType(MonthCardType.BlackGold) && GameGlobal.myNumericComponent.GetAsInt(NumericType.MonthCardBlackGoldReward) <= 0;
+        }
+        /// <summary>
+        /// 商城-月卡-黑金卡-单品奖励
+        /// </summary>
+        /// <returns></returns>
+        public bool GetBlackCardClothingRed()
+        {
+            int _year = TimeUtil.GetCurYear();
+            int _month = TimeUtil.GetCurMonth();
+            MonthlyCardClothesCfg clothesCfg = MonthlyCardClothesCfgArray.Instance.GetCfgByyearAndmonth(_year, _month);
+
+            return RoleDataManager.CheckIsMonthCardOpenByType(MonthCardType.BlackGold) && !MathHelper.isBitSet(GameGlobal.myNumericComponent.GetAsInt(NumericType.MonthCardExclusiveClothesMouth), _month);
+        }
+
+        /// <summary>
+        /// 联盟-成员申请
+        /// </summary>
+        /// <returns></returns>
+        public bool GetLeagueMemberJoinRed()
+        {
+            LeagueHotelCfg hotelCfg = LeagueHotelCfgArray.Instance.GetCfg(LeagueDataManager.Instance.HotelLevel);
+            int myPos = LeagueDataManager.Instance.GetMyPos();
+            return LeagueDataManager.Instance.Type == LeagueJoinType.Join && (myPos == LeaguePos.Owner || myPos == LeaguePos.SubOwner) && LeagueDataManager.Instance.ListApplyDatas.Count > 0 && LeagueDataManager.Instance.LeagueData.Num < hotelCfg.limit;
+        }
+        /// <summary>
+        /// 联盟-雅集福利
+        /// </summary>
+        /// <returns></returns>
+        public bool GetLeagueGiftBoxRed()
+        {
+            if (LeagueDataManager.Instance.Type == LeagueJoinType.UnJoin) return false;
+            List<LeagueGiftGetData> _getDatas = LeagueDataManager.Instance.GetGiftGetDatas();
+            for (int i = 0; i < _getDatas.Count; i++)
+            {
+                if (!_getDatas[i].IsGet) return true;
+            }
+            return false;
+        }
+        /// <summary>
+        /// 限时累充可领奖励红点
+        /// </summary>
+        /// <returns></returns>
+        public bool GetLimiteChargeRewardRed()
+        {
+            if (ActivityDataManager.Instance.actLimitChargeId == 0) return false;
+            ActivityInfo _activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfo(ActivityDataManager.Instance.actLimitChargeId);
+            if (_activityInfo == null) return false;
+            List<ActivityRechargeCfg> _rechargeCfgs = ActivityRechargeCfgArray.Instance.GetCfgsByactivityId(ActivityDataManager.Instance.actLimitChargeId);
+            for (int i = 0; i < _rechargeCfgs.Count; i++)
+            {
+                if (_activityInfo.CountValue >= _rechargeCfgs[i].value && _activityInfo.GetRewards.IndexOf(_rechargeCfgs[i].id) < 0)
+                {
+                    return true;
+                }
+            }
+            return false;
+        }
+        /// <summary>
+        /// 限时抽奖活动奖励
+        /// </summary>
+        /// <returns></returns>
+        public bool GetActLuckyBoxRewardRed()
+        {
+            if (ActivityDataManager.Instance.actLuckyBoxId <= 0) return false;
+            List<ActivityLuckybonusCfg> _bonueCfgs = ActivityLuckybonusCfgArray.Instance.GetCfgsByid(ActivityDataManager.Instance.actLuckyBoxId);
+            for (int i = 0; i < _bonueCfgs.Count; i++)
+            {
+                int key = _bonueCfgs[i].num;
+                int state = ActivityDataManager.Instance.luckyBoxActBonusState.ContainsKey(key) ? ActivityDataManager.Instance.luckyBoxActBonusState[key] : 0;
+                bool canGet = state < ConstBonusStatus.GOT && ActivityDataManager.Instance.allPlayTimes >= _bonueCfgs[i].num;
+                if (canGet) return true;
+            }
+            return false;
+        }
+        /// <summary>
+        /// 限时抽奖活动任务奖励
+        /// </summary>
+        /// <returns></returns>
+        public bool GetActLuckyBoxTaskdRed()
+        {
+            if (ActivityDataManager.Instance.actLuckyBoxId <= 0) return false;
+            List<TaskCfg> _bonueCfgs = TaskDataManager.Instance.GetTaskCfgs(TaskType.LuckyBoxActivity);
+            for (int i = 0; i < _bonueCfgs.Count; i++)
+            {
+                int state = TaskDataManager.Instance.GetTaskStateById(_bonueCfgs[i].id);
+                if (state == ConstBonusStatus.CAN_GET) return true;
+            }
+            return false;
+        }
+
+        /// <summary>
+        /// 摘星-每日特惠
+        /// </summary>
+        /// <returns></returns>
+        public bool GetMeiRiTeHuiRed()
+        {
+            return !LimitedTimeGiftBoxDataManager.Instance.IsOpenMeiRiTeHui;
+        }
+
+        /// <summary>
+        /// 背包中存在礼包就一直给主界面 背包 红点
+        /// </summary>
+        /// <returns></returns>
+        public bool GetMainBagGiftRed()
+        {
+            return ItemDataManager.BagIsExistGiftBag();
+        }
+
+        // /// <summary>
+        // /// 背包内 是礼包物品就一直给红点
+        // /// </summary>
+        // /// <returns></returns>
+        // public bool GetBagGiftRed(int itemId)
+        // {
+        //     ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(itemId);
+        //     if (itemCfg.itemType == ConstItemType.USEABLE)
+        //     {
+        //         if (itemCfg.subType == ConstItemSubType.USEABLE_GIFT_BAG_SELECTABLE ||
+        //             itemCfg.subType == ConstItemSubType.USEABLE_GIFT_BAG_RANDOM)
+        //         {
+        //             return true;
+        //         }
+        //     }
+        //
+        //     return false;
+        // }
+
     }
 }

+ 12 - 1
GameClient/Assets/Game/HotUpdate/Data/ShopViewManager.cs

@@ -24,9 +24,13 @@ namespace GFGGame
         {
             UI_ComVipLv com = UI_ComVipLv.Proxy(obj);
             com.m_txtLv.text = RoleDataManager.vipLv.ToString();
+            int level = RoleDataManager.vipLv;
+            ET.Log.Debug("vipLv:" + level);
+            ET.Log.Debug("vipExp:" + RoleDataManager.vipExp);
             VipCfg vipCfg = VipCfgArray.Instance.GetCfg(RoleDataManager.vipLv);
+            if (vipCfg == null) return;
             VipCfg nextVipCfg = VipCfgArray.Instance.GetCfg(RoleDataManager.vipLv + 1);
-            com.m_txtTipsFull.visible = nextVipCfg == null;
+            com.m_grpTips.visible = nextVipCfg != null;
             if (com.m_btnRule.data == null)
             {
                 com.m_btnRule.onClick.Add(RuleController.ShowRuleView);
@@ -41,6 +45,13 @@ namespace GFGGame
                 com.m_txtTips.SetVar("exp", (vipCfg.num - RoleDataManager.vipExp).ToString()).FlushVars();
                 com.m_txtTips.SetVar("vipLv", (nextVipCfg.id).ToString()).FlushVars();
             }
+            else
+            {
+                com.m_proExp.target.max = vipCfg.num;
+                com.m_proExp.target.value = RoleDataManager.vipExp;
+                com.m_proExp.m_txttitle.SetVar("value", com.m_proExp.target.value.ToString()).FlushVars();
+                com.m_proExp.m_txttitle.SetVar("max", "MAX").FlushVars();
+            }
             UI_ComVipLv.ProxyEnd();
         }
 

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

@@ -167,7 +167,7 @@ namespace GFGGame
         public int GetFilingRewardStateByIndex(int chapterId, int index)
         {
             StudioData studioData = GetStudioDataById(chapterId);
-            return studioData.RewardsStatus[index];
+            return studioData.RewardsStatus.Count > index ? studioData.RewardsStatus[index] : 0;
 
         }
 

+ 24 - 5
GameClient/Assets/Game/HotUpdate/Data/TaskDataManager.cs

@@ -52,6 +52,8 @@ namespace GFGGame
             {
                 TaskInfosDic[taskId] = info;
             }
+            EventAgent.DispatchEvent(ConstMessage.NOTICE_TASK_STATE_CHANGE, taskId);
+            EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
         }
 
         //RemoveTaskInfo
@@ -82,6 +84,8 @@ namespace GFGGame
             }
 
             taskInfo.State = state;
+            EventAgent.DispatchEvent(ConstMessage.NOTICE_TASK_STATE_CHANGE, taskId);
+            EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
         }
 
         /// <summary>
@@ -171,13 +175,23 @@ namespace GFGGame
                     return string.Format(activeRewardCfg.desc, taskCfg.paramsArr[0], taskCfg.paramsArr[1]);
                 case ConstTaskType.FinishStory:
                 case ConstTaskType.FinishInstanceZones:
-                {
-                    return string.Format(activeRewardCfg.desc, taskCfg.paramsArr[0]);
-                }
+                    {
+                        return string.Format(activeRewardCfg.desc, taskCfg.paramsArr[0]);
+                    }
                 default: return string.Format(activeRewardCfg.desc, taskCfg.GetTargetCount());
             }
         }
 
+        public bool CheckTaskRewardCanGet(int taskType)
+        {
+            var taskInfos = TaskDataManager.Instance.GetTaskInfos(taskType);
+            if (taskInfos.Select(taskInfo => taskInfo.Value).Any(info => info.State == ConstBonusStatus.CAN_GET))
+            {
+                return true;
+            }
+            return false;
+        }
+
         /// <summary>
         /// 任务界面跳转
         /// </summary>
@@ -188,19 +202,21 @@ namespace GFGGame
             {
                 case nameof(LeagueAnswerView):
 
-                    if (LeagueDataManager.Instance.Type == 1)
+                    if (LeagueDataManager.Instance.Type == LeagueJoinType.Join)
                     {
                         ViewManager.Show<LeagueView>(null, goBackDatas, true);
                         ViewManager.Show($"GFGGame.{jumpId}");
                     }
                     else
                     {
+                        if (!FunctionOpenDataManager.Instance.CheckIsFunOpenById(nameof(LeagueView))) return;
                         ViewManager.Show<LeagueJoinView>(null, goBackDatas, true, true);
                     }
 
                     break;
                 case nameof(LeagueView):
-                    if (LeagueDataManager.Instance.Type == 1)
+                    if (!FunctionOpenDataManager.Instance.CheckIsFunOpenById(nameof(LeagueView))) return;
+                    if (LeagueDataManager.Instance.Type == LeagueJoinType.Join)
                     {
                         ViewManager.Show<LeagueView>(null, goBackDatas, true);
                     }
@@ -213,6 +229,9 @@ namespace GFGGame
                     ViewManager.Show(goBackDatas[0].ToString(), goBackDatas.Length > 1 ? goBackDatas[1] : null);
                     ViewManager.Show<StoreView>(param, goBackDatas);
                     break;
+                case nameof(StoryChapterListView):
+                    ViewManager.Show($"GFGGame.{jumpId}", param, goBackDatas, true, true);
+                    break;
                 default:
                     ViewManager.Show($"GFGGame.{jumpId}", null, goBackDatas, true, true);
                     break;

+ 22 - 16
GameClient/Assets/Game/HotUpdate/DressUp/DressUpObj.cs

@@ -171,6 +171,10 @@ namespace GFGGame
                 {
                     if (!isRemove)
                     {
+                        if (checkDefault)
+                        {
+                            TryCancelActionWhenPutOn(itemId);
+                        }
                         checkRemoveSameType(subType);
                         Add(itemId);
                     }
@@ -234,7 +238,6 @@ namespace GFGGame
             if (checkDefault)
             {
                 checkDefaultItem();
-                UpdateWholeBodyView();
             }
             RoleLevelCfg roleLevelCfg = RoleLevelCfgArray.Instance.GetCfg(GameGlobal.myNumericComponent.GetAsInt(NumericType.Lvl));
             // FightDataManager.Instance.score = roleLevelCfg.baseScore;
@@ -258,7 +261,7 @@ namespace GFGGame
         }
 
         //当穿一件部件时检查是否需要取消动作,如果需要则取消该动作
-        public void CheckCancelActionWhenPutOn(int itemId)
+        public void TryCancelActionWhenPutOn(int itemId)
         {
             if (_dressUpData.actionId > 0)
             {
@@ -322,13 +325,12 @@ namespace GFGGame
                 }
             }
             checkDefaultItem();
-            UpdateWholeBodyView();
         }
 
         //穿上一个动作
         public void PutOnAction(int actionId)
         {
-            bool hasSuitActionRes = DressUpMenuSuitDataManager.CheckSuitHasActionRes(_dressUpData.suitId);
+            bool hasSuitActionRes = DressUpMenuSuitDataManager.CheckSuitHasActionRes(actionId);
             _dressUpData.actionId = actionId;
             if(hasSuitActionRes)
             {
@@ -346,7 +348,6 @@ namespace GFGGame
                 CancelAction(true);
             }
             checkDefaultItem();
-            UpdateWholeBodyView();
         }
 
         //取消动作
@@ -378,8 +379,7 @@ namespace GFGGame
                     }
                 }
             }
-            checkDefaultItem();
-            UpdateWholeBodyView();
+            UpdateRoleView();
         }
 
         //穿戴一组换装数据
@@ -397,7 +397,6 @@ namespace GFGGame
                 AddOrRemove(itemID, false, true);
             }
             checkDefaultItem();
-            UpdateWholeBodyView();
 
         }
 
@@ -416,7 +415,6 @@ namespace GFGGame
                 AddOrRemove(itemID, false, true);
             }
             checkDefaultItem();
-            UpdateWholeBodyView();
         }
 
         public int GetItemIdBuyType(int subType)
@@ -513,6 +511,8 @@ namespace GFGGame
             bool hasNeiDaDefault = false;
             //是否有默认下装
             bool hasXiaZhuangDefault = false;
+            //是否有妆容
+            bool hasZhuangRong = false;
             for (int i = 0; i < _dressUpData.itemList.Count; i++)
             {
                 int itemID = (int)_dressUpData.itemList[i];
@@ -537,6 +537,11 @@ namespace GFGGame
                 {
                     hasShangYi = true;
                 }
+                else if (subType == ConstDressUpItemType.ZHUANG_RONG)
+                {
+                    hasZhuangRong = true;
+                }
+
                 if (itemID == ConstItemID.DEFULT_NEI_DA)
                 {
                     hasNeiDaDefault = true;
@@ -574,23 +579,24 @@ namespace GFGGame
 
                 }
             }
-
             CheckCurDressIsSuit();
+            DressUpUtil.UpdateHead(!hasZhuangRong, _sceneObj, _needSetMask, _roleObj);
+            UpdateBodyView();
         }
 
-        //更新整个身体层(包括头和躯干)
-        private void UpdateWholeBodyView()
+        //更新整个身体
+        private void UpdateBodyView()
         {
             if (IsAction)
             {
                 SuitCfg suitCfg = SuitCfgArray.Instance.GetCfg(_dressUpData.actionId);
-                var hasAniRes = ResPathUtil.CheckDressUpAnimationExist(suitCfg.aniRes);
-                var res = hasAniRes ? suitCfg.aniRes : null;
-                DressUpUtil.UpdateWholeBody(res, _sceneObj, hasAniRes, suitCfg.effRes, false, _roleObj);
+                var hasAniRes = ResPathUtil.CheckDressUpAnimationResExist(suitCfg.aniRes);
+                var actionRes = hasAniRes ? suitCfg.aniRes : null;
+                DressUpUtil.UpdateBody(actionRes, _sceneObj, _needSetMask, _roleObj);
             }
             else
             {
-                DressUpUtil.UpdateWholeBody(null, _sceneObj, false, null, _needSetMask, _roleObj);
+                DressUpUtil.UpdateBody(null, _sceneObj, _needSetMask, _roleObj);
             }
         }
 

+ 113 - 97
GameClient/Assets/Game/HotUpdate/DressUp/DressUpUtil.cs

@@ -108,7 +108,7 @@ namespace GFGGame
                 if (!string.IsNullOrEmpty(itemCfg.resLayer1))
                 {
                     spritObjName = string.Format(FORMAT_SPRITE_NAME, itemCfg.subType, 1);
-                    TryClearSpriteObj(parentObj, spritObjName);
+                    TryRemoveObj(parentObj, spritObjName);
                     aniObjName = string.Format(FORMAT_ANIMATION_NAME, itemCfg.subType, 1);
                     TryRemoveObj(parentObj, aniObjName);
                     aniObjName = string.Format(FORMAT_EFFECT_OBJ_NAME, itemCfg.subType, 1);
@@ -118,7 +118,7 @@ namespace GFGGame
                 if (!string.IsNullOrEmpty(itemCfg.resLayer2))
                 {
                     spritObjName = string.Format(FORMAT_SPRITE_NAME, itemCfg.subType, 2);
-                    TryClearSpriteObj(parentObj, spritObjName);
+                    TryRemoveObj(parentObj, spritObjName);
                     aniObjName = string.Format(FORMAT_ANIMATION_NAME, itemCfg.subType, 2);
                     TryRemoveObj(parentObj, aniObjName);
                     aniObjName = string.Format(FORMAT_EFFECT_OBJ_NAME, itemCfg.subType, 2);
@@ -128,7 +128,7 @@ namespace GFGGame
                 if (!string.IsNullOrEmpty(itemCfg.resLayer3))
                 {
                     spritObjName = string.Format(FORMAT_SPRITE_NAME, itemCfg.subType, 3);
-                    TryClearSpriteObj(parentObj, spritObjName);
+                    TryRemoveObj(parentObj, spritObjName);
                     aniObjName = string.Format(FORMAT_ANIMATION_NAME, itemCfg.subType, 3);
                     TryRemoveObj(parentObj, aniObjName);
                     aniObjName = string.Format(FORMAT_EFFECT_OBJ_NAME, itemCfg.subType, 3);
@@ -137,57 +137,73 @@ namespace GFGGame
             }
         }
 
-        public static void InitHead(GameObject sceneObj, bool needSetMask = false, GameObject parentObj = null)
+        public static void UpdateHead(bool show, GameObject sceneObj, bool needSetMask = false, GameObject parentObj = null)
         {
             var roleTf = sceneObj.transform.Find(ROLE_OBJ_NAME);
             parentObj = parentObj == null ? roleTf.gameObject : parentObj;
             string res = HEAD_DEFAULT_RES_NAME;
+
             Transform transform_t = parentObj.transform.Find(HEAD_SPRITE_NAME);
-            if (transform_t != null)
+            if (show)
             {
-                return;
+                if (transform_t != null)
+                {
+                    transform_t.gameObject.SetActive(true);
+                    return;
+                }
+                AddSpriteObj(res, "png", HEAD_SPRITE_NAME, parentObj, 1, needSetMask);
+            }
+            else
+            {
+                if(transform_t == null)
+                {
+                    return;
+                }
+                transform_t.gameObject.SetActive(false);
             }
-            AddSpriteObj(res, "png", HEAD_SPRITE_NAME, parentObj, 1, needSetMask);
-        }
-
-        public static void UpdateWholeBody(string res, GameObject sceneObj, bool isAni = false, string effRes = null, bool needSetMask = false, GameObject parentObj = null)
-        {
-            InitHead(sceneObj, needSetMask, parentObj);
-            UpdateBodyOnly(res, sceneObj, isAni, effRes, needSetMask, parentObj);
         }
 
-        public static void UpdateBodyOnly(string res, GameObject sceneObj, bool isAni = false, string effRes = null, bool needSetMask = false, GameObject parentObj = null)
+        public static void UpdateBody(string actionRes, GameObject sceneObj, bool needSetMask = false, GameObject parentObj = null)
         {
             //角色
             var roleTf = sceneObj.transform.Find(ROLE_OBJ_NAME);
             parentObj = parentObj == null ? roleTf.gameObject : parentObj;
-            if (res == null)
+
+            var extPng = "png";
+            if (!string.IsNullOrEmpty(actionRes))
             {
-                res = BODY_DEFAULT_RES_NAME;
+                string resPath = ResPathUtil.GetDressUpAnimationPath(actionRes);
+                if (CheckGameObjExisted(parentObj, BODY_ANIMATION_NAME, resPath))
+                {
+                    return;
+                }
+            }
+            else
+            {
+                string resPath = ResPathUtil.GetDressUpPath(BODY_DEFAULT_RES_NAME, extPng);
+                if (CheckGameObjExisted(parentObj, BODY_SPRITE_NAME, resPath))
+                {
+                    return;
+                }
             }
 
-            //清理旧的
-            TryClearSpriteObj(parentObj, BODY_SPRITE_NAME);
             var removeBodyAni = TryRemoveObj(parentObj, BODY_ANIMATION_NAME);
             TryRemoveObj(parentObj, BODY_EFFECT_OBJ_NAME);
-
-            if (isAni)
+            TryRemoveObj(parentObj, BODY_SPRITE_NAME);
+            if (!string.IsNullOrEmpty(actionRes))
             {
-                AddAnimationObj(res, BODY_ANIMATION_NAME, parentObj, 0);
+                AddAnimationObj(actionRes, BODY_ANIMATION_NAME, parentObj, 0);
+                //特效
+                TryAddEffectObj(actionRes, BODY_EFFECT_OBJ_NAME, parentObj, 0, false);
             }
             else
             {
-                AddSpriteObj(res, "png", BODY_SPRITE_NAME, parentObj, 0, needSetMask);
+                AddSpriteObj(BODY_DEFAULT_RES_NAME, extPng, BODY_SPRITE_NAME, parentObj, 0, needSetMask);
                 if (removeBodyAni)
                 {
                     parentObj.transform.SetPositionAndRotation(new Vector3(), new Quaternion());
                 }
             }
-            //特效
-            if (!string.IsNullOrEmpty(effRes))
-            {
-                TryAddEffectObj(effRes, BODY_EFFECT_OBJ_NAME, parentObj, 0, false);
-            }
         }
 
         public static void AddAssetReleaser(GameObject gameObj, string resPath)
@@ -242,18 +258,18 @@ namespace GFGGame
 
             //清理旧的
             var spritObjName = string.Format(FORMAT_SPRITE_NAME, itemCfg.subType, layerId);
-            TryClearSpriteObj(parentObj, spritObjName);
-            var aniObjName = string.Format(FORMAT_ANIMATION_NAME, itemCfg.subType, layerId);
-            TryRemoveObj(parentObj, aniObjName);
+            TryRemoveObj(parentObj, spritObjName);
+            var objName = string.Format(FORMAT_ANIMATION_NAME, itemCfg.subType, layerId);
+            TryRemoveObj(parentObj, objName);
             string ext = ItemUtil.GetItemResExt(itemCfg.itemType, itemCfg.subType);
             //这里需要先添加静态图,防止加载动画有延迟,出现光头
             GameObject spriteObj = AddSpriteObj(res, ext, spritObjName, parentObj, sortingOrder, needSetMask);
 
-            GameObject aniObj = null;
+            GameObject addAniObj = null;
             if (showAni)
             {
-                aniObj = AddAnimationObj(res, aniObjName, parentObj, sortingOrder);
-                if (aniObj != null && spriteObj != null)
+                addAniObj = AddAnimationObj(res, objName, parentObj, sortingOrder);
+                if (addAniObj != null && spriteObj != null)
                 {
                     Timers.inst.Add(0.03f, 1, (obj) =>
                     {
@@ -270,7 +286,7 @@ namespace GFGGame
                                         string resPath = ResPathUtil.GetDressUpPath(res, ext);
                                         if (assetDisposer.resPath == resPath)
                                         {
-                                            TryClearSpriteObj(parentObj, spritObjName);
+                                            TryRemoveObj(parentObj, spritObjName);
                                         }
                                     }
                                 }
@@ -280,9 +296,9 @@ namespace GFGGame
                 }
             }
 
-            aniObjName = string.Format(FORMAT_EFFECT_OBJ_NAME, itemCfg.subType, layerId);
-            TryRemoveObj(parentObj, aniObjName);
-            TryAddEffectObj(res, aniObjName, parentObj, sortingOrder, aniObj != null);
+            objName = string.Format(FORMAT_EFFECT_OBJ_NAME, itemCfg.subType, layerId);
+            TryRemoveObj(parentObj, objName);
+            TryAddEffectObj(res, objName, parentObj, sortingOrder, addAniObj != null);
         }
 
         private static GameObject AddSpriteObj(string res, string ext, string objName, GameObject parentObj, int sortingOrder, bool needSetMask)
@@ -292,6 +308,10 @@ namespace GFGGame
             {
                 return null;
             }
+            if (CheckGameObjExisted(parentObj, objName, resPath))
+            {
+                return null;
+            }
             SpriteRenderer spr = null;
             var gameObj = parentObj.transform.Find(objName)?.gameObject;
             if (gameObj == null)
@@ -331,44 +351,6 @@ namespace GFGGame
             return gameObj;
         }
 
-        public static void TryClearSpriteObj(GameObject parentObj, string spritObjName)
-        {
-            if (parentObj == null)
-            {
-                return;
-            }
-            Transform transform_t = parentObj.transform.Find(spritObjName);
-            if (transform_t != null)
-            {
-                GameObject gameObj_t = transform_t.gameObject;
-                if (gameObj_t != null)
-                {
-                    //SpriteRenderer spr = null;
-                    //spr = gameObj_t.GetComponent<SpriteRenderer>();
-                    //if(spr != null)
-                    //{
-                    //    spr.sprite = null;
-                    //}
-                    // var assetDisposer = gameObj_t.GetComponent<AssetReleaser>();
-                    // if (assetDisposer != null)
-                    // {
-                    //     if (!string.IsNullOrEmpty(assetDisposer.resPath))
-                    //     {
-                    //         GFGAsset.Release(assetDisposer.resPath);
-                    //         assetDisposer.resPath = null;
-                    //     }
-                    // }
-                    // SpriteRenderer spr = gameObj_t.GetComponent<SpriteRenderer>();
-                    // if (spr != null)
-                    // {
-                    //     GameObject.Destroy(spr);
-                    // }
-                    GameObject.DestroyImmediate(gameObj_t);
-
-                }
-            }
-        }
-
         private static GameObject AddAnimationObj(string res, string objName, GameObject parentObj, int sortingOrder)
         {
             string resPath = ResPathUtil.GetDressUpAnimationPath(res);
@@ -376,6 +358,10 @@ namespace GFGGame
             {
                 return null;
             }
+            if(CheckGameObjExisted(parentObj, objName, resPath))
+            {
+                return null;
+            }
             var prefab = GFGAsset.Load<GameObject>(resPath);
             var gameObj = GameObject.Instantiate(prefab);
             AddAssetReleaser(gameObj, resPath);
@@ -404,13 +390,37 @@ namespace GFGGame
             return gameObj;
         }
 
-        private static bool TryRemoveObj(GameObject parentObj, string aniObjName)
+        private static void TryAddEffectObj(string res, string objName, GameObject parentObj, int sortingOrder, bool inAniDir)
+        {
+            var resPath = ResPathUtil.GetDressUpEffectPath(res, inAniDir);
+            if (!VEngine.Versions.Contains(resPath))
+            {
+                return;
+            }
+            if (CheckGameObjExisted(parentObj, objName, resPath))
+            {
+                return;
+            }
+            GameObject effPre = GFGAsset.Load<GameObject>(resPath);
+            var gameObj = GameObject.Instantiate(effPre);
+            AddAssetReleaser(gameObj, resPath);
+            gameObj.transform.SetParent(parentObj.transform, false);
+            gameObj.name = objName;
+            var sortingGroup = gameObj.transform.GetComponent<SortingGroup>();
+            if (sortingGroup != null)
+            {
+                GameObject.Destroy(sortingGroup);
+            }
+            SetRenderersOrder(gameObj, sortingOrder + 1);//特效层默认高一个层级
+        }
+
+        private static bool TryRemoveObj(GameObject parentObj, string objName)
         {
             if (parentObj == null)
             {
                 return false;
             }
-            Transform transform = parentObj.transform.Find(aniObjName);
+            Transform transform = parentObj.transform.Find(objName);
             if (transform != null)
             {
                 GameObject gameObj = transform.gameObject;
@@ -423,6 +433,32 @@ namespace GFGGame
             return false;
         }
 
+        private static bool CheckGameObjExisted(GameObject parentObj, string objName, string resPath)
+        {
+            if (parentObj == null)
+            {
+                return false;
+            }
+            Transform transform = parentObj.transform.Find(objName);
+            if (transform != null)
+            {
+                GameObject gameObj = transform.gameObject;
+                if (gameObj != null)
+                {
+                     var assetReleaser = gameObj.GetComponent<AssetReleaser>();
+                    if (assetReleaser != null)
+                    {
+                        if (assetReleaser.resPath == resPath)
+                        {
+
+                            return true;
+                        }
+                    }
+                }
+            }
+            return false;
+        }
+
         public static GameObject CreateAnimationObj(string resPath)
         {
             // string resPath = ResPathUtil.GetCardAnimationPath(res);
@@ -436,26 +472,6 @@ namespace GFGGame
             return gameObj;
         }
 
-        private static void TryAddEffectObj(string res, string objName, GameObject parentObj, int sortingOrder, bool inAni)
-        {
-            var resPath = ResPathUtil.GetDressUpEffectPath(res, inAni);
-            if (!VEngine.Versions.Contains(resPath))
-            {
-                return;
-            }
-            GameObject effPre = GFGAsset.Load<GameObject>(resPath);
-            var gameObj = GameObject.Instantiate(effPre);
-            AddAssetReleaser(gameObj, resPath);
-            gameObj.transform.SetParent(parentObj.transform, false);
-            gameObj.name = objName;
-            var sortingGroup = gameObj.transform.GetComponent<SortingGroup>();
-            if (sortingGroup != null)
-            {
-                GameObject.Destroy(sortingGroup);
-            }
-            SetRenderersOrder(gameObj, sortingOrder + 1);//特效层默认高一个层级
-        }
-
         public static void LoadSpritePos(string res, out float tx, out float ty)
         {
             string resPath = ResPathUtil.GetDressUpPath(res, "bytes");

+ 1 - 1
GameClient/Assets/Game/HotUpdate/DressUp/SceneController.cs

@@ -16,7 +16,7 @@ namespace GFGGame
             DressUpUtil.AddAssetReleaser(tf.gameObject, resPath);
             spr.sprite = sp;
             //角色
-            DressUpUtil.UpdateBodyOnly("ui_loginrole", sceneObj, true);
+            DressUpUtil.UpdateBody("ui_loginrole", sceneObj);
         }
 
         public static void UpdateMainScene(GameObject sceneObj)

+ 3 - 3
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Bag/UI_GiftBoxSelectorUI.cs

@@ -9,9 +9,9 @@ namespace UI.Bag
         public GComponent target;
         public GButton m_btnCancel;
         public GTextField m_txtItemDes;
-        public GTextField m_txtName;
         public GTextField m_txtTotalNum;
         public GLoader m_loaIcon;
+        public GTextField m_txtName;
         public GList m_list;
         public GTextField m_txtSelRewardStr;
         public GButton m_btnSub;
@@ -64,9 +64,9 @@ namespace UI.Bag
         {
             m_btnCancel = (GButton)comp.GetChild("btnCancel");
             m_txtItemDes = (GTextField)comp.GetChild("txtItemDes");
-            m_txtName = (GTextField)comp.GetChild("txtName");
             m_txtTotalNum = (GTextField)comp.GetChild("txtTotalNum");
             m_loaIcon = (GLoader)comp.GetChild("loaIcon");
+            m_txtName = (GTextField)comp.GetChild("txtName");
             m_list = (GList)comp.GetChild("list");
             m_txtSelRewardStr = (GTextField)comp.GetChild("txtSelRewardStr");
             m_btnSub = (GButton)comp.GetChild("btnSub");
@@ -75,9 +75,9 @@ namespace UI.Bag
         {
             m_btnCancel = null;
             m_txtItemDes = null;
-            m_txtName = null;
             m_txtTotalNum = null;
             m_loaIcon = null;
+            m_txtName = null;
             m_list = null;
             m_txtSelRewardStr = null;
             m_btnSub = null;

+ 6 - 6
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CommonGame/UI_BuyConfirmUI.cs

@@ -8,8 +8,8 @@ namespace UI.CommonGame
     {
         public GComponent target;
         public GComponent m_bg;
-        public GTextField m_txtNeed;
-        public GTextField m_txtNum;
+        public GTextField m_txtMessage;
+        public GTextField m_txtTips;
         public GButton m_btnCancel;
         public GButton m_btnSure;
         public const string URL = "ui://eg2y0ldpds629h";
@@ -60,16 +60,16 @@ namespace UI.CommonGame
         private void Init(GComponent comp)
         {
             m_bg = (GComponent)comp.GetChild("bg");
-            m_txtNeed = (GTextField)comp.GetChild("txtNeed");
-            m_txtNum = (GTextField)comp.GetChild("txtNum");
+            m_txtMessage = (GTextField)comp.GetChild("txtMessage");
+            m_txtTips = (GTextField)comp.GetChild("txtTips");
             m_btnCancel = (GButton)comp.GetChild("btnCancel");
             m_btnSure = (GButton)comp.GetChild("btnSure");
         }
         public void Dispose(bool disposeTarget = false)
         {
             m_bg = null;
-            m_txtNeed = null;
-            m_txtNum = null;
+            m_txtMessage = null;
+            m_txtTips = null;
             m_btnCancel = null;
             m_btnSure = null;
             if(disposeTarget && target != null)

+ 3 - 6
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CommonGame/UI_ItemExchangeUI.cs

@@ -7,13 +7,12 @@ namespace UI.CommonGame
     public partial class UI_ItemExchangeUI
     {
         public GComponent target;
-        public GComponent m_comBg;
-        public GTextField m_txtName;
         public GTextField m_txtOwned;
         public GLoader m_loaRarity;
         public GLoader m_loaIcon;
         public GTextField m_txtDesc;
         public GTextField m_txtExchangeCount;
+        public GTextField m_txtName;
         public GList m_listItem;
         public GTextField m_txtShow;
         public UI_Button2 m_btnMinus;
@@ -72,13 +71,12 @@ namespace UI.CommonGame
 
         private void Init(GComponent comp)
         {
-            m_comBg = (GComponent)comp.GetChild("comBg");
-            m_txtName = (GTextField)comp.GetChild("txtName");
             m_txtOwned = (GTextField)comp.GetChild("txtOwned");
             m_loaRarity = (GLoader)comp.GetChild("loaRarity");
             m_loaIcon = (GLoader)comp.GetChild("loaIcon");
             m_txtDesc = (GTextField)comp.GetChild("txtDesc");
             m_txtExchangeCount = (GTextField)comp.GetChild("txtExchangeCount");
+            m_txtName = (GTextField)comp.GetChild("txtName");
             m_listItem = (GList)comp.GetChild("listItem");
             m_txtShow = (GTextField)comp.GetChild("txtShow");
             m_btnMinus = (UI_Button2)UI_Button2.Create(comp.GetChild("btnMinus"));
@@ -93,13 +91,12 @@ namespace UI.CommonGame
         }
         public void Dispose(bool disposeTarget = false)
         {
-            m_comBg = null;
-            m_txtName = null;
             m_txtOwned = null;
             m_loaRarity = null;
             m_loaIcon = null;
             m_txtDesc = null;
             m_txtExchangeCount = null;
+            m_txtName = null;
             m_listItem = null;
             m_txtShow = null;
             m_btnMinus.Dispose();

+ 0 - 3
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_ListCardItem.cs

@@ -9,7 +9,6 @@ namespace UI.Main
         public GButton target;
         public UI_ComCardMask m_comCardMask;
         public GTextField m_txtName;
-        public GComponent m_comStar;
         public GTextField m_txtLv;
         public GLoader m_loaRarity;
         public GLoader m_loaMainScore;
@@ -64,7 +63,6 @@ namespace UI.Main
         {
             m_comCardMask = (UI_ComCardMask)UI_ComCardMask.Create(comp.GetChild("comCardMask"));
             m_txtName = (GTextField)comp.GetChild("txtName");
-            m_comStar = (GComponent)comp.GetChild("comStar");
             m_txtLv = (GTextField)comp.GetChild("txtLv");
             m_loaRarity = (GLoader)comp.GetChild("loaRarity");
             m_loaMainScore = (GLoader)comp.GetChild("loaMainScore");
@@ -76,7 +74,6 @@ namespace UI.Main
             m_comCardMask.Dispose();
             m_comCardMask = null;
             m_txtName = null;
-            m_comStar = null;
             m_txtLv = null;
             m_loaRarity = null;
             m_loaMainScore = null;

+ 3 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_MainUI.cs

@@ -20,6 +20,7 @@ namespace UI.Main
         public UI_BtnModle m_btnGiftBag2;
         public GList m_list;
         public UI_ButtonChange m_btnChange;
+        public GGroup m_grpLeagueAnswer;
         public GGroup m_grpList;
         public UI_ComAd m_comListAd;
         public UI_BtnModle1 m_btnDailyWelfare;
@@ -100,6 +101,7 @@ namespace UI.Main
             m_btnGiftBag2 = (UI_BtnModle)UI_BtnModle.Create(comp.GetChild("btnGiftBag2"));
             m_list = (GList)comp.GetChild("list");
             m_btnChange = (UI_ButtonChange)UI_ButtonChange.Create(comp.GetChild("btnChange"));
+            m_grpLeagueAnswer = (GGroup)comp.GetChild("grpLeagueAnswer");
             m_grpList = (GGroup)comp.GetChild("grpList");
             m_comListAd = (UI_ComAd)UI_ComAd.Create(comp.GetChild("comListAd"));
             m_btnDailyWelfare = (UI_BtnModle1)UI_BtnModle1.Create(comp.GetChild("btnDailyWelfare"));
@@ -147,6 +149,7 @@ namespace UI.Main
             m_list = null;
             m_btnChange.Dispose();
             m_btnChange = null;
+            m_grpLeagueAnswer = null;
             m_grpList = null;
             m_comListAd.Dispose();
             m_comListAd = null;

+ 0 - 3
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Store/UI_ComVipLv.cs

@@ -13,7 +13,6 @@ namespace UI.Store
         public GTextField m_txtTips;
         public GGroup m_grpTips;
         public GButton m_btnRule;
-        public GTextField m_txtTipsFull;
         public const string URL = "ui://p9mtgheohhx91r";
         public const string PACKAGE_NAME = "Store";
         public const string RES_NAME = "ComVipLv";
@@ -67,7 +66,6 @@ namespace UI.Store
             m_txtTips = (GTextField)comp.GetChild("txtTips");
             m_grpTips = (GGroup)comp.GetChild("grpTips");
             m_btnRule = (GButton)comp.GetChild("btnRule");
-            m_txtTipsFull = (GTextField)comp.GetChild("txtTipsFull");
         }
         public void Dispose(bool disposeTarget = false)
         {
@@ -78,7 +76,6 @@ namespace UI.Store
             m_txtTips = null;
             m_grpTips = null;
             m_btnRule = null;
-            m_txtTipsFull = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 6 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Task/UI_CombTaskUI.cs

@@ -10,6 +10,8 @@ namespace UI.Task
         public Controller m_c1;
         public UI_LivenessRewardProcess m_LivenessProcess;
         public GList m_TaskList;
+        public GButton m_btnDailyTask;
+        public GButton m_btnBattlePassTask;
         public GButton m_GetAll;
         public const string URL = "ui://5mpsibzzfqor2p";
         public const string PACKAGE_NAME = "Task";
@@ -61,6 +63,8 @@ namespace UI.Task
             m_c1 = comp.GetController("c1");
             m_LivenessProcess = (UI_LivenessRewardProcess)UI_LivenessRewardProcess.Create(comp.GetChild("LivenessProcess"));
             m_TaskList = (GList)comp.GetChild("TaskList");
+            m_btnDailyTask = (GButton)comp.GetChild("btnDailyTask");
+            m_btnBattlePassTask = (GButton)comp.GetChild("btnBattlePassTask");
             m_GetAll = (GButton)comp.GetChild("GetAll");
         }
         public void Dispose(bool disposeTarget = false)
@@ -69,6 +73,8 @@ namespace UI.Task
             m_LivenessProcess.Dispose();
             m_LivenessProcess = null;
             m_TaskList = null;
+            m_btnDailyTask = null;
+            m_btnBattlePassTask = null;
             m_GetAll = null;
             if(disposeTarget && target != null)
             {

+ 6 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Task/UI_TaskUI.cs

@@ -11,6 +11,8 @@ namespace UI.Task
         public GLoader m_loaBg;
         public GComponent m_comValueBar;
         public GButton m_btnBack;
+        public GButton m_btnTask;
+        public GButton m_btnBattlePass;
         public const string URL = "ui://5mpsibzzfqor2n";
         public const string PACKAGE_NAME = "Task";
         public const string RES_NAME = "TaskUI";
@@ -62,6 +64,8 @@ namespace UI.Task
             m_loaBg = (GLoader)comp.GetChild("loaBg");
             m_comValueBar = (GComponent)comp.GetChild("comValueBar");
             m_btnBack = (GButton)comp.GetChild("btnBack");
+            m_btnTask = (GButton)comp.GetChild("btnTask");
+            m_btnBattlePass = (GButton)comp.GetChild("btnBattlePass");
         }
         public void Dispose(bool disposeTarget = false)
         {
@@ -69,6 +73,8 @@ namespace UI.Task
             m_loaBg = null;
             m_comValueBar = null;
             m_btnBack = null;
+            m_btnTask = null;
+            m_btnBattlePass = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 1 - 0
GameClient/Assets/Game/HotUpdate/ServerProxy/ActivityDay7SProxy.cs

@@ -9,6 +9,7 @@ namespace GFGGame
             //C2S_GetDay7Reward
             var response = await MessageHelper.SendToServer(new C2S_GetDay7Reward { Id = cfg.id });
             if (!(response is { Error: ErrorCode.ERR_Success })) return false;
+            EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
             //奖励弹窗
             BonusController.TryShowBonusList(cfg.bonusArr);
             return true;

+ 2 - 1
GameClient/Assets/Game/HotUpdate/ServerProxy/ActivityGlobalSProxy.cs

@@ -85,11 +85,12 @@ namespace GFGGame
         {
             var response =
                 (S2C_GetActivityBonus)await MessageHelper.SendToServer(new C2S_GetActivityBonus()
-                    { ActivityId = activityId, BonusId = bonusId });
+                { ActivityId = activityId, BonusId = bonusId });
             if (!(response is { Error: ErrorCode.ERR_Success })) return false;
             //奖励弹窗
             BonusController.TryShowBonusList(ItemUtil.CreateItemDataList(response.itemList));
             ActivityGlobalDataManager.Instance.AddActivityRewardInfo(activityId, bonusId);
+            EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
             return false;
         }
     }

+ 1 - 1
GameClient/Assets/Game/HotUpdate/ServerProxy/ActivitySProxy.cs

@@ -120,7 +120,7 @@ namespace GFGGame
 
                     int[][] bonus = ActivityLuckybonusCfgArray.Instance.GetCfgByidAndnum(response.ActivityId, response.BonusKey).bonusArr;
                     BonusController.TryShowBonusList(bonus);
-
+                    EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
                     return true;
                 }
             }

+ 9 - 2
GameClient/Assets/Game/HotUpdate/ServerProxy/ArenaSproxy.cs

@@ -86,6 +86,7 @@ namespace GFGGame
                     roleInfo.headId = RoleDataManager.headId;
 
                     // ArenaDataManager.Instance.Clear();
+                    ArenaDataManager.Instance.DressupList.Clear();
                     for (int i = 0; i < response.ThemeList.Count; i++)
                     {
                         FightData roleData = GetFightRoleData(response.DressupList.Count <= i ? null : response.DressupList[i], roleInfo, i);
@@ -160,7 +161,7 @@ namespace GFGGame
         }
 
         //购买挑战次数
-        public static async ETTask ReqBuyArenaFightTimes()
+        public static async ETTask<bool> ReqBuyArenaFightTimes()
         {
 
             S2C_BuyArenaFightTimes response = null;
@@ -170,8 +171,10 @@ namespace GFGGame
                 if (response.Error == ErrorCode.ERR_Success)
                 {
                     PromptController.Instance.ShowFloatTextPrompt("购买成功");
+                    return true;
                 }
             }
+            return false;
         }
 
 
@@ -432,7 +435,11 @@ namespace GFGGame
             fightData.res = string.IsNullOrEmpty(robotProto.RobotHead) ? "self" : robotProto.RobotHead;
             double cardScore = (double)robotCfg.cardScore * randoms;
             fightData.cardScore = (int)Math.Ceiling(cardScore);
-            fightData.skillLvs.Add(robotCfg.skillLvs);
+            List<PassivitySkillCfg> skillCfgs = PassivitySkillCfgArray.Instance.GetCfgsBycardId(fightData.cardId);
+            for (int i = 0; i < skillCfgs.Count; i++)
+            {
+                fightData.skillLvs.Add(robotCfg.skillLvs);
+            }
             fightData.showSuitId = robotProto.SuitList.Count <= index ? 0 : robotProto.SuitList[index];//上赛季没有穿戴数据
 
             return fightData;

+ 3 - 0
GameClient/Assets/Game/HotUpdate/ServerProxy/BattlePassTaskSProxy.cs

@@ -16,6 +16,7 @@ namespace ET
             }
             battlePassTaskDataManager.SetIsBuy(message.IsBuy);
             EventAgent.DispatchEvent(ConstMessage.NOTICE_PASSPORT_OPEN);
+            EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
             await ETTask.CompletedTask;
         }
     }
@@ -64,6 +65,7 @@ namespace GFGGame
             var battlePassTaskDataManager = BattlePassTaskDataManager.Instance;
             battlePassTaskDataManager.SetIsBuy(response.IsBuy);
             battlePassTaskDataManager.SetSeasonId(response.SeasonId);
+            battlePassTaskDataManager.initedFromServer = true;
             foreach (var level in response.RewardList)
             {
                 battlePassTaskDataManager.AddNormalReward(level);
@@ -98,6 +100,7 @@ namespace GFGGame
                 bonusList.AddRange(ItemUtil.CreateItemDataList(passCfgBonusSuperArr));
                 BattlePassTaskDataManager.Instance.AddSuperReward(level);
             }
+            EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
             BonusController.TryShowBonusList(bonusList);
             return true;
         }

+ 2 - 2
GameClient/Assets/Game/HotUpdate/ServerProxy/DailyWelfareSProxy.cs

@@ -66,8 +66,8 @@ namespace GFGGame
                 if (response.Error == ErrorCode.ERR_Success)
                 {
                     // DailyWelfareManager.Instance.SupplyRewardDatas.Add(id);
-                    List<ItemData> bonus = ItemUtil.CreateItemDataList(response.reward);
-                    BonusController.TryShowBonusList(bonus);
+                    DailySupplyCfg supplyCfg = DailySupplyCfgArray.Instance.GetCfg(id);
+                    BonusController.TryShowBonusList(supplyCfg.bonusArr);
                     return true;
                 }
             }

+ 21 - 0
GameClient/Assets/Game/HotUpdate/ServerProxy/ItemProxy.cs

@@ -108,6 +108,27 @@ namespace GFGGame
                 {
                     List<ItemData> items = ItemUtil.CreateItemDataList(response.GotItemList);
                     BonusController.TryShowBonusList(items);
+                    EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
+                    return true;
+                }
+            }
+
+            return false;
+        }
+
+        //使用背包物品-随机礼包
+        public static async ETTask<bool> ReqUseRandomItem(int itemID, long count)
+        {
+            S2C_UseRandomItem response = null;
+            response = (S2C_UseRandomItem)await MessageHelper.SendToServer(new C2S_UseRandomItem()
+                { ItemId = itemID, itemNum = count });
+            if (response != null)
+            {
+                if (response.Error == ErrorCode.ERR_Success)
+                {
+                    List<ItemData> items = ItemUtil.CreateItemDataList(response.GotItemList);
+                    BonusController.TryShowBonusList(items);
+                    EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
                     return true;
                 }
             }

+ 15 - 7
GameClient/Assets/Game/HotUpdate/ServerProxy/LeagueSproxy.cs

@@ -64,6 +64,7 @@ namespace GFGGame
                         ViewManager.Show<MainUIView>(null, null, true);
                     }
                     PromptController.Instance.ShowFloatTextPrompt("您已离开雅集");
+                    return;
                 }
                 else
                 {
@@ -86,6 +87,7 @@ namespace GFGGame
                         leagueData.SubOwnerId = 0;
                     }
                 }
+                LeagueDataManager.Instance.LeagueData.Num = LeagueDataManager.Instance.LeagueData.Num - 1;
                 EventAgent.DispatchEvent(ConstMessage.LEAGUE_MEMBER_CHANGE);
             }
             await ETTask.CompletedTask;
@@ -96,7 +98,7 @@ namespace GFGGame
     {
         protected override async ETTask Run(Session session, L2C_NoticeJoinLeague message)
         {
-            if (LeagueDataManager.Instance.Type == 2)
+            if (LeagueDataManager.Instance.Type == LeagueJoinType.UnJoin)
             {
                 bool result = await LeagueSproxy.ReqGetLeagueInfo();
                 if (result && ViewManager.isViewOpen(typeof(LeagueJoinView).FullName))
@@ -108,6 +110,7 @@ namespace GFGGame
             {
                 LeagueMemberData memberData = LeagueSproxy.GetLeagueMemberData(message.RoleInfo);
                 LeagueDataManager.Instance.LeagueData.LeagueMemberDatas[memberData.RoleInfo.roleId] = memberData;
+                LeagueDataManager.Instance.LeagueData.Num = LeagueDataManager.Instance.LeagueData.Num + 1;
             }
             EventAgent.DispatchEvent(ConstMessage.LEAGUE_MEMBER_CHANGE);
             await ETTask.CompletedTask;
@@ -210,7 +213,7 @@ namespace GFGGame
     {
         protected override async ETTask Run(Session session, L2C_NoticeJoinAnswer message)
         {
-            LeagueDataManager.Instance.ListAnsweringDatas[message.RoleId] = 0;
+            LeagueDataManager.Instance.ListAnsweringDatas[message.RoleId] = message.AnswerNum;
             EventAgent.DispatchEvent(ConstMessage.LEAGUE_ANSWER_MEMBER_CHANGE);
             await ETTask.CompletedTask;
         }
@@ -292,7 +295,8 @@ namespace GFGGame
                 if (response.Error == ErrorCode.ERR_Success)
                 {
                     LeagueDataManager.Instance.Type = response.Type;
-                    if (response.Type == 1)//1:已经加入军团
+
+                    if (LeagueDataManager.Instance.Type == LeagueJoinType.Join)//1:已经加入军团
                     {
                         LeagueDataManager.Instance.LeagueData = GetLeagueData(response.LeagueDetailInfo);
                         int myPos = LeagueDataManager.Instance.LeagueData.LeagueMemberDatas[RoleDataManager.roleId].Pos;
@@ -302,7 +306,7 @@ namespace GFGGame
                             ReqLeagueJoinQuitLog().Coroutine();
                         }
                     }
-                    else if (response.Type == 2)//2:未加入军团
+                    else if (LeagueDataManager.Instance.Type == LeagueJoinType.UnJoin)//2:未加入军团
                     {
                         LeagueDataManager.Instance.ListDatas.Clear();
                         for (int i = 0; i < response.list.Count; i++)
@@ -348,6 +352,7 @@ namespace GFGGame
                 if (response.Error == ErrorCode.ERR_Success)
                 {
                     LeagueDataManager.Instance.LeagueData = GetLeagueData(response.LeagueDetailInfo);
+                    LeagueDataManager.Instance.Type = LeagueJoinType.Join;
                     return true;
                 }
             }
@@ -423,6 +428,7 @@ namespace GFGGame
                 {
                     LeagueDataManager.Instance.ListApplyDatas.Remove(targetRoleId);
                 }
+                EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
                 return true;
             }
             return false;
@@ -584,15 +590,16 @@ namespace GFGGame
             return false;
         }
         //领取联盟福利//LeagueWelfareType
-        public static async ETTask<bool> ReqGetLeagueWelfare()
+        public static async ETTask<bool> ReqGetLeagueWelfare(int type)
         {
             S2C_GetLeagueWelfare response = null;
-            response = (S2C_GetLeagueWelfare)await MessageHelper.SendToServer(new C2S_GetLeagueWelfare());
+            response = (S2C_GetLeagueWelfare)await MessageHelper.SendToServer(new C2S_GetLeagueWelfare() { LeagueWelfareType = type });
             if (response != null)
             {
                 if (response.Error == ErrorCode.ERR_Success)
                 {
-                    // PromptController.Instance.ShowFloatTextPrompt("购买成功");
+                    List<ItemData> itemDatas = ItemUtil.CreateItemDataList(response.Bonus);
+                    BonusController.TryShowBonusList(itemDatas);
                     return true;
                 }
             }
@@ -651,6 +658,7 @@ namespace GFGGame
             {
                 if (response.Error == ErrorCode.ERR_Success)
                 {
+                    LeagueDataManager.Instance.ListAnsweringDatas.Clear();
                     for (int i = 0; i < response.RoleInfos.Count; i++)
                     {
                         LeagueDataManager.Instance.ListAnsweringDatas[response.RoleInfos[i].RoleId] = response.RoleInfos[i].Num;

+ 4 - 0
GameClient/Assets/Game/HotUpdate/ServerProxy/PoemGallerySProxy.cs

@@ -67,6 +67,8 @@ namespace GFGGame
                         if (data != null)
                         {
                             PoemGalleryDataManager.Instance.UpdateRoleInfo(response.WorksList[i].WorksId, response.WorksList[i].AuthorName);
+                            PoemGalleryDataManager.Instance.UpdateFavoriteState(response.WorksList[i].WorksId, response.WorksList[i].CollectOrNot, response.WorksList[i].BeCollectedCount);
+                            PoemGalleryDataManager.Instance.UpdateVoteiteState(response.WorksList[i].WorksId, response.WorksList[i].LikeOrNot, response.WorksList[i].BelikedCount);
                         }
                         else
                         {
@@ -111,6 +113,8 @@ namespace GFGGame
                         if (data != null)
                         {
                             PoemGalleryDataManager.Instance.UpdateRoleInfo(response.RankList[i].WorksId, response.RankList[i].AuthorName, i + 1);
+                            PoemGalleryDataManager.Instance.UpdateFavoriteState(response.RankList[i].WorksId, response.RankList[i].CollectOrNot, response.RankList[i].BeCollectedCount);
+                            PoemGalleryDataManager.Instance.UpdateVoteiteState(response.RankList[i].WorksId, response.RankList[i].LikeOrNot, response.RankList[i].BelikedCount);
                         }
                         else
                         {

+ 3 - 1
GameClient/Assets/Game/HotUpdate/ServerProxy/ShopSProxy.cs

@@ -52,6 +52,7 @@ namespace GFGGame
                     EventAgent.DispatchEvent(ConstMessage.CONTINUOUS_REBATE_GIFT_SHOP_BUY, shopCfg);
                     BonusController.TryShowBonusList(itemDatas);
                     EventAgent.DispatchEvent(ConstMessage.SHOP_BUY);
+                    EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
                     return true;
                 }
             }
@@ -68,7 +69,7 @@ namespace GFGGame
             {
                 if (response.Error == ErrorCode.ERR_Success)
                 {
-                    int[][] bonus = VipCfgArray.Instance.GetCfg(vipLv-1).bonusOnceArr;
+                    int[][] bonus = VipCfgArray.Instance.GetCfg(vipLv - 1).bonusOnceArr;
                     BonusController.TryShowBonusList(bonus);
                     return true;
                 }
@@ -103,6 +104,7 @@ namespace GFGGame
             {
                 if (response.Error == ErrorCode.ERR_Success)
                 {
+                    EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
                     return true;
                 }
             }

+ 2 - 1
GameClient/Assets/Game/HotUpdate/ServerProxy/TaskSProxy.cs

@@ -1,6 +1,7 @@
 using System.Linq;
 using ET;
 using GFGGame;
+using UnityEditor;
 
 namespace ET
 {
@@ -16,7 +17,6 @@ namespace ET
                 Progress = message.TaskInfo.Progress
             };
             TaskDataManager.Instance.UpdateTaskInfo(taskInfo.ID, taskInfo);
-            EventAgent.DispatchEvent(ConstMessage.NOTICE_TASK_STATE_CHANGE, taskInfo.ID);
             await ETTask.CompletedTask;
         }
     }
@@ -28,6 +28,7 @@ namespace ET
         {
             TaskDataManager.Instance.RemoveTaskInfo(message.TaskId);
             EventAgent.DispatchEvent(ConstMessage.NOTICE_TASK_STATE_CHANGE, message.TaskId);
+            EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
             await ETTask.CompletedTask;
         }
     }

+ 3 - 3
GameClient/Assets/Game/HotUpdate/Utils/ResPathUtil.cs

@@ -116,7 +116,7 @@ namespace GFGGame
             return $"{GetDressUpAnimationDirPath(res)}/{res}.{extName}";
         }
 
-        public static bool CheckDressUpAnimationExist(string res, string extName = "prefab")
+        public static bool CheckDressUpAnimationResExist(string res, string extName = "prefab")
         {
             if(string.IsNullOrEmpty(res))
             {
@@ -135,9 +135,9 @@ namespace GFGGame
             return $"{EFFECT_DIR_PATH}/DressUp/{res}";
         }
 
-        public static string GetDressUpEffectPath(string res, bool inAni = false, string extName = "prefab")
+        public static string GetDressUpEffectPath(string res, bool inAniDir = false, string extName = "prefab")
         {
-            return $"{GetDressUpEffectDirPath(res, inAni)}/{res}.{extName}";
+            return $"{GetDressUpEffectDirPath(res, inAniDir)}/{res}.{extName}";
         }
         public static string GetViewEffectPath(string uiName, string resName, string extName = "prefab")
         {

+ 9 - 11
GameClient/Assets/Game/HotUpdate/Views/ActivityDay7/ActivityDay7View.cs

@@ -84,6 +84,7 @@ namespace GFGGame
             var taskCfg = TaskCfgArray.Instance.GetCfg(taskId);
             if (taskCfg == null) return;
             if (taskCfg.taskType != TaskType.Day7) return;
+            SetDayList();
             SetTasks();
         }
 
@@ -115,15 +116,16 @@ namespace GFGGame
         private void DayListRenderer(int index, GObject obj)
         {
             var item = UI_ButtonDay.Proxy(obj);
+            var cfg = cfgDataArray[index];
             if (item.target.data == null)
             {
-                var cfg = cfgDataArray[index];
                 item.m_text.text = $"第{cfg.days}天";
                 item.target.data = index;
                 item.target.onClick.Add(OnClickDay);
             }
             //设置按钮状态
             item.m_c1.selectedIndex = index == onClickDayIndex ? 0 : 1;
+            RedDotController.Instance.SetComRedDot(item.target, ActivityDay7DataManager.Instance.CheckActivityDay7TaskRewrdCanGetByDay(cfg.days));
             UI_ButtonDay.ProxyEnd();
         }
 
@@ -186,6 +188,7 @@ namespace GFGGame
             }
             item.m_listTaskReward.data = taskCfg.rewardsArr;
             item.m_listTaskReward.numItems = taskCfg.rewardsArr.Length;
+            RedDotController.Instance.SetComRedDot(item.m_GetRewardBt, item.m_c1.selectedIndex == 1);
             UI_TaskListItem.ProxyEnd();
         }
 
@@ -244,6 +247,7 @@ namespace GFGGame
                 item.target.onClick.Add(OnClickReward);
                 UI_ExpProcess.ProxyEnd();
             }
+            FreshGetStatus();
         }
 
         //设置天数列表
@@ -259,11 +263,13 @@ namespace GFGGame
         {
             components.ForEach(com =>
             {
-                var item = UI_ExpProcessItem.Create(com);
+                var item = UI_ExpProcessItem.Proxy(com);
                 var cfg = (Activity7DaysCfg)item.target.data;
                 var cfgID = cfg.id;
                 var state = ActivityDay7DataManager.Instance.GetActivityDay7RewardState(cfgID);
                 item.m_c2.selectedIndex = state ? 1 : 0;
+                RedDotController.Instance.SetComRedDot(item.target, ActivityDay7DataManager.Instance.CheckActivityDay7RewardCanGet(cfgID));
+                UI_ExpProcessItem.ProxyEnd();
             });
         }
 
@@ -281,15 +287,7 @@ namespace GFGGame
             if (!(context.sender is GObject btnGet)) return;
             var activity7DaysCfg = (Activity7DaysCfg)btnGet.data;
             var id = activity7DaysCfg.id;
-            var get = ActivityDay7DataManager.Instance.GetActivityDay7RewardState(id);
-            if (get)
-            {
-                GoodsItemTipsController.ShowItemTips(activity7DaysCfg.bonusArr[0][0]);
-                return;
-            }
-            //判断积分是否够
-            var score = ActivityDay7DataManager.Instance.GetScore();
-            if (score < activity7DaysCfg.score)
+            if(!ActivityDay7DataManager.Instance.CheckActivityDay7RewardCanGet(id))
             {
                 GoodsItemTipsController.ShowItemTips(activity7DaysCfg.bonusArr[0][0]);
                 return;

+ 2 - 0
GameClient/Assets/Game/HotUpdate/Views/ActivityThemeLuckyBox/ActivityThemeLuckyBoxBonusView.cs

@@ -43,6 +43,7 @@ namespace GFGGame
         {
             base.OnShown();
             _bonueCfgs = ActivityLuckybonusCfgArray.Instance.GetCfgsByid(ActivityDataManager.Instance.actLuckyBoxId);
+            _bonueCfgs = ActivityDataManager.Instance.SortActivityLuckybonusCfg(_bonueCfgs);
             _ui.m_list.numItems = _bonueCfgs.Count;
         }
 
@@ -104,6 +105,7 @@ namespace GFGGame
             bool result = await ActivitySProxy.ReqGetTimeLimitLuckyBoxBonus(ActivityDataManager.Instance.actLuckyBoxId, key);
             if (result)
             {
+                _bonueCfgs = ActivityDataManager.Instance.SortActivityLuckybonusCfg(_bonueCfgs);
                 _ui.m_list.numItems = _bonueCfgs.Count;
             }
         }

+ 15 - 2
GameClient/Assets/Game/HotUpdate/Views/ActivityThemeLuckyBox/ActivityThemeLuckyBoxView.cs

@@ -41,7 +41,11 @@ namespace GFGGame
             _ui.m_btnLuckyBox.onClick.Add(OnBtnLuckyBoxClick);
 
         }
-
+        protected override void AddEventListener()
+        {
+            base.AddEventListener();
+            EventAgent.AddEventListener(ConstMessage.RED_CHANGE, UpdateRedDot);
+        }
         protected override void OnShown()
         {
             base.OnShown();
@@ -54,6 +58,7 @@ namespace GFGGame
             _activityCfg = ActivityOpenCfgArray.Instance.GetCfg(_activityId);
             _luckyBoxCfg = LuckyBoxCfgArray.Instance.GetCfg(_activityCfg.paramsArr[0]);
             _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("hb_" + _activityCfg.res);
+            UpdateRedDot();
             Timers.inst.Add(1, 0, UpdateTime);
         }
         protected override void OnHide()
@@ -61,7 +66,11 @@ namespace GFGGame
             base.OnHide();
             Timers.inst.Remove(UpdateTime);
         }
-
+        protected override void RemoveEventListener()
+        {
+            base.RemoveEventListener();
+            EventAgent.RemoveEventListener(ConstMessage.RED_CHANGE, UpdateRedDot);
+        }
         private void OnBtnBackClick()
         {
             ViewManager.GoBackFrom(typeof(ActivityThemeLuckyBoxView).FullName);
@@ -90,5 +99,9 @@ namespace GFGGame
             TimeUtil.FormattingTime(curTime, endTime, out int num, out string str);
             _ui.m_txtTime.text = TimeUtil.FormattingTimeTo_DDHHmm(endTime - curTime);
         }
+        private void UpdateRedDot()
+        {
+            RedDotController.Instance.SetComRedDot(_ui.m_btnLuckyBox, RedDotDataManager.Instance.GetMeiRiTeHuiRed() || RedDotDataManager.Instance.GetActLuckyBoxRewardRed() || RedDotDataManager.Instance.GetGiftBagRewardRed(), "", -90, 70);
+        }
     }
 }

+ 2 - 1
GameClient/Assets/Game/HotUpdate/Views/Arena/ArenaRankView.cs

@@ -300,8 +300,9 @@ namespace GFGGame
                 RoleInfoManager.Instance.UpdateLv(item.m_comLv, arenaData.RoleInfo.roleLv);
                 if (arenaData.Type == FightTargetType.PLAYER)
                 {
+                    long fightScore = _rankType != ArenaRankType.LAST_SEASON && rank > 100 && isSelf ? ArenaDataManager.Instance.GetAllFightScore(ArenaDataManager.Instance.DressupList) : ArenaDataManager.Instance.GetAllFightScore(arenaData.FightScores);
                     //上榜的玩家一定战斗过,可以直接计算
-                    item.m_txtFightScore.text = string.Format("飞花令战力:{0}", ArenaDataManager.Instance.GetAllFightScore(arenaData.FightScores));
+                    item.m_txtFightScore.text = string.Format("飞花令战力:{0}", fightScore);
                     RoleInfoManager.Instance.UpdateHead(item.m_comHead, arenaData.RoleInfo.headId, arenaData.RoleInfo.headBorderId);
                 }
                 else

+ 4 - 17
GameClient/Assets/Game/HotUpdate/Views/Arena/ArenaView.cs

@@ -145,10 +145,7 @@ namespace GFGGame
         {
             _ui.m_c2.selectedIndex = 0;
         }
-        // private void OnBtnRuleClick()
-        // {
-        //     ViewManager.Show<RuleView>(300001);
-        // }
+
         private void OnBtnBackClick()
         {
             GuideController.TryCompleteGuideIndex(ConstGuideId.ARENA_OPEN, 12);
@@ -183,19 +180,9 @@ namespace GFGGame
                 PromptController.Instance.ShowFloatTextPrompt("今日次数购买已达上限");
                 return;
             }
-            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(GlobalCfgArray.globalCfg.costIdBuyFightTimes);
-            AlertUI.Show(string.Format("是否使用{0}{1}增加1次飞花令挑战次数?", GlobalCfgArray.globalCfg.costNumBuyFightTimes, itemCfg.name),
-            string.Format("(今天已购买{0}/{1}次)", GlobalCfgArray.globalCfg.limitDailyBuyFightTimes - RoleDataManager.ArenaBuyFightTimes, GlobalCfgArray.globalCfg.limitDailyBuyFightTimes))
-            .SetLeftButton(true, "取消").SetRightButton(true, "确定", (object data) =>
-            {
-                if (ItemDataManager.GetItemNum(GlobalCfgArray.globalCfg.costIdBuyFightTimes) < GlobalCfgArray.globalCfg.costNumBuyFightTimes)
-                {
-                    PromptController.Instance.ShowFloatTextPrompt("消耗不足");
-                    return;
-                }
-                ArenaSproxy.ReqBuyArenaFightTimes().Coroutine();
-            });
+            ViewManager.Show<BuyConfirmView>();
         }
+
         private async void OnBtnRefreshClick()
         {
             if (_dataManager.IsArenaClearing)
@@ -473,7 +460,7 @@ namespace GFGGame
             GuideController.TryGuide(_ui.m_listTarget, ConstGuideId.ARENA_OPEN, 8, "", 0);
             GuideController.TryGuide(_ui.m_btnFight, ConstGuideId.ARENA_OPEN, 9, "");
 
-            if (_showOtherTargetGuide > 0)
+            if (GuideDataManager.currentGuideId == GuideCfgArray.Instance.GetCfg(ConstGuideId.ARENA_OPEN).id && GuideDataManager.currentGuideIdIndex >= 9)
             {
                 if (_showOtherTargetGuide == 0)
                 {

+ 85 - 13
GameClient/Assets/Game/HotUpdate/Views/Bag/BagExchangeView.cs

@@ -1,4 +1,3 @@
-
 using System;
 using System.Collections.Generic;
 using ET;
@@ -14,6 +13,10 @@ namespace GFGGame
         private UI_ItemExchangeUI _ui;
         private int _itemId;
         private long _count;
+        private List<int[]> _itemList = new List<int[]>();
+        // private LongPressGesture _longPressAdd;
+        // private LongPressGesture _longPressMinus;
+
         public override void Dispose()
         {
             base.Dispose();
@@ -41,13 +44,13 @@ namespace GFGGame
             _ui.m_btnConfirm.onClick.Add(OnBtnConfirmClick);
             _ui.m_btnCancle.onClick.Add(OnBtnCancleClick);
             _ui.m_listItem.itemRenderer = ListItemRenderer;
-
         }
+
         protected override void AddEventListener()
         {
             base.AddEventListener();
-
         }
+
         protected override void OnShown()
         {
             base.OnShown();
@@ -60,9 +63,9 @@ namespace GFGGame
 
         protected override void OnHide()
         {
-
             base.OnHide();
         }
+
         protected override void RemoveEventListener()
         {
             base.RemoveEventListener();
@@ -72,16 +75,67 @@ namespace GFGGame
         private void UpdateView()
         {
             ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(_itemId);
+
             _ui.m_txtName.text = itemCfg.name;
             _ui.m_txtOwned.SetVar("count", "" + ItemDataManager.GetItemNum(itemCfg.id)).FlushVars();
             _ui.m_txtDesc.text = string.IsNullOrEmpty(itemCfg.desc) ? "暂无描述" : itemCfg.desc;
             _ui.m_loaIcon.url = ResPathUtil.GetIconPath(itemCfg);
-            RarityIconController.UpdateRarityIcon(_ui.m_loaRarity, itemCfg.id, false);
-            _ui.m_loaRarity.visible = itemCfg.itemType == ConstItemType.DRESS_UP;
-            _ui.m_txtExchangeCount.visible = false;
-            _ui.m_comCost.target.visible = false;
-            _ui.m_listItem.numItems = itemCfg.itemsArr.Length;
-            _ui.m_listItem.visible = itemCfg.itemType == ConstItemType.USEABLE && itemCfg.subType != ConstItemSubType.USEABLE_AUTO;
+            _ui.m_txtRmbCost.visible = false;
+            
+            UpdateThItemList(itemCfg);
+            _ui.m_listItem.numItems = _itemList.Count; //itemCfg.itemsArr.Length;
+            _ui.m_listItem.visible = itemCfg.itemType == ConstItemType.USEABLE &&
+                                     itemCfg.subType != ConstItemSubType.USEABLE_AUTO;
+        }
+
+        private void UpdateThItemList(ItemCfg itemCfg)
+        {
+            _itemList.Clear();
+            //普通物品
+            foreach (var t in itemCfg.itemsArr)
+            {
+                var itemId = t[0];
+                var itemNum = t.Length > 1 ? t[1] : 1;
+                _itemList.Add(new[] { itemId, itemNum });
+            }
+
+            if (itemCfg.subType == ConstItemSubType.USEABLE_GIFT_BAG_RANDOM)
+            {
+                if (itemCfg.param2Arr.Length > 0)
+                {
+                    //特殊物品 不存在的套装部件id
+                    List<int> noExistSuitItemIds = new List<int>();
+                    foreach (var suitId in itemCfg.param2Arr)
+                    {
+                        noExistSuitItemIds.Clear();
+                        SuitCfg suitCfg = SuitCfgArray.Instance.GetCfg(suitId);
+
+                        foreach (var suitItemId in suitCfg.partsArr)
+                        {
+                            if (!ItemUtil.CheckItemEnough(suitItemId, 1))
+                            {
+                                noExistSuitItemIds.Add(suitItemId);
+                            }
+                        }
+
+                        foreach (var noExistSuitItemId in noExistSuitItemIds)
+                        {
+                            _itemList.Add(new[] { noExistSuitItemId, 1 });
+                        }
+                    }
+                }
+            }
+
+            //保底物品
+            if (itemCfg.param1Arr.Length > 0)
+            {
+                foreach (var t in itemCfg.param1Arr)
+                {
+                    var itemId = t[0];
+                    var itemNum = t.Length > 1 ? t[1] : 1;
+                    _itemList.Add(new[] { itemId, itemNum });
+                }
+            }
         }
 
         private void UpdateUseView()
@@ -95,21 +149,25 @@ namespace GFGGame
             _ui.m_btnAdd.target.touchable = _count == hasCount ? false : true;
             _ui.m_btnMax.m_c1.selectedIndex = _count == hasCount ? 1 : 0;
             _ui.m_btnMax.target.touchable = _count == hasCount ? false : true;
+            _ui.m_txtExchangeCount.text = string.Format("x{0}", hasCount);
 
             _ui.m_txtShow.text = "选择使用数量";
             _ui.m_txtTips.text = string.Format("是否使用{0}个{1}?", _count, itemCfg.name);
         }
+
         private void ListItemRenderer(int index, GObject obj)
         {
-            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(_itemId);
-            ItemData itemData = ItemUtil.createItemData(itemCfg.itemsArr[index]);
+            //ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(_itemId);
+            ItemData itemData = ItemUtil.createItemData(_itemList[index]);
             if (obj.data == null)
             {
                 obj.data = new ItemView(obj as GComponent);
             }
+
             (obj.data as ItemView).SetData(itemData);
             (obj.data as ItemView).ChangeTxtCountStyle();
         }
+
         private void OnBtnAddClick()
         {
             _count++;
@@ -117,22 +175,36 @@ namespace GFGGame
             _count = Math.Min(hasCount, _count);
             UpdateUseView();
         }
+
         private void OnBtnMinusClick()
         {
             _count--;
             _count = Math.Max(1, _count);
             UpdateUseView();
         }
+
         private void OnBtnMaxClick()
         {
             _count = ItemDataManager.GetItemNum(_itemId);
             UpdateUseView();
         }
+
         private void OnBtnConfirmClick()
         {
-            ItemProxy.ReqUseItem(_itemId, _count).Coroutine();
+            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(_itemId);
+            if (itemCfg.itemType == ConstItemType.USEABLE &&
+                itemCfg.subType == ConstItemSubType.USEABLE_GIFT_BAG_RANDOM)
+            {
+                ItemProxy.ReqUseRandomItem(_itemId, _count).Coroutine();
+            }
+            else
+            {
+                ItemProxy.ReqUseItem(_itemId, _count).Coroutine();
+            }
+            
             this.Hide();
         }
+
         private void OnBtnCancleClick()
         {
             this.Hide();

+ 19 - 4
GameClient/Assets/Game/HotUpdate/Views/Bag/BagView.cs

@@ -1,4 +1,3 @@
-
 using System.Collections.Generic;
 using ET;
 using FairyGUI;
@@ -11,7 +10,9 @@ namespace GFGGame
     public class BagView : BaseWindow
     {
         private UI_BagUI _ui;
+
         private ValueBarController _valueBarController;
+
         // private List<ItemView> _listItemViews = new List<ItemView>();
         public override void Dispose()
         {
@@ -51,14 +52,14 @@ namespace GFGGame
             _ui.m_list.onClickItem.Add(OnListItemClick);
 
             _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("tc_bjbj");
-
         }
+
         protected override void AddEventListener()
         {
             base.AddEventListener();
             EventAgent.AddEventListener(ConstMessage.ITEM_CHANGED, UpdateList);
         }
-        
+
         protected override void OnShown()
         {
             base.OnShown();
@@ -74,15 +75,18 @@ namespace GFGGame
             {
                 _ui.m_list.ScrollToView(0);
             }
+
             _ui.m_list.numItems = 0;
 
             base.OnHide();
         }
+
         protected override void RemoveEventListener()
         {
             base.RemoveEventListener();
             EventAgent.RemoveEventListener(ConstMessage.ITEM_CHANGED, UpdateList);
         }
+
         private void UpdateList()
         {
             _ui.m_list.numItems = BagDataManager.Instance.BagDatas.Count;
@@ -96,6 +100,18 @@ namespace GFGGame
             item.m_loaIcon.url = ResPathUtil.GetIconPath(itemCfg);
             item.m_txtCount.SetVar("count", itemData.num.ToString()).FlushVars();
             item.target.data = itemCfg;
+            //是礼包就加入红点
+            if ((itemCfg.itemType == ConstItemType.USEABLE &&
+                 itemCfg.subType == ConstItemSubType.USEABLE_GIFT_BAG_SELECTABLE) ||
+                (itemCfg.itemType == ConstItemType.USEABLE &&
+                 itemCfg.subType == ConstItemSubType.USEABLE_GIFT_BAG_RANDOM))
+            {
+                RedDotController.Instance.SetComRedDot(item.target, true);
+            }
+            else
+            {
+                RedDotController.Instance.SetComRedDot(item.target, false);
+            }
         }
 
         private void OnListItemClick(EventContext context)
@@ -128,6 +144,5 @@ namespace GFGGame
         {
             ViewManager.GoBackFrom(typeof(BagView).FullName);
         }
-
     }
 }

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Views/Bag/GiftBoxSelectorView.cs

@@ -140,7 +140,7 @@ namespace GFGGame
                 longPressGesture2.interval = 0.1f;
                 longPressGesture2.once = false;
                 longPressGesture2.onAction.Add(OnLongPressReduce);
-                _listLongPress.Add(longPressGesture);
+                _listLongPress.Add(longPressGesture2);
             }
 
             uiItemChild.target.data = itemCfgChild;

+ 12 - 7
GameClient/Assets/Game/HotUpdate/Views/Card/CardFosterView.cs

@@ -342,7 +342,7 @@ namespace GFGGame
             _consumeSelectIndex = type;
             if (type == 1)
             {
-                if (IsUpLvLimit()) return;
+                if (IsUpLvLimit(itemId)) return;
 
                 if (ItemDataManager.GetItemNum(itemId) == 0)
                 {
@@ -371,7 +371,9 @@ namespace GFGGame
                 }
                 else
                 {
-                    if (!CommonUtil.Instance.CheckPointIsOnComponent(_consumeSelectItem, CommonUtil.Instance.GetMouseV2Point()) || IsUpLvLimit())
+                    int index = (int)_consumeSelectItem.data;
+                    int itemId = upgradeCardItemsArr[index];
+                    if (!CommonUtil.Instance.CheckPointIsOnComponent(_consumeSelectItem, CommonUtil.Instance.GetMouseV2Point()) || IsUpLvLimit(itemId))
                     {
                         Timers.inst.Remove(OnTimedEvent);
                         return;
@@ -421,7 +423,7 @@ namespace GFGGame
                 }
                 return false;
             }
-            if (IsUpLvLimit(false)) return false;
+            if (IsUpLvLimit(itemId, false)) return false;
             itemsCount[index] = itemsCount[index] + 1;
             listItem.m_txtUseCount.text = itemsCount[index].ToString();
             this.UpdatePreView();
@@ -471,7 +473,7 @@ namespace GFGGame
         {
             for (int i = 0; i < itemsCount.Count; i++)
             {
-                if (IsUpLvLimit()) break;
+                // if (IsUpLvLimit()) break;
                 long itemNum = ItemDataManager.GetItemNum(upgradeCardItemsArr[i]);
                 for (long j = 0; j < itemNum; j++)
                 {
@@ -546,10 +548,13 @@ namespace GFGGame
             }
         }
 
-        private bool IsUpLvLimit(bool showTips = true)
+        private bool IsUpLvLimit(int itemId, bool showTips = true)
         {
+            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(itemId);
             int lvLimit = RoleLevelCfgArray.Instance.GetCfg(RoleDataManager.lvl).cardLeverLimit;
-            if (_showLv > lvLimit)
+            int needExp = CardLvlCfgArray.Instance.GetCfgByrarityAndcardLvl(_cardData.itemCfg.rarity, lvLimit).needExp;
+
+            if (_showLv > lvLimit || _showLv == lvLimit && _comFosterBottom.m_barLv.value + itemCfg.cardUpLvExp > needExp)
             {
                 if (!showTips) return true;
 
@@ -763,7 +768,7 @@ namespace GFGGame
             PassivitySkillLvlCfg skillLvlCfg = PassivitySkillLvlCfgArray.Instance.GetCfgByskilllvlAndskillId(skillLv, skillCfg.skillId);
             // item.m_txtDesc.text = skillLvlCfg.describe;
             // item.m_btnUp.visible = PassivitySkillLvlCfgArray.Instance.GetCfgByskilllvlAndskillId(skillLv + 1, skillCfg.skillId) != null;
-            RedDotController.Instance.SetComRedDot(item.target, RedDotDataManager.Instance.GetCardSkillRed(skillCfg.skillId), "", 9, -8);
+            RedDotController.Instance.SetComRedDot(item.target, RedDotDataManager.Instance.GetCardSkillRed(skillCfg.skillId), "", -10, 10);
 
             if (item.target.data == null)
             {

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

@@ -101,7 +101,7 @@ namespace GFGGame
             int needCount = skillLvCfg.materiarsArr[index][1];
             long hasCount = ItemDataManager.GetItemNum(skillLvCfg.materiarsArr[index][0]);
             listItem.m_txtNeedCount.text = needCount.ToString();
-            listItem.m_txtHasCount.text = StringUtil.GetColorText(hasCount.ToString(), hasCount < needCount ? "#D27869" : "#FDF3D7"); ;
+            listItem.m_txtHasCount.text = StringUtil.GetColorText(hasCount.ToString(), hasCount < needCount ? "#D27869" : "#716660"); ;
             listItem.m_btnPlus.visible = false;
             if (listItem.target.data == null)
             {

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Views/Common/Controller/LuckyBoxController.cs

@@ -67,7 +67,7 @@ namespace GFGGame
                 if (_luckyBoxCfg.isAni == 0)
                 {
                     SuitCfg suitCfg = SuitCfgArray.Instance.GetCfg(_luckyBoxCfg.suitIdArr[_modelIndex]);
-                    _comModel.m_loaRes.url = ResPathUtil.GetDressUpPath(suitCfg.picRes);
+                    _comModel.m_loaRes.url = ResPathUtil.GetDressUpPath(suitCfg.aniRes);
 
                     float scale = _luckyBoxCfg.scaleArr.Length > 0 ? Math.Abs(_luckyBoxCfg.scaleArr[_modelIndex]) / 10000f : 1;
                     _comModel.m_loaRes.SetScale(direction * scale, scale);

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/Common/Controller/ValueBarController.cs

@@ -21,6 +21,7 @@ namespace GFGGame
             _valueBar.m_btnTravel.target.onClick.Add(OnClickTravel);
             _valueBar.m_btnGallery.target.onClick.Add(OnClickGallery);
             _valueBar.m_btnLeagueContribuation.target.onClick.Add(OnClickLeagueContribuation);
+            _valueBar.m_btnCJ.target.onClick.Add(OnBtnClick);
 
         }
         private void OnClickGold()
@@ -123,6 +124,7 @@ namespace GFGGame
             if (luckyBoxCfg == null) return;
             _valueBar.m_btnCJ.target.text = "" + ItemDataManager.GetItemNum(luckyBoxCfg.costID);
             _valueBar.m_btnCJ.target.icon = ResPathUtil.GetCommonGameResPath(ItemCfgArray.Instance.GetCfg(luckyBoxCfg.costID).res);
+            _valueBar.m_btnCJ.target.data = luckyBoxCfg.costID;
         }
 
         private void UpdateTravel()
@@ -224,6 +226,15 @@ namespace GFGGame
                 case ConstItemID.LEAGUE_CONTRIBUTION:
                     OnClickLeagueContribuation();
                     break;
+                case ConstItemID.LUCKYBOX_COST_0:
+                case ConstItemID.LUCKYBOX_COST_1:
+                case ConstItemID.LUCKYBOX_COST_2:
+                    // ItemUtil.ExchangeItemById(itemId, 10, true, null, true, GameConst.MAX_COUNT_TO_BUY_DIAMOND_RED, true);
+                    BuyItemConteoller.Show(itemId, 10, ConstBuyType.TYPE_ITEM, null, true, false, GameConst.MAX_COUNT_TO_BUY_DIAMOND_RED);
+                    break;
+                default:
+
+                    break;
             }
         }
     }

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

@@ -297,7 +297,7 @@ namespace GFGGame
                     isJump = ViewManager.Show<ClothingListView>(null, _fromeViewDatas);
                     break;
                 case ConstFunctionId.DAILY_TASK:
-                    isJump = ViewManager.Show<CombTaskView>(null, _fromeViewDatas);
+                    isJump = ViewManager.Show<TaskView>(null, _fromeViewDatas);
                     break;
                 case ConstFunctionId.LEAGUE_PRAY:
                     isJump = ViewManager.Show<LeaguePrayView>(null, _fromeViewDatas);

+ 15 - 72
GameClient/Assets/Game/HotUpdate/Views/CommonGame/BuyConfirmView.cs

@@ -8,14 +8,7 @@ namespace GFGGame
     {
         private UI_BuyConfirmUI _ui;
 
-        private int _itemId;
-        private int _count;//本次购买次数
-        private int _buyTimes = 0;//已购次数
 
-
-        private Action _onSuccess;
-        private int _maxTimes = 0;
-        private string _message = "";
         public override void Dispose()
         {
             if (_ui != null)
@@ -23,7 +16,6 @@ namespace GFGGame
                 _ui.Dispose();
                 _ui = null;
             }
-            BuyConfirmController.Dispose();
             base.Dispose();
         }
 
@@ -39,89 +31,40 @@ namespace GFGGame
             _ui.m_btnSure.onClick.Add(OnClickBtnSure);
             _ui.m_btnCancel.onClick.Add(OnClickBtnCancel);
         }
-        public void SetParams(int itemId, int count, Action onSuccess, string message = "")
+        protected override void AddEventListener()
         {
-            _itemId = itemId;
-            _count = count;
-
-            _onSuccess = onSuccess;
-            _message = message;
-
+            base.AddEventListener();
+            EventAgent.AddEventListener(ConstMessage.NUMERIC_CHANGE, UpdateView);
         }
         protected override void OnShown()
         {
             base.OnShown();
             UpdateView();
         }
+        protected override void RemoveEventListener()
+        {
+            base.RemoveEventListener();
+            EventAgent.RemoveEventListener(ConstMessage.NUMERIC_CHANGE, UpdateView);
+        }
         private void UpdateView()
         {
-            _buyTimes = ItemDataManager.GetItemExchangeTimes(_itemId);
-
-            ItemExchangeCfgArray.Instance.GetMoneyIdAndNum(_itemId, _buyTimes, _count, out int costId, out int coustNum, out int buyNum);
-            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(_itemId);
-            ItemCfg costCfg = ItemCfgArray.Instance.GetCfg(costId);
-            _ui.m_txtNeed.text = string.Format("是否花费{0}{1} 购买{2}{3}", coustNum, costCfg.name, buyNum, itemCfg.name);
+            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(GlobalCfgArray.globalCfg.costIdBuyFightTimes);
 
-            _ui.m_txtNum.text = "";
-            _maxTimes = ItemExchangeCfgArray.Instance.GetCfg(_itemId).maxLimit;
-            if (_maxTimes != 0)
-            {
-                _ui.m_txtNum.text = string.Format("今日剩余购买次数{0}/{1}", _maxTimes - _buyTimes, _maxTimes);
-            }
-            if (_message != "")
-            {
-                _ui.m_txtNum.text = _message;
-            }
+            _ui.m_txtMessage.text = string.Format("是否使用{0}{1}增加1次飞花令挑战次数?", GlobalCfgArray.globalCfg.costNumBuyFightTimes, itemCfg.name);
+            _ui.m_txtTips.text = string.Format("(今天已购买{0}/{1}次)", GlobalCfgArray.globalCfg.limitDailyBuyFightTimes - RoleDataManager.ArenaBuyFightTimes, GlobalCfgArray.globalCfg.limitDailyBuyFightTimes);
         }
-        private async void OnClickBtnSure()
+        private void OnClickBtnSure()
         {
-            if (_maxTimes > 0 && (_buyTimes + _count) > _maxTimes)
-            {
-                PromptController.Instance.ShowFloatTextPrompt("购买次数不足");
-                return;
-            }
-            ItemExchangeCfgArray.Instance.GetMoneyIdAndNum(_itemId, _buyTimes, _count, out int costId, out int coustNum, out int buyNum);
-
-            Debug.Log(costId + "数量:" + ItemDataManager.GetItemNum(costId));
-            if (ItemDataManager.GetItemNum(costId) < coustNum)
+            if (ItemDataManager.GetItemNum(GlobalCfgArray.globalCfg.costIdBuyFightTimes) < GlobalCfgArray.globalCfg.costNumBuyFightTimes)
             {
-                ItemCfg costCfg = ItemCfgArray.Instance.GetCfg(costId);
-                if (_itemId == ConstItemID.DIAMOND_PURPLE)
-                {
-                    PromptController.Instance.ShowFloatTextPrompt(string.Format("{0}不足,请前往商城选购", costCfg.name));
-
-                }
-                else
-                {
-                    AlertUI.Show(costCfg.name + "不足,是否前往购买?").SetLeftButton(true).SetRightButton(true, "确认", (AlertWindow.AlertCallback)((object data) =>
-                    {
-                        long costNeedCount = coustNum - ItemDataManager.GetItemNum(costId);
-                        BuyItemConteoller.Show(costId, costNeedCount, ConstBuyType.TYPE_ITEM, null, true, true, GameConst.MAX_COUNT_TO_BUY_DIAMOND_RED);
-                    }));
-                    OnClickBtnCancel();
-                }
-
+                PromptController.Instance.ShowFloatTextPrompt("消耗不足");
                 return;
             }
-
-            bool result = await ItemExchangeSProxy.ItemExchange(_itemId, _count);
-
-            if (result)
-            {
-                PromptController.Instance.ShowFloatTextPrompt("购买成功", MessageType.SUCCESS);
-                if (_onSuccess != null)
-                {
-                    _onSuccess();
-                }
-            }
-
-            this.Hide();
+            ArenaSproxy.ReqBuyArenaFightTimes().Coroutine();
         }
         private void OnClickBtnCancel()
         {
             this.Hide();
         }
-
     }
-
 }

+ 7 - 1
GameClient/Assets/Game/HotUpdate/Views/DailyWelfare/DailyWelfareView.cs

@@ -54,7 +54,7 @@ namespace GFGGame
         protected override void AddEventListener()
         {
             base.AddEventListener();
-            // EventAgent.AddEventListener(ConstMessage.NUMERIC_CHANGE, UpdateView);
+            EventAgent.AddEventListener(ConstMessage.RED_CHANGE, UpdateRedDot);
         }
 
         protected override void OnShown()
@@ -79,6 +79,7 @@ namespace GFGGame
             {
                 Timers.inst.Add(1, 0, UpdateTime);
             }
+            UpdateRedDot();
         }
 
         protected override void OnHide()
@@ -90,6 +91,7 @@ namespace GFGGame
         protected override void RemoveEventListener()
         {
             base.RemoveEventListener();
+            EventAgent.RemoveEventListener(ConstMessage.RED_CHANGE, UpdateRedDot);
         }
         private void UpdateTime(object param)
         {
@@ -124,5 +126,9 @@ namespace GFGGame
         {
             ViewManager.Show<DailySupplyView>();
         }
+        private void UpdateRedDot()
+        {
+            RedDotController.Instance.SetComRedDot(_ui.m_comList.m_btnLimitChargeAddUp.target, RedDotDataManager.Instance.GetLimiteChargeRewardRed(), "", -40);
+        }
     }
 }

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

@@ -300,7 +300,6 @@ namespace GFGGame
                     PromptController.Instance.ShowFloatTextPrompt("饰品穿戴数量已达上限");
                     return;
                 }
-                MyDressUpHelper.dressUpObj.CheckCancelActionWhenPutOn(id);
                 MyDressUpHelper.dressUpObj.AddOrRemove(id, true);
             }
             _ui.m_txtDressLimit.text = string.Format("饰品穿戴限制:{0}/{1}", MyDressUpHelper.GetCurrentOrnamentCount(), GlobalCfgArray.globalCfg.dressLimitCount);
@@ -328,7 +327,6 @@ namespace GFGGame
                 return;
             }
 
-            MyDressUpHelper.dressUpObj.CheckCancelActionWhenPutOn(id);
             MyDressUpHelper.dressUpObj.AddOrRemove(id, true);
             _ui.m_txtDressLimit.text = string.Format("饰品穿戴限制:{0}/{1}", MyDressUpHelper.GetCurrentOrnamentCount(), GlobalCfgArray.globalCfg.dressLimitCount);
             UpdateListSuitPartsSelected();
@@ -826,7 +824,6 @@ namespace GFGGame
         private void CheckGuide(object param)
         {
             if (GuideDataManager.IsGuideFinish(ConstGuideId.BUY_CLOTHING) <= 0
-             || GuideDataManager.IsGuideFinish(ConstGuideId.START_FIGHT) <= 0
              || GuideDataManager.IsGuideFinish(ConstGuideId.AUTOPLAY_FIGHT) <= 0)
             {
                 UpdateToCheckGuide(null);

Some files were not shown because too many files changed in this diff