cehua_lyf
2019-03-06 3c8ee0a8a524a6251d7d5aae2372e76fd8a99b9c
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
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
`î|\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`ddlaZaddlbZbddlcZcddldZdddleZeddlfZfddlgZgddlhZhddliZiddljZjddlkZkd„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Œ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™d0„Zše›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_„ZÊd`„ZËda„ZÌdb„ZÍdc„ZÎdd„ZÏde„ZÐdf„ZÑdg„ZÒeÓdh„ZÔdi„ZÕdje›dk„ZÖdl„Z×dje›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çddjd}„Zèeédd~e›djd„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•„Zd–„Zd—„Zd˜„Zd™„Zdš„Zd›„Zdœ„Zd„Zdjdž„Z    dS(ŸiÿÿÿÿNcCsdS(N((ttick((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt
InitPlayer‚scCs§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‹scCsFtj||ƒrdStjƒs5tj|tƒntj|ƒdS(N(    tFBLogictPlayerLoginInFBCheckt    GameWorldt IsCrossServert
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 GetLoginTimeRtGetDateTimeByStrtsplittTYPE_Time_Format_DaytDataRecordPacktDR_OtherDayLogintGetAccIDtGetIPRtNomalDictSetProperty(Rt logoffTimeStrt loginTimeStrtlogoffTimeDate((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytNoteOtherDayLoginÌs%cCs#tjƒj|ƒ}t|ƒdS(N(RtGetPlayerManagertGetPlayerByIndextDoEnterCustomScene(tindext
clientDataRR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytOnClientStartCustomSceneîs
cCs||jtƒ|jtƒ|jdƒ|jƒjƒ}|rO|jtƒn|jtjdƒt    j
d|j ƒƒdS(NiisÍæ¼Ò¿ªÊ¼×Ô¶¨Ò峡¾°!( t SetCanAttacktFalset
SetVisibletSetSightt    GetPetMgrt GetFightPettSetDictRtDef_PlayerKey_ClientCustomSceneRtLogt GetPlayerID(RtcurPet((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR1ós   cCs |jtƒ|jtƒ|jdƒ|jƒ|jtjƒ|jƒ|jƒjƒ}|rs|jtƒn|j    tj
dƒt j d|j ƒƒdS(NiisÍæ¼ÒÍ˳ö×Ô¶¨Ò峡¾°!(R5RR7R8t RefreshViewRtDef_PlayerSight_DefaultR9R:R;R<RR=R>(RR?((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytDoExitCustomScenes   
 
c    Cstjƒj|ƒ}t|ƒ|jƒdksF|jƒtjkr\t|t    j
|ƒn|j t    j dƒt j |ƒ}|jƒt|ƒtj|ƒt j|ƒr¾tj|ƒn|jt    jƒrÝt|ƒnd}tjƒj|jƒddd|t|ƒƒdS(NiRtRefreshMainServerRole(RR/R0t Sync_DBPlayertGetHPtGetPlayerActiont IPY_GameWorldtpaDietPlayerRebornByTypeRtrebornType_SystemR;t Def_PlayerKey_NotifyAllAttrStateRtReCalcAllStatet__Sync_ClientBufft PlayerStatetSync_PKBossStatet GetCrossMapIDtCrossRealmPlayertDoExitCrossRealmt GetDictByKeyR<RBtGameServer_QueryPlayerResultR>tlen(R2R3RRt playerControltmsgInfo((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytOnRefreshMainServerRoles 
'
 
  .cCs¢tjƒ}|jƒ|_|jƒ|_|jƒ|_|jƒ|_    |j
ƒ|_ |j ƒ|_ |jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_|j ƒ|_!|j"ƒ|_#|j$ƒ|_%|j&ƒ|_'|j(ƒ|_)|j*ƒ|_+|j,ƒ|_-|j.ƒ|_/|j0ƒ|_1|j2ƒ|_3|j4ƒ|_5|j6ƒ|_7|j8ƒ|_9|j:ƒ|_;|j<ƒ|_=|j>ƒ|_?|j@ƒ|_A|jBƒ|_C|jDƒ|_E|jFƒ|_G|jHƒ|_I|jJƒ|_K|jLƒ|_M|jNƒ|_O|jPƒ|_Q|jRƒ|_S|jTƒ|_U|jVƒ|_W|jXƒ|_Y|jZƒ|_[|j\ƒ|_]|j^ƒ|__|j`ƒ|_a|jbƒ|_c|jdƒ|_e|jfƒ|_g|jhƒ|_i|jjƒ|_k|jlƒ|_m|jnƒ|_o|jpƒ|_q|jrƒ|_s|jtƒ|_u|jvƒ|_w|jxƒ|_y|jzƒ|_{|j|ƒ|_}|j~ƒ|_|j€ƒ|_|j‚ƒ|_ƒ|j„ƒ|_…|j†ƒ|_‡|jˆƒ|_‰|jŠƒ|_‹|jŒƒ|_|jŽƒ|_|jƒ|_‘|j’ƒ|_“|j”ƒ|_•|j–ƒ|_—|j˜ƒ|_™|jšƒ|_›|jœƒ|_|jžƒ|_Ÿ|j ƒ|_¡|j¢ƒ|_£|j¤ƒ|_¥|j¦ƒ|_§|j¨ƒ|_©|jªƒ|_«|j¬ƒ|_­|j®ƒ|_¯|j°ƒ|_±|j²ƒ|_³|j´ƒ|_µ|j¶ƒ|_·|j¸ƒ|_¹|jºƒ|_»|j¼ƒ|_½t¾j¿||ƒdS(N(ÀtChPyNetSendPackt tagMCDBPlayerR(tAccIDR>tPlayerIDt GetPlayerNamet
PlayerNamet GetAccStatetAccStatet
GetGMLeveltGMLeveltGetSextSextGetJobtJobtGetReincarnationLvtReincarnationLvtGetLVtLVtGetLVExtLVExtGetLV2tLV2t GetExpPointtExpPointt GetTotalExptTotalExpt GetFamilyIDtFamilyt GetFamilyNamet
FamilyNamet GetTeamHornort
TeamHornortGetFamilyHornort FamilyHornortGetFamilyActiveValuetFamilyActiveValuetGetLastWeekFamilyActiveValuetLastWeekFamilyActiveValuetGetCountryHornort CountryHornortGetCountryLastWeekHornortCountryLastWeekHornortGetMatetMatetGetGoldtGoldt GetGoldPapert    GoldPapert    GetSilvertSilvertGetSilverPapert SilverPapert GetFightPointt
FightPointt GetHappyPointt
HappyPointt    GetLineIDtLineIDtGetMapIDtMapIDtGetPosXtPosXtGetPosYtPosYtGetRebornMapIDt RebornMapIDt GetRebornPosXt
RebornPosXt GetRebornPosYt
RebornPosYtGetStatetStateREtHPtGetXPtXPtGetHPRestoreSettingtHPRestoreSettingtGetMPRestoreSettingtMPRestoreSettingt GetFreePointt    FreePointtGetFreeSkillPointtFreeSkillPointt
GetBaseSTRtBaseSTRt
GetBasePNEtBasePNEt
GetBasePHYtBasePHYt
GetBaseCONtBaseCONtGetSTRtSTRtGetPNEtPNEtGetPHYtPHYtGetCONtCONt
GetPKValuetPKValuet GetBackpackLVt
BackpackLVtGetWarehouseLVt WarehouseLVt    GetTeamIDtTeamIDtGetUseGoldTypet UseGoldTypetGetUseSilverTypet UseSilverTypet GetAttackModet
AttackModetGetLastWeekOnlineTimetLastWeekOnlineTimetGetClientLineIDtFBIDt GetFamilyLVtFamilyLVtGetFriendFavort FriendFavort    GetEnergytEnergytGetEquipShowSwitchtEquipShowSwitcht GetLuckValuet    LuckValuet
GetExAttr1tExAttr1t
GetExAttr2tExAttr2t
GetExAttr3tExAttr3t
GetExAttr4tExAttr4t
GetExAttr5tExAttr5t
GetFactiontFactiontGetInfamyValuet InfamyValuetGetOfficialRankt OfficialRanktGetChangeCoinPointTotaltChangeCoinPointTotaltGetVIPLvtVIPLvtGetVIPLvForPhonet VIPLvForPhonet
GetExAttr6tExAttr6t
GetExAttr7tExAttr7t
GetExAttr8tExAttr8t
GetExAttr9tExAttr9t GetExAttr10tExAttr10t GetModelMarkt    ModelMarkt GetExAttr11tExAttr11t GetExAttr12tExAttr12t GetExAttr13tExAttr13t GetExAttr14tExAttr14tGetOperateInfot OperateInfot
GetOperatetOperatet GetServerIDtServerIDt GetExAttr15tExAttr15t GetExAttr16tExAttr16t GetExAttr17tExAttr17t GetExAttr18tExAttr18t GetExAttr19tExAttr19t GetExAttr20tExAttr20t NetPackCommont SendFakePack(RtdbPlayer((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRD2s cCsš|jtjdƒt|ƒt|ƒ|jƒ|jƒtjƒrW|j    t
ƒnt ||ƒtjƒr–|j    t ƒt j||jƒƒndS(Ni(R;RtDef_PlayerKey_LoadMapIsLogintSync_PyServerDataTimeToClienttSync_OpenServerDaytSync_ClientPlayerLogintSync_GameServer_MapIDRRtSetForbiddenSyncClientStateRt__DoPlayerLoginServerR6Rt SetCrossMapIDR“(RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt DoPlayerLoginžs
 
 
 
    cCs÷|jtjƒƒt|ƒt|ƒtjƒr¢tj||ƒt||ƒt    j
|ƒt j |ƒt j||ƒtj|ƒtj|ƒ|jƒdStj|ƒ}|tjdkr+tj|tjdƒtj|tjdƒtj|tjdƒtj|ƒr+tj|dƒq+nt|ƒtj |ƒj!ƒtj"|ƒtj#|ƒtj$|ƒtj%||ƒt&|ƒtj'|ƒt(|ƒt)||ƒt||ƒt*j+|ƒt,j+|ƒt    j
|ƒt j |ƒt-|ƒt.j/|ƒt0|ƒt1||ƒt2|ƒt3|ƒt4j5|ƒt6j7|ƒt4j8|ƒt4j9|ƒt:j+|ƒt;j<|ƒt=j>||ƒt?j>||ƒt j||ƒt@jA|ƒt@jB|ƒt@jC|ƒtjD|tEjFƒtGjH||ƒtIjJ|ƒtKj+|ƒtLj+|ƒtMjN|ƒtOjP|ƒtQjR|ƒtj|ƒjS|ƒtTjU|ƒ|jƒtVjW|ƒtXjY|ƒtZj[|ƒt\j]|ƒt^j_|ƒt`ja|ƒtbjc|ƒtdj+|ƒtejf|ƒtgj+|ƒthj+|ƒtijj|ƒtkjl|ƒtjm||ƒtnjo|ƒtpjq|ƒtrjs|ƒttjN|ƒtju|ƒtv|ƒtwjx|ƒtyjx|ƒtzjx|ƒt{jx|ƒt|jx|ƒt}j+|ƒt~j|ƒt€j|ƒt‚jx|ƒtƒj„|ƒt…j†|ƒt‡jˆ|ƒt‰jŠ|ƒt‹jŒ|ƒtjŽ|ƒtj|ƒt‘jx|ƒt’j“|ƒtGj”||ƒt•j–|ƒt—j˜|ƒt™j+|ƒtšj+|ƒt›j+|ƒtœj+|ƒtj+|ƒtžj+|ƒtŸj+|ƒt |ƒtOj¡|ƒt¢jx|ƒt£jx|ƒt¤j+|ƒt¥j+|ƒt¦j+|ƒ|j§ƒt¨|ƒt©|ƒtªjN|ƒt«j“|ƒt¬j+|ƒ|j­dƒ|j®dƒt•j¯|ƒ}|rÈ|j°tEj±|ƒn|j²ƒró|j³t´jµ|j²ƒt¶ƒndS(s2 Íæ¼ÒµÇ¼ÐèÒª´¦ÀíµÄÄÚÈÝ£¬±¾·þ¼°¿ç·þ·þÎñÆ÷·Ö¿ª
    Nièi(·t SetLoginTimeRtGetCurrentDataTimeStrtInitPlayerPackt__Sync_PackDetelRt SkillCommont PlayerLoginMergeServerSkillLogictDoPlayerLoginInMapR&tDR_PlayerLogint EventReporttWriteEvent_logint
PetControltDoLogic_PetInfo_OnLogint PlayerFamilytFamilyPlayerOnLoginCrosst
PlayerTeamtOnPlayerLoginCrossServertBalanceServer_PlayerLoginInitOKRtGetPlayerLeaveServerSecondRtDef_PlayerOfflineProtectTimeR*t Def_Player_Dict_PlayChangeLineIDt Def_Player_Dict_FuncChangeLineIDt Def_Player_Dict_HighChangeLineIDRPRtSyncGuideStatet ItemControlertPlayerItemControlertCheckRolePackEquipAttrtFixOldAddPointtUpdPlayerServerGroupIDtPlayerLoginCheckLearnSkilltPlayerLoginUpdateSkillCDt__Sync_ClientSkilltLoginCheckChangeOldItemRMtInitRealityTimeItemtPlayerGodWeapontOnLogintPlayerPrestigeSyst__DoMixServerFirstLogintPlayerBillboardtBillboardOnLoginR.t__Sync_PlayerOfflinet__SyncPlayerInfoExt SyncPKModeltChEquiptNotifyEquipPartStarLVtOperate_EquipWashtOnEquipWashLogintNotifyEquipPartSuiteLVtSyncAllEquipAttrActiveInfotOperate_EquipStonetPlayerGreatMastert MasterOnLogint    PlayerVipt    DoOnLogintPlayerRefineStoveRtEventResponse_OnEntertEventResponse_OnLogintNotifyRunEndAwardtClearPackEventItemRGt rptAnyWheretPlayerGameWallowtCalc_Wallow_OfflineTimet PlayerLVAwardtSync_LVAwardGetRecordInfot
PlayerCointPlayerGoldGifttOperate_PlayerBuyZhenQiRt GameFuncCommtSync_FuncOpenStatet PlayerSignDaytSignDayOnLogintNotifyPlayerDeadTimetUpdatePlayerNametSync_UpdatePlayerNameCountt PlayerHorsetPlayerHorseLogintPlayerTreasuretOnTreasureLogintPlayerLoginDayAwardtOnLoginNotifyLoginDayAwardtOpenServerCampaigntOnOpenServerCampaignLogintGameLogic_TrialTowertOnFBPlayerLogintGameLogic_GodAreatGodAreaOnLogint    NPCCommontSyncCollNPCTimetPlayerActivitytFBCommont    FBOnLogintPlayerWorldAverageLvtPlayerGoldInvesttPlayerAttrFruittAttrFruitOnLogint PlayerSuccesst SuccOnLogintFamilyPlayerOnLogintPlayerDienstgradtSync_AllDienstgradOnLogint PlayerRecovertRecoverOnLogint
PlayerCoatt OnLogin_CoattPlayerCrossRealmPKtNotifyPlayerAllCurrencytNotifyPlayerBasePointtPlayerCostRebatet OnPlayerLogintPlayerActTotalRechargetPlayerSpringSaletPlayerFlashGiftbagtPlayerFlashSalet BossHurtMngtChItemtSync_ItemDayUseCntt
PlayerRunetPlayerRuneLogintPlayerFamilyRedPackettPlayerFeastRedPackettDoPlayerOnLogintPlayerMagicWeapontPlayerMagicWeaponLogintFunctionNPCCommontShopItemOnLogintPassiveBuffEffMngtOnLoginGFPassivet PlayerDiceExt DiceExOnLogint QuestCommontSync_StoryMissionStatetGameLogic_XMZZt OnXMZZLogintPlayerOnlinePrizetPlayerEquipDecomposet PlayerLogintDoLogic_CheckWallowt    PlayerTJGt NotifyTJGInfot PlayerGeTuitLoginNotifySettingtPlayerFreeGoodstPlayerBossReborntPlayerWeekPartytPlayerFeastWeekPartytPlayerActLogintPlayerFairyCeremonytPlayerNewFairyCeremonytSyncPackDownloadAwardtDoFuncOpenLogict
PlayerDogzt FamilyRobBosstPlayerBindJadeWheeltPlayerWishingWelltPlayerLuckyTreasuretSendDBQueryRechargetSyncLittleHelpertSyncChatBubbleBoxStatet FBHelpBattletPlayerGatherSoult EquipZhuXiantSetStatet
SetFacePict
GetTJGTimetSendGameServerRefreshStatetCDBPlayerRefresh_HappyPointtGetGMForbidenTalktSendPropertyRefresht ShareDefinetCDBPlayerRefresh_ForbidenTalkR6(RRtleaveServerSecondttjgTime((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR¹s
 
 
 
 
 
 
 
 
 
 
 
 
                      
 
 
 
 
      cCsHtjƒ}|jƒ|jƒ|_|jƒ|_tj||ƒdS(N(RYttagMCPlayerInfotCleartIsAdulttGetCreateRoleTimetCreateRoleTimeRR(Rt playerInfoEx((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRH$s  
c
Csztjƒjtjƒ}|s"dS|jƒ}tjƒjtjƒ}|jtj    ƒ}||kr|tj
d||ƒdStjƒjtj ƒ}tj d||f|ƒt j|tj    |ƒtj|dƒtj|dgƒtjddƒ}tjddƒ}tjddƒ}tjdd    ƒ}    td
||    ƒ}
|\} } g} x¥|D]\}}}tjƒj|ƒ}|s‹q[n|jd ƒ}|jƒ}|tjkr»q[n|jdƒ}|sÖq[n||
kr÷|||gg} q[Pq[Wi|d 6|d 6|
d6}|| }t jd|g|d| d| d|ƒtj d|
|f|ƒtj|dt ƒdS(Ns'±¾´ÎºÏ·þÒѾ­µÇ¼¹ý. lastMixServerDay=%ss9Íæ¼ÒºÏ·þÊ׵Ǵ¦Àí! lastMixServerDay=%s,mixServerWorldLV=%st    MixServerit MixServerMailiiiii–itMixServerWorldLVtLastMixServerDayt ItemWorldLVt
MixServer1t    goldPapertsilvertdetails3    ·¢ËͺϷþ²¹³¥Óʼþ: itemWorldLV=%s,addItemList=%stisAll(!Rt GetGameWorldtGetGameWorldDictByKeyRÇtDef_Notify_WorldKey_IsMixServerR>t$Def_Notify_WorldKey_LastMixServerDayRRtDef_PDict_MixLoginDaytDebugLogt(Def_Notify_WorldKey_LastMixServerWorldLVR=RR*R_tDoResetCTGCountRštResetShopItemBuyCountt IpyGameDataPYtGetFuncEvalCfgt
GetFuncCfgtmaxt GetGameDatatGetItemByTypeIDtGetEffectByIndext GetEffectIDtDef_Effect_ItemAddLVtGetEffectValuet SendMailByKeyREt"UpdatePlayerBillboardOnLeaveServerR(Rt isMixServertplayerIDtlastMixServerDayt    playerDaytmixServerWorldLVt mailItemListtworldLVMailItemListt mailMoneyListt worldLVDownt itemWorldLVR×RØtworldLVItemListtitemIDt    itemCounttisBindtitemDatatcurEfftcurEffIDtlvLimitt
detailDictt addItemList((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRD0sR     
(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.pytClearPlayerDeadInfonscCsKtjƒ}tjdƒ}tjdƒ}t|||ƒt||ƒdS(NtPlayerLoginNotify_TimeSecttPlayerLoginNotify_Dict(RtGetCurrentTimet ReadChConfigtGetEvalChConfigtDoNotifyByTimeSecttDoNotifyByDict(RRtcurTimetnotifyByTimeSectt notifyByDict((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerLoginNotifyys   cCsLxE|D]=}tj||dƒs)qntj||d|dƒqWdS(Niii(Rt IsAtActTimeRt
NotifyCode(RRt
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(RRÛ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 CalcEquipGStGetEquipGearScoretSetEquipGearScoreRR=t GetItemTypeIDtGetGUIDR>tDef_VPackCnt_DicttkeysR7tSync_VPackItem_Refresh(Rt itemManagert    packIndextrolePacktitcurItemtnewScorethisScore((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR#¦s" 
      :cCstj||ƒdS(N(RNtProcessTimeEquip(RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR@ßscCsÆtjƒ}|jƒg|_|jƒ}xrt|jƒƒD]^}|j|ƒ}tjƒ}|j    ƒ|_
|j ƒ|_ |j ƒ|_|jj|ƒq>Wt|jƒ|_tj||ƒdS(N(RYttagMCPlayerSkillsRÌtSkillstGetSkillManagertranget GetSkillCounttGetSkillByIndexttagPlayerSkillt
GetSkillIDtSkillIDt GetRemainTimet
RemainTimetGetProficiencyt ProficiencytappendRUtCountRR(RtsendPackt skillManagerR+tcurSkillt    skillInfo((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.pyRMs cCs!tjƒrdStj|ƒdS(N(RRR¨tTJGDeadOffline(RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRGs  %cCs°|jdƒ|jtƒ|jtƒ|jtƒ|jtƒ|jtƒ|jƒtj    krvt
j ||ƒn t
j |ƒt ||ƒtj|tj|ƒtjƒ rètj|ƒrètjd|jƒƒ|jdƒntj||ƒtjƒr|jtƒntj|ƒ}|jƒtjƒrI|jtƒn|j|ƒ|j|ƒ|j tj!|ƒtj"||ƒt#|ƒtj$|jƒƒtt%_&dS(Nis,===µÇ¼±¾·þµØÍ¼Ê±£¬´¦ÓÚ¿ç·þ״̬£¬²»Ë¢ÐÂÊÓÒ°!('tGameServer_SetLoadMapStatet
SetCanMoveR6t    SetInitOKt SetMapLoadOKR7R5RFRGt paGameEventtPlayerGameEventt StopGameEventtTakeoffFishermanEquipmentt__CheckClearBuffOnMapChangeR$tAddBuffBySkillType_NoRefurbishRtDef_SkillID_LimitSuperBuffRRRRPRàR>R8RNtChangePlayerSighRRLRtSetProcessEquipDurgTickt SetLoginTickR;tDef_PlayerKey_CalcOLTimeTicktRefreshRebornPointtSavePlayerMessionInDataServertRemoveLeaveServerPlayerInfot
PyGameDatatg_needRefreshMapServerState(RRRV((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR&?s:         
 
    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( RtGetMapR“R
R titemst    BuffSkilltDelBuffBySkillIDRàR=RtClearBuffOnMapChangeList(RRtcurMapIDt
fbBuffDictt
buffIDListtbuffIDt    mapIDList((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRSscCsdS(N((R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR[•scCstjtƒ||ƒdS(N(Rt GetPsycoFunct__Func_PlayerLogin(R2R((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(RR/R0RRRLR6tPlayerAutoCheckOnlinetPlayerLoginCaptchatKickRGtdisWaitForPlayerLoinErrort    tracebacktErrLogt
format_excRÛt GetDebugLevelt    Exception(R2RRRp((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRk­s    cCstjtƒ||ƒdS(N(RRjt__Func_ChangeMapInit(R2R((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(&RR/R0RR$tPlayerChangeMapUpdateSkillCDR"R&tInitChangeMapPlayerSummonInfotGetTrucktNonetGameServer_Sync_TruckMapIDRTRRURtDef_Player_Dict_PawnTruckLVtSetLVt PlayerTrucktChangeTruckNoteInfoREtUpdateBillboardPlayerTruckR>tGetNameRRiR“R*tSync_PetInfo_ChangeMapRR`t GetMapFBTypeRGtfbtTeamtGameServer_TeamEnterFBt#BalanceServer_PlayerChangeMapInitOKRLR6(R2RRtcurTruckttruckLv((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRuÓs,
 
     
 
  !
 
cCs©|jƒ}tj|ƒtj|ƒtj|ƒ|jƒjtjƒ}|jt    j
ƒ|j ƒ|jƒjtj ƒ}|jt    j ƒ|j ƒ|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_TreasurePackRRÇt rptDogzItemtSetCountRtDef_PackCnt_DogzItemtSync_PackCanUseCountt rptDogzEquiptDef_PackCnt_DogzEquiptrptZhuXianItemtDef_PackCnt_ZhuXianItemtrptZhuXianEquiptDef_PackCnt_ZhuXianEquipt rptTempSwaptDef_PackCnt_TempSwapt rptTempItemtDef_PackCnt_TempItemRGtrptEquiptretMaxRZtDef_AnyWherePackCounttrptPettDef_PackCnt_Pet(RR(tcurPack((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR"'s6    
 
 
 
cCstj}t||ƒS(N(RRUtCheckHasBuffBySkillID(RtskillID((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt__CheckLimitSuperBuffds    cCstjƒj|ƒ}|s9tjd||jƒƒtStj|ƒ}tj||ƒ}|dkrjtS|d}|j    ƒ}|j
|ƒ}|s™tSt S(Ns,Íæ¼ÒÈ¡Ïûbuffʧ°Ü,Êý¾Ý¿âÎÞ´Ëbuff,buffid = %s i(( RRètGetSkillBySkillIDR=R>R6R$t GetBuffTypetGetBuffManagerByBuffTypetGetSkillTypeIDtFindBuffR(RR¡t    buffSkilltbuffTypet    buffTuplet    buffStatetbuffSkillTypeIDtcurBuff((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR ns 
 cCstjtƒ||ƒdS(N(RRjt__Func_LoadMapOK(R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt    LoadMapOKŒsc
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ƒdks¦tjƒ rŒt j|ƒrŒtjd|j    ƒƒq¦|jƒ|j t ƒn|j ƒdkrË|j!t"j#ƒn|j$t ƒ|j%ƒrô|j&t ƒnt'|ƒs|j(t ƒn|j)t ƒ|j*ƒ}|t"j+krct,j-|t.t.ƒs‹t,j/|t.ƒq‹n(|t"j0kr‹t1j2|t.t.t.ƒnt3||ƒt4j5||ƒt j6|t ƒt7j8||ƒtj9||ƒt:j;|ƒt:j<|ƒt=j>|ƒtj?ƒ}|jƒ}|jƒ}    |j@tjAƒrª|j@tjAƒdkrct j |ƒjBƒn.tCjD||    tjEƒ\}}    |jF||    ƒt jG|tjAdƒn|j ƒdksÑ|jHƒt"j#kr&|jtjIƒ}
|
ròtjJntjK} tjƒrtjK} ntL|| |ƒn½|jM||    ƒt krãtCjD||    tjEƒ\} } | dkr°| dkr°tjd||    f|j    ƒƒt j |ƒ}|jBƒqã|jF| | ƒtjd| | f|j    ƒƒn|jNƒtOjP|ƒ|jQƒtjRkrrtSjTtj?ƒjUƒƒtjVkrr|jWtjRƒtXjY|tjZ|ƒtXjY|tj[|ƒn|j\ƒ}|j]ƒ|kr»|j^|ƒt_|ƒtjd    |ƒnt`ja|ƒtbjc|ƒjdƒ|jeƒtfjg|ƒt S(
Ns'Íæ¼Ò¸±±¾Öбä¸ü¹¦ÄÜÏß·ÐéÄâÇеØÍ¼³É¹¦!!!is µØÍ¼¶ÁÈ¡³É¹¦is0===±¾·þLoadMapOKÊ±Íæ¼Ò´¦ÓÚ¿ç·þ״̬£¬²»ÉèÖÿɼû£¡is:Íæ¼ÒµÇÂ¼ÖØÖÃλÖÃʧ°Ü, °ÑÍæ¼Ò´ò»ØÖØÉúµã posX = %s posY = %ss<Íæ¼ÒµÇÂ¼ÖØÖÃλÖÃʧ°Ü, ÉèÖø½½üµã nearPosX = %s nearPosY = %ss½øÈëµØÍ¼Ç¿ÖÆÇл»PKģʽ: %s(hRR/R0t GetMapLoadOKRSRtDef_PlayerKey_ResetFBLinePosXtDef_PlayerKey_ResetFBLinePosYR=R>R;R7RRR8RAR@Rt    DoEnterFBt__CheckForbidLoginRKRNtInitPosR•R—R tGetCommonMissiont GetPropertytDef_NewGuyNoSightRRPRàREtSetPlayerActionRGRHRMRatSetIsDefVisibleR¢R5RLtGetLastMapPlayerVehicletpvHorseRitPlayerRideHorseUpR6tPlayerRideHorseDowntpvTruckR~t PlayerTruckUPtInitPlayerTruckR.tPlayerLoginSetTeamtSetIsNeedProcesst PlayerGMOpert DoGMOperLogictDoEnterFBLogicRtEventResponse_OnMaptEventResponse_OnMapExR*tDoLogic_PetLoadMapOKR`RtDef_PDict_IsReBorntSetToBornPlacetGameMaptGetNearbyPosByDistDef_RebornPos_Area_RangetResetPosR*RFRtrebornType_CityRJRItCanMovetDataServer_CheckPrizeItemRRRâtCampType_NeutralRxtGetRecordMapIDR“tDef_MapID_NeedCampt
SetFactionRbRctDef_SkillID_JusticetDef_SkillID_EviltGetInitAttackModelRÈt SetAttackModeRIRœtOnLoadMapGFPassiveR7R8tRefreshStartEquipCountt
EndLoadMaptPlayerQuDaoDoubleBilltOnMapQDDoubleBill(R2RRtresetFBLinePosXtresetFBLinePosYt firstMissiont playerVehicletcurMaptposXtposYtisLogint
rebornTypetnearPosXtnearPosYRVtinitAttackModel((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR®–s®   
 
             '    #
$      
 
 cCs9tjƒ}|jƒ|jƒ|_tj||ƒdS(N(RYttagMCAttackModeRÌRÈtModeRR(RR?((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRIhs
 
cCstS(N(R(R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt__CheckGMCanLoadMapOKuscCs:|jƒtdtjƒ@dkr&tS|jtjƒdS(Nii(R_tpowRtDef_PysForbidByPyRRnRGt    disGMKick(R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR´s"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
GetTruckIDRR=R>t GetTruckStatet SetTruckStatetGameServer_RefreshTruckReqt GetNPCManagert FindTruckByIDtSetTruckt
SetTruckIDtGetIDtSetOwner(RRttruckIDR‡((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRÁœs    
 cCstjtƒ||ƒdS(N(RRjt__Func_AddPoint(R2R((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(RR/R0RR¨RGt IPY_CAddPointtGetPointtGetTypeRÇtDef_Effect_STRt
SetBaseSTRR¬tDef_Effect_PNEt
SetBasePNER®tDef_Effect_PHYt
SetBasePHYR°tDef_Effect_CONt
SetBaseCONR²RqRût SetFreePointR&t DR_FreepointtRefreshPlayerAttrState(R2RRRVt 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(NR­R±R³R¯sGet%s(RGtCDBPlayerRefresh_BaseSTRtCDBPlayerRefresh_BasePHYtCDBPlayerRefresh_BaseCONtCDBPlayerRefresh_BasePNERaRYttagRefreshTypet RefreshTypetgetattrtValueR=ttagObjInfoListRefreshRÌRûtObjIDtGetGameObjTypetObjTypeRUR>RR(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ÿÿÿÿ(RR/R0t GetTickByTypeRtTYPE_Player_Tick_RushtTYPE_Player_Tick_Timet SetTickByTypetGetDistR•R—R–R˜tGetSighttStopMovet    ChangePosRYt    tagMCRushRÌRûtIDRRRt PyNotifyAllR6(R2R3RRR?((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt OnPlayerRush1s &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(+RR/R0RRt#Def_Player_Dict_AutoCheckHack_StatetDef_AutoCheck_State_DangertOperControlManagertIsObjCanDoActiontDef_Obj_ActState_ServerActRGtoalMoveR6t__CheckPlayerCanMovetStartXtStartYtDestXtDestYt    WorldTickR`RÑRÏR•R—RSR;tGetPlayerVehicletpvNullR¼t CheckMovePosR(RFRORPRQRtDelLimitSuperBuffR+R9R:RzR*tFightPetFollowMove( R2R3RRtsendPack_StartXtsendPack_StartYtsendPack_DestXtsendPack_DestYtsendPack_WorldTicktvehicleRätfightPet((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerFightMovecsX                          *cCstjtƒ||ƒdS(N(RRjt__Func_PlayerMove(R2R((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(RR/R0RRR1R2R3R4R5RGR6R6R7tIPY_CPlayerMovet    GetStartXt    GetStartYtGetDestXtGetDestYt GetWorldTickR`RÑRƒtfbtNullRt DoFBCanMoveR=R>R¼tPlayerNormalMove(
R2RRR?RBRCRDRERFRG((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRJÞs>           cCsl|jƒstS|jƒs tS|jƒdkr6tStj|tjtj    ƒsUtSt
j |ƒshtSt S(Ni( R°R6t
GetCanMoveRER3R4RR5RGR6RtPlayerCanStateTransferR(R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR77s   cCs§dStjƒ}tj||||ƒs6|jƒdSt|||||||ƒsXdS|jƒtjkr€t    j
||ƒntj |tj ƒ|j ||ƒdS(N(RR`RtPlayerMoveCheckClientWorldTicktSync_ClientTickR?RFRGRORPRQtChangePlayerActiontpaNulltMove(Rt client_StartXt client_StartYt client_DestXt client_DestYtclientWorldTickRRä((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRTbs 
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—R6RÑtMoveFailRR(RtDef_PlayerMaxMoveDistR( RtcheckObjRätstartXtstartYtdestXtdestYtsendPlayerMoveFailtobjPosXtobjPosYtmoveDist((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR?¸s     $cCstjtƒ||ƒdS(N(RRjt__Func_PlayerStopMove(R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerStopMove    scCsdS(N((R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRm    scCsÓtjƒj|ƒ}tjƒ}|jƒ}tjd||jƒƒtjƒrdtjdƒdSt    j
|ƒr„t ||ƒdSt j ||ƒrªt    j|dƒdSt|||ƒrÏt|||ƒndS(NsÍæ¼Òµã»÷¸´»î: rebornType=%ss¿ç·þ·þÎñÆ÷²»½ÓÊܸ´»îÇëÇó!tReborn_lhs_31379(RR/R0RGtIPY_CCliectRebornRRàR>RRRPtOnReqCrossServerRebornRtDoFBForbidRebornRRItPlayerReborn_InFB(R2RRR?Rè((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerClickReborn}    s      cCsŠtj|ƒ}|s&tjdƒdSt||ƒs9dSi|jƒd6|d6}tjtj|ƒtjd||f|jƒƒdS(Nsµ±Ç°ÎÞ¿ç·þµØÍ¼!R\t
RebornTypes(¿ç·þÖÐÇëÇó¸´»î, crossMapID=%s,msgDict=%s(    RRPRRàt__CheckCanRebornR>tSendMsgToCrossServerRÇtClientServerMsg_Reborn(RRèt
crossMapIDtmsgDict((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRq›    s  cCsŒ|d}tjƒ}t|||ƒs,dS|jtjƒ}t|||ƒidd6|d6}|j|ƒtjt    j
||gƒdS(NRuitResultt ReviveTired( RR`RvRRtDef_PDict_IsAddReviveTiredt__DoPlayerReborntupdatetSendMsgToClientServerRÇtCrossServerMsg_RebornRet(RtmsgDatat serverGroupIDRRètgameMaptisAddReviveTiredRW((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRx«    s
  cCsX|d}|dkrdS|d}|d}t||tƒ|rTt||ƒndS(NR{iRuR|(t __RebornCostRt__AddReviveTired(RR‚RtresultRèR…((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR½    s
 
 
cCs`tjƒ}|jƒ|jƒ|_||_|jƒ|_|jƒ|_    t
j ||ƒdS(N( t ChNetSendPackttagPlayerRebornRÌR>R\tTypeR•R–R—R˜RR(RRèt
rebornInfo((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytSyncPlayerRebornÍ    s 
    cCsdS(N((R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerNeedSeeOtherê    scCstjtƒ||ƒdS(N(RRjt$__Func_PlayerClickOtherPlayerGetInfo(R2R((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("RR/R0RGtIPY_CClickObjGetInfotGetObjIDt
GetObjTypetGetObjRzR(R•R—R)Rt    gotPlayertgotNPCtGetMaxHPtGetMaxMPtGetHittGetMissRt GetAtkSpeedtGetSuperHitRatet GetSuperHittGetLuckyHitRatetGetGreatHitRatetGetIgnoreDefRatetGetDamageReduceRatetGetDamageBackRatetstrRUtPlayerClickOtherPlayerDetailtSync_GetPlayerInfoFailtPlayerClickOtherNPCDetail( R2RRR?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(RRàR/R0RERGtIPY_CSitRRt DoPlayerStandtIsMovingRR=R>R3R4RR5toalSittSetRestoreTimeRFRZt DoPlayerSit(R2RRR?tsetTypet
playAction((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt    PlayerSito
s6               cCstjtƒ||ƒdS(N(RRjt__Func_PlayerDisconnect(R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerDisconnect¦
scCsœ|jtjƒdkrdStjƒtj|jƒjƒƒ}|jdkrc|j    dkrcdSt
j |j ƒ|j ƒ|ƒtj|tjdƒdS(Niii
i<iX(RRtDef_Player_Dict_LoginValidRR    R#R"R!tdaystsecondsR&t DR_LoginValidR(R)RR*(RtdiffTime((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytNoteLoginValid®
s%cCstjƒj|ƒ}yt||ƒWnUddl}tjd|jƒƒtjƒjƒr~t    d|jƒƒ‚q~nX|j
|ƒdS(NiÿÿÿÿsÍæ¼ÒÏÂÏßÂß¼­´íÎó~~~~~
%s( RR/R0tDoPlayerDisconnectRpRqRrRÛRsRtt DoDisconnect(R2RRRp((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|tjdƒtj|ƒtj||ƒtj|ƒdS(NsPlayerDisconnect!i(RR=R>RtPlayerLeaveServert SetLogoffTimeR!R&tDR_PlayerDisconnectRÍR¤tCalcOnlineTimeR`tUpdateFirstGoldTimeR*Rt!Def_Player_Dict_RouteServerInitOKtDef_Player_Dict_AutoTrucktDef_PlayerKey_CrossRegisterMaptDef_PlayerKey_IsCrossPKMatchingR*tReCallFightPetR¨t CalcPlayerTJGR(tWriteEvent_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( RR/R0RGtIPY_CSetShutCutDatat
GetSettingtEncodingToUnicodeRqRûRUt
SetSetting(R2RRR?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(RR/R0t BubbleBoxTypeRàR>RätGetIpyGameDatatGetDictValueByBitRtDef_PDict_ChatBubbleBoxStatet    GetNeedLVRitGetNeedVIPLVGiftRtDef_Player_Dict_VipAwardRecordRïRtSetChatBubbleBox( R2R3RRtuseBoxIDtipyDatat curBoxStatetneedLVt needVIPLVGifttrecordthasBuy((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytOnSetChatBubbleBox9 s*      
cCsCtjd|ƒ}|sdStj|tj|dƒt|ƒtS(NRâi(RäRäRtSetDictValueByBitRRæR¼R(RtboxIDRì((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytDoActivateChatBubbleBoxT s 
cCsI|jtjdƒ}|s dStjƒ}||_tj||ƒdS(Ni(RRRæRYttagMCChatBubbleBoxStatetBoxStateRR(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(RR/R0tSetNumRtLittleHelperSetNumCountRqR>RtLittleHelperValueCountthasattrRRR*t!Def_Player_Dict_LittleHelperValueRà(R2R3RRtsetNumR+tvalue((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytOnSetLittleHelpert 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(RRRûRzRüRRþRYttagMCLittleHelperFuncSetRúRýtsetattrR=ttagMCLittleHelperSett FuncSetListRUt FuncSetCountRR(Rt funcSetListRÿtfuncSetR+RtsetPack((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(RR/R0t
GuideIndextIsOKRïRRtDef_GuideStateKeyCountRR*tDef_Player_Dict_GuideStateRàRqRó(R2R3RRt
guideIndextisOKRR+((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt OnSetGuideOK¥ s         cCsutjƒ}g|_x7ttjƒD]&}|jj|jtj|ƒƒq%Wt    |jƒ|_
t j ||ƒdS(N( RYttagMCGuideStatet
GuideStateRRR R=RR RUR>RR(RtguideStatePackR+((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR6º s     $cCs)tjƒ}||_tj||ƒdS(N(RYttagMCShowGuidetGuideIDRR(RtguideIDt    showGuide((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt    ShowGuideÄ s     cCsdS(N((R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt
PlayerJumpä scCsjtjƒj|ƒ}|sdS|jƒ}|jƒ}||krGdS|tjkrftj|ƒndS(N(    RR/R0tGetPlayerLastActionRFRGRORPRR(R2RRt
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(
RR/R0RGtIPY_CSetHPRestoretGetValuetSetHPRestoreSettingRERtPlayerAutoRestoreHP(R2RRR?tcurValue((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR¥ s   cCstjƒj|ƒ}tjƒ}|jƒ}|dksE|dkrIdS|j|ƒ|jƒdkr{tj    ||ƒndS(Niid(
RR/R0RGtIPY_CSetMPRestoreRtSetMPRestoreSettingRERtPlayerAutoRestoreMP(R2RRR?R"((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR§, 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´íÎó(RR/R0RGtIPY_CSetMoneyTypeRt GetMoneyTypetTYPE_Price_Gold_MoneytSetUseGoldTypetTYPE_Price_Gold_PapertTYPE_Price_Silver_MoneytSetUseSilverTypetTYPE_Price_Silver_PaperR=R>(R2RRR?tcurTypet curMoneyType((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt SetMoneyTypeO s   cCsmtjƒj|ƒ}||jƒtjkr2dS|j|ƒtj||ƒt    j||ƒt
|ƒdS(N( RR/R0tGetPosInfoTickRtDef_GetOtherPosIntervaltSetPosInfoTickR.tNotifyPosInfoToPlayerR~tOnSendMapSignCnt(R2RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt PlayerMapInfor s 
cCs}tjƒj|ƒ}tjƒ}|jƒ}tjƒjƒ}|tj    krltj
d||j ƒƒdSt ||ƒdS(Ns±¾µØÍ¼²»¿ÉÇл»PKģʽ,mapID=%s( RR/R0RGtIPY_CChangeAttackModetGetModeR`R“RtDef_CanNotChangeAtkModelMapR=R>tChangeAttackMode(R2RRR?t sendPackModetmapID((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerChangeAttackMode• 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( RGtamPeacetamMaxRRàRÈR`tGetAttackModelsRïRutClearSummonAngry_PlayerRÚRI(Rt
attackModet attackModels((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR:¯ s 
cCs]tjƒj|ƒ}tjƒ}|jƒ}tj|||ƒtj|ƒ}|j    ƒdS(N(
RR/R0RGtIPY_CCancelBufft    GetBuffIDRbRcRtRefreshPlayerAttrByBuff(R2RRR?R¡RV((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerCancelBuffØ s 
 
cCstjtƒ||ƒdS(N(RRjt__Func_StartGameEvent(R2R((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(RR/R0RERGtIPY_CStartGameEventRtgeNullRPRQtgeFishR3tGetActBitByActionRtDef_ActBit_GameEventRzR4tDef_Obj_ActState_ClientActtGetGameEventTicktDef_ShowEventTimetCheckCanBeginGameEventtCanProcessGameEventRRYRORI(R2RRR?t    eventTypet    curActBittlastShowEventTick((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRH s4            cCs;tjƒj|ƒ}|jr$dnd}|j|ƒdS(Nii(RR/R0tAdultt ChangeAdult(R2R3RRtadult((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt
PySetAdulte 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(RR/R0tGetShowFaceTickRRQRER3R4RORGtoalLookR¿RFRZR=R>tSetShowFaceTickt IPY_CShowFaceRtDoPlayerShowPlayerFaceRR(R2RRR?((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°RERRVRRU(R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytCheckPlayerStopMove¥ s cCstjtƒ||ƒdS(N(RRjt__Func_PlayerCanResetWorldPos(R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerCanResetWorldPosÁ scCs)tjƒj|ƒ}tj||ƒdS(N(RR/R0RtDoPlayerResetWorldPos(R2RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRbÊ scCs-tjƒj|ƒ}|jƒt|ƒdS(N(RR/R0t    ExitEventtNotifyChangeMapFail(R2RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerChangeMapFailCallbackÕ s
 
cCsM|jtƒtjƒ}|jƒtj||ƒtjd|j    ƒƒdS(Ns µØÍ¼Çл»Ê§°Ü(
R7RRYttagMCChangeMapFailRÌRRRR=Rû(RR?((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRfÞ s   
cCsdS(N((R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt OnlineReplyø scCsdS(N((R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerSummonMove.scCsdS(N((R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerSummonAttackzscCsdS(N((R2R((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(
RR/R0RGt IPY_CHideMaskt    GetIsHideR=R>t GetIsHideMaskt SetIsHideMask(R2RRR?tisHide((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytHideMasks   cCs&tjƒj|ƒ}t||ƒdS(N(RR/R0t __Func_ExitFB(R2RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytExitFB4s cCs‘tjƒjƒtjkr=|jƒtjddƒkr=dStjd|j    ƒ|j
ƒƒt j |ƒspdSt j ||ƒtj|ƒdS(NtMapLineisÍæ¼Ò = %s , Ö÷¶¯À뿪¸±±¾(RR`RƒRGRRR“RäRåR=RRûRtCanPlayerLeaveFBtDoPlayerLeaveFBRt PlayerLeaveFB(RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRs>s9  c    Cs@tjƒj|ƒ}tjƒ}|jƒ}|dkrWtjd||jƒƒdStjƒrgdS|j    ƒ}d}t
j ddiƒ}||kr´t d||dƒ}nt
j ddƒ}||kr||kr|||krtjd||||f|jƒƒdSt ||ƒs,dStj||ƒdS(Nis%ChangeLine -> ·â°ü´íÎó, ÎÞ´ËÏß· = %sRuiisF¸ÃµØÍ¼Ã»Óпª·Å´ËÏß·£¬ÎÞ·¨ÊÖ¶¯Çл»£¡mapID=%s,changLineID=%s,maxLine=%s(RR/R0RGtIPY_CChangeLinetGetLineRqRûRR“RäRåRçt__CheckCanChangLineRtPlayerChangeLine(    R2RRR?t changLineIDR<tactivityLineIDtactivityMapLineDictt mapLineDict((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt
ChangeLine_s,      (    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_TickRRR6RFRGtpaSitR¾tDef_PlayerChangLine_StatetIsPlayerInFightRyRzR=tDef_PlayerChangLine_VehicleR(RRt playerAction((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR{ˆs& cCsdS(N((R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt    LineStateÁscCs#|jƒdkr+|jƒtjkr+dS|tjtjgkrGdStjƒj    ƒ}|tj
kr°t j ddƒ}tjƒj ƒ}||kr ||S|jddƒS|jtjƒrtj|tjƒd}|r|jƒjƒ|jƒjƒkrt j ddƒdSqndS(s ËÀÍö״̬²ÅÑé֤ʱ¼ä£¬±¾·þ¿ç·þͨÓÃ
            ¿ç·þ·þÎñÆ÷ËÀÍöµÄ¸´»îÒ²ÊÇÏÈ·¢µ½±¾·þ£¬Õý³£Çé¿öϱ¾·þÊÇ»î×ŵģ¬ÎÞ·¨ÑéÖ¤
            ËùÒÔ¿É·ñ¸´»îÓÉ¿ç·þ·þÎñÆ÷ËÀÍö״̬ϵÄÍæ¼ÒʵÀýÅжϣ¬¼òµ¥½²¾ÍÊÇÄĸö·þÎñÆ÷ËÀÍöµÄÄĸö·þÎñÆ÷ÅжÏ
            ËùÒԸú¯Êý¿ÉÒÔÖ±½ÓʹÓÃÍæ¼ÒËùÔڵĵØÍ¼ÅжÏ
    itDuplicatesRebornTimeitRebornArguments(RERFRGRHRRÐtrebornType_MainCityRR`RƒRRRäRåR“tgetRR}R$t FindBuffByIDtDef_SkillID_ReviveTiredtGetSkillt
GetSkillLVt GetSkillMaxLV(RRètmapTypetfbRebornTimeDictRetfindBuff((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(RRRtintttimeRRàRç(Rt
rebornTimetplayerDeadTimeTicktcurGameWorldTick((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytCanRebornByTimeOverùs$cCs|tjkrdS|rw|jƒ}|tjtjgkrw|jƒ rwtjd|jƒ|f|jƒƒdSnt    ||ƒ}|rôt
t j ƒƒ}|j tj ƒ}|||krôtj|dƒtjd|||f|ƒdSntjƒst||tƒsdSntS(sÇ ¼ì²é¿É·ñ¸´»î£¬ÎªÁËÂß¼­Í³Ò»£¬ÕâÀï²»ÊÊÓÃÍæ¼ÒËùÔڵĵØÍ¼£¬Ö§³Ö¿ç·þ״̬ÏÂÅжϿç·þµØÍ¼
                ±¾º¯Êý²»ÑéÖ¤Íæ¼ÒËÀÍö״̬µÈ£¬ÒòΪÓпÉÄÜǰºó¶Ë¸´»î״̬²»Ò»Ö£¬Èç¹ûÕâÀïÀ¹×¡¿ÉÄܵ¼ÖÂǰ¶ËÌÉʬ¸´»î²»ÁË
    Ns*¸ÃµØÍ¼²»¿ÉÔ­µØ¸´»î! mapID=%s,rebornType=%stRebornCDsC¸´»îÀäȴʱ¼äÖУ¬ÎÞ·¨¸´»î! curTime(%s) - deadTime(%s) < rebornCD(%s)(RtDef_RebornTypeListR>trebornType_HealthtrebornType_UseItemtGetLocalRebornRRqR“RšR›RœRRRRR=RR†R6R(RRèR„RñtrebornCDRtdeadTime((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRvs& %& c
Cs|jƒ}|tjkr¯tjddƒ}|d}tj|tj|ƒ}|smt    j
d||ƒdS|rx6|D]+\}}tj |||tj ƒszdSqzWqnc|tj krtj|tjƒ}    |    sít    j
d|ƒdS|rtj||    dtdƒqntS(NRiis%»õ±Ò²»×㣬ÎÞ·¨Ô­µØ¸´»î! moneyPrice=%ss¸´»îµÀ¾ß²»×㣬ÎÞ·¨Ô­µØ¸´»î! tReborn(R>RR£RäRåRt HaveMoneyExRÇtTYPE_Price_Gold_Paper_MoneyRRqtPayMoneytDef_Cost_ReviveR¤RtFindItemInPackByEffectExtDef_Effect_ReborntDelItemR(
RRètisDoCostRñt    rebornCfgt
moneyPricet costMoneyListt    moneyTypetmoneyCntt
rebornItem((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR†$s( 
ic
Cs´|jƒdkr8|jƒtjkr8t||ƒdStj}t}|tjkr„t    j
ƒrkt }q¬t j |tjdƒn(|tjkr¬t j |tjdƒn|j|ƒ|rÕt    j|||ƒn|rôtj|tj|ƒn|jtjƒrt||ƒntjddƒd}tj|ƒrRtj|||ƒntj|ƒrxtj|||ƒnt j |ƒ}|jƒ|j |j!ƒ|tjƒt j"|t j#|ƒƒt    j$||ƒt%j&ƒ}    |tjkrú| sFt%j&ƒj'|j(ƒ|j)ƒƒ sF|tjkrS|    j*ƒ|j+ƒkrS|j,ƒn=|tjkrt j-||    j*ƒ|    j.ƒ|    j/ƒtƒnt0j1|ƒt j2|tj3ƒdS(NiiitPKConfigiiè(4RERFRGRHRRtDef_MaxRateValueR6RÐRtOnPlayerRebornRRR*RÊRR¨tOnResetFBRebornPlacePosR$RTRURR}R‡RäRæRNt IsInPKStatetSetPKStateTickt IsInBossStatetSetBossStateTicktRefreshAllStatetSetHPR£t    SetProDeft GetMaxProDeftOnPlayerRebornOverRR`RÑR•R—R™R“RËtPlayerResetWorldPost GetRebornMapXt GetRebornMapYt    PlayerPett AutoSummonPetRYRZ(
RRèRt mapBornPlacetisAddSuperBufftresetHpPercentt
isFBRebornt    validTimeRVR„((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR~@sL'           
 %' . cCs£tj|tjƒd}|rY|jƒjƒ}|jƒjƒ|kr_|d}q_nd}tj|tj||ƒtj    d|ƒt
j |tj dƒdS(Niis    ¸´»îÆ£ÀÍBUff buffSkillLV=%s( R$R’RR“R”R•R–RTRRàRR*R}(RRR™t buffSkillLV((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR‡ˆscCsatjƒ}t|||ƒs"dStjƒsGt||tƒsGdSnt|||||ƒtS(s Íæ¼Ò¸´»î
    N(RR`RvRR†RR~(RRèRRÉRÊR„((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRI–s  cCs<tjƒjƒ}|tjkr%dStj|||ƒdS(N(RR`RƒRGRRRt DoFBOnReborn(RRèRR—((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRs«s
cCsdS(N((R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerUseMakeStoveÄscCsdS(N((R2R((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( RR/R0R$RtTYPE_Player_Tick_QueryTruckPosR&RRR'tGameServer_QueryPlayerByIDtqueryType_sqtTruckRó(R2RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt QueryTruckPos s&"cCsdS(N((R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytMoveToTruckPos*scCsdS(N((R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt FarIdentifySscCs…tjƒj|ƒ}||jtjƒtjtjkr?dS|jtj|ƒtjƒj    ƒt
j krqdSt j ||ƒdS(N(RR/R0R$RtTYPE_Player_Tick_FBStateR&R'R`RƒRGRRRt DoGetFBState(R2RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt
GetFBStatehs&cCsvtjƒj|ƒ}|jƒs%dS||jtjƒtjtjkrOdS|jtj|ƒt    j
||ƒdS(N( RR/R0R°R$RtTYPE_Player_Tick_FBHelpR&R'RtDoFBHelp(R2RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytFBHelp‹s &cCs,tjƒj|ƒ}tj||jƒdS(N(RR/R0RtPlayerEnterCrossServert    DataMapID(R2R3RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytOnEnterCrossServer©scCstjtƒ||ƒdS(N(RRjt__Func_EnterFbGameEvent(R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytEnterFbGameEventÀscCsPtjƒj|ƒ}tjƒ}|jƒ}|jƒ}tj|||ƒdS(N(    RR/R0RGtIPY_CEnterFbGameEventR“R‘Rt PlayerEnterFB(R2RRR?R<tclientSendLineID((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRãÉs    cCsdS(N((R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPointTransportßs;cCsdS(N((R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytFriendTransPort*sc    Cs}tjƒ}|jƒ}|jƒ}|jƒ}|jƒ}|jƒ}tjƒj    |ƒ}t
|||||||ƒdS(N( RGtIPY_CWorldTransferRR“R•R—t GetExtField1RR/R0t__Func_WorldTransPort(    R2Rt packUseItemtpackTransportTypeR<RåRætlineIDR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytWorldTransPortzs      c
    Csntjƒj|ƒ}|j}|j}|j}|j}|j}|j}    t    ||||||||    ƒdS(N(
RR/R0R‹R”R’R–R˜tExData1Rì(
R2t
clientPackRRRîR<Rï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    ƒrÁ|jƒ|kr¸dSd}n|tj
j ƒkrîtj d||ƒdStj
j |ƒ}    tj|ƒsdStj||ƒs)dSt|||||ƒ\}}||fd    krmtj|dƒdS|    tjkr t||    ƒ r t||    ƒ r dS|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(R“R$RtTYPE_Player_Tick_WorldTransportR&R'R>RRàRtDef_PackType_TransportTypeR&RqR‘RtCheckPlayerTransporttCheckTagCountrytGetTransportPosRtDef_Transport_Type_MissiontTransportVipLvRestricttPayForTransportR;tDef_PlayerKey_TransTypet
BeginTrans(
RRîR<RåRæRRïRóRñt transportType((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRìs>&          Rc        
Cs)tj|||||||||ƒ    tS(N(RRÄR6(    RR<Rå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(R“RR`RÑRÌRÍRRÎ(RRÿttransportMapIDt 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æRRRRGtrptItemRtGetItem_FromPack_ByIDtTransportPayMoneyRÇRªRtGMTool_Offline_WorldTransferRRàR6t
ReduceItem(RRÿRûtuseCounttitemPackt    hasEnoughtitemListt    costMoney((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRüscCstj|tjƒS(N(RStGetPrivilegeValueRtVIPPrivilege_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©R6R«RtDef_Cost_TransportRtLogin_Interface_GoldRecR(RR´tmoneyRÿtnoteMarkt    moneyList((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR    :s  cCs5tjƒj|ƒ}tj|ƒ}|jtƒdS(N(RR/R0Rt
PlayerLvUpR(R2RRRV((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerLvUpRequestYs cCsdS(N((R2R((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytDoubleExpStatepscCsStjƒj|ƒ}tjƒ}|jƒ}|jƒ}tj||||ƒdS(N(    RR/R0RGtIPY_CFBSpecilSkillRRŸRtUseFBSpecilSkill(R2RRt fbSkillPacktuseTypetuseState((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRxs
   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(RRR
R R/R0R#t ExchangeTimeR‘R›RqRêtGetOfflineMinutesRtGetPlayerReExpRiRztGetWorldAverageLvExpRatetevalR©R«RtDef_Cost_OffLineExptDef_Cost_Reason_SonKeytAddExpRçtSetOfflineMinutestSyn_OfflineTimeQueryResult(R2t curPackDataRtOfflineExpChangeDictRtmulIndext exchangeTimetrecListtminVIPLvRët
useMinutest haveMinutestrExptreLVtworldLvExpRatet    redeemExpt moneyInfoListR´RRVt haveMoneyListRµt offlineTime((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytPlayerExpExchange”sR         
 
!  
cCsdS(N((R2R.R((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.pyR5scCsû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(RR/R0tArrestIDRÇtDef_ArrestOverState_BitDicR‘RzRàRRt&Def_Player_Dict_FamilyArrestAwardStateRïRSt$Def_PlayerKey_FamilyArrestQueryStateRÕtqueryType_FamilyArrestRUR;(R2R3RRtarrestIDtbitt receiveStatetsendMsg((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytReceiveFamilyArrestAward%s"     
"cCs#tjƒj|ƒ}t|ƒdS(N(RR/R0t"Sync_FamilyArrestAwardReceiveState(R2R3RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt"QueryFamilyArrestAwardReceiveStateQs
cCsEtjƒ}|jƒ|jtjƒ}||_tj||ƒdS(N(    RYt tagFamilyArrestAwardReceiveStateRÌRRRBt ReceiveStateRR(RtawardReceiveStatetstate((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRJZs  
    cCsg}xOtdtjƒD];}|jtj|ƒ}|dkrGqn|j|ƒqWt|ƒ}|jtj|j    ƒd|t
|ƒƒdS(NitRequestIsFamily( R3Rt!Def_Player_RequestAddFamilyMaxCntRt"Def_Player_Dict_RequestAddFamilyIDR=R¯RÕtqueryType_RequestIsFamilyRûRU(Rt familyIDListR2tfamilyIDRH((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytQueryIsResFamilygs  cCs”tjƒ}|j|ƒ}tj|tjƒsMtj|dtjgƒdS|j    }t
|ƒ}tjƒj |j ƒddd|t |ƒƒdS(NtGeRen_chenxin_676165itPlayerGetReward(RR/R0RtCheckPackHasSpaceRGRRRt
RewardTypeR¯RTRûRU(R2R3Rt 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
||ƒnk|tj kr”t j ||ƒnI|tjkr³tj|ƒn*|tjkrÕtj||ƒn|tjkrôt j|ƒné|tjkrtj||ƒnÇ|tjkr8tj||ƒn¥|tjkrWt    j|ƒn†|tjkrvtj |ƒng|tj!kr˜tj"||ƒnE|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||ƒn]|tj6krŸt7j8|ƒn>|tj9krÁt:j;||ƒn|tj<krãt=j>||ƒnú|tj?krt@jA|||ƒnÕ|tjBkr-t@jC|||ƒn°|tjDkrRtEjF|||ƒn‹|tjGkrqtHj1|ƒnl|tjIkr“tHj3||ƒnJ|tjJkr¸tKjL|||ƒn%|tjMkrÝtKjN|||ƒndS(Ns5PlayerGetReward: rewardType=%s,dataEx=%s,dataExStr=%s(ORR/R0RZtDataExt    DataExStrRàRtDef_RewardType_ActivityRwtGetActivityAwardtDef_RewardType_FamilyActivityR,tGetFamilyActivityAwardt(Def_RewardType_ChampionFamilyDailyRewardtGameLogic_FamilyWartGetChampionFamilyDailyRewardtDef_RewardType_XMZZWinCntR¢tGetXMZZWinPrizetDef_RewardType_FamilyDayAwardtGetFamilyDayAwardtDef_RewardType_LVAwardR]tGetPlayerLVAwardtDef_RewardType_XBXZR˜tOnGetXBXZAwardtDef_RewardType_DayRealmPointtGetRealmPointAwardtDef_RewardType_GoldGiftFirstR`tGetPlayerGoldGiftFirsttDef_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_OpenFuncRbtGetFuncOpenAwardtDef_RewardType_IceLodeStartGameLogic_IceLodetGetIceLodeStarAwardtDef_RewardType_WeekPartyActR®tGetWeekPartyActionAwardtDef_RewardType_WeekPartyPointtGetWeekPartyPointAwardtDef_RewardType_ActLoginAwardActR°tGetLoginAwardActionAwardt Def_RewardType_NewFairyCRechargeR²tDef_RewardType_NewFairyCPartyt Def_RewardType_FeastWeekPartyActR¯tGetFeastWeekPartyActionAwardt"Def_RewardType_FeastWeekPartyPointtGetFeastWeekPartyPointAward(R2R3RR[RR\tdataExt    dataExStr((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRX‘sz             cCs<tjƒ}|jƒ||_||_tj||ƒdS(N(RYttagMCPlayerRewardGetRecordRÌRZtRewardGetRecordRR(RR\trewardGetRecordR?((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytSync_RewardGetRecordInfoôs  
        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    AreaSkillRbtHPPackagePercent( RR/R0R(tDataR
R R‘t    enumerateRR*RtDef_PDict_AutoFightSetting(R2R3RRt settingDicttBasicSkillCounttAreaSkillCounttBuffSkillCounttBasicSkillListtKeyt
ValueIndexRt 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ŸRbR s%s(R
R RRRR£R=RYttagMCAutoFightSettingRÌR¡RUtSizeRR( RR¥R¦R§R¤R©R¨RªRR«R¬R?((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytSync_AutoFightSettings:
 
 
 
 
 cCs3tjƒj|ƒ}|sdStj||ƒdS(N(RR/R0RtOnQueryBossHurtList(R2R3RR((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR±Es
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(RR/R0t IsNoTimeLimitRt TYPE_Player_Tick_QueryMapNPCInfoR$R&RàR'R”R’t    NPCIDListR(t BaseExceptionRqt
isinstancetlistR¯R`R“Rut
GetNPCInfoRGt GetMapCopyPlayerManagerByFbIndextGetPlayerCountt SyncNPCInfoRÕtqueryType_NPCInfoRU(R2R3RRttickTypettagMapIDt    tagLineIDt queryNPCStrt    npcIDListRet npcInfoDictRR[t    playerCntRH((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytOnQueryMapNPCInfoPsN                                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(RR/R0R³tCheckPlayerTickRR´RàR”R’RµR(R¶RqR·R¸R¯R`R“Rut GetNPCCntInfotSyncNPCCntInfoRÕtqueryType_NPCCntRU( R2R3RRR¿RÀRÁRÂReRÃRH((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytOnQueryMapNPCCntInfos@                           cCs#tjƒj|ƒ}|jƒdS(N(RR/R0RX(R2R3RR((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(RR    RYttagServerDateTimeRÌtyeartYeartmonthtMonthtdaytDaythourtHourtminutetMinutetsecondtSecondt microsecondt    MicSecondRR(Rt
serverTimetserverDateTime((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRÉs  
       cCsôtjƒ}|sdStjƒ}tjƒ}|jƒ|jtjƒ|_    |jtj
ƒ|_ |jtj ƒ|_ |jtjƒ|_|j|_|j|_|j|_|j|_|j|_|j|_|j|_tj||ƒdS(N( RR    RÛRYttagOpenServerDayRÌ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 NowMicSecondRR(RRÜtgwtpackData((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRà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(RR/R0RRR1R2tPYPlayerNormalMoveR•R—R`RÑRRÌtGetEmptyPlaceInAreaRqRÏ(R2RòRRRåRæt    resultPos((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt PYPlayerMoves $ 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,(.R7RtDirt
ClientPosXt
ClientPosYt    SeverPosXt    SeverPosYR<tMoveTypetGetClientMoveTickRRàR`RÑR6R•R—tSetClientMoveTicktPyNotifyPlayerMoveRƒRGRRRRSR=R>R¼RRWRXR(RûRFRORPRQRYRZR+R9R:t GetActionTickR*RAt SetCurActiont    laNPCNull(RRòRtmoveDirt
clientPosXt
clientPosYtsendPack_SeverPosXtsendPack_SeverPosYRFtmoveTypet lastMoveTickRGR¶RH((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRîs`                               $  
$  "cCstjƒ}|jƒ|jƒ|_tj|_||_||_    ||_
||_ ||_ |j ƒ|_||_tj||tdƒdS(Ni(RYttagMCPYPlayerMoveRÌRûRRGR¡RRòRóRôRõRötGetSpeedtSpeedR÷RR.R6(RRþRÿRRå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_DownloadAwardStateRR=RûRäRåRURtGetItemPackSpaceRGRRRR*RîR7tGivePlayerItemR³(    RR—t
awardStatet awardItemListt    needSpacet    packSpaceRûtitemCntRý((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyRƒ—s$    #
cCs?tjƒ}|jƒ|jtjƒ|_tj||ƒdS(N(    RYttagMCPackDownloadRecordRÌRRR tRecordRR(RR?((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyR³°s
 
cCsEtjƒ}|jƒ||_||_||_tj||ƒdS(s»Í¨ÖªÇ°¶ËÏòij¸öµãÒÆ¶¯
                ÕâÀïǰ¶Ë¿ÉÄÜÐèÒªÕë¶Ôij´ÎÒÆ¶¯×ö¶îÍâ´¦Àí£¬±ÈÈçÒÆ¶¯µ½Ä³¸öµãºóÐèÒª×Ô¶¯Õ½¶·µÈ
                ËùÒÔÕâÀïÖ»×ö֪ͨǰ¶Ë¿ÉÒÔÏòij¸öµãÒÆ¶¯£¬×îÖÕÒÆ¶¯ÓÉǰ¶Ë·¢Æð
    N(RYttagMCNotifyPlayerMoveRÌR–R˜tNPCIDRR(RRåRætnpcIDR?((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pytNotifyPlayerMove¸s 
            (
RNRGRRRÌRRRbRR.RiR~RuRPR$RR‘RR7RJRšRÄR
R*R3RÇRlR[RRYRaR&RERgR¤R]R`RdRÇRCR,RmRARzR{RwRxR·RR¸R|R~RR¬RƒR‰R¥RQR¾R‡RbR˜RqRfR­R®R¯R°RLRkRsR“R•RäR(RPRoRSRURœRžR R¨R¢RRŽRŠRŒRR±R²R–R¹RQR‰R¶R½R]R_RªRµR…RÞR¿tdatetimeRœtmathtreRRRR.R4R1RBRXRDRRRHRDRRR R R#R@R>RMRGR&RSR[R¦RkRvRuR"R¢R R¯R®RIRîR´RÁRÿRþR‰R/RIRKRJR7RTRR?RnRmRtRqRxRRRŽRRRÅRÇRÍRÆRÎRáRòRõR¼RR»RR6RRRR¥R§R0R6R=R:RGRIRHRZR`RaRcRbRgRfRiRjRkRlRrRtRsRR{RRšR RzRvR†R~R‡RIRsRÐRÑR×RØRÙRÜRßRâRäRãRèRéRðRôRìR6RþRùRüRûR    RRRR=R>R5RIRKRJRVR^RXRœR­R°R±RÅRËRÌRRRñRîRúRƒR³R(((shE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\ChPlayer.pyt<module>s                                                                                                                        (        "                     l        ÿl         >                      9                    1    @            
        
    T    =    
        
    Ò                 <            +    %    2    r            Y    +    V ]            _                        .            N    7                I                            "        
                 !        #    #    #        )    '            ]        '                                 6    L    h    2         
    !    )    9        #          H            '    !        )        #                        K    P         B                                P    *        ,                         c             (         @    /    
        &        j