cehua_LC
2018-09-21 c65ec6dabe61d84bac2c2e7f5e848c76f35f1d6e
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
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
:q [c@s€ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZiaiad„Zd„Zd„Zdd„Zed„Zd„Zdd    „Zd
„Zdd „Z d „Z!d „Z"d„Z#d„Z$ed„Z%d„Z&e'd„Z(d„Z)d„Z*d„Z+dd„Z,d„Z-d„Z.gd„Z/d„Z0d„Z1dd„Z2d„Z3d„Z4e'd„Z5d „Z6de'd!„Z7d"„Z8d#„Z9d$d%„Z:d&„Z;ed'„Z<d(„Z=d)„Z>dS(*iÿÿÿÿNcCs9t|tƒt|ƒt|ƒt|ƒt|ƒdS(N(tNotifyMagicWeapontTruetSycn_MagicWeaponRefineLVtSyncXBXZAwardRecordtSycn_MagicWeaponLVtSycn_MWPrivilegeData(t    curPlayer((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytPlayerMagicWeaponLogin,s  
 
 
 
cCsBx+tjD] }tj|tj|dƒq
Wt|dtƒdS(NitisForce(tChConfigtMWPrivilegeListt PlayerControltNomalDictSetPropertytDef_PDict_MWSoulGotItemStateRR(Rt    privilege((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytOnDay4scCstS(N(R(R((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytDoMagicWeaponOpen;sicCsM|r&|jtj|ƒ}||kStj|tj|dt|dgƒS(Nid(tNomalDictGetPropertyR    tDef_PDict_MagicWeaponLVt    GameWorldtGetDictValueByBittDef_PDict_MagicWeaponIsActiveR(RtmwIDtlvtcurMWLV((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytGetIsActiveMagicWeaponDs
cCs.tj|tj|d|t|dgƒdS(Nid(RtSetDictValueByBitR    RR(RRtisActive((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytSetMagicWeaponActiveStateNs*c
Csøt|ƒ}|dkrdSt||ƒ}|r5dSt|ƒ}t|ƒ}|jtj|ƒ}||krsdSt||dƒ}t    j
|tj||ƒt j |||||ƒt |ƒ}|jƒ}    ||krô|     rôt||ƒndS(Ni(tGetMWIDBySuccIDtNoneRtGetNeedSuccIDByMWIDtlenRR    tDef_PDict_MagicWeaponExptminR R tDataRecordPacktDR_MagicWeaponExpt GetWMIpyDatat GetNeedItemt
DoActiveMW(
RtsuccIDRRt
succIDListtneedExptcurExptnewExptipyDatat needItemDict((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytActiveMagicWeaponSs&       cCst|ƒsdStj|tj||ƒ|dkr×t||ƒt|ƒ|tjdƒkr„tj    |d|j
ƒ|gƒn@tjddiƒj |dƒ}tj d||j
ƒ|gƒt j||ƒn t||ƒt j|||ƒtj|tjd||gƒtjd||ƒ}|s5dS|jƒ}x*|D]"}t||tjƒjƒƒqHW|jƒ}|r|\}}    }
tj|tjdƒ} d| krÕtj d|j!ƒg|gƒqt"j#|||    |
tjgt$dt$dd    t%i|d
6gƒn|j&ƒ} | |krBtj'd |ƒn| rXt(|| ƒn|j)ƒ} | r}t*|| t%ƒnt+|ƒtj|ƒj,ƒtj-d ||fƒtj.d dƒ}||krßt/j0|ƒnt1j2|ƒt3j4|||ƒt$S(NitUnblockTreasureiit
TreasureUptTreasureWakeUpt showSysInfoteventtMWAwardRs4    TreasureUp.txt ÅäÖÃÒì³£ ²»¿É¼¤»î×ÔÉí·¨±¦ mwID=%ss    ¼¤»î·¨±¦ mwID=%s,mwLV=%st VIPAddAtkEXP(5R%R R R    RRRt IpyGameDataPYtGetFuncEvalCfgt
NotifyCodetGetNametgett WorldNotifyt
EventShellt EventRespons_OnActiveMagicWeaponRtEventRespons_MagicWeaponLVt PlayerSuccesstDoAddSuccessProgresst ShareDefinetSuccType_GetMagicWeapontGetIpyGameDatatGetUnLockSkillt    GiveSkillRt GetGameWorldtGetTickt GetItemAwardt
ItemCommontGetItemPackSpacet IPY_GameWorldtrptItemt SendMailByKeytGetIDt ItemControlertGivePlayerItemRtFalset GetActiveMWIDtErrLogR'tGetActiveSoulIDt__DoActiveMWSoultCalcMagicWeaponAttrtRefreshPlayerAttrStatetDebugLogt
GetFuncCfgt    PlayerViptRefreshVIPAttrt GameFuncCommtDoFuncOpenLogicR#tDR_MagicWeaponActive(RRtmwLVtsysMarkt    upIpyDatat skillIDListtskillIDt    itemAwardtitemIDtitemCnttisBindt    packSpacet
activeMWIDt activeSoulIDt vipAddAtkMWID((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyR'osZ   
"!      "/   
  cCstjd|ƒS(NtTreasure(R7RD(R((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyR%³scCs5|st|ƒ}|sgSnt|jƒƒ}|S(N(R%tlistt    GetSuccID(RR-R)((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyRµs  cCs®ts¡tjƒ}xŒt|jƒƒD]u}|j|ƒ}|jƒ}t||ƒ}xB|D]:}|tkrŒtj    d|t|fƒn|t|<q\Wq%Wntj
|ƒS(Ns'    ´æÔÚÏàͬ³É¾Í¼¤»îÌõ¼þµÄ·¨±¦ %s ºÍ %s( tg_succInfoDictR7tIPY_DatatxrangetGetTreasureCounttGetTreasureByIndexRORRRTR;(R(t
ipyDataMgrtiR-RR)tsuccid((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyR¾s    cCsjd}tjƒ}xQt|jƒƒD]=}|j|ƒ}|jƒ}t||ƒr%|d7}q%q%W|S(Nii(R7RqRrRsRtROR(Rt    activeCntRuRvR-t magicWeaponID((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytGetMWActiveCntTotalÍs  cCsltjdi|d6ttƒ}|s)dSd}x6|D].}t||jƒƒ}|r6|d7}q6q6W|S(NRmt TreasureTypeii(R7tGetIpyGameDataByConditionRRRRRO(RtmwTypetdataListRxtipydataR((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytGetMWActiveCntByTypeØs cCs}tsXiatjƒ}x=t|jƒƒD]&}|j|ƒ}|jƒ}|jƒ}|jƒ}d}xä|D]Ü}t    j
ƒj |dƒ}    |    dkr²t    j d|ƒqqn||    jƒkrÍd}
n
|
d7}
|    jƒ}||
} |    jƒ} | sqqn|    jƒ} |    jƒ}| tkr6it| <n||| gt| | <qqWq+Wntd|jƒƒ}tj|iƒS(Niis.GetPotentialsSkillInfo() hasn't find skill(%s)i(tg_potentialsSkillDictR7RqRrRsRtROt GetPotentialst GetSkillPowerRt GetGameDatatFindSkillByTypeRRYt
GetUseTypetGetLearnSkillReqtGetLearnSkillLVtpowtGetJobR;(RRuRvR-RRct addPowerListtlastSkillUseTypet
curSkillIDt    skillDatatindextaddPowert
preSkillIDt skillUseTypet
preSkilllvtcurskillUseType((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytGetPotentialsSkillInfoäs:          
 
     "cCsltjƒj|dƒ}|dkr9tjd|ƒdStj||ƒsOdStj||ƒsvtjd|ƒdS|j    ƒ}|j
|ƒr¦tjd|ƒdStjd|ƒ|j |ƒ|rãt j |d|gƒntj||dƒ|jƒtjkrOtjƒj||ƒtj|ƒrOt j |ƒ}|jƒqOnt j |ƒj|dƒdS(Nis#__GiveSkill() hasn't find skill(%s)s4__GiveSkill() learn skill(%s) condition isn't enoughs$__GiveSkill() have learned skill(%s)s#    ¼¤»î·¨±¦ ¼¤»î¼¼ÄÜ skillResID=%st GetSkillInfoi(RR„R…RRYt SkillCommont CheckSkillJobt
SkillShelltCheckLearnSkillConditiontGetSkillManagertFindSkillBySkillTypeIDtLVUpSkillBySkillTypeIDR R9R#tDR_LearnORUPSkillt GetFuncTypeR    t Def_SkillFuncType_FbPassiveSkilltPassiveBuffEffMngtGetPassiveEffManagertRegistPassiveEfft isPassiveAttrRXtRefreshSkillFightPowerEx(Rt
skillResIDttickt    isShowSysRŽt skillManagert
curControl((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyRFs2   c' Cstjƒj|ƒ}|j}|j}d}tjdƒ}x6|jƒD](\}}    ||    krIt    |ƒ}PqIqIW|dkr…dS|j
ƒ}
|
j |ƒ} | dkr»d} d} n>| j ƒ} | j ƒ} | | jƒkrùtj|dƒdS| d}| s|n    | jƒ}tjƒj||ƒ}|sTtjd||fƒdStj||ƒsjdStjd||ƒ}|s‰dS|jƒ}tj|ƒ|krÎtjd||f|jƒƒdS|jƒ}g}|tjkrÓ|dkrÓ|jƒ}|jƒ}|j ƒ}|dt!|ƒkrJtj"d|ƒdS||d||d||d}}}|j#ƒj$t%j&ƒ}t'j(|||ƒ\}}|sÓtjd    |jƒ|fƒdSn|r t'j)||||t*t+j,i|d
6| d 6ƒntj-||ƒs"dStj.|ƒs_tjd ||fƒ|j/tj0dƒdStj|ƒ}|
j1|ƒt*}tjd ƒ}t2|ƒ|kr‡|t2|ƒ\}} ||kr‡|
j | ƒs„tjƒj| dƒ}!|!r|
j1| ƒtjd||| fƒ|j3| dƒt4j5ƒj6|| ƒt7j8|!ƒrVt9}ntj:dd|j;ƒ||| gƒqq„q‡nt*}"t<|ƒ}#||#kr|#|d \}$}%||$krtj:dd|j;ƒ|||%gƒt=|ƒt9}"qn|jƒ}&||&kr=tj:dd|j;ƒ||&gƒnt7j8|ƒsX|sX|"re|j>ƒn|j3|jƒ| ƒt4j5ƒj6||jƒƒtjd||fƒt?j@|||ƒ|j/tj0dƒtA|t+jBdt9ƒtCjD|tjEd|gƒtFjG|ƒdS(Nt SPSkillTypeitUseMagicLost16is¼¼ÄÜÉý¼¶Åä±í´íÎó ID=%s lv=%st TreasureSkills2·¨±¦sp²»×㣬ÎÞ·¨Éý¼¶¼¼ÄÜ£¡needSP=%s,skillTypeID=%ss·¨±¦¼¼ÄÜÉý¼¶£¬costIndex=%s ´íÎós.Éý¼¶·¨±¦¼¼ÄÜ() up skill(%s) item(%s) no enought SkillTypeIDtSkillLVs0·¨±¦¼¼ÄÜÉý¼¶£¬curSkillID=%s, maxRate=%s Éý¼¶Ê§°ÜtPotentialSkillLearns=    ·¨±¦¼¼ÄÜÉý¼¶ skillTypeID=%s, upSkillLv=%s, ´¥·¢Ñ§Ï°¼¼ÄÜ%stSkillPotential2itSkillPotential1tSkillPotential3s-    ·¨±¦¼¼ÄÜÉý¼¶ skillTypeID=%s, upSkillLv=%s(HRtGetPlayerManagertGetPlayerByIndexR®t    CostIndexRR7R8titemstintR›Rœt
GetSkillLVt GetFightPowert GetSkillMaxLVR R9t
GetSkillIDR„R…RYR™RšRDt GetNeedPointt    GetZhenQit GetPlayerIDt GetInitRateRBtDef_MaxRateValuet GetNeedItemIDtGetNeedItemCntt
GetMaxRateR tLogtGetItemManagertGetPackRLRMRJtGetItem_FromPack_ByIDt
ReduceItemRRR    tItemDel_MagicWeapontPlayerLostZhenQit    CanHappentSync_MakeItemAnswertDef_mitMagicWeaponSkillUpt LVUPSkillByIDtstrR¥R¡R¢R£R—R¤RR<R:R•RWRXR#RžtSetMWPrivilegeDatatMWPrivilege_MWSkillUpR@RAtSuccType_MWSkillUpR=tEventRespons_MWSkillUp('Rt
clientDataR§Rt skillTypeIDt    costIndext curSkillTypetSPSkillTypeDictt    skillTypeRcR©tcurSkillt
curSkillLVtbeforeFightPowert    upSkillLvRtupSkillR-tneedSPtinitRatet itemIndexListtneedItemIDListtneedItemCntListt maxRateListt
needItemIDt needItemCnttitemPacktisEnoughRªtnewSkillIsPassivetpotentialSkillLearnDictt
needSkllLVt
newSkillIDtnewSkillthasUnlockSkillt nextSkillDictt needSkilllvt nextSkillIDtmaxLV((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytOnMagicWeaponSkillUp7sÈ                   
      ,           1   %
   %  cCsÆtjƒ}|jƒg|_tjƒ}x`t|jƒƒD]L}|j|ƒ}|j    ƒ}t
||ƒ}|szq>n|jj |ƒq>Wt |jƒ|_ |j s¯|rÂtj||ƒndS(N(tChPyNetSendPackttagMCMagicWeaponDatatCleart MagicWeaponIDR7RqRrRsRtRORtappendR tNumt NetPackCommont SendFakePack(RtisLogintpackDataRuRvR-RyR((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyRÁs 
      cCstjd||ƒS(NtTreasureRefine(R7tGetIpyGameDataNotLog(t
treasureIDt
treasureLV((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytGetMWRefineIpyData×sc"Cs gtdƒD] }i^q }gtdƒD] }i^q,}gtdƒD] }i^qK}tjddƒ}tjƒ}xít|jƒƒD]Ù}|j|ƒ}|jƒ}    t||    ƒ}
|
sÊqŽni} |j    ƒ} |j
t j |    ƒ} xRt| dƒD]@}tj d|    |ƒ}|r|jƒ}tj| |ƒqqW|    |kr¾|j
t jƒ}i}x=tjddiƒjƒD] \}}|||t|ƒ<q‡Wtj| |ƒnx¦| jƒD]˜\}}| dkrùtj|||ƒqË| dkrtj|||ƒqË| dkr=tj|||ƒqËtjd|    | ||f|jƒƒqËWqŽWtj|t j|ƒtj|t j|ƒtj|t j|ƒt|ƒ}i}x¦|jƒD]˜\}}|\}}}|jƒ}|j|ƒ}|sqÌn|j ƒ} | |kr,qÌnt j!j"|j#ƒt$j%ƒ}!|j"|!dƒ|||!<qÌWx1|jƒD]#\}!}|j&t j'|!|ƒquWdS(    Nit MWSignDayAttriiR1is@δ֪·¨±¦ÊôÐÔ, magicWeaponID=%s,treasureType=%s,effID=%s,value=%si((trangeR7RZRqRrRsRtRORtGetTreasureTypeRR    RRt
GetAddAttrRt AddDictValuetDef_PDict_TotalSignNumR8R·R¸R tCalcAttrDict_TypeRTR¿tSetCalcAttrListValuetDef_CalcAttrFunc_MagicWeapon1tDef_CalcAttrFunc_MagicWeapon2tDef_CalcAttrFunc_MagicWeapon3R•R›RœR¹tDef_SkillFuncType_MFPTypeR;RŸRBtDef_MFPType_RoletSetDicttDef_PlayerKey_MFPEx("Rt_t allAttrList1t allAttrList2t allAttrList3t signDayMWIDRuRvttreasureIpyDataRyRt allAttrDictt treasureTypeRRRbtattrDictt totalSignNumtaddAttrtattidtattnumteffIDtvalueRðt addPowerDictRdtinfoRñRòRR©RÛRÜtmfpType((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyRWÛsj         (       %    cCs||j}|j}tjƒj|ƒ}|jƒ}tjdƒ}||krftjd||ƒdSt    ||ƒ}|s“tjd||ƒdS|j
t j |ƒd}    t ||    ƒ}
|
sàtjd||    f|ƒdS|j
t jƒ} | |
jƒkr.tjd||    | |
jƒf|ƒdS|
jƒ} xB|D]:} |j
t j | ƒ| krAtjd| |ƒdSqAW|
jƒ}d}|rtjdd    ƒ}||krÍtjd
||ƒdStjƒj|ƒ}|sìdS|jdƒjdƒ}d||<n|jƒjtjƒ}tj||ƒ\}}|rntjd ||    |||f|ƒdStj|||t jƒ|
jƒ|}tj |ƒrEt!j"|t j ||    ƒ|
j#ƒ}|råt$|||ƒnt%|ƒt!j!|ƒj&ƒt'||ƒ|j(t)j*t j+ƒtjd ||    |f|ƒn3|j(t)j*t j,ƒtjd ||    |f|ƒdS(NtTreasureUpRateItems¸Ã·¨±¦²»ÄÜÖýÁ¶-·¨±¦ID:%ss·¨±¦Î´¼¤»î£¬²»ÄÜÖýÁ¶-·¨±¦ID:%sis/·¨±¦ÒÑÂú¼¶£¬²»ÄÜÖýÁ¶-·¨±¦ID:%s, nextRefineLv=%ssUÁ¶µ¤Â¯µÈ¼¶²»×㣬ÎÞ·¨ÖýÁ¶·¨±¦-·¨±¦ID:%s, nextRefineLv=%s,alchemyLV=%s,NeedAlchemyLV=%ss:ËùÓз¨±¦Ðè´ïµ½¶ÔÓ¦µÈ¼¶ºó²Å¿É¼ÌÐøÖýÁ¶! needAllTreasureLV=%siis+¸ÃÎïÆ·IDÎÞ·¨ÓÃÓÚÌáÉý·¨±¦ÖýÁ¶¸ÅÂÊ£¡itemID=%ss[·¨±¦ÖýÁ¶²ÄÁϲ»×㣡·¨±¦ID:%s, nextRefineLv=%s,needItemDict=%s,lackItemDict=%s,hasItemDict=%ss5·¨±¦ÖýÁ¶³É¹¦! ·¨±¦ID:%s, upRefineLv=%s,successRate=%ss7·¨±¦ÖýÁ¶Ê§°Ü! ·¨±¦ID:%s, nextRefineLv=%s,successRate=%s(-tMWIDt
MaterialIDRR´RµR¿R7R8RYRRR    tDef_PDict_MagicWeaponRefineLVRtDef_PDict_AlchemyLVtGetNeedAlchemyLVtGetNeedAllTreasureLVt GetMaterialRTR„tGetItemByTypeIDtGetEffectByIndextGetEffectValueRÆRÇRLRMRJtGetCostItemIndexListt DelCostItemRÊtGetSuccessRateRÌR R t GetOpenSkillRFRWRXRRÍRBtDef_mitMWUpLeveltDef_ComposeState_SucesstDef_ComposeState_Fail(Rt
clientPackR§Rt
materialIDRtplayerIDtallTreasureItemIDListRt nextRefineLvtmwRefineIpyDatat    alchemyLVtneedAllTreasureLVttIDR.t    fujiaRatettreasureUpRateItemt rateItemDataRèt lackItemDictt delInfoDictt successRateRd((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytPlayerMWRefine-sx                        
  cCsÏ|dkrtjdƒ}n    |g}tjƒ}g|_x^|D]V}|jtj|ƒ}|skqCntjƒ}||_    ||_
|jj |ƒqCWt |jƒ|_ |j rËtj||ƒndS(NiÿÿÿÿR%(R7R8RõttagMCMagicWeaponMsgtMWInfoRR    R(ttagMCMagicWeaponLVR&tMWLVRùR tCountRûRü(RRt needCalListtsendPackt
mwRefineLvtpack((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyRxs"                        cCs›tjƒj|ƒ}|j}t||ƒ}|rHtjd|ƒdSt|ƒ}|jtj    |ƒ}|t
|ƒkrštjd|||fƒdSt |ƒ}|j ƒ}    |    r.|j ƒjtjƒ}
tj|    |
tƒ\} } | rtjd||    | | fƒdStj||
| tjƒn\tjdi|d6ttƒ} | sWdSx0| D](}tj|tj|jƒƒs^dSq^Wt||ƒdS(Ns    ¸Ã·¨±¦ÒÑ¿ªÆô£¡ mwID=%ss=    ¸Ã·¨±¦ËùÐè³É¾ÍδÍê³É£¡ mwID=%s£¬ curExp=%s, succIDList=%ssM    ¿ªÆô·¨±¦ ²ÄÁϲ»×㣡mwID=%s,needItemDict=%s,lackItemDict=%s,delInfoDict=%stXBXZR&(RR´RµR&RRYRRR    R!R R%R&RÆRÇRLRMRJR0RRR1RÊR7R|RRtDef_PDict_XBXZAwardRecordROR'(RRÕR§RRRR)R+R-R.RèRCRDt ipyDataList((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytOnOpenMagicWeapon”s:             cCstjd|ƒ}|sdStj|tj|ƒrItjd|ƒdS|jƒ}|jƒ}d}|dkr…t    j
|ƒ}n6|dkr¯|j ƒj t jƒ}tjdƒ}xt|jƒƒD]Ý}|j|ƒ}    |    jƒròqËntj|    ƒ}
|    jƒ} |    jƒ} |    jƒ} xv|D]n\}}}}||kr`| |kr`d}Pn||kr,|
|kr,| |kr,| |kr,d}Pq,q,W|rËPqËqËWn |dkrÍtj|ƒ}nî|dkr·i}|j ƒj t jƒ}xœt|jƒƒD]ˆ}|j|ƒ}    |    jƒr1q
ntj|||    ƒ}xI|D]A\}}|j|dƒ|krM|j|dƒd||<qMqMWq
W|r®t|jƒƒnd}ndS||jƒkrñtjd    |||jƒfƒdS|j ƒ}|rGtj!|t j"ƒ}t#|ƒ}||krGt    j$|d
ƒdSntj%|tj|dƒ|r¢x9|D].\} }t&j'|| |dt j"gt(ƒqmWnx-|j)ƒD]\}}t    j*|||ƒq¯Wt+||gƒt,j-|t.j/d|j0ƒgƒtjd ||fƒdS( NRPs"    Ïɱ¦Ñ°Ö÷Áì½± ÒÑÁìÈ¡£¡ index=%siiitSamboSpecialUnlockiis6    Ïɱ¦Ñ°Ö÷Áì½± , Ìõ¼þ²»Âú×ã ID=%s, cnt=%s,NeedCnt=%stGeRen_chenxin_998371s!    Ïɱ¦Ñ°Ö÷Áì½±OK, ID=%s, cnt=%s(1R7RDRRR    RQRYtGetTypet GetConditionR t
GetFuncDefRÆRÇRLtrptEquipR8RrtGetCounttGetAttIsEmptyRJtGetItemClassLVt GetItemColortGetItemQualityt GetItemTypeIDtChEquiptGetTotalEquipStarstGetSuiteInfoByPlaceR;tmaxtvaluest
GetNeedCntt GetAwardItemRKRMR R9RRPRQRtGetMoneyt    GiveMoneyRR@RARBt SuccType_XBXZtGetMWID(RRR-tcurTypet conditionListtcntt playerEquipRTt
equipIndextcurEquipt
curClassLVt    itemColort itemQualityRftclasslvtcolortstartplacet suiteCntDictt    suiteInfotsuitelvt    suiteTypet awardItemListRit    needSpaceRgt    moneyTypeR!((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytOnGetXBXZAward½s„        0    %!    )"c Cs&|r1g}xq|D]}|j|dƒqWnOtjƒ}|jƒ}|sSdS|j|dƒjƒ}t|ddƒ}tjƒ}|j    ƒg|_
x^|D]V}|j t j |ƒ}    |    sÎq¦ntjƒ}
||
_|    |
_|j
j|
ƒq¦Wt|j
ƒ|_tj||ƒdS(Nii(RùR7Rqt GetXBXZCounttGetSuccessByIndexRORRõttagMCXBXZAwardRecordListR÷t
RecordListRR    RQttagMCXBXZAwardRecordt RecordIndextRecordR t    RecordCntRûRü( Rt
syncIDListtrecordIndexListR(RutsuccCntt    maxSuccidt succFARPackRvt awardRecordt
recordInfo((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyRs0    
              c
CsÒtjƒj|ƒ}|j}|jtj|ƒ}|d}tjd||ƒ}|s]dS|j    ƒ}|jtj
|ƒ}    |    |kr tj d|ƒdSt j |tj
||    |ƒt|||ƒdS(NiR1s·¨±¦Éý¼¶¾­Ñé²»×ã%s(RR´RµR&RR    RR7RDt
GetNeedExptDef_PDict_MagicWeaponUpExpRYR R R'(
RRÕR§RRRtnextMWLVt nextIpyDataR*tcurUpExp((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytOnMagicWeaponUp>s    
  cCs¢tjd||fƒ|jtj|ƒ}tj|tj|||ƒt||ƒt|ƒ}|rv|j    ƒnd}|dkržt
j |t j ƒndS(Ns"Ôö¼Ó·¨±¦Éý¼¶¾­Ñé mwID=%s,addExp=%sii(RRYRR    R‘R R RR%RtPlayerActivitytAddDailyActionFinishCntRBtDailyActionID_MagicWeapon(RRtaddExpR”R-R}((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytAddMagicWeaponUpExpRs   c CsW|dkr`g}tjƒ}xHt|jƒƒD](}|j|ƒ}|j|jƒƒq1Wn    |g}tjƒ}g|_    x¤|D]œ}|j
t j |ƒ}|j
t j |ƒ}t||ƒ}    | rá| rá|     ráq…ntjƒ}
||
_||
_||
_|    |
_|j    j|
ƒq…Wt|j    ƒ|_|jrStj||ƒndS(Niÿÿÿÿ(R7RqRrRsRtRùRORõttagMCMagicWeaponLVInfotInfoListRR    RR‘tGetIsClickMagicWeaponttagMCMagicWeaponInfoR&tLVtExptStateR RKRûRü( RRRLRuRvR-RMtmwLvR”tstateRO((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyR_s2                                 cCs3t||ƒsdStjd|ƒ}|s/dS|S(NitTreasurePrivilege(tGetIsActiveMWSoulR7R(RRtprivilegeIpyData((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytGetMagicWeaponPrivilege|s c
Csîi}tjd|ƒ}|s"|S|jƒ}|s=i}n|jƒ}|tjkrjtj|ƒ}n`d}|r™|jtj    |ƒ}||}nx.|j
ƒD] \}}    |    ||t |ƒ<q¦Wt j d||f|jƒƒ|S(NR¤is2    »ñÈ¡·¨±¦ÌØÈ¨Ôö¼ÓµÄÊôÐÔ privilege=%s,addAttr=%s(R7RRtGetSingleValueR    tMWPrivilege_EquipPlusRatCalcAllEquipAllPlusLVAttrRtDef_PDict_MWSoulGotValueR·R¸RRYRO(
RRRR¦tattrInfot singleValuetmultipletgotValueRR((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytGetMagicWeaponPrivilegeAttr…s$        cCsÃtjd|ƒ}|sdS|jtj|ƒ}|rB||n|}|jƒ}|rlt||ƒ}n||kr¢tj|tj||ƒt    ||ƒnt
j d||||fƒdS(NR¤s/    privilege=%s,data=%s,curValue=%s,newData=%s( R7RRR    tDef_PDict_MWSoulCurValuet GetMaxValueR"R R RRRÅ(RRtdatatisAddR¦tcurValuetnewDatatmaxValue((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyRўs  c Csät||ƒ}|s*tjd|ƒdS|jƒ}|rÈ|jtj|ƒ}|jtj|ƒ}|||}|dkr†dStj    |tj||||ƒt
|ƒtj|ƒj ƒn|j ƒ}|rÓ|jtj |ƒrtjd|ƒdSt|ƒ}tj|tj|ƒ}    ||    krRtj|dtjgƒdStj    |tj |dƒxd|D]Y\}
} } tj|t|
ƒt| ƒ| tjgtdtddti|d    6gƒqsWnt||ƒdS(
Ns;ÁìÈ¡·¨±¦Ö®»ê½±Àø£¬¶ÔÓ¦·¨±¦Ö®»êδ¼¤»î£¬»òδÅäÖàprivilege=%sis,    ÁìÈ¡·¨±¦Ö®»ê½±Àø ½ñÈÕÒÑÁìÈ¡ privilege=%stGeRen_chenxin_676165iR3R4t MWSoulAwardR(R§RRYR¨RR    R±R«R R tCalcMagicWeaponSoulAttrRXRIR RÅR RJRKRLRMR9RPRQR¸RRRR( RRR-R­RµR¯t    canGetCnttitemListR~RititemidRnRh((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytGetMWSoulAward¯s<  "
   3 cCs2|dkrtj}n    |g}tjƒ}g|_xÇ|D]¿}tjƒ}|jtj|ƒ|_|jtj    |ƒ|_
