private IEnumerator LoadCards(UnityCardGame cardGame) { if (cardGame == null) { cardGame = Current; } for (int page = cardGame.AllCardsUrlPageCountStartIndex; page < cardGame.AllCardsUrlPageCountStartIndex + cardGame.AllCardsUrlPageCount; page++) { cardGame.LoadCards(page); if (page == cardGame.AllCardsUrlPageCountStartIndex && cardGame.AllCardsUrlPageCount > CardsLoadingMessageThreshold) { Messenger.Show(string.Format(CardsLoadingMessage, cardGame.Name)); } yield return(null); } if (!string.IsNullOrEmpty(cardGame.Error)) { Debug.LogError(LoadErrorMessage + cardGame.Error); } else if (cardGame.AllCardsUrlPageCount > CardsLoadingMessageThreshold) { Messenger.Show(string.Format(CardsLoadedMessage, cardGame.Name)); } }
private IEnumerator LoadSetCards(UnityCardGame cardGame) { if (cardGame == null) { cardGame = Current; } var setCardsLoaded = false; foreach (Set set in cardGame.Sets.Values) { if (string.IsNullOrEmpty(set.CardsUrl)) { continue; } if (!setCardsLoaded) { Messenger.Show(string.Format(SetCardsLoadingMessage, cardGame.Name)); } setCardsLoaded = true; string setCardsFilePath = Path.Combine(cardGame.SetsDirectoryPath, UnityExtensionMethods.GetSafeFileName(set.Code + UnityExtensionMethods.JsonExtension)); if (!File.Exists(setCardsFilePath)) { yield return(UnityExtensionMethods.SaveUrlToFile(set.CardsUrl, setCardsFilePath)); } if (File.Exists(setCardsFilePath)) { cardGame.LoadCards(setCardsFilePath, set.Code); } else { Debug.LogError(LoadErrorMessage + set.CardsUrl); yield break; } } if (!string.IsNullOrEmpty(cardGame.Error)) { Debug.LogError(LoadErrorMessage + cardGame.Error); } else if (setCardsLoaded) { Messenger.Show(string.Format(SetCardsLoadedMessage, cardGame.Name)); } }