From e718ef8d79b1d1a7f546ec686b70e752cb60e3fa Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 08 七月 2024 18:50:47 +0800
Subject: [PATCH] 10196 【越南】【香港】【主干】【砍树】增加地图数量开启警告

---
 ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py |   64 ++++++++++++++++++++++++--------
 1 files changed, 48 insertions(+), 16 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py
index efcbdec..3652aa8 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py
@@ -51,7 +51,6 @@
 import PlayerFamilySWRH
 import IpyGameDataPY
 import PlayerTalk
-import PlayerGeTui
 import PlayerStore
 import GameWorldActionControl
 import GameWorldFamilyWar
@@ -62,12 +61,21 @@
 import GMShell
 import IPY_PlayerDefine
 import GameWorldArena
+import CrossLuckyCloudBuy
 import CrossRealmPK
+import CrossChampionship
 import AuctionHouse
 import PlayerAssist
 import PlayerFB
 import PlayerLove
 import PlayerCharm
+import CrossRealmPlayer
+import CrossBattlefield
+import CrossActAllRecharge
+import CrossYaomoBoss
+import GameWorldMineArea
+import PlayerRecData
+import GameWorship
 #---------------------------------------------------------------------
 
 #---------------------------------------------------------------------
@@ -123,6 +131,8 @@
     if GameWorld.IsCrossServer():
         #跨服PK
         CrossRealmPK.OnPlayerLoginCrossServer(curPlayer)
+        #协助
+        PlayerAssist.OnPlayerLoginCrossServer(curPlayer)
         return
     
     #玩家家族刷新
@@ -130,8 +140,9 @@
     PlayerFamily.PlayerLoginRefreshFamily(curPlayer, tick)
     #玩家队伍初始化
     PlayerTeam.OnPlayerLoginRefreshTeam(curPlayer, tick)
-    PlayerCompensation.NotifyPlayerCompensation(curPlayer)
+    #PlayerCompensation.NotifyPlayerCompensation(curPlayer)
     __UpdOnedayJobPlayerLoginoffTime(curPlayer)
+    CrossRealmPlayer.OnPlayerLogin(curPlayer)
     
     if not PlayerControl.GetIsTJG(curPlayer):
         # 只有通知逻辑的应该放此处减少IO,如有逻辑处理存储等不可放在此处
@@ -177,7 +188,6 @@
         PlayerFamilySWRH.OnLogin(curPlayer)
         PlayerTalk.LoginChatMi(curPlayer)
         PlayerTalk.NotifyTalkCache(curPlayer)
-        #PlayerGeTui.CleanNewGuyCallBackGeTui(curPlayer.GetID())
         #活动
         GameWorldActionControl.OnPlayerLogin(curPlayer)
         #玩家等级记录
@@ -186,19 +196,22 @@
         GameWorldArena.OnPlayerLogin(curPlayer)
         #跨服PK
         CrossRealmPK.OnPlayerLogin(curPlayer)
+        #幸运云购
+        CrossLuckyCloudBuy.OnPlayerLogin(curPlayer)
         #诛仙BOSS
         PlayerZhuXianBoss.OnPlayerLogin(curPlayer)
         #骑宠boss状态通知
         PlayerHorsePetBoss.OnLogin(curPlayer)
         #协助
-        PlayerAssist.OnPlayerLogin(curPlayer, False)
+        PlayerAssist.OnPlayerLogin(curPlayer)
         #天星塔
         GameWorldSkyTower.OnPlayerLogin(curPlayer)
+        #福地
+        GameWorldMineArea.OnPlayerLogin(curPlayer)
         GMT_CTG.OnPlayerLogin(curPlayer)
         
     else:
-        #协助
-        PlayerAssist.OnPlayerLogin(curPlayer, True)
+        pass
         
     return
 
@@ -210,6 +223,11 @@
     isMixServerFirstLogin = loginMsg[0]
     GameWorld.Log("GameServer->DoPlayerRealLoginOK, isMixServerFirstLogin=%s" % isMixServerFirstLogin, curPlayer.GetPlayerID())
     
+    if GameWorld.IsCrossServer():
+        return
+    
+    PyGameData.g_dbPlayerIDMap[curPlayer.GetPlayerID()] = curPlayer.GetAccID()
+    
     if not PlayerControl.GetIsTJG(curPlayer):
         #家族副本boss状态通知
         PlayerFamilyBoss.OnLogin(curPlayer)
@@ -217,10 +235,23 @@
         PlayerCharm.OnPlayerLogin(curPlayer)
         #情缘
         PlayerLove.OnPlayerLogin(curPlayer)
