From 18df4f587c3e6782da7c83ee27db78482b674c34 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 09 十二月 2025 10:13:54 +0800
Subject: [PATCH] 121 【武将】武将系统-服务端(生效卡牌逻辑修改: 主阵容中的优先生效;生效中的卡牌无法遣散;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ObjPool.py |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ObjPool.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ObjPool.py
index 062659f..1b1b21b 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ObjPool.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ObjPool.py
@@ -93,6 +93,9 @@
         visited = set([obj_id])  # 初始化已访问集合
         
         try:
+            ### 回收前处理,主要处理一些其他不需要释放的对象池对象,防止被连同误回收
+            if hasattr(obj, 'onRelease'):
+                obj.onRelease()
             # 1. 递归释放嵌套对象池对象
             self._recursive_release(obj, visited)
             # 2. 释放当前对象
@@ -327,9 +330,10 @@
         PyGameData.g_objPoolMgr = poolMgr
     return poolMgr
 
-def OnMinute():
+def OnMinute(curTime):
     """每分钟执行,输出对象池状态"""
-    GetPoolMgr().pool_status()
+    if curTime.minute == 5: # 每小时的5分输出一次
+        GetPoolMgr().pool_status()
     return
 
 ## 使用示例

--
Gitblit v1.8.0