17 lines
858 B
C#
17 lines
858 B
C#
namespace NeonSprawl.Server.Game.Gathering;
|
|
|
|
/// <summary>
|
|
/// Server-internal gather resolution envelope (NEO-62). May promote to wire JSON when the client needs explicit
|
|
/// gather payloads; until then prototype verification uses inventory GET + interact response (NEO-63).
|
|
/// NEO-64 telemetry hook sites live in <see cref="GatherOperations.TryGather"/>.
|
|
/// <see cref="GrantsApplied"/> is item grants on success; empty when denied.
|
|
/// <see cref="RemainingGathers"/> is authoritative capacity after success, or current capacity on depletion deny.
|
|
/// <see cref="XpGrantSummary"/> is skill XP applied on success; null when denied.
|
|
/// </summary>
|
|
public readonly record struct GatherResult(
|
|
bool Success,
|
|
string? ReasonCode,
|
|
IReadOnlyList<GatherGrantApplied> GrantsApplied,
|
|
int? RemainingGathers,
|
|
GatherXpGrantSummary? XpGrantSummary);
|