Пример #1
0
    void Start()
    {
        itemDatabase      = GameObject.Find("Databases").transform.Find("ItemDatabase").GetComponent <ItemDatabase> ();
        inventorySelector = GetComponent <InventorySelector> ();

        for (int i = 0; i < totalSlots; i++)
        {
            if (startingItemIds.Length > i)
            {
                Item newItem = itemDatabase.items [startingItemIds [i]];
                inventory.Add(newItem);
                if (i == inventorySelector.CurrentSlot)
                {
                    inventorySelector.ShowItemName(newItem.itemName);
                    if (newItem.itemType == Item.Types.Weapon)
                    {
                        GunManager gunManager = GameObject.Find("GameManager").GetComponent <GunManager> ();
                        gunManager.ammoUI.SetMaxAmmo(newItem.itemPrefab.GetComponent <Gun> ().clipSize);
                        gunManager.ammoUI.SetCurrentAmmo(0);
                    }
                }
            }
            else
            {
                inventory.Add(new Item());                   // placeholder for future items
            }
        }
    }
Пример #2
0
    public void ClickedToolSlot(int slotIndex)
    {
        InventorySelector sel = currentSelecObject.GetComponent <InventorySelector> ();

        if (toolSlots [slotIndex].item.title == "")
        {
            if (currentSelecObject.activeSelf == true)
            {
                toolSlots [slotIndex].item.SetEqualTo(toolSlots[slotIndex].item, sel.item);
                if (shift && sel.item.stackable)
                {
                    toolSlots [slotIndex].amount++;
                    sel.ChangeSelectorAmt(-1);
                    if (sel.itemAmt == 0)
                    {
                        currentSelecObject.SetActive(false);
                    }
                }
                else
                {
                    toolSlots [slotIndex].amount = sel.itemAmt;
                    currentSelecObject.SetActive(false);
                }
            }
        }
        else if (toolSlots [slotIndex].item.title != "")
        {
            if (currentSelecObject.activeSelf == true)
            {
                if (toolSlots [slotIndex].item.title == sel.item.title && sel.item.stackable)
                {
                    if (shift && sel.itemAmt > 1)
                    {
                        sel.ChangeSelectorAmt(-1);
                        toolSlots [slotIndex].amount++;
                    }
                    else
                    {
                        toolSlots[slotIndex].amount += sel.itemAmt;
                        currentSelecObject.SetActive(false);
                    }
                }
            }
            else
            {
                currentSelecObject.SetActive(true);
                currentSelecObject.GetComponent <InventorySelector> ().DisplaySelector(toolSlots [slotIndex].item, toolSlots [slotIndex].amount);
                toolSlots [slotIndex].item.Clear();
                toolSlots [slotIndex].amount = 0;
            }
        }
        UpdateSlot(slotIndex, false);
    }
Пример #3
0
 public void ClickedDrop()
 {
     if (currentSelecObject.activeSelf == true)
     {
         InventorySelector sel = currentSelecObject.GetComponent <InventorySelector> ();
         if (shift && sel.itemAmt > 1)
         {
             Drop(sel.item, 1);
             sel.ChangeSelectorAmt(-1);
         }
         else
         {
             Drop(sel.item, sel.itemAmt);
             currentSelecObject.SetActive(false);
         }
     }
 }
Пример #4
0
    void Start()
    {
        _active           = gameObject.activeSelf;
        tooltip           = GameObject.Find("UI").transform.Find("Tooltip").gameObject.GetComponent <Tooltip>();
        inventoryUI       = GameObject.Find("GameManager").GetComponent <InventoryUIManager> ();
        inventorySelector = GameObject.Find("GameManager").GetComponent <InventorySelector> ();
        image             = GetComponent <Image> ();
        icon         = transform.Find("Icon").GetComponent <Image> ();
        defaultIcon  = icon.sprite;
        mouseManager = GameObject.Find("GameManager").GetComponent <MouseManager> ();

        inventory = GameObject.Find("GameManager").GetComponent <Inventory> ();
        inventory.inventoryChangedEvent += OnInventoryChanged;
        item = inventory.InventoryList [slotID];

        OnInventoryChanged();
    }
Пример #5
0
    private int currentAmmo;     // used by AI only, not player

    void Start()
    {
        currentAmmo    = clipSize;
        inventory      = GameObject.Find("GameManager").GetComponent <Inventory> ();
        gunManager     = GameObject.Find("GameManager").GetComponent <GunManager>();
        inventoryUI    = GameObject.Find("GameManager").GetComponent <InventoryUIManager>();
        flashParticles = Instantiate(gunManager.flashParticles);
        flashParticles.transform.parent = transform;
        foreach (Transform muzzle in muzzles)
        {
            flashParticles.transform.position = muzzle.position;
        }
        inventorySelector = GameObject.Find("GameManager").GetComponent <InventorySelector> ();

        InventorySlotData data = inventorySelector.CurrentSlotObject.GetComponent <InventorySlotData> ();

        gunManager.ammoUI.SetCurrentAmmo(data.currentAmmo);
    }
Пример #6
0
 // Update is called once per frame
 void Update()
 {
     if (Input.GetButtonDown("E"))
     {
         menuOpen = !menuOpen;
         menuObject.SetActive(menuOpen);
         if (!menuOpen)
         {
             Inventory inv = player.GetComponent <Inventory> ();
             if (inv.currentSelecObject.activeSelf == true)
             {
                 InventorySelector sel = inv.currentSelecObject.GetComponent <InventorySelector> ();
                 inv.Drop(sel.item, sel.itemAmt);
                 inv.currentSelecObject.SetActive(false);
             }
         }
     }
 }
 private void Awake()
 {
     current = this;
 }