Neg_Utils/Achievments/IAchievmentBackend.cs
2023-02-17 14:56:31 +01:00

31 lines
926 B
C#

using NEG.Utils.Achievments.AchievmentTypes;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace NEG.Utils.Achievments
{
/// <summary>
/// Used to construct <see cref="IAchievmentBackend"/> instance
/// </summary>
public interface IAchievmentBackendConfig
{
/// <returns>Constructed backend</returns>
public IAchievmentBackend ConstructBackend();
}
public interface IAchievmentBackend : IAchievmentCallbackReciever
{
/// <summary>
/// Constructs an AchievmentData for given <paramref name="definition"/>
/// </summary>
/// <remarks>May return null if there is no stored data for this achievment</remarks>
AchievmentData GetStoredAchivment(AchievmentDefinition definition);
/// <summary>
/// Used for e.g. syncing with upstream
/// </summary>
void Update();
}
}