From 2ccb840f9db8c61f7e9a0a336205713b41790bf3 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期三, 06 八月 2025 19:52:49 +0800 Subject: [PATCH] 129 【战斗】战斗系统-服务端(import问题) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameSkills/SkillCommon.py | 92 ++++++++++++++++++++++++--------------------- 1 files changed, 49 insertions(+), 43 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameSkills/SkillCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameSkills/SkillCommon.py index 032cb06..6276416 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameSkills/SkillCommon.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameSkills/SkillCommon.py @@ -1284,13 +1284,13 @@ elif curObjType == IPY_GameWorld.gotNPC: AttackCommon.NPCAddObjInHurtList(attackerOwner, curObj, curObjHP_BeforeAttack, lostValue) - TurnAttack.AddTurnObjHurtValue(buffOwner, curObj, hurtType, lostValue, lostHP, curSkill) + #TurnAttack.AddTurnObjHurtValue(buffOwner, curObj, lostValue, lostHP, curSkill) #统一调用攻击结束动作 if isDoAttackResult: BaseAttack.DoLogic_AttackResult(buffOwner, curObj, None, tick) - TurnAttack.OnTurnfightAttackResult(buffOwner, curObj, curSkill) + #TurnAttack.OnTurnfightAttackResult(buffOwner, curObj, curSkill) return lostHP ## 检查增加淬毒buff @@ -1852,11 +1852,15 @@ def isAngerSkill(curSkill): ## 是否怒气技能 - return curSkill and curSkill.GetXP() > 0 + return curSkill and curSkill.GetFuncType() == ChConfig.Def_SkillFuncType_AngerSkill def isTurnNormalSkill(curSkill): ## 是否回合普攻技能,区别与无技能的普通A一下,该普攻同样可以有各种技能效果,只是他属于普攻 return curSkill and curSkill.GetFuncType() == ChConfig.Def_SkillFuncType_TurnNormaSkill + +def isAtkbackSkill(curSkill): + ## 是否反击技能 + return curSkill and curSkill.GetFuncType() == ChConfig.Def_SkillFuncType_AtkbackSkill ## 检查技能是否为被动技能, 用于控制不可释放技能 def isPassiveSkill(curSkill): @@ -2167,48 +2171,50 @@ def GetSkillAddPerByID(curPlayer, skillTypeID): ## 获取技能伤害百分比提升值 # @param skillTypeID: 技能TypeID - SkillAddPerAttrIDDict = IpyGameDataPY.GetConfigEx("SkillAddPerAttrIDDict") - if not SkillAddPerAttrIDDict: - SkillAddPerAttrIDDict = {} - skillPlusAttrIDDict = IpyGameDataPY.GetFuncEvalCfg("SkillPlusAttrID", 2, {}) - for attrIDStr, skillTypeIDList in skillPlusAttrIDDict.items(): - attrID = int(attrIDStr) - if attrID not in ShareDefine.SkillAddPerAttrIDList: - continue - for cfgSkillTypeID in skillTypeIDList: - SkillAddPerAttrIDDict[cfgSkillTypeID] = attrID - IpyGameDataPY.SetConfigEx("SkillAddPerAttrIDDict", SkillAddPerAttrIDDict) - - if skillTypeID not in SkillAddPerAttrIDDict: - return 0 - curAttrID = SkillAddPerAttrIDDict[skillTypeID] - attrInfo = ChConfig.ItemEffect_AttrDict.get(curAttrID, []) - if attrInfo == []: - return 0 - effIndex = attrInfo[0][0] - return EffGetSet.GetValueByEffIndex(curPlayer, effIndex) + return 0 +# SkillAddPerAttrIDDict = IpyGameDataPY.GetConfigEx("SkillAddPerAttrIDDict") +# if not SkillAddPerAttrIDDict: +# SkillAddPerAttrIDDict = {} +# skillPlusAttrIDDict = IpyGameDataPY.GetFuncEvalCfg("SkillPlusAttrID", 2, {}) +# for attrIDStr, skillTypeIDList in skillPlusAttrIDDict.items(): +# attrID = int(attrIDStr) +# if attrID not in ShareDefine.SkillAddPerAttrIDList: +# continue +# for cfgSkillTypeID in skillTypeIDList: +# SkillAddPerAttrIDDict[cfgSkillTypeID] = attrID +# IpyGameDataPY.SetConfigEx("SkillAddPerAttrIDDict", SkillAddPerAttrIDDict) +# +# if skillTypeID not in SkillAddPerAttrIDDict: +# return 0 +# curAttrID = SkillAddPerAttrIDDict[skillTypeID] +# attrInfo = ChConfig.ItemEffect_AttrDict.get(curAttrID, []) +# if attrInfo == []: +# return 0 +# effIndex = attrInfo[0][0] +# return EffGetSet.GetValueByEffIndex(curPlayer, effIndex) def GetSkillReducePerByID(curPlayer, skillTypeID): ## 获取技能伤害百分比减伤值 # @param skillTypeID: 技能TypeID - SkillReducePerAttrIDDict = IpyGameDataPY.GetConfigEx("SkillReducePerAttrIDDict") - if not SkillReducePerAttrIDDict: - SkillReducePerAttrIDDict = {} - skillPlusAttrIDDict = IpyGameDataPY.GetFuncEvalCfg("SkillPlusAttrID", 2, {}) - for attrIDStr, skillTypeIDList in skillPlusAttrIDDict.items(): - attrID = int(attrIDStr) - if attrID not in ShareDefine.SkillReducePerAttrIDList: - continue - for cfgSkillTypeID in skillTypeIDList: - SkillReducePerAttrIDDict[cfgSkillTypeID] = attrID - IpyGameDataPY.SetConfigEx("SkillReducePerAttrIDDict", SkillReducePerAttrIDDict) - - if skillTypeID not in SkillReducePerAttrIDDict: - return 0 - curAttrID = SkillReducePerAttrIDDict[skillTypeID] - attrInfo = ChConfig.ItemEffect_AttrDict.get(curAttrID, []) - if attrInfo == []: - return 0 - effIndex = attrInfo[0][0] - return EffGetSet.GetValueByEffIndex(curPlayer, effIndex) + return 0 +# SkillReducePerAttrIDDict = IpyGameDataPY.GetConfigEx("SkillReducePerAttrIDDict") +# if not SkillReducePerAttrIDDict: +# SkillReducePerAttrIDDict = {} +# skillPlusAttrIDDict = IpyGameDataPY.GetFuncEvalCfg("SkillPlusAttrID", 2, {}) +# for attrIDStr, skillTypeIDList in skillPlusAttrIDDict.items(): +# attrID = int(attrIDStr) +# if attrID not in ShareDefine.SkillReducePerAttrIDList: +# continue +# for cfgSkillTypeID in skillTypeIDList: +# SkillReducePerAttrIDDict[cfgSkillTypeID] = attrID +# IpyGameDataPY.SetConfigEx("SkillReducePerAttrIDDict", SkillReducePerAttrIDDict) +# +# if skillTypeID not in SkillReducePerAttrIDDict: +# return 0 +# curAttrID = SkillReducePerAttrIDDict[skillTypeID] +# attrInfo = ChConfig.ItemEffect_AttrDict.get(curAttrID, []) +# if attrInfo == []: +# return 0 +# effIndex = attrInfo[0][0] +# return EffGetSet.GetValueByEffIndex(curPlayer, effIndex) -- Gitblit v1.8.0