Ejemplo n.º 1
0
    /// <summary>
    /// Refreshes and recreates inventory data of player
    /// </summary>
    public void inventoryRefresh()
    {
        if (playerInventory == null)
        {
            return;
        }
        int[] items = playerInventory.getItemsInArray();
        while (inventoryPanel.transform.childCount != 0)
        {
            GameObject go = inventoryPanel.transform.GetChild(0).gameObject;
            go.transform.SetParent(null);
            Destroy(go);
        }

        if (reverseInventory)
        {
            Array.Reverse(items);
        }

        foreach (int item in items)
        {
            if (Vegetables.isRawVegetable(item))
            {
                GameObject go = Instantiate(vegItemIconPrefab);
                SaladIngredientCanvasScript saladIngredient = go.GetComponent <SaladIngredientCanvasScript>();
                saladIngredient.itemImageSprite.sprite = ChefSaladManager.getVegetableData(item).vegTexture;
                go.transform.SetParent(inventoryPanel.transform);
            }
            else
            {
                GameObject        go          = Instantiate(saladItemIconPrefab);
                SaladCanvasScript saladCanvas = go.GetComponent <SaladCanvasScript>();
                go.transform.SetParent(inventoryPanel.transform);
                int itemMask = item;
                for (int i = 0; i < (int)Vegies.count; i++)
                {
                    if ((itemMask & 1) > 0)
                    {
                        int veg = (int)Mathf.Pow(2, i);
                        saladCanvas.addItem(ChefSaladManager.getVegetableData(veg));
                    }
                    itemMask >>= 1;
                }
            }
        }
    }