Beispiel #1
0
    public void OnDrop(PointerEventData eventData)
    {
        GameObject dragedObject = Drag.isDragingObject;

        if (dragedObject == null)
        {
            return;
        }

        Drag drag = Drag.isDragingObject.GetComponent <Drag>();

        CurrentFavouriteItem dragedFavouriteItem = dragedObject.GetComponent <CurrentFavouriteItem>();
        CurrentItem          dragedCurrentItem   = dragedObject.GetComponent <CurrentItem>();


        if (dragedObject.GetComponent <CurrentFavouriteItem>())
        {
            if (dragedFavouriteItem.currentFavouriteItem.id == GetComponent <CurrentFavouriteItem>().currentFavouriteItem.id)
            {
                if (dragedFavouriteItem.currentFavouriteItem.isStackable)
                {
                    int count = dragedFavouriteItem.currentFavouriteItem.countItem;
                    GetComponent <CurrentFavouriteItem>().currentFavouriteItem.countItem += count;
                    dragedFavouriteItem.currentFavouriteItem = Inventory.instanceInventory.EmptySlot();
                }
            }
            else
            {
                Item currentItem = GetComponent <CurrentFavouriteItem>().currentFavouriteItem;
                GetComponent <CurrentFavouriteItem>().currentFavouriteItem = dragedFavouriteItem.currentFavouriteItem;
                dragedFavouriteItem.currentFavouriteItem = currentItem;
            }
        }

        if (dragedObject.GetComponent <CurrentItem>())
        {
            if (dragedCurrentItem.currentInventoryItem.id == GetComponent <CurrentFavouriteItem>().currentFavouriteItem.id)
            {
                if (dragedCurrentItem.currentInventoryItem.isStackable)
                {
                    int count = dragedCurrentItem.currentInventoryItem.countItem;
                    GetComponent <CurrentFavouriteItem>().currentFavouriteItem.countItem += count;
                    dragedCurrentItem.currentInventoryItem = Inventory.instanceInventory.EmptySlot();
                }
            }
            else
            {
                Item currentFavouriteItem = GetComponent <CurrentFavouriteItem>().currentFavouriteItem;
                GetComponent <CurrentFavouriteItem>().currentFavouriteItem = dragedCurrentItem.currentInventoryItem;
                dragedCurrentItem.currentInventoryItem = currentFavouriteItem;
            }
        }


        //if (dragedObject.GetComponent<CyrrentWeapon>())
        //{
        //    if (draggedWeapopn.currentWeapon.id == GetComponent<CyrrentWeapon>().currentWeapon.id)
        //    {
        //        if (draggedWeapopn.currentWeapon.isStackable)
        //        {
        //            int count = draggedWeapopn.currentWeapon.countItem;
        //            GetComponent<CyrrentWeapon>().currentWeapon.countItem += count;
        //            draggedWeapopn.currentWeapon = Inventory.instanceInventory.EmptySlot();
        //        }
        //    }
        //    else
        //    {
        //        Item currentWeapon = GetComponent<CyrrentWeapon>().currentWeapon;
        //        GetComponent<CyrrentWeapon>().currentWeapon = draggedWeapopn.currentWeapon;
        //        draggedWeapopn.currentWeapon = currentWeapon;
        //    }

        //}
        Inventory.instanceInventory.DisplayItems();

        Inventory.instanceInventory.favourite.DisplayItems();



        if (GetComponent <CurrentFavouriteItem>().currentFavouriteItem.id == Inventory.instanceInventory.EmptySlotID())
        {
            if (dragedCurrentItem)
            {
                Item dragItem = dragedCurrentItem.currentInventoryItem.getCopy();
                dragItem.countItem = 1;
                GetComponent <CurrentFavouriteItem>().currentFavouriteItem = dragItem;
                Inventory.instanceInventory.RemoveItem(dragedCurrentItem.ItemNum);
                Inventory.instanceInventory.favourite.DisplayItems();
                Inventory.instanceInventory.weaponSlot.DisplayItem();
                return;
            }
            if (dragedFavouriteItem)
            {
                Item dragItem = dragedFavouriteItem.currentFavouriteItem.getCopy();
                dragItem.countItem = 1;
                GetComponent <CurrentFavouriteItem>().currentFavouriteItem = dragItem;
                Inventory.instanceInventory.favourite.RemoveItem(dragedFavouriteItem.ItemNum);
                Inventory.instanceInventory.weaponSlot.DisplayItem();
                return;
            }


            Inventory.instanceInventory.favourite.DisplayItems();
        }

        if (dragedCurrentItem)
        {
            if (GetComponent <CurrentFavouriteItem>().currentFavouriteItem.id == dragedCurrentItem.currentInventoryItem.id)
            {
                if (dragedCurrentItem.currentInventoryItem.isStackable)
                {
                    drag.AddItem(GetComponent <CurrentFavouriteItem>().currentFavouriteItem);
                    Inventory.instanceInventory.RemoveItem(dragedCurrentItem.ItemNum);
                    Inventory.instanceInventory.favourite.DisplayItems();
                    Inventory.instanceInventory.weaponSlot.DisplayItem();
                    return;
                }
            }
        }



        if (dragedFavouriteItem)
        {
            if (GetComponent <CurrentFavouriteItem>().currentFavouriteItem.id == dragedFavouriteItem.currentFavouriteItem.id)
            {
                if (dragedFavouriteItem.currentFavouriteItem.isStackable)
                {
                    drag.AddItem(GetComponent <CurrentFavouriteItem>().currentFavouriteItem);
                    Inventory.instanceInventory.favourite.RemoveItem(dragedFavouriteItem.ItemNum);
                    Inventory.instanceInventory.weaponSlot.DisplayItem();
                    return;
                }
            }
        }
    }
