public void LoadCardDef(string cardID, LoadCardDefCallback callback, object callbackData = null, CardPortraitQuality portraitQuality = null) { if (portraitQuality == null) { portraitQuality = CardPortraitQuality.GetDefault(); } CardDef cardDef = this.GetCardDef(cardID); if ((cardDef != null) && (cardDef.GetPortraitQuality() >= portraitQuality)) { callback(cardID, cardDef, callbackData); } else { DefLoader.Get().LoadCardDef(cardID, new DefLoader.LoadDefCallback <CardDef>(this.OnCardPrefabLoaded), new CallbackData(callback, callbackData), portraitQuality); } }
public CardDef GetCardDef(string cardId, CardPortraitQuality quality = null) { CardDef def; if (quality == null) { quality = CardPortraitQuality.GetDefault(); } if (true) { quality.TextureQuality = 3; } CardDef component = null; if (this.m_cachedCardDefs.TryGetValue(cardId, out def)) { component = def; if (CardPortraitQuality.GetFromDef(def) >= quality) { return(def); } } if (component == null) { GameObject brokenCardPrefab = AssetLoader.Get().LoadCardPrefab(cardId, true, false); if (brokenCardPrefab == null) { brokenCardPrefab = GameUtils.GetBrokenCardPrefab(); } component = brokenCardPrefab.GetComponent <CardDef>(); if (component == null) { Debug.LogError(string.Format("LoadCardDef: Could not find card def for {0}", cardId)); return(null); } this.m_cachedCardDefs.Add(cardId, component); } this.UpdateCardAssets(component, quality); return(component); }