using NeonSprawl.Server.Game.Factions;
using NeonSprawl.Server.Game.Items;
using NeonSprawl.Server.Game.Skills;
namespace NeonSprawl.Server.Game.Rewards;
/// Stable deny reason codes for quest completion reward delivery (NEO-127).
public static class RewardDeliveryReasonCodes
{
/// Idempotent replay — success path when hits before apply.
public const string AlreadyDelivered = "already_delivered";
public const string InvalidPlayerId = "invalid_player_id";
public const string InvalidQuestId = "invalid_quest_id";
public const string InvalidContractInstanceId = "invalid_contract_instance_id";
public const string InventoryStoreMissing = "inventory_store_missing";
public const string ProgressionStoreMissing = "progression_store_missing";
/// Passthrough from .
public const string InventoryFull = PlayerInventoryReasonCodes.InventoryFull;
/// Passthrough from .
public const string InvalidItem = PlayerInventoryReasonCodes.InvalidItem;
/// Passthrough from .
public const string InvalidQuantity = PlayerInventoryReasonCodes.InvalidQuantity;
/// Passthrough from .
public const string UnknownSkill = SkillProgressionSnapshotApi.ReasonUnknownSkill;
/// Passthrough from .
public const string InvalidAmount = SkillProgressionSnapshotApi.ReasonInvalidAmount;
/// Passthrough from .
public const string SourceKindNotAllowed = SkillProgressionSnapshotApi.ReasonSourceKindNotAllowed;
/// Passthrough from via rep apply (NEO-138).
public const string UnknownFaction = FactionStandingReasonCodes.UnknownFaction;
/// Passthrough from .
public const string InvalidDelta = ReputationApplyReasonCodes.InvalidDelta;
/// Passthrough from .
public const string InvalidDeltaId = ReputationApplyReasonCodes.InvalidDeltaId;
/// Passthrough from .
public const string InvalidSource = ReputationApplyReasonCodes.InvalidSource;
/// Passthrough from .
public const string AuditAppendFailed = ReputationApplyReasonCodes.AuditAppendFailed;
}