Beispiel #2
0
    public void OnDrop(PointerEventData eventData)
    {
        GameObject dragedObject = Drag.isDragingObject;

        if (dragedObject == null)
        {
            return;
        }

        CurrentItem          dragedCurrentItem   = dragedObject.GetComponent <CurrentItem>();
        CurrentFavouriteItem dragedFavouriteItem = dragedObject.GetComponent <CurrentFavouriteItem>();
        WeaponSlot           draggedWeapon       = dragedObject.GetComponent <WeaponSlot>();
        Drag drag = Drag.isDragingObject.GetComponent <Drag>();


        if (dragedObject.GetComponent <CurrentItem>())
        {
            if (dragedCurrentItem.currentInventoryItem.id == GetComponent <CurrentItem>().currentInventoryItem.id)
            {
                if (dragedCurrentItem.currentInventoryItem.isStackable)
                {
                    int count = dragedCurrentItem.currentInventoryItem.countItem;
                    GetComponent <CurrentItem>().currentInventoryItem.countItem += count;
                    dragedCurrentItem.currentInventoryItem = Inventory.instanceInventory.EmptySlot();
                }
            }
            else
            {
                Item currentItem = GetComponent <CurrentItem>().currentInventoryItem;
                GetComponent <CurrentItem>().currentInventoryItem = dragedCurrentItem.currentInventoryItem;
                dragedCurrentItem.currentInventoryItem            = currentItem;
            }
        }
        if (dragedObject.GetComponent <CurrentFavouriteItem>())
        {
            if (dragedFavouriteItem.currentFavouriteItem.id == GetComponent <CurrentItem>().currentInventoryItem.id)
            {
                if (dragedFavouriteItem.currentFavouriteItem.isStackable)
                {
                    int count = dragedFavouriteItem.currentFavouriteItem.countItem;
                    GetComponent <CurrentItem>().currentInventoryItem.countItem += count;
                    dragedFavouriteItem.currentFavouriteItem = Inventory.instanceInventory.EmptySlot();
                }
            }
            else
            {
                Item currentItem = GetComponent <CurrentItem>().currentInventoryItem;
                GetComponent <CurrentItem>().currentInventoryItem = dragedFavouriteItem.currentFavouriteItem;
                dragedFavouriteItem.currentFavouriteItem          = currentItem;
            }
        }



        Inventory.instanceInventory.DisplayItems();

        if (Inventory.instanceInventory.favourite)
        {
            Inventory.instanceInventory.favourite.DisplayItems();
        }
        Inventory.instanceInventory.weaponSlot.DisplayItem();


        //if (eventData.button == PointerEventData.InputButton.Right)
        //{
        //    if (GetComponent<CurrentItem>().currentInventoryItem.id == Inventory.instanceInventory.EmptySlotID())
        //    {
        //        if (dragedCurrentItem)
        //        {
        //            Item dragItem = dragedCurrentItem.currentInventoryItem.getCopy();
        //            dragItem.countItem = 1;
        //            GetComponent<CurrentItem>().currentInventoryItem = dragItem;
        //            Inventory.instanceInventory.RemoveItem(dragedCurrentItem.ItemNum);
        //            return;
        //        }

        //        if (dragedFavouriteItem)
        //        {
        //            Item dragItem = dragedFavouriteItem.currentFavouriteItem.getCopy();
        //            dragItem.countItem = 1;
        //            GetComponent<CurrentItem>().currentInventoryItem = dragItem;
        //            Inventory.instanceInventory.favourite.RemoveItem(dragedFavouriteItem.ItemNum);
        //            Inventory.instanceInventory.DisplayItems();
        //            return;
        //        }
        //        if (dragedStorageItem)
        //        {
        //            Item dragItem = dragedStorageItem.currentStorageItem.getCopy();
        //            dragItem.countItem = 1;
        //            GetComponent<CurrentItem>().currentInventoryItem = dragItem;
        //            Storage.RemoveItem(dragedStorageItem.itemNum);
        //            Inventory.instanceInventory.DisplayItems();
        //            return;
        //        }
        //    }

        //    if (dragedCurrentItem)
        //    {
        //        if (GetComponent<CurrentItem>().currentInventoryItem.id == dragedCurrentItem.currentInventoryItem.id)
        //        {
        //            if (dragedCurrentItem.currentInventoryItem.isStackable)
        //            {
        //                drag.AddItem(GetComponent<CurrentItem>().currentInventoryItem);
        //                Inventory.instanceInventory.RemoveItem(dragedCurrentItem.ItemNum);
        //                return;
        //            }
        //        }
        //    }

        //    if (dragedFavouriteItem)
        //    {
        //        if (GetComponent<CurrentItem>().currentInventoryItem.id == dragedFavouriteItem.currentFavouriteItem.id)
        //        {
        //            if (dragedFavouriteItem.currentFavouriteItem.isStackable)
        //            {
        //                drag.AddItem(GetComponent<CurrentItem>().currentInventoryItem);
        //                Inventory.instanceInventory.favourite.RemoveItem(dragedFavouriteItem.ItemNum);
        //                Inventory.instanceInventory.DisplayItems();
        //                return;
        //            }
        //        }
        //    }

        //    if (dragedStorageItem)
        //    {
        //        if (GetComponent<CurrentItem>().currentInventoryItem.id == dragedStorageItem.currentStorageItem.id)
        //        {
        //            if (dragedStorageItem.currentStorageItem.isStackable)
        //            {
        //                drag.AddItem(GetComponent<CurrentItem>().currentInventoryItem);
        //                Storage.RemoveItem(dragedStorageItem.itemNum);
        //                Inventory.instanceInventory.DisplayItems();
        //                return;
        //            }
        //        }
        //    }
        //}
    }