public void Open(StoreObjectAddon storeObjectAddon) { if (db == null) { Start(); } mainPanel.gameObject.SetActive(true); currentScreenshot = db.GetStoreObjectScreenshot(storeObjectAddon.objectID, storeObjectAddon.subID); screenshotImage.sprite = currentScreenshot; nameText.text = storeObjectAddon.name + " Preview"; }
public void AddStoreObjectAddon(StoreObjectAddon addon) { bool inList = false; foreach (StoredStoreObjectReference objectReference in storeObjectsInStorage) { if (objectReference.storeObject.objectID == addon.objectID && objectReference.storeObject.subID == addon.subID) { objectReference.quantity++; inList = true; } } if (!inList) { StoredStoreObjectReference newReference = new StoredStoreObjectReference(addon.thisReference, StoredStoreObjectReference.StoredReferenceType.addon); storeObjectsInStorage.Add(newReference); } }
public void CreateManageAddonsList() // panel 1 { foreach (Image img in currentManageAddonsList) { Destroy(img.gameObject); } currentManageAddonsList.Clear(); List <StoreObjectAddon> addons = storeObject.modifierHandler.GetAddonsModifier().addons; RectTransform rectTransform = panel1Content.GetComponent <RectTransform>(); float prefabHeight = newAddonPrefab.gameObject.GetComponent <RectTransform>().rect.height; float contentPanelHeight = addons.Count * prefabHeight; rectTransform.sizeDelta = new Vector2(rectTransform.sizeDelta.x, contentPanelHeight); for (int i = 0; i < addons.Count; i++) { StoreObjectAddon addon = addons[i]; StoreObjectReference reference = storeObject.dm.database.GetStoreObject(addon.objectID, addon.subID); int quantity = storeObject.modifierHandler.GetAddonsModifier().inventory.GetQuantityOwned(addon.objectID, addon.subID); Image newManageAddonGO = Instantiate(manageAddonPrefab); Image[] imgComponents = newManageAddonGO.GetComponentsInChildren <Image>(); imgComponents[0].sprite = reference.objectScreenshot; Button[] buttonComponents = newManageAddonGO.GetComponentsInChildren <Button>(); // buttonComponents[0].onClick.AddListener(() => ViewSelection(vendor)); move addon to storage // buttonComponents[1].onClick.AddListener(() => HireVendor(vendor)); focus on addon Text[] textComponents = newManageAddonGO.GetComponentsInChildren <Text>(); textComponents[0].text = addon.name; newManageAddonGO.transform.SetParent(panel1Content.transform.parent, false); newManageAddonGO.gameObject.SetActive(true); newManageAddonGO.rectTransform.anchoredPosition = new Vector2(0, -prefabHeight * i); newManageAddonGO.transform.SetParent(panel1Content.transform); // Event Triggers float yPos = newManageAddonGO.transform.position.y; EventTrigger trigger = imgComponents[0].GetComponent <EventTrigger>(); SetupMouseEnterScreenshotTrigger(trigger, reference, yPos); SetupMouseExitScreenshotTrigger(trigger); } }