From 8debc2ea91c321eb92df47bb685fc9510ccc95bf Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 14 一月 2026 17:28:32 +0800
Subject: [PATCH] 302 【公会】BOSS讨伐-服务端(布阵不受最大层数限制,最大层数仅对实际效果层数有效;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamilyTaofa.py | 88 ++++++++++++++++++++++---------------------
1 files changed, 45 insertions(+), 43 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamilyTaofa.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamilyTaofa.py
index 23cf5e2..5c9595b 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamilyTaofa.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamilyTaofa.py
@@ -145,45 +145,45 @@
PlayerFamily.SendFamilyActionInfo(curPlayer, familyID, ActionType)
return
-def RefreshFamilyBuZhenInfo(family):
- ## 刷新公会公共布阵信息
- familyID = family.GetID()
- curTime = int(time.time())
- bzDuration = IpyGameDataPY.GetFuncCfg("FamilyTaofaBuzhen", 4) * 60 # 有效时长秒
- maxLayer = IpyGameDataPY.GetFuncCfg("FamilyTaofaBuzhen", 3)
-
- gLayer = 0
- gEndTime = 0
- gActionData = None
- familyAction = DBDataMgr.GetFamilyActionMgr().GetFamilyAction(familyID, ActionType)
- for index in range(0, familyAction.Count()):
- actionData = familyAction.At(index)
- dataID = GetFAPlayerID(actionData)
- if dataID == ActionGlobalID:
- gActionData = actionData
- continue
- bzTime = GetFABuzhenTime(actionData)
- if not bzTime:
- continue
- endTime = bzTime + bzDuration
- if endTime <= curTime:
- continue
-
- if not maxLayer or gLayer < maxLayer:
- gLayer += 1
-
- if gEndTime < endTime:
- gEndTime = endTime
-
- GameWorld.DebugLog("刷新公会公共布阵信息: familyID=%s,gLayer=%s,gEndTime=%s" % (familyID, gLayer, GameWorld.ChangeTimeNumToStr(gEndTime)))
- if not gActionData:
- gActionData = familyAction.AddAction()
- SetFAPlayerID(gActionData, ActionGlobalID)
-
- SetFABuzhenEndTime(gActionData, gEndTime)
- SetFABuzhenLayer(gActionData, gLayer)
- PlayerFamily.SendFamilyAction(gActionData)
- return
+#def RefreshFamilyBuZhenInfo(family):
+# ## 刷新公会公共布阵信息
+# familyID = family.GetID()
+# curTime = int(time.time())
+# bzDuration = IpyGameDataPY.GetFuncCfg("FamilyTaofaBuzhen", 4) * 60 # 有效时长秒
+# maxLayer = IpyGameDataPY.GetFuncCfg("FamilyTaofaBuzhen", 3)
+#
+# gLayer = 0
+# gEndTime = 0
+# gActionData = None
+# familyAction = DBDataMgr.GetFamilyActionMgr().GetFamilyAction(familyID, ActionType)
+# for index in range(0, familyAction.Count()):
+# actionData = familyAction.At(index)
+# dataID = GetFAPlayerID(actionData)
+# if dataID == ActionGlobalID:
+# gActionData = actionData
+# continue
+# bzTime = GetFABuzhenTime(actionData)
+# if not bzTime:
+# continue
+# endTime = bzTime + bzDuration
+# if endTime <= curTime:
+# continue
+#
+# if not maxLayer or gLayer < maxLayer:
+# gLayer += 1
+#
+# if gEndTime < endTime:
+# gEndTime = endTime
+#
+# GameWorld.DebugLog("刷新公会公共布阵信息: familyID=%s,gLayer=%s,gEndTime=%s" % (familyID, gLayer, GameWorld.ChangeTimeNumToStr(gEndTime)))
+# if not gActionData:
+# gActionData = familyAction.AddAction()
+# SetFAPlayerID(gActionData, ActionGlobalID)
+#
+# SetFABuzhenEndTime(gActionData, gEndTime)
+# SetFABuzhenLayer(gActionData, gLayer)
+# PlayerFamily.SendFamilyAction(gActionData)
+# return
def RefreshPlayerAwardBoxCnt(family, curPlayer=None, unSyncIDList=[]):
## 刷新玩家可领取的宝箱数
@@ -322,11 +322,11 @@
return
gLayer, gActionData = GetFamilyBuzhenLayer(familyID)
bzDuration = IpyGameDataPY.GetFuncCfg("FamilyTaofaBuzhen", 4) * 60 # 有效时长秒
- maxLayer = IpyGameDataPY.GetFuncCfg("FamilyTaofaBuzhen", 3)
gEndTime = int(time.time()) + bzDuration # 直接覆盖更新
- if not maxLayer or gLayer < maxLayer:
- gLayer += 1
-
+ gLayer += 1 # 布阵不限制次数,直接加
+ #if not maxLayer or gLayer < maxLayer:
+ # gLayer += 1
+
GameWorld.DebugLog("公会讨伐布阵: gLayer=%s,gEndTime=%s" % (gLayer, GameWorld.ChangeTimeNumToStr(gEndTime)), playerID)
# 公共信息
SetFABuzhenEndTime(gActionData, gEndTime)
@@ -369,6 +369,8 @@
# 计算属性
gLayer, _ = GetFamilyBuzhenLayer(familyID)
+ maxLayer = IpyGameDataPY.GetFuncCfg("FamilyTaofaBuzhen", 3)
+ gLayer = min(gLayer, maxLayer) # 限制生效的最大布阵层数
fightPower = PlayerControl.GetFightPower(curPlayer)
superRate = IpyGameDataPY.GetFuncCfg("FamilyTaofaBuzhen", 1)
superRatio = IpyGameDataPY.GetFuncCfg("FamilyTaofaAtk", 3) # 暴击伤害倍值
--
Gitblit v1.8.0