Files renamed to RecrownedGTK.
This commit is contained in:
35
RecrownedGTK/Data/NinePatchData.cs
Normal file
35
RecrownedGTK/Data/NinePatchData.cs
Normal file
@@ -0,0 +1,35 @@
|
||||
namespace RecrownedGTK.Data
|
||||
{
|
||||
/// <summary>
|
||||
/// Represents a data structure for 9patches.
|
||||
/// </summary>
|
||||
public class NinePatchData
|
||||
{
|
||||
/// <summary>
|
||||
/// Name of texture associated with patch. May be null in the case of being apart of a <see cref="TextureAtlasData"/>
|
||||
/// </summary>
|
||||
public string textureName;
|
||||
|
||||
/// <summary>
|
||||
/// the boundaries of the patch.
|
||||
/// </summary>
|
||||
public int left, right, bottom, top;
|
||||
|
||||
/// <summary>
|
||||
/// Constructs patch.
|
||||
/// </summary>
|
||||
/// <param name="textureName">Name of the texture. May be null.</param>
|
||||
/// <param name="left">Left bound.</param>
|
||||
/// <param name="right">Right bound.</param>
|
||||
/// <param name="bottom">Bottom bound.</param>
|
||||
/// <param name="Top">Top bound.</param>
|
||||
public NinePatchData(string textureName, int left, int right, int bottom, int Top)
|
||||
{
|
||||
this.textureName = textureName;
|
||||
this.left = left;
|
||||
this.right = right;
|
||||
this.bottom = bottom;
|
||||
this.top = Top;
|
||||
}
|
||||
}
|
||||
}
|
115
RecrownedGTK/Data/SkinData.cs
Normal file
115
RecrownedGTK/Data/SkinData.cs
Normal file
@@ -0,0 +1,115 @@
|
||||
using System;
|
||||
using RecrownedGTK.Graphics.UI.SkinSystem.Definitions;
|
||||
using OpenTK.Graphics;
|
||||
using RecrownedGTK.Types;
|
||||
|
||||
namespace RecrownedGTK.Data
|
||||
{
|
||||
/// <summary>
|
||||
/// Data transfer object for game skins.
|
||||
/// </summary>
|
||||
public class SkinData
|
||||
{
|
||||
/// <summary>
|
||||
/// Holds metadata.
|
||||
/// </summary>
|
||||
public class Metadata
|
||||
{
|
||||
/// <summary>
|
||||
/// Author name.
|
||||
/// </summary>
|
||||
public string author;
|
||||
|
||||
/// <summary>
|
||||
/// Description of skin.
|
||||
/// </summary>
|
||||
public string description;
|
||||
|
||||
/// <summary>
|
||||
/// Name of skin.
|
||||
/// </summary>
|
||||
public string skinName;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// The metadata for the skin file.
|
||||
/// </summary>
|
||||
public Metadata metadata;
|
||||
|
||||
/// <summary>
|
||||
/// The name of the atlas with extension.
|
||||
/// </summary>
|
||||
public string nameOfTextureAtlas;
|
||||
|
||||
/// <summary>
|
||||
/// Name of the region or file designating the cursor. If there is an extension, will check for file first then texture atlas. Otherwise, will just check region.
|
||||
/// </summary>
|
||||
public string cursorTextureName;
|
||||
|
||||
/// <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 skin definitions containing a name for the definition, and the definition itself.
|
||||
/// </summary>
|
||||
public DefinitionData[] definitions;
|
||||
|
||||
/// <summary>
|
||||
/// Color data for data transfer.
|
||||
/// </summary>
|
||||
public struct ColorData
|
||||
{
|
||||
/// <summary>
|
||||
/// Name of color to be referenced by.
|
||||
/// </summary>
|
||||
public string name;
|
||||
|
||||
/// <summary>
|
||||
/// RGBA data of this color.
|
||||
/// </summary>
|
||||
public byte r, g, b, a;
|
||||
|
||||
/// <summary>
|
||||
/// Sets values for data.
|
||||
/// </summary>
|
||||
/// <param name="name">the name to be referenced by.</param>
|
||||
/// <param name="color">The color value <paramref name="name"/> represents.</param>
|
||||
public ColorData(string name, Color4 color)
|
||||
{
|
||||
this.name = name;
|
||||
r = color.GetRedAsByte();
|
||||
g = color.GetGreenAsByte();
|
||||
b = color.GetBlueAsByte();
|
||||
a = color.GetAlphaAsByte();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Definition data for data transfer.
|
||||
/// </summary>
|
||||
public struct DefinitionData
|
||||
{
|
||||
/// <summary>
|
||||
/// Name of definition to be referenced by.
|
||||
/// </summary>
|
||||
public string name;
|
||||
/// <summary>
|
||||
/// The skin definition data.
|
||||
/// </summary>
|
||||
public SkinDefinitionData skin;
|
||||
|
||||
/// <summary>
|
||||
/// Sets values for data.
|
||||
/// </summary>
|
||||
/// <param name="name">The name to be referenced by.</param>
|
||||
/// <param name="skinDefinitionData">The skin data.</param>
|
||||
public DefinitionData(string name, SkinDefinitionData skinDefinitionData)
|
||||
{
|
||||
this.name = name;
|
||||
skin = skinDefinitionData;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
83
RecrownedGTK/Data/TextureAtlasData.cs
Normal file
83
RecrownedGTK/Data/TextureAtlasData.cs
Normal file
@@ -0,0 +1,83 @@
|
||||
using RecrownedGTK.Types;
|
||||
namespace RecrownedGTK.Data
|
||||
{
|
||||
/// <summary>
|
||||
/// Data transfer object for a texture atlas.
|
||||
/// </summary>
|
||||
public class TextureAtlasData
|
||||
{
|
||||
/// <summary>
|
||||
/// Contains the regions of the texture atlas.
|
||||
/// </summary>
|
||||
public AtlasRegionData[] regions;
|
||||
/// <summary>
|
||||
/// The name of the file.
|
||||
/// </summary>
|
||||
public string textureName;
|
||||
|
||||
/// <summary>
|
||||
/// Creates the atlas given the regions and the file name of the texture file to be used.
|
||||
/// </summary>
|
||||
/// <param name="textureName"></param>
|
||||
/// <param name="regions"></param>
|
||||
public TextureAtlasData(string textureName, AtlasRegionData[] regions)
|
||||
{
|
||||
this.regions = regions;
|
||||
this.textureName = textureName;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Data object that contains information about the region ninepatch situation of a given region in an atlas.
|
||||
/// </summary>
|
||||
public struct AtlasRegionData
|
||||
{
|
||||
/// <summary>
|
||||
/// Name of the region for referencial purposes.
|
||||
/// </summary>
|
||||
public string name;
|
||||
/// <summary>
|
||||
/// The location of the patch is designated by this rectangle.
|
||||
/// </summary>
|
||||
public Rectangle bounds;
|
||||
/// <summary>
|
||||
/// The ninepatch information.
|
||||
/// </summary>
|
||||
public NinePatchData ninePatchData;
|
||||
|
||||
/// <summary>
|
||||
/// Sets position in atlas for convenience.
|
||||
/// </summary>
|
||||
/// <param name="x">X coordinate of the position in the patch.</param>
|
||||
/// <param name="y">Y coordinate of the position in the patch.</param>
|
||||
public void SetPosition(int x, int y)
|
||||
{
|
||||
bounds.X = x;
|
||||
bounds.Y = y;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the dimensions of the region on the atlas for convenience.
|
||||
/// </summary>
|
||||
/// <param name="width">Width of the region.</param>
|
||||
/// <param name="height">Height of the region.</param>
|
||||
public void SetSize(int width, int height)
|
||||
{
|
||||
bounds.Width = width;
|
||||
bounds.Height = height;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets both the coordinates and dimensions of the region on the atlas for convenience.
|
||||
/// </summary>
|
||||
/// <param name="x">X coordinate of the position in the patch.</param>
|
||||
/// <param name="y">Y coordinate of the position in the patch.</param>
|
||||
/// <param name="width">Width of the region.</param>
|
||||
/// <param name="height">Height of the region.</param>
|
||||
public void SetBounds(int x, int y, int width, int height)
|
||||
{
|
||||
SetPosition(x, y);
|
||||
SetSize(width, height);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user