using UnityEngine;
using UnityEngine.Serialization;

namespace Managers
{
    public class Services : MonoBehaviour
    {
        public static Services Instance { get; private set; }

        public PlayerJoiner PlayerJoiner => playerJoiner;
        public BGM BGM => bgm;

        [FormerlySerializedAs("inputCoordinator")] [FormerlySerializedAs("inputManager")] [FormerlySerializedAs("inputRouter")] [SerializeField] private PlayerJoiner playerJoiner;
        [SerializeField] private BGM bgm;
        
        public void Awake()
        {
            if (Instance)
            {
                Destroy(gameObject);
                return;
            }
            
            Instance = this;
            DontDestroyOnLoad(gameObject);
        }
    }
}
