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); }
/// <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(); } }