cehua_hzl
2018-08-24 665841283fff2465f886b3dba5b8480b73daa63f
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
121
ø~[c@sóddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZedƒ\ZZZedƒ\ZZZZZdZdZdZdZdZd    Zd
Zd Zd Z d „Z!d„Z"d„Z#d„Z$d„Z%d„Z&d„Z'd„Z(d„Z)d„Z*d„Z+d„Z,dd„Z.d„Z/d„Z0d„Z1d„Z2d„Z3d„Z4d „Z5d!„Z6d"„Z7dd#„Z8dS($iÿÿÿÿNiit RefreshStept SetGameFBDictt
NextLineIDsNeedKillNPCNum sNeedKillNPCID_%ssNeedKillNPCCount_%ssKillNPCCount_%st IsInFBOnDayt
RewardLinecCsatj|jƒƒ}|tjkr(dStjƒj|jƒt    dƒtj
d|jƒƒdS(NisÉèÖÃæ´»ÊÌôÕ½ÖйýÌ죡( tFBCommontGetRecordMapIDtGetMapIDtChConfigtDef_FBMapID_QueenRelicst    GameWorldt    GetGameFBtSetPlayerGameFBDictt GetPlayerIDtFBPKey_IsInFBOnDaytDebugLog(t    curPlayertmapID((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytOnFBPlayerOnDay?s cCsœ|s
tS|d}tj|ƒ}ttj||ƒƒ}tj|tj|t    |gƒ}||k}|s˜tj
d||||f|j ƒƒt    StS(NisXÉÏÒ»²ã·Ç×î´óÆÀ¼¶¹ý¹Ø£¬ÎÞ·¨ÌôÕ½ÏÂÒ»²ã£¡lineID=%s,preLineID=%s,preLineGrade=%s,maxGrade=%s( tTrueRRtlentGetFBLineGradeR
tGetDictValueByBitRt"Def_Player_Dict_PlayerFBStar_MapIdtFalseRR (RRtlineIdttickt    preLineIDtmaxGradet preLineGradetcanEnter((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytOnEnterFBEventPs
!     cCs|S(N((RRRtipyEnterPosInfoR((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytOnGetFBEnterPosfscCstjS(N(t IPY_GameWorldt    cmeAccept(taskR((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytOnChangeMapAskmscCstS(N(R(((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytOnPlayerRebornqscCsGtjƒjƒ}tjƒ}t||ƒ\}}|j||ƒdS(N(R
tGetMapRRtGetFBPropertyMarkt__GetQueenRelicsLinePostResetPos(Rt rebornPlaceRRtlineIDtenterXtenterY((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytOnResetFBRebornPlacePosus
 cCs
|jƒ}tjd|ƒtj|ƒ}tjƒ}tj|ƒsÂtj|tjƒj    ƒƒdst
j |ƒtj d|jƒƒdStj |ƒtj|ƒ}tjd||ƒntj}tjƒ}|jtjƒ}tj||ƒ}tjƒ s||kr\tj||ƒtjt|ƒ|}tj|tj|tj|ƒnŒ||krÉtjd|ƒt||ƒ\}    }
t
j|||    |
|ƒtj|tj|tj|ƒdStj|tj|tj|ƒ|jƒ} | tkrt |||ƒnætj!tj|ƒ} | tkr{| t"d|tjƒj#ƒ} |j$t%j&dt'| dƒt(ƒn~| t)krù| t*d|tjƒj#ƒ} |j$t%j+dt'| dƒt(ƒtj,|tj-tjƒj    ƒ|ƒ|ƒnt.||ƒdS(Ns DoEnterFB...is½øÈ븱±¾¿Û³ýÃÅÆ±Ê§°Ü£¡s    ÊÇ·ñÖúÕ½: %ss8µôÏßÆÚ¼ä¶ÓÓÑÒѾ­´òµ½ÆäËû²ãÁË£¬Ö±½ÓÇл»µ½Ä¿±ê¹¦ÄÜÏß·ID£¡iè(/R R
RRtGetIsHelpFightR tGetHadDelTickettDelFBEnterTickett GetGameWorldRt PlayerControlt PlayerLeaveFBtErrLogtSetHadDelTickettSetIsHelpFightRR    R(tNomalDictGetPropertytDef_Player_Dict_ReqFBFuncLinet GetFBJoinTypetGetHadSetFBPropertyMarktSetFBPropertyMarkt    SetFBStept FB_Step_Opent EventReportt WriteEvent_FBt CME_Log_StartR)tPlayerResetWorldPosFBLineIDt    GetFBSteptFB_Step_PreparetDoQueenRelicsLinePreparetGetFBLineStepTimetDef_PrepareTimet GetFBStepTickt Sync_TimeTickR"t tttWaitStarttmaxRtFB_Step_Fightingt Def_FightTimet tttTowerTaket UpdateFBGradeRtDoFBHelp(RRtplayerIDt isHelpFighttgameFBRR,t    reqLineIDtjoinTypettoPosXttoPosYtfbStept
fbLineTimet notify_tick((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyt    DoEnterFB€sR  "       "    "% "". cCsÖtjd||jƒƒtjƒ}|jtdƒ|jtdƒ|jtdƒ|jtj    dƒt
j ||ƒt
j t |ƒttt||ƒt
jtj|ƒ}|jtjd|tdtƒdS(Ns#¹¦ÄÜÏß¿ªÊ¼£¬½øÈë×¼±¸½×¶Î; lineID=%siiè(R
RR R RtFBKey_RefreshSteptFBKey_IsLastRefreshSteptFBKey_NextLineIDRt Def_FB_GradeRR=R>REt__RefreshQueenRelicsNPCRRRGR    RJR"RKRH(RR,RRTRZ((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyRF·s !cCs³tjƒjƒ}tjƒ}tjtj|ƒ}|tkrOt    ||ƒn`|t
kr“tj |tj tj ƒjƒ|ƒƒt||ƒn|tkr¯t||ƒndS(N(R
R RDRR(RGRR    REt__DoLogic_FB_PrepareRMRPRR3Rt__DoLogic_FB_Fightingt FB_Step_Overt__DoLogic_FB_Over(RRYR,RZ((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyt    OnProcessËs   ( cCsg|tjƒjƒ|tdkr(dSttt|ƒtjt    |ƒtj
t j |t dƒdS(Niè(R
R RIRHRaRRRR>RMtSync_Player_TimeTickR"RORN(RRZ((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyRbás $cCs9|tjƒjƒ|tdkr(dStt|ƒdS(Niè(R
R RIRNt__DoQueenRelicsOverR(RRZ((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyRcïs$ cCsM|tjƒjƒ|tddkr,dStj|ƒtjt|ƒdS(Nièi N(    R
R RIt Def_LeaveTimetGameWorldProcesstCloseFBRR>t FB_Step_Close(RRZ((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyReûs
( cCsÄtjƒ}tjtj|ƒ}|s<tjd|ƒdStjƒ}|jt    ƒ}|rj|d7}nt
|ƒ}||krtj d||fƒdS||d}    i}
xp|    j ƒD]b\} } | sÖq¾nt j| ƒ} | sïdSx.| D]&\}}|
j|dƒ||
|<qöWq¾W|
sEtjd||fƒdSt||kƒ}|jt    |ƒ|jt|ƒ|
jƒ}t
|ƒ}|jt|ƒxFt|ƒD]8\}}|jt||ƒ|jt||
|ƒq¬W|rtj d|||    |
fƒn|rXtj d|||    |
fƒx$|    jƒD]} t j| ƒq>Wn|rot||ƒdStjƒ}xBt|jƒƒD].}|j|ƒ}|s¯qŽnt||ƒqŽWdS(NsûÓÐÅäÖÃË¢¹ÖÐÅÏ¢!lineID=%sis#³¬¹ý×î´óË¢¹Ö½×¶Î!step=%s,maxStep=%sis/ûÓÐÐèÒª»÷ɱ²Å¿É¹ý¹ØµÄNPCÅäÖÃ!lineID=%s,step=%ssCË¢¹Ö×¼±¸: step=%s,isLastStep=%s,refreshIDDict=%s,needKillNPCDict=%ssCˢйÖÎï: step=%s,isLastStep=%s,refreshIDDict=%s,needKillNPCDict=%s(RR(tGetFBLineRefreshNPCRR    R
R6R tGetGameFBDictByKeyR]RRtitemstNPCCustomRefreshtGetNPCRefreshCountListtgettintRR^tkeystFBKey_NeedKillNPCNumt    enumeratetFBKey_NeedKillNPCIDtFBKey_NeedKillNPCCounttSetNPCRefreshByIDRQtGetMapCopyPlayerManagertrangetGetPlayerCounttGetPlayerByIndex(t
isNextStept isRefreshNowRt notifyPlayerR,t refreshNPCCfgRTtsteptmaxStept refreshIDDicttneedKillNPCDictt    refreshIDtneedKillt npcCountListtnpcIDtcountt
isLastSteptneedKillNPCIDListt needKillNumtit playerManagerR((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyRasj     "            cCsdS(N((R((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyt    OnCloseFBPscCsdS(N((RR((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytDoExitFBXscCstj|tj|ƒdS(N(t    BuffSkilltDelBuffBySkillIDRtDef_SkillID_QueenRelicsItemBuff(RR((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytDoPlayerLeaveFB_sc Csïtjƒ}|jtƒ}|jtjƒ}tjƒ}i}|jtƒ}xDt    |ƒD]6}|jt
|ƒ}    |jt |    ƒ}
|
||    <q[Wi|tj 6|tj 6tj|ƒtj6} |rØ|| tj<ntj||| ƒdS(N(R
R RnR]RR`RR(RutxrangeRwtFBKey_KillNPCCountt Help_lineIDt
Help_gradetGetJsonNPCKillListtHelp_npct    Help_stept NotifyFBHelp( RRRTR‚tgradeR,tnpcDicttneedNumRŽR‰t    killCountt
fbHelpDict((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyRQjs   cCs‹|jƒ}tjƒ}|jt|ƒd}|jt||ƒt}t}|jtƒ}x€t    |ƒD]r}    |jt
|    ƒ}
||
kr™t}n|rk|jt |
ƒ} |jt|
ƒ} | | krÝt}qÝqkqkW|sB|r>tj ƒ} xBt    | j ƒƒD]+}| j|ƒ}|r t||ƒq q WndS|jtƒrw|r‡tjdƒtt|ƒq‡nttt|ƒdS(NisËùÓйÖÎïÒÑ»÷ɱ£¡¹ý¹Ø£¡(tGetNPCIDR
R RnR—RRRRuR–RwRxRzR|R}RQR^RRhRa(RtcurNPCRtcurNPCIDRTt killNPCCounttisNeedKillNPCIDt    isAllKillR RŽR‰t needKillCountR¡Rtindextplayer((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytDoFB_Player_KillNPC…s<          cCs&tjƒ}|jƒtkr"tStS(N(R
R RDRMRR(tattackertdefenderRT((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytCheckCanAttackTagObjInFB¯s c
Csûtjƒjƒtkr)tjdƒdS|tjƒjƒ}tj|ƒtjƒj    ƒ}t
j ƒ}t
j |ƒ}t
j |t
j||ƒƒtjƒjtjƒ}t
jt|ƒt
jtj|ƒ}t
j|ƒ}t|ƒ}    d}
|r7||    kr7t
j||dtƒ} | s*dn|d}
ntjƒ} | jt|
ƒtjd||||
fƒtjƒ} xxt| jƒƒD]d}| j|ƒ}|s°qnt||ƒt
j |ƒ}|j!ƒ}| j"|t#ƒ}t}i}|rÝi|t
j$6|t
j%6}|rÙt
j&||ƒ}|j'it
j(i|t)j*6ƒt
j+6ƒtj,|tj-|t|gƒ}||krGtjd||||f|j!ƒƒtj.|tj-||t|gƒt/}qGnnt0|||d|||    |ƒ}|rG|\}}}}|j'i|t
j16t
j2|ƒt
j36|d6ƒn|d|j4tj5|ƒkrˆt6j7|tj5||dƒn||    kr·t8j9|t)j:d|dgƒnt;j<|||ƒt;j=|dƒnt
j>|||||ƒ|d}| j?|t#|ƒ| ru| ru| j"|t@ƒ}|sbtjd|ƒt/}t
jA||ƒqutjd    |ƒn|
sŸ|jBtCjDd|tEd
t/ƒn;|jBtCjFd|tEd
t/ƒtjd ||
f|ƒ|rt
jG||ƒqqWdS( NsÒѾ­½áËã¹ý£¡²»Öظ´½áËã!iis8¿ªÊ¼¹ý¹Ø½áËã: lineID=%s,grade=%s,isPass=%s,nextLineID=%ssA    ÖúÕ½¸üйý¹ØÆÀ¼¶: dataMapID=%s,lineID=%s,curGrade=%s,grade=%ststartRewardLineIDtqueenrelics_passsÊ״νáËã½±Àø£¬Ôö¼ÓÌôÕ½´ÎÊý£¡s¸±±¾ÖйýÌ죬²»Ôö¼ÓÌôÕ½´ÎÊý£¡iès0    ¿É½øÈëÏÂÒ»¹Ø: updRewardLine=%s,nextLineID=%s(HR
R RDRdRRIRptCloseFBCustomRefreshR'RRR(RRPRRnRR`R>RGR    tGetFBGradeRewardRateListRtGetFBLineIpyDataRRR_RzR–R|R}RQR0R tGetPlayerGameFBDictByKeytFBPKey_RewardLinet Over_costTimet
Over_gradetAddFBHelpPointtupdatetGetJsonMoneyListt ShareDefinetTYPE_Price_FBHelpPointt
Over_moneyRRtSetDictValueByBitRt__GivePlayerQueenRelicsRewardtOver_sptGetJsonItemListt Over_itemInfoR9t Def_Player_Dict_FBHistoryMaxLineR4tNomalDictSetPropertyt PlayerSuccesstDoAddSuccessProgresstSuccType_QueenRelicst
EventShelltEventRespons_PassQueenRelecstEventRespons_FBEventt NotifyFBOverR RtAddEnterFBCountRJR"t tttLeaveMapRit tttFBAddTimetSync_FBPlayerFBInfoData(tisPassRtcostTimeRR,t    dataMapIDRžRZtrewardRateListRt
nextLineIDtnextLineIpyDataRTRRªRRSRRt
rewardLinetneedSyncFBDatatoverDictt    helpPointtcurGradet    rewardRetR°ttotalSPtrewardItemListt updRewardLinet isInFBOnDay((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyRhµsŒ        *! &" "& ! #
$!c Csžd}i}||kr<tjd||f|jƒƒdS|d}    t}
x9t|    |dƒD]$} | |krx|n|} tj|tj| t|gƒ} | | krütjd|| | | f|jƒƒtj    |tj| | t|gƒt
}
nt j || ƒ}|d}|d}| |kr4dn|| }|dks\|t |ƒkr‹tjd| | |||f|jƒƒq`n||}|dkrtt||dƒƒ}g}xY|D]B\}}tdtt||dƒƒƒ}|j||gƒqÈWn |}|}tjd| | ||||f|jƒƒ||7}x.|D]&\}}|j|dƒ|||<qZWq`Wtj||d    d
ƒg}x0|jƒD]"\}}|j||dgƒq±Wt |ƒ}tj|tj|ƒ}||kr&tjd |jƒg|ƒnHxE|D]=\}}}tj||||tjgd d
tigƒq-Wtjd ||f|jƒƒ|
|    ||fS(Nis9Íæ¼ÒÖØ¸´½áËãæ´»Ê¹ý¹Ø½±Àø£¡rewardLineID=%s >= curLineID=%sisG    ¸üйý¹ØÆÀ¼¶: dataMapID=%s,giveLineID=%s,curGrade=%s,rewardGrade=%ssk    ÆÀ¼¶¶ÔÓ¦½±Àø±ÈÀýË÷ÒýÒì³£: giveLineID=%s,rewardGrade=%s,rewardRateList=%s,maxGrade=%s,rewardRateIndex=%sidgY@se    ¸ø¹Ø¿¨½±Àø: giveLineID=%s,rewardGrade=%s,rewardRateList=%s,rewardRate=%s,addSP=%s,giveItemList=%st    eventNamet QueenRelicstQueenRelicsMailtevents(    ×ܽ±Àø£ºtotalSP=%s,rewardItemList=%s(R
R6R RR–RRRRR¿RRtGetFBLineRewardRRstroundRLtappendRrR4tPlayerAddZhenQiRot
ItemCommontGetItemPackSpaceR"trptItemt SendMailByKeyt ItemControlertGivePlayerItem(RRÓt rewardLineIDt    curLineIDt    passGradeRRÔRÝttotalItemCountDictR°RØt
giveLineIDt rewardGradeRÛt
lineRewardtrewardSPRÞtrewardRateIndext
rewardRatetaddSPt giveItemListtitemIDt    itemCountt rewardCountt    needSpacet
emptySpacetisBind((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyRÀsb  
!     "    
 
     
 #    #
"  2 cCs|tjkrdS|}tjƒ}tjd|||f|jƒƒtjƒjƒ}||kr»t||ƒ\}}t    j
|||||ƒtjd|||f|jƒƒdStj ƒj ƒ}    |    t krîtjd|    ƒdS||dkrtjd||fƒdStj ƒ}
|
jtjƒ} ttj||ƒƒ} | | kr‚tjd|| | f|jƒƒdStj||tƒ} | s²tjd|ƒdSt||| ƒ\}}t    j
|||||ƒtj|tj|ƒrt    j    |ƒ}|jƒndS(Ns3DoFBAction actionType=%s, toLineID=%s, curLineID=%ssIÒѾ­Êǵ±Ç°¹¦ÄÜÏß·, Çл»µ½¸Ã¹¦ÄÜÏßÂ·×ø±ê: toPosX=%s,toPosY=%s,toLineID=%ss·Ç½áÊø×´Ì¬!fbStep=%sis(Ö»ÄܽøÈëÏÂÒ»¹Ø, curLineID=%s,toLineID=%ssA·Ç×î´óÆÀ¼¶¹ý¹Ø£¬ÎÞ·¨ÌôÕ½ÏÂÒ»²ã£¡curLineID=%s,grade=%s,maxGrade=%ssûÓÐÄ¿±ê¹¦ÄÜÏß·£¡toLineID=%s(RtDef_FbActionChangeLineR(R
RR R'RR)R4RCR RDRdRnRR`RRR´RR6R’R“R”tRefreshPlayerAttrByBuff(Rt
actionTypet
actionInfoRttoLineIDRðRRWRXRYRTRžRt toLineIpyDatat playerControl((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyt
DoFBActionasH #             cCsOtj|||ƒ}|\}}}tj|||ƒ}|jƒ|jƒfS(N(RtGetFBLineEnterPosInfotGameMaptGetEmptyPlaceInAreatGetPosXtGetPosY(RR,RtposInfoR-R.tdisttposPoint((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyR)‹s(9R"RjRpR4RíRéR
RRR
R’RÆR¼RÉR@R{RHRNRiR?RERMRdRlR]R^R_RuRwRxR—RR¶RRR!R%R&R/R\RFRfRbRcRetNoneRaRR‘R•RQR¬R¯RhRÀRR)(((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyt<module>s`                                                7                      J                     *        `    L    *