hxp
3 天以前 8e76a6859474df07c12e0b4ff0ea3bfd321675eb
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
¢(ƒ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’dddŒ„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  cCsRttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒdS(NsGameLogic_%s.%stOnWeek(RRRRRRR R™(RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRès  
cCsRttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒdS(NsGameLogic_%s.%stOnDay(RRRRRRR R™(RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRøs  
cCs_xXtjjƒD]G\}}|s(qntjtd|dfƒ}|r||ƒqqWdS(NsGameLogic_%s.%stOnFBPlayerOnDay(Rt Def_FB_MapIDtitemsRRR(Rt    onDayTypetkeyt    mapIDListR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR    scCsMxFtjjƒD]5}tjtd|dfƒ}|r||ƒqqWdS(NsGameLogic_%s.%stOnFBPlayerOnLogin(RR
tkeysRRR(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.pyRs   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_IsNone0s
 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_IsFriend@s
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stDoCanAttackTeamer(RRRRRRR R™(RRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRPs
 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 OnRebornPlacecs   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¦RR
R (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.pyR-
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.pyR/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.pyR0)s
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stOnPlayerRebornOver(RRRRRRR R™(RtplayerRebornTypeRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR14s
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒS(NsGameLogic_%s.%stDecFreeRebornCount(RRRRRRR R™(RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR3Bs
 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.pyR4Ls
 cCsTttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||||ƒS(NsGameLogic_%s.%stOnResetFBRebornPlacePos(RRRRRRR (Rt rebornPlaceRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR5[s
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDgS||ƒS(NsGameLogic_%s.%stGetFBRobotCanAtkObjTypeIDList(RRRRRRR (R6RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR7es
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||ƒS(NsGameLogic_%s.%stGetFBRobotRandomMovePos(RRRRRRR (R6RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR8qs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|||ƒS(NsGameLogic_%s.%stOnRandomRobotJob(RRRRRRR (R6tlineRobotJobDictRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR9|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.pyR=¥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.pyR>´s
 cCsNt|ƒ}tjtd|dfƒ}|dkr8dS||||||ƒS(NsGameLogic_%s.%stOnPlayerFBSweepAsk(RRRRR (RRdRÝtcnttdataExRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRA¾s
  cCsQt|ƒ}tjtd|dfƒ}|dkr8tS|||||||ƒS(NsGameLogic_%s.%stOnPlayerFBSweepResult(RRRRR R™(RRdRÝRBRCtaskRetRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRDËs
  cCsNt|ƒ}tjtd|dfƒ}|dkr8tS||||||ƒS(NsGameLogic_%s.%stOnStartPubCDFBSweep(RRRRR R™(RRdRÝRBRCRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRF×s
  cCsNt|ƒ}tjtd|dfƒ}|dkr8tS||||||ƒS(NsGameLogic_%s.%stOnGivePubCDFBSweepPrize(RRRRR R™(RRdRÝRBRCRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRGâ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.pyRHì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.pyRIs
  cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|||ƒS(NsGameLogic_%s.%stOnChangeMapAsk(RRRRRRR (taskRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRKs
 cCsKt|ƒ}tjtd|dfƒ}|dkr8tS|||||ƒS(NsGameLogic_%s.%stOnEnterFBEvent(RRRRR Rp(RRdRÝRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRM%s
  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.pyRN6s      " 
cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stOnForbidUseSkill(RRRRRRR R™(RRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRXQs
 cCsTttjƒjƒƒ}tjtd|dfƒ}|rP|||||ƒndS(NsGameLogic_%s.%stDoFBAttackedOver(RRRRRR(RttargettcurSkillRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRYbs
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\rs
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%st    DoUseItem(RRRRRR(RtcurEffIDRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR]‚s
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stDoBuffDisAppear(RRRRRR(tcurObjRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR_‘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.pyRaŸ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.pyRb®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.pyRc½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.pyRdÌ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.pyRfÛs
 cCsEt|ƒ}tjtd|dfƒ}|dkr8dS|||ƒS(NsGameLogic_%s.%stGetPlayerResetWorldPosFBMsgR(RRRRR (Rt
resetMapIDRRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRhì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.pyRjús
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|||ƒS(NsGameLogic_%s.%stDoFBRebornSummonNPC(RRRRRRR (R6RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRk
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.pyRls
  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.pyRm)s
 cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%st OnPickUpItem(RRRRRR(RReRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pytOnFBPickUpItem8s
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.pyRpGs
cCsHttjƒjƒƒ}tjtd|dfƒ}|s>dS||ƒS(NsGameLogic_%s.%stOnGetNPCDropMoneyi(RRRRRR(RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRsTs
cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||ƒS(NsGameLogic_%s.%stOnGetOuterMoneyRatei(RRRRRRR (RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRtbs
 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.pyRuss
cCs?t|ƒ}tjtd|dfƒ}|r;|||ƒSdS(NsGameLogic_%s.%stGetPlayerFBLineID(RRRR(RRdRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRxƒ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.pyRy“s
 
cCsEttjƒjƒƒ}tjtd|dfƒ}|rA|ƒStS(NsGameLogic_%s.%stIsFBActivityUnderway(RRRRRRR™(RR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRz¢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;s
 cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stOnTDNPCReachTheGoal(RRRRRR(R6RRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRGs
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stOnPointRefresh(RRRRRR(tstepRRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR‘Ts
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”hs
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•ts
  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
 
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štoverMsgRR ((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
winFactiontstatMsgtdateStrtreqDatat    awardDictRR ((snD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR«Ös
  (˜RRR'RRmRyRsRÕR¤R—RGRPt    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þRRRRR    RRRRRRRR!R#R%R'R(R,RR-R/R0R1R3R4R5R7R8R9R;R<R=R>RARDRFRGRHRIRKRMRNRXRYR\R]R_RaRbRcRdRfRhRjRkRlRmRoRpRsRtRuRxRyRzR{RR€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                         #                                           -                                      
                         '