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
édËic@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–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.%stOnWeek(Rt Def_FB_MapIDtitemsRRR(tkeyt    mapIDListR ((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
OnDayCross(RRR    RRR(R
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.%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.pyRscCsMxFtjjƒD]5}tjtd|dfƒ}|r||ƒqqWdS(NsGameLogic_%s.%stOnFBPlayerOnLogin(RRtkeysRRR(RR
R ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRs
cCsUttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒdS(NsGameLogic_%s.%stOnHour(RRRRRRR R™(ttimeRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR)s   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_IsNone=s
 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_IsFriendMs
 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 OnRebornPlaceps   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.pyR+Ë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 DoFBCanMoveõs
 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.pyRs
 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.pyR1s
 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.pyR3's
 cCsKttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|ƒS(NsGameLogic_%s.%stOnPlayerReborn(RRRRRRR R™(RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR46s
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stOnPlayerRebornOver(RRRRRRR R™(RtplayerRebornTypeRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR5As
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒS(NsGameLogic_%s.%stDecFreeRebornCount(RRRRRRR R™(RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR7Os
 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.pyR8Ys
 cCsTttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||||ƒS(NsGameLogic_%s.%stOnResetFBRebornPlacePos(RRRRRRR (Rt rebornPlaceRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR9hs
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDgS||ƒS(NsGameLogic_%s.%stGetFBRobotCanAtkObjTypeIDList(RRRRRRR (R6RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR;rs
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||ƒS(NsGameLogic_%s.%stGetFBRobotRandomMovePos(RRRRRRR (R6RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR<~s
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|||ƒS(NsGameLogic_%s.%stOnRandomRobotJob(RRRRRRR (R6tlineRobotJobDictRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR=‰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.pyR?™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.pyR@§s
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||ƒS(NsGameLogic_%s.%stOnGetOuterExpRatei(RRRRRRR (RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRA²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.pyRBÁs
 cCsNt|ƒ}tjtd|dfƒ}|dkr8dS||||||ƒS(NsGameLogic_%s.%stOnPlayerFBSweepAsk(RRRRR (RRdRÝtcnttdataExRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyREËs
  cCsQt|ƒ}tjtd|dfƒ}|dkr8tS|||||||ƒS(NsGameLogic_%s.%stOnPlayerFBSweepResult(RRRRR R™(RRdRÝRFRGtaskRetRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRHØs
  cCsNt|ƒ}tjtd|dfƒ}|dkr8tS||||||ƒS(NsGameLogic_%s.%stOnStartPubCDFBSweep(RRRRR R™(RRdRÝRFRGRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRJäs
  cCsNt|ƒ}tjtd|dfƒ}|dkr8tS||||||ƒS(NsGameLogic_%s.%stOnGivePubCDFBSweepPrize(RRRRR R™(RRdRÝRFRGRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRKïs
  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.pyRLùs
 
 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.pyRM s
  cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|||ƒS(NsGameLogic_%s.%stOnChangeMapAsk(RRRRRRR (taskRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRO s
 cCsKt|ƒ}tjtd|dfƒ}|dkr8tS|||||ƒS(NsGameLogic_%s.%stOnEnterFBEvent(RRRRR Rp(RRdRÝRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRQ2s
  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.pyRRCs      " 
cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stOnForbidUseSkill(RRRRRRR R™(RRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR\^s
 cCsTttjƒjƒƒ}tjtd|dfƒ}|rP|||||ƒndS(NsGameLogic_%s.%stDoFBAttackedOver(RRRRRR(RttargettcurSkillRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR]os
cCsTttjƒjƒƒ}tjtd|dfƒ}|rP|||||ƒndS(NsGameLogic_%s.%stDoBeAttackOver(RRRRRR(R`RaR_RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR`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.pyRas
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stDoBuffDisAppear(RRRRRR(tcurObjRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRcž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.pyRe¬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.pyRf»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.pyRgÊ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.pyRhÙ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.pyRjès
 cCsEt|ƒ}tjtd|dfƒ}|dkr8dS|||ƒS(NsGameLogic_%s.%stGetPlayerResetWorldPosFBMsgR(RRRRR (Rt
resetMapIDRVRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRlùs
  cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|||ƒS(NsGameLogic_%s.%st DoFBRebornNPC(RRRRRRR (R6RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRns
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|||ƒS(NsGameLogic_%s.%stDoFBRebornSummonNPC(RRRRRRR (R6RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRos
 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.pyRp&s
  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.pyRq6s
 cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%st OnPickUpItem(RRRRRR(RRiRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pytOnFBPickUpItemEs
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.pyRtTs
cCsHttjƒjƒƒ}tjtd|dfƒ}|s>dS||ƒS(NsGameLogic_%s.%stOnGetNPCDropMoneyi(RRRRRR(RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRwas
cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||ƒS(NsGameLogic_%s.%stOnGetOuterMoneyRatei(RRRRRRR (RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRxos
 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.pyRy€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‹s
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Œ s 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.s
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“Hs
 cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stOnTDNPCReachTheGoal(RRRRRR(R6RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR”Ts
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stOnPointRefresh(RRRRRR(tstepRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR•as
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ||||ƒStS(NsGameLogic_%s.%stOnCanMoveTouchNPC(RRRRRRRp(RR6RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR—ks
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%stOnMoveTouchNPC(RRRRRR(RR6RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR˜us
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
 cCsWt|ƒ}tjtd|dfƒ}|dkr>t|fS|||||||ƒS(NsGameLogic_%s.%stOnTurnFightRequest(RRRRR Rp(RRdt
funcLineIDttagTypettagIDt    valueListRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRžs
 
cCsQt|ƒ}tjtd|dfƒ}|dkr8tS|||||||ƒS(NsGameLogic_%s.%stOnTurnFightRequestCross(RRRRR Rp(t crossPlayerRdRž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.%stGetFBNPCLineupInfo(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
    CsWt|ƒ}tjtd|dfƒ}    |    dkr8tS|    ||||||||ƒS(NsGameLogic_%s.%stOnTurnFightAwardCross(RRRRR Rp(
R£R²RdRž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—RGRTt    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 R RRRRRRRRRR R%R'R)R+R,R0RR1R3R4R5R7R8R9R;R<R=R?R@RARBRERHRJRKRLRMRORQRRR\R]R`RaRcReRfRgRhRjRlRnRoRpRqRsRtRwRxRyR|R}R~RRƒ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>s:                         4                                                                                            1         3                         #                                           -                                              
            
    
                         '