Extenject icon indicating copy to clipboard operation
Extenject copied to clipboard

[Question] Injection on instantiated Scriptable Object from Game Object Context Installer

Open ATHellboy opened this issue 11 months ago • 1 comments

Hey guys, I'm stuck on something about Zenject/Extenject. Any one has any idea how I can fix that ? btw, sorry for filing an issue here, I can't get my answer from anywhere.

I have Player gameObject with Game Object Context which instantiate Character prefab by factory and Charcater has Game Object Context. In CharacterController which is a facade class on Character I instantiate a few Scriptable Objects in this way:

private readonly DiContainer _container;

public ZenjectResourceFactory(DiContainer container)
{
    _container = container;
}
public Object Instantiate(Object @object)
{
    Object instance = Object.Instantiate(@object);
    _container.QueueForInject(instance);
    return instance;
}

In the Character Installer CharacterBehavior and CharacterPowerup are bound by Container.Bind<CharacterBehaviorContext>().AsSingle().NonLazy(); and Container.Bind<CharacterPowerupContext>().AsSingle().NonLazy();

But the issue is CharacterBehavior and CharacterPowerup are not injected into those Scriptable Objects [Inject] methods.

ATHellboy avatar Sep 09 '23 09:09 ATHellboy