// Use this for initialization public virtual void Start() { this._uniqueItemID = this.GetInstanceID(); rend = gameObject.GetComponent<Renderer>(); //setting shader properties from Outlined_Diffuse.shader rend.material.shader = _outlineShader; rend.material.SetColor("_OutlineColor", Color.red); rend.material.SetFloat("_Outline", 0.003f); isSelected = false; _itemInfoContainer = new ItemInfoContainer(); StoreItemInfo(); }
public bool AddItem(GameObject itemObject, ItemInfoContainer itemInfo) { if (CheckAddItem(itemInfo._itemRole, itemObject)) { int index = GetEmptySlotIndex(); if (index == -1) return false; this._itemContainerObject.GetComponent<ItemContainer>().AddItem(itemInfo._uniqueItemID, itemObject); itemObject.transform.SetParent(this.gameObject.transform.GetChild(4), false); this._itemInfoList[index] = new ItemStruct(itemInfo, this._itemInfoList[index]._slotUsable); CreateInventoryIcon(index); return true; } else { Debug.Log("Inventory is full"); return false; } }
public ItemStruct(ItemInfoContainer i, bool s) { _itemInfo = i; _slotUsable = s; }
public bool AddItemToInventory(GameObject itemObject, ItemInfoContainer itemInfo) { return _playerInventory.AddItem(itemObject, itemInfo); }
void Start() { //needed because panels and slots are rendered in the order they are set in hierarchy //temp parent is InventoryCanvas _tempParent = transform.parent.parent.parent; _startParent = transform.parent; _playerInventoryRef = _startParent.GetComponent<InventorySlot>()._inventoryRef; _itemInfo = _playerInventoryRef._itemInfoList[_inSlotNum - 1]._itemInfo; _resourceSplitScript = _playerInventoryRef._resourceSplitObject.GetComponent<ResourceSplit>(); }