hwj35
2025-06-23 aa0f971ae9a59f0fd98d57b6c1d1663a270be92c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
Ðgc@sØddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd    „Zd
„Zd „Zd „Zd „Zd„Z ddddd„Z"d„Z#d„Z$d„Z%d„Z&d„Z'd„Z(d„Z)d„Z*d„Z+d„Z,dS(iÿÿÿÿNc
    Cs²tjƒrdS|jtjƒ}|s,dS|jtjƒ}|jtjƒ}tjddiƒ}|jtj    ƒ}|jtj
ƒ}t |||d|||dƒtjddiƒ}|jtj ƒ}|jtj ƒ}    t |||d||    |dƒtj|tj    dƒtj|tj dƒtj|tjdƒtj|tjdƒtj|tjdƒtj|tj
dƒtj|tj dƒt|ƒt|ƒdS(    NtCrossRealmPKAwarditPKCountt CrossServer1itWinCountt CrossServer2i(t    GameWorldt IsCrossServertNomalDictGetPropertytChConfigtDef_PDict_CrossPK_TotalScoretDef_PDict_CrossPK_ZoneIDtDef_PDict_CrossPK_SeasonIDt IpyGameDataPYtGetFuncEvalCfgtDef_PDict_CrossPK_TodayPKCountt&Def_PDict_CrossPK_DayPKCountAwardStatetSendDayPKAwardByMailtDef_PDict_CrossPK_TodayWinCountt'Def_PDict_CrossPK_DayWinCountAwardStatet PlayerControltNomalDictSetPropertytDef_PDict_CrossPK_TodayBuyCounttDef_PDict_CrossPK_ItemAddCounttDef_PDict_CrossPK_RefreshCounttSyncCrossRealmPKPlayerInfotSyncCrossRealmPKAwardState(
t    curPlayert
totalScoretzoneIDtseasonIDtdayPKCountAwardDictt
dayPKCounttdayPKCountAwardStatetdayWinCountAwardDictt dayWinCounttdayWinCountAwardState((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pyt DoPlayerOnDay's2 
 
cCs‰tjƒrdStjƒjtjƒ}tjƒjtjƒ}| sN| rRdSt|||ƒs…t|ƒt    |ƒt
|ƒndS(N( RRt GetGameWorldtGetGameWorldDictByKeyt ShareDefinet!Def_Notify_WorldKey_CrossPKZoneIDt#Def_Notify_WorldKey_CrossPKSeasonIDt__CheckResetPlayerCrossPKDataRRtSyncCrossRealmPKHisSeasonInfo(Rt    mapZoneIDt mapSeasonID((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pyt DoPlayerLoginIs 
 
 cCs&tjƒjtjtjƒtjkS(N(RR%R&R't)Def_Notify_WorldKey_CrossDailyActionStatetDailyActionID_CrossReamPKRtDef_Action_Open(((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pytIsCrossRealmPKMatchStateXscCsptjƒ}tjd|||ƒ}|sEtjdd||ƒ}n| rl|rltjd||fƒn|S(NtCrossRealmPKDanAwardts.ÕÒ²»µ½¶Îλ½±ÀøÅäÖÃ: seasonID=%s, awardDanLV=%s(RtGetCrossZoneNameR tGetIpyGameDataNotLogtErrLog(Rt
awardDanLVtisLogt crossZoneNametdanLVAwardIpyData((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pytGetCrossPKDanAwardIpyData]s  cCsÛtjƒrdStjƒjtjƒ}tjƒjtjƒ}||kr]tjdƒdStjd||fƒ|}tj    ƒ}xNt
|j ƒƒD]:}|j |ƒ}tj |ƒsÃq™nt|||ƒq™WdS(Ns(¿ç·þPKÈü¼¾ÐÅÏ¢ÓëµØÍ¼µ±Ç°ÖµÏàͬ£¬²»´¦Àí£¡s+¿ç·þPKÈü¼¾ÐÅÏ¢±ä¸ü: mapSeasonID=%s,value=%s(RRR%R&R'R(R)tDebugLogtLogtGetPlayerManagertxranget OnlineCounttOnlineAttIsNormalPlayerR*(tvalueR,R-t playerManagertiR((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pytOnCrossRealmPKSeasonChangegs     c Cs°|jƒ}|jtjƒ}|jtjƒ}||krZtjd||f|ƒdStjd||f|ƒtj    |tj|ƒ|jtj
ƒ}|jtj ƒ}tjd|||||f|ƒxt |dƒD]}t ||tƒ}    |    sqân|    jƒ}
|
sqântd|ƒ|@rQtjd||f|ƒqând} tjd|||
f|ƒi| d    6|d
6|d 6|d 6|d 6|d6} tjd|g|
||gd| ƒt|||| t| ƒqâW|jtjƒ r|rt|||tƒntj    |tjdƒtj    |tj
dƒtj    |tjdƒtj    |tjdƒtj    |tjdƒtj    |tjdƒtj    |tjdƒtj    |tjdƒtj    |tjdƒtj    |tjdƒtj    |tjdƒtj    |tj dƒtj    |tj!dƒtj    |tj dƒtj    |tjdƒtj    |tj|ƒtj    |tj|ƒt"|ƒt#|ƒt$j%|ƒtS(Ns:Íæ¼Ò¿ç·þPKÈü¼¾ÐÅÏ¢Ïàͬ£¬²»´¦Àí! mapSeasonID=%s,seasonID=%ssDÍæ¼Ò¿ç·þPKÈüÇøÈü¼¾ÐÅÏ¢²»Í¬! ´¦ÀíÏà¹ØÊý¾Ý! mapSeasonID=%s,seasonID=%ssx¿ªÊ¼ÐÂÈü¼¾£¬·¢·ÅÉÏÈü¼¾Î´ÁìÈ¡µÄ½±Àø£¬ÖØÖÃÈü¼¾Êý¾Ý! zoneID=%s,seasonID=%s,newSeasonID=%s,playerDanLV=%s,danLVAwardState=%siis=    ÒѾ­ÁìÈ¡¹ý¸Ã¶Îλ´ï±ê½±Àø!awardDanLV=%s,danLVAwardState=%stDanLVsR    Óʼþ²¹·¢Î´ÁìÈ¡µÄ¶Îλ´ï±ê½±Àø!awardDanLV=%s,danLVAwardState=%s,awardItemList=%st    EventNameRRR8tdanLVAwardStateR-t CrossServer3tdetaili(&t GetPlayerIDRRR
R RR=R>RRtDef_PDict_CrossPK_DanLVt!Def_PDict_CrossPK_DanLVAwardStateR@R<tFalsetGetDanLVAwardListtpowt SendMailByKeytDR_GetCrossPKAwardtTruet"Def_PDict_CrossPK_SeasonAwardStatetOnQueryCrossPKSeasonOrderAwardR    tDef_PDict_CrossPK_PKCounttDef_PDict_CrossPK_WinCounttDef_PDict_CrossPK_CWinCounttDef_PDict_CrossPK_CLoseCountRRRRRRRRRtFunctionNPCCommontShopItemOnCrossPKSeasonChange( RR,R-tplayerIDRRt playerDanLVRJR8R;t awardItemListt    eventNamet
mailDetail((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pyR*sh           %
 
 c
CsBtjƒj|ƒ}|jƒ}|jƒ}|j}tjd||f|ƒ|dkr»t|ƒsldS|jt    j
ƒ}t j ddƒ}|dks¨||krÅtjd||f|ƒnÏt d||ƒ}    t j ddƒ}
|
r|    |
krtjd|    |
f|ƒdStt jddƒƒ} t j dd    ƒ} tjd
||    | | f|ƒtj|| | t    jid d 6|    d 6ƒs”dStj|t    j
|dƒt|ƒni|d6tjƒjtjƒd6tjƒjtjƒd6|d6tj|ƒd6} tjtj| ƒtjdt| ƒ|ƒdS(Ns ¿ç·þPKÆ¥ÅäÇëÇó: type=%s,accID=%sitCrossRealmPKMatchRefreshisÃâ·ÑË¢ÐÂ: refreshCount=%s < %sis2¹ºÂòˢдÎÊýÒÑ´ïÿÈÕÉÏÏÞ! refreshBuyCount=%s >= %siisF¸¶·ÑË¢ÐÂ: refreshCount=%s,refreshBuyCount=%s,costMoney=%s,moneyType=%stRefreshtEventtrefreshBuyCountt requestTypeRRR^t
fightPowers#·¢ËÍÇëÇóÆ¥Åäµ½¿ç·þ·þÎñÆ÷ dataMsg=%s(RR?tGetPlayerByIndextGetAccIDRMtTypeR=t CheckCanMatchRRRR t
GetFuncCfgtmaxtevaltGetFuncCompileCfgRtPayMoneytDef_Cost_CrossRealmPKRRR%R&R'R)R(t GetFightPowertSendMsgToCrossServertClientServerMsg_PKMatchtstr(tindext
clientDatattickRtaccIDR^Rgt refreshCounttfreeRefreshCountMaxRftrefreshBuyCountMaxt    costMoneyt    moneyTypetdataMsg((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pytOnCrossRealmPKMatchËsD            , cCsü|jƒ}tjƒr,tjd|ƒdStjƒsLtj|dƒdStjƒj    ƒt
j kr{tjd|ƒdS|j ƒt
j ks¥tj|ƒdkr©dStjƒjtjƒdkrÛtjd|ƒdStƒsøtjd|ƒdStS(Ns¿ç·þ·þÎñÆ÷ÎÞ·¨·¢ÆðÆ¥Åä!tCrossMatching18s¸±±¾ÖУ¬ÎÞ·¨½øÐпç·þÆ¥Åä!iis2OnCrossRealmPKMatch ¿ç·þÈü¼¾Î´¿ªÆô£¬²»¿É½øÐÐÆ¥Å䣡s2OnCrossRealmPKMatch ¿ç·þÆ¥Åä먦Æô£¬²»¿É½øÐÐÆ¥Å䣡(RMRRR=tCrossRealmPlayertIsCrossServerOpenRt
NotifyCodetGetMapt GetMapFBTypet IPY_GameWorldtfbtNulltGetPlayerActiontpaDietGameObjtGetHPR%R&R't&Def_Notify_WorldKey_CrossPKSeasonStateR2RU(RR^((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pyRlös&   *    cCs“tjddƒ}|r|jtjƒ}|jtjƒ}|jtjƒ}||||krtjd||||f|j    ƒƒt
Snt S(NtCrossRealmPKMatchCountispPK´ÎÊý²»×㣬ÎÞ·¨·¢ÆðÆ¥Åä! todayPKCount=%s >= (dayFreeMatchCountMax=%s + todayBuyCount=%s + todayItemAddCount=%s)( R RmRRRRRRR=RMRPRU(RtdayFreeMatchCountMaxt todayPKCountt todayBuyCountttodayItemAddCount((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pytCheckHavePKCounts    c Cs@|jƒ}|\
}}}}}}}    }
} } ||k} tjd| |||||||    |
| f
|ƒtjtj|ƒƒ}t||||||    | |ƒs«dStjƒ}||_d|_    ||_
g|_ t |j ƒ|_ |
|_||_||_|    |_| |_t |jƒ|_tj||ƒdS(NsˆµØÍ¼ÊÕµ½¿ç·þPK½áËã: isWinner=%s,zoneID=%s,seasonID=%s,timeStr=%s,winnerID=%s,pkScore=%s,danLV=%s,cWinCount=%s,addScore=%s,tagPlayerID=%si(RMRR>tCheckTimeIsSameServerDayExtChangeTimeStrToNumt__DoAddPKOverDatatChPyNetSendPackttagGCCrossRealmPKOverInfotTimeStrtOverTypetWinnerIDt RoundWinnerIDtlent
RoundCounttAddScoretScoreRHtCWinCnttTagNamet
TagNameLent NetPackCommont SendFakePack(RtoverInfoR^RRttimeStrtwinnerIDtpkScoretdanLVt    cWinCounttaddScoret tagPlayerIDt tagPlayerNametisWinnertisTodaytoverPack((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pytCrossServerMsg_PKOverInfo#s, $     )!                                     cCsn|jƒ}tjƒjtjƒ}    |    |krNtjd|    |f|ƒdStjƒjtjƒdkr„tjd||ƒdStj    |t
j |ƒtj    |t
j |ƒtj    |t
j ||ƒtj    |t
j||ƒtj    |t
j|ƒtj    |t
j|ƒ|jt
jƒd}
tj    |t
j|
ƒtjd|||
f|ƒ|rÔ|jt
jƒd} tj    |t
j| ƒtj    |t
j|ƒtj    |t
jdƒtjd| |f|ƒnV|jt
jƒd} tj    |t
j| ƒtj    |t
jdƒtjd| |ƒ|rP|jt
jƒd} tj    |t
j| ƒtjd| |ƒ|r¹|jt
jƒd}tj    |t
j|ƒtjd    ||ƒntj|tjƒtj|t
jdƒtj|tj dƒtj|tj!dƒt"j#|t"j$dƒt%j&|t
j'ƒt(j)|t
j*dƒntjd
|ƒt+|ƒt,S( Ns:    ·Ç±¾Èü¼¾µÄ½áËãÐÅÏ¢£¬²»´¦Àí£¡curSeasonID=%s,seasonID=%sis#    Èü¼¾Òѹرգ¬²»´¦Àí£¡seasonID=%ss,    ¸üÐÂÊý¾Ý: danLV=%s,pkScore=%s,pkCount=%sis#    winner winCount=%s,cWinCount=%ss    loser cLoseCount=%ss1    Í¬Ò»ÌìµÄPK½áËãÔö¼Ó½ñÈÕPK´ÎÊý: todayPKCount=%ss(    Ôö¼Ó½ñÈÕÒÑ»ñʤ´ÎÊý: todayWinCount=%ss$    ²»Í¬ÌìµÄPK½áËã²»Ôö¼Ó½ñÈÕPK´ÎÊý! (-RMRR%R&R'R)R>RŽRRRR
R tDef_PDict_CrossPK_SeasonDanLVtDef_PDict_CrossPK_SeasonScoreR    RNRRXRYRZR[RRtPlayerActivitytAddDailyActionFinishCntR0tPlayerWeekPartytAddWeekPartyActionCnttDef_WPAct_CrossPKt PlayerSuccesstDoAddSuccessProgresstSuccType_FeastRedPack_CrossPKtSuccType_CrossPKt PlayerGubaotAddGubaoItemEffValuetGubaoEffType_CrossRealmPKtPlayerActGarbageSortingtAddActGarbageTaskProgresstDef_GarbageTask_CrossPKtPlayerTongTianLingtAddTongTianTaskValuetTTLTaskType_CrossPKRRU(RRRR«RªR¬R°R±R^t curSeasonIDtpkCounttwinCountt
cLoseCountR‘t todayWinCount((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pyR—>sZ  
cCswtjƒj|ƒ}|jƒ}|j}|j}tjƒrStjd|ƒdSt|ƒscdSt    |||ƒdS(Ns¿ç·þ·þÎñÆ÷ÎÞ·¨·¢Æð»úÆ÷È˽áËã!(
RR?RiRMtIsWint TagPlayerIDRR=R”t
SendPKOver(RwRxRyRR^R°R®((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pytOnCrossRealmPKRobotOvers           cCs|jƒ}i|d6|d6|d6tjƒjtjƒd6tjƒjtjƒd6tj|ƒd6|j    ƒd6|j
ƒd6|j ƒd    6|j ƒd
6t j|ƒd 6|jtjƒd 6|jtjƒd 6|jtjƒd6}tjtj|ƒtjdt|ƒ|ƒdS(NR^R®R°RtpkZoneIDt
playerNamet    playerJobtfacetfacePictrealmLVRhRªR«R¬sͬ²½¿ç·þ·þÎñÆ÷PK½áËã: %s(RMRR%R&R'R)R(RƒtGetCrossPlayerNametGetJobtGetFacet
GetFacePictGetOfficialRankRRsRRR    RNRZRttClientServerMsg_PKOverR=Rv(RR®R°R^R€((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pyRϏs&     ic
CsÓ| s| rAtjƒjtjƒ}tjƒjtjƒ}nd}i}| s[| rdd}n9tj|tj    |ƒtj|tj
|ƒ|dkrÚtj|tj |ƒ|dkrìtj|tj dƒqìn|j tj ƒ}i
|jƒd6|jƒd6tj|ƒd6|jƒd6|jƒd6|jƒd    6|jƒd
6|d 6|d 6|d 6}i|d6|d6|d6}    tjtj|    ƒt|ƒ|rÏ|ji|d6|d6|d6|d6ƒn|S(NR4szone season or state error.iRzR^RÒRÓRÔRÕRÖRªR«R¬tZoneIDtSeasonIDt
PlayerInfoRRterrorMsg(RR%R&R'R(R)RRRRNR    RZR[RRjRMRƒR×RØRÙRÚRÛRttClientServerMsg_PKBillboardRtupdate(
RR«RªR¬t
resultDictRRRàtplayerInfoDictR€((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pytGMSetPlayerCrossPKData¦s8           
,cCstjƒj|ƒ}|jƒ}tjƒsAtj|dƒdStƒs^tj    d|ƒdSt
j ddƒ}|sŠtj    d|ƒdS|j t jƒ}|j t jƒ}|j t jƒ}||||}    |    |kròtj    d|ƒdSt
j ddƒ}
|
r.||
kr.tj    d||ƒdStt
jdd    ƒƒ} tj|tj| ƒ} | s‚tj    d
|| f|ƒdSid d 6|d 6} x0| D](\}}tj|||t j| ƒqWtj|t j|dƒtj    d||ƒt|ƒdS(NR‚s"¿ç·þÆ¥Åä먦Æô£¬²»¿É½øÐйºÂò´ÎÊý£¡Ris&ÿÈÕÆ¥Åä´ÎÊýûÓÐÏÞÖÆ£¬²»ÐèÒª¹ºÂò´ÎÊý£¡s¿ÉPK´ÎÊý²»ÄÜ´óÓÚÿÈÕÃâ·Ñ´ÎÊý!is,½ñÈÕ¹ºÂò´ÎÊýÒÑÂú£¬ÎÞ·¨¹ºÂò£¡todayBuyCount=%sis*ÏÉÓñ°óÓñ²»×ã: todayBuyCount=%s,costGold=%st
BuyPKCountReR’s ¹ºÂò¿ç·þPK´ÎÊý: todayBuyCount=%s(RR?RiRMRƒR„RR…R2R=R RmRRRRRRoRpt HaveMoneyExR'tTYPE_Price_Gold_Paper_MoneyRqRrRR(RwRxRyRR^RR‘R’R“t
canPKCounttdayBuyCountMaxtcostGoldt costMoneyListtinfoDictRtmoneyNum((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pytOnCrossRealmPKBuyÒsF        
c!    CsÜtjƒj|ƒ}|sdS|jƒ}|j}|j}tjƒjtj    ƒ}tjƒjtj
ƒ}| s{| r–tj d||fƒdS|dkr­|}    |j t jƒ}
tj d|    |
f|ƒ|
|    krôtj d|ƒdStjddiƒ} | jƒ} g| D]} t| ƒ^q} | jƒtj d| |ƒ|    | krotj dƒdS| j|    ƒ}t j}| t|    ƒ}d}i|    d    6}n€|d
krÇ|}|j t jƒ}tj d ||f|ƒ||kr tj d |ƒdStjdd
iƒ}|jƒ}g|D]} t| ƒ^q3}|jƒtj d ||ƒ||kr‰tj d|ƒdS|j|ƒ}t j}|t|ƒ}d}i|d6}nf|dkrr|}|j t jƒ}tj d||f|ƒ||kr%tj d|ƒdSt||tƒ}|sAdS|}t j}|jƒ}d}i|d6}n»|dkr)tj d|ƒ|j t jƒ}|sºtj d|ƒdStjƒjtjƒd
krìtj d|ƒdS|j t j ƒrtj d|ƒdSt!|||t"ƒdSdS|sGtj d|ƒdS|j |ƒ}t#d
|ƒ|@r‡tj d||f|ƒdSt$|ƒ}t%j&|t'j(|ƒ}||krËt)j*|dƒdS|t#d
|ƒO}t)j+|||ƒt,|ƒtj d|||||f|ƒ|j-i|d6|d 6|d!6ƒx6|D].\}}} t.j/|||d"t'j(gƒqGW|dkr¿|tj0ddƒkr¿t)j1d"d#|j2ƒ|gƒnt3||||t"|ƒdS($Ns7µ±Ç°Ã»Óпç·þPKÈü¼¾, ÎÞ·¨ÁìÈ¡½±Àø! zoneID=%s,seasonID=%sis?Íæ¼ÒÁìȡÿÈÕÆ¥Åä´ÎÊý½±Àø! awardPKCount=%s,playerTodayPKCount=%ss    PK´ÎÊý²»×㣬ÎÞ·¨ÁìÈ¡£¡Rs    awardPKCountList=%ss    Ã»ÓиÃPK´ÎÊý½±Àø£¡Rt awardPKCountisAÍæ¼ÒÁìȡÿÈÕʤÀû´ÎÊý½±Àø! awardWinCount=%s,playerTodayWinCount=%ss    Ê¤Àû´ÎÊý²»×㣬ÎÞ·¨ÁìÈ¡£¡s    awardWinCountList=%ss    Ã»ÓиÃʤÀû´ÎÊý½±Àø£¡Rt awardWinCountis2Íæ¼ÒÁìÈ¡¶Îλ´ï±ê½±Àø! awardDanLV=%s,playerDanLV=%ss    ¶Îλδ´ï±ê£¬ÎÞ·¨ÁìÈ¡£¡RHR8isÍæ¼ÒÁìÈ¡Èü¼¾½áËã½±Àø!sÎÞÈü¼¾»ý·ÖÎÞ·¨ÁìÈ¡½±Àø!s·ÇÈü¼¾½áËã½×¶Î£¬²»¿ÉÁìÈ¡!sÒѾ­ÁìÈ¡¹ý¸Ã½±Àø£¬²»¿ÉÁìÈ¡!s¸Ã½±ÀøÃ»ÓÐÅäÖý±ÀøÎïÆ·!s0    ÒѾ­ÁìÈ¡¹ý¸Ã½±Àø!awardIndex=%s,awardState=%stGeRen_lhs_202580sZÍæ¼ÒÁìÈ¡¿ç·þPK½±Àø! awardType=%s,awardData=%s,awardIndex=%s,awardState=%s,awardItemList=%st
awardIndext
awardStateR`itCrossMatching22(4RR?RiRMt    AwardTypet    AwardDataR%R&R'R(R)R=RRRR R tkeystinttsortRwRRvRRRNR<RURORQR    RŽRVRWRPRRRžt
ItemCommontGetItemPackSpaceRˆtrptItemRR…RRRât ItemControlertGivePlayerItemRmt WorldNotifyt GetPlayerNameRT(!RwRxRyRR^t    awardTypet    awardDataRRRðtplayerTodayPKCountRtawardPKCountListtkRótawardStateDictNameR`Rat
drDataDictRñtplayerTodayWinCountR!tawardWinCountListR8R_R;RRôt    needSpacet    packSpacetitemIDtitemCnttisBind((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pytOnCrossRealmPKGetAwardsÒ            
         
               
    "#$"c Cs||jƒ}|jƒ}    g|    D]}
