mergemilitary/Assets/MMOModule/Scripts/MMOTable/MMOTableTask.cs

62 lines
1.7 KiB
C#

using System;
using System.Data;
namespace MMO
{
public class MMOTableTask : MMOTableBase<MMOTableTask, MMODataTask>
{
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
}
}