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);
 }
Beispiel #3
0
        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);
    }
Beispiel #5
0
        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);
 }
Beispiel #10
0
 protected void Start()
 {
     EnableGravity();
     _draggableComponent = gameObject.GetComponent<DraggableComponent>();
     _draggableComponent.OnDragStart += DraggableComponent_OnDragStart;
     _draggableComponent.OnDragStay += DraggableComponent_OnDragStay;
     _draggableComponent.OnDragStop += DraggableComponent_OnDragStop;
 }
Beispiel #11
0
 public override bool Check(DraggableComponent draggable)
 {
     return(draggable.GetComponent <SetItemIcon>().GetItem.slotPosition == SlotPosition.shoes);
 }
Beispiel #12
0
 internal void RemoveDraggableComponent(DraggableComponent draggableComponent)
 {
     CurrentLayer.RemoveDraggableComponent(draggableComponent);
 }
 private void OnItemDropped(DraggableComponent draggable)
 {
     draggable.transform.position = transform.position;
 }
Beispiel #14
0
 public override bool Check(DraggableComponent draggable)
 {
     return(draggable.GetComponent <Weapon>() != null);
 }
Beispiel #15
0
 public override bool Check(DraggableComponent draggable)
 {
     return(false);
 }
Beispiel #16
0
 public void Drop(DraggableComponent draggable)
 {
     OnDropHandler?.Invoke(draggable);
     draggable.transform.position = transform.position;
 }