neon-sprawl/server/NeonSprawl.Server/Game/Rewards/IRewardDeliveryStore.cs

11 lines
442 B
C#

namespace NeonSprawl.Server.Game.Rewards;
/// <summary>Idempotent per-player quest completion reward delivery record (NEO-126).</summary>
public interface IRewardDeliveryStore
{
/// <summary>First record returns <c>true</c>; replays for the same player+quest return <c>false</c>.</summary>
bool TryRecord(RewardDeliveryEvent deliveryEvent);
bool TryGet(string playerId, string questId, out RewardDeliveryEvent deliveryEvent);
}