|
@@ -118,7 +118,7 @@ namespace GameLogic.Combat.CombatTool
|
|
|
|
|
|
float qiangDu = 100;
|
|
|
SkillFeaturesData skillFeaturesData = skillFeatures as SkillFeaturesData;
|
|
|
- if (skillFeaturesData != null&&skillFeaturesData.maxHp>0)
|
|
|
+ if (skillFeaturesData != null && skillFeaturesData.maxHp > 0)
|
|
|
{
|
|
|
qiangDu = (skillFeaturesData.hp * 100) / skillFeaturesData.maxHp;
|
|
|
}
|
|
@@ -371,6 +371,12 @@ namespace GameLogic.Combat.CombatTool
|
|
|
public void GongFaPengZhuang(SkillFeaturesData a, SkillFeaturesData b, CombatHeroEntity heroEntityA,
|
|
|
CombatHeroEntity heroEntityB)
|
|
|
{
|
|
|
+ a.InitPengZhuang();
|
|
|
+ b.InitPengZhuang();
|
|
|
+ GongFaPengZhuangFinishEventData gongFaPengZhuStart = GongFaPengZhuangFinishEventData.Create();
|
|
|
+ gongFaPengZhuStart.a = a;
|
|
|
+ gongFaPengZhuStart.b = b;
|
|
|
+ CombatEventManager.Instance.Dispatch(CombatEventType.GongFaPengZhuangStart, gongFaPengZhuStart);
|
|
|
int myRestrained = GetRestrained(a.WuXingType, b.WuXingType);
|
|
|
int targetRestrained = GetRestrained(b.WuXingType, a.WuXingType);
|
|
|
float lg_a = heroEntityA.CurrCombatHeroInfo.GetWuXingShuXing(a.WuXingType);
|
|
@@ -393,6 +399,25 @@ namespace GameLogic.Combat.CombatTool
|
|
|
myHp = GetVlaueRatioForLong(myHp, p2);
|
|
|
}
|
|
|
|
|
|
+ if (a.SkillFeaturesPengZhuangInfo.neutralizeQiangDu > 0)
|
|
|
+ {
|
|
|
+ targetHp -= GetVlaueRatioForLong(targetHp, a.SkillFeaturesPengZhuangInfo.neutralizeQiangDu);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (b.SkillFeaturesPengZhuangInfo.neutralizeQiangDu > 0)
|
|
|
+ {
|
|
|
+ myHp -= GetVlaueRatioForLong(myHp, b.SkillFeaturesPengZhuangInfo.neutralizeQiangDu);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (targetHp < 0)
|
|
|
+ {
|
|
|
+ targetHp = 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (myHp < 0)
|
|
|
+ {
|
|
|
+ myHp = 0;
|
|
|
+ }
|
|
|
|
|
|
if (myHp > targetHp)
|
|
|
{
|
|
@@ -417,6 +442,8 @@ namespace GameLogic.Combat.CombatTool
|
|
|
gongFaPengZhu.b = b;
|
|
|
CombatEventManager.Instance.Dispatch(CombatEventType.GongFaPengZhuangFinish, gongFaPengZhu, false);
|
|
|
CombatEventManager.Instance.Dispatch(CombatEventType.GongFaPengZhuangFinish2, gongFaPengZhu);
|
|
|
+ a.DisposePengZhuang();
|
|
|
+ b.DisposePengZhuang();
|
|
|
}
|
|
|
|
|
|
/// <summary>
|