zhaoyang vor 2 Jahren
Ursprung
Commit
b335c2a6ab
35 geänderte Dateien mit 1205 neuen und 1204 gelöschten Zeilen
  1. 1 1
      FGUIProject/assets/CommonGame/components/ComHead.xml
  2. 9 9
      FGUIProject/assets/CommonGame/components/ComponentValueBar.xml
  3. 0 0
      FGUIProject/assets/Main/ComClick.xml
  4. 0 0
      FGUIProject/assets/Main/ComSkillTips.xml
  5. 2 2
      FGUIProject/assets/Main/StoryFightSingleScoreUI.xml
  6. 37 9
      FGUIProject/assets/Main/StoryFightTargetScoreUI.xml
  7. 4 17
      FGUIProject/assets/Main/StorySkillUI.xml
  8. 15 22
      FGUIProject/assets/Main/components/ComAllCircle.xml
  9. 0 7
      FGUIProject/assets/Main/components/ComDeduction.xml
  10. 0 11
      FGUIProject/assets/Main/components/ComRoleSkill1.xml
  11. 22 0
      FGUIProject/assets/Main/components/ComSkillShow.xml
  12. 14 0
      FGUIProject/assets/Main/components/ComTargetCard.xml
  13. 4 4
      FGUIProject/assets/Main/components/ProgressBarTargetScore.xml
  14. 2 1
      FGUIProject/assets/Main/package.xml
  15. 1 0
      GameClient/Assets/Game/HotUpdate/Constant/ConstMessage.cs
  16. 225 57
      GameClient/Assets/Game/HotUpdate/Data/ScoreSystemData.cs
  17. 83 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_ComSkillShow.cs
  18. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_ComSkillShow.cs.meta
  19. 74 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_ComTargetCard.cs
  20. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_ComTargetCard.cs.meta
  21. 3 3
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_StoryFightSingleScoreUI.cs
  22. 31 5
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_StoryFightTargetScoreUI.cs
  23. 7 15
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_StorySkillUI.cs
  24. 5 1
      GameClient/Assets/Game/HotUpdate/Views/Card/CardFosterView.cs
  25. 27 44
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryFightSingleScoreView.cs
  26. 572 796
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryFightTargetScoreView.cs
  27. 45 7
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StorySkillView.cs
  28. 0 1
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StroyFightResultView.cs
  29. BIN
      GameClient/Assets/ResIn/Config/excelConfig.sqlite.bytes
  30. BIN
      GameClient/Assets/ResIn/UI/CommonGame/CommonGame_fui.bytes
  31. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas_vuz5bw!a.png
  32. 0 96
      GameClient/Assets/ResIn/UI/Main/Main_atlas_vuz5bw!a.png.meta
  33. BIN
      GameClient/Assets/ResIn/UI/Main/Main_atlas_vuz5bw.png
  34. 0 96
      GameClient/Assets/ResIn/UI/Main/Main_atlas_vuz5bw.png.meta
  35. BIN
      GameClient/Assets/ResIn/UI/Main/Main_fui.bytes

+ 1 - 1
FGUIProject/assets/CommonGame/components/ComHead.xml

@@ -2,7 +2,7 @@
 <component size="230,230" overflow="hidden" opaque="false">
   <displayList>
     <graph id="n39_r9ri" name="n39" xy="30,37" pivot="0.5,0.5" size="166,166" group="n41_r9ri" aspect="true" type="eclipse" lineSize="0" fillColor="#ffeed5be"/>
-    <loader id="n40_r9ri" name="loaIcon" xy="31,38" size="166,164" group="n41_r9ri" url="ui://374k3dwvr9ri1z" fill="scale"/>
+    <loader id="n40_r9ri" name="loaIcon" xy="31,38" size="166,164" group="n41_r9ri" url="ui://374k3dwvr9ri1z" align="center" fill="scale"/>
     <image id="n35_r9ri" name="n35" src="r9ritjs" fileName="images/grxx_zytxtx.png" xy="28,35" size="170,171" group="n41_r9ri" aspect="true"/>
     <loader id="n37_r9ri" name="loaBorder" xy="0,0" pivot="0.5,0.5" size="230,230" group="n41_r9ri" touchable="false" url="ui://374k3dwvysx9ge" autoSize="true"/>
     <group id="n41_r9ri" name="n41" xy="0,0" size="230,230"/>

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

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

+ 0 - 0
FGUIProject/assets/Main/components/ComClick.xml → FGUIProject/assets/Main/ComClick.xml


+ 0 - 0
FGUIProject/assets/Main/components/ComSkillTips.xml → FGUIProject/assets/Main/ComSkillTips.xml


+ 2 - 2
FGUIProject/assets/Main/StoryFightSingleScoreUI.xml

@@ -21,7 +21,7 @@
       <relation target="" sidePair="right-right,bottom-bottom"/>
       <Button title="x1"/>
     </component>
-    <component id="n54_psph" name="comAllPerfect" src="cn279k" fileName="components/ComAllPerfect.xml" xy="367,776"/>
+    <component id="n54_psph" name="comAllPerfect" src="cn279k" fileName="components/ComAllPerfect.xml" xy="367,963"/>
     <loader id="n51_wono" name="LoaMask" xy="540,960" pivot="0.5,0.5" anchor="true" size="1080,2400" alpha="0" align="center" vAlign="middle" fill="scaleMatchHeight">
       <relation target="" sidePair="center-center,middle-middle"/>
     </loader>
@@ -29,7 +29,7 @@
       <relation target="" sidePair="center-center,middle-middle"/>
     </component>
   </displayList>
-  <transition name="t2">
+  <transition name="t1">
     <item time="0" type="Alpha" target="n51_wono" tween="true" startValue="0" endValue="1" duration="12" ease="Linear"/>
     <item time="0" type="Scale" target="n46_wono" tween="true" startValue="0,0" endValue="1.1,1.1" duration="12" ease="Linear"/>
     <item time="0" type="Skew" target="n46_wono" tween="true" startValue="0,-180" endValue="0,0" duration="12" ease="Linear"/>

+ 37 - 9
FGUIProject/assets/Main/StoryFightTargetScoreUI.xml

@@ -1,22 +1,50 @@
 <?xml version="1.0" encoding="utf-8"?>
 <component size="1080,1920" designImage="ui://mfvz4q8kmza1c0">
   <displayList>
-    <component id="n37_mhyh" name="btnBack" src="9xlo8" fileName="components/ButtonBack1.xml" pkg="eg2y0ldp" xy="34,80">
-      <Button icon="ui://eg2y0ldpuyuxtj4"/>
-    </component>
+    <loader id="n63_psph" name="loaBg" xy="540,960" pivot="0.5,0.5" anchor="true" size="1080,2400" align="center" vAlign="middle" fill="scaleMatchHeight">
+      <relation target="" sidePair="center-center,middle-middle"/>
+    </loader>
+    <image id="n62_psph" name="imgRole" src="v482fx" fileName="zjm_1.jpg" xy="540,960" pivot="0.5,0.5" anchor="true" size="1080,2400">
+      <relation target="" sidePair="center-center,middle-middle"/>
+    </image>
     <component id="n50_psph" name="comClick" src="f2bfiw" fileName="components/ComClick.xml" xy="0,0">
       <relation target="" sidePair="width-width,height-height"/>
     </component>
+    <component id="n37_mhyh" name="btnBack" src="9xlo8" fileName="components/ButtonBack1.xml" pkg="eg2y0ldp" xy="34,80">
+      <Button icon="ui://eg2y0ldpuyuxtj4"/>
+    </component>
     <component id="n38_jj0m" name="btnSpeedUp" src="jj0mdl" fileName="componentsDialog/ButtonSpeedUp1.xml" xy="943,1546">
       <relation target="" sidePair="right-right,bottom-bottom"/>
       <Button title="x1"/>
     </component>
-    <component id="n51_psph" name="myHead" src="r9ri1h" fileName="components/ComHead.xml" pkg="eg2y0ldp" xy="-29,149"/>
-    <component id="n52_psph" name="targetHead" src="r9ri1h" fileName="components/ComHead.xml" pkg="eg2y0ldp" xy="876,149"/>
-    <component id="n28_uj53" name="proScore" src="v3k9c7" fileName="components/ProgressBarTargetScore.xml" xy="181,262" pivot="0,0.5" anchor="true" size="718,31">
-      <ProgressBar max="100"/>
+    <component id="n51_psph" name="myHead" src="r9ri1h" fileName="components/ComHead.xml" pkg="eg2y0ldp" xy="-23,175"/>
+    <component id="n52_psph" name="targetHead" src="r9ri1h" fileName="components/ComHead.xml" pkg="eg2y0ldp" xy="879,175"/>
+    <component id="n28_uj53" name="proScore" src="v3k9c7" fileName="components/ProgressBarTargetScore.xml" xy="136,147" pivot="0,0.5" anchor="true">
+      <ProgressBar value="100" max="100"/>
+    </component>
+    <component id="n54_psph" name="comTargetCard" src="psphiz" fileName="components/ComTargetCard.xml" xy="1180,540" pivot="0.5,0.5" anchor="true" size="174,250" aspect="true"/>
+    <component id="n55_psph" name="comDeduction" src="psphix" fileName="components/ComDeduction.xml" xy="102,500" pivot="0.5,0.5" anchor="true" scale="0,0"/>
+    <component id="n56_psph" name="comAllPerfect" src="cn279k" fileName="components/ComAllPerfect.xml" xy="367,963"/>
+    <loader id="n57_psph" name="LoaMask" xy="540,960" pivot="0.5,0.5" anchor="true" size="1080,2400" alpha="0" align="center" vAlign="middle" fill="scaleMatchHeight">
+      <relation target="" sidePair="center-center,middle-middle"/>
+    </loader>
+    <component id="n58_psph" name="comRoleResult" src="wonogk" fileName="components/ComRoleResult.xml" xy="540,937" pivot="0.5,0.5" anchor="true" scale="0,0" touchable="false">
+      <relation target="" sidePair="center-center,middle-middle"/>
     </component>
-    <component id="n54_psph" name="comTargetCard" src="py009o" fileName="components/ComSkillCard.xml" xy="891,428" size="137,196" aspect="true"/>
-    <component id="n55_psph" name="comDeduction" src="psphix" fileName="components/ComDeduction.xml" xy="4,402"/>
   </displayList>
+  <transition name="t0">
+    <item time="0" type="Alpha" target="n57_psph" tween="true" startValue="0" endValue="1" duration="12" ease="Linear"/>
+    <item time="0" type="Scale" target="n58_psph" tween="true" startValue="0,0" endValue="1.1,1.1" duration="12" ease="Linear"/>
+    <item time="0" type="Skew" target="n58_psph" tween="true" startValue="0,-180" endValue="0,0" duration="12" ease="Linear"/>
+    <item time="0" type="Visible" target="n57_psph" value="true"/>
+  </transition>
+  <transition name="t1">
+    <item time="0" type="Scale" target="n54_psph" value="1,1"/>
+    <item time="0" type="XY" target="n54_psph" tween="true" startValue="1180,540" endValue="995,540" duration="6" ease="Linear"/>
+    <item time="24" type="Scale" target="n54_psph" tween="true" startValue="1,1" endValue="0,0" duration="6" ease="Linear"/>
+  </transition>
+  <transition name="t2">
+    <item time="0" type="Scale" target="n55_psph" tween="true" startValue="0,0" endValue="1,1" duration="6" ease="Linear"/>
+    <item time="24" type="Scale" target="n55_psph" tween="true" startValue="1,1" endValue="0,0" duration="6" ease="Linear"/>
+  </transition>
 </component>

+ 4 - 17
FGUIProject/assets/Main/StorySkillUI.xml

@@ -4,23 +4,10 @@
     <graph id="n4_py00" name="n4" xy="0,0" size="1080,1920" alpha="0.2" type="rect" lineSize="0" fillColor="#ff000000">
       <relation target="" sidePair="width-width,height-height"/>
     </graph>
-    <component id="n0_py00" name="comSkillCard" src="py009o" fileName="components/ComSkillCard.xml" xy="245,539" pivot="0.5,0.5"/>
-    <component id="n1_py00" name="ComSkillName" src="sx2v9p" fileName="components/ComSkillName.xml" xy="247,1272" size="548,106"/>
-    <component id="n6_om9f" name="ComSkillScore" src="om9f9w" fileName="components/ComSkillScore.xml" xy="643,557" pivot="0.5,0.5"/>
+    <component id="n7_psph" name="comSkillShow" src="psphiy" fileName="ComSkillShow.xml" xy="540,960" pivot="0.5,0.5" anchor="true"/>
   </displayList>
-  <transition name="t0">
-    <item time="0" type="Alpha" target="n0_py00" tween="true" startValue="0.3" endValue="1" duration="4" ease="Linear"/>
-    <item time="0" type="Scale" target="n0_py00" tween="true" startValue="0,0" endValue="1.4,1.4" duration="5" ease="Linear"/>
-    <item time="0" type="Scale" target="n6_om9f" value="1.4,1.4"/>
-    <item time="0" type="Skew" target="n0_py00" tween="true" startValue="0,120" endValue="0,360" duration="5" ease="Linear"/>
-    <item time="0" type="Visible" target="n1_py00" value="false"/>
-    <item time="0" type="Visible" target="n6_om9f" value="false"/>
-    <item time="5" type="Scale" target="n0_py00" tween="true" startValue="1.4,1.4" endValue="1.4,1.4" duration="3" ease="Quad.In"/>
-    <item time="8" type="Scale" target="n0_py00" tween="true" startValue="1.4,1.4" endValue="1,1" duration="3" ease="Linear"/>
-    <item time="12" type="Size" target="n1_py00" tween="true" startValue="0,106" endValue="548,106" duration="2" ease="Quad.In"/>
-    <item time="12" type="Visible" target="n1_py00" value="true"/>
-    <item time="16" type="Scale" target="n6_om9f" tween="true" startValue="1.4,1.4" endValue="1,1" duration="4" ease="Quad.In"/>
-    <item time="16" type="Visible" target="n6_om9f" value="true"/>
-    <item time="24" type="Alpha" target="n4_py00" value="0.2"/>
+  <transition name="t1">
+    <item time="0" type="Scale" target="n7_psph" tween="true" startValue="1,1" endValue="0,0" duration="12" ease="Linear"/>
+    <item time="0" type="XY" target="n7_psph" tween="true" startValue="540,960" endValue="926,237" duration="12" ease="Linear"/>
   </transition>
 </component>

+ 15 - 22
FGUIProject/assets/Main/components/ComAllPerfect.xml → FGUIProject/assets/Main/components/ComAllCircle.xml

@@ -1,47 +1,40 @@
 <?xml version="1.0" encoding="utf-8"?>
 <component size="345,367">
   <displayList>
-    <loader id="n41_psph" name="n41" xy="49,60" size="247,247"/>
-    <image id="n31_cn27" name="n31" src="vuz5bp" fileName="imagesStory/zd_pfhd_4.png" xy="49,52" pivot="0.5,0.5" group="n40_psph"/>
-    <image id="n33_cn27" name="imgCircle" src="vuz5bp" fileName="imagesStory/zd_pfhd_4.png" xy="49,52" pivot="0.5,0.5" group="n40_psph" aspect="true"/>
-    <image id="n35_oixc" name="n35" src="oixcbz" fileName="imagesStory/zd_ztca.png" xy="85,138" group="n40_psph"/>
-    <movieclip id="n32_cn27" name="n32" src="vuz5bw" fileName="Movie/MovieClip2.jta" xy="139,151" pivot="0.5,0.5" size="66,65" group="n40_psph" aspect="true" scale="1.5,1.5"/>
-    <group id="n40_psph" name="n40" xy="49,52" size="247,262" advanced="true"/>
+    <image id="n31_cn27" name="n31" src="vuz5bp" fileName="imagesStory/zd_pfhd_4.png" xy="49,52" pivot="0.5,0.5"/>
+    <image id="n33_cn27" name="imgCircle" src="vuz5bp" fileName="imagesStory/zd_pfhd_4.png" xy="49,52" pivot="0.5,0.5" aspect="true"/>
+    <image id="n35_oixc" name="n35" src="oixcbz" fileName="imagesStory/zd_ztca.png" xy="85,138"/>
+    <movieclip id="n32_cn27" name="n32" src="vuz5bw" fileName="Movie/MovieClip2.jta" xy="139,151" pivot="0.5,0.5" size="66,65" aspect="true" scale="1.5,1.5"/>
     <graph id="n36_qgxy" name="holder" xy="181,-236" size="1,1" group="n39_qgxy"/>
     <image id="n37_qgxy" name="img" src="vuz5bg" fileName="imagesStory/zd_pfziti_4.png" xy="65,-308" group="n39_qgxy"/>
     <text id="n38_qgxy" name="txtCount" xy="64,-215" pivot="0.5,0" size="234,69" group="n39_qgxy" font="ui://mfvz4q8kvuz5b5" fontSize="65" text="66666"/>
     <group id="n39_qgxy" name="n39" xy="64,-308" size="234,162" advanced="true"/>
   </displayList>
   <transition name="t0">
-    <item time="0" type="Scale" target="n33_cn27" tween="true" startValue="1.5,1.5" endValue="1,1" duration="24" ease="Linear"/>
+    <item time="0" type="Scale" target="n33_cn27" tween="true" startValue="1.5,1.5" endValue="1,1" duration="18" ease="Linear"/>
     <item time="0" type="Visible" target="n31_cn27" value="true"/>
     <item time="0" type="Visible" target="n32_cn27" value="true"/>
     <item time="0" type="Visible" target="n33_cn27" value="true"/>
     <item time="0" type="Visible" target="n35_oixc" value="true"/>
     <item time="0" type="Visible" target="n39_qgxy" value="false"/>
