cehua_ZWJ
2019-01-07 bc42e044cf0e891ee9651ab27abc306272ada1cb
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
úZþ[c@sWddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z d„Z d„Zd„Zd„Zd„Zd„Zd„Zd    „Zd
„Zd „Zd „Zd „Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zdd„Z dS(iÿÿÿÿNcCsltjƒj|ƒ}|j}|j}|d|}tj||ƒtjd|||f|jƒƒdS(Ni
sSÐ޸ĶÓÎéÏà¹ØÉóºË״̬: Èë¶ÓÉêÇëÊÇ·ñÐèÒªÉóºË=%s,×é¶ÓÑûÇëÊÇ·ñÐèÒªÉóºË=%s,checkState=%s(    t    GameWorldtGetPlayerManagertGetPlayerByIndext JoinReqCheckt InviteCheckt PlayerControltSetTeamCheckStatetDebugLogt GetPlayerID(tindext
clientDatattickt    curPlayert joinReqCheckt inviteCheckt
checkState((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pytOnChangeTeamCheckState-s            cCsdS(N((R R ((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pytNotifyPosInfoToPlayer7s    cCsdS(N((R R ((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pytPlayerLoginSetTeamBscCsdS(sæ·ÏÆú¸ÃÂß¼­£¬ÓÉ0502¡¢0503·â°ü½áºÏ´¦Àí
    ·ÏÆúÔ­Òò£º
    ÒòΪµ±Íæ¼ÒÓжÓÎéʱ£¬¼ÓÈë±ðÈ˵ĶÓÎ飬´Ëʱ¸ÃÍæ¼ÒÐèÒªÏÈÍ˳ö¶ÓÎ飨OnTeamͬ²½£©£¬ÔÙ¼ÓÈë¶ÓÎ飨0502ͬ²½£©
    ¶øµØÍ¼»áÏÈÊÕµ½0502°ü£¬µ¼ÖµØÍ¼¶ÓÎé¹ÜÀí³öÏÖÒì³££¬ËùÒÔÔÝʱ·ÏÆúOnTeam
    N((R    R ((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pytGameServer_OnTeamLscCsO|j}|j}|j}tjd|||f|ƒt||||ƒdS(NsBGameServer_PlayerLeaveTeam playerID=%s,copyMapID=%s,leaveTeamID=%s(tPlayerIDt    CopyMapIDtTeamIDRRt__OnPlayerLeaveTeam(t curPackDataR tplayerIDt    copyMapIDt leaveTeamID((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pytGameServer_PlayerLeaveTeam]s                cCsÒ|j}|j}|j}|j}i|d6|d6}tjd||||f|ƒtjƒj|ƒ}| s€|jƒr—t    d||dƒdS|j
ƒ}|dkrÕ|rÑt |j ƒ|||ƒndSt ||||ƒ|jtj|ƒd}    d}
|jƒ} tjtjƒ} xr|jD]g} | | jkrJq/n| rŒt| d| jƒrŒt| d| jƒƒrŒ|
d7}
n|    d7}    q/Wtd|    dd    ƒ}t||ƒt||
|ƒdS(
NRtteamLVs=GameServer_TeamInfo playerID=%s,teamID=%s,teamLV=%s,memCnt=%stTeamInfoscurPlayer is None or emptyisGetVIP%diiè(RRtTeamLVtMemCntRRRtFindPlayerByIDtIsEmptytDR_Teamt    GetTeamIDRt GetCopyMapIDtRefreshPlayerTeamIDtSetDicttChConfigtDef_PlayerKey_TeamMemCounttGetMapIDt    PlayerViptGetVipPrivilegeDatatVIPPrivilege_TeamVIPBufft MemInfoListtMapIDthasattrtVIPLVtgetattrtmaxtUpdTeamExpRatet__RefreshTeamVIPBuff(RR RtteamIDRtmemCnttdataDictR t playerTeamIDtsameMapMemCountt sameMapVIPLVtmapIDtteamVIPBuffIpyDatatmemInfot teamExpRate((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pytGameServer_TeamInfoxs@                      c     Csþ|jƒ}tj|tjƒ\}}}}t}| rI|rIt}n|r|r|jƒjƒ}    |    |krt}qnt    j
d||f|ƒ|r¦| s¬|r¼t ||ƒn|rútj |tj||ƒ}
t    j
d||
f|ƒndS(Ns7    Í¬µØÍ¼¶ÓԱͳ¼Æ: sameMapVIPLV=%s,isAddTeamVIPBuff=%ss(__AddTeamVIPBuff sameMapVIPLV=%s,isOK=%s( Rt SkillCommont FindBuffByIDR(tDef_SkillID_TeamVIPBufftFalsetTruetGetSkillt
GetSkillLVRRt__DelTeamVIPBufftAddBuffBySkillType( R R;R RtfindBufft buffManagertbuffTypet    findSkilltisAddTeamVIPBufftbuffLVtisOK((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyR5©s  !        cCstd}|jƒ}tjtjƒ}|r`t|d|ƒr`t|d|ƒƒr`|d7}nt|||ƒdS(NisGetVIP%di(tGetVIPLvR+R,R(R-R0R2R5(R R R;t playerVIPLVR=((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pytRefreshTeamVIPBuff_OnNoTeamÂs  c Cs”|jƒ}|jƒ}|jƒ}|jƒ}tjd||||f|ƒ|jƒ}|j|ƒ|j|ƒi|d6|d6|d6|d6|d6}    |s©dSt    j    |ƒ}
|
j
ƒj |ƒ} | dkr,|
j
ƒj |ƒ} tjƒjƒt    jkr|j|ƒntd||    ƒn||ks?| rd||k} t|| | ||    ƒn,| spdn    | jƒ|    d    <td
||    ƒdS( NsHË¢ÐÂÍæ¼Ò¶ÓÎéÐÅÏ¢: playerTeamID=%s,playerCopyMapID=%s,teamID=%s,teamLV=%sRR9tplayerCopyMapIDt playerTeamLVRtRefreshPlayerTeamID_Createit MemberCounttRefreshPlayerTeamID_Update(RR$R%t    GetTeamLVRRtGetTeamt    SetTeamIDt    SetTeamLVt IPY_GameWorldtGetTeamManagertFindTeamtNonet
CreateTeamtGetMapt GetMapFBTypetfbtTeamtSetCurrentFBPropertyR#t __OnEnterTeamtGetMemberCount( R R6RR RR9RTRUtcurTeamR8t curGameWorldt
curMapTeamt    isNewTeam((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyR&Ós4             c    CsR|jƒ}|jƒ}|tjkrktjd||f|jƒƒtd||d|tjfƒdStjƒj    ƒt
j kr–|j dƒn|j |ƒ|j|ƒ|j|ƒ|jƒ|d<td||ƒ|jƒ}tjj|gƒ}||krD|j|ƒ|tj|<tjd||tjfƒn|sNdSdS(Ns0¶ÓÎéÈËÊýÒÑÂú£¬Íæ¼ÒÈë¶Óʧ°Ü!teamID=%s,memCount=%stRefreshPlayerTeamID_EnterErrorsmemCount(%s) >= %siRWtRefreshPlayerTeamID_Enters&Íæ¼Ò¼ÓÈë¶ÓÎé: teamID=%s,playerID=%s,%s(R$Rgt ShareDefinetDef_Team_MaxPlayerCountRtErrLogRR#RbRcR]RdtGameServer_TeamEnterFBtSetTeamR[t    AddMembert
PyGameDatatg_teamPlayerDicttgettappendR(    R RjRkR R8R6tmemCountRtteamPlayerIDList((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyRfs,            c
CsÅtjd|||fƒtj|ƒ}|jƒj|ƒ}|r||j|ƒ|jƒdkr||jƒj|ƒq|nt|t    ƒi|d6|d6}tj
ƒj |ƒ}| sÅ|j ƒrÜt d||dƒdS|jƒ}|jƒ}    tj|    ƒ}|ji|d6|    d6ƒt d||ƒ||kr´|jdƒ|jdƒ|jdƒt||ƒ|jƒjƒd    kr´tjƒjƒtjkr´|jdƒq´nt||ƒdS(
Ns=__OnPlayerLeaveTeam copyMapID=%s, playerID=%s, leaveTeamID=%siRRtPlayerLeaveTeamscurPlayer is None or emptyR9RTi(RRR]R^R_t DeleteMemberRgt
DeleteTeamt__DelPlayerIDFromTeamPlayerRDRR!R"R#R$R%tupdateRrR`R[R\t__CleanTeamEffecttGetMapCopyPlayerManagertGetPlayerCountRbRcttmtTeamReRS(
RRRR RiRjR8R R9RT((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyR"s6         3 cCs't|dƒtj|tj|ƒdS(Ni(R4t    BuffSkilltDelBuffBySkillIDR(tDef_SkillID_DropOwnerBuff(R R ((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyRSs cCs8tj|tj|ƒr4tj|ƒ}|jƒndS(N(RƒR„R(RCRtRefreshPlayerAttrByBuff(R R t playerControl((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyRHYs cCs@||jtjƒkrdS|jtj|ƒtj|ƒdS(N(t GetDictByKeyR(tDef_PlayerKey_TeamExpRateR'RtSync_ExpRateChange(R t
updExpRate((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyR4bs
 cCs!|jƒ}|dkrdStjd|jƒ||jƒf|jƒƒt||ƒ|jdƒ|jƒ}|jƒ}i|d6|d6|jƒd6}|j    ƒdkrÚtj
ƒj |ƒd|d<d|d<n|j |ƒ|j    ƒ|d<t d    ||ƒ|st|tƒntS(
Ns8¶ÓÎé³ÉÔ±À뿪µØÍ¼: temaID=%s,isDisconnect=%s,copyMapID=%sRt isDisconnectRTiiRWR|tPlayerLeaveMap(RZR`RRR$R%RRRrRgR^R|R{R#R}RE(R R RŒRhR6RR8((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pytTeamPlayerLeaveMapks&  /    !
  cCs›x”tjjƒD]ƒ\}}||kr.qn|j|ƒtjd|||fƒ|stjj|ƒtjd|ƒntjdtjƒqWdS(Ns0Íæ¼ÒÀ뿪¶ÓÎé!isleaveMap=%s,teamID=%s,playerID=%ss'    µØÍ¼¶ÓÎéûÈËÁË£¬É¾³ý¶ÓÎ飡teamID=%ss"    PyGameData.g_teamPlayerDict=%s(RtRutitemstremoveRRtpop(Rt
isleaveMapR6Ry((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyR}Žs  cCstjj|gƒS(N(RtRuRv(R6((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pytGetMapTeamPlayerIDListšscCst}xÝtjjƒD]Ì\}}g}xo|D]g}tj|ƒ}|sPq/n||tjkr/|j|ƒt    j
d||||fƒt }q/q/Wx|D]}|j |ƒq¡W|stjj |ƒt    j
d|ƒqqW|rt    j
dtjƒndS(NsB    ÒƳýÀëÏß±£»¤µÄ¶ÓÔ±: teamID=%s,leaveTick=%s,tick=%s,playerID=%ss2    ¶ÓÎéÒÑûÓб£»¤ÖеĶÓÔ±, É¾³ý¶ÓÎé¼Ç¼!teamID=%ss"    PyGameData.g_teamPlayerDict=%s(RDRtRuRRtGetPlayerLeaveServerTickR(tDef_PlayerOfflineProtectTimeRwRRRERR‘(R t    isTimeoutR6RyttimeoutPlayerIDListRt    leaveTickttimeoutPlayerID((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyt"OnCheckTeamPlayerDisconnectTimeoutžs&    cCs)tjƒj|ƒ}tj||ƒdS(N(RRRtFBLogictGameServer_LeaveFB(R    R R ((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyRœ¿stcCsLi|d6|d6|d6}|j|ƒtjdtjƒjƒ|ƒdS(Nt    EventNameRtInfosTeam_%s(R~tDataRecordPackt SendEventPackRRbR*(t    eventNameR6R8tinfotdrDict((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyR#Äs  (!RƒRRR›R(RAR]R Rnt
SkillShellt PlayerSuccessRtR+RRRRRR@R5RSR&RfRRRHR4RŽR}R“RšRœR#(((sjE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyt<module>s@                 
         
            1            /         1                        #             !