DESKTOP-FB72PO8\Administrator 9 時間 前
コミット
8200a1bb84

+ 199 - 175
Assets/Art/HeroTimeLine/gf_1102_timeline.playable

@@ -1,134 +1,5 @@
 %YAML 1.1
 %TAG !u! tag:yousandi.cn,2023:
---- !u!114 &-8163155735636435286
-MonoBehaviour:
-  m_ObjectHideFlags: 1
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 0}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: f1fc88ca9f5b46d2929d20f65fbe5c4e, type: 3}
-  m_Name: TimeLineParticleSystemAsset(Clone)(Clone)(Clone)
-  m_EditorClassIdentifier: 
-  sourceGameObject:
-    exposedName: bd7c10f7669f11b439a23d5a6f82ae81
-    defaultValue: {fileID: 0}
-  prefabGameObject: {fileID: 1968306391728028487, guid: 2f85b7882556d5b4ea4d916de10bf89c, type: 3}
-  updateParticle: 1
-  particleRandomSeed: 518
-  updateDirector: 1
-  updateITimeControl: 1
-  searchHierarchy: 1
-  active: 1
-  postPlayback: 2
-  targetType: 1
-  LocationType: 5
-  targetSpecialDotName: zdpos9
-  hitPointGroupName: 
-  isGround: 0
-  isFollowTarget: 0
-  isNotRotate: 0
-  isFollowRootTarget: 0
-  isAttSpeed: 0
-  isLoop: 0
-  loopAlone: 0
-  isActivityCustomTargetPos: 0
-  CustomTargetPosIndex: 0
-  intervalTime: 0
---- !u!114 &-7242387571130488237
-MonoBehaviour:
-  m_ObjectHideFlags: 1
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 0}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: 15e0374501f39d54eb30235764636e0e, type: 3}
-  m_Name: Control Track (1)
-  m_EditorClassIdentifier: 
-  m_Version: 3
-  m_AnimClip: {fileID: 0}
-  m_Locked: 0
-  m_Muted: 0
-  m_CustomPlayableFullTypename: 
-  m_Curves: {fileID: 0}
-  m_Parent: {fileID: -5073625934344026965}
-  m_Children: []
-  m_Clips:
-  - m_Version: 1
-    m_Start: 0.3999999999999999
-    m_ClipIn: 0
-    m_Asset: {fileID: -1249931145621353543}
-    m_Duration: 1
-    m_TimeScale: 1
-    m_ParentTrack: {fileID: -7242387571130488237}
-    m_EaseInDuration: 0
-    m_EaseOutDuration: 0
-    m_BlendInDuration: 0
-    m_BlendOutDuration: 0
-    m_MixInCurve:
-      serializedVersion: 2
-      m_Curve:
-      - serializedVersion: 3
-        time: 0
-        value: 0
-        inSlope: 0
-        outSlope: 0
-        tangentMode: 0
-        weightedMode: 0
-        inWeight: 0
-        outWeight: 0
-      - serializedVersion: 3
-        time: 1
-        value: 1
-        inSlope: 0
-        outSlope: 0
-        tangentMode: 0
-        weightedMode: 0
-        inWeight: 0
-        outWeight: 0
-      m_PreInfinity: 2
-      m_PostInfinity: 2
-      m_RotationOrder: 4
-    m_MixOutCurve:
-      serializedVersion: 2
-      m_Curve:
-      - serializedVersion: 3
-        time: 0
-        value: 1
-        inSlope: 0
-        outSlope: 0
-        tangentMode: 0
-        weightedMode: 0
-        inWeight: 0
-        outWeight: 0
-      - serializedVersion: 3
-        time: 1
-        value: 0
-        inSlope: 0
-        outSlope: 0
-        tangentMode: 0
-        weightedMode: 0
-        inWeight: 0
-        outWeight: 0
-      m_PreInfinity: 2
-      m_PostInfinity: 2
-      m_RotationOrder: 4
-    m_BlendInCurveMode: 0
-    m_BlendOutCurveMode: 0
-    m_ExposedParameterNames: []
-    m_AnimationCurves: {fileID: 0}
-    m_Recordable: 0
-    m_PostExtrapolationMode: 0
-    m_PreExtrapolationMode: 0
-    m_PostExtrapolationTime: 0
-    m_PreExtrapolationTime: 0
-    m_DisplayName: fx_zd
-  m_Markers:
-    m_Objects: []
 --- !u!114 &-5073625934344026965
 MonoBehaviour:
   m_ObjectHideFlags: 1
