From 30dd8ff93a00ada8262a35da0ede9c2088a7fd37 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 23 九月 2025 16:52:52 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(诸葛亮技能; 目标细分增加攻击力最高5; buff状态增加军令19;增加效果6006增加本次技能万分比验证职业;增加效果5015集火攻击军令目标;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Hero.py |   19 +++++++++++++++----
 1 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Hero.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Hero.py
index 95f6e59..1c9827d 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Hero.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Hero.py
@@ -40,6 +40,7 @@
         GameWorld.DebugAnswer(curPlayer, "武将觉醒: Hero a 背包位置 设置等级")
         GameWorld.DebugAnswer(curPlayer, "武将图鉴: Hero t 武将ID 图鉴星级 图鉴突破等级")
         GameWorld.DebugAnswer(curPlayer, "重置图鉴: Hero t 0")
+        GameWorld.DebugAnswer(curPlayer, "重置重生: Hero r")
         GameWorld.DebugAnswer(curPlayer, "武将皮肤: Hero sk 武将ID 皮肤索引 是否解锁")
         GameWorld.DebugAnswer(curPlayer, "清空武将: ClearPack 35")
         GameWorld.DebugAnswer(curPlayer, "新增武将: MakeItemCount 英雄ID [个数]")
@@ -70,6 +71,8 @@
             ipyDataMgr = IpyGameDataPY.IPY_Data()
             for index in range(ipyDataMgr.GetHeroCount()):
                 ipyData = ipyDataMgr.GetHeroByIndex(index)
+                if not ipyData.GetPlayerCanUse():
+                    continue
                 heroIDList.append(ipyData.GetHeroID())
         else:
             heroIDList = [value2]
@@ -94,6 +97,12 @@
             GameWorld.DebugAnswer(curPlayer, "设置武将(%s)图鉴星级(%s),突破(%s)" % (heroID, bookStarLV, bookBreakLV))
             
         PlayerHero.Sync_HeroInfo(curPlayer, syncHeroIDList)
+        return
+    
+    # 重生
+    if value == "r":
+        PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_HeroAwakeRebirthCnt, 0)
+        PlayerHero.Sync_PlayerHeroInfo(curPlayer)
         return
     
     # 皮肤
@@ -141,7 +150,7 @@
     # 突破
     if value == "b":
         breakLV = msgList[2] if len(msgList) > 2 else 0
-        PlayerHero.SetHeroBreakLV(heroItem, breakLV)
+        PlayerHero.SetHeroBreakLV(curPlayer, heroItem, breakLV)
         GameWorld.DebugAnswer(curPlayer, "设置武将突破: %s,itemIndex=%s" % (breakLV, itemIndex))
         return
     
@@ -157,8 +166,10 @@
 def __oneKeyLineup(curPlayer, msgList):
     ## 阵容上阵: Hero f 阵容ID [武将ID ...]
     lineupID = msgList[1] if len(msgList) > 1 else 0
-    heroIDList = list(set(msgList[2:])) # 去重,单阵容武将ID不能重复
-    
+    heroIDList = []
+    for heroID in msgList[2:]: # 去重,单阵容武将ID不能重复
+        if heroID not in heroIDList:
+            heroIDList.append(heroID)
     if lineupID not in ShareDefine.LineupList:
         GameWorld.DebugAnswer(curPlayer, "不存在该阵容: %s" % lineupID)
         return
@@ -305,7 +316,7 @@
                 if not IpyGameDataPY.GetIpyGameDataNotLog("HeroQualityBreak", quality, bLV):
                     break
                 breakLV = bLV
-        PlayerHero.SetHeroBreakLV(heroItem, breakLV, False)
+        PlayerHero.SetHeroBreakLV(curPlayer, heroItem, breakLV, False)
         
         # 星级
         starMax = PlayerHero.GetHeroStarMax(heroItem)

--
Gitblit v1.8.0