cehua_wcy
2018-08-18 286a0ae4bc86c6c7eb1a2457705724b1b98ec7ee
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
©Žv[c@s¿ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZd„Zd„Zd„Zed„Zd„Zd„Zd„Zd    „Z d
„Z!d „Z"d „Z#id „Z$d„Z%d„Z&dd„Z(d„Z)d„Z*d„Z+d„Z,d„Z-d„Z.d„Z/dd„Z0d„Z1d„Z2d„Z3d„Z4d„Z5d„Z6ddd „Z7ed!„Z8d"„Z9d#„Z:d$„Z;d%„Z<d&„Z=dd'„Z>dd(„Z?dd)„Z@d*„ZAd+„ZBdd,„ZCdS(-iÿÿÿÿNcCs-|jƒtjkr)tj|dƒtStS(NtGeRen_chenxin_436832(tGetPlayerActiontChConfigtDef_Player_DoEquip_Statet PlayerControlt
NotifyCodetFalsetTrue(t    curPlayer((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytCheckPlayerCanEquipItem/scCsºtj|ƒ}tj|ƒs"tStj|ƒs5tS|jƒ}|tjkrTtS|j    ƒ}d}d}d}    |j
ƒ}
|j ƒ} |j ||ƒ} | dkr¬tS|j ƒjtjƒ} | j| ƒ}t|||ƒ|jtjƒdkr|jtjttjƒƒƒn| tjkrK|j|| ||    ||
ƒn|tjkr^tS|jtjtjƒ|tj kr“t!j"|ƒn
t#|ƒt$j$|ƒ}|j%ƒtS(Niiÿÿÿÿ(&t ItemControlertPlayerItemControlert
ItemCommontCheckItemCanUseRtCheckItemCanUseByExpireTimet GetEquipPlacet ShareDefinet RoleEquipTypet GetItemTypeIDt GetUserDatatGetItemQualityt    EquipItemtGetItemManagertGetPackt IPY_GameWorldtrptEquiptGetAttSetEquipItemSuiteLVInfot GetUserAttrtDef_IudetCreateTimet SetUserAttrtintttimeRtDef_SyncEquipStateByIndext ChangeEquiptEquipItemNoRefreshStateRtSetDictt Def_PlayerKey_AttrActivatyNotifytDef_AttrActivatyNotify_EquiptretWingt
PlayerWingt CalcWingAttrtRefreshPlayerEquipAttributeRtRefreshPlayerAttrState(RtcurItemtpackEquipIndextticktplayerItemControltchangeItemEquipPlacet changeItemIDtchangeItemStarLVtchangeItemStoneCnttchangeItemHoleCnttchangeItemUseDatat itemQualityt
equipPlacet    equipPacktcurEquipt playControl((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytDoPlayerEquipItem?sB     " 
 
c
Cs4| s|jƒrdSt}tjdƒ}x*|jƒD]}||kr9t}Pq9q9W|scdSt|||ƒ}|jtj    ƒ}|rót
|ƒ|króxŽt |ƒD]@\}}    |j tj    |ƒ|    kr¬|j tj    ||    ƒq¬q¬Wn=|r |jtj    ƒnx!|D]}    |jtj    |    ƒqWdS(Nt EquipSuitType(tIsEmptyRt IpyGameDataPYtGetFuncEvalCfgtvaluesRtGetEquipPartSuiteLVListtGetUserAttrCountRtDef_IudetPartSuiteLVtlent    enumeratetGetUserAttrByIndextUpdataUserAttrByIndext ClearUserAttrt AddUserAttr(
Rt
equipIndexR,t isSuiteParttequipSuitTypeDicttequipIndexListt suiteLVListt    attrCounttitsuiteLV((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyR‹s*   cCs%tjdƒt|ƒt|ƒdS(Ns$Start RefreshPlayerEquipAttribute!!!(t    GameWorldtDebugLogt__CalcEquips_EffecttCalcAllEquipStarsAttr(RtisRefreshEquipBuff((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyR*¬s 
 
cCstjtƒ||ƒdS(N(RRt GetPsycoFunct__Func_PlayerEquipItem(tindexR.((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytPlayerEquipItem scCs©tjƒj|ƒ}tjƒ}|jƒ}|jƒ}t|ƒsIdS|jƒj    tj
ƒ}|j |ƒ}t ||||ƒr‰dS|j tj
|tjdƒdS(Ni(RRtGetPlayerManagertGetPlayerByIndexRtIPY_CEquipItemt GetItemIndextGetRoleEquipTypeR    RRtrptItemRR;tNotify_ItemPutFailR(RYR.RtsendPackt packItemIndexR-trolePackR,((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRXs     cCsdS(N((RYR.((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytOneKeyChangeEquip=scCstjtƒ||ƒdS(N(RRRWt__Func_PlayerUnEquip(RYR.((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyt PlayerUnEquipFsc
Cs tjƒ}tjƒj|ƒ}t|ƒs1dS|jƒ}tj|ƒ}|j    ||j
ƒƒ}|sndS|d}|d}|t j kr¥|j ||ƒdS|tjkrÄtj|ƒn
t|ƒtj|ƒ}    |    jƒ|t jkr    |j ||ƒndS(Nii(RtIPY_CUnEquipItemRRR[R\R    t GetEquipIndexR
R t UnEquipItemt GetPackIndexRR#tSync_UnEquipItemRR'R(R)R*RR+R!(
RYR.RbRRJR/tresulttequipIDR7R:((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRfPs,   
 
 
 
cCsêtjƒ}tjƒj|ƒ}tj|tjtj    ƒs@dSt
j |ƒsSdS|j ƒj tjƒ}|jƒ}|j|ƒ}tj|ƒs™dStj||ƒr¯dStj|ƒrÒtj|dƒdStj|dƒdSdS(NtTaskRestGeRen_chenxin_774045(Rt IPY_CUseEquipRRR[R\tOperControlManagertIsObjCanDoActionRtDef_Obj_ActState_ClientActt
oalUseItemtChItemtCheckUseItemSelf_PlayerRRRRiRR R tFBLogictDoFBForbidUseItemR
t IsEventItemRR(RYR.RbRt roleEquipPackRJR9((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyt__Func_PlayerUseEquipSelf‡s,   cCsùgtdƒD] }i^q }gtdƒD] }i^q,}gtdƒD] }i^qK}gtdƒD] }i^qj}gtdƒD] }i^q‰}gtdƒD] }i^q¨}gtdƒD] }i^qÇ}gtdƒD] }i^qæ}    gtdƒD] }i^q}
tj} |jƒj| ƒ} tjj| gƒ} tj    ddƒ}g}i}i}x›t
| j ƒƒD]‡}|t j krœqn|t jkr±qn| j|ƒ}|jƒrÒqntj|ƒsçqn|j|ƒxïtd|jƒƒD]Ø}|j|ƒ}|s)Pn|jƒ}|dkrEPn|jdƒ}|s`q
n|tjkr…tj|||ƒq
|tjkrªtj|||ƒq
|tjkrÏtj|||ƒq
tj|||ƒq
Wt||ƒ}x“td|dƒD]~}t|||ƒ}|r    tj ||||ƒ}t!||ƒ}|r‡d|||f}|j|dƒd||<q‡q    q    Wt"|||ƒ|| krÒt#|| ||ƒ}t$||||ƒnt%||||ƒt&|||
ƒt'j(|||    ƒqWt'j)|||    ƒt*|||ƒtj+|tj,|ƒtj+|tj-|ƒtj+|tj.|ƒtj+|tj/|ƒtj+|tj0|ƒtj+|tj1|ƒtj+|tj2|ƒtj+|tj3|    ƒtj+|tj4|
ƒdS(NitEquipSuitColorStariiis%s_%s_%s(5trangeRRRRRtPack_EquipPart_CanPlusStartgetR>t
GetFuncCfgtxrangetGetCountRRR'RR=R RtappendtGetEffectCounttGetEffectByIndext GetEffectIDtGetEffectValuetBaseEquipPlace_WeaponRtCalcAttrDict_TypetBaseEquipPlace_ArmortBaseEquipPlace_RelicstGetEquipPartSuiteGroupTypetGetEquipPartSuiteLVtOperate_EquipSuitComposetGetEquipCanDoMaxSuiteLVtmintCalcEquipStone_EffecttGetEquipPartStarLVByRanktCalcAttr_ItemPlustCalcAttr_LegendAttrtCalcAttr_OutOfPrintAttrtOperate_EquipWashtCalcAttr_EquipWashtCalcAttr_EquipWashSpectCalcEquipSuiteAttrtSetCalcAttrListValuet Def_CalcAttrFunc_EquipBaseWeapontDef_CalcAttrFunc_EquipBaseArmort Def_CalcAttrFunc_EquipBaseRelicstDef_CalcAttrFunc_EquiptDef_CalcAttrFunc_PlusBasetDef_CalcAttrFunc_StonetDef_CalcAttrFunc_SuittDef_CalcAttrFunc_Washt Def_CalcAttrFunc_EquipOutOfPrint(Rt_tbaseEquipAttr_WeapontbaseEquipAttr_ArmortbaseEquipAttr_RelicstallAttrListEquiptallAttrListPlusBasetallAttrListStonetallAttrListSuittallAttrListWashtallAttrListOutOfPrintEquiptpackTypet playerEquiptequipPartStarIndexListt maxSuiteTypetequipPlaceListt suitCntDicttlegendAttrDictRJR9RPt    curEffectteffectIDt effectValuet    groupTypet    suiteTypetsuitelvt
maxSuiteLVRQtsuiteKeytequipPartStarLV((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRT±s        $ c    CsÕgt|jtjƒƒD]}|jtj|ƒ^q}gt|jtjƒƒD]}|jtj|ƒ^qS}| s“t|ƒt|ƒkr—dSx7t|ƒD])\}}||}tj    |||ƒq¤WdS(N(
R~RBRtDef_IudetLegendAttrIDRFtDef_IudetLegendAttrValueRDRERRŠ(    RR9R©RµRPtlegendAttrIDListtlegendAttrValueListtattrIDtvalue((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyR•s77
c
Csgt|jtjƒƒD]}|jtj|ƒ^q}gt|jtjƒƒD]}|jtj|ƒ^qS}| s“t|ƒt|ƒkr—dS|jƒ}xft|ƒD]X\}}||}t    t
j ddƒƒ}    t j d||    fƒtj||    |ƒq°WdS(NtOutOfPrintValueis¼Ó¾ø°æÊôÐÔ: %s +%s(R~RBRtDef_IudetOutOfPrintAttrIDRFtDef_IudetOutOfPrintAttrValueRDtGetLVREtevalR>tGetFuncCompileCfgRRRSRRŠ(
RR9R®RPtOutOfPrintAttrIDListtOutOfPrintAttrValueListtlvRÃt maxOOPValueRÄ((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyR–6s77 
cCsägtdƒD] }i^q }tj}|jƒj|ƒ}xŠt|jƒƒD]v}|tjkrkqPn|tj    kr€qPn|j
|ƒ}|j ƒr¡qPnt j |ƒs¶qPnt|||ƒqPWtj|tj|ƒdS(Ni(R~RRRRR‚RƒRRR'RR=R RR–RR›RR¤(RR¥R®R¯R°RJR9((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytCalcEquips_OutOfPrintNs      c
Cs–|s
dSt|ƒ}|dkr&dStjd||ƒ}|sEdS|jƒ|jƒ}}x1t|ƒD]#\}}    tj|    |||ƒqkWdS(NtItemPlus(    tGetEquipPlusTypetNoneR>tGetIpyGameDatat GetAttrTypet GetAttrValueRERRŠ(
RR9t allAttrListR¾tplusTypetipyDatat attrTypeListt attrValueListRPRÃ((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyR”qs  c Csfd}d}|jtjƒ}tjdƒ\}}xÍ|D]Å}|d}    d}
|    dkre|}
n|    dkrz|}
n|d} |
| kr:t||dƒ|    dkrÑ| |krÑ|tjkrÑ| }n|    dkrò| |krò| }n|sÿPqÿq:q:W|jtjƒ} |dkrO|| krOtj    |d|j
ƒ|gƒn|j tj|ƒdS(NitEquipQualityAddAttriitGeRen_hgg_917284( t GetDictByKeyRR%t ReadChConfigtGetEvalChConfigt EquipAddBuffR&t(Def_PlayerKey_AttrActivatyRecordSuiteCntRRt GetPlayerNameR$( RtqualityEquipCntt suiteEquipCnttsuiteCntRecordtnotifySuiteCntt
notifyTypetisAllt addAttrListtconfInfot confQualitytcnttconfCnttlastSuiteCntRecord((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytAddEquipsQualityBuff„s6 
          
            c
Cs²t|tƒ}|jtjƒ}t||ƒ}tjdd|ƒ}|sOiS|jƒ}|j    ƒ}i}x>t
|ƒD]0\}}||}    |j |dƒ|    ||<qzW|S(NtItemPlusSumAttrt PlusCntNeedi( tGetTotalPlusLVRtNomalDictGetPropertyRtDef_PDict_EquipActiveStarLVR‘R>tInterpolationSearchRÔRÕRER€(
RttotalLVtactiveLVRØRÙRÚtattrDictRPRÃRÄ((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytCalcAllEquipAllPlusLVAttrªs  
c    CsÙgtdƒD] }i^q }t|ƒ}|jtjƒ}t||ƒ}|r¿tjdd|ƒ}|r¿|jƒ}|j    ƒ}x4t
|ƒD]#\}}t j ||||ƒq’Wq¿nt j |tj|ƒdS(NitRoleEquipStarst    StarsNeed(R~tGetTotalEquipStarsRóRtDef_PDict_EquipActiveStarsR‘R>RõRÔRÕRERRŠR›tDef_CalcAttrFunc_EquipAllStars(    RRPRÖt
totalStarst activeStarsRØRÙRÚRÃ((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRUÀs   !cCsFd}|jƒ}|jƒ}x!|jƒD]\}}|jdƒ\}}    }
t|
ƒ}
|dkrmdn|} tjdt|ƒt|    ƒt|
ƒ| ƒ} | s¬q+nx¸td|dƒD]£} d| }d| }d    | }t| |ƒƒ}||krÀt| |ƒƒ}t| |ƒƒ}x:t    |ƒD])\}}||}t
j |||ƒq3WqÀqÀW|||
||    g}|j t j||    |fƒ}|td
|
ƒ@s+|d krò|d krt
jdd |ƒ|td
|
ƒO}qn&t
jdd |ƒ|td
|
ƒO}t
j|t j||    |f|ƒq+q+WdS(NiR¥t2it EquipSuitAttris
GetCount%ds GetAttrType%dsGetAttrValue%dit1it
EquipSuit5(tGetJobtGetNametitemstsplitRR>RÓR~tgetattrRERRŠRóRtDef_PDict_EquipPartSuiteNotifytpowt WorldNotifytNomalDictSetProperty(RR´R©tDef_EquipSuitMaxCounttmyjobtnameR½RìR¹RºRQtjobRØRPt countKeyNametattrTypeKeyNametattrValueKeyNametneedCntRÙRÚtjRÃRÄt    paramListt notifyRecord((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRšÔs@   -
 
 
 
  *cCs8|jtjƒ}|tjkr4tj||ƒndS(N(RÝRR%R&t
EventShelltEventRespons_OrangeQualityCnt(RtorangeQualityCntRç((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytOnOrangeQualityCntChangeýscCstj||ƒdS(N(t
SkillShelltRefreshSkillBuffByEquip(RR9((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytCalcCurEquip_SkillBuffsc Csîtjƒ}ddddg}xÉtjƒD]»}tj|||ƒd}|dkr\q+n|j|ƒ}|sˆtjd|ƒq+nx[|D]S}|j|ƒ}    |    jƒ|    j    dƒ}
} |
r| rt
j |
| |ƒqqWq+WdS(Niiiiis#equip stone id:%s not in item table( RRt GetGameDatatOperate_EquipStonetGetAllEquipPlaceHoleIndextGetEquipIndexStoneIDAndIsBandtGetItemByTypeIDtErrLogR†R‡RˆRRŠ( RRJRÖtgameDatat effIndexListt    holeIndextcurGemIDtcurGemteffIndext curGemEffectR·R¸((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyR’s     icCsa|jƒj|dtƒ}|j|jƒƒ|j|jƒƒ|dkr]|j|ƒndS(Ni(t GetEquipBufftAddBuffRt
SetOwnerIDtGetIDt SetOwnerTypetGetGameObjTypetSetValue(Rt
addSkillIDRÄtcurBuff((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRà-s  cCs{tjƒj|ƒ}tjtj}||jtjƒ|krEdStjƒ}|j    |j
ƒƒ|j tj|ƒdS(N( RRR[R\RtTYPE_Player_Tick_Timet%TYPE_Player_Tick_RequestEquipShowHidet GetTickByTypeRtIPY_CRequestEquipShowHidetSetEquipShowSwitchtGetEquipShowSwitcht SetTickByType(RYR.RtintervalRb((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytRequestEquipShowHide@s cCs|jtj||fƒS(N(RóRtDef_PDict_EquipPartProficiency(RR¯RY((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytGetEquipPartProficiencySscCs$tj|tj||f|ƒdS(N(RR RR?(RR¯RYRÄ((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytSetEquipPartProficiencyWscCs2tj|ƒ}t|jtj||fƒ|ƒS(N(R tGetItemMaxStarLVR‘RóRtDef_PDict_EquipPartStarLV(RR¯RYR9t    maxStarLV((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyR“\scCs|jtj||fƒS(N(RóRRC(RR¯RY((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytGetEquipPartStarLVbscCs@t|||ƒ|krdStj|tj||f|ƒdS(N(RERR RRC(RR¯RYR9tstarLV((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytSetEquipPartStarLVgs cCs#tjƒ}|jƒg|_xÛtjjƒD]Ê\}}|dkrY||krYq/nx|D]•}|dkr“|dkr“||kr“q`q“ntjƒ}|jƒ||_    ||_
t |||ƒ|_ t |||ƒ|_|jj|ƒq`Wq/Wt|jƒ|_tj||ƒdS(N(tChPyNetSendPackttagMCEquipPartStarLVInfotCleartInfoListRRRRÒttagMCEquipPartStarLVtPackTypet
EquipIndexREtEquipPartStarLVR@t ProficiencyR„RDtCountt NetPackCommont SendFakePack(RR¯RYtePartStarLVPacktpTypet    indexListRPt ePartStarLV((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytNotifyEquipPartStarLVts( 
           
        cCs“d}|jƒjtjƒ}tjtj}x^|D]V}|rl|j|ƒ}| s5|jƒrlq5qlnt|tj|ƒ}||7}q5W|S(Ni(    RRRRRRRR=RE(RtisActivet totalPlusLVR8tequipPartIndexListRPR9t
partStarLV((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRò‘s     cCsnd}|jƒjtjƒ}xItjD]>}|j|ƒ}| s(|jƒrVq(n||jƒ7}q(W|S(Ni(    RRRRRtBaseEquipPlaceListRR=R(RttotalEquipStarsR8RPR9((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRü scCsE|jƒ}tjddƒ}|s5tjdƒdS|j|dƒS(NtStrengthenLevelLimitisûÓÐÇ¿»¯ÀàÐÍÓ³Éä±íiÿÿÿÿ(RR>R?RRR%R€(R9R7t plusTypeDict((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRÑ«s   cCsUtj|tj||f|ƒ|jƒjtjƒ}t|||j    |ƒƒdS(N(
RR RtDef_PDict_EquipPartSuiteLVRRRRRR(RRYRºRQR8((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytSetEquipPartSuiteLV´s cCs|jtj||fƒS(N(RóRRa(RRYRº((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRŽ»scCsRd}tjdƒ}x6|jƒD](\}}||kr"t|ƒ}Pq"q"W|S(NiR<(R>R?RR(RRJt findGroupTypeRLR¹RV((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyR¿s  cCstjƒ}|jƒg|_tjdƒ}x«|jƒD]}x”|D]Œ}|dkrl||krlqHntjƒ}|jƒ||_    t
||ƒ}t j |dt ƒ|_t|jƒ|_|jj|ƒqHWq;Wt|jƒ|_tj||ƒdS(NR<t ensure_ascii(RHttagMCEquipPartSuiteLVInfoRJRKR>R?R@RÒttagMCEquipPartSuiteLVRNtGetSuiteInfoByPlacetjsontdumpsRt SuiteLVInfoRDtLenR„RQRRRS(RRYtePartSuitePackRLRMRPtePartSuiteInfot    suiteInfo((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytNotifyEquipPartSuiteLVËs$ 
      
    c    Csži}t||ƒ}tjddƒ}xptd|dƒD][}t|||ƒ}|r;|r‰tj||||ƒ}t||ƒ}n|||<q;q;W|S(NR}ii(RR>RR~RŽRRR‘(    RR7R9RnR¹R²RºRQR¼((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRgásc    Csžt||ƒ}g}tjddƒ}xptd|dƒD][}t|||ƒ}|r‰|r‰tj||||ƒ}t||ƒ}n|j|ƒq;W|S(NR}ii(    RR>RR‚RŽRRR‘R„(    RR7R9R¹RNR²RºRQR¼((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRAîs cCs­|s
gS|jƒ}g}|jƒjtjƒ}xrtd|jƒƒD][}|tjkreqJn|j    |ƒ}|j
ƒr†qJn|j |j ƒ|ddgƒqJW|S(Ni( t GetPlayerIDRRRRR‚RƒRRRR=R„R(RtplayerIDtplayerEquipListR°RJR9((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytGetPlayerEquipViewþs  #c    Cs÷tjƒj|ƒ}|j}|j}|dkr?tj}n|dkrWtj}ndS|j|ƒ}||kr”tj    d|||fƒdSt
j |||ƒt ||ƒ|dkrÐt j|ƒn
t|ƒt
j
|ƒ}|jƒdS(NiisF    È«ÉíÊôÐÔ¼¤»î ¸ÃÊýÁ¿ÒѼ¤»î¹ý£¡ activeType=%s,activeCnt=%s,curCnt=%s(RRR[R\tTypetCntRRôRýRótLogRR tSyncAllEquipAttrActiveInfotPlayerMagicWeapontCalcMagicWeaponSoulAttrR*R+(    RYt
clientDataR.Rt
activeTypet    activeCnttkeytcurCntR:((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytOnActiveAllEquipAttr s(               
 
cCsátjƒ}g|_x£ddgD]•}|dkrF||krFq"n|dkr^tj}n|dkrvtj}ndS|j|ƒ}tjƒ}||_||_    |jj
|ƒq"Wt |jƒ|_ t j||ƒdS(Niiiÿÿÿÿ(RHttagMCAllEquipAttrActiveInfot
ActiveInfoRRôRýRóttagMCEquipActiveInfoRtRuR„RDRQRRRS(RR{tpackDatataTypeR}R~t
activeInfo((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRw<s$                  (DRRRR
RRRRvR RxRÞRrR—Rt
PyMapTableRHRRRR>R(R!RRxR RhR    R;RRR*RZRXReRgRfR|RTR•R–RÏRÒR”RïRùRURšRRR’RàR>R@RAR“RERGRXRòRüRÑRbRŽRRoRgRARsRRw(((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyt<module>s‚                                L    ! a            '            
    7    *    n         #     &            )                                                                           "