-    <item time="0" type="Visible" target="n40_psph" value="true"/>
     <item time="0" type="XY" target="n32_cn27" value="512,-55"/>
-    <item time="24" type="Rotation" target="n32_cn27" tween="true" startValue="0" endValue="-250" duration="48" ease="Quad.In"/>
-    <item time="24" type="Visible" target="n33_cn27" value="false"/>
-    <item time="24" type="XY" target="n32_cn27" tween="true" startValue="512,-55" endValue="111,173" duration="48" ease="Quad.In" path="2,0,0,-104,-572,-1143,-217,1,2,-401,228,342.8462,674.1072,0,0,1"/>
-    <item time="72" type="Visible" target="n31_cn27" value="false"/>
-    <item time="72" type="Visible" target="n32_cn27" value="false"/>
-    <item time="72" type="Visible" target="n35_oixc" value="false"/>
-    <item time="72" type="Visible" target="n39_qgxy" value="false"/>
-    <item time="72" type="Visible" target="n40_psph" value="false"/>
+    <item time="18" type="Rotation" target="n32_cn27" tween="true" startValue="0" endValue="-250" duration="48" ease="Quad.In"/>
+    <item time="18" type="Visible" target="n33_cn27" value="false"/>
+    <item time="18" type="XY" target="n32_cn27" tween="true" startValue="512,-55" endValue="111,173" duration="48" ease="Quad.In" path="2,0,0,-104,-572,-1143,-217,1,2,-401,228,342.8462,674.1072,0,0,1"/>
+    <item time="66" type="Visible" target="n31_cn27" value="false"/>
+    <item time="66" type="Visible" target="n32_cn27" value="false"/>
+    <item time="66" type="Visible" target="n35_oixc" value="false"/>
   </transition>
   <transition name="t1">
     <item time="0" type="Visible" target="n36_qgxy" value="true"/>
     <item time="0" type="Visible" target="n37_qgxy" value="false"/>
     <item time="0" type="Visible" target="n38_qgxy" value="false"/>
     <item time="0" type="Visible" target="n39_qgxy" value="true"/>
-    <item time="0" type="Visible" target="n40_psph" value="false"/>
     <item time="9" type="Visible" target="n37_qgxy" value="true"/>
     <item time="9" type="Visible" target="n38_qgxy" value="true"/>
-    <item time="63" type="Visible" target="n36_qgxy" value="true"/>
-    <item time="63" type="Visible" target="n37_qgxy" value="false"/>
-    <item time="63" type="Visible" target="n38_qgxy" value="false"/>
-    <item time="63" type="Visible" target="n39_qgxy" value="false"/>
-    <item time="72" type="Visible" target="n36_qgxy" value="false"/>
+    <item time="66" type="Visible" target="n37_qgxy" value="false"/>
+    <item time="66" type="Visible" target="n38_qgxy" value="false"/>
+    <item time="72" type="Visible" target="n36_qgxy" value="true"/>
+    <item time="72" type="Visible" target="n39_qgxy" value="false"/>
   </transition>
 </component>

+ 0 - 7
FGUIProject/assets/Main/components/ComDeduction.xml

@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<component size="196,196">
-  <displayList>
-    <image id="n55_psph" name="n55" src="v3k9cf" fileName="imagesStory/zd_jineng_4.png" xy="0,0"/>
-    <text id="n56_psph" name="txtDeduction" xy="54,76" pivot="0.5,0" size="77,46" fontSize="34" align="center" text="-666"/>
-  </displayList>
-</component>

+ 0 - 11
FGUIProject/assets/Main/components/ComRoleSkill1.xml

@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<component size="100,100">
-  <controller name="c1" exported="true" pages="0,,1," selected="0"/>
-  <displayList>
-    <graph id="n35_k1kh" name="holder" xy="0,0" pivot="0.5,0.5" size="100,100"/>
-  </displayList>
-  <transition name="t0">
-    <item time="0" type="Visible" target="n35_k1kh" value="true"/>
-    <item time="24" type="Visible" target="n35_k1kh" value="true"/>
-  </transition>
-</component>

+ 22 - 0
FGUIProject/assets/Main/components/ComSkillShow.xml

@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<component size="596,842">
+  <displayList>
+    <component id="n0_py00" name="comSkillCard" src="py009o" fileName="components/ComSkillCard.xml" xy="0,0" pivot="0.5,0.5"/>
+    <component id="n1_py00" name="ComSkillName" src="sx2v9p" fileName="components/ComSkillName.xml" xy="2,733" size="548,106"/>
+    <component id="n6_om9f" name="ComSkillScore" src="om9f9w" fileName="components/ComSkillScore.xml" xy="398,18" pivot="0.5,0.5"/>
+  </displayList>
+  <transition name="t0">
+    <item time="0" type="Alpha" target="n0_py00" tween="true" startValue="0.3" endValue="1" duration="4" ease="Linear"/>
+    <item time="0" type="Scale" target="n0_py00" tween="true" startValue="0,0" endValue="1.4,1.4" duration="5" ease="Linear"/>
+    <item time="0" type="Scale" target="n6_om9f" value="1.4,1.4"/>
+    <item time="0" type="Skew" target="n0_py00" tween="true" startValue="0,120" endValue="0,360" duration="5" ease="Linear"/>
+    <item time="0" type="Visible" target="n1_py00" value="false"/>
+    <item time="0" type="Visible" target="n6_om9f" value="false"/>
+    <item time="5" type="Scale" target="n0_py00" tween="true" startValue="1.4,1.4" endValue="1.4,1.4" duration="3" ease="Quad.In"/>
+    <item time="8" type="Scale" target="n0_py00" tween="true" startValue="1.4,1.4" endValue="1,1" duration="3" ease="Linear"/>
+    <item time="12" type="Size" target="n1_py00" tween="true" startValue="0,106" endValue="548,106" duration="2" ease="Quad.In"/>
+    <item time="12" type="Visible" target="n1_py00" value="true"/>
+    <item time="16" type="Scale" target="n6_om9f" tween="true" startValue="1.4,1.4" endValue="1,1" duration="4" ease="Quad.In"/>
+    <item time="16" type="Visible" target="n6_om9f" value="true"/>
+  </transition>
+</component>

+ 14 - 0
FGUIProject/assets/Main/components/ComTargetCard.xml

@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<component size="589,841" overflow="hidden">
+  <displayList>
+    <loader id="n0_py00" name="loaCard" xy="295,471" pivot="0.5,0.5" anchor="true" size="928,1109" url="ui://eg2y0ldppsphtke" align="center" fill="scale">
+      <relation target="" sidePair="width-width,height-height"/>
+    </loader>
+    <image id="n1_sx2v" name="n1" src="py009m" fileName="imagesStory/zd_kpdi_2.png" xy="0,0">
+      <relation target="" sidePair="width-width,height-height"/>
+    </image>
+    <text id="n2_psph" name="txtScore" xy="527,0" pivot="1,0" size="62,46" fontSize="34" align="right" text="600">
+      <relation target="" sidePair="right-right,top-top"/>
+    </text>
+  </displayList>
+</component>

+ 4 - 4
FGUIProject/assets/Main/components/ProgressBarTargetScore.xml

@@ -4,20 +4,20 @@
     <image id="n0_uj53" name="n0" src="v95qi1" fileName="imagesStory/zd_zdjdt_4.png" xy="0,0" size="836,31">
       <relation target="" sidePair="width-width,height-height"/>
     </image>
-    <component id="n1_uj53" name="comBar" src="k1khe7" fileName="components/Component2.xml" xy="0,-2" size="86,31"/>
+    <component id="n1_uj53" name="comBar" src="k1khe7" fileName="components/Component2.xml" xy="0,-2" size="836,31"/>
     <image id="n7_v3k9" name="n7" src="v3k9cs" fileName="imagesStory/zd_zdjdt_3.png" xy="-17,-2">
       <relation target="" sidePair="width-width,height-height"/>
     </image>
     <text id="n4_uj53" name="txtMineScore" xy="10,50" size="184,49" fontSize="36" color="#fff6e3" vAlign="bottom" bold="true" strokeColor="#c09653" strokeSize="2" text="赵四10086">
       <relation target="" sidePair="width-width,height-height"/>
     </text>
-    <text id="n5_uj53" name="txtNpcScore" xy="826,50" pivot="1,0" anchor="true" size="220,49" fontSize="36" color="#fff6e3" align="right" vAlign="bottom" bold="true" strokeColor="#c09653" strokeSize="2" text="小宫女10086">
+    <text id="n5_uj53" name="txtNpcScore" xy="826,50" pivot="1,0" anchor="true" size="113,49" fontSize="36" color="#fff6e3" align="right" vAlign="bottom" bold="true" strokeColor="#c09653" strokeSize="2" text="小宫女">
       <relation target="" sidePair="width-width,height-height,right-right"/>
     </text>
-    <image id="n8_v95q" name="imgAni" src="k1khdp" fileName="imagesStory/zd_zdjdt_liang.png" xy="85,14" pivot="0.518,0.438" anchor="true" alpha="0.76">
+    <image id="n8_v95q" name="imgAni" src="k1khdp" fileName="imagesStory/zd_zdjdt_liang.png" xy="835,14" pivot="0.518,0.438" anchor="true" alpha="0.76">
       <relation target="n1_uj53" sidePair="right-right"/>
     </image>
-    <graph id="n9_weok" name="holder" xy="88,15" pivot="0.5,0.5" anchor="true" size="100,100">
+    <graph id="n9_weok" name="holder" xy="838,15" pivot="0.5,0.5" anchor="true" size="100,100">
       <relation target="n1_uj53" sidePair="right-right"/>
     </graph>
     <graph id="n10_weok" name="holder1" xy="417,14" pivot="0.5,0.5" size="1,1"/>

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

@@ -304,7 +304,6 @@
     <image id="v3k9d2" name="zd_zijia.png" path="/imagesStory/"/>
     <image id="v3k9d3" name="zd_zijian.png" path="/imagesStory/"/>
     <component id="mhyhd4" name="ProgressBar2.xml" path="/components/"/>
-    <component id="lki4db" name="ComRoleSkill1.xml" path="/components/"/>
     <component id="txgzdc" name="CompChapter10002.xml" path="/componentsLevel/" exported="true"/>
     <component id="txgzdd" name="CompChapter10001.xml" path="/componentsLevel/" exported="true"/>
     <image id="jj0mdf" name="zd_jsjs_2.png" path="/images/"/>
@@ -454,6 +453,8 @@
     <component id="f2bfiv" name="comSingleClickCircle.xml" path="/components/"/>
     <component id="f2bfiw" name="ComClick.xml" path="/components/"/>
     <component id="psphix" name="ComDeduction.xml" path="/components/"/>
+    <component id="psphiy" name="ComSkillShow.xml" path="/components/"/>
+    <component id="psphiz" name="ComTargetCard.xml" path="/components/"/>
   </resources>
   <publish name="" path="..\GameClient\Assets\ResIn\UI\Main" packageCount="2" genCode="true" extractAlpha="true"/>
 </packageDescription>

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

@@ -26,6 +26,7 @@ namespace GFGGame
         public const string DRESS_SEARCH = "DRESS_SEARCH";
         public const string CARD_CHOOSE = "CARD_CHOOSE";
         public const string SHOW_CARD_SKILL_END = "SHOW_CARD_SKILL_END";
+        public const string UPDATE_PROGRESS_END = "UPDATE_PROGRESS_END";
         public const string CARD_REFRESH = "CARD_REFRESH";
         public const string CARD_FILTER = "CARD_FILTER";
         public const string CARD_INFO = "CARD_INFO";

+ 225 - 57
GameClient/Assets/Game/HotUpdate/Data/ScoreSystemData.cs

@@ -25,6 +25,13 @@ namespace GFGGame
         public const int PART_FIGHT_END = 10;//每回合结束
     }
 
+    public class RoleType
+    {
+
+        public const int MINE = 0;
+        public const int ENEMY = 1;
+    }
+
     // public class CurrentTime
     // {
     //     public const int PART_ALL_FIGHT_BEGIN = 0;//对战开始
@@ -34,6 +41,7 @@ namespace GFGGame
     // }
     public class ScoreSystemData : SingletonBase<ScoreSystemData>
     {
+        private const float _prefectScale = 0.866f;//完美缩放比
 
         private Dictionary<int, List<int>> equipDicWithPartId = new Dictionary<int, List<int>>();
 
@@ -73,9 +81,6 @@ namespace GFGGame
             }
         }
 
-
-        // public double mainScore { get; set; }
-
         /// <summary>
         /// 返回总主属性分
         /// </summary>
@@ -86,35 +91,40 @@ namespace GFGGame
 
             var equipDatas = MyDressUpHelper.dressUpObj.itemList;
             int partScore = 0;
-            double tagProportion = 0;
+            double tagScore = 0;
             StoryLevelCfg levelCfg = StoryLevelCfgArray.Instance.GetCfg(InstanceZonesDataManager.currentLevelCfgId);
             StoryFightCfg fightCfg = StoryFightCfgArray.Instance.GetCfg(levelCfg.fightID);
 
             for (int i = 0; i < equipDatas.Count; i++)
             {
+                partScore += ItemDataManager.GetItemAdditionScore(equipDatas[i], InstanceZonesDataManager.currentScoreType);
+                tagScore = ItemDataManager.GetItemTagScore(equipDatas[i], InstanceZonesDataManager.currentFightTags);
 
-                partScore += ItemDataManager.GetItemAdditionScore(equipDatas[i], InstanceZonesDataManager.currentScoreType, InstanceZonesDataManager.currentFightTags);
-
-                // ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(equipDatas[i]);
-                // for (int j = 0; j < fightCfg.needTagsArr.Length; j++)
-                // {
-                //     if (tagProportion >= ConstScoreSystem.MAX_TAG_COUNT) break;
-                //     for (int k = 0; k < itemCfg.tagsArr.Length; k++)
-                //     {
-                //         if (fightCfg.needTagsArr[j] == itemCfg.tagsArr[k][0])
-                //         {
-                //             tagProportion += ConstScoreSystem.TAG_SCORE;
-                //         }
-                //     }
-                // }
             }
             int roleScore = RoleLevelCfgArray.Instance.GetCfg(GameGlobal.myNumericComponent.GetAsInt(NumericType.Lvl)).baseScore;
             int cardScore = ItemDataManager.GetItemAdditionScore(InstanceZonesDataManager.currentCardId, InstanceZonesDataManager.currentScoreType);
-            double tagScore = tagProportion * partScore;
 
             return (partScore + tagScore + roleScore + cardScore) * ConstScoreSystem.MAIN_SCORE;
         }
 
+        public double GetTargetMainScore()
+        {
+            //(部件属性分数+标签分数+人物基础分+卡牌属性分数)*4
+
+            int partScore = 0;
+            StoryLevelCfg levelCfg = StoryLevelCfgArray.Instance.GetCfg(InstanceZonesDataManager.currentLevelCfgId);
+            StoryFightCfg fightCfg = StoryFightCfgArray.Instance.GetCfg(levelCfg.fightID);
+
+            for (int i = 0; i < FightScoreCfgArray.Instance.dataArray.Length; i++)
+            {
+                partScore += fightCfg.targetPartsScoreArr[i];
+            }
+            int roleScore = fightCfg.targetBaseScore;
+            int cardScore = fightCfg.targetCardScore;
+
+            return (partScore + roleScore + cardScore) * ConstScoreSystem.MAIN_SCORE;
+        }
+
 
         /// <summary>
         /// 部件评分
@@ -125,22 +135,32 @@ namespace GFGGame
         /// <param name="type">评分部位</param>
         /// <param name="showCard">是否展示卡牌效果</param>
         /// <returns></returns>
-        public int GetPartScore(int partId, int clickType, double skillScore)
+        public int GetPartScore(int partId, int roleType, int clickType, double skillScore)
         {
 
             //部件评分=部件基础分*部件系数
             //点击评分=(部件基础分+(人物基础分+卡牌属性分数)*点击系数)*2.22   (新点击公式,防止点击优秀却因为未穿衣服结果是0分)
             //卡牌评分=总属性*技能配表百分比
-            double partScore = GetPartItemScore(partId);
-            double clickScore = ScoreSystemData.Instance.GetPartItemClickScore(partId, clickType);
+            double partScore = GetPartScore(partId, roleType);
+
+            double clickScore = ScoreSystemData.Instance.GetPartItemClickScore(partId, clickType, roleType);
 
-            return (int)Math.Ceiling(partScore + clickScore + skillScore);
+            int score = (int)Math.Ceiling(partScore + clickScore + skillScore);
+            return Math.Max(0, score);
             // return (int)Math.Round((partScore + skillScore));
         }
-
-        public double GetPartItemScore(int partId)
+        private double GetPartScore(int partId, int roleType)
         {
-            return GetPartBaseScore(partId) * ConstScoreSystem.PART_SCORE;
+            double partScore = 0;
+            if (roleType == RoleType.MINE)
+            {
+                partScore = GetPartBaseScore(partId) * ConstScoreSystem.PART_SCORE;
+            }
+            else
+            {
+                partScore = GetTargetPartBaseScore(partId) * ConstScoreSystem.PART_SCORE;
+            }
+            return partScore;
         }
 
         /// <summary>
