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
100
101
102
103
104
105
106
107
108
109
110
111
112
Mt4\c@s>ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZedƒ\ZZZedƒ\ZZZZZdZdZdZdZdZ d    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-d„Z.d„Z/d„Z0d„Z1dd„Z3d„Z4d„Z5d„Z6d„Z7d„Z8d „Z9d!„Z:d"„Z;d#„Z<d$„Z=d%„Z>dd&„Z?dS('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.pytOnFBPlayerOnDayCs 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.pytOnEnterFBEventTs
!     cCs|S(N((RRRtipyEnterPosInfoR((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytOnGetFBEnterPosjscCstjS(N(t IPY_GameWorldt    cmeAccept(taskR((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytOnChangeMapAskqscCstS(N(R(((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytOnPlayerRebornuscCsGtjƒjƒ}tjƒ}t||ƒ\}}|j||ƒdS(N(R
tGetMapRRtGetFBPropertyMarkt__GetQueenRelicsLinePostResetPos(Rt rebornPlaceRRtlineIDtenterXtenterY((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytOnResetFBRebornPlacePosys
 cCs tjƒ}t|||ƒdS(N(RR(tDoQueenRelicsLinePrepare(RRR,((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytOnCallHelpBattleOKs c
Cs(|jƒ}tjd|ƒtjƒ}tj|ƒstj|tjƒjƒƒds€t    j
|ƒtj d|jƒƒdStj |ƒnt j}tjƒ}|jt jƒ}|jƒ}|tkrütj||ƒ|}tj|||ƒdS||kr1tj||ƒ|}t|||ƒnætjt j|ƒ}|tkr™|td|tjƒjƒ}    |jtjdt|    dƒt ƒn~|t!kr|t"d|tjƒjƒ}    |jtj#dt|    dƒt ƒtj$|tj%tjƒjƒ|ƒ|ƒnt&||ƒdS(Ns DoEnterFB...is½øÈ븱±¾¿Û³ýÃÅÆ±Ê§°Ü£¡iè('R R
RR RtGetHadDelTickettDelFBEnterTickett GetGameWorldRt PlayerControlt PlayerLeaveFBtErrLogtSetHadDelTicketRR    R(tNomalDictGetPropertytDef_Player_Dict_ReqFBFuncLinet    GetFBSteptFB_Step_CallHelptSetFBPropertyMarkt FBHelpBattlet&SendGameServer_RefreshHelpBattlePlayerR0tGetFBLineStepTimetFB_Step_PreparetDef_PrepareTimet GetFBStepTickt Sync_TimeTickR"t tttWaitStarttmaxRtFB_Step_Fightingt Def_FightTimet tttTowerTaket UpdateFBGradeRtDoFBHelp(
RRtplayerIDtgameFBRR,t    reqLineIDtfbStept
fbLineTimet notify_tick((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyt    DoEnterFBŠs@  "          "% "". cCsktjd||jƒƒtjƒ}|jtdƒ|jtdƒ|jtdƒ|jtj    dƒt
j ||ƒt
j t |ƒttt||ƒt
jtj|ƒ}|jtjd|tdtƒtj|tj|tjƒtjdtj|ƒ}|rg|jtj|jƒƒ|jtj|jƒƒtjd||jƒ|jƒfƒndS(Ns#¹¦ÄÜÏß¿ªÊ¼£¬½øÈë×¼±¸½×¶Î; lineID=%siièR>sJ    ¸üи±±¾ÖúÕ½»úÆ÷ÈË»ù´¡É˺¦: lineID=%s,RobotBaseHurt=%s,fbFightPower=%s( R
RR R RtFBKey_RefreshSteptFBKey_IsLastRefreshSteptFBKey_NextLineIDRt Def_FB_GradeRR=t    SetFBStepRAt__RefreshQueenRelicsNPCRRR@R    RDR"RERBt EventReportt WriteEvent_FBt CME_Log_Startt IpyGameDataPYtGetIpyGameDatatFBPD_HelpBattleFBBaseHurttGetRobotBaseHurttFBPD_HelpBattleFBFightPowertGetFightPowerMin(RR,RRMRPt helpIpyData((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyR0´s& !     cCs³tjƒjƒ}tjƒ}tjtj|ƒ}|tkrOt    ||ƒn`|t
kr“tj |tj tj ƒjƒ|ƒƒt||ƒn|tkr¯t||ƒndS(N(R
R R;RR(R@RR    RAt__DoLogic_FB_PrepareRGRJRR4Rt__DoLogic_FB_Fightingt FB_Step_Overt__DoLogic_FB_Over(RROR,RP((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 RCRBRXRRRRWRGtSync_Player_TimeTickR"RIRH(RRP((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyRcæs $cCs9|tjƒjƒ|tdkr(dStt|ƒdS(Niè(R
R RCRHt__DoQueenRelicsOverR(RRP((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyRdôs$ cCsM|tjƒjƒ|tddkr,dStj|ƒtjt|ƒdS(Nièi N(    R
R RCt Def_LeaveTimetGameWorldProcesstCloseFBRRWt FB_Step_Close(RRP((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyRfs
( 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
R7R tGetGameFBDictByKeyRSRRtitemstNPCCustomRefreshtGetNPCRefreshCountListtgettintRRTtkeystFBKey_NeedKillNPCNumt    enumeratetFBKey_NeedKillNPCIDtFBKey_NeedKillNPCCounttSetNPCRefreshByIDRKtGetMapCopyPlayerManagertrangetGetPlayerCounttGetPlayerByIndex(t
isNextStept isRefreshNowRt notifyPlayerR,t refreshNPCCfgRMtsteptmaxStept refreshIDDicttneedKillNPCDictt    refreshIDtneedKillt npcCountListtnpcIDtcountt
isLastSteptneedKillNPCIDListt needKillNumtit playerManagerR((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyRX sj     "            cCsdS(N((R((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyt    OnCloseFBUscCsdS(N((RR((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytDoExitFB]scCstj|tj|ƒdS(N(t    BuffSkilltDelBuffBySkillIDRtDef_SkillID_QueenRelicsItemBuff(RR((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytDoPlayerLeaveFBdsc 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 RoRSRRVRR(RvtxrangeRxtFBKey_KillNPCCountt Help_lineIDt
Help_gradetGetJsonNPCKillListtHelp_npct    Help_stept NotifyFBHelp( RRRMRƒtgradeR,tnpcDicttneedNumRRŠt    killCountt
fbHelpDict((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyRKos   cCst||ƒdS(N(t__FBNPCOnKilled(tattackertcurNPCR((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytDoFB_Npc_KillNPC„s cCst||ƒdS(N(R¤(RR¦R((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pytDoFB_Player_KillNPCŽs 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 RoR˜RRRRvR—RxRyR{R}R~RKRTRRiRX(R¦RtcurNPCIDRMt killNPCCounttisNeedKillNPCIDt    isAllKillR¡RRŠt needKillCountR¢Rtindextplayer((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyR¤’s<          cCs&tjƒ}|jƒtkr"tStS(N(R
R R;RGRR(R¥tdefenderRM((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ƒ} xÿt| jƒƒD]ë}| j|ƒ}|s°qnt||ƒ|j ƒ}| j!|t"ƒ}t}i}|r i|t
j#6|t
j$6}t%|||d|||    |ƒ}|ru|\}}}}|j&i|t
j'6t
j(|ƒt
j)6|d6ƒn|d|j*tj+|ƒkr¶t,j-|tj+||dƒn||    kråt.j/|t0j1d|dgƒnt2j3|||ƒt2j4|dƒn|d}| j5|t"|ƒ|rã| rã| j!|t6ƒ}|s¤tjd|ƒt7}t
j8||ƒt9j:|||ƒ\}}||g|t
j;<ntjd|ƒt.j/|t0j<dƒt=j>|tj?dƒn|
s |j@tAjBd|tCd    t7ƒn;|j@tAjDd|tCd    t7ƒtjd
||
f|ƒ|rat
jE||ƒnt
jF|||||ƒqWdS( NsÒѾ­½áËã¹ý£¡²»Öظ´½áËã!iis8¿ªÊ¼¹ý¹Ø½áËã: lineID=%s,grade=%s,isPass=%s,nextLineID=%ststartRewardLineIDtqueenrelics_passsÊ״νáËã½±Àø£¬Ôö¼ÓÌôÕ½´ÎÊý£¡s¸±±¾ÖйýÌ죬²»Ôö¼ÓÌôÕ½´ÎÊý£¡iès0    ¿É½øÈëÏÂÒ»¹Ø: updRewardLine=%s,nextLineID=%s(GR
R R;ReRRCRqtCloseFBCustomRefreshR'RRR(RRJRRoRRVRWR@R    tGetFBGradeRewardRateListRtGetFBLineIpyDataRRRUR{R—R}R~RKR tGetPlayerGameFBDictByKeytFBPKey_RewardLinet Over_costTimet
Over_gradet__GivePlayerQueenRelicsRewardtupdatetOver_sptGetJsonItemListt Over_itemInfoR9t Def_Player_Dict_FBHistoryMaxLineR5tNomalDictSetPropertyt PlayerSuccesstDoAddSuccessProgresst ShareDefinetSuccType_QueenRelicst
EventShelltEventRespons_PassQueenRelecstEventRespons_FBEventR RRtAddEnterFBCountR>tDoFBAddXianyuanCointOver_xianyuanCointSuccType_QueenRelicsExtPlayerWeekPartytAddWeekPartyActionCnttDef_WPAct_QueenRelicesRDR"t tttLeaveMapRjt tttFBAddTimetSync_FBPlayerFBInfoDatat NotifyFBOver(tisPassRtcostTimeRR,t    dataMapIDRŸRPtrewardRateListRt
nextLineIDtnextLineIpyDataRMRR¯RRLt
rewardLinetneedSyncFBDatatoverDictt    rewardRetR³ttotalSPtrewardItemListt updRewardLinet isInFBOnDaytaddXianyuanCointreason((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyRiÂ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
R7R RR—RRRRtSetDictValueByBitRRtGetFBLineRewardRRttroundRFtappendRsR5tPlayerAddZhenQiRpt
ItemCommontGetItemPackSpaceR"trptItemt SendMailByKeyt ItemControlertGivePlayerItem(RR×t rewardLineIDt    curLineIDt    passGradeRRØRßttotalItemCountDictR³RÜt
giveLineIDt rewardGradetcurGradet
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|ƒdS|jƒtjkrötjd|jƒƒtj|tj|ƒnt||| ƒ\}}t    j
|||||ƒtj|tj|ƒr[t    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=%ss#½øÈëÏÂÒ»²ãÊ±Íæ¼ÒÊÇËÀÍö״̬£¬Ïȸ´»î!(!RtDef_FbActionChangeLineR(R
RR R'RR)R5tPlayerResetWorldPosFBLineIDR R;ReRoRRVRRR·RR7tGetPlayerActionR"tpaDietLogtChPlayertPlayerRebornByTypetrebornType_SystemR“R”R•tRefreshPlayerAttrByBuff(Rt
actionTypet
actionInfoRttoLineIDRõRttoPosXttoPosYRORMRŸRt toLineIpyDatat playerControl((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyt
DoFBActionfsN #             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(@R"RkRqR5RòRîR
RRRR“RÃRÅRÇRYR R>R\RÎR|RBRHRjR<RARGReRmRSRTRURvRxRyR˜RR¹RRR!R%R&R/R1RRR0RgRcRdRftNoneRXR‘R’R–RKR§R¨R¤R²RiR¼RR)(((sw.\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBProcess\GameLogic_QueenRelics.pyt<module>sn                                                           *                      J                     
        *        X    L    .