From a98e28b6487ea5634459d3e425124de6df143b2d Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 19 三月 2025 14:21:01 +0800
Subject: [PATCH] 10263 【英文】【BT】【GM】后端支持NPC仿真实玩家战斗和快速战斗(触发被动死循环防范修改;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py | 13 +++++++++++++
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BaseAttack.py | 14 --------------
2 files changed, 13 insertions(+), 14 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BaseAttack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BaseAttack.py
index 8a4e701..e6c31e9 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BaseAttack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BaseAttack.py
@@ -42,7 +42,6 @@
import PassiveBuffEffMng
import PlayerGeTui
import IpyGameDataPY
-import PyGameData
#---------------------------------------------------------------------
g_skillHurtList = IPY_GameWorld.IPY_HurtList()
@@ -1974,19 +1973,6 @@
#PlayerControl.DoPlayerStand(curPlayer)
#激活玩家
PlayerControl.SetIsNeedProcess(curPlayer, True)
-
- #镜像单次攻击统计,查单次攻击无限触发被动死循环临时代码
- if PyGameData.g_singleAtkRecordList != None and (attacker and attacker.GetDictByKey(ChConfig.Def_PlayerKey_MirrorBattleID)) \
- and (curPlayer and curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_MirrorBattleID)):
- atkID = attacker.GetID()
- defID = curPlayer.GetID()
- skillID = curSkill.GetSkillID() if curSkill else 0
- PyGameData.g_singleAtkRecordList.append([atkID, defID, skillID])
- #GameWorld.DebugLog("PyGameData.g_singleAtkRecordList: %s, %s" % (len(PyGameData.g_singleAtkRecordList), PyGameData.g_singleAtkRecordList))
- if len(PyGameData.g_singleAtkRecordList) >= 50:
- GameWorld.SendGameError("MirrorAIAtkDepthError", str(PyGameData.g_singleAtkRecordList))
- PyGameData.g_singleAtkRecordList = None
- return
# 暂且只有玩家被攻击触发
if not curSkill or curSkill.GetSkillType() in ChConfig.Def_CanAttackSkill_List:
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py
index 4002fcb..4b980c5 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py
@@ -3799,6 +3799,19 @@
# @return None
def UsePassiveTriggerSkill(attacker, curSkill, target, tick, isEnhanceSkill=False):
result = False # 攻击结果
+
+ #镜像单次攻击统计,查单次攻击无限触发被动死循环临时代码
+ if PyGameData.g_singleAtkRecordList != None and (attacker and attacker.GetDictByKey(ChConfig.Def_PlayerKey_MirrorBattleID)):
+ atkID = attacker.GetID()
+ tagID = target.GetID() if target else 0
+ skillID = curSkill.GetSkillID()
+ PyGameData.g_singleAtkRecordList.append([atkID, tagID, skillID])
+ #GameWorld.DebugLog("PyGameData.g_singleAtkRecordList: %s, %s" % (len(PyGameData.g_singleAtkRecordList), PyGameData.g_singleAtkRecordList))
+ if len(PyGameData.g_singleAtkRecordList) >= 50:
+ GameWorld.SendGameError("MirrorAIAtkDepthError", str(PyGameData.g_singleAtkRecordList))
+ PyGameData.g_singleAtkRecordList = None
+ return result
+
if curSkill.GetTag() == 0 and not isEnhanceSkill:
# 当技能类型为被动技能并且tag字段为0,则此技能为媒介用于触发技能 SkillEnhance1 SkillEnhance2
--
Gitblit v1.8.0