@@ -151,15 +171,31 @@ namespace GFGGame
         private double GetPartBaseScore(int partId)
         {
             double partScore = 0;
+            double tagScore = 0;
             if (!equipDicWithPartId.ContainsKey(partId)) return partScore;
 
             for (int i = 0; i < equipDicWithPartId[partId].Count; i++)
             {
-                partScore += ItemDataManager.GetItemAdditionScore(equipDicWithPartId[partId][i], InstanceZonesDataManager.currentScoreType, InstanceZonesDataManager.currentFightTags);
+                partScore += ItemDataManager.GetItemAdditionScore(equipDicWithPartId[partId][i], InstanceZonesDataManager.currentScoreType);
+                tagScore += ItemDataManager.GetItemTagScore(equipDicWithPartId[partId][i], InstanceZonesDataManager.currentFightTags);
             }
-            return partScore;
+            return partScore + tagScore;
         }
-        private double GetPartItemClickScore(int partId, int clickState)
+
+        private double GetTargetPartBaseScore(int partId)
+        {
+            StoryLevelCfg levelCfg = StoryLevelCfgArray.Instance.GetCfg(InstanceZonesDataManager.currentLevelCfgId);
+            StoryFightCfg fightCfg = StoryFightCfgArray.Instance.GetCfg(levelCfg.fightID);
+            if (fightCfg.targetPartsScoreArr.Length < FightScoreCfgArray.Instance.dataArray.Length)
+            {
+                ET.Log.Debug("战斗id:" + fightCfg.id + "   targetPartsScore   数量不足");
+                return 0;
+            }
+            return fightCfg.targetPartsScoreArr[partId - 1];
+        }
+
+
+        private double GetPartItemClickScore(int partId, int clickState, int roleType)
         {
             //点击评分=(部件基础分+(人物基础分+卡牌属性分数)*点击系数)*2.22
             double clickCoefficient = 0;
@@ -175,20 +211,95 @@ namespace GFGGame
                     clickCoefficient = ConstScoreSystem.PERFECT_SCORE;
                     break;
             }
-            int roleScore = RoleLevelCfgArray.Instance.GetCfg(GameGlobal.myNumericComponent.GetAsInt(NumericType.Lvl)).baseScore;
-            int cardScore = ItemDataManager.GetItemAdditionScore(InstanceZonesDataManager.currentCardId, InstanceZonesDataManager.currentScoreType);
-            double clickScore = (GetPartBaseScore(partId) + (cardScore + roleScore) * clickCoefficient) * ConstScoreSystem.CLICK_SCORE;
+            double clickScore = 0;
+            if (roleType == RoleType.MINE)
+            {
+                int roleScore = RoleLevelCfgArray.Instance.GetCfg(GameGlobal.myNumericComponent.GetAsInt(NumericType.Lvl)).baseScore;
+                int cardScore = ItemDataManager.GetItemAdditionScore(InstanceZonesDataManager.currentCardId, InstanceZonesDataManager.currentScoreType);
+                clickScore = (GetPartBaseScore(partId) + (cardScore + roleScore) * clickCoefficient) * ConstScoreSystem.CLICK_SCORE;
+            }
+            else
+            {
+                StoryLevelCfg levelCfg = StoryLevelCfgArray.Instance.GetCfg(InstanceZonesDataManager.currentLevelCfgId);
+                StoryFightCfg fightCfg = StoryFightCfgArray.Instance.GetCfg(levelCfg.fightID);
+                int roleScore = fightCfg.targetBaseScore;
+                int cardScore = fightCfg.targetCardScore;
+                clickScore = (GetTargetPartBaseScore(partId) + (cardScore + roleScore) * clickCoefficient) * ConstScoreSystem.CLICK_SCORE;
+            }
             return clickScore;
         }
 
         /// <summary>
+        /// 获取卡牌技能持续回合数
+        /// </summary>
+        /// <returns></returns>
+        public List<int> GetRoundTime(int roleType)
+        {
+            List<int> roundTimes = new List<int>();
+
+            if (roleType == RoleType.MINE)
+            {
+                List<PassivitySkillCfg> mySkillCfgs = PassivitySkillCfgArray.Instance.GetCfgsBycardId(InstanceZonesDataManager.currentCardId);
+                for (int i = 0; i < mySkillCfgs.Count; i++)
+                {
+                    int skillLv = SkillDataManager.Instance.GetSkillLv(InstanceZonesDataManager.currentLevelCfgId, mySkillCfgs[i].skillId);
+                    PassivitySkillLvlCfg skillLvlCfg = PassivitySkillLvlCfgArray.Instance.GetCfgByskilllvlAndskillId(skillLv, mySkillCfgs[i].skillId);
+                    if (skillLvlCfg.beginTime == BeginTime.PART_ALL_FIGHT_BEGIN && UnityEngine.Random.Range(0, 10000) < skillLvlCfg.probability)
+                    {
+                        roundTimes.Add(skillLvlCfg.roundTime);
+                    }
+                    else
+                    {
+                        roundTimes.Add(0);
+                    }
+                }
+            }
+            else
+            {
+                StoryLevelCfg levelCfg = StoryLevelCfgArray.Instance.GetCfg(InstanceZonesDataManager.currentLevelCfgId);
+                StoryFightCfg fightCfg = StoryFightCfgArray.Instance.GetCfg(levelCfg.fightID);
+                List<PassivitySkillCfg> targetSkillCfgs = PassivitySkillCfgArray.Instance.GetCfgsBycardId(fightCfg.targetCardId);
+                for (int i = 0; i < targetSkillCfgs.Count; i++)
+                {
+                    int skillLv = fightCfg.targetSkillLvsArr[i];
+                    PassivitySkillLvlCfg skillLvlCfg = PassivitySkillLvlCfgArray.Instance.GetCfgByskilllvlAndskillId(skillLv, targetSkillCfgs[i].skillId);
+                    if (skillLvlCfg.beginTime == BeginTime.PART_ALL_FIGHT_BEGIN && UnityEngine.Random.Range(0, 10000) < skillLvlCfg.probability)
+                    {
+                        roundTimes.Add(skillLvlCfg.roundTime);
+                    }
+                    else
+                    {
+                        roundTimes.Add(0);
+                    }
+                }
+            }
+            return roundTimes;
+        }
+
+        /// <summary>
         /// 获取有效技能配置,过滤掉:被对方失效的、不符合作用时机、未满足触发概率的技能
         /// </summary>
         /// <returns></returns>
-        public List<PassivitySkillLvlCfg> GetValidSkills(int currentTime, int cardId, int targetCardId, int partId)
+        public List<PassivitySkillLvlCfg> GetValidSkills(int currentTime, int partId, int roleType, List<int> roundTimes, List<int> targetRoundTimes)
         {
             List<PassivitySkillLvlCfg> skillCfgs = new List<PassivitySkillLvlCfg>();
 
+            StoryLevelCfg levelCfg = StoryLevelCfgArray.Instance.GetCfg(InstanceZonesDataManager.currentLevelCfgId);
+            StoryFightCfg fightCfg = StoryFightCfgArray.Instance.GetCfg(levelCfg.fightID);
+
+            int cardId = 0;
+            int targetCardId;
+            if (roleType == RoleType.MINE)
+            {
+                cardId = InstanceZonesDataManager.currentCardId;
+                targetCardId = fightCfg.targetCardId;
+            }
+            else
+            {
+                targetCardId = InstanceZonesDataManager.currentCardId;
+                cardId = fightCfg.targetCardId;
+            }
+
             List<PassivitySkillCfg> mySkillCfgs = PassivitySkillCfgArray.Instance.GetCfgsBycardId(cardId);
             List<PassivitySkillCfg> targetSkillCfgs = PassivitySkillCfgArray.Instance.GetCfgsBycardId(targetCardId);
 
@@ -196,38 +307,55 @@ namespace GFGGame
             for (int i = 0; i < targetSkillCfgs.Count; i++)
             {
                 PassivitySkillCfg skillCfg = targetSkillCfgs[i];
-                int skillLv = SkillDataManager.Instance.GetSkillLv(targetCardId, skillCfg.skillId);
-                PassivitySkillLvlCfg skillLvlCfg = PassivitySkillLvlCfgArray.Instance.GetCfgByskilllvlAndskillId(skillLv, skillCfg.skillId);
-
-                if (skillLvlCfg.beginTime == BeginTime.PART_ALL_FIGHT_BEGIN && partId <= skillLvlCfg.roundTime
-               || skillLvlCfg.beginTime == BeginTime.PART_PREFACT_CLICK && currentTime == BeginTime.PART_PREFACT_CLICK
-               || skillLvlCfg.beginTime == BeginTime.PART_FIGHT_BEGIN && currentTime == BeginTime.PART_FIGHT_BEGIN
-               || skillLvlCfg.beginTime == BeginTime.PART_FIGHT_END && currentTime == BeginTime.PART_FIGHT_END
-               || skillLvlCfg.beginTime <= BeginTime.PART_SCORE_6 && currentTime == BeginTime.PART_FIGHT_END && partId == skillLvlCfg.beginTime)
+                int targetSkillLv = 0;
+                if (roleType == RoleType.MINE)
+                {
+                    targetSkillLv = fightCfg.targetSkillLvsArr[i];
+                }
+                else
                 {
+                    targetSkillLv = SkillDataManager.Instance.GetSkillLv(targetCardId, skillCfg.skillId);
+                }
+                PassivitySkillLvlCfg targetSkillLvlCfg = PassivitySkillLvlCfgArray.Instance.GetCfgByskilllvlAndskillId(targetSkillLv, skillCfg.skillId);
 
-                    bool isProbability = skillLvlCfg.nullifySkillIndex > 0 && UnityEngine.Random.Range(0, 10000) < skillLvlCfg.probability;
-                    if (isProbability) nullifySkillIndex.Add(skillLvlCfg.nullifySkillIndex);
+                if (targetSkillLvlCfg.beginTime == BeginTime.PART_ALL_FIGHT_BEGIN && currentTime == BeginTime.PART_FIGHT_BEGIN
+               || targetSkillLvlCfg.beginTime == BeginTime.PART_PREFACT_CLICK && currentTime == BeginTime.PART_PREFACT_CLICK
+               || targetSkillLvlCfg.beginTime == BeginTime.PART_FIGHT_BEGIN && currentTime == BeginTime.PART_FIGHT_BEGIN
+               || targetSkillLvlCfg.beginTime == BeginTime.PART_FIGHT_END && currentTime == BeginTime.PART_FIGHT_END
+               || targetSkillLvlCfg.beginTime <= BeginTime.PART_SCORE_6 && currentTime == BeginTime.PART_FIGHT_BEGIN && partId == targetSkillLvlCfg.beginTime)
+                {
+                    bool isProbability = targetSkillLvlCfg.nullifySkillIndex > 0 && UnityEngine.Random.Range(0, 10000) < targetSkillLvlCfg.probability;
+                    if (targetSkillLvlCfg.beginTime == BeginTime.PART_ALL_FIGHT_BEGIN && targetRoundTimes != null && partId < targetRoundTimes[i]) isProbability = true;
+                    if (isProbability) nullifySkillIndex.Add(targetSkillLvlCfg.nullifySkillIndex);
                 }
             }
 
             for (int i = 0; i < mySkillCfgs.Count; i++)
             {
                 PassivitySkillCfg skillCfg = mySkillCfgs[i];
-                int skillLv = SkillDataManager.Instance.GetSkillLv(cardId, skillCfg.skillId);
-                PassivitySkillLvlCfg skillLvlCfg = PassivitySkillLvlCfgArray.Instance.GetCfgByskilllvlAndskillId(skillLv, skillCfg.skillId);
+                int mySkillLv = 0;
+                if (roleType == RoleType.MINE)
+                {
+                    mySkillLv = SkillDataManager.Instance.GetSkillLv(cardId, skillCfg.skillId);
+                }
+                else
+                {
+                    mySkillLv = fightCfg.targetSkillLvsArr[i];
+                }
+                PassivitySkillLvlCfg mySkillLvlCfg = PassivitySkillLvlCfgArray.Instance.GetCfgByskilllvlAndskillId(mySkillLv, skillCfg.skillId);
 
                 if (nullifySkillIndex.IndexOf(i + 1) >= 0) continue;//技能被对手失效
 
-                if (skillLvlCfg.beginTime == BeginTime.PART_ALL_FIGHT_BEGIN && partId <= skillLvlCfg.roundTime
-                || skillLvlCfg.beginTime == BeginTime.PART_PREFACT_CLICK && currentTime == BeginTime.PART_PREFACT_CLICK
-                || skillLvlCfg.beginTime == BeginTime.PART_FIGHT_BEGIN && currentTime == BeginTime.PART_FIGHT_BEGIN
-                || skillLvlCfg.beginTime == BeginTime.PART_FIGHT_END && currentTime == BeginTime.PART_FIGHT_END
-                || skillLvlCfg.beginTime <= BeginTime.PART_SCORE_6 && currentTime == BeginTime.PART_FIGHT_END && partId == skillLvlCfg.beginTime)
+                if (mySkillLvlCfg.beginTime == BeginTime.PART_ALL_FIGHT_BEGIN && currentTime == BeginTime.PART_FIGHT_BEGIN
+              || mySkillLvlCfg.beginTime == BeginTime.PART_PREFACT_CLICK && currentTime == BeginTime.PART_PREFACT_CLICK
+              || mySkillLvlCfg.beginTime == BeginTime.PART_FIGHT_BEGIN && currentTime == BeginTime.PART_FIGHT_BEGIN
+              || mySkillLvlCfg.beginTime == BeginTime.PART_FIGHT_END && currentTime == BeginTime.PART_FIGHT_END
+              || mySkillLvlCfg.beginTime <= BeginTime.PART_SCORE_6 && currentTime == BeginTime.PART_FIGHT_BEGIN && partId == mySkillLvlCfg.beginTime)
                 {
 
-                    bool isProbability = UnityEngine.Random.Range(0, 10000) < skillLvlCfg.probability;
-                    if (isProbability) skillCfgs.Add(skillLvlCfg);
+                    bool isProbability = UnityEngine.Random.Range(0, 10000) < mySkillLvlCfg.probability;
+                    if (mySkillLvlCfg.beginTime == BeginTime.PART_ALL_FIGHT_BEGIN && roundTimes != null && partId < roundTimes[i]) isProbability = true;
+                    if (isProbability) skillCfgs.Add(mySkillLvlCfg);
                 }
 
             }
@@ -240,15 +368,28 @@ namespace GFGGame
         /// <param name="validSkills">有效技能列表</param>
         /// <param name="mainScore">总主属性</param>
         /// <returns></returns>
-        public int GetPartItemSkillScore(List<PassivitySkillLvlCfg> validSkills, double mainScore)
+        public void GetPartItemSkillScore(List<PassivitySkillLvlCfg> validSkills, double mainScore, double targetMainScore, out int skillScore, out int targetScore, out Dictionary<int, int> skillScoreDic)
         {
-            double skillScore = 0;
-
+            double _skillScore = 0;
+            double _targetSkillScore = 0;
+            skillScoreDic = new Dictionary<int, int>();
             for (int i = 0; i < validSkills.Count; i++)
             {
-                skillScore += mainScore * validSkills[i].ratio / 10000;
+                if (validSkills[i].target == 1)//作用自身
+                {
+                    double score = mainScore * validSkills[i].ratio / 10000;
+                    _skillScore += score;
+                    skillScoreDic.Add(validSkills[i].skillId, (int)Math.Ceiling(score));
+                }
+                else if (validSkills[i].target == 2)//作用对方
+                {
+                    double score = targetMainScore * validSkills[i].ratio / 10000;
+                    _targetSkillScore += score;
+                    skillScoreDic.Add(validSkills[i].skillId, (int)Math.Ceiling(score));
+                }
             }
-            return (int)Math.Ceiling(skillScore);
+            skillScore = (int)Math.Ceiling(_skillScore);
+            targetScore = (int)Math.Ceiling(_targetSkillScore);
         }
         /// <summary>
         /// 是否展示卡牌效果
@@ -337,5 +478,32 @@ namespace GFGGame
             }
             return null;
         }
+        /// <summary>
+        /// 0失败1优秀2完美
+        /// </summary>
+        /// <param name="scale"></param>
+        /// <returns></returns>
+        public int GetClickType(float scale)
+        {
+            // float scaleX = _ui.m_comClick.m_comResult.m_imgCircle.scale.x;
+            int clickType = ClickType.MISS_CLICK;
+            if (FightDataManager.Instance.autoPlay == true)
+            {
+                return ClickType.PREFACT_CLICK;
+            }
+            if (scale <= _prefectScale && scale > 0.65f)
+            {
+                clickType = ClickType.PREFACT_CLICK;
+            }
+            else if (scale <= 0.216f)
+            {
+                clickType = ClickType.MISS_CLICK;
+            }
+            else
+            {
+                clickType = ClickType.GREAT_CLICK;
+            }
+            return clickType;
+        }
     }
 }

+ 83 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_ComSkillShow.cs

