77 lines
2.1 KiB
C#
77 lines
2.1 KiB
C#
using cfg;
|
|
using System.Collections.Generic;
|
|
|
|
public class StepMM
|
|
{
|
|
public StepMM(StepMmt stepMmt)
|
|
{
|
|
ID = stepMmt.ID;
|
|
StartTime = stepMmt.StartTime;
|
|
PlayTime = stepMmt.PlayTime;
|
|
BuildRequired = stepMmt.BuildRequired;
|
|
FixRequired = stepMmt.FixRequired;
|
|
}
|
|
public StepMM(ConstructionStep constructionStep)
|
|
{
|
|
ID = constructionStep.ID;
|
|
StartTime = constructionStep.StartTime;
|
|
PlayTime = constructionStep.PlayTime;
|
|
BuildRequired = constructionStep.BuildRequired;
|
|
FixRequired = constructionStep.FixRequired;
|
|
}
|
|
public int ID { get; private set; }
|
|
/// <summary>
|
|
/// timeline中时间
|
|
/// </summary>
|
|
public float StartTime { get; private set; }
|
|
/// <summary>
|
|
/// 动画播放时间
|
|
/// </summary>
|
|
public float PlayTime { get; private set; }
|
|
/// <summary>
|
|
/// 建造所需钞票
|
|
/// </summary>
|
|
public int BuildRequired { get; private set; }
|
|
/// <summary>
|
|
/// 修复所需钞票
|
|
/// </summary>
|
|
public int FixRequired { get; private set; }
|
|
}
|
|
|
|
public class TBStepMM
|
|
{
|
|
private readonly Dictionary<int, StepMM> _dataMap;
|
|
private readonly List<StepMM> _dataList;
|
|
|
|
public TBStepMM(List<StepMmt> stepMmts)
|
|
{
|
|
_dataMap = new Dictionary<int, StepMM>();
|
|
_dataList = new List<StepMM>();
|
|
|
|
foreach (var stepMmt in stepMmts)
|
|
{
|
|
var stepMM = new StepMM(stepMmt);
|
|
_dataList.Add(stepMM);
|
|
_dataMap.Add(stepMM.ID, stepMM);
|
|
}
|
|
}
|
|
|
|
public TBStepMM(List<ConstructionStep> constructionSteps)
|
|
{
|
|
_dataMap = new Dictionary<int, StepMM>();
|
|
_dataList = new List<StepMM>();
|
|
|
|
foreach (var constructionStep in constructionSteps)
|
|
{
|
|
var stepMM = new StepMM(constructionStep);
|
|
_dataList.Add(stepMM);
|
|
_dataMap.Add(stepMM.ID, stepMM);
|
|
}
|
|
}
|
|
|
|
public Dictionary<int, StepMM> DataMap => _dataMap;
|
|
public List<StepMM> DataList => _dataList;
|
|
|
|
public StepMM GetOrDefault(int key) => _dataMap.TryGetValue(key, out var v) ? v : null;
|
|
}
|