hwj35
2025-06-23 aa0f971ae9a59f0fd98d57b6c1d1663a270be92c
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
3[‡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ƒ}xªt|jƒƒD]–}|j|ƒ}|jƒ}|jtj|ƒ rz|jtj    |ƒ rzq%n|j
|ƒt j |tj|dƒt j |tj    |dƒq%W|rÕt ||ƒndS(Ni(t IpyGameDataPYtIPY_DatatxrangetGetTreasureSetCounttGetTreasureSetByIndextGetTreasureTypetNomalDictGetPropertytChConfigtDef_PDict_TreasureCountTodaytDef_PDict_TreasureFreeCounttappendt PlayerControltNomalDictSetPropertyR(Rt syncTypeListt
ipyDataMgrtitipyDatat treasureType((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytOnDay>s   c    CsEx1|D])}tjd|ƒ}|s+qn|jƒ}|jƒ}|re|retj|||ƒntj|tj    |dƒtj|tj
|dƒtj|tj |dƒtj|tj |dƒtj|tj |dƒ|jƒ}x:|jƒD],}tj|tj|t|ƒfdƒqWqWt||ƒdS(Nt TreasureSeti(RtGetIpyGameDatatGetRecycleItemMailt GetCostItemIDt ItemControlert RecycleItemRRR R tDef_PDict_TreasureCountR tDef_PDict_TreasureLucktDef_PDict_TreasureCntAwardtGetGridNumMaxLimitInfotkeystDef_PDict_TreasureGridCnttintR(RttreasureTypeListRt
setIpyDatatrecycleItemMailt
costItemIDtgridNumMaxLimitInfot
gridNumStr((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytResetTreasureTypeNs$     . cCstj||ƒrtStS(N(tPlayerActYunshitIsActTreasureTypetTruetFalse(RR((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyR,escXCstjƒ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ƒ} |jtj|ƒ} | | }| r¢|| kr¢tjd| | || f|ƒdS|    jƒ}|    jƒrêtj||tƒsêtjd    ||ƒdSn|d
krv|    jƒ}|s&tj d ||f|ƒdS|jtj|ƒ}|| }||krÏtjd || |f|ƒdSnY|d krL|    jƒ}|    jƒ}| sº| sº|t|ƒkrØtj d||f|ƒdS||}| sð| rôdStj||ƒ\}}}td|||ƒ}||}d}|dkrÏ|    jƒ}|    j ƒ}| s…| s…|t|ƒks…|| r£tj d||f|ƒdS||}t!||ƒ}||}tjd|||||f|ƒ|r"|} i|tj"6}!t#j$|| |ƒsFdSqItjd||||f|ƒdSqÏnƒ|    jƒ}|    j ƒ}| s„| s„|t|ƒkr¢tj d||f|ƒdS||}|s¶dSt#j$|||ƒsÏdSt    j%dd|i|d6ƒ}"|"stj d||jƒf|ƒdS|"j&ƒ}#g}$|#rWxB|#D]\}%}&|$j'|&ƒq7Wn|    j(ƒru|    j(ƒg}$ntjd|$|#f|ƒ|    j)ƒ}'|    j*ƒ}(|    j+ƒ})|jtj,|ƒ}*|*}+|jtj-|ƒ},|,}-|"j.ƒ}.|    j/ƒ}/|"j0ƒ}0tjd|.|ƒtjd|/|0f|ƒ|    j1ƒ}1|    j2ƒ}2|    j3ƒ}3i}4x:|3j4ƒD],}5|jtj5||5fƒ|4t!|5ƒ<qtWtjd|3|4f|ƒg}6xæt6| ƒD]Ø}7t7|+|(|)ƒ}+|-d
7}-tjd|7d
|-|+f|ƒ|3r8tjd|3|4f|ƒnt8|"|$|+|'|ƒ\}8}9t9|9|4|3ƒ}9tjd|8|ƒtjd|9|ƒg}:|+|)krö|$rö|#rÃt9|#|4|3ƒ}:nt9d|$dfg|4|3ƒ}:tjd |:ƒn|: r?|-|.kr?|.|-};t9|;|4|3ƒ}:tjd!|-|:fƒn|: rŽ|/rŽ|-|/dkrŽ|0rŽt9|0|4|3ƒ}:tjd"|/|:fƒnd}<x|<d#kr¨    |<d
7}<|<d
ksÀ|: rÉ|9}:ntj:|:ƒ}&|&|$kr     |&|6kr     tjd$|&|6fƒq—n|&s    q—n|6j'|&ƒtjd%|&|6f|ƒ|&|$kri    d}+tjd&|&|ƒn|&|4kr¤    |4|&d
|4|&<tjd'|&|4f|ƒnPq—WqÑWtjd(|6|ƒt|6ƒ| krñ    tj d)||f|ƒdSd}=|j;ƒ}>|"j<ƒ}?|"j=ƒ}@|"j>ƒ}Ag}Bt    j?dd ƒ}Cxd|6D]\}&t@|&ƒ}&|&|?kr€ |?|&\}D}EtA|>|D|Aƒ}D|Dsª
tj d*||&f|ƒdS|D|Ckr‰ g}F|C|D}Gxx|GD]p}HtjBƒjC|Hƒ}I|IjDƒtjEkr0 tFjG||Hƒ r0 tjd+|D|Hf|ƒqÍ
n|Fj'|HƒqÍ
W|Fsk tj d,|||&|Df|ƒdStHjI|Fƒ}Dq‰ n    |&|@krk |@|&}Jt    jJd-|Jƒ}K|Ks² dSg}Lxn|KD]f}M|MjKƒ|MjLƒ|MjMƒ}N}D}EtjBƒjC|Dƒ}I|Is q¿ n|Lj'|N|D|Eggƒq¿ W|LsS tj d.|||&|Jf|ƒdStjN|Lƒ\}D}Entj d/||&f|ƒdS|Bj'|&|D|E|=gƒqF
W|d
krã t#jO|tj||ƒtjd0||ƒnÜ|d kru tjP|||||tjQƒtjd1||f|ƒ|r¿ i|d6|d26|d36|d46}!t#jR|| |tjS|!|ƒq¿ nJi|d6|d26}!t#jR|||tjS|!ƒtjd5||f|ƒt#jO|tj||ƒt#jO|tj-||-ƒx$|$D]}O|O|6krú d}+Pqú qú Wt#jO|tj,||+ƒx:|4jTƒD],\}&}Pt#jO|tj5||&f|PƒqAW|    jUƒ}Q|    jVƒ}R|Qr«|Rr«t#jW||Q|Rƒn|tXkrtYjZ|tj[| ƒt\j]|tj^| ƒt_j`|tja| ƒtbjc|tjd| ƒn|tekrytYjZ|tjf| ƒt\j]|tjg| ƒt_j`|tjh| ƒtbjc|tji| ƒn±|tjkràtYjZ|tjk| ƒt\j]|tjl| ƒt_j`|tjm| ƒtbjc|tjn| ƒnJ|tokrtbjc|tjp| ƒn%|tqkr*tbjc|tjr| ƒntsjt|tsju|| ƒg}Stvjw|ƒ}TxÏ|BD]Ç\}&}D}E}=tvjx|D|Etyd6|ƒ}Utjz|Uƒ}Vt!|&ƒ|1krá|2rát#j{d|2|j|ƒ|D|Uj}ƒ|Egƒn|Ss |Tj~||Ud7tjtyigƒ r_|Sj'|Vƒ|Uj€ƒq_q_W|SrIt#jd8|g|Sƒntjd9||-||+|Q|R|4f|ƒtjd:|B|ƒtjd;|S|ƒt‚jƒƒ}W|Wj€ƒ|Q|W_„|R|W_…|(|W_†t@|Bƒ|W_‡t|Wj‡ƒ|W_ˆt‰jŠ||Wƒt‹||gƒdS(<NsBÍæ¼ÒѰ±¦: treasureType=%s,treasureIndex=%s,costType=%s,playerLV=%sRs-¸ÃѰ±¦ÀàÐͷǻÖУ¬ÎÞ·¨Ñ°±¦! treasureType=%ssûÓÐѰ±¦´ÎÊýÁбíÅäÖÃ!is3Ѱ±¦´ÎÊýË÷Òý²»´æÔÚ!treasureType=%s,treasureIndex=%ssûÓÐѰ±¦´ÎÊýÅäÖÃ!s[Ѱ±¦ºó½«³¬¹ýÿÈÕ×î´ó´ÎÊý£¬ÎÞ·¨Ñ°±¦! treasureCount(%s) + curTreasureCountToday(%s) = %s > %ss"¶ÔӦѰ±¦±³°üûÓпոñ×Ó!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=%sRteventtHappyXBUnEnoughslѰ±¦³É¹¦: treasureType=%s,updTreasureCount=%s(%s),updLuck=%s,addScoreType=%s,addScore=%s,gridNumCountInfo=%ss    treasureResult=%ss    mailItemList=%s(Œt    GameWorldtGetPlayerManagertGetPlayerByIndextGetLVt GetPlayerIDR1R3tCostTypetDebugLogRRt GetIsActTypeR,tErrLogtGetTreasureCountListtlentGetDailyMaxCountR
R R t GetPackTypet GetCheckPackt
ItemCommontCheckPackHasSpaceR-tGetDailyFreeCountR RtGetCostItemCountListtGetPackItemBindStateIndexInfotmaxtGetCostMoneyListtGetCostMoneyTypeR#tDef_Cost_Reason_SonKeyRt    HaveMoneytInterpolationSearchtGetLuckyItemRateListRtGetLuckyGridNumtGetLuckyRateFormatt GetOnceLuckyt GetFullLuckyRRtGetGridItemRateList3tGetEnsureCounttGetGridItemRateList2tGetNotifyGridNumListt GetNotifyKeyR R!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(Xtindext
clientDatattickRtplayerLVtplayerIDRt treasureIndextcostTypeR%ttreasureCountListt treasureCountt dailyMaxCounttcurTreasureCountTodaytupdTreasureCountTodaytpackTypetdailyFreeCounttfreeCountTodaytupdFreeCountTodayR't costItemListtcostItemNeedCounttcostItemIndexListtbindCntt    unBindCntt    lackCounttdelCostItemCounttlackCountCostMoneyt costGoldListt costGoldTypetcostGoldt perItemGoldt    moneyTypetinfoDictRtluckyItemRateListtluckyGridNumListt_tgridNumt luckFormulataddLucktmaxLucktcurLucktupdLucktcurTreasureCounttupdTreasureCounttbeSureCountDictt ensureCounttensureRateListtnotifyGridNumListt    notifyKeyR(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.pytOnRequestTreasuretsB                    
 
        
     
 
   +
 
        
   
            *
