Files
GameJamDungeon/Zennysoft.Game.Ma.Implementation/Item/RescuedItemDatabase.cs
2026-02-26 02:09:38 -08:00

39 lines
848 B
C#

using Chickensoft.Serialization;
namespace Zennysoft.Ma.Adapter;
public class RescuedItemDatabase
{
[Save("rescued_item_list")]
private List<IBaseInventoryItem> _items { get; init; }
private int _maxSize { get; init; } = 20;
public RescuedItemDatabase(int maxSize)
{
_items = [];
_maxSize = maxSize;
}
public RescuedItemDatabase(List<IBaseInventoryItem> items, int maxSize)
{
_items = items;
_maxSize = maxSize;
}
public bool TryAdd(IBaseInventoryItem item)
{
if (_items.Count >= _maxSize)
return false;
if (item is IEquipableItem equipable)
equipable.Glued = false;
_items.Add(item);
return true;
}
public void Remove(IBaseInventoryItem item) => _items.Remove(item);
public List<IBaseInventoryItem> GetItems() => _items;
public void Clear() => _items.Clear();
}