Browse Source

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

# Conflicts:
#	GameClient/Assets/Game/CSShare
#	GameClient/Assets/Game/HotUpdate/Controller/GameController.cs
guodong 3 years ago
parent
commit
960578e384
100 changed files with 1596 additions and 1011 deletions
  1. 2 2
      FGUIProject/assets/Card/CardSkillUI.xml
  2. 1 1
      FGUIProject/assets/Card/ComSkillDiscribe.xml
  3. 1 1
      FGUIProject/assets/Card/components/ComFosterBottom.xml
  4. 0 1
      FGUIProject/assets/Card/package.xml
  5. 14 0
      FGUIProject/assets/ClothingDecompose/ClothingDecomposeRuleUI.xml
  6. 38 0
      FGUIProject/assets/ClothingDecompose/ClothingDecomposeUI.xml
  7. 8 0
      FGUIProject/assets/ClothingDecompose/components/Button1.xml
  8. 8 0
      FGUIProject/assets/ClothingDecompose/components/Button2.xml
  9. 19 0
      FGUIProject/assets/ClothingDecompose/components/Button4.xml
  10. 16 0
      FGUIProject/assets/ClothingDecompose/components/Button5.xml
  11. 8 0
      FGUIProject/assets/ClothingDecompose/components/ButtonMinus.xml
  12. 18 0
      FGUIProject/assets/ClothingDecompose/components/ComBtnTab.xml
  13. 27 0
      FGUIProject/assets/ClothingDecompose/components/ListItem.xml
  14. 9 0
      FGUIProject/assets/ClothingDecompose/components/ListRewardItem.xml
  15. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_anniu_1.png
  16. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_anniu_2.png
  17. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_anniudik.png
  18. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_btbt.png
  19. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_dituditu.png
  20. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_erdituditu.png
  21. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_fjkuang.png
  22. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_gzgz.png
  23. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_slkuang.png
  24. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_wdyijanniu_1.png
  25. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_wdyijanniu_2.png
  26. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_wdyijanniu_3.png
  27. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_wdyijanniu_4.png
  28. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_xzxzfg.png
  29. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_yijanniu_1.png
  30. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_yijanniu_2.png
  31. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_yijanniu_3.png
  32. BIN
      FGUIProject/assets/ClothingDecompose/images/fzfj_yijanniu_4.png
  33. BIN
      FGUIProject/assets/ClothingDecompose/images/kp_anniu_8.png
  34. 35 0
      FGUIProject/assets/ClothingDecompose/package.xml
  35. 5 4
      FGUIProject/assets/CommonGame/components/ComponentValueBar.xml
  36. BIN
      FGUIProject/assets/CommonGame/components/kp_sjsj_di_3.png
  37. 0 0
      FGUIProject/assets/CommonGame/images/kp_sjsj_di_3.png
  38. 0 0
      FGUIProject/assets/CommonGame/images/kp_sjsj_di_4.png
  39. 0 0
      FGUIProject/assets/CommonGame/images/yx_yilq.png
  40. BIN
      FGUIProject/assets/CommonGame/images/zx_jqgka_stjl.png
  41. 3 3
      FGUIProject/assets/CommonGame/package.xml
  42. 15 4
      FGUIProject/assets/DressUp/PhotographUI.xml
  43. BIN
      FGUIProject/assets/DressUp/images/pz_sxsx_1.png
  44. BIN
      FGUIProject/assets/DressUp/images/pz_sxsx_2.png
  45. 2 0
      FGUIProject/assets/DressUp/package.xml
  46. 1 1
      FGUIProject/assets/Mail/components/ListRewardItem.xml
  47. BIN
      FGUIProject/assets/Mail/images/kp_sjsj_di_3.png
  48. 0 1
      FGUIProject/assets/Mail/package.xml
  49. 14 9
      FGUIProject/assets/Main/StoryDialogUI.xml
  50. 4 7
      FGUIProject/assets/XiuFang/XiuFangUI.xml
  51. 9 0
      FGUIProject/assets/XiuFang/components/Component.xml
  52. BIN
      FGUIProject/assets/XiuFang/images/tzhc_fzfj.png
  53. 3 1
      FGUIProject/assets/XiuFang/package.xml
  54. 1 1
      GameClient/Assets/Editor/ArtsRes/ImportArtResTool.cs
  55. 1 1
      GameClient/Assets/Game/CSShare
  56. 0 22
      GameClient/Assets/Game/HotUpdate/Constant/ConstGuideId.cs
  57. 3 1
      GameClient/Assets/Game/HotUpdate/Constant/ConstScoreSystem.cs
  58. 7 3
      GameClient/Assets/Game/HotUpdate/Controller/GameController.cs
  59. 12 719
      GameClient/Assets/Game/HotUpdate/Controller/GuideController.cs
  60. 69 0
      GameClient/Assets/Game/HotUpdate/Data/DecomposeDataManager.cs
  61. 11 0
      GameClient/Assets/Game/HotUpdate/Data/DecomposeDataManager.cs.meta
  62. 37 32
      GameClient/Assets/Game/HotUpdate/Data/GuideDataManager.cs
  63. 12 0
      GameClient/Assets/Game/HotUpdate/Data/ItemDataManager.cs
  64. 35 38
      GameClient/Assets/Game/HotUpdate/Data/PhotographDataManager.cs
  65. 34 21
      GameClient/Assets/Game/HotUpdate/Data/ScoreSystemData.cs
  66. 31 26
      GameClient/Assets/Game/HotUpdate/Data/SkillDataManager.cs
  67. 3 3
      GameClient/Assets/Game/HotUpdate/Data/StoryDataManager.cs
  68. 2 2
      GameClient/Assets/Game/HotUpdate/DressUp/SceneController.cs
  69. 8 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose.meta
  70. 80 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ClothingDecomposeRuleUI.cs
  71. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ClothingDecomposeRuleUI.cs.meta
  72. 111 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ClothingDecomposeUI.cs
  73. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ClothingDecomposeUI.cs.meta
  74. 83 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ComBtnTab.cs
  75. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ComBtnTab.cs.meta
  76. 95 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ListItem.cs
  77. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ListItem.cs.meta
  78. 77 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ListRewardItem.cs
  79. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ListRewardItem.cs.meta
  80. 10 4
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/DressUp/UI_PhotographUI.cs
  81. 6 3
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_StoryDialogUI.cs
  82. 80 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/XiuFang/UI_Component.cs
  83. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/XiuFang/UI_Component.cs.meta
  84. 4 9
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/XiuFang/UI_XiuFangUI.cs
  85. 3 0
      GameClient/Assets/Game/HotUpdate/GameGlobal.cs
  86. 1 0
      GameClient/Assets/Game/HotUpdate/Net/Entity/GameResult.cs
  87. 1 0
      GameClient/Assets/Game/HotUpdate/Net/Proxy/GameProxy.cs
  88. 2 5
      GameClient/Assets/Game/HotUpdate/Views/Card/CardDetailView.cs
  89. 35 22
      GameClient/Assets/Game/HotUpdate/Views/Card/CardFosterView.cs
  90. 50 17
      GameClient/Assets/Game/HotUpdate/Views/Card/CardSkillView.cs
  91. 8 0
      GameClient/Assets/Game/HotUpdate/Views/ClothingDecompose.meta
  92. 54 0
      GameClient/Assets/Game/HotUpdate/Views/ClothingDecompose/ClothingDecomposeRuleView.cs
  93. 11 0
      GameClient/Assets/Game/HotUpdate/Views/ClothingDecompose/ClothingDecomposeRuleView.cs.meta
  94. 276 0
      GameClient/Assets/Game/HotUpdate/Views/ClothingDecompose/ClothingDecomposeView.cs
  95. 11 0
      GameClient/Assets/Game/HotUpdate/Views/ClothingDecompose/ClothingDecomposeView.cs.meta
  96. 1 8
      GameClient/Assets/Game/HotUpdate/Views/ClothingShop/ClothingShopView.cs
  97. 2 23
      GameClient/Assets/Game/HotUpdate/Views/ClothingSynthetic/ClothingSyntheticView.cs
  98. 1 4
      GameClient/Assets/Game/HotUpdate/Views/ClothingSynthetic/SuitSyntheticView.cs
  99. 1 7
      GameClient/Assets/Game/HotUpdate/Views/CommonGame/ApproachOfItemView.cs
  100. 1 5
      GameClient/Assets/Game/HotUpdate/Views/CommonGame/BuyCountView.cs

+ 2 - 2
FGUIProject/assets/Card/CardSkillUI.xml

@@ -1,11 +1,11 @@
 <?xml version="1.0" encoding="utf-8"?>
 <component size="936,1032">
-  <controller name="c1" pages="0,,1," selected="1"/>
+  <controller name="c1" pages="0,,1," selected="0"/>
   <displayList>
     <image id="n0_rhha" name="n0" src="lwri5u" fileName="imagesExport/hc_kuang_6.png" pkg="mk0fwx0x" xy="0,-1" size="936,1032">
       <relation target="" sidePair="center-center,middle-middle"/>
     </image>
-    <image id="n4_rhha" name="n4" src="rhha9n" fileName="components/kp_sjsj_di_3.png" xy="372,38" group="n6_rhha"/>
+    <image id="n4_rhha" name="n4" src="j48o99" fileName="images/kp_sjsj_di_3.png" pkg="eg2y0ldp" xy="372,38" group="n6_rhha"/>
     <text id="n3_rhha" name="txtName" xy="467,225" pivot="0.5,0" anchor="true" size="112,49" group="n6_rhha" fontSize="36" color="#85756d" text="赵钱孙"/>
     <component id="n7_rhha" name="comSkill" src="rhha9l" fileName="components/ComSkill.xml" xy="379,45" size="177,177" group="n6_rhha" aspect="true"/>
     <group id="n6_rhha" name="n6" xy="372,38" size="192,236"/>

+ 1 - 1
FGUIProject/assets/Card/ComSkillDiscribe.xml

@@ -4,6 +4,6 @@
     <image id="n10_rhha" name="n10" src="rhha9p" fileName="images/kp_sjsj_di_1.png" xy="0,0" size="836,106"/>
     <image id="n9_rhha" name="n9" src="rhha9o" fileName="images/kp_sjsj_di_2.png" xy="30,5"/>
     <text id="n11_rhha" name="txtLv" xy="38,35" pivot="0.5,0" size="81,36" fontSize="26" color="#fffaf2" align="center" text="下一级"/>
-    <text id="n12_rhha" name="txtDiscribe" xy="146,13" size="659,80" fontSize="30" color="#a99881" autoSize="none" text="我是林清轩品牌代言人杨祐宁攜手林清轩山茶花护 肤一起守護你的青春。"/>
+    <text id="n12_rhha" name="txtDiscribe" xy="146,53" pivot="0,0.5" anchor="true" size="659,80" fontSize="30" color="#a99881" autoSize="height" text="我是林清轩品牌代言人杨祐宁攜手林清轩山茶花护 肤一起守護你的青春。"/>
   </displayList>
 </component>

+ 1 - 1
FGUIProject/assets/Card/components/ComFosterBottom.xml

@@ -98,7 +98,7 @@
     <group id="n55_l2by" name="grpStar" xy="11,1221" size="1056,435" advanced="true">
       <gearDisplay controller="ctrlTab" pages="1"/>
     </group>
-    <list id="n77_rhha" name="listSkill" xy="76,1241" size="928,412" visible="false" overflow="hidden" lineGap="33" defaultItem="ui://7l6lvkayrhha9k">
+    <list id="n77_rhha" name="listSkill" xy="76,1241" size="928,412" overflow="hidden" lineGap="33" defaultItem="ui://7l6lvkayrhha9k">
       <gearDisplay controller="ctrlTab" pages="2"/>
       <item/>
       <item/>

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

@@ -94,7 +94,6 @@
     <component id="rhha9k" name="ListSkillItem.xml" path="/components/"/>
     <component id="rhha9l" name="ComSkill.xml" path="/components/"/>
     <component id="rhha9m" name="CardSkillUI.xml" path="/" exported="true"/>
-    <image id="rhha9n" name="kp_sjsj_di_3.png" path="/components/"/>
     <image id="rhha9o" name="kp_sjsj_di_2.png" path="/images/"/>
     <image id="rhha9p" name="kp_sjsj_di_1.png" path="/images/" scale="9grid" scale9grid="26,26,52,52"/>
     <component id="rhha9q" name="ComSkillDiscribe.xml" path="/"/>

+ 14 - 0
FGUIProject/assets/ClothingDecompose/ClothingDecomposeRuleUI.xml

@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<component size="936,621">
+  <displayList>
+    <loader id="n0_qyr6" name="loaBg" xy="1,1" size="936,621" url="ui://mk0fwx0xlwri5u" fill="scaleFree"/>
+    <image id="n3_qyr6" name="n3" src="ehs99" fileName="images/yx_xiant_1.png" pkg="eg2y0ldp" xy="44,120"/>
+    <text id="n1_qyr6" name="txtTitle" xy="322,44" size="292,64" fontSize="48" color="#9b7853" text="服装分解规则"/>
+    <text id="n2_qyr6" name="txtRule" xy="61,158" size="804,46" fontSize="34" color="#aa865f" autoSize="height" text="分解多余的衣服可获得金币和分解材料1.2."/>
+    <list id="n4_qyr6" name="listReward" xy="21,277" size="893,300" layout="row" colGap="40" defaultItem="ui://h9mv1l71wlc24" align="center">
+      <item/>
+      <item/>
+      <item/>
+    </list>
+  </displayList>
+</component>

+ 38 - 0
FGUIProject/assets/ClothingDecompose/ClothingDecomposeUI.xml

@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<component size="1080,1920">
+  <controller name="c1" pages="0,,1,,2,,3," selected="0"/>
+  <displayList>
+    <graph id="n24_qyr6" name="n24" xy="0,0" size="1080,1920" alpha="0.7" type="rect" lineSize="0" fillColor="#ff000000">
+      <relation target="" sidePair="width-width,height-height"/>
+    </graph>
+    <image id="n26_cb92" name="bg" src="qyr6o" fileName="images/fzfj_dituditu.png" xy="32,0">
+      <relation target="" sidePair="top-top"/>
+    </image>
+    <image id="n22_qyr6" name="n22" src="qyr6n" fileName="images/fzfj_erdituditu.png" xy="72,406"/>
+    <image id="n23_qyr6" name="n23" src="qyr6p" fileName="images/fzfj_btbt.png" xy="0,45"/>
+    <component id="n28_cb92" name="valueBar" src="v3541v" fileName="components/ComponentValueBar.xml" pkg="eg2y0ldp" xy="125,90"/>
+    <component id="n0_wlc2" name="btnBack" src="9xlo8" fileName="components/ButtonBack1.xml" pkg="eg2y0ldp" xy="35,80"/>
+    <component id="n1_wlc2" name="btnRule" src="wlc21" fileName="components/Button1.xml" xy="975,194"/>
+    <component id="n2_wlc2" name="comBtnTab" src="qyr6v" fileName="components/ComBtnTab.xml" xy="100,343" size="880,63"/>
+    <list id="n10_wlc2" name="list" xy="76,445" size="928,643" layout="flow_hz" selectionMode="multipleSingleClick" overflow="scroll" lineGap="45" colGap="25" defaultItem="ui://h9mv1l71hvn0a" align="center">
+      <item/>
+      <item/>
+      <item/>
+      <item/>
+      <item/>
+    </list>
+    <text id="n21_qyr6" name="txtNone" xy="380,736" size="256,49" fontSize="36" color="#cfbf9c" vars="true" text="暂无物品可分解"/>
+    <text id="n11_wlc2" name="txtShow" xy="301,1150" size="478,44" fontSize="32" color="#917960" align="center" ubb="true" autoSize="none" text="分解0件凡品可获得"/>
+    <list id="n12_wlc2" name="listReward" xy="36,1217" size="1008,263" layout="row" colGap="70" defaultItem="ui://h9mv1l71wlc24" align="center">
+      <item/>
+      <item/>
+      <item/>
+    </list>
+    <component id="n16_wlc2" name="btnDecompose" src="ih7594" fileName="components/Button10.xml" pkg="mk0fwx0x" xy="350,1553"/>
+    <text id="n17_wlc2" name="txtConsume" xy="440,1506" pivot="0.5,0" size="199,41" fontSize="30" color="#da826e" align="center" text="消耗金币X200">
+      <relation target="" sidePair="center-center"/>
+    </text>
+    <text id="n18_wlc2" name="txtTips" xy="254,1660" size="571,44" fontSize="26" color="#bbafa3" align="center" autoSize="none" text="服装会自动保留一件不显示在列表中"/>
+    <component id="n19_hvn0" name="btnSelect" src="hvn06" fileName="components/Button5.xml" xy="831,1642"/>
+  </displayList>
+</component>

+ 8 - 0
FGUIProject/assets/ClothingDecompose/components/Button1.xml

@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<component size="55,55" extention="Button">
+  <controller name="button" pages="0,up,1,down,2,over,3,selectedOver" selected="0"/>
+  <displayList>
+    <image id="n3_qyr6" name="n3" src="qyr6t" fileName="images/fzfj_gzgz.png" xy="0,0"/>
+  </displayList>
+  <Button/>
+</component>

+ 8 - 0
FGUIProject/assets/ClothingDecompose/components/Button2.xml

@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<component size="255,63" extention="Button">
+  <controller name="button" pages="0,up,1,down" selected="0"/>
+  <displayList>
+    <loader id="n5_qyr6" name="icon" xy="0,0" size="255,63" url="ui://h9mv1l71qyr6j" autoSize="true"/>
+  </displayList>
+  <Button mode="Radio"/>
+</component>

+ 19 - 0
FGUIProject/assets/ClothingDecompose/components/Button4.xml

@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<component size="180,60" extention="Button">
+  <controller name="button" pages="0,up,1,down,2,over,3,selectedOver" selected="0"/>
+  <displayList>
+    <graph id="n0_wlc2" name="n0" xy="0,0" size="180,60" touchable="false" type="rect" lineSize="0" fillColor="#fff0f0f0">
+      <gearDisplay controller="button" pages="0"/>
+      <relation target="" sidePair="width-width,height-height"/>
+    </graph>
+    <graph id="n1_wlc2" name="n1" xy="0,0" size="180,60" touchable="false" type="rect" lineSize="0" fillColor="#fffafafa">
+      <gearDisplay controller="button" pages="2"/>
+      <relation target="" sidePair="width-width,height-height"/>
+    </graph>
+    <graph id="n2_wlc2" name="n2" xy="0,0" size="180,60" touchable="false" type="rect" lineSize="0" fillColor="#ffcccccc">
+      <gearDisplay controller="button" pages="1,3"/>
+      <relation target="" sidePair="width-width,height-height"/>
+    </graph>
+  </displayList>
+  <Button/>
+</component>

+ 16 - 0
FGUIProject/assets/ClothingDecompose/components/Button5.xml

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<component size="180,48" extention="Button">
+  <controller name="button" pages="0,up,1,down" selected="0"/>
+  <displayList>
+    <image id="n3_qyr6" name="n3" src="qyr6s" fileName="images/fzfj_anniu_1.png" xy="0,0">
+      <gearDisplay controller="button" pages="0"/>
+    </image>
+    <image id="n4_qyr6" name="n4" src="qyr6r" fileName="images/fzfj_anniu_2.png" xy="0,0">
+      <gearDisplay controller="button" pages="1"/>
+    </image>
+    <text id="n5_qyr6" name="n5" xy="52,0" size="132,44" fontSize="32" color="#9b7f61" text="全部选中">
+      <gearText controller="button" pages="0,1" values="全部选中|全部取消"/>
+    </text>
+  </displayList>
+  <Button mode="Check"/>
+</component>

