public void Init(FollowerDetailView followerDetailView) { this.m_currentFollowerDetailView = followerDetailView; FollowerInventoryListItem[] componentsInChildren = this.m_armamentListContent.GetComponentsInChildren <FollowerInventoryListItem>(true); FollowerInventoryListItem[] array = componentsInChildren; for (int i = 0; i < array.Length; i++) { FollowerInventoryListItem followerInventoryListItem = array[i]; Object.DestroyImmediate(followerInventoryListItem.get_gameObject()); } bool active = true; IEnumerator enumerator = PersistentArmamentData.armamentDictionary.get_Values().GetEnumerator(); try { while (enumerator.MoveNext()) { MobileFollowerArmament item = (MobileFollowerArmament)enumerator.get_Current(); FollowerInventoryListItem followerInventoryListItem2 = Object.Instantiate <FollowerInventoryListItem>(this.m_armamentListItemPrefab); followerInventoryListItem2.get_transform().SetParent(this.m_armamentListContent.get_transform(), false); followerInventoryListItem2.SetArmament(item, followerDetailView); active = false; } } finally { IDisposable disposable = enumerator as IDisposable; if (disposable != null) { disposable.Dispose(); } } this.m_emptyMessage.get_gameObject().SetActive(active); }
public void SetArmament(MobileFollowerArmament item, FollowerDetailView followerDetailView) { this.m_armamentItem = item; this.m_followerDetailView = followerDetailView; ItemRec record = StaticDB.itemDB.GetRecord(item.ItemID); this.m_equipmentName.set_text(GeneralHelpers.GetItemQualityColorTag(record.OverallQualityID) + record.Display + "</color>"); SpellTooltipRec record2 = StaticDB.spellTooltipDB.GetRecord(item.SpellID); if (record2 != null) { this.m_equipmentDescription.set_text(record2.Description); } else { this.m_equipmentDescription.set_text(string.Concat(new object[] { "ERROR. Unknown Spell ID: ", item.SpellID, " Item ID:", item.ItemID })); } this.m_equipmentDescription.set_text(WowTextParser.parser.Parse(this.m_equipmentDescription.get_text(), item.SpellID)); this.m_equipmentDescription.set_supportRichText(WowTextParser.parser.IsRichText()); if (this.m_iconErrorText != null) { this.m_iconErrorText.get_gameObject().SetActive(false); } Sprite sprite = GeneralHelpers.LoadIconAsset(AssetBundleType.Icons, record.IconFileDataID); if (sprite != null) { this.m_equipmentIcon.set_sprite(sprite); } else if (this.m_iconErrorText != null) { this.m_iconErrorText.get_gameObject().SetActive(true); this.m_iconErrorText.set_text(string.Empty + record.IconFileDataID); } this.m_equipmentQuantity.set_text((item.Quantity <= 1) ? string.Empty : (string.Empty + item.Quantity)); JamGarrisonFollower jamGarrisonFollower = PersistentFollowerData.followerDictionary.get_Item(this.m_followerDetailView.GetCurrentFollower()); if (jamGarrisonFollower != null && jamGarrisonFollower.CurrentMissionID != 0) { this.m_useItemButtonLabel.set_text(StaticDB.GetString("ON_MISSION", null)); this.m_useItemButtonLabel.set_color(new Color(0.5f, 0.5f, 0.5f, 1f)); this.m_useItemButton.set_interactable(false); } else if (jamGarrisonFollower != null && (jamGarrisonFollower.ItemLevelArmor + jamGarrisonFollower.ItemLevelWeapon) / 2 >= 850) { this.m_useItemButtonLabel.set_text(FollowerInventoryListItem.m_maxiLevelString); this.m_useItemButtonLabel.set_color(new Color(0.5f, 0.5f, 0.5f, 1f)); this.m_useItemButton.set_interactable(false); } else { this.m_useItemButtonLabel.set_text(StaticDB.GetString("USE_ITEM", null)); } }
public static void AddOrUpdateArmament(MobileFollowerArmament armament) { if (PersistentArmamentData.instance.m_armamentDictionary.ContainsKey(armament.ItemID)) { PersistentArmamentData.instance.m_armamentDictionary.Remove(armament.ItemID); } PersistentArmamentData.instance.m_armamentDictionary.Add(armament.ItemID, armament); }
public void SetArmament(MobileFollowerArmament item, int garrFollowerID) { this.m_garrFollowerID = garrFollowerID; this.m_item = item; ItemRec record = StaticDB.itemDB.GetRecord(item.ItemID); this.m_armamentName.set_text(record.Display); SpellTooltipRec record2 = StaticDB.spellTooltipDB.GetRecord(item.SpellID); if (record2 != null) { this.m_armamentDescription.set_text(record2.Description); } else { this.m_armamentDescription.set_text(string.Concat(new object[] { "ERROR. Unknown Spell ID: ", item.SpellID, " Item ID:", item.ItemID })); } this.m_armamentDescription.set_text(WowTextParser.parser.Parse(this.m_armamentDescription.get_text(), item.SpellID)); if (this.m_iconErrorText != null) { this.m_iconErrorText.get_gameObject().SetActive(false); } Sprite sprite = GeneralHelpers.LoadIconAsset(AssetBundleType.Icons, record.IconFileDataID); if (sprite != null) { this.m_armamentIcon.set_sprite(sprite); } else if (this.m_iconErrorText != null) { this.m_iconErrorText.get_gameObject().SetActive(true); this.m_iconErrorText.set_text(string.Empty + record.IconFileDataID); } this.m_armamentQuantity.set_text((item.Quantity <= 1) ? string.Empty : (string.Empty + item.Quantity)); }
public void Init(FollowerDetailView followerDetailView, int abilityToReplace) { this.m_followerDetailView = followerDetailView; this.m_abilityToReplace = abilityToReplace; FollowerInventoryListItem[] componentsInChildren = this.m_equipmentInventoryContent.GetComponentsInChildren <FollowerInventoryListItem>(true); FollowerInventoryListItem[] array = componentsInChildren; for (int i = 0; i < array.Length; i++) { FollowerInventoryListItem followerInventoryListItem = array[i]; Object.DestroyImmediate(followerInventoryListItem.get_gameObject()); } int num = 0; IEnumerator enumerator = PersistentEquipmentData.equipmentDictionary.get_Values().GetEnumerator(); try { while (enumerator.MoveNext()) { MobileFollowerEquipment item = (MobileFollowerEquipment)enumerator.get_Current(); if (num == 0) { GameObject gameObject = Object.Instantiate <GameObject>(this.m_headerPrefab); gameObject.get_transform().SetParent(this.m_equipmentInventoryContent.get_transform(), false); FollowerInventoryListItem component = gameObject.GetComponent <FollowerInventoryListItem>(); component.SetHeaderText("Equipment"); } GameObject gameObject2 = Object.Instantiate <GameObject>(this.m_followerInventoryListItemPrefab); gameObject2.get_transform().SetParent(this.m_equipmentInventoryContent.get_transform(), false); FollowerInventoryListItem component2 = gameObject2.GetComponent <FollowerInventoryListItem>(); component2.SetEquipment(item, followerDetailView, abilityToReplace); num++; } } finally { IDisposable disposable = enumerator as IDisposable; if (disposable != null) { disposable.Dispose(); } } if (num == 0) { GameObject gameObject3 = Object.Instantiate <GameObject>(this.m_headerPrefab); gameObject3.get_transform().SetParent(this.m_equipmentInventoryContent.get_transform(), false); FollowerInventoryListItem component3 = gameObject3.GetComponent <FollowerInventoryListItem>(); component3.SetHeaderText(StaticDB.GetString("NO_EQUIPMENT", null)); } int num2 = 0; IEnumerator enumerator2 = PersistentArmamentData.armamentDictionary.get_Values().GetEnumerator(); try { while (enumerator2.MoveNext()) { MobileFollowerArmament item2 = (MobileFollowerArmament)enumerator2.get_Current(); if (num2 == 0) { GameObject gameObject4 = Object.Instantiate <GameObject>(this.m_headerPrefab); gameObject4.get_transform().SetParent(this.m_equipmentInventoryContent.get_transform(), false); FollowerInventoryListItem component4 = gameObject4.GetComponent <FollowerInventoryListItem>(); component4.SetHeaderText("Armaments"); } GameObject gameObject5 = Object.Instantiate <GameObject>(this.m_followerInventoryListItemPrefab); gameObject5.get_transform().SetParent(this.m_equipmentInventoryContent.get_transform(), false); FollowerInventoryListItem component5 = gameObject5.GetComponent <FollowerInventoryListItem>(); component5.SetArmament(item2, followerDetailView); num2++; } } finally { IDisposable disposable2 = enumerator2 as IDisposable; if (disposable2 != null) { disposable2.Dispose(); } } if (num == 0) { GameObject gameObject6 = Object.Instantiate <GameObject>(this.m_headerPrefab); gameObject6.get_transform().SetParent(this.m_equipmentInventoryContent.get_transform(), false); FollowerInventoryListItem component6 = gameObject6.GetComponent <FollowerInventoryListItem>(); component6.SetHeaderText(StaticDB.GetString("NO_ARMAMENTS", null)); } }