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
39
40
41
42
43
44
x{[c@s«ddlZddlZddlZddlZddlZddlZddlZdZdZd„Z    d„Z
d„Z d„Z d„Z d    „Zd
„Zd „Zd „Zd „Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zdd„Zd„Z d„Z!d„Z"d„Z#d „Z$d!„Z%d"„Z&d#„Z'd$„Z(d%„Z)d&„Z*d'„Z+d(„Z,dS()iÿÿÿÿNtcmd_mails2013-01-18 18:45cCs|dkr|S|dS(Nil((tnum((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytToDWORD*s cCswd}t|ƒ}x^gt|ƒD]}|ddkr"|^q"D]-}|ttj|||d!dƒƒ7}qBW|S(Ntiii(tlentrangetchrtstringtatoi(thexStrt    returnStrt    hexStrLentjti((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytHexToBin3s
 6+cCsddl}|jƒS(Niÿÿÿÿ(t    tracebackt
format_exc(R((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytGetExceptionInfo?s c
Cs‚tjddgdtdtjdtjdtjƒ}|jjd|ƒ|jjƒ|jjƒ}||j    jƒ7}|GH|S(NtcmdRtshelltstdintstdouttstderrs%s
(
t
subprocesstPopentFalsetPIPERtwritetcloseRtreadR(tcurCmdtpipetretStr((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytRunCmdIs cBs,|jddƒ}d|d}|dU|S(Ns's\'sdesStr='(treplace(tsrcStrtdesStrR((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pyt
GetCodeStrYscCs-tjd||ƒ}|d7}|d|fS(NtBii(tstructt unpack_from(tbuftpostcurValue((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytReadBYTE†s
cCs-tjd||ƒ}|d7}|d|fS(NtHii(R'R((R)R*R+((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytReadWORDs
cCs-tjd||ƒ}|d7}|d|fS(NtIii(R'R((R)R*R+((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pyt    ReadDWORD˜s
cCs-tjd||ƒ}|d7}|d|fS(Ntfii(R'R((R)R*R+((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pyt    ReadFloat¡s
cCs-tjd||ƒ}|d7}|d|fS(Ntdii(R'R((R)R*R+((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pyt
ReadDoubleªs
cCs1tjd|||ƒ}||7}|d|fS(Ns%dsi(R'R((R)R*t_lenR+((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pyt
ReadString³s
cCs7|dkr|jƒ}n |jƒ}tj||ƒS(Ni(tlowertupperR'tpack(tsigntvalue((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytPack¾s  cCs|td|ƒ7}|S(NR&(R<(R)R;((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pyt    WriteBYTEÌscCs|td|ƒ7}|S(NR-(R<(R)R;((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pyt    WriteWORDÕscCs|td|ƒ7}|S(NR/(R<(R)R;((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pyt
WriteDWORDÝscCs|tjd|ƒ7}|S(NR1(R'R9(R)R;((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pyt
WriteFloatåscCs|tjd|ƒ7}|S(NR3(R'R9(R)R;((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pyt WriteDoubleíscCs|tjd||ƒ7}|S(Ns%ds(R'R9(R)RR;((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pyt WriteStringõscCs+tjt||dƒt||dƒƒS(Ni(tmathtsqrttpow(tsrcXtsrcYtdestXtdestY((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pyt GetDistanceýscCsƒ|dkr||fSt||||ƒ}|dkrA||fS|t|ƒ|||}|t|ƒ|||}||fS(Ni(RJtfloat(RFRGRHRIt curMoveDistt    totalDisttresultXtresultY((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytMovePoss 
 
cCs2tjjƒ}t|ƒ}|jdƒd}|S(Ns.i(tdatetimettodaytstrtsplit(tcurTimet
curTimeStr((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytGetCurrentDataTimeStrs cCs&|jdƒd}tjj|dƒS(Ns.is%Y-%m-%d %H:%M:%S(RTRQtstrptime(ttimeStr((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytGetDateTimeByStr(sicCs-yt|ƒ}|SWntk
r(|SXdS(N(tintt
ValueError(tinputtdefValuetresult((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytToIntDef3s
  cCs©d|dd!}tj|d |dd!ddƒ}tj|d |dd!ddƒ}tj|d |dd    !ddƒ}t|ƒd
t|ƒd
t|ƒ}|S( Nt0xiiiitbaseiiis,(RRRS(thtredtgreentbluetcStr((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytHcToSc@s $$$(cCsŽttj|jdƒdƒƒd}ttj|jdƒdƒƒd}ttj|jdƒdƒƒd}dt|||ƒ}|S(Ns,iiis#(thexRRRTRS(tsRdReRfthStr((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytScToHcMs
&&&cCs¡tj|dd!|dd!ddƒ}tj|dd!|dd!ddƒ}tj|dd!|dd!ddƒ}t|ƒdt|ƒdt|ƒ}|S(    NiiiRbiiis,(RRRS(RcRdReRfRg((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytHdToSdZs
'''(cCsŽttj|jdƒdƒƒd}ttj|jdƒdƒƒd}ttj|jdƒdƒƒd}dt|||ƒ}|S(Ns,iiiRa(RiRRRTRS(RjRdReRfRk((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytSdToHdfs
&&&cCs'yt|ƒSWntk
r"dSXdS(NsDivision is Zero(tevaltZeroDivisionError(R;((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytSafeEvalrs cCs„t|tƒsdS|jdƒ}|d}xQtdt|ƒƒD]:}|d||7}tjj|ƒsBtj|ƒqBqBWdS(Ns\ii(    t
isinstanceRSRTRRtostpathtexiststmkdir(tpartpathListRtR ((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytMakeAppointDirŒs
cCs¶t|tƒsdS|jdƒ}|d}xƒtdt|ƒƒD]l}|d||7}|t|ƒdkrŒt|dƒ}|jƒqBtjj    |ƒsBtj
|ƒqBqBWdS(Ns\iitw( RrRSRTRRtopenRRsRtRuRv(RwRxRtR tfile((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytMakeAppointFile›s
 cCsctjj|ƒsdS|dttjjƒƒjƒd}tjj|ƒs_tj|ƒndS(Ns\i(RsRtRuRSRQRRRTRv(RwRt((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytMakeCurTimeDir®s
'cGsºd|kr|St|ƒ}|}d|krC|jddƒ}n|jdƒ}||kr¢t|ƒ}x%t||ƒD]}|jdƒq{Wt|ƒ}dSt|| ƒ}||S(Ns%s%%Ris0func:GetReplaceString();error:the parameter lack(RR"tcounttlistRtappendttuple(Rtvarlistt repalceCounttnewStrtneedReplaceCountttempListR t replaceTuple((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytGetReplaceString¼s      cCs‰ddl}ddl}d}|j||ƒs4|St|dƒ}|j}y-tdt|ƒdƒ}|j|ƒ}Wn|SX|S(Niÿÿÿÿs#[0-9]+isu'\u%s'i(tret ShareDefinetmatchR[tDef_Game_Character_EncodingRoRitencode(tU_STRRŠR‹tRegularExpressiont
UnicodeNumtCODECtunicode_stringtGBK_str((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytUnicodeStrToGBKStrÖs      c
Csut}d}xbtt|ƒƒD]N}|r7t}qn|t|ƒdkr||||krj||}n|||}Pndt||ƒkodknrBdt||dƒkoÇdknsödt||dƒkoñdknrt}||||d!}qm|||kr1||}qm|||}q|||kr_||}q|||}qW|S(    NRiiiþi@i~i¡i(RRRtordtTrue(R#R:tdesSignt
isContinueR$R ((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pytReplaceBig5AppointSignës, &T  cCstj|ƒ}|d@S(Niÿÿÿ(tbinasciitcrc32(tmsgtcrc((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pyt    GetStrCrcscCsmt|ƒ|kr|S|| }xFtdƒD]8}y(||| jtjƒjtjƒSWq-q-Xq-WdS(Ni
R(RtxrangetdecodeR‹RRŽ(R#tmaxLent tempCommentR ((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pyt GetStrCutoff$s
((-RsR'RRCRQRR›t MODULE_NAMEtVERRRRR!R%R,R.R0R2R4R6R<R=R>R?R@RARBRJRPRWRZR`RhRlRmRnRqRyR}R~R‰R•RšRŸR¤(((s<.\ServerPython\CoreServerGroup\GameServer\Script\CommFunc.pyt<module>sX                        
        -                                                                                                                                               1