+ 8 - 0
FGUIProject/assets/ClothingDecompose/components/ButtonMinus.xml

@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<component size="44,44" extention="Button">
+  <controller name="button" pages="0,up,1,down" selected="0"/>
+  <displayList>
+    <image id="n3_qyr6" name="n3" src="qyr6c" fileName="images/kp_anniu_8.png" xy="0,0"/>
+  </displayList>
+  <Button/>
+</component>

+ 18 - 0
FGUIProject/assets/ClothingDecompose/components/ComBtnTab.xml

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<component size="1056,63" overflow="scroll" scroll="horizontal">
+  <controller name="c1" pages="0,,1,,2,,3," selected="0"/>
+  <displayList>
+    <component id="n2_wlc2" name="btnRarity0" src="wlc22" fileName="components/Button2.xml" xy="0,0" size="255,63">
+      <Button checked="true" icon="ui://h9mv1l71qyr6j" selectedIcon="ui://h9mv1l71qyr6e" controller="c1" page="0"/>
+    </component>
+    <component id="n6_wlc2" name="btnRarity1" src="wlc22" fileName="components/Button2.xml" xy="267,0" size="255,63">
+      <Button icon="ui://h9mv1l71qyr6i" selectedIcon="ui://h9mv1l71qyr6d" controller="c1" page="1"/>
+    </component>
+    <component id="n7_wlc2" name="btnRarity2" src="wlc22" fileName="components/Button2.xml" xy="534,0" size="255,63">
+      <Button icon="ui://h9mv1l71qyr6h" selectedIcon="ui://h9mv1l71qyr6k" controller="c1" page="2"/>
+    </component>
+    <component id="n8_wlc2" name="btnRarity3" src="wlc22" fileName="components/Button2.xml" xy="801,0" size="255,63">
+      <Button icon="ui://h9mv1l71qyr6g" selectedIcon="ui://h9mv1l71qyr6u" controller="c1" page="3"/>
+    </component>
+  </displayList>
+</component>

+ 27 - 0
FGUIProject/assets/ClothingDecompose/components/ListItem.xml

@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<component size="192,225">
+  <controller name="button" pages="0,up,1,down" selected="0"/>
+  <displayList>
+    <image id="n12_qyr6" name="n12" src="j48o99" fileName="images/kp_sjsj_di_3.png" pkg="eg2y0ldp" xy="0,0">
+      <gearDisplay controller="button" pages=""/>
+    </image>
+    <image id="n13_qyr6" name="imgSelect" src="qyr6f" fileName="images/fzfj_xzxzfg.png" xy="-11,-10"/>
+    <image id="n14_qyr6" name="n14" src="qyr6l" fileName="images/fzfj_slkuang.png" xy="29,160"/>
+    <loader id="n11_hvn0" name="loaItem" xy="0,0" size="192,225"/>
+    <loader id="n4_wlc2" name="loaIcon" xy="96,100" pivot="0.5,0.5" anchor="true" size="134,134" aspect="true" touchable="false" fill="scale"/>
+    <loader id="n3_wlc2" name="loaRarity" xy="142,0" size="50,50" touchable="false" autoSize="true">
+      <relation target="" sidePair="right-right,top-top"/>
+    </loader>
+    <text id="n5_wlc2" name="txtName" xy="96,188" pivot="0.5,0" anchor="true" size="200,39" fontSize="28" color="#9b7f61" text="名字名字七个字">
+      <relation target="" sidePair="center-center"/>
+    </text>
+    <text id="n6_wlc2" name="txtCount" xy="58,159" pivot="1,0" size="34,34" fontSize="24" color="#fff8ea" align="right" text="20">
+      <relation target="n10_hvn0" sidePair="right-left,top-top"/>
+    </text>
+    <text id="n9_hvn0" name="txtHasCount" xy="100,159" size="73,34" fontSize="24" color="#ffffff" text="999万">
+      <relation target="n10_hvn0" sidePair="left-right,top-top"/>
+    </text>
+    <text id="n10_hvn0" name="n10" xy="87,159" size="18,34" fontSize="24" color="#fff8ea" text="/"/>
+    <component id="n7_hvn0" name="btnMinus" src="hvn08" fileName="components/ButtonMinus.xml" xy="0,0"/>
+  </displayList>
+</component>

+ 9 - 0
FGUIProject/assets/ClothingDecompose/components/ListRewardItem.xml

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<component size="254,254">
+  <displayList>
+    <image id="n16_qyr6" name="n16" src="qyr6m" fileName="images/fzfj_fjkuang.png" xy="0,0"/>
+    <text id="n13_wlc2" name="txtName" xy="0,0" size="10,44" fontSize="32" align="center" text=""/>
+    <loader id="n14_wlc2" name="loaIcon" xy="126,53" pivot="0.5,0.05" anchor="true" size="163,163" aspect="true" fill="scale"/>
+    <text id="n15_wlc2" name="txtCount" xy="82,168" size="100,44" fontSize="30" color="#fff8ea" align="right" vAlign="bottom" autoSize="none" strokeColor="#907240" strokeSize="2" autoClearText="true" text="666"/>
+  </displayList>
+</component>

BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_anniu_1.png


BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_anniu_2.png


BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_anniudik.png


BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_btbt.png


BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_dituditu.png


BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_erdituditu.png


BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_fjkuang.png


BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_gzgz.png


BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_slkuang.png


BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_wdyijanniu_1.png


BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_wdyijanniu_2.png


BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_wdyijanniu_3.png


BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_wdyijanniu_4.png


BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_xzxzfg.png


BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_yijanniu_1.png


BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_yijanniu_2.png


BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_yijanniu_3.png


BIN
FGUIProject/assets/ClothingDecompose/images/fzfj_yijanniu_4.png


BIN
FGUIProject/assets/ClothingDecompose/images/kp_anniu_8.png


+ 35 - 0
FGUIProject/assets/ClothingDecompose/package.xml

@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packageDescription id="h9mv1l71">
+  <resources>
+    <component id="wlc20" name="ClothingDecomposeUI.xml" path="/" exported="true"/>
+    <component id="wlc21" name="Button1.xml" path="/components/"/>
+    <component id="wlc22" name="Button2.xml" path="/components/"/>
+    <component id="wlc24" name="ListRewardItem.xml" path="/components/"/>
+    <component id="wlc25" name="Button4.xml" path="/components/"/>
+    <component id="hvn06" name="Button5.xml" path="/components/"/>
+    <component id="hvn08" name="ButtonMinus.xml" path="/components/"/>
+    <component id="hvn0a" name="ListItem.xml" path="/components/"/>
+    <component id="qyr6b" name="ClothingDecomposeRuleUI.xml" path="/" exported="true"/>
+    <image id="qyr6c" name="kp_anniu_8.png" path="/images/"/>
+    <image id="qyr6d" name="fzfj_yijanniu_2.png" path="/images/"/>
+    <image id="qyr6e" name="fzfj_yijanniu_1.png" path="/images/"/>
+    <image id="qyr6f" name="fzfj_xzxzfg.png" path="/images/"/>
+    <image id="qyr6g" name="fzfj_wdyijanniu_4.png" path="/images/"/>
+    <image id="qyr6h" name="fzfj_wdyijanniu_3.png" path="/images/"/>
+    <image id="qyr6i" name="fzfj_wdyijanniu_2.png" path="/images/"/>
+    <image id="qyr6j" name="fzfj_wdyijanniu_1.png" path="/images/"/>
+    <image id="qyr6k" name="fzfj_yijanniu_3.png" path="/images/"/>
+    <image id="qyr6l" name="fzfj_slkuang.png" path="/images/"/>
+    <image id="qyr6m" name="fzfj_fjkuang.png" path="/images/"/>
+    <image id="qyr6n" name="fzfj_erdituditu.png" path="/images/"/>
+    <image id="qyr6o" name="fzfj_dituditu.png" path="/images/" scale="9grid" scale9grid="0,745,1016,674"/>
+    <image id="qyr6p" name="fzfj_btbt.png" path="/images/"/>
+    <image id="qyr6q" name="fzfj_anniudik.png" path="/images/"/>
+    <image id="qyr6r" name="fzfj_anniu_2.png" path="/images/"/>
+    <image id="qyr6s" name="fzfj_anniu_1.png" path="/images/"/>
+    <image id="qyr6t" name="fzfj_gzgz.png" path="/images/"/>
+    <image id="qyr6u" name="fzfj_yijanniu_4.png" path="/images/"/>
+    <component id="qyr6v" name="ComBtnTab.xml" path="/components/"/>
+  </resources>
+  <publish name="" path="..\GameClient\Assets\ResIn\UI\ClothingDecompose" packageCount="2" genCode="true"/>
+</packageDescription>

+ 5 - 4
FGUIProject/assets/CommonGame/components/ComponentValueBar.xml

@@ -1,10 +1,11 @@
 <?xml version="1.0" encoding="utf-8"?>
 <component size="921,47">
-  <controller name="c1" exported="true" pages="0,,1,,3,,4,,5,,6," selected="5">
+  <controller name="c1" exported="true" pages="0,,1,,3,,4,,5,,6,,7," selected="6">
     <remark page="2" value="抽卡兑换"/>
     <remark page="3" value="抽卡活动兑换"/>
     <remark page="4" value="抽卡"/>
     <remark page="5" value="卡牌"/>
+    <remark page="6" value="分解"/>
   </controller>
   <displayList>
     <component id="n39_r9gf" name="btnDiamondRed" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="460,5">
@@ -12,9 +13,9 @@
       <gearXY controller="c1" default="460,5"/>
       <Button title="100" icon="ui://eg2y0ldpq08x6"/>
     </component>
-    <component id="n40_r9gf" name="btnGold" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="230,5">
-      <gearDisplay controller="c1" pages="0,1,6"/>
-      <gearXY controller="c1" pages="1" values="460,5" default="230,5"/>
+    <component id="n40_r9gf" name="btnGold" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="688,5">
+      <gearDisplay controller="c1" pages="0,1,6,7"/>
+      <gearXY controller="c1" pages="1,7" values="460,5|688,5" default="230,5"/>
       <Button title="100" icon="ui://eg2y0ldpq08x3"/>
     </component>
     <component id="n41_r9gf" name="btnDiamondPurple" src="r9gf5z" fileName="components/ButtonInValueBar.xml" xy="688,5">

BIN
FGUIProject/assets/CommonGame/components/kp_sjsj_di_3.png


+ 0 - 0
FGUIProject/assets/Card/components/kp_sjsj_di_3.png → FGUIProject/assets/CommonGame/images/kp_sjsj_di_3.png


+ 0 - 0
FGUIProject/assets/CommonGame/components/kp_sjsj_di_4.png → FGUIProject/assets/CommonGame/images/kp_sjsj_di_4.png


+ 0 - 0
FGUIProject/assets/CommonGame/components/yx_yilq.png → FGUIProject/assets/CommonGame/images/yx_yilq.png


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


+ 3 - 3
FGUIProject/assets/CommonGame/package.xml

@@ -129,9 +129,9 @@
     <component id="ih7596" name="ComFilterType.xml" path="/components/" exported="true"/>
     <font id="j48o97" name="ZIHUN125.TTF" path="/" exported="true" renderMode="" samplePointSize="16"/>
     <component id="j48o98" name="ComItem.xml" path="/components/" exported="true"/>
-    <image id="j48o99" name="kp_sjsj_di_3.png" path="/components/"/>
-    <image id="j48o9a" name="kp_sjsj_di_4.png" path="/components/"/>
-    <image id="j48o9b" name="yx_yilq.png" path="/components/"/>
+    <image id="j48o99" name="kp_sjsj_di_3.png" path="/images/" exported="true"/>
+    <image id="j48o9a" name="kp_sjsj_di_4.png" path="/images/"/>
+    <image id="j48o9b" name="yx_yilq.png" path="/images/"/>
     <component id="ih7566" name="ListTagItem.xml" path="/components/" exported="true"/>
     <image id="ih7562" name="fzd_bqbq_1.png" path="/imagesExport/" exported="true"/>
     <image id="ih7563" name="fzd_bqbq_2.png" path="/imagesExport/" exported="true"/>

+ 15 - 4
FGUIProject/assets/DressUp/PhotographUI.xml

@@ -12,16 +12,27 @@
     </loader>
     <component id="n9_g3xa" name="comSelectBox" src="g3xa4l" fileName="ComChecked.xml" xy="420,728" pivot="0.5,0.5" anchor="true"/>
     <component id="n1_yd72" name="btnBack" src="9xlo8" fileName="components/ButtonBack1.xml" pkg="eg2y0ldp" xy="35,80"/>
-    <component id="n10_i3ix" name="btnPhotograph" src="g3xa4h" fileName="components/Button8.xml" xy="919,650">
+    <component id="n5_7dea" name="ComSelectRes" src="7dea4f" fileName="components/ComSelect.xml" xy="0,1086">
+      <relation target="" sidePair="center-center,bottom-bottom"/>
+    </component>
+    <component id="n10_i3ix" name="btnPhotograph" src="g3xa4h" fileName="components/Button8.xml" xy="940,409" group="n16_9ico">
       <relation target="" sidePair="bottom-bottom"/>
       <Button icon="ui://mbo439wbnz0t5d"/>
     </component>
-    <component id="n6_g3xa" name="btnChoose" src="g3xa4h" fileName="components/Button8.xml" xy="924,803">
+    <component id="n6_g3xa" name="btnChoose" src="g3xa4h" fileName="components/Button8.xml" xy="940,554" group="n16_9ico">
       <relation target="" sidePair="bottom-bottom"/>
       <Button icon="ui://mbo439wbxmtl4s"/>
     </component>
-    <component id="n5_7dea" name="ComSelectRes" src="7dea4f" fileName="components/ComSelect.xml" xy="0,1086">
-      <relation target="" sidePair="center-center,bottom-bottom"/>
+    <component id="n13_u7i8" name="btnUp" src="g3xa4h" fileName="components/Button8.xml" xy="940,699" group="n16_9ico">
+      <relation target="" sidePair="bottom-bottom"/>
+      <Button icon="ui://mbo439wb9ico5f"/>
+    </component>
+    <component id="n14_u7i8" name="btnDown" src="g3xa4h" fileName="components/Button8.xml" xy="940,844" group="n16_9ico">
+      <relation target="" sidePair="bottom-bottom"/>
+      <Button icon="ui://mbo439wb9ico5e"/>
     </component>
+    <group id="n16_9ico" name="n16" xy="940,409" size="125,560" advanced="true">
+      <relation target="" sidePair="right-right,top-top"/>
+    </group>
   </displayList>
 </component>

BIN
FGUIProject/assets/DressUp/images/pz_sxsx_1.png


BIN
FGUIProject/assets/DressUp/images/pz_sxsx_2.png


+ 2 - 0
FGUIProject/assets/DressUp/package.xml

@@ -167,6 +167,8 @@
     <component id="i3ix5a" name="Button12.xml" path="/components/"/>
     <image id="i3ix5c" name="pz_xiantiao.png" path="/images/"/>
     <image id="nz0t5d" name="pz_pzanniu.png" path="/images/"/>
+    <image id="9ico5e" name="pz_sxsx_2.png" path="/images/"/>
+    <image id="9ico5f" name="pz_sxsx_1.png" path="/images/"/>
   </resources>
   <publish name="" path="..\GameClient\Assets\ResIn\UI\DressUp" packageCount="2" genCode="true" extractAlpha="true"/>
 </packageDescription>

+ 1 - 1
FGUIProject/assets/Mail/components/ListRewardItem.xml

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <component size="192,192">
   <displayList>
-    <image id="n11_ehs9" name="n11" src="ehs9a" fileName="images/kp_sjsj_di_3.png" xy="0,0"/>
+    <image id="n11_ehs9" name="n11" src="j48o99" fileName="images/kp_sjsj_di_3.png" pkg="eg2y0ldp" xy="0,0"/>
     <loader id="n12_ehs9" name="loaIcon" xy="-4,-4" size="200,200" autoSize="true">
       <relation target="" sidePair="center-center,middle-middle"/>
     </loader>

BIN
FGUIProject/assets/Mail/images/kp_sjsj_di_3.png


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

@@ -9,7 +9,6 @@
     <image id="ehs96" name="yx_icon_2.png" path="/images/"/>
     <image id="ehs97" name="yx_icon_3.png" path="/images/"/>
     <image id="ehs98" name="yx_btzi_2.png" path="/images/"/>
-    <image id="ehs9a" name="kp_sjsj_di_3.png" path="/images/"/>
     <image id="ehs9b" name="kp_sjsj_di_4.png" path="/images/"/>
     <component id="ehs9c" name="MailUI.xml" path="/" exported="true"/>
     <component id="ehs9d" name="ListItem.xml" path="/components/"/>

+ 14 - 9
FGUIProject/assets/Main/StoryDialogUI.xml

@@ -1,17 +1,18 @@
 <?xml version="1.0" encoding="utf-8"?>
 <component size="1080,1920">
+  <controller name="c1" pages="0,,1," selected="1"/>
   <displayList>
     <graph id="n17_t8o1" name="btnNext" xy="0,0" size="1080,1920" alpha="0" type="rect" fillColor="#ffff0000">
       <relation target="" sidePair="center-center,middle-middle"/>
     </graph>
     <component id="n6_nmnb" name="dialogText" src="nmnb2z" fileName="componentsDialog/CompDialogText.xml" xy="36,1338" touchable="false">
-      <relation target="" sidePair="center-center,middle-middle"/>
+      <relation target="" sidePair="center-center,bottom-bottom"/>
     </component>
     <component id="n9_nmnb" name="dialogName" src="nmnb30" fileName="componentsDialog/CompDialogName.xml" xy="36,1338" touchable="false">
-      <relation target="" sidePair="center-center,middle-middle"/>
+      <relation target="" sidePair="center-center,bottom-bottom"/>
     </component>
     <component id="n13_nmnb" name="dialogHead" src="nmnb31" fileName="componentsDialog/CompDialogHead.xml" xy="36,1338" touchable="false">
-      <relation target="" sidePair="center-center,middle-middle"/>
+      <relation target="" sidePair="center-center,bottom-bottom"/>
     </component>
     <list id="n15_nmnb" name="list" xy="150,1021" size="780,448" overflow="scroll" lineGap="84" defaultItem="ui://mfvz4q8knmnb32" autoClearItems="true">
       <relation target="" sidePair="center-center,middle-middle"/>
@@ -19,13 +20,17 @@
       <item/>
       <item/>
     </list>
