private int GetUncounteredMissionDuration(WrapperGarrisonMission mission) { GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(mission.MissionRecID); if (record == null) { return(0); } float num = (float)record.MissionDuration; foreach (WrapperGarrisonEncounter wrapperGarrisonEncounter in mission.Encounters) { foreach (int id in wrapperGarrisonEncounter.MechanicIDs) { GarrMechanicRec record2 = StaticDB.garrMechanicDB.GetRecord(id); if (record2 != null) { foreach (GarrAbilityEffectRec garrAbilityEffectRec in from rec in StaticDB.garrAbilityEffectDB.GetRecordsByParentID(record2.GarrAbilityID) where rec.AbilityAction == 17u select rec) { num *= garrAbilityEffectRec.ActionValueFlat; } } } } num *= GeneralHelpers.GetMissionDurationTalentMultiplier(); return((int)num); }
public static int GetAdjustedMissionDuration(GarrMissionRec garrMissionRec, List <WrapperGarrisonFollower> followerList, GameObject enemyPortraits) { float num = (float)garrMissionRec.MissionDuration; IEnumerable <GarrAbilityEffectRec> enumerable; if (enemyPortraits != null) { MissionMechanic[] componentsInChildren = enemyPortraits.GetComponentsInChildren <MissionMechanic>(true); enumerable = from garrAbilityEffectRec in (from mechanic in componentsInChildren where !mechanic.IsCountered() && mechanic.AbilityID() != 0 select mechanic).SelectMany((MissionMechanic mechanic) => StaticDB.garrAbilityEffectDB.GetRecordsByParentID(mechanic.AbilityID())) where garrAbilityEffectRec.AbilityAction == 17 select garrAbilityEffectRec; foreach (GarrAbilityEffectRec garrAbilityEffectRec3 in enumerable) { num *= garrAbilityEffectRec3.ActionValueFlat; } } enumerable = from garrAbilityEffectRec in followerList.SelectMany((WrapperGarrisonFollower follower) => follower.AbilityIDs.SelectMany((int abilityID) => StaticDB.garrAbilityEffectDB.GetRecordsByParentID(abilityID))) where garrAbilityEffectRec.AbilityAction == 17 select garrAbilityEffectRec; foreach (GarrAbilityEffectRec garrAbilityEffectRec2 in enumerable) { num *= garrAbilityEffectRec2.ActionValueFlat; } num *= GeneralHelpers.GetMissionDurationTalentMultiplier(); return((int)num); }
public static int GetNumCompletedMissions(bool skipSupportMissions = false) { int num = 0; foreach (WrapperGarrisonMission wrapperGarrisonMission in PersistentMissionData.missionDictionary.Values) { GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(wrapperGarrisonMission.MissionRecID); if (record != null) { if ((GARR_FOLLOWER_TYPE)record.GarrFollowerTypeID == GarrisonStatus.GarrisonFollowerType) { if (!skipSupportMissions || (record.Flags & 16u) == 0u) { TimeSpan t = GarrisonStatus.CurrentTime() - wrapperGarrisonMission.StartTime; TimeSpan timeSpan = wrapperGarrisonMission.MissionDuration - t; if ((wrapperGarrisonMission.MissionState == 1 && timeSpan.TotalSeconds <= 0.0) || wrapperGarrisonMission.MissionState == 2 || wrapperGarrisonMission.MissionState == 3) { num++; } } } } } return(num); }
public void Show() { int num = 0; CombatAllyMissionState combatAllyMissionState = CombatAllyMissionState.notAvailable; foreach (WrapperGarrisonMission wrapperGarrisonMission in PersistentMissionData.missionDictionary.Values) { GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(wrapperGarrisonMission.MissionRecID); if (record != null) { if ((record.Flags & 16u) != 0u) { num = wrapperGarrisonMission.MissionRecID; if (wrapperGarrisonMission.MissionState == 1) { combatAllyMissionState = CombatAllyMissionState.inProgress; } else { combatAllyMissionState = CombatAllyMissionState.available; } break; } } } if (num > 0) { this.m_missionDetailView.HandleMissionSelected(num); } this.m_missionDetailView.SetCombatAllyMissionState(combatAllyMissionState); this.m_sliderPanel.MaximizeSliderPanel(); }
public void Show() { int missionRecID = 0; CombatAllyMissionState combatAllyMissionState = CombatAllyMissionState.notAvailable; foreach (WrapperGarrisonMission value in PersistentMissionData.missionDictionary.Values) { GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(value.MissionRecID); if (record != null) { if ((record.Flags & 16) == 0) { continue; } missionRecID = value.MissionRecID; combatAllyMissionState = (value.MissionState != 1 ? CombatAllyMissionState.available : CombatAllyMissionState.inProgress); break; } } if (missionRecID > 0) { this.m_missionDetailView.HandleMissionSelected(missionRecID); } this.m_missionDetailView.SetCombatAllyMissionState(combatAllyMissionState); this.m_sliderPanel.MaximizeSliderPanel(); }
public void OnAddMissionLootToRewardPanel(int garrMissionID) { WrapperGarrisonMission item = PersistentMissionData.missionDictionary[garrMissionID]; MissionRewardDisplay.InitMissionRewards(AdventureMapPanel.instance.m_missionRewardResultsDisplayPrefab, this.m_rewardIconArea.transform, item.Rewards); if (item.MissionState != 3) { return; } GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(garrMissionID); if (record == null) { return; } if (StaticDB.rewardPackDB.GetRecord(record.OvermaxRewardPackID) == null) { return; } if (item.OvermaxRewards.Count > 0) { GameObject gameObject = UnityEngine.Object.Instantiate <GameObject>(AdventureMapPanel.instance.m_missionRewardResultsDisplayPrefab); gameObject.transform.SetParent(this.m_rewardIconArea.transform, false); MissionRewardDisplay component = gameObject.GetComponent <MissionRewardDisplay>(); int itemID = item.OvermaxRewards[0].ItemID; uint itemQuantity = item.OvermaxRewards[0].ItemQuantity; WrapperGarrisonMissionReward wrapperGarrisonMissionReward = item.OvermaxRewards[0]; component.InitReward(MissionRewardDisplay.RewardType.item, itemID, (int)itemQuantity, 0, wrapperGarrisonMissionReward.ItemFileDataID); } }
public void SetMission(int garrMissionID) { GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(garrMissionID); this.m_missionName.set_text(record.Name); this.m_missionDescription.set_text(record.Description); }
public void CompleteAllMissions() { Debug.Log("Main.CompleteAllMissions()"); IEnumerator enumerator = PersistentMissionData.missionDictionary.get_Values().GetEnumerator(); try { while (enumerator.MoveNext()) { JamGarrisonMobileMission jamGarrisonMobileMission = (JamGarrisonMobileMission)enumerator.get_Current(); GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(jamGarrisonMobileMission.MissionRecID); if (record.GarrFollowerTypeID == 4u) { if (jamGarrisonMobileMission.MissionState == 1) { long num = GarrisonStatus.CurrentTime() - jamGarrisonMobileMission.StartTime; long num2 = jamGarrisonMobileMission.MissionDuration - num; if (num2 <= 0L) { this.CompleteMission(jamGarrisonMobileMission.MissionRecID); } } } } } finally { IDisposable disposable = enumerator as IDisposable; if (disposable != null) { disposable.Dispose(); } } }
public static int GetNumCompletedMissions(bool skipSupportMissions = false) { int num = 0; foreach (WrapperGarrisonMission value in PersistentMissionData.missionDictionary.Values) { GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(value.MissionRecID); if (record != null) { if (record.GarrFollowerTypeID == (uint)GarrisonStatus.GarrisonFollowerType) { if (!skipSupportMissions || (record.Flags & 16) == 0) { TimeSpan timeSpan = GarrisonStatus.CurrentTime() - value.StartTime; TimeSpan missionDuration = value.MissionDuration - timeSpan; if ((value.MissionState != 1 || missionDuration.TotalSeconds > 0) && value.MissionState != 2 && value.MissionState != 3) { continue; } num++; } } } } return(num); }
private int GetUncounteredMissionDuration(JamGarrisonMobileMission mission) { if (mission == null) { return(0); } GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(mission.MissionRecID); if (record == null) { return(0); } float missionDuration = (float)record.MissionDuration; foreach (JamGarrisonEncounter jamGarrisonEncounter in mission.Encounter) { foreach (int id in jamGarrisonEncounter.MechanicID) { GarrMechanicRec record2 = StaticDB.garrMechanicDB.GetRecord(id); if (record2 != null) { StaticDB.garrAbilityEffectDB.EnumRecordsByParentID(record2.GarrAbilityID, delegate(GarrAbilityEffectRec garrAbilityEffectRec) { if (garrAbilityEffectRec.AbilityAction == 17u) { missionDuration *= garrAbilityEffectRec.ActionValueFlat; } return(true); }); } } } missionDuration *= GeneralHelpers.GetMissionDurationTalentMultiplier(); return((int)missionDuration); }
public void OnAddMissionLootToRewardPanel(int garrMissionID) { JamGarrisonMobileMission jamGarrisonMobileMission = (JamGarrisonMobileMission)PersistentMissionData.missionDictionary[garrMissionID]; MissionRewardDisplay.InitMissionRewards(AdventureMapPanel.instance.m_missionRewardResultsDisplayPrefab, this.m_rewardIconArea.transform, jamGarrisonMobileMission.Reward); if (jamGarrisonMobileMission.MissionState != 3) { return; } GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(garrMissionID); if (record == null) { return; } if (StaticDB.rewardPackDB.GetRecord(record.OvermaxRewardPackID) == null) { return; } if (jamGarrisonMobileMission.OvermaxReward.Length > 0) { GameObject gameObject = Object.Instantiate <GameObject>(AdventureMapPanel.instance.m_missionRewardResultsDisplayPrefab); gameObject.transform.SetParent(this.m_rewardIconArea.transform, false); MissionRewardDisplay component = gameObject.GetComponent <MissionRewardDisplay>(); component.InitReward(MissionRewardDisplay.RewardType.item, jamGarrisonMobileMission.OvermaxReward[0].ItemID, (int)jamGarrisonMobileMission.OvermaxReward[0].ItemQuantity, 0, jamGarrisonMobileMission.OvermaxReward[0].ItemFileDataID); } }
private void Update() { foreach (WrapperGarrisonMission value in PersistentMissionData.missionDictionary.Values) { bool flag = false; GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(value.MissionRecID); if (record != null) { if (record.GarrFollowerTypeID == (uint)GarrisonStatus.GarrisonFollowerType) { if (value.MissionState == 1) { TimeSpan timeSpan = GarrisonStatus.CurrentTime() - value.StartTime; if ((value.MissionDuration - timeSpan).TotalSeconds <= 0) { flag = true; } } if (value.MissionState == 2) { flag = true; } !flag; } } } }
public static int GetNumCompletedMissions() { int num = 0; IEnumerator enumerator = PersistentMissionData.missionDictionary.get_Values().GetEnumerator(); try { while (enumerator.MoveNext()) { JamGarrisonMobileMission jamGarrisonMobileMission = (JamGarrisonMobileMission)enumerator.get_Current(); GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(jamGarrisonMobileMission.MissionRecID); if (record != null) { if (record.GarrFollowerTypeID == 4u) { long num2 = GarrisonStatus.CurrentTime() - jamGarrisonMobileMission.StartTime; long num3 = jamGarrisonMobileMission.MissionDuration - num2; if ((jamGarrisonMobileMission.MissionState == 1 && num3 <= 0L) || jamGarrisonMobileMission.MissionState == 2 || jamGarrisonMobileMission.MissionState == 3) { num++; } } } } } finally { IDisposable disposable = enumerator as IDisposable; if (disposable != null) { disposable.Dispose(); } } return(num); }
private void Update() { foreach (WrapperGarrisonMission wrapperGarrisonMission in PersistentMissionData.missionDictionary.Values) { bool flag = false; GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(wrapperGarrisonMission.MissionRecID); if (record != null) { if ((GARR_FOLLOWER_TYPE)record.GarrFollowerTypeID == GarrisonStatus.GarrisonFollowerType) { if (wrapperGarrisonMission.MissionState == 1) { TimeSpan t = GarrisonStatus.CurrentTime() - wrapperGarrisonMission.StartTime; if ((wrapperGarrisonMission.MissionDuration - t).TotalSeconds <= 0.0) { flag = true; } } if (wrapperGarrisonMission.MissionState == 2) { flag = true; } if (flag) { } } } } }
private void InitMissionList() { RectTransform[] componentsInChildren = this.missionListViewContents.GetComponentsInChildren <RectTransform>(true); for (int i = 0; i < componentsInChildren.Length; i++) { if (componentsInChildren[i] != null && componentsInChildren[i] != this.missionListViewContents.get_transform()) { Object.DestroyImmediate(componentsInChildren[i].get_gameObject()); } } List <JamGarrisonMobileMission> list = Enumerable.ToList <JamGarrisonMobileMission>(Enumerable.OfType <JamGarrisonMobileMission>(PersistentMissionData.missionDictionary.get_Values())); if (this.isInProgressMissionList) { list.Sort(new MissionListView.MissionTimeComparer()); } else { list.Sort(new MissionListView.MissionLevelComparer()); } using (List <JamGarrisonMobileMission> .Enumerator enumerator = list.GetEnumerator()) { while (enumerator.MoveNext()) { JamGarrisonMobileMission current = enumerator.get_Current(); GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(current.MissionRecID); if (record != null) { if (record.GarrFollowerTypeID == 4u) { if (this.isInProgressMissionList) { if (current.MissionState == 0) { continue; } if (current.MissionState == 1) { long num = GarrisonStatus.CurrentTime() - current.StartTime; long num2 = current.MissionDuration - num; if (num2 <= 0L) { continue; } } } if (this.isInProgressMissionList || current.MissionState == 0) { GameObject gameObject = Object.Instantiate <GameObject>(this.missionListItemPrefab); gameObject.get_transform().SetParent(this.missionListViewContents.get_transform(), false); MissionListItem component = gameObject.GetComponent <MissionListItem>(); component.Init(record.ID); } } } } } }
private void InitMissionList() { RectTransform[] componentsInChildren = this.missionListViewContents.GetComponentsInChildren <RectTransform>(true); for (int i = 0; i < componentsInChildren.Length; i++) { if (componentsInChildren[i] != null && componentsInChildren[i] != this.missionListViewContents.transform) { componentsInChildren[i].gameObject.transform.SetParent(null); Object.Destroy(componentsInChildren[i].gameObject); } } List <WrapperGarrisonMission> list = PersistentMissionData.missionDictionary.Values.ToList <WrapperGarrisonMission>(); if (this.isInProgressMissionList) { list = (from mission in list orderby mission.StartTime + mission.MissionDuration select mission).ToList <WrapperGarrisonMission>(); } else { list = (from mission in list orderby StaticDB.garrMissionDB.GetRecord(mission.MissionRecID).TargetLevel select mission).ToList <WrapperGarrisonMission>(); } foreach (WrapperGarrisonMission wrapperGarrisonMission in list) { GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(wrapperGarrisonMission.MissionRecID); if (record != null) { if (record.GarrFollowerTypeID == (uint)GarrisonStatus.GarrisonFollowerType) { if (this.isInProgressMissionList) { if (wrapperGarrisonMission.MissionState == 0) { continue; } if (wrapperGarrisonMission.MissionState == 1) { TimeSpan t = GarrisonStatus.CurrentTime() - wrapperGarrisonMission.StartTime; if ((wrapperGarrisonMission.MissionDuration - t).TotalSeconds <= 0.0) { continue; } } } if (this.isInProgressMissionList || wrapperGarrisonMission.MissionState == 0) { GameObject gameObject = Object.Instantiate <GameObject>(this.missionListItemPrefab); gameObject.transform.SetParent(this.missionListViewContents.transform, false); MissionListItem component = gameObject.GetComponent <MissionListItem>(); component.Init(record.ID); } } } } }
public void UpdateVisuals() { CombatAllyMissionState combatAllyMissionState = CombatAllyMissionState.notAvailable; foreach (WrapperGarrisonMission wrapperGarrisonMission in PersistentMissionData.missionDictionary.Values) { GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(wrapperGarrisonMission.MissionRecID); if (record != null) { if ((record.Flags & 16u) != 0u) { this.m_combatAllyMissionID = wrapperGarrisonMission.MissionRecID; if (wrapperGarrisonMission.MissionState == 1) { combatAllyMissionState = CombatAllyMissionState.inProgress; } else { combatAllyMissionState = CombatAllyMissionState.available; } break; } } } if (combatAllyMissionState == CombatAllyMissionState.inProgress) { foreach (WrapperGarrisonFollower wrapperGarrisonFollower in PersistentFollowerData.followerDictionary.Values) { if (wrapperGarrisonFollower.CurrentMissionID == this.m_combatAllyMissionID) { this.m_combatAllySlot.SetFollower(wrapperGarrisonFollower.GarrFollowerID); this.m_combatAllyLabel.gameObject.SetActive(false); this.m_assignChampionText.gameObject.SetActive(false); this.m_championName.gameObject.SetActive(true); GarrFollowerRec record2 = StaticDB.garrFollowerDB.GetRecord(wrapperGarrisonFollower.GarrFollowerID); CreatureRec record3 = StaticDB.creatureDB.GetRecord((GarrisonStatus.Faction() != PVP_FACTION.ALLIANCE) ? record2.HordeCreatureID : record2.AllianceCreatureID); if (wrapperGarrisonFollower.Quality == 6 && record2.TitleName != null && record2.TitleName.Length > 0) { this.m_championName.text = record2.TitleName; } else if (record2 != null) { this.m_championName.text = record3.Name; } this.m_championName.color = GeneralHelpers.GetQualityColor(wrapperGarrisonFollower.Quality); this.m_combatAllySupportSpellDisplay.gameObject.SetActive(true); this.m_combatAllySupportSpellDisplay.SetSpell(wrapperGarrisonFollower.ZoneSupportSpellID); this.m_unassignCombatAllyButton.SetActive(true); break; } } } else { this.ClearCombatAllyDisplay(); } }
private void CreateMissionSite(int garrMissionID) { GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(garrMissionID); if (record == null) { Debug.LogWarning("Mission Not Found: ID " + garrMissionID); return; } if (record.GarrFollowerTypeID != 4u) { return; } if ((record.Flags & 16u) != 0u) { return; } if (!PersistentMissionData.missionDictionary.ContainsKey(garrMissionID)) { return; } JamGarrisonMobileMission jamGarrisonMobileMission = (JamGarrisonMobileMission)PersistentMissionData.missionDictionary.get_Item(garrMissionID); if (jamGarrisonMobileMission.MissionState == 0) { return; } GameObject gameObject = Object.Instantiate <GameObject>(AdventureMapPanel.instance.m_AdvMapMissionSitePrefab); gameObject.get_transform().SetParent(this.m_missionAndWordQuestArea.get_transform(), false); float num = 1.84887111f; float num2 = record.Mappos_x * num; float num3 = record.Mappos_y * -num; float num4 = -272.5694f; float num5 = 1318.388f; num2 += num4; num3 += num5; float width = this.m_worldMapLowDetail.get_sprite().get_textureRect().get_width(); float height = this.m_worldMapLowDetail.get_sprite().get_textureRect().get_height(); Vector2 vector = new Vector3(num2 / width, num3 / height); RectTransform component = gameObject.GetComponent <RectTransform>(); component.set_anchorMin(vector); component.set_anchorMax(vector); component.set_anchoredPosition(Vector2.get_zero()); AdventureMapMissionSite component2 = gameObject.GetComponent <AdventureMapMissionSite>(); component2.SetMission(record.ID); StackableMapIcon component3 = gameObject.GetComponent <StackableMapIcon>(); if (component3 != null) { component3.RegisterWithManager(); } }
public void InitializeDialog(int missionId) { GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(missionId); if (record != null) { this.m_missionName.text = record.Name; this.m_missionDescription.text = record.Description; } }
private void InitMissionList() { RectTransform[] componentsInChildren = this.missionListViewContents.GetComponentsInChildren <RectTransform>(true); for (int i = 0; i < componentsInChildren.Length; i++) { if (componentsInChildren[i] != null && componentsInChildren[i] != this.missionListViewContents.transform) { Object.DestroyImmediate(componentsInChildren[i].gameObject); } } List <JamGarrisonMobileMission> list = PersistentMissionData.missionDictionary.Values.OfType <JamGarrisonMobileMission>().ToList <JamGarrisonMobileMission>(); if (this.isInProgressMissionList) { list.Sort(new MissionListView.MissionTimeComparer()); } else { list.Sort(new MissionListView.MissionLevelComparer()); } foreach (JamGarrisonMobileMission jamGarrisonMobileMission in list) { GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(jamGarrisonMobileMission.MissionRecID); if (record != null) { if (record.GarrFollowerTypeID == 4u) { if (this.isInProgressMissionList) { if (jamGarrisonMobileMission.MissionState == 0) { continue; } if (jamGarrisonMobileMission.MissionState == 1) { long num = GarrisonStatus.CurrentTime() - jamGarrisonMobileMission.StartTime; long num2 = jamGarrisonMobileMission.MissionDuration - num; if (num2 <= 0L) { continue; } } } if (this.isInProgressMissionList || jamGarrisonMobileMission.MissionState == 0) { GameObject gameObject = Object.Instantiate <GameObject>(this.missionListItemPrefab); gameObject.transform.SetParent(this.missionListViewContents.transform, false); MissionListItem component = gameObject.GetComponent <MissionListItem>(); component.Init(record.ID); } } } } }
public int Compare(JamGarrisonMobileMission m1, JamGarrisonMobileMission m2) { GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(m1.MissionRecID); GarrMissionRec record2 = StaticDB.garrMissionDB.GetRecord(m2.MissionRecID); if (record == null || record2 == null) { return(0); } return(record2.TargetLevel - record.TargetLevel); }
private void CreateMissionSite(int garrMissionID) { GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(garrMissionID); if (record == null) { Debug.LogWarning("Mission Not Found: ID " + garrMissionID); return; } if ((GARR_FOLLOWER_TYPE)record.GarrFollowerTypeID != GarrisonStatus.GarrisonFollowerType) { return; } if ((record.Flags & 16u) != 0u) { return; } if (!PersistentMissionData.missionDictionary.ContainsKey(garrMissionID)) { return; } if (PersistentMissionData.missionDictionary[garrMissionID].MissionState == 0) { return; } GameObject gameObject = Object.Instantiate <GameObject>(AdventureMapPanel.instance.m_AdvMapMissionSitePrefab); gameObject.transform.SetParent(this.m_mapViewContentsRT, false); float num = 1.84887111f; float num2 = record.Mappos_x * num; float num3 = record.Mappos_y * -num; float num4 = -272.5694f; float num5 = 1318.388f; num2 += num4; num3 += num5; float num6 = 1f; float num7 = 1f; Vector2 vector = new Vector3(num2 / num6, num3 / num7); RectTransform component = gameObject.GetComponent <RectTransform>(); component.anchorMin = vector; component.anchorMax = vector; component.anchoredPosition = Vector2.zero; AdventureMapMissionSite component2 = gameObject.GetComponent <AdventureMapMissionSite>(); component2.SetMission(record.ID); StackableMapIcon component3 = gameObject.GetComponent <StackableMapIcon>(); if (component3 != null) { component3.RegisterWithManager(record.AreaID); } }
private void PrecacheMissionChances() { IEnumerator enumerator = PersistentMissionData.missionDictionary.get_Values().GetEnumerator(); try { while (enumerator.MoveNext()) { JamGarrisonMobileMission jamGarrisonMobileMission = (JamGarrisonMobileMission)enumerator.get_Current(); GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(jamGarrisonMobileMission.MissionRecID); if (record.GarrFollowerTypeID == 4u) { if (jamGarrisonMobileMission.MissionState == 1) { List <JamGarrisonFollower> list = new List <JamGarrisonFollower>(); using (Dictionary <int, JamGarrisonFollower> .ValueCollection.Enumerator enumerator2 = PersistentFollowerData.followerDictionary.get_Values().GetEnumerator()) { while (enumerator2.MoveNext()) { JamGarrisonFollower current = enumerator2.get_Current(); if (current.CurrentMissionID == jamGarrisonMobileMission.MissionRecID) { list.Add(current); } } } MobilePlayerEvaluateMission mobilePlayerEvaluateMission = new MobilePlayerEvaluateMission(); mobilePlayerEvaluateMission.GarrMissionID = jamGarrisonMobileMission.MissionRecID; mobilePlayerEvaluateMission.GarrFollowerID = new int[list.get_Count()]; int num = 0; using (List <JamGarrisonFollower> .Enumerator enumerator3 = list.GetEnumerator()) { while (enumerator3.MoveNext()) { JamGarrisonFollower current2 = enumerator3.get_Current(); mobilePlayerEvaluateMission.GarrFollowerID[num++] = current2.GarrFollowerID; } } Login.instance.SendToMobileServer(mobilePlayerEvaluateMission); } } } } finally { IDisposable disposable = enumerator as IDisposable; if (disposable != null) { disposable.Dispose(); } } }
public void SetMission(int garrMissionID) { GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(garrMissionID); if (record == null) { this.m_missionName.text = string.Empty; this.m_missionDescription.text = string.Empty; return; } this.m_missionName.text = record.Name; this.m_missionDescription.text = record.Description; }
public void SetMission(int garrMissionID) { GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(garrMissionID); if (record == null) { this.m_missionName.set_text(string.Empty); this.m_missionDescription.set_text(string.Empty); return; } this.m_missionName.set_text(record.Name); this.m_missionDescription.set_text(record.Description); }
private void CreateMissionSite(int garrMissionID) { GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(garrMissionID); if (record == null) { Debug.LogWarning(string.Concat("Mission Not Found: ID ", garrMissionID)); return; } if (record.GarrFollowerTypeID != (uint)GarrisonStatus.GarrisonFollowerType) { return; } if ((record.Flags & 16) != 0) { return; } if (!PersistentMissionData.missionDictionary.ContainsKey(garrMissionID)) { return; } if (PersistentMissionData.missionDictionary[garrMissionID].MissionState == 0) { return; } GameObject gameObject = UnityEngine.Object.Instantiate <GameObject>(AdventureMapPanel.instance.m_AdvMapMissionSitePrefab); gameObject.transform.SetParent(this.m_mapViewContentsRT, false); float single = 1.84887111f; float mapposX = (float)record.Mappos_x * single; float mapposY = (float)record.Mappos_y * -single; float single1 = -272.5694f; float single2 = 1318.388f; mapposX += single1; mapposY += single2; Vector2 vector3 = new Vector3(mapposX / 1f, mapposY / 1f); RectTransform component = gameObject.GetComponent <RectTransform>(); component.anchorMin = vector3; component.anchorMax = vector3; component.anchoredPosition = Vector2.zero; gameObject.GetComponent <AdventureMapMissionSite>().SetMission(record.ID); StackableMapIcon stackableMapIcon = gameObject.GetComponent <StackableMapIcon>(); if (stackableMapIcon != null) { stackableMapIcon.RegisterWithManager(record.AreaID); } }
public void Init() { FollowerInventoryListItem[] componentsInChildren = this.m_combatAllyListContent.GetComponentsInChildren <FollowerInventoryListItem>(true); foreach (FollowerInventoryListItem followerInventoryListItem in componentsInChildren) { Object.Destroy(followerInventoryListItem.gameObject); } int num = 0; foreach (WrapperGarrisonMission wrapperGarrisonMission in PersistentMissionData.missionDictionary.Values) { GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(wrapperGarrisonMission.MissionRecID); if (record != null) { if ((record.Flags & 16u) != 0u) { this.CreateCombatAllyItems(wrapperGarrisonMission.MissionRecID, (int)record.MissionCost); num = (int)record.MissionCost; break; } } } if (num <= GarrisonStatus.WarResources()) { this.m_combatAllyCost.text = string.Concat(new object[] { StaticDB.GetString("COST2", "Cost:"), " <color=#ffffffff>", num, "</color>" }); } else { this.m_combatAllyCost.text = string.Concat(new object[] { StaticDB.GetString("COST2", "Cost:"), " <color=#ff0000ff>", num, "</color>" }); } Sprite sprite = GeneralHelpers.LoadCurrencyIcon(1560); if (sprite != null) { this.m_combatAllyCostResourceIcon.sprite = sprite; } }
private void OnMissionSuccessChanceChanged(int chance) { if (this.m_garrMissionID == 0) { return; } if (!base.get_gameObject().get_activeSelf()) { return; } this.m_bonusLootDisplay.SetActive(false); if (chance <= -1000) { this.missionPercentChanceText.set_text("%"); this.m_missionChanceSpinner.SetActive(true); } else { this.missionPercentChanceText.set_text(chance + "%"); this.m_missionChanceSpinner.SetActive(false); } this.m_lootBorderNormal.SetActive(chance < 100); this.m_lootBorderLitUp.SetActive(chance >= 100); GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(this.m_garrMissionID); if (record == null) { Debug.LogError("Invalid Mission ID:" + this.m_garrMissionID); return; } if (StaticDB.rewardPackDB.GetRecord(record.OvermaxRewardPackID) == null) { return; } JamGarrisonMobileMission jamGarrisonMobileMission = (!PersistentMissionData.missionDictionary.ContainsKey(this.m_garrMissionID)) ? null : ((JamGarrisonMobileMission)PersistentMissionData.missionDictionary.get_Item(this.m_garrMissionID)); if (record.OvermaxRewardPackID > 0 && jamGarrisonMobileMission != null && jamGarrisonMobileMission.OvermaxReward.Length > 0) { this.m_bonusLootDisplay.SetActive(true); this.m_bonusLootChanceText.set_text(string.Concat(new object[] { "<color=#ffff00ff>", StaticDB.GetString("BONUS_ROLL", null), " </color>\n<color=#ff8600ff>", Math.Max(0, chance - 100), "%</color>" })); } }
public void Show() { int num = 0; CombatAllyMissionState combatAllyMissionState = CombatAllyMissionState.notAvailable; IEnumerator enumerator = PersistentMissionData.missionDictionary.Values.GetEnumerator(); try { while (enumerator.MoveNext()) { object obj = enumerator.Current; JamGarrisonMobileMission jamGarrisonMobileMission = (JamGarrisonMobileMission)obj; GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(jamGarrisonMobileMission.MissionRecID); if (record != null) { if ((record.Flags & 16u) != 0u) { num = jamGarrisonMobileMission.MissionRecID; if (jamGarrisonMobileMission.MissionState == 1) { combatAllyMissionState = CombatAllyMissionState.inProgress; } else { combatAllyMissionState = CombatAllyMissionState.available; } break; } } } } finally { IDisposable disposable; if ((disposable = (enumerator as IDisposable)) != null) { disposable.Dispose(); } } if (num > 0) { this.m_missionDetailView.HandleMissionSelected(num); } this.m_missionDetailView.SetCombatAllyMissionState(combatAllyMissionState); this.m_sliderPanel.MaximizeSliderPanel(); }
private void Update() { IEnumerator enumerator = PersistentMissionData.missionDictionary.Values.GetEnumerator(); try { while (enumerator.MoveNext()) { object obj = enumerator.Current; JamGarrisonMobileMission jamGarrisonMobileMission = (JamGarrisonMobileMission)obj; bool flag = false; GarrMissionRec record = StaticDB.garrMissionDB.GetRecord(jamGarrisonMobileMission.MissionRecID); if (record != null) { if (record.GarrFollowerTypeID == 4u) { if (jamGarrisonMobileMission.MissionState == 1) { long num = GarrisonStatus.CurrentTime() - jamGarrisonMobileMission.StartTime; long num2 = jamGarrisonMobileMission.MissionDuration - num; if (num2 <= 0L) { flag = true; } } if (jamGarrisonMobileMission.MissionState == 2) { flag = true; } if (flag) { } } } } } finally { IDisposable disposable; if ((disposable = (enumerator as IDisposable)) != null) { disposable.Dispose(); } } }