From d9820f9f7f09c14d270b4cbbe649369c043be7e4 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期二, 16 四月 2019 20:14:45 +0800
Subject: [PATCH] 860312 关闭渠道返利
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py | 45 +++++++++++++++++++++++++--------------------
1 files changed, 25 insertions(+), 20 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 505daaf..e48063b 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
@@ -1264,7 +1264,7 @@
# Def_HurtType_SuperHit,
# Def_HurtType_Miss,
# ) = range(0, 3)
-# #类型: 0-普通 1-致命一击 2-躲闪
+# #类型: 0-普通 1-暴击 2-躲闪
#===============================================================================
## 伤害结构体类
@@ -1365,11 +1365,11 @@
def __HurtTypeHappen_LuckyHit(atkObj, defObj, happenState):
- ''' 判断伤害类型是否发生 - 幸运一击
- @return: 是否触发, 触发时伤害计算值, 触发时防守方的伤害减免值
+ ''' 判断伤害类型是否发生 - 会心一击
+ @return: 是否触发, 触发时伤害计算固定值, 触发时防守方的伤害减免固定值
'''
if IsHappenStateByType(happenState, ChConfig.Def_Skill_HappenState_LuckyHit):
- return True, atkObj.GetLuckyHitVal(), PlayerControl.GetLuckyHitReducePer(defObj)
+ return True, atkObj.GetLuckyHitVal(), PlayerControl.GetLuckyHitReduce(defObj)
aLuckyHitRate = atkObj.GetLuckyHitRate()
dLuckyHitRateReduce = PlayerControl.GetLuckyHitRateReduce(defObj)
@@ -1379,16 +1379,16 @@
if atkLuckyHitRate <= 0:
return
if GameWorld.CanHappen(atkLuckyHitRate):
- return True, atkObj.GetLuckyHitVal(), PlayerControl.GetLuckyHitReducePer(defObj)
+ return True, atkObj.GetLuckyHitVal(), PlayerControl.GetLuckyHitReduce(defObj)
return
def __HurtTypeHappen_SuperHit(atkObj, defObj, happenState):
''' 判断伤害类型是否发生 - 暴击
- @return: 是否触发, 触发时伤害计算值, 触发时防守方的伤害减免值
+ @return: 是否触发, 触发时伤害计算固定值, 触发时防守方的伤害减免固定值
'''
if IsHappenStateByType(happenState, ChConfig.Def_Skill_HappenState_SuperHit):
- return True, atkObj.GetSuperHit(), PlayerControl.GetSuperHitReducePer(defObj)
+ return True, atkObj.GetSuperHit(), PlayerControl.GetSuperHitReduce(defObj)
aSuperHitRate = atkObj.GetSuperHitRate()
dSuperHitRateReduce = PlayerControl.GetSuperHitRateReduce(defObj)
@@ -1398,7 +1398,7 @@
if superHitRate <= 0:
return
if GameWorld.CanHappen(superHitRate):
- return True, atkObj.GetSuperHit(), PlayerControl.GetSuperHitReducePer(defObj)
+ return True, atkObj.GetSuperHit(), PlayerControl.GetSuperHitReduce(defObj)
return
def __HurtTypeHappen_Parry(atkObj, defObj, happenState):
@@ -2011,7 +2011,9 @@
dDamChanceDef = hurtTypeResultDict[ChConfig.Def_HurtType_Parry][2] # 抵御, 大于0代表触发抵御效果
isZhuxianHit, aZhuxianHurtPer, dZhuxianReducePer = hurtTypeResultDict[ChConfig.Def_HurtType_Zhuxian] # 诛仙一击
isDeadlyHit = hurtTypeResultDict[ChConfig.Def_HurtType_DeadlyHit][0] # 致命一击
-
+ aSuperHitPer = PlayerControl.GetSuperHitPer(atkObj) if isSuperHit else 0 # 暴击伤害加成万分率
+ aLuckyHitPer = PlayerControl.GetLuckyHitPer(atkObj) if isLuckyHit else 0 # 会心一击伤害加成万分率
+
if PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(defObj, atkObj, None, ChConfig.TriggerType_OneDamage):
return 1, hurtType
@@ -2058,7 +2060,7 @@
if isLuckyHit:
- # 会心一击时增加会心伤害百分比
+ # 会心一击时增加会心伤害固定值
aLuckyHit += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(atkObj, defObj, curSkill, ChConfig.TriggerType_LuckyHit)
aLuckyHit -= PassiveBuffEffMng.GetValueByPassiveBuffTriggerType(defObj, atkObj, curSkill, ChConfig.TriggerType_BeLuckyHitSubPer)
aLuckyHit = max(aLuckyHit, 0)
@@ -2079,16 +2081,17 @@
dHP = GameObj.GetHP(defObj) # 防守方当前血量
dMaxHP = GameObj.GetMaxHP(defObj) # 防守方最大血量
dIceDef = defObj.GetIceDef() # 冰防, 元素真防, 玩家及NPC通用
- dFinalHurtReducePer = 0 # 最终伤害减少百分比 默认0
# 攻击方
if atkObjType == IPY_GameWorld.gotPlayer:
aIgnoreDefRate = atkObj.GetIgnoreDefRate() # 无视防御比率
aSkillAtkRate = atkObj.GetSkillAtkRate() # 技能攻击力加成
- aDamagePer = PlayerControl.GetDamagePer(atkObj) # 外层伤害加成
+ aDamagePVP = PlayerControl.GetDamagePVP(atkObj) # PVP固定伤害
+ aDamagePVE = PlayerControl.GetDamagePVE(atkObj) # PVE固定伤害
+
# 被动技能增加伤害
- aDamagePer += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(atkObj, defObj, curSkill, ChConfig.TriggerType_AddDamagePer)
- aDamagePer += PassiveBuffEffMng.GetValueByPassiveBuffTriggerType(atkObj, defObj, curSkill, ChConfig.TriggerType_AddDamagePer)
+ #aDamagePVP += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(atkObj, defObj, curSkill, ChConfig.TriggerType_AddDamagePer)
+ #aDamagePVP += PassiveBuffEffMng.GetValueByPassiveBuffTriggerType(atkObj, defObj, curSkill, ChConfig.TriggerType_AddDamagePer)
aNPCHurtAddPer = PlayerControl.GetNPCHurtAddPer(atkObj) # PVE伤害加成
aDamagePerPVP = PlayerControl.GetDamagePerPVP(atkObj) # 外层PVP伤害加成
@@ -2111,8 +2114,9 @@
aSkillAtkRate += atkObj.GetSkillAtkRate()
aNPCHurtAddPer = 0 # PVE伤害加成
- aDamagePer = 0 # 外层伤害加成
aDamagePerPVP = 0 # 外层PVP伤害加成
+ aDamagePVP = 0 # PVP固定伤害
+ aDamagePVE = 0 # PVE固定伤害
aFinalHurt = NPCCommon.GetFinalHurt(atkObj) # 最终固定伤害
aFightPower = NPCCommon.GetSuppressFightPower(atkObj)
@@ -2120,24 +2124,24 @@
if defObjType == IPY_GameWorld.gotPlayer:
dIgnoreDefRateReduce = PlayerControl.GetIgnoreDefRateReduce(defObj) # 无视防御比率抗性
dSkillAtkRateReduce = PlayerControl.GetSkillAtkRateReduce(defObj) # 技能攻击力减少
- dDamReduce = defObj.GetDamageReduceRate() # 外层减伤
- dDamReduce += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(defObj, atkObj, None, ChConfig.TriggerType_DamageReduce)
+ dDamagePVPReduce = PlayerControl.GetDamagePVPReduce(defObj) # PVP固定减伤
+ #dDamReduce += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(defObj, atkObj, None, ChConfig.TriggerType_DamageReduce)
dDamagePerPVPReduce = PlayerControl.GetDamagePerPVPReduce(defObj) # 外层PVP减伤
dDamagePerPVPReduce += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(defObj, atkObj, None, ChConfig.TriggerType_DamageReducePVP)
dFinalHurtReduce = PlayerControl.GetFinalHurtReduce(defObj) # 最终固定伤害减少
dBeHurtPer = PlayerControl.GetBeHurtPer(defObj) # 加深受到伤害百分比
dFightPower = defObj.GetFightPower()
- dFinalHurtReducePer += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(defObj, atkObj, curSkill, ChConfig.TriggerType_dFinalHurtReducePer)
+ dFinalHurtReducePer = PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(defObj, atkObj, curSkill, ChConfig.TriggerType_dFinalHurtReducePer)
else:
dIgnoreDefRateReduce = 0 # 无视防御比率抗性
dSkillAtkRateReduce = 0 # 技能攻击力减少
- dDamReduce = 0 # 外层减伤
+ dDamagePVPReduce = 0 # PVP固定减伤
dDamagePerPVPReduce = 0 # 外层PVP减伤
dFinalHurtReduce = 0 # 最终固定伤害减少
dBeHurtPer = 0
dFightPower = NPCCommon.GetSuppressFightPower(defObj)
-
+ dFinalHurtReducePer = 0 # 最终伤害减少百分比 默认0
#攻击字典 { 攻击类型 : '公式' }
hurtDist = ReadChConfig.GetEvalChConfig('CalcAttackValue')
@@ -2572,6 +2576,7 @@
1 全体模式 IPY_GameWorld.amAll 对所有玩家都是敌对,家族区域同盟玩家除外
2 防卫模式 IPY_GameWorld.amCountry 本服玩家友好,他服玩家都是敌对
5 强制模式 IPY_GameWorld.amFamily 队友、仙盟成员、同阵营友好,其他玩家敌对
+ 7 锁定单一目标模式 IPY_GameWorld.amContest 只对选中目标有伤害, 目前只用于部分BOSS争夺地图
场景区域
普通区域 IPY_GameWorld.gatNormal 可根据不同PK模式PK,击杀玩家有惩罚
--
Gitblit v1.8.0