recrownedgtk/RecrownedAthenaeum/UI/Skin/SkinData.cs

79 lines
2.2 KiB
C#

using RecrownedAthenaeum.UI.Skin.Definitions;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace RecrownedAthenaeum.UI.Skin
{
/// <summary>
/// Data transfer object for game skins.
/// </summary>
public class SkinData
{
/// <summary>
/// The name of the atlas with solution of ".tatlas".
/// </summary>
public string nameOfTextureAtlas;
/// <summary>
/// The color data containing the name of the color, and red, green, and blue values for the color.
/// </summary>
public ColorData[] colors;
/// <summary>
/// The font data containing the name of the font and name of the file for the font.
/// </summary>
public FontData[] fonts;
/// <summary>
/// The skin definitions containing a name for the definition, and the definition itself.
/// </summary>
public DefinitionData[] definitions;
/// <summary>
/// Color data for data transfer.
/// </summary>
public class ColorData
{
/// <summary>
/// Name of color to be referenced by.
/// </summary>
public string name;
/// <summary>
/// RGB data of this color.
/// </summary>
public int r, g, b;
}
/// <summary>
/// Font data for data transfer.
/// </summary>
public class FontData
{
/// <summary>
/// Name of font to be referenced by.
/// </summary>
public string name;
/// <summary>
/// Name of the file that contains the font. Shouldn't have extension.
/// </summary>
public string font;
}
/// <summary>
/// Definition data for data transfer.
/// </summary>
public class DefinitionData
{
/// <summary>
/// Name of definition to be referenced by.
/// </summary>
public string name;
/// <summary>
/// The skin definition data.
/// </summary>
public ISkinDefinitionData skin;
}
}
}