public static TMP_SpriteAsset SearchFallbackForSprite(TMP_SpriteAsset spriteAsset, int unicode, out int spriteIndex) { spriteIndex = -1; if (spriteAsset == null) { return(null); } spriteIndex = spriteAsset.GetSpriteIndexFromUnicode(unicode); if (spriteIndex != -1) { return(spriteAsset); } if (spriteAsset.fallbackSpriteAssets != null && spriteAsset.fallbackSpriteAssets.Count > 0) { int num = 0; while (num < spriteAsset.fallbackSpriteAssets.Count && spriteIndex == -1) { TMP_SpriteAsset tmp_SpriteAsset = TMP_SpriteAsset.SearchFallbackForSprite(spriteAsset.fallbackSpriteAssets[num], unicode, out spriteIndex); if (tmp_SpriteAsset != null) { return(tmp_SpriteAsset); } num++; } } return(null); }
public static TMP_SpriteAsset SearchFallbackForSprite(List <TMP_SpriteAsset> spriteAssets, int unicode, out int spriteIndex) { spriteIndex = -1; if (spriteAssets != null && spriteAssets.Count > 0) { for (int i = 0; i < spriteAssets.Count; i++) { TMP_SpriteAsset tmp_SpriteAsset = TMP_SpriteAsset.SearchFallbackForSprite(spriteAssets[i], unicode, out spriteIndex); if (tmp_SpriteAsset != null) { return(tmp_SpriteAsset); } } } return(null); }