基类已更新

This commit is contained in:
2025-11-12 11:10:54 +08:00
parent 25f382cf0a
commit a0bc10df4a

View File

@@ -64,10 +64,10 @@ namespace Demo
/// <param name="delta">当每次调用NextTimePoint函数时使用的单位值</param>
/// <param name="value">初始化时间</param>
[Convention.RScript.Variable.Attr.Method]
public void ResetTimePoint(string id, string delta, string value)
public void ResetTimePoint(string id, float delta, float value)
{
TimePointDelta[id] = float.Parse(delta);
TimePoints[id] = float.Parse(value);
TimePointDelta[id] = delta;
TimePoints[id] = value;
}
/// <summary>
@@ -76,9 +76,9 @@ namespace Demo
/// <param name="id">时间线ID</param>
/// <param name="times">前进次数,最终时间的增量为前进次数乘该时间线的单位值</param>
[Convention.RScript.Variable.Attr.Method]
public void NextTimePoint(string id, string times)
public void NextTimePoint(string id, float times)
{
TimePoints[id] += TimePointDelta[id] * float.Parse(times);
TimePoints[id] += TimePointDelta[id] * times;
}
/// <summary>
@@ -87,9 +87,9 @@ namespace Demo
/// <param name="id">时间线ID</param>
/// <param name="value">次数,时间线的值将被设置为次数乘该时间线的单位值</param>
[Convention.RScript.Variable.Attr.Method]
public void SetTimePoint(string id, string value)
public void SetTimePoint(string id, float value)
{
TimePoints[id] = TimePointDelta[id] * float.Parse(value);
TimePoints[id] = TimePointDelta[id] * value;
}
}
@@ -130,9 +130,9 @@ namespace Demo
/// <param name="name">字符串</param>
/// <param name="value">浮点数</param>
[Convention.RScript.Variable.Attr.Method]
public void SetContext(string name, string value)
public void SetContext(string name, float value)
{
ScriptContextSpace[name] = Parse(value);
ScriptContextSpace[name] = value;
}
}
@@ -313,9 +313,9 @@ namespace Demo
/// </summary>
/// <param name="frame">每frame帧更新一次, 等于0代表不会在<see cref="TickType.Update"/>状态运行</param>
[Convention.RScript.Variable.Attr.Method]
public void SetUpdatePerFrame(string frame)
public void SetUpdatePerFrame(int frame)
{
UpdatePerFrame = Mathf.Max(1, int.Parse(frame));
UpdatePerFrame = Mathf.Max(1, frame);
}
}
@@ -497,13 +497,68 @@ namespace Demo
return child;
}
/// <summary>
/// 创建无初始化脚本且无启动的子脚本对象
/// </summary>
/// <param name="type"></param>
/// <param name="name"></param>
/// <returns></returns>
[Convention.RScript.Variable.Attr.Method]
public ScriptableObject NewSubScriptWithoutInit([In] string type, [In]string name)
{
// 判断类型是否合法
if (DefaultInstantiate.GetScriptableObjectInstantiate().TryGetValue(type, out var creater) == false)
{
Debug.LogError($"{type} is not exist or {type}'s Instantiater is not valid", this);
return null;
}
// 生成对象
var child = creater();
child.ScriptName = name;
child.transform.SetParent(this.transform);
child.transform.SetLocalPositionAndRotation(Vector3.zero, Quaternion.identity);
child.transform.localScale = Vector3.one;
child.EnableScript("", "", type, this);
// Add Child
Childs.Add(child);
return child;
}
/// <summary>
/// 将无初始化创建的脚本对象确认完全加载并设置为最后添加的脚本对象
/// </summary>
/// <param name="type"></param>
/// <param name="child"></param>
/// <returns></returns>
[Convention.RScript.Variable.Attr.Method]
public ScriptableObject ApplyLoad()
{
// Load Child Script
ConventionUtility.StartCoroutine(this.LoadScript(""));
LastLoadedScriptableObject = this;
return this;
}
/// <summary>
/// 创建不需要脚本语句的子脚本对象
/// </summary>
/// <param name="type">指定类型</param>
[Convention.RScript.Variable.Attr.Method]
public ScriptableObject NewSubScript([In] string type, [In] string name)
{
return DoGenerateSubScript(type, name, null);
}
/// <summary>
/// 创建不需要脚本语句的子脚本对象
/// </summary>
/// <param name="type">指定类型</param>
[Convention.RScript.Variable.Attr.Method]
public ScriptableObject NewSubScript([In] string type)
{
return DoGenerateSubScript(type, $"New {type}", null);
return NewSubScript(type, $"New {type}");
}
/// <summary>
@@ -616,8 +671,8 @@ namespace Demo
}
/// <summary>
/// <para>使用<see cref="ScriptableCallAttribute"/>标记可编辑脚本所能够调用的函数,并附加注释</para>
/// <para>使用<see cref="DefaultScriptAttribute"/>标记派生类,并附加默认模板</para>
/// <para>使用<see cref="Convention.RScript.Variable.Attr.MethodAttribute"/>标记可编辑脚本所能够调用的函数</para>
/// <para>使用<see cref="Convention.RScript.Variable.Attr.DefaultAttribute"/>标记派生类,并附加默认模板</para>
/// </summary>
public partial class ScriptableObject : SerializedMonoBehaviour, IHierarchyItemClickEventListener
{