cehua-TT
2018-08-23 4f0d56baa5bfbe85568a2c56710be27005d048b7
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
3\`[c@s&ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZd„Zd„Zd„Zd„Zged„Zd„Zd„Zd    „Zd
„Zd „Zd „Zd „Z d„Z!d„Z"d„Z#d„Z$d„Z%d„Z&d„Z'd„Z(d„Z)d„Z*d„Z+d„Z,d„Z-d„Z.d„Z/d„Z0d„Z1d„Z2d „Z3id!„Z4d"„Z5dS(#iÿÿÿÿNcCs|jƒ}|dkrdS|jƒtjkr5dStjƒj|jƒƒ}|j    ƒ}|j
t j |ƒ|j dƒ|jtjƒtS(Ni(t GetActionObjtNonetGetGameObjTypet IPY_GameWorldtgotNPCt    GameWorldt GetNPCManagert GetNPCByIndextGetIndextGetNPCIDtSetDicttChConfigtDef_PlayerKey_TradeTagNPCtSetForbiddenResetItemtBeginSpecialEventt ShareDefinetTYPE_Event_ShoptTrue(t    curPlayerttickt curActionObjt curActionNPCtcurActionNPCID((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyt
StartTradeMs    cCsdS(Ni((((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pytGetDirectNpcIDescCstj|ƒtS(N(t
EventShellt DoExitEventR(RR((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyt    ExitEventns cCs¡tjƒj|ƒ}||jtjƒtjtjkr?dS|jtj|ƒ|j}tj    ƒj
|ƒtj    ƒj ƒ}|dkrdS|j |ƒdS(Ni( RtGetPlayerManagertGetPlayerByIndext GetTickByTypeR tTYPE_Player_Tick_QueryFuncDatatTYPE_Player_Tick_Timet SetTickByTypet    NPCShopIDt GetGameDatatFilterShopItemByShopTypetGetFilterShopItemCountt BeginShopEx(t playerIndext
clientDataRRt tradeTagNPCt shopItemCount((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pytQueryNPCShopItemxs      c
Cstjƒ}g|_|rExÁ|D]}t|||j|ƒq"Wnštjƒ}x‹t|jƒƒD]w}|j|ƒ}|j    ƒs‹qdnt
j |j ƒ}|j |ƒ}    |    dkr¿qdnt||j ƒ|j|ƒqdWt|jƒ|_tj||ƒdS(Ni(tChPyNetSendPackttagMCShopItemDayBuyCntInfot DayBuyCntListt__AppendShopItemDayBuyCntInfot IpyGameDataPYtIPY_Datatxranget GetStoreCounttGetStoreByIndext GetLimitCntR tDef_PDict_ShopItemDayBuyCnttGetIDtNomalDictGetPropertytlentCountt NetPackCommont SendFakePack(
Rt itemIndexListtisResett dayBuyCntInfot    itemIndext
ipyDataMgrtitshopItemt dayBuyCntKeyt curDayBuyCnt((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pytSyncShopItemTodayBuyCountšs$          cCsZtjƒ}||_tj|}|j|ƒ}||_t|ƒ|_|j    |ƒdS(N(
R,ttagMCShopItemDayBuyCntt    ItemIndexR R6R8tBuyCnttinttIsResettappend(RR@t dayBuyCntListR>t itemDayBuyCntRDRE((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyR/µs           cCst|ƒdS(N(RF(R((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pytShopItemOnLoginÀs
cCs‚|tjkrdg}nV|tjkrmdg}tjƒjtjƒ}|ddkrqddg}qqndSt||ƒdS(Niiii(RtDef_OnEventTypetDef_OnEventTypeExRt GetGameWorldtGetGameWorldDictByKeytDef_Notify_WorldKey_ServerDayt__ResetShopItemBuyCount(Rt onEventTypet refreshTypet openServerDay((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyt ShopItemOnDayÇs      cCst||gƒdS(N(RU(RRV((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pytShopItemOnWeek×scCsH|tjkrd}n|tjkr0d}ndSt||gƒdS(Nii(RRPRQRU(RRVRW((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pytShopItemOnMonthÞs        cCsßg}tjƒ}x­t|jƒƒD]™}|j|ƒ}|jƒsLq%n|jƒ|krdq%ntj|j    ƒ}|j
|ƒ}|dkr˜q%nt j ||dƒ|j |j    ƒƒq%W|rÛt||tƒndS(Ni(R0R1R2R3R4R5tGetRefreshTypeR R6R7R8t PlayerControltNomalDictSetPropertyRLRFR(RtonEventTypeListt syncIndexListRARBRCRDRE((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyRUès"   cCsßg}tjƒ}x­t|jƒƒD]™}|j|ƒ}|jƒsLq%n|jƒ|krdq%ntj|j    ƒ}|j
|ƒ}|dkr˜q%nt j ||dƒ|j |j    ƒƒq%W|rÛt||tƒndS(Ni(R0R1R2R3R4R5t GetShopTypeR R6R7R8R]R^RLRFR(Rt shopTypeListR`RARBRCRDRE((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pytResetShopItemBuyCountByShopTypeüs"   c     Cs¶|j}|jƒjtjƒ}||jƒkr7dS|j|ƒ}| sY|jƒr]dS|jƒ}tj    |ƒ}|j
tj |j ƒ||j ƒƒs¼tj|dtj gƒdSt||ƒ\}}    t|ƒ|}|     sï| ródSi|j ƒtj6}
tj||    |tj|
ƒs+dS|jtj |ddtigƒt|jtjƒƒ} | jt|dƒdƒ} | dkr–d} ntj|tjt| ƒƒdS(NtGeRen_chenxin_676165teventt BuyItemBackitt0(tIndextGetItemManagertGetPackRt
rptRecycletGetCounttGetAttIsEmptyt ItemControlertPlayerItemControlert CanPutInItemtrptItemt GetItemTypeIDt    GetIsBindR]t
NotifyCodet__GetItemSellPriceRJR tDef_Cost_Reason_SonKeytPayMoneytDef_Cost_BuyItemBackt    PutInItemtFalsetstrR8tDef_Player_Dict_DelPackIndextreplaceR^( Rt
clientPackRtindextbackPacktcurItemt realPutCountt itemControlt    itemPricet    priceTypetinfoDictt
itemIndexs((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyRfs:          "     c1
Cs@tjƒ}|jƒ}|dkr(dS|jƒ}|s>dStjd|ƒ}|sZdS|jƒ}|jƒrEtj    j
t j iƒ}|j
t j dƒ}|sÃtjd||jƒƒdS|j
t jgƒ}    |    sâdS|t|    ƒkrþ|    dn |    |d}
||
krEtjd|||
|    f|jƒƒdSn|jƒ} | rm|jƒ| krmdS|jƒ} |jƒ} d}| s—| rQ| s©dg} n| s»dg} nt| ƒt| ƒkrätjdƒdS|jƒ}d}x4t| ƒD]&\}}||krPn| |}qW|dkrQtjd|ƒdSnd}tj|}|dkrî|j|ƒ}td||ƒ}|dkr¹tjd    ||fƒdS||krîtjd
||||fƒ|}qîn|jƒ|jƒ|j ƒ}}}|j!ƒ}|j"ƒ|j#ƒ}}||9}|j$ƒ}|j%ƒ}g}|r–t&|||ƒ}|j'||||gƒnxC|D];\}} }!t&|||ƒ}|j'|| ||!gƒqW|stj(d |||fƒdSd}"i}#xßt|ƒD]Ñ\}}$|$d}|$d}%tj)ƒj*|ƒ}&|&sotj(d ||fƒdS|&j+ƒtj,krt j-ntj.}'t/t0j1t2|%ƒ|&j3ƒƒƒ}(|#j
|'dƒ|(|#|'<|dkr|}"qqW|"sødStjd |||||"|#f|jƒƒxb|#j4ƒD]T\}'}(|(t5j6||'|(ƒkr1|j7|tj8ƒt9j:|d|'gƒdSq1Wt;||||"|j<ƒƒrÔtjd|||j<ƒf|jƒƒdSt9j=||ƒ})i|d6|d6|d6|d6|"tj>6}*t9j?|||tj@|*|ƒsJ|j7|tjAƒdSt9j=||ƒ}+|dkr’t9jB||||ƒtC||gƒni|d6|d6|d6|d6|d6|)d6|+d6},|tjDgk}-tEjF|ƒ}.xõ|D]í\}}}tEjG|||ƒ}/|/s!qñn|/jHƒ}0|/j+ƒtj,krKt j-ntj.}'|.jI|'|/dtjJ|-|,gƒsˆ|/jKƒqñntLjM|||ƒ|jNƒrñ||"krñt9jOd|jNƒ|jPƒ|"|0gƒqñqñWtLjQ||ƒtR|||ƒ|tjSddiƒjTƒkr<tUjV|tjW|ƒndS(NitStoresÏÞÊ±ÌØ»Ý·Ç»î¶¯ÖУ¡state=%siÿÿÿÿisOÏÞÊ±ÌØ»Ý·Ç»î¶¯ÖеÄÉ̵êÀàÐÍ£¡state=%s,shopType=%s,actShopType=%s,shopTypeList=%ss)    ¹ºÂòÎïÆ·LimitVIPLV  LimitCnt ³¤¶È²»Í¬s    vip%s²ÅÄܹºÂòs6BuyShopItem ½ñÈÕ¹ºÂò´ÎÊýÒÑÂú£¡shopType=%s,itemIndex=%ssQBuyShopItem ÐÞÕý¹ºÂò´ÎÊý£¡shopType=%s,itemIndex=%s,clientBuyCount=%s,canBuyCnt=%ss@Store shop item error! shopType=%s,totalItemList=%s,itemPrice=%ss,Store shop item error! shopType=%s,itemID=%ssh¹ºÂòÎïÆ·: shopType=%s,itemIndex=%s,clientBuyCount=%s,totalItemList=%s,mainItemID=%s,needPackSpaceDict=%sRdsAStore shop item buy limit! shopType=%s,itemIndex=%s,limitValue=%st TotalItemListtClientBuyCounttShopTypet ShopItemIndext    ItemPricet    MoneyTypet BeforeMoneyt
AfterMoneyRetCeremonyFireParty(XRtIPY_CBuyItemListtGetBuyItemIndext GetBuyCountR0tGetIpyGameDataRatGetOperationActionShopt
PyGameDatatg_operationActionDicttgetRtOperationActionName_SpringSalet ActKey_StateRtDebugLogt GetPlayerIDtActKey_ShopTypeListR9t
GetLimitLVtGetLVt GetLimitVIPLVR5tLogtGetVIPLvt    enumerateR R6R8tmaxt    GetItemIDt
GetItemCntRut GetItemListExt GetMoneyTypet GetMoneyNumtGetJobt
GetJobItemt__GetShopJobItemRLtErrLogR#tGetItemByTypeIDtGetTypetDef_ItemType_RunetrptRuneRsRJtmathtceiltfloatt GetPackCounttitemst
ItemCommontGetItemPackSpacet
ShopResultt
tsrNoPlaceR]RvtCheckBuyItemLimitExt GetLimitValuetGetMoneyRxRytDef_Cost_BuyStoreItemt
tsrNoMoneyR^RFtTYPE_Price_Silver_MoneyRpRqtGetOutPutItemObjt GetUserDataR{tItemGive_BuyItemtClearRtEventRespons_BuyItemt GetNotifyMarkt WorldNotifytGetNametEventRespons_ShopBuytSyncShoppingResulttGetFuncEvalCfgtvaluestPlayerFairyCeremonytAddFCPartyActionCnttDef_PPAct_Fireworks(1RRt buyItemListR@tclientBuyCounttipyDatatshopTypetactInfotstateRbt actShopTypetlimitLVtLimitVIPLVListt LimitCntListt limitBuyCnttcurVIPlvRBtviplvRERDt    canBuyCnttitemIDt    itemCounttisBindt
itemListExR‡R†tjobt jobItemListt totalItemListt    jobItemIDtitemIDExt itemCountExtisBindExt
mainItemIDtneedPackSpaceDicttitemInfotitemCntRƒtpackTypet    needSpacet beforeMoneyRˆt
afterMoneytdataDictt isForceEventR…t
curItemObjtuserData((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pytBuyItemCs      *                        & 
 
 
'%      #     !  '$
/!cCs™x’|D]Š}t|ƒttgkr@tjd||fƒ|S||kr|dksj|t|ƒkr…tjd||fƒ|S||dSqW|S(Ns3É̳ÇÖ°ÒµÎïÆ·×é¸ñʽ´íÎó!shopItemID=%s,jobItemList=%sis>É̳ÇÖ°ÒµÎïÆ·ÅäÖôíÎó,ûÓиÃÖ°Òµ¶ÔÓ¦ÎïÆ·ID!shopItemID=%s,job=%si(ttypetlistttupleRR°R9(RåRáRæt jobItemIDList((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyR¯és  cCs2tjƒ}||_||_tj||ƒdS(N(R,ttagMCShoppingResultRHtItemCntR;R<(RR@Rït
resultInfo((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyRÍös
         cCsÑ|dkrtj||ƒ S|d    krv|jƒdkr?tS|jƒ}|dkrl|jtjƒ}n||kS|d
kr›tj    |ƒ}||kS|t
j ddiƒj ƒkrÍt j||ƒ StS( Niii    i
iiR“i(ii    i
(i(t
PlayerRunetGetIsOpenByRuneIDt GetFamilyIDRt GetFamilyLVR8R tDef_Player_Dict_FamilyLVRtGetCreateRoleDaysR0RÎRÏRÐtIsCanBuyFireworksR|(Rt    shopNPCIDR@t    curItemIDt
limitValuet curFamilyLVtplayerCreateRoleDays((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyR¾s    
 
!cCsVd}|jtjƒ}|s%tƒSt||ƒr8|Stjd||jƒƒ|S(Niÿÿÿÿs.GetCurStoreItemList:trade tag NPC not match:%s(t GetDictByKeyR R RtCheckTradeTagNPCRR°RŸ(RRR)((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pytGetCurTradeTagNPC/s  cCsd|jƒ}|stS|jƒtjkr/tStjƒj|jƒƒ}|j    ƒ|kr`tSt
S(N( RR|RRRRRRRR    R(RR)RR((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyR Fs cCsCtjƒ}|jƒ}|jƒ}tj}t|||g|ƒS(N(RtIPY_CPlayerSellItemt GetPackTypet GetItemIndexR tDef_ShopType_NpcShopt SellPackItem(RRtsendDataRðR@RÖ((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pytSellItemƒs
       cCsotjƒj|ƒ}|j}|j}|s1dStj}t||||ƒ}|rk|jt    j
dƒndS(Ni( RRRtPackTypeRHR RRtSync_MakeItemAnswerRtDef_mitKeySell(RR(RRRðt ItemIndexListRÖtisOk((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pytOnSellManyItem•s            c
CsRd}|jƒj|ƒ}|dkr+tSt}ttjtjƒ}x·|D]¯}|j|ƒ}    t    ||    ƒswqMnt
}|    j ƒ}
t ||    ƒ\} } t | ƒ|
} || 7}|    jƒ|ko×tj|    ƒ }tj||    |
ttjd|ƒqMW|s
tSi}tj|tj|tj|tƒtj|dtj|gƒt
S(Nit    isForceDRt
GetMoney01(RjRkRR|trangeR tDef_ItemType_retWeapontDef_ItemType_retNeckRnt__CheckItemSellRRmRwRJR²RptItemNotNeedRecordRºtDelItemtItemDel_SellPackItemR]t    GiveMoneyRRÃtDef_GiveMoney_SellPackItemRv(RRðR=RÖttotalSellPriceR‚t    hasSellOKtnotForceRecordEquipTypeListR@Rƒt curItemCounttcurItemSellPricetcurItemSellTypetcurAllItemSellPriceRt addDataDict((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyR©s.   
 
"&"cCsûdSt|jtjƒƒ}|jƒjtjƒ}tj    |tjƒ}|dkrt
|dƒd}|j |ƒ}|j ƒ|d}n+|j t|dƒdƒ}|j |ƒ}d||df}|j|ƒtj|tjt
|ƒƒdS(NiÿÿÿÿiiRgs%s%s(R}R8R R~RjRkRRlRºtGetEmptyIndexInPackRJRnRÇRtPutInR]R^(RRƒR‰R‚t
emptyIndextitem((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pytPutItemInBuyBackPackØs 
  cCsÖtj|ƒs#tj|dƒdStj|ƒrFtj|dƒdS|jƒdkrltj|dƒdSt||ƒ\}}t|ƒ|j    ƒ}| s¥| r¹tj|dƒdStj
|||ƒsÒdSt S(NtGeRen_chenxin_644055titemuse_chenxin_31379itGeRen_lhs_272921( RºtCheckItemCanUseR]RvRpt IsEventItemt
GetCanSellRwRJRmt CanGiveMoneyR(RRƒR†R‡((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyR!õs"cCstj}|jƒ}||fS(N(RRÃtGetSilverPrice(RRƒR‡t curItemPrice((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyRws     cCs-|jƒtjkr)tj|dƒtStS(NtGeRen_chenxin_740826(tGetPlayerActionR tDef_Player_DoEvent_StateR]RvR|R(R((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pytCheckPlayerCanStateEventDscCs|jƒtjkS(N(R²R tDef_Compose_Can_Put_List(Rƒ((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyt__CheckItemCanPutInComposePackQsc    Cs’t||||ƒ}|dkr%dStj|ƒ}|j||jƒ||jƒƒsrtj|d|gƒdStj    ||||||ƒdS(NRd(
t__GetBackPackOperateItemRRpRqRrRtRuR]RvtDragItem(    Rt srcBackpackt desBackPacktsrcIndext    destIndext putItemCountRtscrItemR…((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pytBackpackOperate_s $cCsI|tjkrEt|ƒsEtjd|jƒ|jƒfƒtSntS(Ns+BackpackOperate ItemErr = %s, ItemType = %s(    R tDef_ComposePack_ListRBRR°RtR²R|R(RJRF((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyt__CheckBackPackOperateus
 #cCsŠ|tjks|tjkrBtjd||f|jƒƒdS|jƒj|ƒj|ƒ}tj    |ƒssdSt
||ƒs†dS|S(NsHPackItemExchange packErr, srcBackpack = %s,             desBackPack = %s( R tDef_BackpackOperate_ListRR°R7RjRkRnRºR7RM(RRERFRGRJ((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyRC…scCsyt||||ƒ}|dkr%dS|jƒj|ƒj|ƒ}|dks[|jƒr_dStj||||ƒdS(N(RCRRjRkRnt GetIsLockedRºtDoLogicSwitchItem(RREt destBackPackRGRHRRJtdestItem((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pytPackItemExchange¢s cCs}t|ƒ}xjtd|dƒD]V}||}||d}|j|ƒ}|dkre|||<q||c|7<qW|S(Niii(R9RR›R(t    moneyListt payMoneyDicttlengthRt    moneyTypetmoneytpayMoney((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pytGetPayMoneyDict¸s 
  cCs:x3|jƒD]%\}}tj|||ƒs tSq WtS(N(R¹R]t    HaveMoneyR|R(RRURWRX((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyt CheckPayMoneyÍs(6R,R;RRRRpR R]RºRtDataRecordPacktEventSrctChItemR0Rt PlayerSuccessRÐR™trandomRµRRRR+R|RFR/RORYRZR[RURcRfRøR¯RÍR¾RR RRRR3R!RwR@RBRKRMRCRSRZR\(((si.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Event\EventSrc\FunctionNPCCommon.pyt<module>2sh                                    
    "                     
            0    ¦              .        =            /        #    ,