//------------------------------------------------------------ // Game Framework // Copyright © 2013-2021 Jiang Yin. All rights reserved. // Homepage: https://gameframework.cn/ // Feedback: mailto:ellan@gameframework.cn //------------------------------------------------------------ // 此文件由工具自动生成,请勿直接修改。 // 生成时间:2022-01-25 20:25:37.126 //------------------------------------------------------------ using GameFramework; using System; using System.Collections.Generic; using System.IO; using System.Text; using UnityEngine; using UnityGameFramework.Runtime; namespace MetaClient { /// /// 声音配置表。 /// public class DRSound : DataRowBase { private int m_Id = 0; /// /// 获取声音编号。 /// public override int Id { get { return m_Id; } } /// /// 获取资源名称。 /// public string AssetName { get; private set; } /// /// 获取优先级(默认0,128最高,-128最低)。 /// public int Priority { get; private set; } /// /// 获取是否循环。 /// public bool Loop { get; private set; } /// /// 获取音量(0~1)。 /// public float Volume { get; private set; } /// /// 获取声音空间混合量(0为2D,1为3D,中间值混合效果)。 /// public float SpatialBlend { get; private set; } /// /// 获取声音最大距离。 /// public float MaxDistance { get; private set; } public override bool ParseDataRow(string dataRowString, object userData) { string[] columnStrings = dataRowString.Split(DataTableExtension.DataSplitSeparators); for (int i = 0; i < columnStrings.Length; i++) { columnStrings[i] = columnStrings[i].Trim(DataTableExtension.DataTrimSeparators); } int index = 0; index++; m_Id = int.Parse(columnStrings[index++]); index++; AssetName = columnStrings[index++]; Priority = int.Parse(columnStrings[index++]); Loop = bool.Parse(columnStrings[index++]); Volume = float.Parse(columnStrings[index++]); SpatialBlend = float.Parse(columnStrings[index++]); MaxDistance = float.Parse(columnStrings[index++]); GeneratePropertyArray(); return true; } public override bool ParseDataRow(byte[] dataRowBytes, int startIndex, int length, object userData) { using (MemoryStream memoryStream = new MemoryStream(dataRowBytes, startIndex, length, false)) { using (BinaryReader binaryReader = new BinaryReader(memoryStream, Encoding.UTF8)) { m_Id = binaryReader.Read7BitEncodedInt32(); AssetName = binaryReader.ReadString(); Priority = binaryReader.Read7BitEncodedInt32(); Loop = binaryReader.ReadBoolean(); Volume = binaryReader.ReadSingle(); SpatialBlend = binaryReader.ReadSingle(); MaxDistance = binaryReader.ReadSingle(); } } GeneratePropertyArray(); return true; } private void GeneratePropertyArray() { } } }