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 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; }