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
æù|gc@s˜ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlZddlZedddƒZ\ZZZZZd„Zd„Zd„Zd„Z d„Z!d    „Z"d
„Z#d „Z$d „Z%d „Z&e'd„Z(dS(iÿÿÿÿNiicCst|ƒdS(N(tSync_TreasureInfo(t    curPlayer((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytDoTreasureOpen3s
cCst|ƒdS(N(R(R((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytOnTreasureLogin8s
cCs§g}tjƒ}xxt|jƒƒD]d}|j|ƒ}|jƒ}|jtj|ƒsbq%n|j    |ƒt
j |tj|dƒq%W|r£t ||ƒndS(Ni( t IpyGameDataPYtIPY_DatatxrangetGetTreasureSetCounttGetTreasureSetByIndextGetTreasureTypetNomalDictGetPropertytChConfigtDef_PDict_TreasureFreeCounttappendt PlayerControltNomalDictSetPropertyR(Rt syncTypeListt
ipyDataMgrtitipyDatat treasureType((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytOnDay>s   c    Cs+x|D]}tjd|ƒ}|s+qn|jƒ}|jƒ}|re|retj|||ƒntj|tj    |dƒtj|tj
|dƒtj|tj |dƒtj|tj |dƒ|j ƒ}x:|jƒD],}tj|tj|t|ƒfdƒqæWqWt||ƒdS(Nt TreasureSeti(RtGetIpyGameDatatGetRecycleItemMailt GetCostItemIDt ItemControlert RecycleItemRRR R tDef_PDict_TreasureCounttDef_PDict_TreasureLucktDef_PDict_TreasureCntAwardtGetGridNumMaxLimitInfotkeystDef_PDict_TreasureGridCnttintR(RttreasureTypeListRt
setIpyDatatrecycleItemMailt
costItemIDtgridNumMaxLimitInfot
gridNumStr((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytResetTreasureTypeLs"     . cCstj||ƒrtStS(N(tPlayerActYunshitIsActTreasureTypetTruetFalse(RR((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyR+bscTCstjƒj|ƒ}|jƒ}|jƒ}|j}|j}|j}tjd||||f|ƒt    j
d|ƒ}    |    s„dS|    j ƒrºt ||ƒsºtj d||ƒdSn|    jƒ}
|
sàtjd|ƒdS|dksþ|t|
ƒkrtj d||f|ƒdS|
|} | s@tjd|ƒdS|    jƒ} |    jƒrˆtj|| tƒsˆtjd| |ƒdSn|d    kr|    jƒ} | sÄtj d
||f|ƒdS|jtj|ƒ}|| }|| krmtjd || | f|ƒdSnY|d krê|    jƒ}|    jƒ}| sX| sX|t|ƒkrvtj d ||f|ƒdS||}| sŽ| r’dStj||ƒ\}}}td|||ƒ}||}d}|dkrm|    jƒ}|    jƒ}| s#| s#|t|ƒks#|| rAtj d||f|ƒdS||}t||ƒ}||}tjd|||||f|ƒ|rÀ|}i|tj 6}t!j"|||ƒsädSqçtjd||||f|ƒdSqmnƒ|    jƒ}|    jƒ}| s"| s"|t|ƒkr@tj d||f|ƒdS||}|sTdSt!j"|||ƒsmdSt    j#dd|i|d6ƒ}|s¶tj d||jƒf|ƒdS|j$ƒ} g}!| rõxB| D]\}"}#|!j%|#ƒqÕWn|    j&ƒr|    j&ƒg}!ntjd|!| f|ƒ|    j'ƒ}$|    j(ƒ}%|    j)ƒ}&|jtj*|ƒ}'|'}(|jtj+|ƒ})|)}*|j,ƒ}+|    j-ƒ},|j.ƒ}-tjd|+|ƒtjd|,|-f|ƒ|    j/ƒ}.|    j0ƒ}/i}0x:|/j1ƒD],}1|jtj2||1fƒ|0t|1ƒ<qWtjd|/|0f|ƒg}2xæt3| ƒD]Ø}3t4|(|%|&ƒ}(|*d    7}*tjd|3d    |*|(f|ƒ|/rÊtjd|/|0f|ƒnt5||!|(|$|ƒ\}4}5t6|5|0|/ƒ}5tjd|4|ƒtjd|5|ƒg}6|(|&krˆ|!rˆ| rUt6| |0|/ƒ}6nt6d|!dfg|0|/ƒ}6tjd|6ƒn|6 rÑ|*|+krÑ|+|*}7t6|7|0|/ƒ}6tjd |*|6fƒn|6 r |,r |*|,dkr |-r t6|-|0|/ƒ}6tjd!|,|6fƒnd}8x|8d"kr:    |8d    7}8|8d    ksR|6 r[|5}6ntj7|6ƒ}#|#|!krŸ|#|2krŸtjd#|#|2fƒq)n|#s«q)n|2j%|#ƒtjd$|#|2f|ƒ|#|!krûd}(tjd%|#|ƒn|#|0kr6    |0|#d    |0|#<tjd&|#|0f|ƒnPq)WqcWtjd'|2|ƒt|2ƒ| krƒ    tj d(||f|ƒdSd}9|j8ƒ}:|j9ƒ};|j:ƒ}<|j;ƒ}=g}>t    j<dd ƒ}?xd|2D]\}#t=|#ƒ}#|#|;kr |;|#\}@}At>|:|@|=ƒ}@|@s<
tj d)||#f|ƒdS|@|?kr g}B|?|@}Cxx|CD]p}Dtj?ƒj@|Dƒ}E|EjAƒtjBkrÂ
tCjD||Dƒ rÂ
tjd*|@|Df|ƒq_
n|Bj%|Dƒq_
W|Bsý
tj d+|||#|@f|ƒdStEjF|Bƒ}@q n    |#|<krý |<|#}Ft    jGd,|Fƒ}G|GsD dSg}Hxn|GD]f}I|IjHƒ|IjIƒ|IjJƒ}J}@}Atj?ƒj@|@ƒ}E|Esž qQ n|Hj%|J|@|AggƒqQ W|Hså tj d-|||#|Ff|ƒdStjK|Hƒ\}@}Antj d.||#f|ƒdS|>j%|#|@|A|9gƒqØ    W|d    kru t!jL|tj||ƒtjd/||ƒnÜ|d kr tjM|||||tjNƒtjd0||f|ƒ|rQ i|d6|d16|d26|d36}t!jO|||tjP||ƒqQ nJi|d6|d16}t!jO|||tjP|ƒtjd4||f|ƒt!jL|tj+||*ƒx$|!D]}K|K|2krr d}(Pqr qr Wt!jL|tj*||(ƒx:|0jQƒD],\}#}Lt!jL|tj2||#f|Lƒq¹ W|    jRƒ}M|    jSƒ}N|Mr#|Nr#t!jT||M|Nƒn|tUkrŠtVjW|tjX| ƒtYjZ|tj[| ƒt\j]|tj^| ƒt_j`|tja| ƒn|tbkrñtVjW|tjc| ƒtYjZ|tjd| ƒt\j]|tje| ƒt_j`|tjf| ƒn±|tgkrXtVjW|tjh| ƒtYjZ|tji| ƒt\j]|tjj| ƒt_j`|tjk| ƒnJ|tlkr}t_j`|tjm| ƒn%|tnkr¢t_j`|tjo| ƒntpjq|tpjr|| ƒg}Otsjt|ƒ}PxÉ|>D]Á\}#}@}A}9tsju|@|Atvd5|ƒ}Qtjw|Qƒ}Rt|#ƒ|.krSt!jxdd6|jyƒ|@|Qjzƒ|Agƒn|Os~|Pj{| |Qd7tj|tvigƒ r×|Oj%|Rƒ|Qj}ƒq×q×W|Or»t!j~d8|g|Oƒntjd9||*|(|M|N|0f|ƒtjd:|>|ƒtjd;|O|ƒtj€ƒ}S|Sj}ƒ|M|S_|N|S_‚|%|S_ƒt=|>ƒ|S_„t|Sj„ƒ|S_…t†j‡||Sƒtˆ||gƒdS(<NsBÍæ¼ÒÑ°±¦: treasureType=%s,treasureIndex=%s,costType=%s,playerLV=%sRs-¸ÃÑ°±¦ÀàÐͷǻÖУ¬ÎÞ·¨Ñ°±¦! treasureType=%ssûÓÐÑ°±¦´ÎÊýÁбíÅäÖÃ!is3Ñ°±¦´ÎÊýË÷Òý²»´æÔÚ!treasureType=%s,treasureIndex=%ssûÓÐÑ°±¦´ÎÊýÅäÖÃ!s"¶ÔӦѰ±¦±³°üûÓпոñ×Ó!packType=%sisA¸ÃÑ°±¦ÀàÐÍË÷Òý²»Ö§³ÖÃâ·Ñ´ÎÊýÑ°±¦!treasureType=%s,treasureIndex=%ss?½ñÈÕÃâ·Ñ´ÎÊý²»×㣬ÎÞ·¨Ê¹ÓÃÃâ·ÑÑ°±¦! freeCountToday=%s + %s > %sisA¸ÃÑ°±¦ÀàÐÍË÷Òý²»Ö§³ÖÏûºÄµÀ¾ßÑ°±¦!treasureType=%s,treasureIndex=%ssLÑ°±¦µÀ¾ß²»×㣬¸ÃÑ°±¦ÀàÐͲ»Ö§³ÖÏûºÄ»õ±ÒÑ°±¦! treasureType=%s,treasureIndex=%ssoÑ°±¦µÀ¾ß²»×㣬ʹÓöÔÓ¦»õ±Ò¿Û³ý: costItemID=%s,perItemGold=%s,lackCount=%s,lackCountCostMoney=%s,costGoldType=%ssKÑ°±¦ÏûºÄµÀ¾ß²»×ã!costItemID=%s,costItemNeedCount=%s,bindCnt=%s,unBindCnt=%ssA¸ÃÑ°±¦ÀàÐÍË÷Òý²»Ö§³ÖÏûºÄ»õ±ÒÑ°±¦!treasureType=%s,treasureIndex=%st TreasureHousetMinLVt TreasureTypes3ÕÒ²»µ½¸ÃµÈ¼¶¶ÔӦѰ±¦¿âÅäÖÃ!treasureType=%s,curLV=%ssluckyGridNumList=%s, %ssbeSureCountDict=%ssensureCount=%s, %ss*gridNumMaxLimitInfo=%s,gridNumCountInfo=%ss%s,ÀۼƴÎÊý=%s,ÐÒÔË=%ss.    gridNumMaxLimitInfo=%s,gridNumCountInfo=%ss    »ù´¡±ýͼ=%ss    ³£¹æ±ýͼ=%si's    ¡¾ÂúÐÒÔ˱ýͼ¡¿: %ss    ¡¾µÚ%s´ÎÊý±Ø³ö±ýͼ¡¿: %ss    ¡¾Âú%s´ÎÊý±Ø³ö±ýͼ¡¿: %si2s5    ÐÒÔËÎïÆ·ÒѾ­³ö¹ý£¬²»ÔÙÖظ´²ú³ö£¡ gridNum=%s in %ss    ±¾´Î²ú³ö: gridNum=%s, %ss     ¡¾²ú³öÐÒÔ˸ñ×Ó¡¿: gridNum=%ss$    ¡¾¸üвú³ö´ÎÊý¡¿: gridNum=%s, %ssÑ°±¦¸ñ×Ó½á¹û: getGridResult=%ssHÑ°±¦Òì³££¬Êµ¼Ê»ñµÃÊýÁ¿ÓëÑ°±¦ÇëÇóÊý²»Í¬£¡treasureType=%s,treasureIndex=%ss-Ñ°±¦¸ñ×ÓÎïÆ·IDÒì³£!treasureType=%s,gridNum=%ss+δ½âËøµÄ·ûÓ¡²»²ú³ö£¡itemID=%s,randItemID=%ssRÑ°±¦Ëæ»ú¸ñ×ÓûÓпÉËæ»úµÄÎïÆ·!treasureType=%s,treasureIndex=%s,gridNum=%s,itemID=%stTreasureItemLibsQÑ°±¦Ëæ»ú¸ñ×ÓûÓпÉËæ»úµÄÎïÆ·!treasureType=%s,treasureIndex=%s,gridNum=%s,libID=%ss)Ñ°±¦¸ñ×Ó²»´æÔÚ!treasureType=%s,gridNum=%ss(ÏûºÄÃâ·Ñ´ÎÊý£¬¸üнñÈÕÒÑʹÓÃÃâ·Ñ´ÎÊý: %ss.¿Û³ýÑ°±¦µÀ¾ß,costItemID=%s,delCostItemCount=%st TreasureIndext
CostItemIDt    LackCounts$¿Û³ý»õ±Ò,costGoldType=%s,costGold=%sRtHappyXBteventtHappyXBUnEnoughshÑ°±¦³É¹¦: treasureType=%s,updTreasureCount=%s,updLuck=%s,addScoreType=%s,addScore=%s,gridNumCountInfo=%ss    treasureResult=%ss    mailItemList=%s(‰t    GameWorldtGetPlayerManagertGetPlayerByIndextGetLVt GetPlayerIDR0R2tCostTypetDebugLogRRt GetIsActTypeR+tErrLogtGetTreasureCountListtlent GetPackTypet GetCheckPackt
ItemCommontCheckPackHasSpaceR,tGetDailyFreeCountR
R R RtGetCostItemCountListtGetPackItemBindStateIndexInfotmaxtGetCostMoneyListtGetCostMoneyTypeR"tDef_Cost_Reason_SonKeyRt    HaveMoneytInterpolationSearchtGetLuckyItemRateListR tGetLuckyGridNumtGetLuckyRateFormatt GetOnceLuckyt GetFullLuckyRRtGetGridItemRateList3tGetEnsureCounttGetGridItemRateList2tGetNotifyGridNumListRR R!trangetmintGetUpdLuckyItemRateListtGetRemoveLimitGridRateListtGetResultByRandomListtGetJobtGetGridItemInfotGetGridLibInfotGetJobItemListtGetFuncEvalCfgtstrt
GetJobItemt GetGameDatatGetItemByTypeIDtGetTypetDef_ItemType_Runet
PlayerRunetGetIsOpenByRuneIDtrandomtchoicetGetIpyGameDataListt GetItemWeightt    GetItemIDt GetItemCounttGetResultByWeightListRtDelCostItemByBindtItemDel_TreasuretPayMoneytDef_Cost_TreasuretitemstGetAwardMoneyTypetGetAwardMoneyValuet    GiveMoneytTreasureType_RunetPlayerFairyCeremonytAddFCPartyActionCnttDef_PPAct_RuneTreasuretPlayerFeastTraveltAddFeastTravelTaskValuetDef_FeastTravel_RuneTreasuretPlayerBossReborntAddBossRebornActionCnttDef_BRAct_RuneTreasuret PlayerActTasktAddActTaskValuetActTaskType_TreasureRunetTreasureType_JipintDef_PPAct_TreasuretDef_FeastTravel_TreasuretDef_BRAct_TreasuretActTaskType_TreasureJipintTreasureType_JueshitDef_PPAct_JSTreasuretDef_FeastTravel_JSTreasuretDef_BRAct_JSTreasuretActTaskType_TreasureJueshitTreasureType_GatherTheSoult!ActTaskType_TreasureGatherTheSoultTreasureType_GubaotActTaskType_TreasureGubaotPlayerActLunhuidiantAddLunhuidianValuetAwardType_TreasureRtPlayerItemControlertGetOutPutItemObjR-tGetMailItemDictt WorldNotifyt GetPlayerNamet GetUserDatat    PutInItemtItemGive_TreasuretCleart SendMailByKeytChPyNetSendPackttagMCTreasureResultt AddMoneyTypet AddMoneyValuetAddTreasureLucktTreasureResulttTreasureResultLent NetPackCommont SendFakePackR(Ttindext
clientDatattickRtplayerLVtplayerIDRt treasureIndextcostTypeR$ttreasureCountListt treasureCounttpackTypetdailyFreeCounttfreeCountTodaytupdFreeCountTodayR&t costItemListtcostItemNeedCounttcostItemIndexListtbindCntt    unBindCntt    lackCounttdelCostItemCounttlackCountCostMoneyt costGoldListt costGoldTypetcostGoldt perItemGoldt    moneyTypetinfoDictRtluckyItemRateListtluckyGridNumListt_tgridNumt luckFormulataddLucktmaxLucktcurLucktupdLucktcurTreasureCounttupdTreasureCounttbeSureCountDictt ensureCounttensureRateListtnotifyGridNumListR'tgridNumCountInfoR(t getGridResultttIndext baseRateListtcommItemRateListt curRateListtbesureGridRateListtdoCounttisBindtjobtgridItemInfoDicttgridLibInfoDictt jobItemListttreasureResulttrandItemIDDicttitemIDt    itemCounttcanRandItemListtrandItemIDListt
randItemIDtitemDatatlibIDt libItemListtitemWeightListtlibItemt
itemWeightt luckyGridNumtupdCountt addScoreTypetaddScoret mailItemListt itemControltitemObjt mailItemDicttsendPack((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytOnRequestTreasureqs0                    
 
     
 
   +
 
        
   
           *
!
#
                   
 (     
 &      "%  $        .+      
            c Csãg}|s||SxÈt|ƒD]º\}}|\}}t|ƒ|kr‚|t|ƒ}|r‚|j|dƒ|kr‚q!q‚n|dkr”|n|||dd}    |s¶|    n|dd|    }
