cehua-TT
2018-08-13 c609e867544651734c84b69f4d4a81406c4ba1e3
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
47
48
49
50
51
52
53
54
55
œx4[c@s6ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd    „Zd
„Zd „Zgd „ZdS( iÿÿÿÿNcCst|ƒdS(N(t Sync_EDLVInfo(t    curPlayer((sd.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEquipDecompose.pyt PlayerLogin(s
cCst|ƒdS(N(t RefreshEDAttr(R((sd.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEquipDecompose.pytDoEquipDecomposeOpen,s
cCs/tjƒj|ƒ}|j}t||ƒdS(N(t    GameWorldtGetPlayerManagertGetPlayerByIndext    IndexListtEatItems(tindext
clientDatattickRt eatIndexList((sd.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEquipDecompose.pytOnDoEquipDecompose?s     cCst||ƒ\}}|s,tjdƒd S|jtjƒ}|jtjƒ}t||||ƒ\}}}t|||ƒ\}    }
t    j
|tj|ƒ||krÞt    j
|tj|ƒt |ƒt    j    |ƒj ƒn|jtj ƒ} | |
} tjdƒ} t    j
|tj | | ƒg}d}| | kr®tjddƒ}|sct|    ƒ|fS| | }i}x=t|ƒD]/}tj|ƒ}|j|dƒd||<q€Wx9|jƒD]+\}}|jtj||dgƒƒqÀWt|ƒ}tj|tj|ƒ}||krlg|jƒD]\}}||dg^q,}t    jd|jƒg|ƒq®x?|jƒD].\}}tj|||t tjgt ƒqyWnt!||ƒi|d6|d6|d    6|    d
6}t"j#|d ||ƒt|    ƒ|fS( Ns    ×°±¸ÎüÊՠûÓпÉÍÌÊÉÎïÆ·£¡itEquipDecomposeAwardiitDefaultLackSpacet    ExpBeforet AddTotalExptExpAfters)DelItemList(ItemID,delCnt,baseExp,addExp)tEquipDecomposeUp(ii($t__GetCanEatItemInfoRtDebugLogtNomalDictGetPropertytChConfigtDef_PDict_EquipDecomposeLVtDef_PDict_EquipDecomposeExpt__GetEatItemResultt __DelEatItemt PlayerControltNomalDictSetPropertyRtRefreshPlayerAttrStatetDef_PDict_EquipDecomposeCntt IpyGameDataPYt
GetFuncCfgtlentxrangetrandomtchoicetgettitemstappendt
ItemCommont GetJsonItemtGetItemPackSpacet IPY_GameWorldtrptItemt SendMailByKeyt GetPlayerIDt ItemControlertGivePlayerItemtTrueRtDataRecordPacktDR_ClassUpSystem(RR t eatItemListt totalAddExptLVtExptreduceTotalExptupdLVtupdExpt drDelItemListt    delAllCnttcurDecomposeCnttupdDecomposeCnttperDecomposeCntt jsonItemListtgiveCntt    awardListtgiveItemIDDictt_titmeIDt
giveItemIDtitemCntt    needSpacet    packSpacet prizeItemListt saveDataDict((sd.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEquipDecompose.pyR    HsT  
 
 
#  .) 
c    Cs‘g}d}tj|tjƒ}|jƒjtjƒ}xK|D]C}|j|ƒ}| s@|j    ƒrnq@n|j
ƒ}|j ƒtj kr°|j dƒ}    |    jdƒ}
n_|jƒ} |jƒ} tjd| | ƒ} | stjd|| | fƒq@n| jƒ}
|r-|
|
|tj7}
n|jƒ}|
|}||7}tjd||
|||fƒ|j|||
gƒq@W||fS(Nit PetEatEquipsO    tagPetEatEquip.txt,δÅäÖøÃÎïÆ·£¡ eatItemID=%s, EquipColor=%s,EquipClass=%ss7    i=%s,baseExp=%s,itemCnt=%s,addExp=%s,totalAddExp=%s(t    PlayerViptGetPrivilegeValueRtVIPPrivilege_EatItemtGetItemManagertGetPackR-R.tGetAttIsEmptyt GetItemTypeIDtGetTypetDef_ItemType_EquipDecomposeExptGetEffectByIndextGetEffectValuet GetItemColortGetLVR!tGetIpyGameDataRRtGetExptDef_MaxRateValuetGetCountR)(Rt expIndexListR6R7tpetEatItemAddExpPertitemPackR
teatItemt    eatItemIDtcurEfftbaseExpt    itemColort    itemClasstipyDataRItaddExp((sd.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEquipDecompose.pyRs8      
 
    cCs¿|}d}x†|dkr”t|ƒ}|s1Pntd||ƒ}||krwd}||7}||8}|d7}q||7}||7}d}qWtjd||||fƒ|||fS(Niis4×ܿɼӾ­Ñé=%s,ʵ¼Ê×ܿ۳ý¾­Ñé=%s,newLV=%s,×îÖÕ¾­Ñé=%s(t__GetLvUpNeedExptmaxRR(RR8R9R7t    remainExpR:tmaxExptneedExp((sd.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEquipDecompose.pyRªs$  
 
 
 
 
    c Csg}d}x|D]þ\}}}|jƒ}|jƒ}    ||    }
