private void OnItemDropped(DraggableComponent draggable) { draggable.transform.position = transform.position; CurrentItem = draggable; DropArea.DropConditions.Add(disableDropCondition); draggable.OnBeginDragHandler += CurrentItemOnBeginDrag; }
public override bool Check(DraggableComponent draggable) { return(draggable.GetComponent <SetItemIcon>().GetItem.slotPosition == SlotPosition.meelWeapon || draggable.GetComponent <SetItemIcon>().GetItem.slotPosition == SlotPosition.accessories || draggable.GetComponent <SetItemIcon>().GetItem.slotPosition == SlotPosition.armor || draggable.GetComponent <SetItemIcon>().GetItem.slotPosition == SlotPosition.head || draggable.GetComponent <SetItemIcon>().GetItem.slotPosition == SlotPosition.shoes); }
public void DraggableComponent_OnDragStay(object sender, DraggableComponent.DraggableEventArgs e) { Vector3 nextPosition = GameManager.Instance.GetDragWorldPositionFromDraggableEventArgs (e); if (GameManager.Instance.IsPointWithinGameBounds (nextPosition)) { _rigidBody.MovePosition (nextPosition); } }
public void Initialize(DraggableComponent currentItem) { if (currentItem == null) { Debug.LogError("Tried to initialize the slot with an null item!"); return; } OnItemDropped(currentItem); }
internal void RemoveDraggableComponent(DraggableComponent draggableComponent) { if (draggableComponent.GetType() == typeof(AnchoredTag)) { ((AnchoredTag)draggableComponent).Unset(); } layerModel.Components.Remove(draggableComponent); RaisePropertyChanged("DraggableComponents"); RaisePropertyChanged("RemoveDraggableComponent"); // To update the view through LayerContainer.xaml.cs }
private void CurrentItemEndDragHandler(PointerEventData eventData, bool dropped) { CurrentItem.OnEndDragHandler -= CurrentItemEndDragHandler; if (!dropped) { return; } DropArea.DropConditions.Remove(disableDropCondition); //We dropped the component in another slot so we can remove the DisableDropCondition CurrentItem.OnBeginDragHandler -= CurrentItemOnBeginDrag; //We make sure to remove this listener as the item is no longer in this slot CurrentItem = null; //We no longer have an item in this slot, so we remove the refference }
public abstract bool Check(DraggableComponent draggable);
public bool Accepts(DraggableComponent draggable) { return(DropConditions.TrueForAll(cond => cond.Check(draggable))); }
public void Drop(DraggableComponent draggable) { OnDropHandler?.Invoke(draggable); }
protected void Start() { EnableGravity(); _draggableComponent = gameObject.GetComponent<DraggableComponent>(); _draggableComponent.OnDragStart += DraggableComponent_OnDragStart; _draggableComponent.OnDragStay += DraggableComponent_OnDragStay; _draggableComponent.OnDragStop += DraggableComponent_OnDragStop; }
public override bool Check(DraggableComponent draggable) { return(draggable.GetComponent <SetItemIcon>().GetItem.slotPosition == SlotPosition.shoes); }
internal void RemoveDraggableComponent(DraggableComponent draggableComponent) { CurrentLayer.RemoveDraggableComponent(draggableComponent); }
private void OnItemDropped(DraggableComponent draggable) { draggable.transform.position = transform.position; }
public override bool Check(DraggableComponent draggable) { return(draggable.GetComponent <Weapon>() != null); }
public override bool Check(DraggableComponent draggable) { return(false); }
public void Drop(DraggableComponent draggable) { OnDropHandler?.Invoke(draggable); draggable.transform.position = transform.position; }