35 lines
1.0 KiB
C#
35 lines
1.0 KiB
C#
using System;
|
|
using UnityEngine;
|
|
|
|
namespace Zenject.SpaceFighter
|
|
{
|
|
public class PlayerInstaller : MonoInstaller
|
|
{
|
|
[SerializeField]
|
|
Settings _settings = null;
|
|
|
|
public override void InstallBindings()
|
|
{
|
|
Container.Bind<Player>().AsSingle()
|
|
.WithArguments(_settings.Rigidbody, _settings.MeshRenderer);
|
|
|
|
Container.BindInterfacesTo<PlayerInputHandler>().AsSingle();
|
|
Container.BindInterfacesTo<PlayerMoveHandler>().AsSingle();
|
|
Container.BindInterfacesAndSelfTo<PlayerDamageHandler>().AsSingle();
|
|
Container.BindInterfacesTo<PlayerDirectionHandler>().AsSingle();
|
|
Container.BindInterfacesTo<PlayerShootHandler>().AsSingle();
|
|
|
|
Container.Bind<PlayerInputState>().AsSingle();
|
|
|
|
Container.BindInterfacesTo<PlayerHealthWatcher>().AsSingle();
|
|
}
|
|
|
|
[Serializable]
|
|
public class Settings
|
|
{
|
|
public Rigidbody Rigidbody;
|
|
public MeshRenderer MeshRenderer;
|
|
}
|
|
}
|
|
}
|