-    <component id="n3_nmnb" name="btnLookBack" src="nmnb2w" fileName="componentsDialog/ButtonLookBack.xml" xy="443,1716" group="n8_nmnb"/>
-    <component id="n2_nmnb" name="btnAutoPlay" src="nmnb2v" fileName="componentsDialog/ButtonAutoPlay.xml" xy="601,1716" group="n8_nmnb"/>
-    <component id="n4_nmnb" name="btnSkip" src="nmnb2x" fileName="componentsDialog/ButtonSkip.xml" xy="759,1716" group="n8_nmnb"/>
-    <component id="n5_nmnb" name="btnSpeedUp" src="nmnb2y" fileName="componentsDialog/ButtonSpeedUp.xml" xy="917,1716" group="n8_nmnb"/>
-    <group id="n8_nmnb" name="n8" xy="443,1716" size="604,140" advanced="true" layout="hz" colGap="40">
+    <component id="n16_qsvd" name="btnBack" src="9xlo8" fileName="components/ButtonBack1.xml" pkg="eg2y0ldp" xy="35,80">
+      <gearDisplay controller="c1" pages="0"/>
+    </component>
+    <component id="n3_nmnb" name="btnLookBack" src="nmnb2w" fileName="componentsDialog/ButtonLookBack.xml" xy="601,1716" group="n18_u7i8"/>
+    <component id="n2_nmnb" name="btnAutoPlay" src="nmnb2v" fileName="componentsDialog/ButtonAutoPlay.xml" xy="759,1716" group="n18_u7i8"/>
+    <component id="n4_nmnb" name="btnSkip" src="nmnb2x" fileName="componentsDialog/ButtonSkip.xml" xy="917,1716" group="n18_u7i8">
+      <gearDisplay controller="c1" pages="0"/>
+    </component>
+    <component id="n5_nmnb" name="btnSpeedUp" src="nmnb2y" fileName="componentsDialog/ButtonSpeedUp.xml" xy="917,1716" group="n18_u7i8"/>
+    <group id="n18_u7i8" name="n18" xy="601,1716" size="446,140" advanced="true" layout="hz" colGap="40" excludeInvisibles="true">
       <relation target="" sidePair="right-right,bottom-bottom"/>
     </group>
-    <component id="n16_qsvd" name="btnBack" src="9xlo8" fileName="components/ButtonBack1.xml" pkg="eg2y0ldp" xy="35,80"/>
   </displayList>
 </component>

+ 4 - 7
FGUIProject/assets/XiuFang/XiuFangUI.xml

@@ -6,12 +6,9 @@
     </loader>
     <component id="n1_9xlo" name="btnBack" src="9xlo8" fileName="components/ButtonBack1.xml" pkg="eg2y0ldp" xy="35,80"/>
     <image id="n3_9xlo" name="n3" src="9xlo7" fileName="images/tzhc_ziti.png" xy="160,102"/>
-    <image id="n2_9xlo" name="n2" src="9xlo5" fileName="images/tzhc_jiazidi.png" xy="9,524" group="n7_j539"/>
-    <loader id="n4_9xlo" name="btnClothingShop" xy="59,269" size="320,1246" group="n7_j539" url="ui://kv0ad4wy9xlo3" autoSize="true"/>
-    <loader id="n5_9xlo" name="btnClothingUpgrade" xy="699,269" size="320,1246" group="n7_j539" url="ui://kv0ad4wy9xlo4" autoSize="true"/>
-    <loader id="n6_9xlo" name="btnSuitSynthetic" xy="379,269" size="320,1246" group="n7_j539" url="ui://kv0ad4wy9xlo6" autoSize="true"/>
-    <group id="n7_j539" name="n7" xy="9,269" size="1062,1282" advanced="true">
-      <relation target="" sidePair="middle-middle"/>
-    </group>
+    <component id="n4_9xlo" name="component" src="wlc28" fileName="components/Component.xml" xy="35,337" size="1010,1246"/>
+    <image id="n2_9xlo" name="n2" src="9xlo5" fileName="images/tzhc_jiazidi.png" xy="0,589" size="1080,1027">
+      <relation target="n4_9xlo" sidePair="bottom-bottom"/>
+    </image>
   </displayList>
 </component>

+ 9 - 0
FGUIProject/assets/XiuFang/components/Component.xml

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<component size="1000,1246" overflow="scroll" scroll="horizontal">
+  <displayList>
+    <loader id="n4_9xlo" name="btnClothingShop" xy="0,0" size="320,1246" url="ui://kv0ad4wy9xlo3" autoSize="true"/>
+    <loader id="n5_9xlo" name="btnClothingUpgrade" xy="640,0" size="320,1246" url="ui://kv0ad4wy9xlo4" autoSize="true"/>
+    <loader id="n6_9xlo" name="btnSuitSynthetic" xy="320,0" size="320,1246" url="ui://kv0ad4wy9xlo6" autoSize="true"/>
+    <loader id="n8_wlc2" name="btnDecompose" xy="958,0" size="321,1246" url="ui://kv0ad4wyqyr69" autoSize="true"/>
+  </displayList>
+</component>

BIN
FGUIProject/assets/XiuFang/images/tzhc_fzfj.png


+ 3 - 1
FGUIProject/assets/XiuFang/package.xml

@@ -5,9 +5,11 @@
     <image id="9xlo1" name="tzhc_bj.jpg" path="/images/" atlas="alone_npot"/>
     <image id="9xlo3" name="tzhc_fzd.png" path="/images/"/>
     <image id="9xlo4" name="tzhc_fzsj.png" path="/images/"/>
-    <image id="9xlo5" name="tzhc_jiazidi.png" path="/images/"/>
+    <image id="9xlo5" name="tzhc_jiazidi.png" path="/images/" scale="9grid" scale9grid="66,254,91,512"/>
     <image id="9xlo6" name="tzhc_tzhc.png" path="/images/"/>
     <image id="9xlo7" name="tzhc_ziti.png" path="/images/"/>
+    <component id="wlc28" name="Component.xml" path="/components/"/>
+    <image id="qyr69" name="tzhc_fzfj.png" path="/images/"/>
   </resources>
   <publish name="" path="..\GameClient\Assets\ResIn\UI\XiuFang" packageCount="2" genCode="true" extractAlpha="true"/>
 </packageDescription>

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

@@ -155,7 +155,7 @@ namespace GFGEditor
             }
             foreach (string dir in sourceDirs)
             {
-                files = FileUtil.CopyFilesTo(dir, targetDir, saveName, new string[] { ".png", ".jpg", ".mp3" }, ragule);
+                files = FileUtil.CopyFilesTo(dir, targetDir, saveName, new string[] { ".png", ".jpg", ".mp3", ".meta" }, ragule);
                 foreach (var file in files)
                 {
                     Debug.LogFormat("更新{0}", file);

+ 1 - 1
GameClient/Assets/Game/CSShare

@@ -1 +1 @@
-Subproject commit edde91b6eb5408645bdedba65c480d027eb4e3c1
+Subproject commit 3731dcb4a522420dc9225021ab78f16b0b82962b

+ 0 - 22
GameClient/Assets/Game/HotUpdate/Constant/ConstGuideId.cs

@@ -2,28 +2,6 @@ namespace GFGGame
 {
     public class ConstGuideId
     {
-        public const int SINGLE_FIGHT_GUIDE = 1;//单人战斗引导
-        public const int CLOTHING_SHOP_VIEW_BTN_BUY = 11; //引导购买必需品
-        public const int SEE_DRESS_TIPS = 12; //点击查看关卡提示
-        public const int TARGET_FIGHT_GUIDE = 13; //双人对战算分提示
-        public const int MAIN_UI_BTN_ZHAI_XING = 3;//引导摘星
-        public const int LUCKY_BOX_VIEW_BTN_BACK = 4;//引导摘星后引导返回主界面
-        public const int MAIN_UI_BTN_HUAN_ZHUANG = 2;//引导换装
-        public const int SUIT_SYNTHETIC_GUIDE = 14;//引导套装合成
-        public const int USE_CARD_FIGHT = 15;//引导使用卡牌战斗
-        public const int TIPS_TAGS_FIGHT = 16;//提示标签
-        public const int CARD_UP_STAR = 17;//词牌升星
-        public const int PHOTOGRAPH_GUIDE = 18;//引导拍照
-        public const int FIGHT_RESULT_TIPS_GUIDE = 19;//战斗结束提示语
-
-
-        public const int CHAPTER_RESULT_VIEW = 6;
-        public const int GET_SUIT_ITEM_VIEW_FULL = 7;
-        public const int GET_BONUS_VIEW = 8;
-        public const int GET_SUIT_ITEM_VIEW_FIRST = 9;
-
-
-        public const int DRESS_UP_VIEW_BTN_BACK = 10;
 
         public const string START_STORY = "START_STORY";
         public const string SINGLE_FIGHT = "SINGLE_FIGHT";

+ 3 - 1
GameClient/Assets/Game/HotUpdate/Constant/ConstScoreSystem.cs

@@ -9,9 +9,11 @@ namespace GFGGame
         //点击完美附加评分系数
         public const double PERFECT_SCORE = 0.2;
         //点击优秀附加评分系数
-        public const double GREAT_SCORE = 0.1;
+        public const double GREAT_SCORE = 0.13;
         //点击Miss附加评分系数
         public const double MISS_SCORE = 0;
+        //点击系数
+        public const double CLICK_SCORE = 2.22;
         //完美八连击附加评分系数
         public const double ALL_PERFECT_SCORE = 0.2;
         //每个标签的加成系数

+ 7 - 3
GameClient/Assets/Game/HotUpdate/Controller/GameController.cs

@@ -82,6 +82,8 @@ namespace GFGGame
             //GuideDataManager.InitServerData(result.roleGuideList);
             //DressUpMenuSuitDataManager.InitServerData(result.systemSuitList);
             //CardDataManager.InitServerData(result.roleCardList);
+            //SkillDataManager.Instance.InitServerData(result.roleSkillList);
+            //SkillDataManager.Instance.SetDicPassivitySkillCfg();
             GetSuitItemController.enable = true;
             //RoleDataHandler.StartUpdate();
 
@@ -110,7 +112,9 @@ namespace GFGGame
             GameGlobal.skipGuide = false;
             RoleDataHandler.StopUpdate();
             CardDataManager.Clear();
+            DecomposeDataManager.Instance.Clear();
             PhotographDataManager.Instance.Clear();
+            SkillDataManager.Instance.Clear();
             if (logout)
             {
                 Logout();
@@ -145,10 +149,10 @@ namespace GFGGame
             else
             {
                 StoryDataManager.currentChapter = 1;
-                if (!StoryDataManager.CheckLevelPass(1, 1))
+                if (GameGlobal.isFirstEntry == true)
                 {
-                    ViewManager.Show(ViewName.STORY_CHAPTER_VIEW, StoryDataManager.currentChapter, new object[] { ViewName.STORY_CHAPTER_LIST_VIEW,  });
-                    StoryController.ShowLevelView(StoryDataManager.currentChapter, 1);
+                    // ViewManager.Show(ViewName.STORY_CHAPTER_VIEW, StoryDataManager.currentChapter, new object[] { ViewName.STORY_CHAPTER_LIST_VIEW, });
+                    StoryController.ShowPriorStoryDialog();
                 }
                 else
                 {

+ 12 - 719
GameClient/Assets/Game/HotUpdate/Controller/GuideController.cs

@@ -10,682 +10,22 @@ namespace GFGGame
     public class GuideController
     {
 
-        /*******************************************************单人战斗引导***********************************************/
-        public static void TryGuideChapterViewLevelItem(GObject target, string guideStr = null)
-        {
-            if (GuideDataManager.GetGuideCount(ConstGuideId.SINGLE_FIGHT_GUIDE) <= 0)
-            {
-                if (guideStr == null)
-                {
-                    UI_CompStoryLevelItem levelItem = UI_CompStoryLevelItem.Proxy(target);
-                    if (levelItem != null)
-                    {
-                        int level = int.Parse(levelItem.target.name.Replace("g", ""));
-                        string levelID = StoryDataManager.currentChapter + "_" + level;
-                        StoryLevelCfg storyLevelCfg = StoryLevelCfgArray.Instance.GetCfg(levelID);
-                        if (storyLevelCfg.fightID != null && storyLevelCfg.fightID.Length > 0)
-                        {
-                            guideStr = "遇到意外事件了,暂时解释不清,先按请求换上服饰吧";
-                        }
-                        else
-                        {
-                            guideStr = "点击关卡图标,继续故事";
-                        }
-                    }
-                    else
-                    {
-                        guideStr = "点击,继续";
-                    }
-                }
-                GuideDataManager.currentGuideId = ConstGuideId.SINGLE_FIGHT_GUIDE;
-                ShowGuide(target, true, guideStr);
-            }
-            else if (GuideDataManager.GetGuideCount(ConstGuideId.SINGLE_FIGHT_GUIDE) <= 0)
-            {
-
-            }
-        }
-
-        public static void TryGuideChapterInfoViewBtnStart(GObject target, string guideStr = null)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.SINGLE_FIGHT_GUIDE) <= 0)
-            {
-                if (guideStr == null)
-                {
-                    guideStr = "点击,继续";
-                }
-                ShowGuide(target, true, guideStr);
-            }
-        }
-
-        public static bool TryGuideDressUpFightViewMenuType0(GList list)
-        {
-
-            if (StoryDataManager.currentChapter == 1 && StoryDataManager.currentLevel <= 2
-                && !StoryDataManager.CheckLevelPass(StoryDataManager.currentChapter, StoryDataManager.currentLevel))
-            {
-                int len = list.numChildren;
-                for (int i = 0; i < len; i++)
-                {
-                    UI_TypeItem item = UI_TypeItem.Proxy(list.GetChildAt(i));
-                    if (item != null)
-                    {
-                        int menuID = (int)item.target.data;
-                        DressUpMenuItemCfg1 dressUpMenuItemCfg1 = DressUpMenuItemCfg1Array.Instance.GetCfg(menuID);
-                        if (dressUpMenuItemCfg1.type == ConstDressUpItemType.LIAN_YI_QUN)
-                        {
-                            ShowGuide(item.target, true, "点击相应的分类,可以快速找到服饰");
-                            return true;
-                        }
-                    }
-                }
-            }
-            return false;
-        }
-        public static void TryGuideDressUpFightViewMenuPart0(GList list, string guideStr)
-        {
-
-            if (StoryDataManager.currentChapter == 1 && StoryDataManager.currentLevel <= 2
-            && !StoryDataManager.CheckLevelPass(StoryDataManager.currentChapter, StoryDataManager.currentLevel))
-            {
-                if (list.numChildren > 0)
-                {
-                    UI_PartsListItem listItem = UI_PartsListItem.Proxy(list.GetChildAt(0));
-                    if (listItem != null)
-                    {
-                        ShowGuide(listItem.target, true, guideStr);
-                        return;
-                    }
-                }
-            }
-        }
-        public static void TryGuideDressUpFightViewBtnNext0(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.SINGLE_FIGHT_GUIDE) <= 0)
-            {
-                ShowGuide(target, false, "接下来验证一下,换上的服饰是否符合需求");
-            }
-        }
-
-        public static void TryGuideSingleScoreViewComClickCircle(GObject target)
-        {
-
-            ShowGuide(target, false, "服饰比较繁琐,适当的整理会更加分,点击为各部位修整吧");
-        }
-
-        /*******************************************************引导购买必需品***********************************************/
-
-        public static void TryGuideDressUpFightViewBtnRecommend(GObject target, GList list)
-        {
-
-            _list = list;
-            if (GuideDataManager.GetGuideCount(ConstGuideId.CLOTHING_SHOP_VIEW_BTN_BUY) <= 0
-                && StoryDataManager.currentLevel == 4
-                && !StoryDataManager.CheckLevelPass(StoryDataManager.currentChapter, StoryDataManager.currentLevel)
-                && DressUpMenuItemDataManager.GetRecommendCount() >= 2)
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.CLOTHING_SHOP_VIEW_BTN_BUY;
-                ShowGuide(target, false, "当提示有“必需品”时,需要穿上对应物品才能通关");
-            }
-        }
-
-        public static void TryGuideApproachOfItemViewList(GList list)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.CLOTHING_SHOP_VIEW_BTN_BUY) <= 0
-                && StoryDataManager.currentLevel == 4
-                && !StoryDataManager.CheckLevelPass(StoryDataManager.currentChapter, StoryDataManager.currentLevel)
-                && DressUpMenuItemDataManager.GetRecommendCount() >= 2)
-            {
-                UI.CommonGame.UI_ApproachOfItemUI listItem = UI.CommonGame.UI_ApproachOfItemUI.Proxy(list.GetChildAt(0));
-                if (listItem != null)
-                {
-                    ShowGuide(listItem.target, false, "该物品可以在服装店购买,点开服装店看看");
-                }
-
-            }
-        }
-
-        public static void TryGuideBuyCountViewBtnSure(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.CLOTHING_SHOP_VIEW_BTN_BUY) <= 0
-                && StoryDataManager.currentLevel == 4
-                && !StoryDataManager.CheckLevelPass(StoryDataManager.currentChapter, StoryDataManager.currentLevel))
-            {
-                ShowGuide(target, false, "找到需要的物品了,点击购买吧");
-            }
-        }
-
-        public static void TryGuideClothingShopViewBtnBack(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.CLOTHING_SHOP_VIEW_BTN_BUY) <= 0
-                && StoryDataManager.currentLevel == 4
-                && !StoryDataManager.CheckLevelPass(StoryDataManager.currentChapter, StoryDataManager.currentLevel))
-            {
-                ShowGuide(target, false, "点击返回,回到换装");
-            }
-        }
-        private static GList _list;
-        public static bool TryGuideDressUpFightViewMenuType1()
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.CLOTHING_SHOP_VIEW_BTN_BUY) <= 0
-               && StoryDataManager.currentLevel == 4
-               && !StoryDataManager.CheckLevelPass(StoryDataManager.currentChapter, StoryDataManager.currentLevel))
-            {
-                int len = _list.numChildren;
-                for (int i = 0; i < len; i++)
-                {
-                    UI_comListType item = UI_comListType.Proxy(_list.GetChildAt(i));
-                    if (item != null)
-                    {
-                        int menuID = (int)item.target.data;
-                        DressUpMenuItemCfg1 dressUpMenuItemCfg1 = DressUpMenuItemCfg1Array.Instance.GetCfg(menuID);
-                        if (dressUpMenuItemCfg1.type == ConstDressUpItemType.LIAN_YI_QUN)
-                        {
-                            ShowGuide(item.target, true, "在相应分类里就可以找到必需品啦");
-                            _list = null;
-                            return true;
-                        }
-                    }
-                }
-            }
-            return false;
-        }
-
-        public static void TryGuideDressUpFightViewMenuPart1(GList list, string guideStr)
-        {
-
-            if (StoryDataManager.currentChapter == 1 && StoryDataManager.currentLevel == 4
-            && !StoryDataManager.CheckLevelPass(StoryDataManager.currentChapter, StoryDataManager.currentLevel))
-            {
-                if (list.numChildren > 0)
-                {
-                    UI_PartsList listItem = UI_PartsList.Proxy(list.GetChildAt(0));
-                    if (listItem != null)
-                    {
-                        ShowGuide(listItem.target, true, guideStr);
-                        return;
-                    }
-                }
-            }
-        }
-
-        /***************************************************点击查看关卡提示***************************************************/
-        public static void TryGuideDressUpFightViewBtnHint(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.SEE_DRESS_TIPS) <= 0
-                && StoryDataManager.currentLevel == 6
-                && !StoryDataManager.CheckLevelPass(StoryDataManager.currentChapter, StoryDataManager.currentLevel))
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.SEE_DRESS_TIPS;
-                ShowGuide(target, false, "这次换装需要获得别人的认可呢");
-            }
-        }
-
-
-        /******************************************************双人对战评分************************************************/
-
-        public static void TryGuideStoryFightTargetScoreComCircle(GObject target, float devWidth, float devHeight)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.TARGET_FIGHT_GUIDE) <= 0
-                && StoryDataManager.currentLevel == 6
-                && !StoryDataManager.CheckLevelPass(StoryDataManager.currentChapter, StoryDataManager.currentLevel))
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.TARGET_FIGHT_GUIDE;
-                ShowGuide(target, false, "这里可以观察双方的分数计算", 0, false, devWidth, devHeight);
-            }
-        }
-        public static void TryGuideStoryFightTargetScorebtnSkill0(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.TARGET_FIGHT_GUIDE) <= 0
-                && StoryDataManager.currentLevel == 6
-                && !StoryDataManager.CheckLevelPass(StoryDataManager.currentChapter, StoryDataManager.currentLevel))
-            {
-                ShowGuide(target, false, "使用技能,可以增加胜出的几率哦,点击看看");
-            }
-        }
-        /*******************************************************引导抽奖***********************************************/
-        public static bool TryGuideGoBackStoryChapter(GObject target)
-        {
-
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.MAIN_UI_BTN_ZHAI_XING) <= 0
-                && StoryDataManager.CheckLevelPass(1, 10)
-                && !StoryDataManager.CheckLevelPass(1, 11))
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.MAIN_UI_BTN_ZHAI_XING;
-                ShowGuide(target, true, "点击返回主界面", 0);
-                return true;
-            }
-            return false;
-        }
-        public static bool TryGuideLuckyBox(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.MAIN_UI_BTN_ZHAI_XING) <= 0
-                && StoryDataManager.CheckLevelPass(1, 10)
-                && !StoryDataManager.CheckLevelPass(1, 11))
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.MAIN_UI_BTN_ZHAI_XING;
-                ShowGuide(target, false, "“摘星”里可以通过星辰的力量获得服饰");
-                return true;
-            }
-            return false;
-        }
-        public static bool TryGuideLuckyBoxStar()
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.MAIN_UI_BTN_ZHAI_XING) <= 0
-                && StoryDataManager.CheckLevelPass(1, 10)
-                && !StoryDataManager.CheckLevelPass(1, 11))
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.MAIN_UI_BTN_ZHAI_XING;
-                ShowGuide(null, false, "点击将星星链接在一起", 1400);
-                return true;
-            }
-            return false;
-        }
-        /*****************************************************引导自由换装保存套装*************************************************/
-
-        public static bool TryGuideDressUpViewMenuType1(GList list)
-        {
-
-            if (GuideDataManager.currentGuideId == ConstGuideId.MAIN_UI_BTN_HUAN_ZHUANG)
-            {
-                int len = list.numChildren;
-                list.ScrollToView(len - 1);
-                for (int i = 0; i < len; i++)
-                {
-                    UI_comListType item = UI_comListType.Proxy(list.GetChildAt(i));
-                    if (item != null)
-                    {
-                        int menuID = (int)item.target.data;
-                        DressUpMenuItemCfg1 dressUpMenuItemCfg1 = DressUpMenuItemCfg1Array.Instance.GetCfg(menuID);
-                        if (dressUpMenuItemCfg1.type == ConstDressUpItemType.TAO_ZHUANG)
-                        {
-                            ShowGuide(item.target, true, "套装分类里,可以查看集齐成套的服饰");
-                            return true;
-                        }
-                    }
-                }
-            }
-            return false;
-        }
-
-        public static void TryGuideDressUpViewMenuPart(GList list)
-        {
-
-            if (GuideDataManager.currentGuideId == ConstGuideId.MAIN_UI_BTN_HUAN_ZHUANG)
-            {
-                if (list.numChildren > 0)
-                {
-                    UI_PartsList listItem = UI_PartsList.Proxy(list.GetChildAt(0));
-                    if (listItem != null)
-                    {
-                        ShowGuide(listItem.target, true, "点击一键换上");
-                        return;
-                    }
-
-                }
-            }
-        }
-
-
-        /************************************************************引导合成套装*******************************************************/
-
-        public static void TryGuideStoryChapterView(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.SUIT_SYNTHETIC_GUIDE) <= 0
-                && StoryDataManager.CheckLevelPass(2, 1)
-                && !StoryDataManager.CheckLevelPass(2, 2)
-                && StoryDataManager.currentChapter == 2 && StoryDataManager.currentLevel <= 2)
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.SUIT_SYNTHETIC_GUIDE;
-                ShowGuide(target, false, "点击进行下一关");
-            }
-        }
-        public static void TryGuideStoryLevelInfoViewTxtNeed(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.SUIT_SYNTHETIC_GUIDE) <= 0
-                && StoryDataManager.CheckLevelPass(2, 1)
-                && !StoryDataManager.CheckLevelPass(2, 2)
-                && StoryDataManager.currentChapter == 2 && StoryDataManager.currentLevel <= 2)
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.SUIT_SYNTHETIC_GUIDE;
-                ShowGuide(target, false, "这次必需品,要通过合成获得", 0, true);
-            }
-        }
-        public static void TryGuideStoryLevelInfoView(GObject target)
+        public static bool IsGuide()
         {
 
-            if (GuideDataManager.GetGuideCount(ConstGuideId.SUIT_SYNTHETIC_GUIDE) <= 0
-                && StoryDataManager.CheckLevelPass(2, 1)
-                && !StoryDataManager.CheckLevelPass(2, 2)
-                && GuideDataManager.currentGuideId == ConstGuideId.SUIT_SYNTHETIC_GUIDE)
+            bool isAllGuideFinish = false;
+            for (int i = 0; i < GuideCfgArray.Instance.dataArray.Length; i++)
             {
-                ShowGuide(target, false, "点击空白处关闭", 1400);
-            }
-        }
-        public static void TryGuideStoryChapterViewBtnHome(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.SUIT_SYNTHETIC_GUIDE) <= 0
-                && StoryDataManager.CheckLevelPass(2, 1)
-                && !StoryDataManager.CheckLevelPass(2, 2))
-            {
-                ShowGuide(target, false, "先回到主界面", 0);
-            }
-        }
-        public static bool TryGuideMainUIViewBtnXiuFang(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.SUIT_SYNTHETIC_GUIDE) <= 0
-                && StoryDataManager.CheckLevelPass(2, 1)
-                && !StoryDataManager.CheckLevelPass(2, 2)
-            // && GuideDataManager.currentGuideId == ConstGuideId.SUIT_SYNTHETIC_GUIDE
-            )
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.SUIT_SYNTHETIC_GUIDE;
-                ShowGuide(target, false, "绣坊里增添了新功能", 0);
-                return true;
-            }
-            return false;
-
-        }
-        public static void TryGuideSuitSyntheticView(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.SUIT_SYNTHETIC_GUIDE) <= 0
-                && StoryDataManager.CheckLevelPass(2, 1)
-                && !StoryDataManager.CheckLevelPass(2, 2))
-            {
-                ShowGuide(target, false, "这里可以查看已获得的服饰图谱", 0);
-            }
-        }
-        public static void TryGuideSuitSyntheticViewList(GList list)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.SUIT_SYNTHETIC_GUIDE) <= 0
-                && StoryDataManager.CheckLevelPass(2, 1)
-                && !StoryDataManager.CheckLevelPass(2, 2))
-            {
-                if (list.numChildren > 0)
+                if (GuideDataManager.GetGuideCountCopy(GuideCfgArray.Instance.dataArray[i].key) <= 0)
                 {
-                    UI_SuitListItem listItem = UI_SuitListItem.Proxy(list.GetChildAt(0));
-                    if (listItem != null)
-                    {
-                        ShowGuide(listItem.target, true, "查看已解锁的图谱");
-                        return;
-                    }
-
-                }
-            }
-        }
-        public static void TryGuideClothingSyntheticViewSuitList(GList list)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.SUIT_SYNTHETIC_GUIDE) <= 0
-                && StoryDataManager.CheckLevelPass(2, 1)
-                && !StoryDataManager.CheckLevelPass(2, 2))
-            {
-                if (list.numChildren > 0)
-                {
-                    UI_MateriasListItem listItem = UI_MateriasListItem.Proxy(list.GetChildAt(0));
-                    if (listItem != null)
-                    {
-                        ShowGuide(listItem.m_loaderIcon, true, "找到需要合成的物品", 0, false);
-                        return;
-                    }
-
+                    isAllGuideFinish = false;
+                    break;
                 }
+                isAllGuideFinish = true;
             }
