hxp
2025-08-25 b7154533a3f9db72d0dfc28f21b19ee4aadf1b51
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
L"¬hc@sbddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZedddƒZ\ZZZZZdZdZdZd„Zd„Zd    „Zd
„Zd „Zd „Zd „Z d„Z!d„Z"d„Z#e$d„Z%dS(iÿÿÿÿNiii i i cCst|ƒdS(N(tSync_TreasureInfo(t    curPlayer((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytDoTreasureOpen1s
cCst|ƒdS(N(R(R((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytOnTreasureLogin6s
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((smD:\SG_ServerCode\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((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytResetTreasureTypeJs$     . cCstj||ƒrtStS(N(tPlayerActYunshitIsActTreasureTypetTruetFalse(RR((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyR,ascXCs³tjƒ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}:|)rü|+|)krü|$rü|#rÉt9|#|4|3ƒ}:nt9d|$dfg|4|3ƒ}:tjd |:ƒn|: rE|-|.krE|.|-};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|ƒ|&|$kro    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ƒtjEkr6 tFjG||Hƒ r6 tjd+|D|Hf|ƒqÓ
n|Fj'|HƒqÓ
W|Fsq tj d,|||&|Df|ƒdStHjI|Fƒ}Dq n    |&|@krq |@|&}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|LsY tj d.|||&|Jf|ƒdStjN|Lƒ\}D}Entj d/||&f|ƒdS|Bj'|&|D|E|=gƒqL
W|d
kré t#jO|tj||ƒtjd0||ƒnÜ|d kr{ 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|6krd}+PqqWt#jO|tj,||+ƒx:|4jTƒD],\}&}Pt#jO|tj5||&f|PƒqGW|    jUƒ}Q|    jVƒ}R|Qrµ|Rrµt#jW||Q|R| ƒn|tXkrtYjZ|tj[| ƒt\j]|tj^| ƒt_j`|tja| ƒnÇ|tbkrWtYjZ|tjc| ƒt\j]|tjd| ƒt_j`|tje| ƒnv|tfkr¨tYjZ|tjg| ƒt\j]|tjh| ƒt_j`|tji| ƒn%|tjkrÍt_j`|tjk| ƒntljm|tljn|| ƒg}Stojp|ƒ}TxÏ|BD]Ç\}&}D}E}=tojq|D|Etrd6|ƒ}Utjs|Uƒ}Vt!|&ƒ|1kr„|2r„t#jtd|2|juƒ|D|Ujvƒ|Egƒn|Ss¯|Tjw||Ud7tjxtrigƒ r|Sj'|Vƒ|UjyƒqqW|Srìt#jzd8|g|Sƒntjd9||-||+|Q|R|4f|ƒtjd:|B|ƒtjd;|S|ƒt{j|ƒ}W|Wjyƒ|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_RunetPlayerFeastTraveltAddFeastTravelTaskValuetDef_FeastTravel_RuneTreasuretPlayerBossReborntAddBossRebornActionCnttDef_BRAct_RuneTreasuret PlayerActTasktAddActTaskValuetActTaskType_TreasureRunetTreasureType_JipintDef_FeastTravel_TreasuretDef_BRAct_TreasuretActTaskType_TreasureJipintTreasureType_JueshitDef_FeastTravel_JSTreasuretDef_BRAct_JSTreasuretActTaskType_TreasureJueshitTreasureType_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((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytOnRequestTreasureps8                    
 
        
     
 
   +
 
        
   
            *
!
#
                   
 (     
 &      "%  $       .+       
            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((smD:\SG_ServerCode\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((smD:\SG_ServerCode\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((smD:\SG_ServerCode\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((smD:\SG_ServerCode\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|_ 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((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyRsH   
            
          (&R8RkRRRRRR¤R€R}RR+RƒRFR RmR[tTreasureTypeListR†R|RŠtTreasureType_GatherTheSoulRŽtTreasureType_HeroCommtTreasureType_HeroHightTreasureType_HeroScoreRRRR*R,R÷R^R]RfRRR(((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyt<module>s>                    &                        ÿY