From 11c9a3b5846401523e4dafc17f2a074a712730da Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 11 三月 2026 18:27:10 +0800
Subject: [PATCH] 526 【挑战】PVP群英榜-后端(本服群英榜;优化机器人表支持按功能加载不同的机器人;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py |   33 +++++++++++++++++----------------
 1 files changed, 17 insertions(+), 16 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
index f473343..b219a6d 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
@@ -958,7 +958,7 @@
 
 
 def OnPlayerLogin(curPlayer):
-    DoGMForbidenTalkOnLogin(curPlayer)
+    #DoGMForbidenTalkOnLogin(curPlayer)
     curPlayer.SetDict(ChConfig.Def_PDict_DayOnlineCalcTime, int(time.time()))
     return
 
@@ -1113,7 +1113,7 @@
     playerControl.RefreshAllState()
             
     #玩家下线更新排行榜
-    PlayerBillboard.UpdatePlayerBillboardOnLeaveServer(curPlayer) #排行榜已实时更新,故下线不再同步
+    #PlayerBillboard.UpdatePlayerBillboardOnLeaveServer(curPlayer) #排行榜已实时更新,故下线不再同步
     
     #玩家下线通知gameserver记录缓存(放在下线更新排行榜之后,方便Gameserver判断是否需要存入数据库中)
     PlayerViewCache.OnPlayerLogout(curPlayer)
@@ -4094,20 +4094,21 @@
     GameWorld.DebugLog("SetPlayerAccState %s" % (accState), curPlayer.GetPlayerID())
     return
 
-def DoGMForbidenTalkOnLogin(curPlayer):
-    ## 离线时被禁言,此时DB的账号状态值为禁言状态,但是GMOper暂时没有禁言操作命令,故上线时检查设置下离线禁言状态
-    ## 目前离线时被禁言的,暂时只处理AccState ExAttr17, GMOper命令暂不处理,所以为永久禁言
-    
-    if curPlayer.GetAccState() & pow(2, ChConfig.Def_PysForbidTalkDevice):
-        GameWorld.Log("上线时角色为被设备禁言状态!", curPlayer.GetPlayerID())
-        __SetGMForbidenTalkValue(curPlayer, 2)
-        __SetGMForbidenTalkValue(curPlayer, 1)
-    elif curPlayer.GetAccState() & pow(2, ChConfig.Def_PysForbidTalk):
-        GameWorld.Log("上线时角色为被禁言状态!", curPlayer.GetPlayerID())
-        __SetGMForbidenTalkValue(curPlayer, 1)
-    else:
-        SendPropertyRefresh(curPlayer, ShareDefine.CDBPlayerRefresh_ForbidenTalk, 0)
-    return
+#GM命令支持离线玩家上线后处理,且 PlayerGMOper 也有上线触发逻辑处理,故暂屏蔽
+#def DoGMForbidenTalkOnLogin(curPlayer):
+#    ## 离线时被禁言,此时DB的账号状态值为禁言状态,但是GMOper暂时没有禁言操作命令,故上线时检查设置下离线禁言状态
+#    ## 目前离线时被禁言的,暂时只处理AccState ExAttr17, GMOper命令暂不处理,所以为永久禁言
+#    
+#    if curPlayer.GetAccState() & pow(2, ChConfig.Def_PysForbidTalkDevice):
+#        GameWorld.Log("上线时角色为被设备禁言状态!", curPlayer.GetPlayerID())
+#        __SetGMForbidenTalkValue(curPlayer, 2)
+#        __SetGMForbidenTalkValue(curPlayer, 1)
+#    elif curPlayer.GetAccState() & pow(2, ChConfig.Def_PysForbidTalk):
+#        GameWorld.Log("上线时角色为被禁言状态!", curPlayer.GetPlayerID())
+#        __SetGMForbidenTalkValue(curPlayer, 1)
+#    else:
+#        SendPropertyRefresh(curPlayer, ShareDefine.CDBPlayerRefresh_ForbidenTalk, 0)
+#    return
 
 def IsMainLevelPass(curPlayer, lvID):
     ## 判断玩家是否过关某个主线关卡ID

--
Gitblit v1.8.0