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
Ji5\c@sYddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZedƒ\ZZZedƒ\ZZZZedƒ\ZZZZZ dZ!dZ"dZ#dZ$d    Z%d
Z&d Z'd Z(d „Z)d„Z*d„Z+d„Z,d„Z-d„Z.d„Z/d„Z0d„Z1d„Z2d„Z3d„Z4gd„Z5d„Z6d„Z7d„Z8d„Z9d„Z:d„Z;d „Z<d!„Z=d"„Z>d#„Z?d$„Z@d%„ZAd&„ZBdS('iÿÿÿÿNiiit XMZZ_WinCntt XMZZ_TotalExptXMZZ_TotalExpPointt XMZZ_ExtraExptXMZZ_ExtraExpPointtXMZZ_TotalScoretXMZZ_ExtraScoretXMZZ_NeedKillNPCIDcCstjtjƒS(N(tFBCommontGetFBLineStepTimetChConfigtDef_FBMapID_XMZZ(((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyt__GetFightTimeGscCsdS(N((t    curPlayer((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyt OnXMZZLoginIscCstS(N(tTrue(R tmapIDtlineIDttick((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pytOnEnterFBEvent`scCs|S(N((R RtlineIdtipyEnterPosInfoR((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pytOnGetFBEnterPoslscCstjS(N(t IPY_GameWorldt    cmeAccept(taskR((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pytOnChangeMapAskvscCs<tjtjdƒd \}}tj|||dtƒdS(Niit
isResetPet(RtGetFBLineEnterPosInfoR
R t    GameWorldtResetPlayerPosR(R t    startPosXt    startPosY((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyt
__ResetPosyscCs&ttjƒƒ}tj|ƒ}|s®tj|ƒtj|tjdƒtj    |tj
|ƒt j |tj dƒtdgƒ}tjƒj|jƒddd|t|ƒƒ|j|jƒƒ|jƒ}xXtd|jƒƒD]A}|j|ƒ}|jƒdkrè|jdƒ|jƒqèqèWxLttjtjƒD]5}t j!||ƒ}    |    rC|    d}
|
j"ƒqCqCWtj|ƒj#ƒt$j%|tjdtj&ƒn|j'tj
ƒ} t(ƒt)} | || } | dkrøtj*|ƒdS|j+tj,d| dt-ƒt.||ƒdS(NiitXMZZStartFightiè(/tintttimeRtGetHadDelTickettSetHadDelTickettAddEnterFBCountR
R t PlayerControltNomalDictSetPropertytDef_PDict_XMZZLastStartTimetPlayerWeekPartytAddWeekPartyActionCnttDef_WPAct_XMZZtstrRtGetPlayerManagertGameServer_QueryPlayerResulttGetIDtlentSetHPtGetMaxHPtGetSkillManagertranget GetSkillCounttGetSkillByIndext GetRemainTimet SetRemainTimet
Sync_SkillRtbfProcessDeBufftbfDeBufft SkillCommontGetBuffManagerByBuffTypetCleartRefreshAllStatet EventReportt WriteEvent_FBt CME_Log_StarttNomalDictGetPropertyR t Def_TotalTimet PlayerLeaveFBt Sync_TimeTickt tttTowerTakeRtDoFBHelp(R Rtcurtimet hadDelTickettmsgInfot skillManagertitcurSkilltbuffTypet    buffTuplet    buffStatet lastStartTimet    fightTimet
remainTime((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyt    DoEnterFBƒs@ .  
    cCsHtjƒjƒ}|tkr+t|ƒn|tkrDt|ƒndS(N(Rt    GetGameFBt    GetFBSteptFB_Step_PreparetResetPostFB_Step_Fightingt StartXMZZPK(RtfbStep((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyt    OnProcess¯s     cCsS|tjƒjƒdkr dStjt|ƒtjƒ}|rOt|ƒndS(Niièiè(RRXt GetFBStepTickRt    SetFBStepR\tGetCurSingleFBPlayerR!(RR ((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyR[Ás  c Csøtjƒ}|sdSttjƒƒ}|jtjƒ}tƒt}|||}|dkredStj    t
|ƒtj ƒ}|s‹dS|d}t |ƒ}t |ƒ}    | s»|     r¿dSt jd|jƒƒ|    |k}
t||
d|    ƒdS(Nis    ÏÉħ֮Õùʱ¼äµ½£¬·¢ËͽáËãi(RRbR#R$RER
R*R RFRat FB_Step_Overt GetMapNPCListt
__GetHPPerRtDebugLogR1t__SendPKResult( RR RKRTRURVtnpcListtcurNPCtnpcHPPertHPPertisWin((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyt __ChcekFBOverÊs,    
   cCs.tj|ƒ}|r*tj|ƒd|SdS(Nidi(tGameObjR4tGetHP(tgameObjtmaxHP((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyReâsc
Cs'd}tjƒjƒ}|tjkrNtjj|ƒ}|jddƒ}n|s·tjƒjt    ƒ}tj
ƒj |ƒ}|r·|j ƒ}|j tjƒjtjƒƒ}q·nt||||gƒ}    tjƒj|jƒddd|    t|    ƒƒtjd||||f|jƒƒdS(NttNameit
XMZZPKOvers6__SendPKResult vsName=%s, isWin=%s, isEnd=%s, HPPer=%s(Rt GetGameWorldt    GetLineIDt
PyGameDatatg_xmzzVSPlayerDatatpoptgetRXtGetGameFBDictByKeyRt GetGameDatatFindNPCDataByIDtGetNametdecodet ShareDefinetDef_Game_Character_EncodingtencodetGetCharacterEncodingR.R/R0R1R2Rf(
R RltisEndRktvsNameRtvsPlayerPropDatatnpcIDtnpcDataRM((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyRgæs '.&cCsötjt|ƒtjtjtƒtdƒ|s8dS|\}}tj    ƒj
ƒ}|t j |<t jddƒ}|t|ƒkrœt jddƒ}n
||}tjd|||f|jƒƒtjd|gƒtjƒjt|ƒdS(Nièt    XMZZRobotiis#¶ÔÊÖÐÅÏ¢: pkPlayerID=%s,npcID=%s,%sie(RRaRZtSync_Player_TimeTickRt tttWaitStartR tDef_PrepareTimeRRuRvRwRxt IpyGameDataPYtGetFuncEvalCfgR2t
GetFuncCfgRfR1tNPCCustomRefresht SetNPCRefreshRXt SetGameFBDictR(R Rt vsPlayerInfot
pkPlayerIDtpkPlayerPropDataRt robotIDListR‡((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyt PrepareXMZZPK÷s  
#c
CsÔ|jƒ}tjƒjƒ}|tjkr1iStj|}|sHiStjddƒ}tjddƒ}||krˆ||krˆiS|d}|d}i}    ||kr·|}    n|rÐt    |||ƒn|    S(NR‰iitJobtLV(
tGetNPCIDRRuRvRwRxRRŽRt__DoGiveVSPlayerNPCSkill(
RitisRebornR‡RR†R–t playerNPCIDtjobtnpcLVt npcAttrDict((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pytGetFBNPCStrengthenAttrs&  
 
     c
CsØ|jƒ}tjddƒ}||kr.dS||}g}x[|jƒD]M\}}||kriqKnt|tƒrˆ|j|ƒqK|t|ƒ7}qKWtj    d|||fƒx|D]}    |j
|    ƒq½WdS(NtXMZZRobotSkillis¸øNPC¼¼ÄÜ: job=%s,npcLV=%s, %s( R5RRŽtitemst
isinstanceR#tappendtlistRRftLearnSkillByID(
RiRžRŸRNt jobSkillDictt skillInfoDictt skillIDListt    skillInfotneedLVtskillID((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyR›4s   
  cCs9t|ƒ|tjƒjƒtƒtdkr5dSdS(Niè(RmRRXR`R RŒ(R((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyR]Hs
'c    Cs¾tjƒjƒtkrdS|jƒtjƒjtƒkrAdSttjƒƒ}|j    t
j ƒ}t ƒt }|||}|dkr•t}nt}t|ƒ}t|d||ƒdS(Ni
i(RRXRYR\RšR{RR#R$RER
R*R RFRtFalseReRg(    R RiRRKRTRURVR„Rk((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pytDoFB_Player_KillNPCUs!       cCs#t|ƒ}t|dd|ƒdS(Nii(ReRg(R Rk((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyt DoPlayerDeadqs cCs&tjƒ}|jƒtkr"tStS(N(RRXRYR\R®R(tattackertdefendertgameFB((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pytCheckCanAttackTagObjInFB}s cCsþ|s$tjd||jƒƒdStjddiƒ}t|ƒ|kritjd||jƒƒdS|t|ƒ}t|ƒ}tj|t    j
|ƒ}||kr½t j |dƒdSt|gƒ}tj ƒj|jƒddd|t|ƒƒdS(    sA
    @todo: ÁìÈ¡ÏÉħ֮ÕùʤÀû³¡Êý½±Àø
    @param prizeEx:³¡Êý
    s$ÁìÈ¡ÏÉħ֮ÕùʤÀû³¡Êý½±Àø: prizeEx=%sNt    XMZZAwardis&²»ÄÜÁìÏÉħ֮ÕùʤÀû³¡Êý½±Àø! prizeEx=%stGeRen_chenxin_998371itGetXMZZWinPrize(RRft GetPlayerIDRRŽR.R2t
ItemCommontGetItemPackSpaceRtrptItemR(t
NotifyCodeR/R0R1(R tprizeExtwinCntAwardDictt prizeItemListt    needSpacet
emptySpacetmsg((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyR·Ÿs   .c
Cst|ƒ}t|ƒdkr"dS|d}tjddiƒ}t|ƒ|krqtjd||jƒƒdS|t|ƒ}xk|D]c\}}}tj    ||||t
j gt dt ƒsˆ|jƒ}    tj d||f|    ƒtSqˆWi|d6|d6}
tj|d    |
ƒdS(
NiiRµs&²»ÄÜÁìÏÉħ֮ÕùʤÀû³¡Êý½±Àø! prizeEx=%st showSysInfos4OnGetXMZZPrizeResult(), give item itemid:%s,count:%sR½R¿tXMZZWin(tevalR2RRŽR.RRfR¸t ItemControlertGivePlayerItemRR»RtErrLogR®tDataRecordPacktDR_FuncGiveItem( R t    funResultt
resultListR½R¾R¿titemIDtitemCnttisBindtplayerIDt addDataDict((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pytOnGetXMZZPrizeResult¸s$ 
 cCs\| st|ƒdkrdS|\}}|r?t||ƒn|rXt|||ƒndS(s3ÏÉħ֮ÕùPKÐÅÏ¢Âß¼­´¦Àí
    @param resultList: 
    iN(R2tDoXMZZPKOverLogicR—(R RÌRtoverInfoR“((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pytDoXMZZPKInfoLogicÒs c#CsÇt|ƒdkrdS|\}}}}}tj|ƒ}|rmtjddƒ}ttjd|ƒƒ}    n*tjddƒ}
ttjd|
ƒƒ}    tj|ƒj|    ƒ|j    ƒ} t
j ƒ} | j | t ƒ} | j | tƒ}|tj| }||    }|tj}|tj}| j| t |ƒ| j| t|ƒt|    t|dƒ|ƒ}| j | tƒ}| j | tƒ}|tj|}||}|tj}|tj}| j| t|ƒ| j| t|ƒ| j | tƒ}||}| j| t|ƒt|t|dƒ|ƒ}| j | tƒ}||}| j| t|ƒtj|tj|ƒ|r¼tj|tjdƒ| jt| jtƒdƒt |dƒn|sÉ| rÃ|j!tj"ƒ}tt#j#ƒƒ} | |d    }!i|t$j%6|t$j&6|t$j'6|t$j(6| t$j)6|t$j*6|!t$j+6|d
6}"t$j,|tj-d||"ƒtj.|tj"dƒ|j/t0j1dt2ƒt3d    t4ƒt$j5t6t
j7ƒj8ƒƒndS( Nit XMZZPKAwardit winXMZZAddExptfailXMZZAddExpidiiièt    conWinCnt(9R2R(tGetPlayerReExpRRRÅtFormulaControltGetCompileFormulatAddExpR1RRXtGetPlayerGameFBDictByKeyRRR
tDef_PerPointValuetSetPlayerGameFBDictR#tfloatRRRRt PlayerSuccesstDoAddSuccessProgressR€tSuccType_XMZZGetScoretSuccType_XMZZWinCntR’RR{RJRER*R$Rt
Over_scoretOver_extrScoret Over_extraExptOver_extraExpPointtOver_expt Over_expPointt Over_costTimet NotifyFBOverR R)RHRt tttLeaveMapR t Def_LeaveTimeRRaRcRutGetTick(#R RÌRlR„taddScoretaddPerRÙtreExptwinAddExpFormulataddExptfailAddExpFormulaRÐR³texptexpPointttotalExpt updTotalExptupdExpt updExpPointt addExtraExptextraExpt extraExpPointt extraTotalExptupdExtraTotalExpt updExtraExptupdExtraExpPointt
tatalScoretupdScoret addExtraScoret
extraScoret updExtraScoreRTtcurTimetcostTimetoverDict((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyRÓåsl  
 
 
 
 
$cCs0tjƒjtƒ}tj|i|d6ƒdS(NtwinCnt(RRXR{RRt Notify_FBHelp(R RR ((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyRJ*sc    Csùtjƒj|ƒ}|j}|j}tjdƒ}t|ƒ|kr]tjd|ƒdSt    j
t j }tj ƒj|ƒd
krtjd|ƒdS|t|ƒ}ttjƒƒdd!}    |t|t}
} |
|    koò| kns tjd|ƒdS|t} | jƒ} | jƒtj ƒjt    jƒ}| d}x*| D]"}|t|ƒkrU|}PqUqUW| |}tj|tj|ƒs²tjd|ƒdSt|||gƒ}tjƒj|jƒddd    |t|ƒƒdS( Nt
XMZZBetCfgs.    ÏÉħ֮ÕùͶע XMZZBetTime ÅäÖÃÀïûÓÐË÷Òý %sis'    ÏÉħ֮ÕùͶע ²»ÔÚͶעʱ¼äÄÚ Ë÷Òý %si iiÿÿÿÿs    ÏÉħ֮ÕùͶע Ç®²»¹» Ë÷Òý %stXMZZBet(i(RR/tGetPlayerByIndextBetIndext    BetResultRRŽR.RfR€tDef_Notify_WorldKey_FBFuncStateR
R RutGetGameWorldDictByKeytGetCurrentDataTimeStrt Bet_StartTimet Bet_EndTimet Bet_NeedMoneytkeystsortt"Def_Notify_WorldKey_WorldAverageLvR#R(t    HaveMoneyRtTYPE_Price_Silver_MoneyR0R1R2(tindext
clientDataRR tbetIndext    betResultt betTimeDicttkeytbetInfoR    t    startTimetendTimet needMoneyDicttkeyListtworldLvtfindLvtlvt    needMoneyRM((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyt    OnXMZZBet;sB        
 
 
 
.cCstj|tj|ƒdS(N(R(tPayMoneyRR(R R,((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyt DoXMZZBetCostis(CRR(RRR
RR€RÆRÉR¹RÛRR+RâRwRBR>RnR$tmathR6RFRŒRïRRtBet_ResultTimeRt FB_Step_OpenRZR\Rct FB_Step_CloseRRRRRRRRR RRRRR!RWR_R[RmReRgR—R¡R›R]R¯R°R´R·RÒRÕRÓRJR-R/(((sp.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_XMZZ.pyt<module>sp                                         
        
    ,                                                    "                E        .