18 lines
744 B
C#
18 lines
744 B
C#
namespace NeonSprawl.Server.Game.Rewards;
|
|
|
|
/// <summary>
|
|
/// Idempotent reward delivery record (NEO-126).
|
|
/// Persisted via <see cref="IRewardDeliveryStore"/> after router apply succeeds (NEO-127).
|
|
/// E9.M1 <c>reward_delivery</c> hook site: <see cref="RewardRouterOperations"/> (NEO-130).
|
|
/// </summary>
|
|
public readonly record struct RewardDeliveryEvent(
|
|
string PlayerId,
|
|
string QuestId,
|
|
DateTimeOffset DeliveredAt,
|
|
IReadOnlyList<RewardItemGrantApplied> GrantedItems,
|
|
IReadOnlyList<RewardSkillXpGrantApplied> GrantedSkillXp,
|
|
IReadOnlyList<RewardReputationGrantApplied> GrantedReputation,
|
|
string IdempotencyKey,
|
|
string SourceKind = RewardDeliverySourceKinds.QuestCompletion,
|
|
string ContractInstanceId = "");
|