72 lines
2.2 KiB
C#
72 lines
2.2 KiB
C#
using System;
|
|
using GeometryTD.Definition;
|
|
using GeometryTD.CustomUtility;
|
|
using UnityGameFramework.Runtime;
|
|
|
|
namespace GeometryTD.DataTable
|
|
{
|
|
/// <summary>
|
|
/// 关卡表
|
|
/// </summary>
|
|
public class DRLevel : DataRowBase
|
|
{
|
|
private int m_Id = 0;
|
|
|
|
/// <summary>
|
|
/// 获取关卡编号
|
|
/// </summary>
|
|
public override int Id => m_Id;
|
|
|
|
/// <summary>
|
|
/// 获取关卡所属主题类型
|
|
/// </summary>
|
|
public LevelThemeType LevelThemeType { get; private set; }
|
|
|
|
/// <summary>
|
|
/// 获取关卡初始基地生命
|
|
/// </summary>
|
|
public int BaseHp { get; private set; }
|
|
|
|
/// <summary>
|
|
/// 获取关卡初始硬币数量
|
|
/// </summary>
|
|
public int StartCoin { get; private set; }
|
|
|
|
/// <summary>
|
|
/// 获取关卡胜利条件
|
|
/// </summary>
|
|
public LevelVictoryType LevelVictoryType { get; private set; }
|
|
|
|
/// <summary>
|
|
/// 获取关卡胜利奖励金币
|
|
/// </summary>
|
|
public int RewardGold { get; private set; }
|
|
|
|
/// <summary>
|
|
/// 获取关卡胜利条件参数
|
|
/// </summary>
|
|
public string VictoryParams { 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++;
|
|
LevelThemeType = EnumUtility<LevelThemeType>.Get(columnStrings[index++]);
|
|
BaseHp = int.Parse(columnStrings[index++]);
|
|
StartCoin = int.Parse(columnStrings[index++]);
|
|
LevelVictoryType = EnumUtility<LevelVictoryType>.Get(columnStrings[index++]);
|
|
VictoryParams = columnStrings[index++];
|
|
RewardGold = int.Parse(columnStrings[index++]);
|
|
|
|
return true;
|
|
}
|
|
}
|
|
} |