public void Open(Tapestry_Inventory _leftInv, Tapestry_EquipmentProfile _equip, Tapestry_Inventory _rightInv = null, string _leftName = "Inventory", string _rightName = "Target") { left.Clear(); right.Clear(); this.gameObject.SetActive(true); _isOpen = true; Tapestry_WorldClock.IsPaused = true; left.Init(displayPrefab, _leftInv, _leftName, _equip); leftInv = _leftInv; leftName = _leftName; player = FindObjectOfType <Tapestry_Player>(); equipment = _equip; if (_rightInv == null) { right.gameObject.SetActive(false); } else { right.gameObject.SetActive(true); right.Init(displayPrefab, _rightInv, _rightName); rightInv = _rightInv; rightName = _rightName; } }
public Tapestry_Inventory GenerateInventory(Transform source) { Tapestry_Inventory export = new Tapestry_Inventory(); export.items = GenerateItems(); return(export); }
public void Close() { this.gameObject.SetActive(false); _isOpen = false; Tapestry_WorldClock.IsPaused = false; left.Clear(); right.Clear(); leftInv = null; rightInv = null; equipment = null; }
protected override void Reset() { if (ReferenceEquals(inventory, null)) { inventory = (Tapestry_Inventory)ScriptableObject.CreateInstance("Tapestry_Inventory"); } if (damageProfile == null) { damageProfile = new Tapestry_DamageProfile(); } if (attributeProfile == null) { attributeProfile = new Tapestry_AttributeProfile(); } if (skillProfile == null) { skillProfile = new Tapestry_SkillProfile(); } if (keywords == null) { keywords = (Tapestry_KeywordRegistry)ScriptableObject.CreateInstance("Tapestry_KeywordRegistry"); } if (effects == null) { effects = new List <Tapestry_Effect>(); } for (int i = 0; i < transform.childCount; i++) { if (transform.GetChild(i).name == "T_Points") { GameObject pointContainer = transform.GetChild(i).gameObject; for (int j = 0; j < pointContainer.transform.childCount; j++) { if (transform.GetChild(i).name == "P_Attach") { attachPoint = pointContainer.transform.GetChild(j).gameObject; } } } } base.Reset(); }
public void Init(Tapestry_UI_InventoryDisplayTextElement displayPrefab, Tapestry_Inventory inv, string inventoryName, Tapestry_EquipmentProfile eq = null) { title.text = inventoryName; elements = new List <Tapestry_UI_InventoryDisplayTextElement>(); int y = -24; int height = 24; if (!ReferenceEquals(eq, null)) { if (eq.GetNumberOfEquippedItems() == 0) { Tapestry_UI_InventoryDisplayTextElement e = (Tapestry_UI_InventoryDisplayTextElement)Instantiate(displayPrefab, content); e.GetComponent <RectTransform>().localPosition = new Vector3(e.GetComponent <RectTransform>().localPosition.x, y, 0); e.title.text = "<i>Nothing equipped</i>"; e.title.color = new Color(1, 1, 1, 0.5f); e.quantity.text = ""; e.size.text = ""; elements.Add(e); y -= 24; height += 24; } else { Dictionary <Tapestry_EquipSlot, Tapestry_ItemStack> dict = eq.ToDict(); foreach (Tapestry_EquipSlot slot in dict.Keys) { Tapestry_UI_InventoryDisplayTextElement e = (Tapestry_UI_InventoryDisplayTextElement)Instantiate(displayPrefab, content); e.GetComponent <RectTransform>().localPosition = new Vector3(e.GetComponent <RectTransform>().localPosition.x, y, 0); e.SetData(dict[slot]); y -= 24; height += 24; e.equippedInSlot = slot; if (slot == Tapestry_EquipSlot.LeftHand) { e.SetEquippedState(1); } else if (slot == Tapestry_EquipSlot.RightHand) { e.SetEquippedState(2); } else if (slot == Tapestry_EquipSlot.BothHands) { e.SetEquippedState(3); } else { e.SetEquippedState(4); } elements.Add(e); } } } if (inv.items.Count == 0) { Tapestry_UI_InventoryDisplayTextElement e = (Tapestry_UI_InventoryDisplayTextElement)Instantiate(displayPrefab, content); e.GetComponent <RectTransform>().localPosition = new Vector3(e.GetComponent <RectTransform>().localPosition.x, y, 0); e.title.text = "<i>No items</i>"; e.title.color = new Color(1, 1, 1, 0.5f); e.quantity.text = ""; e.size.text = ""; elements.Add(e); y -= 24; height += 24; } else { foreach (Tapestry_ItemStack stack in inv.items) { Tapestry_UI_InventoryDisplayTextElement e = (Tapestry_UI_InventoryDisplayTextElement)Instantiate(displayPrefab, content); e.GetComponent <RectTransform>().localPosition = new Vector3(e.GetComponent <RectTransform>().localPosition.x, y, 0); e.SetData(stack); y -= 24; height += 24; elements.Add(e); } } height += 24; }