xdh
2019-02-21 92eee67f85cbd29feb1287ae5a15ad0c787e95cb
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
Pè"\c@sÑddlZddlZddlZddlZddlZddlZddlZddlZddlZgZ    d„Z
e
dƒd„Z d„Z d„Z d„Zd„Zd    „Zd
„Zd „ZdS( iÿÿÿÿNc    Csûtjƒd}xätjd||fƒD]É\}}}x·|D]¯}tjj||ƒ}|j|dƒ}|dt|ƒ!}|jdƒdkr›q@n|j    dƒ}|d}|d}|tj
krÓq@n|jddƒ}t |ƒq@Wq*WdS(    Ns    Script\GMs%s\%stit__init__is.s\( tChConfigt
GetAppPathtostwalktpathtjointreplacetlentfindtsplittTYPE_Load_Module_Extt
__import__(    t    importDirtcurPathtroottdirstfilestfiletfileNamet curFileListtext((sNE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GM\GMShell.pytImportCommandAll"s) 
 
tCommandscCstjtƒ||ƒdS(N(t    GameWorldt GetPsycoFunct__Func_MapServer_RecvGMCMD(tindexttick((sNE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GM\GMShell.pytMapServer_RecvGMCMD<sc CsyÃtjƒ}|jƒ}|jƒ}t|ƒdkr=dStjƒj|ƒ}|d}|jdƒr‚d|dj    ƒ}n0|j
ƒdkr²tj d||j ƒƒdStj ƒstjtd|dfƒ}|dkr||ƒ}|j|ƒdSntjtd|dfƒ}|dkr\tj d    ||j ƒƒtj|d
ƒdS|d=xOtdt|ƒƒD]8}    tj||    dƒ}
|
dkr§qyn|
||    <qyW|||ƒWnNtk
rtj|d ƒttjƒƒ} tjd | |j ƒƒdSXdS( Nis@sGMS_%sis!###ʹÓÃGMÃüÁî = %s´íÎó,Íæ¼Ò²»ÊÇGMs%s.%stOnGetMergeParamtOnExecs###ʹÓÃGMÃüÁî = %s, Ã»ÓиÃÃüÁî!s
no cmd !!!s%Ö´ÐÐGMÃüÁî´íÎó, Çë²é¿´GameServerÈÕÖ¾!sGMÃüÁî´íÎó - > %s(tIPY_GameServert
IPY_GGMCmdtGetMsgR R    RtGetPlayerManagertGetPlayerByIndext
startswitht
capitalizet
GetGMLeveltLogt GetPlayerIDt IsCrossServert GetExecFuncRtNonetextendt DebugAnswertrangetToIntDeft BaseExceptiontstrt    tracebackt
format_exctErrLog( RRtgmCmdtinputStrtalistt    curPlayert callFunNametcallFunctextendParamListtitvalueterrorMsg((sNE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GM\GMShell.pyREsH   
       cCsdS(N((t
dBGMCommon((sNE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GM\GMShell.pytDoLogic_DBGMCommon‹sc    Csctjƒ}|jƒ}|jƒ}yÌt|ƒ}|jtjdƒ}|dkrntj    ||tj
ƒdSt j t d|dfƒ}|dkr°tj    ||tj
ƒdSt|ƒ}|ikrâtj    ||tjƒdS|||ƒWnltk
r^t jdtjƒƒtj    ||tjƒt jƒjƒrZtttjƒƒƒ‚ndSXdS(NRs%s.%sR sGMÃüÁî´íÎó - > %s(R!tIPY_GGMToolCommandtGetCmdt
GetOrderIdtevaltgettGMCommontDef_GMKey_TypeR-tGMCommandResultt Def_GMCmdNoneRR,RtChangeEncodIngtDef_EncodeFailR2R)R4R5tDef_GMGSEntranceFailt GetGameWorldt GetDebugLevelR3(    RRt    gmToolCMDtcmdtorderIdt    gmCmdDicttgmTypeR<tcmdDict((sNE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GM\GMShell.pytGMTool_RecvCMD²s2         cCsÑi}|jddƒ}|dkr(|Sx¢|jƒD]”\}}t|tƒsVq5nyG|jddƒ}|jddƒ}td|ƒ}|j|ƒ}Wntjdt    |ƒƒiSX|||<q5W|S(    NtcodingRs
s`rs's\'su'%s's translateStr error! srcStr = %s (
RGtitemst
isinstanceR3RRFtencodeRR)trepr(RTRVRXtkeyR?t translateStr((sNE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GM\GMShell.pyRLÝs" cCs‰t|ƒdkrdSd|ddf}tjt|ƒ}|dkr]tjd|ƒdStjdt|ƒƒ||d|ƒdS(Nis%s.%stOnMergeServerExecsÕÒ²»µ½´ËGMÃüÁî´¦Àíº¯Êý%ssÖ´ÐÐ×Ó·þÇëÇóµÄGMÃüÁ%si(R    RR,RR-R6R)R3(t
cmdMsgListRtcallNameR<((sNE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GM\GMShell.pytClientServerMsg_GMCMDøs cCsr||f}tjj|gƒ}|j|ƒ|tj|<tjdttjƒƒtj||tj    dƒdS(Ns*ÀëÏßÍæ¼ÒÌí¼ÓGMT: g_gmtOfflinePlayerInfo=%ssPlayer is off line.(
t
PyGameDatatg_gmtOfflinePlayerInfoRGtappendRR)R3RHRJt Def_Success(RSt    queryTypet
playerFindRTR]t ctgInfoList((sNE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GM\GMShell.pytAddOfflinePlayerGMTInfos   cCsHg}tj|jƒf}|tjkrC|tjj|ƒ7}ntj|jƒf}|tjkr€|tjj|ƒ7}n|sŠdS|jƒ}t    j
d||f|j ƒƒ|sÀdSx|D]y}|j dƒ}|sèqÇnt    j td|dfƒ}|rÇt    j
d|||f|j ƒƒ||||ƒqÇqÇWdS(Ns ÀëÏßÍæ¼ÒÉÏÏßGMT: tagMapID=%s, %st    pack_types%s.%stOnOfflineCTGInfos$Íæ¼ÒÉÏÏßÖ´ÐÐGMT: %s, tagMapID=%s, %s(RtqueryType_sqtPlayerByNametGetNameRcRdtpoptqueryType_sqtPlayerByAccIDtGetAccIDt GetRealMapIDRR)R*RGR,R(R:tgmtListtnameKeytaccIDKeyttagMapIDRTRkR<((sNE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GM\GMShell.pyt OnPlayerLogins,   #(RRRR!RcR4RHt ShareDefineRtg_broadCastListRRRRBRWRLRbRjRw(((sNE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GM\GMShell.pyt<module>s&             
            F    '    +