hwj35
2025-06-23 aa0f971ae9a59f0fd98d57b6c1d1663a270be92c
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
xLjgc@srddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZejddƒejddƒd„Zd„Zd„Zd„Zd    „Zd
„Zd „Zd „Zd „Zd„Zdigd„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(„Z6d)„Z7d*„Z8d+„Z9d,„Z:d-„Z;d.„Z<d/„Z=d0„Z>d1„Z?d2„Z@d3„ZAd4„ZBd5„ZCd6„ZDd7„ZEd8„ZFd9„ZGd:„ZHd;„ZId<„ZJd=„ZKd>„ZLd?„ZMd@„ZNdA„ZOdB„ZPdC„ZQdD„ZRdE„ZSdF„ZTdG„ZUdH„ZVdI„ZWdJ„ZXdK„ZYdL„ZZdM„Z[dN„Z\dO„Z]dP„Z^dQ„Z_dR„Z`dS„ZadT„ZbdU„ZcdV„ZddW„ZedX„ZfdY„ZgdZ„Zhd[„Zid\„Zjd]„Zkd^„Zld_„Zmd`„Znda„Zodb„Zpdc„Zqdd„Zrde„Zsdf„Ztdg„Zudh„Zvdi„Zwdj„Zxdk„Zydl„Zzdm„Z{dn„Z|do„Z}dp„Z~dq„Zdr„Z€ds„Zdt„Z‚du„Zƒdv„Z„dw„Z…dx„Z†dy„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¡d”„Z¢d•„Z£d–„Z¤d—„Z¥d˜„Z¦d™„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((soE:\SnxxServerCode\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((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR    :s
    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((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR
Ys8 
 
    cCsk|jƒdkrdSxNt|jƒƒD]:}|j|ƒ}|j|ƒ}|j|tj|ƒq)WdS(Ni(R$RtGetChangeMapTakeNPCCounttGetChangeMapTakeNPCIDByIndextGetChangeMapTakeNPCCountByIndextRefreshRtDef_NormalNPCAngryCount(RRRRtcurNPCIDt curNPCCount((soE:\SnxxServerCode\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 ((soE:\SnxxServerCode\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((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR+±s !
 cCsTtj|ƒ}|jƒtj|ƒ}tj|ƒ|krPtj||ƒndS(N(R'RJt ResetNPC_InitRGtGetMaxHPRHtSetHP(R6RLt curNPCMaxHP((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRI¿s 
cCsKttjƒjƒƒ}tjtd|dfƒ}|rG||ƒndS(NsGameLogic_%s.%stDoFBInit(RRRRRR(RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pytOnInitÒs
 cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stDoFBOnKill_NPC(RRRRRR(RRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRSãs
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stDoFB_OnAchieveTask(RRRRRR(Rt    isAchieveRR ((soE:\SnxxServerCode\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 ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRVs
cCsŒtj|ƒ}tj|ƒ}|r;t||||ƒdSttjƒjƒƒ}tjt    d|dfƒ}|rˆ||||ƒndS(NsGameLogic_%s.%stDoFB_Player_KillNPC(
t PlayerControltGetCustomMapIDtGetCustomLineIDtDoCustomScene_Player_KillNPCRRRRRR(RR6RtmapIDtlineIDRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR[scCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stDoFB_NPCSelfDestruction(RRRRRR(R6RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRb's
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stDoFB_DropOwner(RRRRRR(RR6RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRc8s
cCsHttjƒjƒƒ}tjtd|dfƒ}|rD||ƒSdS(NsGameLogic_%s.%stGetFBEveryoneDropInfo(RRRRRR(R6RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRdCs
 
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%stDoFB_Npc_KillNPC(RRRRRR(tattackertdefenderRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyReUs
cCsKttjƒjƒƒ}tjtd|dfƒ}|rG||ƒndS(NsGameLogic_%s.%st DoFB_NPCDead(RRRRRR(R6RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRhbs
 cCsltj|ƒ}|s*tjƒjƒ}nt|ƒ}tjtd|dfƒ}|rh||||ƒSdS(NsGameLogic_%s.%stDoFBOnKill_Player(R\R]RRRRRR(RRgRR`RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRirs cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ||||ƒSdS(NsGameLogic_%s.%stDoFBOnNPCKill_Player(RRRRRR(R6RRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRj€s
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ||||ƒSdS(NsGameLogic_%s.%stDoFBOnHit_Player(RRRRRR(RRgRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRk‘s
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ||||ƒSdS(NsGameLogic_%s.%stDoFB_Player_HitNPC(RRRRRR(RRgRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRl¢s
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%st DoFBOnReborn(RRRRRR(Rt
rebornTypeRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRm²s
cCsKttjƒjƒƒ}tjtd|dfƒ}|rG|||ƒSdS(NsGameLogic_%s.%st DoGetFBState(RRRRRR(RRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRoÂs
 cCsjtjƒjƒtjkrdSttjƒjƒƒ}tjt    d|dfƒ}|rf|||ƒSdS(NsGameLogic_%s.%stDoFBHelp(
Rt GetGameWorldt GetOpenStatet IPY_GameWorldtfbosOpenRRRRR(RRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRpÒs cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒS(NsGameLogic_%s.%stOnNPCRebornInFB(RRRRRRR tTrue(R6RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRuàs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%st    OnCanTalk(RRRRRRR Rv(RRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRwïs
 cCsˆ|jƒ}tjƒrtjƒjƒ}tj|ƒ}tjƒ}|jƒ}i|j    ƒd6|j
ƒd6|j ƒd6|d6tjƒjƒd6|j ƒd6|d6}|t jkrÅtjƒ}tjƒ}|jt jƒ}    |jt jƒ}
||    ks||
kry|t jgkrytjd||    ||
f|ƒtj|ƒ|jid    d
6ƒtjd ||ƒdStjd ||    ||
f|ƒ|ji|d 6|d6|    d6|
d6ƒn|tjkräitj|<ntj|} tj|ƒ| |<tjd ||ƒnt j!|ƒt"||ƒtjƒ} | jƒ} |jt j#ƒ}|jt j$ƒ}tj%|||ƒt&|| ƒt'j(|| |ƒt)||ƒt*|| ƒ| j+ƒt,j-krÖdSt.j/|ƒt.j0|ƒkrt.j1|ƒntj2ƒ}| j+ƒt,j3kr;|j4t j5|ƒn|j6dƒt7j8|t9j:d| gƒ|j;|ƒrwdS|j<|ƒdS(NtPlayerIDt
PlayerNametAccIDt recordMapIDR`t    realMapIDt    copyMapIDs}DoEnterFB Íæ¼ÒÓ뵱ǰ¸±±¾Ïß·ËùÊô·ÖÇø»ò¹¦ÄÜ·ÖÏß²»Í¬£¬Ìß³öÍæ¼Ò£¡fbZoneID=%s,playerZoneID=%s,fbFuncLineID=%s,playerFuncLineID=%stzoneLineIDErrortErrort CrossFBEnters_Íæ¼Ò½øÈë¿ç·þ¸±±¾¶¯Ì¬·ÖÅäµÄÏß·: fbZoneID=%s,playerZoneID=%s,fbFuncLineID=%s,playerFuncLineID=%stfbZoneIDt fbFuncLineIDt playerZoneIDtplayerFuncLineIDii(=tGetIDRt IsCrossServerRRtFBCommontGetRecordMapIDRqt GetCopyMapIDt GetPlayerIDt GetPlayerNametGetAccIDt GetRealMapIDRtDef_CrossDynamicLineMaptGetCrossDynamicLineMapZoneIDt GetCrossDynamicLineMapFuncLineIDtNomalDictGetPropertyt Def_Player_Dict_ReqCrossFBZoneIDt"Def_Player_Dict_ReqCrossFBFuncLinetDef_FBMapID_CrossChampionshiptErrLogtCrossRealmPlayertPlayerExitCrossServertupdatetDataRecordPackt SendEventPackREt
PyGameDatatg_crossPlayerServerGroupIDInfoR\tGetPlayerServerGroupIDtGameWorldProcesst EnterOpenFBtSync_LeaveMapTicktDef_Player_Dict_ReqFBMapIDtDef_Player_Dict_ReqFBFuncLinetSetFBFuncLineIDtInitFBNPCStrengthenDatat PlayerAssisttOnPlayerEnterAssistFBt    DoEnterFBtRecordFirstEnterMapt GetMapFBTypeRstfbtNullRGRHRNt    SetHPFullR!t    fbtSinglet SetGameFBDicttDef_FB_SingleFBPlayerIDtSetPlayerLogoffTickt PlayerSuccesstDoAddSuccessProgresst ShareDefinetSuccType_FeastRedPack_EnterMapt HaveFBPlayert AddFBPlayer(RRt curPlayerIDR`t    gameWorldR}tdataDictRR‚RƒR„tplayerServerGroupIDDicttgameMapt    gameMapIDtreqMapIDt reqFuncLineIDt    gameFBMgr((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pytDoEnterFBLogicþsh    *1  *         ,           cCs•ttjƒjƒƒ}tjtd|dfƒ}|dkrftjd|jƒƒ|||ƒn|j    t
j ƒr‘t j |t
j dƒndS(NsGameLogic_%s.%sR§sDoEnterFBLogic...i(RRRRRRR RERŠR‘RtDef_Player_Dict_EnterFBFreeR\tNomalDictSetProperty(RRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR§Ps cCsjttjƒjƒƒ}tjtd|dfƒ}|dkrftjd|jƒƒ|||ƒndS(NsGameLogic_%s.%stOnCallHelpBattleOKsOnCallHelpBattleOK...(    RRRRRRR RERŠ(RRRR ((soE:\SnxxServerCode\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©RsR¬tGetGameFBDictByKeyRtDef_FB_NPCStrengthenMaxLVR­tDef_FB_NPCStrengthenAverageLVtGetLVtDef_FB_NPCStrengthenPlayerCntREtfbtTeamR‡tUpdFBLineNPCStrengthenLVtFalseR‘tDef_Player_Dict_TeamFBAverageLVtDef_Player_Dict_TeamFBMaxLVtUpdFBLineNPCStrengthenPlayerCnttDef_Player_Dict_TeamFBPlayerCnttDef_FB_TeamPlayerCountR\RÁ(RRºR3tplayerIDt fbAverageLVtfbMaxLVt fbPlayerCnt((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR¤isL       cCs‘tjdƒ}tj|ƒ}||kr|j|ƒ}|jtjƒ}|td|ƒ@s|td|ƒB}t    j
|tj|ƒqndS(NtMapID_FirstEnterRecordi( t ReadChConfigtGetEvalChConfigR‡RˆR5R‘Rt"Def_Player_Dict_FBFirstEnterRecordtpowR\RÁ(RR`tneedRecordMapIDListR{R5t    curRecordt    updRecord((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR¨œs cCs`tjdƒ}tj|ƒ}||kr.tS|j|ƒ}|jtjƒ}|t    d|ƒ@S(NRÔi(
RÕRÖR‡RˆRÊR5R‘RR×RØ(RR`RÙR{R5RÚ((soE:\SnxxServerCode\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_MapIDRqt GetOpenFBTickREtGetNameR…t Sync_TimeTickRst tttLeaveMapRv(RRRºR»t mapExistTimet    existTime((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR ¸s   !     &cCsKttjƒjƒƒ}tjtd|dfƒ}|rG||ƒndS(NsGameLogic_%s.%st DoFBTimeOut(RRRRRR(RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRæÓs
 cCsmtjƒ}|jƒdkr"dStjƒ}|jƒ}|jƒ}|dkrVdStjƒj|ƒdS(Nii(RRR©RqR tGetPlayerCountR!R¯(RRRºR·t playerManagert playerCount((soE:\SnxxServerCode\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(NRxRyRzR{R`R|R}RR‚RƒR„tFactiont CrossFBExitsGameLogic_%s.%stDoExitFB(RR†RRR‡RˆRqR‰RŠR‹RŒRRRŽRRR‘R’R“R˜t
GetFactionR™RšRRRRê( RRR`R·R}R¸RR‚RƒR„RR ((soE:\SnxxServerCode\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ÉRvRÍRRRRRRR (RRRÐRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRðs  cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒS(NsGameLogic_%s.%stDoPlayerChangeMapLogic(RRRRRRR Rv(RRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRñ,s
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒS(NsGameLogic_%s.%stCanPlayerLeaveFB(RRRRRRR Rv(RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRò9s
 cCsTttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||||ƒS(NsGameLogic_%s.%stCanChangeSameDataMapFB(RRRRRRR RÊ(RR`RaRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRóFs
 cCsBt|ƒ}tjtd|dfƒ}|dkr8tS||ƒS(NsGameLogic_%s.%stOnCanGetAreaExp(RRRRR Rv(RR`RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRôQs
  cCsTttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||||ƒS(NsGameLogic_%s.%st OnCanCollect(RRRRRRR Rv(RR6RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRõbs
 cCs2tjƒ}||jkr.||jkr.tStS(N(RtGetCurrentTimethourtminuteRvRÊ(R÷tminttoday((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyt __CheckTimess cCsŒ|dkrdStjƒ}|tjkr.nQ|tjkrZ|jƒd|krtSn%|tjkr|j|krtSnt    ||ƒS(Nii(
RRöRstgmpDaytgmpWeektweekdayRÊtgmpMonthtdayRû(tperiodtvalueR÷RøRú((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyt__CheckOpenFBPeriod‚s  cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||ƒS(NsGameLogic_%s.%st    OnCanOpenR (RRRRRRR (RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRœs
 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(RRRqRRRrRst
fbosClosedtGetFBFirstOpenRRt    GetPeriodtGetPeriodValue1tGetPeriodHour1tGetPeriodMinute1tGetPeriodValue2tGetPeriodHour2tGetPeriodMinute2tSetFBFirstOpenRR(RRºR·Rt
openByTimeR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR¬s(     ..
cCsptj|ƒ}|sdStj|ƒ}t|ƒ}tjtd|dfƒ}|rl|||||ƒndS(NsGameLogic_%s.%stOnCustomSceneProcess(R\R]R^RRRR(RRt customMapIDt customLineIDRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÔs cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stOnBeginCollect(RRRRRR(RR6RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRås
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%st OnExitCollect(RRRRRR(RR6RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRís
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%st OnCollecting(RRRRRR(RRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRùs
cCsXttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||||ƒdS(NsGameLogic_%s.%st OnCollectOK(RRRRRRR RÊ(RtnpcIDRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRs  cCs‹tjƒjƒtjkrdSt}ttjƒjƒƒ}tjt    d|dfƒ}|dkrq|ƒ}n|r‡t j |ƒndS(NsGameLogic_%s.%stIsLeaveFBOnTeamChange( RRR©RsRÈRvRRRRR R\t PlayerLeaveFB(RRtisLeaveRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pytGameServer_LeaveFBs   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©Rst    fbtFamilyR\Rt fbtFamilyWar(RRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR.s  cCsRttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒdS(NsGameLogic_%s.%stOnWeek(RRRRRRR RÊ(RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR @s  
cCsRttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒdS(NsGameLogic_%s.%stOnDay(RRRRRRR RÊ(RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR!Ps  
cCsºx³tjjƒD]¢\}}|s(qn|d}tj|ƒ}|rn|jƒrn||jƒkrƒqqƒn|tjkrƒqntj    t
d|dfƒ}|r||ƒqqWdS(NisGameLogic_%s.%stOnFBPlayerOnDay( Rt Def_FB_MapIDtitemsR‡t GetFBIpyDatatGetDayResetTypeR²tDef_OnEventTypeExRRR(Rt    onDayTypetkeyt    mapIDListR`tipyDataR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR"^s
    cCsMxFtjjƒD]5}tjtd|dfƒ}|r||ƒqqWdS(NsGameLogic_%s.%stOnFBPlayerOnLogin(RR#tkeysRRR(RR)R ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR,os
cCsUttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒdS(NsGameLogic_%s.%stOnHour(RRRRRRR RÊ(ttimeRRR ((soE:\SnxxServerCode\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 ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pytCheckPlayersRelationInFB_IsNones
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stCheckPlayersRelation_IsFriend(RRRRRRR RÊ(RR1RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyt!CheckPlayersRelationInFB_IsFriendŸs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stDoCanAttackTeamer(RRRRRRR RÊ(RR1RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR5¯s
 cCs[tjƒjƒ}t|ƒ}tjtd|dfƒ}|dkrJtS|||ƒdS(NsGameLogic_%s.%stOnSetRebornPlace(RRRRRRR Rv(RtbornListR`RR ((soE:\SnxxServerCode\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((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR9éscCsNttjƒjƒƒ}tjtd|dfƒ}|sAtjS|||ƒS(NsGameLogic_%s.%stGetFBPrepareTime(RRRRRRRtDef_DigMaxTime(RR6RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR>üs
cCsKttjƒjƒƒ}tjtd|dfƒ}|s>dS|||ƒS(NsGameLogic_%s.%st    OnFBAddHP(RRRRRR(RtaddHPRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR@s
cCsKttjƒjƒƒ}tjtd|dfƒ}|s>dS|||ƒS(NsGameLogic_%s.%st
OnFBLostHP(RRRRRR(RtlostHPRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRBs
cCsQttjƒjƒƒ}tjtd|dfƒ}|sGtj|ƒS||ƒS(NsGameLogic_%s.%st OnGetFBCurHP(RRRRRRRGRH(RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRDs
 cCsUttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒdS(NsGameLogic_%s.%st OnExitEvent(RRRRRRR RÊ(RRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRE-s   cCshtjƒ}|jƒtjgkr(tStjƒr8tStjƒj|j    ƒƒrWtSt
j |ƒt S(N( RRR©RsRªRÊR†R!R´R…R\RRv(RRRº((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pytPlayerLoginInFBCheck>s   cCsWttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||||ƒS(NsGameLogic_%s.%st    OnCanMove(RRRRRRR Rv(RtdestXtdestYRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyt DoFBCanMoveXs
 cCsYtj|ƒ}x-tjjƒD]\}}||kr|SqW|tjƒkrUdS|S(Nt GeneralTrain(R‡RˆRR#R$tGetGeneralTrainMapIDList(R`R)R((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRfs cCsTttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||||ƒS(NsGameLogic_%s.%st OnGMCommand(RRRRRRR RÊ(RtinputStrRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRM}s
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%st OnPlayerSight(RRRRRRR RÊ(RRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyROs
 cCsKttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|ƒS(NsGameLogic_%s.%stOnPlayerReborn(RRRRRRR RÊ(RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRPœs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stOnPlayerRebornOver(RRRRRRR RÊ(RtplayerRebornTypeRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRQ§s
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒS(NsGameLogic_%s.%stDecFreeRebornCount(RRRRRRR RÊ(RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRSµs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%st OnCanFBReborn(RRRRRRR Rv(RRnRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRT¿s
 cCsTttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||||ƒS(NsGameLogic_%s.%stOnResetFBRebornPlacePos(RRRRRRR (Rt rebornPlaceRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRUÎs
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDgS||ƒS(NsGameLogic_%s.%stGetFBRobotCanAtkObjTypeIDList(RRRRRRR (R6RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRWØs
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||ƒS(NsGameLogic_%s.%stGetFBRobotRandomMovePos(RRRRRRR (R6RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRXäs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|||ƒS(NsGameLogic_%s.%stOnRandomRobotJob(RRRRRRR (R6tlineRobotJobDictRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRYïs
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒS(NsGameLogic_%s.%stOnGivePrizeByLastHurt(RRRRRRR RÊ(R6RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR[ÿs
 cCsKttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|ƒS(NsGameLogic_%s.%stOnKillNPCGiveAllExp(RRRRRRR RÊ(RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR\ s
 cCsKttjƒjƒƒ}tjtd|dfƒ}|s>dS|||ƒS(NsGameLogic_%s.%st OnGetNPCExpi(RRRRRR(RR6RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR]s
cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||ƒS(NsGameLogic_%s.%stOnGetOuterExpRatei(RRRRRRR (RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR^'s
 cCsTttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||||ƒS(NsGameLogic_%s.%stOnGetExp(RRRRRRR RÊ(RtaddExpt expViewTypeRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR_6s
 cCsKt|ƒ}tjtd|dfƒ}|dkr8dS|||||ƒS(NsGameLogic_%s.%stOnGetMultiFBPrize(RRRRR (RR`Rat    prizeExLVRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRbFs
  cCsQt|ƒ}tjtd|dfƒ}|dkr8tS|||||||ƒS(NsGameLogic_%s.%stOnPlayerFBSweepAsk(RRRRR Rv(RR`RatcnttisFinishtdataExRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRdQs
  cCsQt|ƒ}tjtd|dfƒ}|dkr8tS|||||||ƒS(NsGameLogic_%s.%stOnPlayerFBSweepResult(RRRRR RÊ(RR`RaReRfRgRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRh]s
  cCsKt|ƒ}tjtd|dfƒ}|dkr8tS|||||ƒS(NsGameLogic_%s.%stOnPlayerFBHelpBattleSweepResult(RRRRR RÊ(RR`RathelpBattlePlayerDictRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRihs
  cCsNt|ƒ}tjtd|dfƒ}|dkr8tS||||||ƒS(NsGameLogic_%s.%stOnStartPubCDFBSweep(RRRRR RÊ(RR`RaReRgRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRkss
  cCsNt|ƒ}tjtd|dfƒ}|dkr8tS||||||ƒS(NsGameLogic_%s.%stOnGivePubCDFBSweepPrize(RRRRR RÊ(RR`RaReRgRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRl~s
  cCsHt|ƒ}tjtd|dfƒ}|dkr8dS||||ƒS(s.¸±±¾¿ìËÙ¹ý¹ØÑéÖ¤
    @param mapID: Êý¾ÝµØÍ¼ID
    @param lineID: Ä¿±ê¹Ø¿¨Ïß·ID£¬¿ÉÒ»´ÎÐÔÌø¶à¹Ø£¬ÓÉǰ¶Ë·¢°ü¾ö¶¨
    @return: (bossID, quickCnt) »ò  None
    @note: bossID Ä¿±êNPCID - Ä¿±ê¹Ø¿¨ËùÐèÒªÌôÕ½µÄÖ÷NPCID£¬Ò»°ãÊÇboss£¬ÓÃÓÚÑéÖ¤Õ½Á¦ÊÇ·ñÂú×ã¿ìËÙ¹ý¹Ø
    @note: quickCnt ±¾´Î×ܹ²Ìø¹ý¼¸¹Ø - Ä¬ÈÏ1
    sGameLogic_%s.%stOnPlayerFBQuickPassN(RRRRR (RR`RaRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRmˆs
  cCsHt|ƒ}tjtd|dfƒ}|dkr8dS||||ƒS(s¸±±¾¿ìËÙ¹ý¹Ø½á¹û
    sGameLogic_%s.%stOnPlayerFBQuickPassResultN(RRRRR (RR`RaRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRnšs
  cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|||ƒS(NsGameLogic_%s.%stOnChangeMapAsk(RRRRRRR (taskRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRo­s
 cCsKt|ƒ}tjtd|dfƒ}|dkr8tS|||||ƒS(NsGameLogic_%s.%stOnEnterFBEvent(RRRRR Rv(RR`RaRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRq¿s
  c CsÙt|ƒ}tjtd|dfƒ}|dkr=|}n||||||ƒ}|s_dS|d \}}    t|ƒdkr‹|dnd}
|
dkr§||    fStj||
||
ƒtj|    |
|    |
ƒfS(NsGameLogic_%s.%stOnGetFBEnterPosii(RRRRR tlentrandomtrandint( RR`tlineIdtipyEnterPosInfoRRR tposInfotenterXtenterYtdist((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRrÐs      " 
cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stOnForbidUseSkill(RRRRRRR RÊ(RRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR|ës
 cCsTttjƒjƒƒ}tjtd|dfƒ}|rP|||||ƒndS(NsGameLogic_%s.%stDoFBAttackedOver(RRRRRR(RttargettcurSkillRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR}üs
cCsTttjƒjƒƒ}tjtd|dfƒ}|rP|||||ƒndS(NsGameLogic_%s.%stDoBeAttackOver(RRRRRR(RfRgRRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR€ s
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%st    DoUseItem(RRRRRR(RtcurEffIDRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRs
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stDoBuffDisAppear(RRRRRR(tcurObjRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRƒ+s
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%stDoOverNPCAttackSuccess(RRRRRR(R6R~RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR…;s
cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||ƒS(NsGameLogic_%s.%st DoPlayerDead(RRRRRRR (RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR†Is
 cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒS(NsGameLogic_%s.%stDoNotifyReBorn(RRRRRRR RÊ(RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR‡Xs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stDoFBAttackHasPunish(RRRRRRR Rv(RR1RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRˆgs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stDoFBForbidUseItem(RRRRRRR RÊ(RtcurItemRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR‰vs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stDoFBForbidReborn(RRRRRRR RÊ(Rt rebornTypweRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR‹…s
 cCsEt|ƒ}tjtd|dfƒ}|dkr8dS|||ƒS(NsGameLogic_%s.%stGetPlayerResetWorldPosFBMsgR(RRRRR (Rt
resetMapIDRvRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR–s
  cCsWttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|||||ƒS(NsGameLogic_%s.%stUseFBSpecilSkill(RRRRRRR (RtuseTypetuseStateRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR¦s
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|||ƒS(NsGameLogic_%s.%st DoFBRebornNPC(RRRRRRR (R6RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR’µs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|||ƒS(NsGameLogic_%s.%stDoFBRebornSummonNPC(RRRRRRR (R6RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR“Ås
 cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrM|||ƒStS(NsGameLogic_%s.%stCheckCanAttackTagObjInFB(RRRRRRR Rv(RfRgRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR”Ôs
  cCsTttjƒjƒƒ}tjtd|dfƒ}|dkrP||||ƒStS(NsGameLogic_%s.%stDoFBOnKill_Player_ValuePrize(RRRRRRR Rv(RfRgRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR•äs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%st OnPickUpItem(RRRRRR(RRŠRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pytOnFBPickUpItemós
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%st OnFBGetMoney(RRRRRR(Rt    moneyTypet
moneyCountRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR˜s
cCsHttjƒjƒƒ}tjtd|dfƒ}|s>dS||ƒS(NsGameLogic_%s.%stOnGetNPCDropMoneyi(RRRRRR(RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR›s
cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDdS||ƒS(NsGameLogic_%s.%stOnGetOuterMoneyRatei(RRRRRRR (RRR ((soE:\SnxxServerCode\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 ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR.s
cCs?t|ƒ}tjtd|dfƒ}|r;|||ƒSdS(NsGameLogic_%s.%stGetPlayerFBLineID(RRRR(RR`RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR >s
  cCs<t|ƒ}tjtd|dfƒ}|r8||ƒSdS(NsGameLogic_%s.%stGetFBLineMaxPlayerCounti(RRRR(R`RaRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR¡Ns
 
cCsEttjƒjƒƒ}tjtd|dfƒ}|rA|ƒStS(NsGameLogic_%s.%stIsFBActivityUnderway(RRRRRRRÊ(RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR¢]s
cCsTttjƒjƒƒ}tjtd|dfƒ}|rP||||||ƒStS(NsGameLogic_%s.%stOnHurtValueOrder(RRRRRRRÊ(RRt    hurtValuetordert giveItemListRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR£ks
cCsKttjƒjƒƒ}tjtd|dfƒ}|rG|||ƒSdS(NsGameLogic_%s.%stGetFBPlayerHurtNPCMultiValuei(RRRRRR(RR6RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR§vs
 cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%stDoFB_Player_HurtNPC(RRRRRR(RR6thurtHPRR ((soE:\SnxxServerCode\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 ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRª•s
cCsHttjƒjƒƒ}tjtd|dfƒ}|rD||ƒSdS(NsGameLogic_%s.%stGetNPCItemProtectFactioni(RRRRRR(R6RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR«¢s
 
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%stOnBossHurtListClear(RRRRRR(tobjIDRt sortHurtListRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR¬´s
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%stOnBossKilledHurtList(RRRRRR(R­RR®RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR¯Ãs
cCsfttjƒjƒƒ}tjtd|dfƒ}|rbtjƒjƒ}|||||ƒndS(NsGameLogic_%s.%st OnPVPDamage(RRRRRRRqtGetTick(Rt damageValuet    tagPlayerRR R((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR°Îs cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stOnCloseNPCRefresh(RRRRRR(t refreshMarkRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR´Üs
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stOnTDCurWheelOver(RRRRRR(RµRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR¶és
cCsKttjƒjƒƒ}tjtd|dfƒ}|rG||ƒndS(NsGameLogic_%s.%stOnTDAllWheelOver(RRRRRR(RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR·ös
 cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stOnTDNPCReachTheGoal(RRRRRR(R6RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR¸    s
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ|||ƒndS(NsGameLogic_%s.%stOnPointRefresh(RRRRRR(tstepRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR¹    s
cCsNttjƒjƒƒ}tjtd|dfƒ}|rJ||||ƒStS(NsGameLogic_%s.%stOnCanMoveTouchNPC(RRRRRRRv(RR6RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR»    s
cCsQttjƒjƒƒ}tjtd|dfƒ}|rM||||ƒndS(NsGameLogic_%s.%stOnMoveTouchNPC(RRRRRR(RR6RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR¼#    s
cCsKt|ƒ}tjtd|dfƒ}|dkr8tS|||||ƒS(NsGameLogic_%s.%st OnClientEndFB(RRRRR RÊ(RR`RatdataListRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR½.    s
  cCsQttjƒjƒƒ}tjtd|dfƒ}|dkrDtS|||ƒS(NsGameLogic_%s.%stOnClientStartFB(RRRRRRR RÊ(RRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR¿9    s
 cCsHt|ƒ}tjtd|dfƒ}|dkr8dS||||ƒS(NsGameLogic_%s.%stOnEnterCustomScene(RRRRR (RR`RaRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÀD    s
  cCsNt|ƒ}tjtd|dfƒ}|dkr8tS||||||ƒS(NsGameLogic_%s.%stOnCanSummonPriWoodPile(RRRRR Rv(RR`RaRtcountRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÁO    s
  cCsHt|ƒ}tjtd|dfƒ}|rD|||||ƒndS(NsGameLogic_%s.%sR_(RRRR(RR6R`RaRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyR_Z    s
 cCsEt|ƒ}tjtd|dfƒ}|rA|||||ƒSdS(NsGameLogic_%s.%stOnCustomSceneCollectOK(RRRR(RR`RaRRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÃe    s
 cCsHt|ƒ}tjtd|dfƒ}|dkr8tS||||ƒS(NsGameLogic_%s.%stOnRegEnterCrossFB(RRRRR Rv(RR`RaRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÄq    s
  cCsKt|ƒ}tjtd|dfƒ}|dkr8dS|||||ƒS(NsGameLogic_%s.%st OnEndCrossFB(RRRRR (RR`RatexDataRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÅ|    s
  cCsKttjƒjƒƒ}tjtd|dfƒ}|dkrDdS|ƒS(NsGameLogic_%s.%stOnGetCrossFuncLineDataCache(RRRRRRR (RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRLJ    s
 cCsHt|ƒ}tjtd|dfƒ}|dkr8tS||||ƒS(NsGameLogic_%s.%stOnNeedCheckCanEnterFBComm(RRRRR Rv(RR`RaRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRȏ    s
  cCsNttjƒjƒƒ}tjtd|dfƒ}|dkrDtS||ƒS(NsGameLogic_%s.%st OnPlayerLVUp(RRRRRRR RÊ(RRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÉ™    s
 cCsQt|ƒ}tjtd|dfƒ}|dkr8tS|||||||ƒS(NsGameLogic_%s.%stOnTurnFightRequest(RRRRR Rv(RR`t
funcLineIDttagTypettagIDt    valueListRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÊ¡    s
  c    CsTt|ƒ}tjtd|dfƒ}|dkr8dS||||||||ƒS(NsGameLogic_%s.%stOnTurnFightOver(RRRRR (    RR`RËRÌRÍRÎtfightRetRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÏ®    s
  c    
CsZt|ƒ}    tjtd|    dfƒ}
|
dkr8dS|
|||||||||ƒ    S(NsGameLogic_%s.%stOnTurnFightOver_GameServerRet(RRRRR ( RR`RËRÌRÍRÎRÐt awardItemListR=RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÑ»    s
  cCsKt|ƒ}tjtd|dfƒ}|dkr8tS|||||ƒS(NsGameLogic_%s.%stOnMirrorBattleRequest(RRRRR Rv(RR`RËtfactionPlayerListRR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÓÇ    s
  cCsBt|ƒ}tjtd|dfƒ}|dkr8dS||ƒS(NsGameLogic_%s.%stOnMirrorBattleOver(RRRRR (tbattleIDR`RR ((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyRÕÓ    s
  (­RRR'RRsR\RžR–R™t IpyGameDataPYR°RÕR¥R²R›R‡tGameMapRGRtt    ImportAllRR    R
RCRDR+RIRRRSRTRVR[RbRcRdReRhRiRjRkRlRmRoRpRuRwR¿R§RÂR¤R¨RÜR RæRêRïRðRñRòRóRôRõRûRRRRRRRRRRR R!R"R,R.R2R4R5R8R9R>R@RBRDRERFRJRRMRORPRQRSRTRURWRXRYR[R\R]R^R_RbRdRhRiRkRlRmRnRoRqRrR|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¶R·R¸R¹R»R¼R½R¿RÀRÁR_RÃRÄRÅRÇRÈRÉRÊRÏRÑRÓRÕ(((soE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\GameWorldLogic\FBLogic.pyt<module>sZ                                4                                                                                              R              3                         #                                           (                                                                   '