| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- namespace ShotSimulator.Train.Info
- {
- public class TrainResultData
- {
- public Dictionary<MetricsType, MetricsData> metricsDic = new Dictionary<MetricsType, MetricsData>();
- public TrainResultData(List<MetricsInfo> info)
- {
- InitTrainResultData(info);
- }
- private void InitTrainResultData(List<MetricsInfo> metricsInfo)
- {
- metricsDic.Clear();
- for(int i = 0; i < metricsInfo.Count; i++)
- {
- if (!metricsDic.ContainsKey(metricsInfo[i].Type))
- {
- MetricsData data = new MetricsData()
- {
- typeNameID = TrainTaskLoader.GetInstance().m_MetricsTypeConfig.GetMetricsTypeNameID(metricsInfo[i].Type),
- valueType = TrainTaskLoader.GetInstance().m_MetricsTypeConfig.GetValueTypeByMetricsType(metricsInfo[i].Type),
- StageValues = metricsInfo[i].StageValues
- };
- metricsDic.Add(metricsInfo[i].Type, data);
- }
- }
- }
- public bool SetMetricsDataValue(MetricsType type, double value)
- {
- if (metricsDic.TryGetValue(type, out var data))
- {
- data.value = value;
- return true;
- }
- else
- {
- return false;
- }
- }
- public MetricsData GetMetrics(MetricsType type)
- {
- if(metricsDic.TryGetValue(type, out var data))
- {
- return data;
- }
- else
- {
- return null;
- }
- }
- public void ResetMetricsDataValue()
- {
- foreach(var data in metricsDic.Values)
- {
- data.value = 0;
- }
- }
- }
- }
|