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
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
t¥ic@s7ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZedƒ\ZZZZeegZedddƒZ\Z Z!Z"Z#Z$dZ%dZ&dZ'e%e&e'gZ(dZ)d„Z*d    „Z+d
„Z,d „Z-d „Z.d „Z/dd„Z0d„Z1d„Z2d„Z3d„Z4d„Z5d„Z6d„Z7d„Z8e9d„Z:dS(iÿÿÿÿNiiii i i cCst|ƒdS(N(tSync_TreasureInfo(t    curPlayer((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytOnTreasureLoginGs
c Csg}tjƒ}xët|jƒƒD]×}|j|ƒ}|jƒ}|jtj|ƒ r‘|jtj    |ƒ r‘|jtj
|ƒ r‘q%n|j |ƒt j |tj|dƒt j |tj    |dƒt j |tj
|dƒ|jƒ}|jƒ}|dkr%|r%xã|jƒD]Ò}t|ƒ}    tjd|    ƒ}
|
sSq#nx|
D]w} | jƒ} |jtj|| fƒ} | s”qZnt j |tj|| fdƒtjd||    | | fƒqZWt j |tj||    fdƒq#Wq%q%W|rt||ƒndS(NiitTreasureItemLibsHѰ±¦Ã¿ÈÕÐÄÔ¸ÖØÖÃ: treasureType=%s,libID=%s,wishID=%s,×òÈÕÐÄÔ¸²ú³ö´ÎÊý=%s(t IpyGameDataPYtIPY_DatatxrangetGetTreasureSetCounttGetTreasureSetByIndextGetTreasureTypetNomalDictGetPropertytChConfigtDef_PDict_TreasureCountTodaytDef_PDict_TreasureFreeCountt Def_PDict_TreasureCountTodayGoldtappendt PlayerControltNomalDictSetPropertytGetWishLibSelectt GetWishResettkeystinttGetIpyGameDataListtGetIDtDef_PDict_TreasureWishOutt    GameWorldtDebugLogtDef_PDict_TreasureWishLibOutR(Rt syncTypeListt
ipyDataMgrtitipyDatat treasureTypet wishLibSelectt    wishResettlibIDStrtlibIDt libItemListtlibItemtwishIDtoutCnt((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytOnDayKs@         !+c     CsâxÎ|D]Æ}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ƒtj|tj|dƒ|jƒ}x:|jƒD],}tj|tj|t|ƒfdƒq4Wtjd|ƒ}|rxN|D]C}    x:|    jƒjƒD]&}
tj|tj||
fdƒqœWqƒWqqWt||ƒdS(Nt TreasureSetit TreasureHouse(RtGetIpyGameDatatGetRecycleItemMailt GetCostItemIDt ItemControlert RecycleItemRRR R tDef_PDict_TreasureCounttDef_PDict_TreasureCountExR RtDef_PDict_TreasureLucktDef_PDict_TreasureCntAwardtGetGridNumMaxLimitInfoRtDef_PDict_TreasureGridCntRRtGetAtLeastCntLimitInfotitemstDef_PDict_TreasureAtleastCntR( RttreasureTypeListR t
setIpyDatatrecycleItemMailt
costItemIDtgridNumMaxLimitInfot
gridNumStrt    houseListt hourseIpyDatatgridNum((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytResetTreasureTypeps2     * / cCs&|tkr"tj||ƒdkStS(Ni(tActType_HeroAppeartPlayerActHeroAppeartGetActNumByTreasureTypetFalse(RR tactType((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytIsActTreasureTypes cCsßtjƒj|ƒ}|j}|j}|j}tjd|ƒ}|sLdS|jƒ}|sstj    d|ƒdStj    d||fƒi}    x|D]}
|
s©q—ntj
di|
d6t ƒ} | sÏdS| j ƒ} | j ƒsütj    d|
ƒdS| jƒ} | |    kr!g|    | <n|    | }|
|krG|j|
ƒn|tkr—tjd| ƒ}|sodS|jƒr¦tj|| ƒ r¦tj    d| ƒdSq—q—W|jƒr¹ntj    d    |    ƒxþ|jƒD]ð\}}t|ƒ} |    j| gƒ}|r@t|ƒ|kr@tj    d
| |t|ƒ|fƒdStjd| ƒ}|s\dSxh|D]`}|jƒ}
|jtj||
fƒ}|sqcn|
|krctjd ||
|ƒdSqcWq×Wxý|jƒD]ï\}}t|ƒ} |    j| gƒ}xst|ƒD]e}t|ƒ|kr1||nd }
t j!|tj"|||f|
ƒtj    d | ||
fƒqW| |krŠdnd }t j!|tj#|| f|ƒtj    d| |fƒqØWt$||gƒdS(NR*s+¸ÃѰ±¦ÀàÐÍûÓÐÐÄÔ¸ÎïÆ·¹¦ÄÜ! treasureType=%ss8Ѱ±¦Ñ¡ÔñÐÄÔ¸ÎïÆ·: treasureType=%s,reqSelectWishIDList=%sRtIDs·ÇÐÄÔ¸ÎïÆ·£¬²»¿ÉÑ¡Ôñ! wishID=%stHeros+ÐèÒª¼¤»î±¾ÌåµÄÎ佫δ¼¤»î²»¿ÉÑ¡Ôñ£¡itemID=%ssÖØÑ¡ÐÄÔ¸¿â¶ÔÓ¦ID»ã×Ü: %ssSÑ¡ÔñÐÄÔ¸¿âµÄÎïÆ·ÊýÁ¿ÓëÉ趨µÄÐÄÔ¸ÎïÆ·ÊýÁ¿²»Ò»Ö£¡libID=%s,wishCnt=%s,selectCnt=%s,%ssCÒѾ­²ú³ö¹ýµÄÐÄÔ¸ÎïÆ·²»¿É´ÓÑ¡ÔñÖÐÈ¥³ý! outCnt=%s,wishID=%s not in %sis-±£´æÐÄԸѡÔñ: libID=%s,wishIndex=%s,wishID=%sis%±£´æÐÄÔ¸¿¨ÊÇ·ñʹÓÃ: libID=%s,isUse=%s(%RtGetPlayerManagertGetPlayerByIndext TreasureTypet
WishIDListtWishCardUseLibIDListRR,RRtGetIpyGameDataByConditionRGt    GetItemIDt GetIsWishItemtGetLibIDRtTreasureType_HeroCallListtGetRecruitBySelft
PlayerHerotGetHeroActivitetGetWishLibPubFreeCntR8RtgettlenRRR
R Rt
DebugLogExtrangeRRtDef_PDict_TreasureWishSelecttDef_PDict_TreasureWishUseItemR(tindext
clientDatattickRR treqSelectWishIDListtwishCardUseLibIDListR;R!tselectLibItemDictR'tlibItemIpyDatatitemIDR$tselectLibWishIDListt heroIpyDataR#twishCntR%R&R(t
wishIDListt    wishIndextisUse((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytOnTreasureWishSelect sŠ                   
              "# cCsGtjƒj|ƒ}|j}|j}|j}t||||ƒdS(N(RRLRMRNt TreasureIndextCostTypet
DoTreasure(R`RaRbRR t treasureIndextcostType((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pytOnRequestTreasures             icš!Cs”|jƒ}|jƒ}tjd||||f|ƒtjd|ƒ}|sTdS|jƒ}|r™t|||ƒs™tjd||f|ƒdSn|j    ƒ}|s¿tjd|ƒdS|t
krèd}tjd||ƒn|dks|t |ƒkr$tjd||f|ƒdS||}    |    sHtjd|ƒdS|j ƒ}
|j tj|ƒ} | |    } |
rª| |
krªtjd    |    | | |
f|ƒdS|jƒ} x;| D]3}tj||tƒs½tjd
||ƒdSq½W|j tj|ƒ}|}|tkrœ|jƒ}|sLtjd ||f|ƒdS|j tj|ƒ}||    }||krPtjd ||    |f|ƒdSn´|t
kr«n¥|tkr|jƒ}|jƒ}| sï| sï|t |ƒkr tjd ||f|ƒdS||}| s%| r)dStj||ƒ\}}}td|||ƒ}||}d}|dkrP|jƒ}|jƒ}| sº| sº|t |ƒksº|| rØtjd||f|ƒdS||}t||ƒ} | |}tjd|| |||f|ƒ|rW|}!i|tj 6}"t!j"||!|ƒs{dSq~tjd||||f|ƒdSqPnÏ|j#ƒ}#||    }|#rÍ||#krÍtjd|    |||#f|ƒdS|jƒ}|jƒ}| s| s|t |ƒkr#tjd||f|ƒdS||}|s7dSt!j"|||ƒsPdStj$dd|i|d6ƒ}$|$s™tjd||jƒf|ƒdS|j%ƒ}%|$j&ƒ}&i}'xF|&j'ƒD]8\}(})|j tj(||(fƒ}*|*|)g|'|(<qÄWtjd|'|ƒ|$j)ƒ}+|t*krct+j,|tj-ƒsc|$j.ƒ}+tjd|ƒqcnd„|+j'ƒDƒ},t/|,j0ƒƒ}-g}.|j1ƒ}/|j2ƒ}0|-r»t|-ƒnd}1|j tj3|ƒ}2tjd|2|1|%|,f|ƒ|j tj4|ƒ}3|3}4|$j5ƒ}5|j6ƒ}6|$j7ƒ}7tjd|5|ƒtjd|6|7f|ƒ|j8ƒ}8|j9ƒ}9|j:ƒ}:|j;ƒ};i}<x:|;j0ƒD],}=|j tj<||=fƒ|<t|=ƒ<q¨Wtjd|;|<f|ƒ|j tj=|ƒ}>dT\}?}@i}A|$j>ƒ}B|Brv|t |Bƒkrv|B|}At?dt|Aƒƒ}@tj@|>|ƒd}?ng}C|?|@kr¡|?|Akr¡|A|?}Cn|$jAƒ}D|$jBƒ}E|jCƒ}F|jDƒ}G|jEƒ}Hi}Ii}Ji}Ki}Li}Mi}Nxƒ|Fj'ƒD]u\}O}Pt|Oƒ}Q|Gr€    |j tjF||Qfƒ}R|GjG|Odƒ}S|S|R}T|Tdkr€    |T|L|Q<q€    nxtH|PƒD]ò}U|j tjI||O|Ufƒ}V|Vs¾    q    ntjJd i|Vd!6tKƒ}W|Wsæ    q    n|WjLƒsø    q    n|Q|Kkr
g|K|Q<n|K|Q}X|XjM|Vƒ|Gr1
q    |WjNƒ}Y|j tjO||Vfƒ}Z|Y|Z}[|[dkru
q    n|[|N|V<q    Wq    W|Fr¸
tjd"|K|ƒtjd#|L|ƒng}\xDtH|    ƒD]6}]t?|2|0|1ƒ}2tP|2|,|-ƒ\}^}_g}.x!|_D]\}`}(|.jM|(ƒq     W|4d7}4tjd$|]d|4|2|^|_f|ƒ|;rz tjd%|;|<f|ƒntQ|$|.|2|/|ƒ\}a}btR|b|<|;ƒ}btjd&|a|ƒg}c|c r |Cr |]dkró d'|Cdgg}cn
|Cd}ctjd(||?|cf|ƒn|c re |^re |2|^kre |_re tR|_|<|;ƒ}ctjd)|c|ƒn|c r± |4|5kr± |5|4}dtR|d|<|;ƒ}ctjd*|4|cf|ƒn|c r |6r |4|6dkr |7r tR|7|<|;ƒ}ctjd+|6|cf|ƒntK}ed}fxï|fd,kr|fd7}f|fdks; |c r^ |b}ctjd-|c|ƒt}entjS|cƒ}(|(|.kr¥ |(|\kr¥ tjd.|(|\f|ƒq n|erü |(|'krü |'|(\}*})|*|)krù tjd/|(|*|)f|ƒq qù qü ntT|(ƒ}=d}g|Frn|=|EkrntT|E|=ƒ|Fkrn|E|=}g|GrntU|||(|g|K|I|L|H|Mƒ    qnn|(szq n|\jM|(ƒtjd0|(|\|ff|ƒ|(|.ks¼|2|1kr)|0rì|(|%ksÚ|2|1krãd}2q |^}2n d}2tjd1|(|2f|ƒtjd2|(|2f|ƒn|grLtjd3|(|gf|ƒn|(|<kr‡|<|(d|<|(<tjd4|(|<f|ƒnxr|'j'ƒD]d\}h}i|i\}*})|h|(krÁd}*n
|*d7}*|*|)g|'|h<tjd5|h|*|)f|ƒq”WPq WqË
Wtjd6|\|ƒt |\ƒ|    krItjd7||f|ƒdSd}j|jVƒ}k|$jWƒ}lg}mtjXdd8ƒ}nx?|\D]7}(tT|(ƒ}=|=|Dkr|D|=\}o}ptY|k|o|lƒ}o|osêtjd9||(f|ƒdS|o|nkržg}q|n|o}rx9|rD]1}stZ|||s||(ƒs1q n|qjM|sƒq W|qsltjd:|||(|of|ƒdSt[j\|qƒ}oqžn|=|Ekr€|E|=}Qtj]d |Qƒ}t|ts³dSg}ug}vxþ|tD]ö}w|wj^ƒ}x|wj_ƒ|wj`ƒ|wjaƒ}y}o}p|ys
qÆntZ|||o||(ƒs(qÆn|vjM|y|o|pggƒ|GrÆ|KjG|Qgƒ}X|x|XkrkqÆn|IjG|Qdƒ}z|zdkrqÆn|zd|I|Q<|ujM|y|o|p|xggƒqÆqÆW|vsêtjd;|||(|Qf|ƒdS|urhtjb|uƒ\}o}p}xtjd<|(|Q|x|of|ƒ|Q|JkrAi|J|Q<n|J|Q}{|{jG|xdƒd|{|x<qžtjb|vƒ\}o}pntjd=||(f|ƒdSd}||mjM|=|o|p||gƒq†W|tkrþt!jc|tj||ƒtjd>||ƒnû|t
krtjd?|ƒnÜ|tkr¯tjd|||||tjeƒtjd@||f|ƒ|rùi|d6|dA6|dB6|dC6}"t!jf||!|tjg|"|ƒqùnJi|d6|dA6}"t!jf|||tjg|"ƒtjdD||f|ƒt!jc|tj|| ƒt!jc|tj4||4ƒt!jc|tj||ƒt!jc|tj3||2ƒx>|'j'ƒD]0\}(}it!jc|tj(||(f|idƒqnWx:|<j'ƒD],\}(}}t!jc|tj<||(f|}ƒq¯W|?|@kr=tjh|>||?ƒ}>t!jc|tj=||>ƒtjdE||?|@|>f|ƒnx·|Jj'ƒD]©\}Q}{d}~xŠ|{j'ƒD]|\}V}|~|7}~|j tjO||Vfƒ}Z|Z|}€t!jc|tjO||Vf|€ƒtjdF|Q|V||€f|ƒqiW|j tjF||Qfƒ}R|R|~}t!jc|tjF||Qf|ƒtjdG|Q|~|f|ƒ|LjG|Qdƒ}‚|~|‚}ƒ|ƒdkrJ|Q|MkrJ|M|Q}„|„rœ|„jiƒnd}…t?|ƒtjja|„ƒƒ}ƒtjdH|…|ƒf|ƒ|„rótjk||„|ƒƒqóqJqJW|jlƒ}†|jmƒ}‡|jnƒ}ˆ|†rA|‡rAt!jo||†|‡|    ƒn|t*krÒtpjq|tjr|    ƒtsjt|tju|    ƒtv|ƒ}‰twjx|tyjzƒdkr¹t{j||tyjz|‰ƒnt}j~|tyj|‰ƒnt€j|t€j‚||    ƒ|tƒkr1t„j…||ƒ}Š|Šr1t{j||tyj†|4dI|Šƒq1ng}‹tjj‡|ƒ}Œxv|mD]n}|dJ \}=}o}pt|=ƒ}(dtˆ_‰tjjŠ|o|p|jdK|ƒ}Žtj‹|Žƒ}|(|9kr¥|:r¥|:jG|(|:jGddLƒƒ}|ŽjŒƒtjkrntŽj||oƒrdL}tjdM|o|ƒq¢|r¢tjdN|oƒ}‘|‘rk|‘jƒ}’t!j‘d||j’ƒ|’|ogƒqkq¢q¥|r¥t!j‘d||j’ƒ|o|Žj“ƒ|pgƒq¥ntj”|Žƒ}“|‹sß|Œj•|“|ŽdOtj–tKigƒ rù|‹jM|ƒ|Žj—ƒntˆj‰rd|dJ<n|(|8krMd,}”t˜j™ƒjštyj›|ƒ}•|•jœ|”ƒ}–|–j|oƒ|–jž|pƒ|–jŸ|ƒ|–j |j¡ƒƒ|–j¢ƒj£i|j’ƒdP6ƒt¤j¥||–gƒqMqMWdU\}—}˜|ˆrt |ˆƒd8kr|ˆd8 \}—}˜|˜|    9}˜tjjŠ|—|˜|jdK|ƒ}Ž|Žrtj”|Žƒ}“|‹sX|Œj•|“|ŽdOtj–tKigƒ r~|‹jMtj‹|Žƒƒ|Žj—ƒq~qn|‹rt¦j§dL||‹ƒntjdQ||4| |2|†|‡|<|>f|ƒtjdR|m|ƒtjdS|‹|ƒt¨j©ƒ}™|™j—ƒ||™_ª||™_«||™_¬|†|™_­|‡|™_®|—|™_¯|˜|™_°|0|™_±tT|mƒ|™_²t |™j²ƒ|™_³t´jµ||™ƒt¶||gƒdS(VNsBÍæ¼ÒѰ±¦: treasureType=%s,treasureIndex=%s,costType=%s,playerLV=%sR*s8¸ÃѰ±¦ÀàÐͷǻÖУ¬ÎÞ·¨Ñ°±¦! treasureType=%s,actType=%ssûÓÐѰ±¦´ÎÊýÁбíÅäÖÃ!is"¹ã¸æÑ°±¦Ç¿ÖÆÉèÖÃ: treasureIndex=%ss3Ѱ±¦´ÎÊýË÷Òý²»´æÔÚ!treasureType=%s,treasureIndex=%ssûÓÐѰ±¦´ÎÊýÅäÖÃ!s[Ѱ±¦ºó½«³¬¹ýÿÈÕ×î´ó´ÎÊý£¬ÎÞ·¨Ñ°±¦! treasureCount(%s) + curTreasureCountToday(%s) = %s > %ss(¶ÔӦѰ±¦±³°üûÓпոñ×Ó! checkPackType=%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=%ssgѰ±¦ºó½«³¬¹ýÿÈÕ×î´óÏûºÄ»õ±Ò´ÎÊý£¬ÎÞ·¨Ñ°±¦! treasureCount(%s) + curTreasureCountTodayGold(%s) = %s > %ssA¸ÃѰ±¦ÀàÐÍË÷Òý²»Ö§³ÖÏûºÄ»õ±ÒѰ±¦!treasureType=%s,treasureIndex=%sR+tMinLVRNs3ÕÒ²»µ½¸ÃµÈ¼¶¶ÔӦѰ±¦¿âÅäÖÃ!treasureType=%s,curLV=%ssatLeastCntLimitDict=%ss"ÖÕÉí¿¨Î´¿ªÍ¨£¬Î佫ÕÐļʹÓÃÄÚÖñ£µ×cSs%i|]\}}|t|ƒ“qS((R(t.0tktv((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pys
<dictcomp>s    s=updLuck=%s,maxLuck=%s,setLuckyGridNum=%s,luckyItemRateDict=%ssbeSureCountDict=%ssensureCount=%s, %ss*gridNumMaxLimitInfo=%s,gridNumCountInfo=%si    iRRJsµ±Ç°ÐÄÔ¸¿âÑ¡ÔñµÄÐÄÔ¸IDÁбí: %ss»¹¿ÉÓÅÏȲú³öµÄÐÄÔ¸Ãâ·Ñ´ÎÊý:%ss.%s,ÀۼƴÎÊý=%s,ÐÒÔË=%s,½×¶ÎÐÒÔË=%s,ÐÒÔ˱ýͼ=%ss.    gridNumMaxLimitInfo=%s,gridNumCountInfo=%ss    »ù´¡²ú³ö±ýͼ=%si's:    ¡¾µÚx´Îx³é±Ø³ö¡¿: treasureIndex=%s,curIndexCount=%s,%ss    ¡¾ÂúÐÒÔ˱سö±ýͼ¡¿: %ss    ¡¾µÚ%s´ÎÊý±Ø³ö±ýͼ¡¿: %ss    ¡¾Âú%s´ÎÊý±Ø³ö±ýͼ¡¿: %si2s    Ê¹Ó󣹿±ýͼ=%ss=    ÐÒÔËÎïÆ·ÒѾ­³ö¹ý£¬²»ÔÙÖØ¸´²ú³öÖØÐÂËæ»ú£¡ gridNum=%s in %ssE    ¸Ã¸ñ×Óδ´ïµ½×îСѰ±¦´ÎÊý²»²ú³ö£¡ gridNum=%s,curAtLeastCnt=%s < %ss(    ±¾´Î²ú³ö: gridNum=%s, %s, doCount=%ss3    ²»¼ÓÐÒÔËÊ±Ç¿ÖÆÖØÖÃÐÒÔËÖµ: gridNum=%s,updLuck=%ss+    ¡¾²ú³öÐÒÔ˸ñ×Ó¡¿: gridNum=%s,updLuck=%ss3    ¡¾²ú³öµÄÊÇÐÄÔ¸¿âÎïÆ·¡¿: gridNum=%s,wishLibID=%ss$    ¡¾¸üвú³ö´ÎÊý¡¿: gridNum=%s, %ss.        ¸üÐÂ×îÉÙËùÐè´ÎÊý½ø¶È: gridNum=%s,%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=%sRot
CostItemIDt    LackCounts$¿Û³ý»õ±Ò,costGoldType=%s,costGold=%ssW¸üеÚx´Îx³é´ÎÊý: treasureIndex=%s,curIndexCount=%s,maxIndexCount=%s,treasureCountEx=%ssF¸üÐÂÐÄÔ¸ÎïÆ·ÓÅÏȲú³ö´ÎÊý: libID=%s,wishID=%s,retOutCnt=%s,updOutCnt=%ssF¸üÐÂÐÄÔ¸¿âÎïÆ·ÀÛ¼ÆÓÅÏȲú³ö´ÎÊý: libID=%s,retOutTotal=%s,updOutTotal=%ss0¿Û³ýÐÄÔ¸¿¨¸öÊý: cardItemID=%s,costWishCardCnt=%st groupValue1iRts'ÕÐļÎ佫·ÇÊ״λñµÃµÄ²»¹ã²¥ÁË! itemID=%sRKteventtNamesѰ±¦³É¹¦: treasureType=%s,updTreasureCount=%s(%s),updLuck=%s,addScoreType=%s,addScore=%s,gridNumCountInfo=%s,treasureCountEx=%ss    treasureResult=%ss    mailItemList=%s(ii(ii(·tGetLVt GetPlayerIDRRRR,t
GetActTypeRItErrLogtGetTreasureCountListtCostType_ADFreeR[tGetDailyMaxCountR
R R tGetCheckPackListt
ItemCommontCheckPackHasSpacetTrueRtCostType_DayFreetGetDailyFreeCountR t CostType_ItemR.tGetCostItemCountListtGetPackItemBindStateIndexInfotmaxtGetCostMoneyListtGetCostMoneyTypeRtDef_Cost_Reason_SonKeyRt    HaveMoneytGetDailyMaxCountMoneytInterpolationSearchtGetLuckyGridNumR7R8R9tGetLuckyItemRateInfoRUtPlayerGoldInvesttGetInvestStatetInvestType_LifetGetLuckyItemRateInfoExtsortedRtGetLuckyRateFormatt GetOnceLuckyR3R1tGetGridItemRateList3tGetEnsureCounttGetGridItemRateList2tGetRecordGridNumListtGetNotifyGridNumListtGetNotifyKeyDictR5R6R2tGetGridItemRateList4tmintGetDataByDigitPlacetGetGridItemInfotGetGridLibInfoRRYtGetWishLibCardRRZR]R^RQRGRSRt GetWishOutCntRt__getLuckyRateInfotGetUpdLuckyItemRateListtGetRemoveLimitGridRateListtGetResultByRandomListtstrt__prePubWishOuttGetJobtGetJobItemListtGetFuncEvalCfgt
GetJobItemt__checkItemCanTreasuretrandomtchoiceRRt GetItemWeightRRt GetItemCounttGetResultByWeightListRtDelCostItemByBindtItemDel_TreasuretPayMoneytDef_Cost_TreasuretChangeDataByDigitPlacet GetItemTypeIDR/tDelItemtGetAwardMoneyTypetGetAwardMoneyValuetGetAwardItemInfot    GiveMoneyt
PlayerTaskt AddTaskValuetTaskType_HeroCalltPlayerActivitytAddDailyTaskValuetDailyTask_HeroCalltGetHeroCallCnttOpenServerActivityt GetOSAStatet ShareDefinetDef_BT_OSA_HeroCalltPlayerBillboardtUpdatePlayerBillboardt PlayerSuccesstUptateSuccessProgresstSuccType_OSAHeroCalltPlayerActLunhuidiantAddLunhuidianValuetAwardType_TreasureRDRERFtDef_BT_ActHeroAppeartPlayerItemControlert
PyGameDatatg_transItemSigntGetOutPutItemObjtGetMailItemDicttGetTypetDef_ItemType_HeroRWRXt
GetQualityt WorldNotifyt GetPlayerNamet GetUserDatatGetItemPackTypet    PutInItemtItemGive_TreasuretCleart    DBDataMgrt GetGameRecMgrtGetRecTypeIDMgrtDef_GameRecType_Treasuret
AddRecDatat    SetValue1t    SetValue2t    SetValue3t    SetValue4t GetServerIDt GetUserDicttupdatetChPlayertSyncGameRecInfot
PlayerMailt SendMailByKeytChPyNetSendPackttagMCTreasureResultRNRoRpt AddMoneyTypet AddMoneyValuet    AddItemIDt AddItemCounttAddTreasureLucktTreasureResulttTreasureResultLent NetPackCommont SendFakePackR(šRR RsRrtplayerLVtplayerIDR;RHttreasureCountListt treasureCountt dailyMaxCounttcurTreasureCountTodaytupdTreasureCountTodayt checkPackListt checkPackTypetcurTreasureCountTodayGoldtupdTreasureCountTodayGoldtdailyFreeCounttfreeCountTodaytupdFreeCountTodayR=t costItemListtcostItemNeedCounttcostItemIndexListtbindCntt    unBindCntt    lackCounttdelCostItemCounttlackCountCostMoneyt costGoldListt costGoldTypetcostGoldt perItemGoldt    moneyTypetinfoDicttdailyMaxCountMoneyRtsetLuckyGridNumtatLeastCntLimitInfotatLeastCntLimitDictRBtneedAtLeastCntt curAtLeastCnttluckyItemRateInfotluckyItemRateDicttluckyValueListtluckyGridNumListt luckFormulataddLucktmaxLucktupdLucktcurTreasureCounttupdTreasureCounttbeSureCountDictt ensureCounttensureRateListtrecordGridNumListtnotifyGridNumListt notifyKeyDictR>tgridNumCountInfoR?ttreasureCountExt curIndexCountt maxIndexCounttbeSureCountByIndexDicttbeSureCountByIndexListtbeSureCountByIndexCfgtgridItemInfoDicttgridLibInfoDictR!twishPubFreeCntDicttwishPubCardDicttpreOutWishDicttretOutWishDicttselectWishIDDicttcanFreeOutWishLibDicttwishCardItemLibDicttcanFreeOutWishIDictR#t    selectCntR$toutTotaltfreeCntt canFreeOutPubRlR'RftselectWishIDListt outCntLimitR(t
canFreeOutt getGridResultttIndext    stageLucktluckItemRateListt_t baseRateListtcommItemRateListt curRateListtbesureGridRateListt isNormalRatetdoCountt    wishLibIDtgNumt atLeastInfotisBindtjobt jobItemListttreasureResulttrandItemIDDictRgt    itemCounttcanRandItemListtrandItemIDListt
randItemIDR%twishWeightListtitemWeightListR&tcurIDt
itemWeightt preOutWishCnttretOutWishIDDicttisTranstupdCountt retOutTotalt    retOutCntt    updOutCntt updOutTotalt
canFreeCnttcostWishCardCntt wishCardItemt
cardItemIDt addScoreTypetaddScoret awardItemInfot heroCallCnttactNumt mailItemListt itemControlttResulttitemObjt mailItemDictt    notifyKeyRit heroQualitytpackTypetmaxCountt recTypeIDMgrtrecDatat    addItemIDt addItemCounttsendPack((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyRq s¸         
 
        
      
 
   +
 
        
 
       
                *  
 
 
 
 
'  
    
#
            (
                
!          
      
  &  #       
   "%($ #
 
 $
 
 
       "       +1+             
+    # 
                                c    Csë|jƒ}    |j|gƒ}
|
s8tjd|    ƒdS|j|dƒ} |j|dƒ} tjd||| | f|    ƒ| | krÉ|jtj||fƒsÂtjd||f|    ƒdS|jt|ƒdƒ} | sþtjd||f|    ƒdS||krVtj    || t
j ƒ}|sItjd||| f|    ƒdS|||<n||}t j |ƒ}| |}| |kr¦tjd||| f|    ƒdStjd||| |f|    ƒntjd    |    ƒ| d
||<dS( Ns*    ¹«¹²ÐÄԸδѡÔñÐÄÔ¸ÎïÆ·£¬×ßĬÈÏËæ»ú¹æÔòisK    ¹«¹²Ãâ·ÑÐÄÔ¸´ÎÊý£¡ gridNum=%s,wishLibID=%s,preOutTotal=%s,canFreeCnt=%ss>    Íæ¼ÒÐÄÔ¸¿¨Î´ÆôÓã¬×ßĬÈÏËæ»ú¹æÔò£¡ gridNum=%s,wishLibID=%ss@    ¸Ã¿âûÓÐÐÄÔ¸¿¨ÅäÖã¬×ßĬÈÏËæ»ú¹æÔò£¡ gridNum=%s,wishLibID=%ssR    Íæ¼ÒûÓжÔÓ¦ÐÄÔ¸¿¨ÎïÆ·£¬×ßĬÈÏËæ»ú¹æÔò£¡ gridNum=%s,wishLibID=%s,wishCardID=%ssT    ÐÄÔ¸¿¨¸öÊýÔ¤²ú³öÒÑÏûºÄÍ꣬×ßĬÈÏËæ»ú¹æÔò£¡ gridNum=%s,wishLibID=%s,wishCardID=%ssO    ÐÄÔ¸¿¨¸öÊý»¹¿É²ú³ö£¡ gridNum=%s,wishLibID=%s,wishCardID=%s,cardItemCount=%ss(        ¹«¹²ÐÄÔ¸»¹ÓÐÃâ·Ñ´ÎÊýÇ¿ÖÆÏûºÄ´ÎÊýi(R€RZRRR
R R_R°R‡tFindItemInPackByItemIDt IPY_GameWorldtrptItemR/Rº(RR RBRZRDRBRERARFRRLt preOutTotalRrt
wishCardIDRtt cardItemCountt canOutTotal((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyR±ZsH            
 
         cCs5d}x(tD] }||jtj|ƒ7}q W|S(Ni(RUR
R R1(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
 
c
CsHtjƒj|ƒ}|sdS|jƒ}|jƒ}d}|tjkrU|}nH|tjkr|jdƒj    dƒ}|stj
d||ƒdSn|rDt j d|ƒ}    |    sÙtj
d||f|ƒdS|    j ƒrtj||ƒ rtj
d||f|ƒdS|tkrDtj||||ƒsAdSqDntS(Nis.Î佫ËéÆ¬Ð§¹û1AֵδÅäÖöÔÓ¦µÄÎ佫ID£¡ itemID=%sRKs(²»´æÔÚ¸ÃÎ佫²»²ú³ö£¡ itemID=%s,heroID=%ss&Î佫δ¼¤»î²»²ú³ö£¡ itemID=%s,heroID=%s(Rt GetGameDatatGetItemByTypeIDR€RàR RátDef_ItemType_HeroPiecetGetEffectByIndextGetEffectValueRRR,RVRWRXRDREtIsActCanTreasureHeroR‰(
RR RgRHRBtitemDataRtitemTypetheroIDRi((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyR¶™s2       
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°RZR( tsrcGridNumRateListR7R>t newRateListRtrateInfotrateRBt
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ÿÿÿÿ(    R    t CostFreeTypestGetGridItemRateListFreetGetGridItemRateList1RtevaltFormulaControltGetCompileFormulaR(RR*R‘R+RsR t
srcPieListt updRateListRR R¡RBtbaseRateR¤tspecRate((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(ttypetlistttupleRR‚R[(R^RgR_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=%sR}(RtToIntDefR€RR,t GetAwardIndextGetAwardItemListR
R R4tpowRR1RRR/tGivePlayerItemOrMailRGR(
RR tneedTreasureCntRRt
awardIndext awardItemListt
awardStateRtupdState((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|ƒ|
_|jtj|ƒ|
_xd|    j ƒD]V} t!| ƒ} tj"ƒ} | | _#|jtj$|| fƒ| _%|
j&j| ƒq¥Wt'|
j&ƒ|
_(g|
_)|j*ƒ}x|j+ƒD]\}}t!|ƒ}tj,ƒ}||_-|jtj.||fƒ|_/|jtj0||fƒ|_1g|_2xwt3|ƒD]i}|jtj4|||fƒ}tj5ƒ}||_6|jtj7||fƒ|_8|j2j|ƒq´Wt'|j2ƒ|_9|
j)j|ƒq3Wt'|
j)ƒ|
_:|j j|
ƒq†Wt'|j ƒ|_;t<j=||ƒdS(NR*(>tNoneRRRRRRR    RúttagMCTreasureInfoRétTreasuerInfoListR,RRIR5ttagMCTreasureTypeInfoRNR
R R3t    LuckValueR1t TreasureCountR tTreasureCountTodayRtTreasureCountTodayGoldR tFreeCountTodayR4R³RRttagMCTreasureGridLimittGridNumR6tGridCnttGridLimitCntListR[t GridLimitCntt WishLibListRR8ttagMCTreasureWishLibtLibIDRt OutCntTotalR_t IsUseWishCardtWishListR]R^ttagMCTreasureWishtWishIDRtOutCnttWishCntt
WishLibCntt    InfoCountRR(RRRRRttreasureInfoPackttTypeR;RHR>t    tTypeInfoR?RBt    gridLimitR!R#RjR$twishLibRlR'twish((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyRsp   
            
                              (;RRŠRR©RúRR/RR×RERÊRÔR˜RÎRÒRÐR‡RWRÜRÇRøRêRöR R·R]tCostType_MoneyRŠRŒR„R¥tTreasureTypeListtTreasureType_JipintTreasureType_RunetTreasureType_JueshitTreasureType_GatherTheSoultTreasureType_GubaotTreasureType_HeroCommtTreasureType_HeroHightTreasureType_HeroScoreRURDRR)RCRIRnRtRqR±RÍR¬R¶R®R­RµR¾R¿R(((smD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTreasure.pyt<module>sd                              &        %            d     ÿÿP    /