Ejemplo n.º 1
0
    /// <summary>
    /// 同步队员状态
    /// </summary>
    /// <param name="cmd"></param>
    //TeamMemberStatus_Died		= 0;	// Died
    //TeamMemberStatus_Offline	= 1;	// Offline
    //TeamMemberStatus_Online		= 2;	// Online
    //TeamMemberStatus_FarAway	= 3;	// Far away (default)
    //TeamMemberStatus_Normal		= 4;	// Among 9 screen
    //TeamMemberStatus_Max		= 5;
    public void OnTeamMemberState(GameCmd.stRefreshStateTeamRelationUserCmd_S cmd)
    {
        TeamMemberInfo teamMemberInfo = m_listTeamMember.Find((data) => { return(data.id == cmd.dwUserID); });

        if (teamMemberInfo != null)
        {
            switch ((TeamMemberStatus)cmd.byState)
            {
            //在线  下线
            case TeamMemberStatus.TeamMemberStatus_Online:
            {
                teamMemberInfo.onLine = true;
            }
            break;

            case TeamMemberStatus.TeamMemberStatus_Offline:
            {
                teamMemberInfo.onLine = false;
            }
            break;

            //不跟随  跟随
            case TeamMemberStatus.TeamMemberStatus_Normal:
            {
                teamMemberInfo.isFollow = false;
            }
            break;

            case TeamMemberStatus.TeamMemberStatus_Follow:
            {
                teamMemberInfo.isFollow = true;
            }
            break;
            }

            Engine.Utility.EventEngine.Instance().DispatchEvent((int)Client.GameEventID.TEAM_MEMBERSTATE, teamMemberInfo);
        }
    }
Ejemplo n.º 2
0
 public void OnTeamMemberState(GameCmd.stRefreshStateTeamRelationUserCmd_S cmd)
 {
     DataManager.Manager <TeamDataManager>().OnTeamMemberState(cmd);
 }