private void SetupSaveLineSlot(AgeTransform tableitem, int index, GameSaveDescriptor gameSaveDescriptor)
    {
        tableitem.DirtyPosition = true;
        tableitem.Enable        = true;
        if (index % 20 == 0)
        {
            tableitem.StartNewMesh = true;
        }
        SaveLineSlot component = tableitem.GetComponent <SaveLineSlot>();

        component.RefreshContent(index, gameSaveDescriptor, base.gameObject);
    }
    private IEnumerator ListGamesAsync(int listingNumber)
    {
        this.LoadSaveContainer.DestroyAllChildren();
        IGameSerializationService service = Services.GetService <IGameSerializationService>();

        if (service != null)
        {
            List <GameSaveDescriptor> gameSaveDescriptors = new List <GameSaveDescriptor>();
            this.LoadSaveContainer.Height = 0f;
            IEnumerable <GameSaveDescriptor> listOfGameSaveDescritors = service.GetListOfGameSaveDescritors(!this.SaveMode);
            foreach (GameSaveDescriptor gameSaveDescriptor in listOfGameSaveDescritors)
            {
                gameSaveDescriptors.Add(gameSaveDescriptor);
                this.LoadSaveContainer.ReserveChildren(gameSaveDescriptors.Count, this.SaveLineSlotPrefab, "Item");
                this.LoadSaveContainer.ArrangeChildren();
                this.LoadSaveScrollView.OnPositionRecomputed();
                int          index        = gameSaveDescriptors.Count - 1;
                AgeTransform ageTransform = this.LoadSaveContainer.GetChildren()[index];
                this.SetupSaveLineSlot(ageTransform, index, gameSaveDescriptor);
                if (!Amplitude.Unity.Framework.Application.Preferences.EnableMultiplayer && gameSaveDescriptor.GameSaveSessionDescriptor.SessionMode != SessionMode.Single)
                {
                    ageTransform.Enable = false;
                }
                else
                {
                    SaveLineSlot component = ageTransform.GetComponent <SaveLineSlot>();
                    Diagnostics.Assert(component != null);
                    if (component.GameSaveRuntimeConfigurationState == RuntimeModuleConfigurationState.Undefined)
                    {
                        ageTransform.Enable = false;
                    }
                }
                yield return(null);

                if (this.ListingNumber > listingNumber)
                {
                    yield break;
                }
            }
            IEnumerator <GameSaveDescriptor> enumerator = null;
            if (this.SortsContainer.SortButtons.Last <SortButton>() != null)
            {
                this.SortsContainer.SortButtons.Last <SortButton>().OnSortCB(null);
                this.SortsContainer.SortButtons.Last <SortButton>().OnSortCB(null);
            }
            gameSaveDescriptors = null;
        }
        this.listing = null;
        yield break;
        yield break;
    }