using System; using System.Data; namespace MMO { public class MMOTableTask : MMOTableBase { public override MMODataTask GetData(int pID) { return mDataList.Find(pItem => pItem.TaskID == pID); } protected override MMODataTask ParseData(DataRow pCollection) { MMODataTask tItem = new MMODataTask(); tItem.TaskID = 0; int.TryParse(pCollection[0].ToString(), out tItem.TaskID); tItem.GroupID = 0; int.TryParse(pCollection[1].ToString(), out tItem.GroupID); tItem.TaskType = MMOTaskType.Unknown; Enum.TryParse(pCollection[2].ToString(), out tItem.TaskType); tItem.TaskName = pCollection[3].ToString(); tItem.TaskDesc = pCollection[4].ToString(); tItem.RewardNum = 0; int.TryParse(pCollection[5].ToString(), out tItem.RewardNum); tItem.TargetNum = 0; int.TryParse(pCollection[6].ToString(), out tItem.TargetNum); tItem.NextTaskID = 0; int.TryParse(pCollection[7].ToString(), out tItem.NextTaskID); return tItem; } } [Serializable] public class MMODataTask { public int TaskID; public int GroupID; public MMOTaskType TaskType; public string TaskName; public string TaskDesc; public int RewardNum; public int TargetNum; public int NextTaskID; } public enum MMOTaskType { Unknown = 0, GetDiamond, PassLevel, WatchAds, DailyLevel, DailyAds, RiseRank, Final } }