|j|
|fƒq!W|S(Niiiÿÿÿÿ(t    enumerateRctgetR ( tsrcGridNumRateListRÕR't newRateListRtrateInfotrateRÉt
limitCounttsrcRatetnewRate((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyR\Ås     (cCs|jƒ}|dkr$|jƒn    |jƒ}|sE|jƒ}ng}x°t|ƒD]¢\}}    |    \}
} |dkr‚|
n|
||dd} | |krÃttjd||ƒƒ} n| } |sÕ| n|dd| }|j|| fƒqXW||fS(NiisTreasureLuckyRate%siÿÿÿÿ(R    tGetGridItemRateListFreetGetGridItemRateList1RùtevaltFormulaControltGetCompileFormulaR (RRÇRÍRÊR±Rt
srcPieListt updRateListRRýRþRÉtbaseRateRtspecRate((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyR[Ùs $ ( cCs“xŒ|D]„}t|ƒttgkr:tjd|ƒdS||kr|dksd|t|ƒkrtjd||fƒdS||dSqW|S(Ns!Ö°ÒµÎïÆ·×é¸ñʽ´íÎó!jobItemList=%sis6Ö°ÒµÎïÆ·ÅäÖôíÎó,ûÓиÃÖ°Òµ¶ÔÓ¦ÎïÆ·ID!job=%s,itemID=%si(ttypetlistttupleR8R@RB(RÞRäRát jobItemIDList((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyRdïs  c
Csetj|dƒ}|jƒ}tjd||ƒ}|s=dS|jƒ}|jƒ}|jtj    |ƒ}|t
d|ƒ@rŸtj d|||f|ƒdS|jtj |ƒ}||krâtj d|||f|ƒdS|t
d|ƒB}    t j|tj    ||    ƒtj d|||||    f|ƒtj||ddtigƒt||gƒdS(NitTreasureCntAwardisF¸ÃÑ°±¦´ÎÊý½±ÀøÒÑÁì½±! treasureType=%s,needTreasureCnt=%s,awardIndex=%ss?¸ÃÑ°±¦´ÎÊý²»×㣬ÎÞ·¨Áì½±! treasureType=%s,treasureCount=%s < %ss\ÁìÈ¡Ñ°±¦´ÎÊý½±Àø! treasureType=%s,needTreasureCnt=%s,awardIndex=%s,awardState=%s,updState=%sR6(R8tToIntDefR<RRt GetAwardIndextGetAwardItemListR
R RtpowR>RRRRtGivePlayerItemOrMailR-R(
RRtneedTreasureCntR¯Rt
awardIndext awardItemListt
awardStateR³tupdState((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytGetTreasureCntAwardüs0                c Cs|dkr`g}tjƒ}x?t|jƒƒD](}|j|ƒ}|j|jƒƒq1Wntj    ƒ}|j
ƒg|_ xh|D]`}tj d|ƒ}|sªq†n|j ƒrÎt||ƒsÎq†qÎn|jƒ}tjƒ}    |    j
ƒ||    _|jtj|ƒ|    _|jtj|ƒ|    _|jtj|ƒ|    _|jtj|ƒ|    _xd|jƒD]V}
t|
ƒ} tjƒ} | | _|jtj || fƒ| _!|    j"j| ƒqjWt#|    j"ƒ|    _$|j j|    ƒq†Wt#|j ƒ|_%t&j'||ƒdS(NR((tNoneRRRRRR R    R¢ttagMCTreasureInfoR tTreasuerInfoListRR?R+RttagMCTreasureTypeInfoR0R
R Rt    LuckValueRt TreasureCountR tFreeCountTodayRRR R"ttagMCTreasureGridLimittGridNumR!tGridCnttGridLimitCntListRBt GridLimitCntt    InfoCountR©Rª( RRRRRttreasureInfoPackttTypeR$R't    tTypeInfoR(RÉt    gridLimit((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyRsF   
            
          ()R8Rit ShareDefinet GameFuncCommRt IPY_GameWorldRR¢RRR©RR~R{tPlayerNewFairyCeremonyR•R*R„RER RkttimeRYtTreasureTypeListR‡RzRŒR‘R“RRRR)R+RøR\R[RdRRR(((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyt<module>sD                          &                        ÿU