@@ -139,7 +10,7 @@ MonoBehaviour:
   m_Enabled: 1
   m_EditorHideFlags: 0
   m_Script: {fileID: 11500000, guid: d0fc6f5187a81dc47999eefade6f0935, type: 3}
-  m_Name: "1102@\u71CE\u539F\u6307"
+  m_Name: "1102@\u5929\u7F61\u5251\u6C14\u8BC0"
   m_EditorClassIdentifier: 
   m_Version: 3
   m_AnimClip: {fileID: 0}
@@ -151,8 +22,6 @@ MonoBehaviour:
   m_Children:
   - {fileID: 8106544261917024806}
   - {fileID: -894447145330074657}
-  - {fileID: -7242387571130488237}
-  - {fileID: -1223227800801429518}
   m_Clips: []
   m_Markers:
     m_Objects: []
@@ -180,44 +49,7 @@ MonoBehaviour:
   m_Rotation: {x: 0, y: 0, z: 0, w: 1}
   isRunPlay: 0
   layerId: 0
---- !u!114 &-1249931145621353543
-MonoBehaviour:
-  m_ObjectHideFlags: 1
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 0}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: f1fc88ca9f5b46d2929d20f65fbe5c4e, type: 3}
-  m_Name: TimeLineParticleSystemAsset(Clone)(Clone)
-  m_EditorClassIdentifier: 
-  sourceGameObject:
-    exposedName: 06f144804f7ec7342a023f1e18a025af
-    defaultValue: {fileID: 0}
-  prefabGameObject: {fileID: 6451459888462300805, guid: ff0a0a20550f21c45bc6624840da1049, type: 3}
-  updateParticle: 1
-  particleRandomSeed: 518
-  updateDirector: 1
-  updateITimeControl: 1
-  searchHierarchy: 1
-  active: 1
-  postPlayback: 2
-  targetType: 2
-  LocationType: 0
-  targetSpecialDotName: zdpos9
-  hitPointGroupName: 
-  isGround: 0
-  isFollowTarget: 0
-  isNotRotate: 0
-  isFollowRootTarget: 0
-  isAttSpeed: 0
-  isLoop: 0
-  loopAlone: 0
-  isActivityCustomTargetPos: 0
-  CustomTargetPosIndex: 0
-  intervalTime: 0
---- !u!114 &-1223227800801429518
+--- !u!114 &-2659919168468153206
 MonoBehaviour:
   m_ObjectHideFlags: 1
   m_CorrespondingSourceObject: {fileID: 0}
@@ -235,16 +67,16 @@ MonoBehaviour:
   m_Muted: 0
   m_CustomPlayableFullTypename: 
   m_Curves: {fileID: 0}
-  m_Parent: {fileID: -5073625934344026965}
+  m_Parent: {fileID: -2315087991427637812}
   m_Children: []
   m_Clips:
   - m_Version: 1
-    m_Start: 0
+    m_Start: 0.3999999999999999
     m_ClipIn: 0
-    m_Asset: {fileID: -8163155735636435286}
+    m_Asset: {fileID: -620769377542017112}
     m_Duration: 1
     m_TimeScale: 1
-    m_ParentTrack: {fileID: -1223227800801429518}
+    m_ParentTrack: {fileID: -2659919168468153206}
     m_EaseInDuration: 0
     m_EaseOutDuration: 0
     m_BlendInDuration: 0
@@ -306,7 +138,32 @@ MonoBehaviour:
     m_PreExtrapolationMode: 0
     m_PostExtrapolationTime: 0
     m_PreExtrapolationTime: 0
