From 3432541b467d53ffe4ed3872c734e76638e30df8 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 24 十月 2025 17:58:12 +0800
Subject: [PATCH] 302 【公会】BOSS讨伐-服务端

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DB/StructData/DBFamily.py |   33 ++++++++++++++++++++++++++++-----
 1 files changed, 28 insertions(+), 5 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DB/StructData/DBFamily.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DB/StructData/DBFamily.py
index 7d2b5b7..5d66d8b 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DB/StructData/DBFamily.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DB/StructData/DBFamily.py
@@ -75,10 +75,10 @@
         @param dbData: 实例对应绑定的dbData
         @return: 成功返回实例对象,失败返回None
         '''
-        dataToJson = False
-        # 如果需要 dataToJson,可根据ActionType在这里处理
+        dataToJson = True
+        # 默认使用 dataToJson,如果不需要的可根据 ActionType 在这里处理
         if dbData.ActionType in []:
-            dataToJson = True
+            dataToJson = False
         actionData = FamilyActionData(dbData, dataToJson)
         self.__actionDataList.append(actionData)
         return actionData
@@ -132,7 +132,28 @@
         elif False:
             aData = FamilyActionData()
         return aData
-        
+    
+    def GetActionDataByValue1(self, value1, isAdd=False):
+        ## 获取Action根据Value1
+        # @return: None or findActionData
+        findActionData = None
+        for actionData in self.__actionDataList:
+            if actionData.GetValue1() == value1:
+                findActionData = actionData
+                break
+        if not findActionData and isAdd:
+            findActionData = self.AddAction()
+            findActionData.SetValue1(value1)
+        return findActionData
+    
+    def DelActionDataByValue1(self, value1):
+        ## 删除Action根据Value1
+        for actionData in self.__actionDataList[::-1]:
+            if actionData.GetValue1() == value1:
+                self.__actionDataList.remove(actionData)
+                break
+        return
+    
 class FamilyActionMgr():
     
     def __init__(self):
@@ -140,6 +161,8 @@
         return
     
     def GetFamilyAction(self, familyID, actionType):
+        if not familyID:
+            return FamilyAction()
         if familyID not in self.__familyActionDict:
             self.__familyActionDict[familyID] = {}
         actionDict = self.__familyActionDict[familyID]
@@ -474,7 +497,7 @@
     
     def FindFamily(self, familyID):
         family = None
-        if familyID in self.__familyIDDict:
+        if familyID and familyID in self.__familyIDDict:
             family = self.__familyIDDict[familyID]
         elif False:
             family = Family()

--
Gitblit v1.8.0