mirror of
https://git.huckle.dev/Huckles-Minecraft-Archive/PCK-Studio.git
synced 2026-06-25 19:55:33 +00:00
Merge 'main' into 'SkinPackConversion'
This commit is contained in:
@@ -452,7 +452,7 @@ namespace PckStudio.Classes.FromLCE
|
||||
{
|
||||
List<modelCube> cubes = new List<modelCube>();
|
||||
|
||||
var anim = new SkinANIM("0");
|
||||
var anim = new SkinANIM();
|
||||
|
||||
Console.WriteLine(part);
|
||||
float offset = float.Parse(offsets.Find(o => o.Item1 == part).Item2);
|
||||
@@ -463,7 +463,7 @@ namespace PckStudio.Classes.FromLCE
|
||||
switch (name)
|
||||
{
|
||||
case "ANIM":
|
||||
anim = new SkinANIM(value);
|
||||
anim = SkinANIM.FromString(value);
|
||||
break;
|
||||
case "BOX":
|
||||
string[] args = entry.Split(' ');
|
||||
|
||||
@@ -3,12 +3,12 @@ using System.Drawing.Drawing2D;
|
||||
using System.Drawing;
|
||||
using System.Diagnostics;
|
||||
using System;
|
||||
using System.Drawing.Imaging;
|
||||
|
||||
namespace PckStudio.Classes.Extentions
|
||||
{
|
||||
internal static class ImageExtentions
|
||||
{
|
||||
|
||||
public enum ImageLayoutDirection
|
||||
{
|
||||
Horizontal,
|
||||
@@ -106,5 +106,38 @@ namespace PckStudio.Classes.Extentions
|
||||
|
||||
return new Size(width, heigh);
|
||||
}
|
||||
|
||||
public struct GraphicsConfig
|
||||
{
|
||||
public CompositingMode CompositingMode { get; set; }
|
||||
public CompositingQuality CompositingQuality { get; set; }
|
||||
public InterpolationMode InterpolationMode { get; set; }
|
||||
public SmoothingMode SmoothingMode {get; set; }
|
||||
public PixelOffsetMode PixelOffsetMode { get; set; }
|
||||
}
|
||||
|
||||
public static Image ResizeImage(this Image image, int width, int height, GraphicsConfig graphicsConfig)
|
||||
{
|
||||
var destRect = new Rectangle(0, 0, width, height);
|
||||
var destImage = new Bitmap(width, height);
|
||||
|
||||
destImage.SetResolution(image.HorizontalResolution, image.VerticalResolution);
|
||||
|
||||
using (var graphics = Graphics.FromImage(destImage))
|
||||
{
|
||||
graphics.CompositingMode = graphicsConfig.CompositingMode;
|
||||
graphics.CompositingQuality = graphicsConfig.CompositingQuality;
|
||||
graphics.InterpolationMode = graphicsConfig.InterpolationMode;
|
||||
graphics.SmoothingMode = graphicsConfig.SmoothingMode;
|
||||
graphics.PixelOffsetMode = graphicsConfig.PixelOffsetMode;
|
||||
|
||||
using (var wrapMode = new ImageAttributes())
|
||||
{
|
||||
wrapMode.SetWrapMode(WrapMode.TileFlipXY);
|
||||
graphics.DrawImage(image, destRect, 0, 0, image.Width, image.Height, GraphicsUnit.Pixel, wrapMode);
|
||||
}
|
||||
}
|
||||
return destImage;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,12 +10,32 @@ namespace PckStudio.Classes.Misc
|
||||
public static DiscordRpcClient Client;
|
||||
public static readonly DateTime StartUpTime = DateTime.UtcNow;
|
||||
|
||||
private static readonly Assets _assets = new Assets()
|
||||
{
|
||||
LargeImageKey = "pcklgo",
|
||||
LargeImageText = "PCK-Studio",
|
||||
};
|
||||
|
||||
private static readonly Button[] _buttons = new Button[]
|
||||
{
|
||||
new Button()
|
||||
{
|
||||
Label = "Check it out.",
|
||||
Url = Program.ProjectUrl,
|
||||
}
|
||||
};
|
||||
|
||||
public static void Initialize()
|
||||
{
|
||||
Client = new DiscordRpcClient(Settings.Default.RichPresenceId);
|
||||
Client.Initialize();
|
||||
}
|
||||
|
||||
public static void SetPresence(string details)
|
||||
{
|
||||
SetPresence(details, null);
|
||||
}
|
||||
|
||||
public static void SetPresence(string details, string state)
|
||||
{
|
||||
Client?.SetPresence(new RichPresence()
|
||||
@@ -23,16 +43,14 @@ namespace PckStudio.Classes.Misc
|
||||
Details = details,
|
||||
State = state,
|
||||
Timestamps = new Timestamps() { Start = StartUpTime },
|
||||
Assets = new Assets()
|
||||
{
|
||||
LargeImageKey = "pcklgo",
|
||||
LargeImageText = "PCK-Studio",
|
||||
}
|
||||
Assets = _assets,
|
||||
Buttons = _buttons
|
||||
});
|
||||
}
|
||||
|
||||
public static void Deinitialize()
|
||||
{
|
||||
Client?.ClearPresence();
|
||||
Client?.Dispose();
|
||||
Client = null;
|
||||
}
|
||||
|
||||
@@ -69,8 +69,8 @@ namespace PckStudio.Classes.Utils
|
||||
DINNERBONE = 1 << 31, // 0x80000000
|
||||
}
|
||||
|
||||
public struct SkinANIM
|
||||
{
|
||||
public class SkinANIM : ICloneable, IEquatable<SkinANIM>
|
||||
{
|
||||
private ANIM_EFFECTS _ANIM;
|
||||
public static readonly Regex animRegex = new Regex(@"^0x[0-9a-f]{1,8}\b", RegexOptions.IgnoreCase);
|
||||
|
||||
@@ -78,11 +78,6 @@ namespace PckStudio.Classes.Utils
|
||||
: this(ANIM_EFFECTS.NONE)
|
||||
{
|
||||
}
|
||||
|
||||
public SkinANIM(string anim)
|
||||
: this(ParseString(anim))
|
||||
{
|
||||
}
|
||||
|
||||
public SkinANIM(ANIM_EFFECTS anim)
|
||||
{
|
||||
@@ -93,10 +88,10 @@ namespace PckStudio.Classes.Utils
|
||||
|
||||
public static bool IsValidANIM(string anim) => animRegex.IsMatch(anim ?? string.Empty);
|
||||
|
||||
public static ANIM_EFFECTS ParseString(string anim)
|
||||
=> IsValidANIM(anim)
|
||||
? (ANIM_EFFECTS)Convert.ToInt32(anim.TrimEnd(' ', '\n', '\r'), 16)
|
||||
: ANIM_EFFECTS.NONE;
|
||||
public static SkinANIM FromString(string value)
|
||||
=> IsValidANIM(value)
|
||||
? new SkinANIM((ANIM_EFFECTS)Convert.ToInt32(value.TrimEnd(' ', '\n', '\r'), 16))
|
||||
: new SkinANIM();
|
||||
|
||||
public void SetANIM(ANIM_EFFECTS anim) => _ANIM = anim;
|
||||
|
||||
@@ -107,10 +102,16 @@ namespace PckStudio.Classes.Utils
|
||||
public static implicit operator SkinANIM(ANIM_EFFECTS anim) => new SkinANIM(anim);
|
||||
|
||||
public static bool operator ==(SkinANIM a, ANIM_EFFECTS b) => a._ANIM == b;
|
||||
|
||||
public static bool operator !=(SkinANIM a, ANIM_EFFECTS b) => !(a == b);
|
||||
public static bool operator ==(SkinANIM a, SkinANIM b) => a.Equals(b);
|
||||
public static bool operator !=(SkinANIM a, SkinANIM b) => !a.Equals(b);
|
||||
|
||||
public override bool Equals(object obj) => obj is SkinANIM a && a == _ANIM;
|
||||
public bool Equals(SkinANIM other)
|
||||
{
|
||||
return _ANIM == other._ANIM;
|
||||
}
|
||||
|
||||
public override bool Equals(object obj) => obj is SkinANIM a && Equals(a);
|
||||
|
||||
public override int GetHashCode() => (int)_ANIM;
|
||||
|
||||
@@ -134,5 +135,10 @@ namespace PckStudio.Classes.Utils
|
||||
{
|
||||
return (_ANIM & flag) != 0;
|
||||
}
|
||||
}
|
||||
|
||||
public object Clone()
|
||||
{
|
||||
return MemberwiseClone();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -122,7 +122,7 @@
|
||||
this.Controls.Add(this.InputTextBox);
|
||||
this.Controls.Add(this.OKButton);
|
||||
this.Controls.Add(this.TextLabel);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "AddFilePrompt";
|
||||
|
||||
@@ -6,26 +6,27 @@ namespace PckStudio
|
||||
{
|
||||
public partial class AddFilePrompt : MetroForm
|
||||
{
|
||||
/// <summary>
|
||||
/// Text entered <c>only access when DialogResult == DialogResult.OK</c>
|
||||
/// </summary>
|
||||
public string filepath => InputTextBox.Text;
|
||||
public int filetype => FileTypeComboBox.SelectedIndex;
|
||||
/// <summary>
|
||||
/// Text entered only valid when <see cref="DialogResult"/> == <see cref="DialogResult.OK"/>,
|
||||
/// otherwise <see cref="string.Empty"/>
|
||||
/// </summary>
|
||||
public string Filepath => DialogResult == DialogResult.OK ? InputTextBox.Text : string.Empty;
|
||||
public int Filetype => FileTypeComboBox.SelectedIndex;
|
||||
|
||||
public AddFilePrompt(string InitialText) : this(InitialText, -1)
|
||||
public AddFilePrompt(string initialText) : this(initialText, -1)
|
||||
{ }
|
||||
|
||||
public AddFilePrompt(string InitialText, int maxChar)
|
||||
public AddFilePrompt(string initialText, int maxChar)
|
||||
{
|
||||
InitializeComponent();
|
||||
InputTextBox.Text = InitialText;
|
||||
InputTextBox.Text = initialText;
|
||||
InputTextBox.MaxLength = maxChar < 0 ? short.MaxValue : maxChar;
|
||||
FormBorderStyle = FormBorderStyle.None;
|
||||
}
|
||||
|
||||
private void OKBtn_Click(object sender, EventArgs e)
|
||||
{
|
||||
if(FileTypeComboBox.SelectedIndex > -1) DialogResult = DialogResult.OK;
|
||||
if(FileTypeComboBox.SelectedIndex > -1)
|
||||
DialogResult = DialogResult.OK;
|
||||
}
|
||||
|
||||
private void InputTextBox_KeyDown(object sender, KeyEventArgs e)
|
||||
|
||||
@@ -23,7 +23,7 @@ namespace PckStudio.Forms.Additional_Popups.Animation
|
||||
InitializeComponent();
|
||||
ImageList tiles = new ImageList();
|
||||
tiles.ColorDepth = ColorDepth.Depth32Bit;
|
||||
tiles.Images.AddRange(AnimationUtil.tileImages);
|
||||
tiles.Images.AddRange(AnimationResources.tileImages);
|
||||
treeViewBlocks.ImageList = tiles;
|
||||
treeViewItems.ImageList = tiles;
|
||||
|
||||
@@ -31,9 +31,9 @@ namespace PckStudio.Forms.Additional_Popups.Animation
|
||||
{
|
||||
int i = 0;
|
||||
|
||||
if (AnimationUtil.tileData["blocks"] != null)
|
||||
if (AnimationResources.tileData["blocks"] != null)
|
||||
{
|
||||
foreach (JObject content in AnimationUtil.tileData["blocks"].Children())
|
||||
foreach (JObject content in AnimationResources.tileData["blocks"].Children())
|
||||
{
|
||||
foreach (JProperty prop in content.Properties())
|
||||
{
|
||||
@@ -52,9 +52,9 @@ namespace PckStudio.Forms.Additional_Popups.Animation
|
||||
}
|
||||
}
|
||||
}
|
||||
if (AnimationUtil.tileData["items"] != null)
|
||||
if (AnimationResources.tileData["items"] != null)
|
||||
{
|
||||
foreach (JObject content in AnimationUtil.tileData["items"].Children())
|
||||
foreach (JObject content in AnimationResources.tileData["items"].Children())
|
||||
{
|
||||
foreach (JProperty prop in content.Properties())
|
||||
{
|
||||
|
||||
@@ -29,138 +29,138 @@ namespace PckStudio.Forms.Additional_Popups.Animation
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.components = new System.ComponentModel.Container();
|
||||
this.SaveBtn = new System.Windows.Forms.Button();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.CancelBtn = new System.Windows.Forms.Button();
|
||||
this.FrameTimeUpDown = new System.Windows.Forms.NumericUpDown();
|
||||
this.FrameList = new System.Windows.Forms.TreeView();
|
||||
this.TextureIcons = new System.Windows.Forms.ImageList(this.components);
|
||||
((System.ComponentModel.ISupportInitialize)(this.FrameTimeUpDown)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// SaveBtn
|
||||
//
|
||||
this.SaveBtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.SaveBtn.ForeColor = System.Drawing.Color.White;
|
||||
this.SaveBtn.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.SaveBtn.Location = new System.Drawing.Point(12, 228);
|
||||
this.SaveBtn.Name = "SaveBtn";
|
||||
this.SaveBtn.Size = new System.Drawing.Size(75, 23);
|
||||
this.SaveBtn.TabIndex = 7;
|
||||
this.SaveBtn.Text = "Save";
|
||||
this.SaveBtn.UseVisualStyleBackColor = true;
|
||||
this.SaveBtn.Click += new System.EventHandler(this.SaveBtn_Click);
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.ForeColor = System.Drawing.Color.White;
|
||||
this.label1.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.label1.Location = new System.Drawing.Point(19, 204);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(62, 13);
|
||||
this.label1.TabIndex = 10;
|
||||
this.label1.Text = "Frame Time";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.ForeColor = System.Drawing.Color.White;
|
||||
this.label3.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.label3.Location = new System.Drawing.Point(14, 13);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(109, 13);
|
||||
this.label3.TabIndex = 12;
|
||||
this.label3.Text = "may/matt was here :3";
|
||||
//
|
||||
// CancelBtn
|
||||
//
|
||||
this.CancelBtn.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||
this.CancelBtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.CancelBtn.ForeColor = System.Drawing.Color.White;
|
||||
this.CancelBtn.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.CancelBtn.Location = new System.Drawing.Point(92, 228);
|
||||
this.CancelBtn.Name = "CancelBtn";
|
||||
this.CancelBtn.Size = new System.Drawing.Size(75, 23);
|
||||
this.CancelBtn.TabIndex = 13;
|
||||
this.CancelBtn.Text = "Cancel";
|
||||
this.CancelBtn.UseVisualStyleBackColor = true;
|
||||
this.CancelBtn.Click += new System.EventHandler(this.CancelBtn_Click);
|
||||
//
|
||||
// FrameTimeUpDown
|
||||
//
|
||||
this.FrameTimeUpDown.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(17)))), ((int)(((byte)(17)))), ((int)(((byte)(17)))));
|
||||
this.FrameTimeUpDown.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.FrameTimeUpDown.ForeColor = System.Drawing.SystemColors.Window;
|
||||
this.FrameTimeUpDown.Location = new System.Drawing.Point(87, 202);
|
||||
this.FrameTimeUpDown.Maximum = new decimal(new int[] {
|
||||
this.components = new System.ComponentModel.Container();
|
||||
this.SaveBtn = new System.Windows.Forms.Button();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.CancelBtn = new System.Windows.Forms.Button();
|
||||
this.FrameTimeUpDown = new System.Windows.Forms.NumericUpDown();
|
||||
this.FrameList = new System.Windows.Forms.TreeView();
|
||||
this.TextureIcons = new System.Windows.Forms.ImageList(this.components);
|
||||
((System.ComponentModel.ISupportInitialize)(this.FrameTimeUpDown)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// SaveBtn
|
||||
//
|
||||
this.SaveBtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.SaveBtn.ForeColor = System.Drawing.Color.White;
|
||||
this.SaveBtn.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.SaveBtn.Location = new System.Drawing.Point(12, 228);
|
||||
this.SaveBtn.Name = "SaveBtn";
|
||||
this.SaveBtn.Size = new System.Drawing.Size(75, 23);
|
||||
this.SaveBtn.TabIndex = 7;
|
||||
this.SaveBtn.Text = "Save";
|
||||
this.SaveBtn.UseVisualStyleBackColor = true;
|
||||
this.SaveBtn.Click += new System.EventHandler(this.SaveBtn_Click);
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.ForeColor = System.Drawing.Color.White;
|
||||
this.label1.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.label1.Location = new System.Drawing.Point(19, 204);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(62, 13);
|
||||
this.label1.TabIndex = 10;
|
||||
this.label1.Text = "Frame Time";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.ForeColor = System.Drawing.Color.White;
|
||||
this.label3.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.label3.Location = new System.Drawing.Point(14, 13);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(150, 13);
|
||||
this.label3.TabIndex = 12;
|
||||
this.label3.Text = "Select a frame and frame time:";
|
||||
//
|
||||
// CancelBtn
|
||||
//
|
||||
this.CancelBtn.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||
this.CancelBtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.CancelBtn.ForeColor = System.Drawing.Color.White;
|
||||
this.CancelBtn.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.CancelBtn.Location = new System.Drawing.Point(92, 228);
|
||||
this.CancelBtn.Name = "CancelBtn";
|
||||
this.CancelBtn.Size = new System.Drawing.Size(75, 23);
|
||||
this.CancelBtn.TabIndex = 13;
|
||||
this.CancelBtn.Text = "Cancel";
|
||||
this.CancelBtn.UseVisualStyleBackColor = true;
|
||||
this.CancelBtn.Click += new System.EventHandler(this.CancelBtn_Click);
|
||||
//
|
||||
// FrameTimeUpDown
|
||||
//
|
||||
this.FrameTimeUpDown.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(17)))), ((int)(((byte)(17)))), ((int)(((byte)(17)))));
|
||||
this.FrameTimeUpDown.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.FrameTimeUpDown.ForeColor = System.Drawing.SystemColors.Window;
|
||||
this.FrameTimeUpDown.Location = new System.Drawing.Point(87, 202);
|
||||
this.FrameTimeUpDown.Maximum = new decimal(new int[] {
|
||||
10000,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.FrameTimeUpDown.Minimum = new decimal(new int[] {
|
||||
this.FrameTimeUpDown.Minimum = new decimal(new int[] {
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.FrameTimeUpDown.Name = "FrameTimeUpDown";
|
||||
this.FrameTimeUpDown.Size = new System.Drawing.Size(73, 20);
|
||||
this.FrameTimeUpDown.TabIndex = 15;
|
||||
this.FrameTimeUpDown.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
|
||||
this.FrameTimeUpDown.Value = new decimal(new int[] {
|
||||
this.FrameTimeUpDown.Name = "FrameTimeUpDown";
|
||||
this.FrameTimeUpDown.Size = new System.Drawing.Size(73, 20);
|
||||
this.FrameTimeUpDown.TabIndex = 15;
|
||||
this.FrameTimeUpDown.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
|
||||
this.FrameTimeUpDown.Value = new decimal(new int[] {
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
//
|
||||
// FrameList
|
||||
//
|
||||
this.FrameList.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
|
||||
this.FrameList.ForeColor = System.Drawing.SystemColors.Window;
|
||||
this.FrameList.HideSelection = false;
|
||||
this.FrameList.ImageIndex = 0;
|
||||
this.FrameList.ImageList = this.TextureIcons;
|
||||
this.FrameList.Location = new System.Drawing.Point(12, 37);
|
||||
this.FrameList.Name = "FrameList";
|
||||
this.FrameList.SelectedImageIndex = 0;
|
||||
this.FrameList.ShowLines = false;
|
||||
this.FrameList.ShowRootLines = false;
|
||||
this.FrameList.Size = new System.Drawing.Size(155, 159);
|
||||
this.FrameList.TabIndex = 1;
|
||||
//
|
||||
// TextureIcons
|
||||
//
|
||||
this.TextureIcons.ColorDepth = System.Windows.Forms.ColorDepth.Depth32Bit;
|
||||
this.TextureIcons.ImageSize = new System.Drawing.Size(32, 32);
|
||||
this.TextureIcons.TransparentColor = System.Drawing.Color.Transparent;
|
||||
//
|
||||
// FrameEditor
|
||||
//
|
||||
this.AcceptButton = this.SaveBtn;
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.CancelButton = this.CancelBtn;
|
||||
this.ClientSize = new System.Drawing.Size(178, 264);
|
||||
this.ControlBox = false;
|
||||
this.Controls.Add(this.FrameList);
|
||||
this.Controls.Add(this.FrameTimeUpDown);
|
||||
this.Controls.Add(this.CancelBtn);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.SaveBtn);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "FrameEditor";
|
||||
this.Resizable = false;
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
|
||||
this.Style = MetroFramework.MetroColorStyle.Silver;
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
((System.ComponentModel.ISupportInitialize)(this.FrameTimeUpDown)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
//
|
||||
// FrameList
|
||||
//
|
||||
this.FrameList.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
|
||||
this.FrameList.ForeColor = System.Drawing.SystemColors.Window;
|
||||
this.FrameList.HideSelection = false;
|
||||
this.FrameList.ImageIndex = 0;
|
||||
this.FrameList.ImageList = this.TextureIcons;
|
||||
this.FrameList.Location = new System.Drawing.Point(12, 37);
|
||||
this.FrameList.Name = "FrameList";
|
||||
this.FrameList.SelectedImageIndex = 0;
|
||||
this.FrameList.ShowLines = false;
|
||||
this.FrameList.ShowRootLines = false;
|
||||
this.FrameList.Size = new System.Drawing.Size(155, 159);
|
||||
this.FrameList.TabIndex = 1;
|
||||
//
|
||||
// TextureIcons
|
||||
//
|
||||
this.TextureIcons.ColorDepth = System.Windows.Forms.ColorDepth.Depth32Bit;
|
||||
this.TextureIcons.ImageSize = new System.Drawing.Size(32, 32);
|
||||
this.TextureIcons.TransparentColor = System.Drawing.Color.Transparent;
|
||||
//
|
||||
// FrameEditor
|
||||
//
|
||||
this.AcceptButton = this.SaveBtn;
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.CancelButton = this.CancelBtn;
|
||||
this.ClientSize = new System.Drawing.Size(178, 264);
|
||||
this.ControlBox = false;
|
||||
this.Controls.Add(this.FrameList);
|
||||
this.Controls.Add(this.FrameTimeUpDown);
|
||||
this.Controls.Add(this.CancelBtn);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.SaveBtn);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "FrameEditor";
|
||||
this.Resizable = false;
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
|
||||
this.Style = MetroFramework.MetroColorStyle.Silver;
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
((System.ComponentModel.ISupportInitialize)(this.FrameTimeUpDown)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using MetroFramework.Forms;
|
||||
using System.Windows.Forms;
|
||||
using System.Diagnostics;
|
||||
|
||||
namespace PckStudio.Forms.Additional_Popups.Animation
|
||||
{
|
||||
@@ -13,16 +13,12 @@ namespace PckStudio.Forms.Additional_Popups.Animation
|
||||
public FrameEditor(ImageList texList)
|
||||
{
|
||||
InitializeComponent();
|
||||
label3.Text = "Select a frame and frame time:";
|
||||
FrameList.ImageList = texList;
|
||||
|
||||
int index = 0;
|
||||
foreach (Image frameTex in texList.Images)
|
||||
for (int index = 0; index < texList.Images.Count; index++)
|
||||
{
|
||||
TreeNode frame = new TreeNode($"Frame {index}", index, index);
|
||||
FrameList.Nodes.Add(frame);
|
||||
Console.WriteLine(index);
|
||||
index++;
|
||||
Debug.WriteLine(index);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -41,7 +37,8 @@ namespace PckStudio.Forms.Additional_Popups.Animation
|
||||
|
||||
private void CancelBtn_Click(object sender, EventArgs e)
|
||||
{
|
||||
Close();
|
||||
DialogResult = DialogResult.Cancel;
|
||||
Close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,108 +29,108 @@ namespace PckStudio.Forms.Additional_Popups.Animation
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.button1 = new System.Windows.Forms.Button();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.button2 = new System.Windows.Forms.Button();
|
||||
this.TimeUpDown = new System.Windows.Forms.NumericUpDown();
|
||||
((System.ComponentModel.ISupportInitialize)(this.TimeUpDown)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// button1
|
||||
//
|
||||
this.button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.button1.ForeColor = System.Drawing.Color.White;
|
||||
this.button1.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.button1.Location = new System.Drawing.Point(55, 63);
|
||||
this.button1.Name = "button1";
|
||||
this.button1.Size = new System.Drawing.Size(75, 23);
|
||||
this.button1.TabIndex = 7;
|
||||
this.button1.Text = "Save";
|
||||
this.button1.UseVisualStyleBackColor = true;
|
||||
this.button1.Click += new System.EventHandler(this.button1_Click);
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.ForeColor = System.Drawing.Color.White;
|
||||
this.label1.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.label1.Location = new System.Drawing.Point(9, 35);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(79, 13);
|
||||
this.label1.TabIndex = 10;
|
||||
this.label1.Text = "Animation Time";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.ForeColor = System.Drawing.Color.White;
|
||||
this.label3.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.label3.Location = new System.Drawing.Point(47, 13);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(174, 13);
|
||||
this.label3.TabIndex = 12;
|
||||
this.label3.Text = "Frame Time must be greater than 0.";
|
||||
//
|
||||
// button2
|
||||
//
|
||||
this.button2.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.button2.ForeColor = System.Drawing.Color.White;
|
||||
this.button2.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.button2.Location = new System.Drawing.Point(135, 63);
|
||||
this.button2.Name = "button2";
|
||||
this.button2.Size = new System.Drawing.Size(75, 23);
|
||||
this.button2.TabIndex = 13;
|
||||
this.button2.Text = "Cancel";
|
||||
this.button2.UseVisualStyleBackColor = true;
|
||||
this.button2.Click += new System.EventHandler(this.button2_Click);
|
||||
//
|
||||
// TimeUpDown
|
||||
//
|
||||
this.TimeUpDown.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(17)))), ((int)(((byte)(17)))), ((int)(((byte)(17)))));
|
||||
this.TimeUpDown.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.TimeUpDown.ForeColor = System.Drawing.SystemColors.Window;
|
||||
this.TimeUpDown.Location = new System.Drawing.Point(94, 33);
|
||||
this.TimeUpDown.Maximum = new decimal(new int[] {
|
||||
this.saveButton = new System.Windows.Forms.Button();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.cancelButton = new System.Windows.Forms.Button();
|
||||
this.TimeUpDown = new System.Windows.Forms.NumericUpDown();
|
||||
((System.ComponentModel.ISupportInitialize)(this.TimeUpDown)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// saveButton
|
||||
//
|
||||
this.saveButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.saveButton.ForeColor = System.Drawing.Color.White;
|
||||
this.saveButton.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.saveButton.Location = new System.Drawing.Point(55, 63);
|
||||
this.saveButton.Name = "saveButton";
|
||||
this.saveButton.Size = new System.Drawing.Size(75, 23);
|
||||
this.saveButton.TabIndex = 7;
|
||||
this.saveButton.Text = "Save";
|
||||
this.saveButton.UseVisualStyleBackColor = true;
|
||||
this.saveButton.Click += new System.EventHandler(this.saveButton_Click);
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.ForeColor = System.Drawing.Color.White;
|
||||
this.label1.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.label1.Location = new System.Drawing.Point(9, 35);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(79, 13);
|
||||
this.label1.TabIndex = 10;
|
||||
this.label1.Text = "Animation Time";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.ForeColor = System.Drawing.Color.White;
|
||||
this.label3.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.label3.Location = new System.Drawing.Point(47, 13);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(174, 13);
|
||||
this.label3.TabIndex = 12;
|
||||
this.label3.Text = "Frame Time must be greater than 0.";
|
||||
//
|
||||
// cancelButton
|
||||
//
|
||||
this.cancelButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.cancelButton.ForeColor = System.Drawing.Color.White;
|
||||
this.cancelButton.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.cancelButton.Location = new System.Drawing.Point(135, 63);
|
||||
this.cancelButton.Name = "cancelButton";
|
||||
this.cancelButton.Size = new System.Drawing.Size(75, 23);
|
||||
this.cancelButton.TabIndex = 13;
|
||||
this.cancelButton.Text = "Cancel";
|
||||
this.cancelButton.UseVisualStyleBackColor = true;
|
||||
this.cancelButton.Click += new System.EventHandler(this.cancelButton_Click);
|
||||
//
|
||||
// TimeUpDown
|
||||
//
|
||||
this.TimeUpDown.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(17)))), ((int)(((byte)(17)))), ((int)(((byte)(17)))));
|
||||
this.TimeUpDown.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.TimeUpDown.ForeColor = System.Drawing.SystemColors.Window;
|
||||
this.TimeUpDown.Location = new System.Drawing.Point(94, 33);
|
||||
this.TimeUpDown.Maximum = new decimal(new int[] {
|
||||
10000,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.TimeUpDown.Name = "TimeUpDown";
|
||||
this.TimeUpDown.Size = new System.Drawing.Size(162, 20);
|
||||
this.TimeUpDown.TabIndex = 15;
|
||||
this.TimeUpDown.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
|
||||
//
|
||||
// SetBulkSpeed
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(264, 94);
|
||||
this.ControlBox = false;
|
||||
this.Controls.Add(this.button2);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.button1);
|
||||
this.Controls.Add(this.TimeUpDown);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.MinimumSize = new System.Drawing.Size(266, 96);
|
||||
this.Name = "SetBulkSpeed";
|
||||
this.Resizable = false;
|
||||
this.Style = MetroFramework.MetroColorStyle.Silver;
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
((System.ComponentModel.ISupportInitialize)(this.TimeUpDown)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
this.TimeUpDown.Name = "TimeUpDown";
|
||||
this.TimeUpDown.Size = new System.Drawing.Size(162, 20);
|
||||
this.TimeUpDown.TabIndex = 15;
|
||||
this.TimeUpDown.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
|
||||
//
|
||||
// SetBulkSpeed
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(264, 94);
|
||||
this.ControlBox = false;
|
||||
this.Controls.Add(this.cancelButton);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.saveButton);
|
||||
this.Controls.Add(this.TimeUpDown);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.MinimumSize = new System.Drawing.Size(266, 96);
|
||||
this.Name = "SetBulkSpeed";
|
||||
this.Resizable = false;
|
||||
this.Style = MetroFramework.MetroColorStyle.Silver;
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
((System.ComponentModel.ISupportInitialize)(this.TimeUpDown)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
private System.Windows.Forms.Button button1;
|
||||
private System.Windows.Forms.Button saveButton;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private System.Windows.Forms.Button button2;
|
||||
private System.Windows.Forms.Button cancelButton;
|
||||
private System.Windows.Forms.NumericUpDown TimeUpDown;
|
||||
}
|
||||
}
|
||||
@@ -6,19 +6,20 @@ namespace PckStudio.Forms.Additional_Popups.Animation
|
||||
{
|
||||
public partial class SetBulkSpeed : MetroForm
|
||||
{
|
||||
public int time => (int)TimeUpDown.Value;
|
||||
public SetBulkSpeed(TreeView treeView)
|
||||
public int Ticks => (int)TimeUpDown.Value;
|
||||
|
||||
public SetBulkSpeed()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void button1_Click(object sender, EventArgs e)
|
||||
private void saveButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (time < 0) return;
|
||||
if (Ticks < 0) return;
|
||||
DialogResult = DialogResult.OK;
|
||||
}
|
||||
|
||||
private void button2_Click(object sender, EventArgs e)
|
||||
private void cancelButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
DialogResult = DialogResult.Cancel;
|
||||
}
|
||||
|
||||
@@ -116,7 +116,7 @@
|
||||
this.Controls.Add(this.InputTextBox);
|
||||
this.Controls.Add(this.OKButton);
|
||||
this.Controls.Add(this.TextLabel);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "CreateTexturePack";
|
||||
|
||||
@@ -9,19 +9,18 @@ namespace PckStudio
|
||||
/// <summary>
|
||||
/// Text entered <c>only access when DialogResult == DialogResult.OK</c>
|
||||
/// </summary>
|
||||
public string packName => InputTextBox.Text;
|
||||
public string packRes => metroComboBox1.Text;
|
||||
public string PackName => InputTextBox.Text;
|
||||
public string PackRes => metroComboBox1.Text;
|
||||
|
||||
public CreateTexturePack(string InitialText)
|
||||
public CreateTexturePack()
|
||||
{
|
||||
InitializeComponent();
|
||||
InputTextBox.Text = InitialText;
|
||||
FormBorderStyle = FormBorderStyle.None;
|
||||
}
|
||||
|
||||
private void OKBtn_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (metroComboBox1.SelectedIndex < 0) return;
|
||||
if (metroComboBox1.SelectedIndex < 0)
|
||||
return;
|
||||
DialogResult = DialogResult.OK;
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -87,7 +87,7 @@
|
||||
this.Controls.Add(this.button1);
|
||||
this.Controls.Add(this.CancelBtn);
|
||||
this.Controls.Add(this.TextLabel);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "MipMapPrompt";
|
||||
|
||||
@@ -14,7 +14,6 @@ namespace PckStudio
|
||||
public MipMapPrompt()
|
||||
{
|
||||
InitializeComponent();
|
||||
FormBorderStyle = FormBorderStyle.None;
|
||||
}
|
||||
|
||||
private void OKBtn_Click(object sender, EventArgs e)
|
||||
@@ -22,20 +21,9 @@ namespace PckStudio
|
||||
DialogResult = DialogResult.OK;
|
||||
}
|
||||
|
||||
private void InputTextBox_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
if (e.KeyCode == Keys.Enter)
|
||||
OKBtn_Click(sender, e);
|
||||
}
|
||||
|
||||
private void CancelButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
DialogResult = DialogResult.Cancel;
|
||||
}
|
||||
|
||||
private void button1_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -86,7 +86,7 @@
|
||||
this.Controls.Add(this.InputTextBox);
|
||||
this.Controls.Add(this.OKButton);
|
||||
this.Controls.Add(this.TextLabel);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "RenamePrompt";
|
||||
|
||||
@@ -19,18 +19,11 @@ namespace PckStudio
|
||||
InitializeComponent();
|
||||
InputTextBox.Text = InitialText;
|
||||
InputTextBox.MaxLength = maxChar < 0 ? short.MaxValue : maxChar;
|
||||
FormBorderStyle = FormBorderStyle.None;
|
||||
}
|
||||
|
||||
private void OKBtn_Click(object sender, EventArgs e)
|
||||
{
|
||||
DialogResult = DialogResult.OK;
|
||||
}
|
||||
|
||||
private void InputTextBox_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
if (e.KeyCode == Keys.Enter)
|
||||
OKBtn_Click(sender, e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ namespace PckStudio.Forms.Additional_Popups
|
||||
{
|
||||
public partial class TextPrompt : MetroFramework.Forms.MetroForm
|
||||
{
|
||||
public string[] TextOutput => DialogResult == DialogResult.OK ? PromptTextBox.Lines : null;
|
||||
public string[] TextOutput => DialogResult == DialogResult.OK ? PromptTextBox.Lines : Array.Empty<string>();
|
||||
public TextPrompt(string[] list = null)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
786
PCK-Studio/Forms/Editor/ANIMEditor.Designer.cs
generated
Normal file
786
PCK-Studio/Forms/Editor/ANIMEditor.Designer.cs
generated
Normal file
@@ -0,0 +1,786 @@
|
||||
namespace PckStudio.Forms.Editor
|
||||
{
|
||||
partial class ANIMEditor
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ANIMEditor));
|
||||
this.saveButton = new MetroFramework.Controls.MetroButton();
|
||||
this.effectsGroup = new System.Windows.Forms.GroupBox();
|
||||
this.rightLegOCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.headOCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.leftLegOCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.leftArmOCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.bodyOCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.rightLegCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.slimCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.headCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.leftLegCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.rightArmCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.leftArmCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.bodyCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.classicCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.rightArmOCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.effectsGroup2 = new System.Windows.Forms.GroupBox();
|
||||
this.rightLeggingCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.helmetCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.leftLeggingCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.rightArmorCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.leftArmorCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.chestplateCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
||||
this.unknownCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.crouchCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.dinnerboneCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.noArmorCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.bobbingCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.santaCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.syncLegsCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.staticArmsCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.syncArmsCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.statueCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.zombieCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.staticLegsCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.copyButton = new MetroFramework.Controls.MetroButton();
|
||||
this.importButton = new MetroFramework.Controls.MetroButton();
|
||||
this.exportButton = new MetroFramework.Controls.MetroButton();
|
||||
this.animValue = new MetroFramework.Controls.MetroLabel();
|
||||
this.uncheckAllButton = new MetroFramework.Controls.MetroButton();
|
||||
this.checkAllButton = new MetroFramework.Controls.MetroButton();
|
||||
this.toolTip = new MetroFramework.Components.MetroToolTip();
|
||||
this.resetButton = new MetroFramework.Controls.MetroButton();
|
||||
this.templateButton = new MetroFramework.Controls.MetroButton();
|
||||
this.effectsGroup.SuspendLayout();
|
||||
this.effectsGroup2.SuspendLayout();
|
||||
this.groupBox1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// saveButton
|
||||
//
|
||||
this.saveButton.Location = new System.Drawing.Point(250, 514);
|
||||
this.saveButton.Name = "saveButton";
|
||||
this.saveButton.Size = new System.Drawing.Size(126, 23);
|
||||
this.saveButton.TabIndex = 1;
|
||||
this.saveButton.Text = "Save";
|
||||
this.saveButton.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.saveButton.UseSelectable = true;
|
||||
this.saveButton.Click += new System.EventHandler(this.saveButton_Click);
|
||||
//
|
||||
// effectsGroup
|
||||
//
|
||||
this.effectsGroup.Controls.Add(this.rightLegOCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.headOCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.leftLegOCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.leftArmOCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.bodyOCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.rightLegCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.slimCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.headCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.leftLegCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.rightArmCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.leftArmCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.bodyCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.classicCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.rightArmOCheckBox);
|
||||
this.effectsGroup.ForeColor = System.Drawing.SystemColors.Window;
|
||||
this.effectsGroup.Location = new System.Drawing.Point(22, 148);
|
||||
this.effectsGroup.Name = "effectsGroup";
|
||||
this.effectsGroup.Size = new System.Drawing.Size(393, 238);
|
||||
this.effectsGroup.TabIndex = 2;
|
||||
this.effectsGroup.TabStop = false;
|
||||
this.effectsGroup.Text = "Skin Flags";
|
||||
//
|
||||
// rightLegOCheckBox
|
||||
//
|
||||
this.rightLegOCheckBox.AutoSize = true;
|
||||
this.rightLegOCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.rightLegOCheckBox.Location = new System.Drawing.Point(180, 208);
|
||||
this.rightLegOCheckBox.Name = "rightLegOCheckBox";
|
||||
this.rightLegOCheckBox.Size = new System.Drawing.Size(199, 19);
|
||||
this.rightLegOCheckBox.TabIndex = 13;
|
||||
this.rightLegOCheckBox.Text = "Remove Right Leg Layer Box";
|
||||
this.rightLegOCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.rightLegOCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.rightLegOCheckBox.UseSelectable = true;
|
||||
//
|
||||
// headOCheckBox
|
||||
//
|
||||
this.headOCheckBox.AutoSize = true;
|
||||
this.headOCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.headOCheckBox.Location = new System.Drawing.Point(180, 50);
|
||||
this.headOCheckBox.Name = "headOCheckBox";
|
||||
this.headOCheckBox.Size = new System.Drawing.Size(173, 19);
|
||||
this.headOCheckBox.TabIndex = 12;
|
||||
this.headOCheckBox.Text = "Remove Head Layer Box";
|
||||
this.headOCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.headOCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.headOCheckBox.UseSelectable = true;
|
||||
//
|
||||
// leftLegOCheckBox
|
||||
//
|
||||
this.leftLegOCheckBox.AutoSize = true;
|
||||
this.leftLegOCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.leftLegOCheckBox.Location = new System.Drawing.Point(180, 174);
|
||||
this.leftLegOCheckBox.Name = "leftLegOCheckBox";
|
||||
this.leftLegOCheckBox.Size = new System.Drawing.Size(190, 19);
|
||||
this.leftLegOCheckBox.TabIndex = 11;
|
||||
this.leftLegOCheckBox.Text = "Remove Left Leg Layer Box";
|
||||
this.leftLegOCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.leftLegOCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.leftLegOCheckBox.UseSelectable = true;
|
||||
//
|
||||
// leftArmOCheckBox
|
||||
//
|
||||
this.leftArmOCheckBox.AutoSize = true;
|
||||
this.leftArmOCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.leftArmOCheckBox.Location = new System.Drawing.Point(180, 112);
|
||||
this.leftArmOCheckBox.Name = "leftArmOCheckBox";
|
||||
this.leftArmOCheckBox.Size = new System.Drawing.Size(194, 19);
|
||||
this.leftArmOCheckBox.TabIndex = 9;
|
||||
this.leftArmOCheckBox.Text = "Remove Left Arm Layer Box";
|
||||
this.leftArmOCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.leftArmOCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.leftArmOCheckBox.UseSelectable = true;
|
||||
//
|
||||
// bodyOCheckBox
|
||||
//
|
||||
this.bodyOCheckBox.AutoSize = true;
|
||||
this.bodyOCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.bodyOCheckBox.Location = new System.Drawing.Point(180, 81);
|
||||
this.bodyOCheckBox.Name = "bodyOCheckBox";
|
||||
this.bodyOCheckBox.Size = new System.Drawing.Size(172, 19);
|
||||
this.bodyOCheckBox.TabIndex = 8;
|
||||
this.bodyOCheckBox.Text = "Remove Body Layer Box";
|
||||
this.bodyOCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.bodyOCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.bodyOCheckBox.UseSelectable = true;
|
||||
//
|
||||
// rightLegCheckBox
|
||||
//
|
||||
this.rightLegCheckBox.AutoSize = true;
|
||||
this.rightLegCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.rightLegCheckBox.Location = new System.Drawing.Point(6, 208);
|
||||
this.rightLegCheckBox.Name = "rightLegCheckBox";
|
||||
this.rightLegCheckBox.Size = new System.Drawing.Size(162, 19);
|
||||
this.rightLegCheckBox.TabIndex = 7;
|
||||
this.rightLegCheckBox.Text = "Remove Right Leg Box";
|
||||
this.rightLegCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.rightLegCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.rightLegCheckBox.UseSelectable = true;
|
||||
//
|
||||
// slimCheckBox
|
||||
//
|
||||
this.slimCheckBox.AutoSize = true;
|
||||
this.slimCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.slimCheckBox.Location = new System.Drawing.Point(180, 19);
|
||||
this.slimCheckBox.Name = "slimCheckBox";
|
||||
this.slimCheckBox.Size = new System.Drawing.Size(151, 19);
|
||||
this.slimCheckBox.TabIndex = 6;
|
||||
this.slimCheckBox.Text = "64x64 Alex/Slim Skin";
|
||||
this.slimCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.slimCheckBox, " The 1.8 style skin type with slim arms, overlays for each part, and sep" +
|
||||
"arate textures for right and left limbs. Resolution is also set to 64x64. " +
|
||||
" ");
|
||||
this.slimCheckBox.UseSelectable = true;
|
||||
//
|
||||
// headCheckBox
|
||||
//
|
||||
this.headCheckBox.AutoSize = true;
|
||||
this.headCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.headCheckBox.Location = new System.Drawing.Point(6, 50);
|
||||
this.headCheckBox.Name = "headCheckBox";
|
||||
this.headCheckBox.Size = new System.Drawing.Size(136, 19);
|
||||
this.headCheckBox.TabIndex = 5;
|
||||
this.headCheckBox.Text = "Remove Head Box";
|
||||
this.headCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.headCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.headCheckBox.UseSelectable = true;
|
||||
//
|
||||
// leftLegCheckBox
|
||||
//
|
||||
this.leftLegCheckBox.AutoSize = true;
|
||||
this.leftLegCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.leftLegCheckBox.Location = new System.Drawing.Point(6, 174);
|
||||
this.leftLegCheckBox.Name = "leftLegCheckBox";
|
||||
this.leftLegCheckBox.Size = new System.Drawing.Size(153, 19);
|
||||
this.leftLegCheckBox.TabIndex = 4;
|
||||
this.leftLegCheckBox.Text = "Remove Left Leg Box";
|
||||
this.leftLegCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.leftLegCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.leftLegCheckBox.UseSelectable = true;
|
||||
//
|
||||
// rightArmCheckBox
|
||||
//
|
||||
this.rightArmCheckBox.AutoSize = true;
|
||||
this.rightArmCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.rightArmCheckBox.Location = new System.Drawing.Point(6, 143);
|
||||
this.rightArmCheckBox.Name = "rightArmCheckBox";
|
||||
this.rightArmCheckBox.Size = new System.Drawing.Size(166, 19);
|
||||
this.rightArmCheckBox.TabIndex = 3;
|
||||
this.rightArmCheckBox.Text = "Remove Right Arm Box";
|
||||
this.rightArmCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.rightArmCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.rightArmCheckBox.UseSelectable = true;
|
||||
//
|
||||
// leftArmCheckBox
|
||||
//
|
||||
this.leftArmCheckBox.AutoSize = true;
|
||||
this.leftArmCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.leftArmCheckBox.Location = new System.Drawing.Point(6, 112);
|
||||
this.leftArmCheckBox.Name = "leftArmCheckBox";
|
||||
this.leftArmCheckBox.Size = new System.Drawing.Size(157, 19);
|
||||
this.leftArmCheckBox.TabIndex = 2;
|
||||
this.leftArmCheckBox.Text = "Remove Left Arm Box";
|
||||
this.leftArmCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.leftArmCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.leftArmCheckBox.UseSelectable = true;
|
||||
//
|
||||
// bodyCheckBox
|
||||
//
|
||||
this.bodyCheckBox.AutoSize = true;
|
||||
this.bodyCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.bodyCheckBox.Location = new System.Drawing.Point(6, 81);
|
||||
this.bodyCheckBox.Name = "bodyCheckBox";
|
||||
this.bodyCheckBox.Size = new System.Drawing.Size(135, 19);
|
||||
this.bodyCheckBox.TabIndex = 1;
|
||||
this.bodyCheckBox.Text = "Remove Body Box";
|
||||
this.bodyCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.bodyCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.bodyCheckBox.UseSelectable = true;
|
||||
//
|
||||
// classicCheckBox
|
||||
//
|
||||
this.classicCheckBox.AutoSize = true;
|
||||
this.classicCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.classicCheckBox.Location = new System.Drawing.Point(6, 19);
|
||||
this.classicCheckBox.Name = "classicCheckBox";
|
||||
this.classicCheckBox.Size = new System.Drawing.Size(136, 19);
|
||||
this.classicCheckBox.TabIndex = 0;
|
||||
this.classicCheckBox.Text = "64x64 Classic Skin";
|
||||
this.classicCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.classicCheckBox, " The 1.8 style skin type with overlays for each part and separate textur" +
|
||||
"es for right and left limbs. Resolution is also set to 64x64. ");
|
||||
this.classicCheckBox.UseSelectable = true;
|
||||
//
|
||||
// rightArmOCheckBox
|
||||
//
|
||||
this.rightArmOCheckBox.AutoSize = true;
|
||||
this.rightArmOCheckBox.BackColor = System.Drawing.Color.Transparent;
|
||||
this.rightArmOCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.rightArmOCheckBox.Location = new System.Drawing.Point(180, 143);
|
||||
this.rightArmOCheckBox.Name = "rightArmOCheckBox";
|
||||
this.rightArmOCheckBox.Size = new System.Drawing.Size(203, 19);
|
||||
this.rightArmOCheckBox.TabIndex = 10;
|
||||
this.rightArmOCheckBox.Text = "Remove Right Arm Layer Box";
|
||||
this.rightArmOCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.rightArmOCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.rightArmOCheckBox.UseSelectable = true;
|
||||
//
|
||||
// effectsGroup2
|
||||
//
|
||||
this.effectsGroup2.Controls.Add(this.rightLeggingCheckBox);
|
||||
this.effectsGroup2.Controls.Add(this.helmetCheckBox);
|
||||
this.effectsGroup2.Controls.Add(this.leftLeggingCheckBox);
|
||||
this.effectsGroup2.Controls.Add(this.rightArmorCheckBox);
|
||||
this.effectsGroup2.Controls.Add(this.leftArmorCheckBox);
|
||||
this.effectsGroup2.Controls.Add(this.chestplateCheckBox);
|
||||
this.effectsGroup2.ForeColor = System.Drawing.SystemColors.Window;
|
||||
this.effectsGroup2.Location = new System.Drawing.Point(421, 183);
|
||||
this.effectsGroup2.Name = "effectsGroup2";
|
||||
this.effectsGroup2.Size = new System.Drawing.Size(188, 203);
|
||||
this.effectsGroup2.TabIndex = 14;
|
||||
this.effectsGroup2.TabStop = false;
|
||||
this.effectsGroup2.Text = "Armor Flags";
|
||||
//
|
||||
// rightLeggingCheckBox
|
||||
//
|
||||
this.rightLeggingCheckBox.AutoSize = true;
|
||||
this.rightLeggingCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.rightLeggingCheckBox.Location = new System.Drawing.Point(6, 174);
|
||||
this.rightLeggingCheckBox.Name = "rightLeggingCheckBox";
|
||||
this.rightLeggingCheckBox.Size = new System.Drawing.Size(173, 19);
|
||||
this.rightLeggingCheckBox.TabIndex = 7;
|
||||
this.rightLeggingCheckBox.Text = "Render Right Leg Armor";
|
||||
this.rightLeggingCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.rightLeggingCheckBox, " Forcefully enables the specified armor piece.");
|
||||
this.rightLeggingCheckBox.UseSelectable = true;
|
||||
//
|
||||
// helmetCheckBox
|
||||
//
|
||||
this.helmetCheckBox.AutoSize = true;
|
||||
this.helmetCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.helmetCheckBox.Location = new System.Drawing.Point(6, 19);
|
||||
this.helmetCheckBox.Name = "helmetCheckBox";
|
||||
this.helmetCheckBox.Size = new System.Drawing.Size(147, 19);
|
||||
this.helmetCheckBox.TabIndex = 5;
|
||||
this.helmetCheckBox.Text = "Render Head Armor";
|
||||
this.helmetCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.helmetCheckBox, " Forcefully enables the specified armor piece.");
|
||||
this.helmetCheckBox.UseSelectable = true;
|
||||
//
|
||||
// leftLeggingCheckBox
|
||||
//
|
||||
this.leftLeggingCheckBox.AutoSize = true;
|
||||
this.leftLeggingCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.leftLeggingCheckBox.Location = new System.Drawing.Point(6, 143);
|
||||
this.leftLeggingCheckBox.Name = "leftLeggingCheckBox";
|
||||
this.leftLeggingCheckBox.Size = new System.Drawing.Size(164, 19);
|
||||
this.leftLeggingCheckBox.TabIndex = 4;
|
||||
this.leftLeggingCheckBox.Text = "Render Left Leg Armor";
|
||||
this.leftLeggingCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.leftLeggingCheckBox, " Forcefully enables the specified armor piece.");
|
||||
this.leftLeggingCheckBox.UseSelectable = true;
|
||||
//
|
||||
// rightArmorCheckBox
|
||||
//
|
||||
this.rightArmorCheckBox.AutoSize = true;
|
||||
this.rightArmorCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.rightArmorCheckBox.Location = new System.Drawing.Point(6, 112);
|
||||
this.rightArmorCheckBox.Name = "rightArmorCheckBox";
|
||||
this.rightArmorCheckBox.Size = new System.Drawing.Size(177, 19);
|
||||
this.rightArmorCheckBox.TabIndex = 3;
|
||||
this.rightArmorCheckBox.Text = "Render Right Arm Armor";
|
||||
this.rightArmorCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.rightArmorCheckBox, " Forcefully enables the specified armor piece.");
|
||||
this.rightArmorCheckBox.UseSelectable = true;
|
||||
//
|
||||
// leftArmorCheckBox
|
||||
//
|
||||
this.leftArmorCheckBox.AutoSize = true;
|
||||
this.leftArmorCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.leftArmorCheckBox.Location = new System.Drawing.Point(6, 81);
|
||||
this.leftArmorCheckBox.Name = "leftArmorCheckBox";
|
||||
this.leftArmorCheckBox.Size = new System.Drawing.Size(168, 19);
|
||||
this.leftArmorCheckBox.TabIndex = 2;
|
||||
this.leftArmorCheckBox.Text = "Render Left Arm Armor";
|
||||
this.leftArmorCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.leftArmorCheckBox, " Forcefully enables the specified armor piece.");
|
||||
this.leftArmorCheckBox.UseSelectable = true;
|
||||
//
|
||||
// chestplateCheckBox
|
||||
//
|
||||
this.chestplateCheckBox.AutoSize = true;
|
||||
this.chestplateCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.chestplateCheckBox.Location = new System.Drawing.Point(6, 50);
|
||||
this.chestplateCheckBox.Name = "chestplateCheckBox";
|
||||
this.chestplateCheckBox.Size = new System.Drawing.Size(146, 19);
|
||||
this.chestplateCheckBox.TabIndex = 1;
|
||||
this.chestplateCheckBox.Text = "Render Body Armor";
|
||||
this.chestplateCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.chestplateCheckBox, " Forcefully enables the specified armor piece.");
|
||||
this.chestplateCheckBox.UseSelectable = true;
|
||||
//
|
||||
// groupBox1
|
||||
//
|
||||
this.groupBox1.Controls.Add(this.unknownCheckBox);
|
||||
this.groupBox1.Controls.Add(this.crouchCheckBox);
|
||||
this.groupBox1.Controls.Add(this.dinnerboneCheckBox);
|
||||
this.groupBox1.Controls.Add(this.noArmorCheckBox);
|
||||
this.groupBox1.Controls.Add(this.bobbingCheckBox);
|
||||
this.groupBox1.Controls.Add(this.santaCheckBox);
|
||||
this.groupBox1.Controls.Add(this.syncLegsCheckBox);
|
||||
this.groupBox1.Controls.Add(this.staticArmsCheckBox);
|
||||
this.groupBox1.Controls.Add(this.syncArmsCheckBox);
|
||||
this.groupBox1.Controls.Add(this.statueCheckBox);
|
||||
this.groupBox1.Controls.Add(this.zombieCheckBox);
|
||||
this.groupBox1.Controls.Add(this.staticLegsCheckBox);
|
||||
this.groupBox1.ForeColor = System.Drawing.SystemColors.Window;
|
||||
this.groupBox1.Location = new System.Drawing.Point(22, 388);
|
||||
this.groupBox1.Name = "groupBox1";
|
||||
this.groupBox1.Size = new System.Drawing.Size(587, 115);
|
||||
this.groupBox1.TabIndex = 15;
|
||||
this.groupBox1.TabStop = false;
|
||||
this.groupBox1.Text = "Special Animations";
|
||||
//
|
||||
// unknownCheckBox
|
||||
//
|
||||
this.unknownCheckBox.AutoSize = true;
|
||||
this.unknownCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.unknownCheckBox.Location = new System.Drawing.Point(126, 81);
|
||||
this.unknownCheckBox.Name = "unknownCheckBox";
|
||||
this.unknownCheckBox.Size = new System.Drawing.Size(84, 19);
|
||||
this.unknownCheckBox.TabIndex = 13;
|
||||
this.unknownCheckBox.Text = "Unknown";
|
||||
this.unknownCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.unknownCheckBox, " If you figure out what this is. Please reach out to MNL#8935 on Discord. (: " +
|
||||
"");
|
||||
this.unknownCheckBox.UseSelectable = true;
|
||||
//
|
||||
// crouchCheckBox
|
||||
//
|
||||
this.crouchCheckBox.AutoSize = true;
|
||||
this.crouchCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.crouchCheckBox.Location = new System.Drawing.Point(126, 50);
|
||||
this.crouchCheckBox.Name = "crouchCheckBox";
|
||||
this.crouchCheckBox.Size = new System.Drawing.Size(137, 19);
|
||||
this.crouchCheckBox.TabIndex = 12;
|
||||
this.crouchCheckBox.Text = "Backwards Crouch";
|
||||
this.crouchCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.crouchCheckBox, " The crouch animation is reversed so that the arms and body lean back. Usefu" +
|
||||
"l for small skins. ");
|
||||
this.crouchCheckBox.UseSelectable = true;
|
||||
//
|
||||
// dinnerboneCheckBox
|
||||
//
|
||||
this.dinnerboneCheckBox.AutoSize = true;
|
||||
this.dinnerboneCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.dinnerboneCheckBox.Location = new System.Drawing.Point(126, 19);
|
||||
this.dinnerboneCheckBox.Name = "dinnerboneCheckBox";
|
||||
this.dinnerboneCheckBox.Size = new System.Drawing.Size(97, 19);
|
||||
this.dinnerboneCheckBox.TabIndex = 11;
|
||||
this.dinnerboneCheckBox.Text = "Dinnerbone";
|
||||
this.dinnerboneCheckBox.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.dinnerboneCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.dinnerboneCheckBox, " Flips the skin upside down like Dinnerbone\'s skin, a Minecraft developer. ");
|
||||
this.dinnerboneCheckBox.UseSelectable = true;
|
||||
//
|
||||
// noArmorCheckBox
|
||||
//
|
||||
this.noArmorCheckBox.AutoSize = true;
|
||||
this.noArmorCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.noArmorCheckBox.Location = new System.Drawing.Point(420, 81);
|
||||
this.noArmorCheckBox.Name = "noArmorCheckBox";
|
||||
this.noArmorCheckBox.Size = new System.Drawing.Size(131, 19);
|
||||
this.noArmorCheckBox.TabIndex = 10;
|
||||
this.noArmorCheckBox.Text = "Disable All Armor";
|
||||
this.noArmorCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.noArmorCheckBox, " Disables all armor desptie the armor flags. ");
|
||||
this.noArmorCheckBox.UseSelectable = true;
|
||||
//
|
||||
// bobbingCheckBox
|
||||
//
|
||||
this.bobbingCheckBox.AutoSize = true;
|
||||
this.bobbingCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.bobbingCheckBox.Location = new System.Drawing.Point(272, 50);
|
||||
this.bobbingCheckBox.Name = "bobbingCheckBox";
|
||||
this.bobbingCheckBox.Size = new System.Drawing.Size(124, 19);
|
||||
this.bobbingCheckBox.TabIndex = 9;
|
||||
this.bobbingCheckBox.Text = "Disable Bobbing";
|
||||
this.bobbingCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.bobbingCheckBox, " Disables the bobbing effect in first person.");
|
||||
this.bobbingCheckBox.UseSelectable = true;
|
||||
//
|
||||
// santaCheckBox
|
||||
//
|
||||
this.santaCheckBox.AutoSize = true;
|
||||
this.santaCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.santaCheckBox.Location = new System.Drawing.Point(420, 50);
|
||||
this.santaCheckBox.Name = "santaCheckBox";
|
||||
this.santaCheckBox.Size = new System.Drawing.Size(86, 19);
|
||||
this.santaCheckBox.TabIndex = 8;
|
||||
this.santaCheckBox.Text = "Bad Santa";
|
||||
this.santaCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.santaCheckBox, " The skin sits down after about 10 seconds of no controller input. Made for" +
|
||||
" Bad Santa in the \"Festive\" skin pack. ");
|
||||
this.santaCheckBox.UseSelectable = true;
|
||||
//
|
||||
// syncLegsCheckBox
|
||||
//
|
||||
this.syncLegsCheckBox.AutoSize = true;
|
||||
this.syncLegsCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.syncLegsCheckBox.Location = new System.Drawing.Point(272, 19);
|
||||
this.syncLegsCheckBox.Name = "syncLegsCheckBox";
|
||||
this.syncLegsCheckBox.Size = new System.Drawing.Size(136, 19);
|
||||
this.syncLegsCheckBox.TabIndex = 7;
|
||||
this.syncLegsCheckBox.Text = "Synchronous Legs";
|
||||
this.syncLegsCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.syncLegsCheckBox, " These parts will move at the same time and angle as each other. ");
|
||||
this.syncLegsCheckBox.UseSelectable = true;
|
||||
//
|
||||
// staticArmsCheckBox
|
||||
//
|
||||
this.staticArmsCheckBox.AutoSize = true;
|
||||
this.staticArmsCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.staticArmsCheckBox.Location = new System.Drawing.Point(6, 19);
|
||||
this.staticArmsCheckBox.Name = "staticArmsCheckBox";
|
||||
this.staticArmsCheckBox.Size = new System.Drawing.Size(94, 19);
|
||||
this.staticArmsCheckBox.TabIndex = 5;
|
||||
this.staticArmsCheckBox.Text = "Static Arms";
|
||||
this.staticArmsCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.staticArmsCheckBox, " These parts will not move in most animations. ");
|
||||
this.staticArmsCheckBox.UseSelectable = true;
|
||||
//
|
||||
// syncArmsCheckBox
|
||||
//
|
||||
this.syncArmsCheckBox.AutoSize = true;
|
||||
this.syncArmsCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.syncArmsCheckBox.Location = new System.Drawing.Point(420, 19);
|
||||
this.syncArmsCheckBox.Name = "syncArmsCheckBox";
|
||||
this.syncArmsCheckBox.Size = new System.Drawing.Size(140, 19);
|
||||
this.syncArmsCheckBox.TabIndex = 4;
|
||||
this.syncArmsCheckBox.Text = "Synchronous Arms";
|
||||
this.syncArmsCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.syncArmsCheckBox, " These parts will move at the same time and angle as each other. ");
|
||||
this.syncArmsCheckBox.UseSelectable = true;
|
||||
//
|
||||
// statueCheckBox
|
||||
//
|
||||
this.statueCheckBox.AutoSize = true;
|
||||
this.statueCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.statueCheckBox.Location = new System.Drawing.Point(272, 81);
|
||||
this.statueCheckBox.Name = "statueCheckBox";
|
||||
this.statueCheckBox.Size = new System.Drawing.Size(126, 19);
|
||||
this.statueCheckBox.TabIndex = 3;
|
||||
this.statueCheckBox.Text = "Statue of Liberty";
|
||||
this.statueCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.statueCheckBox, " The right arm is lifted like the Statue of Liberty. Made for Angel of Libe" +
|
||||
"rty in the \"Doctor Who Volume I\" skin pack. ");
|
||||
this.statueCheckBox.UseSelectable = true;
|
||||
//
|
||||
// zombieCheckBox
|
||||
//
|
||||
this.zombieCheckBox.AutoSize = true;
|
||||
this.zombieCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.zombieCheckBox.Location = new System.Drawing.Point(6, 81);
|
||||
this.zombieCheckBox.Name = "zombieCheckBox";
|
||||
this.zombieCheckBox.Size = new System.Drawing.Size(107, 19);
|
||||
this.zombieCheckBox.TabIndex = 2;
|
||||
this.zombieCheckBox.Text = "Zombie Arms";
|
||||
this.zombieCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.zombieCheckBox, " Both arms will stick up like a Zombie. ");
|
||||
this.zombieCheckBox.UseSelectable = true;
|
||||
//
|
||||
// staticLegsCheckBox
|
||||
//
|
||||
this.staticLegsCheckBox.AutoSize = true;
|
||||
this.staticLegsCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.staticLegsCheckBox.Location = new System.Drawing.Point(6, 50);
|
||||
this.staticLegsCheckBox.Name = "staticLegsCheckBox";
|
||||
this.staticLegsCheckBox.Size = new System.Drawing.Size(90, 19);
|
||||
this.staticLegsCheckBox.TabIndex = 1;
|
||||
this.staticLegsCheckBox.Text = "Static Legs";
|
||||
this.staticLegsCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.staticLegsCheckBox, " These parts will not move in most animations. ");
|
||||
this.staticLegsCheckBox.UseSelectable = true;
|
||||
//
|
||||
// copyButton
|
||||
//
|
||||
this.copyButton.Location = new System.Drawing.Point(425, 119);
|
||||
this.copyButton.Name = "copyButton";
|
||||
this.copyButton.Size = new System.Drawing.Size(173, 23);
|
||||
this.copyButton.TabIndex = 22;
|
||||
this.copyButton.Text = "Copy ANIM Value";
|
||||
this.copyButton.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.copyButton.UseSelectable = true;
|
||||
this.copyButton.Click += new System.EventHandler(this.copyButton_Click);
|
||||
//
|
||||
// importButton
|
||||
//
|
||||
this.importButton.Location = new System.Drawing.Point(32, 119);
|
||||
this.importButton.Name = "importButton";
|
||||
this.importButton.Size = new System.Drawing.Size(186, 23);
|
||||
this.importButton.TabIndex = 23;
|
||||
this.importButton.Text = "Import ANIM";
|
||||
this.importButton.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.importButton.UseSelectable = true;
|
||||
this.importButton.Click += new System.EventHandler(this.importButton_Click);
|
||||
//
|
||||
// exportButton
|
||||
//
|
||||
this.exportButton.Location = new System.Drawing.Point(229, 119);
|
||||
this.exportButton.Name = "exportButton";
|
||||
this.exportButton.Size = new System.Drawing.Size(186, 23);
|
||||
this.exportButton.TabIndex = 24;
|
||||
this.exportButton.Text = "Export Template Texture";
|
||||
this.exportButton.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.exportButton.UseSelectable = true;
|
||||
this.exportButton.Click += new System.EventHandler(this.exportButton_Click);
|
||||
//
|
||||
// animValue
|
||||
//
|
||||
this.animValue.AutoSize = true;
|
||||
this.animValue.FontSize = MetroFramework.MetroLabelSize.Tall;
|
||||
this.animValue.FontWeight = MetroFramework.MetroLabelWeight.Regular;
|
||||
this.animValue.Location = new System.Drawing.Point(260, 60);
|
||||
this.animValue.Name = "animValue";
|
||||
this.animValue.Size = new System.Drawing.Size(110, 25);
|
||||
this.animValue.TabIndex = 25;
|
||||
this.animValue.Text = "0x00000000";
|
||||
this.animValue.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.animValue.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
//
|
||||
// uncheckAllButton
|
||||
//
|
||||
this.uncheckAllButton.Location = new System.Drawing.Point(229, 90);
|
||||
this.uncheckAllButton.Name = "uncheckAllButton";
|
||||
this.uncheckAllButton.Size = new System.Drawing.Size(186, 23);
|
||||
this.uncheckAllButton.TabIndex = 26;
|
||||
this.uncheckAllButton.Text = "Uncheck All";
|
||||
this.uncheckAllButton.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.uncheckAllButton.UseSelectable = true;
|
||||
this.uncheckAllButton.Click += new System.EventHandler(this.uncheckAllButton_Click);
|
||||
//
|
||||
// checkAllButton
|
||||
//
|
||||
this.checkAllButton.Location = new System.Drawing.Point(32, 90);
|
||||
this.checkAllButton.Name = "checkAllButton";
|
||||
this.checkAllButton.Size = new System.Drawing.Size(186, 23);
|
||||
this.checkAllButton.TabIndex = 27;
|
||||
this.checkAllButton.Text = "Check All";
|
||||
this.checkAllButton.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.checkAllButton.UseSelectable = true;
|
||||
this.checkAllButton.Click += new System.EventHandler(this.checkAllButton_Click);
|
||||
//
|
||||
// toolTip
|
||||
//
|
||||
this.toolTip.StripAmpersands = true;
|
||||
this.toolTip.Style = MetroFramework.MetroColorStyle.Blue;
|
||||
this.toolTip.StyleManager = null;
|
||||
this.toolTip.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
//
|
||||
// resetButton
|
||||
//
|
||||
this.resetButton.Location = new System.Drawing.Point(425, 90);
|
||||
this.resetButton.Name = "resetButton";
|
||||
this.resetButton.Size = new System.Drawing.Size(173, 23);
|
||||
this.resetButton.TabIndex = 28;
|
||||
this.resetButton.Text = "Restore ANIM";
|
||||
this.resetButton.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.resetButton.UseSelectable = true;
|
||||
this.resetButton.Click += new System.EventHandler(this.resetButton_Click);
|
||||
//
|
||||
// templateButton
|
||||
//
|
||||
this.templateButton.Location = new System.Drawing.Point(425, 154);
|
||||
this.templateButton.Name = "templateButton";
|
||||
this.templateButton.Size = new System.Drawing.Size(173, 23);
|
||||
this.templateButton.TabIndex = 29;
|
||||
this.templateButton.Text = "Skin Presets";
|
||||
this.templateButton.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.templateButton.UseSelectable = true;
|
||||
this.templateButton.Click += new System.EventHandler(this.templateButton_Click);
|
||||
//
|
||||
// ANIMEditor
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(630, 554);
|
||||
this.Controls.Add(this.templateButton);
|
||||
this.Controls.Add(this.effectsGroup);
|
||||
this.Controls.Add(this.resetButton);
|
||||
this.Controls.Add(this.checkAllButton);
|
||||
this.Controls.Add(this.uncheckAllButton);
|
||||
this.Controls.Add(this.animValue);
|
||||
this.Controls.Add(this.exportButton);
|
||||
this.Controls.Add(this.importButton);
|
||||
this.Controls.Add(this.copyButton);
|
||||
this.Controls.Add(this.groupBox1);
|
||||
this.Controls.Add(this.effectsGroup2);
|
||||
this.Controls.Add(this.saveButton);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.MaximizeBox = false;
|
||||
this.MaximumSize = new System.Drawing.Size(630, 554);
|
||||
this.MinimizeBox = false;
|
||||
this.MinimumSize = new System.Drawing.Size(630, 554);
|
||||
this.Name = "ANIMEditor";
|
||||
this.Resizable = false;
|
||||
this.Style = MetroFramework.MetroColorStyle.Silver;
|
||||
this.Text = "ANIM Editor";
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.effectsGroup.ResumeLayout(false);
|
||||
this.effectsGroup.PerformLayout();
|
||||
this.effectsGroup2.ResumeLayout(false);
|
||||
this.effectsGroup2.PerformLayout();
|
||||
this.groupBox1.ResumeLayout(false);
|
||||
this.groupBox1.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
private MetroFramework.Controls.MetroButton saveButton;
|
||||
private System.Windows.Forms.GroupBox effectsGroup;
|
||||
private MetroFramework.Controls.MetroCheckBox headCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox leftLegCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox rightArmCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox leftArmCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox bodyCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox classicCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox slimCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox rightLegCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox rightLegOCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox headOCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox leftLegOCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox rightArmOCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox leftArmOCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox bodyOCheckBox;
|
||||
private System.Windows.Forms.GroupBox effectsGroup2;
|
||||
private MetroFramework.Controls.MetroCheckBox rightLeggingCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox helmetCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox leftLeggingCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox rightArmorCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox leftArmorCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox chestplateCheckBox;
|
||||
private System.Windows.Forms.GroupBox groupBox1;
|
||||
private MetroFramework.Controls.MetroCheckBox syncLegsCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox staticArmsCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox syncArmsCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox statueCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox zombieCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox staticLegsCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox bobbingCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox santaCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox noArmorCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox dinnerboneCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox crouchCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox unknownCheckBox;
|
||||
private MetroFramework.Controls.MetroButton copyButton;
|
||||
private MetroFramework.Controls.MetroButton importButton;
|
||||
private MetroFramework.Controls.MetroButton exportButton;
|
||||
private MetroFramework.Controls.MetroLabel animValue;
|
||||
private MetroFramework.Controls.MetroButton uncheckAllButton;
|
||||
private MetroFramework.Controls.MetroButton checkAllButton;
|
||||
private MetroFramework.Components.MetroToolTip toolTip;
|
||||
private MetroFramework.Controls.MetroButton resetButton;
|
||||
private MetroFramework.Controls.MetroButton templateButton;
|
||||
}
|
||||
}
|
||||
326
PCK-Studio/Forms/Editor/ANIMEditor.cs
Normal file
326
PCK-Studio/Forms/Editor/ANIMEditor.cs
Normal file
@@ -0,0 +1,326 @@
|
||||
using System;
|
||||
using System.Linq;
|
||||
using System.Drawing;
|
||||
using System.Diagnostics;
|
||||
using System.Windows.Forms;
|
||||
using System.Collections.Generic;
|
||||
|
||||
using PckStudio.Classes.Utils;
|
||||
using PckStudio.Forms.Additional_Popups;
|
||||
|
||||
namespace PckStudio.Forms.Editor
|
||||
{
|
||||
public partial class ANIMEditor : MetroFramework.Forms.MetroForm
|
||||
{
|
||||
public SkinANIM ResultAnim => ruleset.Value;
|
||||
|
||||
private readonly SkinANIM initialANIM;
|
||||
private ANIMRuleSet ruleset;
|
||||
|
||||
sealed class ANIMRuleSet
|
||||
{
|
||||
public SkinANIM Value => anim;
|
||||
public Action<SkinANIM> OnCheckboxChanged;
|
||||
|
||||
private class Bictionary<T1, T2> : Dictionary<T1, T2>
|
||||
{
|
||||
public Bictionary(int capacity)
|
||||
: base(capacity)
|
||||
{ }
|
||||
|
||||
public T1 this[T2 index]
|
||||
{
|
||||
get
|
||||
{
|
||||
if (!this.Any(x => x.Value.Equals(index)))
|
||||
throw new KeyNotFoundException();
|
||||
return this.First(x => x.Value.Equals(index)).Key;
|
||||
}
|
||||
}
|
||||
|
||||
internal void AddRange(IEnumerable<(T1, T2)> range)
|
||||
{
|
||||
foreach (var (key, value) in range)
|
||||
{
|
||||
Add(key, value);
|
||||
}
|
||||
}
|
||||
}
|
||||
private Bictionary<CheckBox, ANIM_EFFECTS> checkBoxLinkage;
|
||||
private SkinANIM anim;
|
||||
private bool ignoreCheckChanged = false;
|
||||
|
||||
public ANIMRuleSet(params (CheckBox, ANIM_EFFECTS)[] linkage)
|
||||
{
|
||||
checkBoxLinkage = new Bictionary<CheckBox, ANIM_EFFECTS>(32);
|
||||
if (linkage.Length < 32)
|
||||
Debug.WriteLine($"Not all {nameof(ANIM_EFFECTS)} are mapped to a given checkbox.");
|
||||
|
||||
checkBoxLinkage.AddRange(linkage);
|
||||
foreach (var (checkbox, _) in linkage)
|
||||
{
|
||||
checkbox.CheckedChanged += checkedChanged;
|
||||
}
|
||||
}
|
||||
|
||||
internal void SetAll(bool state)
|
||||
{
|
||||
foreach (var item in checkBoxLinkage)
|
||||
{
|
||||
IgnoreAndDo(item.Key, checkbox =>
|
||||
{
|
||||
anim.SetFlag(item.Value, state);
|
||||
checkbox.Checked = state;
|
||||
checkbox.Enabled = true;
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
internal void ApplyAnim(SkinANIM anim)
|
||||
{
|
||||
this.anim = anim;
|
||||
foreach (var item in checkBoxLinkage)
|
||||
item.Key.Enabled = true;
|
||||
foreach (var item in checkBoxLinkage)
|
||||
{
|
||||
item.Key.Checked = anim.GetFlag(item.Value);
|
||||
}
|
||||
}
|
||||
|
||||
private void checkedChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (!ignoreCheckChanged && sender is CheckBox checkBox && checkBoxLinkage.ContainsKey(checkBox))
|
||||
{
|
||||
switch (checkBoxLinkage[checkBox])
|
||||
{
|
||||
case ANIM_EFFECTS.HEAD_DISABLED:
|
||||
checkBoxLinkage[ANIM_EFFECTS.FORCE_HEAD_ARMOR].Enabled = !checkBox.Checked;
|
||||
break;
|
||||
case ANIM_EFFECTS.BODY_DISABLED:
|
||||
checkBoxLinkage[ANIM_EFFECTS.FORCE_BODY_ARMOR].Enabled = !checkBox.Checked;
|
||||
break;
|
||||
case ANIM_EFFECTS.LEFT_LEG_DISABLED:
|
||||
checkBoxLinkage[ANIM_EFFECTS.FORCE_LEFT_LEG_ARMOR].Enabled = !checkBox.Checked;
|
||||
break;
|
||||
case ANIM_EFFECTS.RIGHT_LEG_DISABLED:
|
||||
checkBoxLinkage[ANIM_EFFECTS.FORCE_RIGHT_LEG_ARMOR].Enabled = !checkBox.Checked;
|
||||
break;
|
||||
case ANIM_EFFECTS.LEFT_ARM_DISABLED:
|
||||
checkBoxLinkage[ANIM_EFFECTS.FORCE_LEFT_ARM_ARMOR].Enabled = !checkBox.Checked;
|
||||
break;
|
||||
case ANIM_EFFECTS.RIGHT_ARM_DISABLED:
|
||||
checkBoxLinkage[ANIM_EFFECTS.FORCE_RIGHT_ARM_ARMOR].Enabled = !checkBox.Checked;
|
||||
break;
|
||||
|
||||
case ANIM_EFFECTS.RESOLUTION_64x64:
|
||||
Uncheck(checkBoxLinkage[ANIM_EFFECTS.SLIM_MODEL]);
|
||||
checkBoxLinkage[ANIM_EFFECTS.SLIM_MODEL].Enabled = !checkBox.Checked;
|
||||
break;
|
||||
|
||||
case ANIM_EFFECTS.SLIM_MODEL:
|
||||
Uncheck(checkBoxLinkage[ANIM_EFFECTS.RESOLUTION_64x64]);
|
||||
checkBoxLinkage[ANIM_EFFECTS.RESOLUTION_64x64].Enabled = !checkBox.Checked;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
anim.SetFlag(checkBoxLinkage[checkBox], checkBox.Checked && checkBox.Enabled);
|
||||
OnCheckboxChanged?.Invoke(anim);
|
||||
}
|
||||
}
|
||||
|
||||
private void Uncheck(CheckBox checkBox)
|
||||
{
|
||||
checkBox.Checked = false;
|
||||
}
|
||||
|
||||
private void IgnoreAndDo(CheckBox checkBox, Action<CheckBox> action)
|
||||
{
|
||||
ignoreCheckChanged = true;
|
||||
action.Invoke(checkBox);
|
||||
ignoreCheckChanged = false;
|
||||
}
|
||||
}
|
||||
|
||||
public ANIMEditor(string ANIM)
|
||||
{
|
||||
InitializeComponent();
|
||||
if (!SkinANIM.IsValidANIM(ANIM))
|
||||
{
|
||||
DialogResult = DialogResult.Abort;
|
||||
Close();
|
||||
}
|
||||
var anim = initialANIM = SkinANIM.FromString(ANIM);
|
||||
ruleset = new ANIMRuleSet(
|
||||
(bobbingCheckBox, ANIM_EFFECTS.HEAD_BOBBING_DISABLED),
|
||||
(bodyCheckBox, ANIM_EFFECTS.BODY_DISABLED),
|
||||
(bodyOCheckBox, ANIM_EFFECTS.BODY_OVERLAY_DISABLED),
|
||||
(chestplateCheckBox, ANIM_EFFECTS.FORCE_BODY_ARMOR),
|
||||
(classicCheckBox, ANIM_EFFECTS.RESOLUTION_64x64),
|
||||
(crouchCheckBox, ANIM_EFFECTS.DO_BACKWARDS_CROUCH),
|
||||
(dinnerboneCheckBox, ANIM_EFFECTS.DINNERBONE),
|
||||
(headCheckBox, ANIM_EFFECTS.HEAD_DISABLED),
|
||||
(headOCheckBox, ANIM_EFFECTS.HEAD_OVERLAY_DISABLED),
|
||||
(helmetCheckBox, ANIM_EFFECTS.FORCE_HEAD_ARMOR),
|
||||
(leftArmCheckBox, ANIM_EFFECTS.LEFT_ARM_DISABLED),
|
||||
(leftArmOCheckBox, ANIM_EFFECTS.LEFT_ARM_OVERLAY_DISABLED),
|
||||
(leftArmorCheckBox, ANIM_EFFECTS.FORCE_LEFT_ARM_ARMOR),
|
||||
(leftLegCheckBox, ANIM_EFFECTS.LEFT_LEG_DISABLED),
|
||||
(leftLeggingCheckBox, ANIM_EFFECTS.FORCE_LEFT_LEG_ARMOR),
|
||||
(leftLegOCheckBox, ANIM_EFFECTS.LEFT_LEG_OVERLAY_DISABLED),
|
||||
(noArmorCheckBox, ANIM_EFFECTS.ALL_ARMOR_DISABLED),
|
||||
(rightArmCheckBox, ANIM_EFFECTS.RIGHT_ARM_DISABLED),
|
||||
(rightArmOCheckBox, ANIM_EFFECTS.RIGHT_ARM_OVERLAY_DISABLED),
|
||||
(rightArmorCheckBox, ANIM_EFFECTS.FORCE_RIGHT_ARM_ARMOR),
|
||||
(rightLegCheckBox, ANIM_EFFECTS.RIGHT_LEG_DISABLED),
|
||||
(rightLeggingCheckBox, ANIM_EFFECTS.FORCE_RIGHT_LEG_ARMOR),
|
||||
(rightLegOCheckBox, ANIM_EFFECTS.RIGHT_LEG_OVERLAY_DISABLED),
|
||||
(santaCheckBox, ANIM_EFFECTS.BAD_SANTA),
|
||||
(slimCheckBox, ANIM_EFFECTS.SLIM_MODEL),
|
||||
(staticArmsCheckBox, ANIM_EFFECTS.STATIC_ARMS),
|
||||
(staticLegsCheckBox, ANIM_EFFECTS.STATIC_LEGS),
|
||||
(statueCheckBox, ANIM_EFFECTS.STATUE_OF_LIBERTY),
|
||||
(syncArmsCheckBox, ANIM_EFFECTS.SYNCED_ARMS),
|
||||
(syncLegsCheckBox, ANIM_EFFECTS.SYNCED_LEGS),
|
||||
(unknownCheckBox, ANIM_EFFECTS.__BIT_4),
|
||||
(zombieCheckBox, ANIM_EFFECTS.ZOMBIE_ARMS)
|
||||
);
|
||||
ruleset.OnCheckboxChanged = setDisplayAnim;
|
||||
setDisplayAnim(anim);
|
||||
ruleset.ApplyAnim(anim);
|
||||
}
|
||||
|
||||
private void setDisplayAnim(SkinANIM anim)
|
||||
{
|
||||
animValue.Text = anim.ToString();
|
||||
}
|
||||
|
||||
private void saveButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
DialogResult = DialogResult.OK;
|
||||
Close();
|
||||
}
|
||||
|
||||
private void copyButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
Clipboard.SetText(animValue.Text);
|
||||
}
|
||||
|
||||
private void importButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
string value = string.Empty;
|
||||
while (!SkinANIM.IsValidANIM(value))
|
||||
{
|
||||
if (!string.IsNullOrWhiteSpace(value)) MessageBox.Show($"The following value \"{value}\" is not valid. Please try again.");
|
||||
RenamePrompt diag = new RenamePrompt(value);
|
||||
diag.TextLabel.Text = "ANIM";
|
||||
diag.OKButton.Text = "Ok";
|
||||
if (diag.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
value = diag.NewText;
|
||||
}
|
||||
else return;
|
||||
}
|
||||
ruleset.ApplyAnim(SkinANIM.FromString(value));
|
||||
}
|
||||
|
||||
private void uncheckAllButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
ruleset.SetAll(false);
|
||||
}
|
||||
|
||||
private void checkAllButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
ruleset.SetAll(true);
|
||||
}
|
||||
|
||||
private void exportButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
using SaveFileDialog saveFileDialog = new SaveFileDialog
|
||||
{
|
||||
FileName = animValue.Text + ".png",
|
||||
Filter = "Skin textures|*.png"
|
||||
};
|
||||
if (saveFileDialog.ShowDialog() != DialogResult.OK)
|
||||
return;
|
||||
bool isSlim = ruleset.Value.GetFlag(ANIM_EFFECTS.SLIM_MODEL);
|
||||
bool is64x64 = ruleset.Value.GetFlag(ANIM_EFFECTS.RESOLUTION_64x64);
|
||||
bool isClassic32 = !isSlim && !is64x64;
|
||||
|
||||
Image skin = isSlim ? Properties.Resources.slim_template : Properties.Resources.classic_template;
|
||||
|
||||
Size imgSize = new Size(64, isClassic32 ? 32 : 64);
|
||||
|
||||
Bitmap img = new Bitmap(imgSize.Width, imgSize.Height);
|
||||
using (Graphics graphic = Graphics.FromImage(img))
|
||||
{
|
||||
graphic.DrawImage(skin, new Rectangle(Point.Empty, imgSize), new Rectangle(Point.Empty, imgSize), GraphicsUnit.Pixel);
|
||||
if (ruleset.Value.GetFlag(ANIM_EFFECTS.HEAD_OVERLAY_DISABLED))
|
||||
graphic.FillRectangle(Brushes.Magenta, new Rectangle(32, 0, 32, 16));
|
||||
if (ruleset.Value.GetFlag(ANIM_EFFECTS.HEAD_DISABLED))
|
||||
graphic.FillRectangle(Brushes.Magenta, new Rectangle(0, 0, 32, 16));
|
||||
if (ruleset.Value.GetFlag(ANIM_EFFECTS.BODY_DISABLED))
|
||||
graphic.FillRectangle(Brushes.Magenta, new Rectangle(16, 16, 24, 16));
|
||||
if (img.Height == 64)
|
||||
{
|
||||
if (ruleset.Value.GetFlag(ANIM_EFFECTS.RIGHT_ARM_DISABLED)) graphic.FillRectangle(Brushes.Magenta, new Rectangle(40, 16, 16, 16));
|
||||
if (ruleset.Value.GetFlag(ANIM_EFFECTS.RIGHT_LEG_DISABLED)) graphic.FillRectangle(Brushes.Magenta, new Rectangle(0, 16, 16, 16));
|
||||
if (ruleset.Value.GetFlag(ANIM_EFFECTS.BODY_OVERLAY_DISABLED)) graphic.FillRectangle(Brushes.Magenta, new Rectangle(16, 32, 24, 16));
|
||||
if (ruleset.Value.GetFlag(ANIM_EFFECTS.RIGHT_ARM_OVERLAY_DISABLED)) graphic.FillRectangle(Brushes.Magenta, new Rectangle(40, 32, 16, 16));
|
||||
if (ruleset.Value.GetFlag(ANIM_EFFECTS.RIGHT_LEG_OVERLAY_DISABLED)) graphic.FillRectangle(Brushes.Magenta, new Rectangle(0, 32, 16, 16));
|
||||
if (ruleset.Value.GetFlag(ANIM_EFFECTS.LEFT_LEG_OVERLAY_DISABLED)) graphic.FillRectangle(Brushes.Magenta, new Rectangle(0, 48, 16, 16));
|
||||
if (ruleset.Value.GetFlag(ANIM_EFFECTS.LEFT_LEG_DISABLED)) graphic.FillRectangle(Brushes.Magenta, new Rectangle(16, 48, 16, 16));
|
||||
if (ruleset.Value.GetFlag(ANIM_EFFECTS.LEFT_ARM_DISABLED)) graphic.FillRectangle(Brushes.Magenta, new Rectangle(32, 48, 16, 16));
|
||||
if (ruleset.Value.GetFlag(ANIM_EFFECTS.LEFT_ARM_OVERLAY_DISABLED)) graphic.FillRectangle(Brushes.Magenta, new Rectangle(48, 48, 16, 16));
|
||||
}
|
||||
else
|
||||
{
|
||||
// Since both classic 32 arms and legs use the same texture, removing the texture would remove both limbs instead of just one.
|
||||
// So both must be disabled by the user before they're removed from the texture;
|
||||
if (ruleset.Value.GetFlag(ANIM_EFFECTS.RIGHT_ARM_DISABLED) && ruleset.Value.GetFlag(ANIM_EFFECTS.LEFT_ARM_DISABLED))
|
||||
graphic.FillRectangle(Brushes.Magenta, new Rectangle(40, 16, 16, 16));
|
||||
if (ruleset.Value.GetFlag(ANIM_EFFECTS.RIGHT_LEG_DISABLED) && ruleset.Value.GetFlag(ANIM_EFFECTS.LEFT_LEG_DISABLED))
|
||||
graphic.FillRectangle(Brushes.Magenta, new Rectangle(0, 16, 16, 16));
|
||||
}
|
||||
img.MakeTransparent(Color.Magenta);
|
||||
skin = img;
|
||||
}
|
||||
skin.Save(saveFileDialog.FileName);
|
||||
}
|
||||
|
||||
private void resetButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
ruleset.ApplyAnim((SkinANIM)initialANIM.Clone());
|
||||
}
|
||||
|
||||
static readonly Dictionary<string, ANIM_EFFECTS> Templates = new Dictionary<string, ANIM_EFFECTS>()
|
||||
{
|
||||
{ "Steve (64x32)", ANIM_EFFECTS.NONE },
|
||||
{ "Steve (64x64)", ANIM_EFFECTS.RESOLUTION_64x64 },
|
||||
{ "Alex (64x64)", ANIM_EFFECTS.SLIM_MODEL },
|
||||
{ "Zombie Skins", ANIM_EFFECTS.ZOMBIE_ARMS },
|
||||
{ "Cetacean Skins", ANIM_EFFECTS.SYNCED_ARMS | ANIM_EFFECTS.SYNCED_LEGS },
|
||||
{ "Ski Skins", ANIM_EFFECTS.SYNCED_ARMS | ANIM_EFFECTS.STATIC_LEGS },
|
||||
{ "Ghost Skins", ANIM_EFFECTS.STATIC_LEGS | ANIM_EFFECTS.ZOMBIE_ARMS },
|
||||
{ "Medusa (Greek Myth.)", ANIM_EFFECTS.SYNCED_LEGS },
|
||||
{ "Librarian (Halo)", ANIM_EFFECTS.STATIC_LEGS },
|
||||
{ "Grim Reaper (Halloween)", ANIM_EFFECTS.STATIC_LEGS | ANIM_EFFECTS.STATIC_ARMS }
|
||||
};
|
||||
|
||||
private void templateButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
var diag = new ItemSelectionPopUp(Templates.Keys.ToArray());
|
||||
diag.label2.Text = "Presets";
|
||||
diag.okBtn.Text = "Load";
|
||||
|
||||
if (diag.ShowDialog() != DialogResult.OK)
|
||||
return;
|
||||
|
||||
var templateANIM = new SkinANIM(Templates[diag.SelectedItem]);
|
||||
DialogResult prompt = MessageBox.Show(this, "Would you like to add this preset's effects to your current ANIM? Otherwise all of your effects will be cleared. Either choice can be undone by pressing \"Restore ANIM\".", "", MessageBoxButtons.YesNo);
|
||||
if (prompt == DialogResult.Yes)
|
||||
templateANIM = ruleset.Value | templateANIM;
|
||||
ruleset.ApplyAnim(templateANIM);
|
||||
}
|
||||
}
|
||||
}
|
||||
2630
PCK-Studio/Forms/Editor/ANIMEditor.resx
Normal file
2630
PCK-Studio/Forms/Editor/ANIMEditor.resx
Normal file
File diff suppressed because it is too large
Load Diff
@@ -14,11 +14,11 @@ namespace PckStudio.Forms.Editor
|
||||
|
||||
public int FrameCount => frames.Count;
|
||||
|
||||
public int FrameTextureCount => frameTextures.Count;
|
||||
public int TextureCount => frameTextures.Count;
|
||||
|
||||
public Frame this[int frameIndex] => frames[frameIndex];
|
||||
|
||||
// not implemented rn...
|
||||
// TODO: implement this
|
||||
public bool Interpolate { get; set; } = false;
|
||||
|
||||
private readonly List<Image> frameTextures;
|
||||
@@ -41,8 +41,6 @@ namespace PckStudio.Forms.Editor
|
||||
public readonly Image Texture;
|
||||
public int Ticks;
|
||||
|
||||
public static implicit operator Image(Frame f) => f.Texture;
|
||||
|
||||
public Frame(Image texture) : this(texture, MinimumFrameTime)
|
||||
{ }
|
||||
|
||||
@@ -53,39 +51,37 @@ namespace PckStudio.Forms.Editor
|
||||
}
|
||||
}
|
||||
|
||||
public void ParseAnim(string ANIM)
|
||||
private void ParseAnim(string ANIM)
|
||||
{
|
||||
_ = ANIM ?? throw new ArgumentNullException(nameof(ANIM));
|
||||
ANIM = (Interpolate = ANIM.StartsWith("#")) ? ANIM.Substring(1) : ANIM;
|
||||
string[] animData = ANIM.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
|
||||
int lastFrameTime = MinimumFrameTime;
|
||||
if (animData.Length <= 0)
|
||||
{
|
||||
for (int i = 0; i < FrameTextureCount; i++)
|
||||
for (int i = 0; i < TextureCount; i++)
|
||||
{
|
||||
AddFrame(i, MinimumFrameTime);
|
||||
AddFrame(i);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
foreach (string frameInfo in animData)
|
||||
{
|
||||
foreach (string frameInfo in animData)
|
||||
{
|
||||
string[] frameData = frameInfo.Split('*');
|
||||
//if (frameData.Length < 2)
|
||||
// continue; // shouldn't happen
|
||||
int currentFrameIndex = int.TryParse(frameData[0], out currentFrameIndex) ? currentFrameIndex : 0;
|
||||
string[] frameData = frameInfo.Split('*');
|
||||
//if (frameData.Length < 2)
|
||||
// continue; // shouldn't happen
|
||||
int currentFrameIndex = 0;
|
||||
int.TryParse(frameData[0], out currentFrameIndex);
|
||||
|
||||
// Some textures like the Halloween 2015's Lava texture don't have a
|
||||
// frame time parameter for certain frames.
|
||||
// This will detect that and place the last frame time in its place.
|
||||
// This is accurate to console edition behavior.
|
||||
// - MattNL
|
||||
int currentFrameTime = string.IsNullOrEmpty(frameData[1]) ? lastFrameTime : int.Parse(frameData[1]);
|
||||
AddFrame(currentFrameIndex, currentFrameTime);
|
||||
lastFrameTime = currentFrameTime;
|
||||
}
|
||||
// Some textures like the Halloween 2015's Lava texture don't have a
|
||||
// frame time parameter for certain frames.
|
||||
// This will detect that and place the last frame time in its place.
|
||||
// This is accurate to console edition behavior.
|
||||
// - MattNL
|
||||
int currentFrameTime = string.IsNullOrEmpty(frameData[1]) ? lastFrameTime : int.Parse(frameData[1]);
|
||||
AddFrame(currentFrameIndex, currentFrameTime);
|
||||
lastFrameTime = currentFrameTime;
|
||||
}
|
||||
}
|
||||
|
||||
public Frame AddFrame(int frameTextureIndex) => AddFrame(frameTextureIndex, MinimumFrameTime);
|
||||
public Frame AddFrame(int frameTextureIndex, int frameTime)
|
||||
{
|
||||
@@ -131,7 +127,7 @@ namespace PckStudio.Forms.Editor
|
||||
{
|
||||
StringBuilder stringBuilder = new StringBuilder(Interpolate ? "#" : string.Empty);
|
||||
foreach (var frame in frames)
|
||||
stringBuilder.Append($"{GetTextureIndex(frame)}*{frame.Ticks},");
|
||||
stringBuilder.Append($"{GetTextureIndex(frame.Texture)}*{frame.Ticks},");
|
||||
return stringBuilder.ToString(0, stringBuilder.Length - 1);
|
||||
}
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ namespace PckStudio.Forms.Editor
|
||||
AnimationPlayer player;
|
||||
|
||||
bool isItem = false;
|
||||
string animationSection => AnimationUtil.GetAnimationSection(isItem);
|
||||
string animationSection => AnimationResources.GetAnimationSection(isItem);
|
||||
|
||||
public string TileName = string.Empty;
|
||||
|
||||
@@ -58,7 +58,7 @@ namespace PckStudio.Forms.Editor
|
||||
: new Animation(frameTextures);
|
||||
player = new AnimationPlayer(pictureBoxWithInterpolationMode1);
|
||||
|
||||
foreach (JObject content in AnimationUtil.tileData[animationSection].Children())
|
||||
foreach (JObject content in AnimationResources.tileData[animationSection].Children())
|
||||
{
|
||||
var prop = content.Properties().FirstOrDefault(prop => prop.Name == TileName);
|
||||
if (prop is JProperty)
|
||||
@@ -264,15 +264,10 @@ namespace PckStudio.Forms.Editor
|
||||
|
||||
private void bulkAnimationSpeedToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
SetBulkSpeed diag = new SetBulkSpeed(frameTreeView);
|
||||
if(diag.ShowDialog(this) == DialogResult.OK)
|
||||
SetBulkSpeed diag = new SetBulkSpeed();
|
||||
if (diag.ShowDialog(this) == DialogResult.OK)
|
||||
{
|
||||
var list = currentAnimation.GetFrames();
|
||||
for (int i = 0; i < list.Count; i++)
|
||||
{
|
||||
Animation.Frame f = list[i];
|
||||
currentAnimation.SetFrame(f, currentAnimation.GetTextureIndex(f), diag.time);
|
||||
}
|
||||
currentAnimation.GetFrames().ForEach(frame => frame.Ticks = diag.Ticks);
|
||||
LoadAnimationTreeView();
|
||||
}
|
||||
diag.Dispose();
|
||||
@@ -337,7 +332,7 @@ namespace PckStudio.Forms.Editor
|
||||
}
|
||||
else
|
||||
{
|
||||
for (int i = 0; i < new_animation.FrameTextureCount; i++)
|
||||
for (int i = 0; i < new_animation.TextureCount; i++)
|
||||
{
|
||||
new_animation.AddFrame(i, frameTime);
|
||||
}
|
||||
@@ -369,7 +364,7 @@ namespace PckStudio.Forms.Editor
|
||||
exportJavaAnimationToolStripMenuItem.Enabled =
|
||||
InterpolationCheckbox.Visible = !IsEditingSpecial;
|
||||
|
||||
foreach (JObject content in AnimationUtil.tileData[animationSection].Children())
|
||||
foreach (JObject content in AnimationResources.tileData[animationSection].Children())
|
||||
{
|
||||
var first = content.Properties().FirstOrDefault(p => p.Name == TileName);
|
||||
if (first is JProperty p) tileLabel.Text = (string)p.Value;
|
||||
|
||||
@@ -68,7 +68,7 @@ namespace PckStudio.Forms.Editor
|
||||
{
|
||||
Monitor.Enter(_animation);
|
||||
Animation.Frame frame = _animation[frameIndex];
|
||||
display.Image = frame;
|
||||
display.Image = frame.Texture;
|
||||
Monitor.Exit(_animation);
|
||||
return frame;
|
||||
}
|
||||
|
||||
@@ -28,13 +28,13 @@ namespace PckStudio.Forms.Editor
|
||||
{
|
||||
TreeNode EntryNode = new TreeNode(entry.name);
|
||||
|
||||
foreach (JObject content in Utilities.BehaviourUtil.entityData["entities"].Children())
|
||||
foreach (JObject content in Utilities.BehaviourResources.entityData["entities"].Children())
|
||||
{
|
||||
var prop = content.Properties().FirstOrDefault(prop => prop.Name == entry.name);
|
||||
if (prop is JProperty)
|
||||
{
|
||||
EntryNode.Text = (string)prop.Value;
|
||||
EntryNode.ImageIndex = Utilities.BehaviourUtil.entityData["entities"].Children().ToList().IndexOf(content);
|
||||
EntryNode.ImageIndex = Utilities.BehaviourResources.entityData["entities"].Children().ToList().IndexOf(content);
|
||||
EntryNode.SelectedImageIndex = EntryNode.ImageIndex;
|
||||
break;
|
||||
}
|
||||
@@ -68,7 +68,7 @@ namespace PckStudio.Forms.Editor
|
||||
}
|
||||
|
||||
treeView1.ImageList = new ImageList();
|
||||
treeView1.ImageList.Images.AddRange(Utilities.BehaviourUtil.entityImages);
|
||||
treeView1.ImageList.Images.AddRange(Utilities.BehaviourResources.entityImages);
|
||||
treeView1.ImageList.ColorDepth = ColorDepth.Depth32Bit;
|
||||
SetUpTree();
|
||||
}
|
||||
@@ -149,7 +149,7 @@ namespace PckStudio.Forms.Editor
|
||||
if (treeView1.SelectedNode == null) return;
|
||||
if (!(treeView1.SelectedNode.Tag is BehaviourFile.RiderPositionOverride entry)) return;
|
||||
|
||||
var diag = new Additional_Popups.EntityForms.AddEntry(Utilities.BehaviourUtil.entityData, Utilities.BehaviourUtil.entityImages);
|
||||
var diag = new Additional_Popups.EntityForms.AddEntry(Utilities.BehaviourResources.entityData, Utilities.BehaviourResources.entityImages);
|
||||
diag.acceptBtn.Text = "Save";
|
||||
|
||||
if (diag.ShowDialog() == DialogResult.OK)
|
||||
@@ -164,13 +164,13 @@ namespace PckStudio.Forms.Editor
|
||||
entry.name = diag.SelectedEntity;
|
||||
treeView1.SelectedNode.Tag = entry;
|
||||
|
||||
foreach (JObject content in Utilities.BehaviourUtil.entityData["entities"].Children())
|
||||
foreach (JObject content in Utilities.BehaviourResources.entityData["entities"].Children())
|
||||
{
|
||||
var prop = content.Properties().FirstOrDefault(prop => prop.Name == entry.name);
|
||||
if (prop is JProperty)
|
||||
{
|
||||
treeView1.SelectedNode.Text = (string)prop.Value;
|
||||
treeView1.SelectedNode.ImageIndex = Utilities.BehaviourUtil.entityData["entities"].Children().ToList().IndexOf(content);
|
||||
treeView1.SelectedNode.ImageIndex = Utilities.BehaviourResources.entityData["entities"].Children().ToList().IndexOf(content);
|
||||
treeView1.SelectedNode.SelectedImageIndex = treeView1.SelectedNode.ImageIndex;
|
||||
break;
|
||||
}
|
||||
@@ -203,7 +203,7 @@ namespace PckStudio.Forms.Editor
|
||||
|
||||
private void addNewEntryToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
var diag = new AddEntry(Utilities.BehaviourUtil.entityData, Utilities.BehaviourUtil.entityImages);
|
||||
var diag = new AddEntry(Utilities.BehaviourResources.entityData, Utilities.BehaviourResources.entityImages);
|
||||
|
||||
if(diag.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
@@ -217,13 +217,13 @@ namespace PckStudio.Forms.Editor
|
||||
|
||||
TreeNode NewOverrideNode = new TreeNode(NewOverride.name);
|
||||
NewOverrideNode.Tag = NewOverride;
|
||||
foreach (JObject content in Utilities.BehaviourUtil.entityData["entities"].Children())
|
||||
foreach (JObject content in Utilities.BehaviourResources.entityData["entities"].Children())
|
||||
{
|
||||
var prop = content.Properties().FirstOrDefault(prop => prop.Name == NewOverride.name);
|
||||
if (prop is JProperty)
|
||||
{
|
||||
NewOverrideNode.Text = (string)prop.Value;
|
||||
NewOverrideNode.ImageIndex = Utilities.BehaviourUtil.entityData["entities"].Children().ToList().IndexOf(content);
|
||||
NewOverrideNode.ImageIndex = Utilities.BehaviourResources.entityData["entities"].Children().ToList().IndexOf(content);
|
||||
NewOverrideNode.SelectedImageIndex = NewOverrideNode.ImageIndex;
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace PckStudio.Forms.Utilities.Skins
|
||||
namespace PckStudio.Forms.Editor
|
||||
{
|
||||
partial class BoxEditor
|
||||
{
|
||||
@@ -1,8 +1,9 @@
|
||||
using System;
|
||||
using System.Numerics;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace PckStudio.Forms.Utilities.Skins
|
||||
namespace PckStudio.Forms.Editor
|
||||
{
|
||||
public partial class BoxEditor : MetroFramework.Forms.MetroForm
|
||||
{
|
||||
@@ -11,13 +12,12 @@ namespace PckStudio.Forms.Utilities.Skins
|
||||
class BOX
|
||||
{
|
||||
public string Parent;
|
||||
public (float X, float Y, float Z) Pos;
|
||||
public (float X, float Y, float Z) Size;
|
||||
public float uvX, uvY;
|
||||
public Vector3 Pos;
|
||||
public Vector3 Size;
|
||||
public float U, V;
|
||||
public bool HideWithArmor;
|
||||
public bool Mirror;
|
||||
public float Inflation;
|
||||
|
||||
public BOX(string input)
|
||||
{
|
||||
string[] arguments = Regex.Split(input, @"\s+");
|
||||
@@ -25,16 +25,12 @@ namespace PckStudio.Forms.Utilities.Skins
|
||||
try
|
||||
{
|
||||
Parent = arguments[0].ToUpper(); // just in case a box has all lower, the editor still parses correctly
|
||||
Pos.X = float.Parse(arguments[1]);
|
||||
Pos.Y = float.Parse(arguments[2]);
|
||||
Pos.Z = float.Parse(arguments[3]);
|
||||
Size.X = float.Parse(arguments[4]);
|
||||
Size.Y = float.Parse(arguments[5]);
|
||||
Size.Z = float.Parse(arguments[6]);
|
||||
uvX = float.Parse(arguments[7]);
|
||||
uvY = float.Parse(arguments[8]);
|
||||
HideWithArmor = Convert.ToBoolean(Int32.Parse(arguments[9]));
|
||||
Mirror = Convert.ToBoolean(Int32.Parse(arguments[10]));
|
||||
Pos = new Vector3(float.Parse(arguments[1]), float.Parse(arguments[2]), float.Parse(arguments[3]));
|
||||
Size = new Vector3(float.Parse(arguments[4]), float.Parse(arguments[5]), float.Parse(arguments[6]));
|
||||
U = float.Parse(arguments[7]);
|
||||
V = float.Parse(arguments[8]);
|
||||
HideWithArmor = Convert.ToBoolean(int.Parse(arguments[9]));
|
||||
Mirror = Convert.ToBoolean(int.Parse(arguments[10]));
|
||||
Inflation = float.Parse(arguments[11]);
|
||||
}
|
||||
catch (IndexOutOfRangeException)
|
||||
@@ -70,8 +66,8 @@ namespace PckStudio.Forms.Utilities.Skins
|
||||
SizeXUpDown.Value = (decimal)box.Size.X;
|
||||
SizeYUpDown.Value = (decimal)box.Size.Y;
|
||||
SizeZUpDown.Value = (decimal)box.Size.Z;
|
||||
uvXUpDown.Value = (decimal)box.uvX;
|
||||
uvYUpDown.Value = (decimal)box.uvY;
|
||||
uvXUpDown.Value = (decimal)box.U;
|
||||
uvYUpDown.Value = (decimal)box.V;
|
||||
armorCheckBox.Checked = box.HideWithArmor;
|
||||
mirrorCheckBox.Checked = box.Mirror;
|
||||
inflationUpDown.Value = (decimal)box.Inflation;
|
||||
4
PCK-Studio/Forms/Editor/LOCEditor.Designer.cs
generated
4
PCK-Studio/Forms/Editor/LOCEditor.Designer.cs
generated
@@ -40,7 +40,7 @@
|
||||
this.menuStrip = new System.Windows.Forms.MenuStrip();
|
||||
this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.saveToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.locSort = new PckStudio.Forms.MyTablePanel();
|
||||
this.locSort = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.buttonReplaceAll = new System.Windows.Forms.Button();
|
||||
this.dataGridViewLocEntryData = new System.Windows.Forms.DataGridView();
|
||||
this.textBoxReplaceAll = new System.Windows.Forms.TextBox();
|
||||
@@ -202,7 +202,7 @@
|
||||
private System.Windows.Forms.ToolStripMenuItem addDisplayIDToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem deleteDisplayIDToolStripMenuItem;
|
||||
private System.Windows.Forms.TextBox textBoxReplaceAll;
|
||||
private PckStudio.Forms.MyTablePanel locSort;
|
||||
private System.Windows.Forms.TableLayoutPanel locSort;
|
||||
private System.Windows.Forms.Button buttonReplaceAll;
|
||||
private MetroFramework.Controls.MetroContextMenu GridContextMenu;
|
||||
private System.Windows.Forms.ToolStripMenuItem addLanguageToolStripMenuItem;
|
||||
|
||||
@@ -143,7 +143,8 @@ namespace PckStudio.Forms.Editor
|
||||
{
|
||||
using (var ms = new MemoryStream())
|
||||
{
|
||||
LOCFileWriter.Write(ms, currentLoc);
|
||||
var writer = new LOCFileWriter(currentLoc, 2);
|
||||
writer.WriteToStream(ms);
|
||||
_file.SetData(ms.ToArray());
|
||||
}
|
||||
DialogResult = DialogResult.OK;
|
||||
|
||||
@@ -27,13 +27,13 @@ namespace PckStudio.Forms.Editor
|
||||
{
|
||||
TreeNode EntryNode = new TreeNode(entry.Name);
|
||||
|
||||
foreach (JObject content in Utilities.MaterialUtil.entityData["entities"].Children())
|
||||
foreach (JObject content in Utilities.MaterialResources.entityData["entities"].Children())
|
||||
{
|
||||
var prop = content.Properties().FirstOrDefault(prop => prop.Name == entry.Name);
|
||||
if (prop is JProperty)
|
||||
{
|
||||
EntryNode.Text = (string)prop.Value;
|
||||
EntryNode.ImageIndex = Utilities.MaterialUtil.entityData["entities"].Children().ToList().IndexOf(content);
|
||||
EntryNode.ImageIndex = Utilities.MaterialResources.entityData["entities"].Children().ToList().IndexOf(content);
|
||||
EntryNode.SelectedImageIndex = EntryNode.ImageIndex;
|
||||
break;
|
||||
}
|
||||
@@ -58,7 +58,7 @@ namespace PckStudio.Forms.Editor
|
||||
}
|
||||
|
||||
treeView1.ImageList = new ImageList();
|
||||
Utilities.MaterialUtil.entityImages.ToList().ForEach(img => treeView1.ImageList.Images.Add(img));
|
||||
Utilities.MaterialResources.entityImages.ToList().ForEach(img => treeView1.ImageList.Images.Add(img));
|
||||
treeView1.ImageList.ColorDepth = ColorDepth.Depth32Bit;
|
||||
SetUpTree();
|
||||
}
|
||||
@@ -132,7 +132,7 @@ namespace PckStudio.Forms.Editor
|
||||
|
||||
private void addToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
var diag = new Additional_Popups.EntityForms.AddEntry(Utilities.MaterialUtil.entityData, Utilities.MaterialUtil.entityImages);
|
||||
var diag = new Additional_Popups.EntityForms.AddEntry(Utilities.MaterialResources.entityData, Utilities.MaterialResources.entityImages);
|
||||
|
||||
if (diag.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
@@ -146,13 +146,13 @@ namespace PckStudio.Forms.Editor
|
||||
|
||||
TreeNode NewEntryNode = new TreeNode(NewEntry.Name);
|
||||
NewEntryNode.Tag = NewEntry;
|
||||
foreach (JObject content in Utilities.MaterialUtil.entityData["entities"].Children())
|
||||
foreach (JObject content in Utilities.MaterialResources.entityData["entities"].Children())
|
||||
{
|
||||
var prop = content.Properties().FirstOrDefault(prop => prop.Name == NewEntry.Name);
|
||||
if (prop is JProperty)
|
||||
{
|
||||
NewEntryNode.Text = (string)prop.Value;
|
||||
NewEntryNode.ImageIndex = Utilities.MaterialUtil.entityData["entities"].Children().ToList().IndexOf(content);
|
||||
NewEntryNode.ImageIndex = Utilities.MaterialResources.entityData["entities"].Children().ToList().IndexOf(content);
|
||||
NewEntryNode.SelectedImageIndex = NewEntryNode.ImageIndex;
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ using PckStudio.Classes.Utils;
|
||||
using PckStudio.Classes._3ds.Utils;
|
||||
using OMI.Formats.Languages;
|
||||
using OMI.Formats.Pck;
|
||||
using PckStudio.Forms.Editor;
|
||||
|
||||
namespace PckStudio
|
||||
{
|
||||
@@ -365,10 +366,10 @@ namespace PckStudio
|
||||
|
||||
private void buttonAnimGen_Click(object sender, EventArgs e)
|
||||
{
|
||||
using Forms.Utilities.Skins.ANIMEditor diag = new Forms.Utilities.Skins.ANIMEditor(anim.ToString());
|
||||
if (diag.ShowDialog(this) == DialogResult.OK && diag.saved)
|
||||
using ANIMEditor diag = new ANIMEditor(anim.ToString());
|
||||
if (diag.ShowDialog(this) == DialogResult.OK)
|
||||
{
|
||||
anim = new SkinANIM(diag.outANIM);
|
||||
anim = diag.ResultAnim;
|
||||
DrawModel();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
this.tabBody = new System.Windows.Forms.TabControl();
|
||||
this.tabArmor = new System.Windows.Forms.TabPage();
|
||||
this.tabPage1 = new System.Windows.Forms.TabPage();
|
||||
this.myTablePanel2 = new PckStudio.Forms.MyTablePanel();
|
||||
this.myTablePanel2 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.offsetArms = new System.Windows.Forms.TextBox();
|
||||
this.label14 = new System.Windows.Forms.Label();
|
||||
this.offsetBody = new System.Windows.Forms.TextBox();
|
||||
@@ -637,7 +637,7 @@
|
||||
private System.Windows.Forms.GroupBox groupBox1;
|
||||
private System.Windows.Forms.TabControl tabBody;
|
||||
private System.Windows.Forms.TabPage tabPage1;
|
||||
private Forms.MyTablePanel myTablePanel2;
|
||||
private System.Windows.Forms.TableLayoutPanel myTablePanel2;
|
||||
private System.Windows.Forms.TextBox offsetArms;
|
||||
private System.Windows.Forms.Label label14;
|
||||
private System.Windows.Forms.TextBox offsetBody;
|
||||
|
||||
@@ -10,25 +10,12 @@ using OMI.Formats.Pck;
|
||||
|
||||
namespace PckStudio.Forms.Utilities
|
||||
{
|
||||
public static class AnimationUtil
|
||||
public static class AnimationResources
|
||||
{
|
||||
public static string GetAnimationSection(bool isItem) => isItem ? "items" : "blocks";
|
||||
|
||||
public static readonly JObject tileData = JObject.Parse(Resources.tileData);
|
||||
private static Image[] _tileImages;
|
||||
|
||||
public static Image[] tileImages => _tileImages ??= Resources.terrain_sheet.CreateImageList(16).Concat(Resources.items_sheet.CreateImageList(16)).ToArray();
|
||||
|
||||
public static PckFile.FileData CreateNewAnimationFile(Image source, string tileName, bool isItem)
|
||||
{
|
||||
PckFile.FileData file = new PckFile.FileData($"res/textures/{GetAnimationSection(isItem)}/{tileName}.png", PckFile.FileData.FileType.TextureFile);
|
||||
file.Properties.Add(("ANIM", string.Empty));
|
||||
using (var stream = new MemoryStream())
|
||||
{
|
||||
source.Save(stream, ImageFormat.Png);
|
||||
file.SetData(stream.ToArray());
|
||||
}
|
||||
return file;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -8,28 +8,23 @@ using PckStudio.Classes.Extentions;
|
||||
using OMI.Formats.Behaviour;
|
||||
using OMI.Workers.Behaviour;
|
||||
using OMI.Formats.Pck;
|
||||
using System;
|
||||
|
||||
namespace PckStudio.Forms.Utilities
|
||||
{
|
||||
public static class BehaviourUtil
|
||||
public static class BehaviourResources
|
||||
{
|
||||
public static readonly JObject entityData = JObject.Parse(Resources.entityBehaviourData);
|
||||
private static Image[] _entityImages;
|
||||
|
||||
public static Image[] entityImages => _entityImages ??= Resources.entities_sheet.CreateImageList(32).ToArray();
|
||||
|
||||
public static PckFile.FileData CreateNewBehaviourFile()
|
||||
internal static byte[] BehaviourFileInitializer()
|
||||
{
|
||||
PckFile.FileData file = new PckFile.FileData($"behaviours.bin", PckFile.FileData.FileType.BehavioursFile);
|
||||
|
||||
using (var stream = new MemoryStream())
|
||||
{
|
||||
var writer = new BehavioursWriter(new BehaviourFile());
|
||||
writer.WriteToStream(stream);
|
||||
file.SetData(stream.ToArray());
|
||||
}
|
||||
|
||||
return file;
|
||||
using var stream = new MemoryStream();
|
||||
var writer = new BehavioursWriter(new BehaviourFile());
|
||||
writer.WriteToStream(stream);
|
||||
return stream.ToArray();
|
||||
}
|
||||
}
|
||||
}
|
||||
33
PCK-Studio/Forms/Utilities/MaterialResources.cs
Normal file
33
PCK-Studio/Forms/Utilities/MaterialResources.cs
Normal file
@@ -0,0 +1,33 @@
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.IO;
|
||||
|
||||
using PckStudio.Properties;
|
||||
using PckStudio.Classes.Extentions;
|
||||
using OMI.Formats.Pck;
|
||||
using OMI.Formats.Material;
|
||||
using OMI.Workers.Material;
|
||||
using System;
|
||||
|
||||
namespace PckStudio.Forms.Utilities
|
||||
{
|
||||
public static class MaterialResources
|
||||
{
|
||||
public static readonly JObject entityData = JObject.Parse(Resources.entityMaterialData);
|
||||
private static Image[] _entityImages;
|
||||
public static Image[] entityImages => _entityImages ??= Resources.entities_sheet.CreateImageList(32).ToArray();
|
||||
|
||||
public static byte[] MaterialsFileInitializer()
|
||||
{
|
||||
using var stream = new MemoryStream();
|
||||
var matFile = new MaterialContainer
|
||||
{
|
||||
new MaterialContainer.Material("bat", "entity_alphatest")
|
||||
};
|
||||
var writer = new MaterialFileWriter(matFile);
|
||||
writer.WriteToStream(stream);
|
||||
return stream.ToArray();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,38 +0,0 @@
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.IO;
|
||||
|
||||
using PckStudio.Properties;
|
||||
using PckStudio.Classes.Extentions;
|
||||
using OMI.Formats.Pck;
|
||||
using OMI.Formats.Material;
|
||||
using OMI.Workers.Material;
|
||||
|
||||
namespace PckStudio.Forms.Utilities
|
||||
{
|
||||
public static class MaterialUtil
|
||||
{
|
||||
public static readonly JObject entityData = JObject.Parse(Resources.entityMaterialData);
|
||||
private static Image[] _entityImages;
|
||||
public static Image[] entityImages => _entityImages ??= Resources.entities_sheet.CreateImageList(32).ToArray();
|
||||
|
||||
public static PckFile.FileData CreateNewMaterialsFile()
|
||||
{
|
||||
PckFile.FileData file = new PckFile.FileData($"entityMaterials.bin", PckFile.FileData.FileType.MaterialFile);
|
||||
|
||||
using (var stream = new MemoryStream())
|
||||
{
|
||||
var matFile = new MaterialContainer
|
||||
{
|
||||
new MaterialContainer.Material("bat", "entity_alphatest")
|
||||
};
|
||||
var writer = new MaterialFileWriter(matFile);
|
||||
writer.WriteToStream(stream);
|
||||
file.SetData(stream.ToArray());
|
||||
}
|
||||
|
||||
return file;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -11,25 +11,19 @@ using OMI.Workers.Model;
|
||||
|
||||
namespace PckStudio.Forms.Utilities
|
||||
{
|
||||
public static class ModelsUtil
|
||||
public static class ModelsResources
|
||||
{
|
||||
public static readonly JObject entityData = JObject.Parse(Resources.entityModelData);
|
||||
private static Image[] _entityImages;
|
||||
|
||||
public static Image[] entityImages => _entityImages ??= Resources.entities_sheet.CreateImageList(32).ToArray();
|
||||
|
||||
public static PckFile.FileData CreateNewModelsFile()
|
||||
public static byte[] ModelsFileInitializer()
|
||||
{
|
||||
PckFile.FileData file = new PckFile.FileData($"models.bin", PckFile.FileData.FileType.ModelsFile);
|
||||
|
||||
using (var stream = new MemoryStream())
|
||||
{
|
||||
var writer = new ModelFileWriter(new ModelContainer());
|
||||
writer.WriteToStream(stream);
|
||||
file.SetData(stream.ToArray());
|
||||
}
|
||||
|
||||
return file;
|
||||
using var stream = new MemoryStream();
|
||||
var writer = new ModelFileWriter(new ModelContainer());
|
||||
writer.WriteToStream(stream);
|
||||
return stream.ToArray();
|
||||
}
|
||||
}
|
||||
}
|
||||
782
PCK-Studio/Forms/Utilities/Skins/ANIMEditor.Designer.cs
generated
782
PCK-Studio/Forms/Utilities/Skins/ANIMEditor.Designer.cs
generated
@@ -1,782 +0,0 @@
|
||||
namespace PckStudio.Forms.Utilities.Skins
|
||||
{
|
||||
partial class ANIMEditor
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.closeButton = new MetroFramework.Controls.MetroButton();
|
||||
this.effectsGroup = new System.Windows.Forms.GroupBox();
|
||||
this.rightLegOCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.headOCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.leftLegOCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.leftArmOCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.bodyOCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.rightLegCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.slimCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.headCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.leftLegCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.rightArmCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.leftArmCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.bodyCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.classicCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.rightArmOCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.effectsGroup2 = new System.Windows.Forms.GroupBox();
|
||||
this.rightLeggingCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.helmetCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.leftLeggingCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.rightArmorCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.leftArmorCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.chestplateCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
||||
this.unknownCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.crouchCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.dinnerboneCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.noArmorCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.bobbingCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.santaCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.syncLegsCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.staticArmsCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.syncArmsCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.statueCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.zombieCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.staticLegsCheckBox = new MetroFramework.Controls.MetroCheckBox();
|
||||
this.copyButton = new MetroFramework.Controls.MetroButton();
|
||||
this.importButton = new MetroFramework.Controls.MetroButton();
|
||||
this.exportButton = new MetroFramework.Controls.MetroButton();
|
||||
this.animValue = new MetroFramework.Controls.MetroLabel();
|
||||
this.uncheckButton = new MetroFramework.Controls.MetroButton();
|
||||
this.checkButton = new MetroFramework.Controls.MetroButton();
|
||||
this.toolTip = new MetroFramework.Components.MetroToolTip();
|
||||
this.resetButton = new MetroFramework.Controls.MetroButton();
|
||||
this.templateButton = new MetroFramework.Controls.MetroButton();
|
||||
this.effectsGroup.SuspendLayout();
|
||||
this.effectsGroup2.SuspendLayout();
|
||||
this.groupBox1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// closeButton
|
||||
//
|
||||
this.closeButton.Location = new System.Drawing.Point(250, 514);
|
||||
this.closeButton.Name = "closeButton";
|
||||
this.closeButton.Size = new System.Drawing.Size(126, 23);
|
||||
this.closeButton.TabIndex = 1;
|
||||
this.closeButton.Text = "Save";
|
||||
this.closeButton.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.closeButton.UseSelectable = true;
|
||||
this.closeButton.Click += new System.EventHandler(this.closeButton_Click);
|
||||
//
|
||||
// effectsGroup
|
||||
//
|
||||
this.effectsGroup.Controls.Add(this.rightLegOCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.headOCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.leftLegOCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.leftArmOCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.bodyOCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.rightLegCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.slimCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.headCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.leftLegCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.rightArmCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.leftArmCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.bodyCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.classicCheckBox);
|
||||
this.effectsGroup.Controls.Add(this.rightArmOCheckBox);
|
||||
this.effectsGroup.ForeColor = System.Drawing.SystemColors.Window;
|
||||
this.effectsGroup.Location = new System.Drawing.Point(22, 148);
|
||||
this.effectsGroup.Name = "effectsGroup";
|
||||
this.effectsGroup.Size = new System.Drawing.Size(393, 238);
|
||||
this.effectsGroup.TabIndex = 2;
|
||||
this.effectsGroup.TabStop = false;
|
||||
this.effectsGroup.Text = "Skin Flags";
|
||||
//
|
||||
// rightLegOCheckBox
|
||||
//
|
||||
this.rightLegOCheckBox.AutoSize = true;
|
||||
this.rightLegOCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.rightLegOCheckBox.Location = new System.Drawing.Point(180, 208);
|
||||
this.rightLegOCheckBox.Name = "rightLegOCheckBox";
|
||||
this.rightLegOCheckBox.Size = new System.Drawing.Size(199, 19);
|
||||
this.rightLegOCheckBox.TabIndex = 13;
|
||||
this.rightLegOCheckBox.Text = "Remove Right Leg Layer Box";
|
||||
this.rightLegOCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.rightLegOCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.rightLegOCheckBox.UseSelectable = true;
|
||||
//
|
||||
// headOCheckBox
|
||||
//
|
||||
this.headOCheckBox.AutoSize = true;
|
||||
this.headOCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.headOCheckBox.Location = new System.Drawing.Point(180, 50);
|
||||
this.headOCheckBox.Name = "headOCheckBox";
|
||||
this.headOCheckBox.Size = new System.Drawing.Size(173, 19);
|
||||
this.headOCheckBox.TabIndex = 12;
|
||||
this.headOCheckBox.Text = "Remove Head Layer Box";
|
||||
this.headOCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.headOCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.headOCheckBox.UseSelectable = true;
|
||||
//
|
||||
// leftLegOCheckBox
|
||||
//
|
||||
this.leftLegOCheckBox.AutoSize = true;
|
||||
this.leftLegOCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.leftLegOCheckBox.Location = new System.Drawing.Point(180, 174);
|
||||
this.leftLegOCheckBox.Name = "leftLegOCheckBox";
|
||||
this.leftLegOCheckBox.Size = new System.Drawing.Size(190, 19);
|
||||
this.leftLegOCheckBox.TabIndex = 11;
|
||||
this.leftLegOCheckBox.Text = "Remove Left Leg Layer Box";
|
||||
this.leftLegOCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.leftLegOCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.leftLegOCheckBox.UseSelectable = true;
|
||||
//
|
||||
// leftArmOCheckBox
|
||||
//
|
||||
this.leftArmOCheckBox.AutoSize = true;
|
||||
this.leftArmOCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.leftArmOCheckBox.Location = new System.Drawing.Point(180, 112);
|
||||
this.leftArmOCheckBox.Name = "leftArmOCheckBox";
|
||||
this.leftArmOCheckBox.Size = new System.Drawing.Size(194, 19);
|
||||
this.leftArmOCheckBox.TabIndex = 9;
|
||||
this.leftArmOCheckBox.Text = "Remove Left Arm Layer Box";
|
||||
this.leftArmOCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.leftArmOCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.leftArmOCheckBox.UseSelectable = true;
|
||||
//
|
||||
// bodyOCheckBox
|
||||
//
|
||||
this.bodyOCheckBox.AutoSize = true;
|
||||
this.bodyOCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.bodyOCheckBox.Location = new System.Drawing.Point(180, 81);
|
||||
this.bodyOCheckBox.Name = "bodyOCheckBox";
|
||||
this.bodyOCheckBox.Size = new System.Drawing.Size(172, 19);
|
||||
this.bodyOCheckBox.TabIndex = 8;
|
||||
this.bodyOCheckBox.Text = "Remove Body Layer Box";
|
||||
this.bodyOCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.bodyOCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.bodyOCheckBox.UseSelectable = true;
|
||||
//
|
||||
// rightLegCheckBox
|
||||
//
|
||||
this.rightLegCheckBox.AutoSize = true;
|
||||
this.rightLegCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.rightLegCheckBox.Location = new System.Drawing.Point(6, 208);
|
||||
this.rightLegCheckBox.Name = "rightLegCheckBox";
|
||||
this.rightLegCheckBox.Size = new System.Drawing.Size(162, 19);
|
||||
this.rightLegCheckBox.TabIndex = 7;
|
||||
this.rightLegCheckBox.Text = "Remove Right Leg Box";
|
||||
this.rightLegCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.rightLegCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.rightLegCheckBox.UseSelectable = true;
|
||||
//
|
||||
// slimCheckBox
|
||||
//
|
||||
this.slimCheckBox.AutoSize = true;
|
||||
this.slimCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.slimCheckBox.Location = new System.Drawing.Point(180, 19);
|
||||
this.slimCheckBox.Name = "slimCheckBox";
|
||||
this.slimCheckBox.Size = new System.Drawing.Size(151, 19);
|
||||
this.slimCheckBox.TabIndex = 6;
|
||||
this.slimCheckBox.Text = "64x64 Alex/Slim Skin";
|
||||
this.slimCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.slimCheckBox, " The 1.8 style skin type with slim arms, overlays for each part, and sep" +
|
||||
"arate textures for right and left limbs. Resolution is also set to 64x64. " +
|
||||
" ");
|
||||
this.slimCheckBox.UseSelectable = true;
|
||||
//
|
||||
// headCheckBox
|
||||
//
|
||||
this.headCheckBox.AutoSize = true;
|
||||
this.headCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.headCheckBox.Location = new System.Drawing.Point(6, 50);
|
||||
this.headCheckBox.Name = "headCheckBox";
|
||||
this.headCheckBox.Size = new System.Drawing.Size(136, 19);
|
||||
this.headCheckBox.TabIndex = 5;
|
||||
this.headCheckBox.Text = "Remove Head Box";
|
||||
this.headCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.headCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.headCheckBox.UseSelectable = true;
|
||||
//
|
||||
// leftLegCheckBox
|
||||
//
|
||||
this.leftLegCheckBox.AutoSize = true;
|
||||
this.leftLegCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.leftLegCheckBox.Location = new System.Drawing.Point(6, 174);
|
||||
this.leftLegCheckBox.Name = "leftLegCheckBox";
|
||||
this.leftLegCheckBox.Size = new System.Drawing.Size(153, 19);
|
||||
this.leftLegCheckBox.TabIndex = 4;
|
||||
this.leftLegCheckBox.Text = "Remove Left Leg Box";
|
||||
this.leftLegCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.leftLegCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.leftLegCheckBox.UseSelectable = true;
|
||||
//
|
||||
// rightArmCheckBox
|
||||
//
|
||||
this.rightArmCheckBox.AutoSize = true;
|
||||
this.rightArmCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.rightArmCheckBox.Location = new System.Drawing.Point(6, 143);
|
||||
this.rightArmCheckBox.Name = "rightArmCheckBox";
|
||||
this.rightArmCheckBox.Size = new System.Drawing.Size(166, 19);
|
||||
this.rightArmCheckBox.TabIndex = 3;
|
||||
this.rightArmCheckBox.Text = "Remove Right Arm Box";
|
||||
this.rightArmCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.rightArmCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.rightArmCheckBox.UseSelectable = true;
|
||||
//
|
||||
// leftArmCheckBox
|
||||
//
|
||||
this.leftArmCheckBox.AutoSize = true;
|
||||
this.leftArmCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.leftArmCheckBox.Location = new System.Drawing.Point(6, 112);
|
||||
this.leftArmCheckBox.Name = "leftArmCheckBox";
|
||||
this.leftArmCheckBox.Size = new System.Drawing.Size(157, 19);
|
||||
this.leftArmCheckBox.TabIndex = 2;
|
||||
this.leftArmCheckBox.Text = "Remove Left Arm Box";
|
||||
this.leftArmCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.leftArmCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.leftArmCheckBox.UseSelectable = true;
|
||||
//
|
||||
// bodyCheckBox
|
||||
//
|
||||
this.bodyCheckBox.AutoSize = true;
|
||||
this.bodyCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.bodyCheckBox.Location = new System.Drawing.Point(6, 81);
|
||||
this.bodyCheckBox.Name = "bodyCheckBox";
|
||||
this.bodyCheckBox.Size = new System.Drawing.Size(135, 19);
|
||||
this.bodyCheckBox.TabIndex = 1;
|
||||
this.bodyCheckBox.Text = "Remove Body Box";
|
||||
this.bodyCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.bodyCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.bodyCheckBox.UseSelectable = true;
|
||||
//
|
||||
// classicCheckBox
|
||||
//
|
||||
this.classicCheckBox.AutoSize = true;
|
||||
this.classicCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.classicCheckBox.Location = new System.Drawing.Point(6, 19);
|
||||
this.classicCheckBox.Name = "classicCheckBox";
|
||||
this.classicCheckBox.Size = new System.Drawing.Size(136, 19);
|
||||
this.classicCheckBox.TabIndex = 0;
|
||||
this.classicCheckBox.Text = "64x64 Classic Skin";
|
||||
this.classicCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.classicCheckBox, " The 1.8 style skin type with overlays for each part and separate textur" +
|
||||
"es for right and left limbs. Resolution is also set to 64x64. ");
|
||||
this.classicCheckBox.UseSelectable = true;
|
||||
//
|
||||
// rightArmOCheckBox
|
||||
//
|
||||
this.rightArmOCheckBox.AutoSize = true;
|
||||
this.rightArmOCheckBox.BackColor = System.Drawing.Color.Transparent;
|
||||
this.rightArmOCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.rightArmOCheckBox.Location = new System.Drawing.Point(180, 143);
|
||||
this.rightArmOCheckBox.Name = "rightArmOCheckBox";
|
||||
this.rightArmOCheckBox.Size = new System.Drawing.Size(203, 19);
|
||||
this.rightArmOCheckBox.TabIndex = 10;
|
||||
this.rightArmOCheckBox.Text = "Remove Right Arm Layer Box";
|
||||
this.rightArmOCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.rightArmOCheckBox, " Removes the parent Box for this part. You can still make new boxes f" +
|
||||
"or this part. Armor will be disabled for this part, but can be rendered again wi" +
|
||||
"th the armor flags. ");
|
||||
this.rightArmOCheckBox.UseSelectable = true;
|
||||
//
|
||||
// effectsGroup2
|
||||
//
|
||||
this.effectsGroup2.Controls.Add(this.rightLeggingCheckBox);
|
||||
this.effectsGroup2.Controls.Add(this.helmetCheckBox);
|
||||
this.effectsGroup2.Controls.Add(this.leftLeggingCheckBox);
|
||||
this.effectsGroup2.Controls.Add(this.rightArmorCheckBox);
|
||||
this.effectsGroup2.Controls.Add(this.leftArmorCheckBox);
|
||||
this.effectsGroup2.Controls.Add(this.chestplateCheckBox);
|
||||
this.effectsGroup2.ForeColor = System.Drawing.SystemColors.Window;
|
||||
this.effectsGroup2.Location = new System.Drawing.Point(421, 183);
|
||||
this.effectsGroup2.Name = "effectsGroup2";
|
||||
this.effectsGroup2.Size = new System.Drawing.Size(188, 203);
|
||||
this.effectsGroup2.TabIndex = 14;
|
||||
this.effectsGroup2.TabStop = false;
|
||||
this.effectsGroup2.Text = "Armor Flags";
|
||||
//
|
||||
// rightLeggingCheckBox
|
||||
//
|
||||
this.rightLeggingCheckBox.AutoSize = true;
|
||||
this.rightLeggingCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.rightLeggingCheckBox.Location = new System.Drawing.Point(6, 174);
|
||||
this.rightLeggingCheckBox.Name = "rightLeggingCheckBox";
|
||||
this.rightLeggingCheckBox.Size = new System.Drawing.Size(173, 19);
|
||||
this.rightLeggingCheckBox.TabIndex = 7;
|
||||
this.rightLeggingCheckBox.Text = "Render Right Leg Armor";
|
||||
this.rightLeggingCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.rightLeggingCheckBox, " Forcefully enables the specified armor piece.");
|
||||
this.rightLeggingCheckBox.UseSelectable = true;
|
||||
//
|
||||
// helmetCheckBox
|
||||
//
|
||||
this.helmetCheckBox.AutoSize = true;
|
||||
this.helmetCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.helmetCheckBox.Location = new System.Drawing.Point(6, 19);
|
||||
this.helmetCheckBox.Name = "helmetCheckBox";
|
||||
this.helmetCheckBox.Size = new System.Drawing.Size(147, 19);
|
||||
this.helmetCheckBox.TabIndex = 5;
|
||||
this.helmetCheckBox.Text = "Render Head Armor";
|
||||
this.helmetCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.helmetCheckBox, " Forcefully enables the specified armor piece.");
|
||||
this.helmetCheckBox.UseSelectable = true;
|
||||
//
|
||||
// leftLeggingCheckBox
|
||||
//
|
||||
this.leftLeggingCheckBox.AutoSize = true;
|
||||
this.leftLeggingCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.leftLeggingCheckBox.Location = new System.Drawing.Point(6, 143);
|
||||
this.leftLeggingCheckBox.Name = "leftLeggingCheckBox";
|
||||
this.leftLeggingCheckBox.Size = new System.Drawing.Size(164, 19);
|
||||
this.leftLeggingCheckBox.TabIndex = 4;
|
||||
this.leftLeggingCheckBox.Text = "Render Left Leg Armor";
|
||||
this.leftLeggingCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.leftLeggingCheckBox, " Forcefully enables the specified armor piece.");
|
||||
this.leftLeggingCheckBox.UseSelectable = true;
|
||||
//
|
||||
// rightArmorCheckBox
|
||||
//
|
||||
this.rightArmorCheckBox.AutoSize = true;
|
||||
this.rightArmorCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.rightArmorCheckBox.Location = new System.Drawing.Point(6, 112);
|
||||
this.rightArmorCheckBox.Name = "rightArmorCheckBox";
|
||||
this.rightArmorCheckBox.Size = new System.Drawing.Size(177, 19);
|
||||
this.rightArmorCheckBox.TabIndex = 3;
|
||||
this.rightArmorCheckBox.Text = "Render Right Arm Armor";
|
||||
this.rightArmorCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.rightArmorCheckBox, " Forcefully enables the specified armor piece.");
|
||||
this.rightArmorCheckBox.UseSelectable = true;
|
||||
//
|
||||
// leftArmorCheckBox
|
||||
//
|
||||
this.leftArmorCheckBox.AutoSize = true;
|
||||
this.leftArmorCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.leftArmorCheckBox.Location = new System.Drawing.Point(6, 81);
|
||||
this.leftArmorCheckBox.Name = "leftArmorCheckBox";
|
||||
this.leftArmorCheckBox.Size = new System.Drawing.Size(168, 19);
|
||||
this.leftArmorCheckBox.TabIndex = 2;
|
||||
this.leftArmorCheckBox.Text = "Render Left Arm Armor";
|
||||
this.leftArmorCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.leftArmorCheckBox, " Forcefully enables the specified armor piece.");
|
||||
this.leftArmorCheckBox.UseSelectable = true;
|
||||
//
|
||||
// chestplateCheckBox
|
||||
//
|
||||
this.chestplateCheckBox.AutoSize = true;
|
||||
this.chestplateCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.chestplateCheckBox.Location = new System.Drawing.Point(6, 50);
|
||||
this.chestplateCheckBox.Name = "chestplateCheckBox";
|
||||
this.chestplateCheckBox.Size = new System.Drawing.Size(146, 19);
|
||||
this.chestplateCheckBox.TabIndex = 1;
|
||||
this.chestplateCheckBox.Text = "Render Body Armor";
|
||||
this.chestplateCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.chestplateCheckBox, " Forcefully enables the specified armor piece.");
|
||||
this.chestplateCheckBox.UseSelectable = true;
|
||||
//
|
||||
// groupBox1
|
||||
//
|
||||
this.groupBox1.Controls.Add(this.unknownCheckBox);
|
||||
this.groupBox1.Controls.Add(this.crouchCheckBox);
|
||||
this.groupBox1.Controls.Add(this.dinnerboneCheckBox);
|
||||
this.groupBox1.Controls.Add(this.noArmorCheckBox);
|
||||
this.groupBox1.Controls.Add(this.bobbingCheckBox);
|
||||
this.groupBox1.Controls.Add(this.santaCheckBox);
|
||||
this.groupBox1.Controls.Add(this.syncLegsCheckBox);
|
||||
this.groupBox1.Controls.Add(this.staticArmsCheckBox);
|
||||
this.groupBox1.Controls.Add(this.syncArmsCheckBox);
|
||||
this.groupBox1.Controls.Add(this.statueCheckBox);
|
||||
this.groupBox1.Controls.Add(this.zombieCheckBox);
|
||||
this.groupBox1.Controls.Add(this.staticLegsCheckBox);
|
||||
this.groupBox1.ForeColor = System.Drawing.SystemColors.Window;
|
||||
this.groupBox1.Location = new System.Drawing.Point(22, 388);
|
||||
this.groupBox1.Name = "groupBox1";
|
||||
this.groupBox1.Size = new System.Drawing.Size(587, 115);
|
||||
this.groupBox1.TabIndex = 15;
|
||||
this.groupBox1.TabStop = false;
|
||||
this.groupBox1.Text = "Special Animations";
|
||||
//
|
||||
// unknownCheckBox
|
||||
//
|
||||
this.unknownCheckBox.AutoSize = true;
|
||||
this.unknownCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.unknownCheckBox.Location = new System.Drawing.Point(126, 81);
|
||||
this.unknownCheckBox.Name = "unknownCheckBox";
|
||||
this.unknownCheckBox.Size = new System.Drawing.Size(84, 19);
|
||||
this.unknownCheckBox.TabIndex = 13;
|
||||
this.unknownCheckBox.Text = "Unknown";
|
||||
this.unknownCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.unknownCheckBox, " If you figure out what this is. Please reach out to MNL#8935 on Discord. (: " +
|
||||
"");
|
||||
this.unknownCheckBox.UseSelectable = true;
|
||||
//
|
||||
// crouchCheckBox
|
||||
//
|
||||
this.crouchCheckBox.AutoSize = true;
|
||||
this.crouchCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.crouchCheckBox.Location = new System.Drawing.Point(126, 50);
|
||||
this.crouchCheckBox.Name = "crouchCheckBox";
|
||||
this.crouchCheckBox.Size = new System.Drawing.Size(137, 19);
|
||||
this.crouchCheckBox.TabIndex = 12;
|
||||
this.crouchCheckBox.Text = "Backwards Crouch";
|
||||
this.crouchCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.crouchCheckBox, " The crouch animation is reversed so that the arms and body lean back. Usefu" +
|
||||
"l for small skins. ");
|
||||
this.crouchCheckBox.UseSelectable = true;
|
||||
//
|
||||
// dinnerboneCheckBox
|
||||
//
|
||||
this.dinnerboneCheckBox.AutoSize = true;
|
||||
this.dinnerboneCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.dinnerboneCheckBox.Location = new System.Drawing.Point(126, 19);
|
||||
this.dinnerboneCheckBox.Name = "dinnerboneCheckBox";
|
||||
this.dinnerboneCheckBox.Size = new System.Drawing.Size(97, 19);
|
||||
this.dinnerboneCheckBox.TabIndex = 11;
|
||||
this.dinnerboneCheckBox.Text = "Dinnerbone";
|
||||
this.dinnerboneCheckBox.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.dinnerboneCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.dinnerboneCheckBox, " Flips the skin upside down like Dinnerbone\'s skin, a Minecraft developer. ");
|
||||
this.dinnerboneCheckBox.UseSelectable = true;
|
||||
//
|
||||
// noArmorCheckBox
|
||||
//
|
||||
this.noArmorCheckBox.AutoSize = true;
|
||||
this.noArmorCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.noArmorCheckBox.Location = new System.Drawing.Point(420, 81);
|
||||
this.noArmorCheckBox.Name = "noArmorCheckBox";
|
||||
this.noArmorCheckBox.Size = new System.Drawing.Size(131, 19);
|
||||
this.noArmorCheckBox.TabIndex = 10;
|
||||
this.noArmorCheckBox.Text = "Disable All Armor";
|
||||
this.noArmorCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.noArmorCheckBox, " Disables all armor desptie the armor flags. ");
|
||||
this.noArmorCheckBox.UseSelectable = true;
|
||||
//
|
||||
// bobbingCheckBox
|
||||
//
|
||||
this.bobbingCheckBox.AutoSize = true;
|
||||
this.bobbingCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.bobbingCheckBox.Location = new System.Drawing.Point(272, 50);
|
||||
this.bobbingCheckBox.Name = "bobbingCheckBox";
|
||||
this.bobbingCheckBox.Size = new System.Drawing.Size(124, 19);
|
||||
this.bobbingCheckBox.TabIndex = 9;
|
||||
this.bobbingCheckBox.Text = "Disable Bobbing";
|
||||
this.bobbingCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.bobbingCheckBox, " Disables the bobbing effect in first person.");
|
||||
this.bobbingCheckBox.UseSelectable = true;
|
||||
//
|
||||
// santaCheckBox
|
||||
//
|
||||
this.santaCheckBox.AutoSize = true;
|
||||
this.santaCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.santaCheckBox.Location = new System.Drawing.Point(420, 50);
|
||||
this.santaCheckBox.Name = "santaCheckBox";
|
||||
this.santaCheckBox.Size = new System.Drawing.Size(86, 19);
|
||||
this.santaCheckBox.TabIndex = 8;
|
||||
this.santaCheckBox.Text = "Bad Santa";
|
||||
this.santaCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.santaCheckBox, " The skin sits down after about 10 seconds of no controller input. Made for" +
|
||||
" Bad Santa in the \"Festive\" skin pack. ");
|
||||
this.santaCheckBox.UseSelectable = true;
|
||||
//
|
||||
// syncLegsCheckBox
|
||||
//
|
||||
this.syncLegsCheckBox.AutoSize = true;
|
||||
this.syncLegsCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.syncLegsCheckBox.Location = new System.Drawing.Point(272, 19);
|
||||
this.syncLegsCheckBox.Name = "syncLegsCheckBox";
|
||||
this.syncLegsCheckBox.Size = new System.Drawing.Size(136, 19);
|
||||
this.syncLegsCheckBox.TabIndex = 7;
|
||||
this.syncLegsCheckBox.Text = "Synchronous Legs";
|
||||
this.syncLegsCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.syncLegsCheckBox, " These parts will move at the same time and angle as each other. ");
|
||||
this.syncLegsCheckBox.UseSelectable = true;
|
||||
//
|
||||
// staticArmsCheckBox
|
||||
//
|
||||
this.staticArmsCheckBox.AutoSize = true;
|
||||
this.staticArmsCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.staticArmsCheckBox.Location = new System.Drawing.Point(6, 19);
|
||||
this.staticArmsCheckBox.Name = "staticArmsCheckBox";
|
||||
this.staticArmsCheckBox.Size = new System.Drawing.Size(94, 19);
|
||||
this.staticArmsCheckBox.TabIndex = 5;
|
||||
this.staticArmsCheckBox.Text = "Static Arms";
|
||||
this.staticArmsCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.staticArmsCheckBox, " These parts will not move in most animations. ");
|
||||
this.staticArmsCheckBox.UseSelectable = true;
|
||||
//
|
||||
// syncArmsCheckBox
|
||||
//
|
||||
this.syncArmsCheckBox.AutoSize = true;
|
||||
this.syncArmsCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.syncArmsCheckBox.Location = new System.Drawing.Point(420, 19);
|
||||
this.syncArmsCheckBox.Name = "syncArmsCheckBox";
|
||||
this.syncArmsCheckBox.Size = new System.Drawing.Size(140, 19);
|
||||
this.syncArmsCheckBox.TabIndex = 4;
|
||||
this.syncArmsCheckBox.Text = "Synchronous Arms";
|
||||
this.syncArmsCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.syncArmsCheckBox, " These parts will move at the same time and angle as each other. ");
|
||||
this.syncArmsCheckBox.UseSelectable = true;
|
||||
//
|
||||
// statueCheckBox
|
||||
//
|
||||
this.statueCheckBox.AutoSize = true;
|
||||
this.statueCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.statueCheckBox.Location = new System.Drawing.Point(272, 81);
|
||||
this.statueCheckBox.Name = "statueCheckBox";
|
||||
this.statueCheckBox.Size = new System.Drawing.Size(126, 19);
|
||||
this.statueCheckBox.TabIndex = 3;
|
||||
this.statueCheckBox.Text = "Statue of Liberty";
|
||||
this.statueCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.statueCheckBox, " The right arm is lifted like the Statue of Liberty. Made for Angel of Libe" +
|
||||
"rty in the \"Doctor Who Volume I\" skin pack. ");
|
||||
this.statueCheckBox.UseSelectable = true;
|
||||
//
|
||||
// zombieCheckBox
|
||||
//
|
||||
this.zombieCheckBox.AutoSize = true;
|
||||
this.zombieCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.zombieCheckBox.Location = new System.Drawing.Point(6, 81);
|
||||
this.zombieCheckBox.Name = "zombieCheckBox";
|
||||
this.zombieCheckBox.Size = new System.Drawing.Size(107, 19);
|
||||
this.zombieCheckBox.TabIndex = 2;
|
||||
this.zombieCheckBox.Text = "Zombie Arms";
|
||||
this.zombieCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.zombieCheckBox, " Both arms will stick up like a Zombie. ");
|
||||
this.zombieCheckBox.UseSelectable = true;
|
||||
//
|
||||
// staticLegsCheckBox
|
||||
//
|
||||
this.staticLegsCheckBox.AutoSize = true;
|
||||
this.staticLegsCheckBox.FontSize = MetroFramework.MetroCheckBoxSize.Medium;
|
||||
this.staticLegsCheckBox.Location = new System.Drawing.Point(6, 50);
|
||||
this.staticLegsCheckBox.Name = "staticLegsCheckBox";
|
||||
this.staticLegsCheckBox.Size = new System.Drawing.Size(90, 19);
|
||||
this.staticLegsCheckBox.TabIndex = 1;
|
||||
this.staticLegsCheckBox.Text = "Static Legs";
|
||||
this.staticLegsCheckBox.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.toolTip.SetToolTip(this.staticLegsCheckBox, " These parts will not move in most animations. ");
|
||||
this.staticLegsCheckBox.UseSelectable = true;
|
||||
//
|
||||
// copyButton
|
||||
//
|
||||
this.copyButton.Location = new System.Drawing.Point(425, 119);
|
||||
this.copyButton.Name = "copyButton";
|
||||
this.copyButton.Size = new System.Drawing.Size(173, 23);
|
||||
this.copyButton.TabIndex = 22;
|
||||
this.copyButton.Text = "Copy ANIM Value";
|
||||
this.copyButton.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.copyButton.UseSelectable = true;
|
||||
this.copyButton.Click += new System.EventHandler(this.copyButton_Click);
|
||||
//
|
||||
// importButton
|
||||
//
|
||||
this.importButton.Location = new System.Drawing.Point(32, 119);
|
||||
this.importButton.Name = "importButton";
|
||||
this.importButton.Size = new System.Drawing.Size(186, 23);
|
||||
this.importButton.TabIndex = 23;
|
||||
this.importButton.Text = "Import ANIM";
|
||||
this.importButton.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.importButton.UseSelectable = true;
|
||||
this.importButton.Click += new System.EventHandler(this.importButton_Click);
|
||||
//
|
||||
// exportButton
|
||||
//
|
||||
this.exportButton.Location = new System.Drawing.Point(229, 119);
|
||||
this.exportButton.Name = "exportButton";
|
||||
this.exportButton.Size = new System.Drawing.Size(186, 23);
|
||||
this.exportButton.TabIndex = 24;
|
||||
this.exportButton.Text = "Export Template Texture";
|
||||
this.exportButton.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.exportButton.UseSelectable = true;
|
||||
this.exportButton.Click += new System.EventHandler(this.exportButton_Click);
|
||||
//
|
||||
// animValue
|
||||
//
|
||||
this.animValue.AutoSize = true;
|
||||
this.animValue.FontSize = MetroFramework.MetroLabelSize.Tall;
|
||||
this.animValue.FontWeight = MetroFramework.MetroLabelWeight.Regular;
|
||||
this.animValue.Location = new System.Drawing.Point(260, 60);
|
||||
this.animValue.Name = "animValue";
|
||||
this.animValue.Size = new System.Drawing.Size(110, 25);
|
||||
this.animValue.TabIndex = 25;
|
||||
this.animValue.Text = "0x00000000";
|
||||
this.animValue.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.animValue.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
//
|
||||
// uncheckButton
|
||||
//
|
||||
this.uncheckButton.Location = new System.Drawing.Point(229, 90);
|
||||
this.uncheckButton.Name = "uncheckButton";
|
||||
this.uncheckButton.Size = new System.Drawing.Size(186, 23);
|
||||
this.uncheckButton.TabIndex = 26;
|
||||
this.uncheckButton.Text = "Uncheck All";
|
||||
this.uncheckButton.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.uncheckButton.UseSelectable = true;
|
||||
this.uncheckButton.Click += new System.EventHandler(this.uncheckButton_Click);
|
||||
//
|
||||
// checkButton
|
||||
//
|
||||
this.checkButton.Location = new System.Drawing.Point(32, 90);
|
||||
this.checkButton.Name = "checkButton";
|
||||
this.checkButton.Size = new System.Drawing.Size(186, 23);
|
||||
this.checkButton.TabIndex = 27;
|
||||
this.checkButton.Text = "Check All";
|
||||
this.checkButton.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.checkButton.UseSelectable = true;
|
||||
this.checkButton.Click += new System.EventHandler(this.checkButton_Click);
|
||||
//
|
||||
// toolTip
|
||||
//
|
||||
this.toolTip.StripAmpersands = true;
|
||||
this.toolTip.Style = MetroFramework.MetroColorStyle.Blue;
|
||||
this.toolTip.StyleManager = null;
|
||||
this.toolTip.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
//
|
||||
// resetButton
|
||||
//
|
||||
this.resetButton.Location = new System.Drawing.Point(425, 90);
|
||||
this.resetButton.Name = "resetButton";
|
||||
this.resetButton.Size = new System.Drawing.Size(173, 23);
|
||||
this.resetButton.TabIndex = 28;
|
||||
this.resetButton.Text = "Restore ANIM";
|
||||
this.resetButton.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.resetButton.UseSelectable = true;
|
||||
this.resetButton.Click += new System.EventHandler(this.resetButton_Click);
|
||||
//
|
||||
// templateButton
|
||||
//
|
||||
this.templateButton.Location = new System.Drawing.Point(425, 154);
|
||||
this.templateButton.Name = "templateButton";
|
||||
this.templateButton.Size = new System.Drawing.Size(173, 23);
|
||||
this.templateButton.TabIndex = 29;
|
||||
this.templateButton.Text = "Skin Presets";
|
||||
this.templateButton.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.templateButton.UseSelectable = true;
|
||||
this.templateButton.Click += new System.EventHandler(this.templateButton_Click);
|
||||
//
|
||||
// ANIMEditor
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(630, 554);
|
||||
this.Controls.Add(this.templateButton);
|
||||
this.Controls.Add(this.effectsGroup);
|
||||
this.Controls.Add(this.resetButton);
|
||||
this.Controls.Add(this.checkButton);
|
||||
this.Controls.Add(this.uncheckButton);
|
||||
this.Controls.Add(this.animValue);
|
||||
this.Controls.Add(this.exportButton);
|
||||
this.Controls.Add(this.importButton);
|
||||
this.Controls.Add(this.copyButton);
|
||||
this.Controls.Add(this.groupBox1);
|
||||
this.Controls.Add(this.effectsGroup2);
|
||||
this.Controls.Add(this.closeButton);
|
||||
this.MaximumSize = new System.Drawing.Size(630, 554);
|
||||
this.MinimizeBox = false;
|
||||
this.MinimumSize = new System.Drawing.Size(630, 554);
|
||||
this.Name = "ANIMEditor";
|
||||
this.Style = MetroFramework.MetroColorStyle.Silver;
|
||||
this.Text = "ANIM Editor";
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.effectsGroup.ResumeLayout(false);
|
||||
this.effectsGroup.PerformLayout();
|
||||
this.effectsGroup2.ResumeLayout(false);
|
||||
this.effectsGroup2.PerformLayout();
|
||||
this.groupBox1.ResumeLayout(false);
|
||||
this.groupBox1.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
private MetroFramework.Controls.MetroButton closeButton;
|
||||
private System.Windows.Forms.GroupBox effectsGroup;
|
||||
private MetroFramework.Controls.MetroCheckBox headCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox leftLegCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox rightArmCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox leftArmCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox bodyCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox classicCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox slimCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox rightLegCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox rightLegOCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox headOCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox leftLegOCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox rightArmOCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox leftArmOCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox bodyOCheckBox;
|
||||
private System.Windows.Forms.GroupBox effectsGroup2;
|
||||
private MetroFramework.Controls.MetroCheckBox rightLeggingCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox helmetCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox leftLeggingCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox rightArmorCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox leftArmorCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox chestplateCheckBox;
|
||||
private System.Windows.Forms.GroupBox groupBox1;
|
||||
private MetroFramework.Controls.MetroCheckBox syncLegsCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox staticArmsCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox syncArmsCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox statueCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox zombieCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox staticLegsCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox bobbingCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox santaCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox noArmorCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox dinnerboneCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox crouchCheckBox;
|
||||
private MetroFramework.Controls.MetroCheckBox unknownCheckBox;
|
||||
private MetroFramework.Controls.MetroButton copyButton;
|
||||
private MetroFramework.Controls.MetroButton importButton;
|
||||
private MetroFramework.Controls.MetroButton exportButton;
|
||||
private MetroFramework.Controls.MetroLabel animValue;
|
||||
private MetroFramework.Controls.MetroButton uncheckButton;
|
||||
private MetroFramework.Controls.MetroButton checkButton;
|
||||
private MetroFramework.Components.MetroToolTip toolTip;
|
||||
private MetroFramework.Controls.MetroButton resetButton;
|
||||
private MetroFramework.Controls.MetroButton templateButton;
|
||||
}
|
||||
}
|
||||
@@ -1,280 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.IO;
|
||||
using System.Windows.Forms;
|
||||
using PckStudio.Classes.Utils;
|
||||
using PckStudio.Forms.Additional_Popups;
|
||||
|
||||
namespace PckStudio.Forms.Utilities.Skins
|
||||
{
|
||||
public partial class ANIMEditor : MetroFramework.Forms.MetroForm
|
||||
{
|
||||
public bool saved = false;
|
||||
readonly SkinANIM initialANIM;
|
||||
public string outANIM => animValue.Text;
|
||||
SkinANIM anim = new SkinANIM();
|
||||
|
||||
void processCheckBoxes(bool set_all = false, bool value = false)
|
||||
{
|
||||
#region processes every single checkbox with the correct ANIM flags
|
||||
helmetCheckBox.Enabled = set_all ? value : anim.GetFlag(ANIM_EFFECTS.HEAD_DISABLED);
|
||||
chestplateCheckBox.Enabled = set_all ? value : anim.GetFlag(ANIM_EFFECTS.BODY_DISABLED);
|
||||
leftArmorCheckBox.Enabled = set_all ? value : anim.GetFlag(ANIM_EFFECTS.LEFT_ARM_DISABLED);
|
||||
rightArmorCheckBox.Enabled = set_all ? value : anim.GetFlag(ANIM_EFFECTS.RIGHT_ARM_DISABLED);
|
||||
leftLeggingCheckBox.Enabled = set_all ? value : anim.GetFlag(ANIM_EFFECTS.LEFT_LEG_DISABLED);
|
||||
rightLeggingCheckBox.Enabled = set_all ? value : anim.GetFlag(ANIM_EFFECTS.RIGHT_LEG_DISABLED);
|
||||
|
||||
bobbingCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.HEAD_BOBBING_DISABLED);
|
||||
bodyCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.BODY_DISABLED);
|
||||
bodyOCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.BODY_OVERLAY_DISABLED);
|
||||
chestplateCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.FORCE_BODY_ARMOR);
|
||||
|
||||
classicCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.RESOLUTION_64x64);
|
||||
crouchCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.DO_BACKWARDS_CROUCH);
|
||||
dinnerboneCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.DINNERBONE);
|
||||
headCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.HEAD_DISABLED);
|
||||
|
||||
headOCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.HEAD_OVERLAY_DISABLED);
|
||||
helmetCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.FORCE_HEAD_ARMOR);
|
||||
leftArmCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.LEFT_ARM_DISABLED);
|
||||
leftArmOCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.LEFT_ARM_OVERLAY_DISABLED);
|
||||
|
||||
leftArmorCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.FORCE_LEFT_ARM_ARMOR);
|
||||
leftLegCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.LEFT_LEG_DISABLED);
|
||||
leftLeggingCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.FORCE_LEFT_LEG_ARMOR);
|
||||
leftLegOCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.LEFT_LEG_OVERLAY_DISABLED);
|
||||
|
||||
noArmorCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.ALL_ARMOR_DISABLED);
|
||||
rightArmCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.RIGHT_ARM_DISABLED);
|
||||
rightArmOCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.RIGHT_ARM_OVERLAY_DISABLED);
|
||||
rightArmorCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.FORCE_RIGHT_ARM_ARMOR);
|
||||
|
||||
rightLegCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.RIGHT_LEG_DISABLED);
|
||||
rightLeggingCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.FORCE_RIGHT_LEG_ARMOR);
|
||||
rightLegOCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.RIGHT_LEG_OVERLAY_DISABLED);
|
||||
santaCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.BAD_SANTA);
|
||||
|
||||
slimCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.SLIM_MODEL);
|
||||
staticArmsCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.STATIC_ARMS);
|
||||
staticLegsCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.STATIC_LEGS);
|
||||
statueCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.STATUE_OF_LIBERTY);
|
||||
|
||||
syncArmsCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.SYNCED_ARMS);
|
||||
syncLegsCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.SYNCED_LEGS);
|
||||
unknownCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.__BIT_4);
|
||||
zombieCheckBox.Checked = set_all ? value : anim.GetFlag(ANIM_EFFECTS.ZOMBIE_ARMS);
|
||||
#endregion
|
||||
}
|
||||
|
||||
public ANIMEditor(string ANIM)
|
||||
{
|
||||
InitializeComponent();
|
||||
if (!SkinANIM.IsValidANIM(ANIM))
|
||||
{
|
||||
DialogResult = DialogResult.Abort;
|
||||
Close();
|
||||
}
|
||||
initialANIM = anim = new SkinANIM(ANIM);
|
||||
|
||||
#region Event definitions, since the designer can't parse lambda experessions
|
||||
bobbingCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.HEAD_BOBBING_DISABLED); };
|
||||
bodyCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.BODY_DISABLED); };
|
||||
bodyOCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.BODY_OVERLAY_DISABLED); };
|
||||
chestplateCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.FORCE_BODY_ARMOR); };
|
||||
|
||||
classicCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.RESOLUTION_64x64); };
|
||||
crouchCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.DO_BACKWARDS_CROUCH); };
|
||||
dinnerboneCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.DINNERBONE); };
|
||||
headCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.HEAD_DISABLED); };
|
||||
|
||||
headOCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.HEAD_OVERLAY_DISABLED); };
|
||||
helmetCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.FORCE_HEAD_ARMOR); };
|
||||
leftArmCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.LEFT_ARM_DISABLED); };
|
||||
leftArmOCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.LEFT_ARM_OVERLAY_DISABLED); };
|
||||
|
||||
leftArmorCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.FORCE_LEFT_ARM_ARMOR); };
|
||||
leftLegCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.LEFT_LEG_DISABLED); };
|
||||
leftLeggingCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.FORCE_LEFT_LEG_ARMOR); };
|
||||
leftLegOCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.LEFT_LEG_OVERLAY_DISABLED); };
|
||||
|
||||
noArmorCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.ALL_ARMOR_DISABLED); };
|
||||
rightArmCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.RIGHT_ARM_DISABLED); };
|
||||
rightArmOCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.RIGHT_ARM_OVERLAY_DISABLED); };
|
||||
rightArmorCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.FORCE_RIGHT_ARM_ARMOR); };
|
||||
|
||||
rightLegCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.RIGHT_LEG_DISABLED); };
|
||||
rightLeggingCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.FORCE_RIGHT_LEG_ARMOR); };
|
||||
rightLegOCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.RIGHT_LEG_OVERLAY_DISABLED); };
|
||||
santaCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.BAD_SANTA); };
|
||||
|
||||
slimCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.SLIM_MODEL); };
|
||||
staticArmsCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.STATIC_ARMS); };
|
||||
staticLegsCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.STATIC_LEGS); };
|
||||
statueCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.STATUE_OF_LIBERTY); };
|
||||
|
||||
syncArmsCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.SYNCED_ARMS); };
|
||||
syncLegsCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.SYNCED_LEGS); };
|
||||
unknownCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.__BIT_4); };
|
||||
zombieCheckBox.CheckedChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.ZOMBIE_ARMS); };
|
||||
|
||||
helmetCheckBox.EnabledChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.FORCE_HEAD_ARMOR); };
|
||||
chestplateCheckBox.EnabledChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.FORCE_BODY_ARMOR); };
|
||||
rightArmorCheckBox.EnabledChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.FORCE_RIGHT_ARM_ARMOR); };
|
||||
leftArmorCheckBox.EnabledChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.FORCE_LEFT_ARM_ARMOR); };
|
||||
rightLeggingCheckBox.EnabledChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.FORCE_RIGHT_LEG_ARMOR); };
|
||||
leftLeggingCheckBox.EnabledChanged += (sender, EventArgs) => { flagChanged(sender, EventArgs, ANIM_EFFECTS.FORCE_LEFT_LEG_ARMOR); };
|
||||
#endregion
|
||||
processCheckBoxes();
|
||||
}
|
||||
|
||||
private void closeButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
DialogResult = DialogResult.OK;
|
||||
|
||||
saved = true;
|
||||
Close();
|
||||
}
|
||||
|
||||
private void flagChanged(object sender, EventArgs e, ANIM_EFFECTS flag)
|
||||
{
|
||||
// Set value
|
||||
anim.SetFlag(flag, ((CheckBox)sender).Checked && ((CheckBox)sender).Enabled);
|
||||
|
||||
// Armor flags don't work if the respective parts are not enabled
|
||||
helmetCheckBox.Enabled = anim.GetFlag(ANIM_EFFECTS.HEAD_DISABLED);
|
||||
chestplateCheckBox.Enabled = anim.GetFlag(ANIM_EFFECTS.BODY_DISABLED);
|
||||
rightArmorCheckBox.Enabled = anim.GetFlag(ANIM_EFFECTS.RIGHT_ARM_DISABLED);
|
||||
leftArmorCheckBox.Enabled = anim.GetFlag(ANIM_EFFECTS.LEFT_ARM_DISABLED);
|
||||
rightLeggingCheckBox.Enabled = anim.GetFlag(ANIM_EFFECTS.RIGHT_LEG_DISABLED);
|
||||
leftLeggingCheckBox.Enabled = anim.GetFlag(ANIM_EFFECTS.LEFT_LEG_DISABLED);
|
||||
|
||||
animValue.Text = anim.ToString();
|
||||
}
|
||||
|
||||
private void copyButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
Clipboard.SetText(animValue.Text);
|
||||
}
|
||||
|
||||
private void importButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
string new_value = "";
|
||||
|
||||
bool first = true;
|
||||
while (!SkinANIM.IsValidANIM(new_value))
|
||||
{
|
||||
if (!first) MessageBox.Show($"The following value \"{new_value}\" is not valid. Please try again.");
|
||||
RenamePrompt diag = new RenamePrompt(new_value);
|
||||
diag.TextLabel.Text = "ANIM";
|
||||
diag.OKButton.Text = "Ok";
|
||||
if (diag.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
new_value = diag.NewText;
|
||||
}
|
||||
else return;
|
||||
first = false;
|
||||
}
|
||||
anim = new SkinANIM(new_value);
|
||||
processCheckBoxes();
|
||||
}
|
||||
|
||||
private void uncheckButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
processCheckBoxes(true);
|
||||
}
|
||||
|
||||
private void checkButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
processCheckBoxes(true, true);
|
||||
}
|
||||
|
||||
private void exportButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
SaveFileDialog saveFileDialog = new SaveFileDialog();
|
||||
saveFileDialog.FileName = animValue.Text + ".png";
|
||||
saveFileDialog.Filter = "Skin textures|*.png";
|
||||
if (saveFileDialog.ShowDialog() != DialogResult.OK ||
|
||||
string.IsNullOrWhiteSpace(Path.GetDirectoryName(saveFileDialog.FileName))) return;
|
||||
bool isSlim = anim.GetFlag(ANIM_EFFECTS.SLIM_MODEL);
|
||||
bool isClassic64 = anim.GetFlag(ANIM_EFFECTS.RESOLUTION_64x64);
|
||||
bool isClassic32 = !isSlim && !isClassic64;
|
||||
|
||||
Image skin = isSlim ? Properties.Resources.slim_template : Properties.Resources.classic_template;
|
||||
|
||||
#region Image processing code for generating the skin templates based on the input ANIM value
|
||||
Bitmap nb = new Bitmap(64, (!isSlim && !isClassic64) ? 32 : 64);
|
||||
using (Graphics g = Graphics.FromImage(nb))
|
||||
{
|
||||
g.DrawImage(skin, new Rectangle(0, 0, 64, isClassic32 ? 32 : 64), new Rectangle(0, 0, 64, isClassic32 ? 32 : 64), GraphicsUnit.Pixel);
|
||||
if (anim.GetFlag(ANIM_EFFECTS.HEAD_OVERLAY_DISABLED)) g.FillRectangle(Brushes.Magenta, new Rectangle(32, 0, 32, 16));
|
||||
if (anim.GetFlag(ANIM_EFFECTS.HEAD_DISABLED)) g.FillRectangle(Brushes.Magenta, new Rectangle(0, 0, 32, 16));
|
||||
if (anim.GetFlag(ANIM_EFFECTS.BODY_DISABLED)) g.FillRectangle(Brushes.Magenta, new Rectangle(16, 16, 24, 16));
|
||||
if (nb.Height == 64)
|
||||
{
|
||||
if (anim.GetFlag(ANIM_EFFECTS.RIGHT_ARM_DISABLED)) g.FillRectangle(Brushes.Magenta, new Rectangle(40, 16, 16, 16));
|
||||
if (anim.GetFlag(ANIM_EFFECTS.RIGHT_LEG_DISABLED)) g.FillRectangle(Brushes.Magenta, new Rectangle(0, 16, 16, 16));
|
||||
if (anim.GetFlag(ANIM_EFFECTS.BODY_OVERLAY_DISABLED)) g.FillRectangle(Brushes.Magenta, new Rectangle(16, 32, 24, 16));
|
||||
if (anim.GetFlag(ANIM_EFFECTS.RIGHT_ARM_OVERLAY_DISABLED)) g.FillRectangle(Brushes.Magenta, new Rectangle(40, 32, 16, 16));
|
||||
if (anim.GetFlag(ANIM_EFFECTS.RIGHT_LEG_OVERLAY_DISABLED)) g.FillRectangle(Brushes.Magenta, new Rectangle(0, 32, 16, 16));
|
||||
if (anim.GetFlag(ANIM_EFFECTS.LEFT_LEG_OVERLAY_DISABLED)) g.FillRectangle(Brushes.Magenta, new Rectangle(0, 48, 16, 16));
|
||||
if (anim.GetFlag(ANIM_EFFECTS.LEFT_LEG_DISABLED)) g.FillRectangle(Brushes.Magenta, new Rectangle(16, 48, 16, 16));
|
||||
if (anim.GetFlag(ANIM_EFFECTS.LEFT_ARM_DISABLED)) g.FillRectangle(Brushes.Magenta, new Rectangle(32, 48, 16, 16));
|
||||
if (anim.GetFlag(ANIM_EFFECTS.LEFT_ARM_OVERLAY_DISABLED)) g.FillRectangle(Brushes.Magenta, new Rectangle(48, 48, 16, 16));
|
||||
}
|
||||
else
|
||||
{
|
||||
// Since both classic 32 arms and legs use the same texture, removing the texture would remove both limbs instead of just one.
|
||||
// So both must be disabled by the user before they're removed from the texture;
|
||||
if (anim.GetFlag(ANIM_EFFECTS.RIGHT_ARM_DISABLED) && anim.GetFlag(ANIM_EFFECTS.LEFT_ARM_DISABLED))
|
||||
g.FillRectangle(Brushes.Magenta, new Rectangle(40, 16, 16, 16));
|
||||
if (anim.GetFlag(ANIM_EFFECTS.RIGHT_LEG_DISABLED) && anim.GetFlag(ANIM_EFFECTS.LEFT_LEG_DISABLED))
|
||||
g.FillRectangle(Brushes.Magenta, new Rectangle(0, 16, 16, 16));
|
||||
}
|
||||
nb.MakeTransparent(Color.Magenta);
|
||||
skin = nb;
|
||||
}
|
||||
#endregion
|
||||
|
||||
skin.Save(saveFileDialog.FileName);
|
||||
}
|
||||
|
||||
private void resetButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
anim = initialANIM;
|
||||
processCheckBoxes();
|
||||
}
|
||||
|
||||
static readonly Dictionary<string, ANIM_EFFECTS> Templates = new Dictionary<string, ANIM_EFFECTS>()
|
||||
{
|
||||
{ "Steve (64x32)", ANIM_EFFECTS.NONE },
|
||||
{ "Steve (64x64)", ANIM_EFFECTS.RESOLUTION_64x64 },
|
||||
{ "Alex (64x64)", ANIM_EFFECTS.SLIM_MODEL },
|
||||
{ "Zombie Skins", ANIM_EFFECTS.ZOMBIE_ARMS },
|
||||
{ "Cetacean Skins", ANIM_EFFECTS.SYNCED_ARMS | ANIM_EFFECTS.SYNCED_LEGS },
|
||||
{ "Ski Skins", ANIM_EFFECTS.SYNCED_ARMS | ANIM_EFFECTS.STATIC_LEGS },
|
||||
{ "Ghost Skins", ANIM_EFFECTS.STATIC_LEGS | ANIM_EFFECTS.ZOMBIE_ARMS },
|
||||
{ "Medusa (Greek Myth.)", ANIM_EFFECTS.SYNCED_LEGS },
|
||||
{ "Librarian (Halo)", ANIM_EFFECTS.STATIC_LEGS },
|
||||
{ "Grim Reaper (Halloween)", ANIM_EFFECTS.STATIC_LEGS | ANIM_EFFECTS.STATIC_ARMS }
|
||||
};
|
||||
|
||||
private void templateButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
var diag = new ItemSelectionPopUp(Templates.Keys.ToArray());
|
||||
diag.label2.Text = "Presets";
|
||||
diag.okBtn.Text = "Load";
|
||||
|
||||
if (diag.ShowDialog() != DialogResult.OK) return;
|
||||
|
||||
var templateANIM = Templates[diag.SelectedItem];
|
||||
DialogResult prompt = MessageBox.Show(this, "Would you like to add this preset's effects to your current ANIM? Otherwise all of your effects will be cleared. Either choice can be undone by pressing \"Restore ANIM\".", "", MessageBoxButtons.YesNo);
|
||||
if (prompt == DialogResult.Yes) anim |= templateANIM;
|
||||
else anim = templateANIM;
|
||||
SkinANIM backup = anim;
|
||||
processCheckBoxes();
|
||||
anim = backup;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,123 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
</root>
|
||||
@@ -30,7 +30,7 @@
|
||||
{
|
||||
this.components = new System.ComponentModel.Container();
|
||||
this.metroTabPageMain = new MetroFramework.Controls.MetroTabPage();
|
||||
this.myTablePanel1 = new PckStudio.Forms.MyTablePanel();
|
||||
this.myTablePanel1 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.EurDig = new System.Windows.Forms.RadioButton();
|
||||
this.USDig = new System.Windows.Forms.RadioButton();
|
||||
this.buttonServerToggle = new System.Windows.Forms.Button();
|
||||
@@ -339,7 +339,7 @@
|
||||
#endregion
|
||||
|
||||
private MetroFramework.Controls.MetroTabPage metroTabPageMain;
|
||||
private MyTablePanel myTablePanel1;
|
||||
private System.Windows.Forms.TableLayoutPanel myTablePanel1;
|
||||
private System.Windows.Forms.RadioButton USDisc;
|
||||
private System.Windows.Forms.RadioButton JPDig;
|
||||
private System.Windows.Forms.RadioButton EurDisc;
|
||||
|
||||
@@ -32,7 +32,7 @@ namespace PckStudio.Forms
|
||||
{
|
||||
this.components = new System.ComponentModel.Container();
|
||||
this.metroTabPageMain = new MetroFramework.Controls.MetroTabPage();
|
||||
this.myTablePanel1 = new PckStudio.Forms.MyTablePanel();
|
||||
this.myTablePanel1 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.EurDig = new System.Windows.Forms.RadioButton();
|
||||
this.USDig = new System.Windows.Forms.RadioButton();
|
||||
this.buttonServerToggle = new System.Windows.Forms.Button();
|
||||
@@ -341,7 +341,7 @@ namespace PckStudio.Forms
|
||||
#endregion
|
||||
|
||||
private MetroFramework.Controls.MetroTabPage metroTabPageMain;
|
||||
private MyTablePanel myTablePanel1;
|
||||
private System.Windows.Forms.TableLayoutPanel myTablePanel1;
|
||||
private System.Windows.Forms.RadioButton USDisc;
|
||||
private System.Windows.Forms.RadioButton JPDig;
|
||||
private System.Windows.Forms.RadioButton EurDisc;
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
this.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(installWiiU));
|
||||
this.metroTabPageMain = new MetroFramework.Controls.MetroTabPage();
|
||||
this.myTablePanel1 = new PckStudio.Forms.MyTablePanel();
|
||||
this.myTablePanel1 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.buttonServerToggle = new System.Windows.Forms.Button();
|
||||
this.panel1 = new System.Windows.Forms.Panel();
|
||||
this.radioButtonSystem = new System.Windows.Forms.RadioButton();
|
||||
@@ -330,7 +330,7 @@
|
||||
#endregion
|
||||
|
||||
private MetroFramework.Controls.MetroTabPage metroTabPageMain;
|
||||
private MyTablePanel myTablePanel1;
|
||||
private System.Windows.Forms.TableLayoutPanel myTablePanel1;
|
||||
private System.Windows.Forms.RadioButton radioButtonJap;
|
||||
private System.Windows.Forms.RadioButton radioButtonEur;
|
||||
private System.Windows.Forms.RadioButton radioButtonUs;
|
||||
|
||||
2
PCK-Studio/Forms/Utilities/pckCenter.Designer.cs
generated
2
PCK-Studio/Forms/Utilities/pckCenter.Designer.cs
generated
@@ -1,4 +1,4 @@
|
||||
namespace PckStudio.Forms
|
||||
namespace PckStudio.Forms.Utilities
|
||||
{
|
||||
partial class pckCenter
|
||||
{
|
||||
|
||||
@@ -11,7 +11,7 @@ using PckStudio.Classes.Misc;
|
||||
using PckStudio.API.PCKCenter.model;
|
||||
using PckStudio.API.PCKCenter;
|
||||
|
||||
namespace PckStudio.Forms
|
||||
namespace PckStudio.Forms.Utilities
|
||||
{
|
||||
public partial class pckCenter : MetroFramework.Forms.MetroForm
|
||||
{
|
||||
@@ -174,10 +174,6 @@ namespace PckStudio.Forms
|
||||
EInfo.Description = desc;
|
||||
PJSON.Data.Add((++x).ToString(), EInfo);
|
||||
File.Copy(cacheDir + mod + ".png", cacheDir + "images/" + ++x + ".png");
|
||||
|
||||
|
||||
PckPreview pckPreview = new PckPreview(pckName, author, desc, direct, ad, bmp, 0, mod, null, IsVita, Packname);
|
||||
pckLayout.Controls.Add(pckPreview);
|
||||
}
|
||||
}
|
||||
catch (Exception err) { Console.WriteLine(err.Message); }
|
||||
@@ -287,9 +283,6 @@ namespace PckStudio.Forms
|
||||
{
|
||||
bmp = (Bitmap)Image.FromStream(memStream);
|
||||
}
|
||||
|
||||
PckPreview pckPreview = new PckPreview(pckName, author, desc, direct, ad, bmp, 1, mod, loadCollectdion, PSVitaPCKCheckbox.Checked, "");
|
||||
pckLayout.Controls.Add(pckPreview);
|
||||
}
|
||||
pckLayout.Enabled = true;
|
||||
}
|
||||
@@ -319,7 +312,7 @@ namespace PckStudio.Forms
|
||||
|
||||
try
|
||||
{
|
||||
RPC.SetPresence("Viewing the PCK Center", "Program by PhoenixARC");
|
||||
RPC.SetPresence("Viewing the PCK Center");
|
||||
}
|
||||
catch
|
||||
{
|
||||
@@ -400,143 +393,4 @@ namespace PckStudio.Forms
|
||||
else { MessageBox.Show("No Packs Avaliable!"); }
|
||||
}
|
||||
}
|
||||
|
||||
public class PckPreview : UserControl
|
||||
{
|
||||
string name;
|
||||
string author;
|
||||
string desc;
|
||||
string direct;
|
||||
string ad;
|
||||
int mode;
|
||||
string mod;
|
||||
bool IsVita;
|
||||
string Pack;
|
||||
|
||||
Bitmap icon;
|
||||
|
||||
PictureBox iconBox = new PictureBox();
|
||||
public MyNameLabel nameLabel = new MyNameLabel();
|
||||
MyTablePanel layout = new MyTablePanel();
|
||||
MethodInvoker reloader;
|
||||
|
||||
public PckPreview(string name, string author, string desc, string direct, string ad, Bitmap icon, int mode, string mod, MethodInvoker Reloader, bool vita, string packName) : base()
|
||||
{
|
||||
reloader = Reloader;
|
||||
nameLabel.parentPreview = this;
|
||||
layout.parentPreview = this;
|
||||
this.name = name;
|
||||
this.author = author;
|
||||
this.desc = desc;
|
||||
this.direct = direct;
|
||||
this.ad = ad;
|
||||
this.mode = mode;
|
||||
this.mod = mod;
|
||||
this.icon = icon;
|
||||
IsVita = vita;
|
||||
Pack = packName;
|
||||
layout.BackColor = Color.White;
|
||||
Size = new Size(250, 280);
|
||||
nameLabel.Dock = DockStyle.Fill;
|
||||
nameLabel.Location = new Point(0,0);
|
||||
nameLabel.Size = new Size(230, 30);
|
||||
iconBox.Image = icon;
|
||||
//iconBox.Dock = DockStyle.Fill;
|
||||
iconBox.Anchor = AnchorStyles.None;
|
||||
nameLabel.Text = name;
|
||||
iconBox.SizeMode = PictureBoxSizeMode.StretchImage;
|
||||
iconBox.Size = new Size(230, 230);
|
||||
layout.Margin = new Padding(0, 0, 0, 0);
|
||||
Margin = new Padding(20, 15, 20, 15);
|
||||
nameLabel.ForeColor = Color.Black;
|
||||
nameLabel.TextAlign = ContentAlignment.MiddleCenter;
|
||||
nameLabel.Font = new Font(nameLabel.Font.FontFamily, 14);
|
||||
layout.Controls.Add(iconBox, 0, 1);
|
||||
layout.Controls.Add(nameLabel, 0, 0);
|
||||
layout.Parent = this;
|
||||
layout.Dock = DockStyle.Fill;
|
||||
iconBox.Enabled = false;
|
||||
|
||||
}
|
||||
|
||||
public void setHover(bool hover)
|
||||
{
|
||||
layout.BackColor = hover ? Color.LightGray : Color.White;
|
||||
layout.Refresh();
|
||||
}
|
||||
public void onClick()
|
||||
{
|
||||
|
||||
layout.BackColor = Color.Gray;
|
||||
layout.Refresh();
|
||||
pckCenterOpen openPck = new pckCenterOpen(name, author, desc, direct, ad, icon, mode, mod, reloader, IsVita, Pack);
|
||||
openPck.ShowDialog();
|
||||
}
|
||||
|
||||
public void onDoubleClick()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public class MyTablePanel : TableLayoutPanel
|
||||
{
|
||||
public PckPreview parentPreview;
|
||||
|
||||
protected override void OnMouseEnter(EventArgs e)
|
||||
{
|
||||
if (parentPreview != null)
|
||||
{
|
||||
parentPreview.setHover(true);
|
||||
base.OnMouseLeave(e);
|
||||
}
|
||||
}
|
||||
protected override void OnMouseLeave(EventArgs e)
|
||||
{
|
||||
if(parentPreview != null)
|
||||
{
|
||||
parentPreview.setHover(false);
|
||||
base.OnMouseLeave(e);
|
||||
}
|
||||
}
|
||||
protected override void OnMouseClick(MouseEventArgs e)
|
||||
{
|
||||
if (parentPreview != null)
|
||||
{
|
||||
parentPreview.onClick();
|
||||
base.OnMouseClick(e);
|
||||
}
|
||||
}
|
||||
protected override void OnMouseDoubleClick(MouseEventArgs e)
|
||||
{
|
||||
if (parentPreview != null)
|
||||
{
|
||||
parentPreview.onDoubleClick();
|
||||
base.OnMouseDoubleClick(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class MyNameLabel : Label
|
||||
{
|
||||
public PckPreview parentPreview;
|
||||
|
||||
protected override void OnMouseEnter(EventArgs e)
|
||||
{
|
||||
parentPreview.setHover(true);
|
||||
base.OnMouseEnter(e);
|
||||
}
|
||||
protected override void OnMouseLeave(EventArgs e)
|
||||
{
|
||||
parentPreview.setHover(false);
|
||||
base.OnMouseLeave(e);
|
||||
}
|
||||
protected override void OnMouseClick(MouseEventArgs e)
|
||||
{
|
||||
parentPreview.onClick();
|
||||
base.OnMouseClick(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
16
PCK-Studio/Forms/Utilities/pckCenterOpen.Designer.cs
generated
16
PCK-Studio/Forms/Utilities/pckCenterOpen.Designer.cs
generated
@@ -44,9 +44,9 @@
|
||||
//
|
||||
// buttonDirect
|
||||
//
|
||||
resources.ApplyResources(this.buttonDirect, "buttonDirect");
|
||||
this.buttonDirect.BackColor = System.Drawing.Color.Purple;
|
||||
this.buttonDirect.FlatAppearance.BorderSize = 0;
|
||||
resources.ApplyResources(this.buttonDirect, "buttonDirect");
|
||||
this.buttonDirect.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonDirect.Name = "buttonDirect";
|
||||
this.buttonDirect.UseVisualStyleBackColor = false;
|
||||
@@ -66,9 +66,9 @@
|
||||
//
|
||||
// buttonDelete
|
||||
//
|
||||
resources.ApplyResources(this.buttonDelete, "buttonDelete");
|
||||
this.buttonDelete.BackColor = System.Drawing.Color.Red;
|
||||
this.buttonDelete.FlatAppearance.BorderSize = 0;
|
||||
resources.ApplyResources(this.buttonDelete, "buttonDelete");
|
||||
this.buttonDelete.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonDelete.Name = "buttonDelete";
|
||||
this.buttonDelete.UseVisualStyleBackColor = false;
|
||||
@@ -76,9 +76,9 @@
|
||||
//
|
||||
// buttonExport
|
||||
//
|
||||
resources.ApplyResources(this.buttonExport, "buttonExport");
|
||||
this.buttonExport.BackColor = System.Drawing.Color.SlateGray;
|
||||
this.buttonExport.FlatAppearance.BorderSize = 0;
|
||||
resources.ApplyResources(this.buttonExport, "buttonExport");
|
||||
this.buttonExport.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonExport.Name = "buttonExport";
|
||||
this.buttonExport.UseVisualStyleBackColor = false;
|
||||
@@ -86,9 +86,9 @@
|
||||
//
|
||||
// buttonInstallPs3
|
||||
//
|
||||
resources.ApplyResources(this.buttonInstallPs3, "buttonInstallPs3");
|
||||
this.buttonInstallPs3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(192)))));
|
||||
this.buttonInstallPs3.BackgroundImage = global::PckStudio.Properties.Resources.ps3;
|
||||
resources.ApplyResources(this.buttonInstallPs3, "buttonInstallPs3");
|
||||
this.buttonInstallPs3.FlatAppearance.BorderSize = 0;
|
||||
this.buttonInstallPs3.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonInstallPs3.Name = "buttonInstallPs3";
|
||||
@@ -97,9 +97,9 @@
|
||||
//
|
||||
// buttonInstallXbox
|
||||
//
|
||||
resources.ApplyResources(this.buttonInstallXbox, "buttonInstallXbox");
|
||||
this.buttonInstallXbox.BackColor = System.Drawing.Color.Lime;
|
||||
this.buttonInstallXbox.BackgroundImage = global::PckStudio.Properties.Resources.xbox;
|
||||
resources.ApplyResources(this.buttonInstallXbox, "buttonInstallXbox");
|
||||
this.buttonInstallXbox.FlatAppearance.BorderSize = 0;
|
||||
this.buttonInstallXbox.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonInstallXbox.Name = "buttonInstallXbox";
|
||||
@@ -108,9 +108,9 @@
|
||||
//
|
||||
// buttonInstallWiiU
|
||||
//
|
||||
resources.ApplyResources(this.buttonInstallWiiU, "buttonInstallWiiU");
|
||||
this.buttonInstallWiiU.BackColor = System.Drawing.Color.DeepSkyBlue;
|
||||
this.buttonInstallWiiU.BackgroundImage = global::PckStudio.Properties.Resources.wiiu;
|
||||
resources.ApplyResources(this.buttonInstallWiiU, "buttonInstallWiiU");
|
||||
this.buttonInstallWiiU.FlatAppearance.BorderSize = 0;
|
||||
this.buttonInstallWiiU.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonInstallWiiU.Name = "buttonInstallWiiU";
|
||||
@@ -125,9 +125,9 @@
|
||||
//
|
||||
// buttonBedrock
|
||||
//
|
||||
resources.ApplyResources(this.buttonBedrock, "buttonBedrock");
|
||||
this.buttonBedrock.BackColor = System.Drawing.Color.Green;
|
||||
this.buttonBedrock.FlatAppearance.BorderSize = 0;
|
||||
resources.ApplyResources(this.buttonBedrock, "buttonBedrock");
|
||||
this.buttonBedrock.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonBedrock.Name = "buttonBedrock";
|
||||
this.buttonBedrock.UseVisualStyleBackColor = false;
|
||||
@@ -138,6 +138,7 @@
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.BorderStyle = MetroFramework.Forms.MetroFormBorderStyle.FixedSingle;
|
||||
this.Controls.Add(this.buttonDirect);
|
||||
this.Controls.Add(this.buttonBedrock);
|
||||
this.Controls.Add(this.buttonInstallPs3);
|
||||
this.Controls.Add(this.buttonInstallXbox);
|
||||
@@ -146,7 +147,6 @@
|
||||
this.Controls.Add(this.buttonDelete);
|
||||
this.Controls.Add(this.labelDesc);
|
||||
this.Controls.Add(this.labelName);
|
||||
this.Controls.Add(this.buttonDirect);
|
||||
this.Controls.Add(this.pictureBoxDisplay);
|
||||
this.MaximizeBox = false;
|
||||
this.Name = "pckCenterOpen";
|
||||
|
||||
@@ -19,6 +19,7 @@ using PckStudio.Classes.FileTypes;
|
||||
using PckStudio.Classes.IO.PCK;
|
||||
using OMI.Formats.Pck;
|
||||
using OMI.Workers.Pck;
|
||||
using PckStudio.Classes.Extentions;
|
||||
|
||||
namespace PckStudio.Forms
|
||||
{
|
||||
@@ -1026,17 +1027,26 @@ namespace PckStudio.Forms
|
||||
{
|
||||
var ms = new MemoryStream(skinTexture.Data);
|
||||
Bitmap saveSkin = new Bitmap(Image.FromStream(ms));
|
||||
var config = new ImageExtentions.GraphicsConfig()
|
||||
{
|
||||
CompositingMode = CompositingMode.SourceCopy,
|
||||
CompositingQuality = CompositingQuality.HighQuality,
|
||||
InterpolationMode = InterpolationMode.NearestNeighbor,
|
||||
SmoothingMode = SmoothingMode.HighQuality,
|
||||
PixelOffsetMode = PixelOffsetMode.HighQuality,
|
||||
};
|
||||
|
||||
if (saveSkin.Width == saveSkin.Height)
|
||||
{
|
||||
ResizeImage(saveSkin, 64, 64);
|
||||
saveSkin.ResizeImage(64, 64, config);
|
||||
}
|
||||
else if (saveSkin.Height == saveSkin.Width / 2)
|
||||
{
|
||||
ResizeImage(saveSkin, 64, 32);
|
||||
saveSkin.ResizeImage(64, 32, config);
|
||||
}
|
||||
else
|
||||
{
|
||||
ResizeImage(saveSkin, 64, 64);
|
||||
saveSkin.ResizeImage(64, 64, config);
|
||||
}
|
||||
saveSkin.Save(root + "/" + skinTexture.Filename, ImageFormat.Png);
|
||||
}
|
||||
@@ -1077,32 +1087,6 @@ namespace PckStudio.Forms
|
||||
}
|
||||
}
|
||||
|
||||
public static Bitmap ResizeImage(Image image, int width, int height)
|
||||
{
|
||||
var destRect = new Rectangle(0, 0, width, height);
|
||||
var destImage = new Bitmap(width, height);
|
||||
|
||||
destImage.SetResolution(image.HorizontalResolution, image.VerticalResolution);
|
||||
|
||||
using (var graphics = Graphics.FromImage(destImage))
|
||||
{
|
||||
graphics.CompositingMode = CompositingMode.SourceCopy;
|
||||
graphics.CompositingQuality = CompositingQuality.HighQuality;
|
||||
graphics.InterpolationMode = InterpolationMode.NearestNeighbor;
|
||||
graphics.SmoothingMode = SmoothingMode.HighQuality;
|
||||
graphics.PixelOffsetMode = PixelOffsetMode.HighQuality;
|
||||
|
||||
using (var wrapMode = new ImageAttributes())
|
||||
{
|
||||
wrapMode.SetWrapMode(WrapMode.TileFlipXY);
|
||||
graphics.DrawImage(image, destRect, 0, 0, image.Width, image.Height, GraphicsUnit.Pixel, wrapMode);
|
||||
}
|
||||
}
|
||||
|
||||
return destImage;
|
||||
}
|
||||
|
||||
|
||||
private void buttonDelete_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
|
||||
@@ -117,155 +117,236 @@
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name=">>pictureBoxDisplay.ZOrder" xml:space="preserve">
|
||||
<value>9</value>
|
||||
</data>
|
||||
<data name=">>buttonExport.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="buttonDirect.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Flat</value>
|
||||
</data>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="buttonInstallXbox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>30, 30</value>
|
||||
<data name="buttonDirect.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>568, 338</value>
|
||||
</data>
|
||||
<data name="buttonDirect.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>169, 67</value>
|
||||
</data>
|
||||
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="buttonDelete.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>7</value>
|
||||
<data name="buttonDirect.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="buttonInstallWiiU.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>585, 338</value>
|
||||
<data name="buttonDirect.Text" xml:space="preserve">
|
||||
<value>DOWNLOAD TO COLLECTION</value>
|
||||
</data>
|
||||
<data name="buttonDelete.Text" xml:space="preserve">
|
||||
<value>Delete</value>
|
||||
</data>
|
||||
<data name=">>pictureBoxDisplay.Name" xml:space="preserve">
|
||||
<value>pictureBoxDisplay</value>
|
||||
</data>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="buttonInstallXbox.BackgroundImageLayout" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>Stretch</value>
|
||||
</data>
|
||||
<data name="buttonInstallXbox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>621, 338</value>
|
||||
</data>
|
||||
<data name=">>pictureBoxDisplay.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.PictureBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallPs3.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>labelName.ZOrder" xml:space="preserve">
|
||||
<value>7</value>
|
||||
<data name="buttonDirect.Visible" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<data name=">>buttonDirect.Name" xml:space="preserve">
|
||||
<value>buttonDirect</value>
|
||||
</data>
|
||||
<data name=">>$this.Name" xml:space="preserve">
|
||||
<value>pckCenterOpen</value>
|
||||
<data name=">>buttonDirect.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>buttonBedrock.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="buttonInstallPs3.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>11</value>
|
||||
</data>
|
||||
<data name="buttonBedrock.Text" xml:space="preserve">
|
||||
<value>Convert to Bedrock</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallWiiU.Name" xml:space="preserve">
|
||||
<value>buttonInstallWiiU</value>
|
||||
</data>
|
||||
<data name=">>labelDesc.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>buttonDirect.ZOrder" xml:space="preserve">
|
||||
<value>8</value>
|
||||
</data>
|
||||
<data name="buttonDirect.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>169, 43</value>
|
||||
</data>
|
||||
<data name="labelDesc.Text" xml:space="preserve">
|
||||
<value>labelDesc</value>
|
||||
</data>
|
||||
<data name="buttonBedrock.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>12</value>
|
||||
</data>
|
||||
<data name=">>buttonExport.Parent" xml:space="preserve">
|
||||
<data name=">>buttonDirect.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name="buttonInstallWiiU.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Flat</value>
|
||||
</data>
|
||||
<data name="pictureBoxDisplay.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>341, 341</value>
|
||||
</data>
|
||||
<data name="labelDesc.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>384, 64</value>
|
||||
</data>
|
||||
<data name="buttonInstallWiiU.BackgroundImageLayout" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>Stretch</value>
|
||||
</data>
|
||||
<data name=">>buttonBedrock.Name" xml:space="preserve">
|
||||
<value>buttonBedrock</value>
|
||||
</data>
|
||||
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
|
||||
<value>CenterParent</value>
|
||||
</data>
|
||||
<data name="buttonExport.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>8</value>
|
||||
</data>
|
||||
<data name="labelDesc.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>6</value>
|
||||
</data>
|
||||
<data name="buttonBedrock.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>152, 30</value>
|
||||
</data>
|
||||
<data name=">>labelName.Name" xml:space="preserve">
|
||||
<value>labelName</value>
|
||||
</data>
|
||||
<data name="buttonInstallPs3.BackgroundImageLayout" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>Stretch</value>
|
||||
</data>
|
||||
<data name="buttonDirect.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Flat</value>
|
||||
<data name=">>buttonDirect.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="labelName.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallXbox.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
<data name="labelName.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Microsoft Sans Serif, 20.25pt</value>
|
||||
</data>
|
||||
<data name="buttonInstallWiiU.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>30, 30</value>
|
||||
<data name="labelName.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>24, 24</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallXbox.Name" xml:space="preserve">
|
||||
<value>buttonInstallXbox</value>
|
||||
</data>
|
||||
<data name=">>buttonDelete.Name" xml:space="preserve">
|
||||
<value>buttonDelete</value>
|
||||
</data>
|
||||
<data name="buttonExport.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Flat</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallPs3.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
<data name="labelName.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>135, 31</value>
|
||||
</data>
|
||||
<data name="labelName.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>5</value>
|
||||
</data>
|
||||
<data name="labelName.Text" xml:space="preserve">
|
||||
<value>Skin Pack</value>
|
||||
</data>
|
||||
<data name=">>labelName.Name" xml:space="preserve">
|
||||
<value>labelName</value>
|
||||
</data>
|
||||
<data name=">>labelName.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>labelName.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>labelName.ZOrder" xml:space="preserve">
|
||||
<value>8</value>
|
||||
</data>
|
||||
<data name="labelDesc.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Microsoft Sans Serif, 12pt</value>
|
||||
</data>
|
||||
<data name="labelDesc.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>384, 64</value>
|
||||
</data>
|
||||
<data name="labelDesc.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>353, 222</value>
|
||||
</data>
|
||||
<data name="labelDesc.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>6</value>
|
||||
</data>
|
||||
<data name="labelDesc.Text" xml:space="preserve">
|
||||
<value>labelDesc</value>
|
||||
</data>
|
||||
<data name=">>labelDesc.Name" xml:space="preserve">
|
||||
<value>labelDesc</value>
|
||||
</data>
|
||||
<data name=">>labelDesc.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>labelDesc.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>labelDesc.ZOrder" xml:space="preserve">
|
||||
<value>7</value>
|
||||
</data>
|
||||
<data name="buttonDelete.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Flat</value>
|
||||
</data>
|
||||
<data name="buttonExport.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>692, 338</value>
|
||||
</data>
|
||||
<data name="buttonBedrock.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<data name="buttonDelete.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Segoe UI, 12pt</value>
|
||||
</data>
|
||||
<data name="buttonDelete.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>384, 338</value>
|
||||
</data>
|
||||
<data name="buttonDelete.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>178, 66</value>
|
||||
</data>
|
||||
<data name="buttonDelete.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>7</value>
|
||||
</data>
|
||||
<data name="buttonDelete.Text" xml:space="preserve">
|
||||
<value>Delete</value>
|
||||
</data>
|
||||
<data name=">>buttonDelete.Name" xml:space="preserve">
|
||||
<value>buttonDelete</value>
|
||||
</data>
|
||||
<data name=">>buttonDelete.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>buttonDelete.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>buttonDelete.ZOrder" xml:space="preserve">
|
||||
<value>6</value>
|
||||
</data>
|
||||
<data name="buttonExport.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Flat</value>
|
||||
</data>
|
||||
<data name="buttonExport.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Segoe UI, 12pt</value>
|
||||
</data>
|
||||
<data name="buttonExport.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>495, 256</value>
|
||||
</data>
|
||||
<data name="buttonExport.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>45, 30</value>
|
||||
</data>
|
||||
<data name="buttonExport.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>8</value>
|
||||
</data>
|
||||
<data name="buttonExport.Text" xml:space="preserve">
|
||||
<value>Get</value>
|
||||
</data>
|
||||
<data name=">>buttonExport.Name" xml:space="preserve">
|
||||
<value>buttonExport</value>
|
||||
</data>
|
||||
<data name=">>buttonExport.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>buttonExport.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>buttonExport.ZOrder" xml:space="preserve">
|
||||
<value>5</value>
|
||||
</data>
|
||||
<data name="buttonInstallPs3.BackgroundImageLayout" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>Stretch</value>
|
||||
</data>
|
||||
<data name="buttonInstallPs3.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Flat</value>
|
||||
</data>
|
||||
<data name="buttonInstallPs3.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Segoe UI, 12pt</value>
|
||||
</data>
|
||||
<data name="buttonInstallPs3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>460, 256</value>
|
||||
</data>
|
||||
<data name="buttonInstallPs3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>30, 30</value>
|
||||
</data>
|
||||
<data name="buttonDirect.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>568, 362</value>
|
||||
<data name="buttonInstallPs3.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>11</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallPs3.Name" xml:space="preserve">
|
||||
<value>buttonInstallPs3</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallPs3.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallPs3.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallPs3.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="buttonInstallXbox.BackgroundImageLayout" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>Stretch</value>
|
||||
</data>
|
||||
<data name="buttonInstallXbox.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Flat</value>
|
||||
</data>
|
||||
<data name="buttonInstallXbox.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Segoe UI, 12pt</value>
|
||||
</data>
|
||||
<data name="buttonInstallXbox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>424, 256</value>
|
||||
</data>
|
||||
<data name="buttonInstallXbox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>30, 30</value>
|
||||
</data>
|
||||
<data name="buttonInstallXbox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>10</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallXbox.Name" xml:space="preserve">
|
||||
<value>buttonInstallXbox</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallXbox.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallXbox.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallXbox.ZOrder" xml:space="preserve">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name="buttonInstallWiiU.BackgroundImageLayout" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>Stretch</value>
|
||||
</data>
|
||||
<data name="buttonInstallWiiU.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Flat</value>
|
||||
</data>
|
||||
<data name="buttonInstallWiiU.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Segoe UI, 12pt</value>
|
||||
</data>
|
||||
<data name="buttonInstallWiiU.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>388, 256</value>
|
||||
</data>
|
||||
<data name="buttonInstallWiiU.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>30, 30</value>
|
||||
</data>
|
||||
<data name="buttonInstallWiiU.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>9</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallWiiU.Name" xml:space="preserve">
|
||||
<value>buttonInstallWiiU</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallWiiU.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
@@ -273,160 +354,82 @@
|
||||
<data name=">>buttonInstallWiiU.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallWiiU.ZOrder" xml:space="preserve">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name="pictureBoxDisplay.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>24, 64</value>
|
||||
</data>
|
||||
<data name="buttonDirect.Visible" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
<data name="pictureBoxDisplay.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>341, 341</value>
|
||||
</data>
|
||||
<data name="pictureBoxDisplay.SizeMode" type="System.Windows.Forms.PictureBoxSizeMode, System.Windows.Forms">
|
||||
<value>StretchImage</value>
|
||||
</data>
|
||||
<data name="buttonInstallWiiU.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Segoe UI, 12pt</value>
|
||||
<data name="pictureBoxDisplay.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallPs3.Name" xml:space="preserve">
|
||||
<value>buttonInstallPs3</value>
|
||||
<data name=">>pictureBoxDisplay.Name" xml:space="preserve">
|
||||
<value>pictureBoxDisplay</value>
|
||||
</data>
|
||||
<data name=">>labelName.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="buttonExport.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Segoe UI, 12pt</value>
|
||||
</data>
|
||||
<data name="buttonBedrock.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>585, 375</value>
|
||||
</data>
|
||||
<data name="labelName.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>135, 31</value>
|
||||
</data>
|
||||
<data name="labelName.Text" xml:space="preserve">
|
||||
<value>Skin Pack</value>
|
||||
</data>
|
||||
<data name=">>buttonDirect.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>buttonDelete.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name="buttonDirect.Text" xml:space="preserve">
|
||||
<value>DOWNLOAD TO COLLECTION</value>
|
||||
</data>
|
||||
<data name="buttonInstallPs3.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Segoe UI, 12pt</value>
|
||||
</data>
|
||||
<data name=">>buttonDelete.ZOrder" xml:space="preserve">
|
||||
<value>5</value>
|
||||
</data>
|
||||
<data name=">>buttonExport.ZOrder" xml:space="preserve">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallXbox.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="buttonInstallPs3.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Flat</value>
|
||||
</data>
|
||||
<data name="labelDesc.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>353, 286</value>
|
||||
</data>
|
||||
<data name="buttonDelete.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Segoe UI, 12pt</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallXbox.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>buttonDirect.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>labelDesc.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name="buttonExport.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>45, 30</value>
|
||||
<data name=">>pictureBoxDisplay.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.PictureBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>pictureBoxDisplay.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name="labelDesc.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Microsoft Sans Serif, 12pt</value>
|
||||
</data>
|
||||
<data name="buttonDelete.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>178, 66</value>
|
||||
</data>
|
||||
<data name=">>buttonBedrock.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
|
||||
<value>6, 13</value>
|
||||
</data>
|
||||
<data name="buttonInstallXbox.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Flat</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallWiiU.ZOrder" xml:space="preserve">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name="buttonDelete.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>384, 338</value>
|
||||
</data>
|
||||
<data name=">>buttonBedrock.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="labelName.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>24, 24</value>
|
||||
</data>
|
||||
<data name=">>buttonInstallPs3.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="buttonInstallXbox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>10</value>
|
||||
</data>
|
||||
<data name="labelName.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Microsoft Sans Serif, 20.25pt</value>
|
||||
</data>
|
||||
<data name=">>labelDesc.ZOrder" xml:space="preserve">
|
||||
<value>6</value>
|
||||
</data>
|
||||
<data name="buttonInstallXbox.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Segoe UI, 12pt</value>
|
||||
<data name=">>pictureBoxDisplay.ZOrder" xml:space="preserve">
|
||||
<value>9</value>
|
||||
</data>
|
||||
<data name="buttonBedrock.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Flat</value>
|
||||
</data>
|
||||
<data name=">>labelName.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
<data name="buttonBedrock.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Segoe UI, 12pt</value>
|
||||
</data>
|
||||
<data name="buttonInstallPs3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>657, 338</value>
|
||||
<data name="buttonBedrock.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>388, 293</value>
|
||||
</data>
|
||||
<data name="buttonExport.Text" xml:space="preserve">
|
||||
<value>Get</value>
|
||||
<data name="buttonBedrock.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>152, 30</value>
|
||||
</data>
|
||||
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
|
||||
<value>760, 418</value>
|
||||
<data name="buttonBedrock.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>12</value>
|
||||
</data>
|
||||
<data name=">>$this.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Forms.MetroForm, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
<data name="buttonBedrock.Text" xml:space="preserve">
|
||||
<value>Convert to Bedrock</value>
|
||||
</data>
|
||||
<data name="buttonInstallWiiU.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>9</value>
|
||||
<data name=">>buttonBedrock.Name" xml:space="preserve">
|
||||
<value>buttonBedrock</value>
|
||||
</data>
|
||||
<data name=">>labelDesc.Name" xml:space="preserve">
|
||||
<value>labelDesc</value>
|
||||
</data>
|
||||
<data name="buttonDirect.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name=">>buttonDelete.Type" xml:space="preserve">
|
||||
<data name=">>buttonBedrock.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>buttonExport.Name" xml:space="preserve">
|
||||
<value>buttonExport</value>
|
||||
<data name=">>buttonBedrock.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name="pictureBoxDisplay.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
<data name=">>buttonBedrock.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
|
||||
<value>6, 13</value>
|
||||
</data>
|
||||
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
|
||||
<value>760, 418</value>
|
||||
</data>
|
||||
<data name="$this.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||
<value>NoControl</value>
|
||||
</data>
|
||||
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
|
||||
<value>CenterParent</value>
|
||||
</data>
|
||||
<data name=">>$this.Name" xml:space="preserve">
|
||||
<value>pckCenterOpen</value>
|
||||
</data>
|
||||
<data name=">>$this.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Forms.MetroForm, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
</root>
|
||||
14
PCK-Studio/MainForm.Designer.cs
generated
14
PCK-Studio/MainForm.Designer.cs
generated
@@ -124,7 +124,7 @@
|
||||
this.labelVersion = new MetroFramework.Controls.MetroLabel();
|
||||
this.ChangelogRichTextBox = new System.Windows.Forms.RichTextBox();
|
||||
this.editorTab = new MetroFramework.Controls.MetroTabPage();
|
||||
this.metroLabel3 = new MetroFramework.Controls.MetroLabel();
|
||||
this.pckFileLabel = new MetroFramework.Controls.MetroLabel();
|
||||
this.labelImageSize = new MetroFramework.Controls.MetroLabel();
|
||||
this.fileEntryCountLabel = new MetroFramework.Controls.MetroLabel();
|
||||
this.PropertiesTabControl = new MetroFramework.Controls.MetroTabControl();
|
||||
@@ -834,7 +834,7 @@
|
||||
//
|
||||
this.editorTab.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(18)))), ((int)(((byte)(18)))), ((int)(((byte)(18)))));
|
||||
resources.ApplyResources(this.editorTab, "editorTab");
|
||||
this.editorTab.Controls.Add(this.metroLabel3);
|
||||
this.editorTab.Controls.Add(this.pckFileLabel);
|
||||
this.editorTab.Controls.Add(this.labelImageSize);
|
||||
this.editorTab.Controls.Add(this.fileEntryCountLabel);
|
||||
this.editorTab.Controls.Add(this.PropertiesTabControl);
|
||||
@@ -853,11 +853,11 @@
|
||||
this.editorTab.VerticalScrollbarHighlightOnWheel = false;
|
||||
this.editorTab.VerticalScrollbarSize = 0;
|
||||
//
|
||||
// metroLabel3
|
||||
// pckFileLabel
|
||||
//
|
||||
resources.ApplyResources(this.metroLabel3, "metroLabel3");
|
||||
this.metroLabel3.Name = "metroLabel3";
|
||||
this.metroLabel3.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
resources.ApplyResources(this.pckFileLabel, "pckFileLabel");
|
||||
this.pckFileLabel.Name = "pckFileLabel";
|
||||
this.pckFileLabel.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
//
|
||||
// labelImageSize
|
||||
//
|
||||
@@ -1184,7 +1184,7 @@
|
||||
private System.Windows.Forms.ToolStripMenuItem CreateSkinsPCKToolStripMenuItem1;
|
||||
private System.Windows.Forms.ToolStripMenuItem editAllEntriesToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem addFileToolStripMenuItem;
|
||||
private MetroFramework.Controls.MetroLabel metroLabel3;
|
||||
private MetroFramework.Controls.MetroLabel pckFileLabel;
|
||||
private System.Windows.Forms.ToolStripMenuItem behavioursbinToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem entityMaterialsbinToolStripMenuItem;
|
||||
}
|
||||
|
||||
@@ -8,10 +8,11 @@ using System.Drawing.Drawing2D;
|
||||
using System.Diagnostics;
|
||||
using System.Drawing.Imaging;
|
||||
|
||||
using OMI.Formats.Pck;
|
||||
using OMI.Formats.GameRule;
|
||||
using OMI.Workers.GameRule;
|
||||
using OMI.Workers.Pck;
|
||||
using OMI.Formats.Languages;
|
||||
using OMI.Workers.Pck;
|
||||
using OMI.Workers.GameRule;
|
||||
using OMI.Workers.Language;
|
||||
|
||||
using PckStudio.Properties;
|
||||
@@ -20,13 +21,11 @@ using PckStudio.Classes.Utils;
|
||||
using PckStudio.Classes.Utils.ARC;
|
||||
using PckStudio.Classes._3ds.Utils;
|
||||
using PckStudio.Forms;
|
||||
using PckStudio.Forms.Utilities.Skins;
|
||||
using PckStudio.Forms.Utilities;
|
||||
using PckStudio.Forms.Editor;
|
||||
using PckStudio.Forms.Additional_Popups.Animation;
|
||||
using PckStudio.Forms.Additional_Popups;
|
||||
using PckStudio.Classes.Misc;
|
||||
using OMI.Formats.Pck;
|
||||
using PckStudio.Classes.IO.PCK;
|
||||
using PckStudio.Classes.FromLCE;
|
||||
|
||||
@@ -115,8 +114,7 @@ namespace PckStudio
|
||||
private void Form1_Load(object sender, EventArgs e)
|
||||
{
|
||||
RPC.Initialize();
|
||||
if (currentPCK == null)
|
||||
RPC.SetPresence("An Open Source .PCK File Editor", "Program by PhoenixARC");
|
||||
UpdateRPC();
|
||||
|
||||
skinToolStripMenuItem1.Click += (sender, e) => setFileType_Click(sender, e, PckFile.FileData.FileType.SkinFile);
|
||||
capeToolStripMenuItem.Click += (sender, e) => setFileType_Click(sender, e, PckFile.FileData.FileType.CapeFile);
|
||||
@@ -166,30 +164,25 @@ namespace PckStudio
|
||||
isTemplateFile = false;
|
||||
saveLocation = filePath;
|
||||
var reader = new PckFileReader(LittleEndianCheckBox.Checked ? OMI.Endianness.LittleEndian : OMI.Endianness.BigEndian);
|
||||
PckFile pck = reader.FromFile(filePath);
|
||||
|
||||
metroLabel3.Text = "Current PCK File: " + Path.GetFileName(filePath);
|
||||
// using (var fileStream = File.OpenRead(filePath))
|
||||
//{
|
||||
// try
|
||||
// {
|
||||
// }
|
||||
// catch (OverflowException ex)
|
||||
// {
|
||||
// MessageBox.Show("Failed to open pck\n" +
|
||||
// $"Try {(LittleEndianCheckBox.Checked ? "unchecking" : "checking")} the 'Open/Save as Vita/PS4 pck' check box in the upper right corner.",
|
||||
// "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
// Debug.WriteLine(ex.Message);
|
||||
// }
|
||||
// catch (Exception ex)
|
||||
// {
|
||||
// MessageBox.Show("Failed to open pck\n" +
|
||||
// "If this is an Audio/Music Cues pck, please use the specialized editor while inside of the parent pck.",
|
||||
// "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
// Debug.WriteLine("Can't open pck file of type: " + pck?.type.ToString());
|
||||
// }
|
||||
//}
|
||||
return pck;
|
||||
try
|
||||
{
|
||||
PckFile pck = reader.FromFile(filePath);
|
||||
return pck;
|
||||
}
|
||||
catch (OverflowException ex)
|
||||
{
|
||||
MessageBox.Show("Failed to open pck\n" +
|
||||
$"Try {(LittleEndianCheckBox.Checked ? "unchecking" : "checking")} the 'Open/Save as Vita/PS4 pck' check box in the upper right corner.",
|
||||
"Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
Debug.WriteLine(ex.Message);
|
||||
}
|
||||
catch
|
||||
{
|
||||
MessageBox.Show("Failed to open pck\n" +
|
||||
"If this is an Audio/Music Cues pck, please use the specialized editor while inside of the parent pck.",
|
||||
"Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
private void CheckForPasswordAndRemove()
|
||||
@@ -203,7 +196,11 @@ namespace PckStudio
|
||||
private void LoadEditorTab()
|
||||
{
|
||||
fileEntryCountLabel.Text = "Files:" + currentPCK.Files.Count;
|
||||
treeViewMain.Enabled = treeMeta.Enabled = true;
|
||||
if (isTemplateFile)
|
||||
pckFileLabel.Text = "Unsaved File!";
|
||||
else
|
||||
pckFileLabel.Text = "Current PCK File: " + Path.GetFileName(saveLocation);
|
||||
treeViewMain.Enabled = treeMeta.Enabled = true;
|
||||
closeToolStripMenuItem.Visible = true;
|
||||
saveToolStripMenuItem.Enabled = true;
|
||||
saveToolStripMenuItem1.Enabled = true;
|
||||
@@ -238,7 +235,8 @@ namespace PckStudio
|
||||
convertToBedrockToolStripMenuItem.Enabled = false;
|
||||
addCustomPackImageToolStripMenuItem.Enabled = false;
|
||||
fileEntryCountLabel.Text = string.Empty;
|
||||
UpdateRPC();
|
||||
pckFileLabel.Text = string.Empty;
|
||||
UpdateRPC();
|
||||
|
||||
}
|
||||
|
||||
@@ -387,7 +385,7 @@ namespace PckStudio
|
||||
{
|
||||
if (currentPCK == null)
|
||||
{
|
||||
RPC.SetPresence("An Open Source .PCK File Editor", "Program by PhoenixARC");
|
||||
RPC.SetPresence("An Open Source .PCK File Editor");
|
||||
return;
|
||||
};
|
||||
|
||||
@@ -395,11 +393,11 @@ namespace PckStudio
|
||||
locfile.HasLocEntry("IDS_DISPLAY_NAME") &&
|
||||
locfile.Languages.Contains("en-EN"))
|
||||
{
|
||||
RPC.SetPresence($"Editing a Pack: {locfile.GetLocEntry("IDS_DISPLAY_NAME", "en-EN")}", "Program by PhoenixARC");
|
||||
RPC.SetPresence($"Editing a Pack: {locfile.GetLocEntry("IDS_DISPLAY_NAME", "en-EN")}");
|
||||
return;
|
||||
}
|
||||
// default
|
||||
RPC.SetPresence("An Open Source .PCK File Editor", "Program by PhoenixARC");
|
||||
RPC.SetPresence("An Open Source .PCK File Editor");
|
||||
}
|
||||
|
||||
private void HandleAudioFile(PckFile.FileData file)
|
||||
@@ -450,7 +448,7 @@ namespace PckStudio
|
||||
using (var ms = new MemoryStream(file.Data))
|
||||
{
|
||||
var texture = Image.FromStream(ms);
|
||||
SkinPreview frm = new SkinPreview(texture, file.Properties.GetPropertyValue("ANIM", s => new SkinANIM(s)));
|
||||
SkinPreview frm = new SkinPreview(texture, file.Properties.GetPropertyValue("ANIM", SkinANIM.FromString));
|
||||
frm.ShowDialog(this);
|
||||
frm.Dispose();
|
||||
}
|
||||
@@ -487,7 +485,7 @@ namespace PckStudio
|
||||
buttonEdit.Visible = true;
|
||||
}
|
||||
else if (file.Properties.HasProperty("ANIM") &&
|
||||
file.Properties.GetPropertyValue("ANIM", s => new SkinANIM(s)) == (ANIM_EFFECTS.RESOLUTION_64x64 | ANIM_EFFECTS.SLIM_MODEL))
|
||||
file.Properties.GetPropertyValue("ANIM", s => SkinANIM.FromString(s) == (ANIM_EFFECTS.RESOLUTION_64x64 | ANIM_EFFECTS.SLIM_MODEL)))
|
||||
{
|
||||
buttonEdit.Text = "View Skin";
|
||||
buttonEdit.Visible = true;
|
||||
@@ -842,7 +840,7 @@ namespace PckStudio
|
||||
audioPck.AddCategory(PCKAudioFile.AudioCategory.EAudioType.Overworld);
|
||||
audioPck.AddCategory(PCKAudioFile.AudioCategory.EAudioType.Nether);
|
||||
audioPck.AddCategory(PCKAudioFile.AudioCategory.EAudioType.End);
|
||||
PckFile.FileData pckFileData = currentPCK.CreateNew("audio.pck", PckFile.FileData.FileType.AudioFile);
|
||||
PckFile.FileData pckFileData = currentPCK.CreateNewFile("audio.pck", PckFile.FileData.FileType.AudioFile);
|
||||
using (var stream = new MemoryStream())
|
||||
{
|
||||
PCKAudioFileWriter.Write(stream, audioPck, isLittle);
|
||||
@@ -870,28 +868,37 @@ namespace PckStudio
|
||||
|
||||
private void createAnimatedTextureToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
using (var ofd = new OpenFileDialog())
|
||||
using var ofd = new OpenFileDialog()
|
||||
{
|
||||
ofd.Filter = "PNG Files | *.png";
|
||||
ofd.Title = "Select a PNG File";
|
||||
if (ofd.ShowDialog() == DialogResult.OK)
|
||||
Filter = "PNG Files | *.png",
|
||||
Title = "Select a PNG File",
|
||||
};
|
||||
if (ofd.ShowDialog() != DialogResult.OK)
|
||||
return;
|
||||
|
||||
using ChangeTile diag = new ChangeTile();
|
||||
if (diag.ShowDialog(this) != DialogResult.OK)
|
||||
return;
|
||||
|
||||
using Image img = new Bitmap(ofd.FileName);
|
||||
var file = currentPCK.CreateNewFile(
|
||||
$"res/textures/{AnimationResources.GetAnimationSection(diag.IsItem)}/{diag.SelectedTile}.png",
|
||||
PckFile.FileData.FileType.TextureFile,
|
||||
() =>
|
||||
{
|
||||
using ChangeTile diag = new ChangeTile();
|
||||
if (diag.ShowDialog(this) == DialogResult.OK)
|
||||
{
|
||||
using Image img = new Bitmap(ofd.FileName);
|
||||
var file = AnimationUtil.CreateNewAnimationFile(img, diag.SelectedTile, diag.IsItem);
|
||||
using AnimationEditor animationEditor = new AnimationEditor(file);
|
||||
if (animationEditor.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
file.Filename = animationEditor.TileName;
|
||||
currentPCK.Files.Add(file);
|
||||
ReloadMetaTreeView();
|
||||
BuildMainTreeView();
|
||||
wasModified = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
using var stream = new MemoryStream();
|
||||
img.Save(stream, ImageFormat.Png);
|
||||
return stream.ToArray();
|
||||
});
|
||||
file.Properties.Add(("ANIM", string.Empty));
|
||||
|
||||
using AnimationEditor animationEditor = new AnimationEditor(file);
|
||||
if (animationEditor.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
file.Filename = animationEditor.TileName;
|
||||
ReloadMetaTreeView();
|
||||
BuildMainTreeView();
|
||||
wasModified = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -950,21 +957,21 @@ namespace PckStudio
|
||||
if (parent_file.Filetype is PckFile.FileData.FileType.TexturePackInfoFile || parent_file.Filetype is PckFile.FileData.FileType.SkinDataFile)
|
||||
{
|
||||
Console.WriteLine("Rebuilding " + parent_file.Filename);
|
||||
PckFile newPCKFile = new PckFile(3);
|
||||
PckFile newPCKFile = new PckFile(3)
|
||||
{
|
||||
HasVerionString = parent_file.Filetype is PckFile.FileData.FileType.SkinDataFile
|
||||
};
|
||||
|
||||
foreach (TreeNode node in GetAllChildNodes(parent.Nodes))
|
||||
{
|
||||
if (node.Tag is PckFile.FileData node_file)
|
||||
{
|
||||
PckFile.FileData new_file = newPCKFile.CreateNew(node_file.Filename, node_file.Filetype);
|
||||
PckFile.FileData new_file = newPCKFile.CreateNewFile(node_file.Filename, node_file.Filetype);
|
||||
foreach (var prop in node_file.Properties) new_file.Properties.Add(prop);
|
||||
new_file.SetData(node_file.Data);
|
||||
}
|
||||
}
|
||||
|
||||
// Bool to add the XMLVersion property
|
||||
bool isSkinsPCK = parent_file.Filetype is PckFile.FileData.FileType.SkinDataFile;
|
||||
|
||||
using (MemoryStream ms = new MemoryStream())
|
||||
{
|
||||
var writer = new PckFileWriter(newPCKFile, LittleEndianCheckBox.Checked ? OMI.Endianness.LittleEndian : OMI.Endianness.BigEndian);
|
||||
@@ -1008,9 +1015,9 @@ namespace PckStudio
|
||||
try
|
||||
{
|
||||
using ANIMEditor diag = new ANIMEditor(property.Item2);
|
||||
if (diag.ShowDialog(this) == DialogResult.OK && diag.saved)
|
||||
if (diag.ShowDialog(this) == DialogResult.OK)
|
||||
{
|
||||
file.Properties[i] = ("ANIM", diag.outANIM);
|
||||
file.Properties[i] = ("ANIM", diag.ResultAnim.ToString());
|
||||
if (IsSubPCKNode(treeViewMain.SelectedNode.FullPath))
|
||||
RebuildSubPCK(treeViewMain.SelectedNode);
|
||||
ReloadMetaTreeView();
|
||||
@@ -1021,7 +1028,7 @@ namespace PckStudio
|
||||
catch (Exception ex)
|
||||
{
|
||||
Debug.WriteLine(ex.Message);
|
||||
MessageBox.Show("Failed to parse ANIM value, aborting to normal functionality. Please make sure the value only includes hexadecimal characters (0-9,A-F) and has no more than 8 characters. It can have an optional prefix of \"0x\".");
|
||||
MessageBox.Show("Failed to parse ANIM value, aborting to normal functionality. Please make sure the value only includes hexadecimal characters (0-9,A-F) and has no more than 8 characters.");
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -1073,21 +1080,19 @@ namespace PckStudio
|
||||
|
||||
// Creates new empty file entry
|
||||
PckFile.FileData mf = new PckFile.FileData(string.Empty, mfO.Filetype);
|
||||
mf.SetData(mfO.Data); // adds file data to minefile
|
||||
mf.SetData(mfO.Data);
|
||||
string dirName = Path.GetDirectoryName(mfO.Filename);
|
||||
|
||||
int clone_number = 0;
|
||||
string prev_clone_str = "_clone1";
|
||||
string nameWithoutExt = Path.GetFileNameWithoutExtension(mfO.Filename);
|
||||
string newFileName = mfO.Filename;
|
||||
do // Checks for existing clones and names it accordingly
|
||||
do
|
||||
{
|
||||
clone_number++;
|
||||
string clone_str = "_clone" + clone_number.ToString();
|
||||
bool isClone = nameWithoutExt.Contains("_clone");
|
||||
if (isClone) newFileName = nameWithoutExt.Remove(nameWithoutExt.Length - 7) + clone_str + Path.GetExtension(mfO.Filename);
|
||||
else newFileName = nameWithoutExt + clone_str + Path.GetExtension(mfO.Filename);
|
||||
prev_clone_str = clone_str;
|
||||
}
|
||||
while (currentPCK.HasFile(dirName + (string.IsNullOrEmpty(dirName) ? "" : "/") + newFileName, mf.Filetype));
|
||||
|
||||
@@ -1208,23 +1213,26 @@ namespace PckStudio
|
||||
private PckFile InitializePack(int packId, int packVersion, string packName, bool createSkinsPCK)
|
||||
{
|
||||
var newPck = new PckFile(3);
|
||||
var zeroFile = newPck.CreateNew("0", PckFile.FileData.FileType.InfoFile);
|
||||
|
||||
var zeroFile = newPck.CreateNewFile("0", PckFile.FileData.FileType.InfoFile);
|
||||
zeroFile.Properties.Add(("PACKID", packId.ToString()));
|
||||
zeroFile.Properties.Add(("PACKVERSION", packVersion.ToString()));
|
||||
var loc = newPck.CreateNew("localisation.loc", PckFile.FileData.FileType.LocalisationFile);
|
||||
var locFile = new LOCFile();
|
||||
locFile.InitializeDefault(packName);
|
||||
using (var stream = new MemoryStream())
|
||||
|
||||
var loc = newPck.CreateNewFile("localisation.loc", PckFile.FileData.FileType.LocalisationFile, () =>
|
||||
{
|
||||
LOCFileWriter.Write(stream, locFile);
|
||||
loc.SetData(stream.ToArray());
|
||||
}
|
||||
var locFile = new LOCFile();
|
||||
locFile.InitializeDefault(packName);
|
||||
using var stream = new MemoryStream();
|
||||
var writer = new LOCFileWriter(locFile, 2);
|
||||
writer.WriteToStream(stream);
|
||||
return stream.ToArray();
|
||||
});
|
||||
|
||||
if (createSkinsPCK)
|
||||
{
|
||||
PckFile.FileData skinsPCKFile = newPck.CreateNew("Skins.pck", PckFile.FileData.FileType.SkinDataFile);
|
||||
using (var stream = new MemoryStream())
|
||||
{
|
||||
PckFile.FileData skinsPCKFile = newPck.CreateNewFile("Skins.pck", PckFile.FileData.FileType.SkinDataFile, () =>
|
||||
{
|
||||
using var stream = new MemoryStream();
|
||||
var writer = new PckFileWriter(new PckFile(3)
|
||||
{
|
||||
HasVerionString = true
|
||||
@@ -1233,8 +1241,8 @@ namespace PckStudio
|
||||
? OMI.Endianness.LittleEndian
|
||||
: OMI.Endianness.BigEndian);
|
||||
writer.WriteToStream(stream);
|
||||
skinsPCKFile.SetData(stream.ToArray());
|
||||
}
|
||||
return stream.ToArray();
|
||||
});
|
||||
}
|
||||
return newPck;
|
||||
}
|
||||
@@ -1242,7 +1250,17 @@ namespace PckStudio
|
||||
private PckFile InitializeTexturePack(int packId, int packVersion, string packName, string res, bool createSkinsPCK = false)
|
||||
{
|
||||
var newPck = InitializePack(packId, packVersion, packName, createSkinsPCK);
|
||||
var texturepackInfo = newPck.CreateNew($"{res}/{res}Info.pck", PckFile.FileData.FileType.TexturePackInfoFile);
|
||||
var texturepackInfo = newPck.CreateNewFile($"{res}/{res}Info.pck", PckFile.FileData.FileType.TexturePackInfoFile,
|
||||
() =>
|
||||
{
|
||||
using var ms = new MemoryStream();
|
||||
var writer = new PckFileWriter(new PckFile(3),
|
||||
LittleEndianCheckBox.Checked
|
||||
? OMI.Endianness.LittleEndian
|
||||
: OMI.Endianness.BigEndian);
|
||||
writer.WriteToStream(ms);
|
||||
return ms.ToArray();
|
||||
});
|
||||
texturepackInfo.Properties.Add(("PACKID", "0"));
|
||||
texturepackInfo.Properties.Add(("DATAPATH", $"{res}Data.pck"));
|
||||
|
||||
@@ -1250,34 +1268,25 @@ namespace PckStudio
|
||||
|
||||
using (var ms = new MemoryStream())
|
||||
{
|
||||
var icon = infoPCK.CreateNew("icon.png", PckFile.FileData.FileType.TextureFile);
|
||||
var icon = infoPCK.CreateNewFile("icon.png", PckFile.FileData.FileType.TextureFile);
|
||||
Resources.TexturePackIcon.Save(ms, ImageFormat.Png);
|
||||
icon.SetData(ms.ToArray());
|
||||
}
|
||||
|
||||
using (var ms = new MemoryStream())
|
||||
{
|
||||
var comparison = infoPCK.CreateNew("comparison.png", PckFile.FileData.FileType.TextureFile);
|
||||
var comparison = infoPCK.CreateNewFile("comparison.png", PckFile.FileData.FileType.TextureFile);
|
||||
Resources.Comparison.Save(ms, ImageFormat.Png);
|
||||
comparison.SetData(ms.ToArray());
|
||||
}
|
||||
|
||||
using (var ms = new MemoryStream())
|
||||
{
|
||||
var writer = new PckFileWriter(new PckFile(3),
|
||||
LittleEndianCheckBox.Checked
|
||||
? OMI.Endianness.LittleEndian
|
||||
: OMI.Endianness.BigEndian);
|
||||
writer.WriteToStream(ms);
|
||||
texturepackInfo.SetData(ms.ToArray());
|
||||
}
|
||||
return newPck;
|
||||
}
|
||||
|
||||
private PckFile InitializeMashUpPack(int packId, int packVersion, string packName, string res)
|
||||
{
|
||||
var newPck = InitializeTexturePack(packId, packVersion, packName, res, true);
|
||||
var gameRuleFile = newPck.CreateNew("GameRules.grf", PckFile.FileData.FileType.GameRulesFile);
|
||||
var gameRuleFile = newPck.CreateNewFile("GameRules.grf", PckFile.FileData.FileType.GameRulesFile);
|
||||
var grfFile = new GameRuleFile();
|
||||
grfFile.AddRule("MapOptions",
|
||||
new KeyValuePair<string, string>("seed", "0"),
|
||||
@@ -1319,10 +1328,10 @@ namespace PckStudio
|
||||
private void texturePackToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
checkSaveState();
|
||||
CreateTexturePack packPrompt = new CreateTexturePack("");
|
||||
CreateTexturePack packPrompt = new CreateTexturePack();
|
||||
if (packPrompt.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
currentPCK = InitializeTexturePack(new Random().Next(8000, int.MaxValue), 0, packPrompt.packName, packPrompt.packRes);
|
||||
currentPCK = InitializeTexturePack(new Random().Next(8000, int.MaxValue), 0, packPrompt.PackName, packPrompt.PackRes);
|
||||
isTemplateFile = true;
|
||||
wasModified = true;
|
||||
LoadEditorTab();
|
||||
@@ -1332,10 +1341,10 @@ namespace PckStudio
|
||||
private void mashUpPackToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
checkSaveState();
|
||||
CreateTexturePack packPrompt = new CreateTexturePack("");
|
||||
CreateTexturePack packPrompt = new CreateTexturePack();
|
||||
if (packPrompt.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
currentPCK = InitializeMashUpPack(new Random().Next(8000, int.MaxValue), 0, packPrompt.packName, packPrompt.packRes);
|
||||
currentPCK = InitializeMashUpPack(new Random().Next(8000, int.MaxValue), 0, packPrompt.PackName, packPrompt.PackRes);
|
||||
isTemplateFile = true;
|
||||
wasModified = false;
|
||||
LoadEditorTab();
|
||||
@@ -1581,7 +1590,8 @@ namespace PckStudio
|
||||
{
|
||||
using (var stream = new MemoryStream())
|
||||
{
|
||||
LOCFileWriter.Write(stream, locFile);
|
||||
var writer = new LOCFileWriter(locFile, 2);
|
||||
writer.WriteToStream(stream);
|
||||
locdata.SetData(stream.ToArray());
|
||||
}
|
||||
return true;
|
||||
@@ -1605,7 +1615,7 @@ namespace PckStudio
|
||||
{
|
||||
string skinNameImport = Path.GetFileName(contents.FileName);
|
||||
byte[] data = File.ReadAllBytes(contents.FileName);
|
||||
PckFile.FileData mfNew = currentPCK.CreateNew(skinNameImport, PckFile.FileData.FileType.SkinFile);
|
||||
PckFile.FileData mfNew = currentPCK.CreateNewFile(skinNameImport, PckFile.FileData.FileType.SkinFile);
|
||||
mfNew.SetData(data);
|
||||
string propertyFile = Path.GetFileNameWithoutExtension(contents.FileName) + ".txt";
|
||||
if (File.Exists(propertyFile))
|
||||
@@ -1699,31 +1709,6 @@ namespace PckStudio
|
||||
}
|
||||
}
|
||||
|
||||
public static Image ResizeImage(Image image, int width, int height)
|
||||
{
|
||||
var destRect = new Rectangle(0, 0, width, height);
|
||||
var destImage = new Bitmap(width, height);
|
||||
|
||||
destImage.SetResolution(image.HorizontalResolution, image.VerticalResolution);
|
||||
|
||||
using (var graphics = Graphics.FromImage(destImage))
|
||||
{
|
||||
graphics.CompositingMode = CompositingMode.SourceCopy;
|
||||
graphics.CompositingQuality = CompositingQuality.HighQuality;
|
||||
graphics.InterpolationMode = InterpolationMode.NearestNeighbor;
|
||||
graphics.SmoothingMode = SmoothingMode.HighQuality;
|
||||
graphics.PixelOffsetMode = PixelOffsetMode.HighQuality;
|
||||
|
||||
using (var wrapMode = new ImageAttributes())
|
||||
{
|
||||
wrapMode.SetWrapMode(WrapMode.TileFlipXY);
|
||||
graphics.DrawImage(image, destRect, 0, 0, image.Width, image.Height, GraphicsUnit.Pixel, wrapMode);
|
||||
}
|
||||
}
|
||||
|
||||
return destImage;
|
||||
}
|
||||
|
||||
private void openToolStripMenuItem1_Click(object sender, EventArgs e)
|
||||
{
|
||||
DateTime Begin = DateTime.Now;
|
||||
@@ -1991,7 +1976,7 @@ namespace PckStudio
|
||||
renamePrompt.TextLabel.Text = "Path";
|
||||
if (renamePrompt.ShowDialog() == DialogResult.OK && !string.IsNullOrEmpty(renamePrompt.NewText))
|
||||
{
|
||||
var file = currentPCK.CreateNew(renamePrompt.NewText, PckFile.FileData.FileType.TextureFile);
|
||||
var file = currentPCK.CreateNewFile(renamePrompt.NewText, PckFile.FileData.FileType.TextureFile);
|
||||
file.SetData(File.ReadAllBytes(fileDialog.FileName));
|
||||
BuildMainTreeView();
|
||||
wasModified = true;
|
||||
@@ -2064,14 +2049,13 @@ namespace PckStudio
|
||||
|
||||
private void colourscolToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
PckFile.FileData NewColorFile;
|
||||
if (currentPCK.TryGetFile("colours.col", PckFile.FileData.FileType.ColourTableFile, out NewColorFile))
|
||||
if (currentPCK.TryGetFile("colours.col", PckFile.FileData.FileType.ColourTableFile, out _))
|
||||
{
|
||||
MessageBox.Show("A color table file already exists in this PCK and a new one cannot be created.", "Operation aborted");
|
||||
return;
|
||||
}
|
||||
NewColorFile = currentPCK.CreateNew("colours.col", PckFile.FileData.FileType.ColourTableFile);
|
||||
NewColorFile.SetData(Resources.tu69colours);
|
||||
var newColorFile = currentPCK.CreateNewFile("colours.col", PckFile.FileData.FileType.ColourTableFile);
|
||||
newColorFile.SetData(Resources.tu69colours);
|
||||
BuildMainTreeView();
|
||||
}
|
||||
|
||||
@@ -2177,19 +2161,14 @@ namespace PckStudio
|
||||
return;
|
||||
}
|
||||
|
||||
PckFile.FileData newSkinsPCKFile = currentPCK.CreateNew("Skins.pck", PckFile.FileData.FileType.SkinDataFile);
|
||||
using (var stream = new MemoryStream())
|
||||
currentPCK.CreateNewFile("Skins.pck", PckFile.FileData.FileType.SkinDataFile, () =>
|
||||
{
|
||||
var writer = new PckFileWriter(new PckFile(3)
|
||||
{
|
||||
HasVerionString = true
|
||||
},
|
||||
LittleEndianCheckBox.Checked
|
||||
? OMI.Endianness.LittleEndian
|
||||
: OMI.Endianness.BigEndian);
|
||||
writer.WriteToStream(stream);
|
||||
newSkinsPCKFile.SetData(stream.ToArray());
|
||||
}
|
||||
using var stream = new MemoryStream();
|
||||
var writer = new PckFileWriter(new PckFile(3) { HasVerionString = true },
|
||||
LittleEndianCheckBox.Checked ? OMI.Endianness.LittleEndian : OMI.Endianness.BigEndian);
|
||||
writer.WriteToStream(stream);
|
||||
return stream.ToArray();
|
||||
});
|
||||
|
||||
BuildMainTreeView();
|
||||
|
||||
@@ -2238,7 +2217,7 @@ namespace PckStudio
|
||||
using AddFilePrompt diag = new AddFilePrompt("res/" + Path.GetFileName(ofd.FileName));
|
||||
if (diag.ShowDialog(this) == DialogResult.OK)
|
||||
{
|
||||
PckFile.FileData file = currentPCK.CreateNew(diag.filepath, (PckFile.FileData.FileType)diag.filetype);
|
||||
PckFile.FileData file = currentPCK.CreateNewFile(diag.Filepath, (PckFile.FileData.FileType)diag.Filetype);
|
||||
file.SetData(File.ReadAllBytes(ofd.FileName));
|
||||
|
||||
if (IsSubPCKNode(treeViewMain.SelectedNode.FullPath)) RebuildSubPCK(treeViewMain.SelectedNode);
|
||||
@@ -2253,27 +2232,24 @@ namespace PckStudio
|
||||
|
||||
private void behavioursbinToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
PckFile.FileData NewBehaviourFile;
|
||||
if (currentPCK.TryGetFile("behaviours.bin", PckFile.FileData.FileType.BehavioursFile, out NewBehaviourFile))
|
||||
if (currentPCK.TryGetFile("behaviours.bin", PckFile.FileData.FileType.BehavioursFile, out _))
|
||||
{
|
||||
MessageBox.Show("A behaviours file already exists in this PCK and a new one cannot be created.", "Operation aborted");
|
||||
return;
|
||||
}
|
||||
NewBehaviourFile = BehaviourUtil.CreateNewBehaviourFile();
|
||||
currentPCK.Files.Add(NewBehaviourFile);
|
||||
|
||||
currentPCK.CreateNewFile("behaviours.bin", PckFile.FileData.FileType.BehavioursFile, BehaviourResources.BehaviourFileInitializer);
|
||||
BuildMainTreeView();
|
||||
}
|
||||
|
||||
private void entityMaterialsbinToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
PckFile.FileData NewMaterialsFile;
|
||||
if (currentPCK.TryGetFile("entityMaterials.bin", PckFile.FileData.FileType.MaterialFile, out NewMaterialsFile))
|
||||
if (currentPCK.TryGetFile("entityMaterials.bin", PckFile.FileData.FileType.MaterialFile, out _))
|
||||
{
|
||||
MessageBox.Show("A behaviours file already exists in this PCK and a new one cannot be created.", "Operation aborted");
|
||||
return;
|
||||
}
|
||||
NewMaterialsFile = MaterialUtil.CreateNewMaterialsFile();
|
||||
currentPCK.Files.Add(NewMaterialsFile);
|
||||
currentPCK.CreateNewFile("entityMaterials.bin", PckFile.FileData.FileType.MaterialFile, MaterialResources.MaterialsFileInitializer);
|
||||
BuildMainTreeView();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -121,6 +121,29 @@
|
||||
<value>116, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="contextMenuPCKEntries.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>158, 224</value>
|
||||
</data>
|
||||
<data name=">>contextMenuPCKEntries.Name" xml:space="preserve">
|
||||
<value>contextMenuPCKEntries</value>
|
||||
</data>
|
||||
<data name=">>contextMenuPCKEntries.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="createToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xOdTWsmQAAAA3SURBVDhPY/j/
|
||||
/z9FGKsgGIsCKWSMTQ0QYxUE45FmALpiYvFwMgAbxqIYG8YqCMajBhCJ/zMAAPGwpV/Xje8RAAAAAElF
|
||||
TkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="createToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>157, 22</value>
|
||||
</data>
|
||||
<data name="createToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Create</value>
|
||||
</data>
|
||||
<data name="folderToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
@@ -209,19 +232,20 @@
|
||||
<data name="entityMaterialsbinToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>EntityMaterials.bin</value>
|
||||
</data>
|
||||
<data name="createToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<data name="importSkinsToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xOdTWsmQAAAA3SURBVDhPY/j/
|
||||
/z9FGKsgGIsCKWSMTQ0QYxUE45FmALpiYvFwMgAbxqIYG8YqCMajBhCJ/zMAAPGwpV/Xje8RAAAAAElF
|
||||
vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xOdTWsmQAAABzSURBVDhPpYzB
|
||||
DQAhCARp4hr3Txu254WTjYRb9cEmk/BgRjBVHTv85Twmgt77PcJEYIFrhIkAgWOEiSAGthEmgtbaD9fW
|
||||
mBgpB4xywCgFxiMf5YDdrq3l5wjEjKtzTARMNlydY2IGot2ureVnRjkQmZbICyCi7XU5cfqKAAAAAElF
|
||||
TkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="createToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<data name="importSkinsToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>157, 22</value>
|
||||
</data>
|
||||
<data name="createToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Create</value>
|
||||
<data name="importSkinsToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Import</value>
|
||||
</data>
|
||||
<data name="importSkinToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
@@ -275,20 +299,11 @@
|
||||
<data name="addFileToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Add File</value>
|
||||
</data>
|
||||
<data name="importSkinsToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xOdTWsmQAAABzSURBVDhPpYzB
|
||||
DQAhCARp4hr3Txu254WTjYRb9cEmk/BgRjBVHTv85Twmgt77PcJEYIFrhIkAgWOEiSAGthEmgtbaD9fW
|
||||
mBgpB4xywCgFxiMf5YDdrq3l5wjEjKtzTARMNlydY2IGot2ureVnRjkQmZbICyCi7XU5cfqKAAAAAElF
|
||||
TkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="importSkinsToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<data name="exportToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>157, 22</value>
|
||||
</data>
|
||||
<data name="importSkinsToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Import</value>
|
||||
<data name="exportToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Export</value>
|
||||
</data>
|
||||
<data name="as3DSTextureFileToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>186, 22</value>
|
||||
@@ -296,11 +311,11 @@
|
||||
<data name="as3DSTextureFileToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Export as 3DS Texture</value>
|
||||
</data>
|
||||
<data name="exportToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<data name="setFileTypeToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>157, 22</value>
|
||||
</data>
|
||||
<data name="exportToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Export</value>
|
||||
<data name="setFileTypeToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Set File Type</value>
|
||||
</data>
|
||||
<data name="skinToolStripMenuItem1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>222, 22</value>
|
||||
@@ -374,11 +389,11 @@
|
||||
<data name="entityMaterialsFileBINToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Entity Materials File (.BIN)</value>
|
||||
</data>
|
||||
<data name="setFileTypeToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<data name="miscFunctionsToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>157, 22</value>
|
||||
</data>
|
||||
<data name="setFileTypeToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Set File Type</value>
|
||||
<data name="miscFunctionsToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Misc. Functions</value>
|
||||
</data>
|
||||
<data name="generateMipMapTextureToolStripMenuItem1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>210, 22</value>
|
||||
@@ -398,12 +413,6 @@
|
||||
<data name="correctSkinDecimalsToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Correct Skin Decimals</value>
|
||||
</data>
|
||||
<data name="miscFunctionsToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>157, 22</value>
|
||||
</data>
|
||||
<data name="miscFunctionsToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Misc. Functions</value>
|
||||
</data>
|
||||
<data name="extractToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
@@ -469,15 +478,6 @@
|
||||
<data name="deleteFileToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Delete</value>
|
||||
</data>
|
||||
<data name="contextMenuPCKEntries.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>158, 224</value>
|
||||
</data>
|
||||
<data name=">>contextMenuPCKEntries.Name" xml:space="preserve">
|
||||
<value>contextMenuPCKEntries</value>
|
||||
</data>
|
||||
<data name=">>contextMenuPCKEntries.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<metadata name="menuStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
@@ -492,6 +492,84 @@
|
||||
<data name="menuStrip.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>None</value>
|
||||
</data>
|
||||
<data name="fileToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>37, 20</value>
|
||||
</data>
|
||||
<data name="fileToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>File</value>
|
||||
</data>
|
||||
<data name="editToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>39, 20</value>
|
||||
</data>
|
||||
<data name="editToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Edit</value>
|
||||
</data>
|
||||
<data name="helpToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>44, 20</value>
|
||||
</data>
|
||||
<data name="helpToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Help</value>
|
||||
</data>
|
||||
<data name="storeToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4yMfEgaZUAAAAuSURBVDhPY/j/
|
||||
/z9FGMYgFwwbA8gFcANARpEJho0B5AK4ASCjyATDyQAy8X8GAKAaUNpxMP6IAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="storeToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>63, 20</value>
|
||||
</data>
|
||||
<data name="storeToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>More</value>
|
||||
</data>
|
||||
<data name="miscToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>47, 20</value>
|
||||
</data>
|
||||
<data name="miscToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Misc.</value>
|
||||
</data>
|
||||
<data name="menuStrip.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>24, 44</value>
|
||||
</data>
|
||||
<data name="menuStrip.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>1016, 24</value>
|
||||
</data>
|
||||
<data name="menuStrip.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="menuStrip.Text" xml:space="preserve">
|
||||
<value>menuStrip1</value>
|
||||
</data>
|
||||
<data name=">>menuStrip.Name" xml:space="preserve">
|
||||
<value>menuStrip</value>
|
||||
</data>
|
||||
<data name=">>menuStrip.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.MenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>menuStrip.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>menuStrip.ZOrder" xml:space="preserve">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name="newToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4yMfEgaZUAAADuSURBVFhH7ZbB
|
||||
CsMgEERDbv5A/v83e2jNTmCKGdegJk0heHgUn7vrKBQyxRj/iivJPM9WMTWjc45wJeAwhAghVJEG1nkl
|
||||
XNkziLCvtteXphFCfQ08nOi+4kvTeFL1NfBQ/BLuefjS9NkAADOwPnpNX14UADBEaV4mNnkygN34Y/1v
|
||||
AgeWZXll9So2eTLAEVm9ik2a7g1Qgn9t9bvFV/4gAOZdHgB1RPeUEeAZAeBr0d4R4JIACuqI7ikjwDMD
|
||||
tDACNAfo/Sou0fQ9wGKvoQfO8i61W6SkTXi+XtLLgOwcFSna3It3c+LKO3HlfcRpBa3JBjU5E8DiAAAA
|
||||
AElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="newToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>217, 22</value>
|
||||
</data>
|
||||
<data name="newToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>New</value>
|
||||
</data>
|
||||
<data name="skinPackToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>151, 22</value>
|
||||
</data>
|
||||
@@ -510,23 +588,6 @@
|
||||
<data name="mashUpPackToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Mash-Up Pack</value>
|
||||
</data>
|
||||
<data name="newToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4yMfEgaZUAAADuSURBVFhH7ZbB
|
||||
CsMgEERDbv5A/v83e2jNTmCKGdegJk0heHgUn7vrKBQyxRj/iivJPM9WMTWjc45wJeAwhAghVJEG1nkl
|
||||
XNkziLCvtteXphFCfQ08nOi+4kvTeFL1NfBQ/BLuefjS9NkAADOwPnpNX14UADBEaV4mNnkygN34Y/1v
|
||||
AgeWZXll9So2eTLAEVm9ik2a7g1Qgn9t9bvFV/4gAOZdHgB1RPeUEeAZAeBr0d4R4JIACuqI7ikjwDMD
|
||||
tDACNAfo/Sou0fQ9wGKvoQfO8i61W6SkTXi+XtLLgOwcFSna3It3c+LKO3HlfcRpBa3JBjU5E8DiAAAA
|
||||
AElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="newToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>217, 22</value>
|
||||
</data>
|
||||
<data name="newToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>New</value>
|
||||
</data>
|
||||
<data name="openToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
@@ -611,12 +672,6 @@
|
||||
<data name="closeToolStripMenuItem.Visible" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<data name="fileToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>37, 20</value>
|
||||
</data>
|
||||
<data name="fileToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>File</value>
|
||||
</data>
|
||||
<data name="advancedMetaAddingToolStripMenuItem.Enabled" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
@@ -661,12 +716,6 @@
|
||||
<data name="convertToBedrockToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Convert to Bedrock</value>
|
||||
</data>
|
||||
<data name="editToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>39, 20</value>
|
||||
</data>
|
||||
<data name="editToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Edit</value>
|
||||
</data>
|
||||
<data name="programInfoToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAAtAAAALQCAYAAAC5V0ecAAAABGdBTUEAALGPC/xhBQAAazFJREFUeF7t
|
||||
@@ -1207,6 +1256,20 @@
|
||||
<data name="binkaConversionToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Binka Conversion</value>
|
||||
</data>
|
||||
<data name="videosToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAKdJREFUOE+1
|
||||
jzEKwzAQBNUEXKQIBOwifcgTUvkDbt2p9qP0Ev1E31FYkVXOx2FLRRYWi7NnTnZ/z/MxZPY7aguhbZlq
|
||||
myQafL+ubRINshCwnO0kFqi3HkpwWOf7DkC1RBfvx9slV4ElscqbxBiz9/4nwOBIQjCEUL7FswhwDYAp
|
||||
JVMiN0oYs/ILiCXRIGHOwVQBoiXsKSgjJdzaBMpQ0g3KEOoG++PcBx9PFJGNjU4vAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="videosToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>181, 22</value>
|
||||
</data>
|
||||
<data name="videosToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Tutorials</value>
|
||||
</data>
|
||||
<data name="howToMakeABasicSkinPackToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAACOAAAAaoCAYAAAAgNTafAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
|
||||
@@ -21892,20 +21955,6 @@
|
||||
<data name="howPCKsWorkToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>How PCKs work</value>
|
||||
</data>
|
||||
<data name="videosToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAKdJREFUOE+1
|
||||
jzEKwzAQBNUEXKQIBOwifcgTUvkDbt2p9qP0Ev1E31FYkVXOx2FLRRYWi7NnTnZ/z/MxZPY7aguhbZlq
|
||||
myQafL+ubRINshCwnO0kFqi3HkpwWOf7DkC1RBfvx9slV4ElscqbxBiz9/4nwOBIQjCEUL7FswhwDYAp
|
||||
JVMiN0oYs/ILiCXRIGHOwVQBoiXsKSgjJdzaBMpQ0g3KEOoG++PcBx9PFJGNjU4vAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="videosToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>181, 22</value>
|
||||
</data>
|
||||
<data name="videosToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Tutorials</value>
|
||||
</data>
|
||||
<data name="installationToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAABkAAAAZACAYAAAAhDI6nAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
@@ -23909,6 +23958,12 @@
|
||||
<data name="fAQToolStripMenuItem1.Text" xml:space="preserve">
|
||||
<value>FAQ</value>
|
||||
</data>
|
||||
<data name="donateToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>181, 22</value>
|
||||
</data>
|
||||
<data name="donateToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Buy a coffee</value>
|
||||
</data>
|
||||
<data name="toNobledezJackToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>253, 22</value>
|
||||
</data>
|
||||
@@ -23927,12 +23982,6 @@
|
||||
<data name="forMattNLContributorToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>For MattNL (Other Developer)</value>
|
||||
</data>
|
||||
<data name="donateToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>181, 22</value>
|
||||
</data>
|
||||
<data name="donateToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Buy a coffee</value>
|
||||
</data>
|
||||
<data name="settingsToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>181, 22</value>
|
||||
</data>
|
||||
@@ -25780,12 +25829,6 @@
|
||||
<data name="administrativeToolsToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Administrative Tools</value>
|
||||
</data>
|
||||
<data name="helpToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>44, 20</value>
|
||||
</data>
|
||||
<data name="helpToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Help</value>
|
||||
</data>
|
||||
<data name="openToolStripMenuItem1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAA+gAAAPoCAYAAABNo9TkAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
@@ -28483,19 +28526,6 @@
|
||||
<data name="joinDevelopmentDiscordToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Join Development Discord</value>
|
||||
</data>
|
||||
<data name="storeToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4yMfEgaZUAAAAuSURBVDhPY/j/
|
||||
/z9FGMYgFwwbA8gFcANARpEJho0B5AK4ASCjyATDyQAy8X8GAKAaUNpxMP6IAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="storeToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>63, 20</value>
|
||||
</data>
|
||||
<data name="storeToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>More</value>
|
||||
</data>
|
||||
<data name="addCustomPackImageToolStripMenuItem.Enabled" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
@@ -28505,39 +28535,18 @@
|
||||
<data name="addCustomPackImageToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Add Custom Pack Icon</value>
|
||||
</data>
|
||||
<data name="miscToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>47, 20</value>
|
||||
</data>
|
||||
<data name="miscToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Misc.</value>
|
||||
</data>
|
||||
<data name="menuStrip.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>24, 44</value>
|
||||
</data>
|
||||
<data name="menuStrip.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>1016, 24</value>
|
||||
</data>
|
||||
<data name="menuStrip.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="menuStrip.Text" xml:space="preserve">
|
||||
<value>menuStrip1</value>
|
||||
</data>
|
||||
<data name=">>menuStrip.Name" xml:space="preserve">
|
||||
<value>menuStrip</value>
|
||||
</data>
|
||||
<data name=">>menuStrip.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.MenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>menuStrip.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>menuStrip.ZOrder" xml:space="preserve">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<metadata name="contextMenuMetaTree.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>298, 17</value>
|
||||
</metadata>
|
||||
<data name="contextMenuMetaTree.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>182, 92</value>
|
||||
</data>
|
||||
<data name=">>contextMenuMetaTree.Name" xml:space="preserve">
|
||||
<value>contextMenuMetaTree</value>
|
||||
</data>
|
||||
<data name=">>contextMenuMetaTree.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="addEntryToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
@@ -28587,15 +28596,6 @@
|
||||
<data name="editAllEntriesToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Edit All Entries</value>
|
||||
</data>
|
||||
<data name="contextMenuMetaTree.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>182, 92</value>
|
||||
</data>
|
||||
<data name=">>contextMenuMetaTree.Name" xml:space="preserve">
|
||||
<value>contextMenuMetaTree</value>
|
||||
</data>
|
||||
<data name=">>contextMenuMetaTree.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="pictureBox2.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAAbYAAAB7CAYAAAAYCKWuAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
@@ -29282,6 +29282,129 @@
|
||||
<data name=">>pictureBox2.ZOrder" xml:space="preserve">
|
||||
<value>8</value>
|
||||
</data>
|
||||
<data name=">>openTab.Name" xml:space="preserve">
|
||||
<value>openTab</value>
|
||||
</data>
|
||||
<data name=">>openTab.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTabPage, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>openTab.Parent" xml:space="preserve">
|
||||
<value>tabControl</value>
|
||||
</data>
|
||||
<data name=">>openTab.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>editorTab.Name" xml:space="preserve">
|
||||
<value>editorTab</value>
|
||||
</data>
|
||||
<data name=">>editorTab.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTabPage, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>editorTab.Parent" xml:space="preserve">
|
||||
<value>tabControl</value>
|
||||
</data>
|
||||
<data name=">>editorTab.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="tabControl.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="tabControl.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>20, 30</value>
|
||||
</data>
|
||||
<data name="tabControl.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>0, 0, 0, 0</value>
|
||||
</data>
|
||||
<data name="tabControl.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>1024, 600</value>
|
||||
</data>
|
||||
<data name="tabControl.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>tabControl.Name" xml:space="preserve">
|
||||
<value>tabControl</value>
|
||||
</data>
|
||||
<data name=">>tabControl.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTabControl, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>tabControl.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>tabControl.ZOrder" xml:space="preserve">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name=">>pckOpen.Name" xml:space="preserve">
|
||||
<value>pckOpen</value>
|
||||
</data>
|
||||
<data name=">>pckOpen.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.PictureBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>pckOpen.Parent" xml:space="preserve">
|
||||
<value>openTab</value>
|
||||
</data>
|
||||
<data name=">>pckOpen.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name=">>label5.Name" xml:space="preserve">
|
||||
<value>label5</value>
|
||||
</data>
|
||||
<data name=">>label5.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>label5.Parent" xml:space="preserve">
|
||||
<value>openTab</value>
|
||||
</data>
|
||||
<data name=">>label5.ZOrder" xml:space="preserve">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name=">>labelVersion.Name" xml:space="preserve">
|
||||
<value>labelVersion</value>
|
||||
</data>
|
||||
<data name=">>labelVersion.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>labelVersion.Parent" xml:space="preserve">
|
||||
<value>openTab</value>
|
||||
</data>
|
||||
<data name=">>labelVersion.ZOrder" xml:space="preserve">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name=">>ChangelogRichTextBox.Name" xml:space="preserve">
|
||||
<value>ChangelogRichTextBox</value>
|
||||
</data>
|
||||
<data name=">>ChangelogRichTextBox.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.RichTextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>ChangelogRichTextBox.Parent" xml:space="preserve">
|
||||
<value>openTab</value>
|
||||
</data>
|
||||
<data name=">>ChangelogRichTextBox.ZOrder" xml:space="preserve">
|
||||
<value>5</value>
|
||||
</data>
|
||||
<data name="openTab.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>4, 38</value>
|
||||
</data>
|
||||
<data name="openTab.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>18, 30, 20, 5</value>
|
||||
</data>
|
||||
<data name="openTab.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>1016, 558</value>
|
||||
</data>
|
||||
<data name="openTab.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name=">>openTab.Name" xml:space="preserve">
|
||||
<value>openTab</value>
|
||||
</data>
|
||||
<data name=">>openTab.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTabPage, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>openTab.Parent" xml:space="preserve">
|
||||
<value>tabControl</value>
|
||||
</data>
|
||||
<data name=">>openTab.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="pckOpen.BackgroundImageLayout" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>None</value>
|
||||
</data>
|
||||
@@ -30392,55 +30515,139 @@
|
||||
<data name=">>ChangelogRichTextBox.ZOrder" xml:space="preserve">
|
||||
<value>5</value>
|
||||
</data>
|
||||
<data name="openTab.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>4, 38</value>
|
||||
</data>
|
||||
<data name="openTab.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>18, 30, 20, 5</value>
|
||||
</data>
|
||||
<data name="openTab.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>1016, 558</value>
|
||||
</data>
|
||||
<data name="openTab.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name=">>openTab.Name" xml:space="preserve">
|
||||
<value>openTab</value>
|
||||
</data>
|
||||
<data name=">>openTab.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTabPage, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>openTab.Parent" xml:space="preserve">
|
||||
<value>tabControl</value>
|
||||
</data>
|
||||
<data name=">>openTab.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<metadata name="label11.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<data name="editorTab.BackgroundImageLayout" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>None</value>
|
||||
</data>
|
||||
<data name="metroLabel3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>9, 28</value>
|
||||
</data>
|
||||
<data name="metroLabel3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>326, 19</value>
|
||||
</data>
|
||||
<data name="metroLabel3.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="metroLabel3.Text" xml:space="preserve">
|
||||
<data name=">>pckFileLabel.Name" xml:space="preserve">
|
||||
<value>pckFileLabel</value>
|
||||
</data>
|
||||
<data name=">>metroLabel3.Name" xml:space="preserve">
|
||||
<value>metroLabel3</value>
|
||||
</data>
|
||||
<data name=">>metroLabel3.Type" xml:space="preserve">
|
||||
<data name=">>pckFileLabel.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>metroLabel3.Parent" xml:space="preserve">
|
||||
<data name=">>pckFileLabel.Parent" xml:space="preserve">
|
||||
<value>editorTab</value>
|
||||
</data>
|
||||
<data name=">>metroLabel3.ZOrder" xml:space="preserve">
|
||||
<data name=">>pckFileLabel.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name=">>labelImageSize.Name" xml:space="preserve">
|
||||
<value>labelImageSize</value>
|
||||
</data>
|
||||
<data name=">>labelImageSize.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>labelImageSize.Parent" xml:space="preserve">
|
||||
<value>editorTab</value>
|
||||
</data>
|
||||
<data name=">>labelImageSize.ZOrder" xml:space="preserve">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name=">>fileEntryCountLabel.Name" xml:space="preserve">
|
||||
<value>fileEntryCountLabel</value>
|
||||
</data>
|
||||
<data name=">>fileEntryCountLabel.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>fileEntryCountLabel.Parent" xml:space="preserve">
|
||||
<value>editorTab</value>
|
||||
</data>
|
||||
<data name=">>fileEntryCountLabel.ZOrder" xml:space="preserve">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name=">>PropertiesTabControl.Name" xml:space="preserve">
|
||||
<value>PropertiesTabControl</value>
|
||||
</data>
|
||||
<data name=">>PropertiesTabControl.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTabControl, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>PropertiesTabControl.Parent" xml:space="preserve">
|
||||
<value>editorTab</value>
|
||||
</data>
|
||||
<data name=">>PropertiesTabControl.ZOrder" xml:space="preserve">
|
||||
<value>5</value>
|
||||
</data>
|
||||
<data name=">>label11.Name" xml:space="preserve">
|
||||
<value>label11</value>
|
||||
</data>
|
||||
<data name=">>label11.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>label11.Parent" xml:space="preserve">
|
||||
<value>editorTab</value>
|
||||
</data>
|
||||
<data name=">>label11.ZOrder" xml:space="preserve">
|
||||
<value>6</value>
|
||||
</data>
|
||||
<data name=">>treeViewMain.Name" xml:space="preserve">
|
||||
<value>treeViewMain</value>
|
||||
</data>
|
||||
<data name=">>treeViewMain.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TreeView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>treeViewMain.Parent" xml:space="preserve">
|
||||
<value>editorTab</value>
|
||||
</data>
|
||||
<data name=">>treeViewMain.ZOrder" xml:space="preserve">
|
||||
<value>7</value>
|
||||
</data>
|
||||
<data name=">>pictureBoxImagePreview.Name" xml:space="preserve">
|
||||
<value>pictureBoxImagePreview</value>
|
||||
</data>
|
||||
<data name=">>pictureBoxImagePreview.Type" xml:space="preserve">
|
||||
<value>PckStudio.PictureBoxWithInterpolationMode, PCK-Studio, Version=7.0.0.0, Culture=neutral, PublicKeyToken=null</value>
|
||||
</data>
|
||||
<data name=">>pictureBoxImagePreview.Parent" xml:space="preserve">
|
||||
<value>editorTab</value>
|
||||
</data>
|
||||
<data name=">>pictureBoxImagePreview.ZOrder" xml:space="preserve">
|
||||
<value>9</value>
|
||||
</data>
|
||||
<data name="editorTab.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>4, 38</value>
|
||||
</data>
|
||||
<data name="editorTab.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>5, 50, 5, 7</value>
|
||||
</data>
|
||||
<data name="editorTab.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>1016, 558</value>
|
||||
</data>
|
||||
<data name="editorTab.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>editorTab.Name" xml:space="preserve">
|
||||
<value>editorTab</value>
|
||||
</data>
|
||||
<data name=">>editorTab.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTabPage, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>editorTab.Parent" xml:space="preserve">
|
||||
<value>tabControl</value>
|
||||
</data>
|
||||
<data name=">>editorTab.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="pckFileLabel.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>3, 17</value>
|
||||
</data>
|
||||
<data name="pckFileLabel.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>332, 23</value>
|
||||
</data>
|
||||
<data name="pckFileLabel.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name=">>pckFileLabel.Name" xml:space="preserve">
|
||||
<value>pckFileLabel</value>
|
||||
</data>
|
||||
<data name=">>pckFileLabel.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>pckFileLabel.Parent" xml:space="preserve">
|
||||
<value>editorTab</value>
|
||||
</data>
|
||||
<data name=">>pckFileLabel.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="labelImageSize.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||
@@ -30500,6 +30707,138 @@
|
||||
<data name="PropertiesTabControl.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||
<value>Top, Bottom, Right</value>
|
||||
</data>
|
||||
<data name=">>MetaTab.Name" xml:space="preserve">
|
||||
<value>MetaTab</value>
|
||||
</data>
|
||||
<data name=">>MetaTab.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTabPage, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>MetaTab.Parent" xml:space="preserve">
|
||||
<value>PropertiesTabControl</value>
|
||||
</data>
|
||||
<data name=">>MetaTab.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="PropertiesTabControl.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>338, 277</value>
|
||||
</data>
|
||||
<data name="PropertiesTabControl.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>671, 282</value>
|
||||
</data>
|
||||
<data name="PropertiesTabControl.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>11</value>
|
||||
</data>
|
||||
<data name=">>PropertiesTabControl.Name" xml:space="preserve">
|
||||
<value>PropertiesTabControl</value>
|
||||
</data>
|
||||
<data name=">>PropertiesTabControl.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTabControl, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>PropertiesTabControl.Parent" xml:space="preserve">
|
||||
<value>editorTab</value>
|
||||
</data>
|
||||
<data name=">>PropertiesTabControl.ZOrder" xml:space="preserve">
|
||||
<value>5</value>
|
||||
</data>
|
||||
<data name=">>metroLabel2.Name" xml:space="preserve">
|
||||
<value>metroLabel2</value>
|
||||
</data>
|
||||
<data name=">>metroLabel2.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>metroLabel2.Parent" xml:space="preserve">
|
||||
<value>MetaTab</value>
|
||||
</data>
|
||||
<data name=">>metroLabel2.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name=">>treeMeta.Name" xml:space="preserve">
|
||||
<value>treeMeta</value>
|
||||
</data>
|
||||
<data name=">>treeMeta.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TreeView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>treeMeta.Parent" xml:space="preserve">
|
||||
<value>MetaTab</value>
|
||||
</data>
|
||||
<data name=">>treeMeta.ZOrder" xml:space="preserve">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name=">>entryTypeTextBox.Name" xml:space="preserve">
|
||||
<value>entryTypeTextBox</value>
|
||||
</data>
|
||||
<data name=">>entryTypeTextBox.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTextBox, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>entryTypeTextBox.Parent" xml:space="preserve">
|
||||
<value>MetaTab</value>
|
||||
</data>
|
||||
<data name=">>entryTypeTextBox.ZOrder" xml:space="preserve">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name=">>entryDataTextBox.Name" xml:space="preserve">
|
||||
<value>entryDataTextBox</value>
|
||||
</data>
|
||||
<data name=">>entryDataTextBox.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTextBox, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>entryDataTextBox.Parent" xml:space="preserve">
|
||||
<value>MetaTab</value>
|
||||
</data>
|
||||
<data name=">>entryDataTextBox.ZOrder" xml:space="preserve">
|
||||
<value>5</value>
|
||||
</data>
|
||||
<data name=">>buttonEdit.Name" xml:space="preserve">
|
||||
<value>buttonEdit</value>
|
||||
</data>
|
||||
<data name=">>buttonEdit.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroButton, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>buttonEdit.Parent" xml:space="preserve">
|
||||
<value>MetaTab</value>
|
||||
</data>
|
||||
<data name=">>buttonEdit.ZOrder" xml:space="preserve">
|
||||
<value>6</value>
|
||||
</data>
|
||||
<data name=">>metroLabel1.Name" xml:space="preserve">
|
||||
<value>metroLabel1</value>
|
||||
</data>
|
||||
<data name=">>metroLabel1.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>metroLabel1.Parent" xml:space="preserve">
|
||||
<value>MetaTab</value>
|
||||
</data>
|
||||
<data name=">>metroLabel1.ZOrder" xml:space="preserve">
|
||||
<value>7</value>
|
||||
</data>
|
||||
<data name="MetaTab.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>4, 38</value>
|
||||
</data>
|
||||
<data name="MetaTab.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>3, 3, 3, 3</value>
|
||||
</data>
|
||||
<data name="MetaTab.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>663, 240</value>
|
||||
</data>
|
||||
<data name="MetaTab.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="MetaTab.Text" xml:space="preserve">
|
||||
<value>Properties</value>
|
||||
</data>
|
||||
<data name=">>MetaTab.Name" xml:space="preserve">
|
||||
<value>MetaTab</value>
|
||||
</data>
|
||||
<data name=">>MetaTab.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTabPage, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>MetaTab.Parent" xml:space="preserve">
|
||||
<value>PropertiesTabControl</value>
|
||||
</data>
|
||||
<data name=">>MetaTab.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="metroLabel2.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||
<value>Top, Right</value>
|
||||
</data>
|
||||
@@ -30701,54 +31040,6 @@
|
||||
<data name=">>metroLabel1.ZOrder" xml:space="preserve">
|
||||
<value>7</value>
|
||||
</data>
|
||||
<data name="MetaTab.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>4, 38</value>
|
||||
</data>
|
||||
<data name="MetaTab.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>3, 3, 3, 3</value>
|
||||
</data>
|
||||
<data name="MetaTab.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>663, 240</value>
|
||||
</data>
|
||||
<data name="MetaTab.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="MetaTab.Text" xml:space="preserve">
|
||||
<value>Properties</value>
|
||||
</data>
|
||||
<data name=">>MetaTab.Name" xml:space="preserve">
|
||||
<value>MetaTab</value>
|
||||
</data>
|
||||
<data name=">>MetaTab.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTabPage, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>MetaTab.Parent" xml:space="preserve">
|
||||
<value>PropertiesTabControl</value>
|
||||
</data>
|
||||
<data name=">>MetaTab.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="PropertiesTabControl.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>338, 277</value>
|
||||
</data>
|
||||
<data name="PropertiesTabControl.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>671, 282</value>
|
||||
</data>
|
||||
<data name="PropertiesTabControl.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>11</value>
|
||||
</data>
|
||||
<data name=">>PropertiesTabControl.Name" xml:space="preserve">
|
||||
<value>PropertiesTabControl</value>
|
||||
</data>
|
||||
<data name=">>PropertiesTabControl.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTabControl, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>PropertiesTabControl.Parent" xml:space="preserve">
|
||||
<value>editorTab</value>
|
||||
</data>
|
||||
<data name=">>PropertiesTabControl.ZOrder" xml:space="preserve">
|
||||
<value>5</value>
|
||||
</data>
|
||||
<metadata name="label11.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
@@ -30851,57 +31142,6 @@
|
||||
<data name=">>pictureBoxImagePreview.ZOrder" xml:space="preserve">
|
||||
<value>9</value>
|
||||
</data>
|
||||
<data name="editorTab.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>4, 38</value>
|
||||
</data>
|
||||
<data name="editorTab.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>5, 50, 5, 7</value>
|
||||
</data>
|
||||
<data name="editorTab.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>1016, 558</value>
|
||||
</data>
|
||||
<data name="editorTab.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>editorTab.Name" xml:space="preserve">
|
||||
<value>editorTab</value>
|
||||
</data>
|
||||
<data name=">>editorTab.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTabPage, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>editorTab.Parent" xml:space="preserve">
|
||||
<value>tabControl</value>
|
||||
</data>
|
||||
<data name=">>editorTab.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="tabControl.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="tabControl.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>20, 30</value>
|
||||
</data>
|
||||
<data name="tabControl.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>0, 0, 0, 0</value>
|
||||
</data>
|
||||
<data name="tabControl.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>1024, 600</value>
|
||||
</data>
|
||||
<data name="tabControl.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>tabControl.Name" xml:space="preserve">
|
||||
<value>tabControl</value>
|
||||
</data>
|
||||
<data name=">>tabControl.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTabControl, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name=">>tabControl.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>tabControl.ZOrder" xml:space="preserve">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name="LittleEndianCheckBox.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||
<value>Top, Right</value>
|
||||
</data>
|
||||
|
||||
@@ -347,20 +347,20 @@
|
||||
<Compile Include="Forms\Additional-Popups\Audio\pleaseWait.Designer.cs">
|
||||
<DependentUpon>pleaseWait.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Forms\Utilities\ModelsUtil.cs" />
|
||||
<Compile Include="Forms\Utilities\MaterialUtil.cs" />
|
||||
<Compile Include="Forms\Utilities\BehaviourUtil.cs" />
|
||||
<Compile Include="Forms\Utilities\AnimationUtil.cs" />
|
||||
<Compile Include="Forms\Utilities\Skins\BoxEditor.cs">
|
||||
<Compile Include="Forms\Utilities\ModelsResources.cs" />
|
||||
<Compile Include="Forms\Utilities\MaterialResources.cs" />
|
||||
<Compile Include="Forms\Utilities\BehaviourResources.cs" />
|
||||
<Compile Include="Forms\Utilities\AnimationResources.cs" />
|
||||
<Compile Include="Forms\Editor\BoxEditor.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Forms\Utilities\Skins\BoxEditor.Designer.cs">
|
||||
<Compile Include="Forms\Editor\BoxEditor.Designer.cs">
|
||||
<DependentUpon>BoxEditor.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Forms\Utilities\Skins\ANIMEditor.cs">
|
||||
<Compile Include="Forms\Editor\ANIMEditor.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Forms\Utilities\Skins\ANIMEditor.Designer.cs">
|
||||
<Compile Include="Forms\Editor\ANIMEditor.Designer.cs">
|
||||
<DependentUpon>ANIMEditor.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="MainForm.cs">
|
||||
@@ -551,10 +551,10 @@
|
||||
<EmbeddedResource Include="Forms\Additional-Popups\Audio\pleaseWait.resx">
|
||||
<DependentUpon>pleaseWait.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Forms\Utilities\Skins\BoxEditor.resx">
|
||||
<EmbeddedResource Include="Forms\Editor\BoxEditor.resx">
|
||||
<DependentUpon>BoxEditor.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Forms\Utilities\Skins\ANIMEditor.resx">
|
||||
<EmbeddedResource Include="Forms\Editor\ANIMEditor.resx">
|
||||
<DependentUpon>ANIMEditor.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="MainForm.ja.resx">
|
||||
|
||||
@@ -37,6 +37,7 @@ namespace PckStudio
|
||||
|
||||
static class Program
|
||||
{
|
||||
public static readonly string ProjectUrl = "https://github.com/PhoenixARC/-PCK-Studio";
|
||||
public static readonly string BaseAPIUrl = "http://api.pckstudio.xyz/api/pck";
|
||||
public static readonly string BackUpAPIUrl = "https://raw.githubusercontent.com/PhoenixARC/pckstudio.tk/main/studio/PCK/api/";
|
||||
public static readonly string AppData = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), "PCK-Studio");
|
||||
|
||||
2
Vendor/OMI-Lib
vendored
2
Vendor/OMI-Lib
vendored
Submodule Vendor/OMI-Lib updated: e859271a0d...9b991f6d1a
Reference in New Issue
Block a user