SquareDash/Library/PackageCache/com.unity.services.mediation@1.0.5/Editor/Settings/MediationSettingsProvider.cs
kingjuulian06 0efb85038a Arbeit 2
2023-11-21 22:03:49 +01:00

52 lines
1.9 KiB
C#

using System.Collections.Generic;
using UnityEditor;
using Unity.Services.Core.Editor;
using Unity.Services.Mediation.Adapters.Editor;
using UnityEngine.UIElements;
namespace Unity.Services.Mediation.Settings.Editor
{
class MediationSettingsProvider : EditorGameServiceSettingsProvider
{
static UnityEditor.SettingsManagement.Settings s_SettingsInstance;
public static UnityEditor.SettingsManagement.Settings instance
{
get
{
if (s_SettingsInstance == null)
s_SettingsInstance = new UnityEditor.SettingsManagement.Settings("com.unity.services.mediation");
return s_SettingsInstance;
}
}
[SettingsProvider]
public static SettingsProvider CreateSettingsProvider()
{
return new MediationSettingsProvider(GenerateProjectSettingsPath(new MediationServiceIdentifier().GetKey()), SettingsScope.Project);
}
MediationSettingsProvider(string path, SettingsScope scopes, IEnumerable<string> keywords = null)
: base(path, scopes, keywords)
{
MediationEditorService.RefreshGameId();
MediationSdkInfo.GetInstalledAdapters();
}
protected override IEditorGameService EditorGameService => EditorGameServiceRegistry.Instance.GetEditorGameService<MediationServiceIdentifier>();
protected override string Title => EditorGameService.Name;
protected override string Description => "Manage your ad network adapters and generate code snippets to implement ads in your game.";
protected override VisualElement GenerateServiceDetailUI()
{
return MediationAdapterSettings.GenerateUIElementUI();
}
protected override VisualElement GenerateUnsupportedDetailUI()
{
return MediationAdapterSettings.GenerateUIElementUI();
}
}
}