public static void SendItemSaleMsg(ListView <CSDT_ITEM_DELINFO> itemList) { CSPkg msg = NetworkModule.CreateDefaultCSPKG(0x44d); CSDT_ITEM_DELLIST csdt_item_dellist = new CSDT_ITEM_DELLIST { wItemCnt = (ushort)itemList.Count, astItemList = LinqS.ToArray <CSDT_ITEM_DELINFO>(itemList) }; msg.stPkgData.stItemSale.stSaleList = csdt_item_dellist; Singleton <NetworkModule> .GetInstance().SendLobbyMsg(ref msg, true); }
public static void ReciveItemDel(CSPkg msg) { CSDT_ITEM_DELLIST stDelList = msg.stPkgData.stItemDel.stDelList; CUseableContainer useableContainer = Singleton <CRoleInfoManager> .GetInstance().GetMasterRoleInfo().GetUseableContainer(enCONTAINER_TYPE.ITEM); CSDT_ITEM_DELINFO csdt_item_delinfo = null; uint key = 0; for (int i = 0; i < stDelList.wItemCnt; i++) { csdt_item_delinfo = stDelList.astItemList[i]; if (csdt_item_delinfo != null) { CUseable useableByObjID = useableContainer.GetUseableByObjID(csdt_item_delinfo.ullUniqueID); if (useableByObjID != null) { key = useableByObjID.m_baseID; } useableContainer.Remove(csdt_item_delinfo.ullUniqueID, csdt_item_delinfo.iItemCnt); } } Debug.Log("itemDel"); switch (msg.stPkgData.stItemDel.bDelReason) { case 3: Singleton <CUIManager> .GetInstance().OpenTips(Singleton <CTextManager> .GetInstance().GetText("Shop_Sale_Success"), false, 1f, null, new object[0]); Singleton <CUIManager> .GetInstance().CloseForm(s_bagSaleFormPath); Singleton <EventRouter> .instance.BroadCastEvent <CSDT_ITEM_DELLIST>(EventID.BAG_ITEM_SALED, stDelList); Singleton <CSoundManager> .GetInstance().PostEvent("UI_backpack_sell", null); break; case 4: Singleton <CSoundManager> .GetInstance().PostEvent("UI_backpack_sell", null); if (csdt_item_delinfo != null) { ResPropInfo dataByKey = GameDataMgr.itemDatabin.GetDataByKey(key); if ((dataByKey != null) && (dataByKey.iUseShowTip != 0)) { Singleton <CUIManager> .GetInstance().OpenTips(string.Format(Singleton <CTextManager> .GetInstance().GetText("ItemTakeEffectTip"), StringHelper.UTF8BytesToString(ref dataByKey.szName)), false, 1f, null, new object[0]); } } break; case 7: Singleton <CHeroInfoSystem2> .GetInstance().RefreshHeroInfoForm(); break; } Singleton <CBagSystem> .GetInstance().RefreshBagForm(); Singleton <CSymbolSystem> .GetInstance().RefreshSymbolForm(); Singleton <CUIManager> .GetInstance().CloseSendMsgAlert(); Singleton <EventRouter> .instance.BroadCastEvent(EventID.BAG_ITEMS_UPDATE); }