Ejemplo n.º 1
0
    public static SMsgGetReuqestListHead ParsePackage(byte[] dataBuffer)
    {
        SMsgGetReuqestListHead sMsgGetReuqestListHead = new SMsgGetReuqestListHead();
        int of = 0;

        of += PackageHelper.ReadData(dataBuffer.Skip(of).ToArray(), out sMsgGetReuqestListHead.dwActorID);
        of += PackageHelper.ReadData(dataBuffer.Skip(of).ToArray(), out sMsgGetReuqestListHead.byRequestNum);
        sMsgGetReuqestListHead.FriendRequests = new SMsgFriendRequestSC[sMsgGetReuqestListHead.byRequestNum];
        for (int i = 0; i < sMsgGetReuqestListHead.byRequestNum; i++)
        {
            sMsgGetReuqestListHead.FriendRequests[i] = SMsgFriendRequestSC.ParsePackage(dataBuffer, ref of);
        }
        return(sMsgGetReuqestListHead);
    }
Ejemplo n.º 2
0
    /// <summary>
    /// 接收好友请求列表
    /// </summary>
    CommandCallbackType RecvFriendRequestListHandle(byte[] dataBuffer, int socketID)
    {
        SMsgGetReuqestListHead sMsgGetReuqestListHead = SMsgGetReuqestListHead.ParsePackage(dataBuffer);

        for (int i = 0; i < sMsgGetReuqestListHead.byRequestNum; i++)
        {
            PanelElementDataModel panelElement = new PanelElementDataModel();
            panelElement.sMsgRecvAnswerFriends_SC = new SMsgRecvAnswerFriends_SC()
            {
                szName                = sMsgGetReuqestListHead.FriendRequests[i].szActorName,
                dwSex                 = sMsgGetReuqestListHead.FriendRequests[i].bySex,
                sActorLevel           = sMsgGetReuqestListHead.FriendRequests[i].byLevel,
                dwFriendID            = sMsgGetReuqestListHead.FriendRequests[i].AskActorID,
                dbSysActorImageHeadID = sMsgGetReuqestListHead.FriendRequests[i].dwActorHeadID,
                dwFight               = sMsgGetReuqestListHead.FriendRequests[i].dwFightNum,
                dProfession           = sMsgGetReuqestListHead.FriendRequests[i].byKind,
                bOnLine               = 1,
            };
            panelElement.RequestTime = sMsgGetReuqestListHead.FriendRequests[i].dwExpireTime;
            panelElement.BtnType     = ButtonType.AddFriend;
            FriendDataManager.Instance.RegRequestData(panelElement);
        }
        if (sMsgGetReuqestListHead.byRequestNum > 0)
        {
            if (GameManager.Instance.CreateEntityIM)
            {
                UIEventManager.Instance.TriggerUIEvent(UIEventType.PlayMainBtnAnim, UI.MainUI.UIType.Friend);
            }
            else
            {
                PlayerFactory.Instance.RegisterPlayerAfterSceneLoadedFun("RecvAddFriendHandle", () => {
                    UIEventManager.Instance.TriggerUIEvent(UIEventType.PlayMainBtnAnim, UI.MainUI.UIType.Friend);
                });
            }
        }
        return(CommandCallbackType.Continue);
    }