You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

319 lines
7.5 KiB

// Copyright Epic Games, Inc. All Rights Reserved.
// This file is automatically generated. Changes to this file may be overwritten.
namespace Epic.OnlineServices.Achievements
{
/// <summary>
/// Contains information about a single achievement definition with localized text.
/// </summary>
public struct Definition
{
/// <summary>
/// Achievement ID that can be used to uniquely identify the achievement.
/// </summary>
public Utf8String AchievementId { get; set; }
/// <summary>
/// Text representing the Name to display in-game when achievement has been unlocked.
/// </summary>
public Utf8String DisplayName { get; set; }
/// <summary>
/// Text representing the description to display in-game when achievement has been unlocked.
/// </summary>
public Utf8String Description { get; set; }
/// <summary>
/// Text representing the name to display in-game when achievement is locked.
/// </summary>
public Utf8String LockedDisplayName { get; set; }
/// <summary>
/// Text representing the description of what needs to be done to trigger the unlock of this achievement.
/// </summary>
public Utf8String LockedDescription { get; set; }
/// <summary>
/// Text representing the description to display in-game when achievement is hidden.
/// </summary>
public Utf8String HiddenDescription { get; set; }
/// <summary>
/// Text representing the description of what happens when the achievement is unlocked.
/// </summary>
public Utf8String CompletionDescription { get; set; }
/// <summary>
/// Text representing the icon to display in-game when achievement is unlocked.
/// </summary>
public Utf8String UnlockedIconId { get; set; }
/// <summary>
/// Text representing the icon to display in-game when achievement is locked.
/// </summary>
public Utf8String LockedIconId { get; set; }
/// <summary>
/// True if achievement is hidden, false otherwise.
/// </summary>
public bool IsHidden { get; set; }
/// <summary>
/// Array of stat thresholds that need to be satisfied to unlock the achievement.
/// </summary>
public StatThresholds[] StatThresholds { get; set; }
internal void Set(ref DefinitionInternal other)
{
AchievementId = other.AchievementId;
DisplayName = other.DisplayName;
Description = other.Description;
LockedDisplayName = other.LockedDisplayName;
LockedDescription = other.LockedDescription;
HiddenDescription = other.HiddenDescription;
CompletionDescription = other.CompletionDescription;
UnlockedIconId = other.UnlockedIconId;
LockedIconId = other.LockedIconId;
IsHidden = other.IsHidden;
StatThresholds = other.StatThresholds;
}
}
[System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)]
internal struct DefinitionInternal : IGettable<Definition>, ISettable<Definition>, System.IDisposable
{
private int m_ApiVersion;
private System.IntPtr m_AchievementId;
private System.IntPtr m_DisplayName;
private System.IntPtr m_Description;
private System.IntPtr m_LockedDisplayName;
private System.IntPtr m_LockedDescription;
private System.IntPtr m_HiddenDescription;
private System.IntPtr m_CompletionDescription;
private System.IntPtr m_UnlockedIconId;
private System.IntPtr m_LockedIconId;
private int m_IsHidden;
private int m_StatThresholdsCount;
private System.IntPtr m_StatThresholds;
public Utf8String AchievementId
{
get
{
Utf8String value;
Helper.Get(m_AchievementId, out value);
return value;
}
set
{
Helper.Set(value, ref m_AchievementId);
}
}
public Utf8String DisplayName
{
get
{
Utf8String value;
Helper.Get(m_DisplayName, out value);
return value;
}
set
{
Helper.Set(value, ref m_DisplayName);
}
}
public Utf8String Description
{
get
{
Utf8String value;
Helper.Get(m_Description, out value);
return value;
}
set
{
Helper.Set(value, ref m_Description);
}
}
public Utf8String LockedDisplayName
{
get
{
Utf8String value;
Helper.Get(m_LockedDisplayName, out value);
return value;
}
set
{
Helper.Set(value, ref m_LockedDisplayName);
}
}
public Utf8String LockedDescription
{
get
{
Utf8String value;
Helper.Get(m_LockedDescription, out value);
return value;
}
set
{
Helper.Set(value, ref m_LockedDescription);
}
}
public Utf8String HiddenDescription
{
get
{
Utf8String value;
Helper.Get(m_HiddenDescription, out value);
return value;
}
set
{
Helper.Set(value, ref m_HiddenDescription);
}
}
public Utf8String CompletionDescription
{
get
{
Utf8String value;
Helper.Get(m_CompletionDescription, out value);
return value;
}
set
{
Helper.Set(value, ref m_CompletionDescription);
}
}
public Utf8String UnlockedIconId
{
get
{
Utf8String value;
Helper.Get(m_UnlockedIconId, out value);
return value;
}
set
{
Helper.Set(value, ref m_UnlockedIconId);
}
}
public Utf8String LockedIconId
{
get
{
Utf8String value;
Helper.Get(m_LockedIconId, out value);
return value;
}
set
{
Helper.Set(value, ref m_LockedIconId);
}
}
public bool IsHidden
{
get
{
bool value;
Helper.Get(m_IsHidden, out value);
return value;
}
set
{
Helper.Set(value, ref m_IsHidden);
}
}
public StatThresholds[] StatThresholds
{
get
{
StatThresholds[] value;
Helper.Get<StatThresholdsInternal, StatThresholds>(m_StatThresholds, out value, m_StatThresholdsCount);
return value;
}
set
{
Helper.Set<StatThresholds, StatThresholdsInternal>(ref value, ref m_StatThresholds, out m_StatThresholdsCount);
}
}
public void Set(ref Definition other)
{
m_ApiVersion = AchievementsInterface.DefinitionApiLatest;
AchievementId = other.AchievementId;
DisplayName = other.DisplayName;
Description = other.Description;
LockedDisplayName = other.LockedDisplayName;
LockedDescription = other.LockedDescription;
HiddenDescription = other.HiddenDescription;
CompletionDescription = other.CompletionDescription;
UnlockedIconId = other.UnlockedIconId;
LockedIconId = other.LockedIconId;
IsHidden = other.IsHidden;
StatThresholds = other.StatThresholds;
}
public void Set(ref Definition? other)
{
if (other.HasValue)
{
m_ApiVersion = AchievementsInterface.DefinitionApiLatest;
AchievementId = other.Value.AchievementId;
DisplayName = other.Value.DisplayName;
Description = other.Value.Description;
LockedDisplayName = other.Value.LockedDisplayName;
LockedDescription = other.Value.LockedDescription;
HiddenDescription = other.Value.HiddenDescription;
CompletionDescription = other.Value.CompletionDescription;
UnlockedIconId = other.Value.UnlockedIconId;
LockedIconId = other.Value.LockedIconId;
IsHidden = other.Value.IsHidden;
StatThresholds = other.Value.StatThresholds;
}
}
public void Dispose()
{
Helper.Dispose(ref m_AchievementId);
Helper.Dispose(ref m_DisplayName);
Helper.Dispose(ref m_Description);
Helper.Dispose(ref m_LockedDisplayName);
Helper.Dispose(ref m_LockedDescription);
Helper.Dispose(ref m_HiddenDescription);
Helper.Dispose(ref m_CompletionDescription);
Helper.Dispose(ref m_UnlockedIconId);
Helper.Dispose(ref m_LockedIconId);
Helper.Dispose(ref m_StatThresholds);
}
public void Get(out Definition output)
{
output = new Definition();
output.Set(ref this);
}
}
}