@@ -0,0 +1,83 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.Main
+{
+    public partial class UI_ComSkillShow
+    {
+        public GComponent target;
+        public UI_ComSkillCard m_comSkillCard;
+        public UI_ComSkillName m_ComSkillName;
+        public UI_ComSkillScore m_ComSkillScore;
+        public Transition m_t0;
+        public const string URL = "ui://mfvz4q8kpsphiy";
+        public const string PACKAGE_NAME = "Main";
+        public const string RES_NAME = "ComSkillShow";
+        private static UI_ComSkillShow _proxy;
+
+        public static UI_ComSkillShow Create(GObject gObject = null)
+        {
+            var ui = new UI_ComSkillShow();
+            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_ComSkillShow Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ComSkillShow();
+            }
+            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_comSkillCard = (UI_ComSkillCard)UI_ComSkillCard.Create(comp.GetChild("comSkillCard"));
+            m_ComSkillName = (UI_ComSkillName)UI_ComSkillName.Create(comp.GetChild("ComSkillName"));
+            m_ComSkillScore = (UI_ComSkillScore)UI_ComSkillScore.Create(comp.GetChild("ComSkillScore"));
+            m_t0 = comp.GetTransition("t0");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_comSkillCard.Dispose();
+            m_comSkillCard = null;
+            m_ComSkillName.Dispose();
+            m_ComSkillName = null;
+            m_ComSkillScore.Dispose();
+            m_ComSkillScore = null;
+            m_t0 = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_ComSkillShow.cs.meta

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

+ 74 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_ComTargetCard.cs

@@ -0,0 +1,74 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.Main
+{
+    public partial class UI_ComTargetCard
+    {
+        public GComponent target;
+        public GLoader m_loaCard;
+        public GTextField m_txtScore;
+        public const string URL = "ui://mfvz4q8kpsphiz";
+        public const string PACKAGE_NAME = "Main";
+        public const string RES_NAME = "ComTargetCard";
+        private static UI_ComTargetCard _proxy;
+
+        public static UI_ComTargetCard Create(GObject gObject = null)
+        {
+            var ui = new UI_ComTargetCard();
+            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_ComTargetCard Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ComTargetCard();
+            }
+            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_loaCard = (GLoader)comp.GetChild("loaCard");
+            m_txtScore = (GTextField)comp.GetChild("txtScore");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_loaCard = null;
+            m_txtScore = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_ComTargetCard.cs.meta

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

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

@@ -16,7 +16,7 @@ namespace UI.Main
         public UI_ComAllPerfect m_comAllPerfect;
         public GLoader m_LoaMask;
         public UI_ComRoleResult m_comRoleResult;
-        public Transition m_t2;
+        public Transition m_t1;
         public const string URL = "ui://mfvz4q8k8xpg3x";
         public const string PACKAGE_NAME = "Main";
         public const string RES_NAME = "StoryFightSingleScoreUI";
@@ -73,7 +73,7 @@ namespace UI.Main
             m_comAllPerfect = (UI_ComAllPerfect)UI_ComAllPerfect.Create(comp.GetChild("comAllPerfect"));
             m_LoaMask = (GLoader)comp.GetChild("LoaMask");
             m_comRoleResult = (UI_ComRoleResult)UI_ComRoleResult.Create(comp.GetChild("comRoleResult"));
-            m_t2 = comp.GetTransition("t2");
+            m_t1 = comp.GetTransition("t1");
         }
         public void Dispose(bool disposeTarget = false)
         {
@@ -90,7 +90,7 @@ namespace UI.Main
             m_LoaMask = null;
             m_comRoleResult.Dispose();
             m_comRoleResult = null;
-            m_t2 = null;
+            m_t1 = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

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

@@ -7,14 +7,22 @@ namespace UI.Main
     public partial class UI_StoryFightTargetScoreUI
     {
         public GComponent target;
-        public GButton m_btnBack;
+        public GLoader m_loaBg;
+        public GImage m_imgRole;
         public UI_ComClick m_comClick;
+        public GButton m_btnBack;
         public GButton m_btnSpeedUp;
         public GComponent m_myHead;
         public GComponent m_targetHead;
         public UI_ProgressBarTargetScore m_proScore;
-        public UI_ComSkillCard m_comTargetCard;
+        public UI_ComTargetCard m_comTargetCard;
         public UI_ComDeduction m_comDeduction;
+        public UI_ComAllPerfect m_comAllPerfect;
+        public GLoader m_LoaMask;
+        public UI_ComRoleResult m_comRoleResult;
+        public Transition m_t0;
+        public Transition m_t1;
+        public Transition m_t2;
         public const string URL = "ui://mfvz4q8k8xpg3w";
         public const string PACKAGE_NAME = "Main";
         public const string RES_NAME = "StoryFightTargetScoreUI";
@@ -62,20 +70,30 @@ namespace UI.Main
 
         private void Init(GComponent comp)
         {
-            m_btnBack = (GButton)comp.GetChild("btnBack");
+            m_loaBg = (GLoader)comp.GetChild("loaBg");
+            m_imgRole = (GImage)comp.GetChild("imgRole");
             m_comClick = (UI_ComClick)UI_ComClick.Create(comp.GetChild("comClick"));
+            m_btnBack = (GButton)comp.GetChild("btnBack");
             m_btnSpeedUp = (GButton)comp.GetChild("btnSpeedUp");
             m_myHead = (GComponent)comp.GetChild("myHead");
             m_targetHead = (GComponent)comp.GetChild("targetHead");
             m_proScore = (UI_ProgressBarTargetScore)UI_ProgressBarTargetScore.Create(comp.GetChild("proScore"));
-            m_comTargetCard = (UI_ComSkillCard)UI_ComSkillCard.Create(comp.GetChild("comTargetCard"));
+            m_comTargetCard = (UI_ComTargetCard)UI_ComTargetCard.Create(comp.GetChild("comTargetCard"));
             m_comDeduction = (UI_ComDeduction)UI_ComDeduction.Create(comp.GetChild("comDeduction"));
+            m_comAllPerfect = (UI_ComAllPerfect)UI_ComAllPerfect.Create(comp.GetChild("comAllPerfect"));
+            m_LoaMask = (GLoader)comp.GetChild("LoaMask");
+            m_comRoleResult = (UI_ComRoleResult)UI_ComRoleResult.Create(comp.GetChild("comRoleResult"));
+            m_t0 = comp.GetTransition("t0");
+            m_t1 = comp.GetTransition("t1");
+            m_t2 = comp.GetTransition("t2");
         }
         public void Dispose(bool disposeTarget = false)
         {
-            m_btnBack = null;
+            m_loaBg = null;
+            m_imgRole = null;
             m_comClick.Dispose();
             m_comClick = null;
+            m_btnBack = null;
             m_btnSpeedUp = null;
             m_myHead = null;
             m_targetHead = null;
@@ -85,6 +103,14 @@ namespace UI.Main
             m_comTargetCard = null;
             m_comDeduction.Dispose();
             m_comDeduction = null;
+            m_comAllPerfect.Dispose();
+            m_comAllPerfect = null;
+            m_LoaMask = null;
+            m_comRoleResult.Dispose();
+            m_comRoleResult = null;
+            m_t0 = null;
+            m_t1 = null;
+            m_t2 = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 7 - 15
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_StorySkillUI.cs

@@ -7,10 +7,8 @@ namespace UI.Main
     public partial class UI_StorySkillUI
     {
         public GComponent target;
-        public UI_ComSkillCard m_comSkillCard;
-        public UI_ComSkillName m_ComSkillName;
-        public UI_ComSkillScore m_ComSkillScore;
-        public Transition m_t0;
+        public UI_ComSkillShow m_comSkillShow;
+        public Transition m_t1;
         public const string URL = "ui://mfvz4q8kpy009l";
         public const string PACKAGE_NAME = "Main";
         public const string RES_NAME = "StorySkillUI";
@@ -58,20 +56,14 @@ namespace UI.Main
 
         private void Init(GComponent comp)
         {
-            m_comSkillCard = (UI_ComSkillCard)UI_ComSkillCard.Create(comp.GetChild("comSkillCard"));
-            m_ComSkillName = (UI_ComSkillName)UI_ComSkillName.Create(comp.GetChild("ComSkillName"));
-            m_ComSkillScore = (UI_ComSkillScore)UI_ComSkillScore.Create(comp.GetChild("ComSkillScore"));
-            m_t0 = comp.GetTransition("t0");
+            m_comSkillShow = (UI_ComSkillShow)UI_ComSkillShow.Create(comp.GetChild("comSkillShow"));
+            m_t1 = comp.GetTransition("t1");
         }
         public void Dispose(bool disposeTarget = false)
         {
-            m_comSkillCard.Dispose();
-            m_comSkillCard = null;
-            m_ComSkillName.Dispose();
-            m_ComSkillName = null;
-            m_ComSkillScore.Dispose();
-            m_ComSkillScore = null;
-            m_t0 = null;
+            m_comSkillShow.Dispose();
+            m_comSkillShow = null;
+            m_t1 = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

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

@@ -224,7 +224,11 @@ namespace GFGGame
             _showLv = isPreview == true ? lv : _cardData.lv;
             _showExp = isPreview == true ? exp : _cardData.exp;
             CardLvlCfg cardLvCfg = CardLvlCfgArray.Instance.GetCfgByrarityAndcardLvl(_cardData.itemCfg.rarity, _showLv);
-
+            if (cardLvCfg == null)
+            {
+                ET.Log.Error("卡牌" + _cardData.id + " 没有  " + _showLv + "   级等级配置");
+                return;
+            }
             _comFosterBottom.m_barLv.max = cardLvCfg.needExp;
             _comFosterBottom.m_barLv.value = _showExp;
             int maxLv = CardRarityCfgArray.Instance.GetCfg(_cardData.itemCfg.rarity).maxCardLvl;

+ 27 - 44
GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryFightSingleScoreView.cs

@@ -10,8 +10,8 @@ namespace GFGGame
     public class StoryFightSingleScoreView : BaseView
     {
         private UI_StoryFightSingleScoreUI _ui;
-        private GameObject _sceneObject;
-        private GameObject _scenePrefab;
+        // private GameObject _sceneObject;
+        // private GameObject _scenePrefab;
         private int _partId;//当前评分part
         private int _score;//当前总分数
         private int _skillScore = 0;//当前卡牌技能分
@@ -19,7 +19,7 @@ namespace GFGGame
         private int _currentTime = BeginTime.PART_ALL_FIGHT_BEGIN;
         private double _mainScore;//总主属性分
         private const int _range = 100;//圆圈随机范围
-        private const float _prefectScale = 0.866f;//完美缩放比
+        // private const float _prefectScale = 0.866f;//完美缩放比
         private NTexture _nTexture;
         private bool _stopFight = false;
         private float _time = 0;// 登峰造极按住的时间
@@ -42,11 +42,11 @@ namespace GFGGame
 
         public override void Dispose()
         {
-            if (_sceneObject != null)
-            {
-                GameObject.Destroy(_sceneObject);
-                _sceneObject = null;
-            }
+            // if (_sceneObject != null)
+            // {
+            //     GameObject.Destroy(_sceneObject);
+            //     _sceneObject = null;
+            // }
             SceneController.DestroyObjectFromView(_gameObject0, _wrapper0);
             SceneController.DestroyObjectFromView(_gameObject1, _wrapper1);
             SceneController.DestroyObjectFromView(_gameObject2, _wrapper2);
@@ -69,7 +69,7 @@ namespace GFGGame
             viewCom = _ui.target;
             isfullScreen = true;
 
-            _scenePrefab = GFGAsset.Load<GameObject>(ResPathUtil.GetPrefabPath("SceneFightSingleScore"));
+            // _scenePrefab = GFGAsset.Load<GameObject>(ResPathUtil.GetPrefabPath("SceneFightSingleScore"));
             _ui.m_btnBack.onClick.Add(OnBtnBackClick);
             _ui.m_btnSpeedUp.onClick.Add(OnBtnSpeedUp);
 
@@ -142,13 +142,13 @@ namespace GFGGame
 
         private void SkillScoreStart(object param)
         {
-
-            List<PassivitySkillLvlCfg> vaildSkills = ScoreSystemData.Instance.GetValidSkills(_currentTime, InstanceZonesDataManager.currentCardId, 0, _partId);
-            _skillScore = ScoreSystemData.Instance.GetPartItemSkillScore(vaildSkills, _mainScore);
+            List<int> roundTimes = ScoreSystemData.Instance.GetRoundTime(RoleType.MINE);
+            List<PassivitySkillLvlCfg> vaildSkills = ScoreSystemData.Instance.GetValidSkills(_currentTime, _partId, RoleType.MINE, roundTimes, null);
+            ScoreSystemData.Instance.GetPartItemSkillScore(vaildSkills, _mainScore, 0, out _skillScore, out int _targetScore, out Dictionary<int, int> skillScoreDic);
             bool _showCard = ScoreSystemData.Instance.IsShowCard(InstanceZonesDataManager.currentCardId, vaildSkills);
             if (_showCard)
             {
-                ViewManager.Show<StorySkillView>(_skillScore);
+                ViewManager.Show<StorySkillView>(skillScoreDic);
             }
             else
             {
@@ -205,6 +205,7 @@ namespace GFGGame
             }
             else
             {
+                _ui.m_comClick.m_comResult.m_t0.ClearHooks();
                 _ui.m_comClick.m_comResult.m_t0.Play(CheckPerfectSkill);
             }
             _ui.m_comClick.m_comResult.m_txtPart.text = FightScoreCfgArray.Instance.GetCfg(_partId).name;
@@ -214,7 +215,7 @@ namespace GFGGame
         {
             _skillScore = 0;
             _ui.m_comClick.target.touchable = false;
-            int clickType = GetClickType();
+            int clickType = ScoreSystemData.Instance.GetClickType(_ui.m_comClick.m_comResult.m_imgCircle.scale.x);
             _ui.m_comClick.m_comResult.m_t0.Stop(true, false);
 
             if (clickType == ClickType.PREFACT_CLICK)
@@ -234,7 +235,7 @@ namespace GFGGame
             _ui.m_comClick.target.touchable = false;
 
             PartScoreResultEnd();
-            _partScore = ScoreSystemData.Instance.GetPartScore(_partId, clickType, _skillScore);
+            _partScore = ScoreSystemData.Instance.GetPartScore(_partId, RoleType.MINE, clickType, _skillScore);
             _score += _partScore;
 
             _ui.m_comClick.m_comResult.m_c1.selectedIndex = clickType;
@@ -318,7 +319,7 @@ namespace GFGGame
             _ui.m_comRoleResult.m_c1.selectedIndex = 0;
 
             _ui.m_comRoleResult.m_t0.Play();
-            _ui.m_t2.Play(() =>
+            _ui.m_t1.Play(() =>
             {
                 Timers.inst.Add(0.3f, 1, Skip);
             });
@@ -396,28 +397,7 @@ namespace GFGGame
                 transition = _ui.m_comRoleResult.m_t3;
             }
         }
-        private int GetClickType()
-        {
-            float scaleX = _ui.m_comClick.m_comResult.m_imgCircle.scale.x;
-            int clickType = ClickType.MISS_CLICK;
-            if (FightDataManager.Instance.autoPlay == true)
-            {
-                return ClickType.PREFACT_CLICK;
-            }
-            if (scaleX <= _prefectScale && scaleX > 0.65f)
-            {
-                clickType = ClickType.PREFACT_CLICK;
-            }
-            else if (scaleX <= 0.216f)
-            {
-                clickType = ClickType.MISS_CLICK;
-            }
-            else
-            {
-                clickType = ClickType.GREAT_CLICK;
-            }
-            return clickType;
-        }
+
 
         private void OnBtnSpeedUp()
         {
@@ -445,7 +425,7 @@ namespace GFGGame
             Timers.inst.Remove(SkillScoreStart);
             Timers.inst.Remove(Skip);
             GTween.Kill(_ui.m_proScore.m_comBar);
-            _ui.m_t2.Stop(true, false);
+            _ui.m_t1.Stop(true, false);
 
             _ui.m_comRoleResult.m_t0.Stop(true, false);
             _ui.m_comRoleResult.m_t1.Stop(true, false);
@@ -467,6 +447,9 @@ namespace GFGGame
             _ui.m_comAllPerfect.target.onTouchBegin.Remove(OnComAllCircleClickBegin);
             _ui.m_comAllPerfect.target.onTouchEnd.Remove(AllCircleScoreEnd);
 
+            _ui.m_comClick.m_comResult.m_t1.Stop(true, false);
+            _ui.m_comClick.m_comResult.m_t0.Stop(true, false);
+
             _mainScore = 0;
         }
 
@@ -475,11 +458,11 @@ namespace GFGGame
         protected override void OnHide()
         {
             base.OnHide();
-            if (_sceneObject != null)
-            {
-                GameObject.Destroy(_sceneObject);
-                _sceneObject = null;
-            }
+            // if (_sceneObject != null)
+            // {
+            //     GameObject.Destroy(_sceneObject);
+            //     _sceneObject = null;
+            // }
 
             Reset();
         }

+ 572 - 796
GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryFightTargetScoreView.cs

@@ -1,803 +1,579 @@
-// using FairyGUI;
-// using UnityEngine;
-// using UI.Main;
-// using System.Collections;
-// using System;
-// using System.Collections.Generic;
+using FairyGUI;
+using UnityEngine;
+using UI.Main;
+using System.Collections;
+using System;
+using System.Collections.Generic;
 
 namespace GFGGame
 {
     public class StoryFightTargetScoreView : BaseView
     {
-        //         private UI_StoryFightTargetScoreUI _ui;
-        //         private GameObject _sceneObject;
-        //         private GameObject _scenePrefab;
-
-
-        //         private double _targetScore;
-        //         private double _score;//当前总分数
-        //         private int _partId;//当前评分part
-        //         private double _skillScore = 0;//当前卡牌技能分
-        //         private bool _showCard = false;//当前是否显示卡牌技能
-        //         private double _mainScore;//总主属性分
-        //         private double _targetMainScore;//战斗目标总主属性分
-        //         private const int _range = 30;//圆圈随机范围
-        //         private int _currentTime = BeginTime.PART_FIGHT_BEGIN;
-        //         private int _skillCount;
-
-        //         private float _speed = 1;
-        //         private bool _isAutoPlay = false;
-        //         private StoryLevelCfg _levelCfg;
-
-        //         private GameObject _gameObject0;
-        //         private GoWrapper _wrapper0;
-        //         private GameObject _gameObject1;
-        //         private GoWrapper _wrapper1;
-        //         private GameObject _gameObject2;
-        //         private GoWrapper _wrapper2;
-        //         private GameObject _gameObject3;
-        //         private GoWrapper _wrapper3;
-        //         private GameObject _gameObject4;
-        //         private GoWrapper _wrapper4;
-        //         private GameObject _gameObject5;
-        //         private GoWrapper _wrapper5;
-
-        //         private GameObject _gameObject6;
-        //         private GoWrapper _wrapper6;
-
-        //         private GameObject _gameObject7;
-        //         private GoWrapper _wrapper7;
-
-        //         private GameObject _gameObject8;
-        //         private GoWrapper _wrapper8;
-
-        //         private GameObject _gameObject9;
-        //         private GoWrapper _wrapper9;
-
-        //         private GameObject _gameObject10;
-        //         private GoWrapper _wrapper10;
-
-        //         private GameObject _gameObject11;
-        //         private GoWrapper _wrapper11;
-
-        //         private GameObject _gameObject12;
-        //         private GoWrapper _wrapper12;
-
-        //         private GameObject _gameObject13;
-        //         private GoWrapper _wrapper13;
-
-        //         private GameObject _gameObject14;
-        //         private GoWrapper _wrapper14;
-
-        //         private GameObject _gameObject15;
-        //         private GoWrapper _wrapper15;
-
-        //         private GameObject _gameObject16;
-        //         private GoWrapper _wrapper16;
-
-        //         private GameObject _gameObject17;
-        //         private GoWrapper _wrapper17;
-
-        //         private GameObject _gameObject18;
-        //         private GoWrapper _wrapper18;
-
-        //         private GameObject _gameObject19;
-        //         private GoWrapper _wrapper19;
-
-        //         private List<GameObject> _gameObjects = new List<GameObject>();
-        //         private List<GoWrapper> _wrappers = new List<GoWrapper>();
-        //         private List<LongPressGesture> _listLongPress = new List<LongPressGesture>();
-        //         // private GoWrapper _wrapper5;
-        //         // private Dictionary<int, RoleSkillCfg> _npcSkillDic;
-
-        //         private bool playStop = false;
-
-        //         public override void Dispose()
-        //         {
-        //             if (_sceneObject != null)
-        //             {
-        //                 GameObject.Destroy(_sceneObject);
-        //                 _sceneObject = null;
-        //             }
-
-        //             SceneController.DestroyObjectFromView(_gameObject0, _wrapper0);
-        //             SceneController.DestroyObjectFromView(_gameObject1, _wrapper1);
-        //             SceneController.DestroyObjectFromView(_gameObject2, _wrapper2);
-        //             SceneController.DestroyObjectFromView(_gameObject3, _wrapper3);
-        //             SceneController.DestroyObjectFromView(_gameObject4, _wrapper4);
-        //             SceneController.DestroyObjectFromView(_gameObject5, _wrapper5);
-        //             SceneController.DestroyObjectFromView(_gameObject6, _wrapper6);
-        //             SceneController.DestroyObjectFromView(_gameObject7, _wrapper7);
-        //             SceneController.DestroyObjectFromView(_gameObject8, _wrapper8);
-        //             SceneController.DestroyObjectFromView(_gameObject9, _wrapper9);
-        //             SceneController.DestroyObjectFromView(_gameObject11, _wrapper11);
-        //             SceneController.DestroyObjectFromView(_gameObject12, _wrapper12);
-        //             SceneController.DestroyObjectFromView(_gameObject13, _wrapper13);
-        //             SceneController.DestroyObjectFromView(_gameObject14, _wrapper14);
-        //             SceneController.DestroyObjectFromView(_gameObject15, _wrapper15);
-        //             SceneController.DestroyObjectFromView(_gameObject16, _wrapper16);
-        //             SceneController.DestroyObjectFromView(_gameObject17, _wrapper17);
-        //             SceneController.DestroyObjectFromView(_gameObject18, _wrapper18);
-        //             SceneController.DestroyObjectFromView(_gameObject19, _wrapper19);
-        //             for (int i = 0; i < _gameObjects.Count; i++)
-        //             {
-        //                 SceneController.DestroyObjectFromView(_gameObjects[i], _wrappers[i]);
-        //             }
-
-        //             for (int i = 0; i < _listLongPress.Count; i++)
-        //             {
-        //                 _listLongPress[i].Dispose();
-        //             }
-        //             _listLongPress.Clear();
-
-        //             if (_ui != null)
-        //             {
-        //                 _ui.Dispose();
-        //                 _ui = null;
-        //             }
-        //             base.Dispose();
-        //         }
-        //         private void AddEffect()
-        //         {
-        //             string resPath0 = ResPathUtil.GetViewEffectPath("ui_zhandou", "ui_zd_hd_sc");
-        //             SceneController.AddObjectToView(_gameObject0, null, _ui.m_ComShieldMine.m_holder, resPath0, out _gameObject0, out GoWrapper _wrapper0);
-        //             SceneController.AddObjectToView(_gameObject2, null, _ui.m_ComShieldNpc.m_holder, resPath0, out _gameObject2, out GoWrapper _wrapper2);
-        //             string resPath1 = ResPathUtil.GetViewEffectPath("ui_zhandou", "ui_zd_hd_ps");
-        //             SceneController.AddObjectToView(_gameObject1, null, _ui.m_ComShieldMine.m_holder1, resPath1, out _gameObject1, out GoWrapper _wrapper1);
-        //             SceneController.AddObjectToView(_gameObject3, null, _ui.m_ComShieldNpc.m_holder1, resPath1, out _gameObject3, out GoWrapper _wrapper3);
-        //             string resPath2 = ResPathUtil.GetViewEffectPath("ui_zhandou", "ui_zd_jn_tg");
-        //             SceneController.AddObjectToView(_gameObject4, null, _ui.m_ComRoleSkillMineAdd.m_holder, resPath2, out _gameObject4, out GoWrapper _wrapper4, 70);
-        //             SceneController.AddObjectToView(_gameObject5, null, _ui.m_ComRoleSkillNpcAdd.m_holder, resPath2, out _gameObject5, out GoWrapper _wrapper5, 70);
-        //             string resPath5 = ResPathUtil.GetViewEffectPath("ui_zhandou", "ui_zd_jn_jc");
-        //             SceneController.AddObjectToView(_gameObject7, null, _ui.m_ComRoleSkillMineMinus.m_holder, resPath5, out _gameObject7, out GoWrapper _wrapper7, 70);
-        //             SceneController.AddObjectToView(_gameObject8, null, _ui.m_ComRoleSkillNpcMinus.m_holder, resPath5, out _gameObject8, out GoWrapper _wrapper8, 70);
-        //             string resPath6 = ResPathUtil.GetViewEffectPath("ui_zhandou", "ui_zd_jn_dz");
-        //             SceneController.AddObjectToView(_gameObject9, null, _ui.m_ComRoleSkillMineBreak.m_holder, resPath6, out _gameObject9, out GoWrapper _wrapper9, 70);
-        //             SceneController.AddObjectToView(_gameObject10, null, _ui.m_ComRoleSkillNpcBreak.m_holder, resPath6, out _gameObject10, out GoWrapper _wrapper10, 70);
-        //             string resPath7 = ResPathUtil.GetViewEffectPath("ui_zhandou", "ui_zd_jn_jy");
-        //             SceneController.AddObjectToView(_gameObject11, null, _ui.m_ComRoleSkillMineShield.m_holder, resPath7, out _gameObject11, out GoWrapper _wrapper11, 70);
-        //             SceneController.AddObjectToView(_gameObject12, null, _ui.m_ComRoleSkillNpcShield.m_holder, resPath7, out _gameObject12, out GoWrapper _wrapper12, 70);
-        //             string resPath8 = ResPathUtil.GetViewEffectPath("ui_zhandou", "zd_df_cheng");
-        //             SceneController.AddObjectToView(_gameObject13, null, _ui.m_comMineCircle.m_holder, resPath8, out _gameObject13, out GoWrapper _wrapper13, 59);
-        //             string resPath8_1 = ResPathUtil.GetViewEffectPath("ui_zhandou", "zd_df_lv_sr");
-        //             SceneController.AddObjectToView(_gameObject14, null, _ui.m_comTargetCircle.m_holder, resPath8_1, out _gameObject14, out GoWrapper _wrapper14, 59);
-        //             string resPath9 = ResPathUtil.GetViewEffectPath("ui_zhandou", "zd_df_tw");
-        //             SceneController.AddObjectToView(_gameObject15, null, _ui.m_holderPartScore, resPath9, out _gameObject15, out GoWrapper _wrapper15);
-        //             SceneController.AddObjectToView(_gameObject16, null, _ui.m_holderPartScoreNpc, resPath9, out _gameObject16, out GoWrapper _wrapper16);
-        //             SceneController.AddObjectToView(_gameObject17, null, _ui.m_holderAddScore, resPath9, out _gameObject17, out GoWrapper _wrapper17);
-        //             SceneController.AddObjectToView(_gameObject18, null, _ui.m_holderAddScoreNpc, resPath9, out _gameObject18, out GoWrapper _wrapper18);
-
-        //             string resPath10 = ResPathUtil.GetViewEffectPath("ui_zhandou", "ui_zd_jdt_cz");
-        //             SceneController.AddObjectToView(_gameObject19, null, _ui.m_proScore.m_holder1, resPath10, out _gameObject19, out GoWrapper _wrapper19);
-        //             string resPath4 = ResPathUtil.GetViewEffectPath("ui_zhandou", "ui_zd_jdt");
-        //             SceneController.AddObjectToView(_gameObject6, null, _ui.m_proScore.m_holder, resPath4, out _gameObject6, out GoWrapper _wrapper6);
-
-        //             string resPath3 = ResPathUtil.GetViewEffectPath("ui_zhandou", "ui_zd_jn_an");
-        //             for (int i = 0; i < _skillCount; i++)
-        //             {
-        //                 GComponent btnSkill = _ui.target.GetChild("btnSkill" + i).asCom;
-        //                 UI_ComBtnSkill item = UI_ComBtnSkill.Proxy(btnSkill);
-        //                 SceneController.AddObjectToView(null, null, item.m_holder, resPath3, out GameObject _gameObject, out GoWrapper _wrapper);
-        //                 UI_ComBtnSkill.ProxyEnd();
-        //                 _gameObjects.Add(_gameObject);
-        //                 _wrappers.Add(_wrapper);
-        //             }
-
-
-
-        //             _ui.m_ComShieldMine.m_holder.visible = false;
-        //             _ui.m_ComShieldMine.m_holder1.visible = false;
-        //             _ui.m_ComShieldNpc.m_holder.visible = false;
-        //             _ui.m_ComShieldNpc.m_holder1.visible = false;
-        //         }
-
-        //         protected override void Init()
-        //         {
-        //             base.Init();
-        //             _ui = UI_StoryFightTargetScoreUI.Create();
-        //             viewCom = _ui.target;
-        //             isfullScreen = true;
-
-        //             _scenePrefab = GFGAsset.Load<GameObject>(ResPathUtil.GetPrefabPath("SceneFightTargetScore"));
-
-        //             RoleSkillCfg[] roleSkillCfgs = RoleSkillCfgArray.Instance.dataArray;
-        //             _skillCount = roleSkillCfgs.Length;
-        //             for (int i = 0; i < roleSkillCfgs.Length; i++)
-        //             {
-        //                 GComponent btnSkill = _ui.target.GetChild("btnSkill" + i).asCom;
-        //                 btnSkill.data = roleSkillCfgs[i];
-        //                 GLoader icon = btnSkill.GetChild("icon").asLoader;
-        //                 icon.onClick.Add(() => { OnBtnSkillClick(btnSkill); });
-        //                 LongPressGesture longPressGesture = new LongPressGesture(btnSkill);
-        //                 longPressGesture.once = true;
-        //                 LongPressGesture.TRIGGER = 1f;
-        //                 longPressGesture.onAction.Add(OnLongPress);
-        //                 longPressGesture.onEnd.Add(OnLongEnd);
-        //                 _listLongPress.Add(longPressGesture);
-        //             }
-        //             _ui.m_btnBack.onClick.Add(OnBtnBackClick);
-
-        //         }
-
-        //         protected override void OnInit()
-        //         {
-        //             base.OnInit();
-        //             _ui.m_btnSkip.onClick.Add(() =>
-        //             {
-        //                 Skip();
-        //             });
-        //             _ui.m_comMineCircle.target.onClick.Add(() =>
-        //             {
-        //                 _ui.m_btnSkill0.m_icon.touchable = true;
-        //             });
-
-        //             _ui.m_btnSkill0.target.onClick.Add(() =>
-        //             {
-        //                 if (_partId == 0 && GuideDataManager.IsGuideFinish(ConstGuideId.TARGET_FIGHT) <= 0 && playStop)
-        //                 {
-        //                     playStop = false;
-
-        //                     _ui.m_comMineCircle.m_t0.Play(() =>
-        //                     {
-        //                         CircleScoreEnd(null);
-        //                     });
-        //                     _ui.m_comTargetCircle.m_t0.Play();
-        //                 }
-        //             });
-        //             _ui.m_btnSpeedUp.onClick.Add(OnBtnSpeedUp);
-        //             AddEffect();
-
-        //         }
-        //         protected override void AddEventListener()
-        //         {
-        //             base.AddEventListener();
-        //             EventAgent.AddEventListener(ConstMessage.SHOW_CARD_SKILL_END, UpdateCircleResult);
-
-        //         }
-        //         protected override void OnShown()
-        //         {
-        //             base.OnShown();
-        //             if (_sceneObject == null)
-        //             {
-        //                 _sceneObject = GameObject.Instantiate(_scenePrefab);
-        //             }
-
-        //             MyDressUpHelper.dressUpObj.setSceneObj(_sceneObject);
-        //             MyDressUpHelper.dressUpObj.UpdateRoleView();
-        //             _levelCfg = StoryLevelCfgArray.Instance.GetCfg(InstanceZonesDataManager.currentLevelCfgId);
-        //             StoryFightCfg fightCfg = StoryFightCfgArray.Instance.GetCfg(_levelCfg.fightID);
-        //             SceneController.UpdateFightTarget(fightCfg.targetRes, _sceneObject);
-
-        //             _ui.m_proScore.m_txtNpcScore.text = fightCfg.targetName + " 0";
-        //             _ui.m_proScore.m_txtMineScore.text = RoleDataManager.roleName + " 0";
-        //             _ui.m_btnBack.visible = true;
-
-        //             _speed = FightDataManager.Instance.fightSpeed;
-        //             if (_levelCfg.type == ConstInstanceZonesType.Field)
-        //             {
-        //                 _ui.m_btnBack.visible = false;
-        //             }
-
-
-
-        //             ScoreSystemData.Instance.SetEquipDicWithType();
-
-        //             _partId = FightScoreCfgArray.Instance.dataArray[0].id; ;
-        //             _score = 0;
-        //             _targetScore = 0;
-        //             _mainScore = ScoreSystemData.Instance.GetMainScore();
-        //             _targetMainScore = fightCfg.targetMainScore;
-
-        //             UpdateNormal();
-
-        //             Timers.inst.Add(0.5f / _speed, 1, CircleScoreStart);//评分开始
-        //             Timers.inst.AddUpdate(CheckGuide);
-        //         }
-        //         private void UpdateNormal()
-        //         {
-        //             Reset();
-
-        //             if (_partId == 1 && GuideDataManager.IsGuideFinish(ConstGuideId.TARGET_FIGHT) <= 0)//引导中禁止自动战斗
-        //             {
-        //                 _speed = 1;
-        //                 FightDataManager.Instance.autoPlay = false;
-        //                 _ui.m_btnSkill0.m_icon.touchable = false;
-        //             }
-
-        //             if (_levelCfg.type == ConstInstanceZonesType.Field || FightDataManager.Instance.autoPlay)
-        //             {
-        //                 _isAutoPlay = true;
-        //             }
-
-        //             RoleSkillCfg[] roleSkillCfgs = RoleSkillCfgArray.Instance.dataArray;
-        //             for (int i = 0; i < roleSkillCfgs.Length; i++)
-        //             {
-        //                 GComponent btnSkill = _ui.target.GetChild("btnSkill" + i).asCom;
-        //                 UI_ComBtnSkill item = UI_ComBtnSkill.Proxy(btnSkill);
-        //                 item.m_txtCount.text = roleSkillCfgs[i].limiteCount.ToString();
-        //                 item.m_icon.touchable = true;
-        //                 if (_isAutoPlay)
-        //                 {
-
-        //                     item.m_icon.touchable = !_isAutoPlay;
-        //                     OnBtnSkillClick(btnSkill);
-        //                 }
-        //                 UI_ComBtnSkill.ProxyEnd();
-
-        //             }
-        //             _ui.m_btnSpeedUp.visible = _isAutoPlay;
-        //             _ui.m_btnSpeedUp.title = "x" + _speed;
-        //             // if (_index == 0 && GuideDataManager.IsGuideFinish(ConstGuideId.TARGET_FIGHT) <= 0)
-        //             // {
-        //             //     _ui.m_btnSkill0.target.touchable = false;
-        //             // }
-        //         }
-
-
-        //         private void CircleScoreStart(object param)
-        //         {
-        //             _skillScore = 0;//技能附加分
-        //             _showCard = false;
-
-        //             List<PassivitySkillLvlCfg> validSkillCfgs = ScoreSystemData.Instance.GetValidSkills(_currentTime, InstanceZonesDataManager.currentCardId, 0, _partId);
-        //             _skillScore = ScoreSystemData.Instance.GetPartItemSkillScore(validSkillCfgs, _mainScore);
-        //             _showCard = ScoreSystemData.Instance.IsShowCard(InstanceZonesDataManager.currentCardId, validSkillCfgs);
-        //             if (_showCard)
-        //             {
-        //                 ViewManager.Show<StorySkillView>(_skillScore);
-        //             }
-        //             else
-        //             {
-        //                 UpdateCircleResult();
-        //             }
-        //         }
-
-
-        //         //更新部件评分结果,播放结果动画
-        //         private void UpdateCircleResult()
-        //         {
-        //             double partScore = ScoreSystemData.Instance.GetPartItemScore(_partId);
-        //             _ui.m_comMineCircle.m_txtCount.text = ((int)Math.Round(partScore)).ToString();
-        //             _score += (int)Math.Round((partScore + _skillScore)); ;
-        //             FightDataManager.Instance.totalScore = (int)Math.Round(_score);
-
-
-        //             StoryFightCfg fightCfg = StoryFightCfgArray.Instance.GetCfg(_levelCfg.fightID);
-        //             double targetScore = fightCfg.targetPartsScoreArr[_partId - 1] * ConstScoreSystem.PART_SCORE;
-        //             _ui.m_comTargetCircle.m_txtCount.text = ((int)Math.Round(targetScore)).ToString();
-        //             _targetScore += targetScore;
-        //             FightDataManager.Instance.npcTotalScore = (int)Math.Round(_targetScore);
-
-        //             ReleaseNpcSkill();
-        //             PlayScoreAni();
-        //         }
-        //         //顶部评分进度条
-        //         private void UpdateProgressBar()
-        //         {
-        //             StoryFightCfg fightCfg = StoryFightCfgArray.Instance.GetCfg(_levelCfg.fightID);
-        //             _ui.m_proScore.m_txtNpcScore.text = string.Format("{0} {1}", fightCfg.targetName, (int)Math.Round(_targetScore));
-        //             _ui.m_proScore.m_txtMineScore.text = string.Format("{0} {1}", RoleDataManager.roleName, (int)Math.Round(_score));
-        //             // _ui.m_proScore.m_comBar.m_imgAni.visible = true;
-
-        //             double proportion = (_score + _targetScore) > 0 ? _score / (_score + _targetScore) : 0;
-        //             float width = (float)(proportion * _ui.m_proScore.target.width);
-
-        //             GTween.To(_ui.m_proScore.m_comBar.target.width, width, 0.5f).SetTarget(_ui.m_proScore.m_comBar).OnUpdate((GTweener t) =>
-        //                 {
-        //                     _ui.m_proScore.m_comBar.target.width = t.value.x;
-        //                 }); ;
-
-
-        //         }
-        //         //释放NPC技能
-        //         private void ReleaseNpcSkill()
-        //         {
-        //             StoryFightCfg fightCfg = StoryFightCfgArray.Instance.GetCfg(_levelCfg.fightID);
-
-        //             if (fightCfg.targerSkillArr.Length >= _partId)
-        //             {
-        //                 RoleSkillCfg cfg = RoleSkillCfgArray.Instance.GetCfg(fightCfg.targerSkillArr[_partId - 1]);
-        //                 if (cfg == null) return;
-        //                 SetSkillValue(cfg, SkillDataManager.NPC);
-        //             }
-        //         }
-
-        //         private void PlayScoreAni()
-        //         {
-        //             _ui.m_comMineCircle.target.visible = true;
-        //             _ui.m_comMineCircle.m_txtPart.text = FightScoreCfgArray.Instance.GetCfg(_partId).name;
-
-        //             _gameObject13.SetActive(true);
-        //             _gameObject14.SetActive(true);
-        //             _ui.m_comTargetCircle.target.visible = true;
-        //             _ui.m_comTargetCircle.m_txtPart.text = FightScoreCfgArray.Instance.GetCfg(_partId).name;
-        //             if (_partId == 1 && GuideDataManager.IsGuideFinish(ConstGuideId.TARGET_FIGHT) <= 0)
-        //             {
-        //                 _ui.m_comMineCircle.m_t0.Play(1, 0, 0, 0.75f, () =>
-        //                 {
-        //                     _ui.m_comMineCircle.m_holder.visible = false;
-        //                     playStop = true;
-        //                 });
-        //                 _ui.m_comTargetCircle.m_t0.Play(1, 0, 0, 0.75f, () =>
-        //                 {
-        //                     _ui.m_comTargetCircle.m_holder.visible = false;
-        //                 });
-        //                 return;
-        //             }
-        //             _ui.m_comMineCircle.m_holder.visible = false;
-        //             _ui.m_comMineCircle.m_t0.ignoreEngineTimeScale = false;
-        //             _ui.m_comMineCircle.m_t0.timeScale = _speed;
-        //             _ui.m_comMineCircle.m_t0.Play(() =>
-        //             {
-        //                 PlayScoreTWEffect(_ui.m_holderPartScore, _ui.m_comMineCircle.target.position, _ui.m_proScore.target.position);
-        //             });
-
-        //             _ui.m_comTargetCircle.m_holder.visible = false;
-        //             _ui.m_comTargetCircle.m_t0.ignoreEngineTimeScale = false;
-        //             _ui.m_comTargetCircle.m_t0.timeScale = _speed;
-        //             _ui.m_comTargetCircle.m_t0.Play(() =>
-        //             {
-        //                 PlayScoreTWEffect(_ui.m_holderPartScoreNpc, _ui.m_comTargetCircle.target.position, _ui.m_proScore.target.position + new Vector3(_ui.m_proScore.target.width, 0, 0));
-        //             });
-
-        //             Timers.inst.Add(2.5f / _speed, 1, CircleScoreEnd);
-        //         }
-        //         private void PlayScoreTWEffect(GGraph holderScore, Vector3 startValue, Vector3 endValue)
-        //         {
-        //             holderScore.visible = true;
-        //             GTween.To(startValue, endValue, 0.5f).SetTarget(holderScore).OnUpdate((GTweener t) =>
-        //             {
-        //                 holderScore.position = t.value.vec2;
-        //             }).OnComplete(() =>
-        //             {
-        //                 holderScore.visible = false;
-        //                 UpdateProgressBar();
-        //             });
-        //         }
-        //         private void CircleScoreEnd(object param)
-        //         {
-        //             //当前部件评分结束
-        //             _gameObject13.SetActive(false);
-        //             _gameObject14.SetActive(false);
-        //             _partId++;
-        //             if (_partId > FightScoreCfgArray.Instance.dataArray.Length)
-        //             {
-        //                 Timers.inst.Add(1.5f, 1, Skip);
-        //             }
-        //             else
-        //             {
-        //                 _ui.m_comTargetCircle.target.visible = false;
-        //                 _ui.m_comMineCircle.target.visible = false;
-        //                 Timers.inst.Add(0.5f / _speed, 1, CircleScoreStart);//评分结束
-        //             }
-
-        //         }
-
-
-        //         /***************************************************主动技能**************************************************/
-
-        //         private void OnBtnSkillClick(GComponent obj)
-        //         {
-        //             // if (_isAutoPlay) return;
-        //             UI_ComBtnSkill item = UI_ComBtnSkill.Proxy(obj);
-        //             RoleSkillCfg cfg = item.target.data as RoleSkillCfg;
-        //             int count = (int)item.m_icon.data;
-        //             if (count >= cfg.limiteCount) return;//超过最大限制次数
-        //             item.m_c1.selectedIndex = 1;
-        //             item.m_icon.data = count + 1;
-        //             item.m_txtCount.text = (cfg.limiteCount - (count + 1)).ToString();
-        //             UI_ComBtnSkill.ProxyEnd();
-        //             SetCdState(obj, cfg.cd);
-        //             SetSkillValue(cfg, SkillDataManager.MINE);
-        //         }
-        //         private void SetCdState(GComponent obj, int time)
-        //         {
-        //             UI_ComBtnSkill item = UI_ComBtnSkill.Proxy(obj);
-        //             GProgressBar bar = item.m_proCD;
-        //             bar.visible = true;
-        //             bar.value = 100;
-        //             bar.TweenValue(0, (float)time / 100 / _speed).OnComplete((GTweener tweener) =>
-        //               {
-        //                   GProgressBar bar1 = (GProgressBar)tweener.target;
-        //                   UI_ComBtnSkill item1 = UI_ComBtnSkill.Proxy(bar1.parent);
-        //                   int count = (int)item1.m_icon.data;
-        //                   RoleSkillCfg cfg = item1.target.data as RoleSkillCfg;
-        //                   item1.m_c1.selectedIndex = count >= cfg.limiteCount ? 2 : 0;
-
-        //                   item1.m_proCD.visible = false;
-        //                   if (_isAutoPlay)
-        //                   {
-        //                       OnBtnSkillClick(item1.target);
-        //                   }
-        //                   UI_ComBtnSkill.ProxyEnd();
-
-        //               });
-        //             UI_ComBtnSkill.ProxyEnd();
-        //         }
-
-        //         private void SetSkillValue(RoleSkillCfg cfg, int role)
-        //         {
-        //             if (cfg.buff == SkillDataManager.SKILL_ADD)
-        //             {
-        //                 UpdateAddUI(cfg, role);
-        //             }
-        //             else if (cfg.buff == SkillDataManager.SKILL_MINUS)
-        //             {
-        //                 UpdateMinusUI(cfg, role);
-        //             }
-        //             else if (cfg.buff == SkillDataManager.SKILL_BREAK)
-        //             {
-        //                 UpdateBreakUI(cfg, role);
-        //             }
-        //             else if (cfg.buff == SkillDataManager.SKILL_SHIELD)
-        //             {
-        //                 UpdateShieldUI(cfg, role);
-        //             }
-
-        //         }
-        //         private void UpdateAddUI(RoleSkillCfg cfg, int role)
-        //         {
-        //             UI_ComRoleSkill comRoleSkillScore = role == SkillDataManager.MINE ? _ui.m_ComRoleSkillMineAdd : _ui.m_ComRoleSkillNpcAdd;
-        //             comRoleSkillScore.target.visible = true;
-        //             int score = 0;
-        //             if (role == SkillDataManager.MINE)
-        //             {
-        //                 score = (int)_mainScore * cfg.value / 100;
-        //                 _score += score;
-        //             }
-        //             else
-        //             {
-        //                 score = (int)_targetMainScore * cfg.value / 100;
-        //                 _targetScore += score;
-        //             }
-        //             // comRoleSkillScore.m_comRoleSkill.m_c1.selectedIndex = 0;
-        //             comRoleSkillScore.m_txtScore.SetVar("count", "+" + score.ToString()).FlushVars();
-        //             comRoleSkillScore.m_t0.ignoreEngineTimeScale = false;
-        //             comRoleSkillScore.m_t0.timeScale = _speed;
-        //             comRoleSkillScore.m_t0.Play(() =>
-        //                 {
-        //                     comRoleSkillScore.target.visible = false;
-        //                     GGraph graph = role == SkillDataManager.MINE ? _ui.m_holderAddScore : _ui.m_holderAddScoreNpc;
-        //                     Vector3 targetPos = role == SkillDataManager.MINE ? _ui.m_proScore.target.position : _ui.m_proScore.target.position + new Vector3(_ui.m_proScore.target.width, 0, 0);
-        //                     PlayScoreTWEffect(graph, comRoleSkillScore.target.position, targetPos);
-        //                 });
-        //         }
-
-        //         //荆钗效果
-        //         private void UpdateMinusUI(RoleSkillCfg cfg, int role)
-        //         {
-        //             GProgressBar comSkillMinus = role == SkillDataManager.MINE ? _ui.m_proMinusMine : _ui.m_proMinusNpc;
-        //             UI_ComSkillShield targetComSkillShield = role == SkillDataManager.MINE ? _ui.m_ComShieldNpc : _ui.m_ComShieldMine;
-
-        //             comSkillMinus.visible = true;
-        //             comSkillMinus.value = 0;
-        //             comSkillMinus.TweenValue(100, 2f / _speed).OnComplete(() =>
-        //               {
-        //                   comSkillMinus.visible = false;
-
-        //                   if (targetComSkillShield.m_holder.visible)
-        //                   {
-        //                       targetComSkillShield.m_holder.visible = false;
-        //                       targetComSkillShield.m_holder1.visible = true;
-        //                       return;
-        //                   }
-
-        //                   UI_ComRoleSkill comRoleSkillScore = role == SkillDataManager.MINE ? _ui.m_ComRoleSkillNpcMinus : _ui.m_ComRoleSkillMineMinus;
-        //                   comRoleSkillScore.target.visible = true;
-        //                   //   comRoleSkillScore.m_c1.selectedIndex = role == SkillDataManager.MINE ? 0 : 1;
-        //                   int score = 0;
-        //                   if (role == SkillDataManager.MINE)
-        //                   {
-        //                       score = (int)_targetMainScore * cfg.value / 100;
-        //                       _targetScore -= score;
-        //                       if (_targetScore < 0) _targetScore = 0;
-        //                   }
-        //                   else
-        //                   {
-        //                       score = (int)_mainScore * cfg.value / 100;
-        //                       _score -= score;
-        //                       if (_score < 0) _score = 0;
-
-        //                   }
-
-        //                   comRoleSkillScore.m_txtScore.SetVar("count", "-" + score.ToString()).FlushVars();
-        //                   comRoleSkillScore.m_t0.ignoreEngineTimeScale = false;
-        //                   comRoleSkillScore.m_t0.timeScale = _speed;
-        //                   comRoleSkillScore.m_t0.Play(() =>
-        //                   {
-        //                       comRoleSkillScore.target.visible = false;
-        //                   });
-
-
-        //                   UpdateProgressBar();
-
-        //               });
-        //         }
-        //         private void UpdateBreakUI(RoleSkillCfg cfg, int role)
-        //         {
-
-        //             GProgressBar targetSkillMinus = role == SkillDataManager.MINE ? _ui.m_proMinusNpc : _ui.m_proMinusMine;
-        //             targetSkillMinus.visible = false;
-        //             UI_ComRoleSkill1 comSkillBreak = role == SkillDataManager.MINE ? _ui.m_ComRoleSkillMineBreak : _ui.m_ComRoleSkillNpcBreak;
-        //             comSkillBreak.target.visible = true;
-        //             comSkillBreak.m_t0.ignoreEngineTimeScale = false;
-        //             comSkillBreak.m_t0.timeScale = _speed;
-        //             comSkillBreak.m_t0.Play(() =>
-        //             {
-        //                 comSkillBreak.target.visible = false;
-        //             });
-
-        //             GTweener twener = GTween.GetTween(targetSkillMinus, TweenPropType.Progress);
-        //             if (twener != null)
-        //             {
-        //                 twener.Kill();
-        //             }
-        //         }
-        //         //锦衣效果
-        //         private void UpdateShieldUI(RoleSkillCfg cfg, int role)
-        //         {
-        //             UI_ComSkillShield comSkillShield = role == SkillDataManager.MINE ? _ui.m_ComShieldMine : _ui.m_ComShieldNpc;
-
-        //             comSkillShield.m_holder.visible = true;
-        //             comSkillShield.m_holder1.visible = false;
-
-        //             Timers.inst.Add((float)cfg.duration / 100 / _speed, 1, (param) =>
-        //               {
-        //                   // comSkillShield.target.visible = false;
-        //                   comSkillShield.m_holder.visible = false;
-
-        //               });
-
-        //             UI_ComRoleSkill1 comSkillShieldEff = role == SkillDataManager.MINE ? _ui.m_ComRoleSkillMineShield : _ui.m_ComRoleSkillNpcShield;
-        //             comSkillShieldEff.target.visible = true;
-        //             comSkillShieldEff.m_t0.ignoreEngineTimeScale = false;
-        //             comSkillShieldEff.m_t0.timeScale = _speed;
-        //             comSkillShieldEff.m_t0.Play(() =>
-        //             {
-        //                 comSkillShieldEff.target.visible = false;
-        //             });
-
-        //         }
-        //         private void OnBtnSpeedUp()
-        //         {
-        //             FightDataManager.Instance.fightSpeed = FightDataManager.Instance.fightSpeed == 1 ? FightDataManager.Instance.maxFightSpeed : 1;
-        //             _speed = FightDataManager.Instance.fightSpeed;
-
-        //             _ui.m_btnSpeedUp.title = "x" + _speed;
-        //         }
-
-        //         private void OnLongPress(EventContext context)
-        //         {
-        //             LongPressGesture gesture = (LongPressGesture)context.sender;
-        //             RoleSkillCfg skillCfg = gesture.host.data as RoleSkillCfg;
-        //             _ui.m_comSkillTips.target.visible = true;
-        //             if (skillCfg.skillId <= 2)
-        //             {
-        //                 _ui.m_comSkillTips.m_c1.selectedIndex = 0;
-        //                 _ui.m_comSkillTips.target.x = gesture.host.x + 90;
-        //             }
-        //             else
-        //             {
-        //                 _ui.m_comSkillTips.m_c1.selectedIndex = 1;
-        //                 _ui.m_comSkillTips.target.x = gesture.host.x - 240;
-        //             }
-        //             _ui.m_comSkillTips.m_txtTitle.text = skillCfg.name;
-        //             _ui.m_comSkillTips.m_txtContent.text = skillCfg.desc;
-        //         }
-        //         private void OnLongEnd()
-        //         {
-        //             _ui.m_comSkillTips.target.visible = false;
-        //         }
-
-        //         private void OnBtnBackClick()
-        //         {
-        //             // Reset();
-        //             InstanceZonesController.OnFinishStoryLevel(InstanceZonesDataManager.currentLevelCfgId, false, false);
-        //             this.Hide();
-
-        //         }
-        //         protected override void OnHide()
-        //         {
-        //             base.OnHide();
-        //             Reset();
-        //             if (_sceneObject != null)
-        //             {
-        //                 GameObject.Destroy(_sceneObject);
-        //                 _sceneObject = null;
-        //             }
-        //             // _npcSkillDic.Clear();
-
-        //             Timers.inst.Remove(CheckGuide);
-        //         }
-        //         protected override void RemoveEventListener()
-        //         {
-        //             base.RemoveEventListener();
-        //             EventAgent.RemoveEventListener(ConstMessage.SHOW_CARD_SKILL_END, UpdateCircleResult);
-
-        //         }
-        //         private async void Skip(object param = null)
-        //         {
-        //             FightDataManager.Instance.totalScore = (int)Math.Round(_score);
-        //             FightDataManager.Instance.npcTotalScore = (int)Math.Round(_targetScore);
-        //             await InstanceZonesController.CheckStoryFightResult();
-        //             Reset();
-        //         }
-        //         private void Reset()
-        //         {
-        //             _ui.m_comSkillTips.target.visible = false;
-
-        //             _ui.m_proScore.target.max = 100;
-        //             _ui.m_proScore.target.value = 0;
-        //             _ui.m_proScore.m_comBar.target.width = 0;
-
-
-        //             _ui.m_comMineCircle.target.visible = false;
-        //             _ui.m_comTargetCircle.target.visible = false;
-
-        //             _ui.m_proMinusMine.visible = false;
-        //             _ui.m_proMinusNpc.visible = false;
-        //             GTweener twenerMine = GTween.GetTween(_ui.m_proMinusMine, TweenPropType.Progress);
-        //             if (twenerMine != null) twenerMine.Kill(true);
-        //             GTweener twenerNpc = GTween.GetTween(_ui.m_proMinusNpc, TweenPropType.Progress);
-        //             if (twenerNpc != null) twenerNpc.Kill(true);
-        //             GTween.Kill(_ui.m_proScore.m_comBar);
-        //             GTween.Kill(_ui.m_holderPartScore);
-        //             GTween.Kill(_ui.m_holderPartScoreNpc);
-        //             //   GTween.To(startValue, endValue, 0.5f).SetTarget(holderScore)
-        //             _gameObject13.SetActive(false);
-        //             _gameObject14.SetActive(false);
-
-        //             _ui.m_ComShieldMine.m_holder.visible = false;
-        //             _ui.m_ComShieldNpc.m_holder1.visible = false;
-
-        //             _ui.m_ComRoleSkillMineAdd.target.visible = false;
-        //             _ui.m_ComRoleSkillMineMinus.target.visible = false;
-        //             _ui.m_ComRoleSkillNpcAdd.target.visible = false;
-        //             _ui.m_ComRoleSkillNpcMinus.target.visible = false;
-        //             _ui.m_ComRoleSkillMineBreak.target.visible = false;
-        //             _ui.m_ComRoleSkillNpcBreak.target.visible = false;
-        //             _ui.m_ComRoleSkillMineShield.target.visible = false;
-        //             _ui.m_ComRoleSkillNpcShield.target.visible = false;
-
-
-        //             for (int i = 0; i < _skillCount; i++)
-        //             {
-        //                 GComponent btnSkill = _ui.target.GetChild("btnSkill" + i).asCom;
-
-        //                 btnSkill.GetChild("icon").asLoader.data = 0;
-        //                 btnSkill.GetController("c1").selectedIndex = 0;
-        //             }
-        //             _isAutoPlay = false;
-        //             Timers.inst.Remove(CircleScoreStart);
-        //             Timers.inst.Remove(Skip);
-        //             Timers.inst.Remove(CircleScoreEnd);
-
-        //             _gameObjects.Clear();
-        //             _wrappers.Clear();
-        //         }
-        //         private void CheckGuide(object param)
-        //         {
-        //             if (GuideDataManager.IsGuideFinish(ConstGuideId.TARGET_FIGHT) <= 0)
-        //             {
-        //                 UpdateToCheckGuide(null);
-        //             }
-        //             else
-        //             {
-        //                 Timers.inst.Remove(CheckGuide);
-        //             }
-        //         }
-
-        //         protected override void UpdateToCheckGuide(object param)
-        //         {
-        //             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
-
-        //             if (playStop)
-        //             {
-        //                 GuideController.TryGuide(_ui.m_comMineCircle.target, ConstGuideId.TARGET_FIGHT, 1, "这里可以观察双方的分数计算。");
-        //             }
-        //             GuideController.TryGuide(_ui.m_btnSkill0.target, ConstGuideId.TARGET_FIGHT, 2, "使用技能,可以增加胜出的几率哦,长按查看技能说明。");
-        //             GuideController.TryCompleteGuide(ConstGuideId.TARGET_FIGHT, 2);
-
-        //         }
+        private UI_StoryFightTargetScoreUI _ui;
+        // private GameObject _sceneObject;
+        // private GameObject _scenePrefab;
+        private StoryLevelCfg _levelCfg;
+        private StoryFightCfg _fightCfg;
+
+        private GameObject _gameObject2;
+        private GoWrapper _wrapper2;
+
+        private GameObject _gameObject1;
+        private GoWrapper _wrapper1;
+        private GameObject _gameObject5;
+        private GoWrapper _wrapper5;
+        private NTexture _nTexture;
+        private bool _isAutoPlay = false;
+        // private float _speed = 1;
+        private int _partId;//当前评分part
+        private double _score;//当前总分数
+        private double _targetScore;
+        private double _mainScore;//总主属性分
+        private double _targetMainScore;//战斗目标总主属性分
+        private int _skillScore = 0;//当前卡牌技能分
+        private int _targetSkillScore = 0;//当前卡牌技能分
+        private List<int> _roundTimes = new List<int>();//作用时机为对战开始的技能持续的回合数,为0表示技能未被触发或技能作用时机不是对战开始
+        private List<int> _targetRoundTimes = new List<int>();//对方作用时机为对战开始的技能持续的回合数,为0表示技能未被触发或技能作用时机不是对战开始
+
+        private int _currentTime = BeginTime.PART_ALL_FIGHT_BEGIN;
+        private int _prefectCount = 0;//卓越点击数量
+        private float _time = 0;// 登峰造极按住的时间
+
+        public override void Dispose()
+        {
+            // if (_sceneObject != null)
+            // {
+            //     GameObject.Destroy(_sceneObject);
+            //     _sceneObject = null;
+            // }
+            SceneController.DestroyObjectFromView(_gameObject1, _wrapper1);
+            SceneController.DestroyObjectFromView(_gameObject2, _wrapper2);
+            SceneController.DestroyObjectFromView(_gameObject5, _wrapper5);
+
+            if (_ui != null)
+            {
+                _ui.Dispose();
+                _ui = null;
+            }
+            base.Dispose();
+        }
+        private void AddEffect()
+        {
+            string resPath10 = ResPathUtil.GetViewEffectPath("ui_zhandou", "ui_zd_jdt_cz");
+            SceneController.AddObjectToView(_gameObject1, null, _ui.m_proScore.m_holder1, resPath10, out _gameObject1, out _wrapper1);
+            string resPath4 = ResPathUtil.GetViewEffectPath("ui_zhandou", "ui_zd_jdt");
+            SceneController.AddObjectToView(_gameObject2, null, _ui.m_proScore.m_holder, resPath4, out _gameObject2, out _wrapper2);
+            string resPath5 = ResPathUtil.GetViewEffectPath("ui_zhandou", "zd_df_dfzj");
+            SceneController.AddObjectToView(null, null, _ui.m_comAllPerfect.m_holder, resPath5, out _gameObject5, out _wrapper5);
+        }
+
+        protected override void OnInit()
+        {
+            base.OnInit();
+            _ui = UI_StoryFightTargetScoreUI.Create();
+            viewCom = _ui.target;
+            isfullScreen = true;
+
+            // _scenePrefab = GFGAsset.Load<GameObject>(ResPathUtil.GetPrefabPath("SceneFightTargetScore"));
+            _ui.m_loaBg.url = ResPathUtil.GetFightBgImgPath("fightBg");
+            _ui.m_LoaMask.url = ResPathUtil.GetFightBgImgPath("fightBg");
+
+            _ui.m_btnBack.onClick.Add(OnBtnBackClick);
+            _ui.m_comClick.target.onClick.Add(PartScoreEnd);
+            _ui.m_btnSpeedUp.onClick.Add(OnBtnSpeedUp);
+
+            _ui.m_comClick.m_comResult.m_t0.ignoreEngineTimeScale = false;
+            _ui.m_comClick.m_comResult.m_t1.ignoreEngineTimeScale = false;
+            _ui.m_comAllPerfect.m_t0.ignoreEngineTimeScale = false;
+            _ui.m_t1.ignoreEngineTimeScale = false;
+            _ui.m_t2.ignoreEngineTimeScale = false;
+
+            AddEffect();
+        }
+        protected override void AddEventListener()
+        {
+            base.AddEventListener();
+            EventAgent.AddEventListener(ConstMessage.SHOW_CARD_SKILL_END, SkillScoreEnd);
+        }
+        protected override void RemoveEventListener()
+        {
+            base.RemoveEventListener();
+            EventAgent.RemoveEventListener(ConstMessage.SHOW_CARD_SKILL_END, SkillScoreEnd);
+
+        }
+        protected override void OnShown()
+        {
+            base.OnShown();
+
+            _nTexture = new NTexture(FightDataManager.Instance.RoleTextuex);
+
+            ET.Log.Debug("Screen:" + UnityEngine.Screen.width + "  " + UnityEngine.Screen.height + "   _nTexture:" + _nTexture.width + "   " + _nTexture.height);
+            _ui.m_imgRole.SetSize(GRoot.inst.width, GRoot.inst.height);
+            _ui.m_imgRole.texture = _nTexture;
+
+            _levelCfg = StoryLevelCfgArray.Instance.GetCfg(InstanceZonesDataManager.currentLevelCfgId);
+            _fightCfg = StoryFightCfgArray.Instance.GetCfg(_levelCfg.fightID);
+            // SceneController.UpdateFightTarget(_fightCfg.targetRes, _sceneObject);
+
+            _nTexture = new NTexture(FightDataManager.Instance.RoleTextuex);
+
+            ET.Log.Debug("Screen:" + UnityEngine.Screen.width + "  " + UnityEngine.Screen.height + "   _nTexture:" + _nTexture.width + "   " + _nTexture.height);
+
+            RoleInfoManager.Instance.UpdateHead(_ui.m_myHead, RoleDataManager.headId, RoleDataManager.headBorderId);
+            _ui.m_targetHead.GetChild("loaIcon").asLoader.url = ResPathUtil.GetNpcHeadPath(_fightCfg.targetRes);
+
+            _ui.m_proScore.m_txtNpcScore.text = _fightCfg.targetName + " 0";
+            _ui.m_proScore.m_txtMineScore.text = RoleDataManager.roleName + " 0";
+            _ui.m_btnBack.visible = true;
+
+            if (_levelCfg.type == ConstInstanceZonesType.Field)
+            {
+                _ui.m_btnBack.visible = false;
+            }
+
+            _isAutoPlay = _levelCfg.type == ConstInstanceZonesType.Field || FightDataManager.Instance.autoPlay;
+
+            _ui.m_btnSpeedUp.visible = _isAutoPlay;
+            _ui.m_btnSpeedUp.title = "x" + FightDataManager.Instance.fightSpeed;
+            _ui.m_comAllPerfect.target.visible = false;
+            _ui.m_LoaMask.visible = false;
+            _ui.m_proScore.m_comBar.target.width = 0;
+
+            ScoreSystemData.Instance.SetEquipDicWithType();
+
+            _partId = 1;
+            _score = 0;
+            _targetScore = 0;
+            _mainScore = ScoreSystemData.Instance.GetMainScore();
+            _targetMainScore = ScoreSystemData.Instance.GetTargetMainScore();
+            _ui.m_comAllPerfect.target.onTouchBegin.Add(OnComAllCircleClickBegin);
+            _ui.m_comAllPerfect.target.onTouchEnd.Add(AllCircleScoreEnd);
+
+            _roundTimes = ScoreSystemData.Instance.GetRoundTime(RoleType.MINE);
+            _targetRoundTimes = ScoreSystemData.Instance.GetRoundTime(RoleType.ENEMY);
+            ET.Log.Debug("zoya:  _mainScore:" + _mainScore);
+            ET.Log.Debug("zoya:  _targetMainScore:" + _targetMainScore);
+            CheckPartAllFightBegin();
+        }
+        /****************************************************************************************************************/
+        private void SkillScoreStart(int roleType, double mainScore, double targetMainScore, int cardId, out int skillScore, out int targetSkillScore, out Dictionary<int, int> skillScoreDic, out bool showCard)
+        {
+            List<PassivitySkillLvlCfg> vaildSkills = ScoreSystemData.Instance.GetValidSkills(_currentTime, _partId, roleType, _roundTimes, _targetRoundTimes);
+            ScoreSystemData.Instance.GetPartItemSkillScore(vaildSkills, mainScore, targetMainScore, out skillScore, out targetSkillScore, out skillScoreDic);
+            showCard = ScoreSystemData.Instance.IsShowCard(cardId, vaildSkills);
+
+        }
+        private void ShowSkillCard(Dictionary<int, int> skillScoreDic, bool showCard)
+        {
+            if (showCard)
+            {
+                ViewManager.Show<StorySkillView>(skillScoreDic);
+            }
+            else
+            {
+                EventAgent.DispatchEvent(ConstMessage.SHOW_CARD_SKILL_END);
+            }
+        }
+        private void CheckPartAllFightBegin()
+        {
+            _skillScore = 0;
+            _targetSkillScore = 0;
+            _currentTime = BeginTime.PART_ALL_FIGHT_BEGIN;
+            UpdateSkill0();
+        }
+        private void CheckPartFightBeginSkill()
+        {
+            _skillScore = 0;
+            _targetSkillScore = 0;
+
+            _currentTime = BeginTime.PART_FIGHT_BEGIN;
+
+            UpdateSkill1();
+
+        }
+        private void CheckPartPerfectClickSkill()
+        {
+            _currentTime = BeginTime.PART_PREFACT_CLICK;
+
+            UpdateSkill1();
+        }
+        private void CheckPartFightEndSkill()
+        {
+            _skillScore = 0;
+            _targetSkillScore = 0;
+
+            _currentTime = BeginTime.PART_FIGHT_END;
+            UpdateSkill0();
+        }
+        private void UpdateSkill0()
+        {
+            //技能分直接加到总分里
+            SkillScoreStart(RoleType.ENEMY, _targetMainScore, _mainScore, _fightCfg.targetCardId, out int t_skillScoreSelf, out int t_skillScoreOther, out Dictionary<int, int> targetSkillScoreDic, out bool showTaregtCard);
+
+            SkillScoreStart(RoleType.MINE, _mainScore, _targetMainScore, InstanceZonesDataManager.currentCardId, out int s_skillScoreSelf, out int s_skillScoreOther, out Dictionary<int, int> skillScoreDic, out bool showCard);
+
+            if (t_skillScoreSelf > 0)
+            {
+                _targetScore += t_skillScoreSelf;
+                _ui.m_comTargetCard.m_txtScore.text = t_skillScoreSelf.ToString();
+                _ui.m_t1.timeScale = FightDataManager.Instance.fightSpeed;
+                _ui.m_t1.Play();
+            }
+            if (t_skillScoreOther < 0)
+            {
+                _score += t_skillScoreOther;
+                _ui.m_comDeduction.m_txtDeduction.text = t_skillScoreOther.ToString();
+                _ui.m_t2.timeScale = FightDataManager.Instance.fightSpeed;
+                _ui.m_t2.Play();
+            }
+
+            if (s_skillScoreSelf > 0)
+            {
+                _score += s_skillScoreSelf;
+            }
+            if (s_skillScoreOther < 0)
+            {
+                _targetScore += s_skillScoreOther;
+            }
+
+            _targetScore = Math.Max(0, _targetScore);
+            _score = Math.Max(0, _score);
+
+            ShowSkillCard(skillScoreDic, true);
+        }
+        private void UpdateSkill1()
+        {
+            //技能分加到部件分里
+            SkillScoreStart(RoleType.ENEMY, _targetMainScore, _mainScore, _fightCfg.targetCardId, out int t_skillScoreSelf, out int t_skillScoreOther, out Dictionary<int, int> targetSkillScoreDic, out bool showTaregtCard);
+
+            SkillScoreStart(RoleType.MINE, _mainScore, _targetMainScore, InstanceZonesDataManager.currentCardId, out int s_skillScoreSelf, out int s_skillScoreOther, out Dictionary<int, int> skillScoreDic, out bool showCard);
+
+            if (t_skillScoreSelf > 0)
+            {
+                _targetSkillScore += t_skillScoreSelf;
+                _ui.m_comTargetCard.m_txtScore.text = t_skillScoreSelf.ToString();
+                _ui.m_t1.timeScale = FightDataManager.Instance.fightSpeed;
+                _ui.m_t1.Play();
+            }
+            if (t_skillScoreOther < 0)
+            {
+                _skillScore += t_skillScoreOther;
+                _ui.m_comDeduction.m_txtDeduction.text = t_skillScoreOther.ToString();
+                _ui.m_t2.timeScale = FightDataManager.Instance.fightSpeed;
+                _ui.m_t2.Play();
+            }
+
+            if (s_skillScoreSelf > 0)
+            {
+                _skillScore += s_skillScoreSelf;
+            }
+            if (s_skillScoreOther < 0)
+            {
+                _targetSkillScore += s_skillScoreOther;
+            }
+
+            ShowSkillCard(skillScoreDic, true);
+
+        }
+
+        private void SkillScoreEnd()
+        {
+            switch (_currentTime)
+            {
+                case BeginTime.PART_ALL_FIGHT_BEGIN:
+                    UpdateProgress(CheckPartFightBeginSkill);
+                    break;
+                case BeginTime.PART_FIGHT_BEGIN:
+                    PartScoreStart();
+                    break;
+                case BeginTime.PART_PREFACT_CLICK:
+                    Timers.inst.Add(0.3f, 1, (object param) =>
+                    {
+                        PartScoreResultStart(ClickType.PREFACT_CLICK);
+                    });
+                    break;
+                case BeginTime.PART_FIGHT_END:
+                    UpdateProgress(OnePartScoreEnd);
+                    break;
+            }
+        }
+
+        private void PartScoreStart()
+        {
+            _ui.m_comClick.target.touchable = !_isAutoPlay;
+
+            Vector2 pos = (_ui.m_comClick.target.GetChild("grh_" + (_partId - 1)).asGraph).xy;
+            float x = 0f;
+            float y = 0f;
+
+            x = pos.x;
+            y = pos.y;
+            _ui.m_comClick.m_comResult.m_loaGlass.SetXY(130, 130);
+            _ui.m_comClick.m_comResult.m_loaGlass.url = string.Format("ui://Main/zd_bl_{0}", UnityEngine.Random.Range(0, 3));
+            _ui.m_comClick.m_comResult.target.SetXY(x, y);
+
+            _ui.m_comClick.m_comResult.m_t0.timeScale = FightDataManager.Instance.fightSpeed;
+            if (_isAutoPlay)
+            {
+                _ui.m_comClick.m_comResult.m_t0.SetHook("perfect", PartScoreEnd);
+                _ui.m_comClick.m_comResult.m_t0.Play();
+            }
+            else
+            {
+                _ui.m_comClick.m_comResult.m_t0.ClearHooks();
+                _ui.m_comClick.m_comResult.m_t0.Play(PartScoreEnd);
+            }
+            _ui.m_comClick.m_comResult.m_txtPart.text = FightScoreCfgArray.Instance.GetCfg(_partId).name;
+        }
+        private void PartScoreEnd()
+        {
+
+            _ui.m_comClick.target.touchable = false;
+            int clickType = ScoreSystemData.Instance.GetClickType(_ui.m_comClick.m_comResult.m_imgCircle.scale.x);
+            _ui.m_comClick.m_comResult.m_t0.Stop(true, false);
+
+            if (clickType == ClickType.PREFACT_CLICK)
+            {
+                CheckPartPerfectClickSkill();
+            }
+            else
+            {
+                PartScoreResultStart(clickType);
+            }
+        }
+        private void PartScoreResultStart(int clickType)
+        {
+            Debug.Log("_partId:" + _partId);
+
+            _ui.m_comClick.target.touchable = false;
+
+            // ET.Log.Debug("zoya    _score:" + _score);
+            // ET.Log.Debug("zoya    _targetScore:" + _targetScore);
+            int _partScore = ScoreSystemData.Instance.GetPartScore(_partId, RoleType.MINE, clickType, _skillScore);
+            int _targetPartScore = ScoreSystemData.Instance.GetPartScore(_partId, RoleType.ENEMY, ClickType.PREFACT_CLICK, _targetSkillScore);
+            ET.Log.Debug("zoya    _partScore:" + _partScore);
+            ET.Log.Debug("zoya    _targetPartScore:" + _targetPartScore);
+            _score += _partScore;
+            _targetScore += _targetPartScore;
+            ET.Log.Debug("zoya    score:" + _score);
+            ET.Log.Debug("zoya    targetScore:" + _targetScore);
+            _ui.m_comClick.m_comResult.m_c1.selectedIndex = clickType;
+            switch (clickType)
+            {
+                case ClickType.MISS_CLICK:
+                    _ui.m_comClick.m_comResult.m_txtCount0.text = _partScore.ToString();
+                    break;
+                case ClickType.GREAT_CLICK:
+                    _ui.m_comClick.m_comResult.m_txtCount1.text = _partScore.ToString();
+                    break;
+                case ClickType.PREFACT_CLICK:
+                    _prefectCount++;
+                    _ui.m_comClick.m_comResult.m_txtCount2.text = _partScore.ToString();
+                    break;
+            }
+
+            PartScoreResultEnd();
+        }
+        private void PartScoreResultEnd()
+        {
+
+            _ui.m_comClick.m_comResult.m_t1.timeScale = FightDataManager.Instance.fightSpeed;
+            _ui.m_comClick.m_comResult.m_t1.SetValue("start", 130, 130);
+            Vector2 posInB = _ui.m_proScore.target.TransformPoint(_ui.m_proScore.m_imgAni.xy, _ui.m_comClick.m_comResult.target);
+            _ui.m_comClick.m_comResult.m_t1.SetValue("end", posInB.x, posInB.y);
+            _ui.m_comClick.m_comResult.m_t1.Play(() =>
+            {
+                UpdateProgress(CheckPartFightEndSkill);
+            });
+        }
+
+        private void UpdateProgress(Action onFinish)
+        {
+            _ui.m_proScore.m_txtMineScore.text = RoleDataManager.roleName + _score;
+            _ui.m_proScore.m_txtNpcScore.text = _fightCfg.targetName + _targetScore;
+            double proportion = _score + _targetScore == 0 ? 0 : _score / (_score + _targetScore);
+            float width = (float)(proportion * _ui.m_proScore.target.width);
+            width = width > _ui.m_proScore.m_comBar.target.initWidth ? _ui.m_proScore.m_comBar.target.initWidth : width;
+            GTween.To(_ui.m_proScore.m_comBar.target.width, width, 0.3f).SetTarget(_ui.m_proScore.m_comBar).OnUpdate((GTweener t) =>
+                {
+                    _ui.m_proScore.m_comBar.target.width = t.value.x;
+                }).OnComplete(() =>
+                {
+                    if (onFinish != null) onFinish();
+                });
+        }
+        private void OnePartScoreEnd()
+        {
+            _partId++;
+            if (_partId > FightScoreCfgArray.Instance.dataArray.Length)
+            {
+                if (_prefectCount > 0)
+                {
+                    _ui.m_comAllPerfect.target.visible = true;
+                    AllCirclePlayStart();//完美八连击
+                }
+                else
+                {
+                    Timers.inst.Add(0.5f, 1, FightEnd);//评分结束
+                }
+            }
+            else
+            {
+                Timers.inst.Add(ConstScoreSystem.REFRESH_CIRCLE_WITE_TIME / FightDataManager.Instance.fightSpeed, 1, (object param) => { CheckPartFightBeginSkill(); });//下个部分评分
+            }
+        }
+
+        private void FightEnd(object param = null)
+        {
+            _ui.m_comRoleResult.m_comRole.m_imgRole.SetSize(GRoot.inst.width, GRoot.inst.height);
+            _ui.m_comRoleResult.m_comRole.m_imgRole.texture = _nTexture;
+            _ui.m_comRoleResult.m_c1.selectedIndex = 0;
+
+            _ui.m_comRoleResult.m_t0.Play();
+            _ui.m_t0.Play(() =>
+            {
+                Timers.inst.Add(0.3f, 1, Skip);
+            });
+        }
+
+        private void AllCirclePlayStart()
+        {
+            //登峰造极评分开始
+            _ui.m_comAllPerfect.target.visible = true;
+            _ui.m_comAllPerfect.m_t0.timeScale = FightDataManager.Instance.fightSpeed;
+            _ui.m_comAllPerfect.m_t0.Play(() =>
+            {
+                AllCircleScoreEnd();
+            });
+        }
+        private void OnComAllCircleClickBegin()
+        {
+            if (_ui.m_comAllPerfect.m_imgCircle.visible == false)
+            {
+                Timers.inst.Remove(ComAllCirclePressTime);
+            }
+            else
+            {
+                Timers.inst.Add(0.1f, 0, ComAllCirclePressTime);
+            }
+        }
+        private void ComAllCirclePressTime(object param = null)
+        {
+            //登峰造极长按时间
+            _time += 0.1f;
+        }
+        private void AllCircleScoreEnd()
+        {
+            Timers.inst.Remove(ComAllCirclePressTime);
+            _ui.m_comAllPerfect.m_t0.Stop();
+            _ui.m_comAllPerfect.target.onTouchBegin.Remove(OnComAllCircleClickBegin);
+            _ui.m_comAllPerfect.target.onTouchEnd.Remove(AllCircleScoreEnd);
+
+            int allCircleScore = 0;
+            if (_time >= ConstScoreSystem.LONG_PRESS_TIME / FightDataManager.Instance.fightSpeed)
+            {
+                allCircleScore = ScoreSystemData.Instance.GetAllCircleAddScore(_mainScore);
+            }
+            _ui.m_comAllPerfect.m_txtCount.text = allCircleScore.ToString();
+
+            _time = 0;
+            _score += allCircleScore;
+            _ui.m_comAllPerfect.m_t1.Play(() =>
+                {
+                    _prefectCount = 0;
+                    UpdateProgress(OnePartScoreEnd);
+                });
+        }
+        private void OnBtnSpeedUp()
+        {
+            FightDataManager.Instance.fightSpeed = FightDataManager.Instance.fightSpeed == 1 ? FightDataManager.Instance.maxFightSpeed : 1;
+
+            _ui.m_btnSpeedUp.title = "x" + FightDataManager.Instance.fightSpeed;
+        }
+        private void OnBtnBackClick()
+        {
+            InstanceZonesController.OnFinishStoryLevel(InstanceZonesDataManager.currentLevelCfgId, false, false);
+            this.Hide();
+
+        }
+        protected override void OnHide()
+        {
+            base.OnHide();
+            Reset();
+            // if (_sceneObject != null)
+            // {
+            //     GameObject.Destroy(_sceneObject);
+            //     _sceneObject = null;
+            // }
+            // _npcSkillDic.Clear();
+
+            Timers.inst.Remove(CheckGuide);
+        }
+
+        private async void Skip(object param = null)
+        {
+            FightDataManager.Instance.totalScore = (int)Math.Round(_score);
+            FightDataManager.Instance.npcTotalScore = (int)Math.Round(_targetScore);
+            await InstanceZonesController.CheckStoryFightResult();
+            Reset();
+        }
+        private void Reset()
+        {
+            _ui.m_comAllPerfect.target.onTouchBegin.Remove(OnComAllCircleClickBegin);
+            _ui.m_comAllPerfect.target.onTouchEnd.Remove(AllCircleScoreEnd);
+
+            // Timers.inst.Remove(SkillScoreStart);
+            Timers.inst.Remove(Skip);
+            GTween.Kill(_ui.m_proScore.m_comBar);
+
+            _ui.m_t1.Stop(true, false);
+
+            _ui.m_comRoleResult.m_t0.Stop(true, false);
+            _ui.m_comRoleResult.m_t1.Stop(true, false);
+            _ui.m_comRoleResult.m_t2.Stop(true, false);
+            _ui.m_comRoleResult.m_t3.Stop(true, false);
+            _ui.m_comRoleResult.m_comRole.m_t0.Stop(true, false);
+            _ui.m_comRoleResult.m_comRole.m_imgRole.alpha = 0;
+            _ui.m_comRoleResult.target.SetScale(0, 0);
+
+            _ui.m_comAllPerfect.m_t0.Stop(true, false);
+            _ui.m_comAllPerfect.m_t1.Stop(true, false);
+            _ui.m_comAllPerfect.target.onTouchBegin.Remove(OnComAllCircleClickBegin);
+            _ui.m_comAllPerfect.target.onTouchEnd.Remove(AllCircleScoreEnd);
+
+            _ui.m_proScore.m_txtNpcScore.text = "";
+            _ui.m_proScore.m_txtMineScore.text = "";
+            _ui.m_proScore.m_comBar.target.width = 0;
+
+            _ui.m_t1.Stop(true, false);
+            _ui.m_t2.Stop(true, false);
+
+            _ui.m_comClick.m_comResult.m_t1.Stop(true, false);
+            _ui.m_comClick.m_comResult.m_t0.Stop(true, false);
+        }
+        private void CheckGuide(object param)
+        {
+            if (GuideDataManager.IsGuideFinish(ConstGuideId.TARGET_FIGHT) <= 0)
+            {
+                UpdateToCheckGuide(null);
+            }
+            else
+            {
+                Timers.inst.Remove(CheckGuide);
+            }
+        }
+
+        protected override void UpdateToCheckGuide(object param)
+        {
+            if (!ViewManager.CheckIsTopView(this.viewCom)) return;
+
+            // if (playStop)
+            // {
+            //     GuideController.TryGuide(_ui.m_comMineCircle.target, ConstGuideId.TARGET_FIGHT, 1, "这里可以观察双方的分数计算。");
+            // }
+            // GuideController.TryGuide(_ui.m_btnSkill0.target, ConstGuideId.TARGET_FIGHT, 2, "使用技能,可以增加胜出的几率哦,长按查看技能说明。");
+            // GuideController.TryCompleteGuide(ConstGuideId.TARGET_FIGHT, 2);
+
+        }
     }
 }

+ 45 - 7
GameClient/Assets/Game/HotUpdate/Views/MainStory/StorySkillView.cs

@@ -1,5 +1,6 @@
 
 using System;
+using System.Collections.Generic;
 using UI.Main;
 
 namespace GFGGame
@@ -7,6 +8,8 @@ namespace GFGGame
     public class StorySkillView : BaseView
     {
         private UI_StorySkillUI _ui;
+        private Dictionary<int, int> skillScoreDic;
+
         public override void Dispose()
         {
             if (_ui != null)
@@ -28,15 +31,50 @@ namespace GFGGame
         protected override void OnShown()
         {
             base.OnShown();
-            CardData data = CardDataManager.GetCardDataById(InstanceZonesDataManager.currentCardId);//(0)[InstanceZonesDataManager.currentCardId];
-            _ui.m_comSkillCard.m_loaCard.url = ResPathUtil.GetCardPath(data.resources[data.resIndex]);
-            PassivitySkillCfg cfg = ScoreSystemData.Instance.GetMainSkillCfg(data.id);
-            _ui.m_ComSkillName.target.GetChild("txtName").asTextField.text = cfg.name;
-            _ui.m_ComSkillScore.target.GetChild("txtCount").asTextField.text = viewData.ToString();
-            _ui.m_t0.Play(() =>
+            skillScoreDic = this.viewData as Dictionary<int, int>;
+            UpdateView();
+        }
+        private void UpdateView()
+        {
+            if (skillScoreDic.Count > 0)
+            {
+                int skillId = 0;
+                foreach (int key in skillScoreDic.Keys)
+                {
+                    skillId = key;
+                    break;
+                }
+                PassivitySkillCfg skillCfg = PassivitySkillCfgArray.Instance.GetCfg(skillId);
+                _ui.m_comSkillShow.m_ComSkillName.target.GetChild("txtName").asTextField.text = skillCfg.name;
+                _ui.m_comSkillShow.m_ComSkillScore.target.GetChild("txtCount").asTextField.text = skillScoreDic[skillId].ToString();
+
+                string res = skillCfg.res;
+                if (string.IsNullOrEmpty(skillCfg.res))
+                {
+                    res = "kp_mengying";
+                    ET.Log.Debug("技能" + skillCfg.skillId + "  未配资源");
+                }
+                _ui.m_comSkillShow.m_comSkillCard.m_loaCard.url = ResPathUtil.GetCardPath(res);
+                if (skillScoreDic[skillId] > 0)
+                {
+                    skillScoreDic.Remove(skillId);
+                    _ui.m_comSkillShow.m_t0.Play(() =>
+                    {
+                        UpdateView();
+                    });
+                }
+                else
+                {
+                    _ui.m_t1.Play(() =>
+                    {
+                        UpdateView();
+                    });
+                }
+            }
+            else
             {
                 this.Hide();
-            });
+            }
         }
         protected override void OnHide()
         {

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

@@ -78,7 +78,6 @@ namespace GFGGame
             if (!this._resultData.Result)
             {
                 _ui.m_comExpBar.target.visible = false;
-                _ui.m_btnClose.enabled = true;
                 InstanceZonesDataManager.isResultFighting = false;
             }
             else

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


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


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


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

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

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


+ 0 - 96
GameClient/Assets/ResIn/UI/Main/Main_atlas_vuz5bw.png.meta

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

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