ProjectDDD/Assets/_DDD/_Scripts/GameData/DataManager.cs

39 lines
978 B
C#

using System;
using System.Linq;
using UnityEngine;
namespace DDD
{
public class DataManager : Singleton<DataManager>, IManager
{
public ItemDataSo ItemDataSo { get; private set; }
public void Init()
{
}
public async void PostInit()
{
try
{
ItemDataSo = await AssetManager.LoadAsset<ItemDataSo>(DataConstants.ItemDataSo);
}
catch (Exception e)
{
Debug.LogError($"So bind failed\n{e.Message}");
}
}
// TODO : So가 늘어나는 경우 관리 방법 변경 필요성이 있음
// GetItemType(id)
// GetItemImage
// GetItemName
public ItemType GetItemType(string key)
{
ItemData itemData = ItemDataSo.ItemDataList.FirstOrDefault(item => item.Id == key);
return itemData?.ItemType ?? ItemType.None;
}
}
}