private void LoadVanillaHeroCardDef()
    {
        Player player = null;

        foreach (Player player2 in GameState.Get().GetPlayerMap().Values)
        {
            if (player2.GetSide() == Player.Side.FRIENDLY)
            {
                player = player2;
                break;
            }
        }
        if (player == null)
        {
            Debug.LogWarning("GoldenHeroEvent.LoadVanillaHeroCardDef() - currentPlayer == null");
        }
        else
        {
            EntityDef entityDef = player.GetEntityDef();
            if (entityDef.GetCardSet() == TAG_CARD_SET.HERO_SKINS)
            {
                string vanillaHeroCardID    = CollectionManager.Get().GetVanillaHeroCardID(entityDef);
                CardPortraitQuality quality = new CardPortraitQuality(3, TAG_PREMIUM.NORMAL);
                DefLoader.Get().LoadCardDef(vanillaHeroCardID, new DefLoader.LoadDefCallback <CardDef>(this.OnVanillaHeroCardDefLoaded), new object(), quality);
            }
        }
    }
Пример #2
0
    public FullDef GetFullDef(string cardId, CardPortraitQuality quality = null)
    {
        EntityDef entityDef = this.GetEntityDef(cardId);
        CardDef   cardDef   = this.GetCardDef(cardId, quality);
        FullDef   def3      = new FullDef();

        def3.SetEntityDef(entityDef);
        def3.SetCardDef(cardDef);
        return(def3);
    }
    private void LoadCards()
    {
        GameDbf.Load();
        List <string> allCardIds = GameUtils.GetAllCardIds();

        this.m_cardsToLoad = allCardIds.Count;
        foreach (string str in allCardIds)
        {
            CardPortraitQuality quality = new CardPortraitQuality(3, TAG_PREMIUM.GOLDEN);
            DefLoader.Get().LoadCardDef(str, new DefLoader.LoadDefCallback <CardDef>(this.OnCardDefLoaded), null, quality);
        }
    }
Пример #4
0
 protected override bool JustEarnedGoldenHero()
 {
     if (!this.m_hasParsedCompletedQuests)
     {
         string goldenHeroCardID = this.GetGoldenHeroCardID();
         if (goldenHeroCardID != "none")
         {
             CardPortraitQuality quality = new CardPortraitQuality(3, TAG_PREMIUM.GOLDEN);
             DefLoader.Get().LoadCardDef(goldenHeroCardID, new DefLoader.LoadDefCallback <CardDef>(this.OnGoldenHeroCardDefLoaded), new object(), quality);
         }
         this.m_hasParsedCompletedQuests = true;
         this.m_showGoldenHeroEvent      = goldenHeroCardID != "none";
     }
     return(this.m_showGoldenHeroEvent);
 }
Пример #5
0
    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);
        }
    }
Пример #6
0
    private void UpdateCardAssets(CardDef cardDef, CardPortraitQuality quality)
    {
        CardPortraitQuality portraitQuality = cardDef.GetPortraitQuality();

        if ((quality > portraitQuality) && !string.IsNullOrEmpty(cardDef.m_PortraitTexturePath))
        {
            if (portraitQuality.TextureQuality < quality.TextureQuality)
            {
                string  textureName = GetTextureName(cardDef.m_PortraitTexturePath, quality.TextureQuality);
                Texture portrait    = AssetLoader.Get().LoadCardTexture(textureName, false);
                if (portrait == null)
                {
                    object[] messageArgs = new object[] { cardDef.m_PortraitTexturePath, cardDef };
                    Error.AddDevFatal("DefLoader.UpdateCardTextures() - Failed to load {0} for card {1}", messageArgs);
                    return;
                }
                cardDef.OnPortraitLoaded(portrait, quality.TextureQuality);
            }
            if (((quality.LoadPremium && !portraitQuality.LoadPremium) || cardDef.m_AlwaysRenderPremiumPortrait) && !string.IsNullOrEmpty(cardDef.m_PremiumPortraitMaterialPath))
            {
                Material material = AssetLoader.Get().LoadPremiumMaterial(cardDef.m_PremiumPortraitMaterialPath, false);
                Texture  texture2 = null;
                if (material == null)
                {
                    object[] objArray2 = new object[] { cardDef.m_PremiumPortraitMaterialPath, cardDef };
                    Error.AddDevFatal("DefLoader.UpdateCardTextures() - Failed to load {0} for card {1}", objArray2);
                }
                else
                {
                    if (!string.IsNullOrEmpty(cardDef.m_PremiumPortraitTexturePath))
                    {
                        texture2 = AssetLoader.Get().LoadCardTexture(cardDef.m_PremiumPortraitTexturePath, false);
                        if (texture2 == null)
                        {
                            object[] objArray3 = new object[] { cardDef.m_PremiumPortraitTexturePath, cardDef };
                            Error.AddDevFatal("DefLoader.UpdateCardTextures() - Failed to load {0} for card {1}", objArray3);
                            return;
                        }
                    }
                    cardDef.OnPremiumMaterialLoaded(material, texture2);
                }
            }
        }
    }
Пример #7
0
    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);
    }
Пример #8
0
    public void LoadCardDef(string cardId, LoadDefCallback <CardDef> callback, object userData = null, CardPortraitQuality quality = null)
    {
        CardDef cardDef = this.GetCardDef(cardId, quality);

        callback(cardId, cardDef, userData);
    }