hxp
2025-12-20 c32f8d566f4dd0800a2836058aef06b6461df668
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
vŒBic@sddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlZddlZedƒ\ZZZZeegZedddƒZ\ZZZZ Z!dZ"dZ#dZ$e"e#e$gZ%d„Z&d    „Z'd
„Z(d „Z)d „Z*d „Z+d„Z,d„Z-dd„Z.d„Z/d„Z0d„Z1d„Z2d„Z3d„Z4d„Z5e6d„Z7dS(iÿÿÿÿNiiii i i cCst|ƒdS(N(tSync_TreasureInfo(t    curPlayer((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytOnTreasureLoginAs
c Csˆg}tjƒ}xYt|jƒƒD]E}|j|ƒ}|jƒ}|jtj|ƒ rz|jtj    |ƒ rzq%n|j
|ƒt j |tj|dƒt j |tj    |dƒ|j ƒ}|jƒ}|dkr%xˆ|jƒD]w\}}    xht|    ƒD]Z}
t||||
ƒ\} } t||||
| dƒtjd|||
| | fƒqWqìWq%q%W|r„t||ƒndS(NiisUѰ±¦Ã¿ÈÕÐÄÔ¸ÖØÖÃ: treasureType=%s,libID=%s,wishIndex=%s,wishID=%s,×òÈÕÐÄÔ¸²ú³ö´ÎÊý=%s(t IpyGameDataPYtIPY_DatatxrangetGetTreasureSetCounttGetTreasureSetByIndextGetTreasureTypetNomalDictGetPropertytChConfigtDef_PDict_TreasureCountTodaytDef_PDict_TreasureFreeCounttappendt PlayerControltNomalDictSetPropertytGetWishLibSelectt GetWishResettitemstranget GetWishInfot SetWishInfot    GameWorldtDebugLogR( Rt syncTypeListt
ipyDataMgrtitipyDatat treasureTypet wishLibSelectt    wishResettlibIDStrtwishCntt    wishIndextwishIDtoutCnt((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytOnDayEs.          &c    Cs_xK|D]C}tjd|ƒ}|s+qn|jƒ}|jƒ}|re|retj|||ƒntj|tj    |dƒtj|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_TreasureCounttDef_PDict_TreasureCountExR tDef_PDict_TreasureLucktDef_PDict_TreasureCntAwardtGetGridNumMaxLimitInfotkeystDef_PDict_TreasureGridCnttintR(RttreasureTypeListRt
setIpyDatatrecycleItemMailt
costItemIDtgridNumMaxLimitInfot
gridNumStr((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytResetTreasureTypeas&     . cCstj||ƒrtStS(N(tPlayerActYunshitIsActTreasureTypetTruetFalse(RR((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyR;yscCs>|jtj|||fƒ}|d|d}}||fS(Nid(R    R
tDef_PDict_TreasureWish(RRtlibIDR!tinfoR"R#((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyRscCs@|dt|dƒ}tj|tj|||f|ƒ}|S(Nidic(tminRRR
R>(RRR?R!R"R#R@((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyR…s%c    Cstjƒj|ƒ}|j}|j}tjd|ƒ}|sCdS|jƒ}|sjtjd|ƒdStjd||fƒi}x|D]}    |    s qŽntj    di|    d6t
ƒ}
|
sÆdS|
j ƒ} |
j ƒsótjd|    ƒdS|
j ƒ} | |krg|| <n|| } |    | kr>| j|    ƒn|tkrŽtjd| ƒ}|sfdS|jƒrtj|| ƒ rtjd| ƒdSqŽqŽWtjd    |ƒi}xå|jƒD]×\}}t|ƒ} |j| gƒ} | r.t| ƒ|kr.tjd
| |t| ƒ| fƒdSxkt|ƒD]]}t||| |ƒ\}    }|shq;n|    | krŽtjd ||    | ƒdS|||    <q;WqÅWtjd |ƒx¹|jƒD]«\}}t|ƒ} |j| gƒ}x~t|ƒD]p}t|ƒ|kr||nd }    |j|    d ƒ}t||| ||    |ƒtjd| ||    |fƒqõWq¾Wt||gƒdS(NR%s+¸ÃѰ±¦ÀàÐÍûÓÐÐÄÔ¸ÎïÆ·¹¦ÄÜ! treasureType=%ss8Ѱ±¦Ñ¡ÔñÐÄÔ¸ÎïÆ·: treasureType=%s,reqSelectWishIDList=%stTreasureItemLibtIDs·ÇÐÄÔ¸ÎïÆ·£¬²»¿ÉÑ¡Ôñ! wishID=%stHeros+ÐèÒª¼¤»î±¾ÌåµÄÎ佫δ¼¤»î²»¿ÉÑ¡Ôñ£¡itemID=%ssÖØÑ¡ÐÄÔ¸¿â¶ÔÓ¦ID»ã×Ü: %ssSÑ¡ÔñÐÄÔ¸¿âµÄÎïÆ·ÊýÁ¿ÓëÉ趨µÄÐÄÔ¸ÎïÆ·ÊýÁ¿²»Ò»Ö£¡libID=%s,wishCnt=%s,selectCnt=%s,%ssCÒѾ­²ú³ö¹ýµÄÐÄÔ¸ÎïÆ·²»¿É´ÓÑ¡ÔñÖÐÈ¥³ý! outCnt=%s,wishID=%s not in %ssÀúÊ·ÒѲú³öÐÄÔ¸ID´ÎÊý: %sis7±£´æÐÄԸѡÔñ: libID=%s,wishIndex=%s,wishID=%s,outCnt=%s(RtGetPlayerManagertGetPlayerByIndext TreasureTypet
WishIDListRR&RRtGetIpyGameDataByConditionR=t    GetItemIDt GetWishOutCnttGetLibIDR tTreasureType_HeroCallListtGetRecruitBySelft
PlayerHerotGetHeroActiviteRR2tgettlenRRt
DebugLogExRR(tindext
clientDatattickRRtreqSelectWishIDListR4RtselectLibItemDictR"tlibItemIpyDatatitemIDR?tselectLibWishIDListt heroIpyDatat
hisOutDictRR R!R#t
wishIDList((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytOnTreasureWishSelect“s~               
          "%cCsGtjƒj|ƒ}|j}|j}|j}t||||ƒdS(N(RRERFRGt TreasureIndextCostTypet
DoTreasure(RTRURVRRt treasureIndextcostType((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytOnRequestTreasureës             icuCs{|jƒ}|jƒ}tjd||||f|ƒtjd|ƒ}|sTdS|jƒrŠt||ƒsŠtjd||ƒdSn|j    ƒ}|s°tjd|ƒdS|t
krÙd}tjd||ƒn|dks÷|t |ƒkrtjd||f|ƒdS||}|s9tjd|ƒdS|j ƒ}    |j tj|ƒ}
|
|} |    r›| |    kr›tjd    ||
| |    f|ƒdS|jƒ} |jƒrãtj|| tƒsãtjd
| |ƒdSn|tkro|jƒ} | stjd ||f|ƒdS|j tj|ƒ}||}|| kr×tjd ||| f|ƒdSnh|t
kr~nY|tkrT|jƒ}|jƒ}| sÂ| sÂ|t |ƒkràtjd ||f|ƒdS||}| sø| rüdStj||ƒ\}}}td|||ƒ}||}d}|dkr×|jƒ}|jƒ}| s| s|t |ƒks|| r«tjd||f|ƒdS||}t||ƒ}||}tjd|||||f|ƒ|r*|}i|tj 6}t!j"|||ƒsNdSqQtjd||||f|ƒdSq×nƒ|jƒ}|jƒ}| sŒ| sŒ|t |ƒkrªtjd||f|ƒdS||}|s¾dSt!j"|||ƒs×dStj#dd|i|d6ƒ}|s tjd||jƒf|ƒdS|j$ƒ} |j%ƒ}!d„|!j&ƒDƒ}"t'|"j(ƒƒ}#g}$|j)ƒ}%|j*ƒ}&|#rt|#ƒnd}'|j tj+|ƒ}(tjd|(|'| |"f|ƒ|t,krt-j.|tj/ƒ rd}&tjd|ƒn|j tj0|ƒ})|)}*|j1ƒ}+|j2ƒ},|j3ƒ}-tjd|+|ƒtjd|,|-f|ƒ|j4ƒ}.|j5ƒ}/|j6ƒ}0i}1x:|0j(ƒD],}2|j tj7||2fƒ|1t|2ƒ<q¬Wtjd|0|1f|ƒ|j tj8|ƒ}3dN\}4}5i}6|j9ƒ}7|7rz|t |7ƒkrz|7|}6t:dt|6ƒƒ}5tj;|3|ƒd}4ng}8|4|5kr¥|4|6kr¥|6|4}8n|j<ƒ}9|j=ƒ}:i};|j>ƒ}<|j?ƒ}=xó|=j&ƒD]å\}>}?t|>ƒ}@xÊt@|?ƒD]¼}AtA|||@|Aƒ\}B}C|Bs:q ntjBdi|Bd6tCƒ}D|Dsbq n|DjDƒ}E|Eszq n|@|;kr“i|;|@<n|C|Ekr¥q n|;|@}F|E|C}G|A|Gg|F|B<q WqèW|=r    |;sðtjd |ƒq    tjd!|;|ƒng}Hxqt@|ƒD]c}It:|(|&|'ƒ}(tE|(|"|#ƒ\}J}Kg}$x!|KD]\}L}M|$jF|MƒqX    W|*d7}*tjd"|Id|*|(|J|Kf|ƒ|0rÉ    tjd#|0|1f|ƒntG||$|(|%|ƒ\}N}OtH|O|1|0ƒ}Otjd$|N|ƒg}P|P rl
|8rl
|IdkrB
d%|8dgg}Pn
|8d}Ptjd&||4|Pf|ƒn|P r´
|Jr´
|(|Jkr´
|Kr´
tH|K|1|0ƒ}Ptjd'|P|ƒn|P r |*|+kr |+|*}QtH|Q|1|0ƒ}Ptjd(|*|Pf|ƒn|P rR |,rR |*|,dkrR |-rR tH|-|1|0ƒ}Ptjd)|,|Pf|ƒnd}Rx"|Rd*kr| |Rd7}R|Rdks„ |P r¡ |O}Ptjd+|P|ƒntjI|Pƒ}M|M|$krå |M|Hkrå tjd,|M|Hfƒq[ ntJ|Mƒ}2d}S|=r_ |2|:kr_ |:|2|;kr_ |:|2}S|<dkr_ |;|Ss\ tjd-|M|Sf|ƒq[ q\ q_ n|Msk q[ n|HjF|Mƒtjd.|M|H|Rf|ƒ|M|$ks­ |(|'kr |&rÝ |M| ksË |(|'krÔ d}(qý |J}(n d}(tjd/|M|(f|ƒtjd0|M|(f|ƒn|Sr= tjd1|M|Sf|ƒn|M|1krx |1|Md|1|M<tjd2|M|1f|ƒnPq[ Wq    Wtjd3|H|ƒt |Hƒ|krÅ tjd4||f|ƒdSd}T|jKƒ}U|jLƒ}Vg}WtjMdd5ƒ}Xi}Yx|HD]ù}MtJ|Mƒ}M|M|9krý|9|M\}Z}[tN|U|Z|Vƒ}Z|Zsltjd6||Mf|ƒdS|Z|Xkrâg}\|X|Z}]x3|]D]+}^tO|||^ƒs­qn|\jF|^ƒqW|\sètjd7|||M|Zf|ƒdStPjQ|\ƒ}Zqânå|M|:krÄ|:|M}@tjRd|@ƒ}_|_s/dS|;jS|@iƒ}Fg}`g}ax×|_D]Ï}b|bjTƒ}c|bjUƒ|bjVƒ|bjWƒ}d}Z}[|ds˜qTntO|||Zƒs°qTn|ajF|d|Z|[ggƒ|c|FkrT|F|c\}L}G|G|YjS|cdƒdkr#|`jF|d|Z|[|cggƒq#qTqTW|asQtjd8|||M|@f|ƒdS|`r¬tjX|`ƒ\}Z}[}c|YjS|cdƒd|Y|c<tjd9|M|@|c|Zf|ƒqâtjX|aƒ\}Z}[ntjd:||Mf|ƒdSd}e|WjF|M|Z|[|egƒqW|tkrBt!jY|tj||ƒtjd;||ƒnû|t
kratjd<|ƒnÜ|tkrótjZ|||||tj[ƒtjd=||f|ƒ|r=i|d6|d>6|d?6|d@6}t!j\|||tj]||ƒq=nJi|d6|d>6}t!j\|||tj]|ƒtjdA||f|ƒt!jY|tj|| ƒt!jY|tj0||*ƒt!jY|tj+||(ƒx:|1j&ƒD],\}M}ft!jY|tj7||Mf|fƒq˜W|4|5kr&tj^|3||4ƒ}3t!jY|tj8||3ƒtjdB||4|5|3f|ƒnx·|Yj&ƒD]©\}c}gxš|;j&ƒD]Œ\}@}F|c|FkrjqLn|F|c\}A}GtA|||@|Aƒ\}B}C|C|g}ht_|||@|A|B|hƒtjdC|@|A|B|hf|ƒqLWq3W|j`ƒ}i|jaƒ}j|ir|jrt!jb||i|j|ƒn|t,kr¯tcjd|tje|ƒtfjg|tjh|ƒti|ƒ}ktjjk|tljmƒdkr–tnjo|tljm|kƒntpjq|tljr|kƒntsjt|tsju||ƒg}ltvjw|ƒ}mx²|WD]ª}n|ndD \}M}Z}[dtx_ytvjz|Z|[|TdE|ƒ}otj{|oƒ}pt|Mƒ|.kr3|/r3|/jSt|Mƒ|/jSddFƒƒ}q|t,krüt|j}||Zƒr§dF}qtjdG|Z|ƒq0|qr0tjdH|Zƒ}r|rrù|rj~ƒ}st!jd|q|j€ƒ|s|Zgƒqùq0q3|qr3t!jd|q|j€ƒ|Z|ojƒ|[gƒq3n|ls^|mj‚| |odItjƒtCigƒ rx|ljF|pƒ|oj„ƒntxjyräd|ndD<qäqäW|lr±t!j…dJ|g|lƒntjdK||*| |(|i|j|1|3f|ƒtjdL|W|ƒtjdM|l|ƒt†j‡ƒ}t|tj„ƒ|i|t_ˆ|j|t_‰|&|t_ŠtJ|Wƒ|t_‹t |tj‹ƒ|t_ŒtjŽ||tƒt||gƒdS(ONsBÍæ¼ÒѰ±¦: treasureType=%s,treasureIndex=%s,costType=%s,playerLV=%sR%s-¸ÃѰ±¦ÀàÐͷǻÖУ¬ÎÞ·¨Ñ°±¦! treasureType=%ssûÓÐѰ±¦´ÎÊýÁбíÅäÖÃ!is"¹ã¸æÑ°±¦Ç¿ÖÆÉèÖÃ: treasureIndex=%ss3Ѱ±¦´ÎÊýË÷Òý²»´æÔÚ!treasureType=%s,treasureIndex=%ssûÓÐѰ±¦´ÎÊýÅäÖÃ!s[Ѱ±¦ºó½«³¬¹ýÿÈÕ×î´ó´ÎÊý£¬ÎÞ·¨Ñ°±¦! treasureCount(%s) + curTreasureCountToday(%s) = %s > %ss"¶ÔӦѰ±¦±³°üûÓпոñ×Ó!packType=%ssA¸ÃѰ±¦ÀàÐÍË÷Òý²»Ö§³ÖÃâ·Ñ´ÎÊýѰ±¦!treasureType=%s,treasureIndex=%ss?½ñÈÕÃâ·Ñ´ÎÊý²»×㣬ÎÞ·¨Ê¹ÓÃÃâ·ÑѰ±¦! freeCountToday=%s + %s > %ssA¸ÃѰ±¦ÀàÐÍË÷Òý²»Ö§³ÖÏûºÄµÀ¾ßѰ±¦!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 TreasureHousetMinLVRGs3ÕÒ²»µ½¸ÃµÈ¼¶¶ÔӦѰ±¦¿âÅäÖÃ!treasureType=%s,curLV=%scSs%i|]\}}|t|ƒ“qS((R2(t.0tktv((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pys
<dictcomp>bs    s=updLuck=%s,maxLuck=%s,setLuckyGridNum=%s,luckyItemRateDict=%ss ÖÕÉí¿¨Î´¿ªÍ¨£¬Î佫ÕÐļ²»Ôö¼ÓÐÒÔËsbeSureCountDict=%ssensureCount=%s, %ss*gridNumMaxLimitInfo=%s,gridNumCountInfo=%si    iRBRCsÐÄÔ¸ÎïÆ·»¹Î´Ñ¡Ôñ!s0ÒÑÑ¡µÄ»¹¿É²ú³öµÄÐÄÔ¸¿â¶ÔÓ¦WishID»¹¿É²ú³ö´ÎÊý: %ss.%s,ÀۼƴÎÊý=%s,ÐÒÔË=%s,½×¶ÎÐÒÔË=%s,ÐÒÔ˱ýͼ=%ss.    gridNumMaxLimitInfo=%s,gridNumCountInfo=%ss    »ù´¡²ú³ö±ýͼ=%si's:    ¡¾µÚx´Îx³é±Ø³ö¡¿: treasureIndex=%s,curIndexCount=%s,%ss    ¡¾ÂúÐÒÔ˱سö±ýͼ¡¿: %ss    ¡¾µÚ%s´ÎÊý±Ø³ö±ýͼ¡¿: %ss    ¡¾Âú%s´ÎÊý±Ø³ö±ýͼ¡¿: %si2s    Ê¹Ó󣹿±ýͼ=%ss5    ÐÒÔËÎïÆ·ÒѾ­³ö¹ý£¬²»ÔÙÖØ¸´²ú³ö£¡ gridNum=%s in %ss:    Ã»Óпɲú³öµÄÐÄÔ¸ÎïÆ·£¬²»²ú³ö£¡ gridNum=%s,wishLibID=%ss(    ±¾´Î²ú³ö: gridNum=%s, %s, doCount=%ss3    ²»¼ÓÐÒÔËÊ±Ç¿ÖÆÖØÖÃÐÒÔËÖµ: gridNum=%s,updLuck=%ss+    ¡¾²ú³öÐÒÔ˸ñ×Ó¡¿: gridNum=%s,updLuck=%ss3    ¡¾²ú³öµÄÊÇÐÄÔ¸¿âÎïÆ·¡¿: gridNum=%s,wishLibID=%ss$    ¡¾¸üвú³ö´ÎÊý¡¿: gridNum=%s, %ssѰ±¦¸ñ×Ó½á¹û: getGridResult=%ssHѰ±¦Òì³££¬Êµ¼Ê»ñµÃÊýÁ¿ÓëѰ±¦ÇëÇóÊý²»Í¬£¡treasureType=%s,treasureIndex=%sis-Ѱ±¦¸ñ×ÓÎïÆ·IDÒì³£!treasureType=%s,gridNum=%ssRѰ±¦Ëæ»ú¸ñ×ÓûÓпÉËæ»úµÄÎïÆ·!treasureType=%s,treasureIndex=%s,gridNum=%s,itemID=%ssQѰ±¦Ëæ»ú¸ñ×ÓûÓпÉËæ»úµÄÎïÆ·!treasureType=%s,treasureIndex=%s,gridNum=%s,libID=%ss9ÓÅÏȲú³öÐÄÔ¸ÎïÆ·: gridNum=%s,libID=%s,wishID=%s,itemID=%ss)Ѱ±¦¸ñ×Ó²»´æÔÚ!treasureType=%s,gridNum=%ss(ÏûºÄÃâ·Ñ´ÎÊý£¬¸üнñÈÕÒÑʹÓÃÃâ·Ñ´ÎÊý: %ss ¹ã¸æÑ°±¦Ãâ·Ñs.¿Û³ýѰ±¦µÀ¾ß,costItemID=%s,delCostItemCount=%sR`t
CostItemIDt    LackCounts$¿Û³ý»õ±Ò,costGoldType=%s,costGold=%ssW¸üеÚx´Îx³é´ÎÊý: treasureIndex=%s,curIndexCount=%s,maxIndexCount=%s,treasureCountEx=%ssA¸üÐÂÐÄÔ¸ÎïÆ·ÒѲú³ö´ÎÊý: libID=%s,wishIndex=%s,wishID=%s,updOut=%siRts'ÕÐļÎ佫·ÇÊ״λñµÃµÄ²»¹ã²¥ÁË! itemID=%sRDteventtHappyXBUnEnoughsѰ±¦³É¹¦: treasureType=%s,updTreasureCount=%s(%s),updLuck=%s,addScoreType=%s,addScore=%s,gridNumCountInfo=%s,treasureCountEx=%ss    treasureResult=%ss    mailItemList=%s(ii(tGetLVt GetPlayerIDRRRR&t GetIsActTypeR;tErrLogtGetTreasureCountListtCostType_ADFreeRRtGetDailyMaxCountR    R
R t GetPackTypet GetCheckPackt
ItemCommontCheckPackHasSpaceR<tCostType_DayFreetGetDailyFreeCountR t CostType_ItemR(tGetCostItemCountListtGetPackItemBindStateIndexInfotmaxtGetCostMoneyListtGetCostMoneyTypeR2tDef_Cost_Reason_SonKeyRt    HaveMoneytInterpolationSearchtGetLuckyGridNumtGetLuckyItemRateInfoRtsortedR0tGetLuckyRateFormatt GetOnceLuckyR-RMtPlayerGoldInvesttGetInvestStatetInvestType_LifeR+tGetGridItemRateList3tGetEnsureCounttGetGridItemRateList2tGetNotifyGridNumListtGetNotifyKeyDictR/R1R,tGetGridItemRateList4RAtGetDataByDigitPlacetGetGridItemInfotGetGridLibInfot GetWishOutputRRRRIR=RKt__getLuckyRateInfoR tGetUpdLuckyItemRateListtGetRemoveLimitGridRateListtGetResultByRandomListtstrtGetJobtGetJobItemListtGetFuncEvalCfgt
GetJobItemt__checkItemCanTreasuretrandomtchoicetGetIpyGameDataListRQtGetIDt GetItemWeightRJt GetItemCounttGetResultByWeightListRtDelCostItemByBindtItemDel_TreasuretPayMoneytDef_Cost_TreasuretChangeDataByDigitPlaceRtGetAwardMoneyTypetGetAwardMoneyValuet    GiveMoneyt
PlayerTaskt AddTaskValuetTaskType_HeroCalltPlayerActivitytAddDailyTaskValuetDailyTask_HeroCalltGetHeroCallCnttOpenServerActivityt GetOSAStatet ShareDefinetDef_BT_OSA_HeroCalltPlayerBillboardtUpdatePlayerBillboardt PlayerSuccesstUptateSuccessProgresstSuccType_OSAHeroCalltPlayerActLunhuidiantAddLunhuidianValuetAwardType_TreasureR)tPlayerItemControlert
PyGameDatatg_transItemSigntGetOutPutItemObjtGetMailItemDictRORPt
GetQualityt WorldNotifyt GetPlayerNamet GetUserDatat    PutInItemtItemGive_TreasuretCleart SendMailByKeytChPyNetSendPackttagMCTreasureResultt AddMoneyTypet AddMoneyValuetAddTreasureLucktTreasureResulttTreasureResultLent NetPackCommont SendFakePackR(uRRRdRctplayerLVtplayerIDR4ttreasureCountListt treasureCountt dailyMaxCounttcurTreasureCountTodaytupdTreasureCountTodaytpackTypetdailyFreeCounttfreeCountTodaytupdFreeCountTodayR6t costItemListtcostItemNeedCounttcostItemIndexListtbindCntt    unBindCntt    lackCounttdelCostItemCounttlackCountCostMoneyt costGoldListt costGoldTypetcostGoldt perItemGoldt    moneyTypetinfoDictRtsetLuckyGridNumtluckyItemRateInfotluckyItemRateDicttluckyValueListtluckyGridNumListt luckFormulataddLucktmaxLucktupdLucktcurTreasureCounttupdTreasureCounttbeSureCountDictt ensureCounttensureRateListtnotifyGridNumListt notifyKeyDictR7tgridNumCountInfoR8ttreasureCountExt curIndexCountt maxIndexCounttbeSureCountByIndexDicttbeSureCountByIndexListtbeSureCountByIndexCfgtgridItemInfoDicttgridLibInfoDicttcanOutWishDicttwishOutputRuleRRt    selectCntR?R!R"R#RYt outCntLimittlibWishCanOutDicttcanOutt getGridResultttIndext    stageLucktluckItemRateListt_tgridNumt baseRateListtcommItemRateListt curRateListtbesureGridRateListtdoCountt    wishLibIDtisBindtjobt jobItemListttreasureResulttrandItemIDDicttwishAddOutDictRZt    itemCounttcanRandItemListtrandItemIDListt
randItemIDt libItemListtwishWeightListtitemWeightListtlibItemtcurIDt
itemWeighttisTranstupdCounttaddOuttupdOutt addScoreTypetaddScoret heroCallCntt mailItemListt itemControlttResulttitemObjt mailItemDictt    notifyKeyR\t heroQualitytsendPack((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyRbósð         
 
        
      
 
   +
 
        
   
      "      *  
 
 
 
'  
    
#
 "
 
                     
      
  & &    #   "%$ # 
(          $  +1+          # 
            cCs5d}x(tD] }||jtj|ƒ7}q W|S(Ni(RMR    R
R+(Rt    callCountR((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyR·ºs cCs[| s| rdgfSx(|D] }||kr|||fSqW|d}|||fS(Niiÿÿÿÿ((tcurLuckRõRötlucktlastLuck((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyR˜Ás
 
cCsÜtjƒj|ƒ}|sdS|jƒ}|jƒtjkr–tjd|ƒ}|s\dS|j    ƒrØt
j ||ƒ rØtj d||ƒdSnB|jƒtj krØtj||ƒsØtj d||ƒdSntS(NRDsÎ佫δ¼¤»î²»²ú³ö£¡ itemID=%ssδ½âËøµÄ·ûÓ¡²»²ú³ö£¡ itemID=%s(Rt GetGameDatatGetItemByTypeIDRqtGetTypeR
tDef_ItemType_HeroRR&RNRORPRtDef_ItemType_Runet
PlayerRunetGetIsOpenByRuneIDR<(RRRZtitemDataRÛR\((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyR¡Ês  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    enumerateRœRQR ( tsrcGridNumRateListRR7t newRateListRtrateInfotrateRt
limitCounttsrcRatetnewRate((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyRšàs     (cCs|jƒ}|tkr$|jƒn    |jƒ}|sE|jƒ}ng}x°t|ƒD]¢\}}    |    \}
} |dkr‚|
n|
||dd} | |krÃttjd||ƒƒ} n| } |sÕ| n|dd| }|j|| fƒqXW||fS(NiisTreasureLuckyRate%siÿÿÿÿ(    Rt CostFreeTypestGetGridItemRateListFreetGetGridItemRateList1RItevaltFormulaControltGetCompileFormulaR (RR÷R>RøRdRt
srcPieListt updRateListRRLRMRtbaseRateRPtspecRate((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(ttypetlistttupleRRsRR(RRZR t jobItemIDList((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyR 
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=%sRn(RtToIntDefRqRR&t GetAwardIndextGetAwardItemListR    R
R.tpowRR+RRR)tGivePlayerItemOrMailR=R(
RRtneedTreasureCntRÛRt
awardIndext awardItemListt
awardStateRÝtupdState((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytGetTreasureCntAwards0                cCsÐ|dkr`g}tjƒ}x?t|jƒƒD](}|j|ƒ}|j|jƒƒq1Wntj    ƒ}|j
ƒg|_ x(|D] }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'ƒ} x†| j(ƒD]x\}}t|ƒ}x]t)|ƒD]O}t*||||ƒ\}}tj+ƒ}||_,||_-|    j.j|ƒq-WqWt%|    j.ƒ|    _/|j j|    ƒq†Wt%|j ƒ|_0t1j2||ƒdS(NR%(3tNoneRRRRRR RRÑttagMCTreasureInfoRÏtTreasuerInfoListR&RrR;R/ttagMCTreasureTypeInfoRGR    R
R-t    LuckValueR+t TreasureCountR tTreasureCountTodayR tFreeCountTodayR.R_R0R2ttagMCTreasureGridLimittGridNumR1tGridCnttGridLimitCntListRRt GridLimitCntRRRRttagMCTreasureWishtWishIDtOutCnttWishListtWishCntt    InfoCountRØRÙ(RRRRRttreasureInfoPackttTypeR4R7t    tTypeInfoR8Rt    gridLimitRRR R?R!R"R#twish((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyR6s\   
            
                     (8RRFRRURÑRR)RØRÁR:R´R¾R‹R¸R¼RºRyRORÅR±R
R¢RtCostType_MoneyR{R}RuRQtTreasureTypeListtTreasureType_JipintTreasureType_RunetTreasureType_JueshitTreasureType_GatherTheSoultTreasureType_GubaotTreasureType_HeroCommtTreasureType_HeroHightTreasureType_HeroScoreRMRR$R9R;RRR_ReRbR·R˜R¡RšR™R RjRkR(((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyt<module>s\                           &                            X     ÿÈ