Files
TheDeclineOfWarriors/Assets/Scripts/ApplicationLifetimeScope.cs
Nikita Dugin 8ec3be6d9c Few changes
2026-04-08 01:25:20 +03:00

40 lines
1.0 KiB
C#

using MessagePipe;
using Players;
using UnityEngine;
using VContainer;
using VContainer.Unity;
public sealed class ApplicationLifetimeScope : LifetimeScope
{
[SerializeField] private PlayerNameService _playerNameService;
protected override void Configure(IContainerBuilder builder)
{
RegisterMessagePipe(builder);
RegisterServices(builder);
}
private void RegisterMessagePipe(IContainerBuilder builder)
{
#if UNITY_EDITOR
// Enable stack trace capture for diagnostics
builder.RegisterMessagePipe(options =>
{
options.EnableCaptureStackTrace = true;
});
// Set the global MessagePipe provider
builder.RegisterBuildCallback(container =>
{
GlobalMessagePipe.SetProvider(container.AsServiceProvider());
});
#else
builder.RegisterMessagePipe();
#endif
}
private void RegisterServices(IContainerBuilder builder)
{
builder.RegisterInstance(_playerNameService).AsSelf();
}
}