From fdebf36f0d9201c6a6949a08cdfeebb718c25ce2 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期五, 23 五月 2025 19:35:53 +0800 Subject: [PATCH] 16 卡牌服务端(聊天、广播、通用记录、查看玩家;) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py | 18 +++++++++++------- 1 files changed, 11 insertions(+), 7 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 cdc027c..761ae6c 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py @@ -37,6 +37,7 @@ import OperControlManager import PlayerFamily import ShareDefine +import PlayerViewCache import PlayerBillboard import GameServerRefresh import IPY_GameWorld @@ -56,7 +57,6 @@ import PlayerWorldAverageLv import PlayerActivity import FBCommon -import PlayerViewCacheTube import PassiveBuffEffMng import PlayerGameEvent import EventReport @@ -87,9 +87,7 @@ import PlayerActGarbageSorting import GY_Query_CrossRealmReg import PlayerTongTianLing -import PlayerCrossRealmPK import FunctionNPCCommon -import DBPlayerViewCache import PlayerGoldInvest import IPY_PlayerDefine import CrossRealmPlayer @@ -251,7 +249,13 @@ # @param mergeMapInfo 该提示所属的跨服活动地图信息, 主要用于不同子服对应所跨的活动地图ID # @return 无返回值 def WorldNotify(country, msgMark, msgParamList=[], lineID=0, mergeMinOSD=-1, mergeMaxOSD=-1, mergeMapInfo=[]): - GameWorld.GetPlayerManager().BroadcastCountry_NotifyCode(country, 0, msgMark, __GetNotifyCodeList(msgParamList), lineID) + #GameWorld.GetPlayerManager().BroadcastCountry_NotifyCode(country, 0, msgMark, __GetNotifyCodeList(msgParamList), lineID) + playerManager = GameWorld.GetPlayerManager() + for i in xrange(playerManager.OnlineCount()): + curPlayer = playerManager.OnlineAt(i) + if not GameWorld.IsNormalPlayer(curPlayer): + continue + NotifyCode(curPlayer, msgMark, msgParamList) return def GetCrossWorldNotifyInfo(country, msgMark, msgParamList=[]): @@ -277,7 +281,8 @@ # @return 无返回值 # @remarks def FamilyNotify(familyID, msgMark, msgParamList=[]): - GameWorld.GetPlayerManager().BroadcastCountry_NotifyCode(0, familyID, msgMark, __GetNotifyCodeList(msgParamList)) + #GameWorld.GetPlayerManager().BroadcastCountry_NotifyCode(0, familyID, msgMark, __GetNotifyCodeList(msgParamList)) + PlayerFamily.NotifyAllFamilyMemberMsg(familyID, msgMark, msgParamList) return #--------------------------------------------------------------------- @@ -1488,8 +1493,7 @@ PlayerBillboard.UpdatePlayerBillboardOnLeaveServer(curPlayer) #排行榜已实时更新,故下线不再同步 #玩家下线通知gameserver记录缓存(放在下线更新排行榜之后,方便Gameserver判断是否需要存入数据库中) - PlayerViewCacheTube.OnPlayerLogOut(curPlayer, tick) - DBPlayerViewCache.OnPlayerLogout(curPlayer) + PlayerViewCache.OnPlayerLogout(curPlayer) PlayerFamily.OnPlayerLogout(curPlayer) #玩家下线/玩家切换地图公用逻辑 -- Gitblit v1.8.0