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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
¤9gc@sidZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z iaedƒ\ZZZd„Zd„Zd„Zd„Zd„Zd    „Zd
„Zdd „Zd „Zd „Zd„Zed„Zd„Z d„Z!d„Z"d„Z#d„Z$d„Z%dS(sVersion = 2018-10-18 19:50iÿÿÿÿNicCsl|jtj||fƒ}|jtj||fƒ}|d|dd|d}}}||||fS(Nidi
(tNomalDictGetPropertytChConfigtDef_PDict_WishingWellItemtDef_PDict_WishingWellItemCnt(t    curPlayertwellTypetititemDatatitemCnttitemIDtisBindt    isSpecial((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pyt__GetItemInfoByData.s$cCsit||ƒ}|d|d|}tj|tj||f|ƒtj|tj||f|ƒdS(Nidi
(t__GetJobItemIDt PlayerControltNomalDictSetPropertyRRR(RRRR    RR
R R((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pyt __SetItemData5s
  cCsBt|ƒtkr|St|ƒtkr,dS|j|jƒdƒS(Ni(ttypetinttdicttgettGetJob(RR    ((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pyR =s
cCs}t|ƒ}|sytjjtjiƒ}|jtjƒrSt|ƒt|ƒqyt    |t
dƒdryt|ƒqyndS(Ni( t__CheckPlayerWishingWellActiont
PyGameDatatg_operationActionDictRt ShareDefinetOperationActionName_WishingWellt ActKey_StatetSyncWishingWellInfotSyncWishingWellPlayerInfoR t WellType_Get(RtisResettactCostRebateInfo((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pytOnLoginEs 
 cCs`tjjtjiƒ}|jtjƒs\tj|tj    dƒt
|t t j ƒƒƒndS(Ni( RRRRRRRRRtDef_PDict_WishingWellFreeTimet__SendWishingWellMailRttime(RR ((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pytOnDayQs
cCsbtƒtjƒ}xHt|jƒƒD]4}|j|ƒ}tj|ƒsPq&nt|ƒq&WdS(N(t__InitWishRateListt    GameWorldtGetPlayerManagertxrangetGetPlayerCounttGetPlayerByIndextIsNormalPlayerR(t playerManagerRR((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pytRefreshWishingWellActionXs c Csu|jƒ}tjjtjiƒ}|jtjdƒ}|jtjdƒ}|jtjdƒ}|jtj    dƒ}|j
t j ƒ}||kršdSt jd||||f|ƒt jƒ}tj|j|j|jdddƒ}    t jt|    ƒƒ}
t||p|
|ƒtj|t j |ƒ|rgtj|t jdƒt|dtƒt|ƒnt|ƒtS(NisGÐíÔ¸³ØÖØÖÃ! WishingWellID=%s,playerWishingWellID=%s,state=%s,worldLv=%si(t GetPlayerIDRRRRRt    ActKey_IDRt ActKey_CfgIDtActKey_WorldLVRRtDef_PDict_WishingWellIDR'tDebugLogtGetCurrentTimetdatetimetyeartmonthtdaytChangeTimeStrToNumtstrR#RRtDef_PDict_WishingWellRefreshCntt__DoActWishingRefreshtTrueRR( RtplayerIDtactWishingWellInfot WishingWellIDtstatetcfgIDtworldLVtplayerWishingWellIDt curDataTimet
curDayTimet curDayTimeNum((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pyRcs,       ' 
c    Cs|jtjƒ}|sR|dkrNtj|tj|ƒtjd|ƒndStjd||||fƒ||d}|dkrŽdSt}tj    ddƒ}g}g}xmt
|ƒD]_}    t |t |    ƒ\}
} } } |
r¿|j |
| | gƒt|t |    ddddƒq¿q¿Wd}xÐt
|ƒD]Â}    t |t|    ƒ\}
} } } |
seq5n|dkr¬t|t ||
| | | ƒ|j |
| | gƒt}n%|dkrÑ|j |
| | gƒnt|t|    ddddƒ|d7}q5W|dkrt}ntj|tj|r+dn|ƒ|rptjd    |jƒg|ƒ|dkrpt|ƒqpntjd
|||||f|jƒƒdS( Niÿÿÿÿs!__SendWishingWellMail curTime =%ss@ÐíÔ¸³ØÎ´ÁìÈ¡µÄ½±ÀøÓʼþ·¢·Å¼ì²é lastAwardTime=%s,state=%s,pass=%siðOitWishingWellCfgiitWishPoolsNÐíÔ¸³Ø¾àÀëʱ¼ä passDay=%s,mailItemList=%s,saveItemList=%s,isOver=%s,curTime=%s(RRtDef_PDict_WishingWellAwardTimeRRR'R4R>t IpyGameDataPYt
GetFuncCfgR)R RtappendRtWellType_ResulttFalset SendMailByKeytGetIDR(RtcurTimeRBt lastAwardTimetpassDaytisOvertcountt mailItemListt saveItemListRR    RR
R tj((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pyR#ŠsR  #           " )c
CsÂtjjtjiƒ}|jtjdƒ}|jtjdƒ}|jtjdƒ}| se| ridStj    d|ƒ}|s…dS|j
ƒ}tj d|ƒ}|s­dSia i}xñ|D]é}|j ƒ}    ||    dksÀ||    dkrøqÀn|jƒ}
|jƒ} |jƒ} |jƒ} |jƒ}|jƒ}|jƒ}|j|
dƒ|||
<|
t krgt |
<nt |
j||
| | | ||ggƒqÀWtjdt ƒdS(NitActWishingWellt WishingWellis(    ³õʼÐíÔ¸³ØËæ»ú¿â g_randomWellDict=%s(RRRRRRR1R2RLtGetIpyGameDatat GetTemplateIDtGetIpyGameDataListtg_randomWellDicttGetWorldLVLimitt    GetIsFreet    GetItemIDt
GetItemCntt    GetIsBindt    GetWeighttGetMarktGetRareRNR'R4(R@RBRCRDt
actIpyDatat
templateIDt ipyDataListt
weightDicttipyDatat worldLVLimittisFreeR    RR
tweighttmarktrare((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pyR&¸s@             .cCs tstƒntj|gƒS(N(R`R&R(Ro((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pyt__GetRandomRateListßs
cCstjƒj|ƒ}tjjtjiƒ}|jtjdƒ}|jtj    dƒ}| se| ridS|j
}t ||ƒt |ƒdS(Ni( R'R(R+RRRRRRR1tIsFreeR=R(tindext
clientDatattickRtactBossRebornInfoRBRCRo((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pytOnActWishingRefreshìs     
c    CsCt|ƒ}|s#tjdƒdS|jƒ}tjd||fƒ|r½|s|jtjƒ}ttjƒƒ}t    j
dƒ}|||krºtjd|||f|ƒdSqnS|jtj ƒ}i|d6}    t t    j ddƒƒ}
tj|tj|
ƒsdSt    j
ddƒ} tj|| gƒ} t| ƒ| krdtjd| | fƒdS|s¦tj|tj|
tj|    ƒtj|tj |d    ƒn+|sÑtj|tjttjƒƒƒnxQt| ƒD]C\} }|\}}}}}|}t|t| ||||ƒqÞWtjd
|| f|ƒdS( Ns(    ÐíÔ¸³Ø»î¶¯Ë¢Ð½±³Ø Ëæ»ú¿â»ñÈ¡´íÎ󠣡s isFree=%s, randomRateList=%sRIsAÐíÔ¸³Ø»î¶¯Ãâ·Ñˢн±³Ø£¬ Ãâ·ÑCDδµ½£¡ freeCountCD=%s, passTime=%st
refreshCntiisN    ÐíÔ¸³Ø»î¶¯Ë¢Ð½±³Ø Ëæ»ú¿â½á¹û »ñÈ¡´íÎ󠣡randomCnt=%s, randomResultList=%sis. ÐíÔ¸³Ø»î¶¯Ë¢Ð isFree=%s, randomResultList=%s(RsR'R4RRRRR"RR$RLRMR<tevaltGetFuncCompileCfgRt    HaveMoneyt IPY_GameWorldtTYPE_Price_Gold_MoneytGetResultByRandomListExtlentPayMoneytDef_Cost_WishingWellRt    enumerateRtWellType_Select(RRotisSystemtrandomRateListR?t freeStartTimeRSt freeCountCDRztinfoDictt    costMoneyt    randomCnttrandomResultListRtinfoR    RR
RqRrR ((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pyR=úsF   
 % c    Csw|j}|j}|j}|j}|ttgksH|ttgkrLdS||kr\dStjƒj|ƒ}|j    ƒ}t
