This commit is contained in:
2025-11-12 14:22:04 +08:00
parent 7c8bb4b46c
commit 7aeda74f41
15 changed files with 280 additions and 129 deletions

View File

@@ -7,14 +7,14 @@ namespace Stary.Evo.TableTextConversion
{
public interface IAudioTableDataCore : ITableDataCore
{
UniTask<Stary.Evo.TableTextConversion.AudioTableData.MessageInfo> GetAudioInfo(string auid);
UniTask<AudioClip> GetAudioClip(string auid);
UniTask<AudioEntity> GetAudioAssetInfo(string auid);
UniTask<AudioClip> GetAudioAssetClip(string auid);
}
#if YooAssets
public class AudioTableDataCore : IAudioTableDataCore, IDisposable
{
private Stary.Evo.TableTextConversion.AudioTableData audioTableData;
private AudioTableData audioTableData;
public string TableName => "Config_AudioTableData";
public bool IsLoad { get; set; }
@@ -23,14 +23,15 @@ namespace Stary.Evo.TableTextConversion
public async UniTask LoadData()
{
var audioHandle =
YooAssets.LoadAssetAsync<Stary.Evo.TableTextConversion.AudioTableData>(TableName);
YooAssets.LoadAssetAsync<AudioTableData>(TableName);
await audioHandle.Task;
audioTableData = audioHandle.GetAssetObject<Stary.Evo.TableTextConversion.AudioTableData>();
audioTableData = audioHandle.GetAssetObject<AudioTableData>();
if (audioTableData == null)
{
Debug.LogError($"加载音频表失败请排查config下是否存在【{TableName}】表");
return;
}
IsLoad = true;
}
@@ -40,7 +41,7 @@ namespace Stary.Evo.TableTextConversion
/// </summary>
/// <param name="auid"></param>
/// <returns></returns>
public async UniTask<Stary.Evo.TableTextConversion.AudioTableData.MessageInfo> GetAudioInfo(string auid)
public async UniTask<AudioEntity> GetAudioAssetInfo(string auid)
{
if (!IsLoad)
{
@@ -61,14 +62,14 @@ namespace Stary.Evo.TableTextConversion
/// </summary>
/// <param name="auid"></param>
/// <returns></returns>
public async UniTask<AudioClip> GetAudioClip(string auid)
public async UniTask<AudioClip> GetAudioAssetClip(string auid)
{
if (!IsLoad)
{
await LoadData();
}
var info = await GetAudioInfo(auid);
var info = await GetAudioAssetInfo(auid);
var handle = YooAssets.LoadAssetAsync<AudioClip>(info.filename);
await handle.Task;
if (handle.Status == EOperationStatus.Succeed)
@@ -89,4 +90,5 @@ namespace Stary.Evo.TableTextConversion
audioTableData = null;
}
}
#endif
}