||
krc|    } ||
8}n%ttj|t|ƒƒƒ} d}| |} || 7}tj||| tt    j
ƒt j d|| | fƒt j|tj| ƒ|j|| || fƒ|dkrPqqW||fS(Nis.        ÎüÊՠɾ³ýÎïÆ· i=%s,delCnt=%s,addExp=%s(RVR`tinttmathtceiltfloatR*tDelItemR3RtItemDel_EquipDecomposeRRt PlayerSuccesstDoAddSuccessProgresst ShareDefinetSuccType_DecomposeEquipR)( RR:R6R=R>R
RdRgRet
curItemCnttcurItemTotalExptdelCntRk((sd.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEquipDecompose.pyRÆs(  
 
 
 cCs0|d7}tjd|ƒ}|s&dS|jƒS(s»ñȡװ±¸·Ö½âÉý¼¶ÐèÒª¾­ÑéitEquipDecomposei(R!R]t GetUpNeedExp(tlvRj((sd.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEquipDecompose.pyRlâs
 
cCsÀtj|tjƒsdSgtdƒD] }i^q&}|jtjƒ}tj    d|dƒ}|sjdSx9|j
ƒj ƒD]%\}}t j t|ƒ||ƒq}Wt j|tj|ƒdS(NiR~i(t GameFuncCommt GetFuncCanUseRytGameFuncID_EquipDecomposetrangeRRRR!R]tGetAttrR(RtCalcAttrDict_TypeRqtSetCalcAttrListValuetDef_CalcAttrFunc_EquipDecompose(RRFt allAttrListtcurLVRjtattrIDt    attrValue((sd.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEquipDecompose.pyRìscCs2tjƒj|ƒ}tj|tj|jƒdS(N(RRRRRRtDef_PDict_EquipDecomposeSetingtSeting(R
R R R((sd.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEquipDecompose.pytOnDecomposeSetingSavescCs´tj|dtƒ}tjƒ}|jƒ|jtjƒ|_    |jtj
ƒ|_ |jtj ƒ|_ |jtjƒ|_t|ƒ|_t|jƒ|_tj||ƒdS(Nt ensure_ascii(tjsontdumpstFalsetChPyNetSendPackttagMCEquipDecomposeInfotClearRRRR8RR9RRŽR t DecomposeCnttstrt GetItemDataR#t
GetItemLent NetPackCommont SendFakePack(Rt getItemInfotPackData((sd.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEquipDecompose.pyR s 
(R!R-RR*R”RyR›RRR4RwRROR1R%R‘RrRRRR    RRRRlRRR(((sd.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerEquipDecompose.pyt<module>s6                                     9    )