hwj35
2025-06-16 12bfd1cd414e0fa14310a800df8288a844d6489f
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
?ïßfc@s»ddlZddlZddlZddlZddlZddlZdZd„Zd„Zd„Z    d„Z
d„Z d„Z d    „Z d
„Zd „Zd „Zddd „ZdS(iÿÿÿÿNtSkyTowerPassPlayerIDListcCst|ƒdS(N(tSync_SkyTowerPassPlayer(t    curPlayer((sdE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldSkyTower.pyt OnPlayerLogins
cCsjtjƒjtjƒ}d}xEt|jƒƒD]1}|j|ƒ}|j    ƒ|kr1|}Pq1q1W|S(N(
t    GameWorldtGetUniversalRecMgrt GetTypeListt ShareDefinet+Def_UniversalGameRecType_SkyTowerPassPlayertNonetxrangetCounttAtt    GetValue1(tfloorIDtrecTypeListDatatrecDatatindextuniversalRecData((sdE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldSkyTower.pyt__GetPassPlayerRecDataByFloorIDsc Cs¯|\}}|dkr2t||ƒ}||gS|dkrŽ|\}}}t|ƒ}t|ƒ}    t|    ƒ|kr}dnd}
||
gS|dkr«t||ƒdSdS(NtServerChallengePasstServerChallengeRewardiit MixFirstLogin(t__OnServerChallengePassRt__GetPassPlayerIDListtlent__OnMixFirstLogin( RtmsgListtmsgTypetmsgDatat    rankIndexRtneedPlayerCountt_RtpassPlayerIDListtcanGet((sdE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldSkyTower.pytMapServer_SkyTowerInfo,s         c Cs›|jƒ}|d}tjd||ƒg}tjƒjtjƒ}xÃt|jƒƒD]¯}|j    |ƒ}|j
ƒ}||krŽq[n|j |ƒ}    t |ƒ}
||
kr»q[nt |
ƒ|    krÓq[nt||
|ƒ|j|ƒtjd||
f|ƒq[Wxp|jƒD]b\}}    |jƒ}|j|ƒg}
t||
|ƒ|j|ƒtjd||
f|ƒqW|r—td|ƒndS(Nis"ºÏ·þÊ×µÇÌî³äÌìÐÇËþÈ«·þ¹ý¹ØÐÅÏ¢: %ss6    Ìí¼ÓÌìÐÇËþ¹ý¹Ø¼Ç¼: floorID=%s,passPlayerIDList=%ss6    ÐÂÔöÌìÐÇËþ¹ý¹Ø¼Ç¼: floorID=%s,passPlayerIDList=%s(t GetPlayerIDRtLogRRRRR
R R R tpopRRt__AddPassPlayerIDListtappendtitemstAddRect    SetValue1RR    ( RRtplayerIDt passFloorInfotsyncRecDataListRRRRtmaxNeedPassCountR!((sdE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldSkyTower.pyRDs: 
        cCs<|jƒ}y|r!t|ƒng}Wn g}nX|S(N(t GetStrValue3teval(Rt    strValue3R!((sdE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldSkyTower.pyRhs  
cCsìt}||kr(|j|ƒt}nt|ƒjddƒ}t|ƒdkr€|j|ƒt|ƒjddƒ}t}n|j|ƒ|rètj    t
ƒ}|rè||krè|j|ƒtj t
|ƒt j d|ƒqèn|S(Ns tiÿs1__AddPassPlayerIDList SkyTowerPassPlayerIDList=%s(tFalseR(tTruetstrtreplaceRtremovet SetStrValue3t IpyGameDataPYt GetConfigExt$ConfigExKey_SkyTowerPassPlayerIDListt SetConfigExRtDebugLog(RR!R,tisAddtupdStrR((sdE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldSkyTower.pyR'ps"             cCsµtjtƒ}|s«g}tjƒjtjƒ}xbt|j    ƒƒD]N}|j
|ƒ}t |ƒ}x*|D]"}||krn|j |ƒqnqnWqFWtj t|ƒn||kS(N(R:R;R<RRRRRR
R R RR(R=(R,RRRRR!tpID((sdE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldSkyTower.pytIsSkyTowerPassPlayerƒs   c    CsÌ|jƒ}|\}}}tjd||f|ƒt|ƒ}|s{tjƒjtjƒ}|jƒ}|j    |ƒnt
|ƒ}t |ƒ|krdSt |||ƒ}t d|gƒ|j|ƒS(Ns<ÐÂÔöÌìÐÇËþÈ«·þÌôÕ½²ã¹ý¹Ø¼Ç¼! floorID=%s,maxNeedPassCount=%siÿÿÿÿ(R$RR>RRRRRR*R+RRR'RR    R(    RRR,RR/R RRR!((sdE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldSkyTower.pyR’s    cCs¹t|ƒ}|sFtjƒjtjƒ}|jƒ}|j|ƒnd}t|ƒ}x0t    |ƒD]"}|d7}t
|||ƒ}qeWtj d|||fƒt d|gƒdS(NiisJGMÌí¼ÓÌìÐÇËþ»úÆ÷È˹ý¹ØÈ«·þ²ã: floorID=%s,robotCount=%s,passPlayerIDList=%s(RRRRRRR*R+RtrangeR'R>RR    (Rt
robotCountRRtrobotIDR!R ((sdE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldSkyTower.pytGMAddRobotPassFloor§s   
    cCsCtjƒjtjƒ}|jƒtjtgƒtj    dƒdS(NsGMÇå¿ÕÌìÐÇËþÈ«·þ¹ý¹ØÐÅÏ¢(
RRRRRtClearR:R=R<R>(R((sdE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldSkyTower.pytGMClearPassFloorºs
 
 cCsá|dkr`g}tjƒjtjƒ}x3t|jƒƒD]}|j|j    |ƒƒq=Wng}g}x|D]ˆ}|j
ƒ}t |ƒ}x*|D]"}    |    |kr˜|j|    ƒq˜q˜Wt j ƒ}
||
_||
_t|
jƒ|
_|j|
ƒqsW| r| rdSg} xô|D]ì}    tj|    ƒ} | rHtj| ƒni} t jƒ}|    |_|    dkryd|    n| jdt|    ƒƒ|_| jddƒ|_| jddƒ|_| jddƒ|_| jd    dƒ|_| jd
dƒ|_| j|ƒqWt jƒ}|j ƒ||_!t|j!ƒ|_"| |_#t|j#ƒ|_$|rst%j&||ƒnjtj'ƒ}x[t(d|j)ƒƒD]D}|j*|ƒ}|dks•|j+ƒ rÉq•nt%j&||ƒq•WdS( Nièsrobot%stNametJobitLVtRealmLVitFacetFacePic(,R    RRRRRR
R R(R R RtChPyNetSendPackttagGCSkyTowerPassFloortFloorIDtPassPlayerIDListRtPassPlayerCounttPlayerViewCachet FindViewCachetGetCachePropDataDictttagGCSkyTowerPassPlayertPlayerIDtgetR6t
PlayerNameRJRKRLRMRNttagGCSkyTowerPassPlayerInfoRGt PassFloorListt
FloorCounttPassPlayerListt PlayerCountt NetPackCommont SendFakePacktGetPlayerManagerRCtGetPlayerCounttGetPlayerByIndext    GetInitOK(Rt recDataListRRt passFloorListR!RRt playerIDListR,R-tpassPlayerListtcurCachet    cacheDictt
playerInfot
clientPackt playerManagerti((sdE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldSkyTower.pyRÁs`                     1 
         (RRROR`RTR:R<RRR#RRR'RBRRFRHR    R(((sdE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldSkyTower.pyt<module>s"                       $