From 5b1820799e106489348f8b630208d0413d996256 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期三, 25 二月 2026 18:17:35 +0800
Subject: [PATCH] 0312 登录的时候地图自己验证是否卡号了,卡号则直接进行下线逻辑

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py |   15 +++++++++++----
 1 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
index 25906c0..fba04fb 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
@@ -448,7 +448,7 @@
     '''
     
     playerID = curPlayer.GetPlayerID()
-    sysFixVersion = 2025123012 # 系统定义的最后一次修正版本号,一般以 yyyyMMddhh 定义为版本号
+    sysFixVersion = 2026021300 # 系统定义的最后一次修正版本号,一般以 yyyyMMddhh 定义为版本号
     playerVersion = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FixVersion)
     if not playerVersion:
         createRoleTime = curPlayer.GetCreateRoleTime() # 按创角
@@ -468,6 +468,13 @@
         # 每个版本修正完需要立即更新到对应的版本号值,防止中间某个版本修正失败,导致重登后重复修正已经处理的版本
         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FixVersion, fixVersion)
         
+    # 修正公会跨服首次没有过天
+    fixVersion = 2026021300
+    if playerVersion < fixVersion:
+        if DBFamily.IsFamilyCross():
+            GameWorld.Log("跨服公会玩家登录补过天")
+            PlayerFamily.__doPlayerOnDay(curPlayer)
+            
     # 其他
     # 需要按修正版本时间顺序依次处理!!!需要按修正版本时间顺序依次处理!!!需要按修正版本时间顺序依次处理!!!
     
@@ -1897,7 +1904,8 @@
 #@return 返回值无意义
 #@remarks C++封包触发, 玩家下线
 def PlayerDisconnect(index, tick):
-    GameWorld.GetPsycoFunc(__Func_PlayerDisconnect)(index, tick)
+    curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
+    PlayerDisconnectEx(curPlayer, tick)
     return
 
 ##C++封包触发, 玩家下线
@@ -1905,8 +1913,7 @@
 #@param tick 时间戳
 #@return 返回值无意义
 #@remarks C++封包触发, 玩家下线
-def __Func_PlayerDisconnect(index, tick):
-    curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
+def PlayerDisconnectEx(curPlayer, tick):
     try:
         # 避免因逻辑错误导致下线失败,可能导致回档的情况
         DoPlayerDisconnect(curPlayer, tick)

--
Gitblit v1.8.0