|jtj |ƒ|_ t ||ƒ|_| rãt|j|j
|j |jgƒdkrãq=n||_|jj|ƒq=Wt|jƒ|_|jr.tj||ƒndS(Niÿÿÿÿi(R    R
RõttagMCMWPrivilegeDataInfoRœttagMCMWPrivilegeDataRR±tCurValueR«tGotValueR tItemAwardStateR¥R¡RdtPriIDRùR RKRûRü(Rt privilegeIDRRLRMtpriIDRO((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyRÖs&             1        cCsOtjƒj|ƒ}|j}t||ƒr1dSt||ƒt||ƒdS(N(RR´RµR&RtSetMagicWeaponClickStateR(RRÕR§RR((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytSaveMagicWeaponStateõs      cCs'tj|tj|dt|dgƒS(Nid(RRR    tDef_PDict_MagicWeaponIsClickR(RR((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyRþsicCs.tj|tj|d|t|dgƒdS(Nid(RRR    RÉR(RRR£((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyRÇs*cCs¹tjƒj|ƒ}|j}tjd|ƒ}|s:dSt||ƒr^tjd|ƒdS|jƒ}x;|D]3}t    j
||ƒsqtj d||fƒdSqqWt ||ƒdS(NR¤s$    ¸Ã·¨±¦Ö®»êÒѾ­¼¤»î£¡£¡ soulID=%ss0    ¼¤»î·¨±¦Ö®»ê ³É¾ÍδÍê³É  soulID=%s,succID=%s( RR´RµtIDR7RDR¥RÅtGetSuccessListR@t GetSuccHasGotRYRV(RRÕR§RtsoulIDR-tsuccListR(((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pytOnActiveMWSouls       cCsctj|tj|dtƒtj||ƒt|ƒ|rRtj|ƒj    ƒnt
||ƒdS(Ni( RRR    tDef_PDict_MWSoulActiveStateRR=tEventRespons_MWSoulActiveRºR RXR(RRÍt isRefreshAttr((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyRV#s
 cCstj|tj|ƒS(N(RRR    RÐ(RRÍ((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyR¥1sc CsçgtdƒD] }i^q }i}tjƒ}xit|jƒƒD]U}|j|ƒ}|jƒ}t||ƒszqDnt||ƒ}t    j
||ƒqDWx-|j ƒD]\}    }
t j |    |
|ƒqªWt j|tj|ƒdS(Ni(RR7RqRrtGetTreasurePrivilegeCounttGetTreasurePrivilegeByIndextGetPrivilegeIDR¥R°RRR·R R
R R    t Def_CalcAttrFunc_MagicWeaponSoul( RRt allAttrListRtipyMgrRvR-RÍRtattrIDt    attrValue((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyRº5s  (?RJRBRûR#RõR RLR—RR    R7R™R]R@R=R¡RPR–RaR[RpRRRRRRRR/R'R%RRRRzR€R•RFRôRRRRRWRFRRSR€RR•RšRR§R°RÑR¾RRÈRRÇRÏRVR¥Rº(((sa.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerMagicWeapon.pyt<module>sv                                    
     D                           * )    Š         R    K     )    [ &                          '