cehua_TRX
2018-11-24 c7d5827fb1861bff64af2128a7033f18c58a3020
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
!VÉ[c@s)dZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZedƒ\ZZZZdZdZdZedƒ\ZZZZZd„Zd    „Z d
„Z!d „Z"d „Z#d „Z$d„Z%d„Z&d„Z'd„Z(d„Z)d„Z*d„Z+e,d„Z-e,d„Z.d„Z/d„Z0d„Z1d„Z2d„Z3d„Z4id„Z5d„Z6d„Z7d „Z8d!„Z9d"„Z:d#„Z;d$„Z<dS(%sVersion = 2017-10-10 14:30iÿÿÿÿNit DuJieFB_StartDuJieFB_RealmLVtDuJieFB_LeaderPlayerIDicCstjƒ}tjtj|ƒS(N(tFBCommontGetFBPropertyMarktGetFBLineStepTimetChConfigtDef_FBMapID_DuJie(tlineID((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pytGetRealmFBTimeCfg;s cCsItjƒjtƒ}tj|ƒ}|s?tjd|ƒdS|jƒS(NsûÓиþ³½çµÈ¼¶Êý¾Ý! Lv=%s(t    GameWorldt    GetGameFBtGetGameFBDictByKeyRtPlayerPrestigeSystGetRealmIpyDatatErrLogt    GetBossID(trealmLVt realmIpyData((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pytGetDuJieBossID?s cCsdS(N((ttick((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pytDoFBInitKscCs@tjƒ}|jtdƒ|jtdƒ|jtdƒdS(Ni(R
R t SetGameFBDictRRR(RtgameFB((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pytOnOpenFBSs
 cCstjƒdS(N(RtDoLogic_FBKickAllPlayer(R((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyt    OnCloseFB_s
cCsA|jƒtjƒjtƒkr=tttjƒjƒƒndS(N(    tGetIDR
R R Rt__DoDoJieFBOvertFalset GetGameWorldtGetTick(t    curPlayer((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyt DoPlayerDeadis!cCst|||ƒS(N(t __CheckEnter(R tmapIDRR((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pytOnEnterFBEventtscCstj|tjƒs0tjd|jƒƒtS|dkso|jƒt    j
kso|dkr|j ƒdkr|j ƒ}t j|ƒ}|s¥tjd|ƒtS|jƒ}|sÕtjd||jƒƒtStj|tj|tƒstjd||jƒƒtSntS(Ns)¾ôλ¾³½ç¹¦ÄÜ먦Æô, ÎÞ·¨¿ªÆô¶É½Ù!curLV=%siisûÓиþ³½çµÈ¼¶Êý¾Ý! Lv=%ss!¾³½çÒÑÊÇ×î´óµÈ¼¶£¬²»ÄÜÉý¼¶! Lv=%ss/¾³½çÐÞÁ¶µã²»×㣬ÎÞ·¨¿ªÆô¶É½Ù£¡needRealmPoint=%s(t GameFuncCommt GetFuncCanUset ShareDefinetGameFuncID_OfficialR
tDebugLogtGetLVRt    GetTeamLVt IPY_GameWorldt    tmlLeadert    GetTeamIDtGetOfficialRankR RRt GetNeedPointt GetPlayerIDt PlayerControlt    HaveMoneytTYPE_Price_RealmPointtTrue(R R#Rt
curRealmLVRtneedRealmPoint((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyR"}s"?  cCs|S(N((R R#tlineIdtipyEnterPosInfoR((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pytOnGetFBEnterPosœscCstjS(N(R,t    cmeAccept(taskR((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pytOnChangeMapAsk¦sc
Cs'tjƒ}|jƒ}|tkr5tj|ƒdS|jtjƒ}t    j
ƒsst    j |ƒt    j t |ƒn|jtjƒ}tƒ}|jtƒs5x,|tD] }tj|tj|dƒq¨Wtjdƒ|dks|dks|jƒtjkr5t|ƒ|jƒtkr2t|ƒq2q5n|dko_|jƒtjko_|dk}t    j||ƒ}    tj|tj|tj |    ƒ|jƒ}|t krÉt!||t"d||ƒnM|tkrt#|t$d||j%ƒdƒ}
|j&tj'd|
t(ƒnt)||ƒdS(Nis Íæ¼Ò½øÈ븱±¾iiè(*R
R t    GetFBSteptFB_Step_LeaveTimeR2t PlayerLeaveFBtNomalDictGetPropertyRtDef_Player_Dict_ReqFBFuncLineRtGetHadSetFBPropertyMarktSetFBPropertyMarkt    SetFBSteptFB_Step_MapPrepareR tDef_FB_NPCStrengthenPlayerCntR    RtDef_HelpAddAttrIDtNomalDictSetPropertytDef_PDict_RealmFBAttrAddR)R+R,R-t__SetFBLeaderPlayertFB_Step_Fightingt__OnDuJieFBStartt GetFBJoinTypet EventReportt WriteEvent_FBRt CME_Log_Startt__EnterFBInPreparetDef_Time_MapPreparetmaxtDef_Time_Fightt GetFBStepTickt Sync_TimeTickt tttTowerTakeR5tDoFBHelp( R RRtfbStepRt fbPlayerCntt
DuJieFBCfgtattrIDt isHelpFighttjoinTypet
notifyTick((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyt    DoEnterFB¯s<           -
-   % cCsctjƒ}|jt|jƒƒ|jt|jƒƒtj|ƒt    j
|ƒt |t ƒdS(N( R
R RRR1RR/R tSyncRealmFBStateRtUpdateFBEnterTicktOnGetMemberForHelpDujieR(R R((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyRKÞs    cCsatjƒjƒ}|tkr+t|ƒn2|tkrDt|ƒn|tkr]t|ƒndS(N(    R
R R>RFt__DoLogic_MapPrepareRLt__DoLogic_MapFightingR?t__DoLogic_MapLeave(RRZ((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyt    OnProcessîs      cCsudStjƒ}|jtƒ}|dkr/|Sttj||jƒdƒƒ}tƒ}|t    }d}d}x<t
|dƒD]+\}    }
||
kr|    }|
|}qqW||krÇ| rÇ|S|j t|ƒtj d||||fƒtj ƒ} xnt| jƒƒD]Z} | j| ƒ} | s4qnt| |ƒ|dkr| jtjd|dtƒqqW|S(Nig@@iisB__UpdDuJieFBStar useSecond=%s,curStar=%s,updStar=%s, diffSecond=%siè(R
R R RtinttmathtceilRVR    t Def_StarTimet    enumerateRR)tGetMapCopyPlayerManagertxrangetGetPlayerCounttGetPlayerByIndexRYRWR,t tttFlagTakeR5(RtisForceRtcurStart    useSecondR\t starTimeListt
diffSecondtupdStartstartstarTimet playerManagertindexR ((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyt__UpdDuJieFBStarûs8  #    
        $cCs\t|||jƒdƒ}|jtjd|tƒ|rX|jtjd|tƒndS(Ni(RTRVRWR,t tttWaitStartR5t tttAddUpTime(R tdownTimeRRt    notifyEffR`((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyRR!s
cCsOtƒ}|tjƒjƒ|tdkr1dStjt|ƒt|ƒdS(Niè(    R    R
R RVRSRRERLRM(Rt    invadeCfg((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyRe+s     $
cCsLtƒ}|tjƒjƒ|tdkr>tt|ƒdSt|ƒdS(Niè(R    R
R RVRURRR}(RR‚((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyRf4s     $ 
cCs5tƒ}|tjƒjƒ|tdkr1dSdS(Niè(R    R
R RVtDef_Time_Leave(RR‚((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyRg=s    $c
Csbtjƒ}tjƒjtƒsÖt}tjƒ}x|t|j    ƒƒD]h}|j
|ƒ}|sgqFn|j ƒt j ksš|dkrF|jƒdkrFt|ƒt}PqFqFW|sÖtjdƒtjƒdSntƒ}tƒ}|sòdStjƒjƒ}tj||ƒ}    tj|    |gƒtjt j|tdƒtj|tƒt|ƒdS(Niis+    ×¼±¸µ¹¼ÆÊ±Òѹý£¬¶Ó³¤ÈÔδ½øÈ븱±¾£¡£¡£¡ iè( RRR
R R RRRnRoRpRqR+R,R-R.RKR5tLogRR    RtGetMaptGetMapIDtGetFBLineRefreshNPCtNPCCustomRefresht SetNPCRefreshtSync_Player_TimeTickRXRUtNotifyCopyMapPlayerFBHelpRYR}(
RRt
findLeaderR{R|R R\tbossIDR#trefreshBossMark((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyRMEs6  3
 
        
c
Csòtjƒ}|jƒtkr"dStjdƒtƒ}||jƒ}tjt    |ƒ|j
t ƒ}tj ƒ}|j |ƒ}|s‘t}nt||gƒ}tjƒjdddd|t|ƒƒ|j
tƒ}    |j
tƒ}
tj|
ƒ} tjƒ} |td} i|tj6|    tj6|tj6}|jƒ}x©t|ƒD]›}|j|ƒ}|dksO|j ƒr‚qOn| dko|j!ƒ|k}tj"||ƒ}t#j$|t%j&| t%j'||ƒ|j(t)j*d| t+ƒtj,|t%j&| ||ƒ|rO|rO|j!ƒ|krgtj-||
|    ƒtj.|t%j/t%j&dƒtj0|ƒn6t1||| |    ƒt2j3|ƒtj4|t%j&dƒ| rÈ| j5ƒrÈt6j7|t8j9dƒn|dkrêt2j:|dƒqêqOqOWdS(Ns´¦Àí¶É½Ù¸±±¾½áÊøÂß¼­it DuJieFBOverièit    teamdujie(;R
R R>RLR)R    RVRRER?R RRntFindPlayerByIDRtstrtGetPlayerManagertGameServer_QueryPlayerResulttlenRRR RRRƒt Over_costTimet
Over_gradet Over_leaderIDRpRoRqtNonetIsEmptyR1RNRORPRRt CME_Log_EndRWR,t tttLeaveMapR5t NotifyFBOvertDologicDujieFBPasstSetFBPDictValuetDef_PDict_LastEnterFBTicktSyncFBEnterTickt__GiveTeamAwardt
EventShelltEventRespons_DujieFBHelpPasstAddFBHelpPointt GetIsBigRealmt PlayerSuccesstDoAddSuccessProgressR'tSuccType_DujieFBHelpPasstEventRespons_FBEvent(tisPassRRR‚tcostTimetleaderPlayerIDtcopyMapPlayerManagert leaderPlayertmsgStrRtRRRt    leaveTicktoverDictt    playerCnttiR R^R_((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyRfsV           ( $ "   c Cs|s
dS|jƒ}|s dS|j|gƒ}t|ƒ}tj|tj|ƒ}t||kƒ}|r¹tj    d|j
ƒg||j ƒgƒt j dt|ƒ|j
ƒƒnHxE|D]=\}    }
} tj||    |
| tjgddtigƒqÀWdS(Nt RealmFBTeams'±³°ü¿Õ¼ä²»¹»£¬·¢ËÍÓʼþ: mailItemList=%steventtDojie(t GetTeamAwardtgetR•t
ItemCommontGetItemPackSpaceR,trptItemRiR2t SendMailByKeyR1t GetPlayerNameR
R)R’t ItemControlertGivePlayerItemR( R R¯RRtt teamAwardDictt prizeItemListt    needSpacet
emptySpacet
isSendMailtitemIDtitemCnttisBind((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyR¢£s   (#cCs<tjƒ}|jtƒ}||tj<tj||ƒdS(N(R
R R RRt Help_leaderIDt Notify_FBHelp(R RthelpDictRR­((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyRY½s
  cCs=|jƒ}|tƒkrdStjdƒtt|ƒdS(Ns¶É½ÙÒѱ»»÷ɱ£¡(tGetNPCIDRR
R)RR5(R tcurNPCRR((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pytDoFB_Player_KillNPCÌs    cCs&tjƒ}|jƒtkr"tStS(N(R
R R>RLRR5(tattackertdefenderR((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pytCheckCanAttackTagObjInFBÜs cCs‚|jƒtjƒjtƒkr%dS||jtjƒtj    ddƒkr^tj
dƒdS|j tj|ƒt |t ƒdS(NtRealmFBHelpAttris µã»÷¹ÄÎè¼ä¸ô(R1R
R R Rt GetTickByTypeRtTYPE_Player_Tick_DuJieInspiret IpyGameDataPYt
GetFuncCfgR)t SetTickByTypeRdR5(R t
actionTypet
actionInfoR((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyt
DoFBActionès!(  cCsµtjƒjtƒ}tj|ƒ}|s.dS|jƒrKtjdƒdStjdƒ|jt    j
t j ƒ}t ||gƒ}tjƒj|jƒddd|t|ƒƒdS(Ns´ó¾³½ç¶É½Ù£¬²»ÄÜÇëÇóÊØ»¤£¡sÏòÃËÓÑѰÇó¶É½ÙÊØ»¤£¡itGetMemberForHelpDujie(R
R R RR RR¦R)RARRJR'tDef_Effect_BaseAtkAddPerR’R“R”RR•(R t    isInspireRRtatkAddR°((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyRdös   .c Cs/tjdƒ}i}d}xw|D]o\}}|jt|ƒiƒ}x4|jƒD]&\}}    |j|dƒ|    ||<qSW|d||f7}q"WxP|jƒD]B\}}    t|ƒtƒtkr¢tj    |t
j ||    ƒq¢q¢Wtj|ƒj ƒ|r|d }ni|d6}
t |d|
ƒdS(NRÒtis%s|%s,iÿÿÿÿthelpInfo(RÕtGetFuncEvalCfgR¹R’titemsRiR    RHR2RIRRJtRefreshPlayerAttrByBuffRY( R RàtrealmFBHelpAttrDictt totalAttrDictt
fbhelpInfothelpTypetnametattrDictR]t    attrValueRË((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pytOnGetDuJieHelpInfo s"!  cCsÇtj|jƒƒtjkr"dStjƒjtƒ}|j    ƒ|krMdSt
ƒ}|s`dStj d|ƒx>t
ƒt D]/}|j tj|ƒ}tj|||ƒqWtj d|ƒdS(Ns»¤·¨ÊôÐÔ¼ÆËã allAttrList=%ss»¤·¨ÊôÐÔ¼ÆËã½á¹û allAttrList=%s(RtGetRecordMapIDR†RRR
R R RRR    R)RHRARJR2tCalcAttrDict_Type(R t allAttrListR­tfbcfgR]Rê((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pytCalcDujieFBAttrAdd$s    cCstS(N(R5(((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pytOnPlayerReborn;s(=t__doc__RRR,R2R
RˆRÕR R%RºR'R¿R§R£RORjttimetranget FB_Step_OpenRFRLR?RRRRSRURƒRlRHR    RRRRR!R$R"R:R=RaRKRhRR}RRReRfRgRMRR¢RYRÎRÑRÚRdRëRðRñ(((sq.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_DuJie.pyt<module>sf                                           
                     
            /         &
                        !    =