hxp
2025-05-19 9a9d59da84b4f721ea6fcc0ae5f58b2646c65332
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
÷ì&hc@sKddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
dZ dZ e aidd6dd6Zd„Zd    „Zd
„Zd „Zd „Zd „Zd„Zd„Zdefd„ƒYZd„Zd„Zd„Zd„Zd„Zd„Zd„Z dS(iÿÿÿÿNsC:\ServerRealTimeBackups.bakiWi'iYij'cCstjdƒtƒdS(NsµØÍ¼·þÎñÆ÷Æô¶¯(t    GameWorldtDebugLogtLoadServerDataBackup(((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pyt OnServerStart)s cCsdS(N((((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pyt OnServerClose.scCstƒtjƒtjƒdS(N(tServerDataBackuptDBFamilytOnMinutet DBBillboard(tcurTime((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pyR1s
 
cCs´g}x—tj|ƒD]†\}}}xt|D]l}|jtƒsGq,ntjj||ƒ}tj||jdƒ j    dƒdƒ}|j
||gƒq,WqW|j dt ƒ|S(Ns.t_itreverse( tostwalktendswitht BakFileTypetpathtjoinRtToIntDeftindextsplittappendtsorttTrue(tbakPatht bakFileListtparentR
t    filenamestfilenametfullPathtbakTime((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pytGetBakFileSortList9s )c    Cs    tjƒjƒ}|tkr"dSdt|}tjjt|ƒ}tjd|ƒt    |ƒ}|sytjdƒdS|dd}tjd|ƒt
|dƒ}|j ƒj ƒ}|j ƒy"tj|ƒ}tj|ƒ}Wnta‚nXt|dƒdS(NsS%ss ¼ÓÔØ±¸µµ: %ss ²»´æÔÚ±¸µµ!iis ¶ÁÈ¡±¸µµ: %strb(RtGetMaptGetMapIDt Map2ServerIDR RRtBakRoottLogRtopentreadtstriptclosetzlibt
decompresstbinasciita2b_hexRt    g_loadErrtLoadPyGameData(    tmapIDt
serverNametBakDirRt bakFilePathtftcompressed_datatdecompressed_datatbakData((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pyRFs.   
 c Cs™trtjdƒdStjƒjƒ}|tkr9dSdt|}tjjt    |ƒ}d}tj
d|ƒtjj |ƒs•tj |ƒnt tjƒƒ}tjj|d||tfƒ}tƒ}tj
d|t|ƒ|fƒyStj|dƒ}tj
dt|ƒƒt|d    ƒ}|j|ƒ|jƒWndSXt|ƒ}    x6|    |D]*\}
} tj| ƒtj
d
| ƒqgWdS( Ns ¼ÓÔØ±¸µµÒÑÒì³££¬ÔÝʱ²»ÔÚ´æ´¢±¸µµsS%sis·þÎñÆ÷±¸µµ: %ss%s_%s%ssBak:%s, len=%s, %si    scompress len=%stwbsɾ³ý¶àÓ౸µµÎļþ: %s(R.RtErrLogR!R"R#R RRR$R%texiststmakedirstintttimeRt GetSavePyDatatlenR*tcompressR&twriteR)Rtremove( R0R1R2t BackupCopyMaxR    R3R7R5tfpRR
tfilePath((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pyRds:  "        cCsKtƒ}|jƒ}tjdt|ƒt|ƒfƒtj|ƒ}|S(NsGetSavePyData!! id = %s-%s(t GetDBDataMgrt GetSaveDataRR%tidR?R,tb2a_hex(t pyGameDataMgrtresult((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pyR>‹s
     #cCsBtƒ}tjdt|ƒt|ƒfƒ|j||ƒ}|S(NsLoadPyGameData!!id = %s %s(RFRR%RHR?t LoadGameData(t
gameBuffertposRJ((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pyR/šs    #tPyGameDataManagercBs#eZd„Zd„Zd„ZRS(cCsOtjƒ|_tjƒ|_tjƒ|_tjƒ|_tj    ƒ|_    dS(N(
t DBEventTrigt EventTrigMgrtDBPlayerViewCachetPlayerViewCacheMgrRt    FamilyMgrtDBMailtMailMgrRt BillboardMgr(tself((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pyt__init__¥s cCsid}||jjƒ7}||jjƒ7}||jjƒ7}||jjƒ7}||jjƒ7}|S(Nt(RQRGRSRTRVRW(RXtbuff((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pyRG­scCsˆt|ƒ}|jj|||ƒ}|jj|||ƒ}|jj|||ƒ}|jj|||ƒ}|jj|||ƒ}|S(N(R?RQR/RSRTRVRW(RXRMRNtdataslen((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pyRL¶s (t__name__t
__module__RYRGRL(((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pyRO¤s            cCs(tj}|s$tƒ}|t_n|S(N(t
PyGameDatatg_pyGameDataManagerRO(RJ((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pyRF¿s
         cCstƒ}|jS(N(RFRQ(t    dbDataMgr((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pytGetEventTrigMgrÇs    cCstƒ}|jS(N(RFRS(Ra((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pytGetPlayerViewCacheMgrÌs    cCstƒ}|jS(N(RFRT(Ra((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pyt GetFamilyMgrÑs    cCs tƒjƒS(N(RdtGetFamilyActionMgr(((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pyReÖscCstƒ}|jS(N(RFRV(Ra((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pyt
GetMailMgrÚs    cCstƒ}|jS(N(RFRW(Ra((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pytGetBillboardMgrßs    (!RR_RPRRRRRUR,R=R*R R$RtFalseR.R#RRRRRRR>R/tobjectRORFRbRcRdReRfRg(((sdD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\DB\DBDataMgr.pyt<module>s@           
                         '