-    m_DisplayName: fx_gf_liaoyuanzhi
+    m_DisplayName: fx_gf_tiangangjianqijue
+  m_Markers:
+    m_Objects: []
+--- !u!114 &-2315087991427637812
+MonoBehaviour:
+  m_ObjectHideFlags: 1
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 0}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: d0fc6f5187a81dc47999eefade6f0935, type: 3}
+  m_Name: "1102_fashe@\u5929\u7F61\u5251\u6C14\u8BC0\u53D1\u5C04"
+  m_EditorClassIdentifier: 
+  m_Version: 3
+  m_AnimClip: {fileID: 0}
+  m_Locked: 0
+  m_Muted: 0
+  m_CustomPlayableFullTypename: 
+  m_Curves: {fileID: 0}
+  m_Parent: {fileID: 11400000}
+  m_Children:
+  - {fileID: -2659919168468153206}
+  - {fileID: 8143464297637152736}
+  m_Clips: []
   m_Markers:
     m_Objects: []
 --- !u!114 &-894447145330074657
@@ -402,6 +259,43 @@ MonoBehaviour:
   m_Markers:
     m_Objects: []
   m_PostPlaybackState: 3
+--- !u!114 &-620769377542017112
+MonoBehaviour:
+  m_ObjectHideFlags: 1
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 0}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: f1fc88ca9f5b46d2929d20f65fbe5c4e, type: 3}
+  m_Name: TimeLineParticleSystemAsset(Clone)(Clone)(Clone)(Clone)
+  m_EditorClassIdentifier: 
+  sourceGameObject:
+    exposedName: f4635dbb690e31e448a6c80254ced7bd
+    defaultValue: {fileID: 0}
+  prefabGameObject: {fileID: 6451459888462300805, guid: ff0a0a20550f21c45bc6624840da1049, type: 3}
+  updateParticle: 1
+  particleRandomSeed: 518
+  updateDirector: 1
+  updateITimeControl: 1
+  searchHierarchy: 1
+  active: 1
+  postPlayback: 2
+  targetType: 2
+  LocationType: 0
+  targetSpecialDotName: zdpos9
+  hitPointGroupName: 
+  isGround: 0
+  isFollowTarget: 0
+  isNotRotate: 0
+  isFollowRootTarget: 0
+  isAttSpeed: 0
+  isLoop: 0
+  loopAlone: 0
+  isActivityCustomTargetPos: 1
+  CustomTargetPosIndex: 0
+  intervalTime: 0
 --- !u!114 &11400000
 MonoBehaviour:
   m_ObjectHideFlags: 0
@@ -417,12 +311,50 @@ MonoBehaviour:
   m_Version: 0
   m_Tracks:
   - {fileID: -5073625934344026965}
+  - {fileID: -2315087991427637812}
   m_FixedDuration: 0
   m_EditorSettings:
     m_Framerate: 60
     m_ScenePreview: 1
   m_DurationMode: 0
   m_MarkerTrack: {fileID: 0}
+--- !u!114 &5362924406835071193
+MonoBehaviour:
+  m_ObjectHideFlags: 1
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 0}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: f1fc88ca9f5b46d2929d20f65fbe5c4e, type: 3}
+  m_Name: TimeLineParticleSystemAsset(Clone)(Clone)(Clone)(Clone)(Clone)
+  m_EditorClassIdentifier: 
+  sourceGameObject:
+    exposedName: 8080ae285caedc64db466783951c190b
+    defaultValue: {fileID: 0}
+  prefabGameObject: {fileID: 1968306391728028487, guid: 2f85b7882556d5b4ea4d916de10bf89c, type: 3}
+  updateParticle: 1
+  particleRandomSeed: 518
+  updateDirector: 1
+  updateITimeControl: 1
+  searchHierarchy: 1
+  active: 1
+  postPlayback: 2
+  targetType: 1
+  LocationType: 5
+  targetSpecialDotName: zdpos9
+  hitPointGroupName: 
+  isGround: 0
+  isFollowTarget: 0
+  isNotRotate: 0
+  isFollowRootTarget: 0
+  isAttSpeed: 0
+  isLoop: 0
+  loopAlone: 0
+  isActivityCustomTargetPos: 1
+  CustomTargetPosIndex: 0
+  intervalTime: 0
 --- !u!114 &6478050454879568048
 MonoBehaviour:
   m_ObjectHideFlags: 1
