zhaoyang пре 3 година
родитељ
комит
4e585dc308
34 измењених фајлова са 541 додато и 74 уклоњено
  1. 13 16
      FGUIProject/assets/CommonGame/components/Button14.xml
  2. 4 6
      FGUIProject/assets/CommonGame/components/ComItem.xml
  3. BIN
      FGUIProject/assets/CommonGame/images/sc_xtxtxt.png
  4. 1 1
      FGUIProject/assets/CommonGame/package.xml
  5. 21 13
      FGUIProject/assets/RechargeStore/GiftBagBuyUI.xml
  6. 5 5
      FGUIProject/assets/RechargeStore/RechargeStoreUI.xml
  7. 2 0
      FGUIProject/assets/RechargeStore/components/Button2.xml
  8. 7 4
      FGUIProject/assets/RechargeStore/components/Component1.xml
  9. 33 9
      FGUIProject/assets/RechargeStore/components/ListGiftItem.xml
  10. BIN
      FGUIProject/assets/RechargeStore/images/hyhy_btbt_1.png
  11. BIN
      FGUIProject/assets/RechargeStore/images/sc_cwcw_1.png
  12. BIN
      FGUIProject/assets/RechargeStore/images/sc_cwcw_2.png
  13. BIN
      FGUIProject/assets/RechargeStore/images/sc_cwcw_3.png
  14. BIN
      FGUIProject/assets/RechargeStore/images/sc_xtxtxt(1).png
  15. BIN
      FGUIProject/assets/RechargeStore/imagesExport/jinbi_1(1).png
  16. 6 0
      FGUIProject/assets/RechargeStore/package.xml
  17. 2 0
      GameClient/Assets/Game/HotUpdate/Constant/ConstMessage.cs
  18. 4 0
      GameClient/Assets/Game/HotUpdate/Controller/GameController.cs
  19. 70 4
      GameClient/Assets/Game/HotUpdate/Data/RechargeDataManager.cs
  20. 9 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CommonGame/UI_Button14.cs
  21. 71 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/RechargeStore/UI_Button2.cs
  22. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/RechargeStore/UI_Button2.cs.meta
  23. 12 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/RechargeStore/UI_Component1.cs
  24. 15 3
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/RechargeStore/UI_GiftBagBuyUI.cs
  25. 33 9
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/RechargeStore/UI_ListGiftItem.cs
  26. 6 2
      GameClient/Assets/Game/HotUpdate/ServerProxy/RechargeSProxy.cs
  27. 128 0
      GameClient/Assets/Game/HotUpdate/Views/RechargeStore/GiftBagBuyView.cs
  28. 11 0
      GameClient/Assets/Game/HotUpdate/Views/RechargeStore/GiftBagBuyView.cs.meta
  29. 77 2
      GameClient/Assets/Game/HotUpdate/Views/RechargeStore/RechargeStoreView.cs
  30. BIN
      GameClient/Assets/ResIn/Config/excelConfig.sqlite.bytes
  31. BIN
      GameClient/Assets/ResIn/UI/CommonGame/CommonGame_fui.bytes
  32. BIN
      GameClient/Assets/ResIn/UI/RechargeStore/RechargeStore_atlas0!a.png
  33. BIN
      GameClient/Assets/ResIn/UI/RechargeStore/RechargeStore_atlas0.png
  34. BIN
      GameClient/Assets/ResIn/UI/RechargeStore/RechargeStore_fui.bytes

+ 13 - 16
FGUIProject/assets/CommonGame/components/Button14.xml

@@ -7,25 +7,22 @@
       <gearDisplay controller="c1" pages="0"/>
       <relation target="" sidePair="width-width,height-height"/>
     </image>
-    <loader id="n1_10not" name="icon" xy="50,10" size="60,60" group="n3_10not" url="ui://eg2y0ldpg3nf9q"/>
-    <text id="n2_10not" name="txtIcon" xy="60,15" size="40,49" group="n3_10not" fontSize="36" color="#fdfaed" strokeColor="#ac904e" strokeSize="2" text="¥"/>
-    <group id="n3_10not" name="n3" xy="50,10" size="60,60" group="n8_10not" advanced="true"/>
-    <text id="n4_10not" name="txtOriginalPrice" xy="123,15" pivot="0.5,0" size="26,49" group="n6_10not" fontSize="36" color="#fdfaed" align="center" strokeColor="#ac904e" text="4"/>
-    <image id="n5_10not" name="n5" src="dmsi1h" fileName="images/sc_xtxtxt.png" xy="120,38" pivot="0.5,0" size="33,10" group="n6_10not">
-      <relation target="n4_10not" sidePair="width-width"/>
-    </image>
-    <group id="n6_10not" name="n6" xy="120,15" size="33,49" group="n8_10not" advanced="true"/>
-    <text id="n7_10not" name="txtPrice" xy="163,15" size="26,49" group="n8_10not" fontSize="36" color="#fdfaed" align="center" strokeColor="#ac904e" text="5"/>
-    <group id="n8_10not" name="n8" xy="50,10" size="139,60" advanced="true" layout="hz" colGap="10" excludeInvisibles="true">
+    <image id="n9_10not" name="n9" src="10nota4" fileName="images/sc_czanniu_2.png" xy="0,0" group="n11_oeuo"/>
+    <text id="n10_10not" name="n10" xy="67,12" size="112,49" group="n11_oeuo" fontSize="36" color="#fdfaed" align="center" strokeColor="#989180" text="已售罄"/>
+    <group id="n11_oeuo" name="n11" xy="0,0" size="240,80" advanced="true">
+      <gearDisplay controller="c1" pages="1"/>
+    </group>
+    <loader id="n1_10not" name="loaIcon" xy="21,10" size="60,60" group="n3_10not" visible="false" url="ui://eg2y0ldpg3nf9q" fill="scaleFree"/>
+    <text id="n2_10not" name="txtIcon" xy="24,15" pivot="0.5,0" size="40,49" group="n3_10not" fontSize="36" color="#fdfaed" strokeColor="#ac904e" strokeSize="2" text="¥"/>
+    <group id="n3_10not" name="grpIcon" xy="21,15" size="46,49" group="n8_10not" advanced="true" layout="hz" excludeInvisibles="true"/>
+    <text id="n4_10not" name="txtOriginalPrice" xy="93,15" pivot="0.5,0" size="49,49" group="n6_10not" fontSize="36" color="#fdfaed" align="center" strokeColor="#ac904e" text="10"/>
+    <image id="n5_10not" name="n5" src="dmsi1h" fileName="images/sc_xtxtxt.png" xy="77,38" pivot="0.5,0" group="n6_10not"/>
+    <group id="n6_10not" name="grpOriginalPrice" xy="77,15" size="82,49" group="n8_10not" advanced="true"/>
+    <text id="n7_10not" name="txtPrice" xy="169,15" pivot="0.5,0" size="49,49" group="n8_10not" fontSize="36" color="#fdfaed" align="right" strokeColor="#ac904e" text="10"/>
+    <group id="n8_10not" name="n8" xy="21,15" size="197,49" advanced="true" layout="hz" colGap="10" excludeInvisibles="true">
       <gearDisplay controller="c1" pages="0"/>
       <relation target="" sidePair="center-center"/>
     </group>
-    <image id="n9_10not" name="n9" src="10nota4" fileName="images/sc_czanniu_2.png" xy="0,0">
-      <gearDisplay controller="c1" pages="1"/>
-    </image>
-    <text id="n10_10not" name="n10" xy="67,12" size="112,49" fontSize="36" color="#fdfaed" align="center" strokeColor="#989180" text="已售罄">
-      <gearDisplay controller="c1" pages="1"/>
-    </text>
   </displayList>
   <Button/>
 </component>

