ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/TurnAttack.py
@@ -49,7 +49,8 @@
# 回合战斗复活类型
(
RebornType_PetSkill,
) = range(1, 1 + 1)
RebornType_ElfSkill,
) = range(1, 1 + 2)
def GetObjName(gameObj):
    objName = gameObj.GetName()
@@ -382,12 +383,16 @@
    NetPackCommon.SendFakePack(curPlayer, clientPack)
    return True
def GetEnemyCureDefPer(gameObj):
    ## 获取敌对方弱化治疗值
def GetEnemyObj(gameObj):
    ## 获取回合对手实例
    tagID = gameObj.GetDictByKey(ChConfig.Def_Obj_Dict_TurnEnemyID)
    if not tagID:
        return 0
    tagObj = GameWorld.FindNPCByID(tagID)
        return
    return GameWorld.FindNPCByID(tagID)
def GetEnemyCureDefPer(gameObj):
    ## 获取敌对方弱化治疗值
    tagObj = GetEnemyObj(gameObj)
    if not tagObj:
        return 0
    cureDefPer = GameObj.GetCureDefPer(tagObj)
@@ -410,6 +415,17 @@
    if curRebornCount >= rebornCountMax:
        GameWorld.DebugLog("%s 已经超过复活次数,不能再复活! curID=%s,curRebornCount=%s" % (GetObjName(gameObj), gameObj.GetID(), curRebornCount))
        return
    # 自己技能  - 如精怪
    skillManager = gameObj.GetSkillManager()
    for skillIndex in range(skillManager.GetSkillCount()):
        skill = skillManager.GetSkillByIndex(skillIndex)
        if skill.GetSkillType() != ChConfig.Def_SkillType_Revive:
            continue
        if skill.GetRemainTime():
            continue
        if skill.GetFuncType() == ChConfig.Def_SkillFuncType_ElfSkill:
            return RebornType_ElfSkill, skill
    
    # 检查是否有灵宠复活技能
    for index in range(gameObj.GetSummonCount()):
@@ -449,6 +465,11 @@
        hpPer = skill.GetEffect(0).GetEffectValue(0)
        rebornValue1 = petNPC.GetID()
        rebornValue2 = skill.GetSkillID()
    elif rebornType == RebornType_ElfSkill:
        skill = rebornTypeInfo[1]
        skill.SetRemainTime(skill.GetCoolDownTime())
        hpPer = skill.GetEffect(0).GetEffectValue(0)
        rebornValue1 = skill.GetSkillID()
        
    rebornCount = gameObj.GetDictByKey(ChConfig.Def_Obj_Dict_TurnRebornCount) + 1
    gameObj.SetDict(ChConfig.Def_Obj_Dict_TurnRebornCount, rebornCount)
@@ -461,7 +482,8 @@
        gameObj.ChangeAction(IPY_GameWorld.laNPCNull)
        
    curHP = GameObj.GetHP(gameObj)
    GameWorld.DebugLog("复活 %s: rebornType=%s,objID=%s,hpPer=%s,curHP=%s,rebornCount=%s" % (objName, rebornType, objID, hpPer, curHP, rebornCount))
    GameWorld.DebugLog("复活 %s: rebornType=%s,objID=%s,hpPer=%s,curHP=%s,rebornCount=%s,rebornValue1=%s,rebornValue2=%s"
                       % (objName, rebornType, objID, hpPer, curHP, rebornCount, rebornValue1, rebornValue2))
    
    playerID = gameObj.GetDictByKey(ChConfig.Def_Obj_Dict_TurnFightID)
    if not playerID: