コード例 #1
0
        /// <summary>
        /// 好友当前状态
        /// </summary>
        /// <param name="buf">协议内容</param>
        private void OnSyncPlayerInfoBack(KProtoBuf buf)
        {
            S2C_SYNC_PLAYERINFO msg = buf as S2C_SYNC_PLAYERINFO;

            ShipItemsProxy shipItemsProxy = GameFacade.Instance.RetrieveProxy(ProxyName.ShipItemsProxy) as ShipItemsProxy;

            shipItemsProxy.InitShipItemsByByRespond(msg);
        }
コード例 #2
0
    /// <summary>
    /// 好友信息解析
    /// </summary>
    /// <param name="respond"></param>
    public void InitShipItemsByByRespond(S2C_SYNC_PLAYERINFO respond)
    {
        PackageProxy packageProxy = GameFacade.Instance.RetrieveProxy(ProxyName.PackageProxy) as PackageProxy;
        ulong        uid          = respond.uid;

        Debug.Log("收到并解析玩家数据" + uid);
        Dictionary <ulong, ItemContainer> items = new Dictionary <ulong, ItemContainer>();

        foreach (var item in respond.item_list)
        {
            ItemContainer itemcon = packageProxy.CreateItem(item.uid, item.tid, item.parent, item.pos, 0, 0, 0, 0);
            itemcon.Lv = item.lv;
            items.Add(item.uid, itemcon);
        }
        RelationData(items);
        // 用最新的
        if (m_ShipItems.ContainsKey(uid))
        {
            RemoveShipItems(uid);
        }

        m_ShipItems.Add(uid, items);
        GameFacade.Instance.SendNotification(NotificationName.MSG_FRIEND_SHIPDATA_CHANGE, uid);
    }