using System; using System.Data; public class TableUnit : TableBase { public override DataUnit GetData(string pID) { return mDataList.Find(pItem => pItem.UnitID.Equals(pID)); } } [Serializable] public class DataUnit : DataBase { public string UnitID; public int GroupNum; public int MaxHp; public int Damage; public int AtkDistance; public float AtkAniLength; public int AtkSoundID; public int HitSoundID; public float HpScale; public float HpOffset; public override void ParseData(DataRow pCollection) { UnitID = pCollection[0].ToString(); GroupNum = 0; int.TryParse(pCollection[1].ToString(), out GroupNum); MaxHp = 0; int.TryParse(pCollection[2].ToString(), out MaxHp); Damage = 0; int.TryParse(pCollection[3].ToString(), out Damage); AtkDistance = 0; int.TryParse(pCollection[4].ToString(), out AtkDistance); AtkAniLength = 0; float.TryParse(pCollection[5].ToString(), out AtkAniLength); AtkSoundID = 0; int.TryParse(pCollection[6].ToString(), out AtkSoundID); HitSoundID = 0; int.TryParse(pCollection[7].ToString(), out HitSoundID); HpScale = 0; float.TryParse(pCollection[8].ToString(), out HpScale); HpOffset = 0; float.TryParse(pCollection[9].ToString(), out HpOffset); } }