Exemple #1
0
    protected override object AdapterTipData(object data)
    {
        PackageProxy m_PackageProxy = GameFacade.Instance.RetrieveProxy(ProxyName.PackageProxy) as PackageProxy;

        if (data is LogDataVO)
        {
            return(m_PackageProxy.CreateItem(0, (data as LogDataVO).Tid, 0, 0, 0, 0, 0, 0));
        }
        if (data is ShopWindowVO)
        {
            return(m_PackageProxy.CreateItem(0, (data as ShopWindowVO).Tid, 0, 0, 0, 0, 0, 0));
        }
        if (data is ShopSellBackVO)
        {
            return(m_PackageProxy.CreateItem(0, (uint)(data as ShopSellBackVO).Tid, 0, 0, 0, 0, 0, 0));
        }
        if (data is ProduceInfoVO)
        {
            return(m_PackageProxy.CreateItem(0, (uint)(data as ProduceInfoVO).TID, 0, 0, 0, 0, 0, 0));
        }
        if (data is IShip)
        {
            return(m_PackageProxy.GetItem <ItemWarShipVO>((data as IShip).GetUID()));
        }
        if (data is IMod)
        {
            return(m_PackageProxy.GetItem <ItemModVO>((data as IMod).GetUID()));
        }
        if (data is IWeapon)
        {
            return(m_PackageProxy.GetItem <ItemWeaponVO>((data as IWeapon).GetUID()));
        }
        return(base.AdapterTipData(data));
    }
Exemple #2
0
    public void InitShipItemsByByRespond(S2C_SYNC_FIGHTSHIP_VISIBLE_ITEM_LIST respond)
    {
        PackageProxy packageProxy = GameFacade.Instance.RetrieveProxy(ProxyName.PackageProxy) as PackageProxy;
        ulong        uid          = respond.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);
    }
Exemple #3
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);
    }