From ce3255b65c0ab6fb2a93e416d39d547632287b51 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 16 四月 2024 17:08:38 +0800
Subject: [PATCH] 10019 【砍树】回合战斗(增加技能被动效果5015 5016 5017) 1. 增加技能被动效果ID 5015 - 被攻击触发,附加负面状态判断 2. 增加技能被动效果ID 5016 - 灵宠攻击后触发,附加目标负面状态判断 3. 增加技能被动效果ID 5017 - 攻击时提升攻击力,附加当前血量判

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py |   20 +++++++++++++-------
 1 files changed, 13 insertions(+), 7 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py
index 27eb084..65105ee 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py
@@ -2068,7 +2068,7 @@
         return 0, ChConfig.Def_HurtType_Miss
     
     multiValue = 0 # 伤害倍值
-    summonAtkPer = 1    # 召唤继承提高基础攻击力,取表
+    atkPer = ChConfig.Def_MaxRateValue    # 提高基础攻击力
     summonAtkObj = atkwargs.get('orgAtkObj', None) if atkwargs.get('orgAtkObj', None) else atkObj
     if summonAtkObj.GetGameObjType() == IPY_GameWorld.gotNPC and summonAtkObj.GetGameNPCObjType() == IPY_GameWorld.gnotSummon:
         summonAtkPerValue = summonAtkObj.GetDictByKey(ChConfig.Def_GameObjKey_InheritOwner)
@@ -2078,8 +2078,8 @@
             if not ownerAtkObj:
                 return 0, ChConfig.Def_HurtType_Miss
             
-            summonAtkPer = summonAtkPerValue*1.0/ChConfig.Def_MaxRateValue
-            #GameWorld.DebugLog("召唤兽取主人---------%s-%s-%s-%s"%(ownerAtkObj.GetID(), atkSkillPer, atkSkillValue, summonAtkPer))
+            atkPer = summonAtkPerValue
+            #GameWorld.DebugLog("召唤兽取主人---------%s-%s-%s-%s"%(ownerAtkObj.GetID(), atkSkillPer, atkSkillValue, summonAtkPerValue))
         
     atkObjType = atkObj.GetGameObjType()
     defObjType = defObj.GetGameObjType()
@@ -2277,16 +2277,22 @@
     rand = random.random()                #种子数 0~1
     
     #------- 攻击方
-    aMinAtk = atkObj.GetMinAtk() * summonAtkPer        # 攻击方最小攻击
-    aMaxAtk = atkObj.GetMaxAtk() * summonAtkPer       # 攻击方最大攻击
+    aMinAtk = atkObj.GetMinAtk()        # 攻击方最小攻击
+    aMaxAtk = atkObj.GetMaxAtk()       # 攻击方最大攻击
     if petNPCOwner:
         petNPCOwner.SetDict("useSkillPetID", atkObj.GetID())
         #主人攻击力可能会变化,所以在这里用到时直接取
-        aMinAtk = petNPCOwner.GetMinAtk() * summonAtkPer        # 攻击方最小攻击
-        aMaxAtk = petNPCOwner.GetMaxAtk() * summonAtkPer       # 攻击方最大攻击
+        aMinAtk = petNPCOwner.GetMinAtk()        # 攻击方最小攻击
+        aMaxAtk = petNPCOwner.GetMaxAtk()       # 攻击方最大攻击
         #GameWorld.DebugLog("灵宠攻击,直接取主人攻击力: %s ~ %s,  自己: %s ~ %s" % (aMinAtk, aMaxAtk, atkObj.GetMinAtk(), atkObj.GetMaxAtk()))
         
         hurtValueExPer += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(petNPCOwner, defObj, curSkill, ChConfig.TriggerType_PetAtkHurtExPer)
+    else:
+        atkPer += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(atkObj, defObj, curSkill, ChConfig.TriggerType_AttackAddAtkPer)        
+        
+    if atkPer != ChConfig.Def_MaxRateValue:
+        aMinAtk = aMinAtk * float(atkPer)/ChConfig.Def_MaxRateValue
+        aMaxAtk = aMaxAtk * float(atkPer)/ChConfig.Def_MaxRateValue
         
     enemyObj = None
     aPetStrengthenPer, dPetWeakenPer = 0, 0 # 强化灵兽, 弱化灵兽

--
Gitblit v1.8.0