2023-11-10 14:37:56 +08:00
|
|
|
|
#if MA_VRCSDK3_AVATARS
|
|
|
|
|
|
2024-11-17 11:00:35 +08:00
|
|
|
|
using System;
|
|
|
|
|
using JetBrains.Annotations;
|
2023-11-10 14:37:56 +08:00
|
|
|
|
using UnityEngine;
|
2022-11-07 11:33:48 +08:00
|
|
|
|
using VRC.SDK3.Avatars.ScriptableObjects;
|
2022-10-05 08:34:04 +08:00
|
|
|
|
|
2022-11-11 12:39:58 +08:00
|
|
|
|
namespace nadena.dev.modular_avatar.core
|
2022-10-05 08:34:04 +08:00
|
|
|
|
{
|
2022-11-10 09:49:00 +08:00
|
|
|
|
[AddComponentMenu("Modular Avatar/MA Menu Installer")]
|
2023-10-11 19:40:26 +08:00
|
|
|
|
[HelpURL("https://modular-avatar.nadena.dev/docs/reference/menu-installer?lang=auto")]
|
2022-10-05 08:34:04 +08:00
|
|
|
|
public class ModularAvatarMenuInstaller : AvatarTagComponent
|
2023-02-25 15:45:24 +08:00
|
|
|
|
{
|
|
|
|
|
public VRCExpressionsMenu menuToAppend;
|
2022-10-05 08:34:04 +08:00
|
|
|
|
public VRCExpressionsMenu installTargetMenu;
|
2022-11-07 11:33:48 +08:00
|
|
|
|
|
2024-11-17 11:00:35 +08:00
|
|
|
|
internal static Action<ModularAvatarMenuInstaller> _openSelectMenu = _ => { };
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Opens the "Select Menu" window, as if the user had clicked this button in the inspector.
|
|
|
|
|
/// </summary>
|
|
|
|
|
[PublicAPI]
|
|
|
|
|
public void OpenSelectMenu()
|
|
|
|
|
{
|
|
|
|
|
_openSelectMenu(this);
|
|
|
|
|
}
|
2022-11-07 11:33:48 +08:00
|
|
|
|
|
|
|
|
|
// ReSharper disable once Unity.RedundantEventFunction
|
|
|
|
|
void Start()
|
2023-02-25 15:45:24 +08:00
|
|
|
|
{
|
|
|
|
|
// Ensure that unity generates an enable checkbox
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
protected override void OnValidate()
|
|
|
|
|
{
|
|
|
|
|
base.OnValidate();
|
|
|
|
|
|
|
|
|
|
RuntimeUtil.InvalidateMenu();
|
|
|
|
|
}
|
2023-08-05 14:47:03 +08:00
|
|
|
|
|
2023-09-24 13:44:07 +08:00
|
|
|
|
public override void ResolveReferences()
|
2023-08-05 14:47:03 +08:00
|
|
|
|
{
|
|
|
|
|
// no-op
|
|
|
|
|
}
|
2022-10-05 08:34:04 +08:00
|
|
|
|
}
|
2023-11-10 14:37:56 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#endif
|