using System;
using System.Collections.Generic;
using UnityEngine;
namespace KernelPanic.Data
{
///
/// Resolves persisted card ids to immutable card definitions.
///
public sealed class CardDatabase : ScriptableObject
{
[SerializeField] private List allCards = new();
public IReadOnlyList AllCards => allCards;
public CardDefinition FindById(string id)
{
if (string.IsNullOrWhiteSpace(id))
{
return null;
}
for (int i = 0; i < allCards.Count; i++)
{
CardDefinition card = allCards[i];
if (card != null && string.Equals(card.Id, id, StringComparison.OrdinalIgnoreCase))
{
return card;
}
}
return null;
}
}
}