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
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
Ÿ}hc@sBddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlZddlZddlZejddƒejddƒd„Zd„Zd„Zd„Zd    „Zd
„Zd „Zd „Zd „Z d„Z!ddd„Z"d„Z#d„Z$d„Z%dd„Z&d„Z'gd„Z(ddd„Z)d„Z*d„Z+dd„Z,d„Z-d„Z.d„Z/d„Z0d „Z1d!„Z2d"„Z3d#„Z4d$„Z5d%„Z6dd&„Z8d'„Z9d(„Z:d)„Z;d*„Z<d+„Z=d,„Z>d-„Z?ddd.„Z@d/„ZAd0„ZBeCeCd1„ZDdgdeEdd2„ZFdgdeEd3„ZGd4„ZHd5„ZIeJd6ƒ\ZKZLd7„ZMd8„ZNdS(9iÿÿÿÿNs Script\Item\tUseItemtcCsDtjƒd}tj|dƒtjƒd}tj|dƒdS(NsScript\Item\UseItemRs Script\ItemR(tChConfigt
GetAppPatht    GameWorldt ReloadScript(ttickt
scriptPath((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyt
ReloadItemCs
cCstjtƒ|ƒdS(N(Rt GetPsycoFunct__Func_InitItem(R((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pytInitItemescCsd}tjƒj|ƒdS(NiÀÔ(RtGetMapItemManagertSetProtectTime(RtMapItemProtectTime((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyR
ns c  Cs |jƒ}tjƒ}|j|ƒ}|dks?|jƒrWtjd||ƒdSt|tj    ƒ}t
j |ƒdkrœtjd||f|ƒdS|j ƒ|j ƒ|j ƒ|j ƒf\}}    }
} tj||    |
| ƒ} | rI| |jƒkrItj|dƒtjd||||    |
| | |jƒf|ƒdSt|||||ƒsutj|dƒdStj|ƒ} |jƒ}|jƒ}|jƒ}|jƒ}|jƒ}|jƒ}|jƒ}|jdƒjƒ}|jƒ}t}|t j!kr…tj"|t#j$|t j%i| ƒs7dS|retj&|j'ƒd|j(ƒ|gƒnt)j*|||ƒ|j+ƒný|jƒ}|jƒ}tj,|ƒ}|j-t j.ƒ}|rÍtj/nt#j0}t j1||ƒ}| j2||||ƒs@tj|d|gƒtjd    ||||f|jƒƒdSt)j*|||ƒ|j3ƒt4j5|ƒ|j6ƒ|j7ƒ|j8ƒg}| j9||d
t j:ti|d 6gƒsÞtj;d ||||f|jƒƒdS|rftj<ƒj=ƒ}tj>ƒj?ƒt#j@krdn tjA|ƒ}|t jBgkrG|jCƒ}ntDjE||||||ƒntFjG|tjH||gƒ|jIdƒ|jJ|ƒtKS( Ns4µ±Ç°ÎïÆ·²»´æÔÚ»òÒѾ­±»»ØÊÕ,Íæ¼Òʰȡʧ°Ü,mapItemID=%sis5Íæ¼ÒÒÑËÀÍö,ÎÞ·¨Ê°È¡ÎïÆ·!mapItemID=%s,dropItemNPCID=%stGeRen_chenxin_805889seµ±Ç°¾àÀë¹ýÔ¶, mapItemID=%s,dropItemNPCID=%s,Íæ¼Ò(%d,%d)-ÎïÆ·(%d,%d),pickDist=%s > playerPickupDist=%stGeRen_chenxin_913598tGeRen_lhs_295695tGeRen_chenxin_676165sMʰȡÎïÆ·ÎÞ·¨·ÅÈë±³°ü£¡mapItemID=%s,dropItemNPCID=%s,curItemID=%s,packIndex=%steventtNPCIDsMʰȡÎïÆ··ÅÈë±³°üʧ°Ü£¡mapItemID=%s,dropItemNPCID=%s,curItemID=%s,packIndex=%s(Lt GetPlayerIDRR t GetItemByIDtNonetIsEmptytLogtGetMapItemUserDataValuet ShareDefinetDef_MapItemInfo_NPCIDtGameObjtGetHPtGetPosXtGetPosYtGetDistt GetPickupDistt PlayerControlt
NotifyCodet__CheckPickUpItemTimet ItemControlertPlayerItemControlert GetOwnerTypet
GetOwnerIDtGetItemtGetTypet GetItemTypeIDtGetCounttGetGUIDtGetEffectByIndext GetEffectIDtGetTeamtFalseRtDef_ItemType_Moneyt    GiveMoneyt IPY_GameWorldtTYPE_Price_Silver_MoneytDef_GiveMoney_Pickupt
TeamNotifyt    GetTeamIDtGetNametFBLogictOnFBPickUpItemtCleartGetIsAuctionItemt GetDictByKeyt!Def_PlayerKey_PickupItemPutInTempt rptTempItemtrptItemtGetItemPackTypet CanPutInItemt GetEquipPlacet
ItemCommontGetItemClassLVt GetItemColort
GetSuiteIDt GetUserDatat    PutInItemtItemGive_PickuptErrLogt GetGameWorldtGetMapIDtGetMapt GetMapFBTypetfbtNulltGetFBFuncLineIDtDef_FBMapID_BossHometGetClientLineIDt    NPCCommontSendGameServerGoodItemRecordt PlayerSuccesstDoAddSuccessProgresstSuccType_PickUpItemt SetDropItemt
PickupItemtTrue( t    curPlayert    mapItemIDRtisGuardtplayerIDtmapItemManagertmapItemt dropItemNPCIDtposXtposYtitemPosXtitemPosYtpickDistt itemControlt    ownerTypetownerIDtsingItemt mapItemTypet mapItemTypeIDt mapItemCountt singItemGUIDtcurEffIDt
playerTeamt isTeamNotifyt curItemCountt    curItemIDtcurItemIsAuctionItemt isPutInTempt    packIndext    equipInfotmapIDtlineID((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyt
__DoPickup–sˆ  6    )                +    0   cCsW|jƒ}|jƒg}|j|ƒ|r4dnd}tj|jƒ||ƒdS(NtGeRen_lhs_772321tGeRen_lhs_85890(R1R:textendR#R8R9(R^Rtt itemMsgListtisEquiptcurTeamtmsgListtsysInfo((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pytPickupItemSysNotify's   cCs5tjƒj|ƒ}|j}t|||tƒdS(N(RtGetPlayerManagertGetPlayerByIndext    MapItemIDt__DoPickupItemR](tindext
clientDataRR^t mapItemIDList((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pytOnGuardPickupItem<s    cCsGtjƒj|ƒ}tjƒ}|jƒ}t||g|tƒdS(N(RR‡RˆR5tIPY_PickUpItemt GetMapItemIDRŠR2(R‹RR^tpickPackR_((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pytPlayerPickUpItemGs
  c    Cs9|rptjƒjƒtjkrp|jƒ}tj|ƒ}|rp|jƒ rptj    d||j
ƒƒdSn|stj d|j
ƒƒdSg}x3|D]+}t ||||ƒr|j |ƒqqW|rïtj    d||j
ƒƒn|r5|r5tjƒ}||_t|jƒ|_tj||ƒndS(Ns ¸ÃµØÍ¼ÊØ»¤ÎÞ·¨Ê°È¡ÎïÆ·! mapID=%ssûÓÐÖ¸¶¨ÒªÊ°È¡µÄµØÍ¼ÎïÆ·ID!s&³É¹¦Ê°È¡µØÍ¼ÎïÆ·, succMapItemIDList=%s(RRPRQR5RRROtFBCommont GetFBIpyDatat GetGuardPickRRRMR}tappendtChPyNetSendPackttagMCGuradPickupItemSuccR‰tlent    ItemCountt NetPackCommont SendFakePack(    R^RRR`R{t    fbIpyDatatsuccMapItemIDListR_tguradPickupSucc((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyRŠOs*!        cCstjtƒ||ƒdS(N(RR    t__Func_PlayerUseItemSelf(R‹R((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pytPlayerUseItemSelf³scCs;tjƒj|ƒ}tjƒ}t||jƒ|ƒdS(N(RR‡RˆR5t IPY_CUseItemt__DoLogic_PlayerUseItemSelft GetItemIndex(R‹RR^t packUseItem((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyR ½s iic Cs†tj|tjtjƒstS|jƒjtj    ƒ}|j
|ƒ}t |||ƒs\tSt ||ƒ}|dkr{tS|dkr™t ||ƒ}nt ||jƒƒ}|jƒ}|jƒ}    t|||||ƒ}
t|
ƒ\} } tjd||
| | fƒ| stStj|tj| |gƒ|j||ƒ|j|    |ƒtj||ƒ|dkr‚t||| ƒntS(NisE__DoLogic_PlayerUseItemSelf itemID=%s,result=%s,isOK=%s,successCnt=%s(tOperControlManagertIsObjCanDoActionRtDef_Obj_ActState_ClientActR5t
oalUseItemR2tGetItemManagertGetPackRBtGetAttCheckPlayerUseItemSelft__GetTodayCanUseCnttminR-R,t    GetCDTypetDoUseItemLogict__AnalysisUseItemResultRtDebugLogRXRYRtSuccType_UseItemt Sync_UseItemt    SetItemCDRFtUseItemSpecialNotifyt__AddItemUseCntTodayR]( R^t useItemIndexRtuseCnttexDatatbackPacktcurItemttodayCanUseCntt curItemTypeIDt curItemCDTypet    useResulttisOKt
successCnt((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyR£Ís<          cCs[t}d}t|tƒr*|\}}n't|tƒrQ|}|rQd}qQn||fS(Nii(R2t
isinstancettupletbool(RÁRÂRÃ((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyR²s cCsptj|ƒs#tj|dƒtSt|ƒs3tSt|||ƒsItStj|ƒsltj|dƒtStS(NtGeRen_chenxin_644055tGeRen_chenxin_774045(    RFtCheckItemCanUseR#R$R2tCheckUseItemSelf_PlayertUseItemSelf_ItemtCheckItemCanUseByExpireTimeR](R^R½R((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyR­s cCsêtj|ƒ}|dkrdS|jƒ}|jtj|ƒ}xftjdƒD]U}||kriqQnx:|D]2}||krˆqpn||jtj|ƒ7}qpWqQWtd||ƒ}|dkræt    j
d|||fƒn|S(NiiÿÿÿÿtShareUseCntItems4ÒÑ´ïµ½½ñÈÕʹÓôÎÊýÉÏÏÞ!itemID=%s,useCnt=%s,maxCnt=%s( RFtGetCanUseCountDailyR,tNomalDictGetPropertyRtDef_PDict_ItemUseCntTodayt IpyGameDataPYtGetFuncEvalCfgtmaxRR³(R^R½tmaxCntRvRºt
itemIDListtitemIDt    canUseCnt((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyR®4s      " cCsZ|jtj|ƒ}t||tjƒ}tj|tj||ƒt||gƒ|S(N(RÏRRÐR¯tDef_UpperLimit_DWordR#tNomalDictSetPropertytSync_ItemDayUseCnt(R^RÖtaddCntRºtupdCnt((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyR¸Os
cCstg}xQtjD]F}|jtj|ƒrtj|tj|dƒ|j|ƒqqW|rpt||ƒndS(Ni(    t
PyGameDatatDailyUseCountLimitItemIDListRÏRRÐR#RÙR–RÚ(R^tresetItemIDListRÖ((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pytResetItemUseCntTodayZscCsât}|st}tj}ntjƒ}|jƒg|_xp|D]h}|jt    j
|ƒ}| rt| rtqDntj ƒ}|jƒ||_ ||_ |jj|ƒqDWt|jƒ|_|jrÞtj||ƒndS(N(R]R2RÝRÞR—ttagMCItemDayUseCntInfoR=tItemUseCntListRÏRRÐttagMCItemDayUseCnttItemIDtUseCntR–R™tCountR›Rœ(R^tsyncItemIDListt isForceSynctuseCntInfoPackRÖtuseCountt
useCntPack((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyRÚds(  
      
            cCs¼t|||||ƒ}|dkr(|S|jƒ}tjtd|dfƒ}|rl||||||ƒStjtd|dfƒ}|s¬tjd||jƒƒdS||||ƒS(Niÿÿÿÿs
Item_%d.%st BatchUseItemRsʹÓÃÎïÆ· = %s²»¿ÉCall(t__DealWith_SpecialItemR,Rt GetExecFuncRRMtGetID(R^R½RRºR»tuseSpecialItemResultt
itemTypeIDtcallFunc((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyR±‚s  c Cs­|jƒ}|jƒ}|jdƒjƒ}i
dtj6dtj6dtj6dtj6dtj    6dtj
6dtj 6dtj 6dtj 6dtj6}id    tj6d
tj6d tj6d tj6d tj6d tj6dtj6dtj6dtj6dtj6dtj6dtj6dtj6dtj6dtj6dtj6dtj6dtj 6dtj!6dtj"6dtj#6dtj$6dtj%6dtj&6dtj'6d tj(6}    |j)|d!ƒ}
|
sÎ|    j)|d!ƒ}
n|
søt*j+d"|ƒ} | rød#}
qøn|
rn|tj,krd$}
n|
d!kr)d%St-j.d&|
ƒt-j/t0d'|
ƒ} | rl| |||||ƒSt-j/t0d(|
ƒ} | st-j1d)|
ƒdS| |||ƒS(*Nit Item_Add_HPMPt Item_AddExptItem_GiveMoneyt Item_RuneExptItem_Add_LimitingBufftItem_ResetAttrPointtItem_AddCrossRealmPKCnttItem_UseItemGiveZhenQitItem_AddDienstgradt    Item_Facet
Item_AddLVtItem_GuajiAwardtItem_CleanGuilttItem_PrizeCointItem_AddVIPExptItem_VIPLVCardtItem_TiandaoQiyuntItem_GubaoPiecetItem_TrainRealmLVtItem_ResetBossKillCntt Item_AddFBCnttItem_AddArenaBattleCounttItem_AddKillBossCnttItem_AddMagicWeaponUpExptItem_ChatBubbleBoxtItem_EmojiPacktItem_FamilyEmblemtItem_WeekPartyPointtItem_AddRealmExpRatetItem_TouchMissiont Item_HeroSkinRtChestst Item_CheststItem_VIPExperienceiÿÿÿÿs__DealWith_SpecialItem %ss%s.BatchUseItems
%s.UseItems!###ʹÓÃÎïÆ·Òì³£, ÎÞ·¨²éÕÒ %s Îļþ(2R,R+R/R0RtDef_ItemType_HPMPtDef_ItemType_AddExptDef_ItemType_GiveMoneytDef_ItemType_AutoUseMoneytDef_ItemType_RuneExptDef_ItemType_AddLimitBufftDef_ItemType_AddLimitBuff2tDef_ItemType_AddExpBufftDef_ItemType_ResetAttrPointtDef_ItemType_AddCrossRealmPKCnttDef_Effect_UseItemGiveZhenQitDef_Effect_AddDienstgradtDef_Effect_FacetDef_Effect_FacePictDef_Effect_ItemAddLVtDef_Effect_GuajiAwardtDef_Effect_CleanGuilttDef_Effect_PrizeCointDef_Effect_AddVIPExptDef_Effect_VIPLVCardtDef_Effect_TiandaoQiyuntDef_Effect_GubaoPiecetDef_Effect_TrainRealmLVtDef_Effect_ResetBossKillCnttDef_Effect_AddFBCnttDef_Effect_AddArenaBattleCounttDef_Effect_AddKillBossCnttDef_Effect_AddMagicWeaponUpExptDef_Effect_ChatBubbleBoxtDef_Effect_EmojiPacktDef_Effect_FamilyEmblemt!Def_Effect_ItemGiveWeekPartyPointt"Def_Effect_ItemGiveWeekPartyPoint1tDef_Effect_AddRealmExpRatetDef_Effect_TouchMissiontDef_Effect_HeroSkintgetRÑtGetIpyGameDataNotLogtDef_ItemID_VIPExperienceRR³RîRRM( R^R½RRºR»Rñt curItemTypeRrtitemTypeCallFuncDictitemEffIdCallFuncDict callFuncNamet chestsIpyDataRò((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyRí£s~  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
       cCsdS(N((R‹R((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyt
UseSpeakerscCsÆ|jƒjtjƒ}|j|ƒ}t||ƒ}| sO|rS||krSdSi|jƒd6dd6|jƒd6}tj    |d|ƒt
j ||j ƒd|j ƒ|jƒ|jƒƒ|S(NiRäiRštItemGUIDtSpeakerUseItem(RªR«R5RBR¬t__GetSpeakerLVR,R.tDataRecordPackt DR_DeleteItemR&t SetItemCountR-RïtGetAccIDt GetPlayerName(R^t    itemIndext speakerTypeR¼R½t    speakerLVtdataDict((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pytDoSpeaker_UseItem s'cCs¦tj|ƒsdStj||ƒs)dS|jdƒ}|jƒ}|tjkrWdS|jdƒ}|dks~|dkr¢t    j
d||f|j ƒƒdS|S(Niiis(СÀ®°ÈÌî±í´íÎó curEffID = %s, value = %s( RFRÉR&tCheckItemUseLVR/R0RtDef_Effect_ItemSpeaktGetEffectValueRRMR(R^R½tcurEffRrt curEffValue((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyRDYs  cCsetj|ƒdkrtStj|tjtjƒs8tS|j    ƒtj
krat j |dƒtSt S(NitGeRen_lhs_372238(RRR2R¦R§RtDef_Obj_ActState_ServerActR5R©tGetPlayerActiontpaTradeR#R$R](R^((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyRÊts c    Csr|jƒtjkr'|jƒ}|s˜ttjƒƒ|jtjƒ}||j    ƒkr$t
j |dƒt j d|jƒ||j    ƒfƒdSq§|dkr§t jttjƒƒ|jtjƒƒd}||j    ƒkr$t
j |dƒt j d|jƒ|||j    ƒfƒdSq§n€||j|jƒƒ|j    ƒkr§t j d|jƒ|jƒ||j|jƒƒ||j|jƒƒ|j    ƒfƒdS|jƒdkrÍt
j |dƒdS|jƒ|jƒkrùt
j |dƒdStj|ƒrt
j |d    ƒdStj||ƒsBt
j |d
ƒdStj||ƒsXdStj||ƒrndStS( NtGeRen_chenxin_749572sAδµ½Ê¹ÓÃʱ¼ä£¬²»¿ÉʹÓÃ! itemID=%s,curItemPastTime=%s < CDTime(%s)isDδµ½Ê¹ÓÃʱ¼ä£¬²»¿ÉʹÓÃ! itemID=%s,cdType=%s,passDays=%s < CDTime(%s)sCCDÀäȴʱ¼äδµ½,itemID=%s,CDType=%s,tick(%s)-cdStartTime(%s)=%s < %siRÈtDJ_Equip_UnUse_Lvtitemuse_chenxin_31379tGeRen_lhs_31379(R+RtDef_ItemType_CanUseByCDTimetGetCanPlaceInShortcuttintttimet GetUserAttrRtDef_IudetCreateTimet    GetCDTimeR#R$RR³R,t GetDiff_DaytGetItemCDStartTimeR°tGetUseLVtGetLVR&t IsEventItemRFtCheckJobROR;tDoFBForbidUseItemR](R^R½RtcdTypetcurItemPastTimetpassDays((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyR˖sL "     .     
%    ''     cCs¼|dks|jƒrtS|jƒr<tj|dƒtS|jƒdkrbtj|dƒtS|jƒr‚tj|dƒtStj    |ƒr¥tj|dƒtStj
|ƒr¸tSt S(NRÇit UseResLost10RZ( RRR2t GetIsLockedR#R$t
GetCanDropt    GetIsBindR&RgtIsValuableItemR](R^R½((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyt__CheckItemCanDelâs"  cCsftjƒj|ƒ}|j}tj|kr1dS|j}|j}tjƒj    ||ƒs_dS|j
}|j ƒ}|j |ƒ}    |    j |ƒ}
tj|
ƒs¥dSt||
ƒs¸dStj|
ƒrtj|
|
jƒƒ} tj|| ƒtj||d| ƒntj|ƒ} t|||
jƒd| ƒ} | jtjƒ| j|j ƒƒ|
j!ƒdS(Nt DropPackItemt
sightLevel("RR‡RˆtPackTypeR5RBtDropPosXtDropPosYRPtCanMovet    ItemIndexRªR«R¬RFRÉRrR&tItemNeedRecordtGetItemNoteDictR-REtDR_DeleteItemInRecyclet
DR_DelItemR#tGetMapRealmDifficultytAddMapDropItemR*t SetOwnerTypeRtDef_NPCHurtTypePlayert
SetOwnerIDRtWipe(R‹tpackDataRR^tpackTypetdropPosXtdropPosYRJt ItemManagertcurPackR½t equipNoteDictRtt
curMapItem((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pytPlayerDropItems4                 
cCs¨tjƒj|ƒ}tjƒ}|jƒ}|jƒ}|jtjƒj    |ƒ}t
j |ƒswt j |dƒdStj|di|jƒd6ƒ|j|ƒdS(NtCallcannotDeletet DeleteTitleRä(RR‡RˆR5tIPY_CDeleteTitlet GetTitleIndexRªR«trptTitleR¬RFRÉR#R$RERFR,t
DeleteItem(R‹RR^tsendPackt
titleIndext itemManagerR½((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyRŽOs     c    Cs£tjƒj|ƒ}tjƒ}|jƒ}|jƒ}|jtjƒ}|j    |ƒ}t
j |ƒsmdS|j ƒ}|jtj ƒ}    ||    jƒks©|dkrÓtjd||    jƒf|jƒƒdS|jƒ}
|jƒ} |
tj} |jƒ} tj|ƒ}|jtj | |
|jƒƒsQtj|dtj gƒdStj|| | tji| tj6ƒs}dStj|tj|tj ||
ƒdS(Nis1GetbackItemInRecycle -> µ±Ç°¸ñ×Ó±³°üδ´ò¿ª,  %s%sR(RR‡RˆR5tIPY_CGetbackItemInRecycletGetRecycleIndexRªR«t
rptRecycleR¬RFRÉR¤RBR-RRR,RtDef_RecycleReturnMoneytGetUseSilverTypeR&R'RDRpR#R$tPayMoneytDef_Cost_BuyItemBacktDef_Cost_Reason_SonKeytDragItem(R‹RR^R“t recycleIndexR•tcurRecyclePacktcurRecycleItemt itemPackIndext curItemPacktcurCountRvtcurRecycleItemPricet curSilverTypeRj((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pytGetbackItemInRecyclegs2    &    !cCsˆtjƒj|ƒ}|jƒ}|jtjƒ}xNtd|jƒƒD]7}|j    |ƒ}t
j |ƒssqIn|j |ƒqIWdS(Ni( RR‡RˆRªR«R5R˜trangeR-R¬RFRÉR’(R‹RR^RˆR‰tiR½((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyt ClearRecycle—s cCsYtjƒj|ƒ}tjƒ}tj|tj|jƒtj|j    ƒ|j
ƒƒdS(N( RR‡RˆR5t IPY_CDragItemR&RžRBt GetSrcIndext GetDestIndext GetItemCount(R‹RR^t
clientDrag((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyRž±s 4c
Cs
|j|ƒdkrtS|jƒ}|jƒ}|jƒ}|tjkrPtS|tjkr||krtj    d|||f|ƒt
Snw|tj kr|j ƒ}|dkr×tj    d|||f|ƒt
S|jƒ|krtj    d||||jƒf|ƒt
Snð|tjkrd||jƒkrtj    d||||jƒf|ƒt
Sn¢|tjkr¸t|tjgƒ}    ||    krtj    d|||    f|ƒt
SnN|tjkr||jƒkrtj    d||||jƒf|ƒt
SntS(NisBÍæ¼ÒûÓйéÊôȨ£¬²»ÄÜʰȡ! mapItemID=%s,dropItemNPCID=%s,ownerID=%ssFûÓжÓÎé²»ÄÜʰȡ¹éÊô¶ÓÎéÎïÆ·! mapItemID=%s,dropItemNPCID=%s,ownerID=%ssO¶ÓÎéûÓйéÊôȨ£¬²»ÄÜʰȡ! mapItemID=%s,dropItemNPCID=%s,ownerID=%s,curTeamID=%ssPÕóӪûÓйéÊôȨ£¬²»ÄÜʰȡ! mapItemID=%s,dropItemNPCID=%s,ownerID=%s,curFaction=%ssFÍæ¼ÒûÓйéÊôȨ£¬²»ÄÜʰȡ! mapItemID=%s,dropItemNPCID=%s,ownerIDList=%ssQÏÉÃËûÓйéÊôȨ£¬²»ÄÜʰȡ! mapItemID=%s,dropItemNPCID=%s,ownerID=%s,curFamilyID=%s(t GetRemainTickR]R(RR)RtDef_NPCHurtTypeAllRRRR2tDef_NPCHurtTypeTeamR1RR9tDef_NPCHurtTypeFactiont
GetFactiontDef_NPCHurtTypeSpecialRRtDef_MapItemInfo_SpecOwnertDef_NPCHurtTypeFamilyt GetFamilyID(
R^RcRR_Rdt itemOwnerTypeRaRlRƒt ownerIDList((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyR%¿sN                               cCsK|jƒ}yt|ƒ}Wn|SXt|ƒ}||krC|S||S(N(RJtevaltstr(Rct    dataIndext defaultValuetuserDatatkey((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyRòs   cCs\tjƒj|ƒ}tjƒ}|jƒ}|jƒ}|jƒ}t||||ƒdS(N(    RR‡RˆR5tIPY_CGetAnyWhereItemtGetAnyWhereItemIndexR­tGetAnyWherePackTypet__DoLogic_GetAnyWhereItem(R‹RR^tpacktsrcIndext    destIndextanyWherePackType((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pytGetAnyWhereItems    cCs¿|jƒjtjƒj|ƒ}tj|ƒs4dS|jƒ}|jƒ}t    j
|ƒ}|j tj |||j ƒƒs™tj|dtj gƒdSt    j|tj|tj ||ƒdS(NR(RªR«R5t rptAnyWhereR¬RFRÉR-R,R&R'RDRBRpR#R$Rž(R^RÆRÇRÈR½RuR¿Rj((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyRÄ!s!  ! "cCsdS(N((R‹R((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pytPutItemInFabaoLscCsdS(N((R‹R((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pytGetBackItemInFabao`sc
Cs¨tjƒj|ƒ}tjƒ}|jƒ}|jƒjtjƒ}|j    |ƒ}t
j |ƒsgdS|j ƒ}|j ƒ}t|||ƒ}    t||||    ƒdS(N(RR‡RˆR5tIPY_CUseItemTagR¤RªR«RBR¬RFRÉR+R,R£t__SendUseItemBackPack(
R‹RR^R¥R¹R¼R½R<Rvt useItemResult((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pytPlayerUseItemTagws    c CsStjƒj|ƒ}|j}|j}|j}i}|jrfx$|jD]}|j||j    <qIWntj
d||||f|j ƒƒ|r¬|}tj
d|ƒn|rÆtj
d|ƒn|j ƒj tjƒ}    |    j|ƒ}
tj|
ƒs tj
dƒdS|dkr9|
jƒ}tj
d|ƒnt|||||ƒdS(Ns9OnUseItems itemIndex=%s,useCnt=%s,exData=%s,selectDict=%ss'    Ê¹ÓöàÏîÑ¡Ôñ£¬ÒÔ¶àѡΪ׼! exData=%ss'    Ê¹Óõ¥ÏîÑ¡Ôñ£¬¼æÈݾÉģʽ! exData=%ss    ÎïÆ·ÎÞ·¨Ê¹Óã¡is#    Ã»Ö¸¶¨Ê¹ÓøöÊý£¬Ä¬ÈÏʹÓÃÈ«²¿=%s(RR‡RˆRyRåtExDatat SelectCountt
SelectListt    SelectCnttSelectIDR³RRªR«R5RBR¬RFRÉR-R£( R‹R„RR^RJRºR»t
selectDictt
selectInfoR¼R½((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyt
OnUseItemsŸs0                &   cCs{tjdƒ}||jdgƒks?||jdgƒkrw|r^|jtjtjƒqw|jtjtjƒndS(NtUseItem_CanSeriesUseii(    t ReadChConfigtGetEvalChConfigR9tSync_MakeItemAnswerRtDef_mitUseFuDaiRtDef_UseFuDai_SucesstDef_UseFuDai_Fail(R^t useItemTypet    useItemIDRÏtuseItem_CanSeriesUse((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyRÎÆs 0cCs–tj|dtƒ}|jddƒ}tjƒ}|jƒ||_||_t    |ƒ|_
t |j
ƒ|_ ||_ ||_tj||ƒdS(Nt ensure_asciis R(tjsontdumpsR2treplaceR—ttagMCNotifyUseItemGetItemR=t    UseItemIDtUseCountR¼t GetItemDataR™t
GetItemLent    MoneyTypet
MoneyCountR›Rœ(R^RáRêt getItemInfot    moneyTypet
moneyCountt getItemPack((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pytSendUseItemGetItemResultÖs 
                cCsY|tjkrUtjtdƒ}|s8tjdƒdS||tjƒjƒƒdSdS(NsItem_CallNPC.OnPrepareOKs)###³ÌÐòÒì³£,ÎÞ·¨²éÕÒÎļþ Item_CallNPC.py"(R5t pstCatchingRRîRRRNtGetTick(R^t prepareStateRò((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyt OnPrepareEndîs c Csrtjƒj|ƒ}tjƒ}|jƒ}|jƒ}|jƒjtj    ƒj
|ƒ}t |||ƒspdS|j ƒt jkr‰dS|jƒj|ƒ}|dkr®dS|jdƒjƒ}|jƒ}    |jƒ}
d} | dkrtjd|ƒdStjt| ƒ} | s/tjd| ƒdS| |||ƒsEdS|j|    |ƒ|
rn|j|
|ƒndS(NiRs####ʹÓÃÎïÆ·Òì³£, ÎÞ·¨²éÕÒ %s Ð§¹ûIDs!###ʹÓÃÎïÆ·Òì³£, ÎÞ·¨²éÕÒ %s Îļþ(RR‡RˆR5tIPY_CPetUseItemByIndextGetPetIDR¤RªR«RBR¬R­R+RtDef_ItemType_PetItemt    GetPetMgrt PetList_FindRR/R0R,R°RMRîRRµR¶( R‹RR^RÅtpetIDRJR½trolePettcurItemEffectIDR¿RÀR?Rò((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyt
UsePetItems:   !    c CsÏ|s
dS|ržg}x‹|D]z}t|tƒrŠ|\}    }
} | rZ|j|ƒqnx:t|
ƒD]} |j|    d| gƒqgWq|j|ƒqWn|}tj|ƒd} |jƒ}tjƒ}t    j
|ƒ}xêt j D]ß\}}||}||}|j ||ƒs qèn| t|ƒdkr:Pn|| }| d7} t|tƒrŠ|\}    }
} tj|    |
| d|ƒ}n|s–qènt|||dt j|gd|d|d|ƒqèWdS(NiiR^t    ownerInfot    dropNPCIDt isOnlySelfSeeRt(RÄtlistR–txrangetrandomtshuffleRRRPR#R~RtDef_DropItemAreaMatrixRxR™R&tGetOutPutItemObjRR(R^titemListtnpcIDR†R‡RtisDropDisperset dropItemListtitemInfoRÖt    itemCountt isAuctionItemt_R‹RatgameMapRtReRftresultXtresultYR½((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyt DoMapDropItemTsH     
 
 
 
c Csåt|||||ƒ}tjƒj|||t|ƒ|ƒ}    |rr|d \}
} |    j|
ƒ|    j| ƒn|dkrŽ|    j|ƒn|rátj    ||j
ƒƒ} tj d|    j ƒ|    j ƒ|    jƒ|| fƒn|    S(NiisUAddMapDropItem mapItemID=%s,ownerType=%s,ownerID=%s,mapItemDataStr=%s,itemNoteDict=%s(tGetMapDropItemDataStrRR t AddDropItemR™R€R‚t SetSightLevelRFR{R-RRïR(R)( RgRhR½teffIndexRRRRtt itemDataStrR‹RkRlt itemNoteDict((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyR‹s      ,cCsäi}tj|ƒr+|jt|ƒƒn(|jƒdkrS|jƒ|tj<n|dkro||tj<n|r¥t|ƒdkr¥|dr¥|d|tj    <n|r»||tj
<n|rÑd|tj <nt j |dtƒS(NiiiRã(RFtCheckItemIsEquiptupdatetGetMapEquipInfoR-RtDef_MapItemInfo_CounttDef_MapItemInfo_EffectR™R¶RtDef_MapItemInfo_OnlySelfSeeRäRåR2(R½RRRRtitemData((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyRžs "cCs&i}|jƒr"d|tj<n|S(Ni(t
GetIsSuiteRtDef_MapItemInfo_IsSuite(R½tinfoDict((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyR¼s cCs#|jƒtjdƒkrtStS(NtEquipPlus_EquipType(R+RÚRÛR]R2(R½((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pytCheckItemCanPlusÈsicCsŸtjƒj|ƒ}|j}|j}|jƒjtjƒ}|j    |ƒ}t
j |ƒsadS|j ƒ}t jdƒ}    t|ƒ|    kr£tjd|ƒdSt
j|ƒrÇtjd|ƒdS|    t|ƒ}
|
d} |dkrú|
d} n|dkr|
d} ndS| s!dSi|tj6} tj||| tj| ƒsSdSt
j||dtdƒtj|| ddtjgƒtj|dƒdS(    Nt ItemTimeOuts/ItemTimeOut Ã»ÓиÃÎïÆ·Ðø·ÑÅäÖàtimeOutItemID=%ss+¹ýÆÚÎïÆ·Ðø·Ñ ¸ÃÎïÆ·Î´¹ýÆÚ  timeOutItemID=%siiit    RenewItemtGuardian_ContinuePay(RR‡RˆRyRìRªR«R5RBR¬RFRÉR,RÑRÒR¼R³RÌRRR#R›tDef_Cost_BuyStoreItemtDelItemR2R&tGivePlayerItemR$(R‹RŒRR^ttimeOutItemIndexRïtitemPackt timeOutItemt timeOutItemIDtitemTimeOutDictt    renewInfot changeItemIDt    needMoneyR$((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyt OnItemRenewÞs>         
    c    CsÒ|j}|j}|j}tjƒj|ƒ}|jƒj|ƒ}|sOdS|rYdS|j|ƒ}t    j
|ƒsˆtj dƒdSt j |ƒrÎtj d|jƒ|jƒƒt j|t|ƒdSdS(Ns ÎïÆ·²»´æÔÚ!sÍæ¼ÒÅÄÆ·¹ýÆÚ: itemID=%s(RuRytIsAllRR‡RˆRªR«R¬RFRÉR³R&R>R,RtSetIsAuctionItemR2(    R‹RŒRR…RJtisAllR^R¼R½((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyt OnItemTimeouts$              (OR5RR&RRFRR#R;RÚR¦RRER—R›RÑRXRÝRVR“RRRäR_t    ImportAllRR R
R}R†RŽR’RŠR¡R R£R²R­R®R¸RàRÚR±RíRARNRDRÊRËRrRŒRŽR§RªRžR%RRRÉRÄRËRÌRÐRØRÎRòRöRÿR]RR2RRRR&R¨tDef_Discount_ItemTypetDef_SelectMore_ItemTypeR5R9(((scD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Item\ChItem.pyt<module>"s”                           "            (    ‘                 d    
    9                 
!    q     9        "    L    .    ?        0            3         +            (    '            M7               0