Ejemplo n.º 1
0
    private void AddInventoryStack(ItemStack stack)
    {
        ItemStackDisplayer stackDisplayer = GameObject.Instantiate(itemStackDisplayPrefab, inventoryZone) as ItemStackDisplayer;

        stackDisplayer.DisplayStack(stack);


        var onStartDrag = stackDisplayer.gameObject.AddComponent <CreateDraggedItemOnPointerDown> ();

        int count = stack.Count;

        onStartDrag.MakeFor(stack.ItemType, transform as RectTransform, draggedItemPrefab,
                            () => {
            if (count > 0)
            {
                count--;
                stackDisplayer.DisplayStack(new ItemStack(stack.ItemType, count));
                return(true);
            }
            else
            {
                return(false);
            }
        }, () => {
            count++;
            stackDisplayer.DisplayStack(new ItemStack(stack.ItemType, count));
        });
    }
Ejemplo n.º 2
0
    private void Rebuild()
    {
        Debug.Log("InventoryPanelScript::Rebuild()");

        for (int i = 0; i < transform.childCount; i++)
        {
            Destroy(transform.GetChild(i).gameObject);
        }

        foreach (ItemStack stack in Game.current.inventory.GetItemStacks())
        {
            ItemStackDisplayer stackObj = GameObject.Instantiate(itemStackDisplayPrefab, transform) as ItemStackDisplayer;
            stackObj.DisplayStack(stack);
        }
    }