31 lines
1001 B
C#
31 lines
1001 B
C#
using RebootKit.Engine.Foundation;
|
|
using UnityEngine;
|
|
|
|
namespace RebootKit.Engine.Services.Console {
|
|
[CreateAssetMenu(menuName = RConsts.k_ServiceAssetMenu + "Console")]
|
|
public class ConsoleServiceAsset : ServiceAsset<ConsoleService> {
|
|
[SerializeField] CVar[] _initialCVars;
|
|
|
|
[SerializeField] bool _loadCVarsFromResources = true;
|
|
|
|
public override ConsoleService Create(DIContext context) {
|
|
ConsoleService service = new();
|
|
context.Inject(service);
|
|
|
|
foreach (CVar cvar in _initialCVars) {
|
|
service.Replace(cvar);
|
|
cvar.Reset();
|
|
}
|
|
|
|
if (_loadCVarsFromResources) {
|
|
CVarAsset[] cvarsAssets = Resources.LoadAll<CVarAsset>("cvar");
|
|
foreach (CVarAsset cvarAsset in cvarsAssets) {
|
|
CVar cvar = cvarAsset.Create();
|
|
service.Replace(cvar);
|
|
}
|
|
}
|
|
|
|
return service;
|
|
}
|
|
}
|
|
} |