54 lines
1.3 KiB
C#
54 lines
1.3 KiB
C#
using HurricaneVR.Framework.Core;
|
|
using HurricaneVR.Framework.Core.Utils;
|
|
using UnityEngine;
|
|
using Zenject;
|
|
|
|
public class GlobalInstaller : MonoInstaller
|
|
{
|
|
|
|
|
|
[SerializeField]
|
|
private GameObject musicPlayerPrefab;
|
|
|
|
[SerializeField]
|
|
private GameObject hvrGlobalPrefab;
|
|
|
|
[SerializeField]
|
|
private GameObject playerPrefab;
|
|
|
|
public override void Start()
|
|
{
|
|
base.Start();
|
|
|
|
name = "ProjectContext";
|
|
}
|
|
|
|
public override void InstallBindings()
|
|
{
|
|
Container.Bind<MusicManager>()
|
|
.FromComponentInNewPrefab(musicPlayerPrefab)
|
|
.AsSingle()
|
|
.OnInstantiated<MusicManager>((ctx, obj) =>
|
|
{
|
|
obj.name = musicPlayerPrefab.name;
|
|
});
|
|
|
|
Container.Bind<HVRManager>()
|
|
.FromComponentInNewPrefab(hvrGlobalPrefab)
|
|
.AsSingle()
|
|
.OnInstantiated<HVRManager>((ctx, obj) =>
|
|
{
|
|
obj.name = hvrGlobalPrefab.name;
|
|
})
|
|
.NonLazy();
|
|
|
|
Container.Bind<HVRObjectCollisionDisabler>()
|
|
.FromComponentInNewPrefab(playerPrefab)
|
|
.AsSingle()
|
|
.OnInstantiated<HVRObjectCollisionDisabler>((ctx, obj) =>
|
|
{
|
|
obj.name = playerPrefab.name;
|
|
})
|
|
.NonLazy();
|
|
}
|
|
} |