private void PopulateCompletedMissionList()
    {
        IEnumerator enumerator = PersistentMissionData.missionDictionary.Values.GetEnumerator();

        try
        {
            while (enumerator.MoveNext())
            {
                object obj = enumerator.Current;
                JamGarrisonMobileMission jamGarrisonMobileMission = (JamGarrisonMobileMission)obj;
                if ((jamGarrisonMobileMission.MissionState == 2 || jamGarrisonMobileMission.MissionState == 6) && !this.MissionIsOnCompletedMissionList(jamGarrisonMobileMission.MissionRecID))
                {
                    GameObject gameObject = Object.Instantiate <GameObject>(this.missionListItemPrefab);
                    gameObject.transform.SetParent(this.completedMissionListContents.transform, false);
                    MissionListItem component = gameObject.GetComponent <MissionListItem>();
                    component.Init(jamGarrisonMobileMission.MissionRecID);
                    component.isResultsItem = true;
                }
            }
        }
        finally
        {
            IDisposable disposable;
            if ((disposable = (enumerator as IDisposable)) != null)
            {
                disposable.Dispose();
            }
        }
    }
#pragma warning restore 0649

    // Start is called before the first frame update
    IEnumerator Start()
    {
        LaunchesJsonFactory launchesJsonFactory = new LaunchesJsonFactory(this);

        launchesJsonFactory.FetchJson("https://api.spacexdata.com/v3/launches");
        yield return(new WaitUntil(() => launchesJsonFactory.IsDone));

        if (!launchesJsonFactory.IsError)
        {
            Root r = launchesJsonFactory.GetRootObject();
            missionList.listItems = new List <MissionListItem>();
            for (int i = 0; i < r.launches.Length; i++)
            {
                MissionListItem listItem = new MissionListItem();
                listItem.missionName   = r.launches[i].mission_name;
                listItem.numPayloads   = r.launches[i].rocket.second_stage.payloads.Length;
                listItem.rocketName    = r.launches[i].rocket.rocket_name;
                listItem.originCountry = r.launches[i].rocket.second_stage.payloads[0].nationality;
                listItem.ships         = r.launches[i].ships;
                DateTime date = GetDateTimeFrom(double.Parse(r.launches[i].launch_date_unix));
                listItem.icon = launched;
                if (date > DateTime.Now)
                {
                    listItem.icon = futureLaunch;
                }
                missionList.listItems.Add(listItem);
            }
            missionList.SpawnList();
        }
    }
    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);
                        }
                    }
                }
            }
        }
    }
Пример #4
0
 /// <summary>
 /// Action to be performed when a new list item has been selected
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="args"></param>
 public void OnListSelectionChange(object sender, EventArgs args)
 {
     if (sender is MissionListItem)
     {
         MissionListItem mission = (MissionListItem)sender;
         //TODO: pricrapintas title atitraukimas nuo krasto
         textArea.Text = "       " + mission.Mission.CurrentMission.Title + "\n" + mission.Mission.CurrentMission.Description;
     }
 }
Пример #5
0
 private void UpdateMissions()
 {
     itemList.Clear();
     foreach (MissionInstance missionInstance in MissionManager.GetInstance().CurrentMissions)
     {
         MissionListItem item = new MissionListItem(missionInstance);
         itemList.AddItem(item);
     }
     MissionManager.GetInstance().HasChanged = false;
 }
Пример #6
0
    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);
                    }
                }
            }
        }
    }
Пример #7
0
    public ShipsPopup shipsPopup; // Hold Reference for children.
    public override void SpawnList()
    {
        loadingText.SetActive(false);
        foreach (MissionListItem listItem in listItems)
        {
            MissionListItem item   = listItem;
            GameObject      button = pool.RequestAnObject();
            button.transform.SetParent(contentPanel);

            MissionItem missionItem = button.GetComponent <MissionItem>();
            missionItem.Init(item);
        }
    }
Пример #8
0
 public void AddMission(MissionListItem mission)
 {
     itemList.AddItem(mission);
 }