Laying down the groundwork for data

This commit is contained in:
2025-11-29 23:22:04 -06:00
parent c749434d07
commit 7c98bc3a89
8 changed files with 97 additions and 0 deletions

View File

@@ -1,6 +1,35 @@
using System.Collections.Generic;
using SessionZero.Data.Sztl;
namespace SessionZero.Data;
public class Dataset
{
public required DatasetMetadata Metadata { get; set; }
public Dictionary<string, SztlField> Fields { get; set; } = [];
public Dictionary<string, SztlFieldGroup> Groups { get; set; } = [];
/// <summary>
/// Returns an SzfField from a string path (use dot notation, eg 'stats.damage')
/// </summary>
/// <param name="fieldPath"></param>
/// <returns></returns>
public SztlField? GetField(string fieldPath)
{
var split = fieldPath.Split('.');
var fieldName = split[0];
if (split.Length == 1)
{
return Fields.GetValueOrDefault(fieldName);
}
else
{
// Todo: Recurse into Groups.Fields to find the path
}
return null;
}
}