using System;
using System.Collections.Generic;
using Robust.Shared.Interfaces.Reflection;
using Robust.Shared.IoC;
using Robust.Shared.Utility;
namespace Content.Server.AI.WorldState
{
// This will also handle the global blackboard at some point
///
/// Manager the AI blackboard states
///
public sealed class BlackboardManager
{
// Cache the known types
public IReadOnlyCollection AiStates => _aiStates;
private List _aiStates = new List();
public void Initialize()
{
var reflectionManager = IoCManager.Resolve();
foreach (var state in reflectionManager.GetAllChildren(typeof(IAiState)))
{
_aiStates.Add(state);
}
DebugTools.AssertNotNull(_aiStates);
}
}
}