@@ -545,3 +477,95 @@ MonoBehaviour:
   m_OpenClipOffsetRotation: {x: 0, y: 0, z: 0, w: 1}
   m_Rotation: {x: 0, y: 0, z: 0, w: 1}
   m_ApplyOffsets: 0
+--- !u!114 &8143464297637152736
+MonoBehaviour:
+  m_ObjectHideFlags: 1
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 0}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 15e0374501f39d54eb30235764636e0e, type: 3}
+  m_Name: Control Track (1)
+  m_EditorClassIdentifier: 
+  m_Version: 3
+  m_AnimClip: {fileID: 0}
+  m_Locked: 0
+  m_Muted: 0
+  m_CustomPlayableFullTypename: 
+  m_Curves: {fileID: 0}
+  m_Parent: {fileID: -2315087991427637812}
+  m_Children: []
+  m_Clips:
+  - m_Version: 1
+    m_Start: 0
+    m_ClipIn: 0
+    m_Asset: {fileID: 5362924406835071193}
+    m_Duration: 1
+    m_TimeScale: 1
+    m_ParentTrack: {fileID: 8143464297637152736}
+    m_EaseInDuration: 0
+    m_EaseOutDuration: 0
+    m_BlendInDuration: 0
+    m_BlendOutDuration: 0
+    m_MixInCurve:
+      serializedVersion: 2
+      m_Curve:
+      - serializedVersion: 3
+        time: 0
+        value: 0
+        inSlope: 0
+        outSlope: 0
+        tangentMode: 0
+        weightedMode: 0
+        inWeight: 0
+        outWeight: 0
+      - serializedVersion: 3
+        time: 1
+        value: 1
+        inSlope: 0
+        outSlope: 0
+        tangentMode: 0
+        weightedMode: 0
+        inWeight: 0
+        outWeight: 0
+      m_PreInfinity: 2
+      m_PostInfinity: 2
+      m_RotationOrder: 4
+    m_MixOutCurve:
+      serializedVersion: 2
+      m_Curve:
+      - serializedVersion: 3
+        time: 0
+        value: 1
+        inSlope: 0
+        outSlope: 0
+        tangentMode: 0
+        weightedMode: 0
+        inWeight: 0
+        outWeight: 0
+      - serializedVersion: 3
+        time: 1
+        value: 0
+        inSlope: 0
+        outSlope: 0
+        tangentMode: 0
+        weightedMode: 0
+        inWeight: 0
+        outWeight: 0
+      m_PreInfinity: 2
+      m_PostInfinity: 2
+      m_RotationOrder: 4
+    m_BlendInCurveMode: 0
+    m_BlendOutCurveMode: 0
+    m_ExposedParameterNames: []
+    m_AnimationCurves: {fileID: 0}
+    m_Recordable: 0
+    m_PostExtrapolationMode: 0
+    m_PreExtrapolationMode: 0
+    m_PostExtrapolationTime: 0
+    m_PreExtrapolationTime: 0
+    m_DisplayName: fx_gf_tiangangjianqijue_sf
+  m_Markers:
+    m_Objects: []

+ 58 - 0
Assets/Scenes/testCombat.scene

