Class AchievementManifestRow
One achievement as a manifest exporter sees it: its identity, what the storefront listing shows, what it awards, the identifier it is mirrored under on each storefront, and whether it is fit to export at all.
Inherited Members
Namespace: Serenity.Achievements.Application.Authoring
Assembly: Serenity.Achievements.Application.dll
Syntax
public sealed class AchievementManifestRow
Remarks
A row rather than AchievementAuthoringSnapshot, because the two answer different
questions. The snapshot exists for the authoring rules, so it carries the unlock condition and a
HasIcon flag and no progress target; a manifest carries the progress target and the trophy grade
and has no use at all for a condition tree. Exporting from the snapshot would mean widening it with
fields no rule reads, and handing the exporter a graph it has no business walking.
Constructors
AchievementManifestRow(Fields)
Creates a manifest row.
Declaration
public AchievementManifestRow(AchievementManifestRow.Fields fields)
Parameters
| Type | Name | Description |
|---|---|---|
| AchievementManifestRow.Fields | fields | The values to build it from. |
Exceptions
| Type | Condition |
|---|---|
| ArgumentNullException | When no fields were given. |
Properties
DescriptionKey
Declaration
public string DescriptionKey { get; }
Property Value
| Type | Description |
|---|---|
| string | The description, or the localization key standing for it. |
EpicAchievementId
Declaration
public string EpicAchievementId { get; }
Property Value
| Type | Description |
|---|---|
| string | The Epic identifier, or empty when it is not mirrored to Epic. |
HasAuthoringErrors
Declaration
public bool HasAuthoringErrors { get; }
Property Value
| Type | Description |
|---|---|
| bool | Whether the authoring rules found something that stops this achievement working. Such a row reaches no manifest: an id that unlocks nothing, or awards negative points, is not a row a storefront should be told about. |
Id
Declaration
public string Id { get; }
Property Value
| Type | Description |
|---|---|
| string | The achievement's authored id. |
IsHidden
Declaration
public bool IsHidden { get; }
Property Value
| Type | Description |
|---|---|
| bool | Whether the achievement stays concealed until unlocked. |
NameKey
Declaration
public string NameKey { get; }
Property Value
| Type | Description |
|---|---|
| string | The display name, or the localization key standing for it. |
Points
Declaration
public int Points { get; }
Property Value
| Type | Description |
|---|---|
| int | The points the unlock awards. |
ProgressTarget
Declaration
public long ProgressTarget { get; }
Property Value
| Type | Description |
|---|---|
| long | The progress numerator that unlocks it. Zero is a single-step unlock. |
PsnTrophyId
Declaration
public string PsnTrophyId { get; }
Property Value
| Type | Description |
|---|---|
| string | The PlayStation trophy identifier, or empty when it is not mirrored there. |
SteamApiName
Declaration
public string SteamApiName { get; }
Property Value
| Type | Description |
|---|---|
| string | The Steamworks API name, or empty when it is not mirrored to Steam. |
TrophyGrade
Declaration
public TrophyGrade TrophyGrade { get; }
Property Value
| Type | Description |
|---|---|
| TrophyGrade | The trophy tier tiered storefronts award. |
XboxAchievementId
Declaration
public string XboxAchievementId { get; }
Property Value
| Type | Description |
|---|---|
| string | The Xbox identifier, or empty when it is not mirrored to Xbox. |
Methods
IdentifierFor(AchievementPlatformKind)
The identifier this row carries for one storefront, or empty when it carries none.
Declaration
public string IdentifierFor(AchievementPlatformKind platform)
Parameters
| Type | Name | Description |
|---|---|---|
| AchievementPlatformKind | platform | The storefront to read. |
Returns
| Type | Description |
|---|---|
| string | The identifier. |