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
Sð    hc@s#ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
e dƒZ \Z ZZe ddƒZ\ZZZd„Zd„Zd„Zd„Zd„Zd    „Zd
„Zd „Zd „Zd „Zdd„ZdS(iÿÿÿÿNiicCsÝxÖtjjtjiƒjƒD]¶}|jtjdƒ}t||ƒ}| r|jtjƒrt    ||ƒ|jtj
dƒ}t j d|ƒ}|rÕ|j ƒ}x'|jƒD]}t|||ƒqµWqÕqqWdS(Nit ActLunhuidian(t
PyGameDatatg_operationActionDicttgett ShareDefinetOperationActionName_Lunhuidiantvaluest ActKey_ActNumt __CheckPlayerActLunhuidianActiont ActKey_StatetSync_ActLunhuidianActionInfot ActKey_CfgIDt IpyGameDataPYtGetIpyGameDatatGetRoundSetInfotkeystSync_ActLunhuidianPlayerInfo(t    curPlayertactInfotactNumtisResettcfgIDtipyDatat roundSetDictt    roundType((sW.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActLunhuidian.pyt OnPlayerLogin,s%  cCs^tjƒ}xKt|jƒƒD]7}|j|ƒ}tj|ƒsIqnt||ƒqWdS(N(t    GameWorldtGetPlayerManagertxrangetGetPlayerCounttGetPlayerByIndextIsNormalPlayerR(Rt playerManagertindexR((sW.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActLunhuidian.pytRefreshActLunhuidianActionInfo<s cCs]|jƒ}tjtj|ƒ}|jtjdƒ}|jtjdƒ}|jtjƒ}|j    t
j |ƒ}||kr tj d|||f|ƒdStj d|||||f|ƒt ||ƒtj|t
j ||ƒ|rYt||ƒtjd|ƒ}|rY|jƒ}    |jƒ}
|jƒ} gg} } xç|    jƒD]Ù\}}t||||ƒtj|t
j||fdƒtj|t
j||fdƒtj|t
j||fdƒt|||ƒ| |
j|gƒ7} | j|dƒ}|rS|| krS| j|ƒqSqSWtj|d| ƒtj || ƒqYnt!S(Nis6Âֻصî»î¶¯ID²»±ä£¬²»´¦Àí£¡ actNum=%s,cfgID=%s,actID=%ssCÂֻصî»î¶¯ÖØÖÃ! actNum=%s,cfgID=%s,actID=%s,playerActID=%s,state=%sRi("t GetPlayerIDRt
GetActInfoRRRt    ActKey_IDR    R tNomalDictGetPropertytChConfigtDef_PDict_ActLunhuidianIDtDebugLogtOnGiveUngetAwardt PlayerControltNomalDictSetPropertyR
R R RtGetRoundCTGIDInfotGetRoundShopTypeInfotitemstSaveActRoundSettDef_PDict_ActLunhuidianValuetDef_PDict_ActLunhuidianRoundtDef_PDict_ActLunhuidianAwardRtappendt
PlayerCointDoResetCTGCountByIDListtFunctionNPCCommontResetShopItemBuyCountByShopTypetTrue(RRtplayerIDRtactIDtstateRt playerActIDRRt    ctgIDDictt shopTypeDicttresetCTGIDListtresetShopTypeListRtroundSettshopType((sW.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActLunhuidian.pyRFsD               cCs¡xštdƒD]Œ}|jtj||fƒr5q nt|tƒ}|d|}tj|tj||f|ƒtj    d||||f|j
ƒƒPq WdS(NiidsD    ±£´æÂֻصî²ÎÓëÖµ! actNum=%s,roundType=%s,roundMax=%s,setValue=%s( trangeR&R'tDef_PDict_ActLunhuidianSettGetRoundSetValuetRoundSetIndex_RoundMaxR+R,RR)R#(RRRRBtnumtroundMaxtsetValue((sW.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActLunhuidian.pyR0ss     cCssxltdƒD]^}|jtj||fƒ}|s;q nt|||ƒtj|tj||fdƒq WdS(Nii(RDR&R'REt__DoGiveUngetAwardByMailR+R,(RRRHRJ((sW.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActLunhuidian.pyR*s$c
Cs'|jƒ}|d}|d}|jtj||fƒ}|jtj||fƒ}|jtj||fƒ}tjd|ƒ}    |    sdSg}
|} |} |} x/| dkrÙ| |krÙtj    d| | | f|ƒd}xÓ|    D]Ë}|j
ƒ}|j ƒ}|j ƒ}t ||ƒ}| td|ƒ@r\tj    d| ||f|ƒqín| |krŽtj    d| ||| f|ƒqín|
|7}
tj    d| |||f|ƒqíW| d    7} | |8} d} q«W|
sädStjd
|||||||
f|ƒtjd |g|
ƒdS( NidtActLunhuidianAwardis7´¦Àí²¹·¢Âֻؽ±Àø: doRound=%s,doValue=%s,doAwardState=%sis/    ÒÑÁìÈ¡¸Ã½±Àø: doRound=%s,aIndex=%s,needV=%ss4    ËùÐèÖµ²»´ï±ê: doRound=%s,aIndex=%s,needV=%s > %ss2    Î´ÁìÈ¡²¹·¢½±: doRound=%s,aIndex=%s,needV=%s,%sisn´¦Àí²¹·¢Âֻؽ±ÀøÍê±Ï: actNum=%s,roundType=%s,roundMax=%s,curRound=%s,curValue=%s,awardState=%s,mailItemList=%stLunhuidianUnget(R#R&R'R2R1R3R tGetIpyGameDataListRR)t GetNeedValuet GetAwardIndextGetAwardItemListtmaxtpowtLogR+t SendMailByKey(RRRJR:RRItcurRoundtcurValuet
awardStatetawardIpyDataListt mailItemListtdoRoundtdoValuet doAwardStatet roundValueMaxt awardIpyDatatneedVtaIndext awardItemList((sW.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActLunhuidian.pyRK‹sL 
 
      
$
 
 
     cCst|ƒ|kr||SdS(Ni(tlen(RBtsetIndex((sW.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActLunhuidian.pyRF¶sc Csƒ|jƒ}xptjjtjiƒjƒD]P}|jtjƒsIq+n|jtjƒ}|jtj    dƒ}t
j d|ƒ}|sŽq+n|j ƒ}    xÞ|    j ƒD]Ð\}
} |t| tƒkrÎq§n|t| tƒkréq§n|jtj||
fƒ} t| |tjƒ} tj|tj||
f| ƒtjd|||
|||| | f|ƒt|||
ƒq§Wq+WdS(NiRst¸üÐÂÂֻصîÀÛ¼ÆÖµ: actNum=%s,cfgID=%s,roundType=%s,awardType=%s,awardTypeValue=%s,addValue=%s,curValue=%s,updValue=%s(R#RRRRRRR    R RR R RR/RFtRoundSetIndex_AwardTypetRoundSetIndex_AwardTypeValueR&R'R1tmintDef_UpperLimit_DWordR+R,RR)R(Rt    awardTypetawardTypeValuetaddValueR:RRRRRRRBRWtupdValue((sW.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActLunhuidian.pytAddLunhuidianValue¸s, %      #c
Cs0|}|jdƒ}t|ƒdkr<tjd|ƒdStj|ddƒ}tj|ddƒ}|jƒ}tjtj|ƒ}| s£|j    tj
ƒ r¸tjd|ƒdS|j    tj ƒ}    t j d|    ƒ}
|
sædS|
jƒ} || krtjd||| fƒdS| |} t| tƒ} t jd    |ƒ}|sQdS|jtj||fƒ}|jtj||fƒ}|jtj||fƒ}d}g}dg}}xy|D]q}|jƒ}t||ƒ}|jƒ}||kr|}|jƒ}qÅ|td|ƒ@sÅ|j|ƒqÅqÅW|dkrgtjd
|||f|ƒdS|td|ƒ@ržtjd ||||f|ƒdS||krÑtjd |||||f|ƒdS|td|ƒB}tj|tj||f|ƒtjd |||||||f|ƒt j!||ddt"igƒtjd|| |||f|ƒ| r|| kr|d}td||ƒ}tj|tj||f|ƒtj|tj||f|ƒtj|tj||fdƒtjd||f|ƒnt#|||ƒdS(Ns|is·¢ËÍÁìÈ¡¸ñʽ´íÎó: dataExStr=%siis¸ÃÂֻصî·Ç»î¶¯ÖÐ: actNum=%sRs<¸ÃÂֻصîÀàÐͲ»ÔÚ±¾´Î»î¶¯ÖÐ: actNum=%s,roundType=%s not in %sRLs5ÂֻصîûÓиý±Àø! actNum=%s,roundType=%s,needValue=%ssCÂֻصÀøÒÑÁì½±! actNum=%s,roundType=%s,needValue=%s,awardIndex=%ssOÂֻصǰֵ²»×㣬ÎÞ·¨Áì½±! actNum=%s,roundType=%s,curRound=%s,curValue=%s < %ssgÁìÈ¡ÂֻصÀø! actNum=%s,roundType=%s,needValue=%s,awardIndex=%s,awardState=%s,updState=%s,curRound=%steventt
LunhuidiansA    curRound=%s/%s,unGetIndexList=%s,curValue=%s,roundValueMax=%ssC    ±¾ÂÖ´ÎËùÓн±ÀøÒѾ­ÁìÈ¡Íê±Ï£¬½øÈëÏÂÒ»ÂÖ! updRound=%s,updValue=%s($tsplitRcRR)tToIntDefR#R$RRRR    R R R RRFRGRNR&R'R2R1R3tNoneRORRRPRQRSR4R+R,t ItemControlertGivePlayerItemOrMailtFalseR(RtdataExt    dataExStrRtawardSplitListRt    needValueR:RRRRRBRIRYRVRWRXR^tunGetIndexListt
awardIndexRbR_R`RatupdStatetupdRoundRl((sW.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActLunhuidian.pytGetLunhuidianAwardÓs†   
                         
   cCstjƒ}||_||_|jtj||fƒ|_|jtj||fƒ|_    |jtj
||fƒ|_ t j ||ƒdS(N(tChPyNetSendPackttagMCActLunhuidianPlayerInfotActNumt    RoundTypeR&R'R2tCurRoundR1tCurValueR3t AwardRecordt NetPackCommont SendFakePack(RRRt
clientPack((sW.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActLunhuidian.pyR%s         icCs¯tjtj|ƒ}|sdS|jtjƒs5dS|jtjƒ}tjd|ƒ}|scdStj    |ƒ\}}t
j ƒ}|j ƒ||_ ||_||_|jƒ|_|jƒ|_|jƒ}    |jƒ}
|jƒ} x›|    jƒD]\}} t
jƒ} || _t| tƒ| _t| tƒ| _t| tƒ| _ g| _!tj"d|ƒ}|r'x´|D]©}t
j#ƒ}|j$ƒ|_%|j&ƒ|_'xT|j(ƒD]F\}}}t
j)ƒ}||_*||_+||_,|j-j.|ƒq´Wt/|j-ƒ|_0| j!j.|ƒqwWnt/| j!ƒ| _1|
j|gƒ| _2t/| j2ƒ| _3| j|dƒ| _4|j5j.| ƒqøWt/|j5ƒ|_6t7j8||ƒdS(NRRLi(9RR$RRRR    R R R tGetOperationActionDateStrRttagMCActLunhuidianInfotClearRt    StartDatetEndtDatet GetResetTypet    ResetTypet
GetLVLimittLimitLVRR-R.R/ttagMCActLunhuidianRoundR‚RFRet    AwardTypeRftAwardTypeValueRGtRoundMaxt    AwardListRNttagMCActLunhuidianAwardRPt
AwardIndexROt    NeedValueRQttagMCActLunhuidianItemtItemIDt    ItemCounttIsBindt AwardItemListR4RctCountt
AwardCountt    CTGIDListt
CTGIDCounttShopTypet    RoundListt
RoundCountR†R‡(RRRRRRt startDateStrt
endDateStrRˆRR>R?RBt    roundInfoRYR_tawardtitemIDt    itemCountt isAuctionItemtitem((sW.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActLunhuidian.pyR
/sb 
                                       i(RRR+R RR7R†RsR5RR'RDt RoundSetIndexReRfRGt AwardTypeListtAwardType_PayMoneytAwardType_TreasuretAwardType_UseItemRR"RR0R*RKRFRmR~RR
(((sW.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerActLunhuidian.pyt<module>s.                   
    -        
    +            R