// Initialization + Setup #region public void SetUpItemSlot(ItemDataSO.ItemRarity rarity) { EnableItemSlotView(); ItemDataSO itemData = null; int randomGoldCost = 0; if (rarity == ItemDataSO.ItemRarity.Common) { itemData = ItemLibrary.Instance.GetRandomCommonItem(); randomGoldCost = Random.Range(4, 8); } else if (rarity == ItemDataSO.ItemRarity.Rare) { itemData = ItemLibrary.Instance.GetRandomRareItem(); randomGoldCost = Random.Range(8, 12); } else if (rarity == ItemDataSO.ItemRarity.Epic) { itemData = ItemLibrary.Instance.GetRandomEpicItem(); randomGoldCost = Random.Range(14, 18); } myItemCard.RunSetupFromItemData(itemData, ShopScreenManager.Instance.itemSlotSortingLayer); myItemCard.myItemSlot = this; myItemCard.location = ItemCard.Location.Shop; SetGoldCost(randomGoldCost); }
public void SetUpItemSlot(ItemDataSO.ItemRarity rarity) { EnableItemSlotView(); ItemDataSO itemData = null; int randomGoldCost = 0; if (rarity == ItemDataSO.ItemRarity.Common) { itemData = ItemLibrary.Instance.GetRandomCommonItem(); randomGoldCost = Random.Range(40, 60); } else if (rarity == ItemDataSO.ItemRarity.Rare) { itemData = ItemLibrary.Instance.GetRandomRareItem(); randomGoldCost = Random.Range(60, 100); } else if (rarity == ItemDataSO.ItemRarity.Epic) { itemData = ItemLibrary.Instance.GetRandomEpicItem(); randomGoldCost = Random.Range(100, 200); } myItemCard.RunSetupFromItemData(itemData); myItemCard.myItemSlot = this; myItemCard.inShop = true; SetGoldCost(randomGoldCost); }
public void PopulateEpicItemScreen() { // Generate random item for item reward 1 GameObject newItemOne = Instantiate(PrefabHolder.Instance.ItemCard, ChooseEpicItemScreenContent.transform); ItemCard itemOne = newItemOne.GetComponent <ItemCard>(); itemOne.RunSetupFromItemData(ItemLibrary.Instance.GetRandomEpicItem(), itemCardSortingOrder); currentEpicItemOne = newItemOne; // Generate random item for item reward 2 GameObject newItemTwo = Instantiate(PrefabHolder.Instance.ItemCard, ChooseEpicItemScreenContent.transform); ItemCard itemTwo = newItemTwo.GetComponent <ItemCard>(); itemTwo.RunSetupFromItemData(ItemLibrary.Instance.GetRandomEpicItem(), itemCardSortingOrder); currentEpicItemTwo = newItemTwo; // Prevent duplicate items appearing as reward: Reroll item until we get a non-duplicate while (itemTwo.myName == itemOne.myName) { Debug.Log("RewardScreen.PopulateItemScreen() detected a duplicate item reward, rerolling item two"); itemTwo.RunSetupFromItemData(ItemLibrary.Instance.GetRandomEpicItem(), itemCardSortingOrder); currentEpicItemTwo = newItemTwo; } // Generate random item for item reward 3 GameObject newItemThree = Instantiate(PrefabHolder.Instance.ItemCard, ChooseEpicItemScreenContent.transform); ItemCard itemThree = newItemThree.GetComponent <ItemCard>(); itemThree.RunSetupFromItemData(ItemLibrary.Instance.GetRandomEpicItem(), itemCardSortingOrder); currentEpicItemThree = newItemThree; // Prevent duplicate items appearing as reward: Reroll item until we get a non-duplicate while (itemThree.myName == itemOne.myName || itemThree.myName == itemTwo.myName) { Debug.Log("RewardScreen.PopulateItemScreen() detected a duplicate item reward, rerolling item three"); itemThree.RunSetupFromItemData(ItemLibrary.Instance.GetRandomEpicItem(), itemCardSortingOrder); currentEpicItemThree = newItemThree; } itemOne.location = ItemCard.Location.LootScreen; itemTwo.location = ItemCard.Location.LootScreen; itemThree.location = ItemCard.Location.LootScreen; }
public void AddItemToInventory(ItemCard itemAdded) { Debug.Log("AddItemToInventory() called..."); ItemCard newItem = Instantiate(itemAdded, inventoryContent.transform); Debug.Log("New item instantiated, added to inventoryParent"); newItem.RunSetupFromItemData(ItemLibrary.Instance.GetItemByName(itemAdded.myName)); newItem.inInventory = true; newItem.inShop = false; }
public void PopulateItemScreen() { GameObject newItemOne = Instantiate(PrefabHolder.Instance.ItemCard, ChooseItemScreenContent.transform); ItemCard itemOne = newItemOne.GetComponent <ItemCard>(); itemOne.RunSetupFromItemData(ItemLibrary.Instance.GetRandomLootRewardItem()); currentItemOne = newItemOne; GameObject newItemTwo = Instantiate(PrefabHolder.Instance.ItemCard, ChooseItemScreenContent.transform); ItemCard itemTwo = newItemTwo.GetComponent <ItemCard>(); itemTwo.RunSetupFromItemData(ItemLibrary.Instance.GetRandomLootRewardItem()); currentItemTwo = newItemTwo; GameObject newItemThree = Instantiate(PrefabHolder.Instance.ItemCard, ChooseItemScreenContent.transform); ItemCard itemThree = newItemThree.GetComponent <ItemCard>(); itemThree.RunSetupFromItemData(ItemLibrary.Instance.GetRandomLootRewardItem()); currentItemThree = newItemThree; }