!
#
                   
 (     
 &      "%  $        .+       
            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    enumerateRetgetR( 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 updRateListRRRRÎ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.pyRfû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.pytGetTreasureCntAwards0                c Cs)|dkr`g}tjƒ}x?t|jƒƒD](}|j|ƒ}|j|jƒƒq1Wntj    ƒ}|j
ƒg|_ x|D]y}tj d|ƒ}|sªq†n|j ƒrÎt||ƒsÎq†qÎn|jƒ}tjƒ}    |    j
ƒ||    _|jtj|ƒ|    _|jtj|ƒ|    _|jtj|ƒ|    _|jtj|ƒ|    _|jtj|ƒ|    _xd|jƒD]V}
t|
ƒ} tj ƒ} | | _!|jtj"|| fƒ| _#|    j$j| ƒqƒWt%|    j$ƒ|    _&|j j|    ƒq†Wt%|j ƒ|_'t(j)||ƒdS(NR(*tNoneRRRRRRR    R¤ttagMCTreasureInfoR¢tTreasuerInfoListRR?R,R ttagMCTreasureTypeInfoR1R
R Rt    LuckValueRt TreasureCountR tTreasureCountTodayR 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.pyR'sH   
            
          ()R8Rkt ShareDefinet GameFuncCommRt IPY_GameWorldR R¤RRR«RƒR€R}tPlayerNewFairyCeremonyR—R+R†RFR RmttimeR[tTreasureTypeListR‰R|RŽR“R•RRRR*R,RþR^R]RfR R!R(((snE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyt<module>sD                          &                        ÿ^