1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
>v$\c@sâ    ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl!Z!ddl"Z"ddl#Z#ddl$Z$ddl%Z%ddl&Z&ddl'Z'ddl(Z(ddl)Z)ddl*Z*ddl+Z+ddl,Z,ddl-Z-ddl.Z.ddl/Z/ddl0Z0ddl1Z1ddl2Z2ddl3Z3ddl4Z4ddl5Z5ddl6Z6ddl7Z7ddl8Z8ddl9Z9ddl:Z:ddl;Z;ddl<Z<ddl=Z=ddl>Z>ddl?Z?ddl@Z@ddlAZAddlBZBddlCZCddlDZDddlEZEddlFZFddlGZGddlHZHddlIZIddlJZJddlKZKddlLZLddlMZMddlNZNddlOZOddlPZPddlQZQddlRZRddlSZSddlTZTddlUZUddlVZVddlWZWddlXZXddlYZYddlZZZddl[Z[ddl\Z\ddl]Z]ddl^Z^ddl_Z_ddl`Z`ddlaZaddlbZbddlcZcd„Zdd„Zed„Zfd„Zgd„Zhd„Zid„Zjd    „Zkd
„Zld „Zmd „Znd „Zod„Zpd„Zqd„Zrd„Zsd„Ztd„Zud„Zvd„Zwd„Zxd„Zyd„Zzd„Z{d„Z|d„Z}d„Z~d„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Œed+„ZŽd,„Zd-„Zd.„Z‘d/„Z’d0„Z“d1„Z”d2„Z•d3„Z–d4„Z—d5„Z˜d6„Z™d7„Zšd8„Z›d9„Zœd:„Zd;„Zžd<„ZŸd=„Z d>„Z¡d?„Z¢d@„Z£dA„Z¤dB„Z¥dC„Z¦dD„Z§dE„Z¨dF„Z©dG„ZªdH„Z«dI„Z¬dJ„Z­dK„Z®dL„Z¯dM„Z°dN„Z±dO„Z²dP„Z³dQ„Z´dR„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_d`„ZÂda„ZÃdb„ZÄdc„ZÅdd„ZÆde„ZÇdf„ZÈdg„ZÉdh„ZÊdi„ZËdj„ZÌdk„ZÍdl„ZÎdm„ZÏdn„ZÐdo„ZÑdp„ZÒdd_dq„ZÓeÔddred_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_d“„ZõdS(”iÿÿÿÿNcCsdS(N((ttick((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt
InitPlayerzscCs§tj|ƒdkr(tj|dƒn|jƒjƒdkrY|jƒjtjƒn|jƒdkr~|j    tj
ƒn|j ƒdkr£|j tj ƒndS(Nii(t PlayerControlt
GetJobRankt
SetJobRankt GetTradeListtGetTradeItemCounttSetTradeListCounttChConfigtDef_PlayerTradeMaxItemCounttGetTickTypeCounttSetTickTypeCounttTYPE_Player_Tick_CounttGetMaxChannelCounttSetMaxChannelCounttDef_PlayerTalkChannelMaxCount(t    curPlayerR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytInitLoginPlayerƒscCs7tj||ƒrdStj|tƒtj|ƒdS(N(tFBLogictPlayerLoginInFBCheckt
EventShelltNotifyAllQuestDetailtTruetPlayerEventCountertUpdatePlayerLoginTime(RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytOnAllServerInitOK«s
 cCsÝ|jtjƒdkrdS|jƒjƒ}|jƒjƒ}|dksX|dkr\dStj|jƒdtj    ƒ}|tj|jƒdtj    ƒkr¤dSt
j |j ƒ|j ƒ|ƒtj|tjdƒdS(Nitt0ii(ss0(ss0(tNomalDictGetPropertyRtDef_Player_Dict_OtherDayLogint GetLogoffTimetstript GetLoginTimet    GameWorldtGetDateTimeByStrtsplittTYPE_Time_Format_DaytDataRecordPacktDR_OtherDayLogintGetAccIDtGetIPRtNomalDictSetProperty(Rt logoffTimeStrt loginTimeStrtlogoffTimeDate((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytNoteOtherDayLoginÃs%cCsz|jtjdƒt|ƒt|ƒ|jƒ|jƒtjƒrW|j    t
ƒnt |ƒt |ƒt |ƒtj|ƒtj|ƒtj||ƒtj||ƒt|ƒt|ƒt||ƒt||ƒ|jtjƒƒtj|ƒtj|ƒtj|ƒtj |ƒtj!|ƒ}|tj"dkr­tj#|tj$dƒtj#|tj%dƒtj#|tj&dƒtj'|ƒr­tj(|dƒq­nt)|ƒt*j+|ƒt,|ƒt-||ƒt.|ƒt/|ƒt0j1|ƒt2j3|ƒt0j4|ƒt0j5|ƒt6j|ƒt7j8|ƒt9j:||ƒt;j:||ƒt<j=||ƒt>j?|ƒt>j@|ƒt>jA|ƒtBjC|tDjEƒtFjG||ƒtHjI|ƒtJj|ƒtKj|ƒtLjM|ƒtNjO|ƒtPjQ|ƒtj|ƒjR|ƒtSjT|ƒ|jUƒtVjW|ƒtXjY|ƒtZj[|ƒt\j]|ƒt^j_|ƒt`ja|ƒtbjc|ƒtdj|ƒtejf|ƒtgj|ƒthj|ƒtijj|ƒtkjl|ƒtmjn||ƒtojp|ƒtqjr|ƒtsjM|ƒtjt|ƒtu|ƒtvjw|ƒtxjw|ƒtyjw|ƒtzjw|ƒt{jw|ƒt|j|ƒt}j~|ƒtj€|ƒtjw|ƒt‚jƒ|ƒt„j…|ƒt†j‡|ƒtˆj‰|ƒtŠj‹|ƒtŒj|ƒtŽjw|ƒtj|ƒtFj‘||ƒt’j“|ƒt”j•|ƒt–j|ƒt—j|ƒt˜j|ƒt™|ƒtNjš|ƒt›jw|ƒtœjw|ƒtj|ƒtžj|ƒ|jŸƒt |ƒt¡|ƒt¢jM|ƒt£j|ƒ|j¤dƒ|j¥dƒt’j¦|ƒ}|r|j§tDj¨|ƒn|j©ƒrJ|jªt«j¬|j©ƒt­ƒntjƒrv|j    t­ƒtj(|dƒndS(Niièi(®tSetDictRtDef_PlayerKey_LoadMapIsLogintSync_PyServerDataTimeToClienttSync_OpenServerDaytSync_ClientPlayerLogintSync_GameServer_MapIDR!t IsCrossServertSetForbiddenSyncClientStateRtSyncGuideStatetInitPlayerPackt__Sync_PackDetelRtUpdPlayerServerGroupIDt SkillCommontPlayerLoginCheckLearnSkillt PlayerLoginMergeServerSkillLogictPlayerLoginUpdateSkillCDt__Sync_ClientSkillt__Sync_ClientBufftInitRealityTimeItemtDoPlayerLoginInMapt SetLoginTimetGetCurrentDataTimeStrtPlayerGodWeapontOnLogintPlayerPrestigeSysR%tDR_PlayerLogint EventReporttWriteEvent_logintGetPlayerLeaveServerSecondtDef_PlayerOfflineProtectTimeR)t Def_Player_Dict_PlayChangeLineIDt Def_Player_Dict_FuncChangeLineIDt Def_Player_Dict_HighChangeLineIDtGetCrossRealmStatetSetCrossRealmStatet__DoMixServerFirstLogintPlayerBillboardtBillboardOnLoginR-t__Sync_PlayerOfflinet__SyncPlayerInfoExt SyncPKModeltChEquiptNotifyEquipPartStarLVtOperate_EquipWashtOnEquipWashLogintNotifyEquipPartSuiteLVtSyncAllEquipAttrActiveInfotOperate_EquipStonetPlayerGreatMastert MasterOnLogint    PlayerVipt    DoOnLogintPlayerRefineStovet
PetControltDoLogic_PetInfo_OnLoginRtEventResponse_OnEntertEventResponse_OnLogintNotifyRunEndAwardt ItemControlertClearPackEventItemt IPY_GameWorldt rptAnyWheretPlayerGameWallowtCalc_Wallow_OfflineTimet PlayerLVAwardtSync_LVAwardGetRecordInfot
PlayerCointPlayerGoldGifttOperate_PlayerBuyZhenQit DoPlayerLogint GameFuncCommtSync_FuncOpenStatet PlayerSignDaytSignDayOnLogintNotifyPlayerDeadTimetUpdatePlayerNametSync_UpdatePlayerNameCounttBalanceServer_PlayerLoginInitOKt PlayerHorsetPlayerHorseLogintPlayerTreasuretOnTreasureLogintPlayerLoginDayAwardtOnLoginNotifyLoginDayAwardtOpenServerCampaigntOnOpenServerCampaignLogintGameLogic_TrialTowertOnFBPlayerLogintGameLogic_GodAreatGodAreaOnLogint    NPCCommontSyncCollNPCTimetPlayerActivitytFBCommont    FBOnLogintPlayerWorldAverageLvtPlayerGoldInvesttPlayerAttrFruittAttrFruitOnLogint PlayerSuccesst SuccOnLogint PlayerFamilytFamilyPlayerOnLogintPlayerDienstgradtSync_AllDienstgradOnLogint PlayerRecovertRecoverOnLogintPlayerCrossRealmPKtNotifyPlayerAllCurrencytNotifyPlayerBasePointtPlayerCostRebatet OnPlayerLogintPlayerActTotalRechargetPlayerSpringSaletPlayerFlashGiftbagtPlayerFlashSalet BossHurtMngtChItemtSync_ItemDayUseCntt
PlayerRunetPlayerRuneLogintPlayerFamilyRedPackettPlayerMagicWeapontPlayerMagicWeaponLogintFunctionNPCCommontShopItemOnLogintPassiveBuffEffMngtOnLoginGFPassivet PlayerDiceExt DiceExOnLogint QuestCommontSync_StoryMissionStatetGameLogic_XMZZt OnXMZZLogintPlayerOnlinePrizetPlayerEquipDecomposet PlayerLogintDoLogic_CheckWallowt    PlayerTJGt NotifyTJGInfot PlayerGeTuitLoginNotifySettingtPlayerFreeGoodstPlayerBossReborntPlayerFairyCeremonytSyncPackDownloadAwardtDoFuncOpenLogict
PlayerDogzt FamilyRobBosstPlayerBindJadeWheeltPlayerWishingWelltSendDBQueryRechargetSyncLittleHelpertSyncChatBubbleBoxStatet FBHelpBattletPlayerGatherSoultSetStatet
SetFacePict
GetTJGTimetSendGameServerRefreshStatetCDBPlayerRefresh_HappyPointtGetGMForbidenTalktSendPropertyRefresht ShareDefinetCDBPlayerRefresh_ForbidenTalktFalse(RRtleaveServerSecondttjgTime((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRsæsö
 
 
 
 
 
 
 
 
 
 
 
 
 
                    
 
 
 
 
       cCsHtjƒ}|jƒ|jƒ|_|jƒ|_tj||ƒdS(N(tChPyNetSendPackttagMCPlayerInfotCleartIsAdulttGetCreateRoleTimetCreateRoleTimet NetPackCommont SendFakePack(Rt playerInfoEx((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRUIs  
cCs7tjƒjtjƒ}|s"dStj}tjƒj|ƒ}tjd||jƒƒ|jt    j
ƒ}||kr‰tjdƒdSt j |t    j
|ƒt j||ƒt j |t    jdƒtj|ƒxQtjD]F}t j |t    j|dt    jƒt j |t    j|dt    jƒqÜWtj|ƒdS(NsºÏ·þÊ׵Ǵ¦ÀílastMixServerDay=%ss±¾´ÎºÏ·þÒѾ­µÇ¼¹ý.i(R!t GetGameWorldtGetGameWorldDictByKeyRÑtDef_Notify_WorldKey_IsMixServert$Def_Notify_WorldKey_LastMixServerDaytDebugLogt GetPlayerIDRRtDef_PDict_MixLoginDayRR)RRt!UpdBillboardOnMixServerFirstLogintDef_PDict_MixLoginDayStatetPlayerMixLoginDayAwardtNotifyPlayerAwardStatetDef_MixCampaign_Type_Listt'Def_PDict_MixServerCampaign_AwardRecordt Def_PDictType_OpenServerCampaignt&Def_PDict_MixServerCampaign_RecordDataRytResetChangeNameCnt(Rt isMixServertlastMixServerDayKeytlastMixServerDayt    playerDayt campaignType((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRQUs*        cCs0tj|tjdƒtj|tjdƒdS(Ni(RR)RtDef_Player_Dict_PlayerDeadCnttDef_Player_Dict_DeadTime(R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytClearPlayerDeadInfoscCsKtjƒ}tjdƒ}tjdƒ}t|||ƒt||ƒdS(NtPlayerLoginNotify_TimeSecttPlayerLoginNotify_Dict(R!tGetCurrentTimet ReadChConfigtGetEvalChConfigtDoNotifyByTimeSecttDoNotifyByDict(RRtcurTimetnotifyByTimeSectt notifyByDict((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerLoginNotifyŠs   cCsLxE|D]=}tj||dƒs)qntj||d|dƒqWdS(Niii(R!t IsAtActTimeRt
NotifyCode(RRþt
notifyInfot    curNotify((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRüs cCs\tjƒ}xI|D]A}|j|dƒ|dkrtj||d|dƒqqWdS(Niiii(R!RßRàRR(RRt    gameWorldR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRý«s  c
Cs|jƒ}xÝtjD]Ò}|j|ƒ}|jƒx°t|jƒƒD]œ}|j|ƒ}|jƒroqHnt    j
|ƒ}t    j |ƒ}||krHt    j ||ƒt jd|||||jƒ|jƒf|jƒƒqHqHWqWx'tjjƒD]}tj||ƒqüWdS(NsLµÇ¼¸üÐÂ×°±¸ÆÀ·Ö: packType=%s,i=%s,hisScore=%s,newScore=%s,itemID=%s,guid=%s(tGetItemManagerRt Def_PlayerLoginInitPackIndexListtGetPackt Sync_RefreshtxrangetGetCounttGetAttIsEmptyt
ItemCommont CalcEquipGStGetEquipGearScoretSetEquipGearScoreR!tLogt GetItemTypeIDtGetGUIDRätDef_VPackCnt_DicttkeysRhtSync_VPackItem_Refresh(Rt itemManagert    packIndextrolePacktitcurItemtnewScorethisScore((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR8·s" 
      :cCstj||ƒdS(N(t PlayerStatetProcessTimeEquip(RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR@ðscCsF|jƒ}x3t|jƒƒD]}|j|ƒ}|jƒqWdS(N(tGetSkillManagertranget GetSkillCounttGetSkillByIndext
Sync_Skill(Rt skillManagerRtcurSkill((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR>ùs
 cCsd|jƒjƒ|jƒjƒ|jƒjƒ|jƒjƒ|jƒjƒ|jƒjƒdS(N(t GetBuffStatet    Sync_BufftGetDeBuffStatetGetAurat
GetIncBufftGetProcessBuffStatetGetProcessDeBuffState(R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR?s cCs!tjƒrdStj|ƒdS(N(R!R4R¸tTJGDeadOffline(RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRTs  %cCs6|jdƒ|jtƒ|jtƒ|jtƒ|jtƒ|jtƒ|jƒtj    krvt
j ||ƒn t
j |ƒt ||ƒtj|tj|ƒtj||ƒtj|ƒ}|jƒ|j|ƒ|j|ƒ|jtj|ƒtj||ƒt|ƒtj|jƒƒtt_ dS(Ni(!tGameServer_SetLoadMapStatet
SetCanMoveRÓt    SetInitOKt SetMapLoadOKt
SetVisiblet SetCanAttacktGetPlayerActionRjt paGameEventtPlayerGameEventt StopGameEventtTakeoffFishermanEquipmentt__CheckClearBuffOnMapChangeR:tAddBuffBySkillType_NoRefurbishRtDef_SkillID_LimitSuperBuffR tChangePlayerSighRtReCalcAllStatetSetProcessEquipDurgTickt SetLoginTickR.tDef_PlayerKey_CalcOLTimeTicktRefreshRebornPointtSavePlayerMessionInDataServertRemoveLeaveServerPlayerInfoRäRt
PyGameDatatg_needRefreshMapServerState(RRt playerControl((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRAEs,        
 
    cCs»tjƒjƒ}tjdƒ}g}xf|jƒD]X\}}| sS||kr4tj|||ƒrŒtjd|ƒ|j    |ƒqŒq4q4Wx$t
j D]}tj|||ƒqšWdS(NtFBBuffsÇеØÍ¼É¾³ý¶àÓàbuff: %s( R!tGetMaptGetMapIDRúRûtitemst    BuffSkilltDelBuffBySkillIDRãtappendRtClearBuffOnMapChangeList(RRtcurMapIDt
fbBuffDictt
buffIDListtbuffIDt    mapIDList((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR<{scCsdS(N((R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRE‘scCstjtƒ||ƒdS(N(R!t GetPsycoFunct__Func_PlayerLogin(tindexR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR¶ŸscCs¼tjƒj|ƒ}y;t||ƒt||ƒ|jtƒtj||ƒWne|j    t
j ƒddl }tj d|jƒƒtjƒjƒr¸td|jƒƒ‚q¸nXdS(NiÿÿÿÿsÍæ¼ÒÉÏÏßÂß¼­´íÎó~~~~~
%ssÍæ¼ÒÉÏÏßÂß¼­´íÎó~~~~
%s(R!tGetPlayerManagertGetPlayerByIndexRRsR2RÓtPlayerAutoCheckOnlinetPlayerLoginCaptchatKickRjtdisWaitForPlayerLoinErrort    tracebacktErrLogt
format_excRßt GetDebugLevelt    Exception(RYRRR`((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRX©s    cCstjtƒ||ƒdS(N(R!RWt__Func_ChangeMapInit(RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt ChangeMapInitÅscCsatjƒj|ƒ}t||ƒtj||ƒt|ƒt||ƒ|jƒ|j    ƒ}|dkrô|j ƒtj |t j|ƒ|jt jƒ}|j|ƒtj|ƒtj|jƒ|jƒ|jƒ|jƒ||jƒƒntj||ƒ|jƒtjƒjƒt j!kr9|j"dƒn |j"dƒ|j#ƒ|j$t%ƒdS(Nii(&R!RZR[RR:tPlayerChangeMapUpdateSkillCDR7RAtInitChangeMapPlayerSummonInfotGetTrucktNonetGameServer_Sync_TruckMapIDR=RR>RtDef_Player_Dict_PawnTruckLVtSetLVt PlayerTrucktChangeTruckNoteInfoRRtUpdateBillboardPlayerTruckRätGetNametGetOperateInfotGetLVRLRctSync_PetInfo_ChangeMapR3RKt GetMapFBTypeRjtfbtTeamtGameServer_TeamEnterFBt#BalanceServer_PlayerChangeMapInitOKR2RÓ(RYRRtcurTruckttruckLv((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyReÏs,
 
     
 
  !
 
cCsE|jƒ}tj|ƒtj|ƒtj|ƒ|jƒjtjƒ}|jt    j
ƒ|j ƒ|jƒjtj ƒ}|jt    j ƒ|j ƒ|jtjƒ}|jt    jƒ|jtjƒ}|jt    jƒ|jtjƒ}|jtjƒ|jtjƒ}|jtjƒ|jtjƒ}|jt    jƒdS(N(RRt Init_ItemPacktInit_WarehousetInit_TreasurePackR    RÑt rptDogzItemtSetCountRtDef_PackCnt_DogzItemtSync_PackCanUseCountt rptDogzEquiptDef_PackCnt_DogzEquipt rptTempSwaptDef_PackCnt_TempSwapt rptTempItemtDef_PackCnt_TempItemRjtrptEquiptretMaxRktDef_AnyWherePackCounttrptPettDef_PackCnt_Pet(RRtcurPack((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR7#s*    
 
cCstj}t||ƒS(N(RR>tCheckHasBuffBySkillID(RtskillID((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt__CheckLimitSuperBuffWs    cCstjƒj|ƒ}|s9tjd||jƒƒtStj|ƒ}tj||ƒ}|dkrjtS|d}|j    ƒ}|j
|ƒ}|s™tSt S(Ns,Íæ¼ÒÈ¡Ïûbuffʧ°Ü,Êý¾Ý¿âÎÞ´Ëbuff,buffid = %s i(( R!t GetGameDatatGetSkillBySkillIDRRäRÓR:t GetBuffTypetGetBuffManagerByBuffTypetGetSkillTypeIDtFindBuffR(RRt    buffSkilltbuffTypet    buffTuplet    buffStatetbuffSkillTypeIDtcurBuff((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRŽas 
 cCstjtƒ||ƒdS(N(R!RWt__Func_LoadMapOK(RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt    LoadMapOKsc    Csœtjƒj|ƒ}|jƒrÎ|jtjƒ}|jtjƒ}|rÊ|rÊtjd|j    ƒƒ|j
tjdƒ|j
tjdƒ|j t ƒt j|tjƒ|jƒtj||ƒndSt|ƒsÞdStjd|j    ƒƒ|jdƒ|jt ƒ|j|jƒ|jƒƒtj|ƒ}|oT|jtjƒdksq|jƒ|j t ƒn|jƒdkr–|jtj ƒn|j!t ƒ|j"ƒr¿|j#t ƒnt$|ƒsÛ|j%t ƒn|j&t ƒ|j'ƒ}|tj(kr.t)j*|t+t+ƒsVt)j,|t+ƒqVn(|tj-krVt.j/|t+t+t+ƒnt0||ƒt1j2||ƒt j3|t ƒt4j5||ƒtj6||ƒt7j8|ƒt7j9|ƒt:j;|ƒtj<ƒ}|jƒ}|jƒ}    |j=tj>ƒru|j=tj>ƒdkr.t j |ƒj?ƒn.t@jA||    tjBƒ\}}    |jC||    ƒt jD|tj>dƒn|jƒdksœ|jEƒtj krÙ|jtjFƒ}
|
r½tjGntjH} tI|| |ƒn½|jJ||    ƒt kr–t@jA||    tjBƒ\} } | dkrc| dkrctjd||    f|j    ƒƒt j |ƒ}|j?ƒq–|jC| | ƒtjd| | f|j    ƒƒn|jKƒtLjM|ƒ|jNƒtjOkr%tPjQtj<ƒjRƒƒtjSkr%|jTtjOƒtUjV|tjW|ƒtUjV|tjX|ƒn|jYƒ}|jZƒ|krn|j[|ƒt\|ƒtj]d|ƒnt^j_|ƒt`ja|ƒjbƒ|jcƒt S(    Ns'Íæ¼Ò¸±±¾Öбä¸ü¹¦ÄÜÏß·ÐéÄâÇеØÍ¼³É¹¦!!!is µØÍ¼¶ÁÈ¡³É¹¦iis:Íæ¼ÒµÇÂ¼ÖØÖÃλÖÃʧ°Ü, °ÑÍæ¼Ò´ò»ØÖØÉúµã posX = %s posY = %ss<Íæ¼ÒµÇÂ¼ÖØÖÃλÖÃʧ°Ü, ÉèÖø½½üµã nearPosX = %s nearPosY = %ss½øÈëµØÍ¼Ç¿ÖÆÇл»PKģʽ: %s(dR!RZR[t GetMapLoadOKt GetDictByKeyRtDef_PlayerKey_ResetFBLinePosXtDef_PlayerKey_ResetFBLinePosYRRäR.R5RRtSetSighttDef_PlayerSight_Defaultt RefreshViewRt    DoEnterFBt__CheckForbidLoginR1R4tInitPostGetPosXtGetPosYR°tGetCommonMissiont GetPropertytDef_NewGuyNoSighttGetHPtSetPlayerActionRjtpaDieR3t
GetGMLeveltSetIsDefVisibleRR6R2tGetLastMapPlayerVehicletpvHorseR|tPlayerRideHorseUpRÓtPlayerRideHorseDowntpvTruckRnt PlayerTruckUPtInitPlayerTruckt
PlayerTeamtPlayerLoginSetTeamtSetIsNeedProcesst PlayerGMOpert DoGMOperLogictDoEnterFBLogicRtEventResponse_OnMaptEventResponse_OnMapExRctDoLogic_PetLoadMapOKRKRtDef_PDict_IsReBorntSetToBornPlacetGameMaptGetNearbyPosByDistDef_RebornPos_Area_RangetResetPosR)R7R/trebornType_CitytrebornType_SystemtPlayerRebornByTypetCanMovetDataServer_CheckPrizeItemRRt
GetFactiontCampType_NeutralR‹tGetRecordMapIDRLtDef_MapID_NeedCampt
SetFactionRNROtDef_SkillID_JusticetDef_SkillID_EviltGetInitAttackModelt GetAttackModet SetAttackModeRVRãR¬tOnLoadMapGFPassiveRhtPlayerItemControlertRefreshStartEquipCountt
EndLoadMap(RYRRtresetFBLinePosXtresetFBLinePosYt firstMissiont playerVehicletcurMaptposXtposYtisLogint
rebornTypetnearPosXtnearPosYRItinitAttackModel((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR‰s¤   
 
             '  #
$      
 
cCs9tjƒ}|jƒ|jƒ|_tj||ƒdS(N(RÖttagMCAttackModeRØRÖtModeRÜRÝ(RtsendPack((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRVSs
 
cCstS(N(R(R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt__CheckGMCanLoadMapOK`scCs:|jƒtdtjƒ@dkr&tS|jtjƒdS(Nii(t GetAccStatetpowRtDef_PysForbidByPyRR^Rjt    disGMKick(R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR§xs"cCsï|j|ƒ|jƒ}tjd||jƒƒ|dkr{|jƒdkrwtjd|jƒƒ|jdƒndS|jƒtjd||jƒƒtjƒj    |ƒ}|s¾dS|j
|ƒ|j |j ƒƒ|j |ƒdS(Ns³õʼ»¯æô³µ ID = %d ...is###Fix Truck State!s$֪ͨgameserverË¢ÐÂ×Ô¼ºµÄæô³µ id = %d(tSetTruckCalcStartTimet
GetTruckIDR!RRät GetTruckStatet SetTruckStatetGameServer_RefreshTruckReqt GetNPCManagert FindTruckByIDtSetTruckt
SetTruckIDtGetIDtSetOwner(RRttruckIDRy((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR¹‡s    
 cCstjtƒ||ƒdS(N(R!RWt__Func_AddPoint(RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytAddPointÃscCsntjƒj|ƒ}tj|ƒ}|jƒ}tjƒ}|jƒ}|dks`||krddS|jƒ}|t    j
kr™|j ||j ƒƒn™|t    j krÂ|j||jƒƒnp|t    jkrë|j||jƒƒnG|t    jkr|j||jƒƒntjd||jƒƒdS|j||ƒtj|d|i|d6ƒ|jƒdS(NisAddPoint GetTypeErr = %sRýt AddPointType(R!RZR[Rt GetFreePointRjt IPY_CAddPointtGetPointtGetTypeRÑtDef_Effect_STRt
SetBaseSTRt
GetBaseSTRtDef_Effect_PNEt
SetBasePNEt
GetBasePNEtDef_Effect_PHYt
SetBasePHYt
GetBasePHYtDef_Effect_CONt
SetBaseCONt
GetBaseCONRaRùt SetFreePointR%t DR_FreepointtRefreshPlayerAttrState(RYRRRIt curFreePointt recvAddPointtaddValuet addPointType((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRüÌs,    
cCsìg}idtj6dtj6dtj6dtj6}xU|jƒD]G\}}tjƒ}||_t    |d|ƒƒ|_
|j |ƒqAWtj ƒ}|j ƒ|jƒ|_|jƒ|_t|ƒ|_||_tj||ƒdS(NtBaseSTRtBasePHYtBaseCONtBasePNEsGet%s(RjtCDBPlayerRefresh_BaseSTRtCDBPlayerRefresh_BasePHYtCDBPlayerRefresh_BaseCONtCDBPlayerRefresh_BasePNERMRÖttagRefreshTypet RefreshTypetgetattrtValueRPttagObjInfoListRefreshRØRùtObjIDtGetGameObjTypetObjTypetlentCountRÜRÝ(Rt
notifyListtnotifyBasePointDictt refreshTypetkeyStrt notifyStructRê((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR›÷s&
 
 
       
    cCstjƒj|ƒ}||jtjƒtjtjkr?dS|jtj|ƒtj|j    ƒ|j
ƒ|j |j ƒ|j ƒkrŒdS|jƒ|j|j |j ƒtjƒ}|jƒ|jƒ|_|jƒ|_|j |_ |j |_ tj||tdƒdS(Niÿÿÿÿ(R!RZR[t GetTickByTypeRtTYPE_Player_Tick_RushtTYPE_Player_Tick_Timet SetTickByTypetGetDistR©RªtPosXtPosYtGetSighttStopMovet    ChangePosRÖt    tagMCRushRØRùtIDR$R%Rt PyNotifyAllRÓ(RYt
clientDataRRRê((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt OnPlayerRushs &6
 
  c     CsTtjƒj|ƒ}|jtjƒtjkr4dStj|tj    t
j ƒsSt St |ƒscdS|j}|j}|j}|j}|j}||kr¬||kr¬dStjƒj||ƒsä|j|jƒ|jƒƒdS||jdƒdkrdS|jd|ƒ|jƒ}    |    t
jt
jgkr9dStjƒ}
t|||
||||ƒsgdStj||||ƒdkr¥|j|jƒ|jƒƒdS|jƒt
j krÍt!j"||ƒnt#j$||ƒ|j%||ƒ|j&ƒj'ƒ} | dkrdStj| jƒ| jƒ||ƒdkr=dSt)j*|||ƒdS(Nt FightMoveTicki2ii(+R!RZR[RRt#Def_Player_Dict_AutoCheckHack_StatetDef_AutoCheck_State_DangertOperControlManagertIsObjCanDoActiontDef_Obj_ActState_ServerActRjtoalMoveRÓt__CheckPlayerCanMovetStartXtStartYtDestXtDestYt    WorldTickRKRÌRÈR©RªR R.tGetPlayerVehicletpvNullR´t CheckMovePosR1R7R8R9R:RtDelLimitSuperBuffR6t    GetPetMgrt GetFightPetRjRctFightPetFollowMove( RYR:RRtsendPack_StartXtsendPack_StartYtsendPack_DestXtsendPack_DestYtsendPack_WorldTicktvehicleRàtfightPet((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerFightMoveNsX                          *cCstjtƒ||ƒdS(N(R!RWt__Func_PlayerMove(RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt
PlayerMoveÀsc
    CsidStjƒj|ƒ}|jtjƒtjkr8dStj|tj    t
j ƒsWt St |ƒsgdSt
jƒ}|jƒ}|jƒ}|jƒ}|jƒ}|jƒ}tjƒj||ƒsËdS||krç||krçdStjƒjƒt
jkr!tj||||ƒs!dSn|jƒ}    |    t
jt
jgkrIdSt|||||||ƒdS(N(R!RZR[RRR=R>R?R@RARjRBRÓRCtIPY_CPlayerMovet    GetStartXt    GetStartYtGetDestXtGetDestYt GetWorldTickRKRÌRutfbtNullRt DoFBCanMoveRIRJR´tPlayerNormalMove(
RYRRRêRPRQRRRSRTRU((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRXÉs>           cCsl|jƒstS|jƒs tS|jƒdkr6tStj|tjtj    ƒsUtSt
j |ƒshtSt S(Ni( RŸRÓt
GetCanMoveR®R?R@RRARjRBRtPlayerCanStateTransferR(R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRC"s   cCs§dStjƒ}tj||||ƒs6|jƒdSt|||||||ƒsXdS|jƒtjkr€t    j
||ƒntj |tj ƒ|j ||ƒdS(N(R!RKRtPlayerMoveCheckClientWorldTicktSync_ClientTickRKR7RjR8R9R:tChangePlayerActiontpaNulltMove(Rt client_StartXt client_StartYt client_DestXt client_DestYtclientWorldTickRRà((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRbMs 
c CsÜtj||||ƒsY|rU|jƒ|jƒkrU|j|jƒ|jƒƒntS|jƒ}|jƒ}    |j||ƒsš|r–|jƒntSt    j
||    ||ƒ}
|
t j krØ|rÔ|jƒntSt S(N(RtPlayerRefreshPosRùRÈR©RªRÓRÌtMoveFailR!R1RtDef_PlayerMaxMoveDistR( RtcheckObjRàtstartXtstartYtdestXtdestYtsendPlayerMoveFailtobjPosXtobjPosYtmoveDist((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRK£s     $cCstjtƒ||ƒdS(N(R!RWt__Func_PlayerStopMove(RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerStopMovescCsdS(N((RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR{    scCsÇtjƒj|ƒ}tjƒ}|jƒ}|jƒdkrx|jƒtjkrdt    ||ƒnt
|||ƒdSt j ||ƒržt j|dƒdSt
|||ƒrÃt|||ƒndS(NitReborn_lhs_31379(R!RZR[RjtIPY_CCliectRebornRR®R7R°tSyncPlayerRebornRËRtDoFBForbidRebornRRtPlayerReborn_InFB(RYRRRêtplayerRebornType((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerClickRebornhs  cCs`tjƒ}|jƒ|jƒ|_||_|jƒ|_|jƒ|_    t
j ||ƒdS(N( t ChNetSendPackttagPlayerRebornRØRätPlayerIDtTypeR©R2RªR3RÜRÝ(RRät
rebornInfo((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR‹s 
    cCsdS(N((RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerNeedSeeOther¨scCstjtƒ||ƒdS(N(R!RWt$__Func_PlayerClickOtherPlayerGetInfo(RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerClickOtherPlayerGetInfoÖsc Csþtjƒj|ƒ}tjƒ}|jƒ}|jƒ}tj||ƒ}|dkr[dStj    |j
ƒ|j ƒ|j
ƒ|j ƒƒ}||j ƒk}|j ƒ}    |    tjtjgkrÅdS|    tjkrã|rÒi}
|jƒ|
d<|jƒ|
d<|jƒ|
d<|jƒ|
d<tj|ƒ|
d<|jƒ|
d<|jƒ|
d<|jƒ|
d<|jƒ|
d    <|jƒ|
d
<|jƒ|
d <|jƒ|
d <t|
ƒ} t| ƒ} |j|| | ƒdS|j |ƒdS|rú|j!|ƒdSdS( NtmaxHPtmaxMPthittmisstatkSpeedt superHitRatetsuperHitt luckyHitRatet greatHitRatet ignoreDefRatetdamageReduceRatetdamageBackRate("R!RZR[RjtIPY_CClickObjGetInfotGetObjIDt
GetObjTypetGetObjRjR1R©RªR4R$t    gotPlayertgotNPCtGetMaxHPtGetMaxMPtGetHittGetMissRt GetAtkSpeedtGetSuperHitRatet GetSuperHittGetLuckyHitRatetGetGreatHitRatetGetIgnoreDefRatetGetDamageReduceRatetGetDamageBackRatetstrR&tPlayerClickOtherPlayerDetailtSync_GetPlayerInfoFailtPlayerClickOtherNPCDetail( RYRRRêt sendPack_IDt sendPack_TypettagObjtdistt canGetDetailt
tagObjTypetextendDataDictt
extendDatat extendDataLen((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRŠßsJ    0     cCs9tjdƒtjƒj|ƒ}|jƒdkr8dStjƒ}|jƒ}|dkrltj    |ƒndS|j
ƒrtj |dƒdS|j ƒtj kr©dStj|tjtjƒsÈdS|j|ƒtjƒ}|jƒ}|jƒ}|dkr(|tjkr(tj||ƒdStj    |ƒdS(Ns PlayerSit...iitCanNotSitWrongState(R!RãRZR[R®RjtIPY_CSitRRt DoPlayerStandtIsMovingRRIRJR?R@RRAtoalSittSetRestoreTimeR7Rht DoPlayerSit(RYRRRêtsetTypet
playAction((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt    PlayerSit-    s6               cCstjtƒ||ƒdS(N(R!RWt__Func_PlayerDisconnect(RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerDisconnectd    scCsœ|jtjƒdkrdStjƒtj|jƒjƒƒ}|jdkrc|j    dkrcdSt
j |j ƒ|j ƒ|ƒtj|tjdƒdS(Niii
i<iX(RRtDef_Player_Dict_LoginValidR!RùR"R RtdaystsecondsR%t DR_LoginValidR'R(RR)(RtdiffTime((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytNoteLoginValidl    s%cCstjƒj|ƒ}yt||ƒWnUddl}tjd|jƒƒtjƒjƒr~t    d|jƒƒ‚q~nX|j
|ƒdS(NiÿÿÿÿsÍæ¼ÒÏÂÏßÂß¼­´íÎó~~~~~
%s( R!RZR[tDoPlayerDisconnectR`RaRbRßRcRdt DoDisconnect(RYRRR`((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRÁƒ    s cCsÚtjd|jƒƒtj||ƒ|jtjƒƒtj|ƒt    |ƒt
j |ƒt j |ƒtj|tjdƒtj|tjdƒtj|tjdƒtj|ƒtj||ƒtj|ƒdS(NsPlayerDisconnect!i(R!RRäRtPlayerLeaveServert SetLogoffTimeRCR%tDR_PlayerDisconnectRÈR´tCalcOnlineTimeRqtUpdateFirstGoldTimeR)Rt!Def_Player_Dict_RouteServerInitOKtDef_Player_Dict_AutoTrucktDef_Player_Dict_RoomIDRctReCallFightPetR¸t CalcPlayerTJGRHtWriteEvent_session(RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRÉ–    s 
    cCsƒtjƒj|ƒ}tjƒ}|jƒ}tj|ƒs\d}tjd|jƒƒdSt    |ƒdkrrdS|j
|ƒdS(NRsSetShutCutData Encoding Errid( R!RZR[RjtIPY_CSetShutCutDatat
GetSettingtEncodingToUnicodeRaRùR&t
SetSetting(RYRRRêtsetting((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytSetShutcutSettingHVÞ    s   c Cs)tjƒj|ƒ}|j}tjd||jƒƒtjd|ƒ}|sTdStj|t    j
|ƒ}|s|j ƒ}|r´|j ƒ|kr´tjd||jƒƒdS|j ƒ}|r|jt    jƒ}    |    td|ƒ@}
|
stjd||jƒƒdSqntj||ƒdS(Ns#ÉèÖÃʹÓõÄÁÄÌìÆøÅÝ¿òID: useBoxID=%st ChatBubbleBoxs)    µÈ¼¶²»×㣬ÎÞ·¨Ê¹ÓÃ¸ÃÆøÅÝ¿ò£¡needLV=%sis5    Î´¹ºÂòVIPÀñ°ü£¬ÎÞ·¨Ê¹ÓÃ¸ÃÆøÅÝ¿ò£¡needVIPLVGift=%s(R!RZR[t BubbleBoxTypeRãRät IpyGameDataPYtGetIpyGameDatatGetDictValueByBitRtDef_PDict_ChatBubbleBoxStatet    GetNeedLVRstGetNeedVIPLVGiftRtDef_Player_Dict_VipAwardRecordRíRtSetChatBubbleBox( RYR:RRtuseBoxIDtipyDatat curBoxStatetneedLVt needVIPLVGifttrecordthasBuy((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytOnSetChatBubbleBoxö    s*      
cCsCtjd|ƒ}|sdStj|tj|dƒt|ƒtS(NRÜi(RÞRßR!tSetDictValueByBitRRáRÇR(RtboxIDRç((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytDoActivateChatBubbleBox
s 
cCsI|jtjdƒ}|s dStjƒ}||_tj||ƒdS(Ni(RRRáRÖttagMCChatBubbleBoxStatetBoxStateRÜRÝ(RtboxStatet boxStatePack((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRÇ
s     cCsÿtjƒj|ƒ}|j}|tjkrKtjd||jƒƒdSx­tdtj    dƒD]•}t
|d|ƒs¡tjd||f|jƒƒqbnt |d|ƒ}t j |tj||f|ƒtjd|||f|jƒƒqbWdS(Ns!СÖúÊÖ²»Ö§³Ö¸ÃÉèÖñàºÅ! setNum=%sisValue%ss+СÖúÊÖ²»Ö§³Ö¸ÃÖµ±àºÅÉèÖÃ! setNum=%s,value%ss"СÖúÊÖÖµÉèÖÃ: setNum=%s,value%s=%s(R!RZR[tSetNumRtLittleHelperSetNumCountRaRäR tLittleHelperValueCountthasattrR RR)t!Def_Player_Dict_LittleHelperValueRã(RYR:RRtsetNumRtvalue((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytOnSetLittleHelper1
s      'cCsg}xÈttjdƒD]³}d}xŽtdtjdƒD]v}|jtj||fƒ}|skq=n|s‰tjƒ}||_    nt
|d|ƒr=t |d||ƒq=q=W|r|j |ƒqqW|sÛdStj ƒ}||_t|jƒ|_tj||ƒdS(NisValue%s(R RRöRjR÷RRùRÖttagMCLittleHelperFuncSetRõRøtsetattrRPttagMCLittleHelperSett FuncSetListR&t FuncSetCountRÜRÝ(Rt funcSetListRútfuncSetRRûtsetPack((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRÆ@
s*       cCstjƒj|ƒ}|j}|j}|dkr |s?dntddƒd}x1ttjƒD] }t    j
|tj ||ƒqbWtj d||fƒnj|dtjkrÈtj d|ƒdStj d||fƒ|rëdnd}tj|tj ||ƒdS(    Niÿiiiis"ÉèÖÃÈ«²¿Òýµ¼×´Ì¬: isOK=%s,value=%ss0ÉèÖÃÒýµ¼Ê§°Ü, ³¬¹ý×î´óÖ§³Ö¼Ç¼λ£¡ guideIndex=%ss"ÉèÖÃÒýµ¼³É¹¦ guideIndex=%s,isOK=%s(R!RZR[t
GuideIndextIsOKRíR RtDef_GuideStateKeyCountRR)tDef_Player_Dict_GuideStateRãRaRî(RYR:RRt
guideIndextisOKRûR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt OnSetGuideOKb
s         cCsutjƒ}g|_x7ttjƒD]&}|jj|jtj|ƒƒq%Wt    |jƒ|_
t j ||ƒdS(N( RÖttagMCGuideStatet
GuideStateR RRRPRRR&R'RÜRÝ(RtguideStatePackR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR6w
s     $cCs)tjƒ}||_tj||ƒdS(N(RÖttagMCShowGuidetGuideIDRÜRÝ(RtguideIDt    showGuide((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt    ShowGuide
s     cCsdS(N((RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt
PlayerJump¡
scCsjtjƒj|ƒ}|sdS|jƒ}|jƒ}||krGdS|tjkrftj|ƒndS(N(    R!RZR[tGetPlayerLastActionR7RjR8R9R;(RYRRt
lastActiont    curAction((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytOnPlayerChangeActionª
s   cCstjƒj|ƒ}tjƒ}|jƒ}|dksE|dkrIdS|j|ƒ|jƒdkr{tj    ||ƒndS(Niid(
R!RZR[RjtIPY_CSetHPRestoretGetValuetSetHPRestoreSettingR®RtPlayerAutoRestoreHP(RYRRRêtcurValue((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytHPRestoreSettingË
s   cCstjƒj|ƒ}tjƒ}|jƒ}|dksE|dkrIdS|j|ƒ|jƒdkr{tj    ||ƒndS(Niid(
R!RZR[RjtIPY_CSetMPRestoreRtSetMPRestoreSettingR®RtPlayerAutoRestoreMP(RYRRRêR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytMPRestoreSettingé
s   cCstjƒj|ƒ}tjƒ}|jƒ}|jƒ}|dkrg|tjkrg|jtjƒn¨|dkr•|tj    kr•|jtj    ƒnz|dkrÃ|tj
krÃ|j tj
ƒnL|dkrñ|tj krñ|j tj ƒntj d||jƒƒdSdS(Niis"SetMoneyType = > ½ðÇ®ÀàÐÍ = %s´íÎó(R!RZR[RjtIPY_CSetMoneyTypeRt GetMoneyTypetTYPE_Price_Gold_MoneytSetUseGoldTypetTYPE_Price_Gold_PapertTYPE_Price_Silver_MoneytSetUseSilverTypetTYPE_Price_Silver_PaperRRä(RYRRRêtcurTypet curMoneyType((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt SetMoneyType s   cCsmtjƒj|ƒ}||jƒtjkr2dS|j|ƒtj||ƒt    j||ƒt
|ƒdS(N( R!RZR[tGetPosInfoTickRtDef_GetOtherPosIntervaltSetPosInfoTickRºtNotifyPosInfoToPlayerRntOnSendMapSignCnt(RYRR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt PlayerMapInfo/ s 
cCs}tjƒj|ƒ}tjƒ}|jƒ}tjƒjƒ}|tj    krltj
d||j ƒƒdSt ||ƒdS(Ns±¾µØÍ¼²»¿ÉÇл»PKģʽ,mapID=%s( R!RZR[RjtIPY_CChangeAttackModetGetModeRKRLRtDef_CanNotChangeAtkModelMapRRätChangeAttackMode(RYRRRêt sendPackModetmapID((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerChangeAttackModeR s  
cCsÔ|tjks|tjkr3tjd|ƒdS|jƒ|krZtjd|ƒdStjƒjƒ}|td|ƒ@sštjd||fƒdS|tjkr¹t    j
|ƒn|j |ƒt |ƒdS(Ns*±ä¸üPKģʽÒì³££¬²»´æÔÚ¸Ãģʽ!attackMode=%ss PKģʽÏàͬ£¬²»±ä¸ü!attackMode=%sis3±¾µØÍ¼½ûÖ¹Çл»¸Ãģʽ£¡attackModels=%s,changeMode=%s( RjtamPeacetamMaxR!RãRÖRKtGetAttackModelsRíRˆtClearSummonAngry_PlayerR×RV(Rt
attackModet attackModels((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR7l s 
cCs]tjƒj|ƒ}tjƒ}|jƒ}tj|||ƒtj|ƒ}|j    ƒdS(N(
R!RZR[RjtIPY_CCancelBufft    GetBuffIDRNRORtRefreshPlayerAttrByBuff(RYRRRêRRI((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerCancelBuff• s 
 
cCstjtƒ||ƒdS(N(R!RWt__Func_StartGameEvent(RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytStartGameEvent¼ scCs5tjƒj|ƒ}|jƒdkr+dStjƒ}|jƒ}|tjkrftj    ||ƒdS|tj
krydSt j t j|ƒ}|dkr¹t j|t j|ƒs¹dSn|jƒ}||t jkrÜdStj||ƒsòdStj|||ƒs dStj|tjƒtj|||ƒdS(Ni(R!RZR[R®RjtIPY_CStartGameEventRtgeNullR9R:tgeFishR?tGetActBitByActionRtDef_ActBit_GameEventRjR@tDef_Obj_ActState_ClientActtGetGameEventTicktDef_ShowEventTimetCheckCanBeginGameEventtCanProcessGameEventRRgR8RF(RYRRRêt    eventTypet    curActBittlastShowEventTick((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyREÅ s4            cCs;tjƒj|ƒ}|jr$dnd}|j|ƒdS(Nii(R!RZR[tAdultt ChangeAdult(RYR:RRtadult((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt
PySetAdult" s cCsÜtjƒj|ƒ}||jƒtjkr2dS|jƒdkrHdStj|tj    t
j ƒsgdS|j ƒrwdS|j ƒt
jkrdS|jƒt
jkr©dS|j|ƒt
jƒ}tj||jƒƒtS(Ni(R!RZR[tGetShowFaceTickRRNR®R?R@RLRjtoalLookRºR7RhRIRJtSetShowFaceTickt IPY_CShowFaceRtDoPlayerShowPlayerFaceRR(RYRRRê((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytShowFace; s&        cCsY|jƒsdS|jƒdkr&dStj|ƒtkr?dS|jƒtkrUdStS(Ni(RŸR®RRdRRc(R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytCheckPlayerStopMoveb s cCstjtƒ||ƒdS(N(R!RWt__Func_PlayerCanResetWorldPos(RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerCanResetWorldPos~ scCs)tjƒj|ƒ}tj||ƒdS(N(R!RZR[RtDoPlayerResetWorldPos(RYRR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR_‡ scCs-tjƒj|ƒ}|jƒt|ƒdS(N(R!RZR[t    ExitEventtNotifyChangeMapFail(RYRR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerChangeMapFailCallback’ s
 
cCs7|jtƒtjƒ}|jƒtj||ƒdS(N(R5RRÖttagMCChangeMapFailRØRÜRÝ(RRê((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRc› s
 
cCsdS(N((RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt OnlineReply³ scCsdS(N((RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerSummonMoveé scCsdS(N((RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerSummonAttack5 scCsdS(N((RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerSummonStop scCsŠtjƒj|ƒ}tjƒ}|jƒ}|dkrc|dkrctjd||jƒƒdS|jƒ|krydS|j    |ƒdS(Niis#HideMask -> ·â°üÀàÐÍ´íÎóisHide = %s(
R!RZR[Rjt IPY_CHideMaskt    GetIsHideRRät GetIsHideMaskt SetIsHideMask(RYRRRêtisHide((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytHideMaskÏ s   cCs&tjƒj|ƒ}t||ƒdS(N(R!RZR[t __Func_ExitFB(RYRR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytExitFBï s cCs‘tjƒjƒtjkr=|jƒtjddƒkr=dStjd|j    ƒ|j
ƒƒt j |ƒspdSt j ||ƒtj|ƒdS(NtMapLineisÍæ¼Ò = %s , Ö÷¶¯À뿪¸±±¾(R!RKRuRjR`RLRÞtGetFuncEvalCfgRRqRùRtCanPlayerLeaveFBtDoPlayerLeaveFBRt PlayerLeaveFB(RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRpù s9  c    Cs0tjƒj|ƒ}tjƒ}|jƒ}|dkrWtjd||jƒƒdS|jƒ}d}t    j
ddiƒ}||kr¤t d||dƒ}nt    j
ddƒ}||kr    ||kr    |||kr    tjd||||f|jƒƒdSt ||ƒsdSt j||ƒdS(Nis%ChangeLine -> ·â°ü´íÎó, ÎÞ´ËÏß· = %sRriisF¸ÃµØÍ¼Ã»Óпª·Å´ËÏß·£¬ÎÞ·¨ÊÖ¶¯Çл»£¡mapID=%s,changLineID=%s,maxLine=%s(R!RZR[RjtIPY_CChangeLinetGetLineRaRùRLRÞRstmaxt__CheckCanChangLineRtPlayerChangeLine(    RYRRRêt changLineIDR9tactivityLineIDtactivityMapLineDictt mapLineDict((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt
ChangeLines(     (    cCsñ||jƒtjkr-tj|dƒtS|jƒ}|tjkrXtj    |ƒn#|tj
kr{tj|dƒtStj |ƒržtj|dƒtS|j ƒdkrÄtj|dƒtS|jƒtjkrítj|dƒtStS(NtPK_liubo_500807tGeRen_liubo_71563tGeRen_liubo_850801tGeRen_liubo_760310(t GetLoginTickRtDef_PlayerChangLine_TickRRRÓR7RjtpaSitR¹tDef_PlayerChangLine_StatetIsPlayerInFightRiRjRItDef_PlayerChangLine_VehicleR(RRt playerAction((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRz?s& cCsdS(N((RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt    LineStatexscCsøtjƒjƒ}|tjkritjddƒ}tjƒjƒ}||krY||S|jddƒS|t    j
t    j gkr…dS|j t    j ƒrôtj|t    jƒd}|rô|jƒjƒ|jƒjƒkrñtjddƒdSqôndS(NtDuplicatesRebornTimeiitRebornArguments(R!RKRuRjR`RÞRsRLtgetRtrebornType_HealthtrebornType_UseItemRtDef_PDict_IsAddReviveTiredR:t FindBuffByIDtDef_SkillID_ReviveTiredtGetSkillt
GetSkillLVt GetSkillMaxLV(RR‚tmapTypetfbRebornTimeDictRRtfindBuff((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt GetRebronTime“s $cCs_|jtjƒ}ttjƒƒ}tjd|td||ƒfƒtd||ƒ|kS(Ns¸´»îÀäȴʱ¼ä=%s,passTime=%si(RRRõtintttimeR!RãRy(Rt
rebornTimetplayerDeadTimeTicktcurGameWorldTick((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytCanRebornByTimeOverÂs$ic Cs|jƒ}|jƒ}tjƒ}d}tj}tj}    t||ƒ}
|tjkr~t||
ƒ r~t    j
|dƒt St } |tj krÁt jƒr¨t} q}t    j|tjdƒn¼|tjkrA|jƒsàt Stjƒjtjƒ} | jdƒjdƒ}| jdƒjdƒ}    tj|tj|ƒn<|tjkr€|jƒsmtjdƒt St|ƒs}t Sný|tjkr²|jƒsŸt St |ƒs}t SnË|tj!tj"gkr?t} t j#|ƒ} | s}|jƒsõt S|tj!krt|ƒs9t Sq<|tj"kr<t |ƒs9t Sq<q}n>|tj$krgt    j|tjdƒn|tjkrynt S|j%|ƒ| r¦t j&|||ƒnt'j(|tj)|ƒ|j*tj+ƒrpt'j,|tj-ƒd}|r'|j.ƒj/ƒ}|j.ƒj0ƒ|kr-|d}q-nd}t'j(|tj-||ƒtjd|ƒt    j|tj+dƒnt1j2ddƒd    }t3j4|ƒr¬t3j5|||ƒnt3j6|ƒrÒt3j7|||ƒnt    j    |ƒ}|j8ƒ|j9|j:ƒ|tjƒt    j;|t    j<|ƒƒt j=||ƒ|tj krH| s”tjƒj>|j?ƒ|j@ƒƒ s”|tj$kr¡|jAƒ|jBƒkr¡|jCƒn=|tj$krÞt    jD||jAƒ|jEƒ|jFƒt ƒntGjH|ƒt    jI|tJjKƒtS(
NitRebornCDiis    µØÍ¼ÅäÖò»ÄÜÔ­µØ¸´»îs    ¸´»îÆ£ÀÍBUff buffSkillLV=%stPKConfigiiè(LRùtGetVIPLvR!RKRtDef_MaxRateValueR›RÊR¡RRRÓRÉRtOnPlayerRebornRR)RÃtrebornType_SkilltGetSkillRebornR‘R’tDef_SkillID_SkillReBornt    GetEffecttGetEffectValueRNRORtGetLocalRebornRãt__HealthRebornPayMoneyR‘t__RebornDelItemtrebornType_FBGoldtrebornType_FBUseItemtDecFreeRebornCounttrebornType_MainCitytReborntOnResetFBRebornPlacePosR:R=R>RR’R“R”R•R–R—RÞt
GetFuncCfgR t IsInPKStatetSetPKStateTickt IsInBossStatetSetBossStateTicktRefreshAllStatetSetHPRžt    SetProDeft GetMaxProDeftOnPlayerRebornOverRÌR©RªtGetRebornMapIDRLRÄtPlayerResetWorldPost GetRebornMapXt GetRebornMapYt    PlayerPett AutoSummonPetRgRjRh(RR‚Rt mapBornPlacet curPlayerIDtcurVipLvtgameMapt
moneyPricetresetHpPercenttresetMpPercentRžt
isFBRebornt reBornSkilltfreeBornRšt buffSkillLVt    validTimeRI((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRËÓs¦                            
%' . cCs§tjddƒ}|d}|s&tStj|tj|ƒ}|sHtSi}x6|D].\}}tj|||t    j
|ƒsUtSqUWt j |ddd||ƒtS(NRŽiiit HealthReborn( RÞRsRRt HaveMoneyExRÑtTYPE_Price_Gold_Paper_MoneyRÓtPayMoneyRtDef_Cost_ReviveR!tLogin_Interface_GoldRec(Rt    rebornCfgRÉt costMoneyListtinfoDictt    moneyTypetmoneyCnt((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR­ts
cCs<tj|tjƒ}|stStj||dtdƒtS(NiR³(RtFindItemInPackByEffectExRtDef_Effect_RebornRÓtDelItemR(Rt
rebornItem((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR®ˆs
cCs<tjƒjƒ}|tjkr%dStj|||ƒdS(N(R!RKRuRjR`Rt DoFBOnReborn(RRäRR˜((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR§s
cCsdS(N((RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerUseMakeStoveÀscCsdS(N((RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytQueryFamilyWarPlançscCsˆtjƒj|ƒ}||jtjƒtjtjkrOtj|dƒdS|j    tj|ƒ|j
tj |j ƒdddƒdS(Nt Old_hgg_31379tTruckPosRi( R!RZR[R-RtTYPE_Player_Tick_QueryTruckPosR/RRR0tGameServer_QueryPlayerByIDtqueryType_sqtTruckRñ(RYRR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt QueryTruckPoss&"cCsdS(N((RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytMoveToTruckPos&scCsdS(N((RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt FarIdentifyOscCs…tjƒj|ƒ}||jtjƒtjtjkr?dS|jtj|ƒtjƒj    ƒt
j krqdSt j ||ƒdS(N(R!RZR[R-RtTYPE_Player_Tick_FBStateR/R0RKRuRjR`Rt DoGetFBState(RYRR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt
GetFBStateds&cCsvtjƒj|ƒ}|jƒs%dS||jtjƒtjtjkrOdS|jtj|ƒt    j
||ƒdS(N( R!RZR[RŸR-RtTYPE_Player_Tick_FBHelpR/R0RtDoFBHelp(RYRR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytFBHelp‡s &cCstjtƒ||ƒdS(N(R!RWt__Func_EnterFbGameEvent(RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytEnterFbGameEvent°scCsPtjƒj|ƒ}tjƒ}|jƒ}|jƒ}tj|||ƒdS(N(    R!RZR[RjtIPY_CEnterFbGameEventRLt    GetLineIDRt PlayerEnterFB(RYRRRêR9tclientSendLineID((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRñ¹s    cCsdS(N((RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPointTransportÏs;cCsdS(N((RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytFriendTransPortsc    Cs}tjƒ}|jƒ}|jƒ}|jƒ}|jƒ}|jƒ}tjƒj    |ƒ}t
|||||||ƒdS(N( RjtIPY_CWorldTransferRRLR©Rªt GetExtField1R!RZR[t__Func_WorldTransPort(    RYRt packUseItemtpackTransportTypeR9RáRâtlineIDR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytWorldTransPortjs      c
    Csntjƒj|ƒ}|j}|j}|j}|j}|j}|j}    t    ||||||||    ƒdS(N(
R!RZR[R‡tMapIDtLineIDR2R3tExData1Rû(
RYt
clientPackRRRýR9RþRáRâtexData1((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPYWorldTransPort‚s                        c
Cs«|jƒ|krR||jtjƒtjtjkr<dS|jtj|ƒn|jƒ}tjd||||f|ƒ|dkrdn|}|tj    j
ƒkrÃtj d||ƒdStj    j |ƒ}    t j|ƒsèdSt j||ƒsþdSt|||||ƒ\}}||fd    krBt j|dƒdS|    tjkrut||    ƒ rut||    ƒ rudS|jtj|    ƒt||||d|d|ƒdS(
NsAWorldTransPort packTransportType=%s,mapID=%s,lineID=%s,exData1=%siÿiÿÿÿÿs-WorldTransPort packTransportType = %s, NoFindis#04BBF813-7A30-47A8-927DE1ACCC4F378ERþR(ii(RLR-RtTYPE_Player_Tick_WorldTransportR/R0RäR!RãtDef_PackType_TransportTypeRRaRRtCheckPlayerTransporttCheckTagCountrytGetTransportPosRtDef_Transport_Type_MissiontTransportVipLvRestricttPayForTransportR.tDef_PlayerKey_TransTypet
BeginTrans(
RRýR9RáRâRRþRtplayerIDt transportType((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRûs6&     Rc        
Cs)tj|||||||||ƒ    tS(N(RRÀRÓ(    RR9RáRât    takeTruckRþtmsgtcanLockR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRÊs%cCsX|jƒ|krNtjƒj||ƒsNtj||tjƒ\}}qNn||fS(N(RLR!RKRÌRÅRÆRRÇ(RRttransportMapIDt transportPosXt transportPosY((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR
ås$cCsÃtjdƒ}|stSd}|jƒjtjƒ}tj|||ƒ\}}|s¦tjddƒ}t    |t
j ||t j ƒs¿tjd||fƒtSntj||||tƒtS(Nt TransportPayiis=    ´«ËÍÏûºÄ´¦Àí ´«Ë͵À¾ß²»×ã itemID=%s, Ç®Ò²²»¹»costMoney=%s(RÞRµRRR    RjtrptItemRtGetItem_FromPack_ByIDtTransportPayMoneyRÑRÓRtGMTool_Offline_WorldTransferR!RãRÓt
ReduceItem(RRtitemIDtuseCounttitemPackt    hasEnoughtitemListt    costMoney((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR scCstj|tjƒS(N(R`tGetPrivilegeValueRtVIPPrivilege_FreeTransport(RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR sc    CsŽtj|||ƒ}|gkr%tSxb|D]Z\}}|dkr,tj|||tji|d6ƒtj||dd||ƒq,q,WtS(Nit TransportType(    RRÒRÓRÔRtDef_Cost_TransportR!RÖR(RRÚtmoneyRtnoteMarkt    moneyList((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR%s  cCs5tjƒj|ƒ}tj|ƒ}|jtƒdS(N(R!RZR[Rt
PlayerLvUpR(RYRRRI((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerLvUpRequestDs cCsdS(N((RYR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytDoubleExpState[scCsStjƒj|ƒ}tjƒ}|jƒ}|jƒ}tj||||ƒdS(N(    R!RZR[RjtIPY_CFBSpecilSkillRtGetStateRtUseFBSpecilSkill(RYRRt fbSkillPacktuseTypetuseState((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR0cs
   c    Cs3tjƒrdStjdƒ}tjƒj|ƒ}|j}|j}|jt    |ƒƒ}|svtj
d|ƒdS|d}|j ƒ}    |}
|j ƒ} |    |krÅtj
d|    |fƒdS|
| krìtj
d|
| fƒdSt j|ƒ} |jƒ} tj|ƒ}t    t|dƒƒ}|d}t    |dƒ}t    t|dƒƒ}t j |ƒ}t j|||ƒ}|sŠdSxe|D]]\}}t j|||tji|
d6|d    6|tj6ƒs‘tj
d
t |fƒdSq‘W|j|ƒt    t| |
dƒƒ}|j|ƒ|jƒdS( NtOfflineSys_ExpChangesÀëÏß¾­Ñé¶Ò»»Ë÷Òý´íÎóindex=%sis=ÀëÏß¹Ò»ú·â°ü¶Ò»»¾­ÑéÒì³££¬Íæ¼ÒvipµÈ¼¶ %s, ÏÔʾµÄvipµÈ¼¶ %s £¬s5ÀëÏß¹Ò»ú·â°ü¶Ò»»¾­ÑéÒì³££¬¶Ò»»Ê±¼ä %s, ÀÛ»ýʱ¼ä %s £¬iit
ChangeTimetIndexs3¸ßЧÁ·¹¦£¬£¬½ðÇ®²»×ã##PlayerControl=%s,,moneyCnt=%s(R!R4RúRûRZR[R6t ExchangeTimeRRœRaR¤tGetOfflineMinutesRtGetPlayerReExpRsRtGetWorldAverageLvExpRatetevalRÒRÔRtDef_Cost_OffLineExptDef_Cost_Reason_SonKeytAddExpRytSetOfflineMinutestSyn_OfflineTimeQueryResult(RYt curPackDataRtOfflineExpChangeDictRtmulIndext exchangeTimetrecListtminVIPLvtVIPLvt
useMinutest haveMinutestrExptreLVtworldLvExpRatet    redeemExpt moneyInfoListRÚR#RIt haveMoneyListRÛt offlineTime((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerExpExchangesR         
 
!  
cCsdS(N((RYRAR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytBuyMapSignCountÏs$cCsdS(N((R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR2ùscCsûtjƒj|ƒ}|j}tjj|ƒ}|dkrQtjd|ƒdS|j    t
j ƒ}|t d|ƒ@r‹tjd|ƒdS|j t
jƒdkr¸tjd|ƒdSd|}|jt
jdd|t|ƒƒ|jt
jdƒdS(    Ns Ã»ÓÐÕâ¸ö¼Ò×åÐüÉÍÈÎÎñ arrestID=%sis¸ÃÈÎÎñ½±ÀøÒѾ­ÁìÈ¡ arrestID=%sis$ÒѾ­ÔÚ²éѯÖÐ, ²»Öظ´²éѯ arrestID=%ss%sitFamilyArrestAward(R!RZR[tArrestIDRÑtDef_ArrestOverState_BitDicRRjRãRRt&Def_Player_Dict_FamilyArrestAwardStateRíR t$Def_PlayerKey_FamilyArrestQueryStateRætqueryType_FamilyArrestR&R.(RYR:RRtarrestIDtbitt receiveStatetsendMsg((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytReceiveFamilyArrestAwards"     
"cCs#tjƒj|ƒ}t|ƒdS(N(R!RZR[t"Sync_FamilyArrestAwardReceiveState(RYR:RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt"QueryFamilyArrestAwardReceiveState<s
cCsEtjƒ}|jƒ|jtjƒ}||_tj||ƒdS(N(    RÖt tagFamilyArrestAwardReceiveStateRØRRRVt ReceiveStateRÜRÝ(RtawardReceiveStatetstate((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR^Es  
    cCsg}xOtdtjƒD];}|jtj|ƒ}|dkrGqn|j|ƒqWt|ƒ}|jtj|j    ƒd|t
|ƒƒdS(NitRequestIsFamily( R#Rt!Def_Player_RequestAddFamilyMaxCntRt"Def_Player_Dict_RequestAddFamilyIDRPRªRætqueryType_RequestIsFamilyRùR&(Rt familyIDListRYtfamilyIDR\((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytQueryIsResFamilyRs  c     Cs0tjƒj|ƒ}|j}|j}|j}tjd|||fƒ|tjkrjtjdƒdStj    ƒj
tj ƒ}|s™tj dƒdS|tj kr½tj d|ƒdStj||||ƒrÙdS|jtj|dtjƒ}tj||ƒ}    |    tjkrq|tjkr`|jtj|dtjƒ}
tj|||    |
ƒntjdƒdS|tjkr¬|jtjƒdkr¬tjdƒdSn|jtjdƒ|jƒ} |||| g} tjƒj|jƒddd    d
| tt | ƒƒƒtjd t | ƒƒdS( NsEGiveMixServerCampaignAward campaignType=%s,queryType=%s,awardIndex=%ss$    ¿Í»§¶Ë²»¿É·¢ÁìÈ¡ºÏ·þÓʼþ½±ÀøÀàÐÍs    µ±Ç°·ÇºÏ·þ״̬£¡s5    ºÏ·þ»î¶¯ÀàÐÍ´íÎócampaignType=%s error! not defineis    ÒѾ­ÁìÈ¡¹ý¸Ã½±Àø...is    ÒѾ­ÔÚ²éѯÖÐ...tMixServerCampaignAwards%ss    msgList=%s(!R!RZR[t CampaignTypeR‡R6RãRÑt Def_MSCGameServerQuery_MailAwardRßRàRáRaRêtMixServerCampaigntDoMixServerCampaignOnMapServerRRRëRìtGetDataByDigitPlacetDef_AwardState_Gott!Def_MSCGameServerQuery_QueryAwardRítSync_MixServerCampaignAwardR t&Def_PlayerKey_QueryMixServerAwardStateR.t GetFamilyIDtGameServer_QueryPlayerResultRùR&Rª( RYR:RRRót    queryTypet
awardIndextisMixt awardRecordt
awardStatet
recordDataRitmsgList((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytGiveMixServerCampaignAwardtsN                       cCs”tjƒ}|j|ƒ}tj|tjƒsMtj|dtjgƒdS|j    }t
|ƒ}tjƒj |j ƒddd|t |ƒƒdS(NtGeRen_chenxin_676165itPlayerGetReward(R!RZR[RtCheckPackHasSpaceRjRRRt
RewardTypeRªRvRùR&(RYR:Rt playerManagerRt
rewardTypet
resultName((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytClientPlayerGetReward²s      cCsçtjƒ}|j|ƒ}|j}|j}|j}tjd|||fƒ|tjkrrt    j
||ƒnq|tj kr”t j ||ƒnO|tjkr³tj|ƒn0|tjkrÕtj||ƒn|tjkrôt j|ƒnï|tjkrtj||ƒnÍ|tjkr8tj||ƒn«|tjkrWt    j|ƒnŒ|tjkrvtj |ƒnm|tj!kr˜tj"||ƒnK|tj#krºt$j%||ƒn)|tj&krÜt'j(||ƒn|tj)krþt*j+||ƒnå|tj,kr t-j.||ƒnÃ|tj/kr?t0j1|ƒn¤|tj2krat0j3||ƒn‚|tj4kr€t5||ƒnc|tj6krŸt7j8|ƒnD|tj9krÁt:j;||ƒn"|tj<krãt=j>||ƒndS(Ns5PlayerGetReward: rewardType=%s,dataEx=%s,dataExStr=%s(?R!RZR[R‚tDataExt    DataExStrRãRtDef_RewardType_ActivityRŠtGetActivityAwardtDef_RewardType_FamilyActivityR“tGetFamilyActivityAwardt(Def_RewardType_ChampionFamilyDailyRewardtGameLogic_FamilyWartGetChampionFamilyDailyRewardtDef_RewardType_XMZZWinCntR²tGetXMZZWinPrizetDef_RewardType_FamilyDayAwardtGetFamilyDayAwardtDef_RewardType_LVAwardRntGetPlayerLVAwardtDef_RewardType_XBXZR¨tOnGetXBXZAwardtDef_RewardType_DayRealmPointtGetRealmPointAwardtDef_RewardType_GoldGiftFirstRqtGetPlayerGoldGiftFirsttDef_RewardType_MWSoulAwardtGetMWSoulAwardtDef_RewardType_FreeGoodsR¼tOnGetFreeGoodstDef_RewardType_CostRebateRœtOnGetCostRebateAwardtDef_RewardType_TotalRechargeRžtOnGetTotalRechargeAwardtDef_RewardType_BossRebornR½tGetBossRebornActionAwardtDef_RewardType_FCRechargeR¾tGetFCRechargeAwardtDef_RewardType_FCPartytGetFCPartyAwardtDef_RewardType_DownLoadtGetDownloadAwardtDef_RewardType_WishingWellRÄtDoGetWishingAwardtDef_RewardType_OpenFuncRttGetFuncOpenAwardtDef_RewardType_IceLodeStartGameLogic_IceLodetGetIceLodeStarAward(RYR:RRƒRR„tdataExt    dataExStr((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR€Çs^             cCs<tjƒ}|jƒ||_||_tj||ƒdS(N(RÖttagMCPlayerRewardGetRecordRØR‚tRewardGetRecordRÜRÝ(RR„trewardGetRecordRê((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytSync_RewardGetRecordInfos  
        cCsŒtjƒj|ƒ}t|jƒ}tjdƒ\}}}|jddg|ƒ}d}    x:t|ƒD],\}
} t    j
|t j |    |
f| ƒqhW|jddg|ƒ} d}    x:t| ƒD],\}
} t    j
|t j |    |
f| ƒqÄW|jddg|ƒ} d}    x:t| ƒD],\}
} t    j
|t j |    |
f| ƒq Wd}    |j|    dƒ} t    j
|t j |    df| ƒdS(NtAutoFightSettingt
BasicSkillit    AreaSkillRNtHPPackagePercent( R!RZR[R;tDataRúRûRt    enumerateRR)RtDef_PDict_AutoFightSetting(RYR:RRt settingDicttBasicSkillCounttAreaSkillCounttBuffSkillCounttBasicSkillListtKeyt
ValueIndexR!t AreaSkillListt BuffSkillList((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytOnSaveAutoFightSetting!s&$$$ c Cs¡tjdƒ\}}}i}d}g}x@t|ƒD]2}|jtj||fdƒ}|j|ƒq7W|||<d}g}    x@t|ƒD]2}|jtj||fdƒ}|    j|ƒqW|    ||<d}g}
x@t|ƒD]2}|jtj||fdƒ}|
j|ƒqéW|
||<d}|jtj|dfdƒ}|||<tjƒ} | j    ƒd|| _
t | j
ƒ| _ t j|| ƒdS(NR¹RºiR»RNR¼s%s(RúRûR RRR¿RPRÖttagMCAutoFightSettingRØR½R&tSizeRÜRÝ( RRÁRÂRÃRÀRÅRÄRÆR!RÇRÈRê((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytSync_AutoFightSetting?s:
 
 
 
 
 cCs3tjƒj|ƒ}|sdStj||ƒdS(N(R!RZR[R¢tOnQueryBossHurtList(RYR:RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRÍgs
cCs    tjƒj|ƒ}|sdS|jsutj}||j|ƒtj|krbtjdƒdS|j    ||ƒn|j
}|j }|j }g}|ryt |j ƒ}Wn&tk
r×tjd|j ƒdSXt|tƒstjdt|ƒƒdSntjd||t|ƒfƒtjƒjƒ}    |    |krÊtj||ƒ}
tj|ƒ} | j|ƒ} d} | rŽ| jƒ} ntjd|    || t|
ƒfƒtj||| |
ƒn;dt|||gƒ}|jtjdd|t|ƒƒdS(    Ns OnQueryMapNPCInfo ²éѯ¹ýÓÚÆµ·±£¡sOnQueryMapNPCInfo, npcIDList=%ss-OnQueryMapNPCInfo, npcIDList=%s is not list£¡s7OnQueryMapNPCInfo tagMapID=%s,tagLineID=%s,npcIDList=%sisB    Í¬µØÍ¼²éѯcurMapID=%s,tagLineID=%s,playerCnt=%s,npcInfoDict=%ss%stNPCInfo(R!RZR[t IsNoTimeLimitRt TYPE_Player_Tick_QueryMapNPCInfoR-R/RãR0RRt    NPCIDListR;t BaseExceptionRat
isinstancetlistRªRKRLRˆt
GetNPCInfoRjt GetMapCopyPlayerManagerByFbIndextGetPlayerCountt SyncNPCInfoRætqueryType_NPCInfoR&(RYR:RRttickTypettagMapIDt    tagLineIDt queryNPCStrt    npcIDListRRt npcInfoDictRRƒt    playerCntR\((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytOnQueryMapNPCInforsN                                c Cs©tjƒj|ƒ}|sdS|jsTtj|tj|ƒsTtjdƒdSn|j}|j    }|j
}g}|räyt |j
ƒ}Wn&t k
r¶tj d|j
ƒdSXt|tƒsätj dt|ƒƒdSntjd||t|ƒfƒtjƒjƒ}||krjtj||ƒ}    tjd||t|    ƒfƒtj|||    ƒn;dt|||gƒ}
|jtjdd|
t|
ƒƒdS(    Ns#OnQueryMapNPCCntInfo ²éѯ¹ýÓÚÆµ·±£¡s"OnQueryMapNPCCntInfo, npcIDList=%ss0OnQueryMapNPCCntInfo, npcIDList=%s is not list£¡s:OnQueryMapNPCCntInfo tagMapID=%s,tagLineID=%s,npcIDList=%ss5    Í¬µØÍ¼²éѯcurMapID=%s,tagLineID=%s,npcInfoDict=%ss%sitNPCCnt(R!RZR[RÏtCheckPlayerTickRRÐRãRRRÑR;RÒRaRÓRÔRªRKRLRˆt GetNPCCntInfotSyncNPCCntInfoRætqueryType_NPCCntR&( RYR:RRRÛRÜRÝRÞRRRßR\((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytOnQueryMapNPCCntInfo«s@                           cCs#tjƒj|ƒ}|jƒdS(N(R!RZR[Rf(RYR:RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytQueryWorldTickÚs
cCs”tjƒ}|sdStjƒ}|jƒ|j|_|j|_|j    |_
|j |_ |j |_|j|_|j|_tj||ƒdS(N(R!RùRÖttagServerDateTimeRØtyeartYeartmonthtMonthtdaytDaythourtHourtminutetMinutetsecondtSecondt microsecondt    MicSecondRÜRÝ(Rt
serverTimetserverDateTime((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR0äs  
       cCsôtjƒ}|sdStjƒ}tjƒ}|jƒ|jtjƒ|_    |jtj
ƒ|_ |jtj ƒ|_ |jtjƒ|_|j|_|j|_|j|_|j|_|j|_|j|_|j|_tj||ƒdS(N( R!RùRßRÖttagOpenServerDayRØRàRÑtDef_Notify_WorldKey_ServerDayRïRát IsMixServert Def_Notify_WorldKey_MixServerDaytMixDayt%Def_Notify_WorldKey_OpenServerWeekdayt OpenWeekdayRêtNowYearRìtNowMonthRîtNowDayRðtNowHourRòt    NowMinuteRôt    NowSecondRöt NowMicSecondRÜRÝ(RRøtgwtpackData((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR1ûs&   
       cCstjƒj|ƒ}|jtjƒtjkr4dSt|||ƒsÿ|jƒ|j    ƒ}}tj
ƒj ||ƒt krìt j||dƒ}|jƒ|krÑ|j    ƒ|krÑtjd||fƒdS|jƒ}|j    ƒ}n|j||ƒndS(NisÍæ¼Ò×ø±ê¿¨ËÀ %s %s(R!RZR[RRR=R>tPYPlayerNormalMoveR©RªRKRÌRRÅtGetEmptyPlaceInAreaRaRÈ(RYRRRRáRât    resultPos((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt PYPlayerMove!s $ c Csõt|ƒstS|j}|j}|j}|j}|j}|j}|j}    |j    ƒ}
|    dkr’||
dkr’t
j d||
fƒtSt
j ƒj ||ƒs»t
j dƒtS|jƒ|kr,|jƒ|kr,|    dkrÿ||
dkrÿtS|j|ƒt|||||||    ƒtSt
j ƒjƒtjkrftj||||ƒsftSn|jƒ} | tjtjgkrŽtStj||||ƒs´|jƒtSt
j|jƒ|jƒ||ƒ} | dkrt
j d|jƒ|jƒ||f|jƒƒtS|j ƒtj!krBt"j#||ƒntj$|tj%ƒ|j&||ƒt|||||||    ƒ|j|ƒ|j'ƒj(ƒ} | rñ|    dksÈ|| j)ƒdkrñt*j+|||ƒ| j,tj-ƒqñntS(    Nii2smove ·¢°üÌ«¿ì ÊÕ°ü%s - ÉÏÒ»´Î%ss
ÒÆ¶¯Õϰ­µãiÞis)ÒÆ¶¯¾àÀë¹ý´ó£¬ Íæ¼Ò×ø±ê %s-%s  ÊÕ°ü %s-%si,(.RCRtDirt
ClientPosXt
ClientPosYt    SeverPosXt    SeverPosYRHtMoveTypetGetClientMoveTickR!RãRKRÌRÓR©RªtSetClientMoveTicktPyNotifyPlayerMoveRuRjR`RRaRIRJR´RReRfR1RùR7R8R9R:RgRhR6RMRNt GetActionTickRcROt SetCurActiont    laNPCNull(RRRtmoveDirt
clientPosXt
clientPosYtsendPack_SeverPosXtsendPack_SeverPosYRTtmoveTypet lastMoveTickRUR±RV((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR
7s`                               $  
$  "cCstjƒ}|jƒ|jƒ|_tj|_||_||_    ||_
||_ ||_ |j ƒ|_||_tj||tdƒdS(Ni(RÖttagMCPYPlayerMoveRØRùR#RjRœR%RRRRRtGetSpeedtSpeedRRR9RÓ(RRRRRáRâRRê((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR¡s 
                         c    Cs|jtjƒ}|r2tjd|jƒƒdStjdƒ}|dkr”t|ƒ}t    j
|t j |ƒ}||kr”t j|dƒdSnt j|tjdƒ|dkrÕt jd|jƒg|ƒn9x6|D].\}}}tj||||t j gƒqÜWt|ƒdS(Ns&    ·Ö°üÏÂÔØ½±ÀøÒÑÁìÈ¡£¬²»¿ÉÖØ¸´ÁìÈ¡£¡t
DownRewarditGeRen_chenxin_998371itSubpackageDownload(RRtDef_PDict_DownloadAwardStateR!RRùRÞRsR&RtGetItemPackSpaceRjRRRR)t SendMailByKeyRhtGivePlayerItemR¿(    RR³R{t awardItemListt    needSpacet    packSpaceRtitemCnttisBind((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR«²s$    #
cCs?tjƒ}|jƒ|jtjƒ|_tj||ƒdS(N(    RÖttagMCPackDownloadRecordRØRRR'tRecordRÜRÝ(RRê((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR¿Ës
 
cCsEtjƒ}|jƒ||_||_||_tj||ƒdS(s»Í¨ÖªÇ°¶ËÏòij¸öµãÒÆ¶¯
                ÕâÀïǰ¶Ë¿ÉÄÜÐèÒªÕë¶Ôij´ÎÒÆ¶¯×ö¶îÍâ´¦Àí£¬±ÈÈçÒÆ¶¯µ½Ä³¸öµãºóÐèÒª×Ô¶¯Õ½¶·µÈ
                ËùÒÔÕâÀïÖ»×ö֪ͨǰ¶Ë¿ÉÒÔÏòij¸öµãÒÆ¶¯£¬×îÖÕÒÆ¶¯ÓÉǰ¶Ë·¢Æð
    N(RÖttagMCNotifyPlayerMoveRØR2R3tNPCIDRÜRÝ(RRáRâtnpcIDRê((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytNotifyPlayerMoveÓs 
            (öR RjR!RRÅRRRNRRºR|RnRˆR9R:RR£RRhRWRªR½RúRcR?RÑR\RlRÜRÖRrR%RRRyR´RnRqRvRnRÃRFR“R€RDRRŽRŠR‹RÃR¢RÄRR‘R•RèR¼R—R±RµR^RÉR™RtR¨R„RŽR½RYR~R†R¥R§RÞRHR]R‚R`RbR¬R®R°R¸R²R¡R RœRžRŸR¾R„RÂRÈRGRpRºRÁtdatetimeRtmathtreRRRR-RsRURQRöRRüRýR8R@R>R?RTRAR<RER¶RXRfReR7RRŽRžRRVRëR§R¹RýRüR›R;RWRYRXRCRbRRKR|R{RƒRR‰R‹RŠRÀRÂRÈRÁRÉRÛRíRðRÇRüRÆR R6RRRRR"R-R3R:R7RDRFRERWR]R^R`R_RdRcRfRgRhRiRoRqRpR€RzRŒR›R¡RËR­R®RRáRâRèRéRêRíRðRòRñR÷RøRÿRRûRÓRR
R R RR,R-R0RQRRR2R]R_R^RjR~R†R€R¸RÉRÌRÍRáRçRèR0R1R R
RR«R¿R5(((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt<module>sè                                                                                                                (        #    ÿd         *                      9                     1    6            
        
    T    4    
        
    Ê                 <            +    %    2    r            Y    +    V ]            _    #        .            N    7                H                            "        
                 !        #    #    #        )    '            ]        '                                 6    L    h    2         
    !    %    9        /     ¡                '    !        )        #    )                K    P         =                                P    *        ,                 "    >        O             (         9    /    
        &        j