Closed Pavelko007 closed 6 years ago
public class GameInstaller : MonoInstaller<GameInstaller>
{
[Inject]
GameSettings settings;
public override void InstallBindings()
{
Container.BindFactory<Snake, Snake.Factory>().FromComponentInNewPrefab(settings.SnakePrefab);
}
}
[Serializable]
public class GameSettings
{
public GameObject SnakePrefab;
}
[CreateAssetMenu(fileName = "GameSettings", menuName = "Installers/GameSettings")]
public class GameSettingsInstaller : ScriptableObjectInstaller<GameSettingsInstaller>
{
public GameSettings gameSettings;
public override void InstallBindings()
{
Container.BindInstance(gameSettings);
}
}
ZenjectException: Unable to resolve type 'Snake.Installers.GameSettings' while building object with type 'Snake.Installers.GameInstaller'. Object graph: GameInstaller
Zenject.DiContainer.Resolve (Zenject.InjectContext context) (at Assets/Plugins/Zenject/Source/Main/DiContainer.cs:753) Zenject.DiContainer.InjectExplicitInternal (System.Object injectable, System.Type injectableType, Zenject.InjectArgs args) (at Assets/Plugins/Zenject/Source/Main/DiContainer.cs:1094) Zenject.DiContainer.InjectExplicit (System.Object injectable, System.Type injectableType, Zenject.InjectArgs args) (at Assets/Plugins/Zenject/Source/Main/DiContainer.cs:1046) Zenject.DiContainer.InjectExplicit (System.Object injectable, System.Collections.Generic.List
1 extraArgs) (at Assets/Plugins/Zenject/Source/Main/DiContainer.cs:1008) Zenject.DiContainer.Inject (System.Object injectable, IEnumerable
1 extraArgs) (at Assets/Plugins/Zenject/Source/Main/DiContainer.cs:1794) Zenject.DiContainer.Inject (System.Object injectable) (at Assets/Plugins/Zenject/Source/Main/DiContainer.cs:1788) Zenject.Context.InstallInstallers (System.Collections.Generic.List1 normalInstallers, System.Collections.Generic.List
1 normalInstallerTypes, System.Collections.Generic.List1 scriptableObjectInstallers, System.Collections.Generic.List
1 installers, System.Collections.Generic.List1 installerPrefabs) (at Assets/Plugins/Zenject/Source/Install/Contexts/Context.cs:192) Zenject.Context.InstallInstallers () (at Assets/Plugins/Zenject/Source/Install/Contexts/Context.cs:134) Zenject.SceneContext.InstallBindings (System.Collections.Generic.List
1 injectableMonoBehaviours) (at Assets/Plugins/Zenject/Source/Install/Contexts/SceneContext.cs:306) Zenject.SceneContext.Install () (at Assets/Plugins/Zenject/Source/Install/Contexts/SceneContext.cs:254) Zenject.SceneContext.RunInternal () (at Assets/Plugins/Zenject/Source/Install/Contexts/SceneContext.cs:136) Zenject.RunnableContext.Run () (at Assets/Plugins/Zenject/Source/Install/Contexts/RunnableContext.cs:36) Zenject.RunnableContext.Initialize () (at Assets/Plugins/Zenject/Source/Install/Contexts/RunnableContext.cs:22) Zenject.SceneContext.Awake () (at Assets/Plugins/Zenject/Source/Install/Contexts/SceneContext.cs:113)