+            bool isGuide = GameGlobal.skipGuide == false && !isAllGuideFinish;
+            return isGuide;
         }
-        public static void TryGuideClothingSyntheticViewList(GList list)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.SUIT_SYNTHETIC_GUIDE) <= 0
-                && StoryDataManager.CheckLevelPass(2, 1)
-                && !StoryDataManager.CheckLevelPass(2, 2))
-            {
-                if (list.numChildren > 0)
-                {
-                    UI_MateriasListItem listItem = UI_MateriasListItem.Proxy(list.GetChildAt(0));
-                    if (listItem != null)
-                    {
-                        ShowGuide(listItem.m_loaderIcon, true, "这里可以查看合成需要的材料,和材料的获取途径", 0, false);
-                        return;
-                    }
-
-                }
-            }
-        }
-        public static void TryGuideClothingSyntheticViewBtnProduction(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.SUIT_SYNTHETIC_GUIDE) <= 0
-                && StoryDataManager.CheckLevelPass(2, 1)
-                && !StoryDataManager.CheckLevelPass(2, 2))
-            {
-
-                ShowGuide(target, true, "点击合成物品");
-
-            }
-        }
-        public static void TryGuideClothingSyntheticViewBtnHome(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.SUIT_SYNTHETIC_GUIDE) <= 0
-                && StoryDataManager.CheckLevelPass(2, 1)
-                && !StoryDataManager.CheckLevelPass(2, 2))
-            {
-                ShowGuide(target, true, "获得必需品啦,继续通关主线剧情吧");
-            }
-        }
-
-        /************************************************************引导使用卡牌战斗*******************************************************/
-        public static void TryGuideStoryCardChoose(GList list)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.USE_CARD_FIGHT) <= 0
-                && StoryDataManager.CheckLevelPass(2, 5)
-                && !StoryDataManager.CheckLevelPass(2, 6)
-                && StoryDataManager.currentChapter == 2 && StoryDataManager.currentLevel == 6)
-            {
-                if (list.numChildren > 0)
-                {
-                    UI_ListCardItem listItem = UI_ListCardItem.Proxy(list.GetChildAt(0));
-                    if (listItem != null)
-                    {
-                        GuideDataManager.currentGuideId = ConstGuideId.USE_CARD_FIGHT;
-                        ShowGuide(listItem.target, true, "选择一张合适的词牌,增加过关战斗力");
-                        return;
-                    }
-
-                }
-            }
-        }
-        public static void TryGuideStoryCardChooseBtnConfirm(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.USE_CARD_FIGHT) <= 0
-                && StoryDataManager.CheckLevelPass(2, 5)
-                && !StoryDataManager.CheckLevelPass(2, 6))
-            {
-
-                ShowGuide(target, true, "点击确定进行战斗");
-            }
-        }
-        /*****************************************************************提示标签**************************************************/
-        public static void TryGuideStoryLevelInfoListTag(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.TIPS_TAGS_FIGHT) <= 0
-                && StoryDataManager.CheckLevelPass(2, 7)
-                && !StoryDataManager.CheckLevelPass(2, 8))
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.TIPS_TAGS_FIGHT;
-                ShowGuide(target, true, "选择相应的关卡标签,可提高分数", 0, true);
-            }
-        }
-        /***********************************************************词牌升星********************************************************/
-        public static void TryGuideStoryLevelInfoBtnHome(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.CARD_UP_STAR) <= 0
-                && StoryDataManager.CheckLevelPass(2, 14)
-                && !StoryDataManager.CheckLevelPass(2, 15))
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.CARD_UP_STAR;
-                ShowGuide(target, true, "已经收集了足够的材料,可以给词牌升星了", 0, true);
-            }
-        }
-        public static void TryGuideMainUIViewBtnCiPai(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.CARD_UP_STAR) <= 0
-               && StoryDataManager.CheckLevelPass(2, 14)
-                && !StoryDataManager.CheckLevelPass(2, 15))
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.CARD_UP_STAR;
-                ShowGuide(target, true, "点击词牌", 0);
-            }
-        }
-
-        public static void TryGuideCardDetailViewList(GList list)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.CARD_UP_STAR) <= 0
-                  && StoryDataManager.CheckLevelPass(2, 14)
-                && !StoryDataManager.CheckLevelPass(2, 15))
-            {
-                if (list.numChildren > 0)
-                {
-                    UI.Card.UI_ListCardItem listItem = UI.Card.UI_ListCardItem.Proxy(list.GetChildAt(0));
-                    if (listItem != null)
-                    {
-                        GuideDataManager.currentGuideId = ConstGuideId.CARD_UP_STAR;
-                        ShowGuide(listItem.target, true, "选择可升星的词牌", 0);
-                        return;
-                    }
-
-                }
-
-            }
-        }
-        public static void TryGuideCardFosterViewBtnStar(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.CARD_UP_STAR) <= 0
-                && StoryDataManager.CheckLevelPass(2, 14)
-                && !StoryDataManager.CheckLevelPass(2, 15))
-            {
-
-                ShowGuide(target, true, "升满5星后,可解锁词牌的隐藏卡面哦", 0);
-            }
-        }
-        /***********************************************************引导拍照********************************************************/
-        // PHOTOGRAPH_GUIDE
-        public static bool TryGuideGoBackStoryChapter1(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.PHOTOGRAPH_GUIDE) <= 0
-                && StoryDataManager.CheckLevelPass(2, 4)
-                && !StoryDataManager.CheckLevelPass(2, 5))
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.PHOTOGRAPH_GUIDE;
-                ShowGuide(target, false, "拍照功能已开启,解锁更多搭配和玩法哦,点这里看看吧", 0);
-                return true;
-            }
-            return false;
-        }
-        public static bool TryGuideOpenDressUpView(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.PHOTOGRAPH_GUIDE) <= 0
-                && StoryDataManager.CheckLevelPass(2, 4)
-                && !StoryDataManager.CheckLevelPass(2, 5))
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.PHOTOGRAPH_GUIDE;
-                ShowGuide(target, false, "点击自由换装", 0);
-                return true;
-            }
-            return false;
-        }
-        public static bool TryGuideDressUpViewMenuType2(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.PHOTOGRAPH_GUIDE) <= 0
-               && StoryDataManager.CheckLevelPass(2, 4)
-               && !StoryDataManager.CheckLevelPass(2, 5))
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.PHOTOGRAPH_GUIDE;
-                ShowGuide(target, false, "点击拍照", 0);
-                return true;
-            }
-            return false;
-        }
-        public static void TryGuideDressUpViewMenuPart1(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.PHOTOGRAPH_GUIDE) <= 0
-                && StoryDataManager.CheckLevelPass(2, 4)
-                && !StoryDataManager.CheckLevelPass(2, 5))
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.PHOTOGRAPH_GUIDE;
-                ShowGuide(target, false, "可以自由添加已有道具", 0);
-            }
-        }
-        public static bool TryGuideBtnPhotograph(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.PHOTOGRAPH_GUIDE) <= 0
-                && StoryDataManager.CheckLevelPass(2, 4)
-                && !StoryDataManager.CheckLevelPass(2, 5))
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.PHOTOGRAPH_GUIDE;
-                ShowGuide(target, false, "点击空白处查看整体效果", 0);
-                return true;
-            }
-            return false;
-        }
-        public static bool TryGuideOpenPhotographView(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.PHOTOGRAPH_GUIDE) <= 0
-                && StoryDataManager.CheckLevelPass(2, 4)
-                && !StoryDataManager.CheckLevelPass(2, 5))
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.PHOTOGRAPH_GUIDE;
-                ShowGuide(target, false, "双指可控制放大缩小,或点击边框上的按键控制", 0);
-                return true;
-            }
-            return false;
-        }
-
-        public static bool TryGuideBtnSave(GObject target)
-        {
-
-            if (GuideDataManager.GetGuideCount(ConstGuideId.PHOTOGRAPH_GUIDE) <= 0
-                && StoryDataManager.CheckLevelPass(2, 4)
-                && !StoryDataManager.CheckLevelPass(2, 5))
-            {
-                GuideDataManager.currentGuideId = ConstGuideId.PHOTOGRAPH_GUIDE;
-                ShowGuide(target, false, "点击拍照,可以记录和分享美照啦~", 0);
-                return true;
-            }
-            return false;
-        }
-        /*********************************************************************************************************************************/
         public static bool useNewGuide = true;
         public static bool TryGuide(GObject target, string guideKey, int index, string guideStr = null, bool isList = false, int listIndex = 0, bool checkIndex = true, bool needUpdate = false, int yTxt = 0, float devWidth = 0, float devHeight = 0)
         {
@@ -694,6 +34,7 @@ namespace GFGGame
             GuideCfg cfg = GuideCfgArray.Instance.GetCfg(guideKey);
 
             if ((GuideDataManager.GetGuideCountCopy(guideKey) <= 0
+            && (cfg.priorId <= 0 || cfg.priorId > 0 && (GuideDataManager.GetGuideCountCopy(cfg.priorId) > 0))
             && (!checkIndex || checkIndex && GuideDataManager.IsGuideIndexFinish(cfg.id, index - 1) == true && GuideDataManager.IsGuideIndexFinish(cfg.id, index) == false)
             && (GuideDataManager.currentGuideId == 0 || GuideDataManager.currentGuideId == cfg.id && GuideDataManager.currentGuideIdIndex != index)
             && (StoryDataManager.currentChapter == 0 || StoryDataManager.CheckCurrentLevelPass() == false)
@@ -725,7 +66,7 @@ namespace GFGGame
                         return false;
                     }
                 }
-                ShowGuideIndex(target, needUpdate, guideStr, yTxt, cfg.optionalGuide == 1, devWidth, devHeight, GuideDataManager.currentGuideId, GuideDataManager.currentGuideIdIndex);
+                ShowGuideByIndex(target, needUpdate, guideStr, yTxt, cfg.optionalGuide == 1, devWidth, devHeight, GuideDataManager.currentGuideId, GuideDataManager.currentGuideIdIndex);
                 if (!checkIndex)
                 {
                     for (int i = 1; i < index; i++)
@@ -737,7 +78,7 @@ namespace GFGGame
             }
             return false;
         }
-        private static void ShowGuideIndex(GObject target, bool needUpdate = false, string guideStr = null, int yTxt = 0, bool isOptionalGuide = false, float devWidth = 0, float devHeight = 0, int guideId = 0, int index = 0)
+        private static void ShowGuideByIndex(GObject target, bool needUpdate = false, string guideStr = null, int yTxt = 0, bool isOptionalGuide = false, float devWidth = 0, float devHeight = 0, int guideId = 0, int index = 0)
         {
             HideGuideIndex();
             if (GameGlobal.skipGuide)
@@ -780,53 +121,5 @@ namespace GFGGame
 
             ViewManager.Hide(ViewName.GUIDE_VIEW);
         }
