// 此文件由 ThriftIntegratedPipeline 自动生成,请勿手动修改
// 配置类: Sound
// 数据类: SoundItem
using UnityEngine;
using Byway.Config;
using Byway.Thrift.Data;
using UnityGameFramework.Runtime;
namespace CrazyMaple
{
///
/// Sound 数据行
///
public class DRSound : DataRowBase
{
private SoundItem _configData;
///
/// 唯一标识
///
public override int Id
{
get
{
return _configData?.Id ?? 0;
}
}
///
/// AssetName
///
public string AssetName
{
get
{
return _configData?.AssetName ?? "";
}
}
///
/// Priority
///
public int Priority
{
get
{
return _configData?.Priority ?? 0;
}
}
///
/// Loop
///
public bool Loop
{
get
{
return _configData?.Loop ?? false;
}
}
///
/// Volume
///
public float Volume
{
get
{
return System.Convert.ToSingle(_configData?.Volume ?? 0.0);
}
}
///
/// SpatialBlend
///
public float SpatialBlend
{
get
{
return System.Convert.ToSingle(_configData?.SpatialBlend ?? 0.0);
}
}
///
/// MaxDistance
///
public float MaxDistance
{
get
{
return System.Convert.ToSingle(_configData?.MaxDistance ?? 0.0);
}
}
///
/// 从配置加载数据
///
public void LoadFromConfig(int id)
{
var config = ConfigManager.Instance.GetConfig();
if (config?.Sounds != null)
{
config.Sounds.TryGetValue(id, out _configData);
}
}
///
/// 解析数据行(兼容旧系统,实际使用 LoadFromConfig)
///
public override bool ParseDataRow(string dataRowString, object userData)
{
int id = 0;
if (int.TryParse(dataRowString, out id))
{
LoadFromConfig(id);
return _configData != null;
}
return false;
}
}
}