1.修改以进行可选Interaction支持\n2.并修复Parse函数中正则表达式的bug\n3.新增对序列{S,B,C}解析为小节节点的Parse, 这将会使得DDT与Parse函数能够通过bpm动态工作

This commit is contained in:
2025-10-01 20:51:48 +08:00
parent cf173a57ee
commit 8e08e3630d
4 changed files with 45 additions and 12 deletions

View File

@@ -16,30 +16,34 @@ namespace Demo.Game
public List<float> Datas = new();
[ScriptableCall(@"
添加float数据, 随后可以用对象路径+索引获取变量值,
添加float数据(允许使用除本以外的表达式), 随后可以用对象路径+索引获取变量值,
e.g: CameraObject/DDT[3], CameraObject/DDT对象路径下DDT数据中的第四个值
")]
public void Add(string value)
{
Datas.Add(float.Parse(value));
Datas.Add(Parse(value));
}
/// <summary>
/// 从特定的json中读取数据
/// 从特定的json中读取数据, 并调用<see cref="Add(string)"/>
/// </summary>
[ScriptableCall(@"从特定的json中读取数据")]
[ScriptableCall(@"从特定的json中读取数据, 并调用Add函数")]
public void Load()
{
var file = new ToolFile(BindingDataJson);
if (file.Exists() == false)
{
file.MustExistsPath()
.SaveAsJson<List<float>>(new());
.SaveAsJson<List<string>>(new());
Datas.Clear();
}
else
{
Datas = file.LoadAsJson<List<float>>();
Datas.Clear();
foreach (var item in file.LoadAsJson<List<string>>())
{
Add(item);
}
}
}
}