hwj35
4 天以前 daa1c970375e2824fd1283a2042dfbc9f33d17a2
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
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
<jc@s÷ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ej ddƒej ddƒd„Z d„Zd„Zd„Zd    „Zd
„Zd „Zd „Zd „Zd„Zdigd„Zd„Zd„Zd„Zd„Zd„Zd„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,d&„Z-d'„Z.d(„Z/d)„Z0d*„Z1d+„Z2d,„Z3d-„Z4d.„Z5d/„Z6d0„Z7d1„Z8d2„Z9d3„Z:d4„Z;d5„Z<d6„Z=d7„Z>d8„Z?d9„Z@d:„ZAd;„ZBd<„ZCd=„ZDd>„ZEd?„ZFd@„ZGdA„ZHdB„ZIdC„ZJdD„ZKdE„ZLdF„ZMdG„ZNdH„ZOdI„ZPdJ„ZQdK„ZRdL„ZSdM„ZTdN„ZUdO„ZVdP„ZWdQ„ZXdR„ZYdS„ZZdT„Z[dU„Z\dV„Z]dW„Z^dX„Z_dY„Z`dZ„Zad[„Zbd\„Zcd]„Zdd^„Zed_„Zfd`„Zgda„Zhdb„Zidc„Zjdd„Zkde„Zldf„Zmdg„Zndh„Zodi„Zpdj„Zqdk„Zrdl„Zsdm„Ztdn„Zudo„Zvdp„Zwdq„Zxdr„Zyds„Zzdt„Z{du„Z|dv„Z}dw„Z~dx„Zdy„Z€dz„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‰„ZdŠ„Z‘d‹„Z’dŒ„Z“d„Z”dŽ„Z•d„Z–d„Z—d‘„Z˜d’„Z™d“„Zšddd”„Zœd•„Zd–„Zžd—„ZŸd˜„Z d™„Z¡dS(šiÿÿÿÿNsScript\GameWorldLogic\t    FBProcesstcCsDtjƒd}tj|dƒtjƒd}tj|dƒdS(NsScript\GameWorldLogic\FBProcessRsScript\GameWorldLogicR(tChConfigt
GetAppPatht    GameWorldt ReloadScript(ttickt
scriptPath((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyt ReloadFBLogic&s
cCs÷t|ƒtjƒjdƒ}|dkr¬tjƒ}xet|jƒƒD]Q}|j|ƒ}d|j    ƒ}t
ƒj |ƒrJt
ƒ||||ƒqJqJW|j ƒnt tjƒjƒƒ}tjtd|dfƒ}|ró||ƒndS(NisNPCRefreshInit_%dsGameLogic_%s.%stOnOpenFB(t__DoLogic_FBInitRtGetMapCopyPlayerManagertGetPlayerByIndextNonet GetNPCManagertrangetGetCustomNPCRefreshCounttGetCustomNPCRefreshAttGetRefreshMarktglobalsthas_keytClearChangeMapTakeCreateNPCt__GetFBLogic_MapIDtGetMaptGetMapIDt GetExecFuncR(Rt    curPlayertgameNPCtit
npcRefreshtfuncNamet do_FBLogic_IDtcallFunc((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR    3s
    c Csªtjƒ}|jƒ|jƒtjƒ}x†t|jƒƒD]r}|j|ƒ}g}x6t|jƒƒD]"}|j    |ƒ}|j