|||ƒ\}    }
} } |    s¿tj d||f|ƒdSt
|||ƒ\} }}}t ||||    |
| | ƒ| rt |||| |||ƒnt |||ddddƒtj d|||    fƒt |||g||ggƒdS(Ns?ÐíÔ¸³Ø»î¶¯ÍÏ×§ÎïÆ· À´Ô´Î»ÖÃûÓÐÎïÆ· srcWellType=%s, srcIndex=%sis:ÐíÔ¸³Ø»î¶¯ÍÏ×§ÎïÆ· desWellType=%s,desIndex=%s,srcitemID=%s(t SrcWellTypetSrcIndext DesWellTypetDesIndexR…ROR'R(R+RRR R4RtSyncWellItemChange(RuRvRwt srcWellTypetsrcIndext desWellTypetdesIndexRR?t    srcitemIDt
srcitemCntt    srcisBindt srcisSpecialt    desitemIDt
desitemCntt    desisBindt desisSpecial((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pytOnActWishingDrag.s,                $  c
CsÂtjƒ}g|_x„|D]|\}}t|||ƒ\}}}}tjƒ}    ||    _||    _||    _||    _||    _    ||    _
|jj |    ƒqWt |jƒ|_ tj||ƒdS(N(tChPyNetSendPackttagMCActWishingDragResulttInfoListR ttagMCPlayerWishingDragInfotWellTypetIndextItemIDtItemCnttIsBindt    IsSpecialRNRtCntt NetPackCommont SendFakePack(
Rt
changeListtpackDataRRuR    RR
R t
changeInfo((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pyR“Hs                              c
    CsJtjddƒ}g}xQt|ƒD]C}t|t|ƒ\}}}}|r%|j|||gƒq%q%W|sŒtjd|jƒƒdSt    |ƒ}t
