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
™‚Ãhc@sÒddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z dZ dZd„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+de-d!„Z.d"„Z/d#„Z0dS($iÿÿÿÿNiicCs
|jƒS(N(t    GetValue1(trecData((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pytGetRecUpdScore$scCs |j|ƒS(N(t    SetValue1(Rtscore((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pytSetRecUpdScore%scCs
|jƒS(N(t    GetValue2(R((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyt GetRecAtkType&scCs |j|ƒS(N(t    SetValue2(RtatkType((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyt SetRecAtkType'scCs
|jƒS(N(t    GetValue3(R((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pytGetRecTagPlayerID(scCs |j|ƒS(N(t    SetValue3(Rt tagPlayerID((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pytSetRecTagPlayerID)scCs
|jƒS(N(t    GetValue4(R((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyt GetRecIsWin*scCs|j|rdndƒS(Nii(t    SetValue4(RtisWin((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyt SetRecIsWin+scCs
|jƒS(N(t    GetValue5(R((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyt
GetRecFace,scCs |j|ƒS(N(t    SetValue5(Rtface((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyt
SetRecFace-scCs
|jƒS(N(t    GetValue6(R((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyt GetRecFacePic.scCs |j|ƒS(N(t    SetValue6(RtfacePic((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyt SetRecFacePic/scCs
|jƒS(N(t    GetValue7(R((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyt GetRecRealmLV0scCs |j|ƒS(N(t    SetValue7(RtrealmLV((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyt SetRecRealmLV1scCs
|jƒS(N(t    GetValue8(R((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pytGetRecLV2scCs |j|ƒS(N(t    SetValue8(RttagLV((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pytSetRecLV3scCs tƒdS(N(t DoArenaReset(((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pytOnWeek6scCstdƒdS(NtDay(t__DoGiveBillboardAward(((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pytOnDay:s
cCsGtjdƒit_tdƒtjƒjtj    ƒtjdƒt
S(s Èü¼¾ÖØÖÃ
    s*=============== ÖØÖþº¼¼³¡ ===============tWeeks*==========================================( t    GameWorldtLogt
PyGameDatatg_arenaPlayerMatchDictR,t    DBDataMgrtGetBillboardMgrtRemoveBillboardt ShareDefinet Def_BT_ArenatTrue(((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyR)>s      
 cCsütjd|ƒtjƒ}|jtjƒ}|s9dS|dkr]tjddiƒ}n(|dkrtjddiƒ}ndSg|j    ƒD]}t
|ƒ^q’}|j ƒtjd|ƒ|d}i}|j ƒ|j ƒ}}    tjd    ||    fƒxßt|ƒD]Ñ}
|j|
ƒ} | s3qn|
d} | |kr|j|ƒd} | t|ƒkrrPn|| }n| jƒ}|tjkr qn| |g||<| g}|t|ƒ}tjd
||||ƒqWtjd |ƒdS( Ns=== ¾º¼¼³¡½áËãÅÅÐн±Àø! === %sR+tArenaBillboradAwardiR.is    ½±ÀøÃû´ÎÁбí: %sis6    °ñµ¥Êý¾ÝÊý! billboardCount=%s,billboardMaxCount=%ssArenaBillboardAward%ss    ½±ÀøÍæ¼ÒÃû´ÎÐÅÏ¢: %s(R/R0R3R4t GetBillboardR6R7t IpyGameDataPYtGetFuncEvalCfgtkeystinttsorttGetCountt GetMaxCounttxrangetAttindextlentGetIDtRealPlayerIDStarttstrt
PlayerMailt SendMailByKey(t    awardTypet billboardMgrt    billBoardtbillboradAwardDicttorderStrt    orderListt
awardOrdertorderPlayerIDDicttbillboardCounttbillboardMaxCountRDt billBoardDatatordertnextOrderIndextplayerIDt    paramListt    awardList((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyR,PsH   %
 
 
       cCs1tj|tjƒsdSt|ƒt|ƒdS(N(t GameFuncCommt GetFuncCanUseR6tGameFuncID_Arenat__loginUpdPlayerScoretSync_ArenaInfo(t    curPlayer((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pytOnLoginƒs
 
 
cCsð|jƒ}tjƒ}|jtj|ƒ}|jƒs=dS|j|jƒdƒ}|jƒ}t    j
|ƒs’t    j dt    j |ƒ|ƒdSt |ƒ}|jtjƒ}tj|tj|ƒt    j d||t    j |ƒf|ƒdS(Nis.Íæ¼ÒÉÏÏßÑÝÎ䳡¼Ç¼»ý·Ö·Ç±¾Öܲ»¸üÐÂ! recTime=%ss:Íæ¼ÒÉÏÏ߸üÐÂÑÝÎ䳡»ý·Ö: befScore=%s,updScore=%s,recTime=%s(t GetPlayerIDR3t GetGameRecMgrtGetRecTypeIDMgrR6tDef_GameRecType_ArenaRecordR@RCtGetTimeR/tCheckTimeIsSameWeekR0tChangeTimeNumToStrRtNomalDictGetPropertytChConfigtDef_PDict_ArenaScoret PlayerControltNomalDictSetProperty(R`RXtrecMgrtrecIDMgrt finalRecDatatrecTimetupdScoretbefScore((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyR^Šs     &cCs'tj|tjƒsdSt|ƒdS(N(R[R\R6R]R_(R`((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pytOnDayEx›s
cCs'tj|tjƒsdSt|ƒdS(N(R[R\R6R]t__DoArenaSeasonReset(R`((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pytOnWeekEx¡s
cCst|ƒdS(N(Ru(R`((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyt DoArenaOpen§s
cCsGtjddƒ}tjd|ƒtj|tj|ƒt|ƒdS(NtArenaSetis¾º¼¼³¡Èü¼¾ÖØÖã¡initScore=%s(    R;t
GetFuncCfgR/tDebugLogRlRmRjRkR_(R`t    initScore((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyRu«s
 
cCstjddƒ}|}|S(NRxi(R;Ry(R`tbaseCnttstoreMax((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pytGetArenaTicketStoreMax³scCs/tjƒj|ƒ}|j}t||ƒdS(N(R/tGetPlayerManagertGetPlayerByIndext    IsRefreshtDoArenaMatchRefresh(RDt
clientDatattickR`t    isRefresh((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyt OnArenaMatchÃs     cCst}t|||ƒdS(N(R8R‚(R`t gmMatchIDListR…((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyt GMArenaMatchÉsc& Cs®|jƒ}|jtjƒ}tjddƒ}tjd||||f|ƒtjd||ƒt|ƒ}|t    j
krgt    j
|<nt    j
|}t|ƒ|kr»|| }n| rõt|ƒ|krõtjd|ƒt ||ƒdS|rO| rO| rOtjddƒ\}    }
|     sH|
sHt j ||    |
dƒ rOdSntjƒ} | jtjƒ} | swdS| jƒ} | j|ƒd}tjddƒ}|d    krãtj||ƒ}tj|d    |dƒ}n|}||}tjd
| |||f|ƒtjdd ƒ\}}|||}tjd |||f|ƒg}xt|ƒD] }td||ƒ}||kr’Pnt||ƒ}tj|ƒ||krÊ|j|ƒn|sÔPn|dkr)xl|D];}|| krÿqçn|j|ƒt|ƒ|krçPqçqçWn&|d    }|| krO|j|ƒntjd |||f|ƒ|d}qiW|dkrH|jƒrHx¦|D]ž}||krÅtj|d|ƒq™n| j|ƒd}|d    krþtj|d|ƒq™ntj|d||fƒ||kr™|j d    |ƒq™q™W|| }n|j!ƒg}xP|D]H}|| ks}|d    krPn| j"|dƒ}|j|j#ƒƒq_W|t|ƒ}tjd|||f|ƒtj$ƒ} | j%ƒ}!d}"xƒ|"d    kr{|d    kr{|!r{|"d8}"tjd    |!dƒ}#| j&|#ƒ}$|$j#ƒ}%|%|krù|j|%ƒ|d8}qùqùWtjd||ƒ|t    j
|<t ||ƒdS(Nt
ArenaMatchisM¾º¼¼³¡Íæ¼ÒË¢ÐÂÆ¥ÅäÁбí: isRefresh=%s,playerScore=%s,gmMatchIDList=%s,isSys=%ss    matchScoreList=%ss    ·ÇË¢ÐÂÇÒÓÐÊý¾Ý£¬Ö±½Óͬ²½£¡itArenaiisA    maxOrder=%s,playerOrder=%s,matchRobotCnt=%s,matchPlayerCnt=%sis.    fromLowerCnt=%s,matchPerRank=%s,toOrder=%ss7    Æ¥ÅäÍæ¼Ò: fromOrder=%s,toOrder=%s,matchOrderList=%ssÄ¿±êID²»ÄÜÊÇ×Ô¼º!ÎÞ·¨Æ¥Åä!%ssÄ¿±êID²»ÔÚ°ñµ¥ÉÏ!ÎÞ·¨Æ¥Åä!%ssÖ¸¶¨Æ¥ÅäID(%s),order(%s)sB    Æ¥Åä°ñµ¥½á¹û: matchIDList=%s,matchOrderList=%s,needRobotCnt=%sids     ×îÖÕÆ¥Åä½á¹û: matchIDList=%s('RbRiRjRkR;R<R/RzRER1R2t__SyncMatchListRltPayMoneyR3R4R:R6R7R@t IndexOfByIDtGetOrderValueByDicttrandomtrandinttrangetmaxtshuffletremovetappendtNonet
GetGMLevelt DebugAnswertinsertR?RCRFtIPY_Datat GetRobotCounttGetRobotByIndex(&R`R…R‡tisSysRXt playerScoretmatchScoreListtneedMatchCountt matchIDListt    costMoneyt
moneyValueRLRMtmaxOrdert playerOrdertmatchRobotCntDicttmatchRobotRanget matchRobotCnttmatchPlayerCntt fromLowerCntt matchPerRankttoOrdertmatchOrderListt_t    fromOrderRPRVt    gmMatchIDt gmMatchOrdert
matchOrdertbillDatat needRobotCntt
ipyDataMgrtrobotMaxtdoCntt
robotIndext robotIpyDatatrobotID((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyR‚Ïs¾      '   
         
 
   !
     cCsðtjƒ}g|_x²|D]ª}tj|ƒ}tjƒ}||_|r©|jƒ|_|j    ƒ|_
|j ƒ|_ |j ƒ|_|jƒ|_|jƒ|_n d||_|jj|ƒqWt|jƒ|_tj||ƒdS(Nsp%s(tChPyNetSendPackttagSCArenaMatchListt    MatchListtPlayerViewCachet FindViewCachettagSCArenaMatchInfotPlayerIDt GetPlayerNamet
PlayerNamet
GetRealmLVtRealmLVtGetFacetFacet
GetFacePictFacePict GetFightPowert
FightPowertGetFightPowerExt FightPowerExR•REt
MatchCountt NetPackCommont SendFakePack(R`R¡t
clientPacktmatchIDt    viewCachet    matchInfo((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyR‹Cs$            cCs5tjƒ}|jtjƒ|_tj||ƒdS(N(R»ttagSCArenaPlayerInfoRiRjRktScoreRÏRÐ(R`RÑ((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyR_Ys (1R3RIR6R[RlR;R»R¾RÏR1R/RjRtRecAtkType_AtktRecAtkType_DefRRRR
R RRRRRRRR R#R%R(R*R-R)R,RaR^RtRvRwRuR~R†RˆR–tFalseR‚R‹R_(((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerArena.pyt<module>s\                                                                                             3                                    t