cehua_ZWJ
2019-01-30 6afaa4408f4e09e3e95dbd92f0d1cd5a1fb2942b
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
Œá6\c@sµddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZdd„Zd„Zd„Zed„Zd„Z ed„Z!d    „Z"d
„Z#d d&d „ƒYZ$d d'd„ƒYZ%e%ƒZ&d„Z'd„Z(d„Z)d„Z*d„Z+d„Z,d„Z-d„Z.gd„Z/d„Z0ed„Z1ged„Z2d„Z3d„Z4d„Z5ge6d„Z7d„Z8d „Z9ed!„Z:d"„Z;ed#„Z<ge6d$„Z=d%„Z>dS((iÿÿÿÿNicCs|j||tjƒS(N(tNomalDictGetPropertytChConfigtDef_PDictType_Success(t    curPlayertkeyt defaultValue((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt GetPDictValue6scCstj|||tjƒdS(N(t PlayerControltNomalDictSetPropertyRR(RRtvalue((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt SetPDictValue=scCstj|tj|ƒS(N(t    GameWorldtGetDictValueByBitRtDef_PDict_Success_FinishTime(RtsuccID((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytGetSuccIsFinishAscCstj|tj||ƒS(N(R tSetDictValueByBitRR (RRtfinish((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt SetSuccFinishEscCstj|tj|ƒS(N(R R RtDef_PDict_Success_AwardRecord(RR((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt GetSuccHasGotIscCs‚t||ƒ|krdStj|tj||ƒ|r~t||dƒt||gtƒtj    ||ƒt
j ||ƒndS(Ni( RR RRRRtSync_SuccTypeIndexAwardRecordtTruetPlayerMagicWeapontActiveMagicWeapont
EventShelltEventRespons_SuccessFinish(RRthasGot((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt SetSuccHasGotMscCs'tj||f}t|||ƒdS(N(RtDef_PDict_Success_CntValueR
(RtsuccTypet    conditionR    R((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytSetSuccFinishValue]scCs tj||f}t||ƒS(N(RRR(RRRR((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytGetSuccFinishValuecst SuccessDatacBseZd„ZRS(cCspd|_d|_d|_g|_g|_i|_i|_d|_i|_t    |_
d|_ i|_ dS(Ni( RRtneedCntt preSuccIDListRt awardItemDictt    moneyDicttexptattrDictRthasAwardt redPacketIDtmagicWeaponExp(tself((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt__init__ms                                                (t__name__t
__module__R-(((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR"kstSuccessDataMngcBs,eZd„Zd„Zd„Zd„ZRS(cCsi|_i|_dS(N(tsuccTypeConditionDicttsuccessDataDict(R,((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR-ƒs        c     CsÝ||jkrdStjdi|d6ttƒ}|s<dSi}i}x|D]y}tƒ}|jƒ|_||_|j    ƒ|_
t |j ƒƒ|_ t |jƒƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ}|jƒ}|r.|r.||j|<nt|jpd|jpd|jpd|jpd|jpd|jƒ|_|||j<t|jƒ|kr«|jg|t|jƒ<qO|t|jƒj |jƒqOW||j|<dS(NtSuccesstType(!R2t IpyGameDataPYtGetIpyGameDataByConditionRtFalseR"tGetIDRRt
GetNeedCntR#tlistt GetPreSuccessR$t GetConditionRt GetAwardItemR%tGetMoneyR&tGetExpR't GetAwardAttrR(tGetRedPacketIDR*tGetMagicWeaponIDtGetMagicWeaponExpR+tboolR)ttupletappend(    R,RtsuccessDataListtsuccessDataObjDictt conditionDicttsuccessIpyDatatsuccDatat magicWeaponIDR+((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt__LoadSuccessData‹s<            ? ! cCs8||jkr|j|ƒn|jj|iƒjƒS(N(R2t _SuccessDataMng__LoadSuccessDatatgettvalues(R,R((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytGetSuccDataByType³scCsctjd|ƒ}|sdS|jƒ}||jkrG|j|ƒn|jj|iƒj|ƒS(NR3(R5tGetIpyGameDataNotLogtGetTypeR2RNRO(R,Rt succIpyDataR((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytGetSuccessDataÄs (R.R/R-RNRQRU(((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR0~s        (    cCstS(N(t g_succDataMng(((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytGetSuccDataMngÖscCsdt|ƒt|ƒt|ƒx?tjD]4}tƒj|ƒ}|sLq(nt|||ƒq(WdS(N(tSync_SuccessInfoRt__CheckOldPlayerSuccesst ShareDefinetSuccessTypeListRWRQt__DoCheckSuccessFinish(RRt succInfoList((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt SuccOnLoginÜs
 
 
c*Cst
tjƒjtjƒ}tjtjtjtjtj    tj
tj tj tj tjtjtjtjtjtjtjtjtjtjtjtjtjtjtjtjtjtjtj tj!tj"tj#g}t$|t%j&ƒ}||krtj'd|j(ƒƒdStj'd|ƒt)j*ƒ}x    |D]þ}|tjkrìxæt+|j,ƒƒD]‰}|j-|ƒ}|j(ƒ}t.j/||ƒ}    |    s›q\n|j0t%j1|ƒ}
x1t+|
dƒD]} t2||d|| gƒqÂWq\Wq4|tjkr)|j0t%j3ƒ} t2|tjd| gƒq4|tjkr±t4||ƒ|j5|j6ƒdƒj7ƒ} xËt+d| dƒD]2}|j0t%j8|ƒ}t9||||gƒqxWq4|tjkrjt4||ƒxbt+|j:ƒƒD]ƒ}|j;|ƒ}|j<ƒ}|j0t%j=|dt%j>ƒ} | s,qànx4t+d| dƒD]}t2||d||gƒq@WqàWq4|tj?krt4||ƒx©t%j@jAƒD]f\}}xW|D]O}tBjC|||ƒ}x1t+d|dƒD]}t2||d|gƒqØWq©Wq–Wq4|tj    tj
tj tjgkr4tD|ƒq4|tj tj gkr\tEjF|ƒq4|tj!tj"gkr„tGjH|ƒq4|tjkr¹t4||ƒt9|||jIƒƒq4|tjkrŠt4||ƒ|jJƒjKtjLƒ}xBtM|jNƒƒD]ƒ}|jO|ƒ}|jPƒr'qn|jQtjRƒ}|jQtjSƒ}x5t+|dƒD]#} t2||d|| dgƒq\WqWq4|tjtjtjgkr¸tTjU|ƒq4|tjkrò|j0t%jVƒ}t2||d|gƒq4|tjtjtjgkr tWjX|ƒq4|tjkrÃt4||ƒ|jYƒ}xçtMd|jZƒƒD]^}|j[|ƒ}|j\ƒt%j]t%j^gkr^|j_ƒ}t9||||j`ƒgƒq^q^Wq4|tjkrâtajb|ƒq4|tjkr_t4||ƒt)jcddiƒ}|jdƒ} x| D]2}!|j0t%je|!ƒ}"t9|||"|!gƒq&Wq4|tjkr t4||ƒ|j0t%jfƒ}#t9|||#ƒq4|tjkrÎt2||d|jgƒgƒq4|tjkrVt4||ƒxEt+|jhƒƒD]R}|ji|ƒ}tjj|t%jk|j(ƒƒrýt2||d|jlƒgƒqýqýWq4|tjkrËxÊt+|jmƒƒD]L}|jn|ƒ}tjj|t%jo|ƒrxt2||d|jpƒgƒqxqxWq4|tjkr    t4||ƒt2||tqjr|ƒƒq4|tj krp    tsƒjt|ƒ}$x |$D]>}%|%jud}&tvjw||&ƒr+    t2||d|&gƒq+    q+    Wq4|tj#kr4t4||ƒx£t+|jxƒƒD]Œ}|jy|ƒ}|j(ƒ}'|j0t%jz|'ƒ}(|j{ƒtj|krŸ    tj}ƒj~|'ƒ})|)s
qŸ    nt2|||(|)jƒgƒqŸ    qŸ    Wq4q4Wt€j|ƒt‚|t%j&|ƒtj'd||j(ƒƒdS(sK ³É¾Í°æ±¾¸üÐÂÀÏÍæ¼Ò¼ì²é  Ã¿´ÎÆô¶¯·þÎñºó Íæ¼ÒµÚÒ»´ÎÉÏÏß¼ì²é³É¾ÍÍê³ÉÇé¿ö
    s*    ±¾´Î¿ªÆô·þÎñÆ÷´¦Àí¹ý³É¾Í¼ì²é,²»ÔÙ´¦Àí Ns(¸üÐÂÀÏÍæ¼ÒÉÏÏß¼ì²é³É¾ÍcurCheckVersion=%siitFamilyTechNeedLVs)¸üÐÂÀÏÍæ¼ÒÉÏÏß¼ì²é³É¾ÍupdCheckVersions=%s(ƒR t GetGameWorldtGetGameWorldDictByKeyRZt%Def_Notify_WorldKey_InitGameWorldTimetSuccType_GetMagicWeapontSuccType_PassRuneTowertSuccType_GodWeapontSuccType_HorseAllLVtSuccType_EquipColorItemtSuccType_EquipArmortSuccType_EquipWeapontSuccType_InlayRunetSuccType_RuneLvUptSuccType_RealmlvUptSuccType_PetClassLVtSuccType_InlayStone1tSuccType_InlayStone2tSuccType_XJMJGetExptSuccType_EquipWashLV1tSuccType_EquipWashLV2tSuccType_EquipWashLV3tSuccType_EquipWingtSuccType_MWSkillUptSuccType_EquipSuittSuccType_FamilyTechLVtSuccType_AlchemyLVtSuccType_VIPLVtSuccType_StoneTotalLVt SuccType_XBXZtSuccType_DogzBattletSuccType_DogzEquipPlustSuccType_MainTaskNodetSuccType_InlayGatherSoultSuccType_GatherSoulLvUptSuccType_UseStoveBylvRRtDef_PDict_Success_CheckVersiontDebugLogR8R5tIPY_DatatxrangetGetTreasureCounttGetTreasureByIndexRtGetIsActiveMagicWeaponRtDef_PDict_MagicWeaponLVtDoAddSuccessProgresst!Def_Player_Dict_TrialTower_PassLVtResetSuccessByTypetGetGodWeaponByIndextGetGodWeaponCountRStDef_PDict_GodWeaponLVtUptateSuccessProgresst GetHorseCounttGetHorseByIndext
GetHorseIDtDef_PDict_Horser_LVtDef_PDictType_HorsetSuccType_EquipPlusLVtPack_EquipPart_CanPlusStartitemstChEquiptGetEquipPartStarLVtDoEquipSuccessLogict
PlayerRunetDoRuneSuccessLogictPlayerGatherSoultDoGatherSoulSuccessLogictGetOfficialRanktGetItemManagertGetPacktrptPettrangetGetCounttGetAttIsEmptyt GetUserAttrtDef_IudetPet_NPCIDtDef_IudetPet_ClassLVtOperate_EquipStonetDoStoneSuccesst!Def_PDict_BZZD_TotalFightExpPointtOperate_EquipWashtEquipWashSuccesstGetSkillManagert GetSkillCounttGetSkillByIndext GetFuncTypetDef_SkillFuncType_FbSkilltDef_SkillFuncType_FbSPSkillt
GetSkillLVtGetSkillTypeIDtOperate_EquipSuitComposetDoSuiteSuccesstGetFuncEvalCfgtkeystDef_Player_Dict_FamilyTechLVtDef_PDict_AlchemyLVtGetVIPLvt GetXBXZCounttGetXBXZByIndexR tDef_PDict_XBXZAwardRecordtGetMWIDt GetDogzCounttGetDogzByIndextDef_PDict_DogzFightStatet    GetDogzIDt
PlayerDogztGetFightDogzTotalPlusLvRWRQRt QuestCommontGetHadFinishMainMissiontGetAttrFruitCounttGetAttrFruitByIndextDef_PDict_AttrFruitEatCntt    GetFuncIDtDef_AttrFruitFunc_Stovet GetGameDatatGetItemByTypeIDtGetLVtDataRecordPacktDR_CheckOldPlayerSuccessR
(*RtinitGameWorldTimetNeedCheckSuccTypeListtcurCheckVersiont
ipyDataMgrRtittreasureIpyDataRLtisActivetcurMWLVtlvtpasslvtmaxTypetweaponLVtipyDatatindextrlvtpTypet    indexListtequipPartStarLVtpluslvt petDataPackt petDataIndextpetItemtpetNPCIDtclassLVtexpPointRecordt skillManagertcurSkillt
curSkillLVttechNeedLVDictt
techIDListttechIDttechLVt    alchemyLVR]RKt    missionIDt fruitItemIDt    hasUseCnttitemData((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyRYñ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(R5RºRWRQRRR!R RR7RRFR RƒRRRX(Rt    resetListtweekResetSuccTypeListRR]t succDataObjRR((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytOnWeek¥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 R`RaRZtDef_Notify_WorldKey_ServerDayRƒtContinueSuccessTypeListRWRQRRRRt__DoCheckResetContinueR RFRXR(    RRût    serverDayRR]RýRRt
finishTime((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt    SuccOnDay¾s(          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    timedeltaRƒR
R(RRRt
lastDayKeytlastDayttick((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyRás   cCs†tƒj|ƒ}|sdSxc|D][}|j}|j}t||ƒ}|dks#t||ƒrkq#nt|||dƒq#WdS(Ni(RWRQRRRRR (RRR]RýRRR((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyRŒ÷s         cCs´t|tjƒt|tjƒt|tjƒtj}|jƒj|ƒ}x_t    |j
ƒƒD]K}|tj kr|qan|j |ƒ}|j ƒrqan|jtjƒ}|sÄ|jƒ}n|jƒ}tj|ƒ}|tjtjtjgkrt|tjd||gƒn|tjkrMt|tjd|||gƒqa|tjkr~t|tjd|||gƒqa|tjkrat|tjd||gƒqaqaWdS(Ni(RŒRZRgRhRit IPY_GameWorldtrptEquipR¡R¢R…R¥t RoleEquipTypeR¦R§R¨tDef_IudetItemColort GetItemColortGetItemQualityt
ItemCommontGetItemClassLVtretWingtretGuardtretHorseRŠRtBaseEquipPlace_WeapontBaseEquipPlace_ArmorRt(RtpackTypet playerEquipt
equipIndextcurEquipt    itemColort itemQualityRì((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR›s2      ""#cCs±|tjkrdStƒj|ƒ}|s/dSd}x<|D]4}t|||ƒsZq<nt|||jƒ}Pq<W|dkr„dS||kr­t|||||tƒndS(Niÿÿÿÿ(    RZR[RWRQt__CheckCanAddSuccessR!RRŠR7(Rt successTypetnewCntRR]tcurCntRK((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR/s    c Cs‘|j}|j}|j}|tjk}|tjk}t||ƒsWt||ƒr[dS|j}x2|D]*}    t||    ƒ rkt||    ƒ rkdSqkWt    |ƒdkr|rÈ|d|krŠdSq|tj
kr|d|doþ|d|ddksŠdSqt    |ƒt    |ƒkr$dS|r:||kr:dS|st }
x4t |ƒD]&\} } | || krSt }
PqSqSW|
rŠdSqnt S(Ni(RRRRZtUnDownCheckSuccessTypeListtContainSuccessTypeListRRR$tlentMultipleSuccessTypeListR7t    enumerateR( RRýRR#Rtcondt isUnDownCheckt    isContainR$t    preSuccIDtisbreakRÙtnum((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR"Bs>                  *
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 SetTickByTypeR8t
PyGameDatatg_delaySuccessDicttpopR˜RŠR:R7(RRtisFinishtplayerIDt successDictt
sucessInfotcnt((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytFinishDelayAddSuccessProgressns (c    Cs‚|jƒ}|r|tjkr|tjkr@itj|<n|t|ƒf}|tj|kry|tj||<n tj|||tj||<dS|rÖt|ƒtgƒkrÖtjdt|fƒdS|tj    krédSt
ƒj |ƒ}|stj d|ƒdSd}g}    g}
g} t tjƒƒ} x»|D]³} | j}| j}t|| |ƒswqGn|
j|ƒ| j| ƒ| j}||    kr¶|    j|ƒn||krË|}n|tjkrGtj|}t||| ƒqGqGW|     s|dkrdSxF|    D]>}t|||ƒ}t|||ƒ}t||||ƒqWt||
tƒt||| ƒdS(Ns1DoAddSuccessProgress type=%s, condition=%s ´íÎó£¡s     ÕÒ²»µ½³É¾ÍÊý¾ÝsuccessType=%si(R8RZtNeedResetSuccessTypeListR5R6REttypeR tErrLogR[RWRQRƒRRRR#R"RFRRRRR
R!tminR RXR7R\(RR#taddCntRt    delayCalcR9t successTupleR]tmaxCnttupdConditionListt    updIDListtupdsuccDataListRRýRR#t curConditionR R%tupdCnt((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyRŠŠs^                         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(RZtSuccType_ElderBattlefieldKillt SuccType_ElderBattlefieldConKillR tChangeTimeStrToNumtGetCurrentDataTimeStrtGetNameRR#RRR!RRR)RtNotify_FinishSuccessRt WorldNotifyR+R»t EventReporttWriteEvent_MWSuccessRt CME_Log_StartRƒ( RR#R]t    isNeedSystcurTimet
playerNameRýRR#RR%tmwID((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR\ás,                    c Cs(gtdƒD] }i^q }i}tjƒ}x™t|jƒƒD]…}|j|ƒ}|jƒ}|jƒ}|s}qDnt||ƒs’qDnx4|j    ƒD]&\}    }
|j
|    dƒ|
||    <qŸWqDWt j d|ƒx-|j    ƒD]\}    }
t j|    |
|ƒqëWt j|tj|ƒdS(Niis    ³É¾ÍÔö¼ÓÊôÐÔ attrDict=%s(R¤R5R„R…tGetSuccessCounttGetSuccessByIndexR8R@RR˜ROR RƒRtCalcAttrDict_TypetSetCalcAttrListValueRtDef_CalcAttrFunc_Success( Rt_t allAttrListR(RØRÙRáRt attrAwardDicttattrIDt    attrValue((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytCalcSuccessAttrs$   "cCs!t|ƒtj|ƒjƒdS(N(RdRtRefreshPlayerAttrState(R((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytRefreshSuccessAttr&s
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](tChPyNetSendPackttagMCSuccessInfoListtCleartSuccessInfoListR5R„R…RZR[R8RFRWRURRR!RRR˜ttagMCSuccessInfotSuccTypetstrt    ConditionR(tLentCntValuetcountt NetPackCommont SendFakePack(Rt
succIdListt
isSendZerotsuccInfoListPackt
syncIdListRØRÙRáRt syncTypeDictRKRRRptisfinishtsTypet conditionListtcntValuetsuccInfo((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyRX1sT 
                     
        cCs3tjƒ}|jƒ||_tj||ƒdS(N(RgttagMCSuccessFinishRitSuccIDRrRs(RRRtsuccFinishPack((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyRQjs
 
    cCsvg}xi|D]a}tƒj|ƒ}xF|D]>}|j}t||ƒr,t||ƒ r,|j|ƒq,q,Wq W|S(N(RWRQRRRRF(RtsuccessTypeListtsuccListR#R]RýR((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytGetCanGetAwardSuccByTypess      cCspi}xc|D][}t|||ƒ}|s1q nx4|jƒD]&\}}|j|dƒ|||<q>Wq W|S(Ni(t__DoGetSuccTypeIndexAwardR˜RO(Rt
succIDListt
isGiveItemt    awardDictRR%titemIDtitemCnt((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt GiveSuccAward~s "cCs/tjƒj|ƒ}|j}t||ƒdS(N(R tGetPlayerManagertGetPlayerByIndexRR„(Rât
clientDataRRR((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytOnGetSuccessAward“s     cCsctjd|ƒtƒj|ƒ}|s>tjd|ƒdSt||ƒ}|dkrjtjdƒdSt||ƒrŠtjdƒdS|js¤tjdƒdS|j}|r÷tj    |t
j ƒ}t |ƒ}||kr÷t j|dƒdSnt||ƒ|rTxG|jƒD]6\}}    tj|||    dt
j t
jgtƒ}
qWnx0|jjƒD]\} } t j|| | ƒqdW|jr¬t j |ƒj|jƒn|jrÂt|ƒn|jrêtj||jtj|ƒn|jrExO|jjƒD];\} }t j!|| |ƒt"j#|| |t$j%dƒqWntjd    ||jfƒ|S(
NsÁìÈ¡³É¾Í½±ÀøsuccID=%ss    ³É¾ÍÊý¾Ý²»´æÔÚ£¡succID=%sis    ¸Ã³É¾ÍδÍê³É£¡s    ¸Ã³É¾Í½±ÀøÒѾ­ÁìÈ¡¹ý£¡s    ¸Ã³É¾ÍûÓÐÅäÖý±Àø£¡tGeRen_chenxin_998371is%    OK! awardItemDict=%s moneyDict=%s(&R RƒRWRURRR)R%RtGetItemPackSpaceRtrptItemR(Rt
NotifyCodeRR˜t ItemControlertGivePlayerItemt rptAnyWhereRR&t    GiveMoneyR'tAddExpR(RfR*tPlayerFamilyRedPackettCreatRedPacketByIDt State_NoGotR+RtAddMagicWeaponUpExpRSRTRt CME_Log_End(RRR†RKRtitemDictt    packSpacet    needSpaceRˆR‰tisPutInt    moneyTypeR    RYtaddExp((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyR„œsR                                #c Cs.|r1g}xq|D]}|j|dƒqWnOtjƒ}|jƒ}|sSdS|j|dƒjƒ}t|ddƒ}tjƒ}|j    ƒg|_
xf|D]^}    |j t j |    ƒ}
| rÖ|
rÖq¦ntjƒ} |    | _|
| _|j
j| ƒq¦Wt|j
ƒ|_tj||ƒdS(Nii(RFR5R„RZR[R8R¤Rgt!tagMCSuccessFinishAwardRecordListRit
RecordListRRRttagMCSuccessFinishAwardRecordt RecordIndextRecordR(t    RecordCntRrRs( RR…t
isSyncZerotrecordIndexListRRØtsuccCntt    maxSuccidt succFARPackRÙt awardRecordt
recordInfo((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyRís0    
              cCsN|tjkr%t|tj|ƒn%|tjkrJt|tj|ƒndS(N(RtDef_FBMapID_BZZDRŠRZt SuccType_BZZDtDef_FBMapID_IceLodetSuccType_IceLode(RtmapIDtaddCount((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pytAddEnterFBSuccess s
(((?RZRR RgRrRRRR“RR˜RžR5RR5RSR
RtmathR™RœR«R®R¸RÇRÉRÓRR
RRRRRR R!R"R0RVRWR^RYRþRRRŒR›RR"R=RŠR\RdRfR7RXRQRƒRŠRŽR„RR¶(((s].\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerSuccess.pyt<module>sx                                                  R                ´        #            '     , W    .         9                      Q