cehua_wcy
2019-01-24 703b5101d2df9dc363d2d456f90b8d1836b603f7
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
g“=\c@s-ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZejjƒZd„Zd„Zed„Zd„Zd„Zd„Zd„Zd    „Zd
„Zd „Zd „ZdS( iÿÿÿÿNcCs |jƒ}|s|jƒS|S(N(tGetItemDataNoSavet GetItemData(tcurCachetresult((sZE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerViewCache.pyR)s 
cCs |jƒ}|s|jƒS|S(N(tGetPlusDataNoSavet GetPlusData(RR((sZE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerViewCache.pyR0s 
c
    Csœtj|ƒ}|s'tj|ƒ}n|jtjƒƒtjd|t|ƒ|t|ƒ|t|ƒ|fƒ|j|t|ƒƒ|j    ƒs¦|rõt
|ƒrõ|j |t|ƒƒ|j |t|ƒƒ|j ddƒ|jddƒn,|j |t|ƒƒ|j|t|ƒƒ|j|ƒtj|ƒr˜t|ƒ}|jddƒ}|jddƒ}|jddƒ}    tj||||    ƒndS(Ns¶ViewCache### UpdatePlayerCache PlayerID %s,                         PropData(len %s): %s,                         ItemData(len %s):  %s,                         PlusData(len %s):  %stit
FightPowertFamilyIDtName(t ViewCacheMgrt    FindCachet AddNewCachet SetUpdateTimet    GameWorldtGetCurrentDataTimeStrtDebugLogtlent SetPropDataRtIsNeedSaveViewCacheAllInfot SetItemDatat SetPlusDatatSetItemDataNoSavetSetPlusDataNoSavet SetNeedSaveDBtPlayerFBHelpBattletIsInHelpBattleCheckInListtevaltgettUpdateCheckInPlayerInfo(
tPlayerIDtPropDatatItemDatatPlusDatatisSaveDBRt PropDataDictt
fightPowertfamilyIDt
playerName((sZE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerViewCache.pytUpdatePlayerCache:s./   cCs:t||ƒs tj|ƒdSt||||tƒdS(N(tIsNeedSaveLogoutPlayerR
t DeleteCacheR'tTrue(RtPlayerLVRR R!((sZE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerViewCache.pytOnPlayerLogoutms
 cCs9tj|ƒrtStjddƒ}||kr5tStS(NtPlayerViewCachei(RRR*t IpyGameDataPYt
GetFuncCfgtFalse(RR+t SaveDBLimitLV((sZE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerViewCache.pyR(ys  cCsttj|ƒrtStjddƒ}tjƒ}x<|D]4}|j|ƒ}|sYq8n|j|ƒr8tSq8Wt    S(NR-i(
RRR*R.tGetFuncEvalCfgRt GetBillboardt FindBillboardtFindByIDR0(RtNeedCheckBillBoardTypet billboardMgrt BillBoardTypet curBillboard((sZE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerViewCache.pyR…s  cCs–tjd|jƒƒ|j}|j}|jrTt|||j|j|j    ƒn1t
||j|j|j    |dkr~t nt ƒtjdƒdS(Ns(ViewCache### OnMGUpdatePlayerCache in %si–s&ViewCache### OnMGUpdatePlayerCache out( RRt OutputStringRR+t IsLogoutingR,RR R!R'R*R0(t
routeIndextmapIDt curPackDatattickRR+((sZE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerViewCache.pytOnMGUpdatePlayerCache±s                 % cCs[tjdƒtjƒj|jƒ}|j}tj|ƒ}|sWtj    |dƒdSt
j ƒ}||_|s×tjd|ƒd|_ t |j ƒ|_d|_t |jƒ|_d|_t |jƒ|_nc|jƒ|_ t |j ƒ|_t|ƒ|_t |jƒ|_t|ƒ|_t |jƒ|_tj||ƒtjdƒdS(Ns$ViewCache### OnMGQueryPlayerCache intViewPlayer_OffLines.PlayerCache## OnMGQueryPlayerCache %s no foundRs%ViewCache### OnMGQueryPlayerCache out(RRtGetPlayerManagertFindPlayerByIDRt FindPlayerIDR
R t PlayerControlt
NotifyCodetChPyNetSendPackttagSCQueryPlayerCacheResultRRt PropDataSizeR t ItemDataSizeR!t PlusDataSizet GetPropDataRRt NetPackCommont SendFakePack(R<R=R>R?t    curPlayert findPlayerIDRtsendPack((sZE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerViewCache.pytOnMGQueryPlayerCacheÂs4                       cCs°tj|ƒ}|sdSt|ƒ}|s/dSg}t|ƒ}xh|D]`}|d}|tjkrmqHn|d}|sƒqHn|j|||jddƒdgƒqHW|S(Nt    ItemIndextItemIDtStarLVi(R
R RRt ShareDefinet RoleEquipTypetappendR(RPRtitemDatatplayerEquipListt equipItemListt equipItemDictt
equipIndextitemID((sZE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerViewCache.pytGetPlayerCacheEquipViewås"   
 
)cCs®tjƒj|jƒ}tjƒ}|jƒ|s
tj|jƒ}|s”|j|_d|_    d|_
d|_ d|_ t j|_d|_q…t|jƒƒ}|j|_|d|_    |d|_
|d|_ |d|_ t j|_|jddƒ|_n{|j|_|jƒ|_    |jƒ|_
|jƒ|_ |jƒ|_ t j|_|jƒdk|_tj|ƒ|_tjƒj|ƒ}tj||ƒdS(    NRiiR    tJobtLVtRealmLVt ServerGroupID( RRBRCRRGttagGCAnswerPlayerShortInfotClearR
R t
PlayerNameR`RaRbtChConfigt Def_Offlinet
OnlineTypeRcRRLRtGetNametGetJobtGetLVtGetOfficialRankt
Def_Onlinet    GetTeamIDtIsInTeamREtGetPlayerServerGroupIDtGetPlayerByIndexRMRN(tindext
clientPackR?t    tagPlayert
answerPackRt    cacheDictRO((sZE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerViewCache.pytOnViewPlayerShortInfos@ 
                           cCs²tjd|ƒtj|ƒ}|s)dSt|jƒƒ}||d<||d<|d}tj|dtƒ}|j    ƒ}|j
ƒ}t |||||dkr§t ntƒdS(NsViewCache->OnPlayerFamilyChangeRt
FamilyNameRat ensure_asciii–( RRR
R RRLtjsontdumpsR0RRR'R*(tplayerIDR%t
familyNameRRtplayerLVR R!((sZE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerViewCache.pytOnPlayerFamilyChange/s
 
 
  ((RRGtIPY_PlayerDefinetPlayerFamilyActionRERMt ReadChConfigt PlayerFamilytIPY_GameServerRR.RVRgttimeR{t GameWorldDatatGetPlayerViewCacheMgrR
RRR0R'R,R(RR@RRR_RxR€(((sZE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerViewCache.pyt<module>s4                       
3              ,        #    !    )