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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
â‹Egc@súddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZdd„Zd„Zd„Zed„Zd„Z ed„Z!d    „Z"ed
„Z#d „Z$d „Z%d d-d„ƒYZ&dd.d„ƒYZ'e'ƒZ(d„Z)d„Z*d„Z+d„Z,d„Z-d„Z.d„Z/d„Z0d„Z1d„Z2gd„Z3d„Z4ed„Z5ged„Z6d„Z7d „Z8d!„Z9ge:d"„Z;d#„Z<d$„Z=ed%„Z>d&„Z?d'„Z@ee:d(„ZAge:d)„ZBd*„ZCd+„ZDd,„ZEdS(/iÿÿÿÿNicCs|j||tjƒS(N(tNomalDictGetPropertytChConfigtDef_PDictType_Success(t    curPlayertkeyt defaultValue((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt GetPDictValue6scCstj|||tjƒdS(N(t PlayerControltNomalDictSetPropertyRR(RRtvalue((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt SetPDictValue=scCstj|tj|ƒS(N(t    GameWorldtGetDictValueByBitRtDef_PDict_Success_FinishTime(RtsuccID((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytGetSuccIsFinishAscCstj|tj||ƒS(N(R tSetDictValueByBitRR (RRtfinish((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt SetSuccFinishEscCstj|tj|ƒS(N(R R RtDef_PDict_Success_AwardRecord(RR((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt GetSuccHasGotIscCsrt||ƒ|krdStj|tj||ƒ|rnt||dƒt||gtƒtj    ||ƒndS(Ni(
RR RRRRtSync_SuccTypeIndexAwardRecordtTruet
EventShelltEventRespons_SuccessFinish(RRthasGot((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt SetSuccHasGotMscCstj|tj|ƒS(N(R R RtDef_PDict_Success_PassportAward(RR((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytGetSuccPassportAwardHasGot\scCs6tj|tj||ƒ|r2t||gƒndS(N(R RRRR(RRR((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytSetSuccPassportAwardHasGot_scCs'tj||f}t|||ƒdS(N(RtDef_PDict_Success_CntValueR
(RtsuccTypet    conditionR    R((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytSetSuccFinishValuefscCs tj||f}t||ƒS(N(RRR(RRR R((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytGetSuccFinishValuelst SuccessDatacBseZd„ZRS(cCsyd|_d|_d|_g|_g|_i|_i|_i|_d|_i|_    t
|_ d|_ i|_ dS(Ni(RRtneedCntt preSuccIDListR t awardItemDicttawardItemDict2t    moneyDicttexptattrDictRthasAwardt redPacketIDtmagicWeaponExp(tself((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt__init__vs                                                    (t__name__t
__module__R/(((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR#tstSuccessDataMngcBs,eZd„Zd„Zd„Zd„ZRS(cCsi|_i|_dS(N(tsuccTypeConditionDicttsuccessDataDict(R.((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR/s        c     Csõ||jkrdStjdi|d6ttƒ}|s<dSi}i}x™|D]‘}tƒ}|jƒ|_||_|j    ƒ|_
t |j ƒƒ|_ t |jƒƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ}|jƒ}|r=|r=||j|<nt|jp||jp||jp||jp||jp||jp||jƒ|_ |||j<t!|jƒ|krÃ|jg|t!|jƒ<qO|t!|jƒj"|jƒqOW||j|<dS(NtSuccesstType(#R4t IpyGameDataPYtGetIpyGameDataByConditionRtFalseR#tGetIDRRt
GetNeedCntR$tlistt GetPreSuccessR%t GetConditionR t GetAwardItemR&t GetAwardItem2R'tGetMoneyR(tGetExpR)t GetAwardAttrR*tGetRedPacketIDR,tGetMagicWeaponIDtGetMagicWeaponExpR-tboolR+ttupletappend(    R.RtsuccessDataListtsuccessDataObjDictt conditionDicttsuccessIpyDatatsuccDatat magicWeaponIDR-((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt__LoadSuccessData•s@            9 ! cCs8||jkr|j|ƒn|jj|iƒjƒS(N(R4t _SuccessDataMng__LoadSuccessDatatgettvalues(R.R((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytGetSuccDataByType¿scCsctjd|ƒ}|sdS|jƒ}||jkrG|j|ƒn|jj|iƒj|ƒS(NR5(R7tGetIpyGameDataNotLogtGetTypeR4RQRR(R.Rt succIpyDataR((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytGetSuccessDataÐs (R0R1R/RQRTRX(((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR2ˆs        *    cCstS(N(t g_succDataMng(((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytGetSuccDataMngâscCsƒt|ƒt|ƒt|ƒx?tjD]4}tƒj|ƒ}|sLq(nt|||ƒq(W|jt    j
ƒrt |ƒndS(N( tSync_SuccessInfoRt__CheckOldPlayerSuccesst ShareDefinetSuccessTypeListRZRTt__DoCheckSuccessFinishRRtDef_PDict_Success_ScoreAwardtSync_SuccessScoreAward(RRt succInfoList((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt SuccOnLoginès
 
 
 cCsÂtjƒjtjƒ}g}t|tjƒ}||krVtjd|j    ƒƒdStjd|ƒt
j ƒ}x|D]}qzWt j |ƒt|tj|ƒtjd||j    ƒƒdS(sK ³É¾Í°æ±¾¸üÐÂÀÏÍæ¼Ò¼ì²é  Ã¿´ÎÆô¶¯·þÎñºó Íæ¼ÒµÚÒ»´ÎÉÏÏß¼ì²é³É¾ÍÍê³ÉÇé¿ö
    s*    ±¾´Î¿ªÆô·þÎñÆ÷´¦Àí¹ý³É¾Í¼ì²é,²»ÔÙ´¦Àí Ns(¸üÐÂÀÏÍæ¼ÒÉÏÏß¼ì²é³É¾ÍcurCheckVersion=%ss)¸üÐÂÀÏÍæ¼ÒÉÏÏß¼ì²é³É¾ÍupdCheckVersions=%s(R t GetGameWorldtGetGameWorldDictByKeyR]t%Def_Notify_WorldKey_InitGameWorldTimeRRtDef_PDict_Success_CheckVersiontDebugLogR:R7tIPY_DatatDataRecordPacktDR_CheckOldPlayerSuccessR
(RtinitGameWorldTimetNeedCheckSuccTypeListtcurCheckVersiont
ipyDataMgrR((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR\s    cCsýg}tjdƒ}x¸|D]°}tƒj|ƒ}|s@qnx‰|D]}|j}|j}t|||ƒswqGnt|||dƒt||t    ƒt
||t    ƒ|j |ƒt j d|ƒqGWqW|rùt||tƒt||tƒndS(NtWeekResetSuccTypeis"    OnWeek ÖØÖóɾÍÀàÐÍ: succID=%s(R7tGetFuncEvalCfgRZRTRR R"R!RR9RRIR RhRRR[(Rt    resetListtweekResetSuccTypeListRRbt succDataObjRR ((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytOnWeeks(           cCsÕ|s
dSg}x•|D]}tƒj|ƒ}|s;qn|j}|j}t|||dƒt||tƒt||tƒ|j|ƒt    j
d||fƒqW|rÑt ||t ƒt ||t ƒndS(Nis'    ÖØÖóɾÍÀàÐÍ: succType=%s,succID=%s(RZRXRR R!RR9RRIR RhRRR[(RtresetSuccIDListRrRRNRR ((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytDoResetSuccessIDList/s$          c    Csg}tjƒjtjƒ}tjd|ƒxÄtjD]¹}tƒj|ƒ}|s]q9nx’|D]Š}|j    }|j
}t ||ƒ}|dks¦t ||ƒr¹tjdƒqdnt |||ƒrdt|||dƒ|j|ƒqdqdWq9W|rt||tƒndS(NsÁ¬ÐøÀàÐͳɾ͹ýÌì...serverDay=%sis        ÒÑÍê³ÉµÄ²»ÔÙ¼ì²é(R RdReR]tDef_Notify_WorldKey_ServerDayRhtContinueSuccessTypeListRZRTRR RRt__DoCheckResetContinueR!RIR[R(    RRrt    serverDayRRbRtRR t
finishTime((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt    SuccOnDayIs(          cCs·tj|}t||ƒ}|dkr,dSttjƒƒ}tj|tjƒ}tj|tjƒ}||tj    dƒkr’tj
dƒdSt ||dƒtj
d|ƒt S(Nièis,        ×òÌìÓиüеIJ»´¦Àí£¬Ö¤Ã÷»¹ÊÇÁ¬Ðø×´Ì¬is    ÖØÖóɾÍÁ¬ÐøÀàÐÍ: succID=%s( RtDef_PDict_Success_LastDayRtintttimeR tChangeTimeNumToDatetimetTYPE_Time_Format_Daytdatetimet    timedeltaRhR
R(RR{Rt
lastDayKeytlastDayttick((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyRzls   cCs†tƒj|ƒ}|sdSxc|D][}|j}|j}t||ƒ}|dks#t||ƒrkq#nt|||dƒq#WdS(Ni(RZRTRR RRR!(RRRbRtRR R|((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytResetSuccessByType‚s         cCs‡tjdi|d6tƒ}|s&dSiii}}}|jƒjtjƒ}xõ|D]í}|jƒ}|j|ƒ}    |    j    ƒrŒqYn|    j
ƒ}
|
t j kr|    j ƒ} || f} |j| dƒd|| <|    jƒrF|f} |j| dƒd|| <qFqY|
t jkrY||
f}|j|dƒd||<qYqYWt|tj|ƒt|tj|ƒt|tj|ƒdS(NtEquipPlaceIndexMaptClassLVii(R7R8RtGetItemManagertGetPackt IPY_GameWorldtrptEquipt GetGridIndextGetAttIsEmptyt GetEquipPlaceRtEquipPlace_Baset GetItemColorRRt
GetSuiteIDtEquipPlace_Specialt!UpdateSuccessProgressByConditionsR]tSuccType_EquipPlacetSuccType_EquipColorItemtSuccType_EquipSuit(RtclassLVt ipyDataListtplaceCountDicttcolorCountDictt suitCountDictt playerEquiptipyDatat
equipIndextcurEquipt    itemPlacet    itemColortcolorConditionKeytsuitConditionKeytplaceConditionKey((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytDoEquipSuccessLogic“s2             !cCs|tjkrdStƒj|ƒ}|s/dSg}g}i}x|jƒD]\}}g}    xû|D]ó}
|
j} t| ƒ} |
j} |
j}| |kr¶| ddg|| <n|| }|d|krÝ||d<nt    ||
t
|ƒƒsûqgn| |kr$|j | ƒ|j |
ƒn| |    krg|    j | ƒ|| d||| d<qgqgWqNW|sldSt }xo|j ƒD]a\} }}|sšqnt||ƒ}t||| ƒ|krÇqnt}t||| |ƒqW|sîdSt||t ƒt|||ƒdS(Niii(R]R^RZRTtitemsR RHRR$t__CheckCanAddSuccessR<RIR9RStminR"RR!R[R_(Rt successTypetconditionCountDictRbt    updIDListtupdsuccDataListtupdConditionDictR tnewCountt addCondListRttcondt    tupleCondRR$tupdInfotisUpdtupdCnttmaxCnt((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR—¾sX               
     %cCsä|tjkrdS|tjkr5tjƒs5dSntƒj|ƒ}|sbtjd|ƒdSd}x<|D]4}t    |||ƒsqont
