protected virtual void InventoryUiDragUtilityOnOnStartDragging(InventoryUIDragLookup dragLookup, InventoryUIItemWrapperBase dragging, PointerEventData eventData) { if (dragging.item != null) { if (wrapper != null) { // Equippable character field if (equippableField != null) { var equippable = dragging.item as EquippableInventoryItem; if (equippable != null) { if (equippableField.equipTypes.Any(o => o == equippable.equipType)) { SetOutlineValues(); } } } else { if (wrapper.itemCollection != null) { var canSet = wrapper.itemCollection.filters.IsItemAbidingFilters(dragging.item); if (canSet) { SetOutlineValues(); } } } } } }
protected InventoryItemWrapperDragHandlerBase(int priority) { this.priority = priority; this.dragLookup = new InventoryUIDragLookup(); }
private void OnEndDragging(InventoryUIDragLookup dragLookup, InventoryUIItemWrapperBase dragging, PointerEventData eventData) { Hide(); if (eventData.hovered.Contains(gameObject)) { if (dragLookup.startItemCollection != collection) { // As long as the player didn't directly drop it on a wrapper object, we can auto. equip it to the right slot. bool droppedOnEquipSlot = false; if (triggerWhenDroppedOnWrapper == false) { foreach (var o in eventData.hovered) { var wrapper = o.GetComponent<InventoryUIItemWrapperBase>(); if (wrapper != null) { droppedOnEquipSlot = true; break; } } } if (droppedOnEquipSlot == false) { var item = dragLookup.startItemCollection[dragLookup.startIndex].item; iCollection.AcceptDragItem(item); //Debug.Log("Dragged from other collection " + item.name); } } } }
private void OnStartDragging(InventoryUIDragLookup dragLookup, InventoryUIItemWrapperBase dragging, PointerEventData eventData) { TryShow(); }
public InventoryItemStandardWrapperDragHandler(int priority) : base(priority) { dragLookup = new InventoryUIDragLookup(); }
protected virtual void InventoryUiDragUtilityOnOnEndDragging(InventoryUIDragLookup dragLookup, InventoryUIItemWrapperBase dragging, PointerEventData eventData) { RemoveOutlineValues(); }