+ 4 - 6
FGUIProject/assets/CommonGame/components/ComItem.xml

@@ -1,14 +1,12 @@
 <?xml version="1.0" encoding="utf-8"?>
 <component size="192,280" overflow="hidden">
   <displayList>
-    <image id="n11_ehs9" name="n11" src="j48o99" fileName="components/kp_sjsj_di_3.png" xy="0,0"/>
-    <loader id="n12_ehs9" name="loaIcon" xy="96,96" pivot="0.5,0.5" anchor="true" size="150,150" aspect="true" fill="scale">
-      <relation target="" sidePair="center-center,middle-middle"/>
-    </loader>
-    <image id="n13_ehs9" name="n13" src="j48o9a" fileName="components/kp_sjsj_di_4.png" xy="16,162"/>
+    <image id="n11_ehs9" name="n11" src="j48o99" fileName="images/kp_sjsj_di_3.png" xy="0,0"/>
+    <loader id="n12_ehs9" name="loaIcon" xy="96,96" pivot="0.5,0.5" anchor="true" size="150,150" aspect="true" url="ui://eg2y0ldpm9wm8v" fill="scale"/>
+    <image id="n13_ehs9" name="n13" src="j48o9a" fileName="images/kp_sjsj_di_4.png" xy="16,162"/>
     <text id="n14_ehs9" name="txtName" xy="95,194" pivot="0.5,0" anchor="true" size="105,46" fontSize="34" color="#9b7f61" text="赵钱孙"/>
     <text id="n15_ehs9" name="txtCount" xy="95,159" pivot="0.5,0" anchor="true" size="32,34" fontSize="24" color="#fff8ea" vars="true" text="x{count=0}"/>
-    <image id="n16_j8b3" name="imgGot" src="j48o9b" fileName="components/yx_yilq.png" xy="7,80"/>
+    <image id="n16_j8b3" name="imgGot" src="j48o9b" fileName="images/yx_yilq.png" xy="7,80"/>
     <text id="n17_j48o" name="txtHasCount" xy="96,243" pivot="0.5,0" anchor="true" size="105,36" fontSize="26" color="#a28d77" vars="true" text="已拥有:{count=0}"/>
     <loader id="n18_j48o" name="loaRarity" xy="148,0" size="44,94" url="ui://eg2y0ldpd4iw52" autoSize="true"/>
     <loader id="n19_tc53" name="loaShouTongReward" xy="16,81" size="160,40" url="ui://eg2y0ldptc539z" autoSize="true"/>

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


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

@@ -181,7 +181,7 @@
     <image id="10nota5" name="sc_czanniu_1.png" path="/images/"/>
     <component id="10nota6" name="Button14.xml" path="/components/" exported="true"/>
     <component id="10nota7" name="Button15.xml" path="/components/" exported="true"/>
-    <image id="dmsi1h" name="sc_xtxtxt.png" path="/images/" scale="9grid" scale9grid="19,2,38,4"/>
+    <image id="dmsi1h" name="sc_xtxtxt.png" path="/images/" scale="9grid" scale9grid="12,0,44,2"/>
   </resources>
   <publish name="" path="..\GameClient\Assets\ResIn\UI\CommonGame" packageCount="2" genCode="true" extractAlpha="true"/>
 </packageDescription>

+ 21 - 13
FGUIProject/assets/RechargeStore/GiftBagBuyUI.xml

@@ -1,30 +1,38 @@
 <?xml version="1.0" encoding="utf-8"?>
 <component size="936,695">
+  <controller name="c1" pages="0,,1," selected="1"/>
   <displayList>
     <image id="n0_10not" name="bg" src="lwri5u" fileName="imagesExport/hc_kuang_6.png" pkg="mk0fwx0x" xy="0,0" size="936,695"/>
-    <text id="n1_10not" name="txtName" xy="463,40" pivot="0.5,0" size="10,74" fontSize="56" color="#8f6e30" text=""/>
-    <loader id="n2_10not" name="loaIcon" xy="133,281" size="50,50"/>
+    <image id="n18_iftf" name="n18" src="iftfta9" fileName="images/hyhy_btbt_1.png" xy="230,32"/>
+    <text id="n1_10not" name="txtName" xy="354,31" pivot="0.5,0" size="228,74" fontSize="56" color="#8f6e30" text="礼包礼包"/>
+    <loader id="n2_10not" name="loaIcon" xy="137,273" pivot="0.5,0.5" size="50,50" autoSize="true"/>
     <text id="n3_10not" name="txtLimit" xy="45,420" pivot="0.5,0" size="251,46" fontSize="34" color="#a3926c" align="center" leading="-5" letterSpacing="-2" ubb="true" text="每日限购(0/1)"/>
-    <list id="n4_10not" name="list" xy="307,212" size="618,198" layout="row" overflow="scroll" colGap="10" defaultItem="ui://eg2y0ldpj48o98" align="center">
+    <list id="n4_10not" name="list" xy="307,212" size="618,197" layout="row" overflow="scroll" colGap="10" defaultItem="ui://eg2y0ldpj48o98" align="center">
       <item/>
       <item/>
       <item/>
     </list>
     <image id="n5_10not" name="n5" src="dmsi1l" fileName="images/sc_kuangsjsj.png" xy="729,107" group="n7_10not"/>
-    <text id="n6_10not" name="txtRefreshTime" xy="756,105" size="94,41" group="n7_10not" fontSize="30" color="#ffffff" align="center" leading="-5" letterSpacing="-2" strokeColor="#b98653" strokeSize="2" text="12小时"/>
+    <text id="n6_10not" name="txtRefreshTime" xy="756,105" pivot="0.5,0" size="94,41" group="n7_10not" fontSize="30" color="#ffffff" align="center" leading="-5" letterSpacing="-2" strokeColor="#b98653" strokeSize="2" text="12小时"/>
     <group id="n7_10not" name="grpRefreshTime" xy="729,105" size="155,42" advanced="true"/>
-    <loader id="n8_10not" name="icon" xy="374,507" size="60,60" group="n10_10not" url="ui://vlgobc1510not1w"/>
-    <text id="n9_10not" name="txtIcon" xy="379,506" size="50,62" group="n10_10not" fontSize="46" color="#a17d5f" text="¥"/>
-    <group id="n10_10not" name="n10" xy="374,506" size="60,62" group="n15_10not"/>
-    <text id="n11_10not" name="txtOriginalPrice" xy="465,506" pivot="0.5,0" size="32,62" group="n13_10not" fontSize="46" color="#caa293" align="center" text="4"/>
-    <image id="n12_10not" name="n12" src="dmsi1m" fileName="images/sc_tc_xian_1.png" xy="464,539" pivot="0.5,0" size="35,2" group="n13_10not">
+    <loader id="n8_10not" name="loaPriceIcon" xy="379,507" size="60,60" group="n10_10not" visible="false" url="ui://vlgobc1510not1w" fill="scale"/>
+    <text id="n9_10not" name="txtIcon" xy="379,506" size="50,61" group="n10_10not" fontSize="46" color="#a17d5f" text="¥"/>
+    <group id="n10_10not" name="grpIcon" xy="379,506" size="50,61" group="n15_10not" advanced="true" layout="hz" excludeInvisibles="true"/>
+    <text id="n11_10not" name="txtOriginalPrice" xy="460,506" pivot="0.5,0" size="32,61" group="n13_10not" fontSize="46" color="#caa293" align="center" text="4"/>
+    <image id="n12_10not" name="n12" src="dmsi1m" fileName="images/sc_tc_xian_1.png" xy="459,539" pivot="0.5,0" size="35,2" group="n13_10not">
       <relation target="n11_10not" sidePair="width-width"/>
     </image>
