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