基础内容

必要插件安装
缓动曲线和动画基础
ElementFolder,Track与其次级模块,PathNode重构
This commit is contained in:
SoulliesOfficial
2025-01-26 21:10:16 -05:00
parent 40f63dd2bd
commit 8d0abec75f
9320 changed files with 2950357 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
using System;
using UnityEngine;
using Object = UnityEngine.Object;
namespace I2.Loc
{
public abstract class ILocalizeTargetDescriptor
{
public string Name;
public int Priority;
public abstract bool CanLocalize(Localize cmp);
public abstract ILocalizeTarget CreateTarget(Localize cmp);
public abstract Type GetTargetType();
}
public abstract class LocalizeTargetDesc<T> : ILocalizeTargetDescriptor where T : ILocalizeTarget
{
public override ILocalizeTarget CreateTarget(Localize cmp) { return ScriptableObject.CreateInstance<T>(); }
public override Type GetTargetType() { return typeof(T); }
}
public class LocalizeTargetDesc_Type<T,G> : LocalizeTargetDesc<G> where T: Object
where G: LocalizeTarget<T>
{
public override bool CanLocalize(Localize cmp) { return cmp.GetComponent<T>() != null; }
public override ILocalizeTarget CreateTarget(Localize cmp)
{
var target = cmp.GetComponent<T>();
if (target == null)
return null;
var locTarget = ScriptableObject.CreateInstance<G>();
locTarget.mTarget = target;
return locTarget;
}
}
}