-    <group id="n13_10not" name="n13" xy="464,506" size="35,62" group="n15_10not"/>
-    <text id="n14_10not" name="txtPrice" xy="529,506" size="32,62" group="n15_10not" fontSize="46" color="#a17d5f" align="center" text="5"/>
-    <group id="n15_10not" name="grpPrice" xy="374,506" size="187,62" advanced="true" layout="hz" colGap="30" excludeInvisibles="true">
+    <group id="n13_10not" name="grpOriginalPrice" xy="459,506" size="35,61" group="n15_10not" advanced="true"/>
+    <text id="n14_10not" name="txtPrice" xy="524,506" size="32,61" group="n15_10not" fontSize="46" color="#a17d5f" align="center" text="5"/>
+    <group id="n15_10not" name="grpPrice" xy="379,506" size="177,61" advanced="true" layout="hz" colGap="30" excludeInvisibles="true">
+      <gearDisplay controller="c1" pages="0"/>
       <relation target="" sidePair="center-center"/>
     </group>
-    <component id="n16_10not" name="btnBuy" src="ih7594" fileName="components/Button10.xml" pkg="mk0fwx0x" xy="278,566"/>
+    <component id="n16_10not" name="btnBuy" src="ih7594" fileName="components/Button10.xml" pkg="mk0fwx0x" xy="278,566">
+      <gearDisplay controller="c1" pages="0"/>
+    </component>
+    <text id="n17_oeuo" name="txtLock" xy="316,540" pivot="0.5,0" size="304,64" fontSize="48" color="#aa946b" text="通关2-10解锁">
+      <gearDisplay controller="c1" pages="1"/>
+    </text>
   </displayList>
 </component>

+ 5 - 5
FGUIProject/assets/RechargeStore/RechargeStoreUI.xml

@@ -7,14 +7,14 @@
     </image>
     <component id="n3_d4iw" name="btnBack" src="9xlo8" fileName="components/ButtonBack1.xml" pkg="eg2y0ldp" xy="35,80"/>
     <component id="n1_d4iw" name="valueBar" src="v3541v" fileName="components/ComponentValueBar.xml" pkg="eg2y0ldp" xy="159,90"/>
-    <image id="n15_10not" name="n15" src="dmsi1d" fileName="images/sc_kuangjia_1.png" xy="0,305" size="1080,1615">
+    <image id="n15_10not" name="n15" src="dmsi1d" fileName="images/sc_kuangjia_1.png" xy="0,410" size="1080,1510">
       <relation target="" sidePair="height-height,top-top"/>
     </image>
     <image id="n16_10not" name="n16" src="10not1r" fileName="images/sc_kuangjia_3.png" xy="0,1613">
       <relation target="" sidePair="left-left,bottom-bottom"/>
     </image>
-    <component id="n17_10not" name="comTab" src="10not1s" fileName="components/Component1.xml" xy="96,290"/>
-    <list id="n10_d4iw" name="list" xy="0,368" size="1080,1160" layout="flow_hz" overflow="scroll" scrollBarFlags="64" colGap="22" defaultItem="ui://vlgobc15d4iwr" align="center" scrollItemToViewOnClick="false">
+    <component id="n17_10not" name="comTab" src="10not1s" fileName="components/Component1.xml" xy="95,398"/>
+    <list id="n10_d4iw" name="list" xy="0,468" size="1080,1060" layout="flow_hz" overflow="scroll" scrollBarFlags="64" colGap="22" defaultItem="ui://vlgobc15d4iwr" align="center" scrollItemToViewOnClick="false">
       <gearDisplay controller="c1" pages="0"/>
       <relation target="" sidePair="bottomext-bottom"/>
       <item/>
@@ -25,7 +25,7 @@
       <item/>
       <item/>
     </list>
-    <list id="n23_10not" name="listGift" xy="0,368" size="1080,1160" layout="flow_hz" overflow="scroll" colGap="10" defaultItem="ui://vlgobc1510not1t" align="center">
+    <list id="n23_10not" name="listGift" xy="0,468" size="1080,1060" layout="flow_hz" overflow="scroll" colGap="10" defaultItem="ui://vlgobc1510not1t" align="center">
       <gearDisplay controller="c1" pages="1"/>
       <relation target="" sidePair="bottomext-bottom"/>
       <item/>
@@ -39,7 +39,7 @@
       <item/>
       <item/>
     </list>
-    <list id="n24_10not" name="listExchange" xy="0,368" size="1080,1160" layout="flow_hz" overflow="scroll" scrollBarFlags="64" colGap="22" defaultItem="ui://vlgobc15d4iwr" align="center" scrollItemToViewOnClick="false">
+    <list id="n24_10not" name="listExchange" xy="0,468" size="1080,1060" layout="flow_hz" overflow="scroll" scrollBarFlags="64" colGap="22" defaultItem="ui://vlgobc15d4iwr" align="center" scrollItemToViewOnClick="false">
       <gearDisplay controller="c1" pages="2"/>
       <relation target="" sidePair="bottomext-bottom"/>
       <item/>

+ 2 - 0
FGUIProject/assets/RechargeStore/components/Button2.xml

@@ -2,7 +2,9 @@
 <component size="258,70" extention="Button">
   <controller name="button" pages="0,up,1,down" selected="0"/>
   <displayList>
+    <loader id="n4_iftf" name="loaMascot" xy="3,-231" size="252,232" url="ui://vlgobc15iftftac"/>
     <loader id="n2_10not" name="icon" xy="0,0" size="258,70" url="ui://vlgobc15dmsi17" autoSize="true"/>
   </displayList>
   <Button mode="Radio"/>
+  <customProperty target="loaMascot" propertyId="1"/>
 </component>

+ 7 - 4
FGUIProject/assets/RechargeStore/components/Component1.xml

@@ -2,14 +2,17 @@
 <component size="890,70">
   <controller name="c1" pages="0,,1,,2," selected="0"/>
   <displayList>
-    <component id="n17_10not" name="n17" src="dmsi1q" fileName="components/Button2.xml" xy="0,0">
-      <Button icon="ui://vlgobc15dmsi17" selectedIcon="ui://vlgobc15dmsi16" controller="c1" page="0"/>
+    <component id="n17_10not" name="btn0" src="dmsi1q" fileName="components/Button2.xml" xy="0,0">
+      <Button checked="true" icon="ui://vlgobc15dmsi17" selectedIcon="ui://vlgobc15dmsi16" controller="c1" page="0"/>
+      <property target="loaMascot" propertyId="1" value="ui://vlgobc15iftftaa"/>
     </component>
-    <component id="n18_10not" name="n18" src="dmsi1q" fileName="components/Button2.xml" xy="314,0">
+    <component id="n18_10not" name="btn1" src="dmsi1q" fileName="components/Button2.xml" xy="314,0">
       <Button icon="ui://vlgobc15dmsi19" selectedIcon="ui://vlgobc15dmsi18" controller="c1" page="1"/>
+      <property target="loaMascot" propertyId="1" value="ui://vlgobc15iftftab"/>
     </component>
-    <component id="n19_10not" name="n19" src="dmsi1q" fileName="components/Button2.xml" xy="628,0">
+    <component id="n19_10not" name="btn2" src="dmsi1q" fileName="components/Button2.xml" xy="628,0">
       <Button icon="ui://vlgobc15dmsi1b" selectedIcon="ui://vlgobc15dmsi1a" controller="c1" page="2"/>