-        /************************************************************************************************************/
-
-        public static bool TryGuideByGuideId(GObject target, int guideId, int maxCount = 1, bool needUpdate = false, string guideStr = null, int yTxt = 0, int preGuideIdAtThisLogin = 0)
-        {
-            if (GuideController.useNewGuide) return false;
-
-            if (preGuideIdAtThisLogin > 0 && !GuideDataManager.CheckGuideIsCompletedAtThisLogin(preGuideIdAtThisLogin))
-            {
-                return false;
-            }
-            if (GuideDataManager.GetGuideCount(guideId) < maxCount)
-            {
-                GuideDataManager.currentGuideId = guideId;
-                ShowGuide(target, needUpdate, guideStr, yTxt);
-                return true;
-            }
-            return false;
-        }
-
-        public static bool TryCompleteGuide(int guideId)
-        {
-            if (useNewGuide) return false;
-            bool result = GuideDataManager.TryCompleteGuide(guideId);
-            if (result)
-            {
-                HideGuide();
-            }
-            return result;
-        }
-
-        public static void HideGuide()
-        {
-            if (useNewGuide) return;
-            ViewManager.Hide(ViewName.GUIDE_VIEW);
-        }
-
-        private static void ShowGuide(GObject target, bool needUpdate = false, string guideStr = null, int yTxt = 0, bool isOptionalGuide = false, float devWidth = 0, float devHeight = 0)
-        {
-            if (useNewGuide) return;
-
-            HideGuide();
-            if (GameGlobal.skipGuide)
-            {
-                return;
-            }
-            ViewManager.Show(ViewName.GUIDE_VIEW, new List<object> { target, needUpdate, guideStr, yTxt, isOptionalGuide, devWidth, devHeight
-});
-        }
     }
 }

+ 69 - 0
GameClient/Assets/Game/HotUpdate/Data/DecomposeDataManager.cs

@@ -0,0 +1,69 @@
+using System.Collections.Generic;
+
+namespace GFGGame
+{
+    public class DecomposeDataManager : SingletonBase<DecomposeDataManager>
+    {
+        Dictionary<int, List<int>> _decomposeData = new Dictionary<int, List<int>>();//所有数量大于1的换装部件数据
+        List<int> _rewardList = new List<int>();
+
+        public const int MaxCount = 10;
+        public void Clear()
+        {
+            _decomposeData.Clear();
+        }
+        public void Add(int itemId)
+        {
+            int rarity = ItemCfgArray.Instance.GetCfg(itemId).rarity;
+            if (!_decomposeData.ContainsKey(rarity))
+            {
+                _decomposeData.Add(rarity, new List<int>());
+            }
+
+            int count = ItemCanDecomposeCount(itemId);
+            if (_decomposeData[rarity].IndexOf(itemId) < 0 && count > 0)
+            {
+                _decomposeData[rarity].Add(itemId);
+            }
+        }
+        public void Remove(int itemId)
+        {
+            int rarity = ItemCfgArray.Instance.GetCfg(itemId).rarity;
+            int count = ItemCanDecomposeCount(itemId);
+
+            if (_decomposeData.ContainsKey(rarity) && _decomposeData[rarity].IndexOf(itemId) >= 0 && count <= 0)
+            {
+                _decomposeData[rarity].Remove(itemId);
+            }
+        }
+
+        public List<int> GetDecomposeDataByRarity(int rarity)
+        {
+            return _decomposeData[rarity];
+        }
+
+        public List<int> GetRewardList()
+        {
+            if (_rewardList.Count == 0)
+            {
+                DecomposeCfg[] cfgs = DecomposeCfgArray.Instance.dataArray;
+                for (int i = 0; i < cfgs.Length; i++)
+                {
+                    for (int j = 0; j < cfgs[i].itemsArr.Length; j++)
+                    {
+                        if (_rewardList.IndexOf(cfgs[i].itemsArr[j][0]) < 0)
+                        {
+                            _rewardList.Add(cfgs[i].itemsArr[j][0]);
+                        }
+                    }
+                }
+            }
+            return _rewardList;
+        }
+        //物品可分解的数量
+        public int ItemCanDecomposeCount(int itemId)
+        {
+            return ItemDataManager.GetItemNum(itemId) - 1;
+        }
+    }
+}

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

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

+ 37 - 32
GameClient/Assets/Game/HotUpdate/Data/GuideDataManager.cs

@@ -72,18 +72,6 @@ namespace GFGGame
             return false;
         }
 
-        public static int GetGuideCount(int guideId)
-        {
-            if (GuideController.useNewGuide) return 1;
-            if (_dataDic.ContainsKey(guideId))
-            {
-                GuideData guideData = _dataDic[guideId];
-                return guideData.count;
-            }
-            return 0;
-        }
-
-
 
         public static bool CheckGuideIsCompletedAtThisLogin(int guideId)
         {
@@ -108,15 +96,7 @@ namespace GFGGame
 
             }
         }
-        public static bool IsGuideIndexFinish(int guideId, int index)
-        {
-            if (index == 0) return true;
-            if (_guideDicIndex.ContainsKey(guideId) && _guideDicIndex[guideId].ContainsKey(index) && _guideDicIndex[guideId][index] == 1)
-            {
-                return true;
-            }
-            return false;
-        }
+
 
         public static void SetGuideIndex(int guideId, int index)
         {
@@ -127,6 +107,30 @@ namespace GFGGame
             if (_guideDicIndex[guideId].ContainsKey(index)) return;
             _guideDicIndex[guideId][index] = 0;
         }
+
+        public static int GetGuideCountCopy(string guideKey)
+        {
+            if (!GuideController.useNewGuide) return 1;
+
+            GuideCfg cfg = GuideCfgArray.Instance.GetCfg(guideKey);
+            if (_dataDic.ContainsKey(cfg.id))
+            {
+                GuideData guideData = _dataDic[cfg.id];
+                return guideData.count;
+            }
+            return 0;
+        }
+        public static int GetGuideCountCopy(int guideId)
+        {
+            if (!GuideController.useNewGuide) return 1;
+
+            if (_dataDic.ContainsKey(guideId))
+            {
+                GuideData guideData = _dataDic[guideId];
+                return guideData.count;
+            }
+            return 0;
+        }
         public static bool TryCompleteGuideIndex(int guideId, int index, bool checkInde = true)
         {
 
@@ -134,10 +138,7 @@ namespace GFGGame
             {
                 return false;
             }
-            if (currentGuideId > 0)
-            {
 
-            }
             if (!checkInde && guideId == currentGuideId || checkInde && guideId == currentGuideId && index == currentGuideIdIndex && !IsGuideIndexFinish(guideId, index))
             {
                 _guideDicIndex[guideId][index] = 1;
@@ -145,17 +146,12 @@ namespace GFGGame
             }
             return false;
         }
-        public static int GetGuideCountCopy(string guideKey)
+        public static void SetGuideIndexState(int guideId, int index, int state)
         {
-            if (!GuideController.useNewGuide) return 1;
-
-            GuideCfg cfg = GuideCfgArray.Instance.GetCfg(guideKey);
-            if (_dataDic.ContainsKey(cfg.id))
+            if (guideId == currentGuideId && index == currentGuideIdIndex && _guideDicIndex.ContainsKey(guideId) && _guideDicIndex[guideId].ContainsKey(index))
             {
-                GuideData guideData = _dataDic[cfg.id];
-                return guideData.count;
+                _guideDicIndex[guideId][index] = state;
             }
-            return 0;
         }
         public static bool CheckAllIndexFinish(int guideId, int count)
         {
@@ -165,5 +161,14 @@ namespace GFGGame
             }
             return true;
         }
+        public static bool IsGuideIndexFinish(int guideId, int index)
+        {
+            if (index == 0) return true;
+            if (_guideDicIndex.ContainsKey(guideId) && _guideDicIndex[guideId].ContainsKey(index) && _guideDicIndex[guideId][index] == 1)
+            {
+                return true;
+            }
+            return false;
+        }
     }
 }

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

@@ -63,6 +63,10 @@ namespace GFGGame
                 CardDataManager.Add(itemID);
             }
 
+            if (itemCfg.itemType == ConstItemType.DRESS_UP && !DressUpMenuItemDataManager.CheckIsSceneType(itemID))
+            {
+                DecomposeDataManager.Instance.Add(itemID);
+            }
             PhotographDataManager.Instance.Add(itemID);
             if (sendToServer)
             {
@@ -95,6 +99,7 @@ namespace GFGGame
             {
                 ItemData itemData = _dataDic[itemID];
                 itemData.num -= itemNum;
+
                 if (itemData.num <= 0)
                 {
                     itemData.num = 0;
@@ -104,8 +109,15 @@ namespace GFGGame
                     {
                         DressUpMenuItemDataManager.Remove(itemID);
                     }
+
                     PrepareUpdateToServer(itemData.id, itemData.num);
                 }
+
+                ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(itemID);
+                if (itemCfg.itemType == ConstItemType.DRESS_UP && !DressUpMenuItemDataManager.CheckIsSceneType(itemID))
+                {
+                    DecomposeDataManager.Instance.Remove(itemID);
+                }
                 EventAgent.DispatchEvent(ConstMessage.ITEM_CHANGED, itemID);
             }
         }

+ 35 - 38
GameClient/Assets/Game/HotUpdate/Data/PhotographDataManager.cs

@@ -122,67 +122,64 @@ namespace GFGGame
         {
             GObject obj = GRoot.inst.touchTarget;
             UI_PhotographUI _viewCom = UI_PhotographUI.Proxy(viewCom);
-            return _viewCom.m_comSelectBox.m_btnSize.GetChild("icon").asLoader == obj || _viewCom.m_comSelectBox.m_btnDelete.GetChild("icon").asLoader == obj || _viewCom.m_comSelectBox.m_btnFlip.GetChild("icon").asLoader == obj || _viewCom.m_btnBack == obj || _viewCom.m_btnChoose.GetChild("icon").asLoader == obj || _viewCom.m_btnPhotograph.GetChild("icon").asLoader == obj;
+            return _viewCom.m_comSelectBox.m_btnSize.GetChild("icon").asLoader == obj || _viewCom.m_comSelectBox.m_btnDelete.GetChild("icon").asLoader == obj || _viewCom.m_comSelectBox.m_btnFlip.GetChild("icon").asLoader == obj || _viewCom.m_btnBack == obj || _viewCom.m_btnChoose.GetChild("icon").asLoader == obj || _viewCom.m_btnPhotograph.GetChild("icon").asLoader == obj || _viewCom.m_btnUp.GetChild("icon").asLoader == obj || _viewCom.m_btnDown.GetChild("icon").asLoader == obj;
         }
 
-        //传入父物体,设置子物体层级
-        public void SetItemLayer(GameObject parentObj, int layer)
+
+        public void SetLayer(GameObject parentObj, int layer, string state)
         {
+            int count = 0;
+            if (state == "up")
+            {
+                count = layer - GetMinLayer(parentObj);
+            }
+            else if (state == "down")
+            {
+                count = layer - GetMaxLayer(parentObj);
+            }
 
+            int maxLayer = int.MinValue;
+            SpriteRenderer[] sps = parentObj.GetComponentsInChildren<SpriteRenderer>();
+            for (int i = 0; i < sps.Length; i++)
+            {
+                sps[i].sortingOrder = sps[i].sortingOrder + layer + count;
+                if (maxLayer < sps[i].sortingOrder)
+                {
+                    maxLayer = sps[i].sortingOrder;
+                }
+            }
             for (int i = 0; i < parentObj.transform.childCount; i++)
             {
                 Transform tf = parentObj.transform.GetChild(i);
                 string[] strs = tf.name.Split('_');
                 if (strs.Length > 1 && strs[1] == "eff")//子物体是特效
                 {
-                    DressUpUtil.SetParticleSortingOrder(tf.gameObject, layer, true);
+                    DressUpUtil.SetParticleSortingOrder(tf.gameObject, maxLayer);
                 }
             }
-            SpriteRenderer[] sps = parentObj.GetComponentsInChildren<SpriteRenderer>();
-            List<SpriteRenderer> listSp = new List<SpriteRenderer>(sps);
-            listSp = SortItemList(listSp);
-
-            for (int i = 0; i < listSp.Count; i++)
-            {
-                int sortingOrder = listSp[i].sortingOrder;
-                listSp[i].sortingOrder = layer + i;
-            }
         }
-        private static List<SpriteRenderer> SortItemList(List<SpriteRenderer> arrayList)
+        private int GetMaxLayer(GameObject parentObj)
         {
-
-            arrayList.Sort((SpriteRenderer a, SpriteRenderer b) =>
+            int layer = int.MinValue;
+            for (int i = 0; i < parentObj.transform.childCount; i++)
             {
-
-                int rarityA = a.sortingOrder;
-                int rarityB = b.sortingOrder;
-                if (rarityA < rarityB)
-                {
-                    return -1;
-                }
-                else if (rarityA > rarityB)
+                Transform tf = parentObj.transform.GetChild(i);
+                SpriteRenderer sp = tf.GetComponent<SpriteRenderer>();
+                if (sp && layer < sp.sortingOrder)
                 {
-                    return 1;
+                    layer = sp.sortingOrder;
                 }
-                return 0;
-            });
-            return arrayList;
-        }
-
-
-        public int GetMaxLayer(GameObject parentObj, int maxLayer)
-        {
-            int layer = GetLayer(parentObj);
-            return maxLayer < layer ? layer : maxLayer;
+            }
+            return layer;
         }
-        public int GetLayer(GameObject parentObj)
+        public int GetMinLayer(GameObject parentObj)
         {
-            int layer = int.MinValue;
+            int layer = int.MaxValue;
             for (int i = 0; i < parentObj.transform.childCount; i++)
             {
                 Transform tf = parentObj.transform.GetChild(i);
                 SpriteRenderer sp = tf.GetComponent<SpriteRenderer>();
-                if (sp && layer < sp.sortingOrder)
+                if (sp && sp.sortingOrder < layer)
                 {
                     layer = sp.sortingOrder;
                 }

+ 34 - 21
GameClient/Assets/Game/HotUpdate/Data/ScoreSystemData.cs

@@ -116,21 +116,20 @@ namespace GFGGame
         {
 
             //部件评分=部件基础分*部件系数
-            //点击评分=部件评分*点击系数
+            //点击评分=(部件基础分+(+人物基础分+卡牌属性分数)*点击系数)*2.22   (新点击公式,防止点击优秀却因为未穿衣服结果是0分)
             //卡牌评分=总属性*技能配表百分比
             double partScore = GetPartItemScore(partId);
-            double clickScore = ScoreSystemData.Instance.GetPartItemClickScore(mainScore, clickState);
+            double clickScore = ScoreSystemData.Instance.GetPartItemClickScore(partId, clickState);
 
-            // GetCardItemScore(mainScore, partId, out cardScore, out showCard);
             return (partScore + clickScore + skillScore);
         }
         public double GetPartItemScore(int partId)
         {
             return GetPartBaseScore(partId) * ConstScoreSystem.PART_SCORE;
         }
-        public double GetPartItemClickScore(double mainScore, int clickState)
+        public double GetPartItemClickScore(int partId, int clickState)
         {
-            //点击评分=部件评分*点击系数
+            //点击评分=(部件基础分+(+人物基础分+卡牌属性分数)*点击系数)*2.22
             double clickCoefficient = 0;
             switch (clickState)
             {
@@ -144,18 +143,29 @@ namespace GFGGame
                     clickCoefficient = ConstScoreSystem.PERFECT_SCORE;
                     break;
             }
-            double clickScore = mainScore * clickCoefficient;
+            int roleScore = RoleLevelCfgArray.Instance.GetCfg(RoleDataManager.lvl).baseScore;
+            int cardScore = DressUpMenuItemDataManager.GetItemScore(StoryDataManager.currentCardId);
+            double clickScore = (GetPartBaseScore(partId) + (cardScore + roleScore) * clickCoefficient) * ConstScoreSystem.CLICK_SCORE;
             return clickScore;
         }
         public void GetPartItemCardScore(double mainScore, int partId, out double skillScore, out bool showCard)
         {
             skillScore = 0;
             showCard = false;
-            PassivitySkillCfg[] cfgs = PassivitySkillCfgArray.Instance.GetCfgs(StoryDataManager.currentCardId);
-            for (int i = 0; i < cfgs.Length; i++)
+            if (StoryDataManager.currentCardId <= 0)
             {
-                if (cfgs.Length == 0) break;
-                PassivitySkillCfg cfg = cfgs[i];
+                return;
+            }
+            Dictionary<int, List<PassivitySkillCfg>> cfgs = SkillDataManager.Instance.dicPassivitySkill[StoryDataManager.currentCardId];
+
+
+            foreach (int key in cfgs.Keys)
+            {
+
+                if (cfgs.Count == 0) break;
+                SkillData skillData = SkillDataManager.Instance.GetSkillData(StoryDataManager.currentCardId, key);
+
+                PassivitySkillCfg cfg = cfgs[key][skillData.lv - 1];
                 if (partId == cfg.subTypes || cfg.subTypes == 0)
                 {
                     int isProbability = Random.Range(0, 100) < cfg.probability ? 1 : 0;
@@ -164,7 +174,7 @@ namespace GFGGame
                         //卡牌中包含主技能且此技能被触发,在评分阶段才展示卡牌效果,一张卡牌只要有一个技能需要显示,那就直接显示
                         showCard = true;
                     }
-                    Debug.Log(" i:" + i + "   cardScore:" + skillScore);
+                    // Debug.Log(" i:" + i + "   cardScore:" + skillScore);
                     skillScore += mainScore * cfg.count / 100 * isProbability;
                 }
             }
@@ -188,17 +198,18 @@ namespace GFGGame
         /// <returns></returns>
         public PassivitySkillCfg GetShowSkillCfg(int cardId)
         {
-            PassivitySkillCfg[] cfgs = PassivitySkillCfgArray.Instance.GetCfgs(cardId);
-            if (cfgs.Length == 0)
+            if (!SkillDataManager.Instance.dicPassivitySkill.ContainsKey(cardId))
             {
                 Debug.LogWarning(cardId + " 这张卡片没有配置技能");
                 return null;
             }
-            for (int i = 0; i < cfgs.Length; i++)
+            Dictionary<int, List<PassivitySkillCfg>> cfgs = SkillDataManager.Instance.dicPassivitySkill[cardId];
+            foreach (int key in cfgs.Keys)
             {
-                if (cfgs[i].showSkill == 1)
+                if (cfgs[key][0].showSkill == 1)
                 {
-                    return cfgs[i];
+                    SkillData skillData = SkillDataManager.Instance.GetSkillData(cardId, cfgs[key][0].skillId);
+                    return cfgs[key][skillData.lv - 1];
                 }
             }
             return null;
@@ -212,17 +223,19 @@ namespace GFGGame
         /// <returns></returns>
         public PassivitySkillCfg GetMainSkillCfg(int cardId)
         {
-            PassivitySkillCfg[] cfgs = PassivitySkillCfgArray.Instance.GetCfgs(cardId);
-            if (cfgs.Length == 0)
+            Dictionary<int, List<PassivitySkillCfg>> cfgs = SkillDataManager.Instance.dicPassivitySkill[cardId];
+
+            if (cfgs.Count == 0)
             {
                 Debug.LogWarning(cardId + " 这张卡片没有配置技能");
                 return null;
             }
-            for (int i = 0; i < cfgs.Length; i++)
+            foreach (int key in cfgs.Keys)
             {
-                if (cfgs[i].mainSkill == 1)
+                if (cfgs[key][0].mainSkill == 1)
                 {
-                    return cfgs[i];
+                    SkillData skillData = SkillDataManager.Instance.GetSkillData(cardId, key);
+                    return cfgs[key][skillData.lv - 1];
                 }
             }
             return null;

+ 31 - 26
GameClient/Assets/Game/HotUpdate/Data/SkillDataManager.cs

@@ -13,6 +13,7 @@ namespace GFGGame
         public const string SKILL_SHIELD = "shield";
 
         public Dictionary<int, Dictionary<int, SkillData>> skillData = new Dictionary<int, Dictionary<int, SkillData>>();
+        public Dictionary<int, Dictionary<int, List<PassivitySkillCfg>>> dicPassivitySkill = new Dictionary<int, Dictionary<int, List<PassivitySkillCfg>>>();
 
         public void Clear()
         {
@@ -29,14 +30,30 @@ namespace GFGGame
                     {
                         this.skillData[skillData.cardId] = new Dictionary<int, SkillData>();
                     }
-                    // if(!this.skillData[skillData.cardId].ContainsKey(skillData.skillId)){
 
-                    // }this.skillData[skillData.cardId][skillData.skillId]=
                     this.skillData[skillData.cardId][skillData.skillId] = skillData;
                 }
             }
         }
+        public void SetDicPassivitySkillCfg()
+        {
+            if (dicPassivitySkill.Count > 0) return;
+            PassivitySkillCfg[] dataArray = PassivitySkillCfgArray.Instance.dataArray;
+            for (int i = 0; i < dataArray.Length; i++)
+            {
+                if (!dicPassivitySkill.ContainsKey(dataArray[i].cardId))
+                {
+                    dicPassivitySkill[dataArray[i].cardId] = new Dictionary<int, List<PassivitySkillCfg>>();
+                }
+                PassivitySkillCfg passivitySkillCfgs = dataArray[i];
 
+                if (!dicPassivitySkill[passivitySkillCfgs.cardId].ContainsKey(passivitySkillCfgs.skillId))
+                {
+                    dicPassivitySkill[passivitySkillCfgs.cardId][passivitySkillCfgs.skillId] = new List<PassivitySkillCfg>();
+                }
+                dicPassivitySkill[passivitySkillCfgs.cardId][passivitySkillCfgs.skillId].Add(passivitySkillCfgs);
+            }
+        }
         public void UpSkill(int cardId, int skillId)
         {
             if (!this.skillData.ContainsKey(cardId))
@@ -70,38 +87,26 @@ namespace GFGGame
             return npcSkillDic;
         }
 
-        public CardSkillCfg GetCardSkillCfg(int cardId, int skillId)
+        public SkillData GetSkillData(int cardId, int skillId)
         {
-            CardSkillCfg[] cardSkillCfgs = CardSkillCfgArray.Instance.GetCfgs(cardId);
-            CardSkillCfg cardSkillCfg = null;
-            for (int i = 0; i < cardSkillCfgs.Length; i++)
+            SkillData skillData;
+            if (SkillDataManager.Instance.skillData.ContainsKey(cardId) && SkillDataManager.Instance.skillData[cardId].ContainsKey(skillId))
             {
-                if (cardSkillCfgs[i].skillId == skillId)
-                {
-                    cardSkillCfg = cardSkillCfgs[i];
-                }
+                skillData = SkillDataManager.Instance.skillData[cardId][skillId];
             }
-            return cardSkillCfg;
-        }
-
-        public PassivitySkillCfg GetPassivitySkillCfg(int cardId, int skillId)
-        {
-            PassivitySkillCfg[] passivitySkillCfgs = PassivitySkillCfgArray.Instance.GetCfgs(cardId);
-            PassivitySkillCfg passivitySkillCfg = null;
-            for (int i = 0; i < passivitySkillCfgs.Length; i++)
+            else
             {
-                if (passivitySkillCfgs[i].skillId == skillId)
-                {
-                    passivitySkillCfg = passivitySkillCfgs[i];
-                }
+                skillData = new SkillData();
+                skillData.cardId = cardId;
+                skillData.skillId = skillId;
+                skillData.lv = 1;
             }
-            return passivitySkillCfg;
+            return skillData;
         }
 
-        public SkillData GetSkillData(int cardId, int skillId)
+        public PassivitySkillCfg GetPassivitySkillCfg(int cardId, int skillId, int lv)
         {
-            SkillData skillData = SkillDataManager.Instance.skillData.ContainsKey(cardId) && SkillDataManager.Instance.skillData[cardId].ContainsKey(skillId) ? SkillDataManager.Instance.skillData[cardId][skillId] : null;
-            return skillData;
+            return dicPassivitySkill[cardId][skillId][lv - 1];
         }
     }
 }

