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
æÚ@ic@s
ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlZedƒ\ZZZZeegZedddƒZ\ZZZZZ 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„Z/d„Z0d„Z1d„Z2d„Z3d„Z4e5d„Z6dS(iÿÿÿÿNiiii i i cCst|ƒdS(N(tSync_TreasureInfo(t    curPlayer((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytOnTreasureLogin@s
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.pytOnDayDs.          &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.pytResetTreasureType`s&     . cCstj||ƒrtStS(N(tPlayerActYunshitIsActTreasureTypetTruetFalse(RR((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyR;xscCs>|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.pyR~scCs@|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    Cstjƒj|ƒ}|j}|j}tjd|ƒ}|sCdS|jƒ}|sjtjd|ƒdStjd||fƒi}x |D]}    tj    di|    d6t
ƒ}
|
sºdS|
j ƒ} |
j ƒsçtjd|    ƒdS|
j ƒ} | |kr g|| <n|| } |    | kr2| j|    ƒn|tkrŽtjd| ƒ}|sZdS|jƒr‘tj|| ƒ r‘tjd| ƒdSqŽqŽWi}xß|jƒD]Ñ\}}t|ƒ} |j| gƒ} t| ƒ|kr tjd    | |t| ƒ| fƒdSxkt|ƒD]]}t||| |ƒ\}    }|sEqn|    | krktjd
||    | ƒdS|||    <qWq¨Wx|jƒD]q\} }xbt|ƒD]T\}}    |j|    d ƒ}t||| ||    |ƒtjd | ||    |fƒq£WqŠWt||gƒdS( NR%s+¸ÃѰ±¦ÀàÐÍûÓÐÐÄÔ¸ÎïÆ·¹¦ÄÜ! treasureType=%ss8Ѱ±¦Ñ¡ÔñÐÄÔ¸ÎïÆ·: treasureType=%s,reqSelectWishIDList=%stTreasureItemLibtIDs·ÇÐÄÔ¸ÎïÆ·£¬²»¿ÉÑ¡Ôñ! wishID=%stHeros+ÐèÒª¼¤»î±¾ÌåµÄÎ佫δ¼¤»î²»¿ÉÑ¡Ôñ£¡itemID=%ssSÑ¡ÔñÐÄÔ¸¿âµÄÎïÆ·ÊýÁ¿ÓëÉ趨µÄÐÄÔ¸ÎïÆ·ÊýÁ¿²»Ò»Ö£¡libID=%s,wishCnt=%s,selectCnt=%s,%ssCÒѾ­²ú³ö¹ýµÄÐÄÔ¸ÎïÆ·²»¿É´ÓÑ¡ÔñÖÐÈ¥³ý! outCnt=%s,wishID=%s not in %sis7±£´æÐÄԸѡÔñ: libID=%s,wishIndex=%s,wishID=%s,outCnt=%s(RtGetPlayerManagertGetPlayerByIndext TreasureTypet
WishIDListRR&RRtGetIpyGameDataByConditionR=t    GetItemIDt GetWishOutCnttGetLibIDR tTreasureType_HeroCallListtGetRecruitBySelft
PlayerHerotGetHeroActiviteRR2tgettlenRRt
DebugLogExt    enumerateRR(tindext
clientDatattickRRtreqSelectWishIDListR4RtselectLibItemDictR"tlibItemIpyDatatitemIDR?tselectLibWishIDListt heroIpyDatat
hisOutDictRR R!R#t
wishIDList((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytOnTreasureWishSelect’sp               
         %cCsGtjƒj|ƒ}|j}|j}|j}t||||ƒdS(N(RRERFRGt TreasureIndextCostTypet
DoTreasure(RURVRWRRt treasureIndextcostType((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytOnRequestTreasureãs             icvCsB|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|ƒ}3dM\}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=ƒ}:t>};i}<|j?ƒ}=|j@ƒ}>xù|>j&ƒD]ë\}?}@t|?ƒ}A|A|<kri|<|A<nx·tA|@ƒD]©}BtB|||A|Bƒ\}C}D|CsYq,nt};tjCdi|Cd6t>ƒ}E|Es‡q,n|EjDƒ}F|FsŸq,n|D|Fkr±q,n|<|A}G|F|D}H|B|Hg|G|C<q,WqîW|<r    |;sütjd |ƒq    tjd!|<|ƒng}IxBtA|ƒD]4}Jt:|(|&|'ƒ}(tE|(|"|#ƒ\}K}Lg}$x!|LD]\}M}N|$jF|Nƒqd    W|*d7}*tjd"|Jd|*|(|K|Lf|ƒ|0rÕ    tjd#|0|1f|ƒntG||$|(|%|ƒ\}O}PtH|P|1|0ƒ}Ptjd$|O|ƒg}Q|Q rx
|8rx
|JdkrN
d%|8dgg}Qn
|8d}Qtjd&||4|Qf|ƒn|Q rÀ
|KrÀ
|(|KkrÀ
|LrÀ
tH|L|1|0ƒ}Qtjd'|Q|ƒn|Q r |*|+kr |+|*}RtH|R|1|0ƒ}Qtjd(|*|Qf|ƒn|Q r^ |,r^ |*|,dkr^ |-r^ tH|-|1|0ƒ}Qtjd)|,|Qf|ƒnd}Sxó|Sd*krY |Sd7}S|Sdks |Q r­ |P}Qtjd+|Q|ƒntjI|Qƒ}N|N|$krñ |N|Ikrñ tjd,|N|Ifƒqg ntJ|Nƒ}2d}T|>rk |2|:krk |:|2|<krk |:|2}T|=dkrk |<|Tsh tjd-|N|Tf|ƒqg qh qk n|Nsw qg n|IjF|Nƒtjd.|N|I|Sf|ƒ|N|$kr÷ |&r÷ |N| ksË |(|'krÔ d}(n|K}(tjd/|N|(f|ƒn|Tr tjd0|N|Tf|ƒn|N|1krU |1|Nd|1|N<tjd1|N|1f|ƒnPqg Wq&    Wtjd2|I|ƒt |Iƒ|kr¢ tjd3||f|ƒdSd}U|jKƒ}V|jLƒ}Wg}XtjMdd4ƒ}Yi}Zx|ID]ù}NtJ|Nƒ}N|N|9krÚ|9|N\}[}\tN|V|[|Wƒ}[|[sItjd5||Nf|ƒdS|[|Ykr¿g}]|Y|[}^x3|^D]+}_tO|||_ƒsŠqln|]jF|_ƒqlW|]sÅtjd6|||N|[f|ƒdStPjQ|]ƒ}[q¿nå|N|:kr¡|:|N}AtjRd|Aƒ}`|`s dS|<jS|Aiƒ}Gg}ag}bx×|`D]Ï}c|cjTƒ}d|cjUƒ|cjVƒ|cjWƒ}e}[}\|esuq1ntO|||[ƒsq1n|bjF|e|[|\ggƒ|d|Gkr1|G|d\}M}H|H|ZjS|ddƒdkr|ajF|e|[|\|dggƒqq1q1W|bs.tjd7|||N|Af|ƒdS|ar‰tjX|aƒ\}[}\}d|ZjS|ddƒd|Z|d<tjd8|N|A|d|[f|ƒq¿tjX|bƒ\}[}\ntjd9||Nf|ƒdSd}f|XjF|N|[|\|fgƒqå W|tkrt!jY|tj||ƒtjd:||ƒnû|t
kr>tjd;|ƒnÜ|tkrÐtjZ|||||tj[ƒtjd<||f|ƒ|ri|d6|d=6|d>6|d?6}t!j\|||tj]||ƒqnJi|d6|d=6}t!j\|||tj]|ƒtjd@||f|ƒt!jY|tj|| ƒt!jY|tj0||*ƒt!jY|tj+||(ƒx:|1j&ƒD],\}N}gt!jY|tj7||Nf|gƒquW|4|5krtj^|3||4ƒ}3t!jY|tj8||3ƒtjdA||4|5|3f|ƒnx·|Zj&ƒD]©\}d}hxš|<j&ƒD]Œ\}A}G|d|GkrGq)n|G|d\}B}HtB|||A|Bƒ\}C}D|D|h}it_|||A|B|C|iƒtjdB|A|B|C|if|ƒq)WqW|j`ƒ}j|jaƒ}k|jrû|krût!jb||j|k|ƒn|t,krvtcjd|tje|ƒtf|ƒ}ltgjh|tijjƒdkr]tkjl|tijj|lƒntmjn|tijo|lƒntpjq|tpjr||ƒg}mtsjt|ƒ}nx²|XD]ª}o|odC \}N}[}\dtu_vtsjw|[|\|UdD|ƒ}ptjx|pƒ}qt|Nƒ|.krú|/rú|/jSt|Nƒ|/jSddEƒƒ}r|t,krÃtyjz||[ƒrndE}rtjdF|[|ƒq÷|rr÷tjdG|[ƒ}s|srÀ|sj{ƒ}tt!j|d|r|j}ƒ|t|[gƒqÀq÷qú|rrút!j|d|r|j}ƒ|[|pj~ƒ|\gƒqún|ms%|nj| |pdHtj€t>igƒ r?|mjF|qƒ|pjƒntujvr«d|odC<q«q«W|mrxt!j‚dI|g|mƒntjdJ||*| |(|j|k|1|3f|ƒtjdK|X|ƒtjdL|m|ƒtƒj„ƒ}u|ujƒ|j|u_…|k|u_†|&|u_‡tJ|Xƒ|u_ˆt |ujˆƒ|u_‰tŠj‹||uƒtŒ||gƒdS(NNsBÍæ¼ÒѰ±¦: 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>Zs    s=updLuck=%s,maxLuck=%s,setLuckyGridNum=%s,luckyItemRateDict=%ss ÖÕÉí¿¨Î´¿ªÍ¨£¬Î佫ÕÐļ²»Ôö¼ÓÐÒÔËsbeSureCountDict=%ssensureCount=%s, %ss*gridNumMaxLimitInfo=%s,gridNumCountInfo=%si    iRBRCsÐÄÔ¸ÎïÆ·»¹Î´Ñ¡Ôñ!s*»¹¿É²ú³öµÄÐÄÔ¸¿â¶ÔÓ¦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=%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=%sRat
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,tGetGridItemRateList4RAtGetDataByDigitPlacetGetGridItemInfotGetGridLibInfoR=t GetWishOutputRRRRIRKt__getLuckyRateInfoR tGetUpdLuckyItemRateListtGetRemoveLimitGridRateListtGetResultByRandomListtstrtGetJobtGetJobItemListtGetFuncEvalCfgt
GetJobItemt__checkItemCanTreasuretrandomtchoicetGetIpyGameDataListRQtGetIDt GetItemWeightRJt GetItemCounttGetResultByWeightListRtDelCostItemByBindtItemDel_TreasuretPayMoneytDef_Cost_TreasuretChangeDataByDigitPlaceRtGetAwardMoneyTypetGetAwardMoneyValuet    GiveMoneytPlayerActivitytAddDailyTaskValuetDailyTask_HeroCalltGetHeroCallCnttOpenServerActivityt GetOSAStatet ShareDefinetDef_BT_OSA_HeroCalltPlayerBillboardtUpdatePlayerBillboardt PlayerSuccesstUptateSuccessProgresstSuccType_OSAHeroCalltPlayerActLunhuidiantAddLunhuidianValuetAwardType_TreasureR)tPlayerItemControlert
PyGameDatatg_transItemSigntGetOutPutItemObjtGetMailItemDictRORPt
GetQualityt WorldNotifyt GetPlayerNamet GetUserDatat    PutInItemtItemGive_TreasuretCleart SendMailByKeytChPyNetSendPackttagMCTreasureResultt AddMoneyTypet AddMoneyValuetAddTreasureLucktTreasureResulttTreasureResultLent NetPackCommont SendFakePackR(vRRReRdtplayerLVtplayerIDR4ttreasureCountListt treasureCountt dailyMaxCounttcurTreasureCountTodaytupdTreasureCountTodaytpackTypetdailyFreeCounttfreeCountTodaytupdFreeCountTodayR6t costItemListtcostItemNeedCounttcostItemIndexListtbindCntt    unBindCntt    lackCounttdelCostItemCounttlackCountCostMoneyt costGoldListt costGoldTypetcostGoldt perItemGoldt    moneyTypetinfoDictRtsetLuckyGridNumtluckyItemRateInfotluckyItemRateDicttluckyValueListtluckyGridNumListt luckFormulataddLucktmaxLucktupdLucktcurTreasureCounttupdTreasureCounttbeSureCountDictt ensureCounttensureRateListtnotifyGridNumListt notifyKeyDictR7tgridNumCountInfoR8ttreasureCountExt curIndexCountt maxIndexCounttbeSureCountByIndexDicttbeSureCountByIndexListtbeSureCountByIndexCfgtgridItemInfoDicttgridLibInfoDicttwishSelectStatetcanOutWishDicttwishOutputRuleRRt    selectCntR?R!R"R#RZt outCntLimittlibWishCanOutDicttcanOutt getGridResultttIndext    stageLucktluckItemRateListt_tgridNumt baseRateListtcommItemRateListt curRateListtbesureGridRateListtdoCountt    wishLibIDtisBindtjobt jobItemListttreasureResulttrandItemIDDicttwishAddOutDictR[t    itemCounttcanRandItemListtrandItemIDListt
randItemIDt libItemListtwishWeightListtitemWeightListtlibItemtcurIDt
itemWeighttisTranstupdCounttaddOuttupdOutt addScoreTypetaddScoret heroCallCntt mailItemListt itemControlttResulttitemObjt mailItemDictt    notifyKeyR]t heroQualitytsendPack((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyRcë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 GetGameDatatGetItemByTypeIDRrtGetTypeR
tDef_ItemType_HeroRR&RNRORPRtDef_ItemType_Runet
PlayerRunetGetIsOpenByRuneIDR<(RRR[titemDataRÙ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ÿÿÿÿ(RTR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 CostFreeTypestGetGridItemRateListFreetGetGridItemRateList1RTtevaltFormulaControltGetCompileFormulaR (RRõR=RöReRt
srcPieListt updRateListRRJRKRtbaseRateRNtspecRate((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(ttypetlistttupleRRtRR(RR[Rt 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=%sRo(RtToIntDefRrRR&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.pytGetTreasureCntAward s0                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&RsR;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.pyR+s\   
            
                     (7RRERRSRÏRR)RÖR¿R:R²R¼RŒR¶RºR¸RzRORÃR
R£RtCostType_MoneyR|R~RvROtTreasureTypeListtTreasureType_JipintTreasureType_RunetTreasureType_JueshitTreasureType_GatherTheSoultTreasureType_GubaotTreasureType_HeroCommtTreasureType_HeroHightTreasureType_HeroScoreRMRR$R9R;RRR`RfRcRµR™R¢R›RšR¡RhRiR(((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyt<module>sZ                          &                            Q     ÿÅ