hch
2018-08-22 f635dca5e37347109d15b4ba47f4721a83c16513
fix:BUFF类:攻击附加真实伤害百分比

fix:登录统一处理登录脱机补偿,避免外挂吃经验,补偿时间差开出配置
3个文件已修改
1个文件已添加
34 ■■■■ 已修改文件
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerTJG.py 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4515.py 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuffEffMng.py 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py
@@ -1644,6 +1644,8 @@
    
    aIceAtkSuperHit = 1 # 元素真伤倍值,暂时默认为1,之后扩展
    aIceAtkSuperHit += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(atkObj, defObj, curSkill, ChConfig.TriggerType_AddIceAtkPer)
    aIceAtkSuperHit += PassiveBuffEffMng.GetValueByPassiveBuffTriggerType(atkObj, defObj, curSkill, ChConfig.TriggerType_AddIceAtkPer)
    
    if isSuperHit:
        addASuperHit = PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(atkObj, defObj, curSkill, ChConfig.TriggerType_SuperHitValue)
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerTJG.py
@@ -200,8 +200,6 @@
        return
    PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PlayerKey_TJGNPC, clientData.NPCID)
    
    # 先弥补错失的时间
    LoginFixTJG(curPlayer, True)
    GameWorld.DebugLog("%s---OnTJGNPC:%s"%(curPlayer.GetName(),clientData.NPCID))
    return
@@ -631,6 +629,7 @@
def NotifyTJGInfo(curPlayer):
    
    if curPlayer.GetIP() == "127.0.0.1":
        LoginFixTJG(curPlayer, True)
        return
    
    # 脱机挂没有运作情况下 弥补收益
@@ -821,7 +820,7 @@
    
    # 超过5分钟部分补偿
    seconds = PlayerControl.GetPlayerLeaveServerSecond(curPlayer) - 300
    seconds = PlayerControl.GetPlayerLeaveServerSecond(curPlayer) - IpyGameDataPY.GetFuncCfg('AutoUseGuardian', 2)
    if seconds <= 0:
        return
    times = min(seconds, tjgTime)
@@ -835,7 +834,9 @@
        # 此时由服务端重新找一次挂机NPC
        PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PlayerKey_TJGNPC, npcID)
    
    GameWorld.DebugLog("弥补脱机----npcid  %s-%s"%(curPlayer.NomalDictGetProperty(ChConfig.Def_PlayerKey_TJGNPC), times))
    GameWorld.DebugLog("弥补脱机----npcid  %s-%s-%s"%(
                    curPlayer.NomalDictGetProperty(ChConfig.Def_PlayerKey_TJGNPC), times,
                    curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_TotalExpRate)))
    
    
    # 设置脱机登录时的等级, 上线通知清空, 没清空说明多次脱机挂登录 使用旧等级
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4515.py
New file
@@ -0,0 +1,22 @@
#!/usr/bin/python
# -*- coding: GBK -*-
#
# @todo: BUFF类:攻击附加真实伤害百分比
#
# @author: Alee
# @date 2018-1-30 下午05:11:45
# @version 1.0
#
# @note:
#
#---------------------------------------------------------------------
import ChConfig
import GameWorld
def CheckCanHappen(attacker, defender, passiveEffect, skillID):
    return GameWorld.CanHappen(passiveEffect.GetEffectValue(1))
def GetValue(attacker, defender, passiveEffect):
    return float(passiveEffect.GetEffectValue(0))/ChConfig.Def_MaxRateValue
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuffEffMng.py
@@ -344,6 +344,7 @@
             4511:ChConfig.TriggerType_AttackAddFinalValue,   #攻击增加输出伤害11
             4512:ChConfig.TriggerType_ReduceHurtHPPer, # 百分比减少攻击计算后伤害 
             4513:ChConfig.TriggerType_AttackAddFinalValue,   #攻击增加输出伤害11
             4515:ChConfig.TriggerType_AddIceAtkPer,    # BUFF类:攻击附加真实伤害百分比
             803:ChConfig.TriggerType_BloodShield,  # 血盾
             806:ChConfig.TriggerType_BloodShield,  # 血盾
             808:ChConfig.TriggerType_BloodShield,  # 血盾