+ 3 - 3
GameClient/Assets/Game/HotUpdate/Data/StoryDataManager.cs

@@ -7,12 +7,12 @@ namespace GFGGame
 {
     public class StoryDataManager
     {
-
+        public static string priorId = "prior";//首次登录前置剧情id
         public static int currentChapter = 0;
         public static int currentLevel = 0;
         public static string currentLevelID;
         public static int currentScoreType;
-        public static int currentCardId;
+        public static int currentCardId = 0;
         public static bool usedRecommend;
         public static int _passChapter = 0;
         public static int _passLevel = 0;
@@ -202,7 +202,7 @@ namespace GFGGame
 
         public static bool CheckOpenMainUI()
         {
-            return CheckLevelPass(1, 4) && GuideDataManager.GetGuideCount(ConstGuideId.SINGLE_FIGHT_GUIDE) > 0;
+            return CheckLevelPass(1, 4) && GuideDataManager.GetGuideCountCopy(ConstGuideId.SINGLE_FIGHT) > 0;
         }
 
         //检查指定章节对应的普通章节是否通关

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

@@ -235,8 +235,8 @@ namespace GFGGame
                     size = GetGameObjectSize1(parentObj);
                     if (parentObj.name == "Role") boxCollider2D.size = size;
                     boxCollider2D.offset = -childGameObj.transform.localPosition;
-
-                    size = size * childGameObj.transform.localScale * parentObj.transform.localScale * 100;
+                    //* childGameObj.transform.localScale
+                    size = size * parentObj.transform.localScale * 100;
                     return size;
                 }
             }

+ 8 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 88d136b6f7e43c7448215b86cc13bd13
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 80 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ClothingDecomposeRuleUI.cs

