[Fix] DI
This commit is contained in:
@@ -1,12 +1,41 @@
|
|||||||
|
using UnityEngine;
|
||||||
using VContainer;
|
using VContainer;
|
||||||
using VContainer.Unity;
|
using VContainer.Unity;
|
||||||
|
using YachtDice.Economy;
|
||||||
|
using YachtDice.Events;
|
||||||
|
using YachtDice.Game;
|
||||||
|
using YachtDice.Modifiers.Definition;
|
||||||
|
using YachtDice.Modifiers.Pipeline;
|
||||||
|
using YachtDice.Modifiers.Runtime;
|
||||||
|
using YachtDice.Scoring;
|
||||||
|
|
||||||
namespace YachtDice
|
namespace YachtDice.DI
|
||||||
{
|
{
|
||||||
public class GameLifetimeScope : LifetimeScope
|
public class GameLifetimeScope : LifetimeScope
|
||||||
{
|
{
|
||||||
|
[SerializeField] private ModifierCatalogSO modifierCatalog;
|
||||||
|
|
||||||
|
[Header("Scene References")]
|
||||||
|
[SerializeField] private ScoringSystem scoringSystem;
|
||||||
|
[SerializeField] private CurrencyBank currencyBank;
|
||||||
|
[SerializeField] private GameManager gameManager;
|
||||||
|
[SerializeField] private DiceManager diceManager;
|
||||||
|
|
||||||
protected override void Configure(IContainerBuilder builder)
|
protected override void Configure(IContainerBuilder builder)
|
||||||
{
|
{
|
||||||
|
// SO catalog
|
||||||
|
builder.RegisterInstance(modifierCatalog);
|
||||||
|
|
||||||
|
// Core modifier services
|
||||||
|
builder.Register<ModifierRegistry>(Lifetime.Singleton);
|
||||||
|
builder.Register<ModifierPipeline>(Lifetime.Singleton);
|
||||||
|
builder.Register<GameEventBus>(Lifetime.Singleton);
|
||||||
|
|
||||||
|
// Scene MonoBehaviour components
|
||||||
|
builder.RegisterComponent(scoringSystem);
|
||||||
|
builder.RegisterComponent(currencyBank);
|
||||||
|
builder.RegisterComponent(gameManager);
|
||||||
|
builder.RegisterComponent(diceManager);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user