|||j ƒ}PqoW|dkr·dS||kràt |||||t ƒndS(Ns     ÕÒ²»µ½³É¾ÍÊý¾ÝsuccessType=%siÿÿÿÿ(R]R^tFeastRedPackSuccessTypeListtPlayerFeastRedPackettGetFeastRedPacketStateRZRTR RhR«R"R tDoAddSuccessProgressR9(RR­tnewCntR RbtcurCntRN((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytUptateSuccessProgresss(    cCs|j}|j}|j}|tjkrPtjƒ}| sI||krPdSn|tjk}|tjk}t    ||ƒsŒt
||ƒrdS|j }    x2|    D]*}
t    ||
ƒ r t
||
ƒ r dSq Wt |ƒdkr|rý|d|kr dSq|tj kr=|d|do3|d|ddks dSqt |ƒt |ƒkrYdS|ro||krodS|st} g} |tjkr tj|} nx]t|ƒD]O\} }| | krâ||| krât} Pqân||| kr­t} Pq­q­W| r dSqntS(Ni(RRR R]RºR»tGetTodayFeastSuccIDListtUnDownCheckSuccessTypeListtContainSuccessTypeListRRR%tlentMultipleSuccessTypeListR9tPartUnDownCheckSuccessTypeInfot    enumerateR(RRtR R­RR´ttodayFeastSuccIDListt isUnDownCheckt    isContainR%t    preSuccIDtisbreaktundowncheckIndexListtitnum((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR«sT                   * 
cCs¼|sF||jtjƒtjtjkr0dS|jtj|ƒn|jƒ}|tjkredStjj|ƒ}x>|j    ƒD]0\}}t
||d|t |dƒt ƒq„WdS(Nii( t GetTickByTypeRtTYPE_Player_Tick_SuccesstTYPE_Player_Tick_Timet SetTickByTypeR:t
PyGameDatatg_delaySuccessDicttpopRªR½R<R9(RR‡tisFinishtplayerIDt successDictt
sucessInfotcnt((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytFinishDelayAddSuccessProgressSs (c    Cs´tjƒrdS|tjkr2tjƒs2dSn|jƒ}|rÏ|tjkrÏ|tj    krritj    |<n|t
|ƒf}|tj    |kr«|tj    ||<n tj    |||tj    ||<dS|rt |ƒt gƒkrtj dt |fƒdS|tj krdStƒj|ƒ}|sHtjd|ƒdSd}g}    g}
g} ttjƒƒ} x»|D]³} | j}| j}t|| |ƒs©qyn|
j|ƒ| j| ƒ| j}||    krè|    j|ƒn||krý|}n|tjkrytj|}t||| ƒqyqyW|     sC|dkrGdSxF|    D]>}t|||ƒ}t|||ƒ}t||||ƒqNWt||
t ƒt!||| ƒdS(Ns1DoAddSuccessProgress type=%s, condition=%s ´íÎó£¡s     ÕÒ²»µ½³É¾ÍÊý¾ÝsuccessType=%si("R t IsCrossServerR]RºR»R¼R:tNeedResetSuccessTypeListRÔRÕRHttypetErrLogR^RZRTRhRR€RR$R«RIR RyRR~R
R"R¬R!R[R9R_(RR­taddCntR t    delayCalcRØt successTupleRbR¹tupdConditionListR¯R°R‡RtRR$t curConditionR…R¿R¸((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR½osh                           c CsY|tjtjgk}tjtjƒƒ}|jƒ}x|D]}|j}|j}t    ||ƒ}    |    dks@t
||ƒrˆq@nt |||j ƒ}
|
|kr@t ||ƒ|jsÏt||ƒnt|||ƒ|rtjdd||gƒnx0|jjƒD]} tj|| |tjƒqWtjd|||fƒq@q@WdS(NitAncientBattlefield_1s&    Íê³É³É¾ÍsuccID=%s, type=%s,time=%s(R]tSuccType_ElderBattlefieldKillt SuccType_ElderBattlefieldConKillR tChangeTimeStrToNumtGetCurrentDataTimeStrtGetNameRR$RRR"R RR+RtNotify_FinishSuccessRt WorldNotifyR-tkeyst EventReporttWriteEvent_MWSuccessRt CME_Log_StartRh( RR­Rbt    isNeedSystcurTimet
playerNameRtRR$R|R¿tmwID((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR_Ís,                    c CsgtdƒD] }i^q }i}tjƒ}x™t|jƒƒD]…}|j|ƒ}|jƒ}|jƒ}|s}qDnt||ƒs’qDnx4|j    ƒD]&\}    }
|j
|    dƒ|
||    <qŸWqDWx-|j    ƒD]\}    }
t j |    |
|ƒqÚWt j |tj|ƒdS(Nii(trangeR7RitxrangetGetSuccessCounttGetSuccessByIndexR:RCRRªRRRtCalcAttrDict_TypetSetCalcAttrListValueRtDef_CalcAttrFunc_Success( Rt_t allAttrListR*RoRÎR¡Rt attrAwardDicttattrIDt    attrValue((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytCalcSuccessAttrûs"   "cCs!t|ƒtj|ƒjƒdS(N(RRtRefreshPlayerAttrState(R((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytRefreshSuccessAttrs
cCs=tjƒ}|jƒg|_|r.|}nWg}tjƒ}xBt|jƒƒD].}|j|ƒ}|j    ƒ}|j
|ƒqSWi}    xæ|D]Þ}t ƒj |ƒ}
|
s¶q’n|
j } |
j} t|| | ƒ} t||ƒ}| r    | dkr    | r    q’nt||ƒrq’n| |    kr@| | gg|    | <q’| | g|    | kr’|    | j
| | gƒq’q’W|    s~dSx–|    jƒD]ˆ\}}xy|D]q\} }tjƒ}|jƒ||_| rÛt| ƒnd|_t|jƒ|_||_|jj
|ƒqžWq‹Wt|jƒ|_tj||ƒdS(Nis[0](tChPyNetSendPackttagMCSuccessInfoListtCleartSuccessInfoListR7RiR÷RøRùR:RIRZRXRR R"RRRªttagMCSuccessInfotSuccTypetstrt    ConditionRÄtLentCntValuetcountt NetPackCommont SendFakePack(Rt
succIdListt
isSendZerotsuccInfoListPackt
syncIdListRoRÎR¡Rt syncTypeDictRNRR RtisfinishtsTypet conditionListtcntValuetsuccInfo((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR[sT 
                     
        cCs3tjƒ}|jƒ||_tj||ƒdS(N(RttagMCSuccessFinishRtSuccIDRR(RRR|tsuccFinishPack((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyRìVs
 
    cCsvg}xi|D]a}tƒj|ƒ}xF|D]>}|j}t||ƒr,t||ƒ r,|j|ƒq,q,Wq W|S(N(RZRTRRRRI(RtsuccessTypeListtsuccListR­RbRtR((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytGetCanGetAwardSuccByType_s      cCspi}xc|D][}t|||ƒ}|s1q nx4|jƒD]&\}}|j|dƒ|||<q>Wq W|S(Ni(t__DoGetSuccTypeIndexAwardRªRR(Rt
succIDListt
isGiveItemt    awardDictRR&titemIDtitemCnt((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt GiveSuccAwardjs "cCs|jtjtjƒdkS(Ni(RRtDef_PDict_CTGGoodsBuyCounttDef_CTGID_SuccessPassport(R((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytGetSuccessPassportStateuscCs>tjƒj|ƒ}|j}|j}t||d|ƒdS(Nt
isPassport(R tGetPlayerManagertGetPlayerByIndexRt
IsPassportR"(tindext
clientDataR‡RRR,((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytOnGetSuccessAwards
        c    Cs.tjd||fƒtƒj|ƒ}|sDtjd|ƒdS|js^tjdƒdSt||ƒ}t||ƒ}|dkr | r tjdƒdS|rt||ƒrÆtjdƒdSt|ƒsãtjdƒdS|j    }|s&tjdƒdSn |rtjd    ƒdS|j
}|rEt j ||ƒsEdSn|r[t ||ƒn t||ƒg}|r×x`|jƒD]O\}    }
tj||    |
dtjtjgƒ} | r|j|    |
gƒqqWn|rôtj||d
ƒ|Sx6|jjƒD]%\} } tj|t| ƒ| ƒqW|jrRtj|ƒj|jƒn|jrht|ƒn|jrt j!||jt j"|ƒn|j#rëxO|j#jƒD];\}}t$j%|||ƒt&j'|||t(j)d ƒq©Wntjd ||jfƒtj||d
d |jd|jƒ|S(Ns#ÁìÈ¡³É¾Í½±ÀøsuccID=%s,isPassport=%ss    ³É¾ÍÊý¾Ý²»´æÔÚ£¡succID=%ss    ¸Ã³É¾ÍûÓÐÅäÖý±Àø£¡is    ¸Ã³É¾ÍδÍê³É£¡s     ¸Ã³É¾ÍͨÐÐÖ¤½±ÀøÒѾ­ÁìÈ¡¹ý£¡s*    Î´¿ªÍ¨³É¾ÍͨÐÐÖ¤£¬ÎÞ·¨ÁìȡͨÐÐÖ¤½±Àø£¡s    ¸Ã³É¾ÍûÓÃͨÐÐÖ¤½±Àø£¡s    ¸Ã³É¾Í½±ÀøÒѾ­ÁìÈ¡¹ý£¡t SuccessAwardis%    OK! awardItemDict=%s moneyDict=%sR)t    moneyInfo(*R RhRZRXR+RRRR+R'R&t
ItemCommontCheckPackEnoughRRRªt ItemControlertGivePlayerItemRtrptItemt rptAnyWhereRItNotifyGiveAwardInfoR(Rt    GiveMoneyRR)tAddExpR*RR,tPlayerFamilyRedPackettCreatRedPacketByIDt State_NoGotR-tPlayerMagicWeapontAddMagicWeaponUpExpRïRðRt CME_Log_End(RRR$R,RNR|RtitemDictt giveItemListR&R'tisPutInt    moneyTypeR    RõtaddExp((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR"‹st                    '                 #%cCsi|rFg}x†|D],}|d}||kr|j|ƒqqWnOtjƒ}|jƒ}|shdS|j|dƒjƒ}t|ddƒ}tjƒ}    |    j    ƒg|    _
xŒ|D]„}
|j t j |
ƒ} |j t j|
ƒ} | r| r| rq»ntjƒ} |
| _| | _| | _|    j
j| ƒq»Wt|    j
ƒ|    _tj||    ƒdS(Nii(RIR7RiRøRùR:R÷Rt!tagMCSuccessFinishAwardRecordListRt
RecordListRRRRttagMCSuccessFinishAwardRecordt RecordIndextRecordtPassportRecordRÄt    RecordCntRR(RR#t
isSyncZerotrecordIndexListRt recordIndexRotsuccCntt    maxSuccidt succFARPackRÎt awardRecordtpassportAwardRecordt
recordInfo((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyRôs8 
 
                  cCsN|tjkr%t|tj|ƒn%|tjkrJt|tj|ƒndS(N(RtDef_FBMapID_BZZDR½R]t SuccType_BZZDtDef_FBMapID_IceLodetSuccType_IceLode(RtmapIDtaddCount((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytAddEnterFBSuccesss
c    CsO|jƒ}tjddiƒ}t|ƒ|kr7dS|t|ƒ}t|ƒdkr]dS|\}}tj|tj|ƒsŸt    j
d||f|ƒdS|j t j ƒ}|td|ƒ@rÜt    jd||ƒdS|td|ƒB}tj|t j |ƒt    jd|||f|ƒt|ƒtj||ddtigƒdS(    Nt SucceeScoreiis2³É¾Í»ý·Ö²»×㣬ÎÞ·¨Áì½±! awardIndex=%s,needScore=%ss%ÒÑÁìÈ¡¹ý¸Ã³É¾Í»ý·Ö½±Àø! awardIndex=%ss>ÁìÈ¡³É¾Í»ý·Ö½±Àø! awardIndex=%s,awardState=%s,updAwardState=%steventt SuccessScore(t GetPlayerIDR7RqR RÄRt    HaveMoneyR]tTYPE_Price_SuccessSocreR tLogRRR`tpowRhRRaR7tGivePlayerItemOrMailR9(    Rt
awardIndexRØR%t    awardInfot    needScoret awardItemListt
awardStatet updAwardState((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytGetSuccessScoreAward!s*  
cCs?tjƒ}|jƒ|jtjƒ|_tj||ƒdS(N(    RttagMCSuccessScoreInfoRRRR`tScoreAwardStateRR(Rt
clientPack((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyRa8s
 
(((FR]RR RRR5RRR7RAR>tPlayerGatherSoulR7RRÔRïRƒR€tmathtChEquipt
PlayerRunetOperate_EquipStonetOperate_EquipWashR»t
PlayerDogzt QuestCommonRjRR
RRRRRRRR!R"R#R2RYRZRcR\RuRwR}RzRˆR©R—RÀR«RÜR½R_RRR9R[RìR!R(R+R2R"RR_RoRa(((smE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt<module>s†                                                       T                            #            +    F     8 ^    .         9                      
i"