@@ -0,0 +1,80 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.ClothingDecompose
+{
+    public partial class UI_ClothingDecomposeRuleUI
+    {
+        public GComponent target;
+        public GLoader m_loaBg;
+        public GTextField m_txtTitle;
+        public GTextField m_txtRule;
+        public GList m_listReward;
+        public const string URL = "ui://h9mv1l71qyr6b";
+        public const string PACKAGE_NAME = "ClothingDecompose";
+        public const string RES_NAME = "ClothingDecomposeRuleUI";
+        private static UI_ClothingDecomposeRuleUI _proxy;
+
+        public static UI_ClothingDecomposeRuleUI Create(GObject gObject = null)
+        {
+            var ui = new UI_ClothingDecomposeRuleUI();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_ClothingDecomposeRuleUI Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ClothingDecomposeRuleUI();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_loaBg = (GLoader)comp.GetChild("loaBg");
+            m_txtTitle = (GTextField)comp.GetChild("txtTitle");
+            m_txtRule = (GTextField)comp.GetChild("txtRule");
+            m_listReward = (GList)comp.GetChild("listReward");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_loaBg = null;
+            m_txtTitle = null;
+            m_txtRule = null;
+            m_listReward = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ClothingDecomposeRuleUI.cs.meta

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

+ 111 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ClothingDecomposeUI.cs

@@ -0,0 +1,111 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.ClothingDecompose
+{
+    public partial class UI_ClothingDecomposeUI
+    {
+        public GComponent target;
+        public Controller m_c1;
+        public GImage m_bg;
+        public GComponent m_valueBar;
+        public GButton m_btnBack;
+        public GButton m_btnRule;
+        public UI_ComBtnTab m_comBtnTab;
+        public GList m_list;
+        public GTextField m_txtNone;
+        public GTextField m_txtShow;
+        public GList m_listReward;
+        public GButton m_btnDecompose;
+        public GTextField m_txtConsume;
+        public GTextField m_txtTips;
+        public GButton m_btnSelect;
+        public const string URL = "ui://h9mv1l71wlc20";
+        public const string PACKAGE_NAME = "ClothingDecompose";
+        public const string RES_NAME = "ClothingDecomposeUI";
+        private static UI_ClothingDecomposeUI _proxy;
+
+        public static UI_ClothingDecomposeUI Create(GObject gObject = null)
+        {
+            var ui = new UI_ClothingDecomposeUI();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_ClothingDecomposeUI Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ClothingDecomposeUI();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_c1 = comp.GetController("c1");
+            m_bg = (GImage)comp.GetChild("bg");
+            m_valueBar = (GComponent)comp.GetChild("valueBar");
+            m_btnBack = (GButton)comp.GetChild("btnBack");
+            m_btnRule = (GButton)comp.GetChild("btnRule");
+            m_comBtnTab = (UI_ComBtnTab)UI_ComBtnTab.Create(comp.GetChild("comBtnTab"));
+            m_list = (GList)comp.GetChild("list");
+            m_txtNone = (GTextField)comp.GetChild("txtNone");
+            m_txtShow = (GTextField)comp.GetChild("txtShow");
+            m_listReward = (GList)comp.GetChild("listReward");
+            m_btnDecompose = (GButton)comp.GetChild("btnDecompose");
+            m_txtConsume = (GTextField)comp.GetChild("txtConsume");
+            m_txtTips = (GTextField)comp.GetChild("txtTips");
+            m_btnSelect = (GButton)comp.GetChild("btnSelect");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_c1 = null;
+            m_bg = null;
+            m_valueBar = null;
+            m_btnBack = null;
+            m_btnRule = null;
+            m_comBtnTab.Dispose();
+            m_comBtnTab = null;
+            m_list = null;
+            m_txtNone = null;
+            m_txtShow = null;
+            m_listReward = null;
+            m_btnDecompose = null;
+            m_txtConsume = null;
+            m_txtTips = null;
+            m_btnSelect = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ClothingDecomposeUI.cs.meta

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

+ 83 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ComBtnTab.cs

@@ -0,0 +1,83 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.ClothingDecompose
+{
+    public partial class UI_ComBtnTab
+    {
+        public GComponent target;
+        public Controller m_c1;
+        public GButton m_btnRarity0;
+        public GButton m_btnRarity1;
+        public GButton m_btnRarity2;
+        public GButton m_btnRarity3;
+        public const string URL = "ui://h9mv1l71qyr6v";
+        public const string PACKAGE_NAME = "ClothingDecompose";
+        public const string RES_NAME = "ComBtnTab";
+        private static UI_ComBtnTab _proxy;
+
+        public static UI_ComBtnTab Create(GObject gObject = null)
+        {
+            var ui = new UI_ComBtnTab();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_ComBtnTab Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ComBtnTab();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_c1 = comp.GetController("c1");
+            m_btnRarity0 = (GButton)comp.GetChild("btnRarity0");
+            m_btnRarity1 = (GButton)comp.GetChild("btnRarity1");
+            m_btnRarity2 = (GButton)comp.GetChild("btnRarity2");
+            m_btnRarity3 = (GButton)comp.GetChild("btnRarity3");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_c1 = null;
+            m_btnRarity0 = null;
+            m_btnRarity1 = null;
+            m_btnRarity2 = null;
+            m_btnRarity3 = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ComBtnTab.cs.meta

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

+ 95 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ListItem.cs

@@ -0,0 +1,95 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.ClothingDecompose
+{
+    public partial class UI_ListItem
+    {
+        public GComponent target;
+        public Controller m_button;
+        public GImage m_imgSelect;
+        public GLoader m_loaItem;
+        public GLoader m_loaIcon;
+        public GLoader m_loaRarity;
+        public GTextField m_txtName;
+        public GTextField m_txtCount;
+        public GTextField m_txtHasCount;
+        public GButton m_btnMinus;
+        public const string URL = "ui://h9mv1l71hvn0a";
+        public const string PACKAGE_NAME = "ClothingDecompose";
+        public const string RES_NAME = "ListItem";
+        private static UI_ListItem _proxy;
+
+        public static UI_ListItem Create(GObject gObject = null)
+        {
+            var ui = new UI_ListItem();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_ListItem Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ListItem();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_button = comp.GetController("button");
+            m_imgSelect = (GImage)comp.GetChild("imgSelect");
+            m_loaItem = (GLoader)comp.GetChild("loaItem");
+            m_loaIcon = (GLoader)comp.GetChild("loaIcon");
+            m_loaRarity = (GLoader)comp.GetChild("loaRarity");
+            m_txtName = (GTextField)comp.GetChild("txtName");
+            m_txtCount = (GTextField)comp.GetChild("txtCount");
+            m_txtHasCount = (GTextField)comp.GetChild("txtHasCount");
+            m_btnMinus = (GButton)comp.GetChild("btnMinus");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_button = null;
+            m_imgSelect = null;
+            m_loaItem = null;
+            m_loaIcon = null;
+            m_loaRarity = null;
+            m_txtName = null;
+            m_txtCount = null;
+            m_txtHasCount = null;
+            m_btnMinus = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ListItem.cs.meta

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

+ 77 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ListRewardItem.cs

@@ -0,0 +1,77 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.ClothingDecompose
+{
+    public partial class UI_ListRewardItem
+    {
+        public GComponent target;
+        public GTextField m_txtName;
+        public GLoader m_loaIcon;
+        public GTextField m_txtCount;
+        public const string URL = "ui://h9mv1l71wlc24";
+        public const string PACKAGE_NAME = "ClothingDecompose";
+        public const string RES_NAME = "ListRewardItem";
+        private static UI_ListRewardItem _proxy;
+
+        public static UI_ListRewardItem Create(GObject gObject = null)
+        {
+            var ui = new UI_ListRewardItem();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_ListRewardItem Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ListRewardItem();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_txtName = (GTextField)comp.GetChild("txtName");
+            m_loaIcon = (GLoader)comp.GetChild("loaIcon");
+            m_txtCount = (GTextField)comp.GetChild("txtCount");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_txtName = null;
+            m_loaIcon = null;
+            m_txtCount = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ListRewardItem.cs.meta

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

+ 10 - 4
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/DressUp/UI_PhotographUI.cs

@@ -12,9 +12,11 @@ namespace UI.DressUp
         public GLoader m_loaGuide1;
         public UI_ComChecked m_comSelectBox;
         public GButton m_btnBack;
+        public UI_ComSelect m_ComSelectRes;
         public GButton m_btnPhotograph;
         public GButton m_btnChoose;
-        public UI_ComSelect m_ComSelectRes;
+        public GButton m_btnUp;
+        public GButton m_btnDown;
         public const string URL = "ui://mbo439wbbe944a";
         public const string PACKAGE_NAME = "DressUp";
         public const string RES_NAME = "PhotographUI";
@@ -67,9 +69,11 @@ namespace UI.DressUp
             m_loaGuide1 = (GLoader)comp.GetChild("loaGuide1");
             m_comSelectBox = (UI_ComChecked)UI_ComChecked.Create(comp.GetChild("comSelectBox"));
             m_btnBack = (GButton)comp.GetChild("btnBack");
+            m_ComSelectRes = (UI_ComSelect)UI_ComSelect.Create(comp.GetChild("ComSelectRes"));
             m_btnPhotograph = (GButton)comp.GetChild("btnPhotograph");
             m_btnChoose = (GButton)comp.GetChild("btnChoose");
-            m_ComSelectRes = (UI_ComSelect)UI_ComSelect.Create(comp.GetChild("ComSelectRes"));
+            m_btnUp = (GButton)comp.GetChild("btnUp");
+            m_btnDown = (GButton)comp.GetChild("btnDown");
         }
         public void Dispose(bool disposeTarget = false)
         {
@@ -79,10 +83,12 @@ namespace UI.DressUp
             m_comSelectBox.Dispose();
             m_comSelectBox = null;
             m_btnBack = null;
-            m_btnPhotograph = null;
-            m_btnChoose = null;
             m_ComSelectRes.Dispose();
             m_ComSelectRes = null;
+            m_btnPhotograph = null;
+            m_btnChoose = null;
+            m_btnUp = null;
+            m_btnDown = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 6 - 3
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_StoryDialogUI.cs

@@ -7,16 +7,17 @@ namespace UI.Main
     public partial class UI_StoryDialogUI
     {
         public GComponent target;
+        public Controller m_c1;
         public GGraph m_btnNext;
         public UI_CompDialogText m_dialogText;
         public UI_CompDialogName m_dialogName;
         public UI_CompDialogHead m_dialogHead;
         public GList m_list;
+        public GButton m_btnBack;
         public GButton m_btnLookBack;
         public GButton m_btnAutoPlay;
         public GButton m_btnSkip;
         public GButton m_btnSpeedUp;
-        public GButton m_btnBack;
         public const string URL = "ui://mfvz4q8kxuzk2i";
         public const string PACKAGE_NAME = "Main";
         public const string RES_NAME = "StoryDialogUI";
@@ -64,19 +65,21 @@ namespace UI.Main
 
         private void Init(GComponent comp)
         {
+            m_c1 = comp.GetController("c1");
             m_btnNext = (GGraph)comp.GetChild("btnNext");
             m_dialogText = (UI_CompDialogText)UI_CompDialogText.Create(comp.GetChild("dialogText"));
             m_dialogName = (UI_CompDialogName)UI_CompDialogName.Create(comp.GetChild("dialogName"));
             m_dialogHead = (UI_CompDialogHead)UI_CompDialogHead.Create(comp.GetChild("dialogHead"));
             m_list = (GList)comp.GetChild("list");
+            m_btnBack = (GButton)comp.GetChild("btnBack");
             m_btnLookBack = (GButton)comp.GetChild("btnLookBack");
             m_btnAutoPlay = (GButton)comp.GetChild("btnAutoPlay");
             m_btnSkip = (GButton)comp.GetChild("btnSkip");
             m_btnSpeedUp = (GButton)comp.GetChild("btnSpeedUp");
-            m_btnBack = (GButton)comp.GetChild("btnBack");
         }
         public void Dispose(bool disposeTarget = false)
         {
+            m_c1 = null;
             m_btnNext = null;
             m_dialogText.Dispose();
             m_dialogText = null;
@@ -85,11 +88,11 @@ namespace UI.Main
             m_dialogHead.Dispose();
             m_dialogHead = null;
             m_list = null;
+            m_btnBack = null;
             m_btnLookBack = null;
             m_btnAutoPlay = null;
             m_btnSkip = null;
             m_btnSpeedUp = null;
-            m_btnBack = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 80 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/XiuFang/UI_Component.cs

@@ -0,0 +1,80 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.XiuFang
+{
+    public partial class UI_Component
+    {
+        public GComponent target;
+        public GLoader m_btnClothingShop;
+        public GLoader m_btnClothingUpgrade;
+        public GLoader m_btnSuitSynthetic;
+        public GLoader m_btnDecompose;
+        public const string URL = "ui://kv0ad4wywlc28";
+        public const string PACKAGE_NAME = "XiuFang";
+        public const string RES_NAME = "Component";
+        private static UI_Component _proxy;
+
+        public static UI_Component Create(GObject gObject = null)
+        {
+            var ui = new UI_Component();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_Component Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_Component();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_btnClothingShop = (GLoader)comp.GetChild("btnClothingShop");
+            m_btnClothingUpgrade = (GLoader)comp.GetChild("btnClothingUpgrade");
+            m_btnSuitSynthetic = (GLoader)comp.GetChild("btnSuitSynthetic");
+            m_btnDecompose = (GLoader)comp.GetChild("btnDecompose");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_btnClothingShop = null;
+            m_btnClothingUpgrade = null;
+            m_btnSuitSynthetic = null;
+            m_btnDecompose = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/XiuFang/UI_Component.cs.meta

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

+ 4 - 9
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/XiuFang/UI_XiuFangUI.cs

@@ -9,9 +9,7 @@ namespace UI.XiuFang
         public GComponent target;
         public GLoader m_bg;
         public GButton m_btnBack;
-        public GLoader m_btnClothingShop;
-        public GLoader m_btnClothingUpgrade;
-        public GLoader m_btnSuitSynthetic;
+        public UI_Component m_component;
         public const string URL = "ui://kv0ad4wy9xlo0";
         public const string PACKAGE_NAME = "XiuFang";
         public const string RES_NAME = "XiuFangUI";
@@ -61,17 +59,14 @@ namespace UI.XiuFang
         {
             m_bg = (GLoader)comp.GetChild("bg");
             m_btnBack = (GButton)comp.GetChild("btnBack");
-            m_btnClothingShop = (GLoader)comp.GetChild("btnClothingShop");
-            m_btnClothingUpgrade = (GLoader)comp.GetChild("btnClothingUpgrade");
-            m_btnSuitSynthetic = (GLoader)comp.GetChild("btnSuitSynthetic");
+            m_component = (UI_Component)UI_Component.Create(comp.GetChild("component"));
         }
         public void Dispose(bool disposeTarget = false)
         {
             m_bg = null;
             m_btnBack = null;
-            m_btnClothingShop = null;
-            m_btnClothingUpgrade = null;
-            m_btnSuitSynthetic = null;
+            m_component.Dispose();
+            m_component = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 3 - 0
GameClient/Assets/Game/HotUpdate/GameGlobal.cs

@@ -9,6 +9,8 @@ namespace GFGGame
     public class GameGlobal
     {
         public static bool isVisitor = false;
+        public static bool isFirstEntry = false;
+
         //防沉迷开关
         public static bool antiAddiction = true;
         public static long userId = 0;
@@ -48,6 +50,7 @@ namespace GFGGame
             if (comHolder == null)
             {
                 comHolder = UI_ComHolder.Create();
+                comHolder.target.touchable = false;
                 ViewManager.AddChildToTopLayer(comHolder.target);
 
                 string resPath = ResPathUtil.GetViewEffectPath("ui_dj", "ui_dj");

+ 1 - 0
GameClient/Assets/Game/HotUpdate/Net/Entity/GameResult.cs

@@ -12,6 +12,7 @@ namespace GFGGame
         public List<GuideData> roleGuideList;
         public List<SystemSuit> systemSuitList;
         public List<RoleCard> roleCardList;
+        public List<SkillData> roleSkillList;
     }
 
     public class RoleInfo

+ 1 - 0
GameClient/Assets/Game/HotUpdate/Net/Proxy/GameProxy.cs

@@ -36,6 +36,7 @@ namespace GFGGame
                 if (result == null || result.code == 0)
                 {
                     ViewManager.Hide(ViewName.CREATE_ROLE_VIEW);
+                    GameGlobal.isFirstEntry = true;
                     GameController.PreEnterGame(result);
                     if (GameGlobal.skipGuide)
                     {

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

@@ -54,8 +54,7 @@ namespace GFGGame
             _ui.m_listRole.selectedIndex = this._selectType;
             _ui.m_listRole.numItems = listRoleCount;
             this.UpdateCardList(_ui.m_listRole.selectedIndex);
-            GuideController.TryGuideCardDetailViewList(_ui.m_listCard);
-            Timers.inst.AddUpdate(UpdateToCheckGuide);
+
         }
         private void UpdateCardList(int rarity = 0)
         {
@@ -132,7 +131,6 @@ namespace GFGGame
 
         private void OnClickBtnHome()
         {
-            GuideController.TryCompleteGuide(ConstGuideId.SUIT_SYNTHETIC_GUIDE);
             GameController.GoBackToMainView();
             this.Clear();
 
@@ -149,9 +147,8 @@ namespace GFGGame
         protected override void OnHide()
         {
             base.OnHide();
-            Timers.inst.Remove(UpdateToCheckGuide);
         }
-        private void UpdateToCheckGuide(object param)
+        protected override void UpdateToCheckGuide(object param)
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
 

+ 35 - 22
GameClient/Assets/Game/HotUpdate/Views/Card/CardFosterView.cs

@@ -5,6 +5,8 @@ using UI_ComConsume = UI.Card.UI_ComConsume;
 using System.Collections.Generic;
 using UnityEngine;
 using System.Timers;
+using System.Collections;
+using System.Linq;
 
 namespace GFGGame
 {
@@ -87,7 +89,8 @@ namespace GFGGame
                 _ui.m_t1.Play();
             });
 
-            EventAgent.AddEventListener(ConstMessage.CARD_UP_SKILL, UpSkill);
+            EventAgent.AddEventListener(ConstMessage.CARD_UP_SKILL, UpdateUpSkillView);
+            EventAgent.AddEventListener(ConstMessage.ITEM_CHANGED, OnItemChangeListener);
 
         }
 
@@ -103,9 +106,6 @@ namespace GFGGame
             this.UpdateCardRes();
             this.UpdateUpLvView();
             _comFosterBottom.m_ctrlTab.selectedIndex = this._selectTab;
-            EventAgent.AddEventListener(ConstMessage.MONEY_CHANGE, UpdateUpStarView);
-            GuideController.TryGuideCardFosterViewBtnStar(_ui.m_ComFosterBottom.m_btnStar);
-            Timers.inst.AddUpdate(UpdateToCheckGuide);
         }
 
         private void UpdateNormal()
@@ -577,28 +577,29 @@ namespace GFGGame
 
         private void UpdateUpSkillView()
         {
-            PassivitySkillCfg[] skillScores = PassivitySkillCfgArray.Instance.GetCfgs(_viewData.id);
-            _comFosterBottom.m_listSkill.numItems = skillScores.Length;
-
+            if (_comFosterBottom.m_listSkill.data == null)
+            {
+                _comFosterBottom.m_listSkill.data = new List<int>(SkillDataManager.Instance.dicPassivitySkill[_viewData.id].Keys);
+            }
+            _comFosterBottom.m_listSkill.numItems = SkillDataManager.Instance.dicPassivitySkill[_viewData.id].Keys.Count;
         }
 
         private void RenderListSkilItem(int index, GObject obj)
         {
             UI_ListSkillItem item = UI_ListSkillItem.Proxy(obj);
-            PassivitySkillCfg skillScoreCfg = PassivitySkillCfgArray.Instance.GetCfgs(_viewData.id)[index];
-            item.m_txtName.text = skillScoreCfg.name;
-
-            CardSkillCfg[] skillCfgs = CardSkillCfgArray.Instance.GetCfgs(skillScoreCfg.skillId);
-            SkillData skillData = SkillDataManager.Instance.skillData.ContainsKey(skillScoreCfg.id) && SkillDataManager.Instance.skillData[skillScoreCfg.skillId].ContainsKey(skillScoreCfg.skillId) ? SkillDataManager.Instance.skillData[skillScoreCfg.id][skillScoreCfg.skillId] : null;
-            int lv = skillData == null ? 1 : skillData.lv;
-            item.m_txtLv.text = string.Format("{0}级", lv);
-            item.m_btnUp.visible = lv == skillCfgs.Length ? false : true;
+
+            int skillId = (_comFosterBottom.m_listSkill.data as List<int>)[index];
+            SkillData skillData = SkillDataManager.Instance.GetSkillData(_viewData.id, skillId);
+            List<PassivitySkillCfg> skillScoreCfgs = SkillDataManager.Instance.dicPassivitySkill[_viewData.id][skillId];
+            item.m_comSkill.m_loaSkill.url = ResPathUtil.GetCardSmallPath(skillScoreCfgs[0].res);
+            item.m_txtName.text = skillScoreCfgs[0].name;
+            item.m_txtLv.text = string.Format("{0}级", skillData.lv);
+            item.m_btnUp.visible = skillData.lv == skillScoreCfgs.Count ? false : true;
             if (item.m_btnUp.data == null)
             {
-                // item.m_btnUp.data = skillScoreCfg;
                 item.m_btnUp.onClick.Add(() =>
                 {
-                    ViewManager.Show<CardSkillView>(new object[] { skillScoreCfg.id, skillScoreCfg.skillId });
+                    ViewManager.Show<CardSkillView>(new object[] { _viewData.id, skillId });
                 });
             }
         }
@@ -612,7 +613,7 @@ namespace GFGGame
 
             _ui.m_t0.Play(() =>
             {
-                ViewManager.Show(ViewName.CARD_SHOW_VIEW, _viewData);
+                ViewManager.Show(ViewName.CARD_SHOW_VIEW, _viewData, new object[] { ViewName.CARD_FOSTER_VIEW, this.viewData });
 
             });
         }
@@ -658,14 +659,26 @@ namespace GFGGame
             else if (_comFosterBottom.m_ctrlTab.selectedIndex == 1)
             {
                 this.UpdateUpStarView();
-                GuideController.HideGuide();
-                GuideController.TryCompleteGuide(ConstGuideId.CARD_UP_STAR);
             }
             else
             {
                 this.UpdateUpSkillView();
             }
         }
+        private void OnItemChangeListener()
+        {
+            if (!CardDataManager.isFullLv(_viewData.id, _viewData.lv, false))
+            {
+                CardLvlCfg cardLvCfg = CardCfgManager.GetCardLvCfgByRarityAndLv(_viewData.itemCfg.rarity, _showLv);
+                _comFosterBottom.m_listLvConsume.numItems = cardLvCfg.materiarsArr.Length;
+            }
+            if (!CardDataManager.isFullStar(_viewData.id, _viewData.star, false))
+            {
+                CardStarCfg cardStarCfg = CardCfgManager.GetCardStarCfgByTypeAndRarityAndStar(_viewData.itemCfg.subType, _viewData.itemCfg.rarity, _viewData.star);
+                _comFosterBottom.m_listStarConsume.numItems = cardStarCfg.materiarsArr.Length;
+
+            }
+        }
         private void OnClickBtnBack()
         {
             ViewManager.GoBackFrom(ViewName.CARD_FOSTER_VIEW);
@@ -675,13 +688,13 @@ namespace GFGGame
         {
             base.OnHide();
             EventAgent.RemoveEventListener(ConstMessage.MONEY_CHANGE, UpdateUpStarView);
+            EventAgent.RemoveEventListener(ConstMessage.ITEM_CHANGED, OnItemChangeListener);
             Timers.inst.Remove(OnTimedEvent);
 
             //_timer.Stop();
             _comFosterBottom.m_listLvConsume.numItems = 0;
-            Timers.inst.Remove(UpdateToCheckGuide);
         }
-        private void UpdateToCheckGuide(object param)
+        protected override void UpdateToCheckGuide(object param)
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
             GuideController.TryGuide(_ui.m_ComFosterBottom.m_btnStar, ConstGuideId.UP_CARD_STAR, 4, "选择升星");

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

@@ -9,7 +9,6 @@ namespace GFGGame
         private int _cardId;
         private int _skillId;
 
-        private CardSkillCfg cardSkillCfg;
         private PassivitySkillCfg passivitySkillCfg;
         public override void Dispose()
         {
@@ -25,6 +24,7 @@ namespace GFGGame
             this.modal = true;
             viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
 
+            _ui.m_btnUpLv.onClick.Add(OnClickBtnUp);
             _ui.m_listConsume.itemRenderer = RenderListStarConsumeItem;
             EventAgent.AddEventListener(ConstMessage.CARD_UP_SKILL, UpdateView);
 
@@ -36,10 +36,13 @@ namespace GFGGame
 
             _cardId = (int)(viewData as object[])[0];
             _skillId = (int)(viewData as object[])[1];
-            cardSkillCfg = SkillDataManager.Instance.GetCardSkillCfg(_cardId, _skillId);
-            passivitySkillCfg = SkillDataManager.Instance.GetPassivitySkillCfg(_cardId, _skillId);
+
+            SkillData skillData = SkillDataManager.Instance.GetSkillData(_cardId, _skillId);
+            passivitySkillCfg = SkillDataManager.Instance.GetPassivitySkillCfg(_cardId, _skillId, skillData.lv);
 
             _ui.m_txtName.text = passivitySkillCfg.name;
+            _ui.m_comSkill.m_loaSkill.url = ResPathUtil.GetCardSmallPath(passivitySkillCfg.res);
+
             UpdateView();
         }
         private void UpdateView()
@@ -49,53 +52,83 @@ namespace GFGGame
             SkillData skillData = SkillDataManager.Instance.GetSkillData(_cardId, _skillId);
             int lv = skillData == null ? 1 : skillData.lv;
             UpdateComLv(_ui.m_comCurLV, lv, lv + "级");
-            if (skillData != null && skillData.lv == PassivitySkillCfgArray.Instance.GetCfgs(_cardId).Length) //已满级
+            if (skillData != null && skillData.lv == SkillDataManager.Instance.dicPassivitySkill[_cardId][_skillId].Count) //已满级
             {
                 _ui.m_c1.selectedIndex = 1;
                 return;
             }
+            _ui.m_comConsume.m_txtCount.text = passivitySkillCfg.costNum.ToString();
             UpdateComLv(_ui.m_comNextLv, lv + 1, "下一级");
-            // _ui.m_listConsume.numItems=
+            _ui.m_listConsume.numItems = passivitySkillCfg.materiarsArr.Length;
+
         }
         private void UpdateComLv(UI_ComSkillDiscribe com, int lv, string title)
         {
             com.m_txtLv.text = title;
-            com.m_txtDiscribe.text = cardSkillCfg.describe;
+            com.m_txtDiscribe.text = SkillDataManager.Instance.GetPassivitySkillCfg(_cardId, _skillId, lv).describe;
+
 
         }
         private void RenderListStarConsumeItem(int index, GObject obj)
         {
 
             UI_ComStarConsume listItem = UI_ComStarConsume.Proxy(obj);
-            CardStarCfg cardStarCfg = listItem.target.parent.data as CardStarCfg;
-            listItem.target.data = cardStarCfg.materiarsArr[index][0];
+            SkillData skillData = SkillDataManager.Instance.GetSkillData(_cardId, _skillId);
+            passivitySkillCfg = SkillDataManager.Instance.GetPassivitySkillCfg(_cardId, _skillId, skillData.lv);
+            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(passivitySkillCfg.materiarsArr[index][0]);
 
-            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(cardStarCfg.materiarsArr[index][0]);
+            listItem.target.data = passivitySkillCfg.materiarsArr[index][0];
             listItem.m_loaItem.url = ResPathUtil.GetIconPath(itemCfg);
 
-            int needCount = cardStarCfg.materiarsArr[index][1];
-            int hasCount = ItemDataManager.GetItemNum(cardStarCfg.materiarsArr[index][0]);
-            listItem.m_txtNeedCount.text = StringUtil.GetColorText(needCount.ToString(), hasCount < needCount ? "#D27869" : "#FDF3D7"); ;
+            int needCount = passivitySkillCfg.materiarsArr[index][1];
+            int hasCount = ItemDataManager.GetItemNum(passivitySkillCfg.materiarsArr[index][0]);
+            listItem.m_txtNeedCount.text = StringUtil.GetColorText(needCount.ToString(), hasCount < needCount ? "#FCBCBA" : "#FFF8EA"); ;
             listItem.m_txtHasCount.text = hasCount.ToString();
             listItem.m_btnPlus.visible = false;
             if (listItem.m_btnPlus.data == null)
             {
                 listItem.m_btnPlus.onClick.Add(() => OnClickBtnPlusStarConsum(index));
             }
-            listItem.m_btnPlus.data = cardStarCfg.materiarsArr[index][0];
+            listItem.m_btnPlus.data = passivitySkillCfg.materiarsArr[index][0];
 
             if (hasCount < needCount)
             {
                 //材料不足显示加号
-                // _comFosterBottom.m_btnUpStar.data = 1;
                 listItem.m_btnPlus.visible = true;
             }
         }
         private void OnClickBtnPlusStarConsum(int index)
         {
-            // int itemId = int.Parse(UI_ComStarConsume.Proxy(_comFosterBottom.m_listStarConsume.GetChildAt(index)).target.data.ToString());
-
-            // ViewManager.Show(ViewName.APPROACH_OF_ITEM_VIEW, new object[] { itemId, new object[] { ViewName.CARD_FOSTER_VIEW, this.viewData } });
+            int itemId = int.Parse(UI_ComStarConsume.Proxy(_ui.m_listConsume.GetChildAt(index)).target.data.ToString());
+            ViewManager.Show(ViewName.APPROACH_OF_ITEM_VIEW, new object[] { itemId, new object[] { ViewName.CARD_FOSTER_VIEW, this.viewData } });
+        }
+        private void OnClickBtnUp()
+        {
+            if (ItemDataManager.GetItemNum(passivitySkillCfg.costID) < passivitySkillCfg.costNum)
+            {
+                ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(passivitySkillCfg.costID);
+                PromptController.Instance.ShowFloatTextPrompt(itemCfg.name + "不足");
+                return;
+            }
+            bool isEnough = true;
+            for (int i = 0; i < passivitySkillCfg.materiarsArr.Length; i++)
+            {
+                int needCount = passivitySkillCfg.materiarsArr[i][1];
+                int hasCount = ItemDataManager.GetItemNum(passivitySkillCfg.materiarsArr[i][0]);
+                if (hasCount < needCount)
+                {
+                    isEnough = false;
+                    PromptController.Instance.ShowFloatTextPrompt("升级材料不足");
+                    break;
+                }
+            }
+            if (!isEnough) return;
+            ItemDataManager.Remove(passivitySkillCfg.costID, passivitySkillCfg.costNum);
+            for (int i = 0; i < passivitySkillCfg.materiarsArr.Length; i++)
+            {
+                ItemDataManager.Remove(passivitySkillCfg.materiarsArr[i][0], passivitySkillCfg.materiarsArr[i][1]);
+            }
+            SkillDataManager.Instance.UpSkill(_cardId, _skillId);
 
         }
         protected override void OnHide()

+ 8 - 0
GameClient/Assets/Game/HotUpdate/Views/ClothingDecompose.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: a2e42bf6876863446a787433aa682d27
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 54 - 0
GameClient/Assets/Game/HotUpdate/Views/ClothingDecompose/ClothingDecomposeRuleView.cs

@@ -0,0 +1,54 @@
+using FairyGUI;
+using UI.ClothingDecompose;
+namespace GFGGame
+{
+    public class ClothingDecomposeRuleView : BaseWindow
+    {
+        private UI_ClothingDecomposeRuleUI _ui;
+        private string _strName;
+
+        public override void Dispose()
+        {
+
+            base.Dispose();
+        }
+
+
+        protected override void OnInit()
+        {
+            base.OnInit();
+            packageName = UI_ClothingDecomposeUI.PACKAGE_NAME;
+            _ui = UI_ClothingDecomposeRuleUI.Create();
+            this.viewCom = _ui.target;
+            this.viewCom.Center();
+            this.modal = true;
+            viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
+
+            _ui.m_listReward.itemRenderer = ListItemRender;
+        }
+
+        protected override void OnShown()
+        {
+            base.OnShown();
+            _ui.m_listReward.numItems = DecomposeDataManager.Instance.GetRewardList().Count;
+            _ui.m_txtRule.text = "分解多余的衣服可获得分解材料:" + _strName;
+        }
+        private void ListItemRender(int index, GObject obj)
+        {
+            UI_ListRewardItem item = UI_ListRewardItem.Proxy(obj);
+            int id = DecomposeDataManager.Instance.GetRewardList()[index];
+            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(id);
+
+            string ext = ItemUtil.GetItemResExt(itemCfg.itemType, itemCfg.subType);
+            item.m_loaIcon.url = ResPathUtil.GetIconPath(itemCfg.res, ext);
+
+            _strName += (itemCfg.name + (index == DecomposeDataManager.Instance.GetRewardList().Count - 1 ? "。" : "、"));
+        }
+
+        protected override void OnHide()
+        {
+            base.OnHide();
+
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/ClothingDecompose/ClothingDecomposeRuleView.cs.meta

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

+ 276 - 0
GameClient/Assets/Game/HotUpdate/Views/ClothingDecompose/ClothingDecomposeView.cs

@@ -0,0 +1,276 @@
+using System;
+using System.Collections.Generic;
+using FairyGUI;
+using UI.ClothingDecompose;
+
+namespace GFGGame
+{
+    public class ClothingDecomposeView : BaseWindow
+    {
+        private UI_ClothingDecomposeUI _ui;
+        private ValueBarController _valueBarController;
+
+        private List<int> _datas = new List<int>();
+        private Dictionary<int, int> _decomposeData = new Dictionary<int, int>();
+        private int _decomposeCount = 0;//要分解物品的数量
+        private int _curRarity = 0;
+        public override void Dispose()
+        {
+            _valueBarController.Dispose();
+            _valueBarController = null;
+            base.Dispose();
+        }
+
+
+        protected override void OnInit()
+        {
+            base.OnInit();
+            packageName = UI_ClothingDecomposeUI.PACKAGE_NAME;
+            _ui = UI_ClothingDecomposeUI.Create();
+            this.viewCom = _ui.target;
+            isfullScreen = true;
+            this.clickBlankToClose = false;
+            _valueBarController = new ValueBarController(_ui.m_valueBar);
+
+            _ui.m_btnBack.onClick.Add(OnClickBtnBack);
+            _ui.m_comBtnTab.m_btnRarity0.onClick.Add(() => OnClickBtnRarity(ConstDressRarity.Rarity_FANPIN));
+            _ui.m_comBtnTab.m_btnRarity1.onClick.Add(() => OnClickBtnRarity(ConstDressRarity.Rarity_ZHENXI));
+            _ui.m_comBtnTab.m_btnRarity2.onClick.Add(() => OnClickBtnRarity(ConstDressRarity.Rarity_DIANCANG));
+            _ui.m_comBtnTab.m_btnRarity3.onClick.Add(() => OnClickBtnRarity(ConstDressRarity.Rarity_TIANYI));
+
+            _ui.m_btnSelect.onClick.Add(OnClickBtnSelect);
+            _ui.m_btnRule.onClick.Add(OnClickBtnRule);
+            _ui.m_btnDecompose.onClick.Add(OnClickBtnDecompose);
+
+            _ui.m_list.itemRenderer = ListItemRander;
+            _ui.m_list.SetVirtual();
+
+            _ui.m_listReward.itemRenderer = ListRewardItemRander;
+            _ui.m_listReward.onClickItem.Add(OnClickListRewardItem);
+
+
+        }
+
+        protected override void OnShown()
+        {
+            base.OnShown();
+            _ui.m_c1.selectedIndex = 0;
+            _valueBarController.OnShown();
+            _valueBarController.Controller(6);
+            OnClickBtnRarity(ConstDressRarity.Rarity_FANPIN);
+
+        }
+
+        protected override void OnHide()
+        {
+            base.OnHide();
+            _valueBarController.OnHide();
+
+        }
+
+        private void OnClickBtnRarity(int rarity)
+        {
+            _curRarity = rarity;
+            _datas = DecomposeDataManager.Instance.GetDecomposeDataByRarity(rarity);
+            _ui.m_list.visible = _datas != null && _datas.Count > 0;
+            _ui.m_txtNone.visible = _datas == null || _datas.Count == 0;
+            if (_datas == null) return;
+            _ui.m_list.numItems = _datas.Count;
+            _ui.m_btnSelect.selected = false;
+            CancleAll();
+            UpdateConsume();
+        }
+
+        private void ListItemRander(int index, GObject obj)
+        {
+            UI_ListItem item = UI_ListItem.Proxy(obj);
+            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(_datas[index]);
+            RarityIconController.UpdateRarityIcon(item.m_loaRarity, itemCfg.id, false);
+            string ext = ItemUtil.GetItemResExt(itemCfg.itemType, itemCfg.subType);
+            item.m_loaIcon.url = ResPathUtil.GetIconPath(itemCfg.res, ext);
+            item.m_txtName.text = itemCfg.name;
+            item.m_imgSelect.visible = false;
+            int itemHasCount = DecomposeDataManager.Instance.ItemCanDecomposeCount(itemCfg.id);
+            item.m_txtHasCount.text = itemHasCount.ToString();
+            int itemCount = _decomposeData.ContainsKey(_datas[index]) ? _decomposeData[_datas[index]] : 0;
+            item.m_txtCount.text = itemCount.ToString();
+            item.m_imgSelect.visible = itemCount > 0;
+            item.m_btnMinus.visible = itemCount > 0;
+            if (item.m_btnMinus.data == null)
+            {
+                item.m_btnMinus.onClick.Add(OnClickBtnMinus);
+            }
+            item.m_btnMinus.data = index;
+
+            if (item.m_loaItem.data == null)
+            {
+                item.m_loaItem.onClick.Add(OnListItemClick);
+
+            }
+            item.m_loaItem.data = index;
+            item.target.data = itemCfg;
+        }
+        private void OnListItemClick(EventContext context)
+        {
+            int index = (int)((context.sender as GLoader).data);
+            int childIndex = _ui.m_list.ItemIndexToChildIndex(index);
+
+            GComponent com = _ui.m_list.GetChildAt(childIndex).asCom;
+            int itemId = (com.data as ItemCfg).id;
+            if (!_decomposeData.ContainsKey(itemId)) _decomposeData[itemId] = 0;
+            if (_decomposeData[itemId] == DecomposeDataManager.Instance.ItemCanDecomposeCount(itemId)) return;
+            if (_decomposeCount == DecomposeDataManager.MaxCount)
+            {
+                PromptController.Instance.ShowFloatTextPrompt("已达到单次可分解上限,请分批操作");
+                return;
+            }
+
+            UI_ListItem item = UI_ListItem.Proxy(com);
+            item.m_btnMinus.visible = true;
+            item.m_imgSelect.visible = true;
+
+            _decomposeData[itemId] = _decomposeData[itemId] + 1;
+            _decomposeCount += 1;
+            item.m_txtCount.text = _decomposeData[itemId].ToString();
+            UpdateConsume();
+
+        }
+
+        private void OnClickBtnMinus(EventContext context)
+        {
+            int index = (int)((context.sender as GButton).data);
+            int childIndex = _ui.m_list.ItemIndexToChildIndex(index);
+            GComponent com = _ui.m_list.GetChildAt(childIndex).asCom;
+            UI_ListItem item = UI_ListItem.Proxy(com);
+
+
+            int itemId = (com.data as ItemCfg).id;
+
+            _decomposeData[itemId] = _decomposeData[itemId] - 1;
+            _decomposeCount -= 1;
+            item.m_txtCount.text = _decomposeData[itemId].ToString();
+            if (_decomposeData[itemId] == 0)
+            {
+                _decomposeData.Remove(itemId);
+                item.m_imgSelect.visible = false;
+                item.m_btnMinus.visible = false;
+            }
+            UpdateConsume();
+
+        }
+
+        private void OnClickBtnSelect()
+        {
+            if (_ui.m_btnSelect.selected)
+            {
+                SelectAll();
+            }
+            else
+            {
+                CancleAll();
+            }
+            UpdateConsume();
+        }
+        private void SelectAll()
+        {
+            int lastCount = DecomposeDataManager.MaxCount - _decomposeCount;
+
+            for (int i = 0; i < _datas.Count; i++)
+            {
+                int itemId = _datas[i];
+                int itemHasCount = DecomposeDataManager.Instance.ItemCanDecomposeCount(itemId);
+                int itemLastCount = _decomposeData.ContainsKey(itemId) ? itemHasCount - _decomposeData[itemId] : itemHasCount;
+
+                int count = Math.Min(lastCount, itemLastCount);
+                lastCount -= count;
+                if (!_decomposeData.ContainsKey(itemId)) _decomposeData[itemId] = 0;
+                _decomposeData[itemId] = _decomposeData[itemId] + count;
+                _decomposeCount += count;
+                if (lastCount == 0) break;
+            }
+            _ui.m_list.numItems = _datas.Count;
+        }
+        private void CancleAll()
+        {
+            _decomposeData.Clear();
+            _ui.m_list.numItems = _datas.Count;
+            _decomposeCount = 0;
+
+        }
+
+        private void UpdateConsume()
+        {
+
+            DecomposeCfg cfg = DecomposeCfgArray.Instance.GetCfg(_curRarity);
+            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(cfg.consumeId);
+            _ui.m_listReward.numItems = _decomposeCount > 0 ? cfg.itemsArr.Length : 0;
+            _ui.m_txtConsume.text = string.Format("消耗{0}X{1}", itemCfg.name, (_decomposeCount * cfg.consumeCount));
+            _ui.m_txtShow.text = string.Format("*  分解{0}件{1}可获得  *", StringUtil.GetColorText(_decomposeCount.ToString(), "#DA826E"), ConstDressRarity.DressRarityList()[_curRarity]);
+        }
+        private void ListRewardItemRander(int index, GObject obj)
+        {
+            UI_ListRewardItem item = UI_ListRewardItem.Proxy(obj);
+            DecomposeCfg decomposeCfg = DecomposeCfgArray.Instance.GetCfg(_curRarity);
+            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(decomposeCfg.itemsArr[index][0]);
+            item.m_txtCount.text = (decomposeCfg.itemsArr[index][1] * _decomposeCount).ToString();
+            string ext = ItemUtil.GetItemResExt(itemCfg.itemType, itemCfg.subType);
+            item.m_loaIcon.url = ResPathUtil.GetIconPath(itemCfg.res, ext);
+            item.target.data = itemCfg;
+        }
+        private void OnClickListRewardItem(EventContext context)
+        {
+            UI_ListRewardItem item = UI_ListRewardItem.Proxy((context.data as GObject));
+
+            GoodsItemTipsController.ShowItemTips((item.target.data as ItemCfg).id);
+        }
+        private void OnClickBtnDecompose()
+        {
+            if (_curRarity > ConstDressRarity.Rarity_ZHENXI)
+            {
+                Alert.Show(string.Format("当前选择的稀有度为{0},是否确定分解?", ConstDressRarity.DressRarityList()[_curRarity])).SetLeftButton(true).SetRightButton(true, "确定", (object data) => { DecomposeItem(); });
+            }
+            else
+            {
+                DecomposeItem();
+            }
+        }
+        private void DecomposeItem()
+        {
+            DecomposeCfg cfg = DecomposeCfgArray.Instance.GetCfg(_curRarity);
+            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(cfg.consumeId);
+
+            int consumeCount = cfg.consumeCount * _decomposeCount;
+            if (consumeCount > ItemDataManager.GetItemNum(cfg.consumeId))
+            {
+                PromptController.Instance.ShowFloatTextPrompt(string.Format("{0}不足", itemCfg.name));
+                return;
+            }
+            ItemDataManager.Remove(cfg.consumeId, consumeCount);
+            foreach (int key in _decomposeData.Keys)
+            {
+                ItemDataManager.Remove(key, _decomposeData[key]);
+            }
+            List<ItemData> listReward = new List<ItemData>();
+            for (int i = 0; i < cfg.itemsArr.Length; i++)
+            {
+                ItemData itemData = new ItemData();
+                itemData.id = cfg.itemsArr[i][0];
+                itemData.num = cfg.itemsArr[i][1] * _decomposeCount;
+                listReward.Add(itemData);
+                ItemDataManager.Add(itemData.id, itemData.num);
+            }
+
+            ViewManager.Show<RewardView>(listReward);
+            OnClickBtnRarity(_curRarity);
+        }
+        private void OnClickBtnRule()
+        {
+            ViewManager.Show<ClothingDecomposeRuleView>();
+        }
+
+        private void OnClickBtnBack()
+        {
+            ViewManager.GoBackFrom(typeof(ClothingDecomposeView).FullName);
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/ClothingDecompose/ClothingDecomposeView.cs.meta

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

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

@@ -164,7 +164,6 @@ namespace GFGGame
                 BuyItemConteoller.Show(_cfgSelected.itemID, _cfgSelected.costID, INIT_COUNT, _cfgSelected.costNum, _selectedItemCount, null, true, false, MAX_COUNT);
             }
             // GuideController.TryGuideClothingShopViewBtnBug(_ui.m_compItemInfo.m_btnBuy);
-            Timers.inst.AddUpdate(UpdateToCheckGuide);
         }
 
         protected override void OnHide()
@@ -182,29 +181,23 @@ namespace GFGGame
             }
             _selectedItemId = 0;
             EventAgent.RemoveEventListener(ConstMessage.ITEM_CHANGED, UpdateSelectedItemInfo);
-            Timers.inst.Remove(UpdateToCheckGuide);
         }
 
         private void OnClickBtnBack()
         {
-            GuideController.HideGuide();
             ViewManager.GoBackFrom(ViewName.CLOTHING_SHOP_VIEW);
             this.Hide();
-            GuideController.TryGuideDressUpFightViewMenuType1();
 
         }
 
         private void OnclickBtnBuy()
         {
-            GuideController.HideGuide();
             int count = _selectedItemId > 0 && _cfgSelected.itemID == _selectedItemId ? _selectedItemCount : INIT_COUNT;
             BuyItemConteoller.Show(_cfgSelected.itemID, _cfgSelected.costID, INIT_COUNT, _cfgSelected.costNum, count, null, true, false, MAX_COUNT);
 
         }
         private void UpdateItemChange()
         {
-            GuideController.TryGuideClothingShopViewBtnBack(_ui.m_btnBack);
-
             UpdateCJGoodsCount();
             UpdateList(false);
 
@@ -356,7 +349,7 @@ namespace GFGGame
             item.m_loaTag.url = ResPathUtil.GetCommonGameResPath("fzd_bqbq_" + tag[0]);
             item.m_txtTag.text = tag[1];
         }
-        private void UpdateToCheckGuide(object param)
+        protected override void UpdateToCheckGuide(object param)
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
 

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

@@ -111,14 +111,11 @@ namespace GFGGame
             UpdateClothingList(false);
             EventAgent.AddEventListener(ConstMessage.ITEM_CHANGED, OnItemNumChanged);
 
-            GuideController.TryGuideClothingSyntheticViewSuitList(_ui.m_listClothing);
-            Timers.inst.AddUpdate(UpdateToCheckGuide);
         }
 
         protected override void OnHide()
         {
             base.OnHide();
-            Timers.inst.Remove(UpdateToCheckGuide);
             _valueBarController.OnHide();
             if (_sceneObject != null)
             {
@@ -140,13 +137,10 @@ namespace GFGGame
         private void OnClickListClothingItem(EventContext context)
         {
             UpdateSelectedItemInfo(context.data as GComponent, true);
-            GuideController.TryGuideClothingSyntheticViewList(_ui.m_listMaterias);
         }
 
         private void OnClickBtnProcuction()
         {
-            Timers.inst.AddUpdate(UpdateTryGuide);
-            // GuideController.HideGuide();
             if (ItemDataManager.GetItemNum(_selectedItemId) > 0)
             {
                 PromptController.Instance.ShowFloatTextPrompt("不能制作已经拥有的物品!");
@@ -331,13 +325,6 @@ namespace GFGGame
                     listItem.m_groupCount.target.onClick.Add(OnClickMateriasItemPlus);
                     listItem.target.data = itemData;
 
-                    if (i == 0)
-                    {
-                        listItem.m_loaderIcon.onClick.Add(() =>
-                        {
-                            GuideController.TryGuideClothingSyntheticViewBtnProduction(_ui.m_btnProduction);
-                        });
-                    }
                 }
                 else
                 {
@@ -380,18 +367,10 @@ namespace GFGGame
         }
         private void OnClickBtnHome()
         {
-            Timers.inst.Remove(UpdateTryGuide);
-            GuideController.TryCompleteGuide(ConstGuideId.SUIT_SYNTHETIC_GUIDE);
             GameController.GoBackToMainView();
         }
-        private void UpdateTryGuide(object param)
-        {
-            if (GRoot.inst.GetTopWindow() == this.viewCom)
-            {
-                GuideController.TryGuideClothingSyntheticViewBtnHome(_ui.m_btnHome);
-            }
-        }
-        private void UpdateToCheckGuide(object param)
+
+        protected override void UpdateToCheckGuide(object param)
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
 

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

@@ -39,14 +39,11 @@ namespace GFGGame
             UpdateSuitList();
 
             EventAgent.AddEventListener(ConstMessage.SUIT_BOX_STATUS_CHANGED, UpdateSuitBoxStatus);
-            GuideController.TryGuideSuitSyntheticViewList(_ui.m_listSuit);
-            Timers.inst.AddUpdate(UpdateToCheckGuide);
         }
 
         protected override void OnHide()
         {
             base.OnHide();
-            Timers.inst.Remove(UpdateToCheckGuide);
             EventAgent.RemoveEventListener(ConstMessage.SUIT_BOX_STATUS_CHANGED, UpdateSuitBoxStatus);
         }
 
@@ -180,7 +177,7 @@ namespace GFGGame
                 }
             }
         }
-        private void UpdateToCheckGuide(object param)
+        protected override void UpdateToCheckGuide(object param)
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
 

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

@@ -60,17 +60,12 @@ namespace GFGGame
                 _ui.m_listApproach.height = 162;
             }
 
-            GuideController.TryGuideApproachOfItemViewList(_ui.m_listApproach);
-            Timers.inst.AddUpdate(UpdateToCheckGuide);
-
         }
 
         protected override void OnHide()
         {
             base.OnHide();
             _fromeViewDatas = null;
-            Timers.inst.Remove(UpdateToCheckGuide);
-
         }
 
         private void ListApproachItemRenderer(int index, GObject item)
@@ -98,7 +93,6 @@ namespace GFGGame
 
         private void OnClickListApproachItem(EventContext context)
         {
-            GuideController.HideGuide();
             GObject listItem = context.data as GObject;
             string[] infos = listItem.data as string[];
             string functionId = infos[0];
@@ -152,7 +146,7 @@ namespace GFGGame
                     break;
             }
         }
-        private void UpdateToCheckGuide(object param)
+        protected override void UpdateToCheckGuide(object param)
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
 

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

@@ -77,9 +77,6 @@ namespace GFGGame
             base.OnShown();
             _ui.m_txtCount.text = "" + _count;
             UpdateView();
-            GuideController.TryGuideBuyCountViewBtnSure(_ui.m_btnSure);
-            Timers.inst.AddUpdate(UpdateToCheckGuide);
-
         }
         private void UpdateView()
         {
@@ -288,10 +285,9 @@ namespace GFGGame
             base.OnHide();
             // _cfg = null;
             Reset();
-            Timers.inst.Remove(UpdateToCheckGuide);
 
         }
-        private void UpdateToCheckGuide(object param)
+        protected override void UpdateToCheckGuide(object param)
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
 

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