j |t j |ƒ}    ||    krÐtj|dƒdSx6|D].\}}}tj|||dt j gƒq×Wx0t|ƒD]"}t|t|ddddƒqWt|ƒdS(NRIisÁìÈ¡ÐíÔ¸³Ø½±Àø Ã»Óн±Àø¿ÉÁìÈ¡£¡tGeRen_chenxin_998371i(RLRMR)R RRNR'tLogRRRt
ItemCommontGetItemPackSpaceR~trptItemRt
NotifyCodet ItemControlertGivePlayerItemRR(
RRWt giveItemListRR    RR
R t    needSpacet    packSpace((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pytDoGetWishingAwardYs(  # 
cCsˆtjjtjiƒ}|jtjdƒ}|jtjdƒ}| sP| rTdStjd|ƒ}|spdSt    j
|ƒ\}}t j ƒ}|j ƒ||_||_|jƒ|_|jƒ|_|jƒ|_g|_tdƒ}xp|D]h}    |    d\}
} } } }t jƒ}|
|_| |_| |_| |_||_|jj|ƒqöWt|jƒ|_ t!j"||ƒdS(NiR[i(#RRRRRRR1RLR]R'tGetOperationActionDateStrR¡ttagMCActWishingWellInfotCleart    StartDatetEndtDatet GetIsDayResett
IsDayResett GetResetTypet    ResetTypet
GetLVLimittLimitLVt WellItemInfoRsttagMCWishingWellItemR§R¨R©tMarktRareRNRtCountR¬R­(RRxRBRCRit startDateStrt
endDateStrtactInfotrandomItemListtitemInfoR    RR
RqRrt wellItemInfo((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pyRrs< 
                                   c
Cs˜tjƒ}|jtjƒ}|sÜtjjtj    iƒ}|jtj
dƒ}t j d|ƒ}|rÜt j|ƒ\}}|jƒ}|dkr£d|}    n
d|}    t j|    dtjƒ}t jd|    ƒqÜn||_|jtjƒ|_g|_t||jtƒt|jƒ|_g|_t||jtƒt|jƒ|_g|_t||jtƒt|jƒ|_ t!j"||ƒdS(NiR[is %s 05:00:00s %s 00:00:00t
timeFormats"ÐíÔ¸³Ø»î¶¯¿ªÊ¼Ê±¼ä startDayDate=%s(#R¡ttagMCActWishingWellPlayerInfoRRR"RRRRRR1RLR]R'R½RÄR:tTYPE_Time_FormatR4t FreeStartTimeR<tWishCntRÈt__AddWishingWellItemPackInfoR…Rt WellItemCnttCurAwardItemInfoROt CurAwardCnttLastAwardItemInfoRt LastAwardCntR¬R­(
RR¯RˆRxRCRit    startDatet_t    resetTypet startDayDate((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pyR”s6    
                c
Cs©|tkr!tjddƒ}ntjddƒ}xot|ƒD]a}t|||ƒ\}}}}tjƒ}    ||    _||    _||    _    ||    _
|j |    ƒq@WdS(NRIii( R…RLRMR)R R¡ttagMCPlayerWishingWellItemR§R¨R©RªRN(
RtitemListRRWRR    RR
R R¯((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pyRØ·s                  (&t__doc__R~R'RRLRR¡R¬RRR·R³R6R$R`trangeR…RORR RR R!R%R.RR#R&RsRyRPR=R R“R¼RRRØ(((sqE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerWishingWell.pyt<module>sB                                           ' .    '          4                "    #