Refactor stats
This commit is contained in:
@@ -4,28 +4,28 @@ using Zennysoft.Game.Abstractions;
|
||||
|
||||
namespace Zennysoft.Ma.Adapter;
|
||||
|
||||
public interface IMaSaveFileManager<T>
|
||||
public interface IMaSaveFileManager
|
||||
{
|
||||
Task Save(T gameData);
|
||||
Task Save<T>(T gameData);
|
||||
|
||||
Task<T?> Load();
|
||||
Task<object?> Load();
|
||||
}
|
||||
|
||||
public sealed class MaSaveFileManager<T> : IMaSaveFileManager<T>
|
||||
public sealed class MaSaveFileManager : IMaSaveFileManager
|
||||
{
|
||||
private readonly ISaveFileManager<T> _saveFileManager;
|
||||
private readonly ISaveFileManager _saveFileManager;
|
||||
private ImmutableList<IJsonTypeInfoResolver> _converters;
|
||||
|
||||
public MaSaveFileManager(ISaveFileManager<T> saveFileManager)
|
||||
public MaSaveFileManager(ISaveFileManager saveFileManager)
|
||||
{
|
||||
_saveFileManager = saveFileManager;
|
||||
_converters = [WeaponTagEnumContext.Default, ItemTagEnumContext.Default, ElementTypeEnumContext.Default, AccessoryTagEnumContext.Default, ThrowableItemTagEnumContext.Default, UsableItemTagEnumContext.Default, BoxItemTagEnumContext.Default];
|
||||
_converters = [HealthComponentContext.Default, WeaponTagEnumContext.Default, ItemTagEnumContext.Default, ElementTypeEnumContext.Default, AccessoryTagEnumContext.Default, ThrowableItemTagEnumContext.Default, UsableItemTagEnumContext.Default, BoxItemTagEnumContext.Default];
|
||||
}
|
||||
|
||||
public async Task Save(T gameData)
|
||||
public async Task Save<T>(T gameData)
|
||||
{
|
||||
await _saveFileManager.WriteToFile(gameData, [.. _converters]);
|
||||
}
|
||||
|
||||
public async Task<T?> Load() => await _saveFileManager.ReadFromFile([.. _converters]);
|
||||
public async Task<object?> Load() => await _saveFileManager.ReadFromFile([.. _converters]);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user