using RebootKit.Engine.Foundation;
using RebootKit.Engine.Services.Console;
using RebootKit.Engine.Services.Game;
using RebootKit.Engine.Services.Input;
using RebootKit.Engine.Services.Simulation;
using UnityEngine;

namespace RebootKit.Engine {
    [CreateAssetMenu(menuName = RConsts.AssetMenu + RConsts.EngineConfigAssetName, fileName = RConsts.EngineConfigAssetName)]
    public class EngineConfigAsset : ScriptableObject {
        [Header("<color=#ff0000>REQUIRED</color>: core assets")]
        public ServiceAsset<ConsoleService> ConsoleService;
        public ServiceAsset<InputService> InputService;
        public ServiceAsset<WorldService> WorldService;
        public ServiceAsset<GameService> GameService;
        
        [Space]
        public GameModeAsset StartingGameMode;
    }
}