hxp
2025-05-29 f08058713e574c675579ca5ccbfabeb1e6702cf0
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
SÜ7hc@sxddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd    „Zd
„Zd „Zd „Zd „Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z!d„Z"dd„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((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pytOnChangeTeamCheckState.s            cCsdS(N((R R ((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pytNotifyPosInfoToPlayer8s    cCsdS(N((R R ((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pytPlayerLoginSetTeamCscCs-|jƒr)|jdƒtjdƒndS(NisµÇ¼¿ç·þ·þÎñÆ÷ÖØÖöÓÎéID!(t    GetTeamIDt    SetTeamIDRR(R ((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pytOnPlayerLoginCrossServerHs  cCsdS(sæ·ÏÆú¸ÃÂß¼­£¬ÓÉ0502¡¢0503·â°ü½áºÏ´¦Àí
    ·ÏÆúÔ­Òò£º
    ÒòΪµ±Íæ¼ÒÓжÓÎéʱ£¬¼ÓÈë±ðÈ˵ĶÓÎ飬´Ëʱ¸ÃÍæ¼ÒÐèÒªÏÈÍ˳ö¶ÓÎ飨OnTeamͬ²½£©£¬ÔÙ¼ÓÈë¶ÓÎ飨0502ͬ²½£©
    ¶øµØÍ¼»áÏÈÊÕµ½0502°ü£¬µ¼ÖµØÍ¼¶ÓÎé¹ÜÀí³öÏÖÒì³££¬ËùÒÔÔÝʱ·ÏÆúOnTeam
    N((R    R ((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pytGameServer_OnTeamVscCsO|j}|j}|j}tjd|||f|ƒt||||ƒdS(NsBGameServer_PlayerLeaveTeam playerID=%s,copyMapID=%s,leaveTeamID=%s(tPlayerIDt    CopyMapIDtTeamIDRRt__OnPlayerLeaveTeam(t curPackDataR tplayerIDt    copyMapIDt leaveTeamID((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pytGameServer_PlayerLeaveTeamgs                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ƒ} i} x™|jD]Ž}|j}i|jd6|jd6| |<| |jkrwq5n| r¹t| d    |jƒr¹t| d    |jƒƒr¹|
d
7}
n|    d
7}    q5W| tj|<td|    d
d ƒ}t||ƒt||
|ƒtj |ƒdS( NRtteamLVs=GameServer_TeamInfo playerID=%s,teamID=%s,teamLV=%s,memCnt=%stTeamInfoscurPlayer is None or emptyitMapIDtVIPLVsGetVIP%diiè(!RRtTeamLVtMemCntRRRtFindPlayerByIDtIsEmptytDR_TeamRRt GetCopyMapIDtRefreshPlayerTeamIDtSetDicttChConfigtDef_PlayerKey_TeamMemCounttGetMapIDt    PlayerViptGetVipPrivilegeDatatVIPPrivilege_TeamVIPBufft MemInfoListR"R#thasattrtgetattrt
PyGameDatatg_teamPlayerInfoDicttmaxtUpdTeamExpRatet__RefreshTeamVIPBufft
PlayerLovetRefreshCoupleTeamBuff(RR RtteamIDR tmemCnttdataDictR t playerTeamIDtsameMapMemCountt sameMapVIPLVtmapIDtteamVIPBuffIpyDatatteamPlayerInfoDicttmemInfot memPlayerIDt teamExpRate((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pytGameServer_TeamInfo‚sJ                            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 RAR RtfindBufft buffManagertbuffTypet    findSkilltisAddTeamVIPBufftbuffLVtisOK((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyR9·s  !        cCstd}|jƒ}tjtjƒ}|r`t|d|ƒr`t|d|ƒƒr`|d7}nt|||ƒdS(NisGetVIP%di(tGetVIPLvR/R0R,R1R3R4R9(R R RAt playerVIPLVRC((siD:\SG_ServerCode\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?| r^| r^t|| |||    ƒn,| sjdn    | jƒ|    d    <td
||    ƒdS( NsHË¢ÐÂÍæ¼Ò¶ÓÎéÐÅÏ¢: playerTeamID=%s,playerCopyMapID=%s,teamID=%s,teamLV=%sRR?tplayerCopyMapIDt playerTeamLVR tRefreshPlayerTeamID_Createit MemberCounttRefreshPlayerTeamID_Update(RRR)t    GetTeamLVRRtGetTeamRt    SetTeamLVt IPY_GameWorldtGetTeamManagertFindTeamtNonet
CreateTeamtGetMapt GetMapFBTypetfbtTeamtSetCurrentFBPropertyR(t __OnEnterTeamtGetMemberCount( R R<R R RR?R\R]tcurTeamR>t curGameWorldt
curMapTeam((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyR*ás2            c    Csv|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||krrtj||jƒ|||ƒndS(Ns0¶ÓÎéÈËÊýÒÑÂú£¬Íæ¼ÒÈë¶Óʧ°Ü!teamID=%s,memCount=%stRefreshPlayerTeamID_EnterErrorsmemCount(%s) >= %siR_tRefreshPlayerTeamID_Enters&Íæ¼Ò¼ÓÈë¶ÓÎé: teamID=%s,playerID=%s,%s(RRnt ShareDefinetDef_Team_MaxPlayerCountRtErrLogRR(RiRjRdRktGameServer_TeamEnterFBtSetTeamRt    AddMemberR5tg_teamPlayerDicttgettappendRtNPCHurtManagertOnNPCHurtPlayerEnterTeamt GetPlayerName(    R RqR?R R>R<tmemCountRtteamPlayerIDList((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyRms,             "c
Csåtjd|||fƒtj|ƒ}|jƒj|ƒ}|r||j|ƒ|jƒdkr||jƒj|ƒq|nt|t    ƒt
j |||ƒi|d6|d6}tj ƒj |ƒ}| sØ|jƒrïtd||dƒdS|jƒ}|jƒ}    tj|    ƒ}|ji|d6|    d6ƒtd||ƒ||krÔ|jdƒ|jdƒ|jdƒt||ƒtj|ƒ|jƒjƒd    krÔtjƒjƒtjkrÔ|jdƒqÔnt ||ƒdS(
Ns=__OnPlayerLeaveTeam copyMapID=%s, playerID=%s, leaveTeamID=%siRRtPlayerLeaveTeamscurPlayer is None or emptyR?R\i(!RRRdReRft DeleteMemberRnt
DeleteTeamt__DelPlayerIDFromTeamPlayerRLR}tOnNPCHurtPlayerLeaveTeamRR&R'R(RR)tupdateRxRgRRct__CleanTeamEffectR:R;tGetMapCopyPlayerManagertGetPlayerCountRiRjttmtTeamRlR[(
RRRR RpRqR>R R?R\((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyR-s:          3 cCs't|dƒtj|tj|ƒdS(Ni(R8t    BuffSkilltDelBuffBySkillIDR,tDef_SkillID_DropOwnerBuff(R R ((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyRˆas cCs8tj|tj|ƒr4tj|ƒ}|jƒndS(N(RŒRR,RKRtRefreshPlayerAttrByBuff(R R t playerControl((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyRPgs cCs@||jtjƒkrdS|jtj|ƒtj|ƒdS(N(t GetDictByKeyR,tDef_PlayerKey_TeamExpRateR+RtSync_ExpRateChange(R t
updExpRate((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyR8ps
 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 isDisconnectR\iiR_R„tPlayerLeaveMap(RbRgRRRR)RRˆRxRnReR„RƒR(R…RM(R R R•RoR<RR>((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pytTeamPlayerLeaveMapys&  /    !
  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(R5RztitemstremoveRRtpop(Rt
isleaveMapR<R((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyR…œs  cCstjj|gƒS(N(R5RzR{(R<((siD:\SG_ServerCode\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(RLR5RzR˜RtGetPlayerLeaveServerTickR,tDef_PlayerOfflineProtectTimeR|RRRMR™Rš(R t    isTimeoutR<RttimeoutPlayerIDListRt    leaveTickttimeoutPlayerID((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyt"OnCheckTeamPlayerDisconnectTimeout¬s&    cCs)tjƒj|ƒ}tj||ƒdS(N(RRRtFBLogictGameServer_LeaveFB(R    R R ((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyR¥ÍstcCsdS(N((t    eventNameR<R>tinfo((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyR(Òs($RŒRRR¤R,RIRdtDataRecordPackR}Rtt
SkillShellt PlayerSuccessR5R:R/RRRRRRRHR9R[R*RmRRˆRPR8R—R…RœR£R¥R((((siD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerTeam.pyt<module>sF                   
                         5            /        4                        #             !