16 lines
788 B
C#
16 lines
788 B
C#
namespace NeonSprawl.Server.Game.Crafting;
|
|
|
|
/// <summary>
|
|
/// Server-internal craft resolution envelope (NEO-69); promoted to wire JSON via <see cref="CraftResponse"/> (NEO-70).
|
|
/// NEO-71 telemetry hook sites live in <see cref="CraftOperations.TryCraft"/> (success path + centralized <c>Deny</c> helper).
|
|
/// </summary>
|
|
public readonly record struct CraftResult(
|
|
bool Success,
|
|
string? ReasonCode,
|
|
/// <summary>Scaled inputs removed on success; empty when denied.</summary>
|
|
IReadOnlyList<CraftIoApplied> InputsConsumed,
|
|
/// <summary>Scaled outputs added on success; empty when denied.</summary>
|
|
IReadOnlyList<CraftIoApplied> OutputsGranted,
|
|
/// <summary>Refine skill XP applied on success; null when denied.</summary>
|
|
CraftXpGrantSummary? XpGrantSummary);
|