From a451e68aed69b3c936d4afe50a0cf3c43680e90c Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 27 十月 2025 11:01:10 +0800
Subject: [PATCH] 302 【公会】BOSS讨伐-服务端(Taofa命令增加添加家成员讨伐数据)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/CreateFamily.py | 44 ++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 44 insertions(+), 0 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/CreateFamily.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/CreateFamily.py
index 7d3c042..bf69db3 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/CreateFamily.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/CreateFamily.py
@@ -37,6 +37,7 @@
GameWorld.DebugAnswer(curPlayer, "输出仙盟列表: CreatFamily pl [条数 从第x名]")
GameWorld.DebugAnswer(curPlayer, "输出仙盟明细: CreatFamily pf 仙盟ID")
GameWorld.DebugAnswer(curPlayer, "添加假申请人: CreatFamily j [申请数 仙盟ID]")
+ GameWorld.DebugAnswer(curPlayer, "添加本盟成员: CreatFamily m 人数 [仙盟ID]")
return
value1 = gmList[0]
@@ -56,6 +57,10 @@
__addFackRequestJoin(curPlayer, gmList)
return
+ if value1 == "m":
+ __addFackMember(curPlayer, gmList)
+ return
+
creatCount = value1
if creatCount <= 0:
__delFackFamily(curPlayer)
@@ -63,6 +68,45 @@
__createFackFamily(curPlayer, gmList)
return
+def __addFackMember(curPlayer, gmList):
+ memCnt = gmList[1] if len(gmList) > 1 else 1
+ familyID = gmList[2] if len(gmList) > 2 else curPlayer.GetFamilyID()
+
+ familyMgr = DBDataMgr.GetFamilyMgr()
+ curFamily = familyMgr.FindFamily(familyID)
+ if not curFamily:
+ GameWorld.DebugAnswer(curPlayer, "没有该仙盟: %s" % familyID)
+ return
+
+ MemberMax = PlayerFamily.GetFamilySetting(curFamily.GetLV(), "MemberMax")
+ if curFamily.GetCount() >= MemberMax:
+ GameWorld.DebugAnswer(curPlayer, "成员已满: %s" % MemberMax)
+ return
+ memCnt = min(memCnt, MemberMax - curFamily.GetCount())
+
+ fackIDStart = 0
+ for i in range(0, familyMgr.GetCount()):
+ family = familyMgr.GetAt(i)
+ for index in xrange(family.GetCount()):
+ member = family.GetAt(index)
+ memID = member.GetPlayerID()
+ if memID > ShareDefine.FackPlayerIDMax:
+ continue
+ fackIDStart = max(memID, fackIDStart)
+
+ addCnt = 0
+ for i in range(memCnt):
+ fackID = fackIDStart + i + 1
+ if fackID >= ShareDefine.FackPlayerIDMax:
+ break
+ PlayerFamily.DoPlayerJionFamily(curFamily, fackID, None, broadcastFamilyChange=False)
+ addCnt += 1
+
+ familyMgr.Sort()
+ PlayerFamily.Sync_FamilyInfo(curPlayer)
+ GameWorld.DebugAnswer(curPlayer, "增加成员数:%s, 总成员:%s" % (addCnt, curFamily.GetCount()))
+ return
+
def __addFackRequestJoin(curPlayer, gmList):
reqCnt = gmList[1] if len(gmList) > 1 else 1
familyID = gmList[2] if len(gmList) > 2 else curPlayer.GetFamilyID()
--
Gitblit v1.8.0