public void SetQuestID(int questID) { Color color; this.m_questID = questID; base.gameObject.name = string.Concat("WorldQuest ", this.m_questID); if (!WorldQuestData.WorldQuestDictionary.ContainsKey(this.m_questID)) { return; } WrapperWorldQuest item = WorldQuestData.WorldQuestDictionary[this.m_questID]; if (item.Items == null) { return; } this.m_quantityArea.gameObject.SetActive(false); bool flag = false; foreach (WrapperWorldQuestReward wrapperWorldQuestReward in item.Items) { ItemRec record = StaticDB.itemDB.GetRecord(wrapperWorldQuestReward.RecordID); if (record != null) { flag = true; if (record.OverallQualityID > (int)this.m_lootQuality) { this.m_lootQuality = (ITEM_QUALITY)record.OverallQualityID; } if (!this.m_showLootIconInsteadOfMain) { continue; } StaticDB.itemEffectDB.GetRecordsByParentID(wrapperWorldQuestReward.RecordID).SelectMany <ItemEffectRec, SpellEffectRec>((ItemEffectRec itemEffectRec) => StaticDB.spellEffectDB.GetRecordsByParentID(itemEffectRec.SpellID)).FirstOrDefault <SpellEffectRec>((SpellEffectRec spellEffectRec) => spellEffectRec.Effect == 240); this.m_main.sprite = GeneralHelpers.LoadIconAsset(AssetBundleType.Icons, wrapperWorldQuestReward.FileDataID); this.m_itemID = wrapperWorldQuestReward.RecordID; this.m_itemContext = wrapperWorldQuestReward.ItemContext; this.ShowILVL(); } else { Debug.LogWarning(string.Concat(new object[] { "Invalid Item ID ", wrapperWorldQuestReward.RecordID, " from Quest ID ", this.m_questID, ". Ignoring for loot quality check." })); } } if (!flag && this.m_showLootIconInsteadOfMain) { if (item.Currencies.Count > 0) { foreach (WrapperWorldQuestReward currency in item.Currencies) { if (StaticDB.currencyTypesDB.GetRecord(currency.RecordID) != null) { this.m_main.sprite = CurrencyContainerDB.LoadCurrencyContainerIcon(currency.RecordID, currency.Quantity); CurrencyContainerRec currencyContainerRec = CurrencyContainerDB.CheckAndGetValidCurrencyContainer(currency.RecordID, currency.Quantity); if (currencyContainerRec != null) { this.m_lootQuality = (ITEM_QUALITY)currencyContainerRec.ContainerQuality; } } if (!AdventureMapPanel.instance.IsFilterEnabled(MapFilterType.OrderResources)) { continue; } this.m_quantityArea.gameObject.SetActive(true); this.m_quantity.text = currency.Quantity.ToString(); } } else if (item.Money > 0) { this.m_main.sprite = Resources.Load <Sprite>("MiscIcons/INV_Misc_Coin_01"); if (AdventureMapPanel.instance.IsFilterEnabled(MapFilterType.Gold)) { this.m_quantityArea.gameObject.SetActive(true); this.m_quantity.text = string.Concat(string.Empty, item.Money / 100 / 100); } } else if (item.Experience > 0) { this.m_main.sprite = GeneralHelpers.GetLocalizedFollowerXpIcon(); } } this.m_endTime = item.EndTime; int areaID = 0; WorldMapAreaRec worldMapAreaRec = StaticDB.worldMapAreaDB.GetRecord(item.WorldMapAreaID); if (worldMapAreaRec != null) { areaID = worldMapAreaRec.AreaID; } this.m_areaID = areaID; QuestInfoRec questInfoRec = StaticDB.questInfoDB.GetRecord(item.QuestInfoID); if (questInfoRec == null) { return; } bool modifiers = (questInfoRec.Modifiers & 2) != 0; this.m_dragonFrame.gameObject.SetActive(modifiers); bool type = questInfoRec.Type == 7; this.m_normalGlow.gameObject.SetActive(!type); if (this.m_lootQuality < ITEM_QUALITY.STANDARD) { this.m_normalGlow.color = this.WORLD_QUEST_GLOW_COLOR_DEFAULT; } if (this.m_lootQuality > ITEM_QUALITY.STANDARD && ColorUtility.TryParseHtmlString(string.Concat("#", GeneralHelpers.GetItemQualityColor((int)this.m_lootQuality)), out color)) { this.m_normalGlow.color = color; } this.m_legionAssaultGlow.gameObject.SetActive(type); if ((questInfoRec.Modifiers & 1) != 0 && questInfoRec.Type != 3) { this.m_background.sprite = Resources.Load <Sprite>("NewWorldQuest/Mobile-RareQuest"); } if ((questInfoRec.Modifiers & 4) != 0 && questInfoRec.Type != 3) { this.m_background.sprite = Resources.Load <Sprite>("NewWorldQuest/Mobile-EpicQuest"); } int uITextureAtlasMemberID = 0; string str = null; switch (questInfoRec.Type) { case 1: { int profession = questInfoRec.Profession; switch (profession) { case 182: { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-herbalism"); str = "Mobile-Herbalism"; break; } case 185: { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-cooking"); str = "Mobile-Cooking"; break; } case 186: { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-mining"); str = "Mobile-Mining"; break; } default: { if (profession == 164) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-blacksmithing"); str = "Mobile-Blacksmithing"; break; } else if (profession == 165) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-leatherworking"); str = "Mobile-Leatherworking"; break; } else if (profession == 129) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-firstaid"); str = "Mobile-FirstAid"; break; } else if (profession == 171) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-alchemy"); str = "Mobile-Alchemy"; break; } else if (profession == 197) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-tailoring"); str = "Mobile-Tailoring"; break; } else if (profession == 202) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-engineering"); str = "Mobile-Engineering"; break; } else if (profession == 333) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-enchanting"); str = "Mobile-Enchanting"; break; } else if (profession == 356) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-fishing"); str = "Mobile-Fishing"; break; } else if (profession == 393) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-skinning"); str = "Mobile-Skinning"; break; } else if (profession == 755) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-jewelcrafting"); str = "Mobile-Jewelcrafting"; break; } else if (profession == 773) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-inscription"); str = "Mobile-Inscription"; break; } else if (profession == 794) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-archaeology"); str = "Mobile-Archaeology"; break; } else { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-questmarker-questbang"); str = "Mobile-QuestExclamationIcon"; break; } } } break; } case 2: { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-questmarker-questbang"); str = "Mobile-QuestExclamationIcon"; break; } case 3: { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-pvp-ffa"); str = "Mobile-PVP"; break; } case 4: { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-petbattle"); str = "Mobile-Pets"; break; } default: { goto case 2; } } if (!this.m_showLootIconInsteadOfMain) { if (str != null) { this.m_main.sprite = Resources.Load <Sprite>(string.Concat("NewWorldQuest/", str)); } else if (uITextureAtlasMemberID > 0) { this.m_main.sprite = TextureAtlas.instance.GetAtlasSprite(uITextureAtlasMemberID); this.m_main.SetNativeSize(); } } }
public void SetQuestID(int questID) { this.m_questID = questID; base.gameObject.name = "WorldQuest " + this.m_questID; if (!WorldQuestData.WorldQuestDictionary.ContainsKey(this.m_questID)) { return; } WrapperWorldQuest wrapperWorldQuest = WorldQuestData.WorldQuestDictionary[this.m_questID]; if (wrapperWorldQuest.Items == null) { return; } this.m_quantityArea.gameObject.SetActive(false); bool flag = false; foreach (WrapperWorldQuestReward wrapperWorldQuestReward in wrapperWorldQuest.Items) { ItemRec record = StaticDB.itemDB.GetRecord(wrapperWorldQuestReward.RecordID); if (record == null) { Debug.LogWarning(string.Concat(new object[] { "Invalid Item ID ", wrapperWorldQuestReward.RecordID, " from Quest ID ", this.m_questID, ". Ignoring for loot quality check." })); } else { flag = true; if (record.OverallQualityID > (int)this.m_lootQuality) { this.m_lootQuality = (ITEM_QUALITY)record.OverallQualityID; } SpellEffectRec spellEffectRec2 = StaticDB.itemEffectDB.GetRecordsByParentID(wrapperWorldQuestReward.RecordID).SelectMany((ItemEffectRec itemEffectRec) => StaticDB.spellEffectDB.GetRecordsByParentID(itemEffectRec.SpellID)).FirstOrDefault((SpellEffectRec spellEffectRec) => spellEffectRec.Effect == 240); this.m_main.sprite = GeneralHelpers.LoadIconAsset(AssetBundleType.Icons, wrapperWorldQuestReward.FileDataID); this.m_itemID = wrapperWorldQuestReward.RecordID; this.m_itemContext = wrapperWorldQuestReward.ItemContext; this.m_itemInstance = wrapperWorldQuestReward.ItemInstance; if (!ItemStatCache.instance.HasItemStats(wrapperWorldQuestReward.RecordID)) { ItemStatCache instance = ItemStatCache.instance; instance.ItemStatCacheUpdateAction = (Action <int, int, WrapperItemStats, WrapperItemInstance?>)Delegate.Combine(instance.ItemStatCacheUpdateAction, new Action <int, int, WrapperItemStats, WrapperItemInstance?>(this.UpdateLootQuality)); } WrapperItemStats?itemStats = ItemStatCache.instance.GetItemStats(wrapperWorldQuestReward.RecordID, wrapperWorldQuestReward.ItemContext, wrapperWorldQuestReward.ItemInstance); if (itemStats != null) { this.UpdateLootQualityImpl(itemStats.Value); } this.ShowILVL(); } } if (!flag) { if (wrapperWorldQuest.Currencies.Count > 0) { foreach (WrapperWorldQuestReward wrapperWorldQuestReward2 in wrapperWorldQuest.Currencies) { CurrencyTypesRec record2 = StaticDB.currencyTypesDB.GetRecord(wrapperWorldQuestReward2.RecordID); if (record2 != null) { int num = ((record2.Flags & 8u) == 0u) ? 1 : 100; this.m_main.sprite = CurrencyContainerDB.LoadCurrencyContainerIcon(wrapperWorldQuestReward2.RecordID, wrapperWorldQuestReward2.Quantity / num); CurrencyContainerRec currencyContainerRec = CurrencyContainerDB.CheckAndGetValidCurrencyContainer(wrapperWorldQuestReward2.RecordID, wrapperWorldQuestReward2.Quantity / num); if (currencyContainerRec != null) { this.m_lootQuality = (ITEM_QUALITY)currencyContainerRec.ContainerQuality; } } if (AdventureMapPanel.instance.IsFilterEnabled(MapFilterType.OrderResources)) { this.m_quantityArea.gameObject.SetActive(true); this.m_quantity.text = wrapperWorldQuestReward2.Quantity.ToString(); } } } else if (wrapperWorldQuest.Money > 0) { this.m_main.sprite = Resources.Load <Sprite>("MiscIcons/INV_Misc_Coin_01"); if (AdventureMapPanel.instance.IsFilterEnabled(MapFilterType.Gold)) { this.m_quantityArea.gameObject.SetActive(true); this.m_quantity.text = string.Empty + wrapperWorldQuest.Money / 100 / 100; } } else if (wrapperWorldQuest.Experience > 0) { this.m_main.sprite = GeneralHelpers.GetLocalizedFollowerXpIcon(); } } this.m_endTime = wrapperWorldQuest.EndTime; int areaID = 0; WorldMapAreaRec record3 = StaticDB.worldMapAreaDB.GetRecord(wrapperWorldQuest.WorldMapAreaID); if (record3 != null) { areaID = record3.AreaID; } this.m_areaID = areaID; QuestInfoRec record4 = StaticDB.questInfoDB.GetRecord(wrapperWorldQuest.QuestInfoID); if (record4 == null) { return; } bool active = (record4.Modifiers & 2) != 0; this.m_dragonFrame.gameObject.SetActive(active); bool active2 = record4.Type == 12; if (this.m_lootQuality < ITEM_QUALITY.STANDARD) { this.m_normalGlow.color = this.WORLD_QUEST_GLOW_COLOR_DEFAULT; } if (this.m_lootQuality > ITEM_QUALITY.STANDARD) { string text = "#" + GeneralHelpers.GetItemQualityColor((int)this.m_lootQuality); Color color; if (ColorUtility.TryParseHtmlString(text, ref color)) { this.m_normalGlow.color = color; } } if (this.m_assaultEffect != null) { this.m_assaultEffect.SetActive(active2); } bool flag2 = (record4.Modifiers & 1) != 0; if (flag2 && record4.Type != 3) { this.m_background.sprite = Resources.Load <Sprite>("NewWorldQuest/Mobile-RareQuest"); } bool flag3 = (record4.Modifiers & 4) != 0; if (flag3 && record4.Type != 3) { this.m_background.sprite = Resources.Load <Sprite>("NewWorldQuest/Mobile-EpicQuest"); } }
public void SetQuest(int questID) { this.m_expiringSoon.get_gameObject().SetActive(false); this.m_questID = questID; Transform[] componentsInChildren = this.m_worldQuestObjectiveRoot.GetComponentsInChildren <Transform>(true); Transform[] array = componentsInChildren; for (int i = 0; i < array.Length; i++) { Transform transform = array[i]; if (transform != null && transform != this.m_worldQuestObjectiveRoot.get_transform()) { Object.DestroyImmediate(transform.get_gameObject()); } } MobileWorldQuest mobileWorldQuest = (MobileWorldQuest)WorldQuestData.worldQuestDictionary.get_Item(this.m_questID); this.m_worldQuestNameText.set_text(mobileWorldQuest.QuestTitle); using (IEnumerator <MobileWorldQuestObjective> enumerator = Enumerable.AsEnumerable <MobileWorldQuestObjective>(mobileWorldQuest.Objective).GetEnumerator()) { while (enumerator.MoveNext()) { MobileWorldQuestObjective current = enumerator.get_Current(); GameObject gameObject = Object.Instantiate <GameObject>(this.m_worldQuestObjectiveDisplayPrefab); gameObject.get_transform().SetParent(this.m_worldQuestObjectiveRoot.get_transform(), false); Text component = gameObject.GetComponent <Text>(); component.set_text("-" + current.Text); } } this.InitRewardInfoDisplay(mobileWorldQuest); this.m_endTime = (long)(mobileWorldQuest.EndTime - 900); QuestInfoRec record = StaticDB.questInfoDB.GetRecord(mobileWorldQuest.QuestInfoID); if (record == null) { return; } bool active = (record.Modifiers & 2) != 0; this.m_dragonFrame.get_gameObject().SetActive(active); this.m_background.set_sprite(Resources.Load <Sprite>("NewWorldQuest/Mobile-NormalQuest")); bool flag = (record.Modifiers & 1) != 0; if (flag && record.Type != 3) { this.m_background.set_sprite(Resources.Load <Sprite>("NewWorldQuest/Mobile-RareQuest")); } bool flag2 = (record.Modifiers & 4) != 0; if (flag2 && record.Type != 3) { this.m_background.set_sprite(Resources.Load <Sprite>("NewWorldQuest/Mobile-EpicQuest")); } int uITextureAtlasMemberID; string text; switch (record.Type) { case 1: { int profession = record.Profession; switch (profession) { case 182: uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-herbalism"); text = "Mobile-Herbalism"; goto IL_46E; case 183: case 184: IL_259: if (profession == 164) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-blacksmithing"); text = "Mobile-Blacksmithing"; goto IL_46E; } if (profession == 165) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-leatherworking"); text = "Mobile-Leatherworking"; goto IL_46E; } if (profession == 129) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-firstaid"); text = "Mobile-FirstAid"; goto IL_46E; } if (profession == 171) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-alchemy"); text = "Mobile-Alchemy"; goto IL_46E; } if (profession == 197) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-tailoring"); text = "Mobile-Tailoring"; goto IL_46E; } if (profession == 202) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-engineering"); text = "Mobile-Engineering"; goto IL_46E; } if (profession == 333) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-enchanting"); text = "Mobile-Enchanting"; goto IL_46E; } if (profession == 356) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-fishing"); text = "Mobile-Fishing"; goto IL_46E; } if (profession == 393) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-skinning"); text = "Mobile-Skinning"; goto IL_46E; } if (profession == 755) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-jewelcrafting"); text = "Mobile-Jewelcrafting"; goto IL_46E; } if (profession == 773) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-inscription"); text = "Mobile-Inscription"; goto IL_46E; } if (profession != 794) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-questmarker-questbang"); text = "Mobile-QuestExclamationIcon"; goto IL_46E; } uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-archaeology"); text = "Mobile-Archaeology"; goto IL_46E; case 185: uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-cooking"); text = "Mobile-Cooking"; goto IL_46E; case 186: uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-mining"); text = "Mobile-Mining"; goto IL_46E; } goto IL_259; IL_46E: goto IL_4BB; } case 3: uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-pvp-ffa"); text = "Mobile-PVP"; goto IL_4BB; case 4: uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-petbattle"); text = "Mobile-Pets"; goto IL_4BB; } uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-questmarker-questbang"); text = "Mobile-QuestExclamationIcon"; IL_4BB: if (text != null) { this.m_main.set_sprite(Resources.Load <Sprite>("NewWorldQuest/" + text)); } else if (uITextureAtlasMemberID > 0) { this.m_main.set_sprite(TextureAtlas.instance.GetAtlasSprite(uITextureAtlasMemberID)); this.m_main.SetNativeSize(); } this.UpdateTimeRemaining(); }
public void SetQuestID(int questID) { this.m_questID = questID; base.gameObject.name = "WorldQuest " + this.m_questID; MobileWorldQuest mobileWorldQuest = (MobileWorldQuest)WorldQuestData.worldQuestDictionary[this.m_questID]; if (mobileWorldQuest == null || mobileWorldQuest.Item == null) { return; } this.m_quantityArea.gameObject.SetActive(false); bool flag = false; foreach (MobileWorldQuestReward mobileWorldQuestReward in mobileWorldQuest.Item) { ItemRec record = StaticDB.itemDB.GetRecord(mobileWorldQuestReward.RecordID); if (record == null) { Debug.LogWarning(string.Concat(new object[] { "Invalid Item ID ", mobileWorldQuestReward.RecordID, " from Quest ID ", this.m_questID, ". Ignoring for loot quality check." })); } else { flag = true; if (record.OverallQualityID > (int)this.m_lootQuality) { this.m_lootQuality = (ITEM_QUALITY)record.OverallQualityID; } if (this.m_showLootIconInsteadOfMain) { bool isArtifactXP = false; long quantity = 0L; StaticDB.itemEffectDB.EnumRecordsByParentID(mobileWorldQuestReward.RecordID, delegate(ItemEffectRec itemEffectRec) { StaticDB.spellEffectDB.EnumRecordsByParentID(itemEffectRec.SpellID, delegate(SpellEffectRec spellEffectRec) { if (spellEffectRec.Effect == 240) { isArtifactXP = true; quantity = GeneralHelpers.ApplyArtifactXPMultiplier((long)spellEffectRec.EffectBasePoints, (double)GarrisonStatus.ArtifactXpMultiplier); return(false); } return(true); }); return(!isArtifactXP); }); if (isArtifactXP) { this.m_main.sprite = Resources.Load <Sprite>("WorldMap/INV_Artifact_XP02"); if (AdventureMapPanel.instance.IsFilterEnabled(MapFilterType.ArtifactPower)) { this.m_quantityArea.gameObject.SetActive(true); this.m_quantity.text = quantity.ToString(); } } else { this.m_main.sprite = GeneralHelpers.LoadIconAsset(AssetBundleType.Icons, mobileWorldQuestReward.FileDataID); this.m_itemID = mobileWorldQuestReward.RecordID; this.m_itemContext = mobileWorldQuestReward.ItemContext; this.ShowILVL(); } } } } if (!flag && this.m_showLootIconInsteadOfMain) { if (mobileWorldQuest.Currency.GetLength(0) > 0) { foreach (MobileWorldQuestReward mobileWorldQuestReward2 in mobileWorldQuest.Currency) { CurrencyTypesRec record2 = StaticDB.currencyTypesDB.GetRecord(mobileWorldQuestReward2.RecordID); if (record2 != null) { this.m_main.sprite = GeneralHelpers.LoadCurrencyIcon(mobileWorldQuestReward2.RecordID); } if (AdventureMapPanel.instance.IsFilterEnabled(MapFilterType.OrderResources)) { this.m_quantityArea.gameObject.SetActive(true); this.m_quantity.text = mobileWorldQuestReward2.Quantity.ToString(); } } } else if (mobileWorldQuest.Money > 0) { this.m_main.sprite = Resources.Load <Sprite>("MiscIcons/INV_Misc_Coin_01"); if (AdventureMapPanel.instance.IsFilterEnabled(MapFilterType.Gold)) { this.m_quantityArea.gameObject.SetActive(true); this.m_quantity.text = string.Empty + mobileWorldQuest.Money / 100 / 100; } } else if (mobileWorldQuest.Experience > 0) { this.m_main.sprite = GeneralHelpers.GetLocalizedFollowerXpIcon(); } } this.m_endTime = (long)mobileWorldQuest.EndTime; int areaID = 0; WorldMapAreaRec record3 = StaticDB.worldMapAreaDB.GetRecord(mobileWorldQuest.WorldMapAreaID); if (record3 != null) { areaID = record3.AreaID; } this.m_areaID = areaID; QuestInfoRec record4 = StaticDB.questInfoDB.GetRecord(mobileWorldQuest.QuestInfoID); if (record4 == null) { return; } bool active = (record4.Modifiers & 2) != 0; this.m_dragonFrame.gameObject.SetActive(active); bool flag2 = record4.Type == 7; this.m_normalGlow.gameObject.SetActive(!flag2); this.m_legionAssaultGlow.gameObject.SetActive(flag2); bool flag3 = (record4.Modifiers & 1) != 0; if (flag3 && record4.Type != 3) { this.m_background.sprite = Resources.Load <Sprite>("NewWorldQuest/Mobile-RareQuest"); } bool flag4 = (record4.Modifiers & 4) != 0; if (flag4 && record4.Type != 3) { this.m_background.sprite = Resources.Load <Sprite>("NewWorldQuest/Mobile-EpicQuest"); } int uitextureAtlasMemberID; string text; switch (record4.Type) { case 1: { int profession = record4.Profession; switch (profession) { case 182: uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-herbalism"); text = "Mobile-Herbalism"; break; default: if (profession != 164) { if (profession != 165) { if (profession != 129) { if (profession != 171) { if (profession != 197) { if (profession != 202) { if (profession != 333) { if (profession != 356) { if (profession != 393) { if (profession != 755) { if (profession != 773) { if (profession != 794) { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-questmarker-questbang"); text = "Mobile-QuestExclamationIcon"; } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-archaeology"); text = "Mobile-Archaeology"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-inscription"); text = "Mobile-Inscription"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-jewelcrafting"); text = "Mobile-Jewelcrafting"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-skinning"); text = "Mobile-Skinning"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-fishing"); text = "Mobile-Fishing"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-enchanting"); text = "Mobile-Enchanting"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-engineering"); text = "Mobile-Engineering"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-tailoring"); text = "Mobile-Tailoring"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-alchemy"); text = "Mobile-Alchemy"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-firstaid"); text = "Mobile-FirstAid"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-leatherworking"); text = "Mobile-Leatherworking"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-blacksmithing"); text = "Mobile-Blacksmithing"; } break; case 185: uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-cooking"); text = "Mobile-Cooking"; break; case 186: uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-mining"); text = "Mobile-Mining"; break; } goto IL_70A; } case 3: uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-pvp-ffa"); text = "Mobile-PVP"; goto IL_70A; case 4: uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-petbattle"); text = "Mobile-Pets"; goto IL_70A; } uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-questmarker-questbang"); text = "Mobile-QuestExclamationIcon"; IL_70A: if (!this.m_showLootIconInsteadOfMain) { if (text != null) { this.m_main.sprite = Resources.Load <Sprite>("NewWorldQuest/" + text); } else if (uitextureAtlasMemberID > 0) { this.m_main.sprite = TextureAtlas.instance.GetAtlasSprite(uitextureAtlasMemberID); this.m_main.SetNativeSize(); } } }
public void UpdateWorldQuests() { AdventureMapWorldQuest[] componentsInChildren = this.m_missionAndWorldQuestArea_BrokenIsles.GetComponentsInChildren <AdventureMapWorldQuest>(true); foreach (AdventureMapWorldQuest adventureMapWorldQuest in componentsInChildren) { StackableMapIcon component = adventureMapWorldQuest.GetComponent <StackableMapIcon>(); GameObject gameObject = adventureMapWorldQuest.gameObject; if (component != null) { component.RemoveFromContainer(); } if (gameObject != null) { Object.DestroyImmediate(adventureMapWorldQuest.gameObject); } } componentsInChildren = this.m_missionAndWorldQuestArea_Argus.GetComponentsInChildren <AdventureMapWorldQuest>(true); foreach (AdventureMapWorldQuest adventureMapWorldQuest2 in componentsInChildren) { StackableMapIcon component2 = adventureMapWorldQuest2.GetComponent <StackableMapIcon>(); GameObject gameObject2 = adventureMapWorldQuest2.gameObject; if (component2 != null) { component2.RemoveFromContainer(); } if (gameObject2 != null) { Object.DestroyImmediate(adventureMapWorldQuest2.gameObject); } } IEnumerator enumerator = WorldQuestData.worldQuestDictionary.Values.GetEnumerator(); try { while (enumerator.MoveNext()) { object obj = enumerator.Current; MobileWorldQuest mobileWorldQuest = (MobileWorldQuest)obj; if (!this.IsFilterEnabled(MapFilterType.All)) { bool matchesFilter = false; if (this.IsFilterEnabled(MapFilterType.ArtifactPower)) { foreach (MobileWorldQuestReward mobileWorldQuestReward in mobileWorldQuest.Item) { StaticDB.itemEffectDB.EnumRecordsByParentID(mobileWorldQuestReward.RecordID, delegate(ItemEffectRec itemEffectRec) { StaticDB.spellEffectDB.EnumRecordsByParentID(itemEffectRec.SpellID, delegate(SpellEffectRec spellEffectRec) { if (spellEffectRec.Effect == 240) { matchesFilter = true; return(false); } return(true); }); return(!matchesFilter); }); } } if (this.IsFilterEnabled(MapFilterType.OrderResources)) { foreach (MobileWorldQuestReward mobileWorldQuestReward2 in mobileWorldQuest.Currency) { if (mobileWorldQuestReward2.RecordID == 1220) { matchesFilter = true; break; } } } if (this.IsFilterEnabled(MapFilterType.Gold) && mobileWorldQuest.Money > 0) { matchesFilter = true; } if (this.IsFilterEnabled(MapFilterType.Gear)) { foreach (MobileWorldQuestReward mobileWorldQuestReward3 in mobileWorldQuest.Item) { ItemRec record = StaticDB.itemDB.GetRecord(mobileWorldQuestReward3.RecordID); if (record != null && (record.ClassID == 2 || record.ClassID == 3 || record.ClassID == 4 || record.ClassID == 6)) { matchesFilter = true; break; } } } if (this.IsFilterEnabled(MapFilterType.ProfessionMats)) { foreach (MobileWorldQuestReward mobileWorldQuestReward4 in mobileWorldQuest.Item) { ItemRec record2 = StaticDB.itemDB.GetRecord(mobileWorldQuestReward4.RecordID); if (record2 != null && record2.ClassID == 7) { matchesFilter = true; break; } } } if (this.IsFilterEnabled(MapFilterType.PetCharms)) { foreach (MobileWorldQuestReward mobileWorldQuestReward5 in mobileWorldQuest.Item) { if (mobileWorldQuestReward5.RecordID == 116415) { matchesFilter = true; break; } } } if (this.IsFilterEnabled(MapFilterType.Bounty_HighmountainTribes) && PersistentBountyData.bountiesByWorldQuestDictionary.ContainsKey(mobileWorldQuest.QuestID)) { MobileBountiesByWorldQuest mobileBountiesByWorldQuest = (MobileBountiesByWorldQuest)PersistentBountyData.bountiesByWorldQuestDictionary[mobileWorldQuest.QuestID]; for (int num2 = 0; num2 < mobileBountiesByWorldQuest.BountyQuestID.Length; num2++) { if (mobileBountiesByWorldQuest.BountyQuestID[num2] == 42233) { matchesFilter = true; break; } } } if (this.IsFilterEnabled(MapFilterType.Bounty_CourtOfFarondis) && PersistentBountyData.bountiesByWorldQuestDictionary.ContainsKey(mobileWorldQuest.QuestID)) { MobileBountiesByWorldQuest mobileBountiesByWorldQuest2 = (MobileBountiesByWorldQuest)PersistentBountyData.bountiesByWorldQuestDictionary[mobileWorldQuest.QuestID]; for (int num3 = 0; num3 < mobileBountiesByWorldQuest2.BountyQuestID.Length; num3++) { if (mobileBountiesByWorldQuest2.BountyQuestID[num3] == 42420) { matchesFilter = true; break; } } } if (this.IsFilterEnabled(MapFilterType.Bounty_Dreamweavers) && PersistentBountyData.bountiesByWorldQuestDictionary.ContainsKey(mobileWorldQuest.QuestID)) { MobileBountiesByWorldQuest mobileBountiesByWorldQuest3 = (MobileBountiesByWorldQuest)PersistentBountyData.bountiesByWorldQuestDictionary[mobileWorldQuest.QuestID]; for (int num4 = 0; num4 < mobileBountiesByWorldQuest3.BountyQuestID.Length; num4++) { if (mobileBountiesByWorldQuest3.BountyQuestID[num4] == 42170) { matchesFilter = true; break; } } } if (this.IsFilterEnabled(MapFilterType.Bounty_Wardens) && PersistentBountyData.bountiesByWorldQuestDictionary.ContainsKey(mobileWorldQuest.QuestID)) { MobileBountiesByWorldQuest mobileBountiesByWorldQuest4 = (MobileBountiesByWorldQuest)PersistentBountyData.bountiesByWorldQuestDictionary[mobileWorldQuest.QuestID]; for (int num5 = 0; num5 < mobileBountiesByWorldQuest4.BountyQuestID.Length; num5++) { if (mobileBountiesByWorldQuest4.BountyQuestID[num5] == 42422) { matchesFilter = true; break; } } } if (this.IsFilterEnabled(MapFilterType.Bounty_Nightfallen) && PersistentBountyData.bountiesByWorldQuestDictionary.ContainsKey(mobileWorldQuest.QuestID)) { MobileBountiesByWorldQuest mobileBountiesByWorldQuest5 = (MobileBountiesByWorldQuest)PersistentBountyData.bountiesByWorldQuestDictionary[mobileWorldQuest.QuestID]; for (int num6 = 0; num6 < mobileBountiesByWorldQuest5.BountyQuestID.Length; num6++) { if (mobileBountiesByWorldQuest5.BountyQuestID[num6] == 42421) { matchesFilter = true; break; } } } if (this.IsFilterEnabled(MapFilterType.Bounty_Valarjar) && PersistentBountyData.bountiesByWorldQuestDictionary.ContainsKey(mobileWorldQuest.QuestID)) { MobileBountiesByWorldQuest mobileBountiesByWorldQuest6 = (MobileBountiesByWorldQuest)PersistentBountyData.bountiesByWorldQuestDictionary[mobileWorldQuest.QuestID]; for (int num7 = 0; num7 < mobileBountiesByWorldQuest6.BountyQuestID.Length; num7++) { if (mobileBountiesByWorldQuest6.BountyQuestID[num7] == 42234) { matchesFilter = true; break; } } } if (this.IsFilterEnabled(MapFilterType.Bounty_KirinTor) && PersistentBountyData.bountiesByWorldQuestDictionary.ContainsKey(mobileWorldQuest.QuestID)) { MobileBountiesByWorldQuest mobileBountiesByWorldQuest7 = (MobileBountiesByWorldQuest)PersistentBountyData.bountiesByWorldQuestDictionary[mobileWorldQuest.QuestID]; for (int num8 = 0; num8 < mobileBountiesByWorldQuest7.BountyQuestID.Length; num8++) { if (mobileBountiesByWorldQuest7.BountyQuestID[num8] == 43179) { matchesFilter = true; break; } } } if (this.IsFilterEnabled(MapFilterType.Invasion)) { QuestInfoRec record3 = StaticDB.questInfoDB.GetRecord(mobileWorldQuest.QuestInfoID); if (record3 == null) { break; } bool flag = record3.Type == 7; if (flag) { matchesFilter = true; } } if (!matchesFilter) { continue; } } GameObject gameObject3 = Object.Instantiate <GameObject>(AdventureMapPanel.instance.m_AdvMapWorldQuestPrefab); if (mobileWorldQuest.StartLocationMapID == 1220) { gameObject3.transform.SetParent(this.m_missionAndWorldQuestArea_BrokenIsles.transform, false); float mapScale = 0.10271506f; float mapOffsetX = 1036.88037f; float mapOffsetY = 597.2115f; this.SetupWorldQuestIcon(mobileWorldQuest, gameObject3, mapOffsetX, mapOffsetY, mapScale); } else { gameObject3.transform.localScale = new Vector3(1.33f, 1.33f, 1.33f); gameObject3.transform.SetParent(this.m_missionAndWorldQuestArea_Argus.transform, false); int worldMapAreaID = mobileWorldQuest.WorldMapAreaID; if (worldMapAreaID != 1170) { if (worldMapAreaID != 1171) { if (worldMapAreaID != 1135) { Debug.LogError(string.Concat(new object[] { "UNHANDLED WORLD QUEST AREA ID ", mobileWorldQuest.QuestTitle, " ", mobileWorldQuest.WorldMapAreaID })); } else { float mapScale2 = 0.3132809f; float mapOffsetX2 = 2115.88f; float mapOffsetY2 = -7.788513f; this.SetupWorldQuestIcon(mobileWorldQuest, gameObject3, mapOffsetX2, mapOffsetY2, mapScale2); } } else { float mapScale2 = 0.38f; float mapOffsetX2 = 3981f; float mapOffsetY2 = 1520f; this.SetupWorldQuestIcon(mobileWorldQuest, gameObject3, mapOffsetX2, mapOffsetY2, mapScale2); } } else { float mapScale2 = 0.39f; float mapOffsetX2 = 4832.76f; float mapOffsetY2 = -1232f; this.SetupWorldQuestIcon(mobileWorldQuest, gameObject3, mapOffsetX2, mapOffsetY2, mapScale2); } } AdventureMapWorldQuest component3 = gameObject3.GetComponent <AdventureMapWorldQuest>(); component3.SetQuestID(mobileWorldQuest.QuestID); StackableMapIcon component4 = gameObject3.GetComponent <StackableMapIcon>(); if (component4 != null) { component4.RegisterWithManager(mobileWorldQuest.StartLocationMapID); } } } finally { IDisposable disposable; if ((disposable = (enumerator as IDisposable)) != null) { disposable.Dispose(); } } this.m_pinchZoomContentManager.ForceZoomFactorChanged(); }
public void SetQuest(int questID) { this.m_expiringSoon.gameObject.SetActive(false); this.m_questID = questID; Transform[] componentsInChildren = this.m_worldQuestObjectiveRoot.GetComponentsInChildren <Transform>(true); foreach (Transform transform in componentsInChildren) { if (transform != null && transform != this.m_worldQuestObjectiveRoot.transform) { Object.Destroy(transform.gameObject); } } WrapperWorldQuest worldQuest = WorldQuestData.WorldQuestDictionary[this.m_questID]; GameObject gameObject = Object.Instantiate <GameObject>(this.m_worldQuestObjectiveDisplayPrefab); gameObject.transform.SetParent(this.m_worldQuestObjectiveRoot.transform, false); Text component = gameObject.GetComponent <Text>(); component.text = worldQuest.QuestTitle; component.resizeTextMaxSize = 26; BountySite[] componentsInChildren2 = this.m_bountyLogoRoot.transform.GetComponentsInChildren <BountySite>(true); foreach (BountySite bountySite in componentsInChildren2) { Object.Destroy(bountySite.gameObject); } if (PersistentBountyData.bountiesByWorldQuestDictionary.ContainsKey(worldQuest.QuestID)) { WrapperBountiesByWorldQuest wrapperBountiesByWorldQuest = PersistentBountyData.bountiesByWorldQuestDictionary[worldQuest.QuestID]; for (int k = 0; k < wrapperBountiesByWorldQuest.BountyQuestIDs.Count; k++) { foreach (WrapperWorldQuestBounty bounty in PersistentBountyData.bountyDictionary.Values) { if (wrapperBountiesByWorldQuest.BountyQuestIDs[k] == bounty.QuestID) { QuestV2Rec record = StaticDB.questDB.GetRecord(bounty.QuestID); if (record != null) { GameObject gameObject2 = Object.Instantiate <GameObject>(this.m_worldQuestObjectiveDisplayPrefab); gameObject2.transform.SetParent(this.m_worldQuestObjectiveRoot.transform, false); Text component2 = gameObject2.GetComponent <Text>(); component2.text = record.QuestTitle; component2.color = new Color(1f, 0.773f, 0f, 1f); BountySite bountySite2 = Object.Instantiate <BountySite>(this.m_bountyLogoPrefab); bountySite2.SetBounty(bounty); bountySite2.transform.SetParent(this.m_bountyLogoRoot.transform, false); } } } } } GameObject gameObject3 = Object.Instantiate <GameObject>(this.m_worldQuestObjectiveDisplayPrefab); gameObject3.transform.SetParent(this.m_worldQuestObjectiveRoot.transform, false); this.m_worldQuestTimeText = gameObject3.GetComponent <Text>(); this.m_worldQuestTimeText.text = worldQuest.QuestTitle; this.m_worldQuestTimeText.color = new Color(1f, 0.773f, 0f, 1f); foreach (WrapperWorldQuestObjective wrapperWorldQuestObjective in worldQuest.Objectives) { GameObject gameObject4 = Object.Instantiate <GameObject>(this.m_worldQuestObjectiveDisplayPrefab); gameObject4.transform.SetParent(this.m_worldQuestObjectiveRoot.transform, false); Text component3 = gameObject4.GetComponent <Text>(); component3.text = "- " + wrapperWorldQuestObjective.Text; } this.InitRewardInfoDisplay(worldQuest); this.m_endTime = worldQuest.EndTime; QuestInfoRec record2 = StaticDB.questInfoDB.GetRecord(worldQuest.QuestInfoID); if (record2 == null) { return; } bool active = (record2.Modifiers & 2) != 0; this.m_dragonFrame.gameObject.SetActive(active); if (record2.Type == 7) { this.m_background.sprite = Resources.Load <Sprite>("NewWorldQuest/Mobile-NormalQuest"); this.m_main.sprite = Resources.Load <Sprite>("NewWorldQuest/Map-LegionInvasion-SargerasCrest"); return; } this.m_background.sprite = Resources.Load <Sprite>("NewWorldQuest/Mobile-NormalQuest"); bool flag = (record2.Modifiers & 1) != 0; if (flag && record2.Type != 3) { this.m_background.sprite = Resources.Load <Sprite>("NewWorldQuest/Mobile-RareQuest"); } bool flag2 = (record2.Modifiers & 4) != 0; if (flag2 && record2.Type != 3) { this.m_background.sprite = Resources.Load <Sprite>("NewWorldQuest/Mobile-EpicQuest"); } int uitextureAtlasMemberID; string text; switch (record2.Type) { case 1: { int profession = record2.Profession; switch (profession) { case 182: uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-herbalism"); text = "Mobile-Herbalism"; break; default: if (profession != 164) { if (profession != 165) { if (profession != 129) { if (profession != 171) { if (profession != 197) { if (profession != 202) { if (profession != 333) { if (profession != 356) { if (profession != 393) { if (profession != 755) { if (profession != 773) { if (profession != 794) { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-questmarker-questbang"); text = "Mobile-QuestExclamationIcon"; } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-archaeology"); text = "Mobile-Archaeology"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-inscription"); text = "Mobile-Inscription"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-jewelcrafting"); text = "Mobile-Jewelcrafting"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-skinning"); text = "Mobile-Skinning"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-fishing"); text = "Mobile-Fishing"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-enchanting"); text = "Mobile-Enchanting"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-engineering"); text = "Mobile-Engineering"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-tailoring"); text = "Mobile-Tailoring"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-alchemy"); text = "Mobile-Alchemy"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-firstaid"); text = "Mobile-FirstAid"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-leatherworking"); text = "Mobile-Leatherworking"; } } else { uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-blacksmithing"); text = "Mobile-Blacksmithing"; } break; case 185: uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-cooking"); text = "Mobile-Cooking"; break; case 186: uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-mining"); text = "Mobile-Mining"; break; } goto IL_703; } case 3: uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-pvp-ffa"); text = "Mobile-PVP"; goto IL_703; case 4: uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-petbattle"); text = "Mobile-Pets"; goto IL_703; } uitextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-questmarker-questbang"); text = "Mobile-QuestExclamationIcon"; IL_703: if (text != null) { this.m_main.sprite = Resources.Load <Sprite>("NewWorldQuest/" + text); } else if (uitextureAtlasMemberID > 0) { this.m_main.sprite = TextureAtlas.instance.GetAtlasSprite(uitextureAtlasMemberID); this.m_main.SetNativeSize(); } this.UpdateTimeRemaining(); }
public void SetQuestID(int questID) { this.m_questID = questID; base.get_gameObject().set_name("WorldQuest " + this.m_questID); MobileWorldQuest mobileWorldQuest = (MobileWorldQuest)WorldQuestData.worldQuestDictionary.get_Item(this.m_questID); if (mobileWorldQuest == null || mobileWorldQuest.Item == null) { return; } MobileWorldQuestReward[] item = mobileWorldQuest.Item; for (int i = 0; i < item.Length; i++) { MobileWorldQuestReward mobileWorldQuestReward = item[i]; ItemRec record = StaticDB.itemDB.GetRecord(mobileWorldQuestReward.RecordID); if (record == null) { Debug.LogWarning(string.Concat(new object[] { "Invalid Item ID ", mobileWorldQuestReward.RecordID, " from Quest ID ", this.m_questID, ". Ignoring for loot quality check." })); } else { if (record.OverallQualityID > (int)this.m_lootQuality) { this.m_lootQuality = (ITEM_QUALITY)record.OverallQualityID; } if (this.m_showLootIconInsteadOfMain) { this.m_main.set_sprite(GeneralHelpers.LoadIconAsset(AssetBundleType.Icons, mobileWorldQuestReward.FileDataID)); } } } if (this.m_showLootIconInsteadOfMain) { if (mobileWorldQuest.Money > 0) { this.m_main.set_sprite(Resources.Load <Sprite>("MiscIcons/INV_Misc_Coin_01")); } if (mobileWorldQuest.Experience > 0) { this.m_main.set_sprite(GeneralHelpers.GetLocalizedFollowerXpIcon()); } MobileWorldQuestReward[] currency = mobileWorldQuest.Currency; for (int j = 0; j < currency.Length; j++) { MobileWorldQuestReward mobileWorldQuestReward2 = currency[j]; CurrencyTypesRec record2 = StaticDB.currencyTypesDB.GetRecord(mobileWorldQuestReward2.RecordID); if (record2 != null) { this.m_main.set_sprite(GeneralHelpers.LoadCurrencyIcon(mobileWorldQuestReward2.RecordID)); } } } this.m_endTime = (long)mobileWorldQuest.EndTime; int areaID = 0; WorldMapAreaRec record3 = StaticDB.worldMapAreaDB.GetRecord(mobileWorldQuest.WorldMapAreaID); if (record3 != null) { areaID = record3.AreaID; } this.m_areaID = areaID; QuestInfoRec record4 = StaticDB.questInfoDB.GetRecord(mobileWorldQuest.QuestInfoID); if (record4 == null) { return; } bool active = (record4.Modifiers & 2) != 0; this.m_dragonFrame.get_gameObject().SetActive(active); bool flag = (record4.Modifiers & 1) != 0; if (flag && record4.Type != 3) { this.m_background.set_sprite(Resources.Load <Sprite>("NewWorldQuest/Mobile-RareQuest")); } bool flag2 = (record4.Modifiers & 4) != 0; if (flag2 && record4.Type != 3) { this.m_background.set_sprite(Resources.Load <Sprite>("NewWorldQuest/Mobile-EpicQuest")); } int uITextureAtlasMemberID; string text; switch (record4.Type) { case 1: { int profession = record4.Profession; switch (profession) { case 182: uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-herbalism"); text = "Mobile-Herbalism"; goto IL_50E; case 183: case 184: IL_2F9: if (profession == 164) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-blacksmithing"); text = "Mobile-Blacksmithing"; goto IL_50E; } if (profession == 165) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-leatherworking"); text = "Mobile-Leatherworking"; goto IL_50E; } if (profession == 129) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-firstaid"); text = "Mobile-FirstAid"; goto IL_50E; } if (profession == 171) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-alchemy"); text = "Mobile-Alchemy"; goto IL_50E; } if (profession == 197) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-tailoring"); text = "Mobile-Tailoring"; goto IL_50E; } if (profession == 202) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-engineering"); text = "Mobile-Engineering"; goto IL_50E; } if (profession == 333) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-enchanting"); text = "Mobile-Enchanting"; goto IL_50E; } if (profession == 356) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-fishing"); text = "Mobile-Fishing"; goto IL_50E; } if (profession == 393) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-skinning"); text = "Mobile-Skinning"; goto IL_50E; } if (profession == 755) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-jewelcrafting"); text = "Mobile-Jewelcrafting"; goto IL_50E; } if (profession == 773) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-inscription"); text = "Mobile-Inscription"; goto IL_50E; } if (profession != 794) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-questmarker-questbang"); text = "Mobile-QuestExclamationIcon"; goto IL_50E; } uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-archaeology"); text = "Mobile-Archaeology"; goto IL_50E; case 185: uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-cooking"); text = "Mobile-Cooking"; goto IL_50E; case 186: uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-mining"); text = "Mobile-Mining"; goto IL_50E; } goto IL_2F9; IL_50E: goto IL_55B; } case 3: uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-pvp-ffa"); text = "Mobile-PVP"; goto IL_55B; case 4: uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-petbattle"); text = "Mobile-Pets"; goto IL_55B; } uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-questmarker-questbang"); text = "Mobile-QuestExclamationIcon"; IL_55B: if (!this.m_showLootIconInsteadOfMain) { if (text != null) { this.m_main.set_sprite(Resources.Load <Sprite>("NewWorldQuest/" + text)); } else if (uITextureAtlasMemberID > 0) { this.m_main.set_sprite(TextureAtlas.instance.GetAtlasSprite(uITextureAtlasMemberID)); this.m_main.SetNativeSize(); } } }
public void UpdateWorldQuests() { AdventureMapPanel.ClearWorldQuestArea(this.m_missionAndWorldQuestArea_BrokenIsles); AdventureMapPanel.ClearWorldQuestArea(this.m_missionAndWorldQuestArea_Argus); AdventureMapPanel.ClearWorldQuestArea(this.m_missionAndWorldQuestArea_KulTiras); AdventureMapPanel.ClearWorldQuestArea(this.m_missionAndWorldQuestArea_Zandalar); foreach (WrapperWorldQuest worldQuest in WorldQuestData.WorldQuestDictionary.Values) { if (!this.IsFilterEnabled(MapFilterType.All)) { bool flag = false; if (!flag && this.IsFilterEnabled(MapFilterType.OrderResources)) { flag |= worldQuest.Currencies.Any((WrapperWorldQuestReward reward) => reward.RecordID == 1220); } if (!flag && this.IsFilterEnabled(MapFilterType.Gold) && worldQuest.Money > 0) { flag = true; } if (!flag && this.IsFilterEnabled(MapFilterType.Gear)) { flag |= worldQuest.Items.Any(delegate(WrapperWorldQuestReward reward) { ItemRec record2 = StaticDB.itemDB.GetRecord(reward.RecordID); return(record2 != null && (record2.ClassID == 2 || record2.ClassID == 3 || record2.ClassID == 4 || record2.ClassID == 6)); }); } if (!flag && this.IsFilterEnabled(MapFilterType.ProfessionMats)) { flag |= worldQuest.Items.Any(delegate(WrapperWorldQuestReward reward) { ItemRec record2 = StaticDB.itemDB.GetRecord(reward.RecordID); return(record2 != null && record2.ClassID == 7); }); } if (!flag && this.IsFilterEnabled(MapFilterType.PetCharms)) { flag |= worldQuest.Items.Any((WrapperWorldQuestReward reward) => reward.RecordID == 116415); } if (!flag && this.IsFilterEnabled(MapFilterType.Bounty_HighmountainTribes)) { bool flag2 = flag; bool flag3; if (PersistentBountyData.bountiesByWorldQuestDictionary.ContainsKey(worldQuest.QuestID)) { flag3 = PersistentBountyData.bountiesByWorldQuestDictionary[worldQuest.QuestID].BountyQuestIDs.Any((int questID) => questID == 42233); } else { flag3 = false; } flag = (flag2 || flag3); } if (!flag && this.IsFilterEnabled(MapFilterType.Bounty_CourtOfFarondis)) { bool flag4 = flag; bool flag5; if (PersistentBountyData.bountiesByWorldQuestDictionary.ContainsKey(worldQuest.QuestID)) { flag5 = PersistentBountyData.bountiesByWorldQuestDictionary[worldQuest.QuestID].BountyQuestIDs.Any((int questID) => questID == 42420); } else { flag5 = false; } flag = (flag4 || flag5); } if (!flag && this.IsFilterEnabled(MapFilterType.Bounty_Dreamweavers)) { bool flag6 = flag; bool flag7; if (PersistentBountyData.bountiesByWorldQuestDictionary.ContainsKey(worldQuest.QuestID)) { flag7 = PersistentBountyData.bountiesByWorldQuestDictionary[worldQuest.QuestID].BountyQuestIDs.Any((int questID) => questID == 42170); } else { flag7 = false; } flag = (flag6 || flag7); } if (!flag && this.IsFilterEnabled(MapFilterType.Bounty_Wardens)) { bool flag8 = flag; bool flag9; if (PersistentBountyData.bountiesByWorldQuestDictionary.ContainsKey(worldQuest.QuestID)) { flag9 = PersistentBountyData.bountiesByWorldQuestDictionary[worldQuest.QuestID].BountyQuestIDs.Any((int questID) => questID == 42422); } else { flag9 = false; } flag = (flag8 || flag9); } if (!flag && this.IsFilterEnabled(MapFilterType.Bounty_Nightfallen)) { bool flag10 = flag; bool flag11; if (PersistentBountyData.bountiesByWorldQuestDictionary.ContainsKey(worldQuest.QuestID)) { flag11 = PersistentBountyData.bountiesByWorldQuestDictionary[worldQuest.QuestID].BountyQuestIDs.Any((int questID) => questID == 42421); } else { flag11 = false; } flag = (flag10 || flag11); } if (!flag && this.IsFilterEnabled(MapFilterType.Bounty_Valarjar)) { bool flag12 = flag; bool flag13; if (PersistentBountyData.bountiesByWorldQuestDictionary.ContainsKey(worldQuest.QuestID)) { flag13 = PersistentBountyData.bountiesByWorldQuestDictionary[worldQuest.QuestID].BountyQuestIDs.Any((int questID) => questID == 42234); } else { flag13 = false; } flag = (flag12 || flag13); } if (!flag && this.IsFilterEnabled(MapFilterType.Bounty_KirinTor)) { bool flag14 = flag; bool flag15; if (PersistentBountyData.bountiesByWorldQuestDictionary.ContainsKey(worldQuest.QuestID)) { flag15 = PersistentBountyData.bountiesByWorldQuestDictionary[worldQuest.QuestID].BountyQuestIDs.Any((int questID) => questID == 43179); } else { flag15 = false; } flag = (flag14 || flag15); } if (!flag && this.IsFilterEnabled(MapFilterType.Invasion)) { QuestInfoRec record = StaticDB.questInfoDB.GetRecord(worldQuest.QuestInfoID); if (record == null) { break; } bool flag16 = record.Type == 7; if (flag16) { flag = true; } } if (!flag) { continue; } } GameObject gameObject = Object.Instantiate <GameObject>(AdventureMapPanel.instance.m_AdvMapWorldQuestPrefab); if (worldQuest.StartLocationMapID == 1220) { gameObject.transform.SetParent(this.m_missionAndWorldQuestArea_BrokenIsles.transform, false); float mapScale = 0.10271506f; float mapOffsetX = 1036.88025f; float mapOffsetY = 597.2115f; this.SetupWorldQuestIcon(worldQuest, gameObject, mapOffsetX, mapOffsetY, mapScale); } else if (worldQuest.StartLocationMapID == 1669) { gameObject.transform.localScale = new Vector3(1.33f, 1.33f, 1.33f); gameObject.transform.SetParent(this.m_missionAndWorldQuestArea_Argus.transform, false); int worldMapAreaID = worldQuest.WorldMapAreaID; float mapScale2; float mapOffsetX2; float mapOffsetY2; switch (worldMapAreaID) { case 882: goto IL_5EF; default: if (worldMapAreaID == 1170) { goto IL_5EF; } if (worldMapAreaID == 1171) { goto IL_618; } if (worldMapAreaID != 830 && worldMapAreaID != 1135) { Debug.LogError(string.Concat(new object[] { "UNHANDLED WORLD QUEST AREA ID ", worldQuest.QuestTitle, " ", worldQuest.WorldMapAreaID })); } else { mapScale2 = 0.3132809f; mapOffsetX2 = 2115.88f; mapOffsetY2 = -7.788513f; this.SetupWorldQuestIcon(worldQuest, gameObject, mapOffsetX2, mapOffsetY2, mapScale2); } break; case 885: goto IL_618; } IL_67F: goto IL_761; IL_5EF: mapScale2 = 0.39f; mapOffsetX2 = 4832.76f; mapOffsetY2 = -1232f; this.SetupWorldQuestIcon(worldQuest, gameObject, mapOffsetX2, mapOffsetY2, mapScale2); goto IL_67F; IL_618: mapScale2 = 0.38f; mapOffsetX2 = 3981f; mapOffsetY2 = 1520f; this.SetupWorldQuestIcon(worldQuest, gameObject, mapOffsetX2, mapOffsetY2, mapScale2); } else if (worldQuest.StartLocationMapID == 1642) { gameObject.transform.SetParent(this.m_missionAndWorldQuestArea_Zandalar.transform, false); float mapScale3 = 0.10271506f; float mapOffsetX3 = 1036.88025f; float mapOffsetY3 = 597.2115f; this.SetupWorldQuestIcon(worldQuest, gameObject, mapOffsetX3, mapOffsetY3, mapScale3); } else if (worldQuest.StartLocationMapID == 1643) { gameObject.transform.SetParent(this.m_missionAndWorldQuestArea_KulTiras.transform, false); float mapScale4 = 0.10271506f; float mapOffsetX4 = 1036.88025f; float mapOffsetY4 = 597.2115f; this.SetupWorldQuestIcon(worldQuest, gameObject, mapOffsetX4, mapOffsetY4, mapScale4); } else { Debug.LogError(string.Concat(new object[] { "UNHANDLED WORLD QUEST AREA ID ", worldQuest.QuestTitle, " ", worldQuest.WorldMapAreaID })); } IL_761: AdventureMapWorldQuest component = gameObject.GetComponent <AdventureMapWorldQuest>(); component.SetQuestID(worldQuest.QuestID); StackableMapIcon component2 = gameObject.GetComponent <StackableMapIcon>(); if (component2 != null) { component2.RegisterWithManager(worldQuest.StartLocationMapID); } } this.m_pinchZoomContentManager.ForceZoomFactorChanged(); }
public void SetQuest(int questID) { this.m_expiringSoon.gameObject.SetActive(false); this.m_questID = questID; Transform[] componentsInChildren = this.m_worldQuestObjectiveRoot.GetComponentsInChildren <Transform>(true); for (int i = 0; i < (int)componentsInChildren.Length; i++) { Transform transforms = componentsInChildren[i]; if (transforms != null && transforms != this.m_worldQuestObjectiveRoot.transform) { transforms.SetParent(null); UnityEngine.Object.Destroy(transforms.gameObject); } } WrapperWorldQuest item = WorldQuestData.WorldQuestDictionary[this.m_questID]; this.m_worldQuestNameText.text = item.QuestTitle; BountySite[] bountySiteArray = this.m_bountyLogoRoot.transform.GetComponentsInChildren <BountySite>(true); for (int j = 0; j < (int)bountySiteArray.Length; j++) { BountySite bountySite = bountySiteArray[j]; bountySite.transform.SetParent(null); UnityEngine.Object.Destroy(bountySite.gameObject); } int num = 0; if (PersistentBountyData.bountiesByWorldQuestDictionary.ContainsKey(item.QuestID)) { WrapperBountiesByWorldQuest wrapperBountiesByWorldQuest = PersistentBountyData.bountiesByWorldQuestDictionary[item.QuestID]; for (int k = 0; k < wrapperBountiesByWorldQuest.BountyQuestIDs.Count; k++) { foreach (WrapperWorldQuestBounty value in PersistentBountyData.bountyDictionary.Values) { if (wrapperBountiesByWorldQuest.BountyQuestIDs[k] != value.QuestID) { continue; } QuestV2Rec record = StaticDB.questDB.GetRecord(value.QuestID); if (record == null) { continue; } GameObject gameObject = UnityEngine.Object.Instantiate <GameObject>(this.m_worldQuestObjectiveDisplayPrefab); gameObject.transform.SetParent(this.m_worldQuestObjectiveRoot.transform, false); Text component = gameObject.GetComponent <Text>(); component.text = record.QuestTitle; component.color = new Color(1f, 0.773f, 0f, 1f); BountySite bountySite1 = UnityEngine.Object.Instantiate <BountySite>(this.m_bountyLogoPrefab); bountySite1.SetBounty(value); bountySite1.transform.SetParent(this.m_bountyLogoRoot.transform, false); num++; } } } this.EnableBountyFiligree(num); GameObject gameObject1 = UnityEngine.Object.Instantiate <GameObject>(this.m_worldQuestObjectiveDisplayPrefab); gameObject1.transform.SetParent(this.m_worldQuestObjectiveRoot.transform, false); this.m_worldQuestTimeText = gameObject1.GetComponent <Text>(); this.m_worldQuestTimeText.text = item.QuestTitle; this.m_worldQuestTimeText.color = new Color(1f, 0.773f, 0f, 1f); foreach (WrapperWorldQuestObjective objective in item.Objectives) { GameObject gameObject2 = UnityEngine.Object.Instantiate <GameObject>(this.m_worldQuestObjectiveDisplayPrefab); gameObject2.transform.SetParent(this.m_worldQuestObjectiveRoot.transform, false); Text text = gameObject2.GetComponent <Text>(); text.text = string.Concat("- ", objective.Text); } this.InitRewardInfoDisplay(item); this.m_endTime = item.EndTime; QuestInfoRec questInfoRec = StaticDB.questInfoDB.GetRecord(item.QuestInfoID); if (questInfoRec == null) { return; } bool modifiers = (questInfoRec.Modifiers & 2) != 0; this.m_dragonFrame.gameObject.SetActive(modifiers); if (questInfoRec.Type == 7) { this.m_background.sprite = Resources.Load <Sprite>("NewWorldQuest/Mobile-NormalQuest"); this.m_main.sprite = Resources.Load <Sprite>("NewWorldQuest/Map-LegionInvasion-SargerasCrest"); return; } this.m_background.sprite = Resources.Load <Sprite>("NewWorldQuest/Mobile-NormalQuest"); if ((questInfoRec.Modifiers & 1) != 0 && questInfoRec.Type != 3) { this.m_background.sprite = Resources.Load <Sprite>("NewWorldQuest/Mobile-RareQuest"); } if ((questInfoRec.Modifiers & 4) != 0 && questInfoRec.Type != 3) { this.m_background.sprite = Resources.Load <Sprite>("NewWorldQuest/Mobile-EpicQuest"); } int uITextureAtlasMemberID = 0; string str = null; switch (questInfoRec.Type) { case 1: { int profession = questInfoRec.Profession; switch (profession) { case 182: { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-herbalism"); str = "Mobile-Herbalism"; break; } case 185: { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-cooking"); str = "Mobile-Cooking"; break; } case 186: { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-mining"); str = "Mobile-Mining"; break; } default: { if (profession == 164) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-blacksmithing"); str = "Mobile-Blacksmithing"; break; } else if (profession == 165) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-leatherworking"); str = "Mobile-Leatherworking"; break; } else if (profession == 129) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-firstaid"); str = "Mobile-FirstAid"; break; } else if (profession == 171) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-alchemy"); str = "Mobile-Alchemy"; break; } else if (profession == 197) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-tailoring"); str = "Mobile-Tailoring"; break; } else if (profession == 202) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-engineering"); str = "Mobile-Engineering"; break; } else if (profession == 333) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-enchanting"); str = "Mobile-Enchanting"; break; } else if (profession == 356) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-fishing"); str = "Mobile-Fishing"; break; } else if (profession == 393) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-skinning"); str = "Mobile-Skinning"; break; } else if (profession == 755) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-jewelcrafting"); str = "Mobile-Jewelcrafting"; break; } else if (profession == 773) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-inscription"); str = "Mobile-Inscription"; break; } else if (profession == 794) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-archaeology"); str = "Mobile-Archaeology"; break; } else { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-questmarker-questbang"); str = "Mobile-QuestExclamationIcon"; break; } } } break; } case 2: { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-questmarker-questbang"); str = "Mobile-QuestExclamationIcon"; break; } case 3: { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-pvp-ffa"); str = "Mobile-PVP"; break; } case 4: { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-petbattle"); str = "Mobile-Pets"; break; } default: { goto case 2; } } if (str != null) { this.m_main.sprite = Resources.Load <Sprite>(string.Concat("NewWorldQuest/", str)); } else if (uITextureAtlasMemberID > 0) { this.m_main.sprite = TextureAtlas.instance.GetAtlasSprite(uITextureAtlasMemberID); this.m_main.SetNativeSize(); } this.UpdateTimeRemaining(); }
public void SetQuest(int questID) { this.m_expiringSoon.get_gameObject().SetActive(false); this.m_questID = questID; Transform[] componentsInChildren = this.m_worldQuestObjectiveRoot.GetComponentsInChildren <Transform>(true); Transform[] array = componentsInChildren; for (int i = 0; i < array.Length; i++) { Transform transform = array[i]; if (transform != null && transform != this.m_worldQuestObjectiveRoot.get_transform()) { Object.DestroyImmediate(transform.get_gameObject()); } } MobileWorldQuest mobileWorldQuest = (MobileWorldQuest)WorldQuestData.worldQuestDictionary.get_Item(this.m_questID); GameObject gameObject = Object.Instantiate <GameObject>(this.m_worldQuestObjectiveDisplayPrefab); gameObject.get_transform().SetParent(this.m_worldQuestObjectiveRoot.get_transform(), false); Text component = gameObject.GetComponent <Text>(); component.set_text(mobileWorldQuest.QuestTitle); component.set_resizeTextMaxSize(26); BountySite[] componentsInChildren2 = this.m_bountyLogoRoot.get_transform().GetComponentsInChildren <BountySite>(true); BountySite[] array2 = componentsInChildren2; for (int j = 0; j < array2.Length; j++) { BountySite bountySite = array2[j]; Object.DestroyImmediate(bountySite.get_gameObject()); } if (PersistentBountyData.bountiesByWorldQuestDictionary.ContainsKey(mobileWorldQuest.QuestID)) { MobileBountiesByWorldQuest mobileBountiesByWorldQuest = (MobileBountiesByWorldQuest)PersistentBountyData.bountiesByWorldQuestDictionary.get_Item(mobileWorldQuest.QuestID); for (int k = 0; k < mobileBountiesByWorldQuest.BountyQuestID.Length; k++) { IEnumerator enumerator = PersistentBountyData.bountyDictionary.get_Values().GetEnumerator(); try { while (enumerator.MoveNext()) { MobileWorldQuestBounty mobileWorldQuestBounty = (MobileWorldQuestBounty)enumerator.get_Current(); if (mobileBountiesByWorldQuest.BountyQuestID[k] == mobileWorldQuestBounty.QuestID) { QuestV2Rec record = StaticDB.questDB.GetRecord(mobileWorldQuestBounty.QuestID); if (record != null) { GameObject gameObject2 = Object.Instantiate <GameObject>(this.m_worldQuestObjectiveDisplayPrefab); gameObject2.get_transform().SetParent(this.m_worldQuestObjectiveRoot.get_transform(), false); this.m_worldQuestTimeText = gameObject2.GetComponent <Text>(); this.m_worldQuestTimeText.set_text(record.QuestTitle); this.m_worldQuestTimeText.set_horizontalOverflow(1); this.m_worldQuestTimeText.set_color(new Color(1f, 0.773f, 0f, 1f)); BountySite bountySite2 = Object.Instantiate <BountySite>(this.m_bountyLogoPrefab); bountySite2.SetBounty(mobileWorldQuestBounty); bountySite2.get_transform().SetParent(this.m_bountyLogoRoot.get_transform(), false); } } } } finally { IDisposable disposable = enumerator as IDisposable; if (disposable != null) { disposable.Dispose(); } } } } GameObject gameObject3 = Object.Instantiate <GameObject>(this.m_worldQuestObjectiveDisplayPrefab); gameObject3.get_transform().SetParent(this.m_worldQuestObjectiveRoot.get_transform(), false); this.m_worldQuestTimeText = gameObject3.GetComponent <Text>(); this.m_worldQuestTimeText.set_text(mobileWorldQuest.QuestTitle); this.m_worldQuestTimeText.set_horizontalOverflow(1); this.m_worldQuestTimeText.set_color(new Color(1f, 0.773f, 0f, 1f)); using (IEnumerator <MobileWorldQuestObjective> enumerator2 = Enumerable.AsEnumerable <MobileWorldQuestObjective>(mobileWorldQuest.Objective).GetEnumerator()) { while (enumerator2.MoveNext()) { MobileWorldQuestObjective current = enumerator2.get_Current(); GameObject gameObject4 = Object.Instantiate <GameObject>(this.m_worldQuestObjectiveDisplayPrefab); gameObject4.get_transform().SetParent(this.m_worldQuestObjectiveRoot.get_transform(), false); Text component2 = gameObject4.GetComponent <Text>(); component2.set_text("-" + current.Text); } } this.InitRewardInfoDisplay(mobileWorldQuest); this.m_endTime = (long)(mobileWorldQuest.EndTime - 900); QuestInfoRec record2 = StaticDB.questInfoDB.GetRecord(mobileWorldQuest.QuestInfoID); if (record2 == null) { return; } bool active = (record2.Modifiers & 2) != 0; this.m_dragonFrame.get_gameObject().SetActive(active); this.m_background.set_sprite(Resources.Load <Sprite>("NewWorldQuest/Mobile-NormalQuest")); bool flag = (record2.Modifiers & 1) != 0; if (flag && record2.Type != 3) { this.m_background.set_sprite(Resources.Load <Sprite>("NewWorldQuest/Mobile-RareQuest")); } bool flag2 = (record2.Modifiers & 4) != 0; if (flag2 && record2.Type != 3) { this.m_background.set_sprite(Resources.Load <Sprite>("NewWorldQuest/Mobile-EpicQuest")); } int uITextureAtlasMemberID; string text; switch (record2.Type) { case 1: { int profession = record2.Profession; switch (profession) { case 182: uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-herbalism"); text = "Mobile-Herbalism"; goto IL_6CB; case 183: case 184: IL_4B6: if (profession == 164) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-blacksmithing"); text = "Mobile-Blacksmithing"; goto IL_6CB; } if (profession == 165) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-leatherworking"); text = "Mobile-Leatherworking"; goto IL_6CB; } if (profession == 129) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-firstaid"); text = "Mobile-FirstAid"; goto IL_6CB; } if (profession == 171) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-alchemy"); text = "Mobile-Alchemy"; goto IL_6CB; } if (profession == 197) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-tailoring"); text = "Mobile-Tailoring"; goto IL_6CB; } if (profession == 202) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-engineering"); text = "Mobile-Engineering"; goto IL_6CB; } if (profession == 333) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-enchanting"); text = "Mobile-Enchanting"; goto IL_6CB; } if (profession == 356) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-fishing"); text = "Mobile-Fishing"; goto IL_6CB; } if (profession == 393) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-skinning"); text = "Mobile-Skinning"; goto IL_6CB; } if (profession == 755) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-jewelcrafting"); text = "Mobile-Jewelcrafting"; goto IL_6CB; } if (profession == 773) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-inscription"); text = "Mobile-Inscription"; goto IL_6CB; } if (profession != 794) { uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-questmarker-questbang"); text = "Mobile-QuestExclamationIcon"; goto IL_6CB; } uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-archaeology"); text = "Mobile-Archaeology"; goto IL_6CB; case 185: uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-cooking"); text = "Mobile-Cooking"; goto IL_6CB; case 186: uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-mining"); text = "Mobile-Mining"; goto IL_6CB; } goto IL_4B6; IL_6CB: goto IL_718; } case 3: uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-pvp-ffa"); text = "Mobile-PVP"; goto IL_718; case 4: uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-icon-petbattle"); text = "Mobile-Pets"; goto IL_718; } uITextureAtlasMemberID = TextureAtlas.GetUITextureAtlasMemberID("worldquest-questmarker-questbang"); text = "Mobile-QuestExclamationIcon"; IL_718: if (text != null) { this.m_main.set_sprite(Resources.Load <Sprite>("NewWorldQuest/" + text)); } else if (uITextureAtlasMemberID > 0) { this.m_main.set_sprite(TextureAtlas.instance.GetAtlasSprite(uITextureAtlasMemberID)); this.m_main.SetNativeSize(); } this.UpdateTimeRemaining(); }