|ƒqmWx|D]}t j |ƒqšWq?Wx6t|j ƒƒD]"}|j|ƒ}t||ƒqÈWx6t|jƒƒD]"}|j|ƒ}t||ƒqWg}    tjƒ}
x6t|
jƒƒD]"}|
j|ƒ} |    j
| ƒqLWx1|    D])} | sy| jƒr˜qyn| jƒqyWdS(N(Rt    GetGameFBtClearGameFBDicttClearAllPlayerGameFBDictRRRRtGetCounttGetAttappendt    NPCCommont    SetDeadExtGetNormalNPCCounttGetNormalNPCAtt__CheckRebornNPCt GetBossCountt    GetBossAttGetMapItemManagertGetMapItemCounttGetMapItemByIndextIsEmptyt    Disappear( RtgameFBRRRtnpc_ListtindextcurNPCtnpct mapItem_ListtmapItemManagert
curMapItemtmapItem((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR
Rs8 
 
    cCsk|jƒdkrdSxNt|jƒƒD]:}|j|ƒ}|j|ƒ}|j|tj|ƒq)WdS(Ni(R$RtGetChangeMapTakeNPCCounttGetChangeMapTakeNPCIDByIndextGetChangeMapTakeNPCCountByIndextRefreshRtDef_NormalNPCAngryCount(RRRRtcurNPCIDt curNPCCount((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pytNPCRefreshInit_2†scCshttjƒjƒƒ}tjtd|dfƒ}|rG||ƒntjdtjƒjƒƒdS(NsGameLogic_%s.%st    OnCloseFBsmapID = %s OnCloseFB(RRRRRRtLog(RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRD—s  cCsO|jƒr/tj|ƒdkr/t|ƒdStj|ƒ}|j|ƒdS(Ni(tIsAlivetGameObjtGetHPt__DoLogic_NPCAliveR't
NPCControlt DoNPCReborn(R6Rt
npcControl((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR+ªs !
 cCsTtj|ƒ}|jƒtj|ƒ}tj|ƒ|krPtj||ƒndS(N(R'RJt ResetNPC_InitRGtGetMaxHPRHtSetHP(R6RLt curNPCMaxHP((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRI¸s 
cCsKttjƒjƒƒ}tjtd|dfƒ}|rG||ƒndS(NsGameLogic_%s.%stDoFBInit(RRRRRR(RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pytOnInitËs
 cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stDoFBOnKill_NPC(RRRRRR(RRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRSÜs
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stDoFB_OnAchieveTask(RRRRRR(Rt    isAchieveRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRTìs
icCsWttjƒjƒƒ}tjtd|dfƒ}|rS||||||ƒndS(NsGameLogic_%s.%stDoFB_OnFinishRunAroundTask(RRRRRR(Rt curMissionIDtexpt    moneyDicttitemListRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRVûs
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%stDoFB_Player_KillNPC(RRRRRR(RR6RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR[s
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stDoFB_NPCSelfDestruction(RRRRRR(R6RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR\s
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stDoFB_DropOwner(RRRRRR(RR6RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR]+s
cCsHttjƒjƒƒ}tjtd|dfƒ}|rD||ƒSdS(NsGameLogic_%s.%stGetFBEveryoneDropInfo(RRRRRR(R6RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR^6s
 
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%stDoFB_Npc_KillNPC(RRRRRR(tattackertdefenderRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR_Hs
cCsKttjƒjƒƒ}tjtd|dfƒ}|rG||ƒndS(NsGameLogic_%s.%st DoFB_NPCDead(RRRRRR(R6RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRbUs
 cCsTtjƒjƒ}t|ƒ}tjtd|dfƒ}|rP||||ƒSdS(NsGameLogic_%s.%stDoFBOnKill_Player(RRRRRR(RRaRtmapIDRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRces  cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ||||ƒSdS(NsGameLogic_%s.%stDoFBOnNPCKill_Player(RRRRRR(R6RRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyReqs
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ||||ƒSdS(NsGameLogic_%s.%stDoFBOnHit_Player(RRRRRR(RRaRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRf‚s
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ||||ƒSdS(NsGameLogic_%s.%stDoFB_Player_HitNPC(RRRRRR(RRaRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRg“s
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%st DoFBOnReborn(RRRRRR(Rt
rebornTypeRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRh£s
cCsjtjƒjƒtjkrdSttjƒjƒƒ}tjt    d|dfƒ}|rf|||ƒSdS(NsGameLogic_%s.%stDoFBHelp(
Rt GetGameWorldt GetOpenStatet IPY_GameWorldtfbosOpenRRRRR(RRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRj³s cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒS(NsGameLogic_%s.%stOnNPCRebornInFB(RRRRRRR tTrue(R6RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRoÁs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%st    OnCanTalk(RRRRRRR Rp(RRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRqÐs
 cCsK|jƒ}tj|ƒt||ƒtjƒ}|jƒ}|jtj    ƒ}|jtj
ƒ}t j |||ƒt ||ƒt||ƒt||ƒ|jƒtjkrµdStj|ƒtj|ƒkrãtj|ƒntjƒ}|jƒtjkr|jtj|ƒn|jdƒ|j|ƒr:dS|j|ƒdS(Ni(tGetIDtGameWorldProcesst EnterOpenFBtSync_LeaveMapTickRRRtNomalDictGetPropertyRtDef_Player_Dict_ReqFBMapIDtDef_Player_Dict_ReqFBFuncLinet PlayerControltSetFBFuncLineIDtInitFBNPCStrengthenDatat    DoEnterFBtRecordFirstEnterMapt GetMapFBTypeRmtfbtNullRGRHRNt    SetHPFullR!t    fbtSinglet SetGameFBDicttDef_FB_SingleFBPlayerIDtSetPlayerLogoffTickt HaveFBPlayert AddFBPlayer(RRt curPlayerIDtgameMapt    gameMapIDtreqMapIDt reqFuncLineIDt    gameFBMgr((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pytDoEnterFBLogicßs.           cCs•ttjƒjƒƒ}tjtd|dfƒ}|dkrftjd|jƒƒ|||ƒn|j    t
j ƒr‘t j |t
j dƒndS(NsGameLogic_%s.%sR|sDoEnterFBLogic...i(RRRRRRR REt GetPlayerIDRvRtDef_Player_Dict_EnterFBFreeRytNomalDictSetProperty(RRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR|s cCs©tjƒ}|jƒ}|jƒtjkr¤|jtjƒs¥|j    tj
|j ƒƒ|j    tj|j ƒƒ|j    tj dƒtj d|j ƒ|ƒq¥n|jƒtjkr…tj|tƒs”|jtj
ƒs.|jtjƒ}|s|j ƒ}n|j    tj
|ƒtj d||ƒn|jtjƒs”|jtjƒ}|sg|j ƒ}n|j    tj|ƒtj d||ƒq”ntj|tƒs|jtj ƒs|jtjƒ}|sÙd}n|j    tj |ƒtj d||ƒqn|jtjƒs@|jtjƒ}|j    tj|ƒntj|tjdƒtj|tjdƒtj|tjdƒn tj|tƒtj|tƒdS(Nis¸±±¾³É³¤NPCµÈ¼¶: %ss¸±±¾³É³¤NPCƽ¾ùµÈ¼¶: %ss¸±±¾³É³¤NPC×î´óµÈ¼¶: %ss¸±±¾³É³¤NPCÍæ¼ÒÈËÊý: %si(RR!RŽR~RmRtGetGameFBDictByKeyRtDef_FB_NPCStrengthenMaxLVR‚tDef_FB_NPCStrengthenAverageLVtGetLVtDef_FB_NPCStrengthenPlayerCntREtfbtTeamtFBCommontUpdFBLineNPCStrengthenLVtFalseRvtDef_Player_Dict_TeamFBAverageLVtDef_Player_Dict_TeamFBMaxLVtUpdFBLineNPCStrengthenPlayerCnttDef_Player_Dict_TeamFBPlayerCnttDef_FB_TeamPlayerCountRyR(RRˆR3tplayerIDt fbAverageLVtfbMaxLVt fbPlayerCnt((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR{sL       cCs‘tjdƒ}tj|ƒ}||kr|j|ƒ}|jtjƒ}|td|ƒ@s|td|ƒB}t    j
|tj|ƒqndS(NtMapID_FirstEnterRecordi( t ReadChConfigtGetEvalChConfigR—tGetRecordMapIDR5RvRt"Def_Player_Dict_FBFirstEnterRecordtpowRyR(RRdtneedRecordMapIDListt recordMapIDR5t    curRecordt    updRecord((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR}Ps cCs`tjdƒ}tj|ƒ}||kr.tS|j|ƒ}|jtjƒ}|t    d|ƒ@S(NR£i(
R¤R¥R—R¦R™R5RvRR§R¨(RRdR©RªR5R«((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyt GetHadEnterFB\s cCsÊtjƒ}|jƒ}|jƒ}|dksT|jƒtjksT|tjkrXdS||tjƒj    ƒ}|dkr‡|}ntj
d|j ƒ|f|j ƒƒ|j tjd|tƒdS(Nis.Íæ¼Ò = %sµÇ½µØÍ¼£¬Í¨ÖªÍæ¼ÒÀ뿪µØÍ¼µ¹¼ÆÊ± = %s(RRRt GetExistTimeR~RtDef_FBNoShowLeaveTimetDef_FBShowLeaveMapTick_MapIDRkt GetOpenFBTickREtGetNameRrt Sync_TimeTickRmt tttLeaveMapRp(RRRˆR‰t mapExistTimet    existTime((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRuls   !     &cCsKttjƒjƒƒ}tjtd|dfƒ}|rG||ƒndS(NsGameLogic_%s.%st DoFBTimeOut(RRRRRR(RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR·‡s
 cCsmtjƒ}|jƒdkr"dStjƒ}|jƒ}|jƒ}|dkrVdStjƒj|ƒdS(Nii(RRR~RkR tGetPlayerCountR!R„(RRRˆt    gameWorldt playerManagert playerCount((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyt __PlayerLeaveSetPlayerLogoffTick—s     c Cs§tjƒrLtjƒjƒ}tj|ƒ}tjƒ}|jƒ}i|jƒd6|j    ƒd6|j
ƒd6|d6tjƒjƒd6|j ƒd6|d6}|t j krtjƒ}tjƒ}|jt jƒ}|jt jƒ}    |ji|d6|d    6|d
6|    d 6ƒn|jƒr6|jƒ|d <ntjd ||ƒnttjƒjƒƒ}
tjtd|
dfƒ} | r–| ||ƒnt||ƒdS(NtPlayerIDt
PlayerNametAccIDRªRdt    realMapIDt    copyMapIDtfbZoneIDt fbFuncLineIDt playerZoneIDtplayerFuncLineIDtFactiont CrossFBExitsGameLogic_%s.%stDoExitFB(Rt IsCrossServerRRR—R¦Rkt GetCopyMapIDRŽt GetPlayerNametGetAccIDt GetRealMapIDRtDef_CrossDynamicLineMaptGetCrossDynamicLineMapZoneIDt GetCrossDynamicLineMapFuncLineIDRvt Def_Player_Dict_ReqCrossFBZoneIDt"Def_Player_Dict_ReqCrossFBFuncLinetupdatet
GetFactiontDataRecordPackt SendEventPackRRRR¼( RRRdR¹RÁtdataDictRÂRÃRÄRÅRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyt DoExitFBLogic©s,   *1  ,  cCs}|jƒ}tj|tƒtj|tƒttjƒjƒƒ}tj    t
d|dfƒ}|dkrpdS|||ƒS(NsGameLogic_%s.%stDoPlayerLeaveFB( RŽR—R˜RpRœRRRRRRR (RRRŸRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÙÌs  cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒS(NsGameLogic_%s.%stDoPlayerChangeMapLogic(RRRRRRR Rp(RRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÚàs
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒS(NsGameLogic_%s.%stCanPlayerLeaveFB(RRRRRRR Rp(RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÛís
 cCsTttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||||ƒS(NsGameLogic_%s.%stCanChangeSameDataMapFB(RRRRRRR R™(RRdtlineIDRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÜús
 cCsBt|ƒ}tjtd|dfƒ}|dkr8tS||ƒS(NsGameLogic_%s.%stOnCanGetAreaExp(RRRRR Rp(RRdRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÞs
  cCsTttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||||ƒS(NsGameLogic_%s.%st OnCanCollect(RRRRRRR Rp(RR6RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRßs
 cCs2tjƒ}||jkr.||jkr.tStS(N(RtGetCurrentTimethourtminuteRpR™(Rátminttoday((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyt __CheckTime's cCsŒ|dkrdStjƒ}|tjkr.nQ|tjkrZ|jƒd|krtSn%|tjkr|j|krtSnt    ||ƒS(Nii(
RRàRmtgmpDaytgmpWeektweekdayR™tgmpMonthtdayRå(tperiodtvalueRáRâRä((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyt__CheckOpenFBPeriod6s  cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||ƒS(NsGameLogic_%s.%st    OnCanOpenR (RRRRRRR (RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRîPs
 cCs%tjƒ}tjƒ}t|jƒƒ}|jƒtjkrñ|jƒrOdSt    |ƒ}|dkr×t
|j ƒ|j ƒ|j ƒ|jƒƒ rÇt
|j ƒ|jƒ|jƒ|jƒƒ rÇdS|jdƒn|rí|jdƒndStjtd|dfƒ}|sdS||ƒdS(NR isGameLogic_%s.%st    OnProcess(RRRkRRRlRmt
fbosClosedtGetFBFirstOpenRîRít    GetPeriodtGetPeriodValue1tGetPeriodHour1tGetPeriodMinute1tGetPeriodValue2tGetPeriodHour2tGetPeriodMinute2tSetFBFirstOpenRR(RRˆR¹Rt
openByTimeR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRï`s(     ..
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stOnBeginCollect(RRRRRR(RR6RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRûs
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%st OnExitCollect(RRRRRR(RR6RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRü•s
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%st OnCollecting(RRRRRR(RRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRý¡s
cCsXttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||||ƒdS(NsGameLogic_%s.%st OnCollectOK(RRRRRRR R™(RtnpcIDRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRþ­s  cCs‹tjƒjƒtjkrdSt}ttjƒjƒƒ}tjt    d|dfƒ}|dkrq|ƒ}n|r‡t j |ƒndS(NsGameLogic_%s.%stIsLeaveFBOnTeamChange( RRR~RmR–RpRRRRR Ryt PlayerLeaveFB(RRtisLeaveRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pytGameServer_LeaveFB¿s   cCs§ttjƒjƒƒ}tjtd|dfƒ}|dkrM|||ƒStjƒjƒtj    krxt
j |ƒn+tjƒjƒtj kr£t
j |ƒndS(NsGameLogic_%s.%st OnLeaveFamily( RRRRRRR R~Rmt    fbtFamilyRyRt fbtFamilyWar(RRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÖs  cCs\xUtjjƒD]D\}}|s(qntjtd|dfƒ}|r|ƒqqWdS(NsGameLogic_%s.%st OnServerStart(Rt Def_FB_MapIDtitemsRRR(tkeyt    mapIDListR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRäscCs_xXtjjƒD]G\}}|s(qntjtd|dfƒ}|r||ƒqqWdS(NsGameLogic_%s.%stOnMinute(RRR    RRR(tcurTimeR
R R ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR íscCs\xUtjjƒD]D\}}|s(qntjtd|dfƒ}|r|ƒqqWdS(NsGameLogic_%s.%stOnWeek(RRR    RRR(R
R R ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRöscCs\xUtjjƒD]D\}}|s(qntjtd|dfƒ}|r|ƒqqWdS(NsGameLogic_%s.%stOnDay(RRR    RRR(R
R R ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÿscCs\xUtjjƒD]D\}}|s(qntjtd|dfƒ}|r|ƒqqWdS(NsGameLogic_%s.%st OnWeekCross(RRR    RRR(R
R R ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRscCs\xUtjjƒD]D\}}|s(qntjtd|dfƒ}|r|ƒqqWdS(NsGameLogic_%s.%st
OnDayCross(RRR    RRR(R
R R ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRscCs_xXtjjƒD]G\}}|s(qntjtd|dfƒ}|r||ƒqqWdS(NsGameLogic_%s.%stOnFBPlayerOnWeek(RRR    RRR(Rt
onWeekTypeR
R R ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRscCs_xXtjjƒD]G\}}|s(qntjtd|dfƒ}|r||ƒqqWdS(NsGameLogic_%s.%stOnFBPlayerOnWeekCross(RRR    RRR(RR
R R ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR$scCs_xXtjjƒD]G\}}|s(qntjtd|dfƒ}|r||ƒqqWdS(NsGameLogic_%s.%stOnFBPlayerOnDay(RRR    RRR(Rt    onDayTypeR
R R ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR.scCs_xXtjjƒD]G\}}|s(qntjtd|dfƒ}|r||ƒqqWdS(NsGameLogic_%s.%stOnFBPlayerOnDayCross(RRR    RRR(RR
R R ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR7scCsMxFtjjƒD]5}tjtd|dfƒ}|r||ƒqqWdS(NsGameLogic_%s.%stOnFBPlayerOnLogin(RRtkeysRRR(RR
R ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRAs
cCsUttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒdS(NsGameLogic_%s.%stOnHour(RRRRRRR R™(ttimeRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRMs   cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stCheckPlayersRelation_IsNone(RRRRRRR R™(Rt curTagPlayerRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pytCheckPlayersRelationInFB_IsNoneas
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stCheckPlayersRelation_IsFriend(RRRRRRR R™(RRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyt!CheckPlayersRelationInFB_IsFriendqs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stDoCanAttackTeamer(RRRRRRR R™(RRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR!s
 cCs[tjƒjƒ}t|ƒ}tjtd|dfƒ}|dkrJtS|||ƒdS(NsGameLogic_%s.%stOnSetRebornPlace(RRRRRRR Rp(RtbornListRdRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyt OnRebornPlace”s   cCsdttjƒjƒƒ}tjtd|dfƒ}|s>iS|||ƒ}t|tƒs`iS|S(NsGameLogic_%s.%stGetFBNPCStrengthenAttr(RRRRRRt
isinstancetdict(R6tisRebornRR tret((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR%»scCsNttjƒjƒƒ}tjtd|dfƒ}|sAtjS|||ƒS(NsGameLogic_%s.%stGetFBPrepareTime(RRRRRRRtDef_DigMaxTime(RR6RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR*Îs
cCsKttjƒjƒƒ}tjtd|dfƒ}|s>dS|||ƒS(NsGameLogic_%s.%st    OnFBAddHP(RRRRRR(RtaddHPRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR,Ùs
cCsKttjƒjƒƒ}tjtd|dfƒ}|s>dS|||ƒS(NsGameLogic_%s.%st
OnFBLostHP(RRRRRR(RtlostHPRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR.äs
cCsQttjƒjƒƒ}tjtd|dfƒ}|sGtj|ƒS||ƒS(NsGameLogic_%s.%st OnGetFBCurHP(RRRRRRRGRH(RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR0ïs
 cCshtjƒ}|jƒtjgkr(tStjƒr8tStjƒj|j    ƒƒrWtSt
j |ƒt S(N( RRR~RmRR™RÉR!R…RrRyRRp(RRRˆ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pytPlayerLoginInFBCheckÿs   cCsWttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||||ƒS(NsGameLogic_%s.%st    OnCanMove(RRRRRRR Rp(RtdestXtdestYRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyt DoFBCanMoves
 cCsCtj|ƒ}x-tjjƒD]\}}||kr|SqW|S(N(R—R¦RRR    (RdR
Rì((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR's
 cCsTttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||||ƒS(NsGameLogic_%s.%st OnGMCommand(RRRRRRR R™(RtinputStrRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR6;s
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%st OnPlayerSight(RRRRRRR R™(RRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR8Ks
 cCsKttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|ƒS(NsGameLogic_%s.%stOnPlayerReborn(RRRRRRR R™(RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR9Zs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stOnPlayerRebornOver(RRRRRRR R™(RtplayerRebornTypeRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR:es
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒS(NsGameLogic_%s.%stDecFreeRebornCount(RRRRRRR R™(RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR<ss
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%st OnCanFBReborn(RRRRRRR Rp(RRiRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR=}s
 cCsTttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||||ƒS(NsGameLogic_%s.%stOnResetFBRebornPlacePos(RRRRRRR (Rt rebornPlaceRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR>Œs
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDgS||ƒS(NsGameLogic_%s.%stGetFBRobotCanAtkObjTypeIDList(RRRRRRR (R6RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR@–s
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||ƒS(NsGameLogic_%s.%stGetFBRobotRandomMovePos(RRRRRRR (R6RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRA¢s
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|||ƒS(NsGameLogic_%s.%stOnRandomRobotJob(RRRRRRR (R6tlineRobotJobDictRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRB­s
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒS(NsGameLogic_%s.%stOnGivePrizeByLastHurt(RRRRRRR R™(R6RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRD½s
 cCsKttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|ƒS(NsGameLogic_%s.%stOnKillNPCGiveAllExp(RRRRRRR R™(RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyREËs
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||ƒS(NsGameLogic_%s.%stOnGetOuterExpRatei(RRRRRRR (RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRFÖs
 cCsTttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||||ƒS(NsGameLogic_%s.%stOnGetExp(RRRRRRR R™(RtaddExpt expViewTypeRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRGås
 cCsNt|ƒ}tjtd|dfƒ}|dkr8dS||||||ƒS(NsGameLogic_%s.%stOnPlayerFBSweepAsk(RRRRR (RRdRÝtcnttdataExRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRJïs
  cCsQt|ƒ}tjtd|dfƒ}|dkr8tS|||||||ƒS(NsGameLogic_%s.%stOnPlayerFBSweepResult(RRRRR R™(RRdRÝRKRLtaskRetRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRMüs
  cCsNt|ƒ}tjtd|dfƒ}|dkr8tS||||||ƒS(NsGameLogic_%s.%stOnStartPubCDFBSweep(RRRRR R™(RRdRÝRKRLRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyROs
  cCsNt|ƒ}tjtd|dfƒ}|dkr8tS||||||ƒS(NsGameLogic_%s.%stOnGivePubCDFBSweepPrize(RRRRR R™(RRdRÝRKRLRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRPs
  cCsHt|ƒ}tjtd|dfƒ}|dkr8dS||||ƒS(sѸ±±¾¿ìËÙ¹ý¹ØÑéÖ¤
    @param mapID: Êý¾ÝµØÍ¼ID
    @param lineID: Ä¿±ê¹Ø¿¨Ïß·ID£¬¿ÉÒ»´ÎÐÔÌø¶à¹Ø£¬¸ù¾Ý¹¦ÄÜÓÉǰ¶Ë·¢°ü¾ö¶¨»òºó¶ËÖ±½Ó¾ö¶¨
    @return: (lineID, quickCnt, quickFightPower, quickData) »ò  None
    @note: lineID Óɺó¶Ë¾ö¶¨µÄ¿ìËÙ¹ý¹Øµ½ÄÄ£¬Èç¹ûǰ¶Ë¾ö¶¨µÄÔòÖ±½Ó·µ»Ø lineID
    @note: quickCnt ±¾´Î×ܹ²Ìø¹ý¼¸¹Ø 
    @note: quickFightPower Ä¿±êÕóÈÝÕ½Á¦£¬ÓÃÓÚÑéÖ¤Õ½Á¦ÊÇ·ñÂú×ã¿ìËÙ¹ý¹Ø
    @note: quickData À©Õ¹Êý¾Ý£¬¹¦ÄÜ×Ô¶¨Ò壬´«¸ø OnPlayerFBQuickPassResult
    sGameLogic_%s.%stOnPlayerFBQuickPassN(RRRRR (RRdRÝRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRQs
 
 cCsKt|ƒ}tjtd|dfƒ}|dkr8dS|||||ƒS(s¸±±¾¿ìËÙ¹ý¹Ø½á¹û
    sGameLogic_%s.%stOnPlayerFBQuickPassResultN(RRRRR (RRdRÝt    quickDataRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRR1s
  cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|||ƒS(NsGameLogic_%s.%stOnChangeMapAsk(RRRRRRR (taskRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRTDs
 cCsKt|ƒ}tjtd|dfƒ}|dkr8tS|||||ƒS(NsGameLogic_%s.%stOnEnterFBEvent(RRRRR Rp(RRdRÝRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRVVs
  c CsÙt|ƒ}tjtd|dfƒ}|dkr=|}n||||||ƒ}|s_dS|d \}}    t|ƒdkr‹|dnd}
|
dkr§||    fStj||
||
ƒtj|    |
|    |
ƒfS(NsGameLogic_%s.%stOnGetFBEnterPosii(RRRRR tlentrandomtrandint( RRdtlineIdtipyEnterPosInfoRRR tposInfotenterXtenterYtdist((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRWgs      " 
cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stOnForbidUseSkill(RRRRRRR R™(RRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRa‚s
 cCsTttjƒjƒƒ}tjtd|dfƒ}|rP|||||ƒndS(NsGameLogic_%s.%stDoFBAttackedOver(RRRRRR(RttargettcurSkillRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRb“s
cCsTttjƒjƒƒ}tjtd|dfƒ}|rP|||||ƒndS(NsGameLogic_%s.%stDoBeAttackOver(RRRRRR(R`RaRdRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRe£s
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%st    DoUseItem(RRRRRR(RtcurEffIDRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRf³s
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stDoBuffDisAppear(RRRRRR(tcurObjRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRhÂs
cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||ƒS(NsGameLogic_%s.%st DoPlayerDead(RRRRRRR (RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRjÐs
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒS(NsGameLogic_%s.%stDoNotifyReBorn(RRRRRRR R™(RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRkßs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stDoFBAttackHasPunish(RRRRRRR Rp(RRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRlîs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stDoFBForbidUseItem(RRRRRRR R™(RtcurItemRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRmýs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stDoFBForbidReborn(RRRRRRR R™(Rt rebornTypweRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRo s
 cCsEt|ƒ}tjtd|dfƒ}|dkr8dS|||ƒS(NsGameLogic_%s.%stGetPlayerResetWorldPosFBMsgR(RRRRR (Rt
resetMapIDR[RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRqs
  cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|||ƒS(NsGameLogic_%s.%st DoFBRebornNPC(RRRRRRR (R6RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRs+s
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|||ƒS(NsGameLogic_%s.%stDoFBRebornSummonNPC(RRRRRRR (R6RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRt;s
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrM|||ƒStS(NsGameLogic_%s.%stCheckCanAttackTagObjInFB(RRRRRRR Rp(R`RaRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRuJs
  cCsTttjƒjƒƒ}tjtd|dfƒ}|dkrP||||ƒStS(NsGameLogic_%s.%stDoFBOnKill_Player_ValuePrize(RRRRRRR Rp(R`RaRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRvZs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%st OnPickUpItem(RRRRRR(RRnRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pytOnFBPickUpItemis
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%st OnFBGetMoney(RRRRRR(Rt    moneyTypet
moneyCountRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRyxs
cCsHttjƒjƒƒ}tjtd|dfƒ}|s>dS||ƒS(NsGameLogic_%s.%stOnGetNPCDropMoneyi(RRRRRR(RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR|…s
cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||ƒS(NsGameLogic_%s.%stOnGetOuterMoneyRatei(RRRRRRR (RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR}“s
 cCsTttjƒjƒƒ}tjtd|dfƒ}|rP|||||ƒndS(NsGameLogic_%s.%st
DoFBAction(RRRRRR(Rt
actionTypet
actionInfoRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR~¤s
cCs?t|ƒ}tjtd|dfƒ}|r;|||ƒSdS(NsGameLogic_%s.%stGetPlayerFBLineID(RRRR(RRdRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR´s
  cCs<t|ƒ}tjtd|dfƒ}|r8||ƒSdS(NsGameLogic_%s.%stGetFBLineMaxPlayerCounti(RRRR(RdRÝRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR‚Äs
 
cCsEttjƒjƒƒ}tjtd|dfƒ}|rA|ƒStS(NsGameLogic_%s.%stIsFBActivityUnderway(RRRRRRR™(RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRƒÓs
cCsTttjƒjƒƒ}tjtd|dfƒ}|rP||||||ƒStS(NsGameLogic_%s.%stOnHurtValueOrder(RRRRRRR™(RRÿt    hurtValuetordert giveItemListRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR„ás
cCsKttjƒjƒƒ}tjtd|dfƒ}|rG|||ƒSdS(NsGameLogic_%s.%stGetFBPlayerHurtNPCMultiValuei(RRRRRR(RR6RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRˆìs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%stDoFB_Player_HurtNPC(RRRRRR(RR6thurtHPRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR‰üs
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%stDoFB_NPC_HurtNPC(RRRRRR(RR6RŠRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR‹ s
cCsHttjƒjƒƒ}tjtd|dfƒ}|rD||ƒSdS(NsGameLogic_%s.%stGetNPCItemProtectFactioni(RRRRRR(R6RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRŒs
 
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%stOnBossHurtListClear(RRRRRR(tobjIDRÿt sortHurtListRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR*s
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%stOnBossKilledHurtList(RRRRRR(RŽRÿRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR9s
cCsfttjƒjƒƒ}tjtd|dfƒ}|rbtjƒjƒ}|||||ƒndS(NsGameLogic_%s.%st OnPVPDamage(RRRRRRRktGetTick(Rt damageValuet    tagPlayerRR R((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR‘Ds cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stOnCloseNPCRefresh(RRRRRR(t refreshMarkRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR•Rs
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stOnTDCurWheelOver(RRRRRR(R–RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR—_s
cCsKttjƒjƒƒ}tjtd|dfƒ}|rG||ƒndS(NsGameLogic_%s.%stOnTDAllWheelOver(RRRRRR(RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR˜ls
 cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stOnTDNPCReachTheGoal(RRRRRR(R6RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR™xs
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stOnPointRefresh(RRRRRR(tstepRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRš…s
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ||||ƒStS(NsGameLogic_%s.%stOnCanMoveTouchNPC(RRRRRRRp(RR6RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRœs
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%stOnMoveTouchNPC(RRRRRR(RR6RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR™s
cCsHt|ƒ}tjtd|dfƒ}|dkr8tS||||ƒS(NsGameLogic_%s.%stOnRegEnterCrossFB(RRRRR Rp(RRdRÝRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRž¥s
  cCsKt|ƒ}tjtd|dfƒ}|dkr8dS|||||ƒS(NsGameLogic_%s.%st OnEndCrossFB(RRRRR (RRdRÝtexDataRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRŸ°s
  cCsKttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|ƒS(NsGameLogic_%s.%stOnGetCrossFuncLineDataCache(RRRRRRR (RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR¡»s
 c    CsZt|ƒ}tjtd|dfƒ}|dkr>t|fS||||||||ƒS(NsGameLogic_%s.%stOnTurnFightRequest(RRRRR Rp(    RRdt
funcLineIDttagTypettagIDt    valueListt    reqExDictRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR¢Âs
 
c    CsTt|ƒ}tjtd|dfƒ}|dkr8tS||||||||ƒS(NsGameLogic_%s.%stOnTurnFightRequestCross(RRRRR Rp(    t crossPlayerRdR£R¤R¥R¦R§RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR¨Ðs
  cCsHt|ƒ}tjtd|dfƒ}|dkr8dS||||ƒS(NsGameLogic_%s.%stGetFBNPCLineupIpyData(RRRRR (RRdR£RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRªÚs
  cCsHt|jƒ}tjtd|dfƒ}|dkr;dS|||ƒS(NsGameLogic_%s.%stGetFBNPCInitAttr(RRdRRRR (t    turnFighttnpcObjRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR«ås
 cCsNt|jƒ}tjtd|dfƒ}|dkr;tS|||||ƒS(NsGameLogic_%s.%stOnFBNPCKilledBefore(RRdRRRR Rp(R¬tgameObjtkillertuseSkillRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR®ïs
 cCsNt|ƒ}tjtd|dfƒ}|rJ|||||||ƒndS(NsGameLogic_%s.%stOnPlayerLineupAttackResult(RRRR(RtatkObjt killObjListR±RdR£RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR²ûs
 cCsKt|ƒ}tjtd|dfƒ}|dkr8dS|||||ƒS(NsGameLogic_%s.%stOnTurnFightOver(RRRRR (R¬RdR£tstatMsgRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRµ    s
  c    
CsZt|ƒ}    tjtd|    dfƒ}
|
dkr8dS|
|||||||||ƒ    S(NsGameLogic_%s.%stOnTurnFightAward(RRRRR ( RtguidRdR£t
winFactionR¶tdateStrtreqDatat    awardDictRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR·    s
  c Cs`t|ƒ} tjtd| dfƒ} | dkr8tS| ||||||||||    |
ƒ S(NsGameLogic_%s.%stOnTurnFightAwardCross(RRRRR Rp( R©R¸RdR£R¤R¥R¦R§R¹R¶R¼RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR½    s
  cCsNt|ƒ}tjtd|dfƒ}|dkr8dS||||||ƒS(NsGameLogic_%s.%stC2S_TurnFightAwardAfter(RRRRR (RŸRdR£tisWint    afterDictRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR¾+    s
  (¢RRR'RRmRyRsRÕR¤R—RGRYt    ImportAllRR    R
RCRDR+RIRRRSRTRVR[R\R]R^R_RbRcReRfRgRhRjRoRqRR|R{R}R­RuR·R¼RØRÙRÚRÛRÜRÞRßRåRíRîRïRûRüRýRþRRRR RRRRRRRRRRRR R!R$R%R*R,R.R0R1R5RR6R8R9R:R<R=R>R@RARBRDRERFRGRJRMRORPRQRRRTRVRWRaRbReRfRhRjRkRlRmRoRqRsRtRuRvRxRyR|R}R~RR‚RƒR„RˆR‰R‹RŒRRR‘R•R—R˜R™RšRœRRžRŸR¡R¢R¨RªR«R R®R²RµR·R½R¾(((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyt<module>sB                         4                                                                                            1         3                         #                                           -                                                                      
            
            
                         '