@@ -9236,6 +9236,63 @@ Transform:
   m_Children: []
   m_Father: {fileID: 21371308}
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1001 &1544803331
+PrefabInstance:
+  m_ObjectHideFlags: 0
+  serializedVersion: 2
+  m_Modification:
+    serializedVersion: 3
+    m_TransformParent: {fileID: 0}
+    m_Modifications:
+    - target: {fileID: 3076136778433984314, guid: a6adfd04f86f10044bca8a08a63f3b8a, type: 3}
+      propertyPath: m_Name
+      value: Nanzhu (4)
+      objectReference: {fileID: 0}
+    - target: {fileID: 5226940908611843665, guid: a6adfd04f86f10044bca8a08a63f3b8a, type: 3}
+      propertyPath: m_LocalPosition.x
+      value: 0.105
+      objectReference: {fileID: 0}
+    - target: {fileID: 5226940908611843665, guid: a6adfd04f86f10044bca8a08a63f3b8a, type: 3}
+      propertyPath: m_LocalPosition.y
+      value: 6.027
+      objectReference: {fileID: 0}
+    - target: {fileID: 5226940908611843665, guid: a6adfd04f86f10044bca8a08a63f3b8a, type: 3}
+      propertyPath: m_LocalPosition.z
+      value: -0.281
+      objectReference: {fileID: 0}
+    - target: {fileID: 5226940908611843665, guid: a6adfd04f86f10044bca8a08a63f3b8a, type: 3}
+      propertyPath: m_LocalRotation.w
+      value: 1
+      objectReference: {fileID: 0}
+    - target: {fileID: 5226940908611843665, guid: a6adfd04f86f10044bca8a08a63f3b8a, type: 3}
+      propertyPath: m_LocalRotation.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 5226940908611843665, guid: a6adfd04f86f10044bca8a08a63f3b8a, type: 3}
+      propertyPath: m_LocalRotation.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 5226940908611843665, guid: a6adfd04f86f10044bca8a08a63f3b8a, type: 3}
+      propertyPath: m_LocalRotation.z
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 5226940908611843665, guid: a6adfd04f86f10044bca8a08a63f3b8a, type: 3}
+      propertyPath: m_LocalEulerAnglesHint.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 5226940908611843665, guid: a6adfd04f86f10044bca8a08a63f3b8a, type: 3}
+      propertyPath: m_LocalEulerAnglesHint.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 5226940908611843665, guid: a6adfd04f86f10044bca8a08a63f3b8a, type: 3}
+      propertyPath: m_LocalEulerAnglesHint.z
+      value: 0
+      objectReference: {fileID: 0}
+    m_RemovedComponents: []
+    m_RemovedGameObjects: []
+    m_AddedGameObjects: []
+    m_AddedComponents: []
+  m_SourcePrefab: {fileID: 100100000, guid: a6adfd04f86f10044bca8a08a63f3b8a, type: 3}
 --- !u!1 &1547801984
 GameObject:
   m_ObjectHideFlags: 0
@@ -13022,3 +13079,4 @@ SceneRoots:
   - {fileID: 347310670940501196}
   - {fileID: 1615243576}
   - {fileID: 1359684029}
+  - {fileID: 1544803331}

+ 19 - 1
Assets/Scripts/GameLogic/Combat/Buff/BuffBasic.cs

@@ -15,6 +15,7 @@ namespace GameLogic.Combat.Buff
 
         protected TriggerData _triggerData;
         public float _currTime;
+        protected float _jianGe;
 
         public int buffCount
         {
@@ -22,7 +23,7 @@ namespace GameLogic.Combat.Buff
         }
 
         protected int _count;
