From 5a91f4aa6a702388948d551158a2e92a65329834 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 14 十一月 2025 18:52:41 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(buff持续时间增加大回合支持;增加光环buff;优化攻击、治疗计算逻辑,甄宓、曹仁、董白平摊伤害技能支持;优化B427封包支持额外目标;优化dot、持续治疗结算逻辑及通知;)其他: 1. TurnFight 命令支持指定敌方武将阵容测试,直接在主线战斗 2. B424初始化前的血量变更0418通知屏蔽

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/TurnFight.py |   16 +++++++++++++---
 1 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/TurnFight.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/TurnFight.py
index f89ad1e..9458607 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/TurnFight.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/TurnFight.py
@@ -41,6 +41,7 @@
         GameWorld.DebugAnswer(curPlayer, "阵营: 1-左边;2-右边")
         GameWorld.DebugAnswer(curPlayer, "位置: 1~6号位")
         GameWorld.DebugAnswer(curPlayer, "属性ID: 6-攻,7-防,8-HPMax,9-HP,12-怒")
+        GameWorld.DebugAnswer(curPlayer, "测试战斗: TurnFight f 是否满技能 [武将ID ...]")
         return
     
     value = msgList[0]
@@ -52,6 +53,8 @@
         __doAddBuff(curPlayer, msgList)
     elif value == "p":
         __printInfo(curPlayer, msgList)
+    elif value == "f":
+        __doFightTest(curPlayer, msgList)
     elif value > 0 and value != ChConfig.Def_FBMapID_Main:
         __reqTurnFight(curPlayer, msgList)
     return
@@ -230,7 +233,8 @@
             batObj = batObjMgr.getBatObj(objID)
             objName = TurnAttack.GetObjName(batObj)
             GameWorld.DebugAnswer(curPlayer, "--- %s%s" % (objName, "" if batObj.IsAlive() else " [被击杀]"))
-            GameWorld.DebugAnswer(curPlayer, "HP:%s/%s, Atk:%s, Def:%s" % (batObj.GetHP(), batObj.GetMaxHP(), batObj.GetAtk(), batObj.GetDef()))
+            GameWorld.DebugAnswer(curPlayer, "HP:%s/%s" % (batObj.GetHP(), batObj.GetMaxHP()))
+            GameWorld.DebugAnswer(curPlayer, "攻:%s,防:%s,怒:%s" % (batObj.GetAtk(), batObj.GetDef(), batObj.GetXP()))
             attrDict = batObj.GetBatAttrDict()
             GameWorld.DebugAnswer(curPlayer, "属性:%s" % attrDict)
             skillMgr = batObj.GetSkillManager()
@@ -240,11 +244,17 @@
             GameWorld.DebugAnswer(curPlayer, "Buff: %s" % buffMgr.GetBuffCount())
             for index in range(buffMgr.GetBuffCount()):
                 buff = buffMgr.GetBuffByIndex(index)
-                GameWorld.DebugAnswer(curPlayer, "ID:%s,SkillID:%s,回合:%s,层:%s,V:%s" 
+                GameWorld.DebugAnswer(curPlayer, "ID:%s,SkillID:%s,回合:%s,层:%s,V:%s,来源:%s,光环:%s" 
                                       % (buff.GetBuffID(), buff.GetSkillID(), buff.GetRemainTime(), buff.GetLayer(), 
-                                         [buff.GetValue1(), buff.GetValue2(), buff.GetValue3()]
+                                         [buff.GetValue1(), buff.GetValue2(), buff.GetValue3()], buff.GetOwnerID(), buff.GetHaloObjIDList()
                                          ))
                 
     return
 
+def __doFightTest(curPlayer, msgList):
+    ## 测试战斗: TurnFight f 是否满技能 [位置1武将ID ...]
+    isAllSkill = msgList[1] if len(msgList) > 1 else 1
+    heroIDList = msgList[2:]
+    TurnAttack.GMTestFight(curPlayer, heroIDList, isAllSkill)
+    return
 

--
Gitblit v1.8.0