+      <property target="loaMascot" propertyId="1" value="ui://vlgobc15iftftac"/>
     </component>
   </displayList>
 </component>

+ 33 - 9
FGUIProject/assets/RechargeStore/components/ListGiftItem.xml

@@ -1,18 +1,42 @@
 <?xml version="1.0" encoding="utf-8"?>
 <component size="478,401">
+  <controller name="c1" alias="礼包购买状态" pages="0,,1," selected="1"/>
+  <controller name="c2" alias="礼包解锁状态" pages="0,,1," selected="1"/>
   <displayList>
     <image id="n22_10not" name="n22" src="dmsi1k" fileName="images/sc_kuangdikjia_2.png" xy="0,0"/>
     <loader id="n23_10not" name="icon" xy="45,170" size="162,162" url="ui://vlgobc15d4iwl"/>
-    <image id="n24_10not" name="n24" src="dmsi1j" fileName="images/sc_kuangczcz.png" xy="2,97" group="n26_10not"/>
-    <text id="n25_10not" name="txtDesc" xy="20,123" size="91,81" group="n26_10not" fontSize="34" color="#ffe5cf" align="center" leading="-5" letterSpacing="-2" vars="true" text="超值&#xA;{count=250}%"/>
-    <group id="n26_10not" name="grpDiscount" xy="2,97" size="128,132"/>
     <text id="n27_10not" name="txtName" xy="346,135" pivot="0.5,0" anchor="true" size="85,56" fontSize="42" color="#906d4b" align="center" leading="-5" letterSpacing="-2" text="珍珠"/>
+    <image id="n24_10not" name="n24" src="dmsi1j" fileName="images/sc_kuangczcz.png" xy="2,98" group="n26_10not"/>
+    <text id="n25_10not" name="txtDesc" xy="31,121" size="69,81" group="n26_10not" font="ui://eg2y0ldpk1kha2" fontSize="34" color="#ffe5cf" align="center" leading="-5" letterSpacing="-2" vars="true" text="超值&#xA;{count=250}%"/>
+    <group id="n26_10not" name="grpDiscount" xy="2,98" size="128,132" advanced="true"/>
     <image id="n28_10not" name="n28" src="dmsi1l" fileName="images/sc_kuangsjsj.png" xy="269,232" group="n30_10not"/>
-    <text id="n29_10not" name="txtRefreshTime" xy="296,230" size="94,42" group="n30_10not" fontSize="30" color="#ffffff" align="center" leading="-5" letterSpacing="-2" strokeColor="#b98653" strokeSize="2" text="12小时"/>
-    <group id="n30_10not" name="grpRefreshTime" xy="269,230" size="155,42" advanced="true"/>
-    <text id="n32_10not" name="txtLimit" xy="35,332" pivot="0.5,0" size="189,36" fontSize="26" color="#ab9a87" align="center" leading="-5" letterSpacing="-2" ubb="true" text="每日限购(0/1)"/>
-    <text id="n31_10not" name="txtLock" xy="347,300" pivot="0.5,0" anchor="true" size="215,49" fontSize="36" color="#aa9561" align="center" leading="-5" letterSpacing="-2" text="通关4-10解锁"/>
-    <component id="n35_10not" name="btnBuy" src="10nota6" fileName="components/Button14.xml" pkg="eg2y0ldp" xy="225,288"/>
-    <image id="n34_10not" name="imgSellOut" src="10not1u" fileName="images/sc_kuangand.png" xy="2,96"/>
+    <text id="n29_10not" name="txtRefreshTime" xy="298,230" pivot="0.5,0" size="94,41" group="n30_10not" fontSize="30" color="#ffffff" align="center" leading="-5" letterSpacing="-2" strokeColor="#b98653" strokeSize="2" text="12小时"/>
+    <group id="n30_10not" name="grpRefreshTime" xy="269,230" size="155,42" advanced="true">
+      <gearDisplay controller="c1" pages="0"/>
+    </group>
+    <text id="n32_10not" name="txtLimit" xy="35,332" pivot="0.5,0" size="189,36" fontSize="26" color="#ab9a87" align="center" leading="-5" letterSpacing="-2" ubb="true" text="每日限购(0/1)">
+      <gearDisplay controller="c1" pages="0"/>
+    </text>
+    <text id="n31_10not" name="txtLock" xy="347,300" pivot="0.5,0" anchor="true" size="215,49" fontSize="36" color="#aa9561" align="center" leading="-5" letterSpacing="-2" text="通关4-10解锁">
+      <gearDisplay controller="c2" pages="1"/>
+    </text>
+    <loader id="n36_iftf" name="loaIcon" xy="258,294" size="60,60" group="n38_iftf" visible="false" url="ui://vlgobc15iftftad" fill="scaleFree"/>
+    <text id="n37_iftf" name="txtIcon" xy="258,299" pivot="0.5,0" size="44,54" group="n38_iftf" fontSize="40" color="#896e5f" text="¥"/>
+    <group id="n38_iftf" name="grpIcon" xy="258,299" size="44,54" group="n43_iftf" advanced="true" layout="hz" excludeInvisibles="true"/>
+    <text id="n39_iftf" name="txtOriginalPrice" xy="312,299" pivot="0.5,0" size="54,54" group="n41_iftf" fontSize="40" color="#bca89d" align="center" text="10"/>
+    <image id="n40_iftf" name="n40" src="iftftae" fileName="images/sc_xtxtxt(1).png" xy="318,326" pivot="0.5,0" size="48,2" group="n41_iftf">
+      <relation target="n39_iftf" sidePair="width-width"/>
+    </image>
+    <group id="n41_iftf" name="grpOriginalPrice" xy="312,299" size="54,54" group="n43_iftf" advanced="true"/>
+    <text id="n42_iftf" name="txtPrice" xy="376,299" pivot="0.5,0" size="54,54" group="n43_iftf" fontSize="40" color="#896e5f" align="right" text="10"/>
+    <group id="n43_iftf" name="grpPrice" xy="258,299" size="172,54" advanced="true" layout="hz" colGap="10" excludeInvisibles="true">
+      <gearDisplay controller="c1" pages="0"/>
+      <gearDisplay2 controller="c2" pages="0" condition="0"/>
+      <relation target="" sidePair="center-center"/>
+    </group>
+    <text id="n44_iftf" name="n44" xy="291,296" size="124,54" fontSize="40" color="#a59f8f" align="center" text="已售罄">
+      <gearDisplay controller="c1" pages="1"/>
+      <gearDisplay2 controller="c2" pages="0" condition="0"/>
+    </text>
   </displayList>
 </component>

BIN
FGUIProject/assets/RechargeStore/images/hyhy_btbt_1.png


BIN
FGUIProject/assets/RechargeStore/images/sc_cwcw_1.png


BIN
FGUIProject/assets/RechargeStore/images/sc_cwcw_2.png


BIN
FGUIProject/assets/RechargeStore/images/sc_cwcw_3.png


BIN
FGUIProject/assets/RechargeStore/images/sc_xtxtxt(1).png


BIN
FGUIProject/assets/RechargeStore/imagesExport/jinbi_1(1).png


+ 6 - 0
FGUIProject/assets/RechargeStore/package.xml

@@ -41,6 +41,12 @@
     <component id="10not1v" name="GiftBagBuyUI.xml" path="/" exported="true"/>
     <image id="10not1w" name="jinbi_1.png" path="/imagesExport/"/>
     <image id="10not1x" name="sc_xtxtxt.png" path="/images/" scale="9grid" scale9grid="19,2,38,4"/>
