10 [MenuItem(
"Assets/Create Mapper Instance")]
11 private static void CreateInstance()
13 var monoScript = Selection.activeObject as MonoScript;
14 if (monoScript !=
null)
16 var scriptableObject = ScriptableObject.CreateInstance(monoScript.GetClass());
17 var assetPath = AssetDatabase.GetAssetPath(monoScript);
18 var directory = FileUtils.GetFileDirectory(assetPath);
19 var name = FileUtils.GetFilenameWithoutExtension(assetPath);
20 AssetDatabase.CreateAsset(scriptableObject, $
"{directory}/{name}.asset");
21 AssetDatabase.SaveAssets();
25 [MenuItem(
"Assets/Create Mapper Instance",
true)]
26 private static bool Validate()
28 if (Selection.activeObject is MonoScript monoScript)
30 var
@class = monoScript.GetClass();
32 typeof(AnimationClipMapper).IsAssignableFrom(
@class) ||
33 typeof(MaterialMapper).IsAssignableFrom(
@class) ||
34 typeof(TextureMapper).IsAssignableFrom(
@class) ||
35 typeof(HumanoidAvatarMapper).IsAssignableFrom(
@class) ||
36 typeof(RootBoneMapper).IsAssignableFrom(
@class) ||
37 typeof(LipSyncMapper).IsAssignableFrom(
@class) ||
38 typeof(ExternalDataMapper).IsAssignableFrom(
@class);