-
+        private float _time;
         public void Init(CombatHeroEntity combatHeroEntity, CombatHeroEntity source, BuffInfo buffInfo)
         {
             _triggerData.Source = this;
@@ -65,6 +66,7 @@ namespace GameLogic.Combat.Buff
 
         public void UpdateEffect()
         {
+            
             ProUpdateEffect();
         }
 
@@ -129,6 +131,17 @@ namespace GameLogic.Combat.Buff
 
         public void Update(float t)
         {
+            if (_jianGe > 0)
+            {
+                _time += t;
+                if (_time >= _jianGe)
+                {
+                    _time -= _jianGe;
+                    UpdateJumping();
+                }
+            }
+
+           
             _currTime += t;
             if (buffInf.buffTime > 0 && _currTime > buffInf.buffTime)
             {
@@ -139,6 +152,11 @@ namespace GameLogic.Combat.Buff
             ProUpdate(t);
         }
 
+        protected virtual void UpdateJumping()
+        {
+            
+        }
+
         protected virtual void ProUpdate(float t)
         {
         }

+ 1 - 1
Assets/Scripts/GameLogic/Combat/Buff/BuffControl.cs

@@ -70,7 +70,7 @@ namespace GameLogic.Combat.Buff
             return null;
         }
 
-        protected BuffBasic GetBuffBasicForIdGroup(int idGroup)
+        public BuffBasic GetBuffBasicForIdGroup(int idGroup)
         {
             for (int i = 0; i < _allBuff.Count; i++)
             {

+ 49 - 0
Assets/Scripts/GameLogic/Combat/Buff/b_1011.cs

@@ -0,0 +1,49 @@
+using GameLogic.Combat.CombatTool;
+using GameLogic.Player;
+using OfficeOpenXml.FormulaParsing.Excel.Functions.Logical;
+
+namespace GameLogic.Combat.Buff
+{
+    /// <summary>
+    /// 敌人持续流血{0}金属性伤害,满层后照成流血,并清除层数
+    /// </summary>
+    public class b_1011 : BuffBasic
+    {
+        protected override void ProInit()
+        {
+            _jianGe = 1;
+        }
+
+        protected override void UpdateJumping()
+        {
+            float addHarm = buffInf.BuffConfig.effectValue[0];
+            b_1012 b1012 = combatHeroEntity.BuffControl.GetBuffBasicForType<b_1012>();
+            if (b1012 != null)
+            {
+                addHarm += CombatCalculateTool.Instance.GetVlaueRatioForFloat(addHarm,
+                    b1012.buffInf.BuffConfig.effectValue[1]);
+            }
+
+            long harm = CombatCalculateTool.Instance.GetVlaueRatioForLong(source.CurrCombatHeroInfo.attack.Value,
+                addHarm);
+            CombatCalculateTool.Instance.Harm(source, combatHeroEntity, harm, AttType.Buff, _triggerData,
+                WuXingType.Gold);
+        }
+
+        protected override void ProUpdateEffect()
+        {
+            if (buffCount >= buffInf.BuffConfig.overlayCount) //最大叠加数量
+            {
+                b_1012 b1012 = combatHeroEntity.BuffControl.GetBuffBasicForType<b_1012>();
+                if (b1012 != null)
+                {
+                    return;
+                }
+
+                BuffInfo buffInfo = BuffInfo.GetBuffInfo(10121, 1);
+                combatHeroEntity.BuffControl.AddBuff(source, buffInfo);
+                combatHeroEntity.BuffControl.RemoveBuff(this);
+            }
+        }
+    }
+}

+ 3 - 0
Assets/Scripts/GameLogic/Combat/Buff/b_1011.cs.meta

@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 4fbb991f00ea49bda892121645ca613c
+timeCreated: 1747289679

+ 19 - 0
Assets/Scripts/GameLogic/Combat/Buff/b_1012.cs

@@ -0,0 +1,19 @@
+using GameLogic.Combat.CombatTool;
+using GameLogic.Player;
+
+namespace GameLogic.Combat.Buff
+{
+    /// <summary>
+    /// 放血buff 敌人受到一次大量{0}%金属性伤害,后续流血伤害提升{1}%,持续{2}秒。持续期间不在受到流血带来的放血
+    /// </summary>
+    public class b_1012 : BuffBasic
+    {
+        protected override void ProUpdateEffect()
+        {
+            long harm = CombatCalculateTool.Instance.GetVlaueRatioForLong(source.CurrCombatHeroInfo.attack.Value,
+                buffInf.BuffConfig.effectValue[0]);
+            CombatCalculateTool.Instance.Harm(source, combatHeroEntity, harm, AttType.Buff, _triggerData,
+                WuXingType.Gold);
+        }
+    }
+}

+ 3 - 0
Assets/Scripts/GameLogic/Combat/Buff/b_1012.cs.meta

@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 7b6af39845c24fb68b8f2b26f26ec29c
+timeCreated: 1747289246

+ 62 - 0
Assets/Scripts/GameLogic/Combat/Skill/S1102.cs

@@ -0,0 +1,62 @@
+using CombatLibrary.CombatLibrary.CombatCore.CustomizeTimeLogic.FxLogic;
+using GameLogic.Combat.Buff;
+using GameLogic.Combat.CombatTool;
+using GameLogic.Combat.Hero;
+using OfficeOpenXml.FormulaParsing.Excel.Functions.Logical;
+using UnityEngine;
+using UTool.CustomizeTimeLogic.FxLogic.TimeLineEventinterface;
+
+namespace GameLogic.Combat.Skill
+{
+    /// <summary>
+    /// 吸收自身灵气凝聚{0}丙大剑,大剑旋转快速穿透敌人,对敌人照成伤害
+    /// 敌人如果在流血或放血状态对敌人照成的伤害+10%
+    /// 重伤敌人后,如果目标没在放血状态,直接放血,并不会消耗流血层数
+    /// </summary>
+    public class S1102 : SkillBasic
+    {
+        protected override void ProUseSkill()
+        {
+            CombatHeroHitPoint combatHeroHitPoint = CombatHeroEntity.CombatAIBasic.currFocusTarget
+                .GetThis<CombatHeroEntity>()
+                .GetMainHotPoin<CombatHeroHitPoint>();
+            BetterList<ILifetCycleHitPoint> currTarget = new BetterList<ILifetCycleHitPoint>();
+            currTarget.Add(combatHeroHitPoint);
+            for (int i = 0; i < effectValue[0]; i++)
+            {
+                SpecialDotInfo specialDotInfo = CombatHeroEntity.GetSpecialDotInfo("zdpos" + (i + 2));
+                ActivationTimeLineData("1102_fashe", currTarget: currTarget,
+                    customizePos: new Vector3[] { specialDotInfo.GetWorlPos() }, indexCount: i);
+            }
+        }
+
+        protected override void ProDefaultTimeLineTrigger(string groupName, CombatHeroHitPoint targetEntity,
+            ITimelineFxLogic timelineFxLogic,
+            TriggerData triggerData)
+        {
+            float addHarm = effectValue[1];
+            if (SelfSkillConfig.level >= 4)
+            {
+                addHarm += SelfSkillConfig.effectValue[3];
+            }
+
+            
+            long v = CombatCalculateTool.Instance.GetVlaueRatioForLong(CombatHeroEntity.CurrCombatHeroInfo.attack.Value,
+                addHarm);
+            CombatCalculateTool.Instance.Harm(CombatHeroEntity, targetEntity, v, AttType.Skill, triggerData,
+                wuXingType,
+                HarmType.Default);
+            int odds = CombatCalculateTool.Instance.GetOdd(0, 100);
+            if (odds <= effectValue[2])
+            {
+                BuffInfo buffInfo = BuffInfo.GetBuffInfo(10111, 1);
+                targetEntity.combatHeroEntity.BuffControl.AddBuff(CombatHeroEntity, buffInfo);
+            }
+
+            if (SelfSkillConfig.level >= 4)
+            {
+               BuffBasic buffBasic= targetEntity.combatHeroEntity.BuffControl.GetBuffBasicForIdGroup(1012);
+            }
+        }
+    }
+}

+ 3 - 0
Assets/Scripts/GameLogic/Combat/Skill/S1102.cs.meta

@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 55a722a4b05340ecb5c068c581aa26e8
+timeCreated: 1747288569

+ 11 - 8
Assets/Scripts/GameLogic/CombatScenesTool/TestCombatHeroConfig.cs

@@ -29,15 +29,18 @@ namespace GameLogic.CombatScenesTool
                     FaBaoInfo faBaoInfo = new FaBaoInfo(magicWeaponId[i], 1);
                     combatHeroInfo.MagicWeaponID.Add(faBaoInfo);
                 }
-              
-                // combatHeroInfo.skillConfigs = new List<SkillConfig>();
-                combatHeroInfo.unLockSkills.Clear();
-                for (int i = 0; i < skill.Length; i++)
+
+                if (skill.Length > 0)
                 {
-                    int id = skill[i] * 10 + 1;
-                    // SkillConfig skillConfig = ConfigComponent.Instance.Get<SkillConfig>(id);
-                    SkillInfo skillInfo = new SkillInfo(id,1);
-                    combatHeroInfo.unLockSkills.Add(skillInfo);
+                    combatHeroInfo.unLockSkills.Clear();
+                    for (int i = 0; i < skill.Length; i++)
+                    {
+                        int id = skill[i] * 10 + 1;
+                        // SkillConfig skillConfig = ConfigComponent.Instance.Get<SkillConfig>(id);
+                        SkillInfo skillInfo = new SkillInfo(id, 1);
+                        skillInfo.index = i;
+                        combatHeroInfo.unLockSkills.Add(skillInfo);
+                    }
                 }
 
                 // combatHeroInfo.modelName = modelName;

BIN
Excel2Json/Excel/Buff.xlsx