+    <image id="iftfta9" name="hyhy_btbt_1.png" path="/images/"/>
+    <image id="iftftaa" name="sc_cwcw_1.png" path="/images/"/>
+    <image id="iftftab" name="sc_cwcw_2.png" path="/images/"/>
+    <image id="iftftac" name="sc_cwcw_3.png" path="/images/"/>
+    <image id="iftftad" name="jinbi_1(1).png" path="/imagesExport/"/>
+    <image id="iftftae" name="sc_xtxtxt(1).png" path="/images/" scale="9grid" scale9grid="12,0,44,2"/>
   </resources>
   <publish name="" path="..\GameClient\Assets\ResIn\UI\RechargeStore" packageCount="2" genCode="true" extractAlpha="true"/>
 </packageDescription>

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

@@ -42,5 +42,7 @@ namespace GFGGame
 
         public const string LUCKY_BOX = "LUCKY_BOX";
 
+        public const string BUY_GIFT_SUCCESS = "BUY_GIFT_SUCCESS";//¹ºÂòÀñ°ü³É¹¦
+
     }
 }

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

@@ -132,6 +132,7 @@ namespace GFGGame
             SuitFosterDataManager.Instance.Clear();
             StudioDataManager.Instance.Clear();
             StorageDataManager.Instance.Clear();
+            RechargeDataManager.Instance.Clear();
             if (logout)
             {
                 Logout();
@@ -187,6 +188,9 @@ namespace GFGGame
             SuitFosterProxy.SendGetSuitInfos().Coroutine();
             MainStorySProxy.GetStoryInfos().Coroutine();
             CardSProxy.GetCardInfos().Coroutine();
+            RechargeSProxy.ReqRechargeInfo().Coroutine();
+            RechargeSProxy.ReqRequestGiftBagInfo().Coroutine();
+            RechargeSProxy.ReqExchangeInfo().Coroutine();
 
             EquipDataCache.cacher.autoPlay = StorageDataManager.Instance.GetStorageValue(ConstStorageId.STORAGE_AUTO_PLAY) <= 0 ? false : true;
             EquipDataCache.cacher.fightSpeed = StorageDataManager.Instance.GetStorageValue(ConstStorageId.STORAGE_AUTO_PLAY_SPEED) <= 1 ? 1 : StorageDataManager.Instance.GetStorageValue(ConstStorageId.STORAGE_AUTO_PLAY_SPEED);

+ 70 - 4
GameClient/Assets/Game/HotUpdate/Data/RechargeDataManager.cs

@@ -18,8 +18,25 @@ namespace GFGGame
         public static int STORY_LV = 1;
         public static int ROLE_LV = 2;
     }
+    public class RefreshType
+    {
+        public static int NONE = 0;
+        public static int DAY = 1;
+        public static int WEEK = 2;
+        public static int MONTH = 3;
+    }
+    public class CostType
+    {
+        public static int FREE = 0;
+        public static int MONEY = 1;
+        public static int RMB = 2;
+        public static int ITEM = 3;
+    }
+
     public class RechargeDataManager : SingletonBase<RechargeDataManager>
     {
+        public string[] refreshType = { "", "日", "周", "月" };
+
         private Dictionary<int, int> _rechargeDic = new Dictionary<int, int>();
         private Dictionary<int, int> _giftDic = new Dictionary<int, int>();
         private Dictionary<int, int> _exchangeDic = new Dictionary<int, int>();
@@ -125,11 +142,11 @@ namespace GFGGame
         }
         private List<GiftBagCfg> GetNoneGiftCfg()
         {
-            List<GiftBagCfg> giftBagCfgs = GiftBagCfgArray.Instance.GetCfgs(LockType.NONE);
+            List<GiftBagCfg> giftBagCfgs = new List<GiftBagCfg>(GiftBagCfgArray.Instance.GetCfgs(LockType.NONE));
 
             for (int i = giftBagCfgs.Count - 1; i >= 0; i--)
             {
-                if (giftBagCfgs[i].startTime != "" && TimeUtil.IsBeforeCurTime(giftBagCfgs[i].startTime) || giftBagCfgs[i].endTime != "" && TimeUtil.IsLaterCurTime(giftBagCfgs[i].endTime))
+                if (giftBagCfgs[i].startTime != "" && !TimeUtil.IsBeforeCurTime(giftBagCfgs[i].startTime) || giftBagCfgs[i].endTime != "" && !TimeUtil.IsLaterCurTime(giftBagCfgs[i].endTime))
                 {
                     giftBagCfgs.RemoveAt(i);
                 }
@@ -150,7 +167,7 @@ namespace GFGGame
             });
             for (int i = 0; i < giftBagCfgs.Count; i++)
             {
-                if (InstanceZonesDataManager.CheckLevelPass(giftBagCfgs[i].storyLevelId) && (GetGiftBuyNumById(giftBagCfgs[i].id) < giftBagCfgs[i].maxBuyNum)) return giftBagCfgs[i];
+                if (GetGiftStateById(giftBagCfgs[i].id) && (GetGiftBuyNumById(giftBagCfgs[i].id) < giftBagCfgs[i].maxBuyNum)) return giftBagCfgs[i];
             }
             return giftBagCfgs[0];
         }
@@ -168,9 +185,58 @@ namespace GFGGame
             });
             for (int i = 0; i < giftBagCfgs.Count; i++)
             {
-                if ((GameGlobal.myNumericComponent.GetAsInt(NumericType.Lvl) >= giftBagCfgs[i].lv) && (GetGiftBuyNumById(giftBagCfgs[i].id) < giftBagCfgs[i].maxBuyNum)) return giftBagCfgs[i];
+                if (GetGiftStateById(giftBagCfgs[i].id) && (GetGiftBuyNumById(giftBagCfgs[i].id) < giftBagCfgs[i].maxBuyNum)) return giftBagCfgs[i];
             }
             return giftBagCfgs[0];
         }
+        /// <summary>
+        /// 根据礼包Id获取礼包解锁状态
+        /// /// </summary>
+        /// <param name="giftId"></param>
+        /// <returns></returns>
+        public bool GetGiftStateById(int giftId)
+        {
+            GiftBagCfg cfg = GiftBagCfgArray.Instance.GetCfg(giftId);
+
+            if (cfg.lockType == LockType.NONE)
+            {
+                return true;
+            }
+            else if (cfg.lockType == LockType.STORY_LV)
+            {
+                return InstanceZonesDataManager.CheckLevelPass(cfg.storyLevelId);
+            }
+            else
+            {
+                return GameGlobal.myNumericComponent.GetAsInt(NumericType.Lvl) >= cfg.lv;
+            }
+        }
+        /// <summary>
+        /// 根据礼包id获取剩余刷新时间
+        /// </summary>
+        /// <param name="giftId"></param>
+        /// <returns></returns>
+        public string GetRefreshTime(int giftId)
+        {
+            int endTime = 0;
+            GiftBagCfg cfg = GiftBagCfgArray.Instance.GetCfg(giftId);
+            if (cfg.refreshType == RefreshType.NONE)
+            {
+                return "";
+            }
+            else if (cfg.refreshType == RefreshType.DAY)
+            {
+                endTime = TimeUtil.GetTomorrowTime(GlobalCfgArray.globalCfg.refreshTime);
+            }
+            else if (cfg.refreshType == RefreshType.WEEK)
+            {
+                endTime = TimeUtil.GetNextWeekTime(GlobalCfgArray.globalCfg.refreshTime);
+            }
+            if (cfg.refreshType == RefreshType.MONTH)
+            {
+                endTime = TimeUtil.GetNextMonthTime(GlobalCfgArray.globalCfg.refreshTime);
+            }
+            return TimeUtil.FormattingTime(TimeHelper.ServerNowSecs, endTime);
+        }
     }
 }

