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