iFactory.Cutting.Unity/Assets/BITKit/Unity/Scripts/Config/ScriptableExec.cs

46 lines
965 B
C#

using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using BITKit;
using BITKit.Core.Tuple;
using UnityEngine;
using UnityEngine.Rendering;
namespace BITKit
{
[Serializable]
public sealed class CommandConfigProvider:IConfigProvider
{
[SerializeField] private UnityTuple<string, string>[] pairs;
public string GetConfig(params object[] args)
{
return string.Join("\n",pairs);
}
public void Configure(params object[] args)
{
foreach (var pair in pairs)
{
BITCommands.Excute($"set {pair.Item1} {pair.Item2}");
}
}
}
public class ScriptableExec : MonoBehaviour
{
[SerializeReference,SubclassSelector] private IConfigProvider configProvider;
private void Start()
{
//DataParser.Set(configProvider.GetConfig());
configProvider.Configure();
BIT4Log.Log<ScriptableExec>("Config loaded");
}
[BIT]
public void PrintJson()
{
Debug.Log(configProvider.GetConfig());
}
}
}