+ 9 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CommonGame/UI_Button14.cs

@@ -8,8 +8,11 @@ namespace UI.CommonGame
     {
         public GButton target;
         public Controller m_c1;
+        public GLoader m_loaIcon;
         public GTextField m_txtIcon;
+        public GGroup m_grpIcon;
         public GTextField m_txtOriginalPrice;
+        public GGroup m_grpOriginalPrice;
         public GTextField m_txtPrice;
         public const string URL = "ui://eg2y0ldp10nota6";
         public const string PACKAGE_NAME = "CommonGame";
@@ -59,15 +62,21 @@ namespace UI.CommonGame
         private void Init(GComponent comp)
         {
             m_c1 = comp.GetController("c1");
+            m_loaIcon = (GLoader)comp.GetChild("loaIcon");
             m_txtIcon = (GTextField)comp.GetChild("txtIcon");
+            m_grpIcon = (GGroup)comp.GetChild("grpIcon");
             m_txtOriginalPrice = (GTextField)comp.GetChild("txtOriginalPrice");
+            m_grpOriginalPrice = (GGroup)comp.GetChild("grpOriginalPrice");
             m_txtPrice = (GTextField)comp.GetChild("txtPrice");
         }
         public void Dispose(bool disposeTarget = false)
         {
             m_c1 = null;
+            m_loaIcon = null;
             m_txtIcon = null;
+            m_grpIcon = null;
             m_txtOriginalPrice = null;
+            m_grpOriginalPrice = null;
             m_txtPrice = null;
             if(disposeTarget && target != null)
             {

+ 71 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/RechargeStore/UI_Button2.cs

@@ -0,0 +1,71 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.RechargeStore
+{
+    public partial class UI_Button2
+    {
+        public GButton target;
+        public GLoader m_loaMascot;
+        public const string URL = "ui://vlgobc15dmsi1q";
+        public const string PACKAGE_NAME = "RechargeStore";
+        public const string RES_NAME = "Button2";
+        private static UI_Button2 _proxy;
+
+        public static UI_Button2 Create(GObject gObject = null)
+        {
+            var ui = new UI_Button2();
+            if(gObject == null)
+            	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GButton)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_Button2 Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_Button2();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GButton)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_loaMascot = (GLoader)comp.GetChild("loaMascot");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_loaMascot = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/RechargeStore/UI_Button2.cs.meta

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

+ 12 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/RechargeStore/UI_Component1.cs

@@ -8,6 +8,9 @@ namespace UI.RechargeStore
     {
         public GComponent target;
         public Controller m_c1;
+        public UI_Button2 m_btn0;
+        public UI_Button2 m_btn1;
+        public UI_Button2 m_btn2;
         public const string URL = "ui://vlgobc1510not1s";
         public const string PACKAGE_NAME = "RechargeStore";
         public const string RES_NAME = "Component1";
@@ -56,10 +59,19 @@ namespace UI.RechargeStore
         private void Init(GComponent comp)
         {
             m_c1 = comp.GetController("c1");
+            m_btn0 = (UI_Button2)UI_Button2.Create(comp.GetChild("btn0"));
+            m_btn1 = (UI_Button2)UI_Button2.Create(comp.GetChild("btn1"));
+            m_btn2 = (UI_Button2)UI_Button2.Create(comp.GetChild("btn2"));
         }
         public void Dispose(bool disposeTarget = false)
         {
             m_c1 = null;
+            m_btn0.Dispose();
+            m_btn0 = null;
+            m_btn1.Dispose();
+            m_btn1 = null;
+            m_btn2.Dispose();
+            m_btn2 = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 15 - 3
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/RechargeStore/UI_GiftBagBuyUI.cs

@@ -7,6 +7,7 @@ namespace UI.RechargeStore
     public partial class UI_GiftBagBuyUI
     {
         public GComponent target;
+        public Controller m_c1;
         public GImage m_bg;
         public GTextField m_txtName;
         public GLoader m_loaIcon;
@@ -14,12 +15,15 @@ namespace UI.RechargeStore
         public GList m_list;
         public GTextField m_txtRefreshTime;
         public GGroup m_grpRefreshTime;
-        public GLoader m_icon;
+        public GLoader m_loaPriceIcon;
         public GTextField m_txtIcon;
+        public GGroup m_grpIcon;
         public GTextField m_txtOriginalPrice;
+        public GGroup m_grpOriginalPrice;
         public GTextField m_txtPrice;
         public GGroup m_grpPrice;
         public GButton m_btnBuy;
+        public GTextField m_txtLock;
         public const string URL = "ui://vlgobc1510not1v";
         public const string PACKAGE_NAME = "RechargeStore";
         public const string RES_NAME = "GiftBagBuyUI";
@@ -67,6 +71,7 @@ namespace UI.RechargeStore
 
         private void Init(GComponent comp)
         {
+            m_c1 = comp.GetController("c1");
             m_bg = (GImage)comp.GetChild("bg");
             m_txtName = (GTextField)comp.GetChild("txtName");
             m_loaIcon = (GLoader)comp.GetChild("loaIcon");
@@ -74,15 +79,19 @@ namespace UI.RechargeStore
             m_list = (GList)comp.GetChild("list");
             m_txtRefreshTime = (GTextField)comp.GetChild("txtRefreshTime");
             m_grpRefreshTime = (GGroup)comp.GetChild("grpRefreshTime");
-            m_icon = (GLoader)comp.GetChild("icon");
+            m_loaPriceIcon = (GLoader)comp.GetChild("loaPriceIcon");
             m_txtIcon = (GTextField)comp.GetChild("txtIcon");
+            m_grpIcon = (GGroup)comp.GetChild("grpIcon");
             m_txtOriginalPrice = (GTextField)comp.GetChild("txtOriginalPrice");
+            m_grpOriginalPrice = (GGroup)comp.GetChild("grpOriginalPrice");
             m_txtPrice = (GTextField)comp.GetChild("txtPrice");
             m_grpPrice = (GGroup)comp.GetChild("grpPrice");
             m_btnBuy = (GButton)comp.GetChild("btnBuy");
+            m_txtLock = (GTextField)comp.GetChild("txtLock");
         }
         public void Dispose(bool disposeTarget = false)
         {
+            m_c1 = null;
             m_bg = null;
             m_txtName = null;
             m_loaIcon = null;
@@ -90,12 +99,15 @@ namespace UI.RechargeStore
             m_list = null;
             m_txtRefreshTime = null;
             m_grpRefreshTime = null;
-            m_icon = null;
+            m_loaPriceIcon = null;
             m_txtIcon = null;
+            m_grpIcon = null;
             m_txtOriginalPrice = null;
+            m_grpOriginalPrice = null;
             m_txtPrice = null;
             m_grpPrice = null;
             m_btnBuy = null;
+            m_txtLock = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 33 - 9
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/RechargeStore/UI_ListGiftItem.cs

@@ -7,15 +7,23 @@ namespace UI.RechargeStore
     public partial class UI_ListGiftItem
     {
         public GComponent target;
+        public Controller m_c1;
+        public Controller m_c2;
         public GLoader m_icon;
-        public GTextField m_txtDesc;
         public GTextField m_txtName;
+        public GTextField m_txtDesc;
+        public GGroup m_grpDiscount;
         public GTextField m_txtRefreshTime;
         public GGroup m_grpRefreshTime;
         public GTextField m_txtLimit;
         public GTextField m_txtLock;
-        public GButton m_btnBuy;
-        public GImage m_imgSellOut;
+        public GLoader m_loaIcon;
+        public GTextField m_txtIcon;
+        public GGroup m_grpIcon;
+        public GTextField m_txtOriginalPrice;
+        public GGroup m_grpOriginalPrice;
+        public GTextField m_txtPrice;
+        public GGroup m_grpPrice;
         public const string URL = "ui://vlgobc1510not1t";
         public const string PACKAGE_NAME = "RechargeStore";
         public const string RES_NAME = "ListGiftItem";
@@ -63,27 +71,43 @@ namespace UI.RechargeStore
 
         private void Init(GComponent comp)
         {
+            m_c1 = comp.GetController("c1");
+            m_c2 = comp.GetController("c2");
             m_icon = (GLoader)comp.GetChild("icon");
-            m_txtDesc = (GTextField)comp.GetChild("txtDesc");
             m_txtName = (GTextField)comp.GetChild("txtName");
+            m_txtDesc = (GTextField)comp.GetChild("txtDesc");
+            m_grpDiscount = (GGroup)comp.GetChild("grpDiscount");
             m_txtRefreshTime = (GTextField)comp.GetChild("txtRefreshTime");
             m_grpRefreshTime = (GGroup)comp.GetChild("grpRefreshTime");
             m_txtLimit = (GTextField)comp.GetChild("txtLimit");
             m_txtLock = (GTextField)comp.GetChild("txtLock");
-            m_btnBuy = (GButton)comp.GetChild("btnBuy");
-            m_imgSellOut = (GImage)comp.GetChild("imgSellOut");
+            m_loaIcon = (GLoader)comp.GetChild("loaIcon");
+            m_txtIcon = (GTextField)comp.GetChild("txtIcon");
+            m_grpIcon = (GGroup)comp.GetChild("grpIcon");
+            m_txtOriginalPrice = (GTextField)comp.GetChild("txtOriginalPrice");
+            m_grpOriginalPrice = (GGroup)comp.GetChild("grpOriginalPrice");
+            m_txtPrice = (GTextField)comp.GetChild("txtPrice");
+            m_grpPrice = (GGroup)comp.GetChild("grpPrice");
         }
         public void Dispose(bool disposeTarget = false)
         {
+            m_c1 = null;
+            m_c2 = null;
             m_icon = null;
-            m_txtDesc = null;
             m_txtName = null;
+            m_txtDesc = null;
+            m_grpDiscount = null;
             m_txtRefreshTime = null;
             m_grpRefreshTime = null;
             m_txtLimit = null;
             m_txtLock = null;
-            m_btnBuy = null;
-            m_imgSellOut = null;
+            m_loaIcon = null;
+            m_txtIcon = null;
+            m_grpIcon = null;
+            m_txtOriginalPrice = null;
+            m_grpOriginalPrice = null;
+            m_txtPrice = null;
+            m_grpPrice = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 6 - 2
GameClient/Assets/Game/HotUpdate/ServerProxy/RechargeSProxy.cs

@@ -47,7 +47,7 @@ namespace GFGGame
                 }
             }
         }
-        public static async ETTask ReqBuyGiftBag(int giftId)
+        public static async ETTask<bool> ReqBuyGiftBag(int giftId)
         {
             M2C_BuyGiftBag response = null;
             response = (M2C_BuyGiftBag)await MessageHelper.SendToServer(new C2M_BuyGiftBag() { GiftBagId = giftId });
@@ -56,10 +56,14 @@ namespace GFGGame
                 if (response.Error == ErrorCode.ERR_Success)
                 {
                     RechargeDataManager.Instance.UpdateGiftData(response.GiftBagId, response.BuyTimes);
+                    BonusController.TryShowBonusList(GiftBagCfgArray.Instance.GetCfg(response.GiftBagId).itemsArr);
+                    EventAgent.DispatchEvent(ConstMessage.BUY_GIFT_SUCCESS);
+                    return true;
                 }
             }
+            return false;
         }
-        public static async ETTask ReqExchangeInfo(int giftId)
+        public static async ETTask ReqExchangeInfo()
         {
             M2C_RequestShopExchangeInfo response = null;
             response = (M2C_RequestShopExchangeInfo)await MessageHelper.SendToServer(new C2M_RequestShopExchangeInfo() { });

+ 128 - 0
GameClient/Assets/Game/HotUpdate/Views/RechargeStore/GiftBagBuyView.cs

@@ -0,0 +1,128 @@
+using System.Threading.Tasks;
+using FairyGUI;
+using UI.RechargeStore;
+
+namespace GFGGame
+{
+    public class GiftBagBuyView : BaseWindow
+    {
+        private UI_GiftBagBuyUI _ui;
+        private int _giftId;
+        public override void Dispose()
+        {
+
+            if (_ui != null)
+            {
+                _ui.Dispose();
+            }
+            _ui = null;
+            base.Dispose();
+        }
+        protected override void OnHide()
+        {
+            base.OnHide();
+
+        }
+        protected override void OnInit()
+        {
+            base.OnInit();
+            packageName = UI_GiftBagBuyUI.PACKAGE_NAME;
+            _ui = UI_GiftBagBuyUI.Create();
+            this.viewCom = _ui.target;
+            this.viewCom.Center();
+            this.modal = true;
+            viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
+
+            _ui.m_btnBuy.onClick.Add(OnBtnBuyClick);
+            _ui.m_list.itemRenderer = ListItemRender;
+        }
+
+        protected override void OnShown()
+        {
+            base.OnShown();
+            _giftId = (int)this.viewData;
+            GiftBagCfg cfg = GiftBagCfgArray.Instance.GetCfg(_giftId);
+            _ui.m_txtName.text = cfg.name;
+            _ui.m_loaIcon.url = string.Format("ui://RechargeStore/{0}", cfg.res);
+            _ui.m_list.numItems = cfg.itemsArr.Length;
+            _ui.m_c1.selectedIndex = RechargeDataManager.Instance.GetGiftStateById(_giftId) ? 0 : 1;
+            if (cfg.lockType == LockType.STORY_LV)
+            {
+                StoryLevelCfg storyLevelCfg = StoryLevelCfgArray.Instance.GetCfg(cfg.storyLevelId);
+                _ui.m_txtLock.text = string.Format("通关{0}-{1}解锁", StoryUtil.GetChapterOrder(storyLevelCfg.chapterId), storyLevelCfg.order);
+            }
+            else if (cfg.lockType == LockType.ROLE_LV)
+            {
+                _ui.m_txtLock.text = string.Format("角色达到{0}级解锁", cfg.lv);
+            }
+            int buyNum = RechargeDataManager.Instance.GetGiftBuyNumById(cfg.id);
+            _ui.m_txtLimit.text = string.Format("每{0}限购({1}/{2})", RechargeDataManager.Instance.refreshType[cfg.refreshType], StringUtil.GetColorText(buyNum.ToString(), "#DA8870"), cfg.maxBuyNum);
+            _ui.m_txtRefreshTime.text = RechargeDataManager.Instance.GetRefreshTime(cfg.id);
+            _ui.m_grpRefreshTime.visible = RechargeDataManager.Instance.GetRefreshTime(cfg.id) != "";
+
+            _ui.m_txtOriginalPrice.text = cfg.originalPrice.ToString();
+            if (cfg.price > 0 && cfg.costType != CostType.FREE)
+            {
+                _ui.m_grpOriginalPrice.visible = cfg.originalPrice > 0;
+                _ui.m_grpIcon.visible = true;
+                _ui.m_txtPrice.text = cfg.price.ToString();
+
+                if (cfg.costType == CostType.RMB)
+                {
+                    _ui.m_loaPriceIcon.visible = false;
+                    _ui.m_txtIcon.visible = true;
+                    _ui.m_txtIcon.text = "¥";
+                }
+                else
+                {
+                    ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(cfg.costId);
+                    _ui.m_loaPriceIcon.url = ResPathUtil.GetIconPath(itemCfg);
+                    _ui.m_loaPriceIcon.visible = true;
+                    _ui.m_txtIcon.visible = false;
+                }
+            }
+            else
+            {
+                _ui.m_grpIcon.visible = false;
+                _ui.m_grpOriginalPrice.visible = false;
+                _ui.m_txtPrice.text = "免费";
+            }
+        }
+
+
+
+        private void ListItemRender(int index, GObject item)
+        {
+            GiftBagCfg cfg = GiftBagCfgArray.Instance.GetCfg(_giftId);
+            ItemData itemData = ItemUtil.createItemData(cfg.itemsArr[index]);
+            if (item.data == null)
+            {
+                item.data = new ItemView(item as GComponent);
+            }
+            (item.data as ItemView).SetData(itemData);
+        }
+        private void OnBtnBuyClick()
+        {
+
+            GiftBagCfg cfg = GiftBagCfgArray.Instance.GetCfg(_giftId);
+            if (cfg.costType == CostType.MONEY || cfg.costType == CostType.ITEM)
+            {
+                int hasNum = ItemDataManager.GetItemNum(cfg.costId);
+                if (hasNum < cfg.price)
+                {
+                    PromptController.Instance.ShowFloatTextPrompt("道具不足");
+                    return;
+                }
+            }
+            if (cfg.costType == CostType.RMB)
+            {
+
+            }
+            else
+            {
+                RechargeSProxy.ReqBuyGiftBag(_giftId).Coroutine();
+                this.Hide();
+            }
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/RechargeStore/GiftBagBuyView.cs.meta

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

+ 77 - 2
GameClient/Assets/Game/HotUpdate/Views/RechargeStore/RechargeStoreView.cs

@@ -1,6 +1,7 @@
 using UI.RechargeStore;
 using UI.CommonGame;
 using FairyGUI;
+using System.Collections.Generic;
 
 namespace GFGGame
 {
@@ -9,6 +10,7 @@ namespace GFGGame
         private UI_RechargeStoreUI _ui;
         private ValueBarController _valueBarController;
 
+        private List<GiftBagCfg> _giftCfgs;
         public override void Dispose()
         {
             _valueBarController.Dispose();
@@ -37,6 +39,8 @@ namespace GFGGame
 
             _ui.m_comTab.m_c1.onChanged.Add(OnComTabChange);
             _ui.m_c1.onChanged.Add(OnTabChange);
+
+            EventAgent.AddEventListener(ConstMessage.BUY_GIFT_SUCCESS, UpdateGiftBagList);
         }
 
         protected override void OnShown()
@@ -69,13 +73,18 @@ namespace GFGGame
             }
             else if (_ui.m_c1.selectedIndex == RechargeStoreType.GIFT)
             {
-                _ui.m_listGift.numItems = RechargeDataManager.Instance.GetGiftBagCfgs().Count;
+                UpdateGiftBagList();
             }
             else if (_ui.m_c1.selectedIndex == RechargeStoreType.EXCHANGE)
             {
                 _ui.m_listExchange.numItems = ShopExchangeCfgArray.Instance.dataArray.Length;
             }
         }
+        private void UpdateGiftBagList()
+        {
+            _giftCfgs = RechargeDataManager.Instance.GetGiftBagCfgs();
+            _ui.m_listGift.numItems = _giftCfgs.Count;
+        }
         private void ListItemRenderer(int index, GObject obj)
         {
             RechargeCfg itemData = RechargeCfgArray.Instance.dataArray[index];
@@ -100,8 +109,74 @@ namespace GFGGame
 
         private void ListGiftItemRenderer(int index, GObject obj)
         {
+            UI_ListGiftItem item = UI_ListGiftItem.Proxy(obj);
+            GiftBagCfg cfg = _giftCfgs[index];
+            item.m_txtName.text = cfg.name;
+            item.m_icon.url = string.Format("ui://RechargeStore/{0}", cfg.res);
 
-        }
+            item.m_txtDesc.SetVar("count", cfg.desc);
+            item.m_grpDiscount.visible = cfg.desc != "";
+
+            item.m_txtRefreshTime.text = RechargeDataManager.Instance.GetRefreshTime(cfg.id);
+            item.m_grpRefreshTime.visible = RechargeDataManager.Instance.GetRefreshTime(cfg.id) != "";
+
+            item.m_c2.selectedIndex = RechargeDataManager.Instance.GetGiftStateById(cfg.id) ? 0 : 1;
+            if (cfg.lockType == LockType.STORY_LV)
+            {
+                StoryLevelCfg storyLevelCfg = StoryLevelCfgArray.Instance.GetCfg(cfg.storyLevelId);
+                item.m_txtLock.text = string.Format("通关{0}-{1}解锁", StoryUtil.GetChapterOrder(storyLevelCfg.chapterId), storyLevelCfg.order);
+            }
+            else if (cfg.lockType == LockType.ROLE_LV)
+            {
+                item.m_txtLock.text = string.Format("角色达到{0}级解锁", cfg.lv);
+            }
+
+            int buyNum = RechargeDataManager.Instance.GetGiftBuyNumById(cfg.id);
+            item.m_txtLimit.text = string.Format("每{0}限购({1}/{2})", RechargeDataManager.Instance.refreshType[cfg.refreshType], StringUtil.GetColorText(buyNum.ToString(), "#DA8870"), cfg.maxBuyNum);
+            // UI_Button14 btn = UI_Button14.Proxy(item.m_btnBuy);
+            item.m_c1.selectedIndex = cfg.maxBuyNum == 0 || buyNum < cfg.maxBuyNum ? 0 : 1;
+            if (item.m_c1.selectedIndex == 0)
+            {
+                item.m_txtOriginalPrice.text = cfg.originalPrice.ToString();
+                if (cfg.price > 0 && cfg.costType != CostType.FREE)
+                {
+                    item.m_grpOriginalPrice.visible = cfg.originalPrice > 0;
+                    item.m_grpIcon.visible = true;
+                    item.m_txtPrice.text = cfg.price.ToString();
+
+                    if (cfg.costType == CostType.RMB)
+                    {
+                        item.m_loaIcon.visible = false;
+                        item.m_txtIcon.visible = true;
+                        item.m_txtIcon.text = "¥";
+                    }
+                    else
+                    {
+                        ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(cfg.costId);
+                        item.m_loaIcon.url = ResPathUtil.GetIconPath(itemCfg);
+                        item.m_loaIcon.visible = true;
+                        item.m_txtIcon.visible = false;
+                    }
+                }
+                else
+                {
+                    item.m_grpIcon.visible = false;
+                    item.m_grpOriginalPrice.visible = false;
+                    item.m_txtPrice.text = "免费";
+                }
+            }
 
+            if (item.target.data == null)
+            {
+                item.target.onClick.Add(OnBtnBuyClick);
+            }
+            item.target.data = cfg.id;
+
+        }
+        private void OnBtnBuyClick(EventContext context)
+        {
+            GObject btn = context.sender as GObject;
+            ViewManager.Show<GiftBagBuyView>(btn.data);
+        }
     }
 }

BIN
GameClient/Assets/ResIn/Config/excelConfig.sqlite.bytes


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


BIN
GameClient/Assets/ResIn/UI/RechargeStore/RechargeStore_atlas0!a.png


BIN
GameClient/Assets/ResIn/UI/RechargeStore/RechargeStore_atlas0.png


BIN
GameClient/Assets/ResIn/UI/RechargeStore/RechargeStore_fui.bytes