using System;
using System.Collections.Generic;
using System.IO;
using CrazyMaple;
using GameFramework.DataTable;
using UnityEngine;

/// <summary>
/// 配置管理器 - 按需加载模式
/// 自动生成于: 2026-01-13 14:32:35
/// </summary>
public class ItemHelper
{
    private static ItemHelper _instance;
    public static ItemHelper Instance
    {
        get
        {
            if (_instance == null)
            {
                _instance = new ItemHelper();
            }
            return _instance;
        }
    }
    
    public  IDataTable<DRNetworkItemData> DtNetworkItemData;
    public  IDataTable<DREmojiData> DtEmojiData;
    ItemHelper()
    {
        DtNetworkItemData = GameEntry.DataTable.GetDataTable<DRNetworkItemData>();
        DtEmojiData = GameEntry.DataTable.GetDataTable<DREmojiData>();
    }

    /// <summary>
    /// 判断是否是表情道具
    ///     </summary>
    public  bool IsEmojiItemId(int id)
    {
        if (DtNetworkItemData == null)
        {
            var _ = Instance; // 确保实例初始化
        }
        if (DtNetworkItemData == null)
        {
            return false;
        }
        var emojiItems = DtNetworkItemData.GetDataRows((x)=> {return x.IType == 109;});
        if (emojiItems == null)
        {
            return false;
        }
        foreach (var item in emojiItems)
        {
            if (item.Id == id)
            {
                return true;
            }
        }
        return false;
    }

    /// <summary>
    /// 判断是否是表情道具
    ///     </summary>
    public  bool IsEmojiItemId(string id)
    {
        if (!int.TryParse(id, out int itemId))
        {
            return false;
        }
        return IsEmojiItemId(itemId);
    }
    // public  string GetItemEffect(int Id)
    // {
    //     if (DtNetworkItemData == null)
    //     {
    //         var _ = Instance; // 确保实例初始化
    //     }
    //     DRNetworkItemData da = PlayerProfileData.DtNetworkItemData.GetDataRow(Id);
    //     if (da == null)
    //     {
    //         return "";
    //     }
    //     return da.Effect;

    // }
    // public  string GetEmojiIconPath(int id)
    // {
    //     if(IsEmojiItemId(id))
    //     {
    //         int emojiId = int.Parse(GetItemEffect(id).Split(",")[0]);
    //         return PlayerProfileData.GetEmojiAsset(emojiId);

    //     }
    //     else{
    //         return "";
    //     }
        

    // }

    // public  string GetEmojiIconPath(string id)
    // {
    //     if (!int.TryParse(id, out int itemId))
    //     {
    //         return "";
    //     }
    //     return GetEmojiIconPath(itemId);
    // }
    
    
       

}