hxp
2025-07-04 ce8d11938d9444fde6a89774cfcb12ac0a7b1a58
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
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
¡Cchc    @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^ej_ƒa`dZadZbd„Zceddd„Zed„Zfgd„Zggdddgd    „Zhgd
„Zigd „Zjd „Zkgd „Zlgd„Zmgd„Zngd„Zod„Zpgd„Zqggggggejresd„Ztgddddejresd„Zud„Zvd„Zwd„Zxd„Zyd„Zzd„Z{dd„Z|esd„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Šedd+„Z‹d,„ZŒd-„Zesd.„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 dde¡dA„Z¢gdB„Z£edesdC„Z¤dD„Z¥dE„Z¦ddeddesdF„Z§dG„Z¨dH„Z©dI„ZªddedddJ„Z«ddK„Z¬e¡dL„Z­dM„Z®dN„Z¯dO„Z°dP„Z±ej²esdQ„Z³dR„Z´dS„ZµdT„Z¶dU„Z·dV„Z¸dW„Z¹dX„ZºdY„Z»ddZ„Z¼d[„Z½e¡d\„Z¾edd]„Z¿d^„ZÀedd_„ZÁejÂiddedesd`„ZÃda„ZÄdb„ZÅddc„ZÆdd„ZÇde„ZÈdf„ZÉejÊiededdg„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Üdyfdz„ƒYZÝd{fd|„ƒYZÞd}„Zßd~„Zàd„Zád€„Zâedd„Zãedd‚„Zädƒ„Zåd„„Zæd…„Zçd†„Zèd‡„Zédˆ„Zêd‰„ZëdŠ„Zìd‹„ZídŒ„Zîd„ZïdddŽ„Zðd„Zñd„Zòd‘„Zóe¡d’„Zôdddd“„Zõesd”„Zöd•„Z÷d–„Zød—„Zùd˜„Zúd™„Zûdš„Züd›„Zýddœ„Zþd„Zÿdž„ZdŸ„Zdddd „Zd¡„Zdd¢„Zd£„Zd¤„Zd¥„Zd¦„Zd§„Z    d¨„Z
d©„Z dª„Z d«„Z d¬„Zd­„Zd®„Zd¯„Zd°„Zd±„Zd²„Zd³„Zd´„Zdµ„Zd¶„Zd·„Zd¸„Zd¹„Zdº„Zd»„Zd¼„Zd½„Zd¾„Z d¿„Z!dÀ„Z"dÁ„Z#d„Z$dÄZ%dĄZ&dńZ'dƄZ(dDŽZ)dȄZ*dɄZ+dʄZ,d˄Z-d̄Z.d̈́Z/d΄Z0dτZ1dЄZ2dфZ3d҄Z4dӄZ5dԄZ6dՄZ7dքZ8dׄZ9d؄Z:dلZ;ddڄZ<eseddÛdd܄Z=dÛdd݄Z>dބZ?d߄Z@dà„ZAdá„ZBdâ„ZCdã„ZDdä„ZEdå„ZFdæ„ZGdç„ZHdè„ZIdé„ZJdê„ZKdë„ZLdì„ZMdí„ZNdî„ZOdï„ZPdð„ZQe¡dñ„ZRdò„ZSdó„ZTdô„ZUdõ„ZVdö„ZWd÷„ZXdø„ZYdù„ZZdú„Z[dû„Z\dü„Z]dý„Z^dþ„Z_dÿ„Z`d„Zad„Zbd„Zcd„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Œ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_„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ád„Zâd‚„Zãdƒ„Zäd„„Zåd…„Zæd†„Zçd‡„Zèdˆ„Zéd‰„ZêdŠ„Zëd‹„ZìdŒ„Zíd„ZîdŽ„Zïd„Zðd„Zñd‘„Zòd’„Zód“„Zôd”„Zõd•„Zöd–„Z÷d—„Zød˜„Zùd™„Zúdš„Zûd›„Züdœ„Zýd„Zþdž„ZÿdŸ„Zd „Zd¡„Zd¢„Zd£„Zd¤„Zd¥„Zd¦„Zd§„Zd¨„Z    d©„Z
dª„Z d«„Z d¬„Z d­„Zd®„Zd¯„Zd°„Zd±„Zd²„Zd³„Zd´„Zdµ„Zd¶„Zd·„Zd¸„Zd¹„Zdº„Zd»„Zd¼„Zd½„Zd¾„Zd¿„Z dÀ„Z!dÁ„Z"d„Z#dÄZ$dÄ„Z%dÅ„Z&dÆ„Z'dÇ„Z(dÈ„Z)dÉ„Z*dÊ„Z+dË„Z,dÌ„Z-dÍ„Z.d΄Z/dÏ„Z0dЄZ1dÑ„Z2dÒ„Z3dÓ„Z4dÔ„Z5dÕ„Z6dÖ„Z7dׄZ8dØ„Z9dÙ„Z:dÚ„Z;dÛ„Z<dÜ„Z=dÝ„Z>dÞ„Z?dß„Z@dà„ZAdá„ZBdâ„ZCdã„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þ„Z_dÿ„Z`d„Zad„Zbd„Zcd„Zdd„Zed„Zfd„Zgd„Zhd„Zid    „Zjd
„Zkd „Zld „Zmd „Znd„Zod„Zpd„Zqd„Zrd„Zsd„Zte¡e¡d„Zud„Zvd„Zwd„Zxd„Zyd„Zzdd„Z{dd„Z|d„Z}dS(iÿÿÿÿNiic
Cs·tjƒjƒ}d}t||ƒ|kr\|jƒtjd||f|jƒƒtS||jdƒdkr•|j    dƒ|j
d|ƒn|j ƒ}||krôtjd|j ƒƒ|j ƒ}|j    |dƒ|dkrôtSntj|jƒ|jƒ||ƒ}tj||t|jƒƒƒd    }    ||    kr³tjd
||jƒ|jƒ||g|    ||fƒ|j ƒ}|j    |dƒ|dkr³tSntS( NiˆsZPlayerMoveCheckClientWorldTick -- ·þÎñÆ÷tick %s-¿Í»§¶Ë%sʱ¼äÏà²î¹ý´ó£¬¿ÉÄÜÒòÍøÂçÒýÆð£¬À­»Øt    CheckTicki`êis/---clientWorldTick < lastMoveTick: %s, TickÌ«Âýiiis>¾àÀë²î%s ×ø±êS/C:%s---ÑéÖ¤Á½´Îtick¼ä¿ÉÄܲúÉúµÄ×ø±ê²î%s %s - %s(t    GameWorldt GetGameWorldtGetTicktabstSync_ClientTicktDebugLogtGetIDtFalset GetDictByKeyt SetMoveCounttSetDicttGetClientMoveTicktGetAccIDt GetMoveCounttGetDisttGetPosXtGetPosYtmathtceiltfloattGetSpeedtTrue(
t    curPlayertclientWorldTickt sendPack_PosXt sendPack_PosYt gameWorldTicktDef_Max_Move_Tickt lastMoveTickterrCnttdistt canMoveDist((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytPlayerMoveCheckClientWorldTick~s6
         $' #  icCs;|dkrd}n|j|jƒ|jƒ||ƒdS(Niÿÿÿÿi(t    NotifyAllt    GetBuffert    GetLength(RtsendPackt
notifySelft    notifyCnt((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt PyNotifyAll±s     cCsä|jƒ}|jƒ}|jƒ}tjƒj||ƒr@tStj||dƒ}|jƒ}|jƒ}||kr¬||kr¬|j    ƒtj
d||f|ƒn4|j ||ƒ|j    ƒtj
d||f|ƒt S(Nis Íæ¼ÒÎÞ·¿É×ß, ´ò»ØÖØÉúµã!(%d,%d)s"Íæ¼ÒÕ¾ÔÚÕϰ­µãÖÐ, Í£Ö¹Òƶ¯ (%d,%d)( RRRRtGetMaptCanMoveRtGameMaptGetEmptyPlaceInAreatStopMovetLogtResetPosR(Rt curPlayerPosXt curPlayerPosYt curPlayerIDt
curFindPost curFindPosXt curFindPosY((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytDoLogic_PlayerInBarrierPoint¾s     
 
cCs7|dkrtjdƒdS|j|t|ƒƒdS(NsNotifyCode Player = None(tNoneRtErrLogt
NotifyCodet__GetNotifyCodeList(RtmsgMarkt msgParamList((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR9äs
  c
Csatjƒ}xNt|jƒƒD]:}|j|ƒ}    tj|    ƒsIqnt|    ||ƒqWdS(N(RtGetPlayerManagertxranget OnlineCounttOnlineAttIsNormalPlayerR9(
tcountryR;R<tlineIDt mergeMinOSDt mergeMaxOSDt mergeMapInfot playerManagertiR((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt WorldNotifyõs cCsitjd6|||gd6S(NtTypetParams(t ShareDefinetCrossNotify_World(RBR;R<((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetCrossWorldNotifyInfoÿscCsitjd6|||gd6S(NRJRK(RLtCrossNotify_Family(tfamilyIDR;R<((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetCrossFamilyNotifyInfoscCs>t||gƒ}tjƒjdddd|t|ƒƒdS(sò ¿ç·þ¹ã²¥ÐÅÏ¢Ìáʾ£¬Ö§³Öͬ²½¶àÌõ£¬Í¬Ê±Ò²½¨Òé¶àÌõÒ»Æðͬ²½
    @param serverGroupIDList: ÐèҪͬ²½µ½µÄÄ¿±ê·þÎñÆ÷×éIDÁбí
    @param crossNotifyList: ÐÅÏ¢ÌáʾÁÐ±í£¬Í¨¹ý GetCrossWorldNotifyInfo GetCrossFamilyNotifyInfo º¯Êý»ñµÃ·µ»ØÖµÌí¼Óµ½Áбí
    it CrossNotifyN(tstrRR=tGameServer_QueryPlayerResulttlen(tserverGroupIDListtcrossNotifyListtsendMsg((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRRs(cCstj|||ƒdS(N(t PlayerFamilytNotifyAllFamilyMemberMsg(RPR;R<((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt FamilyNotifyscCs tjƒj|t|ƒƒdS(N(RtGetMapCopyPlayerManagertBroadcastFB_NotifyCodeR:(R;R<((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytFBNotify scCstjƒ}xlt|jƒƒD]X}|j|ƒ}|dks|jƒrRqn|jƒ|krt|||ƒqqWdS(N(    RR\R>tGetPlayerCounttGetPlayerByIndexR7tIsEmptyt
GetFactionR9(tfactionR;R<tcopyMapPlayerManagerRHR((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytFBFactionNotifySelf$s cCstjƒ}xlt|jƒƒD]X}|j|ƒ}|dks|jƒrRqn|jƒ|krt|||ƒqqWdS(N(    RR\R>R_R`R7RaRbR9(RcR;R<RdRHR((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytFBFactionNotifyOther/s cCstjƒ}x|t|jƒƒD]h}|j|ƒ}|dks|jƒrRqn|jƒ|krwt|||ƒqt|||ƒqWdS(N(    RR\R>R_R`R7RaRbR9(Rct selfMsgMarktselfMsgParamListt otherMsgMarktotherMsgParamListRdRHR((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytFBFactionNotify:s cCsL|dkrdSd||f}tjƒjdd|d|t|ƒƒdS(Nis
("%s", %s)t
TeamNotify(RR=RTRU(tteamIDR;R<RX((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRlLs
 (c
 
CsdS(N((
t mailTypeKeytbatchPlayerIDListtbatchAddItemListtbatchParamListt    batchGoldtbatchGoldPapert batchSilvert batchDetailt moneySourcet    crossMail((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SendMailBatchUstc
Cs+x$|D]}
tj||
||ƒqWdS(N(t
PlayerMailt SendMailByKey( Rnt playerIDListt addItemListt    paramListtgoldt    goldPapertsilvertdetailRvRwtplayerID((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR{[s cCs†tjƒ|stSxk|D]c}t|ƒ}|tjkrLtj|ƒq|tjkrqtjt|ƒƒqtj|ƒqWtS(N(    tNotifyCodeListtClearttypettypestIntTypetAddInttLongTypetAddStrRS(R<tmsgtitemPythonType((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR:es
  cCs\|jƒ}|dks$|dkr(dStj|ƒ}tjtjƒƒ}tj||ƒS(NRyt0i(t GetLogoffTimeRtGetDateTimeByStrtGetCurrentDataTimeStrtGetDiff_Minute(Rt logoffTimeStrt
logoffTimet    loginTime((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetPlayerLeaveServerMinute~s  cCsp|jƒ}|dks$|dkr(dStj|ƒ}tjtjƒƒ}||}|jddd|jS(NRyRŽiii<(RRRR‘tdaystseconds(RR“R”R•t    diff_Time((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetPlayerLeaveServerSecondŽs 
cCs‰|jƒ}|dks$|dkr(dS|jƒd}tjƒjƒd}tj|tjƒ}tj|tjƒ}||}|jS(NRyRŽi(RtsplitRR‘RtChConfigtTYPE_Time_Format_DayR—(RR“t loginTimeStrR”R•tdiffTime((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetPlayerLastLeaveServerPastDay s 
cCsÖtj|ƒdkrtSt|ƒs)tStjƒjƒtjkr|tjƒj    ƒt
j ddƒkr|t |dƒtSntj ƒ r¦t|ƒr¦t |dƒtS|jtjƒrÒtjd|jƒƒtStS(NitDungeonDeliveritCarry_lhs_844170t
CrossMap10s¿Í»§¶Ë×Ô¶¨Ò峡¾°ÏÂÎÞ·¨´«ËÍ!(tGameObjtGetHPRtCheckTransStateRR)t GetMapFBTypet IPY_GameWorldtfbtNulltGetMapIDt IpyGameDataPYtGetFuncEvalCfgR9t IsCrossServert GetCrossMapIDR    RœtDef_PlayerKey_ClientCustomSceneR.t GetPlayerIDR(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytCheckPlayerTransport¶s $  cCsh|dkrtS|jƒjtjƒ}|jtjƒ}|rQ|jƒ rQtSt|d|gƒt    S(NiL'tGeRen_lhs_861048(
RtGetItemManagertGetPackR¨trptEquiptGetAttretWingRaR9R(Rt    destMapIDt playerEquiptcurEquip((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytCheckEquipCanTransÔs cCsut|ƒ|jƒt|tƒ|j|ƒ|j|ƒ|j|ƒ|jƒtj    ƒj
ƒ}t ||ƒdS(N( tExitPlayerConfrontingR-tSetIsNeedProcessRtSetPrepareTimetSetPrepareStatet SetPrepareIDtSync_PrepareBeginRRRtDelLimitSuperBuff(Rt prepareTimet prepareTypet    prepareIDttick((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRÁìs
 
 
 cCsð|jƒ}||krdSt|ƒ|tjkrBt|ƒn|tjkr‘| r‘|tjtjgkr‘t    j
d||j ƒƒdSn|tj kr­t |ƒn|j|ƒ|tjkrÍdSt    jƒjƒ}t||ƒdS(Ns²»Ç¿ÖÆ×ª»»×´Ì¬ %s(tGetPlayerActiont DoPlayerStandRœtDef_PlayerCancelConfrontingR¼R¨tpaEventtpaNulltpaAttackRRRt paPreparingtDoExitPreparingtSetPlayerActionRRRÂ(Rt changeActiont forceChangetcurPlayerActionRÆ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytChangePlayerActions$  
    cCsÉtj|ƒ|jƒ}|dkr?tjd|jƒƒdS|jƒtj    krntjd|jƒƒdStj
ƒj |j ƒƒ}|dkr¯tjd|jƒƒdS|j ƒ}|jƒdS(NsDoExitPreparing -> Ã»ÓÐÄ¿±êsDoExitPreparing -> ²É¼¯¶ÔÏó²»¶ÔsDoExitPreparing ->ûÓÐÕâ¸öNPC(t    NPCCommontClearCollectNPCt GetActionObjR7RR.R°tGetGameObjTypeR¨tgotNPCt GetNPCManagert GetNPCByIndextGetIndextGetPlayerHurtListR…(RttagObjtcurNPCtcurNPC_HurtList((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRÎ*s     
cCsOt||ƒrdS|jtjƒ}|td|ƒB}t|tj|ƒdS(Ni(tGetPyPlayerActiontNomalDictGetPropertyRœtDef_Player_Dict_PyPlayerActiontpowtNomalDictSetProperty(RRÐtstate((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytChangePyPlayerActionFs cCs/|jtjƒ}|td|ƒ@}|dkS(Nii(RáRœRâRã(Rtactiont receiveStateRå((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRàVscCstj|tjdƒdS(Ni(t PlayerControlRäRœRâ(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytClearPyPlayerAction`scCsA|jƒ}||krdS|j|ƒtj|d|ƒdS(NsÉèÖÃÍæ¼ÒÊÇ·ñ¼¤»î:%s(tGetIsNeedProcessR½RtGodLog(Rt isNeedProcesstcurPlayerIsNeedProcess((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR½ks    cCs|jƒtjkrtStS(N(RÇR¨RÌRR(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytIsPlayerInFightzscCsdS(N((R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytAutoEnterPlayerConfrontingscCsdS(N((R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR¼¤scCs    |jƒtjkrdS|jƒtjtjgkr;dS|jƒ}|dkrWdS|j    ƒtj
krpdSt j ƒj |jƒƒ}|dkr›dS|jƒ}tjd|ƒ}|sÃdS|jƒsÓdSt|tjƒ|jƒdkr|jdƒndS(Nt
CollectNPC(RÇR¨RÍtGetPrepareStatetpstMissionCollectingRLtDef_PstProduceRÖR7R×RØRRÙRÚRÛtGetNPCIDR«tGetIpyGameDataNotLogtGetCanBreakCollectRÓRËt SetActionObj(RRÝRÞtnpcIDtcollectNPCIpyData((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytBreakPlayerCollect¹s,     cCs>|jƒtjkrdS|jƒt|tƒ|jƒdS(N(RÇR¨tpaSitR-R½RtSit(RRÆ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt DoPlayerSitïs 
 
cCs'|jƒtjkrdS|jƒdS(N(RÇR¨RütStand(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRÈs
cCs2|jdƒt|ƒ|jƒ|j|ƒdS(N(RøR7R¼R-tView_ShowPlayerFace(RtfaceType((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytDoPlayerShowPlayerFaces
 
 
 cCs6|jƒ|j|jtjƒ|jtjƒƒdS(N(R-tSetDeadR    RœtDef_NPCDead_KillerIDtDef_NPCDead_KillerType(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt DoPlayerDead$s
c Csß|jƒs&tjd|jƒƒtS|jƒsLtjd|jƒƒtStjƒ}t}|j||ƒtkr#t    j
||t j ƒ}|j ƒ|krÖ|jƒ|krÖtjd||f|jƒƒtStjd|||j ƒ|jƒf|jƒƒ|j ƒ}|jƒ}n|j ƒ}|jƒ}    tj||||    ƒ}
|
dkryt|||||ƒtSt}tjd||||    |
fƒ|}|    }t|||||ƒtSt|||||ƒtS(NsµØÍ¼Ã»ÓжÁÈ¡³É¹¦, Ë¢ÐÂʧ°ÜsûÓÐËٶȲ»ÄÜË¢ÐÂ×ø±ê!s6Íæ¼ÒÖØÖÃλÖÃʧ°Ü, °ÑÍæ¼Ò´ò»ØÖØÉúµã posX = %s posY = %ssX×ø±ê´íÎ󣬼ì²éÍæ¼ÒͣϵÄ×ø±êÊÇ·ñÕýÈ· posX = %d, posY = %d, ÖØÖÃλÖÃ:posX = %d, posY = %dis+Client=(%s,%s), Server=(%s,%s), ²îÒì¾àÀë=%s(t GetMapLoadOKRR.R°RRR)R*RR+R,RœtDef_DropItemDistRRRt__FixPlayerPosR( RtcheckObjtposXtposYtcanChangeClientPostcurMapt needResetPost    resultPostobjPosXtobjPosYR((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytPlayerRefreshPos6sB       $        )        cCs8|r|j||ƒdS|r4|j||ƒdSdS(N(R/t    ChangePos(R
t
changePosXt
changePosYtneedResetServerPostneedChangeClientPos((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR    ›scCs>|jdƒ}|sdS||dkr-dSt|tƒtS(NtDelayDeleteMirrori'(R    t DeleteMirrorRR(RRÆtaddTick((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytOnDelayDeleteMirror¨s cCs§|jƒsdS|jƒ}|retjd|ƒt||ƒtjƒjƒ}|jd|ƒdStjd|ƒtj    |ƒt
|ƒt j |ƒ|j ƒdS(s »ØÊÕ¾µÏñÍæ¼Ò
    Ns¾µÏñÍæ¼ÒÉèÖÃÑÓ³Ù»ØÊÕ!Rs ¾µÏñÍæ¼Ò»ØÊÕ!(tGetRealPlayerIDR°RRtSetPlayerSightLevelRRR tPassiveBuffEffMngtOnPlayerLeaveMaptKillPlayerSummonNPCt
PetControltReCallFightPetR(RtisDelayRƒRÆ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR±s    
 
cCsag}x6t|jƒƒD]"}|j|ƒ}|j|ƒqWx|D]}tj|ƒqFWdS(N(trangetGetSummonCounttGetSummonNPCAttappendRÔt    SetDeadEx(Rt summon_Listtindext curSummonNPCt    summonNPC((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR!Ìs cCs|jƒ}|tjkS(N(RÇRœtDef_Player_Can_Transfer_State(RRÒ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytPlayerCanStateTransferÛs cCs,|jƒtjkr(tj|tƒndS(N(tGetPlayerVehicleR¨tpvHorset PlayerHorsetPlayerRideHorseDownR(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__RidingHorsePlayerDisconnectèscCsÅtj||ƒtj|||ƒtj|ƒtjƒjƒdkr’tj    ƒj
ƒ}|rfdnd}||gt j |<t j||ƒnt|ƒt||ƒtj|ƒ|jƒt jkrät jj|jƒƒntt _tj||ƒ|jƒ}|s2tj|ƒt jj|dƒnt jj|dƒt jj|dƒt j j|dƒt j!j|dƒtj"|ƒx3t j#j$ƒD]"}||kr›|j%|ƒq›q›WdS(Niii(&t SkillCommontRefreshAllSkillRemainTimet
PlayerTeamtTeamPlayerLeaveMapRÔRÕRR)R§RtGetCurGameWorldIndext
PyGameDatatg_lastExitFBTypetFBLogict DoExitFBLogict__ClearLeaveNoSaveBufftUpdateOnLineTimeRR R°tg_maliciousAttackDicttpopRtg_needRefreshMapServerStatet PlayerSuccesstFinishDelayAddSuccessProgresstCrossPlayerDatatClearCrossSyncDataCachetg_fbBuyBuffTimeDictR7tg_playerFuncAttrDicttg_playerEquipPartAttrDicttg_equipChangeClassLVInfotg_playerReqEnterFBExtClearPriWoodPiletg_realmDiffPlayerDicttvaluestremove(RRÆt isDisconnecttfbIndext
exitFBTypeRƒR|((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__PlayerLeaveServerLogicõs8 
          cCs¡|jtjƒ}|dkr5|jtj|ƒdS|jtj|ƒ||d}|dkr|j|jƒ|ƒ|j|jƒ|ƒt|ƒndS(Niiè(    R    RœtDef_PlayerKey_CalcOLTimeTickR tSetWeekOnlineTimetGetWeekOnlineTimet SetOnlineTimet GetOnlineTimetSyncOnLineTimeTotal(RRÆt lastCalcTicktdiffSec((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR?5s   cCs9tjƒ}|jƒ|jƒ|_tj||ƒdS(N(tChPyNetSendPackttagMCOnLineTimeTotalR…RXtOnLineTimeTotalt NetPackCommont SendFakePack(RR%((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRYIs
 
cCsPdStjƒ}|jƒ||_|jtj|ƒ|_tj    ||ƒdS(N(
R\ttagMCOnlineTimeLastOpenPackR…tPackTypeRáRœt$Def_Player_Dict_LastAutoOpenPackTicktLastOnLineTimeR_R`(RtpackTypeR%((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSyncOnLineTimeLastOpenPackTs 
    cCs|jƒjƒdS(N(t
GetMapBuffR…(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR>ascCsÌt||jƒt|ƒt||jƒt|ƒt||jƒt|ƒt||jƒt|ƒt||jƒt|ƒt||jƒt|ƒt||jƒt|ƒt||j    ƒt|ƒdS(N(
tPlayerClearBuff_Singlet GetBuffStatetClearBuffByDisconnecttGetDeBuffStatetGetAurat
GetIncBuffRgtGetActionBuffManagertGetProcessBuffStatetGetProcessDeBuffState(RRÆ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__DisconnectClearBuffqscCsÇtj||ƒt||ƒt|ƒ}|jƒtj|ƒtj|ƒt    j|ƒt
||t ƒt |ƒt |ƒ||jƒ|jƒgtj|jƒ<tjdtj|jƒƒdS(NsÍæ¼Ò´Ó±¾µØÍ¼ÀëÏß: %s(R"tDoLogic_PetInfo_OnLeaveServerRqRétRefreshAllStatetPlayerBillboardt"UpdatePlayerBillboardOnLeaveServertPlayerViewCachetOnPlayerLogoutRYRSRR4R!RRR:tg_disconnectPlayerR°RR(RRÆt playerControl((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytPlayerLeaveServer‡s  
 
 
(cCs"|tjkrdStj|dS(Ni(R:Rx(Rƒ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetPlayerLeaveServerTick§scCs%|tjkrdStj|dd!S(Niii(ii(R:Rx(Rƒ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetPlayerLeaveServerPos®scCsQxJtjjƒD]9\}}|d}||dkrtjj|ƒqqWdS(Nii€î6(R:RxtitemsRA(RÆRƒt    leaveInfot    leaveTick((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt"RemoveTimeoutLeaveServerPlayerInfo¶s
 
cCs6|tjkr2tjj|ƒtjd|ƒndS(Ns%½øÈë±¾µØÍ¼£¬ÒƳýÉÏ´ÎÔÚ±¾µØÍ¼ÀëÏ߼Ǽ!(R:RxRARR(Rƒ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytRemoveLeaveServerPlayerInfo¾scCs~|jƒjtjƒ}xLt|jƒƒD]8}|j|ƒ}| s+|jƒrYq+n|jƒq+Wt    |t
j dƒdS(Ni( R³R´R¨t
rptRecycleR%tGetCountR¶RaR…RäRœtDef_Player_Dict_DelPackIndex(RtbackPackRHtcurItem((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytDelRecylcePackÉsc    Cs¿t|ƒt||tƒtj||ƒtj|ƒx,|jƒre|jdƒ}t    j
|ƒq:W|j t j ƒ}tjƒjƒtjkrM|jƒtjddƒkrM|jƒ}|jƒ}|jƒ}|jƒ}t|t j|ƒt|t j|ƒt|t j|ƒt|t j|ƒtjd||||fƒná|jƒt jkr.|jƒ|kr.tjƒj |ƒtjkr.|jƒ}|jƒ}|jƒ}t!|ƒ}t|t j"|ƒt|t j#|ƒt|t j$|ƒt|t j%|ƒtjd||||fƒnt&j'|ƒtjƒjƒtjkr±t(j)|ƒdkr±|j*ƒtj+kr±t(j)|ƒt(j,|ƒkr±t(j-|ƒq±n|j.ƒdS(NitMapLineis>×îºóÒ»´ÎÀ뿪µÄ·ÇÖÐÁ¢³£¹æµØÍ¼¸üÐÂ!mapID=%s,lineID=%s,Pos(%s,%s)sJ½øÈ븱±¾Ê±£¬×îºóÒ»´ÎÀ뿪µÄ¿É·µ»ØµÄ¸±±¾ID¸üÐÂ!mapID=%s,lineID=%s,Pos(%s,%s)(/tNotifyStartChangeMapRSRR<tDoPlayerChangeMapLogicR"R#R&R'RÔR)R    RœtDef_PlayerKey_ChangeMapIDRR)R§R¨R©RªR«R¬RRtGetClientLineIDRätDef_Player_Dict_FromMapIDtDef_Player_Dict_FromPosXtDef_Player_Dict_FromPosYtDef_Player_Dict_FromLineIDRtDef_CanBackFBMaptGetMapFBTypeByMapIDtGetFBFuncLineIDtDef_Player_Dict_FromFBMapIDtDef_Player_Dict_FromFBPosXtDef_Player_Dict_FromFBPosYtDef_Player_Dict_FromFBLineIDt PlayerAssistR R¤R¥RÇtpaDietGetMaxHPt    SetHPFulltDoResetWorldPosAndClear(RRÆR-t changeMapIDtmapIDR R RC((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytDoPlayerResetWorldPosÝsF
 9     '      H
c Cs;|jtjƒs&tj|dƒdStjd|jƒƒtjƒrYt    j
|ƒdSd}t }|j ƒt jddƒks˜|j ƒtjkrq|jtjƒ}|jtjƒ}|jtjƒ}|jtjƒ}t|tjdƒ|s4t jddiƒ}|sdS|jƒ}d}||krL||\}}}qn|jƒ}    |    d\}}}q4nÃ|jtjƒ}
|
r|
}|jtjƒ}|jtjƒ}|jtjƒ}|}t}t|tjdƒtjd||||fƒn0|jƒ}|jƒ}|jƒ}|j ƒ}||j ƒkr{tj!ƒ} | j"ƒ| j#ƒ| j$ƒ}}}ntjd|||f|jƒƒt%j&ƒrätj'ƒj(ƒj)ƒdkrätj*ƒ} | j+dƒnt,|||||d    |d
|ƒ|j-ƒt.j/gks*|j0ƒr7|j1ƒndS( NisPlayerLeaveFB...iRˆit CreateRoleMapsGÀ뿪¸±±¾£¬·µ»Ø¿É֮ǰ¿É·µ»ØµÄ¸±±¾! fromFBMapID=%s,lineID=%s,posXY(%s,%s)s.PlayerLeaveFB MapID = %d, PosX = %d, PosY = %dt
funcLineIDt enterFBFree(2RáRœt!Def_Player_Dict_RouteServerInitOKtGameServerRefresht%Set_PlayerRouteServerInitOK_OnLeaveFBRR.R°R­tCrossRealmPlayertPlayerExitCrossServerRRªR«R¬R‘RRŽRRRätGetJobRNR”R•R–R—RRt GetFromMapIDt GetFromPosXt GetFromPosYt GetFromLineIDR)tGetRebornMapIDt GetRebornMapXt GetRebornMapYtGameWorldProcesstIsNoPlayerNeedCloseFBRR\R_t    GetGameFBtSetIsSafeClosetPlayerResetWorldPosFBRÇR¨RËtIsMovingt
BeginEvent( RR¡R¢RžR R RCtcreateRoleMapDicttjobt mapInfoListt fromFBMapIDtgameMaptgameFB((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt PlayerLeaveFBsd  3         )#* 
"$ cCs3|jƒ}tjd||f|ƒ|tjkr9dStjƒjƒ}|jtjƒ}|r”||dkr”tj    d|ƒt
|dƒdS|j tj ƒ}|rÊtj d||f|ƒdStjƒrçtj    dƒdSt|ƒr tj d|jƒƒdStjƒs*t
|dƒdStj|ƒd    krPt
|d
ƒdStj|ƒrvt
|d |gƒdStj|ƒ}|rStj||tƒ}|sÁtj    d ||fƒdStj|||||ƒ}    |    tjkrïdStj||||ƒsStj    d |jƒƒ|tjgkr?t
|dƒn t
|dƒdSn|tj krúi}
|tj!kr t"j#||ƒ} | s“dS| |
d<ni|jƒd6|d6|d6|j$ƒd6} |
rä| j%|
ƒntj&tj'| ƒn"t(j)||d|ƒ} | sdS|j*tj|ƒdS(Ns(Íæ¼ÒÇëÇó½øÈë¿ç·þµØÍ¼: mapID=%s,lineID=%siˆs    ÇëÇó½øÈë¿ç·þCDÖÐ!tRequestEnterCrossServerCDs;¿ç·þÒѾ­ÔÚÉÏ´«Êý¾Ý£¬²»Öظ´Ìá½»!crossRegisterMap=%s,mapID=%ss¿ç·þ·þÎñÆ÷²»ÔÊÐí¸Ã²Ù×÷!s+Íæ¼Òµ±Ç°Îª¿ç·þ״̬£¬²»ÔÊÐíÔÙ´ÎÇëÇó½øÈë¿ç·þ!tCrossMatching18it    CrossMap4t SingleEnterPKs/¸±±¾±íÕÒ²»µ½¸±±¾¶ÔÓ¦¹¦ÄÜÏß·!mapID=%s,lineID=%ss    OnEnterFBEvent False!tGeRen_chenxin_268121tSingleEnterDefaultBossIDtPlayerIDtMapIDt
FuncLineIDtLVRC(+R°RR.RœtDef_CrossMapIDListRRR    t)Def_PlayerKey_RequestEnterCrossServerTickRR9RátDef_PlayerKey_CrossRegisterMapR8R­R®R¦tIsCrossServerOpenR¤R¥t PlayerStatet IsInPKStatetFBCommont GetFBIpyDatatGetFBLineIpyDataRtCheckCanEnterFBCommRLtEntFBAskRet_OKR<tOnEnterFBEventtDef_FBMapID_CrossBattlefieldtDef_CrossDynamicLineMaptDef_FBMapID_CrossDemonKingtGameLogic_CrossDemonKingtGetCurFBLineBOSSIDtGetLVtupdatetSendMsgToCrossServertClientServerMsg_EnterFBtGY_Query_CrossRealmRegtRegisterEnterCrossServerR (RRžRCRƒRÆtlastRequestTicktcrossRegisterMapt    fbIpyDatat fbLineIpyDatatrett
extendInfotbossIDtmsgDicttisSend((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytPlayerEnterCrossServerpsx          .c Csºtj|ƒ}|jƒ}tjd|||||f|ƒtj|ƒ}tj||ƒ}|sk|n    |jƒ}    tjƒj    |    ƒsªtj
d|    |j ƒƒdStj ƒj ƒ}
t||||||
ƒtjkrädS|dkr\|dkr\tj|||ƒ} tj|||| |
ƒ} | sMtj
d||fƒdS| \}}n|jƒru|jƒnd} t}tjƒj|    ƒ}|tjkré|jƒré|jƒtjkràtjd|jƒƒdSt}n|s|tjks|t j!dƒkršg}|tj"krrt#j$ddƒ}||krWtj%d    ƒdSt&j'|ƒ}|g}n|tj(krýt)j'|ƒ}|d
g}|j*tj+tj(ƒ}|tj,|tj(ƒkr€|j*tj-ƒrú||j.ƒg}qúq€nƒ|tj/kr*t0j1||ƒ}|g}nV|tj2kr[|j*tj+|ƒ}|g}n%|tj3kr€|    |d <|g}nt4||||
|ƒdSt5||||| d |ƒdS( NsAÍæ¼ÒÇëÇó½øÈ븱±¾! mapID=%s,lineID=%s,posX=%s,posY=%s,reqInfoEx=%ss###·Ç·¨µØÍ¼Êý¾Ý£¬sceneMapID: %sis&δÕÒµ½½øÈ븱±¾×ø±ê£¡mapID=%s,lineID=%ss!·Ç¶Ó³¤£¬ÎÞ·¨·¢Æð½øÈë×é¶Ó¸±±¾ÇëÇó!tMapID_SendToGameServertSealDemonNewbieLineis*·âħ̳ÐéÄâÏß·ֻÄÜͨ¹ý×Ô¶¨Ò峡¾°½øÈëÌôÕ½£¡iÿÿÿÿt
sceneMapIDR¡(6RÏtGetRecordMapIDR°RR.RÐRÑRªR)t IsMapIDExistR8RRRt CheckMoveToFBRLRÓtGetFBLineEnterPosInfoR<tOnGetFBEnterPosRµR-RR’R¨tfbtTeamt    GetTeamIDt    GetTeamLVt    tmlLeaderRRœtDef_MapID_SendToGameServert ReadChConfigtGetEvalChConfigtDef_FBMapID_SealDemonR«R¬RtGameLogic_SealDemontCurFBLineBOSSIDtDef_FBMapID_ZhuXianBosstGameLogic_ZhuXianBossRátDef_Player_Dict_EnterFbCntDaytGetEnterFBMaxCnttDef_PDict_ZhuXianBossHelpCntt GetFamilyIDtDef_FBMapID_DemonKingRØRÙtDef_MapID_LineIDToPropertyIDtMirrorBattleMapIDListtSendToGameServerEnterFBR´(RRžRCR R t    reqInfoExRƒRâRãRìRÆtipyEnterPosInfotretPostfbIDtisSendToGameServert    mapFBTypetextendParamListtnewbielineListRætenterCnt((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt PlayerEnterFBÃsv #$            
 cCstjd|||f|jƒƒ|dkrGtj|||ƒ}n||g}||7}d|}|jtjdd|t    |ƒƒdS(Ns=SendToGameServerEnterFB mapID=%s,lineID=%s,extendParamList=%ss%sitEnterFB(
RR.RR7R<tGetPlayerFBLineIDtGameServer_QueryPlayerByIDRœtqueryType_EnterFBRU(RRžRCRÆR RX((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRs      
 
"c    Cs£tj|||||d||ƒ}|tjkr7|Stj|ƒdkr`tjdƒtjS|r”|j    ƒt
j kr”t j |ƒr”tjSnt j|ƒrÆ|r¿t|d|gƒntjSt|ƒr|tjkr|rýt|d|gƒntjS|jƒ}    |    t
jkrB|r;t|d|gƒntjS|    t
jkrn|rgt|dƒntjS|jtjƒr³|r–t|dƒntjd|jƒƒtjS|    tjkrß|rØt|dƒntjSx=tj D]2}
t!||
ƒré|rt|dƒntjSqéWtj"ƒj#ƒt
j$krQt%} t&j'd    ƒ} tj"ƒj(ƒ} | | kr†|| | kr†t)} n| tj*kržt)} ntj"ƒj+|ƒ}|t
j$kræ| t,j-d
dƒkr%t)} q%n?tj.| ƒtj.|ƒkr%t/j0|||ƒr%t)} q%n| sQ|rGt|d |gƒntj1Snt/j2||||ƒsœtj3d |jƒƒ|r•t|d ƒntjStjS(sþÅжϿɷñ½øÈ븱±¾£¬°üº¬ÊÖ¶¯¼°Æ¥Åä
    @param isTeamAsk: ÊÇ·ñÊǶÓÎé½øÈëÇëÇóµÄ£¬Ò»°ãÊǶÓÎé״̬Ï£¬¶Ó³¤·¢Æð½øÈ븱±¾£¬ÐèÒª¼ì²é¶ÓÔ±¿É·ñ½øÈ룬´ËʱΪTrue£¬¿É×öһЩ¸½¼Ó´¦Àí
    @note: ²ß»®ÒªÇóÌáʾ°´ÓÅÏȼ¶À´£¬¸±±¾×ÔÉíµÄÌõ¼þÏÞÖÆÓÅÏÈÌáʾ£¬ÆäËû¸½¼ÓÌáʾÓÅÏȼ¶½ÏµÍ
    iisÍæ¼ÒÒѾ­ËÀÍö, ÎÞ·¨½øÈ븱±¾!RÁt    CrossMap5tSingleEnterGathertCarry_lhs_697674s¿Í»§¶Ë×Ô¶¨Ò峡¾°ÏÂÎÞ·¨½øÈ븱±¾!tFBEnableTransportMapR¡tSingleEnterDungeons    OnEnterFBEvent False!RÃ(4RÏRÒRLRÓR¤R¥RR.tEntFBAskRet_DeadRôR¨RõRÍt IsInBossStatetEntFBAskRet_BossStateRÎR9tEntFBAskRet_PKStateR®RœRÉtEntFBAskRet_InCrossMapRÇRÍtEntFBAskRet_PreparingRütEntFBAskRet_SitR    R¯R°tEntFBAskRet_OthertDef_Player_Cannot_TransStatet(Def_Player_NotCan_EnterFbPyGameEvenStateRàR)R§R©RR÷RøRªRR‘R’R«R¬RíR<tCanChangeSameDataMapFBtEntFBAskRet_InFBRÔR(RRžRCRâRãRÆtisNotifyt    isTeamAskRät playerActionR+tcanFBMoveToOthertfbEnableTransportMaptcurMapIDt toMapFBType((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRï)s‚$ 
            
cCs&tjƒjƒ}tj||ƒdS(N(RRRtPlayerGameWallowtDoLogic_WallowOnlineTime(RRÆ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytRefreshPlayerTick˜scCsF|jƒ|krdS|jtjƒ}t|tj|ƒtjd||||f|jƒƒ|j    tj
|ƒ|j    tj |ƒ|j    tj |ƒt |ƒt|ƒtjƒ}|jƒ||_||_||_tj||ƒ|jdƒ|j||ƒt|||ƒtjƒ}|jƒtj||ƒdS(sPÍæ¼ÒÇл»µ½Ö¸¶¨¸±±¾¶ÔÓ¦µÄ¹¦ÄÜÏß·ID£¬ÊÊÓÃÓڶೡ¾°ºÏ²¢Ò»ÕŵØÍ¼µÄÇé¿ö£¬ºó¶ËÐèÔÚͬһÕÅÎïÀíµØÍ¼²ÅÄÜʹÓøú¯Êý
    ÓÉÓÚǰ¶ËµØÍ¼ºÏ²¢µÄ³¡¾°¼ÓÔØÊÇ·Ö¿ªµÄ£¬ËùÒÔÔÚÇг¡¾°µÄʱºò²»ÄÜÖ±½ÓÉèÖÃ×ø±ê£¬ÒòΪǰ¶Ëʵ¼ÊÉϲ»´æÔÚ¸Ã×ø±ê
    Íæ¼ÒÖ±½ÓÔÚµØÍ¼ÖÐÇл»¹¦ÄÜÏß·ID£¬´Ëʱǰ¶ËÐèÒª×ßÕý³£µÄÇÐͼÁ÷³Ì²ÅÄܼÓÔØÄ¿±ê¹¦ÄÜÏß·ID¶ÔÓ¦µÄ³¡¾°
    ¹ÊÕâÀï×ö¸öÐé¼ÙÇÐͼÁ÷³Ì
    NsHÍæ¼Ò¸±±¾Öбä¸ü¹¦ÄÜÏß·ÐéÄâÇеØÍ¼: mapID=%s,posX=%s,posY=%s,funcLineID=%si(RªRáRœtDef_Player_Dict_ReqFBMapIDRätDef_Player_Dict_ReqFBFuncLineRR.R°R R‹tDef_PlayerKey_ResetFBLinePosXtDef_PlayerKey_ResetFBLinePosYtNotifyPrepareChangeMapR‰t ChNetSendPackttagPlayerMapInitR…RÆtPosXtPosYR_R`tSetSightR/tSetFBFuncLineIDttagServerPrepareOK(RRžR R R¡treqMapIDt playerMapInitt    prepareOK((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytPlayerResetWorldPosFBLineID¢s0    
 
 
              
c    
Cs tjƒjƒ}    |jtjƒ}
|    |
dkrwtjd|||||||    |
f|jƒƒt|dƒdS|j    tj|    ƒt
j |ƒ}t
j ||ƒ} | s·|n    | j ƒ} tjdƒ} || kr| |}|rtj|ƒ} tjd| ƒqn|r'|jƒntj|||ƒ}t|tj|ƒt|tj|ƒtjd| ||||||    |
f|jƒƒ|r½t|tjdƒtjd    ƒn|j| ||t||ƒ|j    tj| ƒ|j    tjtd
|ƒƒt|ƒt |ƒdS( sÎ
    ²ÎÊý˵Ã÷:
        @param fbID:
            ´óÓÚ0µÄÕûÊý:
                Èç¹û²ÎÊýmapIDÖ¸¶¨µÄµØÍ¼´æÔÚfbIDÖ¸¶¨µÄ·ÖÏߣ¬ÔòÖ±½Ó´«Ë͵½²ÎÊýmapIDËùÖ¸¶¨µÄµØÍ¼µÄfbIDËùÖ¸¶¨µÄ·ÖÏߣ¬·ñÔòÔÚËùÓдæÔڵķÖÏßÖУ¬Ëæ»úѡһÌõ·ÖÏß´«Èë¡£fbIDµÄ¼ÆËã¼ûÏÂÃæfbID=-1µÄ˵Ã÷¡£
            -1£º
                ½Ó¿ÚÄÚ²¿×Ô¶¯Ìæ»»³Éµ±Ç°fbID£¬´«Èë²ÎÊýmapIDËùÖ¸¶¨µÄµØÍ¼£¨ÕâÀï²ÎÊýmapIDÆäʵÊÇDataMapID£©µÄͬһfbIDµÄµØÍ¼(Èç¹ûÓУ¬Ã»ÓÐÔòËæ»ú)¡£
                Ï־͵±Ç°fbIDµÄ¼ÆËã,¾ÙÀý˵Ã÷,¼ÙÉèµØÍ¼AºÍµØÍ¼BÔÚMapID.txtÅäÖÃÈçÏ£º
                MapName     MapID   DataMapID FBCount
                µØÍ¼A         101     101     3
                µØÍ¼B         102     101     3 
                ¼´µØÍ¼AºÍµØÍ¼BÓй²Í¬µÄDataMapID,ÄÇôµØÍ¼B½ø³ÌÄÚ²¿µÄµÚÒ»Ìõ·ÖÏߵĿͻ§¶ËID¾ÍÊÇ3(ËùÓзÖÏߵĿͻ§¶Ë·ÖÏßID:0¡¢1¡¢2¡¢3¡¢4¡¢5)
            -2£º
                Ö±½ÓËæ»ú´«µ½²ÎÊýmapIDËùÖ¸¶¨µÄµØÍ¼µÄijһÄÚ²¿·ÖÏߣ¬ÕâÀïµÄijһÄÚ²¿·ÖÏßÏÞÓÚMapID.txtÖÐmapIDΪ´«Èë²ÎÊýmapIDµÄµØÍ¼½ø³ÌµÄ·ÖÏß¡£
    
        @param funcLineID: ¹¦ÄÜÏß·ID
    iès\Íæ¼ÒÇÐͼCDÖÐ: mapID=%s,posX=%s,posY=%s,fbID=%s,msg=%s,funcLineID=%s,tick=%s,lastTransTick=%st    MapMoveCDNt
FBMapShuntsµ¥È˵ØÍ¼·ÖÁ÷ sceneMapID=%sseÍæ¼ÒÇëÇó¿ªÊ¼ÇÐͼ: sceneMapID=%s,posX=%s,posY=%s,fbID=%s,msg=%s,funcLineID=%s,tick=%s,lastTransTick=%sis    ±¾´ÎÃâ·Ñ½øÈ븱±¾!i(!RRRR    RœtDef_PlayerKey_TransTickR.R°R9R RÏRíRÑRªR÷RøtrandomtchoiceRR¶R<tGetPlayerResetWorldPosFBMsgRäR/R0tDef_Player_Dict_EnterFBFreetResetWorldPosReqRR‹tDef_PlayerKey_ChangeLineIDtmaxR.R3(RRžR R R    RŒtcanLockR¡R¢RÆt lastTransTickRãRìtFBMapShuntDictt    shuntList((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR´ÔsB    )  
     )
 
cCs•|jtƒtjƒ}|jƒtj|jtj    ƒƒ|_
|j tj ƒ|_ |j tjƒ|_tj||ƒtjd|jƒƒdS(Ns ×¼±¸Çл»µØÍ¼(t
SetVisibleRR\ttagMCPrepareChangeMapR…RtGetMapDataMapIDR    RœR‹RÆRáR0RÇR/t    FuncMapIDR_R`R.R(RR%((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR3s  
cCsˆtjƒ}|jƒtj|jtjƒƒ|_|j    tj
ƒ|_ |j    tj ƒ|_ tj||ƒtjd|jƒƒdS(Ns֪ͨ¿ªÊ¼Çл»µØÍ¼(R\ttagMCStartChangeMapR…RROR    RœR‹RÆRáR0RÇR/RPR_R`R.R(RR%((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR‰#s 
cCs*tjƒjƒ|kr-tjd|ƒdStjƒ}|jƒtjkr_t|dƒdS||j    ƒkr›tjd||j    ƒf|j
ƒƒdSt |t j |dƒt |t jdƒt |t jdƒt||jƒ|jƒ|jƒ|ƒtjd|jƒ|f|j
ƒƒdS(NschangLineID SameLine = %stGeRen_liubo_180377s»»ÏßµÄÄ¿µÄµØ²»´æÔÚ = %s, %siisÍæ¼Ò = %s Çл»·ÖÏß = %s, Ëø×¡(RRt    GetLineIDR8R)R§R¨R©R9t GetMaxFbCountRRäRœt Def_Player_Dict_PlayChangeLineIDt Def_Player_Dict_FuncChangeLineIDt Def_Player_Dict_HighChangeLineIDR´RªRRR.tGetName(Rt changLineIDR»((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytPlayerChangeLine4s   &(&c
 
Cstjƒ}t||jƒ|jƒ|||ƒ}    tjd|||    f|jƒƒ|jƒ|krØ|    dks†|jƒ|    krØ|r¥tj||||ƒntj    |||ƒt
j |tjƒj ƒƒdSt |||||    ||ƒtjƒdS(Ns&·ÖÁ÷ mapID=%s,lineID=%s,shuntLineID=%siÿÿÿÿ(RRtGetResetWorldPosShuntLineIDRªRSRR°tChPlayertNotifyPlayerMovetResetPlayerPost
SkillShelltProcessMapBuffRR´R°tOnPlayerLeaveMapCloseFB(
RRžR R RCRŒRItexData1t    gameWorldt shuntLineID((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytPlayerResetWorldPos\s '#0
cCstjƒr|S|tjks.|tjkr2|Stj|}|r]|tjkr]d}n|jƒ}|jtjƒ}|jtj    ƒ}    |jtj
ƒ}
tj d|||||f|ƒ|dkr©| r|     r|
rt |tj    |dƒtj d||f|ƒn|r¥t j|ƒr¥t||||||jƒƒ} | dkr¥tjƒjƒ} tj d|| f|ƒt j||| || ƒ| Sn|S||krÉtj d|ƒ|Stjddƒ} || kr3| |}i}xK|jƒD](\}}||kr"qn|||<qWn|}t|ƒ}tj d    ||fƒ|r|t|ƒkrtj d
||ƒ|dS|    r×|    t|ƒkr×tj d |    |ƒt |tj    dƒ|    dS|
r|
t|ƒkrtj d |
|ƒt |tj
dƒ|
dS||kr¨tj d ||ƒt|||ƒ}|dkr½| r½|     r½|
r½t |tj
|dƒtj d||f|ƒq½nt||||ƒ}|dkr|d|kr|d}tj d|||fƒn|S(s§»ñÈ¡ÇÐͼÏß·ID
    ÇÐÏßÓÐÈýÖÖÇé¿ö
    1. Íæ¼ÒÊÖ¶¯Çл»Ïß·£¬ÓÅÏȼ¶×î¸ß
            ¼Ç¼key  Def_Player_Dict_PlayChangeLineID£¬ ÀëÏß³¬¹ý±£»¤Ê±¼äºóÖØÖã¬È·±£¶ÏÏßÖØÁ¬Õý³£¼´¿É
            
    2. ¹¦ÄÜÇл»µ½Ö¸¶¨Ïß·£¬Èç´òboss¡¢´«Ë͵½Ä¿±êÍæ¼ÒÏß·£¨±»»÷ɱÇйýÈ¥°ï棩
            ¼Ç¼key  Def_Player_Dict_FuncChangeLineID£¬ ÀëÏß³¬¹ý±£»¤Ê±¼äºóÖØÖã¬È·±£¶ÏÏßÖØÁ¬Õý³£¼´¿É
            
    3. ³£¹æÇÐͼ
            Ïß·ѡÔñÓÅÏȼ¶: ÊÖ¶¯ÇÐÏ߼Ǽ > ¹¦ÄÜÇÐÏ߼Ǽ > ¸ßµÍÇÐÏ߼Ǽ > ÏµÍ³·ÖÁ÷ÇÐÏß¹æÔò
            
            ÏµÍ³·ÖÁ÷ÇÐÏß¹æÔò: µ±Ç°µØÍ¼Ïß· ¶ÔÓ¦ Ä¿±êµØÍ¼Ïß·ÈËÊý Èç¹ûµ½´ï¶î¶¨Öµ²Å½øÐзÖÁ÷£¬·ÖÁ÷µ½ÈËÊý½ÏÉÙµÄÏß·
            
        ÌØÊâboss·ÖÁ÷: 
        @param bossID: ·ÖÁ÷bossID
    isD´¦Àí·ÖÁ÷,curMapID=%s,curLineID=%s,tagMapID=%s,tagLineID=%s,bossID=%siÿÿÿÿisI¹¦ÄÜÖ¸¶¨Çл»Ä¿±êÏß·£¬¼Ç¼µ±Ç°Ïß·ºóÐøÇÐÏß±¸ÓÃ! curLineID=%s,tagLineID=%ss&·ÖÁ÷boss, bossID=%s,bossShuntLineID=%ssͬµØÍ¼Çл»×ø±ê²»´¦Àí·ÖÁ÷£¡Rˆs,Ä¿±êµØÍ¼¿ÉÓ÷ÖÁ÷Ïß·ÈËÊýÐÅÏ¢: tagMapID=%s,%ss$ÓÐÖ÷¶¯Çл»¹ýÏß·!playChangeLineID=%ss,¹¦ÄÜÓÐÖ¸¶¨¹ýÏß·ÀúÊ·Ïß·,funcChangeLineID=%ss(ÓиßÏßÇеÍÏßÀúÊ·Ïß·,highChangeLineID=%ss!Ä¿±êµØÍ¼²»´æÔÚ¸ÃÏß·,curLineID=%ss?¸ßÏßÇеÍÏߣ¬¼Ç¼µ±Ç°Ïß·ºóÐøÇÐÏß±¸ÓÃ! curLineID=%s,tagLineID=%ssг£¹æ·ÖÁ÷ºóµÄlineIDΪ-1£¬µ«ÊÇÄ¿±êµØÍ¼µ±Ç°Ïß·²»¿ÉÓ㡲»¿É´«Ë͵½¸ÃÏß·£¡curLineID=%s + 1 > tagMapMaxLine(%s), Ç¿ÖÆ·ÖÁ÷µ½Ïß·(shuntLineID=%s)(RR­R:tg_commMapLinePlayerCountDictRœtDef_FBMapID_BossHomeR°RáRURVRWRRäRÔtIsMapNeedBossShuntt__GetBossShuntLineIDtkeysRRtAddBossShuntRelatedPlayerR«t
GetFuncCfgR}RUt__GetShuntLineID(RR*t    curLineIDttagMapIDt    tagLineIDRættagLinePlayerCountDictRƒtplayChangeLineIDtfuncChangeLineIDthighChangeLineIDtbossShuntLineIDRÆt mapLineDictt tagMapMaxLinettagLinePlayerCountShuntDicttktvRd((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR[zs|            !   
   ! 
    c Cs!|jƒ}|jƒtjddƒkr>tjd|ƒdStjddƒ}||krptjd|ƒdS||}|dkrÀ||}||krÀtjd|||f|ƒdSng|jƒD]\}}    |    |g^qÍ}
|
j    ƒ|
dd} tjd    ||
f|ƒ| S(
NtSetWorldPosShuntis³¬¹ýÖ¸¶¨µÈ¼¶²»·ÖÁ÷iÿÿÿÿisÄ¿±êµØÍ¼²»ÐèÒª·ÖÁ÷sBδ´ïµ½¶î¶¨ÈËÊýÖµ,²»Ó÷ÖÁ÷,curLineID=%s,Ä¿±êµØÍ¼µ±Ç°Ïß·ÈËÊý: %s/%sis@·ÖÁ÷µ½ÈËÊý½ÏÉÙµÄÏß·,tagMapID=%s,linePlayerList[count,lineID]=%s(
R°RÚR«RlRRR¬R7R}tsort( RRoRxRnRƒt mapShuntDicttlineMaxPlayerCountttagLinePlayerCountRCt playerCounttlinePlayerListRd((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRmás(  
 
     +
c  CsÜ|jƒ}|jƒ}d}d}    idggd6dggd6}
tjj|iƒ} t} tjddiƒ} tj    d||||| tj
f|ƒ|| krt d| |dƒ}|dkr||kr|j |ƒtj    d||f|ƒqnt |ƒ}x¬|D]¤}||f}tj
j|iƒ}|ro||krotj    d||f|ƒ|Sd}d}xu|jƒD]g\}}|d}||kr°qˆn|d7}|d}|rˆ||krˆ||krˆ|d7}qˆqˆW|r||    kr|}    |}n| j|dƒ}|s2dnd}|
|\}}| rd|dkrd|}n|j||gƒ||g|
|<|s–t} ntj    d    |||||    |f|ƒqW|dkrätj    d
||ƒ|S||kr |tjdd ƒkr tj    d ||ƒ|S| r,dnd}tj    d | |
fƒ|
|\}}|jƒ|d\}}tjddƒ}||kr»|dkr»tj    d||f|ƒ|Stj    d|||f|ƒ|S(s©»ñȡĿ±êµØÍ¼boss·ÖÁ÷Ïß·
                ¸ù¾ÝÈËÊý·ÖÁ÷Íæ¼Ò£¬ÓÅÏÈ·ÖÅäµ½»î×ŵÄÏß·
                ¶ÓÎéĬÈÏ·ÖÅäµ½¶ÓÎé¶ÓÔ±¶àµÄÄÇÌõÏß
                Ð­ÖúĬÈÏ·ÖÅ䵽Ŀ±êÍæ¼ÒÏß·£¬ÓÅÏȼ¶×î¸ß
                      
                Ç°¶Ë£º
        1.ÔÚÖÐÁ¢µØÍ¼µÄʱºò£¬ÏÔʾµ±Ç°Ïß·BOSSµÄ״̬
        2.ÔÚ³£¹æµØÍ¼µÄʱºò£¬ÏÔÊ¾Íæ¼Ò»÷ɱBOSSµÄCDʱ¼ä
        3.±¾µØÍ¼²»»»Ïߣ¬60Ãë¹æÔò±£³Ö²»±ä
        4.½øÈëBOSSÇøÓòÀˢÐÂBOSS״̬
        
                Íæ¼ÒÔÚ·ÇÖÐÁ¢µØÍ¼£º
                ±¾µØÍ¼²»»»Ïߣ¬60Ãë¹æÔò±£³Ö²»±ä£¨£©
                
                Íæ¼ÒÔÚÖÐÁ¢µØÍ¼
                Ã»ÓÐ60Ãë¹æÔò
                Ö±½Ó·¢´«ËͰü£¬Óɺó¶Ë¾ö¶¨£¨ÓжÓÔ±ÔÚ²»Í¬Ïß·´òͬһֻboss£¬Ôò´«ËÍ£¬·ñÔòmove£©
    iÿÿÿÿiiRˆisnÍæ¼Òboss·ÖÁ÷: playerTeamID=%s,tagMapID=%s,npcID=%s,lineIDList=%s,bossLineStateDict=%s,g_bossShuntPlayerInfo=%ss>    ·Ç1ÏߵĻÏß·²»²ÎÓë·ÖÁ÷: activityLineID=%s,lineIDList=%ss9    ·ÖÁ÷µ½Ð­ÖúÄ¿±êÍæ¼ÒÏß· assistTagPlayerID=%s,lineID=%ssg    lineID=%s,lineBossIsDead=%s,playerCount=%s,teamPlayerCount=%s,hurtTeamMemCount=%s,hurtTeamLineID=%ss,    ·ÖÁ÷µ½¶ÓÓÑÈËÊý¶àµÄÏß· hurtTeamLineID=%sis/    ÖÐÁ¢µØÍ¼ÔÚ±¾µØÍ¼ÖÐĬÈϵ±Ç°Ïß· curLineID=%ss>    boss״̬¶ÔÓ¦Ïß·ÈËÊý: haveAliveLine=%s, ×´Ì¬key0Ϊ»î×Å: %st    BossShunts4    ·ÖÁ÷µ½¿ÕÐÂÏß· shuntBossIsDead=%s,emptyLineID=%ssX    ·ÖÁ÷µ½ÈËÊý×îÉÙµÄÏß· shuntBossIsDead=%s,minPlayerCntLineID=%s,linePlayerCountList=%s(R°RóR:tg_bossShuntLineStatetgetRR«R¬RRtg_bossShuntPlayerInfoRHROtGetAssistTagPlayerIDR}R(RR|Rl( RR*RnRoRùt
lineIDListRƒt playerTeamIDthurtTeamLineIDthurtTeamMemCounttbossLinePlayerDicttbossLineStateDictt haveAliveLinetactivityMapLineDicttactivityLineIDtassistTagPlayerIDRCtkeytshuntPlayerDictR€tteamPlayerCountt shuntPlayerIDt    shuntInfoRæt shuntTeamIDt lineIsAlivetlineBossIsDeadt emptyLineIDtlinePlayerCountListtshuntBossIsDeadtminPlayerCntLineIDtbossShuntPlayerCountMax((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRiüs€              
 
 
                ! $
    cCs¼d}d}|jƒ}tjƒ}|j||ƒsVtjd||||fƒn\tj|||ƒ\}}|dks‰|dkr²tjd||||f|jƒƒn||fS(Nis=ÖØÉúµãÒì³££¬³¬¹ýµØÍ¼(%s)±ß½ç posX = %s, posY = %s, round = %ssKÖØÉúµã·¶Î§ÄÚÕÒ²»µ½¸ÃµØÍ¼(%s)µÄ·ÇÕϰ­ÖØÉúµã posX = %s, posY = %s, round = %s(    RªRR)t
IsValidPosR8R+tGetNearbyPosByDisR.R°(RR R troundt
rebornPosXt
rebornPosYR*R»((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__GetLegitRebornPoinths           c
CsÞtjƒ}|jƒ}|jƒ}|jƒ}t}tjƒ}|jƒ}g}    g}
|stjd|j    ƒƒt
}n}xUt d|ƒD]D} |j | ƒ} |
j | ƒtj|| ƒr|    j | ƒqqW|    sütjd|j    ƒƒt
}n|r¯tj|    ƒ} |j | ƒ} | jƒ}| jƒ}| jƒ}t||||ƒ\}}|dksƒ|dksƒ|dkr¯tjd|jƒ|j    ƒƒt
}q¯nt}|sb|jƒ}|jƒ}|jƒ}|jƒ|krt|||tjƒ\}}n|dks6|dks6|dkrbtjd|jƒ|j    ƒƒt
}qbn|s |jƒ}tjdƒ}tj||ƒ}|d}d}|dtj| |ƒ}|d    tj| |ƒ}tjd
|jƒ|||f|j    ƒƒn|jƒtj krw|j!|ƒ|j"|ƒ|j#|ƒtjd |j$ƒ|||f|j    ƒƒdS|j%|ƒ|j&|ƒ|j'|ƒtjd |j$ƒ|||f|j    ƒƒt(j)||
ƒdS( Ns´ËµØÍ¼Ã»ÓÐÖØÉúµãis´ËµØÍ¼Ã»ÓкÏÊÊÍæ¼ÒµÄÖØÉúµãs2µØÍ¼Éϲ¼µÄÖØÉúµã·¶Î§ÄÚÕÒ²»µ½¸ÃµØÍ¼(%s)µÄºÏ·¨ÖØÉúµãs,tagChinMap.txtÄÚÕÒ²»µ½¸ÃµØÍ¼(%s)µÄºÏ·¨ÖØÉúµãtPlayer_Reborn_PlaceiiisqtagBornRefresh.txtºÍtagChinMap.txtÄÚ¶¼ÕÒ²»µ½¸ÃµØÍ¼(%s)
µÄºÏ·¨ÖØÉúµã£¬ÉèÖÃÍæ¼ÒÖØÉúµãΪ´´½¨½ÇɫʱµÄ³õʼµã%s-(%s,%s)s,Íæ¼Ò%s,ÉèÖÃĬÈÏÖØÉúµãÍê±Ï mapID = %s-(%s,%s)s0Íæ¼Ò%s,ÉèÖø±±¾Ä¬ÈÏÖØÉúµãÍê±Ï mapID = %s-(%s,%s)(*RR)Rªt GetRebornPosXt GetRebornPosYRt GetGameDatatGetBornRefreshCountR.R°RR%tGetBornRefreshByIndexR(t IsSameCountryRBRCRRtGetRoundR£R­R®R¯RœtDef_RebornPos_Area_RangeR¨R÷RøtrandintR§R¨R©tSetRebornMapIDt SetRebornPosXt SetRebornPosYt GetPlayerNametSetFBRebornMapIDtSetFBRebornPosXtSetFBRebornPosYR<t OnRebornPlace(RRÆR»t rebornMapIDR¡R¢thasBornRefreshPointtgameDatatbornRefreshCounttbornListt
fbBornListRHtbornRefreshPointt    bornIndextbRP_PosXtbRP_PosYt bRP_RoundPosthasBornPointInTxtt curPlayerJobtposListtpost    bornRange((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytRefreshRebornPoint‡s„                  $        $      
&   ,   ,cCs,|dkr|dkrdS|ddSdS(Niiii
((tcurLV((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetRank    sc    Csîtƒ}|dkr&tjdƒ|Sg}x»td|jƒƒD]¤}|j|ƒ}|dksB|jƒdkr{qBntj    |ƒdkr–qBntj
|||j ƒ|j ƒƒ|krÆqBn|j |ƒ|j |jƒƒqBW|S(Ns»ñÈ¡¶ÓÎéÇøÓò³ÉÔ±£¬¶ÓÎé²»´æÔÚ£¡i(tlistR7RR8R%tGetMemberCountt    GetMemberR°R¤R¥RRRR((    tcurTeamtcenterXtcenterYtareatisLogt
playerlistR|RHt curTeamPlayer((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetAreaTeamMember!    s"        cCsztƒ}|dkr|SxZt|jƒƒD]F}|j|ƒ}|dks,|jƒdkreq,n|j|ƒq,W|S(s »ñȡͬµØÍ¼ÖеĶÓÔ± iN(RÉR7R>RÊRËR°R((RÌRÑRHRÒ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetMapTeamMemberQ    s     cCs|tjkr|jƒS|tjkr2|jƒS|tjkrKt|ƒS|tjkrd|jƒS|t    j
kr}t |ƒS|t    j kr™t ||ƒSdS(Ni(R¨tTYPE_Price_Gold_MoneytGetGoldtTYPE_Price_Gold_Papert GetGoldPapertTYPE_Price_Silver_Moneyt    GetSilvertTYPE_Price_Silver_PapertGetSilverPaperRLtTYPE_Price_PayCoint
GetPayCointTYPE_Price_CurrencyDicttGetPlayerCurrency(Rt
TYPE_Price((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetMoneye    s
 
 
 
 
 cCs4|jtj|ƒ}|dkr'| St||ƒS(Ni(RáRœtDef_PDict_MoneyMinusRâ(Rt    moneyTypet
moneyMinus((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetMoneyReal    s cCs<|tjkr{|jtj|ƒ}|dkrY||krPt|||ƒnd}q{|dkr{t||dƒq{n|tjkrš|j|ƒnž|tj    kr¹|j
|ƒn|tj krØt ||ƒn`|tj kr÷|j|ƒnA|tjkrt||ƒn"|tjkr8t|||ƒndS(Ni(RLtMoneyMinusRefreshDictRáRœRãt SetMoneyMinusR¨RÕtSetGoldR×t SetGoldPaperRÙt    SetSilverRÛtSetSilverPaperRÝt
SetPayCoinRßtSetPlayerCurrency(RRätvalueRå((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetMoneyˆ    s*       cCsft|ƒ}t|tj||ƒ|tjkr6dStj|}|dkrbt|||ƒndS(N(RRäRœRãRLRçR7tSendPropertyRefresh(RRäRït refreshType((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRè®    s   cCsy|tjkr|jƒS|tjkr2|jƒS|tjkrK|jƒS|tjkrd|jƒSt    j
d|ƒdS(Ns#GetWarehouseMoney, moneyType:%d Erri( R¨RÕtGetWarehouseGoldR×tGetWarehouseGoldPaperRÙtGetWarehouseSilverRÛtGetWarehouseSilverPaperRR8(RRä((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetWarehouseMoney½    s
 
 
 
cCs|jtj|ƒS(N(RáRœtDef_PDict_Currency(Rt currencyType((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRàР   scCs+t|tj||ƒt|||ƒdS(N(RäRœRøtNotifyPlayerCurrency(RRùRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRîÖ    scCsb|tjkrdStj|}|dkr0dS|dkrNt||ƒ}nt|||ƒdS(Ni(RLRßR7RàRñ(RRùRïRò((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRúÜ    s   cCsRg}xjtjD]_}tj|}|dkr5qnt||ƒ}tjƒ}||_||_|j|ƒqWx|tj    j
ƒD]k\}}|dkr¡qƒn|j t j |ƒ}|sÃqƒntjƒ}||_||_|j|ƒqƒWtjƒ}|jƒ|jƒ|_|jƒ|_t|ƒ|_||_tj||ƒdS(N(RLRßR7RàR\ttagRefreshTypet RefreshTypetValueR(RçR}RáRœRãttagObjInfoListRefreshR…RtObjIDR×tObjTypeRUtCountR_R`(Rt
notifyListRùRòRït notifyStructRäR%((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytNotifyPlayerAllCurrencyé    s8                      
    cCsØ|r|}n    tj}g}xh|D]`}|jtj|ƒ}| rZ|dkrZq%ntjƒ}||_||_    |j
|ƒq%W|s“dStj ƒ}|j ƒ||_ t|j ƒ|_tj||ƒdS(N(RLtUseTotalPriceTypeListRáRœtDef_PDict_UseMoneyTotalR7R\ttagMCUseMoneyTotalt    MoneyTypetUseTotalR(ttagMCUseMoneyTotalInfoR…tInfoListRURR_R`(Rt moneyTypeListtnotifyMoneyTypeListtinfoListRätuseTotaltinfot
clientPack((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytNotifyUseMoneyTotal
s(                   
    c
CsÒ|dkrtSd}d}|tjkr@|jƒ}d}nÉ|tjkrd|jƒ}d}n¥|tjkrˆt|ƒ}d}n|tjkr¬|j    ƒ}d}n]|t
j krÊt |ƒ}n?|t
j krët||ƒ}ntjd||jƒƒtS||krˆ||}t||ƒ}|rˆ|\}}    t|||    tƒr…tjd|||||    f|jƒƒtSqˆn||krÎ|r°|r°t||ƒntjd    |||fƒtStS(
NiRytGoldErrt GoldPaperErrt    SilverErrtSilverPaperErrs¸¶·Ñ½ðÇ®Òì³£ TYPE_Price = %ssiHaveMoney¿ÉʹÓõȼۻõ±Ò²¹×ã¿Û³ý: TYPE_Price=%s, Price=%s, lackPrice=%s, tagMoneyType=%s, tagMoneyValue=%ss3»õ±Ò²»×ã: TYPE_Price=%s, Price=%s, curMoneyCount=%s(RR¨RÕRÖR×RØRÙRÚRÛRÜRLRÝtGetPayCoinTotalRßRàRR.R°tGetEqualMoneyInfot    HaveMoneyRRR9(
RRátPricet
needNotifytneedMoneyCountt
notifyCodet    lackPricet tagMoneyInfot tagMoneyTypet tagMoneyValue((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR/
sJ                      
      
  cCs½tjddiƒ}t|ƒ|kr+dS|t|ƒ}tjddiƒ}t|ƒ|krfdS|t|ƒ}||dkrŠdS|d}ttj|t|ƒƒƒ}||fS(NtEqualValueMoneyiii(R«R¬RStintRRR(Rät    needValuetequalMoneyInfoR texchangeMoneyInfot exchangeInfotmultipleR!((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRg
s
cCs*|dkrgS|tjkr+tj}n|tjtjtjtjgkrut||||ƒrq||ggSgS|tjkr|jƒ}|j    ƒ}|||krÆ|rÂt
|dƒngS||krâtj|ggS||}tj|gtj|ggSt j d||j ƒƒgSgS(NiRs¸¶·Ñ½ðÇ®Òì³£ TYPE_Price = %s(RLtTYPE_Price_Gold_Paper_MoneyR¨RÕR×RÙRÛRRØRÖR9RR.R°(RRáRRR€RtneedGold((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt HaveMoneyEx
s.      
c    
Cs‚|dkrtS|dkr:tjd||jƒƒtS|}    |tjkr,t||ƒ}
|
|kr‚| r‚t|dƒtS|
|} t    ||| ƒt
|t j ƒ} | } |t jkrÙtd| |ƒ} n| | krî| } ntd| ƒ} | | krt|t j | ƒn| |d<nÜ|tjkr‹t||ƒ}||krn| rnt|dƒtS||}t    |||ƒn}|tjkr×t|ƒ}||krÃt|dƒtSt|||ƒn1|tjkr#|jƒ}||krt|dƒtS|j||ƒnå|t jkrt|ƒ}t|t jƒ}||}||krjtS||kr||n|}|}|rÝtjd|||fƒt|t j||ƒ||8}tjd    |ƒn|dkrt|||ƒqn|t jkrêt||ƒ}||krÓ|}    ||}t||ƒ}|r²|\}}t |||||||||ƒ    sƒtStjd
||||||f|jƒƒqÓtjd |||fƒtSnt||||    ƒntjd ||jƒƒtSt!|||    ||||ƒ|r~|t jkret|d |t"t#|    ddƒƒgƒq~t|d ||    gƒntS(Nis###---¿ÛÇ®Òì³£ = %sRt BourseMoneyRRRs9Ïȿ۴ú±ÒʱЧ: curPayCoinDay=%s,price=%s,costPayCoinDay=%ssÔÙ¿Û´ú±Ò: costPayCoin=%ssiµÈ¼Û»õ±Ò²¹×ã¿Û³ý: type_Price%s, price=%s, curCurrency=%s, lackPrice=%s, tagMoneyType=%s, tagMoneyValue=%ss+»õ±Ò²»×ã! type_Price=%s,curCurrency=%s < %ss¸¶·Ñ½ðÇ®Òì³£ type_Price = %st    LostMoneygY@i($RRR.R°RR¨RÕRæR9RðRâRLtTYPE_Price_BourseMoneyRœtUnUseInner_CostTypeRHRîR×RÙRÚRëRÛRÜRìRÝRÞRàtTYPE_Price_PayCoinDayRRíRßRtPayMoneyt__PayMoneyAfterRSR (Rt
type_PricetpricetcostTypetinfoDicttquantityt costVIPGoldR%tisMinust    lostMoneyt curPlayerGoldt updPlayerGoldtcurBourseMoneytupdBourseMoneytcurPlayerGoldPapert updGoldPapertcurPlayerSilvertcurPlayerSilverPapertcurPlayerPayCoint curPayCoinDayt payCoinTotaltcostPayCoinDayt costPayCoint curCurrencyRRR R!((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR1¯
s    
        
 
 
 
 $    &,c    Cs|tjkre|jtj|ƒ}t||tjƒ}t|tj||ƒt||gƒn|t    j
krt ||||||ƒnc|t    j krµt ||||ƒn>|t    jkrÔt||ƒn|t    jkrót||ƒntj|||ƒtj|||ƒtj|tj||ƒ|tjkrƒ|jtjƒ}t|tj||ƒtj|tj|ƒn|dkr•|nttj |d|ƒƒ}    |}
|
} |tj!krÝtj!|} n|t    j
t    j tj"gkr|tj#krdS|tj"kr´|j$ƒ} t%||ƒ} t&|tj'ƒ}||d<|j(ddƒ}t)j*d| || ||f| ƒt)j+| tj,d|| |g|dƒn|tj-kràt)j.d| ||fƒn;t/j0|| |||ƒt1j2|||
||    tj3|ƒdS(    Nigð?tPlayerMoneyCount2t    orderInfoRysJ¼Ç¼ÏûºÄ´ú±Ò: eventName=%s,price=%s,nowMoney=%s,payCoinDay=%s,orderInfo=%sis;BT°æ±¾Ñ°±¦ÏûºÄ»õ±ÒÔÝʱ²»¼Ç¼Á÷Ïò: %s,type_Price=%s,price=%s(4RLRRáRœRtmintDef_UpperLimit_DWordRäRR¨RÕt__PayMoneyAfterByGoldMoneyR×t__PayMoneyAfterByGoldPaperRÙt__PayMoneyAfterBySilverMoneyRÛt__PayMoneyAfterBySilverPapertPlayerActivitytOnPayMoneyActivitytPlayerActTurntabletOnPlayerUseGoldtPlayerActLunhuidiantAddLunhuidianValuetAwardType_PayMoneytTYPE_Price_XiantaotDef_PDict_UnXiantaoCnttPlayerPrestigeSystAddRealmTaskValuetRealmTaskType_UseXiantaoR#RRtDef_CostType_DictRÝtDef_Cost_UnknownR°RæRâR0R„RR.t AddPlayerRectDef_PlayerRecType_PayCointDef_Cost_TreasureRtDataRecordPackt DR_UseMoneyt EventReporttWriteEvent_virtual_resourcetDef_UserAction_Money_Use(RR3R4R5R6R7R8Rt unXiantaoCntt    unitPricet reason_namet    eventNameRƒtnowMoneyt
payCoinDayRJ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR2) sT/ 
#+cCsr|tjkrTtj||||ƒtj|tj|ƒtj|tj    |ƒnt
j d||j ƒƒdS(Ns$²»¼ÆÈëÏû·Ñ»î¶¯µÄÏû·ÑÀàÐÍ!costType=%s( RœtCostRebate_DisableTypetPlayerCostRebatetAddCostRebateGoldtPlayerFeastTraveltAddFeastTravelTaskValuetDef_FeastTravel_UseGoldtPlayerActGarbageSortingtAddActGarbageTaskProgresstDef_GarbageTask_UseGoldRRR°(RR3R4R5R6R8((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRM s cCsEtjƒ}|jƒ||_||_||_tj||ƒdS(N(R\ttagMCGoldCostReportR…tCostTypeRtItemIDR_R`(RR5R4titemIDR%((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__Sync_GoldCostReport¹ s 
            cCsdS(N((RR4R5R6((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRNÇ s
cCsdS(N((RR4((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyROØ scCsdS(N((RR4((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRPà sc
Cs£|dkrtS|dkr7tjd||fƒdStjƒr›t|ƒ}i|jƒd6|d6|d6|d6|d6}tjtj||gƒtS|t    j
kr=t ||ƒ|}    |    t j krãt|d|gƒdSt|||    ƒ|r$|    dkr$t|tjt||    ƒƒnt|tjƒ|d    <nÈ|t    jkr˜t ||ƒ|}
|
t j kr…t|d|gƒdSt|||
ƒnm|t    jkrÁt|t|ƒ|ƒnD|t    jkr|jƒ|t jkrt|d|gƒdS|j|jƒ|ƒnë|tjkrCt|t|ƒ|ƒnÂ|tjkrÅt ||ƒ} | t j!krtdStt j!| |ƒ} t"||| ƒ|tj#krt$j%|tj&|ƒqn@tj'd
|||f|jƒƒt(j)|||||ƒdS|tj*kr tj}n|r‰|tjkr‰|tjkrpt|d |t+t,|d d ƒƒgƒq‰t|d ||gƒnt-|||||ƒtS(Nis1Íæ¼Ò»ñµÃ½ðÇ®Òì³£ £¬ value = %s , priceType = %s ,RÅRRýtGiveTypet AddDataDictt MoneyIsFullR,s/½ðÇ®ÀàÐÍ´íÎó, priceType=%s,value=%s,giveType=%sRâgY@i(.RRR.R­tGetPlayerServerGroupIDR°tSendMsgToClientServerRLtCrossServerMsg_GiveMoneyR¨RÕRæRœtDef_PlayerTotalMoney_GoldR9Rðt    GiveMoneyR.RKRâR×RÙRëRÚRÛRÜtDef_PlayerTotalMoney_SilverRìRÝRíRÞRßRàRLRîtTYPE_Price_RealmPointRCtDoAddSuccessProgresstSuccType_GetRealmPointR8RbtDR_GiveMoneyErrorR0RSR t__GiveMoneyAfter( Rt    priceTypeRïtgiveTypet addDataDictt    isSysHinttisGiveBourseMoneyt serverGroupIDtmsgInfoR<tupdPlayerGoldPaperRHtupdValue((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR‚ë sj    /# ,c
    Cs“tj|tj||gƒ|tjtjtjgkrM|tj    krMdS|}|tj
kr|tj
|}||d<n|tjkr"|j ƒ}t ||ƒ}t |tjƒ}||d<|jddƒ}    tjd|||||    f|ƒtj|tjd|||g|    dƒn|jdƒdkrTtjd    |||fƒn;tj|||||ƒtj|||d|tj|ƒdS(
NRjRIRJRysJ¼Ç¼»ñµÃ´ú±Ò: eventName=%s,value=%s,nowMoney=%s,payCoinDay=%s,orderInfo=%sit GiveItemEventtTreasures8BT°æ±¾Ñ°±¦¸ø»õ±ÒÔÝʱ²»¼Ç¼Á÷Ïò: %s,priceType=%s,price=%s(t
PlayerTaskt AddTaskValueRœtTaskType_GetMoneyR¨RÕR×RLRÝtDef_GiveMoney_UnknowntDef_GetType_DictR°RæRâR0R„RR.R_R`RRbt DR_GiveMoneyRdRetDef_UserAction_Money_Get(
RR‰RïRŠR‹RjRƒRkRlRJ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRˆ= s,   
#+ 1cCsT|dkrtS|tjkrR|jƒ|tjkrPt|d|gƒtSnþ|tjkr”|j    ƒ|tjkrPt|d|gƒtSn¼|tj
kr¦nª|tj krè|j ƒ|tj krPt|d|gƒtSnh|tjkrúnV|tjkr2t||ƒ}||tjkrPtSntjd||jƒƒtStS(NiR}s½ðÇ®ÀàÐÍ = %sÌî´íÀ²(RR¨RÕRÖRœRR9RR×RØRÙRÛRÜRƒRLRÝRßRàRLRR.R°(RR‰RïRH((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt CanGiveMoney” s2 cCsdS(N((RRÆ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytPlayerAutoRestoreHPÁ scCsdS(N((RRÆ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytPlayerAutoRestoreMPÊ scCs&t|jƒƒ}|sdS|jƒS(Ni(tGetPlayerLVIpyDataRÚtGetReExp(Rt    lvIpyData((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetPlayerReExpÒ scCsdS(Ni((R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetPlayerReMoneyÛ scCs]|jƒ}tƒ}||kr%dSd}t|||ƒ}||krYt|dƒndS(Nit PK_lhs_202580(t
GetPKValuet GetMaxPKValuet ChangePKValueR9(RRÆtcurPlayerPKValuet
maxPKValuetaddPointt changePKValue((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytAddPlayerPKValueä s       c
Cs-|jƒ}tƒ}tdt|||ƒƒ}||krA|Stjd|||f|jƒƒ|dkr}t|ƒn¬tj    }|j
|ƒt j ||ƒ}|d}||}    |s
t j |||ƒ|dkr
t j ||ƒ}|d}|d}    q
n|    r)|r)t|||    ƒn|S(s¸ü¸ÄPKÖµis7¸üÐÂPKÖµ: curPlayerPKValue=%s,newPKValue=%s,addValue=%si(R¤R¥RHRKRRR°t ClearPKValueRœtDef_SkillID_Redt
SetPKValueR5t FindBuffByIDtAddBuffBySkillType_NoRefurbisht__AddPKValueRedBuffTime(
RtaddValueRÆR§R¨t
newPKValuet    addBuffIDt findBuffInfotredBufft addTimeValue((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR¦õ s,      #       
 
 
 cCsª|jƒ}|sdStj|ƒ}|jƒ|}|jƒ}ttd||ƒtjƒ}|j    |ƒt
j |||ƒt j d||||f|jƒƒdS(sSÔö¼ÓPKÖµ¶ÔÓ¦buffʱ³¤
    @param addTimeValue: Ôö¼ÓµÄbuffµ¥Î»Ê±³¤´ÎÊý, Ö§³ÖÕý¸º
    NisL    Ôö¼ÓºìÃûbuffʱ³¤: addTimeValue=%s,remainTime=%s,addTime=%s,resultTime=%s(tGetSkillR5t GetBuffTypet GetLastTimet GetRemainTimeRKRHRœtDef_Max_Buff_RemainTimet SetRemainTimet    BuffSkilltPYSync_RefreshBuffRRR°(RR¶R·t    buffSkilltbuffTypetaddTimet
remainTimet
resultTime((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR± s       cCsÓ|jƒ}|sdStj|tjƒd}|sF|jdƒdS|jƒ}|s\dS|jƒ}|jƒ}t    t
j |t |ƒƒƒ}||krÏ|j|ƒt jd||f|jƒƒndS(Nis&¸üÐÂÍæ¼ÒPKÖµ: remainTime=%s,pkValue=%s(R¤R5R¯RœR­R®R¸R»RºR#RRRRRR°(Rt
curPKValueR¶RÀRÃtperPKValueTimetpkValue((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytRefreshPKValueByRedBuff" s"       #cCs9|jdƒtjƒjƒ}tj|tj|ƒdS(sÇå³ýPKÖµiN(R®RRRR¾tDelBuffBySkillIDRœR­(RRÆ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR¬6 s cCstjddƒS(s »ñÈ¡×î´óPKÖµtPKConfigi(R«Rl(((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR¥= scCs†|jƒ}|jƒ}tjddiƒ}tj||dƒ}|dkrhtd||fƒ‚dSt|t    |ƒt
|ƒƒS(Nt LVUPAddPointiis0Íæ¼Ò»ñµÃÉý¼¶ÊôÐÔµãÒì³£, curLV = %s PlayerID = %s( RRÚR«R¬RtGetDictValueByRangeKeyR7t    ExceptionR#tGetFabaoAddPointtGetTitleAddExtraPoint(RR2RÇt addPointDictR©((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetLvUp_AddPointF s   c    Csótjtjƒ}|jƒ}||kr.dStjddƒ}t|ƒ}t|ƒ}tj    ddiƒ}x_|j
ƒD]Q\}}||dkrœqzn||||t ||dƒ|dd7}qzW||j ƒtjddƒ7}|S(NiRËiii( t GameFuncCommtGetFuncLimitLVRLtGameFuncID_AddPointRÚR«RlRÎRÏR¬R}RKtGetOfficialRank(    RtopenLVRÇt setFreePointt fabaoAddPointt titleAddPointRÐtrangLVstpoint((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetAllPointByLVR s    3 cCs>tjdƒ}|r:|jƒj|ƒr:tjddƒSdS(Nt TitleAddPointii(R«RltGetDienstgradManagert GetDienstgrad(RttitleID((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRÏf scCs>tjddƒ}tj||ddƒs.dStjddƒS(Nt FabaoAddPointitlvii(R«RltPlayerMagicWeapontGetIsActiveMagicWeapon(RtmwID((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRÎm scCs{|jƒ}t|ƒ}|jƒ}i|d6}|j|ƒtj|d||ƒtjd|||f|jƒƒdS(s ¼Óµã¹¦ÄÜ¿ªÆôtbeforeFreePointt AddPointOpensB    ¼Óµã¹¦ÄÜ¿ªÆô´¦Àí  beforeFreePoint=%s,curLV=%s, setFreePoint=%sN(    t GetFreePointRÜRÚt SetFreePointRbt DR_FreepointRRR(RRæR×RÇR‹((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytDoAddPointOpent s     #tModuleFightPowercBsheZdZdZejgZd„Zd„Zd„Z    d„Z
d„Z d„Z d„Z d    „ZRS(
s%ss    Noline_%scCs||_|jƒdS(N(tmfpTypet    ClearAttr(tselfRí((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__init__ s    
cCsix7tdtjƒD]#}d}t||j||ƒqWx(|jD]}t||j|dƒqDWdS(Nii(R>RœtDef_Calc_AllAttrType_MAXtsetattrt_ModuleFightPower__AttrNamet!_ModuleFightPower__NolineAttrListt!_ModuleFightPower__AttrNameNoline(Rït    attrIndexRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRî˜ s cCs‘|tj}x*|jƒD]\}}|j||ƒqW|tj}xC|jƒD]5\}}||jkrTt||j||ƒqTqTWdS(N(RœtCalcAttr_BattleR}tAddCalcMFPAttrtCalcAttr_BattleNolineRôRòRõ(Rït allAttrListtbattleAttrDictRöRïtbattleNolineAttrDict((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetCalcMFPBattleAttr£ s  cCsCd|kotjknr?|j|}t|||ƒndS(Ni(RœRñRóRò(RïRöRïtattrName((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetCalcMFPAttr± s cCsPd|kotjknrL|j|}t||t||ƒ|ƒndS(Ni(RœRñRóRòtgetattr(RïRöRïRþ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRø¼ s cNBsTe||jejƒ}e||jejƒ}e||jejƒ}e||jejƒ}e||jejƒ|jƒ}e||jej    ƒ|j
ƒ}e||jej ƒ}    e||jej ƒ|j ƒ}
e||jejƒ|jƒ} e||jejƒ} e||jejƒ} e||jejƒ|jƒ}e||jejƒ|jƒ}e||jejƒ}e||jejƒ}e||jejƒ|jƒ}e||jejƒ|jƒ}e||jejƒ}e||jejƒ}e||jejƒ}e||jejƒ}e||jej ƒ|j!ƒ}e||jej"ƒ}d}e||jej#ƒ}e||jej$ƒ}e||jej%ƒ}e||jej&ƒ}e||jej'ƒ}e||jej(ƒ|j)ƒ} e||jej*ƒ|j+ƒ}!e||jej,ƒ|j-ƒ}"d}#e||jej.ƒ}$e||jej/ƒ|j0ƒ}%e||jej1ƒ|j2ƒ}&e||jej3ƒ}'e||jej4ƒ}(e||jej5ƒ|j6ƒ})e||jej7ƒ|j8ƒ}*e||jej9ƒ|j:ƒ}+e||jej;ƒ|j<ƒ},e||jej=ƒ|j>ƒ}-e||jej?ƒ|j@ƒ}.e||jejAƒ|jBƒ}/e||jejCƒ|jDƒ}0e||jejEƒ|jFƒ}1e||jejGƒ|jHƒ}2e||jejIƒ|jJƒ}3e||jejKƒ|jLƒ}4e||jejMƒ|jNƒ}5e||jejOƒ|jPƒ}6e||jejQƒ|jRƒ}7e||jejSƒ|jTƒ}8e||jejUƒ}9e||jejVƒ|jWƒ}:e||jejXƒ};e||jejYƒ|jZƒ}<e||jej[ƒ}=e||jej\ƒ}>e||jej]ƒ}?e||jej^ƒ}@e||jej_ƒ}Ae||jej`ƒ}Be||jejaƒ|jbƒ}C|jcƒ}Dd}E|jdƒ}F|jeƒ}G|jfƒ}H|jg|Hƒ}Ix/|IjhƒD]!\}J}Kd|J|J|KfdUqÏWeijjdƒ}Lekeljmd|Lƒƒ}M|MenjokrPepjqd|jr|M|jsƒfƒn|MS(Nis%s = max(0, %s - %s)tFightpowerFormulas2Ä£¿éÕ½Á¦³¬¹ýÊýÖµÉÏÏÞ, MfpType=%s,fightPower=%s, %s(tRRóRœtTYPE_Calc_AttrMaxHPtTYPE_Calc_AttrATKMintTYPE_Calc_AttrATKMaxtTYPE_Calc_AttrDEFtTYPE_Calc_AttrHitt    GetCftHittTYPE_Calc_AttrMisst
GetCftMisstTYPE_Calc_AttrAtkSpeedtTYPE_Calc_SuperHitRatetGetCftSuperHitRatetTYPE_Calc_SuperHitRateReducetGetCftSuperHitRateReducetTYPE_Calc_SuperHittTYPE_Calc_SuperHitReducetTYPE_Calc_LuckyHitRatetGetCftLuckyHitRatetTYPE_Calc_LuckyHitRateReducetGetCftLuckyHitRateReducetTYPE_Calc_LuckyHittTYPE_Calc_LuckyHitReducetTYPE_Calc_SkillAtkRatetGetCftSkillAtkRatetTYPE_Calc_SkillAtkRateReducetGetCftSkillAtkRateReducetTYPE_Calc_DamagePVPtTYPE_Calc_DamagePVPReducetTYPE_Calc_DamagePVEtTYPE_Calc_HPRestorePertTYPE_Calc_DamBackPertGetCftDamBackPertTYPE_Calc_AttrSpeedtTYPE_Calc_PetMinAtktTYPE_Calc_PetMaxAtktTYPE_Calc_PetDamPertTYPE_Calc_AttrIceAtktTYPE_Calc_AttrIceDeftTYPE_Calc_IgnoreDefRatetGetCftIgnoreDefRatetTYPE_Calc_IgnoreDefRateReducetGetCftIgnoreDefRateReducetTYPE_Calc_DamChanceDeftGetCftDamChanceDeftTYPE_Calc_AtkBackHPPertTYPE_Calc_FaintRatetGetCftFaintRatetTYPE_Calc_FaintDefRatetGetCftFaintDefRatetTYPE_Calc_FinalHurttTYPE_Calc_FinalHurtReducetTYPE_Calc_BossFinalHurtPertGetCftBossFinalHurtPertTYPE_Calc_FinalHurtPertGetCftFinalHurtPertTYPE_Calc_FinalHurtReducePertGetCftFinalHurtReducePertTYPE_Calc_DamagePerPVPtGetCftDamagePerPVPtTYPE_Calc_DamagePerPVPReducetGetCftDamagePerPVPReducetTYPE_Calc_JobAHurtAddPertGetCftJobAHurtAddPertTYPE_Calc_JobBHurtAddPertGetCftJobBHurtAddPertTYPE_Calc_JobCHurtAddPertGetCftJobCHurtAddPertTYPE_Calc_JobAAtkReducePertGetCftJobAAtkReducePertTYPE_Calc_JobBAtkReducePertGetCftJobBAtkReducePertTYPE_Calc_JobCAtkReducePertGetCftJobCAtkReducePertTYPE_Calc_AffairSpeedPertGetCftAffairSpeedPertTYPE_Calc_FamilyBossHurtPertGetCftFamilyBossHurtPertTYPE_Calc_FamilyWarHPPertGetCftFamilyWarHPPertTYPE_Calc_FamilyWarAtkPertGetCftFamilyWarAtkPertTYPE_Calc_FamilySitExpPertGetCftFamilySitExpPertTYPE_Calc_NormalHurttTYPE_Calc_NormalHurtPertGetCftNormalHurtPertTYPE_Calc_FabaoHurttTYPE_Calc_FabaoHurtPertGetCftFabaoHurtPertTYPE_Calc_LucktTYPE_Calc_ComboRatetTYPE_Calc_ComboDamPertTYPE_Calc_ProDefHPPertTYPE_Calc_OnlyFinalHurttTYPE_Calc_PVPAtkBackHPtTYPE_Calc_NPCHurtAddPertGetCftNPCHurtAddPertGetCftAtkSpeedtGetSuperHitRatetGetLuckyHitRateR¨t-_ModuleFightPower__GetAttrFightPowerParamDiffR}R«RltevaltFormulaControltGetCompileFormulaRLRLRR8Rít GetMFPAttrStr(NRïtfpParamRtMaxHPtMinAtktMaxAtktDeftHittMisstAtkSpeedt SuperHitRatetSuperHitRateReducetSuperHittSuperHitReducet LuckyHitRatetLuckyHitRateReducetLuckyHittLuckyHitReducet SkillAtkRatetSkillAtkRateReducet    DamagePVPtDamagePVPReducet    DamagePVEt    HPRestoret
DamBackPert
SpeedValuetSpeedPert    PetMinAtkt    PetMaxAtkt    PetDamPertIceAtktIceDeft IgnoreDefRatetIgnoreDefRateReducet DamChanceDeft BleedDamaget    AtkBackHPt    FaintRatet FaintDefRatet    FinalHurttFinalHurtReducetBossFinalHurtPert FinalHurtPertFinalHurtReducePert DamagePerPVPtDamagePerPVPReducetJobAHurtAddPertJobBHurtAddPertJobCHurtAddPertJobAAtkReducePertJobBAtkReducePertJobCAtkReducePertAffairSpeedPertFamilyBossHurtPertFamilyWarHPPertFamilyWarAtkPertFamilySitExpPert
NormalHurtt NormalHurtPert    FabaoHurtt FabaoHurtPertLuckt    ComboRatet ComboDamPert    ProDefPert OnlyFinalHurtt PVPAtkBackHPt NPCHurtAddPertAtkSpeedParametertLuckyHitParametertSuperHitRateTotaltLuckyHitRateTotalR¸t diffAttrDictt    paramNamet    diffValueRttotalFightPower((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetModuleFightPower sœ#################################    &cCs›|jtjkriStjddƒ}tjddƒ}||krJiSi}||}x:|jƒD],\}}||kr…qgn||||<qgW|S(NtCreatRoleBaseAttrii(RíRLtDef_MFPType_RoleR«R¬R}(RïR¸troleBaseAttrDicttnotFightPowerEffIDNameDictR°tjobBaseAttrDicttattrIDR±((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__GetAttrFightPowerParamDiff!s 
 cCs¿d}x\tdtjƒD]H}|j|}t||ƒ}|dkrMqn|d||f7}qWxS|jD]H}|j|}t||ƒ}|dkr£qon|d||f7}qoW|S(NRyiis%s=%s,(R>RœRñRóRRôRõ(RïtattrStrRöRþt    attrValue((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRi5s    (t__name__t
__module__RóRõRœR!RôRðRîRýRÿRøR´ReRi(((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRì† s                           _    RécBs£eZeZiZd„Zd„Zd„Zd„Ze    j
e ddd„Z ddd„Z d„Zed„Zd    „Zd
„Zd „Zeeed „Zd „Zed„Zd„Zeed„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z e d„Z!e 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/RS((cCs ||_dS(N(t_PlayerControl__Player(RïtiPlayer((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRðWscCs8|jj|ƒ}|s4t|ƒ}||j|<n|S(N(t_PlayerControl__fpTypeObjDictR„Rì(RïtfpTypetfpObj((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetModuleFightPowerObj^s
 cCs(x!|jjƒD]}|jƒqWdS(N(RÂRNRî(Rïtobj((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytResetFightPowerObjhscCsw|j}tj|tjƒs"dS|jƒ}t|ƒ}|dkrs||}tj|d|ƒ|j    |ƒndS(NitLvUP(
RÀRÒt GetFuncCanUseRLRÔRèRÑRbRêRé(RïRt curFreePointR©R×((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__DoLVUPAddPointqs       
ic
Cs°|j}|j||||||ƒ\}}|r{tjƒ}    |tj|    _|tj|    _||    _t    j
||    ƒnt j ƒj ƒtjkr¬tj|||ƒn|S(N(RÀt_PlayerControl__AddExpR\t tagMCAddExpRœtDef_PerPointValuetExpPointtExptSourceR_R`RR)R§R¨R©R<tOnGetExp(
RïtaddExpt expViewTypeRŒt
addSkillIDt    expRateExRt finalAddExpt expNotifyTypeR%((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytAddExp‰s    $     c    Csð|dkr||fS|jƒtj|jƒ}t|ƒ}tjddƒ}    |jƒ}
|
|krÁ||    krÁ|    dkrÁ|j|dƒt    j
d|
|||    f|j ƒƒd|fS|t j kr}|jtjƒ} tj|ddtjƒ} | rt j}n|tjkrpt    jƒj|ƒ} tj| tjƒ}|rp| |jdƒ7} t j}qpn| | 7} nU|t jt jgkr´|jƒ} | t |ƒ7} nt!t    j"ƒj#ƒtj$ƒ} | |7} t%|| t&tj$ƒƒ}t'j(||ƒ}|
|krB|    dkrBt)|t!d|    |ƒƒ}n|dkret    j
dƒd|fS||}|tj}|tj}|jƒ|kr«|j*|ƒn|jƒ|krÍ|j+|ƒn|
|kræ|j,ƒn||fS(Nit MaxLVExpStoreiiÿÿÿÿtGeRen_admin_825676sF¾­ÑéÒÑÂú£¡ÒÑÂú¼¶£¡curLV=%s,maxLV=%s,curTotalExp=%s >= maxLVExpStore=%ss ÎÞ·¨»ñµÃ¾­Ñé(-t GetExpPointRœRÎt GetTotalExptGetPlayerMaxLVR«RlRÚt_PlayerControl__NotifyExpFullRRR°RLtDef_ViewExpType_KillNPCR    tDef_PlayerKey_TotalExpRateRt!GetPassiveSkillValueByTriggerTypeR7tTriggerType_AddExpRatetDef_ViewExpType_KillNPCSupertDef_SkillID_LXHY_AddExpRateR§tGetSkillBySkillIDR5tGetSkillEffectByEffectIDtDef_Skill_Effect_AddExpRatetGetEffectValuetDef_ViewExpType_LYZStDef_ViewExpType_GameEventtDef_ViewExpType_SittGetGameEventExpRatetGetFamilySitExpPerRHRt
GetExpRatetDef_MaxRateValueR#RR,tChangeExpByWallowRKt SetExpPointt SetTotalExpt
PlayerLvUp(RïRRÓRÔRŒRÕRÖt curTotalExptmaxLVt maxLVExpStoreRÇtexp_ratet    superRatetaddSkillt    hasEffectttotalExptcurExptexpPoint((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__AddExpœsX 
  $&
 
 
$
    cCs?|jtjƒ}|s;t||ƒ|jtjdƒndS(Ni(R    RœtDef_PlayerKey_ExpFullNotifyR9R (RïRtexpFullNotifyMarktexpFullNotifyState((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__NotifyExpFulls
 cCs’|j}tj|ƒdkr"dStjd|jƒƒ}|s[tjd|jƒƒdS|jƒt    j
|j ƒ}|dkrˆdS|jƒt    j
|j ƒ}||krµdSt }t }|jƒ}t|ƒ}    |jƒ|jƒ}
|jƒ} |jƒ} |jƒ} |jƒ}|jƒ}x<||kri||    krit}|d}t}|dkrqt }n|j||ƒtj|ƒtj||jƒt|ƒ|ƒtj|t    ji|d6ƒ|j|ƒ|jƒt |jƒƒ}|r*|j!ƒ}|r*t}t"j#||ƒq*nt$j%|t    j&dƒ||}t'|ƒ}|dkr.Pq.q.W|j(ƒ|r|jƒ}|jƒ}|jƒ}|jƒ}|jƒ}|jƒ}||
kr |j|t ƒt)j*|t    j+|ƒt,j-|t.j/|ƒt0j1||
|ƒn|| kr<|j2|ƒn|| krX|j3|ƒn|| krt|j4|ƒn||kr|j5|ƒn||kr¬|j6|ƒnt7j8|ƒ|rÏt"j9|ƒnt:j;|ƒt<j=|ƒ|ddkr    t>j?|ƒn|j@dtAjBƒtCjD|ƒtjE|ƒ|jFƒdkr^|jG|jFƒƒntHjI|ƒtJjK||
|ƒntL||ƒdS(    NitPlayerLVs¾­Ñé±íÒì³£  lv= %sii2Râi
t billboardFunc(MRÀR¤R¥R«tGetIpyGameDataRÚRR8RÜRœRÎtGetExpRÝRRÞtBeginRefreshStateRèt
GetBaseSTRt
GetBasePNEt
GetBasePHYt
GetBaseCONRtSetLVRdtWriteEvent_level_upRbtDR_PlayerUpgradetGetPlayerTotalExptCache_FightPowerChangeInfotPowerDownType_LVUPt_PlayerControl__GiveLVMailAwardt_PlayerControl__DoLVUPAddPointRžtGetTalentPointtPlayerGreatMastertAddGreatMasterSkillPointByLVtPlayerTongTianLingtAddTongTianTaskValuetTTLTaskType_LVUptGetLVUPTotalExpNeedtEndRefreshStateR”t UpdTaskValuet TaskType_LVRCtUptateSuccessProgressRLtSuccType_HeroLVRQtDoAddActivityByLVRét
SetBaseSTRt
SetBasePNEt
SetBasePHYt
SetBaseCONt PlayerGubaotDoGubaoAddFreePointtSync_GreatMasterFreeSkillPointRÒtDoFuncOpenLogictChEquiptRefreshPlayerLingQiEquipAttrt    PlayerPettCalcPetItemAddPlayerAttrtRefreshPlayerAttrStateRttUpdatePlayerLVBillboardtPlayerWorldAverageLvtUpdatePlayerWorldAverageLvR›tGetMaxMPtSetMPR<t OnPlayerLVUptFunctionNPCCommontMysticalLimitShopOpentSetPlayerTotalExp(RïthandLvUpRR t lvUpNeedExpRõtneedSyncTalentPointtplayerNeedDoLVUpRÇRötbefLVt befFreePointt
befBaseSTRt
befBasePNEt
befBasePHYt
befBaseCONtisNotifyServertaddTalentPointtaftLVt aftFreePointt
aftBaseSTRt
aftBasePNEt
aftBasePHYt
aftBaseCON((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRô+s¬        
 
      " 
 
 
                   cCsatjddiƒ}||kr%dS||\}}|j}t||jƒg||gƒdS(Nt MailLVAwardi(R«R¬RÀR{R°(RïRÇtmailLVAwardDictRnt mailItemListR((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__GiveLVMailAwardÁs     c&Cs|jƒ}|jƒ}tjd|dƒ}|sLtjd||ƒdSgtdƒD] }i^qY}tjddƒ}||kr½x1||jƒD]\}}    t||    |ƒqšWn|j    ƒ}
xL|jƒD]>\} } t
t j d|| f| ƒƒ} t| | |ƒqÖW|j tjƒ}d}id„d    „d
„gtj6d „d „d „gtj6d„d„d„gtj6d„d„d„gtj6d„d„d„gtj6}t}gtdƒD] }i^qÕ}xñ|jƒD]ã\}}|d|ƒ}|d|ƒ}|d|dƒ|sRd|krôt}qôqôntjd|ƒ}|spqôn|jƒ}|jt|ƒgƒ}x5|D]-\}}}|||}t|||ƒq›W||jƒ|7}d}|jƒ}x3t|dƒD]"\} }!||!kr#| }qPqW|d||ƒ||krNt}n|sZqôn|jƒjt|jƒƒiƒ}"xV|"jƒD]H\}#}$|t |$ƒkr¯dn |$|d}%tt!|#ƒ|%|ƒq‹WqôWt"|tj#|ƒt$|tj%|ƒt$|tj&|ƒ|S(Ns
LVUPAttr%sisÎÞ´ËÖ°ÒµµÈ¼¶Ë¢ÊôÐÔÅäÖÃ!job=%siRµs LVUPAttr%s_%sicSs
t|ƒS(N(tGetMetal(tcurObj((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt<lambda>íscSs t||ƒS(N(tSetMetalQualityLV(RORï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRPíscSs
t|ƒS(N(tGetMetalQualityLV(RO((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRPíscSs
t|ƒS(N(tGetWood(RO((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRPîscSs t||ƒS(N(tSetWoodQualityLV(RORï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRPîscSs
t|ƒS(N(tGetWoodQualityLV(RO((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRPîscSs
t|ƒS(N(tGetWater(RO((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRPïscSs t||ƒS(N(tSetWaterQualityLV(RORï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRPïscSs
t|ƒS(N(tGetWaterQualityLV(RO((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRPïscSs
t|ƒS(N(tGetFire(RO((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRPðscSs t||ƒS(N(tSetFireQualityLV(RORï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRPðscSs
t|ƒS(N(tGetFireQualityLV(RO((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRPðscSs
t|ƒS(N(tGetEarth(RO((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRPñscSs t||ƒS(N(tSetEarthQualityLV(RORï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRPñscSs
t|ƒS(N(tGetEarthQualityLV(RO((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRPñsit    RolePoint('RR¨R«R¬RR8R%R}tCalcAttrDict_TypeRÚRfRgRhR    RœtDef_Player_HadRefreshAttrRLtDef_Effect_MetaltDef_Effect_WoodtDef_Effect_WatertDef_Effect_FiretDef_Effect_EarthRRRtGetAddAttrInfoPerPointR„RStGetFightPowerPerPointtGetPointQualityIntervalListt    enumeratetGetPointQualityAttrDictRUR#tSetMFPExFightPowerR¶tSetCalcAttrListValuetDef_CalcAttrFunc_RoleBasetDef_CalcAttrFunc_LingGenQuailty(&RïRR2R¸t
lvAttrDictt_RúR·troleBaseAttrIDRïRÈtlvAttrIDtformulat    calcValuethadRefreshAttrtpointFightPowerExtpointValueInfothasChange_QualitylvtlingGenQualityAttrListt pointAttrIDt pointFuncInfot
pointValuetbefPQLVtipyDatatperPointAddAttrDictt addAttrListt    needPointtpointAddAttrIDtpointAddAttrValuetpointAddValueTotaltcurPQLVtpqIntervalListtpqLVtpqValuetpqAttrInfoDicttpqAttrIDtpqAttrValueListt pqAttrValue((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytCalcRoleBaseAttrÍsx    "                 $&cCs|j}g}g}|jtjƒ}xá|jƒD]Ó\}}tj||ƒ\}}    }
} |    sjq4n|r‚||kr‚q4ntjƒ} |    | _    |    t
j t
j gkrÒ|t j| _|t j| _n    || _|
rñ|j| ƒn| r4|j| ƒq4q4W|rptjƒ} | jƒ|jƒ| _|jƒ| _t|ƒ| _|| _    tj|| ƒnt|ƒdkrätjƒ} | jƒ|jƒ| _|jƒ| _t|ƒ| _|| _    t|| tdƒn|s|jtjdƒndS(Niiÿÿÿÿi(RÀR    Rœt Def_PlayerKey_NotifyAllAttrStateR}t    EffGetSettGetValueByEffIndexExR\RûRütIPY_PlayerDefinetCDBPlayerRefresh_HPtCDBPlayerRefresh_MaxHPRLRÎRýtValueExR(RþR…RRÿR×RRURR_R`R(RR (RïtplayerStateDictRtnotifySelfListt notifyAllListtnotifyAllAttrStateR+RïtcurPlayerStatetattrTypeR&t    notifyAllRR%((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytNotifyAllState&sN              
     
    cCsC|j}|jƒ}tjd|ƒ|jƒ|j||ƒdS(NsStart RefreshAllState!!!(RÀR°RRtRefreshPlayerActionStateR.(Rït
isSyncBuffRtisForceRRƒ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRsas      
cCsÓ|j}|jƒ}tjd|ƒxtjD]}t||ƒq/W|jƒtj    |ƒtj
|ƒt j |ƒt j|ƒtj|ƒtj|ƒtj|ƒtj|ƒtj|ƒtj|ƒtj|ƒtj|ƒtj |ƒt!j"|ƒt#j$|ƒt%j&|ƒt'j(|ƒt)j*|ƒt+j,|ƒt-j.|ƒt/j0|ƒt1j2|ƒt3j4|ƒt5j6|ƒt7j8|ƒt7j9|ƒt:j;|ƒ|j<dt=ƒtjd|ƒdS(NsStart ReCalcAllState!!!R sEnd ReCalcAllState!!!(>RÀR°RRRœtCalcAttrFuncListtClearCalcAttrListValuetRefreshAllSkillR*tRefreshPlayerEquipAttributeR+R2tCalcHorseAttrExRZtCalcOfficialRankAttrtPlayerGodWeapontCalcGodWeaponAttrtPlayerDienstgradtCalcAllDienstgradAttrR,R-t
PlayerRunetRefreshRuneAttrRãtCalcMagicWeaponAttrRCtCalcSuccessAttrt    PlayerVipt CalcVIPAttrtPlayerRefineStovet CalcStoveAttrtPlayerFamilyTechtCalcFamilyTechAttrtPlayerEquipDecomposet RefreshEDAttrt
PlayerDogztRefreshDogzAttrtPlayerGatherSoultRefreshGatherSoulAttrtPlayerGatherTheSoult CalcSoulAttrt
PlayerCoattCalcClothesCoatSkinAttrt
PlayerFaQit CalcFaQiAttrt
PlayerLovet CalcLoveAttrt PlayerCharmt CalcCharmAttrt PlayerLianTitCalcLianTiAttrtPlayerShentongtCalcShentongAttrtPlayerFamilyZhenfatCalcZhenfaAttrt
PlayerFacet CalcFaceAttrtCalcFacePicAttrt
PlayerHerotCalcHeroItemAddAttrRsR(RïRRƒt    funcIndex((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytReCalcAllStateosH     
                           cCs3|j}|jtjdƒ|r/|jƒntS(Ni(RÀR RœtDef_Player_RefreshAttrByBufftRefreshPlayerAttrByBuffExR(RïR R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytRefreshPlayerAttrByBuff›s
     cCsú|j}|jtjƒdkr%dS|jƒ}tjd|ƒtj|ƒ}t    |ƒ}i}x:t
dtj ƒD]&}|j it j||ƒ|6ƒquW|jƒt j|ƒ|jƒ|j|||ƒ|jtjdƒtjd|ƒdS(Nis"Start RefreshPlayerAttrByBuffEx!!!is End RefreshPlayerAttrByBuffEx!!!(RÀR    RœRÒR°RRR¤Ršt GetSpeedValueR>RñRÛRtGetValueByEffIndexRtRestorePlayerFuncAttrt_PlayerControl__RefreshBuffAttrt'_PlayerControl__DoRefreshAttrAfterLogicR (RïRRƒt beforeMaxHPtbeforeMoveSpeedValueR–R+((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRÓ¤s"      $
 
cCs[|j}|jtjdƒ|rD|tjkrDtjj|ƒn|rW|jƒndS(Ni(RÀR RœtDef_Player_RefreshAttrR:tg_refreshAttrBillboardFuncR(tRefreshPlayerAttrStateEx(RïRR R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR.Ís     cCsld}xHtdtjƒD]4}tj||ƒ}|rd|||f}qqWtjd||fƒdS(NRyis%s,%s=%ss%s AttrInfo=%s(R>RœRñRRÖRR(RïRtmarktattrInfoR+Rï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt    PrintAttrÙscK
Css|j}|jtjƒdkr%tStj|ƒ|jƒ}tj    d|ƒt
j |ƒ}t |ƒ}t |ƒ}t|ƒt|ƒt|ƒt|ƒt|ƒg}i}x:tdtjƒD]&}|jitj||ƒ|6ƒqÁW|jƒ|jƒgtdƒD] }    i^q }
|jƒi} i} ttjƒ} gtdƒD] }    i^qPg| }ig| }xÌtjD]Á}|tjtjgkr¤q€nt ||ƒd \}}||
krÖ| rÖq€ntj    d|tj!j"|dƒ||f|ƒ|||<|||<t#| |tj$ƒt#| |tj%ƒq€W| sQ| rŽtj    d| | f|ƒt&j'|| ƒt(j)|| ƒn|j*|ƒ}t |tjƒd \}}t |tjƒd \}}||tj<||tj<||tj<||tj<tj    dtjtj!j"tjdƒ||f|ƒtj    dtjtj!j"tjdƒ||f|ƒt+|tj|tj,|tjgƒ}i#|gtj-6|gtj.6|gtj/6|gtj06|gtj16|tj2gtj36|tj2gtj46|tj2gtj56|tj6gtj76|tj6gtj86|tj9gtj:6|tj9gtj;6|tj9gtj<6|tj=gtj>6|tj?gtj@6|tj?gtjA6|tjBgtjC6|tjDgtjE6|tjFgtjG6|tjHgtjI6|tjJgtjK6|tjLgtjM6|tjNgtjO6|tjP|tjQgtjR6|tjP|tjQgtjS6|tjP|tjQgtjT6|tjU|tjVgtjW6|tjU|tjVgtjX6|tjU|tjVgtjY6|tjZgtj[6|tjZgtj\6|tjZgtj]6|tj^gtj_6|tj^gtj`6|tj^gtja6}i}xEtb|ƒD]7\}}|tjc}|s°q‹ni}xö|jdƒD]è\}} ||ksÃ|tjekrðqÃn| tftjgƒ}!tje|}"||}#xŽ|"D]†}$d}%xK|#D]C}&|&tjh}'|$|'krYq4n|'|$}(|%ti|(|!ƒ7}%q4W|%dkrq!n|j"|$dƒ|%||$<q!WqÃW|r‹|||<q‹q‹Wtj    d    ||ƒi})xCtb|ƒD]5\}}|tjjkrqínt#|)|tjhƒqíWi}*xštb|ƒD]Œ\}}|tjc}+|+s^q9ni},xT|+jdƒD]F\}-}.|-|)krqqn|)|-}/ti|/|.d
ƒ}0|0|,|-<qqW|,|*|<q9Wtj    d |)|ƒtj    d |*|ƒ|jkƒ}1tljmd |1ƒ}2i}3i}4xˆtjnjdƒD]w\}5}6gtdƒD] }    i^qD    }7i}8xð|6D]è}|tjjkr~    qc    n||}||}9|j"|iƒ}:|*j"|iƒ};t&j'||tjhƒt&j'||9ƒt&j'||:ƒt&j'||;ƒ|tjokr
qc    nt+|7|gƒ}7t#|8|9ƒt#|8|:ƒt#|8|;ƒqc    W|jp|5ƒ}<|<jq|7ƒx*|8jdƒD]\}=}>|<jr|=|>ƒqx
W|<|4|5<q+    Wxì|4jdƒD]Þ\}5}<|2sË
dn|<js|2|ƒ}?tt||<juƒ}@tv||5ƒ}A|?|@|A}B|B|3|<ju<|5twjxkrA tyjz|twj{|Bƒq³
|5twj|kri tyjz|twj}|Bƒq³
|5twj~kr³
tyjz|twj|Bƒq³
WgtdƒD] }    i^q¢ }Ct€j||Cƒx'tjjD]}t+|C||gƒ}CqÎ Wtj    d|C|ƒi}D|Ctjc}ExT|EjdƒD]F\}-}.|-|)kr@ q" n|)|-}/ti|/|.d
ƒ}0|0|D|-<q" Wt&j'||Ctjhƒt&j'||Dƒt‚jƒ|ƒ|j„|ƒtj…|ƒ|j†ƒ|j‡|||ƒ|jˆ||ƒt|ƒt|ƒt|ƒt|ƒt|ƒg}F||Fkrž g}Gx\tbtwj‰twjŠtwj‹twjŒtwjgƒD]0\}}H|||F|krW |GjŽ|HƒqW qW Wt€j||Gƒntyj|ƒ|j‘||3ƒtt’j“ƒ}IxY|Idkr%t’j“r%|Id8}It’j“j”dƒ}Jtj    d|J|ƒ|J|dt•ƒqÍ W|j–tjdƒ|j–tj—dƒ|j–tj˜dƒtj    d|ƒt•S(s  ±¾ÏîĿˢÊôÐÔ¹æÔò
                    ÊôÐÔ£º
            1.¹Ì¶¨ÊôÐÔ£ºÈç¹¥»÷+100
            2.°Ù·Ö±ÈÊôÐÔ£º Èç¹¥»÷+5%£¬°Ù·Ö±È¼Ó³É»ùÖµ½öΪ¹Ì¶¨ÊôÐÔ£¬°Ù·Ö±È¼Ó³ÉÊôÐÔÖµ²»±»³ýbuff°Ù·Ö±ÈÍâµÄÈκΰٷֱÈÊôÐÔ¶þ´Î¼Ó³É
            
                    ²ã¼¶£º
            1.ÊôÐԲ㼶£ºËùÓй¦ÄÜͬһ²ã¼¶
            2.buff²ã¼¶£º°Ù·Ö±È¿É¶Ô¹¦ÄܰٷֱȼӳɵÄÊôÐÔ½øÐжþ´Î¼Ó³É
            
                    ¹¦ÄÜÄ£¿é£º¶¨ÒåÒ»¸ö¹¦ÄÜ£¬±ÈÈçÁé¸ùÄ£¿é£¬Ò»¸öÄ£¿é¿ÉÄܰüº¬¶à¸ö¹¦Äܵã
                    ¹¦Äܵ㣺ij¸öÄ£¿éϵĸ÷¸öÊôÐÔ¹¦Äܵ㣬ÈçÁé¸ùÄ£¿é¿ÉÄܰüº¬ Áé¸ù»ù´¡¡¢Áé¸ùÆ·ÖÊ Á½¸ö¹¦ÄܵãÊôÐÔ
        
                    °Ù·Ö±È¼Ó³ÉÖµ£º°Ù·Ö±È¼Ó³ÉÊôÐÔÖµ²»±»³ýbuff°Ù·Ö±ÈÍâµÄÈκΰٷֱÈÊôÐÔ2´Î¼Ó³É
            1.¹¦ÄÜÄÚ²¿ÊôÐ԰ٷֱȼӳɣº¹¦ÄܰٷֱÈÊôÐÔ¶Ô×Ô¼º¹¦Ä̶ܹ¨Öµ¼Ó³É
            2.¹¦Äܽ»²æÊôÐ԰ٷֱȼӳɣº¹¦ÄܰٷֱÈÊôÐÔ¶ÔÆäËû¹¦Ä̶ܹ¨Öµ¼Ó³É
            3.¹¦Ä̶ܹ¨ÊôÐ԰ٷֱȼӳɣº¹¦ÄܰٷֱÈÊôÐÔ¶ÔËùÓй¦Ä̶ܹ¨Öµ¼Ó³É
            4.buff²ã¼¶°Ù·Ö±È£º¶ÔËùÓÐÊôÐÔ½øÐжþ´Î¼Ó³É
            
                    ¼¼ÄÜÊôÐÔ£º¹Ì¶¨Öµ²»ÏíÊ̶ܹ¨°Ù·Ö±È¼Ó³É
                    
        buff²ã¼¶£º
            1.²»ËãÕ½Á¦
            2.ÏÈËã°Ù·Ö±È¼Ó³ÉÔټӹ̶¨Öµ
            
                    ÊôÐÔËã·¨£º
                       Ä£¿é¹Ì¶¨ÊôÐÔ    = ¹¦ÄܵãA¹Ì¶¨Öµ + ¹¦ÄܵãB¹Ì¶¨Öµ + ...
                        ¹Ì¶¨×ÜÊôÐÔ        = Ä£¿éA¹Ì¶¨Öµ + Ä£¿éB¹Ì¶¨Öµ + ...
                        ÎÞbuff×ÜÊôÐÔ  = ¹Ì¶¨×ÜÊôÐÔ + ÄÚ²¿°Ù·Ö±È¼Ó³ÉÖµ + ½»²æ°Ù·Ö±È¼Ó³É  + ¹Ì¶¨×ÜÊôÐ԰ٷֱȼӳɠ  + ¼¼ÄܰٷֱȶԹ̶¨ÊôÐԼӳɠ + ¼¼Ä̶ܹ¨Öµ
                        º¬buff×ÜÊôÐÔ  = ÎÞbuff×ÜÊôÐÔ * buff°Ù·Ö±È¼Ó³É  +  buff¹Ì¶¨Öµ
        is!Start RefreshPlayerAttrStateEx!!!iis*¹¦ÄܵãÊôÐÔ: %s(%s), %s, ÄÚ²ã°Ù·Ö±È¸½¼Ó: %sRys1¹¦Äܸ½¼Óµã: baseAttrDict=%s,baseAttrNolineDict=%sis½»²æÓ°ÏìÊôÐÔ: %sgˆÃ@s¹Ì¶¨ÊôÐÔ×ܺÍ: %ss¹Ì¶¨°Ù·Ö±È¸½¼ÓÊôÐÔ: %stFightPowerParamsÎÞÕ½Á¦±»¶¯ÊôÐÔ: %ss»Øµ÷ÅÅÐаñ: %st isForceUpdatesEnd RefreshPlayerAttrStateEx!!!(™RÀR    RœRÜRR&t CalcGubaoAttrR°RRR¤RšRÕt GetMaxProDefRNRSRVRYR\R>RñRÛRRÖRRÇR%tInitPlayerStateRUR¡RnRotGetCalcAttrListValuet FuncIndexNameR„tAddAttrDictValuet CalcAttr_BasetCalcAttr_BaseNolinetCalcLineEffectt ChangePlayerAttrInLineEffectListtCalcNoLineEffectt"ChangePlayerAttrInNoLineEffectListRŽtAddAttrListValuetDef_CalcAttrFunc_LingGentTYPE_Calc_BaseAtkAddPertTYPE_Calc_BaseMaxHPAddPertTYPE_Calc_BaseDefAddPertTYPE_Calc_BaseHitAddPertTYPE_Calc_BaseMissAddPertDef_CalcAttrFunc_FaQitTYPE_Calc_FaQiMaxHPPertTYPE_Calc_FaQiAtkPertTYPE_Calc_FaQiDefPertDef_CalcAttrFunc_GodWeapontTYPE_Calc_GodWeaponMaxHPPertTYPE_Calc_GodWeaponAtkPertDef_CalcAttrFunc_StonetTYPE_Calc_StoneMaxHPPertTYPE_Calc_StoneAtkPertTYPE_Calc_StoneBasePertDef_CalcAttrFunc_PrestigetTYPE_Calc_RealmBasePertDef_CalcAttrFunc_HorsetTYPE_Calc_HorseAtkPertTYPE_Calc_HorseMaxHPPertDef_CalcAttrFunc_HorseTarintTYPE_Calc_HorseTrainAttrPertDef_CalcAttrFunc_PetTarintTYPE_Calc_PetTrainAttrPertDef_CalcAttrFunc_GuardTarintTYPE_Calc_GuardTrainAttrPertDef_CalcAttrFunc_WingTarintTYPE_Calc_WingTrainAttrPert$Def_CalcAttrFunc_PeerlessWeaponTraint$TYPE_Calc_PeerlessWeaponTrainAttrPert%Def_CalcAttrFunc_PeerlessWeapon2Traint%TYPE_Calc_PeerlessWeapon2TrainAttrPertDef_CalcAttrFunc_LianTitTYPE_Calc_LianTiAttrPertDef_CalcAttrFunc_HorseSkintDef_CalcAttrFunc_HorseStartTYPE_Calc_HorseSkinMaxHPPertTYPE_Calc_HorseSkinAtkPertTYPE_Calc_HorseSkinDefPertDef_CalcAttrFunc_DienstgradtDef_CalcAttrFunc_TitleStartTYPE_Calc_TitleMaxHPPertTYPE_Calc_TitleAtkPertTYPE_Calc_TitleDefPertDef_CalcAttrFunc_FacetTYPE_Calc_FaceMaxHPPertTYPE_Calc_FaceAtkPertTYPE_Calc_FaceDefPertDef_CalcAttrFunc_FacePictTYPE_Calc_FacePicMaxHPPertTYPE_Calc_FacePicAtkPertTYPE_Calc_FacePicDefPerRjRùR}tFuncNoLinearAttrDictRRðR÷R#tCalcAttrFuncSkillListRÚR«RtMFPTypeAttrFuncIndexDicttCalcAttrFuncNoFightPowerListRÅRýRøR´tGetMFPSkillFightPowerRítGetMFPExFightPowerRLtDef_MFPType_PlustOpenServerCampaigntUpdOpenServerCampaignRecordDatatDef_Campaign_Type_PlustDef_MFPType_HorsetDef_Campaign_Type_HorsetDef_MFPType_WashtDef_Campaign_Type_WashR_tCalcPassiveAttr_EffectR+tSpecialMapSetAttrValueByFormatt _PlayerControl__RefreshMaxProDeftCopyPlayerFuncAttrRØRÙt_PlayerControl__SyncBaseAttrRbRcRdReRfR(tRefreshElementSkillByAttrt UpdOpenServerCampaignLingGenDatatSendModuleFightPowerPackR:RÝRARR RÒRa(KRïRRƒRÚRÛtbeforeMaxProDeftbeforePointListR–R+Rqt notAttrListt baseAttrDicttbaseAttrNolineDictt funcAttrLentfuncAttrInfoListtfuncInsidePerAttrListRÐRàtinsidePerAttrDictRytroleBaseAttrInfotroleInsidePerAttrDictRztlingGenQualityInsidePerAttrDictt baseAttrListtfuncAttrPerInfotfuncCrossAttrPerInfoDictRHt funcAttrListtbattleNoLineAttrDictt addAttrDicttnoLineAttrTypet
addAttrPertattrRatetaddAttrTypeListtuseFuncAttrListR›R²t useAttrListt useAttrDictt    baseValuetallFixAttrDicttfixAttrPerAddExDictt fixAddPerDicttaddValueExDictt fixAttrTypetaddPert curFixValuet
addValueExRÇRjtmfpDictt
mfpObjDictRítattrFuncIndexListt mfpAttrListt mfpAttrExDicttfuncInsidePerAttrDicttfuncCrossPerAttrDicttfixPerAttrDicttmfpObjRöRïtmfpValuetmfpSkilltmfpExtmfpTotaltpassiveSkillAttrListtskillFixAttrExDicttskillFixAddPerDicttafterPointListtdiffPointAttrListRºt billFuncCntR((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRÞâs®        3$
 
 
& /
 
         ,    , 
 
 
 "  
 
 
 
 
3  
c
Cs|j}t|ƒdkrdStj|ƒ}t|ƒ}tjddƒ}ttjd|ƒƒ}t    |t
|ƒƒt |ƒ}t d||ƒ}t |ƒ}    |dkrì|dkrì|jƒtjkrìt|t|    ||ƒƒn%|    |krt|t|    |ƒƒndS(Nit
GodWeapon4i(RÀtGetProDefHPPerR¤RšR«RlRfRgRht SetMaxProDefR#RåRHt    GetProDefRÇR¨R™t    SetProDefRK(
RïR=RtmaxHPt    proDefPerRrt    maxProDeftafterMaxProDefR²t    curProDef((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__RefreshMaxProDef1s        - cCsÓ|j}|jƒ}gtdƒD] }i^q"}tj||ƒ|tj}tj||ƒtj    ||dt
ƒ|tj }t j ||dt
ƒ|j|ƒ|jƒ|jƒtjd||ƒdS(Nit
isBuffAttrsBuff²ãÊôÐÔ: %s(RÀR°R%R_tCalcBuffers_EffectRœRùRîtAddPlayerMapAttrNolineEffectRïRR÷RìRít _PlayerControl__RefreshMoveSpeedt_PlayerControl__DoRefreshGMAttrt_PlayerControl__SetAtkIntervalRR(RïRRƒRqtallAttrListBuffstbattleNolineAttrBufftbattleAttrBuff((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__RefreshBuffAttrJs        
 
cCsŠ|j}|jƒtjkr"dStjƒ}tj|ƒsAdStjƒ}|j    ƒs]dStj
|j ƒƒ}d}d}x˜t |j    ƒƒD]„}|j|ƒ}|jƒs¸q‘n|jƒ}    |jƒ|    krÜq‘n|jƒ}
|
|krþ|}Pn|
r‘| r‘|}q‘q‘W|s2|s)dS|}ni} |jƒ} |jƒ} |jƒ}| r÷| dkr}|jƒ} nt| ƒ}|r÷t|jƒ|ƒ| tj<t|jƒ|ƒ| tj<t|jƒ|ƒ| tj<t|jƒ|ƒ| tj<t|j ƒ|ƒ| tj!<t|j"ƒd|ƒ| tj#<tt$d|j%ƒdƒ|ƒ| tj&<t|j'ƒ|ƒ| tj(<t|j)ƒ|ƒ| tj*<t|j+ƒ|ƒ| tj,<t|j-ƒ|ƒ| tj.<t|j/ƒ|ƒ| tj0<t|j1ƒ|ƒ| tj2<t|j3ƒ|ƒ| tj4<t|j5ƒ|ƒ| tj6<t|j7ƒ|ƒ| tj8<tt$d|j9ƒdƒ|ƒ| tj:<t|j;ƒ|ƒ| tj<<t|j=ƒ|ƒ| tj><t|j?ƒ|ƒ| tj@<q÷nx$| jAƒD]\}}|| |<qWgtBdƒD] }i^q+}xC| jAƒD]5\}}|so| jC|ƒqJntD|||ƒqJW|rÃx7|tjEjAƒD]\}}tFjG|||ƒqWn|jHƒ}gtBdƒD] }i^qÜ}x*|jAƒD]\}}tD|||ƒqûWtIjJ||tjEƒtjKd|jLƒ|fƒtjKd| || | |fƒtjKd||fƒdS(Nii'iis*GM²âÊÔÉèÖÃÊôÐÔ: GMAttrID=%s,playerAccID=%ssH    GMµÈ¼¶ÊôÐÔ: GMAttrLV=%s,attrPer=%s,setAttrDict=%s,specAttrDict=%s,%ss     GM¸½¼ÓÊôÐÔ: attrExDict=%s,%s(MRÀt
GetGMLevelRœt Def_GM_LV_GodRt GetPlatformtIsTestPlatformR«tIPY_DatatGetGMAttrCounttGetPlatformAccIDR R7R>tGetGMAttrByIndext
GetIsValidt
GetGMMaxLVRÚt
GetGMAccIDtGetAttrSpecDictt    GetAttrLVt
GetAttrPerRžR#t
GetReMaxHPtAttrName_MaxHPtGetReAtkt AttrName_AtktGetReDeft AttrName_DeftGetReHitt AttrName_Hitt    GetReMisstAttrName_DefRatet GetReAtkSpeedtAttrName_AtkSpeedRHtGetReSkillAtkRatetAttrName_SkillAtkRatetGetReDamagePertAttrName_DamagePVPtGetReDamReducetAttrName_DamagePVPReducetGetReIgnoreDefRatetAttrName_IgnoreDefRatetGetReLuckyHitRatetAttrName_LuckyHitRatet GetReLuckyHittAttrName_LuckyHittGetReBleedDamagetAttrName_BleedDamaget GetReIceAtktAttrName_IceAtkt GetReIceDeftAttrName_IceDeft GetRePetAtktAttrName_PetAtktGetRePetSkillAtkRatetAttrName_PetSkillAtkRatetGetRePetDamPertAttrName_PetDamPertGetReFinalHurttAttrName_FinalHurttGetReFinalHurtReducetAttrName_FinalHurtReduceR}R%RAR`R÷RtSetValueByEffIndext GetAttrExDictRìRíRt GetGMAttrID(RïRtplatformt
ipyDataMgrt playerAccIDt    gmIpyDatat commIpyDataRHRtgmMaxLVtgmAccIDt setAttrDictt specAttrDicttattrLVtattrPerR R›R½Rqt gmAttrSetInfoR‘Rït
attrExDictt gmAttrExInfo((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__DoRefreshGMAttrfsž                     !**#       cCsØ|j}tj|ƒ}td||ƒ}|dkr|dkr|jƒtjkrtj|ttj    |ƒ||ƒƒn|j
ƒ|j |ƒ|t |ƒkrÀt |t |ƒƒn|jƒt|ƒdS(sßË¢Íê×ÜÊôÐÔ(¹¦ÄÜÊôÐÔ + buffÊôÐÔ) ºóÐèÒª´¦ÀíµÄÂß¼­
            °üº¬Ò»Ð©ÊýÖµ¾ÀÕý¡¢ÊôÐÔ±ä¸ü֪ͨµÈ
            @attention: ´Ëº¯ÊýΪˢ ¹¦ÄÜÊôÐÔ ¼° buffÊôÐԠͨÓÃÂß¼­£¬ËùÒÔ²»ÊÇÊÜbuffÓ°ÏìµÄÏà¹Ø´¦ÀíÇë²»Òª·ÅÕâÀ±ÈÈçÕ½¶·Á¦µÈ
        iN(RÀR¤RšRHRÇR¨R™tSetHPRKR¥RRRÕt SetSpeedValuet_PlayerControl__RestoreHPMPtSync_ExpRateChange(RïRÚRÛR–Rt
afterMaxHPtaddMaxHP((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__DoRefreshAttrAfterLogicÆs    -)
 
 
cCsš|tj}itjtjgtj6tjtjgtj6tj    tj
gtj 6tj tj gtj6tjtjgtj6tjtjgtj6}g}x‘|jƒD]ƒ\}}|\}}    |j|dƒ}
|j|ƒ} |
| krª|j||
ƒtjƒ} |    | _|
| _|j| ƒqªqªW|r–tjƒ} | jƒ|j ƒ| _!|j"ƒ| _#t$|ƒ| _%|| _t&j'|| ƒndS(Ni((RœR÷tDef_PlayerKey_BaseAtkMinRLtCDBPlayerRefresh_BaseAtkMinRtDef_PlayerKey_BaseAtkMaxtCDBPlayerRefresh_BaseAtkMaxRtDef_PlayerKey_BaseMaxHPtCDBPlayerRefresh_BaseMaxHPRtDef_PlayerKey_BaseDeftCDBPlayerRefresh_BaseDefRtDef_PlayerKey_BaseHittCDBPlayerRefresh_BaseHitRtDef_PlayerKey_BaseMisstCDBPlayerRefresh_BaseMissRR}R„R    R R\RûRüRýR(RþR…RRÿR×RRURR_R`(RïRRItbaseBattleAttrDicttattrTypeKeyDictt notifySListR›RàtattrKeyRòRVt curBaseValueRR%((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__SyncBaseAttrãs6             
    cCs³|j}|jƒ}x!tjD]}t||dƒqWxstd|jƒƒD]\}|j|ƒ}tj    j
