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
v-9hc@s>ddlTddlmZddlmZddlZddlZddlZddlZddlZddl    m
Z
ddl m Z ddl TddlmZmZddlmZd    „Zed
ƒdad „Zd „Zd dd„ƒYZddd„ƒYZd„Zd„Zd„Zddd„Zd„ZdS(iÿÿÿÿ(t*(tGlobalFunctions(tGMCommonN(tfix_incomingText(tDataServerPlayerData(t
CommFuncExtmylog(t
MMORPGPackc    Csôtjƒ}xátjd||fƒD]Æ\}}}x´|D]¬}tjj||ƒ}|j|dƒ}|dt|ƒ!}|jdƒdkr—q<n|j    dƒ}|d}|d}|d
krÌq<n|jd    dƒ}t
|ƒq<Wq&WdS( Ns%s\%stit__init__is.tpyctpys\(R
R ( Rt
getAppPathtostwalktpathtjointreplacetlentfindtsplitt
__import__(    t    importDirtcurPathtroottdirstfilestfiletfileNamet curFileListtext((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pytImportCommandAll3s ) 
 
 sGMToolLogicProcess\Commandsc Cs¥tjdƒ|j}|j}|j}|j}|j}|j}|j}tjd||fƒd}    yÜt    |ƒ}
|
j
t j dƒ}    |    dkr§t|ƒdSt|
ƒ} | ikrÖt||
t jƒdStƒ} | | _|    | _|| _|| _tj|ƒ| _|
| _|| _tƒj|| ƒ| jƒWnLtk
r“tjdt j!ƒƒtƒj"|ƒt||    t j#ƒdSXtjdƒdS(Ns%ProjSpecialProcess OnGMToolCommand INsGM Tool Cmd->%s,orderId->%sRsGM cmd error - > %ss'ProjSpecialProcess OnGMToolCommand Done($RtinfotOrderLentOrderIdtCmdLentCmdt UserDataLentUserDatatServerIDtevaltgetRtDef_GMKey_TypetNonetSendGMToolCommandToGameServertChangeEncodIngtGMCommandResulttDef_EncodeFailt GMCmdMangert    gmCmdDicttfuncNametorderIdtuserDatatcopytdeepcopytpacktgmCmdDictUnEncodetserverIDt GetGMOrderMgrtAddCmdt GMToolCommandt BaseExceptiont    tracebackt
format_exctPopCmdtDef_GMDBEntranceFail( R7trecvPacktorderLenR3tcmdLentcmdt
uerDataLenR4R9R2R1tcmdDictt gmCmdManger((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pytOnGMToolCommandPsJ                               
                                cCs|S(N((R7((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pytOnGMToolCommandResultŒs    R0cBs,eZd„Zd„Zd„Zd„ZRS(cCs|jƒdS(N(tClear(tself((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pyR    ¥s
cCsCi|_d|_d|_d|_d|_i|_d|_dS(NRi(R1R2R3R+R4R7R8R9(RL((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pyRK­s                            cCsittd|jdfƒ}tj}d}|dkrU||j|jƒ\}}n|j||ƒdS(Ns%s.%stOnExecR(    t GetExecFunctCommandsR2RtDef_SendToGameServerR+R1R9tGMCmdExecuteResult(RLtcallFunctexecTypetexecInfo((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pyR<ºs      cCsb|tjkr2t|jƒtƒj|jƒn,tƒj|jƒt|j|j||ƒdS(N(    RRPR,R7R:R@R3R.R2(RLRSRT((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pyRQÌs  (t__name__t
__module__R    RKR<RQ(((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pyR0 s             t GMCmdOrderMgrcBs,eZd„Zd„Zd„Zd„ZRS(cCs i|_dS(N(t_GMCmdOrderMgr__CmdOrderdict(RL((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pyR    ás    cCsD||jjƒkr3tjd||jfƒtS||j|<tS(Ns(orderId = %s already exists,New cmd = %d(RXtkeysRtwarningR2tFalsetTrue(RLR3t    cmdManger((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pyR;ês
 cCs|jj|dƒS(N(RXtpopR+(RLR3((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pyR@÷scCs|jj|dƒS(N(RXR)R+(RLR3((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pytGetCmdþs(RURVR    R;R@R_(((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pyRWÜs                 cCstdkrtStƒatS(N(t_GMCmdOrderMgrR+RW(((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pyR:s     cCsb|jdƒ}t|ƒdkr%dSx6|D].}t||ƒtkrKdSt||ƒ}q,W|S(Ns.i(RRR+thasattrR\tgetattr(t
curCallObjtcallNametcallListt curCallName((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pytParseNameGetObjs cCs9t||ƒ}|dkrdSt|ƒtkr5dS|S(N(RgR+tcallableR\(RcRd((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pyRN%s  RcCsyi|tj6|tj6|tj6}tj|dtƒ}tjd|ƒt    t
|ƒ|t
|ƒ|t
|ƒ|ƒdS(Nt ensure_asciis gm result:%s( RR*tDef_GMKey_ResultTypetDef_GMKey_ResultMsgtjsontdumpsR[RR tSendToGMToolCommandResultR(R3tgmCmdt
resultTypetstrMsgtuseDatat
resultDcitt    resultMsg((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pyR.9s 
 +cCsÑi}|jddƒ}|dkr(|Sx¢|jƒD]”\}}t|tƒsVq5nyG|jddƒ}|jddƒ}td|ƒ}|j|ƒ}Wntjdt    |ƒƒ|SX|||<q5W|S(    NtcodingRs
s`rs's\'su'%s's translateStr error! srcStr = %s (
R)titemst
isinstancetstrRR(tencodeRR trepr(R1RGRutkeytvaluet translateStr((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pyR-Hs" (((tGMToolPyInterfacetDBCommonRRORR5R R>Rlt MangoDBCommonRt CollectionsRtCollections.CollectionDefinetCommonRRtProtocolRRR+R`RIRJR0RWR:RgRNR.R-(((s8.\\ServersRoute\GMToolLogicProcess\ProjSpecialProcess.pyt<module>s0
 
        
    <    <(