cehua_wcy
2018-08-27 c6f03d29b8c78ea2298276ddb808bd2289baa9b3
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
126
ó[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 ƒ} |j ||ƒ} | dkr¸tS|jƒjtjƒ}|j| ƒ}t|||ƒ|jtjƒdkr)|jtjttjƒƒƒn| tjkrW|j|| ||    ||
ƒn| sptj|| ƒn|tjkrƒtS|j tj!tj"ƒ|tj#kr¸t$j%|ƒn
t&|ƒt'j'|ƒ}|j(ƒtS(Niiÿÿÿÿ()t ItemControlertPlayerItemControlert
ItemCommontCheckItemCanUseRtCheckItemCanUseByExpireTimet GetEquipPlacet ShareDefinet RoleEquipTypet GetItemTypeIDt GetUserDatatGetItemQualitytGetEndureReduceTypet    EquipItemtGetItemManagertGetPackt IPY_GameWorldtrptEquiptGetAttSetEquipItemSuiteLVInfot GetUserAttrtDef_IudetCreateTimet SetUserAttrtintttimeRtDef_SyncEquipStateByIndext ChangeEquipt
EventShelltEventRespons_EquipByPlacetEquipItemNoRefreshStateRtSetDictt Def_PlayerKey_AttrActivatyNotifytDef_AttrActivatyNotify_EquiptretWingt
PlayerWingt CalcWingAttrtRefreshPlayerEquipAttributeRtRefreshPlayerAttrState(RtcurItemtpackEquipIndextticktplayerItemControltchangeItemEquipPlacet changeItemIDtchangeItemStarLVtchangeItemStoneCnttchangeItemHoleCnttchangeItemUseDatat itemQualitytendureReduceTypet
equipPlacet    equipPacktcurEquipt playControl((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytDoPlayerEquipItem?sH      "    
 
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(RVt GetPsycoFunct__Func_PlayerEquipItem(tindexR1((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytPlayerEquipItemscCs©tjƒj|ƒ}tjƒ}|jƒ}|jƒ}t|ƒsIdS|jƒj    tj
ƒ}|j |ƒ}t ||||ƒr‰dS|j tj
|tjdƒdS(Ni(RVtGetPlayerManagertGetPlayerByIndexRtIPY_CEquipItemt GetItemIndextGetRoleEquipTypeR    RRtrptItemRR?tNotify_ItemPutFailR(R]R1RtsendPackt packItemIndexR0trolePackR/((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyR\s     cCsdS(N((R]R1((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytOneKeyChangeEquip?scCstjtƒ||ƒdS(N(RVR[t__Func_PlayerUnEquip(R]R1((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyt PlayerUnEquipHsc
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_CUnEquipItemRVR_R`R    t GetEquipIndexR
R t UnEquipItemt GetPackIndexRR&tSync_UnEquipItemRR*R+R,R-RR.R"(
R]R1RfRRNR2tresulttequipIDR;R>((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRjRs,   
 
 
 
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_CUseEquipRVR_R`tOperControlManagertIsObjCanDoActionRtDef_Obj_ActState_ClientActt
oalUseItemtChItemtCheckUseItemSelf_PlayerRRRRmRR R tFBLogictDoFBForbidUseItemR
t IsEventItemRR(R]R1RfRt roleEquipPackRNR=((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_CanPlusStartgetRBt
GetFuncCfgtxrangetGetCountRRR*RRAR 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 suitCntDicttlegendAttrDictRNR=RTt    curEffectteffectIDt effectValuet    groupTypet    suiteTypetsuitelvt
maxSuiteLVRUtsuiteKeytequipPartStarLV((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRX³s        $ c    CsÕgt|jtjƒƒD]}|jtj|ƒ^q}gt|jtjƒƒD]}|jtj|ƒ^qS}| s“t|ƒt|ƒkr—dSx7t|ƒD])\}}||}tj    |||ƒq¤WdS(N(
R‚RFRtDef_IudetLegendAttrIDRJtDef_IudetLegendAttrValueRHRIRRŽ(    RR=R­R¹RTtlegendAttrIDListtlegendAttrValueListtattrIDtvalue((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‚RFRtDef_IudetOutOfPrintAttrIDRJtDef_IudetOutOfPrintAttrValueRHtGetLVRItevalRBtGetFuncCompileCfgRVRWRRŽ(
RR=R²RTtOutOfPrintAttrIDListtOutOfPrintAttrValueListtlvRÇt maxOOPValueRÈ((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRš8s77 
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*RRAR RRšRRŸRR¨(RR©R²R³R´RNR=((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytCalcEquips_OutOfPrintPs      c
Cs–|s
dSt|ƒ}|dkr&dStjd||ƒ}|sEdS|jƒ|jƒ}}x1t|ƒD]#\}}    tj|    |||ƒqkWdS(NtItemPlus(    tGetEquipPlusTypetNoneRBtGetIpyGameDatat GetAttrTypet GetAttrValueRIRRŽ(
RR=t allAttrListRÂtplusTypetipyDatat attrTypeListt attrValueListRTRÇ((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyR˜ss  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•RBtInterpolationSearchRØRÙRIR„(
RttotalLVtactiveLVRÜRÝRÞtattrDictRTRÇ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•RBRùRØRÙRIRRŽRŸtDef_CalcAttrFunc_EquipAllStars(    RRTRÚt
totalStarst activeStarsRÜRÝRÞRÇ((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRYÂ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(tGetJobtGetNametitemstsplitR RBR×R‚tgetattrRIRRŽR÷RtDef_PDict_EquipPartSuiteNotifytpowt WorldNotifytNomalDictSetProperty(RR¸R­tDef_EquipSuitMaxCounttmyjobtnameRÁRðR½R¾RUtjobRÜRTt 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)R$tEventRespons_OrangeQualityCnt(RtorangeQualityCntRë((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytOnOrangeQualityCntChangeÿscCstj||ƒdS(N(t
SkillShelltRefreshSkillBuffByEquip(RR=((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytCalcCurEquip_SkillBuff
sc 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( RVt GetGameDatatOperate_EquipStonetGetAllEquipPlaceHoleIndextGetEquipIndexStoneIDAndIsBandtGetItemByTypeIDtErrLogRŠR‹RŒRRŽ( RRNRÚ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( RVR_R`RtTYPE_Player_Tick_Timet%TYPE_Player_Tick_RequestEquipShowHidet GetTickByTypeRtIPY_CRequestEquipShowHidetSetEquipShowSwitchtGetEquipShowSwitcht SetTickByType(R]R1RtintervalRf((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytRequestEquipShowHideBs cCs|jtj||fƒS(N(R÷RtDef_PDict_EquipPartProficiency(RR³R]((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytGetEquipPartProficiencyUscCs$tj|tj||f|ƒdS(N(RRRRB(RR³R]RÈ((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytSetEquipPartProficiencyYscCs2tj|ƒ}t|jtj||fƒ|ƒS(N(R tGetItemMaxStarLVR•R÷RtDef_PDict_EquipPartStarLV(RR³R]R=t    maxStarLV((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyR—^scCs|jtj||fƒS(N(R÷RRF(RR³R]((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytGetEquipPartStarLVdscCs@t|||ƒ|krdStj|tj||f|ƒdS(N(RHRRRRF(RR³R]R=tstarLV((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytSetEquipPartStarLVis 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(tChPyNetSendPackttagMCEquipPartStarLVInfotCleartInfoListRRƒR RÖttagMCEquipPartStarLVtPackTypet
EquipIndexRHtEquipPartStarLVRCt ProficiencyRˆRHtCountt NetPackCommont SendFakePack(RR³R]tePartStarLVPacktpTypet    indexListRTt ePartStarLV((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytNotifyEquipPartStarLVvs( 
           
        cCs“d}|jƒjtjƒ}tjtj}x^|D]V}|rl|j|ƒ}| s5|jƒrlq5qlnt|tj|ƒ}||7}q5W|S(Ni(    RRRRRRƒRRARH(RtisActivet totalPlusLVR<tequipPartIndexListRTR=t
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(    RRRRRtBaseEquipPlaceListRRAR(RttotalEquipStarsR<RTR=((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyR¢scCsE|jƒ}tjddƒ}|s5tjdƒdS|j|dƒS(NtStrengthenLevelLimitisûÓÐÇ¿»¯ÀàÐÍÓ³Éä±íiÿÿÿÿ(RRBRCRVR(R„(R=R;t plusTypeDict((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRÕ­s   cCsUtj|tj||f|ƒ|jƒjtjƒ}t|||j    |ƒƒdS(N(
RRRtDef_PDict_EquipPartSuiteLVRRRRRR(RR]R¾RUR<((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytSetEquipPartSuiteLV¶s cCs|jtj||fƒS(N(R÷RRd(RR]R¾((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyR’½scCsRd}tjdƒ}x6|jƒD](\}}||kr"t|ƒ}Pq"q"W|S(NiR@(RBRCR R (RRNt findGroupTypeRPR½RY((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(RKttagMCEquipPartSuiteLVInfoRMRNRBRCRDRÖttagMCEquipPartSuiteLVRQtGetSuiteInfoByPlacetjsontdumpsRt SuiteLVInfoRHtLenRˆRTRURV(RR]tePartSuitePackRPRQRTtePartSuiteInfot    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‘RBR…R‚R’R“R”R•(    RR;R=RqR½R¶R¾RURÀ((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRjãsc    Csžt||ƒ}g}tjddƒ}xptd|dƒD][}t|||ƒ}|r‰|r‰tj||||ƒ}t||ƒ}n|j|ƒq;W|S(NRii(    R‘RBR…R†R’R“R”R•Rˆ(    RR;R=R½RRR¶R¾RURÀ((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyREð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‡RRRRARˆR(RtplayerIDtplayerEquipListR´RNR=((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pytGetPlayerEquipViews  #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(RVR_R`tTypetCntRRøRR÷tLogRRtSyncAllEquipAttrActiveInfotPlayerMagicWeapontCalcMagicWeaponSoulAttrR-R.(    R]t
clientDataR1Rt
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ÿÿÿÿ(RKttagMCAllEquipAttrActiveInfot
ActiveInfoRRøRR÷ttagMCEquipActiveInfoRwRxRˆRHRTRURV(RR~tpackDatataTypeR€Rt
activeInfo((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyRz>s$                  (DRRVR
R RRRzR R|RâRvR›Rt
PyMapTableRKRUR$RBR+R$R“R{R!RkR    R?RRR-R^R\RiRkRjR€RXR™RšRÓRÖR˜RóRýRYRžRR"R–RäRARCRDR—RHRJR[RöRRÕReR’R‘RrRjRERvR‚Rz(((sU.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChEquip.pyt<module>s‚                                N    ! a            '            
    7    *    n         #     &            )                                                                           "