1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
é¥gc@sVddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl!Z!ddl"Z"ddl#Z#ddl$Z$ej%ej&gZ'ej(ej)gZ*d„Z+d„Z,d„Z-dd„Z.d„Z/d„Z0d    „Z1dd
„Z3d „Z4d „Z5d „Z6d„Z7dS(iÿÿÿÿNcCs1tjƒrdS|sdSi|d6|d6tjƒd6}tj|dƒ}tjƒjtjƒsztj    d|ƒdS|t
krúd}t |t ƒrË|j ddƒ}|sË|j ddƒ}qËntt|ƒƒ}tjd    |||fƒntjd
||fƒtjƒj|t|ƒƒdS( NtMsgTypetDatat ServerGroupIDis-·þÎñÆ÷δÆô¶¯ºÃ,²»ÔÊÐíÏò¿ç·þ·þÎñÆ÷·¢ËÍÊý¾Ý! %sitplayerIDtPlayerIDs1SendMsgToCrossServer => %s, playerID=%s,msgLen=%ssSendMsgToCrossServer => %s, %s(t    GameWorldt IsCrossServertGetServerGroupIDtcPickletdumpst GetGameWorldt GetDictByKeytChConfigtDef_WorldKey_GameWorldInitOKtErrLogt ClientServerMsg_ShortLogTypeListt
isinstancetdicttgettlentstrtLogt!SendMergerChildToCenterStringData(tmsgTypetdataMsgtsrcMsgtsendMsgRtmsgLen((s`E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\CrossRealmMsg.pytSendMsgToCrossServer=s( ! cCsMy"tjƒjtjƒs,tjdƒdStj|ƒ}|jddƒ}|jddƒ}|jddƒ}|t    krôd}t
|t ƒrÂ|jddƒ}|sÂ|jd    dƒ}qÂnt t |ƒƒ}tjd
||||fƒntjd |||fƒ|tjkr3tj|||ƒnî|tjkrXtj|||ƒnÉ|tjkrztj||ƒn§|tjkrœtj||ƒn…|tjkr¾tj||ƒnc|tjkràtj||ƒnA|tjkrtj|||ƒn|tjkr*tj|||ƒn÷|tjkrLtj||ƒnÕ|tjkrntj||ƒn³|tj krt ||ƒn”|tj!kr¯t"j!||ƒnr|tj#krÑt"j#||ƒnP|tj$krót%j$||ƒn.|tj&krt%j&||ƒn |tj'kr7t(j'||ƒnê|tj)kr\t*j)|||ƒnÅ|tj+krxt,|ƒn©|tj-kr”t.|ƒn|tj/kr¹t0j/|||ƒnh|tj1krÛt2j1||ƒnF|tj3krýt2j3||ƒn$|tj4krt2j4||ƒn|tj5krAt2j5||ƒnà|tj6krct7j6||ƒn¾|tj8kr…t7j8||ƒnœ|tj9kr§t7j9||ƒnz|tj:krÉt7j:||ƒnX|tj;krët7j;||ƒn6|tj<kr t7j<||ƒn|tj=kr/t7j=||ƒnò|tj>krQt7j>||ƒnÐ|tj?krst@j?||ƒn®|tjAkr•tBjA||ƒnŒ|tjCkr·tDjC||ƒnj|tjEkrÙtFjE||ƒnH|tjGkrûtHjG||ƒn&|tjIkrtJjI||ƒn|tjKkr?tLjK||ƒnâ|tjMkratNjM||ƒnÀ|tjOkrƒtNjO||ƒnž|tjPkr¥tNjP||ƒn||tjQkrÇtNjQ||ƒnZ|tjRkrétSjR||ƒn8|tjTtjUgkrtV|||ƒn tjWd ƒWn$tjXd t tYjZƒƒƒnXdS(Ns·þÎñÆ÷δÆô¶¯ºÃ£¬²»´¦Àí×Ó·þÐÅÏ¢!RiÿÿÿÿRtRiRRsCOnCrossServerReceiveMsg: %s, serverGroupID=%s,playerID=%s,msgLen=%ss1OnCrossServerReceiveMsg: %s, serverGroupID=%s, %ssûÓиÃÐÅÏ¢ÀàÐÍÂß¼­´¦Àí£¡s¿ç·þ·þÎñÆ÷½ÓÊÕÐÅÏ¢´¦Àí±¨´í 
%s([RR
R R R RRtloadsRRRRRRt ShareDefinetClientServerMsg_PKMatcht CrossRealmPKtClientServerMsg_PKOvertClientServerMsg_PKBillboardtClientServerMsg_LuckyCloudBuytCrossLuckyCloudBuytClientServerMsg_QueryBillboardtCrossBillboardtClientServerMsg_UpdateBillboardtClientServerMsg_MailContenttPlayerCompensationtClientServerMsg_ChatCrossWorldt
PlayerTalktClientServerMsg_PlayerLoginouttChPlayertClientServerMsg_GMCMDtGMShelltClientServerMsg_ServerInitOKtClientServerMsg_ViewPlayerCachetPlayerViewCachetClientServerMsg_PushPlayerCachet'ClientServerMsg_PullOtherPlayerPackDatatPlayerPackDatatClientServerMsg_PlayerPackDatatClientServerMsg_QueryNPCInfot PlayerQuerytClientServerMsg_EnterFBtPlayerFBt"ClientServerMsg_SetPlayerAttrValuet!MapServer_CrossSetPlayerAttrValuetClientServerMsg_AddBufftMapServer_CrossAddBufftClientServerMsg_CrossAssistt PlayerAssistt"ClientServerMsg_BattlefieldBuyOpentCrossBattlefieldt#ClientServerMsg_BattlefieldCallJoint#ClientServerMsg_BattlefieldCallKickt%ClientServerMsg_BattlefieldCallChanget"ClientServerMsg_ChampionshipPKOvertCrossChampionshipt)ClientServerMsg_ChampionshipOfficialApplyt.ClientServerMsg_ChampionshipOfficialApplyReplyt(ClientServerMsg_ChampionshipOfficialKickt)ClientServerMsg_ChampionshipOfficialLeavet-ClientServerMsg_ChampionshipOfficialChallenget!ClientServerMsg_ChampionshipGuesst#ClientServerMsg_ChampionshipWorshipt#ClientServerMsg_ActAllRechargeValuetCrossActAllRecharget'ClientServerMsg_CrossYaomoBossHurtAwardtCrossYaomoBosstClientServerMsg_BossTrialSubmittPlayerActBossTrialtClientServerMsg_XianXiaMJScoretPlayerActXianXiaMJtClientServerMsg_GubaoScoretPlayerActGubaot"ClientServerMsg_HorsePetTrainScoretPlayerActHorsePetTraintClientServerMsg_LianqiScoretPlayerActLianqitClientServerMsg_CreateFuncTeamtPlayerFuncTeamtClientServerMsg_ChangeFuncTeamtClientServerMsg_FuncTeamMemOPtClientServerMsg_QueryFuncTeamtClientServerMsg_QueryXiangongt GameXiangongtClientServerMsg_ReborntClientServerMsg_CollectNPCtMapServer_CrossServerReceiveMsgRtRaiseExceptiont    tracebackt
format_exc(trecvMsgtticktmsgDictRtmsgDatat serverGroupIDRR((s`E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\CrossRealmMsg.pytOnCrossServerReceiveMsgWsÞ     !cCs"tjd|ƒt||ƒdS(sc ÊÕµ½×Ó·þÁ¬½Ó³É¹¦Í¨Öª 
         µ±×Ó·þÆô¶¯³É¹¦ºó£¬¿Éͬ²½Ò»´Î¿ç·þ·þÎñÆ÷»î¶¯×´Ì¬¼°»î¶¯Êý¾Ý¸ø×Ó·þ
    s*ÊÕµ½¿ç·þ×Ó·þÁ¬½Ó³É¹¦Í¨Öª! serverGroupID=%sN(RRt&Sync_CrossServerInitDataToClientServer(RoRl((s`E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\CrossRealmMsg.pyR1ýs icCs™tj|ƒtj||ƒtj|ƒtj|ƒtj    |ƒt
j |ƒt j ||ƒtj|ƒtj|ƒtj|ƒtj|ƒdS(sR Í¬²½¿ç·þ¹¦ÄÜÊý¾Ýµ½×Ó·þ·þÎñÆ÷
        ±¾º¯Êýµ÷ÓÃʱ»ú£º
        1.¿ç·þ·þÎñÆ÷Æô¶¯³É¹¦£¬Ö÷¶¯¹ã²¥Í¬²½ËùÓÐ×Ó·þ£¬´ËʱÉèÖàserverGroupID Îª 0
        2.×Ó·þÆô¶¯³É¹¦£¬ÓÉ×Ó·þÖ÷¶¯·¢ÆðÇëÇóͬ²½×îÐÂÊý¾Ý£¬´ËʱÓÐÖ¸¶¨×Ó·þ serverGroupID
        3.×Ó·þÖØÐÂÁ¬½Ó¿ç·þ·þÎñÆ÷³É¹¦£¬Âß¼­Í¬2
        @param serverGroupID: ×Ó·þ·þÎñÆ÷×éID£¬Îª0ʱΪȫ²¿×Ó·þÎñÆ÷×é
    N(tCrossRealmPlayert$Sync_CrossCommInitDataToClientServerR!t"Sync_CrossPKInitDataToClientServerRHt(Sync_CrossChampionshipDataToClientServerRCt'Sync_CrossBattlefieldDataToClientServert    CrossBosst$Sync_CrossBossInitDataToClientServertCrossActionControltSync_CrossActInfoToClientServerR%t$Sync_LuckyCloudBuyDataToClientServerRQt"Sync_AllRechargeDataToClientServerRSt%Sync_CrossYaomoBossDataToClientServerR*t$Sync_CrossMailPlayerIDToClientServert GameWorshiptSync_CrossWorshipToClientServer(RlRo((s`E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\CrossRealmMsg.pyRqs         cCsƒt|tƒsdS|jdƒ}|s,dStjƒj|ƒ}|sKdSt|||gƒ}|jddd|t|ƒƒdS(NRitCrossServerReceiveMsg(    RRRRtGetPlayerManagertFindPlayerByIDRtMapServer_QueryPlayerResultR(RRnRot tagPlayerIDt    tagPlayertmsgInfo((s`E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\CrossRealmMsg.pyRgscCskxd|jƒD]V\}}tjƒj|ƒ}|s8dSt|ƒ}|jddd|t|ƒƒq WdS(NitCrossSetPlayerAttrValue(titemsRR‚RƒRR„R(RnRtsetAttrInfoListtplayerR‡((s`E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\CrossRealmMsg.pyR=)s #cCs€|jdƒ}|sdStjƒj|ƒ}|s8dS|jdƒ}|sQdSt|ƒ}|jddd|t|ƒƒdS(NRtbuffIDitAddBuff(RRR‚RƒRR„R(RnR…R†RŒR((s`E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\CrossRealmMsg.pyR?2s cCstjƒsdS|dkr%g}ni|d6|d6tjƒd6}tj|dƒ}tjƒjtj    ƒs‹tj
d||fƒdS|t krd}t |t ƒrÜ|jddƒ}|sÜ|jd    dƒ}qÜntt|ƒƒ}tjd
||||fƒntjd |||fƒ|sMtjƒj|t|ƒƒnLtt|ƒƒ}tj|dƒ}tjƒj|t|ƒ|t|ƒƒdS( sР¹ã²¥ÐÅÏ¢µ½×Ó·þÎñÆ÷ÉÏ
        @param serverGroupIDList: ·¢ËÍÖ¸¶¨µÄ·þÎñÆ÷×éIDÁÐ±í£¬ÄÚ²¿ÒѾ­Õë¶ÔÁбíÖÐ×éIDÈ¥ÖØ£¬
        ËùÒÔÍⲿÂß¼­¿ÉÖ±½ÓÌí¼Ó£¬²»Óÿ¼ÂÇ×éIDÖØ¸´ÎÊÌ⣬ûÓÐÖ¸¶¨·þÎñÆ÷×éIDʱ£¬Ä¬ÈϹ㲥ËùÓÐ×Ó·þ
    NRRtCrossServerTimeisH¿ç·þ·þÎñÆ÷δÆô¶¯ºÃ,²»ÔÊÐíÏò×Ó·þ·¢ËÍÊý¾Ý! serverGroupIDList=%s, srcMsg=%siRRs6SendMsgToClientServer => %s, %s, playerID=%s,msgLen=%ss#SendMsgToClientServer => %s, %s, %s(RRtNonetGetCurrentDataTimeStrRR    R
R R R RtCrossServerMsg_ShortLogTypeListRRRRRRtSendBroadcastMergeClienttlisttsettSendMergeMsgToClientByGroupList(RRtserverGroupIDListRRRRtjsonGroupIDInfo((s`E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\CrossRealmMsg.pytSendMsgToClientServerBs0      !  (cCsÖtjƒ}|jƒ}y“tjƒjtjƒsDtjdƒdSt    j
|ƒ}|j ddƒ}|j ddƒ}|j ddƒ}|t kr    d}t |tƒrÚ|j ddƒ}|sÚ|j d    dƒ}qÚntt|ƒƒ}    tjd
|||    fƒntjd ||fƒ|rttjƒƒ}
tj|ƒ} tjtjƒƒ} | | } tj\}}}| |
|gt_|
|d ks»t| ƒd ks»|tjkrtjd| ƒ|
}| |
|gt_tjtjtjƒqn|tjkrtj|ƒn‹|tjkr>t j|ƒnl|tj!kr]t"j!|ƒnM|tj#kr|t$j#|ƒn.|tj%kržt&j%||ƒn |tj'kr½t&j'|ƒní|tj(krÜt)j(|ƒnÎ|tj*krût)j*|ƒn¯|tj+krt)j+|ƒn|tj,kr9t-j,|ƒnq|tj.krXt-j.|ƒnR|tj/krwt-j/|ƒn3|tj0kr–t1j0|ƒn|tj2krµt1j2|ƒnõ|tj3krÔt4j3|ƒnÖ|tj5krót4j5|ƒn·|tj6krt4j6|ƒn˜|tj7kr1t8j7|ƒny|tj9krPt:j9|ƒnZ|tj;krot:j;|ƒn;|tj<krŽt:j<|ƒn|tj=kr­t>j=|ƒný|tj?krÌt@j?|ƒnÞ|tjAkrëtBjA|ƒn¿|tjCkr
tBjC|ƒn |tjDkr)tBjD|ƒn|tjEkrKtBjE||ƒn_|tjFkrjtBjF|ƒn@|tjGkr‰tBjG|ƒn!|tjHkr¨tIjH|ƒn|tjJkrÇtKjJ|ƒnã|tjLkrætMjL|ƒnÄ|tjNkrtOjN||ƒn¢|tjPkr'tQjP|ƒnƒ|tjRkrFtQjR|ƒnd|tjSkrhtTjS||ƒnB|tjUkr‡tKjU|ƒn#|tjVkr¦tjV|ƒn|tjWkrÅtjW|ƒnå|tjXkrçtYjX||ƒnÃ|tjZkr    t[jZ||ƒn¡|tj\kr+t]j\||ƒn|tj^krMt]j^||ƒn]|tj_krlt`j_|ƒn>|tjakr‹t`ja|ƒn|tjbkrªt`jb|ƒn|tjckrÉt]jc|ƒná|tjdtjetjftjggkrýth||ƒn­|tjikrtji|ƒnŽ|tjkr~|j d    ƒ}|rªtjjƒjk|ƒ}|r{tjl|dtjƒƒq{qªn,|tjmkrtjm|ƒn tjndƒWn$tjodttpjqƒƒƒnXdS(Ns·þÎñÆ÷δÆô¶¯ºÃ£¬²»´¦Àí¿ç·þÐÅÏ¢!RiÿÿÿÿRRRŽiRRs3OnClientServerReceiveMsg: %s, playerID=%s,msgLen=%ss OnClientServerReceiveMsg: %s, %siXisGͬ²½µØÍ¼¿ç·þ·þÎñÆ÷ʱ¼äʱ£¬±¾·þÓë¿ç·þ·þÎñÆ÷ʱ¼ä¼ÆËãÎó²î£¡ diffSeconds=%ss¿ç·þ·þÎñÆ÷ʱ¼ä: %ssûÓиÃÐÅÏ¢ÀàÐÍÂß¼­´¦Àí£¡s×Ó·þ·þÎñÆ÷½ÓÊÕÐÅÏ¢´¦Àí±¨´í
%s(rtIPY_GameServertIPY_MGBroadcastMergeClienttGetDataRR
R R R RRRRR‘RRRRtintttimetChangeTimeStrToNumtGetCrossServerTimeStrt
PyGameDatatg_crossServerTimeInfotabsRtCrossServerMsg_CrossServerTimetDebugLogtSendMapServerMsgExt#Def_Notify_WorldKey_CrossServerTimetCrossServerMsg_ExitCrossServerRrtCrossServerMsg_Notifyt PlayerControltCrossServerMsg_PlayerLoginoutR.tCrossServerMsg_ChatCrossWorldR,t!CrossServerMsg_ViewPlayerCacheRetR3t"CrossServerMsg_PullPlayerViewCachet"CrossServerMsg_PlayerPackDataStateR6t!CrossServerMsg_PullPlayerPackDatat!CrossServerMsg_PushPlayerPackDatatCrossServerMsg_PKMatchReqRetR!tCrossServerMsg_PKOverInfotCrossServerMsg_PKSeasonInfot#CrossServerMsg_LuckyCloudBuyLotteryR%tCrossServerMsg_LuckyCloudBuyNumtCrossServerMsg_BattlefieldStateRCtCrossServerMsg_BattlefieldBuytCrossServerMsg_BattlefieldOvert(CrossServerMsg_CrossBossTrialFamilyAwardRUtCrossServerMsg_FuncTeamInfoR_tCrossServerMsg_FuncTeamDeltCrossServerMsg_FuncTeamListtCrossServerMsg_WorshipRtCrossServerMsg_XiangongRdt CrossServerMsg_ChampionshipStateRHt!CrossServerMsg_ChampionshipPlayert CrossServerMsg_ChampionshipGroupt CrossServerMsg_ChampionshipGuesst#CrossServerMsg_ChampionshipOfficialt(CrossServerMsg_ChampionshipDailyOfficialt!CrossServerMsg_ActAllRechargeInfoRQt$CrossServerMsg_CrossDailyActionStateRyt%CrossServerMsg_CrossYaomoBossHurtInfoRStCrossServerMsg_SyncBillboardR'tCrossServerMsg_CrossBossInfoRwtCrossServerMsg_CrossBossStatetCrossServerMsg_CrossAssistRAtCrossServerMsg_CrossActInfotCrossServerMsg_PutInItemtCrossServerMsg_GiveMoneytCrossServerMsg_DropGoodItemt GameWorldBosstCrossServerMsg_NPCInfoRetR9tCrossServerMsg_EnterFBRetR;tCrossServerMsg_EnterVSRoomRettCrossServerMsg_SendMailR*tCrossServerMsg_MailPlayerIDListtCrossServerMsg_MailContenttCrossServerMsg_FBPlayerCounttCrossServerMsg_RebornRettCrossServerMsg_CollectNPCOKtCrossServerMsg_FBEndtCrossServerMsg_NPCAttackCountt MapServer_ClientServerReceiveMsgtCrossServerMsg_CrossServerStateR‚Rƒt DebugAnswertCrossServerMsg_DebugAnswerRRhRiRj(tindexRltdataPackRRmRRntcrossServerTimeStrRRt curServerTimetcrossServerTimetcurServerCrossServerTimet diffSecondst_t syncMapTimeR†((s`E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\CrossRealmMsg.pytOnClientServerReceiveMsggs    
1#!cCs=|tjgkr½tjƒ}x˜|jƒD]Š\}}|sCq+n|d}||kr_q+ntjƒj|ƒ}|s€q+nt||dgƒ}|jddd|t    |ƒƒq+WdSt
|t ƒsÐdS|j dƒ}|sédStjƒj|ƒ}|sdSt||gƒ}|jddd|t    |ƒƒdS(NiitClientServerReceiveMsgR( RRÚRRR‰R‚RƒRR„RRRR(RRntcurServerGroupIDR…R‡RoR†((s`E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\CrossRealmMsg.pyRÜ5s2 
 #cCstjƒ}|jƒ}|dkr*dnd}tjƒjtj|ƒ|dkrztjdƒt    j
idd6ƒdStjdƒtjƒj t j ƒs°tjdƒdStjƒ}tjƒrtjƒ rtjdƒi|d6}ttj|ƒndS(    Niis===Óë¿ç·þ·þÎñÆ÷¶Ï¿ªÁ¬½Ó!tisOpens===Óë¿ç·þ·þÎñÆ÷Á¬½Ó³É¹¦!s8    ·þÎñÆ÷»¹Î´Æô¶¯ºÃ£¬Ôݲ»´¦Àí! µÈ·þÎñÆ÷Æô¶¯ºÃºóÔÙ´¦Àí£¡s9֪ͨ¿ç·þÖ÷·þÎñÆ÷Á´½Ó³É¹¦, ¿É½ÓÊÕ×îпç·þ»î¶¯×´Ì¬¼°Êý¾Ý...R(R™tIPY_LGCrossLoginResultt    GetResultRR
tSetDictRt(Def_Notify_WorldKey_CrossServerConnStateRRrRÝR R R RtIsCrossRealmOpenRRR1(RàRlRátresultt    connStateRoR((s`E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\CrossRealmMsg.pytOnConnCorossServerVs$         cCsˆtjƒjƒ}tjƒr2t|ddƒdStjƒ}tjƒr„tjƒ r„tjdƒi|d6}tt    j
|ƒndS(NRois9֪ͨ¿ç·þÖ÷·þÎñÆ÷Æô¶¯³É¹¦, ¿É½ÓÊÕ×îпç·þ»î¶¯×´Ì¬¼°Êý¾Ý...R( RR
tGetTickRRqRRñRRRR1(RlRoR((s`E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\CrossRealmMsg.pytOnGameServerInitOKos    (8RRRAR©R6R_R%R™R3RrR*RURWRYR[R]RyRQRHRCR'RSRÐR!RdRR9R,R RwR R.R;R0RiRRR4R7RR°R¬R‘RRpR1RqRgR=R?RR˜RéRÜRôRö(((s`E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\CrossRealmMsg.pyt<module>sd                                             ¦                      %    Î    !