t|
ƒ^q}    |    jƒtjd|    |ƒx t|    ƒD]\} } || kržtjd|| | |f|ƒPntd| ƒ|@rÔtjd|| | f|ƒqbn|t| ƒ} tj    d|||| | ||| f|ƒi|d6|d6|d6| d    6|d
6}t
j ||g| | gd |ƒt ||||t |ƒqbWdS( Ns    awardCountList=%ssF¿ç·þPKÿÈÕ½±Àø´ÎÊý²»×ã: eventName=%s,i=%s,awardCount=%s > dataCount=%sis7ÒÑÁìÈ¡¸Ã¿ç·þPKÿÈÕ½±Àø: eventName=%s,i=%s,awardCount=%ssÓʼþ·¢·Å¿ç·þPKδÁìÈ¡µÄÿÈÕ½±Àø: zoneID=%s,seasonID=%s,eventName=%s,i=%s,awardCount=%s,dataCount=%s,awardState=%s,awardItemList=%sRIRRt
awardCountRôRL(RMRøRùRúRR=t    enumerateRRRvR>RRSRTRU(RRRRat    dataCountRôt awardItemDictt mailTypeKeyR^tawardCountListRRFRR`Rb((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pyR}s&  
      #)"c    Cs’|jƒ}|jtjƒ}d||g}}t||||gƒ}tjƒj|ddd|t|ƒƒtj    d|||f|ƒdS(Nt SeasonAwarditCrossPKSeasonOrdersB²éѯGameServerÍæ¼ÒÈüÇøÈü¼¾ÅÅÃû: zoneID=%s, seasonID=%s, sendMsg=%s(
RMRRRNRvRR?tGameServer_QueryPlayerResultRžR>(    RRRtisMailR^R«Rat    eventDatatsendMsg((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pyRW•s (c    CsP|\}}}}}|dkrL|\}}t|||||||ƒndS(NR(tDoGetPKSeasonAward(    RtmsgListRRRaRtorderR«R((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pytGameServer_CrossPKSeasonOrderŸs
  c!    Cs‹| }d}g}    |}
|jƒ} tjƒjtjƒ} tjd||||||
| f| ƒdgi|d6|d6|d6|d6|d6| d6} }}|d    krItj|t    j
||ƒtj ƒ}t j d
||ƒ}|s    t jd
d|ƒ}n|sin    |jƒ}|jƒ}g|D]}t|ƒ^q4}|jƒtjd || ƒd\}}xÐt|ƒD]¿\}}||kr8|}|t|ƒ}    t jƒjƒd }|t|ƒ|}
tjd ||||
f| ƒd} |t jddƒkrdnd}|||g}Pn|d }qƒWn|    s°t||tƒ}|skdS|jƒ}    d} |t jddƒkr›dnd}||g}n|    sÊtjd| ƒdS|jt    jƒrðtjd| ƒdS|| kr,tj|t    jd ƒt|ƒtjdƒntj|t    j ||
ƒt!|ƒ|s’t|    ƒ}t"j#|t$j%|ƒ}||kr’t&}q’n|rºtj'| | g|    |d|ƒn9x6|    D].\}}}t(j)|||d    t$j%gƒqÁWtjd|    | ƒi|    d6|d6|d6|
d6|d6} t*|||||| ƒ|r‡|r‡tj+d    ||j,ƒg||    d    d    gƒndS(NR4sm·¢·ÅÍæ¼Ò¿ç·þPKÈü¼¾½áËã½±Àø! zoneID=%s,seasonID=%s,order=%s,danLV=%s,isMail=%s,seasonAwardLV=%s,mapSeasonID=%sRIRRRR«R-itCrossRealmPKOrderAwards    awardOrderList=%sisO»ñµÃÅÅÃû½±Àø, ¸üн±ÀøµÈ¼¶: awardOrderList=%s,i=%s,maxDanLV=%s,seasonAwardLV=%st CrossServer4RitCrossMatching23t CrossServer5itCrossMatching24sûÓÐÍæ¼Ò¶ÔÓ¦µÄÈü¼¾½áËã½±Àø£¡sÒѾ­·¢·Å¹ýÈü¼¾½áËã½±Àø£¡s#»¹ÊÇͬһ¸öÈü¼¾£¬ÉèÖÃÈü¼¾½±ÀøÒÑÁìÈ¡!RLsÁìÈ¡³É¹¦! awardItemList=%sR`t seasonAwardLVR(ii(-RMRR%R&R'R)R>RRRtDef_PDict_CrossPK_SeasonOrderR5R R6tGetIpyGameDatatGetOrderAwardInfoRøRùRúR=RRvtIPY_DatatGetCrossRealmPKDanCountRžRmR<RPtGetSeasonDanLVAwardListRRVRtDef_PDict_CrossPK_SeasonAwardLVR+RûRüRˆRýRURSRþRÿRTRR(!RRaRRRR«RtisNotifyt    notifyKeyR`R&R^R-Rt mailParamListRbR:tseasonOrderAwardIpyDatatseasonOrderAwardDicttawardOrderListRt    fromOrderttoOrderRFt
awardOrdertmaxDanLVR;R R R RRR((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pyR©sŠ          
   $ $ 
 
   "#) 2cCsòtjƒ}|jtjƒ|_|jtjƒ|_|jtjƒ|_    |jtj
ƒ|_ |jtj ƒ|_ |jtjƒ|_|jtjƒ|_|jtjƒ|_|jtjƒ|_|jtjƒ|_tj||ƒdS(N(R˜ttagMCCrossRealmPKPlayerInfoRRR    R¡RNRHRXRRYRRZt    CWinCountRt
DayPKCountRt DayWinCountRt DayBuyCountRtDayItemAddCountRtDayRefreshCountR¥R¦(Rt pkPlayerInfo((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pyRús cCsttjƒ}|jtjƒ|_|jtjƒ|_|jtjƒ|_    |jtj
ƒ|_ t j ||ƒdS(N(R˜ttagMCCrossRealmPKAwardStateRRRtDayPKCountAwardStateRtDayWinCountAwardStateROtDanLVAwardStateRVtSeasonAwardStateR¥R¦(Rt pkAwardPack((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pyR
s cCsútjƒjtjƒ}tjƒ}g|_x¤td|dƒD]}tj    ƒ}||_
|j t j |ƒ|_|j t j|ƒ|_|j t j|ƒ|_|j t j|ƒ|_|jj|ƒqAWt|jƒ|_tj||ƒdS(Ni(RR%R&R'R)R˜t$tagMCCrossRealmPKPlayerHisSeasonInfot
SeasonListR@t tagMCCrossRealmPKPlayerHisSeasonRÞRRR´RHRµR¡R'tOrderR-tAwardLVtappendRžtCountR¥R¦(RR-t hisSeasonInfoRt
seasonInfo((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pyR+s          cCs=|ji|d6|d6|d6ƒtjd|||ƒdS(NRRRsGetCrossPKAward_%s(RâtDataRecordPackt SendEventPack(RRRRaRR((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pyRT$s"(-R'RR¥R R¶R˜RƒRÅR\RÂROR¸RˆRþR»RûRRRŒR¿R$R.R2R<RGR*RRlR”R³R—RÐRÏtNoneRåRïRRRWR RRRR+RT(((srE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerCrossRealmPK.pyt<module>sV                        "            
        J    +                A        ,    2    y        
    
    Q