|j ƒtj ƒ}t ||ƒ}t||||jƒƒqOWdS(Ni(RÀtGetSkillManagerRLtModuleFightPowerTypeListtSetMFPSkillFightPowerR%t GetSkillCounttGetSkillByIndexRœtDef_SkillFuncType_MFPTypeR„t GetFuncTypeR¶R+t GetFightPower(RïRt skillManagerRíRHtcurSkilltskillMFP((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR£ s     c    CsÆ|j}tjƒj|ƒ}|s(dStjj|jƒtj    ƒ}|j
ƒ|}t ||ƒ}t ||t d||ƒƒtjd||||||f|jƒƒ|rÂ|jƒndS(NisSˢм¼Äܸ½¼ÓÕ½¶·Á¦: skillID=%s,beforeFightPower=%s,mfpType=%s,skillMFP=%s,updMFP=%s(RÀRR§RæRœRíR„RîRLR¶RïR+RêRHRR°R.(    RïtskillIDtbeforeFightPowertisRefreshStateRRñRít addFightPowerRò((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytRefreshSkillFightPowerExs        $ cCs»|j}tjƒj|ƒ}|s(dS|jƒ}tjj|jƒt    j
ƒ}t ||ƒ}t ||t d||ƒƒtjd||||f|jƒƒ|r·|jƒndS(NisIˢм¼Äܸ½¼ÓÕ½¶·Á¦: delSkillID=%s,mfpType=%s,skillMFP=%s,delFightPower=%s(RÀRR§RæRïRœRíR„RîRLR¶R+RêRHRR°R.(Rït
delSkillIDRõRRñt delFightPowerRíRò((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytRefreshSkillFightPowerByDel3s          cCsdS(N((Rï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytCalcPassiveBuffAttrIsc CsRg}d}|jƒ}tjdtj|ƒtjd||ƒx€|jƒD]r\}}t|||ƒtjƒ}|j    ƒ||_
|tj |_ |tj |_ |j|ƒ||7}qPWtjƒ}    |    j    ƒ|tj |    _|tj |    _t|ƒ|    _||    _tj||    ƒt|ƒ}
t||ƒ||
kr\tj||
ƒn|jtjdtjƒ} | |jtjdtjƒtj 7} || krò|} t|tj| tj tjƒt|tj| tj tjƒntjd|| |
f|ƒt j!|ƒt"j#|t$j%|ƒ|
|krNt&j'|ƒndS(NisÕ½Á¦¹¦Äܵã: %ss Ä£¿éÕ½Á¦: %ss1×ÜÕ½Á¦: %s, ÀúÊ·×î¸ßÕ½Á¦: %s, beforeFightPower=%s((R°RRRœR)R}tSetMFPFightPowerR\ttagMCModuleFightPowerR…tMfpTypeRÎt
FightPowert FightPowerExR(ttagMCModuleFightPowerInfotTotalFightPowertTotalFightPoweExRUtMFPCnttMFPListR_R`Rït SetFightPowerRbtDR_FightPowerChangeInfoRátDef_PDict_FightPower_HighesttDef_PDictType_FightPowertDef_PDict_FightPower_HighestExRäRttUpdatePlayerFPTotalBillboardR.R/RLtDef_Campaign_Type_FightPowerREtOnPlayerFightPowerChange( RïRR_t mfpDataListR³RƒRít
fightPowertmfpDatatmfpInfoRôthighestFightPower((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR<UsR  
      
         
   c CsÀ|j}|jƒ}tjdƒ}t|ƒ}tjd||ƒ|jƒtj    kr’|j
t j ƒ}||7}tjd||f|ƒn|t j }|t j}|jt jdƒ}    |jt jdƒ}
|    sâ|
r*t|tj|
ttjƒ|    ƒ}tjd||
|    f|ƒnt|dƒ}t|ƒ|kr¼t||ƒttjd|ƒƒ} |j| ƒtjd| |ƒ|jƒjƒ} | r¼| j| ƒq¼ndS(Nt    MoveSpeeds¹¦ÄÜÒÆ¶¯ËÙ¶ÈÖµ: speed=%ss     Æï³Ë״̬¸½¼ÓÖµ: %s, speed=%sis;    buffÓ°ÏìºóËÙ¶ÈÖµ: speed=%s,buffSpeedPer=%s,buffSpeed=%ss(¹«Ê½¼ÆËãºóÒÆ¶¯ÆµÂÊ: moveSpeed=%s ºÁÃë/¸ñ(RÀR°R«RltGetSpeedNotBuffRRR0R¨R1R    RœtDef_PlayerKey_SpeedHorseR÷RùR„R!R#RLRðRRHRÕRÐRfRgRhtSetSpeedt    GetPetMgrt GetFightPet( RïRƒRRƒtmoveSpeedFormattspeedt
speedHorsetbuffBattleAttrtbuffBattleNolineAttrt    buffSpeedt buffSpeedPert    moveSpeedtfightPet((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__RefreshMoveSpeed„s4      
   (   cCs\|j}tj|ƒ}tjdƒ}|s3dnttjd|ƒƒ}|j|ƒdS(Nt AtkIntervali(    RÀR¤t GetAtkSpeedR«RlRfRgRhtSetAtkInterval(RïRtatkSpeedRtt atkInterval((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__SetAtkInterval±s     $ cCsC|j}|jƒ}tjd|ƒtj|ƒtj|ƒdS(Ns!Start RefreshPlayerActionState!!!(RÀR°RRtOperControlManagertClearObjActionStateR_tCalcBuffer_ActionState(RïRRƒ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRžÀs
      cCsW|j}|jƒsdStj|ƒ}tj|ƒ}||krStj|ƒndS(N(RÀt    GetInitOKR¤R¥RšR›(RïRt curPlayerHPtcurPlayerMaxHP((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt __RestoreHPMPÑs      cCsð|j}|jƒitjtj6tjƒjƒtj6tjƒjƒtj    6tjƒjƒtj
6tj tj 6tj tj 6tjddƒtj6}xmtdtjƒD]Y}|tjtjtjgkrÕq«n||krçdn||}tj|||ƒq«W|jƒtjkr0|jtjƒn|jƒsL|jtƒnt||jtj t!j"ƒƒt#||jtj t!j$ƒƒt%||jtj t!j&ƒƒt'||jtj t!j(ƒƒt)||jtj t!j*ƒƒtS(NtYinjiii(+RÀtClearBattleEffectRœtDef_BaseAtkSpeedR
RRRïtTYPE_Calc_AttrFightExpRatetTYPE_Calc_AttrGameExpRatetTYPE_Calc_AttrPetExpRateRðtTYPE_Calc_HitSucessRatetTYPE_Calc_CurePerR«RltTYPE_Calc_YinjiTimeR>RñtTYPE_Calc_AttrHPtTYPE_Calc_AttrMPtTYPE_Calc_ProDefRR½t GetPickupDisttDef_RolePickupItemDistt SetPickupDistt GetCanAttackt SetCanAttackRtSetMetalRátDef_PDict_AddPointValueRLRbtSetWoodRctSetWaterRdtSetFireRetSetEarthRf(RïRt initAttrDictRHRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRæís2    
         cCsG|j}tj|jƒ|jƒƒtjkrC|jtjƒndS(N(RÀR+tGetAreaTypeByMapPosRRR¨t    gatNormalt SetAreaType(RïR((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytInitMapBuffStates    'cCsì|j}tjƒjƒ}|tjkrQ|jƒ}|jƒ}|jƒ}n$|j    ƒ}|j
ƒ}|j ƒ}|dkr¬t |dƒtj d||jƒƒdS||jƒkrÕtj|||ƒdSt||||ƒdS(NitObjectMapNonentitysÈËÎïÖØÉúµØÍ¼ID = %sÒì³£!(RÀRR)R§R¨R©R­R¥R¦tGetFBRebornMapIDtGetFBRebornPosXtGetFBRebornPosYR9R.R°RªR^Re(RïRR R¶R¡R¢((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetToBornPlace*s$           cCsÇ|j}tj|ƒt|ƒ|jƒt|ƒtj|ƒ|jƒt    j
|ƒdkrst    j |dƒnt j |ƒ|j|ƒt jƒjƒ}t|ƒt    j|ƒtj|ƒdS(Ni(RÀR<RtReSetPlayerStatet#_PlayerControl__PlayerDeadClearBuffR!R"R#tClearUseSkillRecR¤R¥RÏRtClearPlayerPosCounttSetPlayerDeadCntRRtClearPyPlayerStatet MirrorAttackt OnPlayerDead(RïRRÆ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR[s      
 
 
 
 
  cCswt|tjttjƒƒƒtj|tjƒd}|o_|jƒj    ƒ|jƒj
ƒksfdS|j |ƒdS(Ni( RäRœtDef_Player_Dict_DeadTimeR#ttimeR5R¯tDef_SkillID_ReviveTiredR¸t
GetSkillLVt GetSkillMaxLVtNotifyPlayerDeadTime(RïRtfindBuff((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRUs *! cCs–tj|tjƒd}|r’|jƒjƒ|jƒjƒkr’|jtjƒr’|jtj    ƒ}t
j ƒ}||_ t j||ƒq’ndS(Ni(R5R¯RœR[R¸R\R]RátDef_PDict_IsAddReviveTiredRYR\ttagMCPlayerDeadTimetDeadTimeR_R`(RïRR_tlastDeadTimeTicktpackData((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR^¾s*     cCsç|j}tjƒjƒ}t||jƒt|ƒt||jƒt|ƒt||jƒt|ƒt||j    ƒt|ƒt||j
ƒt|ƒt||j ƒt|ƒt||j ƒt|ƒt||j ƒt|ƒdS(N(RÀRRRRhRitClearBuffByDieRkRlRmRgRnRoRp(RïRRÆ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__PlayerDeadClearBuffÎs    (0R¾R¿R7RÀRÂRðRÅRÇRRLtDef_ViewExpType_MissionRRÙRÌRßRRôRRŽRRsRÑRÔRÓR.RáRÞR7RØRRÙR9R£R÷RúRûR<R€R‚RžRÑRæRKRPRRUR^RR(((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRéNsT        
            ƒ     –         Y    ;    ,         )             ÿP            `        (               /    -                /        1    4    /    c    Csú|jƒ}d}g}tjƒj|ƒ}x³||jƒkrâ|j|ƒ}|s{tjd||ƒ|d7}q0n|r||ƒr|d7}q0n|j|j    ƒj
ƒƒ|rÒ|j |j    ƒƒn|j |ƒq0Wt j|||ƒdS(Nis###Íæ¼ÒÇå¿Õbuffʧ°Ü,Ë÷Òý = %si(R°RtGetPassiveEffManagert GetPassiveEfft GetBuffCounttGetBuffRR.R(R¸t
GetSkillIDt DelBuffInfotDeleteBuffByIndexR_tClearBuffEffectBySkillIDList(    Rt    buffStatet funcClearBuffRÆR2R+tbuffSkillIDListt
passiveEfftcurBuff((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRhås& 
 
cCs |jƒ}|jƒt@dkS(Ni(R¸tGetDieContinuetDef_Buff_Clear_Die(Rttskill((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRe s cCs |jƒ}|jƒt@dkS(Ni(R¸RutDef_Buff_Clear_Disconnect(RtRw((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRjs c    CsJtjƒ}|j|ƒsFtjd||jƒƒt|dƒtS|j|ƒ}tj||j    ƒƒs~t|dƒtS|j
|ƒt j kr§t|dƒtSt ||ƒsºtSt|ƒ}tjdƒ}d}xB|jƒD]4\}}||krqèn||krtS|}qèW|dkrFt|d||gƒtStS(Ns###·Ç·¨µØÍ¼Êý¾Ý£¬mapID: %sRLtEnemy_State_No_TranstCarry_lhs_306641tTransportMapLineCheckitCarry_yeqian_0(RR)RîR8R°R9RtGetCountryByMapIDtIsSameCountry_Namet
GetCountryR’R¨R©t CanEnterMaptGetPlayerLineIDR÷RøR}R(    RR¸R»t
mapCountryt    mapLineIDtmapLineCheckDicttcanEnterLineIDRCt    mapIDList((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytCheckTagCountrys6  
 
 cCst|||ƒstStS(N(tCheckLVCanEnterMapRR(RR¸t    isShowSys((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR€[scCstjƒjƒj|ƒ}|s%dS|jƒ}|jƒ|krc|r_t|d|gƒntS|jƒ}|r‰t||ƒ r‰tSt    S(Nt Carry_hwj35_0(
RR§t
GetChinMapt
GetMapByIDRÚR9Rt GetTreasureIDt    IsMapOpenR(RR¸R‰tmapDatatenterLVt openMapStep((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRˆjs  cCstS(N(R(RR‘((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRŽ|scCs„|jƒ}|tjkr,t|dƒtS|jƒrE|jƒn|tjkrat    |ƒnt
j |tj tj ƒs€tStS(NR(RÇRœR!R9RRµR-R¨RüRÈR)tIsObjCanDoActiontDef_Obj_ActState_ServerActt oalTransmitR(RR'((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR¦…s      cCsZ|jƒrdS|s+tjƒjƒ}ntj|tj|ƒrVt|ƒj    ƒndS(N(
R?RRRR¾RÉRœtDef_SkillID_LimitSuperBuffRéRÔ(RRÆ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR¤s  cCs¹tjƒjƒ}|jƒ}|tjkr0n$|tjkrBn|tjkrTn|tjkrpt    |ƒn|j
ƒ}|tj kržt j |tƒnt|ƒ|jdƒdS(N(RRRRÇR¨tpaTradeRÊt paGameEventRÍRÎR0R1R2R3RR¼RøR7(RRÆRÒtcurPlayerVehicle((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRQ´s    
 cCs$|jƒstS|jƒr tStS(N(R,Rt GetIsLoginOffR(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt__CanPullPlayerÝs
  cCs=|jƒtjkrtS|jƒr)tS|jƒr9tStS(N(RÇR¨RËRRµt IsBattleStateR(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytIsPlanStateNullês  
cCs‡tj}|tjjƒkr"dS|jƒj|ƒ}tjj|ƒtj}t    j
|ƒ|j |ƒ}|j |ƒ|j ƒdS(N(R¨trptItemRœtDef_Type_CanBuyPack_PlayerDictRjR³R´R„tDef_PlayerPackDict_Index_Keyt
ItemCommontGetPackInitCountRátSetCounttSync_PackCanUseCount(RRetcurPacktkeyNametcount((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt Init_ItemPacks     
cCs‡tj}|tjjƒkr"dS|jƒj|ƒ}tjj|ƒtj}t    j
|ƒ|j |ƒ}|j |ƒ|j ƒdS(N(R¨t rptWarehouseRœRžRjR³R´R„RŸR R¡RáR¢R£(RReR¤R¥R¦((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytInit_Warehouses     
cCsŒtj}|jƒj|ƒ}tj|ƒ}|tjjƒkrqtjj    |ƒtj
}||j |ƒ7}n|j |ƒ|j ƒdS(N(RLtrptHeroR³R´R R¡RœRžRjR„RŸRáR¢R£(RReR¤t    initCountR¥((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt Init_HeroPack4s     
cCs?|jƒjtjƒ}|jtjtjƒƒ|jƒdS(N(R³R´RLt rptTreasureR¢R R¡R£(RR¤((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytInit_TreasurePackFs
cCs€tjj|ƒtj}|dkr:tjd|ƒdS|jƒj|ƒ}tj    |j
|ƒ}|j |ƒ|j ƒdS(NsInit_Pack Error type=%s( RœRžR„RŸR7RR8R³R´tDef_PackCnt_WeaponCoatRáR¢R£(RReR¥R¤R¦((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytInit_CabinetCountByTypeRs  
c Cs«|rÏ|rÏ|j|ƒ}tj||ƒ}|jtjdƒ}|jtjdƒ}|jtjdƒ}    |jtjdƒ}
|    rÏ|
tj    krÏ||krÏt
j d||||
f|j ƒƒt SnxÕtjj|iƒjƒD]¸}|jtjdƒ} |jtjdƒ}|jtjdƒ}    |jtjdƒ}
|j|| ƒ}|    rë|
tj    krë||krët
j d|| ||
f|j ƒƒt SqëWtS(Nis4%s»î¶¯Íæ¼ÒÕýÔÚ²ÎÓëÖÐ! cfgID=%s,actID=%s,stateJoin=%ss1%sÍæ¼ÒÕýÔÚ²ÎÓëÖÐ! actNum=%s,actID=%s,stateJoin=%s(RáR¦tGetPlayerCrossActInfoR„RLt    ActKey_IDt ActKey_CfgIDt ActKey_StatetActKey_StateJointActStateJoin_EndRRR°RR:tg_operationActionDictRNt ActKey_ActNumR( RtactNametactIDKeyt crossActNamet crossActIDKeyt playerActIDtactInfotactIDtcfgIDRåt    stateJointactNum((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytIsInOperationActioncs, !    "!    cCsetjƒ}xRt|jƒƒD]>}|j|ƒ}|dks|jƒ rSqnt|ƒqWdS(N(RR=R>R_R`R7R,RÒ(RGRHR((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytRefreshOperationAction_ExpRates cCsdt|ƒ}|jƒ}|tj|ƒ7}|tj|tjƒ7}|tj    |ƒ7}t
j j t jiƒ}|j t jƒrÓtjd|j t jƒƒ}|rÓ|jƒ|jƒkrÓ||jƒ7}qÓn|jƒtjgkr||jtjƒ7}ntdtj|ƒdƒ}||tj7}||kr`|jtj|ƒ|j |ƒndS(Nt
ActExpRateii(!tGetPlayerExpRatetGetFightExpRateR0tGetWorldAverageLvExpRateR¯tGetPrivilegeValueRœtVIPPrivilege_FightExpRatetPlayerGoldInvesttGetAddFightExpRateR:R·R„RLtOperationActionName_ExpRateR´R«RR³RÚt
GetLVLimitt GetAddExpRateRªtDef_FBMapID_FamilyInvadeR    tDef_PlayerKey_TeamExpRateRHRÏtGetAreaRewardMultipleRðR RátSync_CurExpRate(Rt totalExpRatet fightExpRatetactExpRateInfot actExpIpyDatatmapExpAddMultiple((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRÒŒs$   cCs|jtjƒS(N(R    RœRá(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRƦsc Cs*t|ƒ}|dkr|S|jƒ}xût|jƒƒD]ç}|j|ƒ}|jƒ}xÃt|jƒƒD]¯}|j    |ƒ}|j
ƒ}    |    dkr Pn|    t j krµqon|j dƒ}
|j dƒ} |j dƒ} | t jkso| rþqon| td|ƒ@ro||
8}qoqoWq;W|S(sA »ñÈ¡ÊÜÏÞ¹¦ÄÜ×ܾ­Ñé±¶ÂÊ
    @param limitType: ÊÜÏ޵ŦÄÜÀàÐÍ
    iiiN(RÆR7RmR>RjRkR¸R%tGetEffectCountt    GetEffectt GetEffectIDRœR3RétEffCalcType_LinePlusRã( Rt    limitTypeRÔRpRHRtRÀtjt    curEffectteffectIDt
effExpRatetcalcTypetlimitTypeValue((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetLimitExpRate§s,      cCsdS(N((RRätlogIndexttagIDtparRŒ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytDataServerMoneyLogÑscCs(|j||tj|tj|ƒdS(sG ·¢ËÍ0418°ü
    @param boardCast: ÊÇ·ñ¹ã²¥ÖÜÎ§Íæ¼Ò£¬Ò»¶¨»á·¢¸ø×Ô¼º
    N(RñRLRÎ(Rt    inputTypeRït    boardCast((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRñçs$cCs%|j||tj|tjƒdS(N(tSendGameServerRefreshStateRLRÎ(RRéRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRëîs!cCs,t||ƒ|jƒ}|dkrT|tdtjƒB}|tdtjƒB}nÇ|dkry|tdtjƒB}n¢|dkræ|tdtjƒ@r´|tdtjƒA}n|tdtjƒ@r|tdtjƒA}qn5|tdtjƒ@dkr|tdtjƒA}nt||ƒdS(s? ÉèÖÃÊÇ·ñ½ûÑÔ
    @param value: 0-½â½û£»1-½ûÑÔ£»2-½ûÉ豸£»3-½âÉ豸
    
    ½ûÉ豸Á÷³Ì
    1.ÏÈÉèÖÃ2֪ͨǰ¶ËдÈë½ûÉ豸¼Ç¼£¨Ç°¶Ë´¦Àíµ±Îª2ʱ±¾µØÉ豸±ê¼ÇΪ½ûÉ豸£© 
    2.ÔÙÉèÖÃ1£¬´Ëʱǰºó¶Ë״̬¾ùΪ1£¬¼´½ÇÉ«½ûÑÔ
    
    ½â½ûÉ豸Á÷³Ì
    1.ÏÈÉèÖÃ3֪ͨǰ¶Ëɾ³ý½ûÉ豸¼Ç¼
    2.ÔÙÉèÖÃ0£¬´Ëʱǰºó¶Ë״̬¾ùΪ1£¬¼´½ÇÉ«½â½û
    iiiiN(t__SetGMForbidenTalkValuet GetAccStateRãRœtDef_PysForbidTalkDevicetDef_PysForbidTalktSetPlayerAccState(RRïtaccState((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetGMForbidenTalkôs       cCsQ|j|ƒt|tj|ƒt|tj|ƒtjd||jƒƒdS(Ns__SetGMForbidenTalkValue %s(RòRëRLtCDBPlayerRefresh_ForbidenTalkRñRRR°(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRìs
 cCs^|j|ƒ|j|ƒt|tj|ƒt|tj|ƒtjd||jƒƒdS(NsSetPlayerAccState %s(    t SetAccStatet SetExAttr17RëRLtCDBPlayerRefresh_ExAttr17RñRRR°(RRñ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRðs   cCs¨|jƒtdtjƒ@rOtjd|jƒƒt|dƒt|dƒnU|jƒtdtjƒ@r‘tjd|jƒƒt|dƒnt    |t
j dƒdS(NisÉÏÏßʱ½ÇɫΪ±»É豸½ûÑÔ״̬!isÉÏÏßʱ½ÇɫΪ±»½ûÑÔ״̬!i( RíRãRœRîRR.R°RìRïRñRLRó(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytDoGMForbidenTalkOnLogin"s cCs
|jƒS(N(t
GetExAttr1(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetMainLevelPassValue2scCs|j|ttƒdS(N(t
SetExAttr1R(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetMainLevelPassValue3scCs#t|||ƒ}t||ƒ|S(N(tComMainLevelValueRû(Rt    chapterIDtlevelNumtwaveRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetMainLevelPassInfo4s cCstt|ƒƒS(N(tGetMainLevelValueRù(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetMainLevelPassInfo<scCs
|jƒS(N(t
GetExAttr2(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetMainLevelNowValueBscCs|j|ttƒdS(N(t
SetExAttr2R(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetMainLevelNowValueCscCs#t|||ƒ}t||ƒ|S(N(RüR(RRýRþRÿRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetMainLevelNowInfoDs cCstt|ƒƒS(N(RR(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetMainLevelNowInfoLscCs|d|d|S(Ni'id((RýRþRÿ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRüQscCs/|d}|dd}|d}|||fS(Ni'id((RïRýRþRÿ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRRs
 
cCsdS(Ni((R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR†YscCst||d|ƒS(Ni
(tSetTeamCheckState(Rt joinReqCheckt inviteCheck((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetTeamCheckStateEx\scCsdS(N((Rt
checkState((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR    ]scCs:|d|}||jƒkr6|j|ttƒndS(Niè(t
GetExAttr3t
SetExAttr3RR(RRžR¡Rï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR9_scCs|jƒdS(Niè(R(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetFBFuncMapIDdscCs|jƒdS(Niè(R(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR“escCs
|jƒS(N(t
GetExAttr5(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR®hscCs-|j|ttƒ|s)tj|ƒndS(N(t
SetExAttr5RRRERF(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetCrossMapIDiscCs|jƒdS(Niè(t GetExAttr14(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetCustomMapIDpscCs|jƒdS(Niè(R(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetCustomLineIDqscCs:|d|}||jƒkr6|j|ttƒndS(Niè(Rt SetExAttr14RR(RRžRCRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetCustomMapsscCs|jƒtj|jƒS(N(t
GetExAttr6RœRÎRÚ(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRÚzscCsn|tj}t|tjtjƒ}||jƒkrH|j|ƒn||jƒkrj|j|ƒndS(N(RœRÎRKRLRÚRëRt
SetExAttr6(Rt totalSilverRt silverPoint((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRë{s cCsdS(Ni((R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetVIPExpireTime…scCsdS(N((Rt
expireTime((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetVIPExpireTime†scCs
|jƒS(N(t
GetExAttr9(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetVIPLVUpTime‰scCs|j|ttƒS(N(t
SetExAttr9RR(RtlvUpTime((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetVIPLVUpTimeŠscCs
|jƒS(N(t GetExAttr10(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetChatBubbleBoxscCs|j|ttƒS(N(t SetExAttr10RR(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetChatBubbleBoxŽscCst|ƒt|tjƒS(N(RÞRàRLR0(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR‘scCs
|jƒS(N(t GetExAttr11(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRÞ’scCs|jt|tjƒttƒS(N(t SetExAttr11RKRœRLR(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRí“scCs;t|tjƒ}|dkr7t|tj|dƒndS(Nit PayCoinOnDay(RàRLR0R1RÝ(RRl((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR+”s cCs|jƒ}|jƒS(N(RÞt GetCurGradID(RtcurDienstgradMgr((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt
GetTitleIDœs cCs$t|jƒƒ}|r |dSdS(Ni(t GetCoupleInfoR°(Rt
coupleInfo((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetCoupleID¡scCs$t|jƒƒ}|r |dSdS(NiRy(R/R°(RR0((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetCoupleName¤scCs$t|jƒƒ}|r |dSdS(Nii(R/R°(RR0((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetCoupleJob§scCs$t|jƒƒ}|r |dSdS(Nii(R/R°(RR0((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetBridePriceMaxIDªscCs|tjkrdStj|S(N(R:t g_coupleInfo(Rƒ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR/­scCs-|stjj|dƒn |tj|<dS(N(R:R5RAR7(RƒR0((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetCoupleInfo±s cCs
|jƒS(N(t GetExAttr13(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR~¹scCsitjƒrdStjƒ}|s&dS|jƒ}||kre|j|ttƒtjd|ƒndS(Ns(¸üÐÂÍæ¼ÒËùÊô·þÎñÆ÷×éID: serverGroupID=%s(RR­tGetServerGroupIDR7t SetExAttr13RRR(RRŽtplayerServerGroupID((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytUpdPlayerServerGroupIDºs    cCs)|jƒ}|d|dd|dgS(Nièi@B(t GetExAttr15(Rtattr15((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetFaceEquipIndexListÈs cCs |j|ƒS(N(t SetExAttr15(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetFaceEquipIndexËscCsdS(N((R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetLingGenMaxIndexÍscCs
|jƒS(N(t GetExAttr18(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetRealmDifficultyÑsc    Cs¤|jƒ}|r–t|ƒ}|jƒ}||krTtjd||f|ƒdStjddƒ}||kr–tjd|||f|ƒdSntjd||ƒtjddƒ}|jƒ}||krkx3t    j
j ƒD]"}||krä|j |ƒqäqäW|r[|t    j
kr/gt    j
|<nt    j
|}||kr[|j |ƒq[nt||ƒn|jƒ|kr |j|ƒt|tj|ƒndS(s( ÉèÖþ³½çÄѶȵȼ¶£¬ÈκεØÍ¼¾ù¿ÉÑ¡Ôñ
    s3µ±Ç°¾³½çµÍÓÚ¾³½çÄѶȣ¬ÎÞ·¨Ñ¡Ôñ! curRealmLV(%s) < %sNtRealmDifficultyisBrealmDifficulty(%s) needRealmLV(%s) not in difficultyRealmList(%s)s&SetRealmDifficulty: realmDifficulty=%si(R°tGetDifficultyRealmLVRÕRRR«R¬R8RªR:RMRNROR(RRBt SetExAttr18RñRLtCDBPlayerRefresh_ExAttr18(    RtrealmDifficultyRƒt needRealmLVt
curRealmLVtdifficultyRealmListtrealmMapIDListRžR|((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetRealmDifficultyÒs<               cCs|dS(Niè((RH((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyREûscCsHt|ƒ}|sdS|jƒ}tjddƒ}||krDdS|S(NiRDi(RCRªR«R¬(RRHRžRL((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetMapRealmDifficultyüs   cCs
|jƒS(N(t GetExAttr19(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetLeaveFamilyTimeExscCs*|j|ƒ|jtj|dtƒdS(Ni(t SetExAttr19RñRLtCDBPlayerRefresh_ExAttr19R(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetLeaveFamilyTimeEx    s cCsdS(Ni((R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetPrestigescCsdS(N((RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetPrestigescCs|jƒtj|jƒS(N(tGetFightPowerExRœRÎRï(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRïscCs%|j|tj|tjtƒdS(N(RRœRÎR(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRs!cCs@|jtj||tjƒ|jtj||tjƒdS(N(R RœtDef_PlayerKey_MFPFightPowerRÎt Def_PlayerKey_MFPFightPowerPoint(RRíR((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRüscCs/|jtj|ƒtj|jtj|ƒS(N(R    RœRXRÎRW(RRí((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetMFPFightPower scCs@|jtj||tjƒ|jtj||tjƒdS(N(R RœtDef_PlayerKey_MFPExRÎtDef_PlayerKey_MFPExPoint(RRíR((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRl%scCs/|jtj|ƒtj|jtj|ƒS(N(R    RœR[RÎRZ(RRí((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR,+scCs@|jtj||tjƒ|jtj||tjƒdS(N(R RœtDef_PlayerKey_MFPSkillRÎtDef_PlayerKey_MFPSkillEx(RRíR((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRê0scCs/|jtj|ƒtj|jtj|ƒS(N(R    RœR]RÎR\(RRí((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR+6scCs|jƒdS(Ni(RS(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR?scCsR|jtjƒtjkrA|jƒ|kr=|j|ƒndS|j|ƒdS(N(RáRœt#Def_Player_Dict_AutoCheckHack_StatetDef_AutoCheck_State_DangertGetSightR8(Rtsight((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR8Gs  cCs8|jƒ}|jtjƒtjkr4|d9}n|S(Nid(tGetAtkIntervalRáRœR^R_(RR'((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRbVs
   cCsm|s
dS||}tj|tjƒ}|r\tj|}t||ttjƒƒ}nt||ƒdS(N(R¯RÉRœtVIPPrivilege_NPCSPRateRðR#RtPlayerAddZhenQi(RtnpcSPt    killCountt
addSPValuet    npcSPRatet    npcHPRate((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytAddZhenQiByKillNPC`s
   tunknowncCsG|dkrtSt|ƒ}||}||kr6tSt||ƒtS(Ni(Rt    GetZhenQiRt    SetZhenQi(RR²t canOverbrimtisSysMsgRjt    eventDatat    curZhenQiRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRdss  
  cCsg|dkrtSt|ƒ}td||ƒ}|dkrVtjd||fƒtSt||ƒtS(NiscurZhenQi = %s, lostValue = %s(RRlRHRR8RRm(Rt    lostValueRjRpRqRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytPlayerLostZhenQiŽs    cCsdS(Ni((R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRl¢scCsdS(N((Rt totalZhenQi((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRm£scCsa|tjtjgkrdStj||ƒ}|s8dStj|tj}|j|ƒ}|j    ƒ}t
|||ƒ}d}    t ||ƒ|j ƒ}
|jtj |ƒ} |j|ƒ} d} | r×| d} nxƒt|ƒD]u}||d}|j|ƒ}d|krPn|ddkr-qän|d| }||
| krOPn|    d7}    qäW|    S(Nit
OnlineTimei(R¨RR¨tPlayerExpandPackCfgMgrtGetExpandPackCfgRœRžRŸRátGetCanAddCountRKR?RXRctGetTotalAddAttrInfoByCountR%R7(RRetopenCntRÆtcfgObjR¥tcurCounttmaxCanAddCounttforCountR¦t
onlineTimetlastAutoOpenPackTickt lastInfoObjt notOnlineTimeRHt    nextCounttinfoObjtneedOnlineTime((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetCanAutoOpenPackCount·s:     cCsdS(Ni((R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetHolidayExpRateõscCsdS(Ni((R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetWorldBossExpRateüscCs|jƒ}t|ƒS(N(RÚtGetTotalExpByPlayerLv(RRÇ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetLVUPTotalNeedExps cCs t|ƒ}|sdSt|ƒS(Ni(RžR(tplayerLVR ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR‰ s cCs1tjd|ƒ}|s-tjd|ƒdS|S(NRs¾­Ñé±íÒì³£  lv= %s(R«RRR8(R‹R ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRžs
cCs%|s
dS|jƒtj|jƒS(Ni(RÜRœRÎR(R ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRscCsPtjddƒ}|jƒ}tj|ƒ}|s7dSt||jƒƒ}|S(Nt PlayerMaxLVii(R«RlRÕRZtGetRealmIpyDataRKtGetLVMax(RRöRJt realmIpyDatat playerMaxLV((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRÞs cCs%|jƒ}t|ƒ}t||ƒS(N(RÚRtGetRealPlayerLvEx(Rt realPlayerLvRõ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetRealPlayerLv+s  cCsWt|ƒ}|s|Sx:||krR|d7}||8}t|ƒ}|sPqqW|S(Ni(R‰(R’Rõt needTotalExp((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR‘6s 
 
 cCs-|jƒ}|jƒ}|tj|}|S(N(RÝRÜRœRÎ(RRüRþttotalMasterExp((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRFs  cCsb|tj}|tj}|jƒ|kr<|j|ƒn|jƒ|kr^|j|ƒndS(N(RœRÎRÜRòRÝRó(RRüRýRþ((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR7Ms  cCsEtjƒ}|jƒ||_||_||_tj||ƒdS(N(R\ttagMCNotifySelectObjR…RJtIDtisSelectR_R`(RtobjTypetobjIDR˜t    selectObj((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSync_SelectObj_s 
            cCsŠ|dkrdStjj|gƒ}|gkr5dStj|d|df}||}x)|dD]}tj|i||6ƒqeWdS(Niii(RœtItemEffect_AttrDictR„tDef_CalcAttrIndexDictRt AddDictValue(R›RïRúRàR+tattrDictRH((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR`ns  
cCse|dkrdStjj|gƒ}|gkr5dSx)|dD]}tj|i||6ƒq@WdS(Ni(RœRR„RRŸ(R›Rït allAttrDictRàRH((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytCalcAttrDict_TypeEx~s  cCs)|jtj|ƒ}t||jƒƒS(N(RáRœtDef_PDict_TrainRealmLVRHRÕ(RtfuncTypet trainRealmLV((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetTrainRealmLVRealªscCs(t|tj||ƒt||ƒdS(N(RäRœR£tSyncTrainRealmLV(RR¤R¥((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetTrainRealmLV­s cCsÝ|dkrtddƒ}n    |g}g}xh|D]`}|jtj|ƒ}| ri|dkriq4ntjƒ}||_||_|j    |ƒq4W|s¢dStj
ƒ}||_ t |j ƒ|_ tj||ƒdS(Nii
i (R7R%RáRœR£R\ttagMCTrainRealmLVtFuncTypet TrainRealmLVR(ttagMCTrainRealmLVInfoR RURR_R`(RR¤tsyncFuncTypeListRtfTypeR¥tlvInfoR((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR§±s&                    cCs|jtjƒS(N(RáRœtDef_PDict_CharmLV(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt
GetCharmLVÈscCs*t|tj|ƒt|tj|ƒdS(N(RäRœR°RñRLtCDBPlayerRefresh_CharmLV(RtcharmLV((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt
SetCharmLVÉscCsitjtjtjtjtjg}d}x(|D] }||jtj|ƒ7}q1W||j    ƒ7}|S(Ni(
RLRbRcRdReRfRáRœRBRè(Rt
attrIDListt curTotalPointRº((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetTotalLingGenPointÎs $ cCs|jtjƒS(N(R    RœtDef_PlayerKey_Metal(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRNØscCs|jtj|ƒdS(N(R RœR¸(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRAÙscCs|jtjƒS(N(R    RœtDef_PlayerKey_Wood(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRSÚscCs|jtj|ƒdS(N(R RœR¹(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRCÛscCs|jtjƒS(N(R    RœtDef_PlayerKey_Water(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRVÜscCs|jtj|ƒdS(N(R RœRº(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRDÝscCs|jtjƒS(N(R    RœtDef_PlayerKey_Fire(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRYÞscCs|jtj|ƒdS(N(R RœR»(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyREßscCs|jtjƒS(N(R    RœtDef_PlayerKey_Earth(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR\àscCs|jtj|ƒdS(N(R RœR¼(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRFáscCs|jtjƒS(N(R    RœtDef_PlayerKey_MetalQualityLV(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRRãscCs|jtj|ƒdS(N(R RœR½(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRQäscCs|jtjƒS(N(R    RœtDef_PlayerKey_WoodQualityLV(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRUåscCs|jtj|ƒdS(N(R RœR¾(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRTæscCs|jtjƒS(N(R    RœtDef_PlayerKey_WaterQualityLV(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRXçscCs|jtj|ƒdS(N(R RœR¿(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRWèscCs|jtjƒS(N(R    RœtDef_PlayerKey_FireQualityLV(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR[éscCs|jtj|ƒdS(N(R RœRÀ(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRZêscCs|jtjƒS(N(R    RœtDef_PlayerKey_EarthQualityLV(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR^ëscCs|jtj|ƒdS(N(R RœRÁ(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR]ìscCs|jtjƒS(N(R    RœtDef_PlayerKey_SpeedValueNotBuff(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRñscCs|jtj|ƒdS(N(R RœRÂ(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSpeedNotBuffòscCs|jtjƒS(N(R    RœtDef_PlayerKey_SpeedValue(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRÕôscCs-|jtj|ƒt|tj|tƒdS(N(R RœRÄRñRLtCDBPlayerRefresh_SpeedValueR(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRÐõscCs
|jƒS(N(tGetBattleValEx2(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetAtkBackHPPerýscCs|j|ƒdS(N(tSetBattleValEx2(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetAtkBackHPPerscCsdS(Ni((R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetAtkBackMPPerscCsdS(N((RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetAtkBackMPPer    scCs
|jƒS(N(tGetBattleValEx3(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetReduceSkillCDPer scCs |j|ƒS(N(tSetBattleValEx3(Rt    reducePer((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetReduceSkillCDPer scCs/tjƒjƒtjkr+|jtjƒSdS(Ni(RR)R§R¨R©R    RœtDef_PlayerKey_CommMapExpRate(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetCommMapExpRatescCs|jtj|ƒS(N(R RœRÑ(RtexpRate((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetCommMapExpRatescCs|jtjƒS(N(R    RœtDef_PlayerKey_NPCHurtAddPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetNPCHurtAddPerscCs*|jtj|ƒt|tj|ƒdS(N(R RœRÕRñRLtCDBPlayerRefresh_NPCHurtAddPer(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetNPCHurtAddPerscCs|jtjƒS(N(R    RœtDef_PlayerKey_JobAHurtAddPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetJobAHurtAddPerscCs|jtj|ƒdS(N(R RœRÙ(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetJobAHurtAddPerscCs|jtjƒS(N(R    RœtDef_PlayerKey_JobBHurtAddPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetJobBHurtAddPer!scCs|jtj|ƒdS(N(R RœRÜ(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetJobBHurtAddPer"scCs|jtjƒS(N(R    RœtDef_PlayerKey_JobCHurtAddPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetJobCHurtAddPer$scCs|jtj|ƒdS(N(R RœRß(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetJobCHurtAddPer%scCs|jtjƒS(N(R    RœtDef_PlayerKey_NPCAtkReducePer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetNPCAtkReducePer)scCs|jtj|ƒdS(N(R RœRâ(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetNPCAtkReducePer*scCs|jtjƒS(N(R    RœtDef_PlayerKey_JobAAtkReducePer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetJobAAtkReducePer,scCs|jtj|ƒdS(N(R RœRå(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetJobAAtkReducePer-scCs|jtjƒS(N(R    RœtDef_PlayerKey_JobBAtkReducePer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetJobBAtkReducePer/scCs|jtj|ƒdS(N(R RœRè(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetJobBAtkReducePer0scCs|jtjƒS(N(R    RœtDef_PlayerKey_JobCAtkReducePer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetJobCAtkReducePer2scCs|jtj|ƒdS(N(R RœRë(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetJobCAtkReducePer3scCs|jtjƒS(N(R    RœtDef_PlayerKey_LuckyHitReduce(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetLuckyHitReduce7scCs*|jtj|ƒt|tj|ƒdS(N(R RœRîRñRLtCDBPlayerRefresh_LuckyHitReduce(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetLuckyHitReduce8scCs|jtjƒS(N(R    RœtDef_PlayerKey_GreatHitReducePer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetGreatHitReducePer=scCs|jtj|ƒdS(N(R RœRò(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetGreatHitReducePer>scCs|jtjƒS(N(R    Rœt Def_PlayerKey_IgnoreDefReducePer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetIgnoreDefReducePerAscCs|jtj|ƒdS(N(R RœRõ(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetIgnoreDefReducePerBscCs|jtjƒS(N(R    Rœt Def_PlayerKey_LuckyHitRateReduce(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetLuckyHitRateReduceFscCs*|jtj|ƒt|tj|ƒdS(N(R RœRøRñRLt#CDBPlayerRefresh_LuckyHitRateReduce(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetLuckyHitRateReduceGscCs|jtjƒS(N(R    Rœt Def_PlayerKey_GreatHitRateReduce(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetGreatHitRateReduceKscCs|jtj|ƒdS(N(R RœRü(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetGreatHitRateReduceLscCs|jtjƒS(N(R    Rœt!Def_PlayerKey_IgnoreDefRateReduce(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetIgnoreDefRateReduceOscCs*|jtj|ƒt|tj|ƒdS(N(R RœRÿRñRLt$CDBPlayerRefresh_IgnoreDefRateReduce(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetIgnoreDefRateReducePscCs|jtjƒS(N(R    RœtDef_PlayerKey_FuhaoHitRate(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetFuhaoHitRateVscCs|jtj|ƒdS(N(R RœR    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetFuhaoHitRateWscCs|jtjƒS(N(R    RœtDef_PlayerKey_BleedDamage(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetBleedDamageZscCs*|jtj|ƒt|tj|ƒdS(N(R RœR    RñRLtCDBPlayerRefresh_BleedDamage(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetBleedDamage[scCs|jtjƒS(N(R    RœtDef_PlayerKey_BossFinalHurtPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetBossFinalHurtPer`scCs*|jtj|ƒt|tj|ƒdS(N(R RœR
    RñRLt!CDBPlayerRefresh_BossFinalHurtPer(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetBossFinalHurtPerascCs|jtjƒS(N(R    RœtDef_PlayerKey_FinalHurt(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetFinalHurtfscCs*|jtj|ƒt|tj|ƒdS(N(R RœR    RñRLtCDBPlayerRefresh_FinalHurt(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetFinalHurtgscCs|jtjƒS(N(R    RœtDef_PlayerKey_FinalHurtReduce(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetFinalHurtReducekscCs*|jtj|ƒt|tj|ƒdS(N(R RœR    RñRLt CDBPlayerRefresh_FinalHurtReduce(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetFinalHurtReducelscCs|jtjƒS(N(R    RœtDef_PlayerKey_BossIDHurt(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetBossIDHurtpscCs|jtj|ƒdS(N(R RœR    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetBossIDHurtqscCs|jtjƒS(N(R    RœtDef_PlayerKey_BossIDHurtAddPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetBossIDHurtAddPersscCs|jtj|ƒdS(N(R RœR    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetBossIDHurtAddPertscCs|jtjƒS(N(R    RœtDef_PlayerKey_DropEquipDoCount(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetDropEquipDoCountvscCs|jtj|ƒdS(N(R RœR    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetDropEquipDoCountwscCs|jtjƒS(N(R    RœtDef_PlayerKey_BaseAtkAddPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetBaseAtkAddPerzscCs|jtj|ƒdS(N(R RœR    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetBaseAtkAddPer{scCs|jtjƒS(N(R    RœtDef_PlayerKey_BaseMaxHPAddPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetBaseMaxHPAddPer}scCs|jtj|ƒdS(N(R RœR"    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetBaseMaxHPAddPer~scCs|jtjƒS(N(R    RœtDef_PlayerKey_BaseDefAddPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetBaseDefAddPer€scCs|jtj|ƒdS(N(R RœR%    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetBaseDefAddPerscCs|jtjƒS(N(R    RœtDef_PlayerKey_BaseHitAddPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetBaseHitAddPerƒscCs|jtj|ƒdS(N(R RœR(    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetBaseHitAddPer„scCs|jtjƒS(N(R    RœtDef_PlayerKey_BaseMissAddPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetBaseMissAddPer†scCs|jtj|ƒdS(N(R RœR+    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetBaseMissAddPer‡scCs|jtjƒS(N(R    RœtDef_PlayerKey_FaQiMaxHPPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetFaQiMaxHPPer‰scCs|jtj|ƒdS(N(R RœR.    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetFaQiMaxHPPerŠscCs|jtjƒS(N(R    RœtDef_PlayerKey_FaQiAtkPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetFaQiAtkPerŒscCs|jtj|ƒdS(N(R RœR1    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetFaQiAtkPerscCs|jtjƒS(N(R    RœtDef_PlayerKey_FaQiDefPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetFaQiDefPerscCs|jtj|ƒdS(N(R RœR4    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetFaQiDefPerscCs|jtjƒS(N(R    RœtDef_PlayerKey_GodWeaponMaxHPPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetGodWeaponMaxHPPer’scCs|jtj|ƒdS(N(R RœR7    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetGodWeaponMaxHPPer“scCs|jtjƒS(N(R    RœtDef_PlayerKey_GodWeaponAtkPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetGodWeaponAtkPer•scCs|jtj|ƒdS(N(R RœR:    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetGodWeaponAtkPer–scCs|jtjƒS(N(R    RœtDef_PlayerKey_StoneMaxHPPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetStoneMaxHPPer˜scCs|jtj|ƒdS(N(R RœR=    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetStoneMaxHPPer™scCs|jtjƒS(N(R    RœtDef_PlayerKey_StoneAtkPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetStoneAtkPer›scCs|jtj|ƒdS(N(R RœR@    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetStoneAtkPerœscCs|jtjƒS(N(R    RœtDef_PlayerKey_HPCureEnhance(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetHPCureEnhancežscCs|jtj|ƒdS(N(R RœRC    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetHPCureEnhanceŸscCs|jtjƒS(N(R    RœtDef_PlayerKey_OnlyFinalHurt(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetOnlyFinalHurt¢scCs*|jtj|ƒt|tj|ƒdS(N(R RœRF    RñRLtCDBPlayerRefresh_OnlyFinalHurt(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetOnlyFinalHurt£scCs|jtjƒS(N(R    RœtDef_PlayerKey_PVPAtkBackHP(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetPVPAtkBackHP©scCs|jtj|ƒdS(N(R RœRJ    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetPVPAtkBackHPªscCs|jtjƒS(N(R    RœtDef_PlayerKey_HitSucessRate(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetHitSucessRate­scCs|jtj|ƒdS(N(R RœRM    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetHitSucessRate®scCs|jtjƒS(N(R    RœtDef_PlayerKey_MissSucessRate(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetMissSucessRate±scCs|jtj|ƒdS(N(R RœRP    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetMissSucessRate²scCs|jtjƒS(N(R    RœtDef_PlayerKey_CurePer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt
GetCurePerµscCs|jtj|ƒdS(N(R RœRS    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt
SetCurePer¶scCs|jtjƒS(N(R    RœtDef_PlayerKey_BeHurtPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetBeHurtPer¹scCs|jtj|ƒdS(N(R RœRV    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetBeHurtPerºscCs|jtjƒS(N(R    RœtDef_PlayerKey_TitleMaxHPPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetTitleMaxHPPer½scCs|jtj|ƒdS(N(R RœRY    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetTitleMaxHPPer¾scCs|jtjƒS(N(R    RœtDef_PlayerKey_TitleAtkPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetTitleAtkPerÀscCs|jtj|ƒdS(N(R RœR\    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetTitleAtkPerÁscCs|jtjƒS(N(R    RœtDef_PlayerKey_TitleDefPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetTitleDefPerÃscCs|jtj|ƒdS(N(R RœR_    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetTitleDefPerÄscCs|jtjƒS(N(R    RœtDef_PlayerKey_FaceMaxHPPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetFaceMaxHPPerÇscCs|jtj|ƒdS(N(R RœRb    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetFaceMaxHPPerÈscCs|jtjƒS(N(R    RœtDef_PlayerKey_FaceAtkPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetFaceAtkPerÊscCs|jtj|ƒdS(N(R RœRe    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetFaceAtkPerËscCs|jtjƒS(N(R    RœtDef_PlayerKey_FaceDefPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetFaceDefPerÍscCs|jtj|ƒdS(N(R RœRh    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetFaceDefPerÎscCs|jtjƒS(N(R    RœtDef_PlayerKey_FacePicMaxHPPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetFacePicMaxHPPerÑscCs|jtj|ƒdS(N(R RœRk    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetFacePicMaxHPPerÒscCs|jtjƒS(N(R    RœtDef_PlayerKey_FacePicAtkPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetFacePicAtkPerÔscCs|jtj|ƒdS(N(R RœRn    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetFacePicAtkPerÕscCs|jtjƒS(N(R    RœtDef_PlayerKey_FacePicDefPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetFacePicDefPer×scCs|jtj|ƒdS(N(R RœRq    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetFacePicDefPerØscCs|jtjƒS(N(R    RœtDef_PlayerKey_HorseSkinMaxHPPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetHorseSkinMaxHPPerÛscCs|jtj|ƒdS(N(R RœRt    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetHorseSkinMaxHPPerÜscCs|jtjƒS(N(R    RœtDef_PlayerKey_HorseSkinAtkPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetHorseSkinAtkPerÞscCs|jtj|ƒdS(N(R RœRw    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetHorseSkinAtkPerßscCs|jtjƒS(N(R    RœtDef_PlayerKey_HorseSkinDefPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetHorseSkinDefPeráscCs|jtj|ƒdS(N(R RœRz    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetHorseSkinDefPerâscCs|jtjƒS(N(R    RœtDef_PlayerKey_HorseAtkPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetHorseAtkPeråscCs|jtj|ƒdS(N(R RœR}    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetHorseAtkPeræscCs|jtjƒS(N(R    RœtDef_PlayerKey_HorseMaxHPPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetHorseMaxHPPeréscCs|jtj|ƒdS(N(R RœR€    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetHorseMaxHPPerêscCs|jtjƒS(N(R    RœtDef_PlayerKey_PetAtkPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetPetAtkPeríscCs|jtj|ƒdS(N(R RœRƒ    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetPetAtkPerîscCs|jtjƒS(N(R    RœtDef_PlayerKey_HorseTrainAttrPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetHorseTrainAttrPerñscCs|jtj|ƒdS(N(R RœR†    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetHorseTrainAttrPeròscCs|jtjƒS(N(R    RœtDef_PlayerKey_PetTrainAttrPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetPetTrainAttrPerõscCs|jtj|ƒdS(N(R RœR‰    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetPetTrainAttrPeröscCs|jtjƒS(N(R    RœtDef_PlayerKey_GuardTrainAttrPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetGuardTrainAttrPerùscCs|jtj|ƒdS(N(R RœRŒ    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetGuardTrainAttrPerúscCs|jtjƒS(N(R    RœtDef_PlayerKey_WingTrainAttrPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetWingTrainAttrPerýscCs|jtj|ƒdS(N(R RœR    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetWingTrainAttrPerþscCs|jtjƒS(N(R    Rœt(Def_PlayerKey_PeerlessWeaponTrainAttrPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetPeerlessWeaponTrainAttrPerscCs|jtj|ƒdS(N(R RœR’    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetPeerlessWeaponTrainAttrPerscCs|jtjƒS(N(R    Rœt)Def_PlayerKey_PeerlessWeapon2TrainAttrPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetPeerlessWeapon2TrainAttrPerscCs|jtj|ƒdS(N(R RœR•    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetPeerlessWeapon2TrainAttrPerscCs|jtjƒS(N(R    RœtDef_PlayerKey_LianTiAttrPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetLianTiAttrPer    scCs|jtj|ƒdS(N(R RœR˜    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetLianTiAttrPer
scCsdS(Ni((R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt
GetAttr160 scCsdS(N((RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt
SetAttr160 scCs|jtjƒS(N(RáRœtDef_Player_Dict_FamilyEmblemID(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetFamilyEmblemIDscCst|tj|ƒdS(N(RäRœR    (RtemblemID((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetFamilyEmblemIDscCs
|jƒS(N(tGetReceivedSalary(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetFamilyMemberLVscCs|j|ƒ|j|ƒdS(N(tSetReceivedSalarytSetFamilyMemberLV(RtfmLV((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR¤    s  cCs|jtjƒS(N(R    RœtDef_PlayerKey_AffairSpeedPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetAffairSpeedPerscCs|jtj|ƒdS(N(R RœR¦    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetAffairSpeedPerscCs|jtjƒS(N(R    RœtDef_PlayerKey_FamilyBossHurtPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetFamilyBossHurtPer scCs|jtj|ƒdS(N(R RœR©    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetFamilyBossHurtPer!scCs|jtjƒS(N(R    RœtDef_PlayerKey_FamilyWarHPPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetFamilyWarHPPer$scCs|jtj|ƒdS(N(R RœR¬    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetFamilyWarHPPer%scCs|jtjƒS(N(R    RœtDef_PlayerKey_FamilyWarAtkPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetFamilyWarAtkPer(scCs|jtj|ƒdS(N(R RœR¯    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetFamilyWarAtkPer)scCs|jtjƒS(N(R    RœtDef_PlayerKey_FamilySitExpPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRî,scCs|jtj|ƒdS(N(R RœR²    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetFamilySitExpPer-scCs|jtjƒS(N(R    RœtDef_PlayerKey_StoneBasePer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetStoneBasePer0scCs|jtj|ƒdS(N(R RœR´    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetStoneBasePer1scCs|jtjƒS(N(R    RœtDef_PlayerKey_RealmBasePer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetRealmBasePer4scCs|jtj|ƒdS(N(R RœR·    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetRealmBasePer5scCs|jtjƒS(N(R    RœtDef_PlayerKey_WingHPPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetWingHPPer8scCs|jtj|ƒdS(N(R RœRº    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetWingHPPer9scCs|jtjƒS(N(R    RœtDef_PlayerKey_SuiteBasePer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetSuiteBasePer<scCs|jtj|ƒdS(N(R RœR½    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSuiteBasePer=scCs|jtjƒS(N(R    RœtDef_PlayerKey_PlusBaseAtkPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetPlusBaseAtkPer@scCs|jtj|ƒdS(N(R RœRÀ    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetPlusBaseAtkPerAscCs|jtjƒS(N(R    RœtDef_PlayerKey_AddBackHPPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetAddBackHPPerFscCs|jtj|ƒdS(N(R RœRà   (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetAddBackHPPerLscCs|jtjƒS(N(R    RœtDef_PlayerKey_ReduceBackHPPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetReduceBackHPPerSscCs|jtj|ƒdS(N(R RœRÆ    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetReduceBackHPPerYscCs|jtjƒS(N(R    RœtDef_PlayerKey_AttrAtkerFreezed(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetAtkerFreezed]scCs|jtj|ƒdS(N(R RœRÉ    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetAtkerFreezed^scCs|jtjƒS(N(R    RœtDef_PlayerKey_AttrAddAngry(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetAddAngryascCs|jtj|ƒdS(N(R RœRÌ    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetAddAngrybscCs|jtjƒS(N(R    Rœt Def_PlayerKey_SkillAtkRateReduce(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetSkillAtkRateReduceescCs*|jtj|ƒt|tj|ƒdS(N(R RœRÏ    RñRLt#CDBPlayerRefresh_SkillAtkRateReduce(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSkillAtkRateReducefscCs|jtjƒS(N(R    RœtDef_PlayerKey_AttrDamagePVP(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetDamagePVPjscCs*|jtj|ƒt|tj|ƒdS(N(R RœRÓ    RñRLtCDBPlayerRefresh_DamagePVP(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetDamagePVPkscCs|jtjƒS(N(R    Rœt!Def_PlayerKey_AttrDamagePVPReduce(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetDamagePVPReduceoscCs*|jtj|ƒt|tj|ƒdS(N(R RœR×    RñRLt CDBPlayerRefresh_DamagePVPReduce(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetDamagePVPReducepscCs|jtjƒS(N(R    RœtDef_PlayerKey_AttrDamagePVE(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetDamagePVEtscCs*|jtj|ƒt|tj|ƒdS(N(R RœRÛ    RñRLtCDBPlayerRefresh_DamagePVE(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetDamagePVEuscCs|jtjƒS(N(R    RœtDef_PlayerKey_AttrDamagePerPVP(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetDamagePerPVPzscCs*|jtj|ƒt|tj|ƒdS(N(R RœRß    RñRLtCDBPlayerRefresh_DamagePerPVP(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetDamagePerPVP{scCs|jtjƒS(N(R    Rœt$Def_PlayerKey_AttrDamagePerPVPReduce(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetDamagePerPVPReduce~scCs*|jtj|ƒt|tj|ƒdS(N(R RœRã    RñRLt#CDBPlayerRefresh_DamagePerPVPReduce(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetDamagePerPVPReducescCs|jtjƒS(N(R    RœtDef_PlayerKey_AttrHurtPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt
GetHurtPer„scCs|jtj|ƒdS(N(R RœRç    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt
SetHurtPer…scCs|jtjƒS(N(R    RœtDef_PlayerKey_AttrXPRestorePer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetXPRestorePerˆscCs|jtj|ƒdS(N(R RœRê    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetXPRestorePer‰scCs|jtjƒS(N(R    Rœt"Def_PlayerKey_AttrShieldMPCostRate(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetShieldMPCostRateŒscCs|jtj|ƒdS(N(R RœRí    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetShieldMPCostRatescCs|jtjƒS(N(R    RœtDef_PlayerKey_AttrDamChanceDef(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetDamChanceDefscCs*|jtj|ƒt|tj|ƒdS(N(R RœRð    RñRLtCDBPlayerRefresh_DamChanceDef(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetDamChanceDef‘scCs
|jƒS(N(t
GetExAttr4(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRu–scCs|j|tƒdS(N(t
SetExAttr4R(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRv—scCs
|jƒS(N(t GetExAttr16(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRåœscCs<t|tjƒ}|j|ƒ|jtj|dtƒdS(Ni(RKRœRLt SetExAttr16RñRLtCDBPlayerRefresh_MaxProDefR(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRts cCs|jtjƒS(N(R    RœtDef_PlayerKey_AttrProDefHPPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRs¤scCs|jtj|ƒdS(N(R RœRù    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetProDefHPPer¥scCs|jtjƒS(N(R    RœtDef_PlayerKey_AttrProDefAbsorb(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetProDefAbsorbªscCs|jtj|ƒdS(N(R RœRû    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetProDefAbsorb«scCs|jtjƒS(N(R    RœtDef_PlayerKey_AttrPetMinAtk(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetPetMinAtk°scCs|jtj|ƒdS(N(R RœRþ    (RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetPetMinAtk±scCs|jtjƒS(N(R    RœtDef_PlayerKey_AttrPetMaxAtk(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetPetMaxAtk²scCs|jtj|ƒdS(N(R RœR
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetPetMaxAtk³scCs|jtjƒS(N(R    RœtDef_PlayerKey_PetSkillAtkRate(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetPetSkillAtkRate½scCs|jtj|ƒdS(N(R RœR
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetPetSkillAtkRate¾scCs|jtjƒS(N(R    RœtDef_PlayerKey_AttrPerLVAtk(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetPerLVAtkÁscCs|jtj|ƒdS(N(R RœR
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetPerLVAtkÂscCs|jtjƒS(N(R    RœtDef_PlayerKey_AttrPerLVMaxHP(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetPerLVMaxHPÄscCs|jtj|ƒdS(N(R RœR
 
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetPerLVMaxHPÅscCs|jtjƒS(N(R    RœtDef_PlayerKey_AttrDropEquipPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetDropEquipPerÈscCs|jtj|ƒdS(N(R RœR
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetDropEquipPerÉscCstj|tjƒS(N(RtGetCopyFuncAttrValueRœR(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt
GetFuncDefÌscCstj|tj|ƒdS(N(RtSetCopyFuncAttrValueRœR(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt
SetFuncDefÍscCs|jtjƒS(N(R    RœtDef_PlayerKey_NormalHurt(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetNormalHurtÐscCs|jtj|ƒdS(N(R RœR
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetNormalHurtÑscCs|jtjƒS(N(R    RœtDef_PlayerKey_NormalHurtPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetNormalHurtPerÓscCs|jtj|ƒdS(N(R RœR
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetNormalHurtPerÔscCs|jtjƒS(N(R    RœtDef_PlayerKey_FabaoHurt(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetFabaoHurtÖscCs|jtj|ƒdS(N(R RœR
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetFabaoHurt×scCs|jtjƒS(N(R    RœtDef_PlayerKey_FabaoHurtPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetFabaoHurtPerÙscCs|jtj|ƒdS(N(R RœR
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetFabaoHurtPerÚscCs|jtjƒS(N(R    RœtDef_PlayerKey_LostYinjiTime(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetLostYinjiTimeÝscCs*|jtj|ƒt|tj|ƒdS(N(R RœR 
RñRLtCDBPlayerRefresh_YinjiTime(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetLostYinjiTimeÞscCs|jtjƒS(N(R    RœtDef_PlayerKey_YinjiCnt(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetYinjiCntãscCs*|jtj|ƒt|tj|ƒdS(N(R RœR$
RñRLtCDBPlayerRefresh_YinjiCnt(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetYinjiCntäscCs|jtjƒS(N(R    RœtDef_PlayerKey_TheFBSkillsCD(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetTheFBSkillsCDéscCs|jtj|ƒdS(N(R RœR(
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetTheFBSkillsCDêscCs|jtjƒS(N(R    RœtDef_PlayerKey_BurnValue(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetBurnValueìscCs|jtj|ƒdS(N(R RœR+
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt SetBurnValueíscCs|jtjƒS(N(R    RœtDef_PlayerKey_BurnTimePer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetBurnTimePerïscCs|jtj|ƒdS(N(R RœR.
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetBurnTimePerðscCs|jtjƒS(N(R    RœtDef_PlayerKey_SubSpeedPer(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetSubSpeedPeròscCs|jtj|ƒdS(N(R RœR1
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSubSpeedPeróscCs|jtjƒS(N(R    RœtDef_PlayerKey_SkillAddPer1(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetSkillAddPer1öscCs|jtj|ƒdS(N(R RœR4
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSkillAddPer1÷scCs|jtjƒS(N(R    RœtDef_PlayerKey_SkillAddPer2(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetSkillAddPer2øscCs|jtj|ƒdS(N(R RœR7
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSkillAddPer2ùscCs|jtjƒS(N(R    RœtDef_PlayerKey_SkillAddPer3(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetSkillAddPer3úscCs|jtj|ƒdS(N(R RœR:
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSkillAddPer3ûscCs|jtjƒS(N(R    RœtDef_PlayerKey_SkillAddPer4(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetSkillAddPer4üscCs|jtj|ƒdS(N(R RœR=
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSkillAddPer4ýscCs|jtjƒS(N(R    RœtDef_PlayerKey_SkillAddPer5(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetSkillAddPer5þscCs|jtj|ƒdS(N(R RœR@
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSkillAddPer5ÿscCs|jtjƒS(N(R    RœtDef_PlayerKey_SkillAddPer6(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetSkillAddPer6scCs|jtj|ƒdS(N(R RœRC
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSkillAddPer6scCs|jtjƒS(N(R    RœtDef_PlayerKey_SkillAddPer7(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetSkillAddPer7scCs|jtj|ƒdS(N(R RœRF
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSkillAddPer7scCs|jtjƒS(N(R    RœtDef_PlayerKey_SkillReducePer1(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetSkillReducePer1scCs|jtj|ƒdS(N(R RœRI
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSkillReducePer1scCs|jtjƒS(N(R    RœtDef_PlayerKey_SkillReducePer2(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetSkillReducePer2scCs|jtj|ƒdS(N(R RœRL
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSkillReducePer2    scCs|jtjƒS(N(R    RœtDef_PlayerKey_SkillReducePer3(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetSkillReducePer3
scCs|jtj|ƒdS(N(R RœRO
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSkillReducePer3 scCs|jtjƒS(N(R    RœtDef_PlayerKey_SkillReducePer4(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetSkillReducePer4 scCs|jtj|ƒdS(N(R RœRR
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSkillReducePer4 scCs|jtjƒS(N(R    RœtDef_PlayerKey_SkillReducePer5(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetSkillReducePer5scCs|jtj|ƒdS(N(R RœRU
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSkillReducePer5scCs|jtjƒS(N(R    RœtDef_PlayerKey_SkillReducePer6(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetSkillReducePer6scCs|jtj|ƒdS(N(R RœRX
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSkillReducePer6scCs|jtjƒS(N(R    RœtDef_PlayerKey_SkillReducePer7(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetSkillReducePer7scCs|jtj|ƒdS(N(R RœR[
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetSkillReducePer7scCs|jtjƒS(N(R    RœtDef_PlayerKey_ZhuxianRate(R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetZhuXianRatescCs|jtj|ƒdS(N(R RœR^
(RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetZhuXianRatescCsdS(Ni((R((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytGetZhuXianReducePerscCsdS(N((RRï((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSetZhuXianReducePerscCsdS(N((RRetallAttrListEquip((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytCalcFuncPackItem"s c
CsXt||ƒ|dkr"i}n|dkr7i}n|tj}tj|krÀt|jƒ|tjttj    ƒƒ}|j
tj dƒ||tj <|j
tj dƒ||tj <ntj |kr    |jƒ|tj }|j
tjdƒ||tj<n|jƒ}|tjkr4itj|<ntj|}    |||g|    |<dS(Ni(R¢R7RœR÷tTYPE_Calc_PerLVAtkR#RÚRRLRðR„RRtTYPE_Calc_PerLVMaxHPRR°R:RH(
RRÐRúREtcustomAttrDictRûtaddAtkRÔRƒt funcAttrDict((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRmGs&            * ##  cCs1gtdƒD] }i^q }i}i}t|tƒrF|g}n%t|tƒr^|}n |||fS|jƒ}|tjkr“|||fStj|}x|D]y}||kr¿q§n||\}    }
} x1t|ƒD]#\} } |    | }t| |ƒqßW|j    | ƒt||
ƒq§W|||fS(Ni(
R%t
isinstanceR#RÉR°R:RHRjRéRÛ(RRÐRqtattrListRERg
t funcIndexListRƒRi
RLRdtfuncCustomAttrDictRHR t curAttrDict((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRçds,           
 cCs@|jƒ}|tjkrdStj|}|j|dƒdS(N(R°R:RHRAR7(RRÐRƒRi
((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyR¢€s   cCs]gtdƒD] }i^q }x7|D]/}x&tjD]}t||||ƒq6Wq&W|S(Ni(R%RœtCalcAttrIndexListRé(Rk
RqRtaListRH((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRðˆs
 cCs~xw|jƒD]i\}}||kr2|||<q ||}|tjkrhdd|d|||<q ||||<q WdS(Ni'(R}RœtTYPE_Calc_DeclineList(tdict1tdict2R‘RïtaValue((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRés  
cCsNi|jƒd6|jƒd6tj|ƒd6|jƒd6|jƒd6}|S(NtAtkRnRkRoRp(t    GetMaxAtktGetDefR¤RštGetHittGetMiss(Rt lordAttrDict((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt GetLordAttrs-cCs±tj|ƒrn|tjtjtjgkrn|jƒ}tjj    |iƒ}||||f<|tj|<n|dkrŽ|j
||ƒdS|j |t |tj ƒ|ƒdS(Ni(REtIsNeedProcessCrossPlayerRœtDef_PDict_FightPower_TotaltDef_PDict_FightPower_TotalExRËR°R:tg_crossPlayerDictChangeInfoR„tNomalDictDelPropertytNomalDictAddPropertyRKtDef_UpperLimit_DWordEx(RR‘RïtdTypeRƒt
changeDict((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRä¥s  cCs†g}tjƒ}|jƒ||_||_||_|j|ƒtjƒ}|jƒt|ƒ|_    ||_
t j ||ƒdS(N( R\ttagMCSyncSingleBlessValueR…RJRýtMultipleR(ttagMCSyncBlessValueRUtTypeCntt    BlessInfoR_R`(Rt    blessTypeRïR(titemListt    valuePackR%((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pytSync_BlessValueµs 
              
    cCs¹|dkr;t|ƒ}|r;|}tjd|ƒq;n|j|ƒ|jƒjƒ}|rp|j|ƒnxBt|jƒƒD].}|j|ƒ}|s¤qƒn|j|ƒqƒWdS(Nis3¾³½çµØÍ¼×Ô¶¯ÉèÖÃÒÑÑ¡ÔñµÄ¾³½çÄѶÈÊÓÒ°: sightLevel=%s(    RNRRt SetSightLevelRRR%R&R'(Rt
sightLevelRHtrolePetRHt    curSummon((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyRÉs   (~RR*R_RœRR2R7R5RWR+R<R°RÔR R÷R¾R"R)RYRLRvRtR¤R¨R,R\R_RbRîRìRµRgR©RZR.R§RvR0RQRÏRRdR¹R»RCR,Rt ItemControlerRÒR«R«R:RãRpRSRúRýRØR¯R±R³RÉRnRURsRÞRR5RËR’R¦REtNPCHurtManagerR4RÅR½R˜RÍR·R¿RÁR&RÇRÃR”RËRzRÎR\R¤RBR‡RRZtjsontIPY_NotifyCodeListR„RvRxR!RR(R6R9RIRNRQRRR[R^ReRfRkRltDef_GiveMoney_MailRRxR{R:R–RšR R±R»RÁRÓRÎRæRàRêR½RïRðR¼RûRþRÈRRRR    RRR!R/R4RSR?RYRfR>RqRzR{R|R€RR‡RŸR½RéR7RRRïR.R>R´R3R‰RZReR[RmRiR£RÆRÈtDef_Team_GetExpScreenDistRÓRÔRâRæRðRèR÷RàRîRúRRRRR+R^R1R2RMRzRNRORPR—R‚RˆR›RœRR¡R¢R«R¦R±RÈR¬R¥RÑRÜRÏRÎRëRìRéRhReRjR‡R€RˆRŽR¦RÂRQRšRœR§R©R¬R®R°RÃRÄRÒRÆRäRèRñRëRòRìRðR÷RùRûRRRRRRRüRR†R R    R9RR“R®RRRRRÚRëRRR!R$R&R(RRÞRíR+R.R1R2R3R4R/R6R~R;R>R@RARCRMRERNRPRSRTRURïRRüRYRlR,RêR+RR8RbRjRdRsRlRmR†R‡RˆRŠR‰RžRRÞR“R‘RR7RœR`R¢R¦R¨R§R±R´R·RNRARSRCRVRDRYRER\RFRRRQRURTRXRWR[RZR^R]RRÃRÕRÐRÇRÉRÊRËRÍRÐRÒRÔRÖRØRÚRÛRÝRÞRàRáRãRäRæRçRéRêRìRíRïRñRóRôRöR÷RùRûRýRþR    R    R    R    R    R        R     R     R    R    R    R    R    R    R    R    R    R    R     R!    R#    R$    R&    R'    R)    R*    R,    R-    R/    R0    R2    R3    R5    R6    R8    R9    R;    R<    R>    R?    RA    RB    RD    RE    RG    RI    RK    RL    RN    RO    RQ    RR    RT    RU    RW    RX    RZ    R[    R]    R^    R`    Ra    Rc    Rd    Rf    Rg    Ri    Rj    Rl    Rm    Ro    Rp    Rr    Rs    Ru    Rv    Rx    Ry    R{    R|    R~    R    R    R‚    R„    R…    R‡    Rˆ    RŠ    R‹    R    RŽ    R    R‘    R“    R”    R–    R—    R™    Rš    R›    Rœ    Rž    R     R¢    R¤    R§    R¨    Rª    R«    R­    R®    R°    R±    RîR³    Rµ    R¶    R¸    R¹    R»    R¼    R¾    R¿    RÁ    R    RÄ    RÅ    RÇ    RÈ    RÊ    RË    RÍ    RΠ   RР   RÒ    RÔ    RÖ    RØ    RÚ    RÜ    RÞ    Rà    Râ    Rä    Ræ    Rè    Ré    Rë    Rì    Rî    Rï    Rñ    Ró    RuRvRåRtRsRú    Rü    Rý    Rÿ    R
R
R
R
R
R
R    
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R!
R#
R%
R'
R)
R*
R,
R-
R/
R0
R2
R3
R5
R6
R8
R9
R;
R<
R>
R?
RA
RB
RD
RE
RG
RH
RJ
RK
RM
RN
RP
RQ
RS
RT
RV
RW
RY
RZ
R\
R]
R_
R`
Ra
Rb
Rd
RmRçR¢RðRéR{
RäR
R(((slD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerControl.pyt<module>sö                                                                                                    3     & 
                $!
                          %            
                         6                 e                                @                                                    <    W    SQ o    
    2B             ( g     l        Œ    0                &                     &   8     0z    f    *              R    W    -                                                                             Èÿÿÿÿÿÿ    &        
    >                      )                                            *                                                                                                       
                                                                                                )                                                                         
            >            
                                              ,                     
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                            %