public Category CheckMarkItemRemove(ulong markUid, ulong itemUid)
 {
     if (markUid == 0)
     {
         return(0);
     }
     if (m_Items.TryGetValue(markUid, out ItemContainer item))
     {
         switch (item)
         {
         case ItemWarShipVO val:
             if (m_ShipProxy.RemoveItemToShip(val.UID, itemUid, m_Items[itemUid].ParentUID))
             {
                 MsgShipDataChanged info = MessageSingleton.Get <MsgShipDataChanged>();
                 info.ShipUid      = markUid;
                 info.ChangeType   = MsgShipDataChanged.Type.Remove;
                 info.ItemType     = m_Items[itemUid].MainType;
                 info.ContainerUid = m_Items[itemUid].ParentUID;
                 info.ItemUid      = itemUid;
                 Facade.SendNotification(NotificationName.MSG_SHIP_DATA_CHANGED, info);
                 return(info.ItemType);
             }
             break;
         }
     }
     return(0);
 }
Exemple #2
0
 /// <summary>
 /// 刷新利用道具
 /// </summary>
 /// <param name="data"></param>
 private void RefreshUsingItem(MsgShipDataChanged data)
 {
     if (data.ShipUid == m_CurrentShip.GetUID())
     {
         OnShow(null);
         SetData();
     }
 }
 /// <summary>
 /// 刷新item数据
 /// </summary>
 /// <param name="data">数据</param>
 private void RefreshUsingItem(MsgShipDataChanged data)
 {
     if (m_Category == data.ItemType && m_ContainerUID == data.ContainerUid)
     {
         if (data.ChangeType == MsgShipDataChanged.Type.Add)
         {
             m_CurrentItemData = Parent.Data.CurrentShip.GetItem(data.ItemUid);
         }
         else if (data.ChangeType == MsgShipDataChanged.Type.Remove)
         {
             m_CurrentItemData = null;
         }
         m_CurrentSelectedItemData = null;
         RefreshCurrentAllCells();
     }
 }