+        #膜拜
+        GameWorship.OnPlayerLogin(curPlayer)
+        #跨服战场
+        CrossBattlefield.OnPlayerLogin(curPlayer)
+        #跨服排位
+        CrossChampionship.OnPlayerLogin(curPlayer, tick)
+        #跨服全民充值
+        CrossActAllRecharge.OnPlayerLogin(curPlayer)
+        #跨服妖魔boss
+        CrossYaomoBoss.OnPlayerLogin(curPlayer)
+        #玩家记录
+        PlayerRecData.OnPlayerLogin(curPlayer)
         
     if isMixServerFirstLogin:
         PlayerCharm.OnMixServerFirstLogin(curPlayer)
         
+    PyGameData.g_noPlayerLoginWarningMailState = 2
     return
 
 def __UpdOnedayJobPlayerLoginoffTime(curPlayer):
@@ -566,7 +597,6 @@
     PlayerFriend.OnPlayerDisconnect(curPlayer, tick)
     
     __UpdOnedayJobPlayerLoginoffTime(curPlayer)
-    #PlayerGeTui.NewGuyCallBackGeTui(curPlayer, tick)
     # 设置家族成员离线时间
     SetPlayerOfflineTime(curPlayer)
     #拍卖行
@@ -691,13 +721,14 @@
         
     elif packType == IPY_GameServer.CDBPlayerRefresh_LV:
         curPlayer.SetLV(packValue)
-        PlayerSocial.UpdateSocialInfo(curPlayer.GetID(), packType, packValue)
         #玩家等级记录
         playerID = curPlayer.GetID()
         if playerID in PyGameData.g_todayPlayerLVDict:
             PyGameData.g_todayPlayerLVDict[playerID] = packValue
 
     elif packType == IPY_GameServer.CDBPlayerRefresh_Job:
+        if packValue != curPlayer.GetJob():
+            PlayerBillboard.DelJobFightPowerBillboard(curPlayer, curPlayer.GetJob())
         curPlayer.SetJob(packValue)
         
 #    elif packType == IPY_GameServer.CDBPlayerRefresh_CurrentPlayerType:
@@ -725,7 +756,8 @@
         PlayerControl.SetCrossMapID(curPlayer, packValue, False)
         
     elif packType == IPY_GameServer.CDBPlayerRefresh_ExAttr9:
-        PlayerControl.SetVIPExpireTime(curPlayer, packValue)
+        curPlayer.SetExAttr9(packValue)
+        #PlayerControl.SetVIPExpireTime(curPlayer, packValue)
         
     elif packType == IPY_GameServer.CDBPlayerRefresh_ExAttr10:
         PlayerControl.SetChatBubbleBox(curPlayer, packValue)
@@ -738,10 +770,14 @@
     
     elif packType == IPY_GameServer.CDBPlayerRefresh_OfficialRank:
         curPlayer.SetOfficialRank(packValue)
-        PlayerSocial.UpdateSocialInfo(curPlayer.GetID(), packType, packValue)
         #更新排行榜的境界
         PlayerBillboard.UpdateBillboardRealm(curPlayer)
+    elif packType == IPY_GameServer.CDBPlayerRefresh_Face:
+        curPlayer.SetFace(packValue)
+        PlayerBillboard.UpdateBillboardFace(curPlayer)
         
+    #社交信息
+    PlayerSocial.UpdateSocialInfo(curPlayer.GetID(), packType, packValue)
     #组队成员刷新
     PlayerTeam.PlayerTeamMemberRefresh(curPlayer, packType, packValue, tick)
     #家族刷新
@@ -1195,11 +1231,6 @@
 #  @param tick 时间戳
 #  @return None
 def Sync_PyServerDataTimeToClient(curPlayer, tick):
-
-    if not GameWorld.RefurbishPlayerTick(curPlayer, ChConfig.TYPE_Player_Tick_SyncClientTick, tick):
-        #间隔未到
-        return
-    
     # 服务器时间
     serverTime = GameWorld.GetServerTime()
     if not serverTime:
@@ -1213,7 +1244,8 @@
     serverDateTime.Hour = serverTime.hour
     serverDateTime.Minute = serverTime.minute
     serverDateTime.Second = serverTime.second
-    serverDateTime.MicSecond = serverTime.microsecond   
+    serverDateTime.MicSecond = serverTime.microsecond
+    serverDateTime.CrossServerTime = GameWorld.GetCrossServerTimeStr()
     
     # 通知客户端同步时间
     NetPackCommon.SendFakePack(curPlayer, serverDateTime)

--
Gitblit v1.8.0