Initial commit
2
.gitattributes
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
# Auto detect text files and perform LF normalization
|
||||
* text=auto
|
||||
252
.gitignore
vendored
Normal file
@@ -0,0 +1,252 @@
|
||||
## Ignore Visual Studio temporary files, build results, and
|
||||
## files generated by popular Visual Studio add-ons.
|
||||
|
||||
# User-specific files
|
||||
*.suo
|
||||
*.user
|
||||
*.userosscache
|
||||
*.sln.docstates
|
||||
|
||||
# User-specific files (MonoDevelop/Xamarin Studio)
|
||||
*.userprefs
|
||||
|
||||
# Build results
|
||||
[Dd]ebug/
|
||||
[Dd]ebugPublic/
|
||||
[Rr]elease/
|
||||
[Rr]eleases/
|
||||
x64/
|
||||
x86/
|
||||
bld/
|
||||
[Bb]in/
|
||||
[Oo]bj/
|
||||
[Ll]og/
|
||||
|
||||
# Visual Studio 2015 cache/options directory
|
||||
.vs/
|
||||
# Uncomment if you have tasks that create the project's static files in wwwroot
|
||||
#wwwroot/
|
||||
|
||||
# MSTest test Results
|
||||
[Tt]est[Rr]esult*/
|
||||
[Bb]uild[Ll]og.*
|
||||
|
||||
# NUNIT
|
||||
*.VisualState.xml
|
||||
TestResult.xml
|
||||
|
||||
# Build Results of an ATL Project
|
||||
[Dd]ebugPS/
|
||||
[Rr]eleasePS/
|
||||
dlldata.c
|
||||
|
||||
# DNX
|
||||
project.lock.json
|
||||
artifacts/
|
||||
|
||||
*_i.c
|
||||
*_p.c
|
||||
*_i.h
|
||||
*.ilk
|
||||
*.meta
|
||||
*.obj
|
||||
*.pch
|
||||
*.pdb
|
||||
*.pgc
|
||||
*.pgd
|
||||
*.rsp
|
||||
*.sbr
|
||||
*.tlb
|
||||
*.tli
|
||||
*.tlh
|
||||
*.tmp
|
||||
*.tmp_proj
|
||||
*.log
|
||||
*.vspscc
|
||||
*.vssscc
|
||||
.builds
|
||||
*.pidb
|
||||
*.svclog
|
||||
*.scc
|
||||
|
||||
# Chutzpah Test files
|
||||
_Chutzpah*
|
||||
|
||||
# Visual C++ cache files
|
||||
ipch/
|
||||
*.aps
|
||||
*.ncb
|
||||
*.opendb
|
||||
*.opensdf
|
||||
*.sdf
|
||||
*.cachefile
|
||||
*.VC.db
|
||||
*.VC.VC.opendb
|
||||
|
||||
# Visual Studio profiler
|
||||
*.psess
|
||||
*.vsp
|
||||
*.vspx
|
||||
*.sap
|
||||
|
||||
# TFS 2012 Local Workspace
|
||||
$tf/
|
||||
|
||||
# Guidance Automation Toolkit
|
||||
*.gpState
|
||||
|
||||
# ReSharper is a .NET coding add-in
|
||||
_ReSharper*/
|
||||
*.[Rr]e[Ss]harper
|
||||
*.DotSettings.user
|
||||
|
||||
# JustCode is a .NET coding add-in
|
||||
.JustCode
|
||||
|
||||
# TeamCity is a build add-in
|
||||
_TeamCity*
|
||||
|
||||
# DotCover is a Code Coverage Tool
|
||||
*.dotCover
|
||||
|
||||
# NCrunch
|
||||
_NCrunch_*
|
||||
.*crunch*.local.xml
|
||||
nCrunchTemp_*
|
||||
|
||||
# MightyMoose
|
||||
*.mm.*
|
||||
AutoTest.Net/
|
||||
|
||||
# Web workbench (sass)
|
||||
.sass-cache/
|
||||
|
||||
# Installshield output folder
|
||||
[Ee]xpress/
|
||||
|
||||
# DocProject is a documentation generator add-in
|
||||
DocProject/buildhelp/
|
||||
DocProject/Help/*.HxT
|
||||
DocProject/Help/*.HxC
|
||||
DocProject/Help/*.hhc
|
||||
DocProject/Help/*.hhk
|
||||
DocProject/Help/*.hhp
|
||||
DocProject/Help/Html2
|
||||
DocProject/Help/html
|
||||
|
||||
# Click-Once directory
|
||||
publish/
|
||||
|
||||
# Publish Web Output
|
||||
*.[Pp]ublish.xml
|
||||
*.azurePubxml
|
||||
# TODO: Comment the next line if you want to checkin your web deploy settings
|
||||
# but database connection strings (with potential passwords) will be unencrypted
|
||||
*.pubxml
|
||||
*.publishproj
|
||||
|
||||
# Microsoft Azure Web App publish settings. Comment the next line if you want to
|
||||
# checkin your Azure Web App publish settings, but sensitive information contained
|
||||
# in these scripts will be unencrypted
|
||||
PublishScripts/
|
||||
|
||||
# NuGet Packages
|
||||
*.nupkg
|
||||
# The packages folder can be ignored because of Package Restore
|
||||
**/packages/*
|
||||
# except build/, which is used as an MSBuild target.
|
||||
!**/packages/build/
|
||||
# Uncomment if necessary however generally it will be regenerated when needed
|
||||
#!**/packages/repositories.config
|
||||
# NuGet v3's project.json files produces more ignoreable files
|
||||
*.nuget.props
|
||||
*.nuget.targets
|
||||
|
||||
# Microsoft Azure Build Output
|
||||
csx/
|
||||
*.build.csdef
|
||||
|
||||
# Microsoft Azure Emulator
|
||||
ecf/
|
||||
rcf/
|
||||
|
||||
# Windows Store app package directories and files
|
||||
AppPackages/
|
||||
BundleArtifacts/
|
||||
Package.StoreAssociation.xml
|
||||
_pkginfo.txt
|
||||
|
||||
# Visual Studio cache files
|
||||
# files ending in .cache can be ignored
|
||||
*.[Cc]ache
|
||||
# but keep track of directories ending in .cache
|
||||
!*.[Cc]ache/
|
||||
|
||||
# Others
|
||||
ClientBin/
|
||||
~$*
|
||||
*~
|
||||
*.dbmdl
|
||||
*.dbproj.schemaview
|
||||
*.pfx
|
||||
*.publishsettings
|
||||
node_modules/
|
||||
orleans.codegen.cs
|
||||
|
||||
# Since there are multiple workflows, uncomment next line to ignore bower_components
|
||||
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
|
||||
#bower_components/
|
||||
|
||||
# RIA/Silverlight projects
|
||||
Generated_Code/
|
||||
|
||||
# Backup & report files from converting an old project file
|
||||
# to a newer Visual Studio version. Backup files are not needed,
|
||||
# because we have git ;-)
|
||||
_UpgradeReport_Files/
|
||||
Backup*/
|
||||
UpgradeLog*.XML
|
||||
UpgradeLog*.htm
|
||||
|
||||
# SQL Server files
|
||||
*.mdf
|
||||
*.ldf
|
||||
|
||||
# Business Intelligence projects
|
||||
*.rdl.data
|
||||
*.bim.layout
|
||||
*.bim_*.settings
|
||||
|
||||
# Microsoft Fakes
|
||||
FakesAssemblies/
|
||||
|
||||
# GhostDoc plugin setting file
|
||||
*.GhostDoc.xml
|
||||
|
||||
# Node.js Tools for Visual Studio
|
||||
.ntvs_analysis.dat
|
||||
|
||||
# Visual Studio 6 build log
|
||||
*.plg
|
||||
|
||||
# Visual Studio 6 workspace options file
|
||||
*.opt
|
||||
|
||||
# Visual Studio LightSwitch build output
|
||||
**/*.HTMLClient/GeneratedArtifacts
|
||||
**/*.DesktopClient/GeneratedArtifacts
|
||||
**/*.DesktopClient/ModelManifest.xml
|
||||
**/*.Server/GeneratedArtifacts
|
||||
**/*.Server/ModelManifest.xml
|
||||
_Pvt_Extensions
|
||||
|
||||
# Paket dependency manager
|
||||
.paket/paket.exe
|
||||
paket-files/
|
||||
|
||||
# FAKE - F# Make
|
||||
.fake/
|
||||
|
||||
# JetBrains Rider
|
||||
.idea/
|
||||
*.sln.iml
|
||||
6
CSM Visualiser/App.config
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<configuration>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6" />
|
||||
</startup>
|
||||
</configuration>
|
||||
90
CSM Visualiser/CSM Visualiser.csproj
Normal file
@@ -0,0 +1,90 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{3530A9F2-AE0F-44B4-84F9-8FBACB456070}</ProjectGuid>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<RootNamespace>CSM_Visualiser</RootNamespace>
|
||||
<AssemblyName>CSM Visualiser</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
<Deterministic>true</Deterministic>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="MoreLinq, Version=3.3.2.0, Culture=neutral, PublicKeyToken=384d532d7e88985d, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\morelinq.3.3.2\lib\net451\MoreLinq.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\netstandard1.0\System.ValueTuple.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Deployment" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Form1.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Form1.Designer.cs">
|
||||
<DependentUpon>Form1.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Program.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<EmbeddedResource Include="Form1.resx">
|
||||
<DependentUpon>Form1.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<Compile Include="Properties\Resources.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<None Include="packages.config" />
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
</None>
|
||||
<Compile Include="Properties\Settings.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
</Project>
|
||||
75
CSM Visualiser/Form1.Designer.cs
generated
Normal file
@@ -0,0 +1,75 @@
|
||||
namespace CSM_Visualiser
|
||||
{
|
||||
partial class Form1
|
||||
{
|
||||
/// <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.button1 = new System.Windows.Forms.Button();
|
||||
this.button2 = new System.Windows.Forms.Button();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// button1
|
||||
//
|
||||
this.button1.Location = new System.Drawing.Point(13, 13);
|
||||
this.button1.Name = "button1";
|
||||
this.button1.Size = new System.Drawing.Size(75, 23);
|
||||
this.button1.TabIndex = 0;
|
||||
this.button1.Text = "Open";
|
||||
this.button1.UseVisualStyleBackColor = true;
|
||||
this.button1.Click += new System.EventHandler(this.button1_Click);
|
||||
//
|
||||
// button2
|
||||
//
|
||||
this.button2.Location = new System.Drawing.Point(94, 13);
|
||||
this.button2.Name = "button2";
|
||||
this.button2.Size = new System.Drawing.Size(75, 23);
|
||||
this.button2.TabIndex = 1;
|
||||
this.button2.Text = "Open";
|
||||
this.button2.UseVisualStyleBackColor = true;
|
||||
this.button2.Click += new System.EventHandler(this.button2_Click);
|
||||
//
|
||||
// Form1
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(522, 360);
|
||||
this.Controls.Add(this.button2);
|
||||
this.Controls.Add(this.button1);
|
||||
this.Name = "Form1";
|
||||
this.Text = "Form1";
|
||||
this.Load += new System.EventHandler(this.Form1_Load);
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.Button button1;
|
||||
private System.Windows.Forms.Button button2;
|
||||
}
|
||||
}
|
||||
|
||||
129
CSM Visualiser/Form1.cs
Normal file
@@ -0,0 +1,129 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using MoreLinq.Extensions;
|
||||
using MoreLinq;
|
||||
using System.Linq;
|
||||
using System.IO;
|
||||
|
||||
namespace CSM_Visualiser
|
||||
{
|
||||
public partial class Form1 : Form
|
||||
{
|
||||
public Form1()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
string intro = "{\n \"format_version\": \"1.12.0\",\n \"minecraft:geometry\": [\n {\n \"description\": {\n \"identifier\": \"geometry.steve\",\n \"texture_width\": 64,\n \"texture_height\": 64,\n \"visible_bounds_width\": 3,\n \"visible_bounds_height\": 3,\n \"visible_bounds_offset\": [0, 0, 0]\n },\n \"bones\": [";
|
||||
string outro = "\n ]\n }\n ]\n}";
|
||||
private void Form1_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void button1_Click(object sender, EventArgs e)
|
||||
{
|
||||
OpenFileDialog openFileDialog = new OpenFileDialog();
|
||||
openFileDialog.Filter = "Custom Skin Model File | *.CSM";
|
||||
openFileDialog.Title = "Select Custom Skin Model File";
|
||||
if(openFileDialog.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
System.IO.File.WriteAllText(openFileDialog.FileName + ".json", intro);
|
||||
string data = System.IO.File.ReadAllText(openFileDialog.FileName);
|
||||
int splitnum = 11;
|
||||
var dat0 = stringfunctions.SplitBy(data, '\n', splitnum);
|
||||
|
||||
foreach (string str in dat0)
|
||||
{
|
||||
// MessageBox.Show(str.ToString());
|
||||
string[] data1 = str.ToString().Split('\n');
|
||||
string name = data1[0];
|
||||
string parent = data1[1];
|
||||
string name2 = data1[2];
|
||||
int PosX = int.Parse(data1[3])*3;
|
||||
int PosY = int.Parse(data1[4]) + 32;
|
||||
int PosZ = int.Parse(data1[5])*3;
|
||||
int SizeX = int.Parse(data1[6]);
|
||||
int SizeY = int.Parse(data1[7]);
|
||||
int SizeZ = int.Parse(data1[8]);
|
||||
int UVx = int.Parse(data1[9]);
|
||||
int UVy = int.Parse(data1[10]);
|
||||
int UVx2 = UVx + 32;
|
||||
string entry = "\n\t\t\t\t{\n\t\t\t\t\t\"name\": \"" + name + "\"\x2C\n\t\t\t\t\t\"pivot\": [0, 24, 0],\n\t\t\t\t\t\"cubes\": [\n\t\t\t\t\t\t{\"origin\": [" + PosX + ", " + PosY + ", " + PosZ + "], \"size\": [" + SizeX + ", " + SizeY + ", " + SizeZ + "], \"uv\": [" + UVx + ", " + UVy + "]},\n\t\t\t\t\t\t{\"origin\": [" + PosX + ", " + PosY + ", " + PosZ + "], \"size\": [" + SizeX + ", " + SizeY + ", " + SizeZ + "], \"inflate\": 0.5, \"uv\": [" + UVx2 + ", " + UVy + "]}\n\t\t\t\t\t]\n\t\t\t\t},";
|
||||
System.IO.File.AppendAllText(openFileDialog.FileName + ".json", entry.Replace("\n\"\x2C", "\"\x2C"));
|
||||
}
|
||||
System.IO.FileStream fs = new System.IO.FileStream(openFileDialog.FileName + ".json", System.IO.FileMode.Open, System.IO.FileAccess.ReadWrite);
|
||||
fs.SetLength(fs.Length - 1);
|
||||
fs.Close();
|
||||
System.IO.File.AppendAllText(openFileDialog.FileName + ".json", outro);
|
||||
MessageBox.Show("\x4D\x65\x73\x73\x61\x67\x65\x42\x6F\x78\x2E\x53\x68\x6F\x77\x28\x29\x3B");
|
||||
}
|
||||
}
|
||||
|
||||
private void button2_Click(object sender, EventArgs e)
|
||||
{
|
||||
OpenFileDialog openFileDialog = new OpenFileDialog();
|
||||
openFileDialog.Filter = "Custom Skin Model File | *.txt";
|
||||
openFileDialog.Title = "Select Custom Skin Model File";
|
||||
openFileDialog.Multiselect = true;
|
||||
if (openFileDialog.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
foreach (string url in openFileDialog.FileNames)
|
||||
{
|
||||
StreamWriter sw = new StreamWriter(url + ".CSM");
|
||||
sw.Write("");
|
||||
sw.Close();
|
||||
string data = System.IO.File.ReadAllText(url);
|
||||
int splitnum = 11;
|
||||
string[] data0 = data.Split('\n');
|
||||
|
||||
foreach (string str in data0)
|
||||
{
|
||||
if (str.StartsWith("BOX"))
|
||||
{
|
||||
string[] data1 = str.ToString().Split(' ');
|
||||
string name = data1[0];
|
||||
string PosX = (data1[1]);
|
||||
string PosY = (data1[2]);
|
||||
string PosZ = (data1[3]);
|
||||
string SizeX = (data1[4]);
|
||||
string SizeY = (data1[5]);
|
||||
string SizeZ = (data1[6]);
|
||||
string UVx = (data1[7]);
|
||||
string UVy = (data1[8]);
|
||||
string entry = name + "\n" + name + "\n" + name + "\n" + PosX + "\n" + PosY + "\n" + PosZ + "\n" + SizeX + "\n" + SizeY + "\n" + SizeZ + "\n" + UVx + "\n" + UVy + "\n";
|
||||
System.IO.File.AppendAllText(url + ".CSM", entry.Replace("BOX:", ""));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
static class stringfunctions
|
||||
{
|
||||
public static IEnumerable<string> SplitBy(string input, char separator, int n)
|
||||
{
|
||||
int lastindex = 0;
|
||||
int curr = 0;
|
||||
|
||||
while (curr < input.Length)
|
||||
{
|
||||
int count = 0;
|
||||
while (curr < input.Length && count < n)
|
||||
{
|
||||
if (input[curr++] == separator) count++;
|
||||
}
|
||||
yield return input.Substring(lastindex, curr - lastindex - (curr < input.Length ? 1 : 0));
|
||||
lastindex = curr;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
120
CSM Visualiser/Form1.resx
Normal file
@@ -0,0 +1,120 @@
|
||||
<?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>
|
||||
</root>
|
||||
22
CSM Visualiser/Program.cs
Normal file
@@ -0,0 +1,22 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace CSM_Visualiser
|
||||
{
|
||||
static class Program
|
||||
{
|
||||
/// <summary>
|
||||
/// The main entry point for the application.
|
||||
/// </summary>
|
||||
[STAThread]
|
||||
static void Main()
|
||||
{
|
||||
Application.EnableVisualStyles();
|
||||
Application.SetCompatibleTextRenderingDefault(false);
|
||||
Application.Run(new Form1());
|
||||
}
|
||||
}
|
||||
}
|
||||
36
CSM Visualiser/Properties/AssemblyInfo.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// General Information about an assembly is controlled through the following
|
||||
// set of attributes. Change these attribute values to modify the information
|
||||
// associated with an assembly.
|
||||
[assembly: AssemblyTitle("CSM Visualiser")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("CSM Visualiser")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2020")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Setting ComVisible to false makes the types in this assembly not visible
|
||||
// to COM components. If you need to access a type in this assembly from
|
||||
// COM, set the ComVisible attribute to true on that type.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
||||
[assembly: Guid("3530a9f2-ae0f-44b4-84f9-8fbacb456070")]
|
||||
|
||||
// Version information for an assembly consists of the following four values:
|
||||
//
|
||||
// Major Version
|
||||
// Minor Version
|
||||
// Build Number
|
||||
// Revision
|
||||
//
|
||||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
71
CSM Visualiser/Properties/Resources.Designer.cs
generated
Normal file
@@ -0,0 +1,71 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:4.0.30319.42000
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace CSM_Visualiser.Properties
|
||||
{
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// A strongly-typed resource class, for looking up localized strings, etc.
|
||||
/// </summary>
|
||||
// This class was auto-generated by the StronglyTypedResourceBuilder
|
||||
// class via a tool like ResGen or Visual Studio.
|
||||
// To add or remove a member, edit your .ResX file then rerun ResGen
|
||||
// with the /str option, or rebuild your VS project.
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
internal class Resources
|
||||
{
|
||||
|
||||
private static global::System.Resources.ResourceManager resourceMan;
|
||||
|
||||
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||
|
||||
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||
internal Resources()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Returns the cached ResourceManager instance used by this class.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Resources.ResourceManager ResourceManager
|
||||
{
|
||||
get
|
||||
{
|
||||
if ((resourceMan == null))
|
||||
{
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("CSM_Visualiser.Properties.Resources", typeof(Resources).Assembly);
|
||||
resourceMan = temp;
|
||||
}
|
||||
return resourceMan;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Overrides the current thread's CurrentUICulture property for all
|
||||
/// resource lookups using this strongly typed resource class.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Globalization.CultureInfo Culture
|
||||
{
|
||||
get
|
||||
{
|
||||
return resourceCulture;
|
||||
}
|
||||
set
|
||||
{
|
||||
resourceCulture = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
117
CSM Visualiser/Properties/Resources.resx
Normal file
@@ -0,0 +1,117 @@
|
||||
<?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.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: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" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
</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" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
</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=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
30
CSM Visualiser/Properties/Settings.Designer.cs
generated
Normal file
@@ -0,0 +1,30 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:4.0.30319.42000
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace CSM_Visualiser.Properties
|
||||
{
|
||||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
|
||||
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
|
||||
{
|
||||
|
||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||
|
||||
public static Settings Default
|
||||
{
|
||||
get
|
||||
{
|
||||
return defaultInstance;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
7
CSM Visualiser/Properties/Settings.settings
Normal file
@@ -0,0 +1,7 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
|
||||
<Profiles>
|
||||
<Profile Name="(Default)" />
|
||||
</Profiles>
|
||||
<Settings />
|
||||
</SettingsFile>
|
||||
5
CSM Visualiser/packages.config
Normal file
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="morelinq" version="3.3.2" targetFramework="net46" />
|
||||
<package id="System.ValueTuple" version="4.5.0" targetFramework="net46" />
|
||||
</packages>
|
||||
4
FodyWeavers.xml
Normal file
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<Weavers>
|
||||
<Costura IncludeDebugSymbols='false' />
|
||||
</Weavers>
|
||||
674
License.txt
Normal file
@@ -0,0 +1,674 @@
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The GNU General Public License is a free, copyleft license for
|
||||
software and other kinds of works.
|
||||
|
||||
The licenses for most software and other practical works are designed
|
||||
to take away your freedom to share and change the works. By contrast,
|
||||
the GNU General Public License is intended to guarantee your freedom to
|
||||
share and change all versions of a program--to make sure it remains free
|
||||
software for all its users. We, the Free Software Foundation, use the
|
||||
GNU General Public License for most of our software; it applies also to
|
||||
any other work released this way by its authors. You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
them if you wish), that you receive source code or can get it if you
|
||||
want it, that you can change the software or use pieces of it in new
|
||||
free programs, and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to prevent others from denying you
|
||||
these rights or asking you to surrender the rights. Therefore, you have
|
||||
certain responsibilities if you distribute copies of the software, or if
|
||||
you modify it: responsibilities to respect the freedom of others.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must pass on to the recipients the same
|
||||
freedoms that you received. You must make sure that they, too, receive
|
||||
or can get the source code. And you must show them these terms so they
|
||||
know their rights.
|
||||
|
||||
Developers that use the GNU GPL protect your rights with two steps:
|
||||
(1) assert copyright on the software, and (2) offer you this License
|
||||
giving you legal permission to copy, distribute and/or modify it.
|
||||
|
||||
For the developers' and authors' protection, the GPL clearly explains
|
||||
that there is no warranty for this free software. For both users' and
|
||||
authors' sake, the GPL requires that modified versions be marked as
|
||||
changed, so that their problems will not be attributed erroneously to
|
||||
authors of previous versions.
|
||||
|
||||
Some devices are designed to deny users access to install or run
|
||||
modified versions of the software inside them, although the manufacturer
|
||||
can do so. This is fundamentally incompatible with the aim of
|
||||
protecting users' freedom to change the software. The systematic
|
||||
pattern of such abuse occurs in the area of products for individuals to
|
||||
use, which is precisely where it is most unacceptable. Therefore, we
|
||||
have designed this version of the GPL to prohibit the practice for those
|
||||
products. If such problems arise substantially in other domains, we
|
||||
stand ready to extend this provision to those domains in future versions
|
||||
of the GPL, as needed to protect the freedom of users.
|
||||
|
||||
Finally, every program is threatened constantly by software patents.
|
||||
States should not allow patents to restrict development and use of
|
||||
software on general-purpose computers, but in those that do, we wish to
|
||||
avoid the special danger that patents applied to a free program could
|
||||
make it effectively proprietary. To prevent this, the GPL assures that
|
||||
patents cannot be used to render the program non-free.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
TERMS AND CONDITIONS
|
||||
|
||||
0. Definitions.
|
||||
|
||||
"This License" refers to version 3 of the GNU General Public License.
|
||||
|
||||
"Copyright" also means copyright-like laws that apply to other kinds of
|
||||
works, such as semiconductor masks.
|
||||
|
||||
"The Program" refers to any copyrightable work licensed under this
|
||||
License. Each licensee is addressed as "you". "Licensees" and
|
||||
"recipients" may be individuals or organizations.
|
||||
|
||||
To "modify" a work means to copy from or adapt all or part of the work
|
||||
in a fashion requiring copyright permission, other than the making of an
|
||||
exact copy. The resulting work is called a "modified version" of the
|
||||
earlier work or a work "based on" the earlier work.
|
||||
|
||||
A "covered work" means either the unmodified Program or a work based
|
||||
on the Program.
|
||||
|
||||
To "propagate" a work means to do anything with it that, without
|
||||
permission, would make you directly or secondarily liable for
|
||||
infringement under applicable copyright law, except executing it on a
|
||||
computer or modifying a private copy. Propagation includes copying,
|
||||
distribution (with or without modification), making available to the
|
||||
public, and in some countries other activities as well.
|
||||
|
||||
To "convey" a work means any kind of propagation that enables other
|
||||
parties to make or receive copies. Mere interaction with a user through
|
||||
a computer network, with no transfer of a copy, is not conveying.
|
||||
|
||||
An interactive user interface displays "Appropriate Legal Notices"
|
||||
to the extent that it includes a convenient and prominently visible
|
||||
feature that (1) displays an appropriate copyright notice, and (2)
|
||||
tells the user that there is no warranty for the work (except to the
|
||||
extent that warranties are provided), that licensees may convey the
|
||||
work under this License, and how to view a copy of this License. If
|
||||
the interface presents a list of user commands or options, such as a
|
||||
menu, a prominent item in the list meets this criterion.
|
||||
|
||||
1. Source Code.
|
||||
|
||||
The "source code" for a work means the preferred form of the work
|
||||
for making modifications to it. "Object code" means any non-source
|
||||
form of a work.
|
||||
|
||||
A "Standard Interface" means an interface that either is an official
|
||||
standard defined by a recognized standards body, or, in the case of
|
||||
interfaces specified for a particular programming language, one that
|
||||
is widely used among developers working in that language.
|
||||
|
||||
The "System Libraries" of an executable work include anything, other
|
||||
than the work as a whole, that (a) is included in the normal form of
|
||||
packaging a Major Component, but which is not part of that Major
|
||||
Component, and (b) serves only to enable use of the work with that
|
||||
Major Component, or to implement a Standard Interface for which an
|
||||
implementation is available to the public in source code form. A
|
||||
"Major Component", in this context, means a major essential component
|
||||
(kernel, window system, and so on) of the specific operating system
|
||||
(if any) on which the executable work runs, or a compiler used to
|
||||
produce the work, or an object code interpreter used to run it.
|
||||
|
||||
The "Corresponding Source" for a work in object code form means all
|
||||
the source code needed to generate, install, and (for an executable
|
||||
work) run the object code and to modify the work, including scripts to
|
||||
control those activities. However, it does not include the work's
|
||||
System Libraries, or general-purpose tools or generally available free
|
||||
programs which are used unmodified in performing those activities but
|
||||
which are not part of the work. For example, Corresponding Source
|
||||
includes interface definition files associated with source files for
|
||||
the work, and the source code for shared libraries and dynamically
|
||||
linked subprograms that the work is specifically designed to require,
|
||||
such as by intimate data communication or control flow between those
|
||||
subprograms and other parts of the work.
|
||||
|
||||
The Corresponding Source need not include anything that users
|
||||
can regenerate automatically from other parts of the Corresponding
|
||||
Source.
|
||||
|
||||
The Corresponding Source for a work in source code form is that
|
||||
same work.
|
||||
|
||||
2. Basic Permissions.
|
||||
|
||||
All rights granted under this License are granted for the term of
|
||||
copyright on the Program, and are irrevocable provided the stated
|
||||
conditions are met. This License explicitly affirms your unlimited
|
||||
permission to run the unmodified Program. The output from running a
|
||||
covered work is covered by this License only if the output, given its
|
||||
content, constitutes a covered work. This License acknowledges your
|
||||
rights of fair use or other equivalent, as provided by copyright law.
|
||||
|
||||
You may make, run and propagate covered works that you do not
|
||||
convey, without conditions so long as your license otherwise remains
|
||||
in force. You may convey covered works to others for the sole purpose
|
||||
of having them make modifications exclusively for you, or provide you
|
||||
with facilities for running those works, provided that you comply with
|
||||
the terms of this License in conveying all material for which you do
|
||||
not control copyright. Those thus making or running the covered works
|
||||
for you must do so exclusively on your behalf, under your direction
|
||||
and control, on terms that prohibit them from making any copies of
|
||||
your copyrighted material outside their relationship with you.
|
||||
|
||||
Conveying under any other circumstances is permitted solely under
|
||||
the conditions stated below. Sublicensing is not allowed; section 10
|
||||
makes it unnecessary.
|
||||
|
||||
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
||||
|
||||
No covered work shall be deemed part of an effective technological
|
||||
measure under any applicable law fulfilling obligations under article
|
||||
11 of the WIPO copyright treaty adopted on 20 December 1996, or
|
||||
similar laws prohibiting or restricting circumvention of such
|
||||
measures.
|
||||
|
||||
When you convey a covered work, you waive any legal power to forbid
|
||||
circumvention of technological measures to the extent such circumvention
|
||||
is effected by exercising rights under this License with respect to
|
||||
the covered work, and you disclaim any intention to limit operation or
|
||||
modification of the work as a means of enforcing, against the work's
|
||||
users, your or third parties' legal rights to forbid circumvention of
|
||||
technological measures.
|
||||
|
||||
4. Conveying Verbatim Copies.
|
||||
|
||||
You may convey verbatim copies of the Program's source code as you
|
||||
receive it, in any medium, provided that you conspicuously and
|
||||
appropriately publish on each copy an appropriate copyright notice;
|
||||
keep intact all notices stating that this License and any
|
||||
non-permissive terms added in accord with section 7 apply to the code;
|
||||
keep intact all notices of the absence of any warranty; and give all
|
||||
recipients a copy of this License along with the Program.
|
||||
|
||||
You may charge any price or no price for each copy that you convey,
|
||||
and you may offer support or warranty protection for a fee.
|
||||
|
||||
5. Conveying Modified Source Versions.
|
||||
|
||||
You may convey a work based on the Program, or the modifications to
|
||||
produce it from the Program, in the form of source code under the
|
||||
terms of section 4, provided that you also meet all of these conditions:
|
||||
|
||||
a) The work must carry prominent notices stating that you modified
|
||||
it, and giving a relevant date.
|
||||
|
||||
b) The work must carry prominent notices stating that it is
|
||||
released under this License and any conditions added under section
|
||||
7. This requirement modifies the requirement in section 4 to
|
||||
"keep intact all notices".
|
||||
|
||||
c) You must license the entire work, as a whole, under this
|
||||
License to anyone who comes into possession of a copy. This
|
||||
License will therefore apply, along with any applicable section 7
|
||||
additional terms, to the whole of the work, and all its parts,
|
||||
regardless of how they are packaged. This License gives no
|
||||
permission to license the work in any other way, but it does not
|
||||
invalidate such permission if you have separately received it.
|
||||
|
||||
d) If the work has interactive user interfaces, each must display
|
||||
Appropriate Legal Notices; however, if the Program has interactive
|
||||
interfaces that do not display Appropriate Legal Notices, your
|
||||
work need not make them do so.
|
||||
|
||||
A compilation of a covered work with other separate and independent
|
||||
works, which are not by their nature extensions of the covered work,
|
||||
and which are not combined with it such as to form a larger program,
|
||||
in or on a volume of a storage or distribution medium, is called an
|
||||
"aggregate" if the compilation and its resulting copyright are not
|
||||
used to limit the access or legal rights of the compilation's users
|
||||
beyond what the individual works permit. Inclusion of a covered work
|
||||
in an aggregate does not cause this License to apply to the other
|
||||
parts of the aggregate.
|
||||
|
||||
6. Conveying Non-Source Forms.
|
||||
|
||||
You may convey a covered work in object code form under the terms
|
||||
of sections 4 and 5, provided that you also convey the
|
||||
machine-readable Corresponding Source under the terms of this License,
|
||||
in one of these ways:
|
||||
|
||||
a) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by the
|
||||
Corresponding Source fixed on a durable physical medium
|
||||
customarily used for software interchange.
|
||||
|
||||
b) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by a
|
||||
written offer, valid for at least three years and valid for as
|
||||
long as you offer spare parts or customer support for that product
|
||||
model, to give anyone who possesses the object code either (1) a
|
||||
copy of the Corresponding Source for all the software in the
|
||||
product that is covered by this License, on a durable physical
|
||||
medium customarily used for software interchange, for a price no
|
||||
more than your reasonable cost of physically performing this
|
||||
conveying of source, or (2) access to copy the
|
||||
Corresponding Source from a network server at no charge.
|
||||
|
||||
c) Convey individual copies of the object code with a copy of the
|
||||
written offer to provide the Corresponding Source. This
|
||||
alternative is allowed only occasionally and noncommercially, and
|
||||
only if you received the object code with such an offer, in accord
|
||||
with subsection 6b.
|
||||
|
||||
d) Convey the object code by offering access from a designated
|
||||
place (gratis or for a charge), and offer equivalent access to the
|
||||
Corresponding Source in the same way through the same place at no
|
||||
further charge. You need not require recipients to copy the
|
||||
Corresponding Source along with the object code. If the place to
|
||||
copy the object code is a network server, the Corresponding Source
|
||||
may be on a different server (operated by you or a third party)
|
||||
that supports equivalent copying facilities, provided you maintain
|
||||
clear directions next to the object code saying where to find the
|
||||
Corresponding Source. Regardless of what server hosts the
|
||||
Corresponding Source, you remain obligated to ensure that it is
|
||||
available for as long as needed to satisfy these requirements.
|
||||
|
||||
e) Convey the object code using peer-to-peer transmission, provided
|
||||
you inform other peers where the object code and Corresponding
|
||||
Source of the work are being offered to the general public at no
|
||||
charge under subsection 6d.
|
||||
|
||||
A separable portion of the object code, whose source code is excluded
|
||||
from the Corresponding Source as a System Library, need not be
|
||||
included in conveying the object code work.
|
||||
|
||||
A "User Product" is either (1) a "consumer product", which means any
|
||||
tangible personal property which is normally used for personal, family,
|
||||
or household purposes, or (2) anything designed or sold for incorporation
|
||||
into a dwelling. In determining whether a product is a consumer product,
|
||||
doubtful cases shall be resolved in favor of coverage. For a particular
|
||||
product received by a particular user, "normally used" refers to a
|
||||
typical or common use of that class of product, regardless of the status
|
||||
of the particular user or of the way in which the particular user
|
||||
actually uses, or expects or is expected to use, the product. A product
|
||||
is a consumer product regardless of whether the product has substantial
|
||||
commercial, industrial or non-consumer uses, unless such uses represent
|
||||
the only significant mode of use of the product.
|
||||
|
||||
"Installation Information" for a User Product means any methods,
|
||||
procedures, authorization keys, or other information required to install
|
||||
and execute modified versions of a covered work in that User Product from
|
||||
a modified version of its Corresponding Source. The information must
|
||||
suffice to ensure that the continued functioning of the modified object
|
||||
code is in no case prevented or interfered with solely because
|
||||
modification has been made.
|
||||
|
||||
If you convey an object code work under this section in, or with, or
|
||||
specifically for use in, a User Product, and the conveying occurs as
|
||||
part of a transaction in which the right of possession and use of the
|
||||
User Product is transferred to the recipient in perpetuity or for a
|
||||
fixed term (regardless of how the transaction is characterized), the
|
||||
Corresponding Source conveyed under this section must be accompanied
|
||||
by the Installation Information. But this requirement does not apply
|
||||
if neither you nor any third party retains the ability to install
|
||||
modified object code on the User Product (for example, the work has
|
||||
been installed in ROM).
|
||||
|
||||
The requirement to provide Installation Information does not include a
|
||||
requirement to continue to provide support service, warranty, or updates
|
||||
for a work that has been modified or installed by the recipient, or for
|
||||
the User Product in which it has been modified or installed. Access to a
|
||||
network may be denied when the modification itself materially and
|
||||
adversely affects the operation of the network or violates the rules and
|
||||
protocols for communication across the network.
|
||||
|
||||
Corresponding Source conveyed, and Installation Information provided,
|
||||
in accord with this section must be in a format that is publicly
|
||||
documented (and with an implementation available to the public in
|
||||
source code form), and must require no special password or key for
|
||||
unpacking, reading or copying.
|
||||
|
||||
7. Additional Terms.
|
||||
|
||||
"Additional permissions" are terms that supplement the terms of this
|
||||
License by making exceptions from one or more of its conditions.
|
||||
Additional permissions that are applicable to the entire Program shall
|
||||
be treated as though they were included in this License, to the extent
|
||||
that they are valid under applicable law. If additional permissions
|
||||
apply only to part of the Program, that part may be used separately
|
||||
under those permissions, but the entire Program remains governed by
|
||||
this License without regard to the additional permissions.
|
||||
|
||||
When you convey a copy of a covered work, you may at your option
|
||||
remove any additional permissions from that copy, or from any part of
|
||||
it. (Additional permissions may be written to require their own
|
||||
removal in certain cases when you modify the work.) You may place
|
||||
additional permissions on material, added by you to a covered work,
|
||||
for which you have or can give appropriate copyright permission.
|
||||
|
||||
Notwithstanding any other provision of this License, for material you
|
||||
add to a covered work, you may (if authorized by the copyright holders of
|
||||
that material) supplement the terms of this License with terms:
|
||||
|
||||
a) Disclaiming warranty or limiting liability differently from the
|
||||
terms of sections 15 and 16 of this License; or
|
||||
|
||||
b) Requiring preservation of specified reasonable legal notices or
|
||||
author attributions in that material or in the Appropriate Legal
|
||||
Notices displayed by works containing it; or
|
||||
|
||||
c) Prohibiting misrepresentation of the origin of that material, or
|
||||
requiring that modified versions of such material be marked in
|
||||
reasonable ways as different from the original version; or
|
||||
|
||||
d) Limiting the use for publicity purposes of names of licensors or
|
||||
authors of the material; or
|
||||
|
||||
e) Declining to grant rights under trademark law for use of some
|
||||
trade names, trademarks, or service marks; or
|
||||
|
||||
f) Requiring indemnification of licensors and authors of that
|
||||
material by anyone who conveys the material (or modified versions of
|
||||
it) with contractual assumptions of liability to the recipient, for
|
||||
any liability that these contractual assumptions directly impose on
|
||||
those licensors and authors.
|
||||
|
||||
All other non-permissive additional terms are considered "further
|
||||
restrictions" within the meaning of section 10. If the Program as you
|
||||
received it, or any part of it, contains a notice stating that it is
|
||||
governed by this License along with a term that is a further
|
||||
restriction, you may remove that term. If a license document contains
|
||||
a further restriction but permits relicensing or conveying under this
|
||||
License, you may add to a covered work material governed by the terms
|
||||
of that license document, provided that the further restriction does
|
||||
not survive such relicensing or conveying.
|
||||
|
||||
If you add terms to a covered work in accord with this section, you
|
||||
must place, in the relevant source files, a statement of the
|
||||
additional terms that apply to those files, or a notice indicating
|
||||
where to find the applicable terms.
|
||||
|
||||
Additional terms, permissive or non-permissive, may be stated in the
|
||||
form of a separately written license, or stated as exceptions;
|
||||
the above requirements apply either way.
|
||||
|
||||
8. Termination.
|
||||
|
||||
You may not propagate or modify a covered work except as expressly
|
||||
provided under this License. Any attempt otherwise to propagate or
|
||||
modify it is void, and will automatically terminate your rights under
|
||||
this License (including any patent licenses granted under the third
|
||||
paragraph of section 11).
|
||||
|
||||
However, if you cease all violation of this License, then your
|
||||
license from a particular copyright holder is reinstated (a)
|
||||
provisionally, unless and until the copyright holder explicitly and
|
||||
finally terminates your license, and (b) permanently, if the copyright
|
||||
holder fails to notify you of the violation by some reasonable means
|
||||
prior to 60 days after the cessation.
|
||||
|
||||
Moreover, your license from a particular copyright holder is
|
||||
reinstated permanently if the copyright holder notifies you of the
|
||||
violation by some reasonable means, this is the first time you have
|
||||
received notice of violation of this License (for any work) from that
|
||||
copyright holder, and you cure the violation prior to 30 days after
|
||||
your receipt of the notice.
|
||||
|
||||
Termination of your rights under this section does not terminate the
|
||||
licenses of parties who have received copies or rights from you under
|
||||
this License. If your rights have been terminated and not permanently
|
||||
reinstated, you do not qualify to receive new licenses for the same
|
||||
material under section 10.
|
||||
|
||||
9. Acceptance Not Required for Having Copies.
|
||||
|
||||
You are not required to accept this License in order to receive or
|
||||
run a copy of the Program. Ancillary propagation of a covered work
|
||||
occurring solely as a consequence of using peer-to-peer transmission
|
||||
to receive a copy likewise does not require acceptance. However,
|
||||
nothing other than this License grants you permission to propagate or
|
||||
modify any covered work. These actions infringe copyright if you do
|
||||
not accept this License. Therefore, by modifying or propagating a
|
||||
covered work, you indicate your acceptance of this License to do so.
|
||||
|
||||
10. Automatic Licensing of Downstream Recipients.
|
||||
|
||||
Each time you convey a covered work, the recipient automatically
|
||||
receives a license from the original licensors, to run, modify and
|
||||
propagate that work, subject to this License. You are not responsible
|
||||
for enforcing compliance by third parties with this License.
|
||||
|
||||
An "entity transaction" is a transaction transferring control of an
|
||||
organization, or substantially all assets of one, or subdividing an
|
||||
organization, or merging organizations. If propagation of a covered
|
||||
work results from an entity transaction, each party to that
|
||||
transaction who receives a copy of the work also receives whatever
|
||||
licenses to the work the party's predecessor in interest had or could
|
||||
give under the previous paragraph, plus a right to possession of the
|
||||
Corresponding Source of the work from the predecessor in interest, if
|
||||
the predecessor has it or can get it with reasonable efforts.
|
||||
|
||||
You may not impose any further restrictions on the exercise of the
|
||||
rights granted or affirmed under this License. For example, you may
|
||||
not impose a license fee, royalty, or other charge for exercise of
|
||||
rights granted under this License, and you may not initiate litigation
|
||||
(including a cross-claim or counterclaim in a lawsuit) alleging that
|
||||
any patent claim is infringed by making, using, selling, offering for
|
||||
sale, or importing the Program or any portion of it.
|
||||
|
||||
11. Patents.
|
||||
|
||||
A "contributor" is a copyright holder who authorizes use under this
|
||||
License of the Program or a work on which the Program is based. The
|
||||
work thus licensed is called the contributor's "contributor version".
|
||||
|
||||
A contributor's "essential patent claims" are all patent claims
|
||||
owned or controlled by the contributor, whether already acquired or
|
||||
hereafter acquired, that would be infringed by some manner, permitted
|
||||
by this License, of making, using, or selling its contributor version,
|
||||
but do not include claims that would be infringed only as a
|
||||
consequence of further modification of the contributor version. For
|
||||
purposes of this definition, "control" includes the right to grant
|
||||
patent sublicenses in a manner consistent with the requirements of
|
||||
this License.
|
||||
|
||||
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
||||
patent license under the contributor's essential patent claims, to
|
||||
make, use, sell, offer for sale, import and otherwise run, modify and
|
||||
propagate the contents of its contributor version.
|
||||
|
||||
In the following three paragraphs, a "patent license" is any express
|
||||
agreement or commitment, however denominated, not to enforce a patent
|
||||
(such as an express permission to practice a patent or covenant not to
|
||||
sue for patent infringement). To "grant" such a patent license to a
|
||||
party means to make such an agreement or commitment not to enforce a
|
||||
patent against the party.
|
||||
|
||||
If you convey a covered work, knowingly relying on a patent license,
|
||||
and the Corresponding Source of the work is not available for anyone
|
||||
to copy, free of charge and under the terms of this License, through a
|
||||
publicly available network server or other readily accessible means,
|
||||
then you must either (1) cause the Corresponding Source to be so
|
||||
available, or (2) arrange to deprive yourself of the benefit of the
|
||||
patent license for this particular work, or (3) arrange, in a manner
|
||||
consistent with the requirements of this License, to extend the patent
|
||||
license to downstream recipients. "Knowingly relying" means you have
|
||||
actual knowledge that, but for the patent license, your conveying the
|
||||
covered work in a country, or your recipient's use of the covered work
|
||||
in a country, would infringe one or more identifiable patents in that
|
||||
country that you have reason to believe are valid.
|
||||
|
||||
If, pursuant to or in connection with a single transaction or
|
||||
arrangement, you convey, or propagate by procuring conveyance of, a
|
||||
covered work, and grant a patent license to some of the parties
|
||||
receiving the covered work authorizing them to use, propagate, modify
|
||||
or convey a specific copy of the covered work, then the patent license
|
||||
you grant is automatically extended to all recipients of the covered
|
||||
work and works based on it.
|
||||
|
||||
A patent license is "discriminatory" if it does not include within
|
||||
the scope of its coverage, prohibits the exercise of, or is
|
||||
conditioned on the non-exercise of one or more of the rights that are
|
||||
specifically granted under this License. You may not convey a covered
|
||||
work if you are a party to an arrangement with a third party that is
|
||||
in the business of distributing software, under which you make payment
|
||||
to the third party based on the extent of your activity of conveying
|
||||
the work, and under which the third party grants, to any of the
|
||||
parties who would receive the covered work from you, a discriminatory
|
||||
patent license (a) in connection with copies of the covered work
|
||||
conveyed by you (or copies made from those copies), or (b) primarily
|
||||
for and in connection with specific products or compilations that
|
||||
contain the covered work, unless you entered into that arrangement,
|
||||
or that patent license was granted, prior to 28 March 2007.
|
||||
|
||||
Nothing in this License shall be construed as excluding or limiting
|
||||
any implied license or other defenses to infringement that may
|
||||
otherwise be available to you under applicable patent law.
|
||||
|
||||
12. No Surrender of Others' Freedom.
|
||||
|
||||
If conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot convey a
|
||||
covered work so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you may
|
||||
not convey it at all. For example, if you agree to terms that obligate you
|
||||
to collect a royalty for further conveying from those to whom you convey
|
||||
the Program, the only way you could satisfy both those terms and this
|
||||
License would be to refrain entirely from conveying the Program.
|
||||
|
||||
13. Use with the GNU Affero General Public License.
|
||||
|
||||
Notwithstanding any other provision of this License, you have
|
||||
permission to link or combine any covered work with a work licensed
|
||||
under version 3 of the GNU Affero General Public License into a single
|
||||
combined work, and to convey the resulting work. The terms of this
|
||||
License will continue to apply to the part which is the covered work,
|
||||
but the special requirements of the GNU Affero General Public License,
|
||||
section 13, concerning interaction through a network will apply to the
|
||||
combination as such.
|
||||
|
||||
14. Revised Versions of this License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions of
|
||||
the GNU General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the
|
||||
Program specifies that a certain numbered version of the GNU General
|
||||
Public License "or any later version" applies to it, you have the
|
||||
option of following the terms and conditions either of that numbered
|
||||
version or of any later version published by the Free Software
|
||||
Foundation. If the Program does not specify a version number of the
|
||||
GNU General Public License, you may choose any version ever published
|
||||
by the Free Software Foundation.
|
||||
|
||||
If the Program specifies that a proxy can decide which future
|
||||
versions of the GNU General Public License can be used, that proxy's
|
||||
public statement of acceptance of a version permanently authorizes you
|
||||
to choose that version for the Program.
|
||||
|
||||
Later license versions may give you additional or different
|
||||
permissions. However, no additional obligations are imposed on any
|
||||
author or copyright holder as a result of your choosing to follow a
|
||||
later version.
|
||||
|
||||
15. Disclaimer of Warranty.
|
||||
|
||||
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
|
||||
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
|
||||
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
|
||||
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
|
||||
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
|
||||
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
|
||||
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
|
||||
16. Limitation of Liability.
|
||||
|
||||
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
||||
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
|
||||
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
|
||||
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
|
||||
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
|
||||
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
|
||||
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGES.
|
||||
|
||||
17. Interpretation of Sections 15 and 16.
|
||||
|
||||
If the disclaimer of warranty and limitation of liability provided
|
||||
above cannot be given local legal effect according to their terms,
|
||||
reviewing courts shall apply local law that most closely approximates
|
||||
an absolute waiver of all civil liability in connection with the
|
||||
Program, unless a warranty or assumption of liability accompanies a
|
||||
copy of the Program in return for a fee.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
state the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
{one line to give the program's name and a brief idea of what it does.}
|
||||
Copyright (C) {year} {name of author}
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program does terminal interaction, make it output a short
|
||||
notice like this when it starts in an interactive mode:
|
||||
|
||||
{project} Copyright (C) {year} {fullname}
|
||||
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, your program's commands
|
||||
might be different; for a GUI interface, you would use an "about box".
|
||||
|
||||
You should also get your employer (if you work as a programmer) or school,
|
||||
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
||||
For more information on this, and how to apply and follow the GNU GPL, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
|
||||
The GNU General Public License does not permit incorporating your program
|
||||
into proprietary programs. If your program is a subroutine library, you
|
||||
may consider it more useful to permit linking proprietary applications with
|
||||
the library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License. But first, please read
|
||||
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
|
||||
37
MinecraftUSkinEditor.sln
Normal file
@@ -0,0 +1,37 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.30320.27
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MinecraftUSkinEditor", "MinecraftUSkinEditor\MinecraftUSkinEditor.csproj", "{0ACAAEDE-93F5-4B5D-B8D7-A0C43359C0D6}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nobleUpdater", "nobleUpdater\nobleUpdater.csproj", "{F77A61F1-0C6F-45DC-A5B5-A7BF38D64322}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSM Visualiser", "CSM Visualiser\CSM Visualiser.csproj", "{3530A9F2-AE0F-44B4-84F9-8FBACB456070}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{0ACAAEDE-93F5-4B5D-B8D7-A0C43359C0D6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0ACAAEDE-93F5-4B5D-B8D7-A0C43359C0D6}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{0ACAAEDE-93F5-4B5D-B8D7-A0C43359C0D6}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{0ACAAEDE-93F5-4B5D-B8D7-A0C43359C0D6}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{F77A61F1-0C6F-45DC-A5B5-A7BF38D64322}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{F77A61F1-0C6F-45DC-A5B5-A7BF38D64322}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{F77A61F1-0C6F-45DC-A5B5-A7BF38D64322}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F77A61F1-0C6F-45DC-A5B5-A7BF38D64322}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{3530A9F2-AE0F-44B4-84F9-8FBACB456070}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{3530A9F2-AE0F-44B4-84F9-8FBACB456070}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{3530A9F2-AE0F-44B4-84F9-8FBACB456070}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{3530A9F2-AE0F-44B4-84F9-8FBACB456070}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {9A3BF1FB-950F-401E-9F58-EA7BBADCE6F2}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
BIN
MinecraftUSkinEditor/133988-200.png
Normal file
|
After Width: | Height: | Size: 3.0 KiB |
BIN
MinecraftUSkinEditor/1600.png
Normal file
|
After Width: | Height: | Size: 25 KiB |
BIN
MinecraftUSkinEditor/226179-200.png
Normal file
|
After Width: | Height: | Size: 3.1 KiB |
BIN
MinecraftUSkinEditor/6a89a2b6.png
Normal file
|
After Width: | Height: | Size: 59 KiB |
42
MinecraftUSkinEditor/App.config
Normal file
@@ -0,0 +1,42 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
|
||||
</startup>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="SharpDX" publicKeyToken="b4dcf0f35e5521f1" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-3.1.1.0" newVersion="3.1.1.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="SharpDX.DXGI" publicKeyToken="b4dcf0f35e5521f1" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-3.1.1.0" newVersion="3.1.1.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.IO.Compression" publicKeyToken="b77a5c561934e089" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.1.2.0" newVersion="4.1.2.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Diagnostics.DiagnosticSource" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.IO.FileSystem" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.IO.FileSystem.Primitives" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Security.Cryptography.Primitives" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Security.Cryptography.Algorithms" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.1.0.0" newVersion="4.1.0.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
BIN
MinecraftUSkinEditor/Avi.png
Normal file
|
After Width: | Height: | Size: 204 KiB |
187
MinecraftUSkinEditor/Classes/Bink.cs
Normal file
@@ -0,0 +1,187 @@
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.IO;
|
||||
using System.Reflection;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace minekampf.Classes
|
||||
{
|
||||
internal class Bink
|
||||
{
|
||||
[DllImport("kernel32.dll")]
|
||||
public static extern IntPtr LoadLibrary(string lpFileName);
|
||||
|
||||
[DllImport("kernel32.dll")]
|
||||
public static extern IntPtr FreeLibrary(IntPtr library);
|
||||
|
||||
public unsafe static string Binka(string infile, string outDir = null, bool last = true, string working = null)
|
||||
{
|
||||
bool flag = working == null;
|
||||
string text;
|
||||
string text2;
|
||||
string path;
|
||||
if (flag)
|
||||
{
|
||||
working = Path.GetTempPath() + DateTime.Now.Second.ToString();
|
||||
text = minekampf.Classes.Bink.ExtractResource("Resources.binka_encode.exe", working, "binka_encode.exe");
|
||||
text2 = minekampf.Classes.Bink.ExtractResource("Resources.mss32.dll", working, "mss32.dll");
|
||||
path = minekampf.Classes.Bink.ExtractResource("Resources.binkawin.asi", working, "binkawin.asi");
|
||||
minekampf.Classes.Bink.library = minekampf.Classes.Bink.LoadLibrary(text2);
|
||||
}
|
||||
else
|
||||
{
|
||||
text = working + "\\binka_encode.exe";
|
||||
text2 = working + "\\mss32.dll";
|
||||
path = working + "\\binkawin.asi";
|
||||
}
|
||||
bool flag2 = minekampf.Classes.Bink.getType(infile) == "WAV";
|
||||
if (flag2)
|
||||
{
|
||||
string[] array = minekampf.Classes.Bink.createArg(infile, outDir);
|
||||
Process process = new Process();
|
||||
process.StartInfo.FileName = text;
|
||||
process.StartInfo.Arguments = string.Concat(new string[]
|
||||
{
|
||||
" \"",
|
||||
array[0],
|
||||
"\" \"",
|
||||
array[1],
|
||||
"\""
|
||||
});
|
||||
process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
|
||||
process.Start();
|
||||
process.WaitForExit();
|
||||
}
|
||||
else
|
||||
{
|
||||
bool flag3 = minekampf.Classes.Bink.getType(infile) == "BINKA";
|
||||
if (flag3)
|
||||
{
|
||||
string[] array2 = minekampf.Classes.Bink.createArg(infile, outDir);
|
||||
byte[] array3 = File.ReadAllBytes(array2[0]);
|
||||
uint num = 0U;
|
||||
minekampf.Classes.Bink.AIL_set_redist_directory(".");
|
||||
minekampf.Classes.Bink.AIL_startup();
|
||||
IntPtr intPtr;
|
||||
bool flag4 = minekampf.Classes.Bink.AIL_decompress_ASI(array3, (uint)array3.Length, ".binka", &intPtr, &num, 0U) == 0;
|
||||
if (flag4)
|
||||
{
|
||||
throw new Exception("AIL ERROR");
|
||||
}
|
||||
byte[] array4 = new byte[num];
|
||||
Marshal.Copy(intPtr, array4, 0, array4.Length);
|
||||
minekampf.Classes.Bink.AIL_mem_free_lock(intPtr);
|
||||
minekampf.Classes.Bink.AIL_shutdown();
|
||||
File.WriteAllBytes(array2[1], array4);
|
||||
}
|
||||
}
|
||||
if (last)
|
||||
{
|
||||
minekampf.Classes.Bink.FreeLibrary(minekampf.Classes.Bink.library);
|
||||
minekampf.Classes.Bink.FreeLibrary(minekampf.Classes.Bink.library);
|
||||
File.Delete(text);
|
||||
File.Delete(path);
|
||||
while (File.Exists(text2))
|
||||
{
|
||||
try
|
||||
{
|
||||
File.Delete(text2);
|
||||
}
|
||||
catch
|
||||
{
|
||||
minekampf.Classes.Bink.FreeLibrary(minekampf.Classes.Bink.library);
|
||||
}
|
||||
}
|
||||
}
|
||||
return working;
|
||||
}
|
||||
|
||||
private static string getType(string loc)
|
||||
{
|
||||
string a = Path.GetExtension(loc).ToLower();
|
||||
bool flag = a == ".binka";
|
||||
string result;
|
||||
if (flag)
|
||||
{
|
||||
result = "BINKA";
|
||||
}
|
||||
else
|
||||
{
|
||||
bool flag2 = !(a == ".wav");
|
||||
if (flag2)
|
||||
{
|
||||
throw new Exception("File type not valid. To use MP3 or other audio formats, convert to wav format before using tool");
|
||||
}
|
||||
result = "WAV";
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
private static string[] createArg(string inFile, string outdir = null)
|
||||
{
|
||||
string[] array = new string[2];
|
||||
array[0] = inFile;
|
||||
string[] array2 = array;
|
||||
string type = minekampf.Classes.Bink.getType(inFile);
|
||||
bool flag = type == "BINKA";
|
||||
if (flag)
|
||||
{
|
||||
array2[1] = ((outdir.Length <= 3) ? Path.GetFullPath(inFile.Replace(".binka", ".wav")) : (outdir + "\\" + Path.GetFileName(inFile.Replace(".binka", ".wav"))));
|
||||
}
|
||||
else
|
||||
{
|
||||
bool flag2 = type == "WAV";
|
||||
if (flag2)
|
||||
{
|
||||
array2[1] = ((outdir.Length <= 3) ? Path.GetFullPath(inFile.Replace(".wav", ".binka")) : (outdir + "\\" + Path.GetFileName(inFile.Replace(".wav", ".binka"))));
|
||||
}
|
||||
}
|
||||
bool flag3 = !Directory.Exists(Path.GetDirectoryName(array2[1]));
|
||||
if (flag3)
|
||||
{
|
||||
Directory.CreateDirectory(Path.GetDirectoryName(array2[1]));
|
||||
}
|
||||
return array2;
|
||||
}
|
||||
|
||||
internal static string ExtractResource(string resource, string path, string filename)
|
||||
{
|
||||
Stream manifestResourceStream = Assembly.GetExecutingAssembly().GetManifestResourceStream(resource);
|
||||
byte[] array = new byte[(int)manifestResourceStream.Length];
|
||||
manifestResourceStream.Read(array, 0, array.Length);
|
||||
manifestResourceStream.Close();
|
||||
bool flag = !Directory.Exists(path);
|
||||
if (flag)
|
||||
{
|
||||
Directory.CreateDirectory(path);
|
||||
}
|
||||
path = path + "\\" + filename;
|
||||
File.WriteAllBytes(path, array);
|
||||
return path;
|
||||
}
|
||||
|
||||
[DllImport("mss32.dll", EntryPoint = "_AIL_decompress_ASI@24")]
|
||||
private unsafe static extern int AIL_decompress_ASI([MarshalAs(UnmanagedType.LPArray)] byte[] indata, uint insize, [MarshalAs(UnmanagedType.LPStr)] string ext, IntPtr* result, uint* resultsize, uint zero);
|
||||
|
||||
[DllImport("mss32.dll", EntryPoint = "_AIL_last_error@0")]
|
||||
private static extern IntPtr AIL_last_error();
|
||||
|
||||
[DllImport("mss32.dll", EntryPoint = "_AIL_set_redist_directory@4")]
|
||||
private static extern IntPtr AIL_set_redist_directory([MarshalAs(UnmanagedType.LPStr)] string redistDir);
|
||||
|
||||
[DllImport("mss32.dll", EntryPoint = "_AIL_mem_free_lock@4")]
|
||||
private static extern void AIL_mem_free_lock(IntPtr ptr);
|
||||
|
||||
[DllImport("mss32.dll", EntryPoint = "_AIL_startup@0")]
|
||||
private static extern int AIL_startup();
|
||||
|
||||
[DllImport("mss32.dll", EntryPoint = "_AIL_shutdown@0")]
|
||||
private static extern int AIL_shutdown();
|
||||
|
||||
public Bink()
|
||||
{
|
||||
}
|
||||
|
||||
private static IntPtr library;
|
||||
}
|
||||
}
|
||||
23
MinecraftUSkinEditor/Classes/COL.cs
Normal file
@@ -0,0 +1,23 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace minekampf.Classes
|
||||
{
|
||||
public class COL
|
||||
{
|
||||
|
||||
public COL(byte[] data)
|
||||
{
|
||||
Read(data);
|
||||
}
|
||||
|
||||
public void Read(byte[] data)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
25
MinecraftUSkinEditor/Classes/DiscordBot.cs
Normal file
@@ -0,0 +1,25 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Net;
|
||||
using System.Collections.Specialized;
|
||||
|
||||
namespace minekampf.Classes
|
||||
{
|
||||
class DiscordBot
|
||||
{
|
||||
//https://discordapp.com/api/webhooks/797263532139479070/ExbpwHKxP-1_cpxnAVrqFXm9SFKhk2cIUyhEVobT2Ds8PuQKbaFvzl2hjrKsEZXrXHI3
|
||||
|
||||
public static void sendDiscordWebhook(string URL, string profilepic, string username, string message)
|
||||
{
|
||||
NameValueCollection discordValues = new NameValueCollection();
|
||||
discordValues.Add("username", username);
|
||||
discordValues.Add("avatar_url", profilepic);
|
||||
discordValues.Add("content", message);
|
||||
new WebClient().UploadValues(URL, discordValues);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
33
MinecraftUSkinEditor/Classes/FileBase.cs
Normal file
@@ -0,0 +1,33 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
public enum Endianness
|
||||
{
|
||||
Little = 0,
|
||||
Big = 1
|
||||
}
|
||||
|
||||
public abstract class FileBase
|
||||
{
|
||||
public abstract Endianness Endian { get; set; }
|
||||
|
||||
|
||||
public abstract void Read(string filename);
|
||||
public abstract byte[] Rebuild();
|
||||
|
||||
public void Save(string filename)
|
||||
{
|
||||
var Data = Rebuild();
|
||||
if (Data.Length <= 0)
|
||||
throw new Exception("Warning: Data was empty!");
|
||||
|
||||
File.WriteAllBytes(filename, Data);
|
||||
}
|
||||
}
|
||||
}
|
||||
264
MinecraftUSkinEditor/Classes/FileData.cs
Normal file
@@ -0,0 +1,264 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
public class FileData
|
||||
{
|
||||
private byte[] b;
|
||||
|
||||
private int p;
|
||||
|
||||
public Endianness Endian;
|
||||
|
||||
public FileData(string f)
|
||||
{
|
||||
b = File.ReadAllBytes(f);
|
||||
}
|
||||
|
||||
public FileData(byte[] b)
|
||||
{
|
||||
this.b = b;
|
||||
}
|
||||
|
||||
public int eof()
|
||||
{
|
||||
return b.Length;
|
||||
}
|
||||
|
||||
public byte[] read(int length)
|
||||
{
|
||||
if (length + p > b.Length)
|
||||
{
|
||||
throw new IndexOutOfRangeException();
|
||||
}
|
||||
byte[] array = new byte[length];
|
||||
int num = 0;
|
||||
while (num < length)
|
||||
{
|
||||
array[num] = b[p];
|
||||
num++;
|
||||
p++;
|
||||
}
|
||||
return array;
|
||||
}
|
||||
|
||||
public int readInt()
|
||||
{
|
||||
if (Endian == Endianness.Little)
|
||||
{
|
||||
return (b[p++] & 0xFF) | ((b[p++] & 0xFF) << 8) | ((b[p++] & 0xFF) << 16) | ((b[p++] & 0xFF) << 24);
|
||||
}
|
||||
return ((b[p++] & 0xFF) << 24) | ((b[p++] & 0xFF) << 16) | ((b[p++] & 0xFF) << 8) | (b[p++] & 0xFF);
|
||||
}
|
||||
|
||||
public int readThree()
|
||||
{
|
||||
if (Endian == Endianness.Little)
|
||||
{
|
||||
return (b[p++] & 0xFF) | ((b[p++] & 0xFF) << 8) | ((b[p++] & 0xFF) << 16);
|
||||
}
|
||||
return ((b[p++] & 0xFF) << 16) | ((b[p++] & 0xFF) << 8) | (b[p++] & 0xFF);
|
||||
}
|
||||
|
||||
public int readShort()
|
||||
{
|
||||
if (Endian == Endianness.Little)
|
||||
{
|
||||
return (b[p++] & 0xFF) | ((b[p++] & 0xFF) << 8);
|
||||
}
|
||||
return ((b[p++] & 0xFF) << 8) | (b[p++] & 0xFF);
|
||||
}
|
||||
|
||||
public int readByte()
|
||||
{
|
||||
return b[p++] & 0xFF;
|
||||
}
|
||||
|
||||
public byte[] readBytes(int length)
|
||||
{
|
||||
List<byte> list = new List<byte>();
|
||||
for (int i = 0; i < length; i++)
|
||||
{
|
||||
list.Add((byte)readByte());
|
||||
}
|
||||
return list.ToArray();
|
||||
}
|
||||
|
||||
public float readFloat()
|
||||
{
|
||||
byte[] array = new byte[4];
|
||||
array = ((Endian != 0) ? new byte[4]
|
||||
{
|
||||
b[p + 3],
|
||||
b[p + 2],
|
||||
b[p + 1],
|
||||
b[p]
|
||||
} : new byte[4]
|
||||
{
|
||||
b[p],
|
||||
b[p + 1],
|
||||
b[p + 2],
|
||||
b[p + 3]
|
||||
});
|
||||
p += 4;
|
||||
return BitConverter.ToSingle(array, 0);
|
||||
}
|
||||
|
||||
public float readHalfFloat()
|
||||
{
|
||||
return toFloat((short)readShort());
|
||||
}
|
||||
|
||||
public static float toFloat(int hbits)
|
||||
{
|
||||
int num = hbits & 0x3FF;
|
||||
int num2 = hbits & 0x7C00;
|
||||
switch (num2)
|
||||
{
|
||||
case 31744:
|
||||
num2 = 261120;
|
||||
break;
|
||||
default:
|
||||
num2 += 114688;
|
||||
if (num == 0 && num2 > 115712)
|
||||
{
|
||||
return BitConverter.ToSingle(BitConverter.GetBytes(((hbits & 0x8000) << 16) | (num2 << 13) | 0x3FF), 0);
|
||||
}
|
||||
break;
|
||||
case 0:
|
||||
if (num != 0)
|
||||
{
|
||||
num2 = 115712;
|
||||
do
|
||||
{
|
||||
num <<= 1;
|
||||
num2 -= 1024;
|
||||
}
|
||||
while ((num & 0x400) == 0);
|
||||
num &= 0x3FF;
|
||||
}
|
||||
break;
|
||||
}
|
||||
return BitConverter.ToSingle(BitConverter.GetBytes(((hbits & 0x8000) << 16) | ((num2 | num) << 13)), 0);
|
||||
}
|
||||
|
||||
public static int fromFloat(float fval, bool littleEndian)
|
||||
{
|
||||
int num = FileOutput.SingleToInt32Bits(fval, littleEndian);
|
||||
int num2 = (num >> 16) & 0x8000;
|
||||
int num3 = (num & 0x7FFFFFFF) + 4096;
|
||||
if (num3 >= 1199570944)
|
||||
{
|
||||
if ((num & 0x7FFFFFFF) >= 1199570944)
|
||||
{
|
||||
if (num3 < 2139095040)
|
||||
{
|
||||
return num2 | 0x7C00;
|
||||
}
|
||||
return num2 | 0x7C00 | ((num & 0x7FFFFF) >> 13);
|
||||
}
|
||||
return num2 | 0x7BFF;
|
||||
}
|
||||
if (num3 >= 947912704)
|
||||
{
|
||||
return num2 | (num3 - 939524096 >> 13);
|
||||
}
|
||||
if (num3 < 855638016)
|
||||
{
|
||||
return num2;
|
||||
}
|
||||
num3 = (num & 0x7FFFFFFF) >> 23;
|
||||
return num2 | (((num & 0x7FFFFF) | 0x800000) + (8388608 >> num3 - 102) >> 126 - num3);
|
||||
}
|
||||
|
||||
public static int sign12Bit(int i)
|
||||
{
|
||||
if (((i >> 11) & 1) == 1)
|
||||
{
|
||||
i = ~i;
|
||||
i &= 0xFFF;
|
||||
i++;
|
||||
i *= -1;
|
||||
}
|
||||
return i;
|
||||
}
|
||||
|
||||
public void skip(int i)
|
||||
{
|
||||
p += i;
|
||||
}
|
||||
|
||||
public void seek(int i)
|
||||
{
|
||||
p = i;
|
||||
}
|
||||
|
||||
public int pos()
|
||||
{
|
||||
return p;
|
||||
}
|
||||
|
||||
public int size()
|
||||
{
|
||||
return b.Length;
|
||||
}
|
||||
|
||||
public string readString()
|
||||
{
|
||||
string text = "";
|
||||
while (b[p] != 0)
|
||||
{
|
||||
string str = text;
|
||||
char c = (char)b[p];
|
||||
text = str + c;
|
||||
p++;
|
||||
}
|
||||
return text;
|
||||
}
|
||||
|
||||
public byte[] getSection(int offset, int size)
|
||||
{
|
||||
byte[] array = new byte[size];
|
||||
Array.Copy(b, offset, array, 0, size);
|
||||
return array;
|
||||
}
|
||||
|
||||
public string readString(int p, int size)
|
||||
{
|
||||
if (size == -1)
|
||||
{
|
||||
string text = "";
|
||||
while (p < b.Length && (b[p] & 0xFFu) != 0)
|
||||
{
|
||||
text += (char)(b[p] & 0xFFu);
|
||||
p++;
|
||||
}
|
||||
return text;
|
||||
}
|
||||
string text2 = "";
|
||||
for (int i = p; i < p + size; i++)
|
||||
{
|
||||
if ((b[i] & 0xFFu) != 0)
|
||||
{
|
||||
text2 += (char)(b[i] & 0xFFu);
|
||||
}
|
||||
}
|
||||
return text2;
|
||||
}
|
||||
|
||||
public void align(int i)
|
||||
{
|
||||
while (p % i != 0)
|
||||
{
|
||||
p++;
|
||||
}
|
||||
}
|
||||
|
||||
public int readOffset()
|
||||
{
|
||||
return p + readInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
175
MinecraftUSkinEditor/Classes/FileOutput.cs
Normal file
@@ -0,0 +1,175 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
public class FileOutput
|
||||
{
|
||||
|
||||
List<byte> data = new List<byte>();
|
||||
|
||||
public Endianness Endian;
|
||||
|
||||
public byte[] getBytes()
|
||||
{
|
||||
return data.ToArray();
|
||||
}
|
||||
|
||||
public void writeString(String s){
|
||||
char[] c = s.ToCharArray();
|
||||
for(int i = 0; i < c.Length ; i++)
|
||||
data.Add((byte)c[i]);
|
||||
}
|
||||
|
||||
public int size(){
|
||||
return data.Count;
|
||||
}
|
||||
|
||||
public void writeOutput(FileOutput d){
|
||||
foreach(byte b in d.data)
|
||||
data.Add(b);
|
||||
}
|
||||
|
||||
private static char[] HexToCharArray(string hex)
|
||||
{
|
||||
return Enumerable.Range(0, hex.Length)
|
||||
.Where(x => x % 2 == 0)
|
||||
.Select(x => Convert.ToByte(hex.Substring(x, 2), 16))
|
||||
.Select(x => Convert.ToChar(x))
|
||||
.ToArray();
|
||||
}
|
||||
|
||||
public void writeHex(string s)
|
||||
{
|
||||
char[] c = HexToCharArray(s);
|
||||
for (int i = 0; i < c.Length; i++)
|
||||
data.Add((byte)c[i]);
|
||||
}
|
||||
|
||||
public void writeInt(int i){
|
||||
if(Endian == Endianness.Little){
|
||||
data.Add((byte)((i)&0xFF));
|
||||
data.Add((byte)((i>>8)&0xFF));
|
||||
data.Add((byte)((i>>16)&0xFF));
|
||||
data.Add((byte)((i>>24)&0xFF));
|
||||
}else{
|
||||
data.Add((byte)((i>>24)&0xFF));
|
||||
data.Add((byte)((i>>16)&0xFF));
|
||||
data.Add((byte)((i>>8)&0xFF));
|
||||
data.Add((byte)((i)&0xFF));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
public void writeIntAt(int i, int p){
|
||||
if(Endian == Endianness.Little){
|
||||
data[p++] = (byte)((i)&0xFF);
|
||||
data[p++] = (byte)((i>>8)&0xFF);
|
||||
data[p++] = (byte)((i>>16)&0xFF);
|
||||
data[p++] = (byte)((i>>24)&0xFF);
|
||||
}else{
|
||||
data[p++] = (byte)((i>>24)&0xFF);
|
||||
data[p++] = (byte)((i>>16)&0xFF);
|
||||
data[p++] = (byte)((i>>8)&0xFF);
|
||||
data[p++] = (byte)((i)&0xFF);
|
||||
}
|
||||
}
|
||||
public void writeShortAt(int i, int p){
|
||||
if(Endian == Endianness.Little){
|
||||
data[p++] = (byte)((i)&0xFF);
|
||||
data[p++] = (byte)((i>>8)&0xFF);
|
||||
}else{
|
||||
data[p++] = (byte)((i>>8)&0xFF);
|
||||
data[p++] = (byte)((i)&0xFF);
|
||||
}
|
||||
}
|
||||
|
||||
public void align(int i){
|
||||
while(data.Count % i != 0)
|
||||
writeByte(0);
|
||||
}
|
||||
|
||||
public void align(int i, int v){
|
||||
while(data.Count % i != 0)
|
||||
writeByte(v);
|
||||
}
|
||||
|
||||
/*public void align(int i, int value){
|
||||
while(data.size() % i != 0)
|
||||
writeByte(value);
|
||||
}*/
|
||||
|
||||
|
||||
public void writeFloat(float f){
|
||||
int i = SingleToInt32Bits (f, Endian == Endianness.Big);
|
||||
data.Add((byte)((i)&0xFF));
|
||||
data.Add((byte)((i>>8)&0xFF));
|
||||
data.Add((byte)((i>>16)&0xFF));
|
||||
data.Add((byte)((i>>24)&0xFF));
|
||||
}
|
||||
|
||||
public static int SingleToInt32Bits(float value, bool littleEndian) {
|
||||
byte[] b = BitConverter.GetBytes (value);
|
||||
int p = 0;
|
||||
|
||||
if (!littleEndian) {
|
||||
return (b [p++]&0xFF) | ((b [p++] & 0xFF) << 8) | ((b [p++] & 0xFF) << 16) | ((b [p++] & 0xFF) << 24);
|
||||
}else
|
||||
return ((b [p++] & 0xFF) << 24) | ((b [p++] & 0xFF) << 16) | ((b [p++] & 0xFF) << 8) | (b [p++]&0xFF);
|
||||
}
|
||||
|
||||
public void writeHalfFloat(float f){
|
||||
int i = FileData.fromFloat(f, Endian == Endianness.Little);
|
||||
data.Add((byte)((i>>8)&0xFF));
|
||||
data.Add((byte)((i)&0xFF));
|
||||
}
|
||||
|
||||
public void writeShort(int i){
|
||||
if(Endian == Endianness.Little){
|
||||
data.Add((byte)((i)&0xFF));
|
||||
data.Add((byte)((i>>8)&0xFF));
|
||||
} else {
|
||||
data.Add((byte)((i>>8)&0xFF));
|
||||
data.Add((byte)((i)&0xFF));
|
||||
}
|
||||
}
|
||||
|
||||
public void writeByte(int i){
|
||||
data.Add((byte)((i)&0xFF));
|
||||
}
|
||||
|
||||
public void writeChars(char[] c)
|
||||
{
|
||||
foreach (char ch in c)
|
||||
writeByte(Convert.ToByte(ch));
|
||||
}
|
||||
|
||||
public void writeBytes(byte[] bytes)
|
||||
{
|
||||
foreach(byte b in bytes)
|
||||
writeByte(b);
|
||||
}
|
||||
|
||||
public void writeFlag(bool b)
|
||||
{
|
||||
if (b)
|
||||
writeByte(1);
|
||||
else
|
||||
writeByte(0);
|
||||
}
|
||||
|
||||
public int pos()
|
||||
{
|
||||
return data.Count;
|
||||
}
|
||||
|
||||
public void save(String fname)
|
||||
{
|
||||
File.WriteAllBytes (fname, data.ToArray());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
6
MinecraftUSkinEditor/Classes/KeyValuePair.cs
Normal file
@@ -0,0 +1,6 @@
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
internal class KeyValuePair<T>
|
||||
{
|
||||
}
|
||||
}
|
||||
130
MinecraftUSkinEditor/Classes/LOC.cs
Normal file
@@ -0,0 +1,130 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
public class LOC
|
||||
{
|
||||
public LOC()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public LOC(byte[] data)
|
||||
{
|
||||
Read(data);
|
||||
}
|
||||
|
||||
public string readString(FileData f)
|
||||
{
|
||||
int length = f.readShort();
|
||||
string str = f.readString(f.pos(), length);
|
||||
f.skip(length);
|
||||
return str;
|
||||
}
|
||||
|
||||
public class Language
|
||||
{
|
||||
public string name;
|
||||
public int unk1;
|
||||
public List<string> names = new List<string>();
|
||||
|
||||
public string readString(FileData f)
|
||||
{
|
||||
int length = f.readShort();
|
||||
string str = f.readString(f.pos(), length);
|
||||
f.skip(length);
|
||||
return str;
|
||||
}
|
||||
|
||||
public Language() { }
|
||||
|
||||
public void Read(FileData f)
|
||||
{
|
||||
int idCount = f.readInt();
|
||||
for (int i = 0; i < idCount; i++)
|
||||
names.Add(readString(f));
|
||||
}
|
||||
|
||||
public byte[] Rebuild()
|
||||
{
|
||||
FileOutput f = new FileOutput();
|
||||
f.Endian = Endianness.Big;
|
||||
|
||||
f.writeInt(names.Count);
|
||||
foreach(string name in names)
|
||||
{
|
||||
f.writeShort(name.Length);
|
||||
f.writeString(name);
|
||||
}
|
||||
|
||||
return f.getBytes();
|
||||
}
|
||||
}
|
||||
|
||||
public Language ids = new Language();
|
||||
public List<Language> langs = new List<Language>();
|
||||
|
||||
public void Read(byte[] data)
|
||||
{
|
||||
FileData f = new FileData(data);
|
||||
f.Endian = Endianness.Big;
|
||||
|
||||
int unk1 = f.readInt();
|
||||
if (unk1 != 2)
|
||||
throw new NotImplementedException("Not localization data");
|
||||
int langCount = f.readInt();
|
||||
f.skip(1);
|
||||
|
||||
ids.Read(f);
|
||||
|
||||
for(int i = 0; i < langCount; i++)
|
||||
{
|
||||
Language l = new Language();
|
||||
l.name = readString(f);
|
||||
l.unk1 = f.readInt();
|
||||
langs.Add(l);
|
||||
}
|
||||
|
||||
foreach (Language l in langs)
|
||||
{
|
||||
f.skip(5);
|
||||
f.skip(f.readShort());
|
||||
l.Read(f);
|
||||
}
|
||||
}
|
||||
|
||||
public byte[] Rebuild()
|
||||
{
|
||||
FileOutput f = new FileOutput();
|
||||
f.Endian = Endianness.Big;
|
||||
|
||||
f.writeInt(2);
|
||||
f.writeInt(langs.Count);
|
||||
f.writeByte(0);
|
||||
|
||||
f.writeBytes(ids.Rebuild());
|
||||
|
||||
foreach(Language l in langs)
|
||||
{
|
||||
f.writeShort(l.name.Length);
|
||||
f.writeString(l.name);
|
||||
f.writeInt(7 + l.name.Length + l.Rebuild().Length);
|
||||
}
|
||||
|
||||
foreach(Language l in langs)
|
||||
{
|
||||
f.writeInt(2);
|
||||
f.writeByte(0);
|
||||
f.writeShort(l.name.Length);
|
||||
f.writeString(l.name);
|
||||
f.writeBytes(l.Rebuild());
|
||||
}
|
||||
|
||||
return f.getBytes();
|
||||
}
|
||||
}
|
||||
}
|
||||
217
MinecraftUSkinEditor/Classes/PCK.cs
Normal file
@@ -0,0 +1,217 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.IO;
|
||||
using System.Windows;
|
||||
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
public class PCK
|
||||
{
|
||||
|
||||
public class MineFile
|
||||
{
|
||||
public int filesize;
|
||||
public int type;
|
||||
public string name;
|
||||
public byte[] data;
|
||||
public List<object[]> entries = new List<object[]>();
|
||||
}
|
||||
|
||||
public int pckType = 0;
|
||||
|
||||
public Dictionary<int, string> types = new Dictionary<int, string>();
|
||||
public Dictionary<string, int> typeCodes = new Dictionary<string, int>();
|
||||
public List<MineFile> mineFiles = new List<MineFile>();
|
||||
|
||||
public PCK()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public PCK(string filename)
|
||||
{
|
||||
Read(File.ReadAllBytes(filename));
|
||||
}
|
||||
|
||||
private static byte[] endianReverseUnicode(byte[] str)
|
||||
{
|
||||
byte[] newStr = new byte[str.Length];
|
||||
for (int i = 0; i < str.Length; i += 2)
|
||||
{
|
||||
newStr[i] = str[i + 1];
|
||||
newStr[i + 1] = str[i];
|
||||
}
|
||||
return newStr;
|
||||
}
|
||||
|
||||
public static string readMineString(FileData f)
|
||||
{
|
||||
int length = f.readInt() * 2;
|
||||
Console.WriteLine(length.ToString());
|
||||
return Encoding.Unicode.GetString(endianReverseUnicode(f.readBytes(length)));
|
||||
|
||||
}
|
||||
|
||||
public static string readMineStringVita(FileData f)
|
||||
{
|
||||
int length = f.readInt() / 20000000;
|
||||
Console.WriteLine(length.ToString() + " - caught");
|
||||
return Encoding.Unicode.GetString(endianReverseUnicode(f.readBytes(length)));
|
||||
|
||||
}
|
||||
|
||||
public static string readMineStringVita2(FileData f)
|
||||
{
|
||||
int length = (f.readInt() / 20000000) * 2;
|
||||
Console.WriteLine(length.ToString() + " - caught");
|
||||
return Encoding.Unicode.GetString(endianReverseUnicode(f.readBytes(length)));
|
||||
|
||||
}
|
||||
|
||||
public void Read(byte[] data)
|
||||
{
|
||||
FileData fileData = new FileData(data);
|
||||
fileData.Endian = Endianness.Big;
|
||||
fileData.readInt();
|
||||
int entryTypeCount = fileData.readInt();
|
||||
for (int i = 0; i < entryTypeCount; i++)
|
||||
{
|
||||
int unk = fileData.readInt();
|
||||
string text = "";
|
||||
try
|
||||
{
|
||||
try
|
||||
{
|
||||
text = readMineString(fileData);
|
||||
}
|
||||
catch
|
||||
{
|
||||
try
|
||||
{
|
||||
text = readMineStringVita(fileData);
|
||||
}
|
||||
catch
|
||||
{
|
||||
text = readMineStringVita2(fileData);
|
||||
}
|
||||
}
|
||||
}
|
||||
catch
|
||||
{
|
||||
text = "Hello!";
|
||||
}
|
||||
types.Add(unk, text);
|
||||
typeCodes.Add(text, unk);
|
||||
fileData.skip(4);
|
||||
}
|
||||
|
||||
int itemCount = fileData.readInt();
|
||||
|
||||
// no metadata
|
||||
if (entryTypeCount == 0)
|
||||
{
|
||||
Console.WriteLine("PckType0");
|
||||
}
|
||||
// type 1 or 2
|
||||
else if (itemCount < 3)
|
||||
{
|
||||
pckType = itemCount;
|
||||
itemCount = fileData.readInt();
|
||||
if (pckType == 1)
|
||||
Console.WriteLine("PckType1");
|
||||
if (pckType == 2)
|
||||
Console.WriteLine("PckType2");
|
||||
}
|
||||
// regular pck
|
||||
else
|
||||
{
|
||||
Console.WriteLine("NormalPCK");
|
||||
}
|
||||
|
||||
|
||||
for (int j = 0; j < itemCount; j++)
|
||||
{
|
||||
MineFile mineFile = new MineFile();
|
||||
mineFile.filesize = fileData.readInt();
|
||||
mineFile.type = fileData.readInt();
|
||||
int length = fileData.readInt() * 2;
|
||||
mineFile.name = Encoding.Unicode.GetString(endianReverseUnicode(fileData.readBytes(length)));
|
||||
fileData.skip(4);
|
||||
mineFiles.Add(mineFile);
|
||||
}
|
||||
|
||||
foreach (MineFile mineFile2 in mineFiles)
|
||||
{
|
||||
int num4 = fileData.readInt();
|
||||
for (int k = 0; k < num4; k++)
|
||||
{
|
||||
object[] array = new object[2];
|
||||
int key = fileData.readInt();
|
||||
array[0] = types[key];
|
||||
array[1] = readMineString(fileData);
|
||||
fileData.skip(4);
|
||||
mineFile2.entries.Add(array);
|
||||
}
|
||||
mineFile2.data = fileData.readBytes(mineFile2.filesize);
|
||||
}
|
||||
}
|
||||
|
||||
private static void writeMinecraftString(FileOutput f, string str)
|
||||
{
|
||||
byte[] d = Encoding.Unicode.GetBytes(str);
|
||||
f.writeInt(d.Length / 2);
|
||||
f.writeBytes(endianReverseUnicode(d));
|
||||
f.writeInt(0);
|
||||
}
|
||||
|
||||
public byte[] Rebuild()
|
||||
{
|
||||
FileOutput f = new FileOutput();
|
||||
f.Endian = Endianness.Big;
|
||||
|
||||
f.writeInt(3);
|
||||
f.writeInt(types.Count);
|
||||
foreach (int type in types.Keys)
|
||||
{
|
||||
f.writeInt(type);
|
||||
writeMinecraftString(f, types[type]);
|
||||
}
|
||||
|
||||
f.writeInt(mineFiles.Count);
|
||||
foreach (MineFile mf in mineFiles)
|
||||
{
|
||||
f.writeInt(mf.data.Length);
|
||||
f.writeInt(mf.type);
|
||||
writeMinecraftString(f, mf.name);
|
||||
}
|
||||
|
||||
foreach (MineFile mf in mineFiles)
|
||||
{
|
||||
string missing = "";
|
||||
try
|
||||
{
|
||||
f.writeInt(mf.entries.Count);
|
||||
foreach (object[] entry in mf.entries)
|
||||
{
|
||||
missing = entry[0].ToString();
|
||||
f.writeInt(typeCodes[(string)entry[0]]);
|
||||
writeMinecraftString(f, (string)entry[1]);
|
||||
}
|
||||
|
||||
f.writeBytes(mf.data);
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
MessageBox.Show(missing + " is not in the main metadatabase");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return f.getBytes();
|
||||
}
|
||||
}
|
||||
}
|
||||
33
MinecraftUSkinEditor/Classes/Program.cs
Normal file
@@ -0,0 +1,33 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using System.Threading;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
|
||||
|
||||
static class Program
|
||||
{
|
||||
public static string baseurl = "http://www.pckstudio.tk/";
|
||||
|
||||
public static FormMain formMain;
|
||||
/// <summary>
|
||||
/// The main entry point for the application.
|
||||
/// </summary>
|
||||
[STAThread]
|
||||
static void Main()
|
||||
{
|
||||
System.Globalization.CultureInfo ci = new System.Globalization.CultureInfo("ja");
|
||||
Thread.CurrentThread.CurrentCulture = ci;
|
||||
Application.EnableVisualStyles();
|
||||
Application.SetCompatibleTextRenderingDefault(false);
|
||||
minekampf.Forms.goodbye gg = new minekampf.Forms.goodbye();
|
||||
if(!System.IO.File.Exists(Environment.CurrentDirectory + "\\goodbyemark"))
|
||||
gg.ShowDialog();
|
||||
Application.Run(new FormMain());
|
||||
}
|
||||
}
|
||||
}
|
||||
2296
MinecraftUSkinEditor/Classes/RenderBase.cs
Normal file
576
MinecraftUSkinEditor/Classes/TextureCodec.cs
Normal file
@@ -0,0 +1,576 @@
|
||||
using System;
|
||||
using System.Linq;
|
||||
using System.Drawing;
|
||||
|
||||
namespace Ohana3DS_Rebirth.Ohana
|
||||
{
|
||||
class TextureCodec
|
||||
{
|
||||
private static int[] tileOrder = { 0, 1, 8, 9, 2, 3, 10, 11, 16, 17, 24, 25, 18, 19, 26, 27, 4, 5, 12, 13, 6, 7, 14, 15, 20, 21, 28, 29, 22, 23, 30, 31, 32, 33, 40, 41, 34, 35, 42, 43, 48, 49, 56, 57, 50, 51, 58, 59, 36, 37, 44, 45, 38, 39, 46, 47, 52, 53, 60, 61, 54, 55, 62, 63 };
|
||||
private static int[,] etc1LUT = { { 2, 8, -2, -8 }, { 5, 17, -5, -17 }, { 9, 29, -9, -29 }, { 13, 42, -13, -42 }, { 18, 60, -18, -60 }, { 24, 80, -24, -80 }, { 33, 106, -33, -106 }, { 47, 183, -47, -183 } };
|
||||
|
||||
/// <summary>
|
||||
/// Decodes a PICA200 Texture.
|
||||
/// </summary>
|
||||
/// <param name="data">Buffer with the Texture</param>
|
||||
/// <param name="width">Width of the Texture</param>
|
||||
/// <param name="height">Height of the Texture</param>
|
||||
/// <param name="format">Pixel Format of the Texture</param>
|
||||
/// <returns></returns>
|
||||
public static Bitmap decode(byte[] data, int width, int height, RenderBase.OTextureFormat format)
|
||||
{
|
||||
byte[] output = new byte[width * height * 4];
|
||||
long dataOffset = 0;
|
||||
bool toggle = false;
|
||||
|
||||
switch (format)
|
||||
{
|
||||
case RenderBase.OTextureFormat.rgba8:
|
||||
for (int tY = 0; tY < height / 8; tY++)
|
||||
{
|
||||
for (int tX = 0; tX < width / 8; tX++)
|
||||
{
|
||||
for (int pixel = 0; pixel < 64; pixel++)
|
||||
{
|
||||
int x = tileOrder[pixel] % 8;
|
||||
int y = (tileOrder[pixel] - x) / 8;
|
||||
long outputOffset = ((tX * 8) + x + ((tY * 8 + y) * width)) * 4;
|
||||
|
||||
Buffer.BlockCopy(data, (int)dataOffset + 1, output, (int)outputOffset, 3);
|
||||
output[outputOffset + 3] = data[dataOffset];
|
||||
|
||||
dataOffset += 4;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case RenderBase.OTextureFormat.rgb8:
|
||||
for (int tY = 0; tY < height / 8; tY++)
|
||||
{
|
||||
for (int tX = 0; tX < width / 8; tX++)
|
||||
{
|
||||
for (int pixel = 0; pixel < 64; pixel++)
|
||||
{
|
||||
int x = tileOrder[pixel] % 8;
|
||||
int y = (tileOrder[pixel] - x) / 8;
|
||||
long outputOffset = ((tX * 8) + x + (((tY * 8 + y)) * width)) * 4;
|
||||
|
||||
Buffer.BlockCopy(data, (int)dataOffset, output, (int)outputOffset, 3);
|
||||
output[outputOffset + 3] = 0xff;
|
||||
|
||||
dataOffset += 3;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case RenderBase.OTextureFormat.rgba5551:
|
||||
for (int tY = 0; tY < height / 8; tY++)
|
||||
{
|
||||
for (int tX = 0; tX < width / 8; tX++)
|
||||
{
|
||||
for (int pixel = 0; pixel < 64; pixel++)
|
||||
{
|
||||
int x = tileOrder[pixel] % 8;
|
||||
int y = (tileOrder[pixel] - x) / 8;
|
||||
long outputOffset = ((tX * 8) + x + (((tY * 8 + y)) * width)) * 4;
|
||||
|
||||
ushort pixelData = (ushort)(data[dataOffset] | (data[dataOffset + 1] << 8));
|
||||
|
||||
byte r = (byte)(((pixelData >> 1) & 0x1f) << 3);
|
||||
byte g = (byte)(((pixelData >> 6) & 0x1f) << 3);
|
||||
byte b = (byte)(((pixelData >> 11) & 0x1f) << 3);
|
||||
byte a = (byte)((pixelData & 1) * 0xff);
|
||||
|
||||
output[outputOffset] = (byte)(r | (r >> 5));
|
||||
output[outputOffset + 1] = (byte)(g | (g >> 5));
|
||||
output[outputOffset + 2] = (byte)(b | (b >> 5));
|
||||
output[outputOffset + 3] = a;
|
||||
|
||||
dataOffset += 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case RenderBase.OTextureFormat.rgb565:
|
||||
for (int tY = 0; tY < height / 8; tY++)
|
||||
{
|
||||
for (int tX = 0; tX < width / 8; tX++)
|
||||
{
|
||||
for (int pixel = 0; pixel < 64; pixel++)
|
||||
{
|
||||
int x = tileOrder[pixel] % 8;
|
||||
int y = (tileOrder[pixel] - x) / 8;
|
||||
long outputOffset = ((tX * 8) + x + (((tY * 8 + y)) * width)) * 4;
|
||||
|
||||
ushort pixelData = (ushort)(data[dataOffset] | (data[dataOffset + 1] << 8));
|
||||
|
||||
byte r = (byte)((pixelData & 0x1f) << 3);
|
||||
byte g = (byte)(((pixelData >> 5) & 0x3f) << 2);
|
||||
byte b = (byte)(((pixelData >> 11) & 0x1f) << 3);
|
||||
|
||||
output[outputOffset] = (byte)(r | (r >> 5));
|
||||
output[outputOffset + 1] = (byte)(g | (g >> 6));
|
||||
output[outputOffset + 2] = (byte)(b | (b >> 5));
|
||||
output[outputOffset + 3] = 0xff;
|
||||
|
||||
dataOffset += 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case RenderBase.OTextureFormat.rgba4:
|
||||
for (int tY = 0; tY < height / 8; tY++)
|
||||
{
|
||||
for (int tX = 0; tX < width / 8; tX++)
|
||||
{
|
||||
for (int pixel = 0; pixel < 64; pixel++)
|
||||
{
|
||||
int x = tileOrder[pixel] % 8;
|
||||
int y = (tileOrder[pixel] - x) / 8;
|
||||
long outputOffset = ((tX * 8) + x + (((tY * 8 + y)) * width)) * 4;
|
||||
|
||||
ushort pixelData = (ushort)(data[dataOffset] | (data[dataOffset + 1] << 8));
|
||||
|
||||
byte r = (byte)((pixelData >> 4) & 0xf);
|
||||
byte g = (byte)((pixelData >> 8) & 0xf);
|
||||
byte b = (byte)((pixelData >> 12) & 0xf);
|
||||
byte a = (byte)(pixelData & 0xf);
|
||||
|
||||
output[outputOffset] = (byte)(r | (r << 4));
|
||||
output[outputOffset + 1] = (byte)(g | (g << 4));
|
||||
output[outputOffset + 2] = (byte)(b | (b << 4));
|
||||
output[outputOffset + 3] = (byte)(a | (a << 4));
|
||||
|
||||
dataOffset += 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case RenderBase.OTextureFormat.la8:
|
||||
case RenderBase.OTextureFormat.hilo8:
|
||||
for (int tY = 0; tY < height / 8; tY++)
|
||||
{
|
||||
for (int tX = 0; tX < width / 8; tX++)
|
||||
{
|
||||
for (int pixel = 0; pixel < 64; pixel++)
|
||||
{
|
||||
int x = tileOrder[pixel] % 8;
|
||||
int y = (tileOrder[pixel] - x) / 8;
|
||||
long outputOffset = ((tX * 8) + x + (((tY * 8 + y)) * width)) * 4;
|
||||
|
||||
output[outputOffset] = data[dataOffset];
|
||||
output[outputOffset + 1] = data[dataOffset];
|
||||
output[outputOffset + 2] = data[dataOffset];
|
||||
output[outputOffset + 3] = data[dataOffset + 1];
|
||||
|
||||
dataOffset += 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case RenderBase.OTextureFormat.l8:
|
||||
for (int tY = 0; tY < height / 8; tY++)
|
||||
{
|
||||
for (int tX = 0; tX < width / 8; tX++)
|
||||
{
|
||||
for (int pixel = 0; pixel < 64; pixel++)
|
||||
{
|
||||
int x = tileOrder[pixel] % 8;
|
||||
int y = (tileOrder[pixel] - x) / 8;
|
||||
long outputOffset = ((tX * 8) + x + (((tY * 8 + y)) * width)) * 4;
|
||||
|
||||
output[outputOffset] = data[dataOffset];
|
||||
output[outputOffset + 1] = data[dataOffset];
|
||||
output[outputOffset + 2] = data[dataOffset];
|
||||
output[outputOffset + 3] = 0xff;
|
||||
|
||||
dataOffset++;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case RenderBase.OTextureFormat.a8:
|
||||
for (int tY = 0; tY < height / 8; tY++)
|
||||
{
|
||||
for (int tX = 0; tX < width / 8; tX++)
|
||||
{
|
||||
for (int pixel = 0; pixel < 64; pixel++)
|
||||
{
|
||||
int x = tileOrder[pixel] % 8;
|
||||
int y = (tileOrder[pixel] - x) / 8;
|
||||
long outputOffset = ((tX * 8) + x + (((tY * 8 + y)) * width)) * 4;
|
||||
|
||||
output[outputOffset] = 0xff;
|
||||
output[outputOffset + 1] = 0xff;
|
||||
output[outputOffset + 2] = 0xff;
|
||||
output[outputOffset + 3] = data[dataOffset];
|
||||
|
||||
dataOffset++;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case RenderBase.OTextureFormat.la4:
|
||||
for (int tY = 0; tY < height / 8; tY++)
|
||||
{
|
||||
for (int tX = 0; tX < width / 8; tX++)
|
||||
{
|
||||
for (int pixel = 0; pixel < 64; pixel++)
|
||||
{
|
||||
int x = tileOrder[pixel] % 8;
|
||||
int y = (tileOrder[pixel] - x) / 8;
|
||||
long outputOffset = ((tX * 8) + x + (((tY * 8 + y)) * width)) * 4;
|
||||
|
||||
output[outputOffset] = (byte)(data[dataOffset] >> 4);
|
||||
output[outputOffset + 1] = (byte)(data[dataOffset] >> 4);
|
||||
output[outputOffset + 2] = (byte)(data[dataOffset] >> 4);
|
||||
output[outputOffset + 3] = (byte)(data[dataOffset] & 0xf);
|
||||
|
||||
dataOffset++;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case RenderBase.OTextureFormat.l4:
|
||||
for (int tY = 0; tY < height / 8; tY++)
|
||||
{
|
||||
for (int tX = 0; tX < width / 8; tX++)
|
||||
{
|
||||
for (int pixel = 0; pixel < 64; pixel++)
|
||||
{
|
||||
int x = tileOrder[pixel] % 8;
|
||||
int y = (tileOrder[pixel] - x) / 8;
|
||||
long outputOffset = ((tX * 8) + x + (((tY * 8 + y)) * width)) * 4;
|
||||
|
||||
byte c = toggle ? (byte)((data[dataOffset++] & 0xf0) >> 4) : (byte)(data[dataOffset] & 0xf);
|
||||
toggle = !toggle;
|
||||
c = (byte)((c << 4) | c);
|
||||
output[outputOffset] = c;
|
||||
output[outputOffset + 1] = c;
|
||||
output[outputOffset + 2] = c;
|
||||
output[outputOffset + 3] = 0xff;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case RenderBase.OTextureFormat.a4:
|
||||
for (int tY = 0; tY < height / 8; tY++)
|
||||
{
|
||||
for (int tX = 0; tX < width / 8; tX++)
|
||||
{
|
||||
for (int pixel = 0; pixel < 64; pixel++)
|
||||
{
|
||||
int x = tileOrder[pixel] % 8;
|
||||
int y = (tileOrder[pixel] - x) / 8;
|
||||
long outputOffset = ((tX * 8) + x + (((tY * 8 + y)) * width)) * 4;
|
||||
|
||||
output[outputOffset] = 0xff;
|
||||
output[outputOffset + 1] = 0xff;
|
||||
output[outputOffset + 2] = 0xff;
|
||||
byte a = toggle ? (byte)((data[dataOffset++] & 0xf0) >> 4) : (byte)(data[dataOffset] & 0xf);
|
||||
toggle = !toggle;
|
||||
output[outputOffset + 3] = (byte)((a << 4) | a);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case RenderBase.OTextureFormat.etc1:
|
||||
case RenderBase.OTextureFormat.etc1a4:
|
||||
byte[] decodedData = etc1Decode(data, width, height, format == RenderBase.OTextureFormat.etc1a4);
|
||||
int[] etc1Order = etc1Scramble(width, height);
|
||||
|
||||
int i = 0;
|
||||
for (int tY = 0; tY < height / 4; tY++) {
|
||||
for (int tX = 0; tX < width / 4; tX++) {
|
||||
int TX = etc1Order[i] % (width / 4);
|
||||
int TY = (etc1Order[i] - TX) / (width / 4);
|
||||
for (int y = 0; y < 4; y++) {
|
||||
for (int x = 0; x < 4; x++) {
|
||||
dataOffset = ((TX * 4) + x + (((TY * 4) + y) * width)) * 4;
|
||||
long outputOffset = ((tX * 4) + x + (((tY * 4 + y)) * width)) * 4;
|
||||
|
||||
Buffer.BlockCopy(decodedData, (int)dataOffset, output, (int)outputOffset, 4);
|
||||
}
|
||||
}
|
||||
i += 1;
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
return TextureUtils.getBitmap(output.ToArray(), width, height);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Encodes a PICA200 Texture.
|
||||
/// </summary>
|
||||
/// <param name="img">Input image to be encoded</param>
|
||||
/// <param name="format">Pixel Format of the Texture</param>
|
||||
/// <returns></returns>
|
||||
public static byte[] encode(Bitmap img, RenderBase.OTextureFormat format)
|
||||
{
|
||||
byte[] data = TextureUtils.getArray(img);
|
||||
byte[] output = new byte[data.Length];
|
||||
|
||||
uint outputOffset = 0;
|
||||
switch (format)
|
||||
{
|
||||
case RenderBase.OTextureFormat.rgba8:
|
||||
for (int tY = 0; tY < img.Height / 8; tY++)
|
||||
{
|
||||
for (int tX = 0; tX < img.Width / 8; tX++)
|
||||
{
|
||||
for (int pixel = 0; pixel < 64; pixel++)
|
||||
{
|
||||
int x = tileOrder[pixel] % 8;
|
||||
int y = (tileOrder[pixel] - x) / 8;
|
||||
long dataOffset = ((tX * 8) + x + ((tY * 8 + y) * img.Width)) * 4;
|
||||
|
||||
Buffer.BlockCopy(data, (int)dataOffset, output, (int)outputOffset + 1, 3);
|
||||
output[outputOffset] = data[dataOffset + 3];
|
||||
|
||||
outputOffset += 4;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
default: throw new NotImplementedException();
|
||||
}
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
#region "ETC1"
|
||||
private static byte[] etc1Decode(byte[] input, int width, int height, bool alpha)
|
||||
{
|
||||
byte[] output = new byte[(width * height * 4)];
|
||||
long offset = 0;
|
||||
|
||||
for (int y = 0; y < height / 4; y++)
|
||||
{
|
||||
for (int x = 0; x < width / 4; x++)
|
||||
{
|
||||
byte[] colorBlock = new byte[8];
|
||||
byte[] alphaBlock = new byte[8];
|
||||
if (alpha)
|
||||
{
|
||||
for (int i = 0; i < 8; i++)
|
||||
{
|
||||
colorBlock[7 - i] = input[offset + 8 + i];
|
||||
alphaBlock[i] = input[offset + i];
|
||||
}
|
||||
offset += 16;
|
||||
}
|
||||
else
|
||||
{
|
||||
for (int i = 0; i < 8; i++)
|
||||
{
|
||||
colorBlock[7 - i] = input[offset + i];
|
||||
alphaBlock[i] = 0xff;
|
||||
}
|
||||
offset += 8;
|
||||
}
|
||||
|
||||
colorBlock = etc1DecodeBlock(colorBlock);
|
||||
|
||||
bool toggle = false;
|
||||
long alphaOffset = 0;
|
||||
for (int tX = 0; tX < 4; tX++)
|
||||
{
|
||||
for (int tY = 0; tY < 4; tY++)
|
||||
{
|
||||
int outputOffset = (x * 4 + tX + ((y * 4 + tY) * width)) * 4;
|
||||
int blockOffset = (tX + (tY * 4)) * 4;
|
||||
Buffer.BlockCopy(colorBlock, blockOffset, output, outputOffset, 3);
|
||||
|
||||
byte a = toggle ? (byte)((alphaBlock[alphaOffset++] & 0xf0) >> 4) : (byte)(alphaBlock[alphaOffset] & 0xf);
|
||||
output[outputOffset + 3] = (byte)((a << 4) | a);
|
||||
toggle = !toggle;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
private static byte[] etc1DecodeBlock(byte[] data)
|
||||
{
|
||||
uint blockTop = BitConverter.ToUInt32(data, 0);
|
||||
uint blockBottom = BitConverter.ToUInt32(data, 4);
|
||||
|
||||
bool flip = (blockTop & 0x1000000) > 0;
|
||||
bool difference = (blockTop & 0x2000000) > 0;
|
||||
|
||||
uint r1, g1, b1;
|
||||
uint r2, g2, b2;
|
||||
|
||||
if (difference)
|
||||
{
|
||||
r1 = blockTop & 0xf8;
|
||||
g1 = (blockTop & 0xf800) >> 8;
|
||||
b1 = (blockTop & 0xf80000) >> 16;
|
||||
|
||||
r2 = (uint)((sbyte)(r1 >> 3) + ((sbyte)((blockTop & 7) << 5) >> 5));
|
||||
g2 = (uint)((sbyte)(g1 >> 3) + ((sbyte)((blockTop & 0x700) >> 3) >> 5));
|
||||
b2 = (uint)((sbyte)(b1 >> 3) + ((sbyte)((blockTop & 0x70000) >> 11) >> 5));
|
||||
|
||||
r1 |= r1 >> 5;
|
||||
g1 |= g1 >> 5;
|
||||
b1 |= b1 >> 5;
|
||||
|
||||
r2 = (r2 << 3) | (r2 >> 2);
|
||||
g2 = (g2 << 3) | (g2 >> 2);
|
||||
b2 = (b2 << 3) | (b2 >> 2);
|
||||
}
|
||||
else
|
||||
{
|
||||
r1 = blockTop & 0xf0;
|
||||
g1 = (blockTop & 0xf000) >> 8;
|
||||
b1 = (blockTop & 0xf00000) >> 16;
|
||||
|
||||
r2 = (blockTop & 0xf) << 4;
|
||||
g2 = (blockTop & 0xf00) >> 4;
|
||||
b2 = (blockTop & 0xf0000) >> 12;
|
||||
|
||||
r1 |= r1 >> 4;
|
||||
g1 |= g1 >> 4;
|
||||
b1 |= b1 >> 4;
|
||||
|
||||
r2 |= r2 >> 4;
|
||||
g2 |= g2 >> 4;
|
||||
b2 |= b2 >> 4;
|
||||
}
|
||||
|
||||
uint table1 = (blockTop >> 29) & 7;
|
||||
uint table2 = (blockTop >> 26) & 7;
|
||||
|
||||
byte[] output = new byte[(4 * 4 * 4)];
|
||||
if (!flip)
|
||||
{
|
||||
for (int y = 0; y <= 3; y++)
|
||||
{
|
||||
for (int x = 0; x <= 1; x++)
|
||||
{
|
||||
Color color1 = etc1Pixel(r1, g1, b1, x, y, blockBottom, table1);
|
||||
Color color2 = etc1Pixel(r2, g2, b2, x + 2, y, blockBottom, table2);
|
||||
|
||||
int offset1 = (y * 4 + x) * 4;
|
||||
output[offset1] = color1.B;
|
||||
output[offset1 + 1] = color1.G;
|
||||
output[offset1 + 2] = color1.R;
|
||||
|
||||
int offset2 = (y * 4 + x + 2) * 4;
|
||||
output[offset2] = color2.B;
|
||||
output[offset2 + 1] = color2.G;
|
||||
output[offset2 + 2] = color2.R;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
for (int y = 0; y <= 1; y++)
|
||||
{
|
||||
for (int x = 0; x <= 3; x++)
|
||||
{
|
||||
Color color1 = etc1Pixel(r1, g1, b1, x, y, blockBottom, table1);
|
||||
Color color2 = etc1Pixel(r2, g2, b2, x, y + 2, blockBottom, table2);
|
||||
|
||||
int offset1 = (y * 4 + x) * 4;
|
||||
output[offset1] = color1.B;
|
||||
output[offset1 + 1] = color1.G;
|
||||
output[offset1 + 2] = color1.R;
|
||||
|
||||
int offset2 = ((y + 2) * 4 + x) * 4;
|
||||
output[offset2] = color2.B;
|
||||
output[offset2 + 1] = color2.G;
|
||||
output[offset2 + 2] = color2.R;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
private static Color etc1Pixel(uint r, uint g, uint b, int x, int y, uint block, uint table)
|
||||
{
|
||||
int index = x * 4 + y;
|
||||
uint MSB = block << 1;
|
||||
|
||||
int pixel = index < 8
|
||||
? etc1LUT[table, ((block >> (index + 24)) & 1) + ((MSB >> (index + 8)) & 2)]
|
||||
: etc1LUT[table, ((block >> (index + 8)) & 1) + ((MSB >> (index - 8)) & 2)];
|
||||
|
||||
r = saturate((int)(r + pixel));
|
||||
g = saturate((int)(g + pixel));
|
||||
b = saturate((int)(b + pixel));
|
||||
|
||||
return Color.FromArgb((int)r, (int)g, (int)b);
|
||||
}
|
||||
|
||||
private static byte saturate(int value)
|
||||
{
|
||||
if (value > 0xff) return 0xff;
|
||||
if (value < 0) return 0;
|
||||
return (byte)(value & 0xff);
|
||||
}
|
||||
|
||||
private static int[] etc1Scramble(int width, int height)
|
||||
{
|
||||
//Maybe theres a better way to do this?
|
||||
int[] tileScramble = new int[((width / 4) * (height / 4))];
|
||||
int baseAccumulator = 0;
|
||||
int rowAccumulator = 0;
|
||||
int baseNumber = 0;
|
||||
int rowNumber = 0;
|
||||
|
||||
for (int tile = 0; tile < tileScramble.Length; tile++)
|
||||
{
|
||||
if ((tile % (width / 4) == 0) && tile > 0)
|
||||
{
|
||||
if (rowAccumulator < 1)
|
||||
{
|
||||
rowAccumulator += 1;
|
||||
rowNumber += 2;
|
||||
baseNumber = rowNumber;
|
||||
}
|
||||
else
|
||||
{
|
||||
rowAccumulator = 0;
|
||||
baseNumber -= 2;
|
||||
rowNumber = baseNumber;
|
||||
}
|
||||
}
|
||||
|
||||
tileScramble[tile] = baseNumber;
|
||||
|
||||
if (baseAccumulator < 1)
|
||||
{
|
||||
baseAccumulator++;
|
||||
baseNumber++;
|
||||
}
|
||||
else
|
||||
{
|
||||
baseAccumulator = 0;
|
||||
baseNumber += 3;
|
||||
}
|
||||
}
|
||||
|
||||
return tileScramble;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
39
MinecraftUSkinEditor/Classes/TextureUtils.cs
Normal file
@@ -0,0 +1,39 @@
|
||||
using System.Drawing;
|
||||
using System.Drawing.Imaging;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace Ohana3DS_Rebirth.Ohana
|
||||
{
|
||||
class TextureUtils
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets a Bitmap from a RGBA8 Texture buffer.
|
||||
/// </summary>
|
||||
/// <param name="array">The Buffer</param>
|
||||
/// <param name="width">Width of the Texture</param>
|
||||
/// <param name="height">Height of the Texture</param>
|
||||
/// <returns></returns>
|
||||
public static Bitmap getBitmap(byte[] array, int width, int height)
|
||||
{
|
||||
Bitmap img = new Bitmap(width, height, PixelFormat.Format32bppArgb);
|
||||
BitmapData imgData = img.LockBits(new Rectangle(0, 0, img.Width, img.Height), ImageLockMode.WriteOnly, PixelFormat.Format32bppArgb);
|
||||
Marshal.Copy(array, 0, imgData.Scan0, array.Length);
|
||||
img.UnlockBits(imgData);
|
||||
return img;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets a RGBA8 Texture Buffer from a Bitmap.
|
||||
/// </summary>
|
||||
/// <param name="img">The Bitmap</param>
|
||||
/// <returns></returns>
|
||||
public static byte[] getArray(Bitmap img)
|
||||
{
|
||||
BitmapData imgData = img.LockBits(new Rectangle(0, 0, img.Width, img.Height), ImageLockMode.ReadOnly, PixelFormat.Format32bppArgb);
|
||||
byte[] array = new byte[imgData.Stride * img.Height];
|
||||
Marshal.Copy(imgData.Scan0, array, 0, array.Length);
|
||||
img.UnlockBits(imgData);
|
||||
return array;
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
MinecraftUSkinEditor/Down.png
Normal file
|
After Width: | Height: | Size: 263 B |
BIN
MinecraftUSkinEditor/DragNDrop.png
Normal file
|
After Width: | Height: | Size: 5.3 KiB |
BIN
MinecraftUSkinEditor/DragNDropSelected.png
Normal file
|
After Width: | Height: | Size: 17 KiB |
4
MinecraftUSkinEditor/FodyWeavers.xml
Normal file
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd">
|
||||
<Costura IncludeDebugSymbols="false" />
|
||||
</Weavers>
|
||||
136
MinecraftUSkinEditor/FodyWeavers.xsd
Normal file
@@ -0,0 +1,136 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. -->
|
||||
<xs:element name="Weavers">
|
||||
<xs:complexType>
|
||||
<xs:all>
|
||||
<xs:element name="Costura" minOccurs="0" maxOccurs="1">
|
||||
<xs:complexType>
|
||||
<xs:all>
|
||||
<xs:element minOccurs="0" maxOccurs="1" name="ExcludeAssemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of assembly names to exclude from the default action of "embed all Copy Local references", delimited with line breaks</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" maxOccurs="1" name="IncludeAssemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of assembly names to include from the default action of "embed all Copy Local references", delimited with line breaks.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" maxOccurs="1" name="ExcludeRuntimeAssemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of (.NET Core) runtime assembly names to exclude from the default action of "embed all Copy Local references", delimited with line breaks</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" maxOccurs="1" name="IncludeRuntimeAssemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of (.NET Core) runtime assembly names to include from the default action of "embed all Copy Local references", delimited with line breaks.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" maxOccurs="1" name="Unmanaged32Assemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of unmanaged 32 bit assembly names to include, delimited with line breaks.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" maxOccurs="1" name="Unmanaged64Assemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of unmanaged 64 bit assembly names to include, delimited with line breaks.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" maxOccurs="1" name="PreloadOrder" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>The order of preloaded assemblies, delimited with line breaks.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:element>
|
||||
</xs:all>
|
||||
<xs:attribute name="CreateTemporaryAssemblies" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>This will copy embedded files to disk before loading them into memory. This is helpful for some scenarios that expected an assembly to be loaded from a physical file.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="IncludeDebugSymbols" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>Controls if .pdbs for reference assemblies are also embedded.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="IncludeRuntimeReferences" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>Controls if (.NET Core) runtime assemblies are also embedded.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="DisableCompression" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>Embedded assemblies are compressed by default, and uncompressed when they are loaded. You can turn compression off with this option.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="DisableCleanup" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>As part of Costura, embedded assemblies are no longer included as part of the build. This cleanup can be turned off.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="LoadAtModuleInit" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>Costura by default will load as part of the module initialization. This flag disables that behavior. Make sure you call CosturaUtility.Initialize() somewhere in your code.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="IgnoreSatelliteAssemblies" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>Costura will by default use assemblies with a name like 'resources.dll' as a satellite resource and prepend the output path. This flag disables that behavior.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="ExcludeAssemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of assembly names to exclude from the default action of "embed all Copy Local references", delimited with |</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="IncludeAssemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of assembly names to include from the default action of "embed all Copy Local references", delimited with |.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="ExcludeRuntimeAssemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of (.NET Core) runtime assembly names to exclude from the default action of "embed all Copy Local references", delimited with |</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="IncludeRuntimeAssemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of (.NET Core) runtime assembly names to include from the default action of "embed all Copy Local references", delimited with |.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="Unmanaged32Assemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of unmanaged 32 bit assembly names to include, delimited with |.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="Unmanaged64Assemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of unmanaged 64 bit assembly names to include, delimited with |.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="PreloadOrder" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>The order of preloaded assemblies, delimited with |.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:all>
|
||||
<xs:attribute name="VerifyAssembly" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="VerifyIgnoreCodes" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="GenerateXsd" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:schema>
|
||||
164
MinecraftUSkinEditor/Forms/AdvancedOptions.Designer.cs
generated
Normal file
@@ -0,0 +1,164 @@
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
partial class AdvancedOptions
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AdvancedOptions));
|
||||
this.treeMeta = new System.Windows.Forms.TreeView();
|
||||
this.contextMenuStrip2 = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||
this.addEntryToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.deleteEntryToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.comboBox1 = new System.Windows.Forms.ComboBox();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.button1 = new System.Windows.Forms.Button();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.textBox1 = new System.Windows.Forms.TextBox();
|
||||
this.comboBox2 = new System.Windows.Forms.ComboBox();
|
||||
this.contextMenuStrip2.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// treeMeta
|
||||
//
|
||||
resources.ApplyResources(this.treeMeta, "treeMeta");
|
||||
this.treeMeta.ContextMenuStrip = this.contextMenuStrip2;
|
||||
this.treeMeta.Name = "treeMeta";
|
||||
this.treeMeta.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeMeta_AfterSelect);
|
||||
//
|
||||
// contextMenuStrip2
|
||||
//
|
||||
resources.ApplyResources(this.contextMenuStrip2, "contextMenuStrip2");
|
||||
this.contextMenuStrip2.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.addEntryToolStripMenuItem,
|
||||
this.deleteEntryToolStripMenuItem});
|
||||
this.contextMenuStrip2.Name = "contextMenuStrip1";
|
||||
//
|
||||
// addEntryToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.addEntryToolStripMenuItem, "addEntryToolStripMenuItem");
|
||||
this.addEntryToolStripMenuItem.Name = "addEntryToolStripMenuItem";
|
||||
this.addEntryToolStripMenuItem.Click += new System.EventHandler(this.addEntryToolStripMenuItem_Click);
|
||||
//
|
||||
// deleteEntryToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.deleteEntryToolStripMenuItem, "deleteEntryToolStripMenuItem");
|
||||
this.deleteEntryToolStripMenuItem.Name = "deleteEntryToolStripMenuItem";
|
||||
this.deleteEntryToolStripMenuItem.Click += new System.EventHandler(this.deleteEntryToolStripMenuItem_Click);
|
||||
//
|
||||
// comboBox1
|
||||
//
|
||||
resources.ApplyResources(this.comboBox1, "comboBox1");
|
||||
this.comboBox1.FormattingEnabled = true;
|
||||
this.comboBox1.Items.AddRange(new object[] {
|
||||
resources.GetString("comboBox1.Items"),
|
||||
resources.GetString("comboBox1.Items1"),
|
||||
resources.GetString("comboBox1.Items2"),
|
||||
resources.GetString("comboBox1.Items3")});
|
||||
this.comboBox1.Name = "comboBox1";
|
||||
//
|
||||
// label1
|
||||
//
|
||||
resources.ApplyResources(this.label1, "label1");
|
||||
this.label1.ForeColor = System.Drawing.Color.White;
|
||||
this.label1.Name = "label1";
|
||||
//
|
||||
// button1
|
||||
//
|
||||
resources.ApplyResources(this.button1, "button1");
|
||||
this.button1.ForeColor = System.Drawing.Color.White;
|
||||
this.button1.Name = "button1";
|
||||
this.button1.UseVisualStyleBackColor = true;
|
||||
this.button1.Click += new System.EventHandler(this.button1_Click);
|
||||
//
|
||||
// label2
|
||||
//
|
||||
resources.ApplyResources(this.label2, "label2");
|
||||
this.label2.ForeColor = System.Drawing.Color.White;
|
||||
this.label2.Name = "label2";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
resources.ApplyResources(this.label3, "label3");
|
||||
this.label3.ForeColor = System.Drawing.Color.White;
|
||||
this.label3.Name = "label3";
|
||||
//
|
||||
// textBox1
|
||||
//
|
||||
resources.ApplyResources(this.textBox1, "textBox1");
|
||||
this.textBox1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.textBox1.Name = "textBox1";
|
||||
//
|
||||
// comboBox2
|
||||
//
|
||||
resources.ApplyResources(this.comboBox2, "comboBox2");
|
||||
this.comboBox2.FormattingEnabled = true;
|
||||
this.comboBox2.Name = "comboBox2";
|
||||
//
|
||||
// AdvancedOptions
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.BorderStyle = MetroFramework.Forms.MetroFormBorderStyle.FixedSingle;
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.comboBox2);
|
||||
this.Controls.Add(this.textBox1);
|
||||
this.Controls.Add(this.button1);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.comboBox1);
|
||||
this.Controls.Add(this.treeMeta);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
|
||||
this.MaximizeBox = false;
|
||||
this.Name = "AdvancedOptions";
|
||||
this.Resizable = false;
|
||||
this.ShadowType = MetroFramework.Forms.MetroFormShadowType.DropShadow;
|
||||
this.Style = MetroFramework.MetroColorStyle.Silver;
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.Load += new System.EventHandler(this.AdvancedOptions_Load);
|
||||
this.contextMenuStrip2.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.TreeView treeMeta;
|
||||
private System.Windows.Forms.ComboBox comboBox1;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.Button button1;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private System.Windows.Forms.TextBox textBox1;
|
||||
private System.Windows.Forms.ContextMenuStrip contextMenuStrip2;
|
||||
private System.Windows.Forms.ToolStripMenuItem addEntryToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem deleteEntryToolStripMenuItem;
|
||||
private System.Windows.Forms.ComboBox comboBox2;
|
||||
}
|
||||
}
|
||||
153
MinecraftUSkinEditor/Forms/AdvancedOptions.cs
Normal file
@@ -0,0 +1,153 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
public partial class AdvancedOptions : MetroFramework.Forms.MetroForm
|
||||
{
|
||||
PCK.MineFile mf;
|
||||
PCK currentPCK;
|
||||
|
||||
public AdvancedOptions(PCK currentPCKIn)
|
||||
{
|
||||
InitializeComponent();
|
||||
currentPCK = currentPCKIn;
|
||||
|
||||
FormBorderStyle = FormBorderStyle.None;
|
||||
}
|
||||
|
||||
private void AdvancedOptions_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void addPresetToolStripMenuItem1_Click_1(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void addEntryToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
MinecraftUSkinEditor.addMetaAdvanced add = new MinecraftUSkinEditor.addMetaAdvanced(treeMeta);
|
||||
add.ShowDialog();
|
||||
add.Dispose();
|
||||
}
|
||||
|
||||
private void deleteEntryToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
treeMeta.SelectedNode.Remove();
|
||||
}
|
||||
|
||||
private void button1_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (comboBox1.Text == "All")
|
||||
{
|
||||
int count = treeMeta.Nodes.Count;
|
||||
int i = 0;
|
||||
do
|
||||
{
|
||||
foreach (PCK.MineFile mf in currentPCK.mineFiles)
|
||||
{
|
||||
object[] obj = { treeMeta.Nodes[i].Text, treeMeta.Nodes[i].Tag };
|
||||
mf.entries.Add(obj);
|
||||
}
|
||||
i += 1;
|
||||
count -= 1;
|
||||
} while (count != 0);
|
||||
MessageBox.Show("Data Added to All Entries");
|
||||
}
|
||||
else if (comboBox1.Text == "64x64")
|
||||
{
|
||||
int count = treeMeta.Nodes.Count;
|
||||
int i = 0;
|
||||
do
|
||||
{
|
||||
foreach (PCK.MineFile mf in currentPCK.mineFiles)
|
||||
{
|
||||
MemoryStream png = new MemoryStream(mf.data);
|
||||
if (Path.GetExtension(mf.name) == ".png")
|
||||
{
|
||||
if (Image.FromStream(png).Size.Height == Image.FromStream(png).Size.Width)
|
||||
{
|
||||
object[] obj = { treeMeta.Nodes[i].Text, treeMeta.Nodes[i].Tag };
|
||||
mf.entries.Add(obj);
|
||||
}
|
||||
}
|
||||
}
|
||||
i += 1;
|
||||
count -= 1;
|
||||
} while (count != 0);
|
||||
MessageBox.Show("Data Added to 64x64 Image Entries");
|
||||
}
|
||||
else if (comboBox1.Text == "64x32")
|
||||
{
|
||||
int count = treeMeta.Nodes.Count;
|
||||
int i = 0;
|
||||
|
||||
do
|
||||
{
|
||||
foreach (PCK.MineFile mf in currentPCK.mineFiles)
|
||||
{
|
||||
MemoryStream png = new MemoryStream(mf.data);
|
||||
if (Path.GetExtension(mf.name) == ".png")
|
||||
{
|
||||
if (Image.FromStream(png).Size.Height == Image.FromStream(png).Size.Width / 2)
|
||||
{
|
||||
object[] obj = { treeMeta.Nodes[i].Text, treeMeta.Nodes[i].Tag };
|
||||
mf.entries.Add(obj);
|
||||
}
|
||||
}
|
||||
}
|
||||
i += 1;
|
||||
count -= 1;
|
||||
} while (count != 0);
|
||||
MessageBox.Show("Data Added to 64x32 Image Entries");
|
||||
}
|
||||
else if (comboBox1.Text == "PNG Files")
|
||||
{
|
||||
int count = treeMeta.Nodes.Count;
|
||||
int i = 0;
|
||||
|
||||
do
|
||||
{
|
||||
foreach (PCK.MineFile mf in currentPCK.mineFiles)
|
||||
{
|
||||
if (Path.GetExtension(mf.name) == ".png")
|
||||
{
|
||||
object[] obj = { treeMeta.Nodes[i].Text, treeMeta.Nodes[i].Tag };
|
||||
mf.entries.Add(obj);
|
||||
}
|
||||
}
|
||||
i += 1;
|
||||
count -= 1;
|
||||
} while (count != 0);
|
||||
MessageBox.Show("Data Added to All PNG Image Entries");
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show("Please Select an Application Argument");
|
||||
}
|
||||
}catch (Exception)
|
||||
{
|
||||
MessageBox.Show("A Probelm Occured..");
|
||||
}
|
||||
}
|
||||
|
||||
private void treeMeta_AfterSelect(object sender, TreeViewEventArgs e)
|
||||
{
|
||||
comboBox2.Items.Clear();
|
||||
comboBox2.Text = treeMeta.SelectedNode.Text;
|
||||
textBox1.Text = treeMeta.SelectedNode.Tag.ToString();
|
||||
}
|
||||
}
|
||||
}
|
||||
1911
MinecraftUSkinEditor/Forms/AdvancedOptions.ja.resx
Normal file
2129
MinecraftUSkinEditor/Forms/AdvancedOptions.resx
Normal file
123
MinecraftUSkinEditor/Forms/EntryEditor.Designer.cs
generated
Normal file
@@ -0,0 +1,123 @@
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
partial class EntryEditor
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(EntryEditor));
|
||||
this.textBox1 = new System.Windows.Forms.TextBox();
|
||||
this.comboBox1 = new System.Windows.Forms.ComboBox();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.treeView1 = new System.Windows.Forms.TreeView();
|
||||
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||
this.addEntryToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.deleteEntryToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.contextMenuStrip1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// textBox1
|
||||
//
|
||||
resources.ApplyResources(this.textBox1, "textBox1");
|
||||
this.textBox1.Name = "textBox1";
|
||||
this.textBox1.TextChanged += new System.EventHandler(this.textBox1_TextChanged);
|
||||
//
|
||||
// comboBox1
|
||||
//
|
||||
resources.ApplyResources(this.comboBox1, "comboBox1");
|
||||
this.comboBox1.FormattingEnabled = true;
|
||||
this.comboBox1.Name = "comboBox1";
|
||||
this.comboBox1.SelectedIndexChanged += new System.EventHandler(this.comboBox1_SelectedIndexChanged);
|
||||
//
|
||||
// label1
|
||||
//
|
||||
resources.ApplyResources(this.label1, "label1");
|
||||
this.label1.Name = "label1";
|
||||
//
|
||||
// label2
|
||||
//
|
||||
resources.ApplyResources(this.label2, "label2");
|
||||
this.label2.Name = "label2";
|
||||
//
|
||||
// treeView1
|
||||
//
|
||||
resources.ApplyResources(this.treeView1, "treeView1");
|
||||
this.treeView1.ContextMenuStrip = this.contextMenuStrip1;
|
||||
this.treeView1.HideSelection = false;
|
||||
this.treeView1.Name = "treeView1";
|
||||
this.treeView1.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView1_AfterSelect);
|
||||
//
|
||||
// contextMenuStrip1
|
||||
//
|
||||
resources.ApplyResources(this.contextMenuStrip1, "contextMenuStrip1");
|
||||
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.addEntryToolStripMenuItem,
|
||||
this.deleteEntryToolStripMenuItem});
|
||||
this.contextMenuStrip1.Name = "contextMenuStrip1";
|
||||
//
|
||||
// addEntryToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.addEntryToolStripMenuItem, "addEntryToolStripMenuItem");
|
||||
this.addEntryToolStripMenuItem.Name = "addEntryToolStripMenuItem";
|
||||
this.addEntryToolStripMenuItem.Click += new System.EventHandler(this.addEntryToolStripMenuItem_Click);
|
||||
//
|
||||
// deleteEntryToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.deleteEntryToolStripMenuItem, "deleteEntryToolStripMenuItem");
|
||||
this.deleteEntryToolStripMenuItem.Name = "deleteEntryToolStripMenuItem";
|
||||
this.deleteEntryToolStripMenuItem.Click += new System.EventHandler(this.deleteEntryToolStripMenuItem_Click);
|
||||
//
|
||||
// EntryEditor
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.treeView1);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.comboBox1);
|
||||
this.Controls.Add(this.textBox1);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
|
||||
this.Name = "EntryEditor";
|
||||
this.Load += new System.EventHandler(this.EntryEditor_Load);
|
||||
this.contextMenuStrip1.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
private System.Windows.Forms.TextBox textBox1;
|
||||
private System.Windows.Forms.ComboBox comboBox1;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.TreeView treeView1;
|
||||
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
|
||||
private System.Windows.Forms.ToolStripMenuItem addEntryToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem deleteEntryToolStripMenuItem;
|
||||
}
|
||||
}
|
||||
94
MinecraftUSkinEditor/Forms/EntryEditor.cs
Normal file
@@ -0,0 +1,94 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
public partial class EntryEditor : Form
|
||||
{
|
||||
public EntryEditor(Dictionary<int,string> types, PCK.MineFile file)
|
||||
{
|
||||
InitializeComponent();
|
||||
this.types = types;
|
||||
this.file = file;
|
||||
}
|
||||
|
||||
Dictionary<int, string> types;
|
||||
PCK.MineFile file;
|
||||
string entryName = "";
|
||||
|
||||
private void renameProperly()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void EntryEditor_Load(object sender, EventArgs e)
|
||||
{
|
||||
foreach(int type in types.Keys)
|
||||
comboBox1.Items.Add(types[type]);
|
||||
|
||||
foreach (object[] entry in file.entries)
|
||||
{
|
||||
object[] strings = (object[])entry;
|
||||
TreeNode meta = new TreeNode();
|
||||
|
||||
foreach (object[] entryy in file.entries)
|
||||
meta.Text = (string)strings[0];
|
||||
meta.Tag = entry;
|
||||
treeView1.Nodes.Add(meta);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
|
||||
{
|
||||
object[] strings = (object[])e.Node.Tag;
|
||||
comboBox1.Text = (string)strings[0];
|
||||
textBox1.Text = (string)strings[1];
|
||||
}
|
||||
|
||||
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
if(treeView1.SelectedNode != null)
|
||||
{
|
||||
object[] strings = (object[])treeView1.SelectedNode.Tag;
|
||||
strings[0] = comboBox1.Text;
|
||||
}
|
||||
}
|
||||
|
||||
private void textBox1_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (treeView1.SelectedNode != null)
|
||||
{
|
||||
object[] strings = (object[])treeView1.SelectedNode.Tag;
|
||||
strings[1] = textBox1.Text;
|
||||
}
|
||||
}
|
||||
|
||||
private void addEntryToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
object[] obj = { "Replace me", "Or it won't save" };
|
||||
file.entries.Add(obj);
|
||||
TreeNode t = new TreeNode("temp name") { Tag = obj };
|
||||
treeView1.Nodes.Add(t);
|
||||
renameProperly();
|
||||
treeView1.SelectedNode = t;
|
||||
}
|
||||
|
||||
private void deleteEntryToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (treeView1.SelectedNode != null)
|
||||
{
|
||||
object[] temp = (object[])treeView1.SelectedNode.Tag;
|
||||
file.entries.Remove(temp);
|
||||
treeView1.Nodes.Remove(treeView1.SelectedNode);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
2356
MinecraftUSkinEditor/Forms/EntryEditor.ja.resx
Normal file
2523
MinecraftUSkinEditor/Forms/EntryEditor.resx
Normal file
1134
MinecraftUSkinEditor/Forms/Form1.Designer.cs
generated
Normal file
3251
MinecraftUSkinEditor/Forms/Form1.cs
Normal file
6376
MinecraftUSkinEditor/Forms/Form1.ja.resx
Normal file
8268
MinecraftUSkinEditor/Forms/Form1.resx
Normal file
134
MinecraftUSkinEditor/Forms/LOCEditor.Designer.cs
generated
Normal file
@@ -0,0 +1,134 @@
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
partial class LOCEditor
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(LOCEditor));
|
||||
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||
this.addDisplayIDToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.deleteDisplayIDToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.locSort = new minekampf.Forms.MyTablePanel();
|
||||
this.buttonReplaceAll = new System.Windows.Forms.Button();
|
||||
this.dataGridViewLocEntryData = new System.Windows.Forms.DataGridView();
|
||||
this.textBoxReplaceAll = new System.Windows.Forms.TextBox();
|
||||
this.treeViewLocEntries = new System.Windows.Forms.TreeView();
|
||||
this.contextMenuStrip1.SuspendLayout();
|
||||
this.locSort.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.dataGridViewLocEntryData)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// contextMenuStrip1
|
||||
//
|
||||
resources.ApplyResources(this.contextMenuStrip1, "contextMenuStrip1");
|
||||
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.addDisplayIDToolStripMenuItem,
|
||||
this.deleteDisplayIDToolStripMenuItem});
|
||||
this.contextMenuStrip1.Name = "contextMenuStrip1";
|
||||
//
|
||||
// addDisplayIDToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.addDisplayIDToolStripMenuItem, "addDisplayIDToolStripMenuItem");
|
||||
this.addDisplayIDToolStripMenuItem.Name = "addDisplayIDToolStripMenuItem";
|
||||
//
|
||||
// deleteDisplayIDToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.deleteDisplayIDToolStripMenuItem, "deleteDisplayIDToolStripMenuItem");
|
||||
this.deleteDisplayIDToolStripMenuItem.Name = "deleteDisplayIDToolStripMenuItem";
|
||||
this.deleteDisplayIDToolStripMenuItem.Click += new System.EventHandler(this.deleteDisplayIDToolStripMenuItem_Click);
|
||||
//
|
||||
// locSort
|
||||
//
|
||||
resources.ApplyResources(this.locSort, "locSort");
|
||||
this.locSort.AccessibleRole = System.Windows.Forms.AccessibleRole.Table;
|
||||
this.locSort.Controls.Add(this.buttonReplaceAll, 2, 0);
|
||||
this.locSort.Controls.Add(this.dataGridViewLocEntryData, 1, 1);
|
||||
this.locSort.Controls.Add(this.textBoxReplaceAll, 1, 0);
|
||||
this.locSort.Controls.Add(this.treeViewLocEntries, 0, 0);
|
||||
this.locSort.Name = "locSort";
|
||||
//
|
||||
// buttonReplaceAll
|
||||
//
|
||||
resources.ApplyResources(this.buttonReplaceAll, "buttonReplaceAll");
|
||||
this.buttonReplaceAll.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonReplaceAll.Name = "buttonReplaceAll";
|
||||
this.buttonReplaceAll.UseVisualStyleBackColor = true;
|
||||
this.buttonReplaceAll.Click += new System.EventHandler(this.buttonReplaceAll_Click);
|
||||
//
|
||||
// dataGridViewLocEntryData
|
||||
//
|
||||
resources.ApplyResources(this.dataGridViewLocEntryData, "dataGridViewLocEntryData");
|
||||
this.dataGridViewLocEntryData.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
||||
this.locSort.SetColumnSpan(this.dataGridViewLocEntryData, 2);
|
||||
this.dataGridViewLocEntryData.Name = "dataGridViewLocEntryData";
|
||||
this.dataGridViewLocEntryData.CellEndEdit += new System.Windows.Forms.DataGridViewCellEventHandler(this.dataGridView1_CellEndEdit);
|
||||
//
|
||||
// textBoxReplaceAll
|
||||
//
|
||||
resources.ApplyResources(this.textBoxReplaceAll, "textBoxReplaceAll");
|
||||
this.textBoxReplaceAll.Name = "textBoxReplaceAll";
|
||||
//
|
||||
// treeViewLocEntries
|
||||
//
|
||||
resources.ApplyResources(this.treeViewLocEntries, "treeViewLocEntries");
|
||||
this.treeViewLocEntries.ContextMenuStrip = this.contextMenuStrip1;
|
||||
this.treeViewLocEntries.LabelEdit = true;
|
||||
this.treeViewLocEntries.Name = "treeViewLocEntries";
|
||||
this.locSort.SetRowSpan(this.treeViewLocEntries, 2);
|
||||
this.treeViewLocEntries.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView1_AfterSelect);
|
||||
this.treeViewLocEntries.KeyDown += new System.Windows.Forms.KeyEventHandler(this.treeView1_KeyDown);
|
||||
//
|
||||
// LOCEditor
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.locSort);
|
||||
this.Name = "LOCEditor";
|
||||
this.Style = MetroFramework.MetroColorStyle.Silver;
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.Load += new System.EventHandler(this.LOCEditor_Load);
|
||||
this.contextMenuStrip1.ResumeLayout(false);
|
||||
this.locSort.ResumeLayout(false);
|
||||
this.locSort.PerformLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.dataGridViewLocEntryData)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.TreeView treeViewLocEntries;
|
||||
private System.Windows.Forms.DataGridView dataGridViewLocEntryData;
|
||||
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
|
||||
private System.Windows.Forms.ToolStripMenuItem addDisplayIDToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem deleteDisplayIDToolStripMenuItem;
|
||||
private System.Windows.Forms.TextBox textBoxReplaceAll;
|
||||
private minekampf.Forms.MyTablePanel locSort;
|
||||
private System.Windows.Forms.Button buttonReplaceAll;
|
||||
}
|
||||
}
|
||||
123
MinecraftUSkinEditor/Forms/LOCEditor.cs
Normal file
@@ -0,0 +1,123 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
public partial class LOCEditor : MetroFramework.Forms.MetroForm
|
||||
{
|
||||
#region Variables
|
||||
DataTable tbl;
|
||||
LOC currentLoc;
|
||||
|
||||
public class displayId
|
||||
{
|
||||
public string id;
|
||||
public string defaultName;
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
public LOCEditor(LOC loc)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
tbl = new DataTable();
|
||||
currentLoc = loc;
|
||||
tbl.Columns.Add(new DataColumn("Language") { ReadOnly = true });
|
||||
tbl.Columns.Add("Display Name");
|
||||
dataGridViewLocEntryData.DataSource = tbl;
|
||||
DataGridViewColumn column = dataGridViewLocEntryData.Columns[1];
|
||||
column.Width = 600;
|
||||
|
||||
}
|
||||
|
||||
private void LOCEditor_Load(object sender, EventArgs e)
|
||||
{
|
||||
foreach(string id in currentLoc.ids.names)
|
||||
treeViewLocEntries.Nodes.Add(id);
|
||||
}
|
||||
|
||||
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
|
||||
{
|
||||
tbl.Rows.Clear();
|
||||
|
||||
foreach (LOC.Language l in currentLoc.langs)
|
||||
tbl.Rows.Add(l.name, l.names[e.Node.Index]);
|
||||
|
||||
try
|
||||
{
|
||||
if (treeViewLocEntries.SelectedNode != null)
|
||||
{
|
||||
buttonReplaceAll.Enabled = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
buttonReplaceAll.Enabled = false;
|
||||
}
|
||||
}catch (Exception)
|
||||
{
|
||||
buttonReplaceAll.Enabled = false;
|
||||
}
|
||||
}
|
||||
|
||||
private void deleteDisplayIDToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
if(treeViewLocEntries.SelectedNode != null)
|
||||
{
|
||||
int index = treeViewLocEntries.SelectedNode.Index;
|
||||
|
||||
currentLoc.ids.names.RemoveAt(index);
|
||||
|
||||
foreach (LOC.Language l in currentLoc.langs)
|
||||
l.names.RemoveAt(index);
|
||||
|
||||
treeViewLocEntries.Nodes.RemoveAt(index);
|
||||
}
|
||||
}
|
||||
|
||||
private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
|
||||
{
|
||||
for(int i = 0; i < tbl.Rows.Count; i++)
|
||||
{
|
||||
currentLoc.langs[i].names[treeViewLocEntries.SelectedNode.Index] = (string)tbl.Rows[i][1];
|
||||
}
|
||||
}
|
||||
|
||||
private void treeView1_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
if (e.KeyData == Keys.Delete) //checks to make sure pressed key was del
|
||||
{
|
||||
if (treeViewLocEntries.SelectedNode != null)
|
||||
{
|
||||
int index = treeViewLocEntries.SelectedNode.Index;
|
||||
|
||||
currentLoc.ids.names.RemoveAt(index);
|
||||
|
||||
foreach (LOC.Language l in currentLoc.langs)
|
||||
l.names.RemoveAt(index);
|
||||
|
||||
treeViewLocEntries.Nodes.RemoveAt(index);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void buttonReplaceAll_Click(object sender, EventArgs e)
|
||||
{
|
||||
for (int i = 0; i < tbl.Rows.Count; i++)
|
||||
{
|
||||
tbl.Rows[i][1] = textBoxReplaceAll.Text;
|
||||
}
|
||||
for (int i = 0; i < tbl.Rows.Count; i++)
|
||||
{
|
||||
currentLoc.langs[i].names[treeViewLocEntries.SelectedNode.Index] = (string)tbl.Rows[i][1];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
1867
MinecraftUSkinEditor/Forms/LOCEditor.ja.resx
Normal file
2043
MinecraftUSkinEditor/Forms/LOCEditor.resx
Normal file
66
MinecraftUSkinEditor/Forms/MetaADD.Designer.cs
generated
Normal file
@@ -0,0 +1,66 @@
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
partial class MetaADD
|
||||
{
|
||||
/// <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(MetaADD));
|
||||
this.textBox1 = new System.Windows.Forms.TextBox();
|
||||
this.button1 = new System.Windows.Forms.Button();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// textBox1
|
||||
//
|
||||
resources.ApplyResources(this.textBox1, "textBox1");
|
||||
this.textBox1.Name = "textBox1";
|
||||
//
|
||||
// button1
|
||||
//
|
||||
resources.ApplyResources(this.button1, "button1");
|
||||
this.button1.Name = "button1";
|
||||
this.button1.UseVisualStyleBackColor = true;
|
||||
this.button1.Click += new System.EventHandler(this.button1_Click);
|
||||
//
|
||||
// MetaADD
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.button1);
|
||||
this.Controls.Add(this.textBox1);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
|
||||
this.Name = "MetaADD";
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.TextBox textBox1;
|
||||
private System.Windows.Forms.Button button1;
|
||||
}
|
||||
}
|
||||
41
MinecraftUSkinEditor/Forms/MetaADD.cs
Normal file
@@ -0,0 +1,41 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
public partial class MetaADD : Form
|
||||
{
|
||||
PCK currentPCK;
|
||||
TreeView treeView1;
|
||||
|
||||
public MetaADD(PCK currentPCKIn, TreeView treeView1In)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
currentPCK = currentPCKIn;
|
||||
treeView1 = treeView1In;
|
||||
|
||||
}
|
||||
|
||||
private void button1_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
currentPCK.typeCodes.Add(textBox1.Text, treeView1.Nodes.Count);
|
||||
currentPCK.types.Add(treeView1.Nodes.Count, textBox1.Text);
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
MessageBox.Show("This metatag already exits");
|
||||
}
|
||||
this.Close();
|
||||
}
|
||||
}
|
||||
}
|
||||
2344
MinecraftUSkinEditor/Forms/MetaADD.ja.resx
Normal file
2409
MinecraftUSkinEditor/Forms/MetaADD.resx
Normal file
635
MinecraftUSkinEditor/Forms/PCK Manager.Designer.cs
generated
Normal file
@@ -0,0 +1,635 @@
|
||||
namespace minekampf.Forms
|
||||
{
|
||||
partial class PCK_Manager
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PCK_Manager));
|
||||
this.metroButton1 = new MetroFramework.Controls.MetroButton();
|
||||
this.metroTextBox1 = new MetroFramework.Controls.MetroTextBox();
|
||||
this.metroLabel1 = new MetroFramework.Controls.MetroLabel();
|
||||
this.metroButton2 = new MetroFramework.Controls.MetroButton();
|
||||
this.metroPanel1 = new MetroFramework.Controls.MetroPanel();
|
||||
this.metroLabel7 = new MetroFramework.Controls.MetroLabel();
|
||||
this.metroTextBox7 = new MetroFramework.Controls.MetroTextBox();
|
||||
this.metroLabel6 = new MetroFramework.Controls.MetroLabel();
|
||||
this.metroTextBox6 = new MetroFramework.Controls.MetroTextBox();
|
||||
this.metroButton5 = new MetroFramework.Controls.MetroButton();
|
||||
this.metroLabel5 = new MetroFramework.Controls.MetroLabel();
|
||||
this.metroLabel4 = new MetroFramework.Controls.MetroLabel();
|
||||
this.metroLabel3 = new MetroFramework.Controls.MetroLabel();
|
||||
this.metroLabel2 = new MetroFramework.Controls.MetroLabel();
|
||||
this.metroButton4 = new MetroFramework.Controls.MetroButton();
|
||||
this.metroButton3 = new MetroFramework.Controls.MetroButton();
|
||||
this.metroTextBox5 = new MetroFramework.Controls.MetroTextBox();
|
||||
this.metroTextBox4 = new MetroFramework.Controls.MetroTextBox();
|
||||
this.metroTextBox3 = new MetroFramework.Controls.MetroTextBox();
|
||||
this.metroTextBox2 = new MetroFramework.Controls.MetroTextBox();
|
||||
this.dataGridView1 = new System.Windows.Forms.DataGridView();
|
||||
this.FileName = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.DownloadUrl = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.Author = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.Desc = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||
this.removeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.metroComboBox1 = new MetroFramework.Controls.MetroComboBox();
|
||||
this.metroButton6 = new MetroFramework.Controls.MetroButton();
|
||||
this.metroPanel1.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit();
|
||||
this.contextMenuStrip1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// metroButton1
|
||||
//
|
||||
resources.ApplyResources(this.metroButton1, "metroButton1");
|
||||
this.metroButton1.Name = "metroButton1";
|
||||
this.metroButton1.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroButton1.UseSelectable = true;
|
||||
this.metroButton1.Click += new System.EventHandler(this.metroButton1_Click);
|
||||
//
|
||||
// metroTextBox1
|
||||
//
|
||||
resources.ApplyResources(this.metroTextBox1, "metroTextBox1");
|
||||
//
|
||||
//
|
||||
//
|
||||
this.metroTextBox1.CustomButton.AccessibleDescription = resources.GetString("resource.AccessibleDescription");
|
||||
this.metroTextBox1.CustomButton.AccessibleName = resources.GetString("resource.AccessibleName");
|
||||
this.metroTextBox1.CustomButton.Anchor = ((System.Windows.Forms.AnchorStyles)(resources.GetObject("resource.Anchor")));
|
||||
this.metroTextBox1.CustomButton.AutoSize = ((bool)(resources.GetObject("resource.AutoSize")));
|
||||
this.metroTextBox1.CustomButton.AutoSizeMode = ((System.Windows.Forms.AutoSizeMode)(resources.GetObject("resource.AutoSizeMode")));
|
||||
this.metroTextBox1.CustomButton.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("resource.BackgroundImage")));
|
||||
this.metroTextBox1.CustomButton.BackgroundImageLayout = ((System.Windows.Forms.ImageLayout)(resources.GetObject("resource.BackgroundImageLayout")));
|
||||
this.metroTextBox1.CustomButton.Dock = ((System.Windows.Forms.DockStyle)(resources.GetObject("resource.Dock")));
|
||||
this.metroTextBox1.CustomButton.FlatStyle = ((System.Windows.Forms.FlatStyle)(resources.GetObject("resource.FlatStyle")));
|
||||
this.metroTextBox1.CustomButton.Font = ((System.Drawing.Font)(resources.GetObject("resource.Font")));
|
||||
this.metroTextBox1.CustomButton.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image")));
|
||||
this.metroTextBox1.CustomButton.ImageAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.ImageAlign")));
|
||||
this.metroTextBox1.CustomButton.ImageIndex = ((int)(resources.GetObject("resource.ImageIndex")));
|
||||
this.metroTextBox1.CustomButton.ImageKey = resources.GetString("resource.ImageKey");
|
||||
this.metroTextBox1.CustomButton.ImeMode = ((System.Windows.Forms.ImeMode)(resources.GetObject("resource.ImeMode")));
|
||||
this.metroTextBox1.CustomButton.Location = ((System.Drawing.Point)(resources.GetObject("resource.Location")));
|
||||
this.metroTextBox1.CustomButton.MaximumSize = ((System.Drawing.Size)(resources.GetObject("resource.MaximumSize")));
|
||||
this.metroTextBox1.CustomButton.Name = "";
|
||||
this.metroTextBox1.CustomButton.RightToLeft = ((System.Windows.Forms.RightToLeft)(resources.GetObject("resource.RightToLeft")));
|
||||
this.metroTextBox1.CustomButton.Size = ((System.Drawing.Size)(resources.GetObject("resource.Size")));
|
||||
this.metroTextBox1.CustomButton.Style = MetroFramework.MetroColorStyle.Blue;
|
||||
this.metroTextBox1.CustomButton.TabIndex = ((int)(resources.GetObject("resource.TabIndex")));
|
||||
this.metroTextBox1.CustomButton.TextAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.TextAlign")));
|
||||
this.metroTextBox1.CustomButton.TextImageRelation = ((System.Windows.Forms.TextImageRelation)(resources.GetObject("resource.TextImageRelation")));
|
||||
this.metroTextBox1.CustomButton.Theme = MetroFramework.MetroThemeStyle.Light;
|
||||
this.metroTextBox1.CustomButton.UseSelectable = true;
|
||||
this.metroTextBox1.CustomButton.Visible = ((bool)(resources.GetObject("resource.Visible")));
|
||||
this.metroTextBox1.Lines = new string[0];
|
||||
this.metroTextBox1.MaxLength = 32767;
|
||||
this.metroTextBox1.Name = "metroTextBox1";
|
||||
this.metroTextBox1.PasswordChar = '\0';
|
||||
this.metroTextBox1.ScrollBars = System.Windows.Forms.ScrollBars.None;
|
||||
this.metroTextBox1.SelectedText = "";
|
||||
this.metroTextBox1.SelectionLength = 0;
|
||||
this.metroTextBox1.SelectionStart = 0;
|
||||
this.metroTextBox1.ShortcutsEnabled = true;
|
||||
this.metroTextBox1.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroTextBox1.UseSelectable = true;
|
||||
this.metroTextBox1.WaterMarkColor = System.Drawing.Color.FromArgb(((int)(((byte)(109)))), ((int)(((byte)(109)))), ((int)(((byte)(109)))));
|
||||
this.metroTextBox1.WaterMarkFont = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Pixel);
|
||||
//
|
||||
// metroLabel1
|
||||
//
|
||||
resources.ApplyResources(this.metroLabel1, "metroLabel1");
|
||||
this.metroLabel1.Name = "metroLabel1";
|
||||
this.metroLabel1.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
//
|
||||
// metroButton2
|
||||
//
|
||||
resources.ApplyResources(this.metroButton2, "metroButton2");
|
||||
this.metroButton2.Name = "metroButton2";
|
||||
this.metroButton2.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroButton2.UseSelectable = true;
|
||||
this.metroButton2.Click += new System.EventHandler(this.metroButton2_Click);
|
||||
//
|
||||
// metroPanel1
|
||||
//
|
||||
resources.ApplyResources(this.metroPanel1, "metroPanel1");
|
||||
this.metroPanel1.Controls.Add(this.metroLabel7);
|
||||
this.metroPanel1.Controls.Add(this.metroTextBox7);
|
||||
this.metroPanel1.Controls.Add(this.metroLabel6);
|
||||
this.metroPanel1.Controls.Add(this.metroTextBox6);
|
||||
this.metroPanel1.Controls.Add(this.metroButton5);
|
||||
this.metroPanel1.Controls.Add(this.metroLabel5);
|
||||
this.metroPanel1.Controls.Add(this.metroLabel4);
|
||||
this.metroPanel1.Controls.Add(this.metroLabel3);
|
||||
this.metroPanel1.Controls.Add(this.metroLabel2);
|
||||
this.metroPanel1.Controls.Add(this.metroButton4);
|
||||
this.metroPanel1.Controls.Add(this.metroButton3);
|
||||
this.metroPanel1.Controls.Add(this.metroTextBox5);
|
||||
this.metroPanel1.Controls.Add(this.metroTextBox4);
|
||||
this.metroPanel1.Controls.Add(this.metroTextBox3);
|
||||
this.metroPanel1.Controls.Add(this.metroTextBox2);
|
||||
this.metroPanel1.Controls.Add(this.dataGridView1);
|
||||
this.metroPanel1.HorizontalScrollbarBarColor = true;
|
||||
this.metroPanel1.HorizontalScrollbarHighlightOnWheel = false;
|
||||
this.metroPanel1.HorizontalScrollbarSize = 10;
|
||||
this.metroPanel1.Name = "metroPanel1";
|
||||
this.metroPanel1.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroPanel1.VerticalScrollbarBarColor = true;
|
||||
this.metroPanel1.VerticalScrollbarHighlightOnWheel = false;
|
||||
this.metroPanel1.VerticalScrollbarSize = 10;
|
||||
//
|
||||
// metroLabel7
|
||||
//
|
||||
resources.ApplyResources(this.metroLabel7, "metroLabel7");
|
||||
this.metroLabel7.Name = "metroLabel7";
|
||||
this.metroLabel7.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
//
|
||||
// metroTextBox7
|
||||
//
|
||||
resources.ApplyResources(this.metroTextBox7, "metroTextBox7");
|
||||
//
|
||||
//
|
||||
//
|
||||
this.metroTextBox7.CustomButton.AccessibleDescription = resources.GetString("resource.AccessibleDescription1");
|
||||
this.metroTextBox7.CustomButton.AccessibleName = resources.GetString("resource.AccessibleName1");
|
||||
this.metroTextBox7.CustomButton.Anchor = ((System.Windows.Forms.AnchorStyles)(resources.GetObject("resource.Anchor1")));
|
||||
this.metroTextBox7.CustomButton.AutoSize = ((bool)(resources.GetObject("resource.AutoSize1")));
|
||||
this.metroTextBox7.CustomButton.AutoSizeMode = ((System.Windows.Forms.AutoSizeMode)(resources.GetObject("resource.AutoSizeMode1")));
|
||||
this.metroTextBox7.CustomButton.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("resource.BackgroundImage1")));
|
||||
this.metroTextBox7.CustomButton.BackgroundImageLayout = ((System.Windows.Forms.ImageLayout)(resources.GetObject("resource.BackgroundImageLayout1")));
|
||||
this.metroTextBox7.CustomButton.Dock = ((System.Windows.Forms.DockStyle)(resources.GetObject("resource.Dock1")));
|
||||
this.metroTextBox7.CustomButton.FlatStyle = ((System.Windows.Forms.FlatStyle)(resources.GetObject("resource.FlatStyle1")));
|
||||
this.metroTextBox7.CustomButton.Font = ((System.Drawing.Font)(resources.GetObject("resource.Font1")));
|
||||
this.metroTextBox7.CustomButton.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image1")));
|
||||
this.metroTextBox7.CustomButton.ImageAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.ImageAlign1")));
|
||||
this.metroTextBox7.CustomButton.ImageIndex = ((int)(resources.GetObject("resource.ImageIndex1")));
|
||||
this.metroTextBox7.CustomButton.ImageKey = resources.GetString("resource.ImageKey1");
|
||||
this.metroTextBox7.CustomButton.ImeMode = ((System.Windows.Forms.ImeMode)(resources.GetObject("resource.ImeMode1")));
|
||||
this.metroTextBox7.CustomButton.Location = ((System.Drawing.Point)(resources.GetObject("resource.Location1")));
|
||||
this.metroTextBox7.CustomButton.MaximumSize = ((System.Drawing.Size)(resources.GetObject("resource.MaximumSize1")));
|
||||
this.metroTextBox7.CustomButton.Name = "";
|
||||
this.metroTextBox7.CustomButton.RightToLeft = ((System.Windows.Forms.RightToLeft)(resources.GetObject("resource.RightToLeft1")));
|
||||
this.metroTextBox7.CustomButton.Size = ((System.Drawing.Size)(resources.GetObject("resource.Size1")));
|
||||
this.metroTextBox7.CustomButton.Style = MetroFramework.MetroColorStyle.Blue;
|
||||
this.metroTextBox7.CustomButton.TabIndex = ((int)(resources.GetObject("resource.TabIndex1")));
|
||||
this.metroTextBox7.CustomButton.TextAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.TextAlign1")));
|
||||
this.metroTextBox7.CustomButton.TextImageRelation = ((System.Windows.Forms.TextImageRelation)(resources.GetObject("resource.TextImageRelation1")));
|
||||
this.metroTextBox7.CustomButton.Theme = MetroFramework.MetroThemeStyle.Light;
|
||||
this.metroTextBox7.CustomButton.UseSelectable = true;
|
||||
this.metroTextBox7.CustomButton.Visible = ((bool)(resources.GetObject("resource.Visible1")));
|
||||
this.metroTextBox7.Lines = new string[0];
|
||||
this.metroTextBox7.MaxLength = 32767;
|
||||
this.metroTextBox7.Multiline = true;
|
||||
this.metroTextBox7.Name = "metroTextBox7";
|
||||
this.metroTextBox7.PasswordChar = '\0';
|
||||
this.metroTextBox7.ScrollBars = System.Windows.Forms.ScrollBars.None;
|
||||
this.metroTextBox7.SelectedText = "";
|
||||
this.metroTextBox7.SelectionLength = 0;
|
||||
this.metroTextBox7.SelectionStart = 0;
|
||||
this.metroTextBox7.ShortcutsEnabled = true;
|
||||
this.metroTextBox7.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroTextBox7.UseSelectable = true;
|
||||
this.metroTextBox7.WaterMarkColor = System.Drawing.Color.FromArgb(((int)(((byte)(109)))), ((int)(((byte)(109)))), ((int)(((byte)(109)))));
|
||||
this.metroTextBox7.WaterMarkFont = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Pixel);
|
||||
//
|
||||
// metroLabel6
|
||||
//
|
||||
resources.ApplyResources(this.metroLabel6, "metroLabel6");
|
||||
this.metroLabel6.Name = "metroLabel6";
|
||||
this.metroLabel6.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
//
|
||||
// metroTextBox6
|
||||
//
|
||||
resources.ApplyResources(this.metroTextBox6, "metroTextBox6");
|
||||
//
|
||||
//
|
||||
//
|
||||
this.metroTextBox6.CustomButton.AccessibleDescription = resources.GetString("resource.AccessibleDescription2");
|
||||
this.metroTextBox6.CustomButton.AccessibleName = resources.GetString("resource.AccessibleName2");
|
||||
this.metroTextBox6.CustomButton.Anchor = ((System.Windows.Forms.AnchorStyles)(resources.GetObject("resource.Anchor2")));
|
||||
this.metroTextBox6.CustomButton.AutoSize = ((bool)(resources.GetObject("resource.AutoSize2")));
|
||||
this.metroTextBox6.CustomButton.AutoSizeMode = ((System.Windows.Forms.AutoSizeMode)(resources.GetObject("resource.AutoSizeMode2")));
|
||||
this.metroTextBox6.CustomButton.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("resource.BackgroundImage2")));
|
||||
this.metroTextBox6.CustomButton.BackgroundImageLayout = ((System.Windows.Forms.ImageLayout)(resources.GetObject("resource.BackgroundImageLayout2")));
|
||||
this.metroTextBox6.CustomButton.Dock = ((System.Windows.Forms.DockStyle)(resources.GetObject("resource.Dock2")));
|
||||
this.metroTextBox6.CustomButton.FlatStyle = ((System.Windows.Forms.FlatStyle)(resources.GetObject("resource.FlatStyle2")));
|
||||
this.metroTextBox6.CustomButton.Font = ((System.Drawing.Font)(resources.GetObject("resource.Font2")));
|
||||
this.metroTextBox6.CustomButton.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image2")));
|
||||
this.metroTextBox6.CustomButton.ImageAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.ImageAlign2")));
|
||||
this.metroTextBox6.CustomButton.ImageIndex = ((int)(resources.GetObject("resource.ImageIndex2")));
|
||||
this.metroTextBox6.CustomButton.ImageKey = resources.GetString("resource.ImageKey2");
|
||||
this.metroTextBox6.CustomButton.ImeMode = ((System.Windows.Forms.ImeMode)(resources.GetObject("resource.ImeMode2")));
|
||||
this.metroTextBox6.CustomButton.Location = ((System.Drawing.Point)(resources.GetObject("resource.Location2")));
|
||||
this.metroTextBox6.CustomButton.MaximumSize = ((System.Drawing.Size)(resources.GetObject("resource.MaximumSize2")));
|
||||
this.metroTextBox6.CustomButton.Name = "";
|
||||
this.metroTextBox6.CustomButton.RightToLeft = ((System.Windows.Forms.RightToLeft)(resources.GetObject("resource.RightToLeft2")));
|
||||
this.metroTextBox6.CustomButton.Size = ((System.Drawing.Size)(resources.GetObject("resource.Size2")));
|
||||
this.metroTextBox6.CustomButton.Style = MetroFramework.MetroColorStyle.Blue;
|
||||
this.metroTextBox6.CustomButton.TabIndex = ((int)(resources.GetObject("resource.TabIndex2")));
|
||||
this.metroTextBox6.CustomButton.TextAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.TextAlign2")));
|
||||
this.metroTextBox6.CustomButton.TextImageRelation = ((System.Windows.Forms.TextImageRelation)(resources.GetObject("resource.TextImageRelation2")));
|
||||
this.metroTextBox6.CustomButton.Theme = MetroFramework.MetroThemeStyle.Light;
|
||||
this.metroTextBox6.CustomButton.UseSelectable = true;
|
||||
this.metroTextBox6.CustomButton.Visible = ((bool)(resources.GetObject("resource.Visible2")));
|
||||
this.metroTextBox6.Lines = new string[0];
|
||||
this.metroTextBox6.MaxLength = 32767;
|
||||
this.metroTextBox6.Name = "metroTextBox6";
|
||||
this.metroTextBox6.PasswordChar = '\0';
|
||||
this.metroTextBox6.ScrollBars = System.Windows.Forms.ScrollBars.None;
|
||||
this.metroTextBox6.SelectedText = "";
|
||||
this.metroTextBox6.SelectionLength = 0;
|
||||
this.metroTextBox6.SelectionStart = 0;
|
||||
this.metroTextBox6.ShortcutsEnabled = true;
|
||||
this.metroTextBox6.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroTextBox6.UseSelectable = true;
|
||||
this.metroTextBox6.WaterMarkColor = System.Drawing.Color.FromArgb(((int)(((byte)(109)))), ((int)(((byte)(109)))), ((int)(((byte)(109)))));
|
||||
this.metroTextBox6.WaterMarkFont = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Pixel);
|
||||
//
|
||||
// metroButton5
|
||||
//
|
||||
resources.ApplyResources(this.metroButton5, "metroButton5");
|
||||
this.metroButton5.Name = "metroButton5";
|
||||
this.metroButton5.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroButton5.UseSelectable = true;
|
||||
this.metroButton5.Click += new System.EventHandler(this.metroButton5_Click);
|
||||
//
|
||||
// metroLabel5
|
||||
//
|
||||
resources.ApplyResources(this.metroLabel5, "metroLabel5");
|
||||
this.metroLabel5.Name = "metroLabel5";
|
||||
this.metroLabel5.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
//
|
||||
// metroLabel4
|
||||
//
|
||||
resources.ApplyResources(this.metroLabel4, "metroLabel4");
|
||||
this.metroLabel4.Name = "metroLabel4";
|
||||
this.metroLabel4.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
//
|
||||
// metroLabel3
|
||||
//
|
||||
resources.ApplyResources(this.metroLabel3, "metroLabel3");
|
||||
this.metroLabel3.Name = "metroLabel3";
|
||||
this.metroLabel3.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
//
|
||||
// metroLabel2
|
||||
//
|
||||
resources.ApplyResources(this.metroLabel2, "metroLabel2");
|
||||
this.metroLabel2.Name = "metroLabel2";
|
||||
this.metroLabel2.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
//
|
||||
// metroButton4
|
||||
//
|
||||
resources.ApplyResources(this.metroButton4, "metroButton4");
|
||||
this.metroButton4.Name = "metroButton4";
|
||||
this.metroButton4.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroButton4.UseSelectable = true;
|
||||
this.metroButton4.Click += new System.EventHandler(this.metroButton4_Click);
|
||||
//
|
||||
// metroButton3
|
||||
//
|
||||
resources.ApplyResources(this.metroButton3, "metroButton3");
|
||||
this.metroButton3.Name = "metroButton3";
|
||||
this.metroButton3.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroButton3.UseSelectable = true;
|
||||
this.metroButton3.Click += new System.EventHandler(this.metroButton3_Click);
|
||||
//
|
||||
// metroTextBox5
|
||||
//
|
||||
resources.ApplyResources(this.metroTextBox5, "metroTextBox5");
|
||||
//
|
||||
//
|
||||
//
|
||||
this.metroTextBox5.CustomButton.AccessibleDescription = resources.GetString("resource.AccessibleDescription3");
|
||||
this.metroTextBox5.CustomButton.AccessibleName = resources.GetString("resource.AccessibleName3");
|
||||
this.metroTextBox5.CustomButton.Anchor = ((System.Windows.Forms.AnchorStyles)(resources.GetObject("resource.Anchor3")));
|
||||
this.metroTextBox5.CustomButton.AutoSize = ((bool)(resources.GetObject("resource.AutoSize3")));
|
||||
this.metroTextBox5.CustomButton.AutoSizeMode = ((System.Windows.Forms.AutoSizeMode)(resources.GetObject("resource.AutoSizeMode3")));
|
||||
this.metroTextBox5.CustomButton.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("resource.BackgroundImage3")));
|
||||
this.metroTextBox5.CustomButton.BackgroundImageLayout = ((System.Windows.Forms.ImageLayout)(resources.GetObject("resource.BackgroundImageLayout3")));
|
||||
this.metroTextBox5.CustomButton.Dock = ((System.Windows.Forms.DockStyle)(resources.GetObject("resource.Dock3")));
|
||||
this.metroTextBox5.CustomButton.FlatStyle = ((System.Windows.Forms.FlatStyle)(resources.GetObject("resource.FlatStyle3")));
|
||||
this.metroTextBox5.CustomButton.Font = ((System.Drawing.Font)(resources.GetObject("resource.Font3")));
|
||||
this.metroTextBox5.CustomButton.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image3")));
|
||||
this.metroTextBox5.CustomButton.ImageAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.ImageAlign3")));
|
||||
this.metroTextBox5.CustomButton.ImageIndex = ((int)(resources.GetObject("resource.ImageIndex3")));
|
||||
this.metroTextBox5.CustomButton.ImageKey = resources.GetString("resource.ImageKey3");
|
||||
this.metroTextBox5.CustomButton.ImeMode = ((System.Windows.Forms.ImeMode)(resources.GetObject("resource.ImeMode3")));
|
||||
this.metroTextBox5.CustomButton.Location = ((System.Drawing.Point)(resources.GetObject("resource.Location3")));
|
||||
this.metroTextBox5.CustomButton.MaximumSize = ((System.Drawing.Size)(resources.GetObject("resource.MaximumSize3")));
|
||||
this.metroTextBox5.CustomButton.Name = "";
|
||||
this.metroTextBox5.CustomButton.RightToLeft = ((System.Windows.Forms.RightToLeft)(resources.GetObject("resource.RightToLeft3")));
|
||||
this.metroTextBox5.CustomButton.Size = ((System.Drawing.Size)(resources.GetObject("resource.Size3")));
|
||||
this.metroTextBox5.CustomButton.Style = MetroFramework.MetroColorStyle.Blue;
|
||||
this.metroTextBox5.CustomButton.TabIndex = ((int)(resources.GetObject("resource.TabIndex3")));
|
||||
this.metroTextBox5.CustomButton.TextAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.TextAlign3")));
|
||||
this.metroTextBox5.CustomButton.TextImageRelation = ((System.Windows.Forms.TextImageRelation)(resources.GetObject("resource.TextImageRelation3")));
|
||||
this.metroTextBox5.CustomButton.Theme = MetroFramework.MetroThemeStyle.Light;
|
||||
this.metroTextBox5.CustomButton.UseSelectable = true;
|
||||
this.metroTextBox5.CustomButton.Visible = ((bool)(resources.GetObject("resource.Visible3")));
|
||||
this.metroTextBox5.Lines = new string[0];
|
||||
this.metroTextBox5.MaxLength = 32767;
|
||||
this.metroTextBox5.Name = "metroTextBox5";
|
||||
this.metroTextBox5.PasswordChar = '\0';
|
||||
this.metroTextBox5.ScrollBars = System.Windows.Forms.ScrollBars.None;
|
||||
this.metroTextBox5.SelectedText = "";
|
||||
this.metroTextBox5.SelectionLength = 0;
|
||||
this.metroTextBox5.SelectionStart = 0;
|
||||
this.metroTextBox5.ShortcutsEnabled = true;
|
||||
this.metroTextBox5.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroTextBox5.UseSelectable = true;
|
||||
this.metroTextBox5.WaterMarkColor = System.Drawing.Color.FromArgb(((int)(((byte)(109)))), ((int)(((byte)(109)))), ((int)(((byte)(109)))));
|
||||
this.metroTextBox5.WaterMarkFont = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Pixel);
|
||||
//
|
||||
// metroTextBox4
|
||||
//
|
||||
resources.ApplyResources(this.metroTextBox4, "metroTextBox4");
|
||||
//
|
||||
//
|
||||
//
|
||||
this.metroTextBox4.CustomButton.AccessibleDescription = resources.GetString("resource.AccessibleDescription4");
|
||||
this.metroTextBox4.CustomButton.AccessibleName = resources.GetString("resource.AccessibleName4");
|
||||
this.metroTextBox4.CustomButton.Anchor = ((System.Windows.Forms.AnchorStyles)(resources.GetObject("resource.Anchor4")));
|
||||
this.metroTextBox4.CustomButton.AutoSize = ((bool)(resources.GetObject("resource.AutoSize4")));
|
||||
this.metroTextBox4.CustomButton.AutoSizeMode = ((System.Windows.Forms.AutoSizeMode)(resources.GetObject("resource.AutoSizeMode4")));
|
||||
this.metroTextBox4.CustomButton.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("resource.BackgroundImage4")));
|
||||
this.metroTextBox4.CustomButton.BackgroundImageLayout = ((System.Windows.Forms.ImageLayout)(resources.GetObject("resource.BackgroundImageLayout4")));
|
||||
this.metroTextBox4.CustomButton.Dock = ((System.Windows.Forms.DockStyle)(resources.GetObject("resource.Dock4")));
|
||||
this.metroTextBox4.CustomButton.FlatStyle = ((System.Windows.Forms.FlatStyle)(resources.GetObject("resource.FlatStyle4")));
|
||||
this.metroTextBox4.CustomButton.Font = ((System.Drawing.Font)(resources.GetObject("resource.Font4")));
|
||||
this.metroTextBox4.CustomButton.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image4")));
|
||||
this.metroTextBox4.CustomButton.ImageAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.ImageAlign4")));
|
||||
this.metroTextBox4.CustomButton.ImageIndex = ((int)(resources.GetObject("resource.ImageIndex4")));
|
||||
this.metroTextBox4.CustomButton.ImageKey = resources.GetString("resource.ImageKey4");
|
||||
this.metroTextBox4.CustomButton.ImeMode = ((System.Windows.Forms.ImeMode)(resources.GetObject("resource.ImeMode4")));
|
||||
this.metroTextBox4.CustomButton.Location = ((System.Drawing.Point)(resources.GetObject("resource.Location4")));
|
||||
this.metroTextBox4.CustomButton.MaximumSize = ((System.Drawing.Size)(resources.GetObject("resource.MaximumSize4")));
|
||||
this.metroTextBox4.CustomButton.Name = "";
|
||||
this.metroTextBox4.CustomButton.RightToLeft = ((System.Windows.Forms.RightToLeft)(resources.GetObject("resource.RightToLeft4")));
|
||||
this.metroTextBox4.CustomButton.Size = ((System.Drawing.Size)(resources.GetObject("resource.Size4")));
|
||||
this.metroTextBox4.CustomButton.Style = MetroFramework.MetroColorStyle.Blue;
|
||||
this.metroTextBox4.CustomButton.TabIndex = ((int)(resources.GetObject("resource.TabIndex4")));
|
||||
this.metroTextBox4.CustomButton.TextAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.TextAlign4")));
|
||||
this.metroTextBox4.CustomButton.TextImageRelation = ((System.Windows.Forms.TextImageRelation)(resources.GetObject("resource.TextImageRelation4")));
|
||||
this.metroTextBox4.CustomButton.Theme = MetroFramework.MetroThemeStyle.Light;
|
||||
this.metroTextBox4.CustomButton.UseSelectable = true;
|
||||
this.metroTextBox4.CustomButton.Visible = ((bool)(resources.GetObject("resource.Visible4")));
|
||||
this.metroTextBox4.Lines = new string[0];
|
||||
this.metroTextBox4.MaxLength = 32767;
|
||||
this.metroTextBox4.Name = "metroTextBox4";
|
||||
this.metroTextBox4.PasswordChar = '\0';
|
||||
this.metroTextBox4.ScrollBars = System.Windows.Forms.ScrollBars.None;
|
||||
this.metroTextBox4.SelectedText = "";
|
||||
this.metroTextBox4.SelectionLength = 0;
|
||||
this.metroTextBox4.SelectionStart = 0;
|
||||
this.metroTextBox4.ShortcutsEnabled = true;
|
||||
this.metroTextBox4.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroTextBox4.UseSelectable = true;
|
||||
this.metroTextBox4.WaterMarkColor = System.Drawing.Color.FromArgb(((int)(((byte)(109)))), ((int)(((byte)(109)))), ((int)(((byte)(109)))));
|
||||
this.metroTextBox4.WaterMarkFont = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Pixel);
|
||||
//
|
||||
// metroTextBox3
|
||||
//
|
||||
resources.ApplyResources(this.metroTextBox3, "metroTextBox3");
|
||||
//
|
||||
//
|
||||
//
|
||||
this.metroTextBox3.CustomButton.AccessibleDescription = resources.GetString("resource.AccessibleDescription5");
|
||||
this.metroTextBox3.CustomButton.AccessibleName = resources.GetString("resource.AccessibleName5");
|
||||
this.metroTextBox3.CustomButton.Anchor = ((System.Windows.Forms.AnchorStyles)(resources.GetObject("resource.Anchor5")));
|
||||
this.metroTextBox3.CustomButton.AutoSize = ((bool)(resources.GetObject("resource.AutoSize5")));
|
||||
this.metroTextBox3.CustomButton.AutoSizeMode = ((System.Windows.Forms.AutoSizeMode)(resources.GetObject("resource.AutoSizeMode5")));
|
||||
this.metroTextBox3.CustomButton.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("resource.BackgroundImage5")));
|
||||
this.metroTextBox3.CustomButton.BackgroundImageLayout = ((System.Windows.Forms.ImageLayout)(resources.GetObject("resource.BackgroundImageLayout5")));
|
||||
this.metroTextBox3.CustomButton.Dock = ((System.Windows.Forms.DockStyle)(resources.GetObject("resource.Dock5")));
|
||||
this.metroTextBox3.CustomButton.FlatStyle = ((System.Windows.Forms.FlatStyle)(resources.GetObject("resource.FlatStyle5")));
|
||||
this.metroTextBox3.CustomButton.Font = ((System.Drawing.Font)(resources.GetObject("resource.Font5")));
|
||||
this.metroTextBox3.CustomButton.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image5")));
|
||||
this.metroTextBox3.CustomButton.ImageAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.ImageAlign5")));
|
||||
this.metroTextBox3.CustomButton.ImageIndex = ((int)(resources.GetObject("resource.ImageIndex5")));
|
||||
this.metroTextBox3.CustomButton.ImageKey = resources.GetString("resource.ImageKey5");
|
||||
this.metroTextBox3.CustomButton.ImeMode = ((System.Windows.Forms.ImeMode)(resources.GetObject("resource.ImeMode5")));
|
||||
this.metroTextBox3.CustomButton.Location = ((System.Drawing.Point)(resources.GetObject("resource.Location5")));
|
||||
this.metroTextBox3.CustomButton.MaximumSize = ((System.Drawing.Size)(resources.GetObject("resource.MaximumSize5")));
|
||||
this.metroTextBox3.CustomButton.Name = "";
|
||||
this.metroTextBox3.CustomButton.RightToLeft = ((System.Windows.Forms.RightToLeft)(resources.GetObject("resource.RightToLeft5")));
|
||||
this.metroTextBox3.CustomButton.Size = ((System.Drawing.Size)(resources.GetObject("resource.Size5")));
|
||||
this.metroTextBox3.CustomButton.Style = MetroFramework.MetroColorStyle.Blue;
|
||||
this.metroTextBox3.CustomButton.TabIndex = ((int)(resources.GetObject("resource.TabIndex5")));
|
||||
this.metroTextBox3.CustomButton.TextAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.TextAlign5")));
|
||||
this.metroTextBox3.CustomButton.TextImageRelation = ((System.Windows.Forms.TextImageRelation)(resources.GetObject("resource.TextImageRelation5")));
|
||||
this.metroTextBox3.CustomButton.Theme = MetroFramework.MetroThemeStyle.Light;
|
||||
this.metroTextBox3.CustomButton.UseSelectable = true;
|
||||
this.metroTextBox3.CustomButton.Visible = ((bool)(resources.GetObject("resource.Visible5")));
|
||||
this.metroTextBox3.Lines = new string[0];
|
||||
this.metroTextBox3.MaxLength = 32767;
|
||||
this.metroTextBox3.Name = "metroTextBox3";
|
||||
this.metroTextBox3.PasswordChar = '\0';
|
||||
this.metroTextBox3.ScrollBars = System.Windows.Forms.ScrollBars.None;
|
||||
this.metroTextBox3.SelectedText = "";
|
||||
this.metroTextBox3.SelectionLength = 0;
|
||||
this.metroTextBox3.SelectionStart = 0;
|
||||
this.metroTextBox3.ShortcutsEnabled = true;
|
||||
this.metroTextBox3.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroTextBox3.UseSelectable = true;
|
||||
this.metroTextBox3.WaterMarkColor = System.Drawing.Color.FromArgb(((int)(((byte)(109)))), ((int)(((byte)(109)))), ((int)(((byte)(109)))));
|
||||
this.metroTextBox3.WaterMarkFont = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Pixel);
|
||||
//
|
||||
// metroTextBox2
|
||||
//
|
||||
resources.ApplyResources(this.metroTextBox2, "metroTextBox2");
|
||||
//
|
||||
//
|
||||
//
|
||||
this.metroTextBox2.CustomButton.AccessibleDescription = resources.GetString("resource.AccessibleDescription6");
|
||||
this.metroTextBox2.CustomButton.AccessibleName = resources.GetString("resource.AccessibleName6");
|
||||
this.metroTextBox2.CustomButton.Anchor = ((System.Windows.Forms.AnchorStyles)(resources.GetObject("resource.Anchor6")));
|
||||
this.metroTextBox2.CustomButton.AutoSize = ((bool)(resources.GetObject("resource.AutoSize6")));
|
||||
this.metroTextBox2.CustomButton.AutoSizeMode = ((System.Windows.Forms.AutoSizeMode)(resources.GetObject("resource.AutoSizeMode6")));
|
||||
this.metroTextBox2.CustomButton.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("resource.BackgroundImage6")));
|
||||
this.metroTextBox2.CustomButton.BackgroundImageLayout = ((System.Windows.Forms.ImageLayout)(resources.GetObject("resource.BackgroundImageLayout6")));
|
||||
this.metroTextBox2.CustomButton.Dock = ((System.Windows.Forms.DockStyle)(resources.GetObject("resource.Dock6")));
|
||||
this.metroTextBox2.CustomButton.FlatStyle = ((System.Windows.Forms.FlatStyle)(resources.GetObject("resource.FlatStyle6")));
|
||||
this.metroTextBox2.CustomButton.Font = ((System.Drawing.Font)(resources.GetObject("resource.Font6")));
|
||||
this.metroTextBox2.CustomButton.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image6")));
|
||||
this.metroTextBox2.CustomButton.ImageAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.ImageAlign6")));
|
||||
this.metroTextBox2.CustomButton.ImageIndex = ((int)(resources.GetObject("resource.ImageIndex6")));
|
||||
this.metroTextBox2.CustomButton.ImageKey = resources.GetString("resource.ImageKey6");
|
||||
this.metroTextBox2.CustomButton.ImeMode = ((System.Windows.Forms.ImeMode)(resources.GetObject("resource.ImeMode6")));
|
||||
this.metroTextBox2.CustomButton.Location = ((System.Drawing.Point)(resources.GetObject("resource.Location6")));
|
||||
this.metroTextBox2.CustomButton.MaximumSize = ((System.Drawing.Size)(resources.GetObject("resource.MaximumSize6")));
|
||||
this.metroTextBox2.CustomButton.Name = "";
|
||||
this.metroTextBox2.CustomButton.RightToLeft = ((System.Windows.Forms.RightToLeft)(resources.GetObject("resource.RightToLeft6")));
|
||||
this.metroTextBox2.CustomButton.Size = ((System.Drawing.Size)(resources.GetObject("resource.Size6")));
|
||||
this.metroTextBox2.CustomButton.Style = MetroFramework.MetroColorStyle.Blue;
|
||||
this.metroTextBox2.CustomButton.TabIndex = ((int)(resources.GetObject("resource.TabIndex6")));
|
||||
this.metroTextBox2.CustomButton.TextAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.TextAlign6")));
|
||||
this.metroTextBox2.CustomButton.TextImageRelation = ((System.Windows.Forms.TextImageRelation)(resources.GetObject("resource.TextImageRelation6")));
|
||||
this.metroTextBox2.CustomButton.Theme = MetroFramework.MetroThemeStyle.Light;
|
||||
this.metroTextBox2.CustomButton.UseSelectable = true;
|
||||
this.metroTextBox2.CustomButton.Visible = ((bool)(resources.GetObject("resource.Visible6")));
|
||||
this.metroTextBox2.Lines = new string[0];
|
||||
this.metroTextBox2.MaxLength = 32767;
|
||||
this.metroTextBox2.Name = "metroTextBox2";
|
||||
this.metroTextBox2.PasswordChar = '\0';
|
||||
this.metroTextBox2.ScrollBars = System.Windows.Forms.ScrollBars.None;
|
||||
this.metroTextBox2.SelectedText = "";
|
||||
this.metroTextBox2.SelectionLength = 0;
|
||||
this.metroTextBox2.SelectionStart = 0;
|
||||
this.metroTextBox2.ShortcutsEnabled = true;
|
||||
this.metroTextBox2.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroTextBox2.UseSelectable = true;
|
||||
this.metroTextBox2.WaterMarkColor = System.Drawing.Color.FromArgb(((int)(((byte)(109)))), ((int)(((byte)(109)))), ((int)(((byte)(109)))));
|
||||
this.metroTextBox2.WaterMarkFont = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Pixel);
|
||||
//
|
||||
// dataGridView1
|
||||
//
|
||||
resources.ApplyResources(this.dataGridView1, "dataGridView1");
|
||||
this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
||||
this.dataGridView1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
|
||||
this.FileName,
|
||||
this.DownloadUrl,
|
||||
this.Author,
|
||||
this.Desc});
|
||||
this.dataGridView1.ContextMenuStrip = this.contextMenuStrip1;
|
||||
this.dataGridView1.Name = "dataGridView1";
|
||||
this.dataGridView1.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
|
||||
//
|
||||
// FileName
|
||||
//
|
||||
resources.ApplyResources(this.FileName, "FileName");
|
||||
this.FileName.Name = "FileName";
|
||||
this.FileName.ReadOnly = true;
|
||||
//
|
||||
// DownloadUrl
|
||||
//
|
||||
resources.ApplyResources(this.DownloadUrl, "DownloadUrl");
|
||||
this.DownloadUrl.Name = "DownloadUrl";
|
||||
this.DownloadUrl.ReadOnly = true;
|
||||
//
|
||||
// Author
|
||||
//
|
||||
resources.ApplyResources(this.Author, "Author");
|
||||
this.Author.Name = "Author";
|
||||
this.Author.ReadOnly = true;
|
||||
//
|
||||
// Desc
|
||||
//
|
||||
resources.ApplyResources(this.Desc, "Desc");
|
||||
this.Desc.Name = "Desc";
|
||||
this.Desc.ReadOnly = true;
|
||||
//
|
||||
// contextMenuStrip1
|
||||
//
|
||||
resources.ApplyResources(this.contextMenuStrip1, "contextMenuStrip1");
|
||||
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.removeToolStripMenuItem});
|
||||
this.contextMenuStrip1.Name = "contextMenuStrip1";
|
||||
//
|
||||
// removeToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.removeToolStripMenuItem, "removeToolStripMenuItem");
|
||||
this.removeToolStripMenuItem.Name = "removeToolStripMenuItem";
|
||||
this.removeToolStripMenuItem.Click += new System.EventHandler(this.removeToolStripMenuItem_Click);
|
||||
//
|
||||
// metroComboBox1
|
||||
//
|
||||
resources.ApplyResources(this.metroComboBox1, "metroComboBox1");
|
||||
this.metroComboBox1.FormattingEnabled = true;
|
||||
this.metroComboBox1.Items.AddRange(new object[] {
|
||||
resources.GetString("metroComboBox1.Items"),
|
||||
resources.GetString("metroComboBox1.Items1"),
|
||||
resources.GetString("metroComboBox1.Items2"),
|
||||
resources.GetString("metroComboBox1.Items3"),
|
||||
resources.GetString("metroComboBox1.Items4")});
|
||||
this.metroComboBox1.Name = "metroComboBox1";
|
||||
this.metroComboBox1.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroComboBox1.UseSelectable = true;
|
||||
this.metroComboBox1.SelectedIndexChanged += new System.EventHandler(this.metroComboBox1_SelectedIndexChanged);
|
||||
//
|
||||
// metroButton6
|
||||
//
|
||||
resources.ApplyResources(this.metroButton6, "metroButton6");
|
||||
this.metroButton6.Name = "metroButton6";
|
||||
this.metroButton6.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroButton6.UseSelectable = true;
|
||||
this.metroButton6.Click += new System.EventHandler(this.metroButton6_Click);
|
||||
//
|
||||
// PCK_Manager
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.metroButton6);
|
||||
this.Controls.Add(this.metroComboBox1);
|
||||
this.Controls.Add(this.metroPanel1);
|
||||
this.Controls.Add(this.metroButton2);
|
||||
this.Controls.Add(this.metroLabel1);
|
||||
this.Controls.Add(this.metroTextBox1);
|
||||
this.Controls.Add(this.metroButton1);
|
||||
this.Name = "PCK_Manager";
|
||||
this.Style = MetroFramework.MetroColorStyle.Silver;
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroPanel1.ResumeLayout(false);
|
||||
this.metroPanel1.PerformLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).EndInit();
|
||||
this.contextMenuStrip1.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private MetroFramework.Controls.MetroButton metroButton1;
|
||||
private MetroFramework.Controls.MetroTextBox metroTextBox1;
|
||||
private MetroFramework.Controls.MetroLabel metroLabel1;
|
||||
private MetroFramework.Controls.MetroButton metroButton2;
|
||||
private MetroFramework.Controls.MetroPanel metroPanel1;
|
||||
private System.Windows.Forms.DataGridView dataGridView1;
|
||||
private MetroFramework.Controls.MetroLabel metroLabel5;
|
||||
private MetroFramework.Controls.MetroLabel metroLabel4;
|
||||
private MetroFramework.Controls.MetroLabel metroLabel3;
|
||||
private MetroFramework.Controls.MetroLabel metroLabel2;
|
||||
private MetroFramework.Controls.MetroButton metroButton4;
|
||||
private MetroFramework.Controls.MetroButton metroButton3;
|
||||
private MetroFramework.Controls.MetroTextBox metroTextBox5;
|
||||
private MetroFramework.Controls.MetroTextBox metroTextBox4;
|
||||
private MetroFramework.Controls.MetroTextBox metroTextBox3;
|
||||
private MetroFramework.Controls.MetroTextBox metroTextBox2;
|
||||
private MetroFramework.Controls.MetroButton metroButton5;
|
||||
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
|
||||
private System.Windows.Forms.ToolStripMenuItem removeToolStripMenuItem;
|
||||
private MetroFramework.Controls.MetroComboBox metroComboBox1;
|
||||
private MetroFramework.Controls.MetroLabel metroLabel7;
|
||||
private MetroFramework.Controls.MetroTextBox metroTextBox7;
|
||||
private MetroFramework.Controls.MetroLabel metroLabel6;
|
||||
private MetroFramework.Controls.MetroTextBox metroTextBox6;
|
||||
private System.Windows.Forms.DataGridViewTextBoxColumn FileName;
|
||||
private System.Windows.Forms.DataGridViewTextBoxColumn DownloadUrl;
|
||||
private System.Windows.Forms.DataGridViewTextBoxColumn Author;
|
||||
private System.Windows.Forms.DataGridViewTextBoxColumn Desc;
|
||||
private MetroFramework.Controls.MetroButton metroButton6;
|
||||
}
|
||||
}
|
||||
162
MinecraftUSkinEditor/Forms/PCK Manager.cs
Normal file
@@ -0,0 +1,162 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using MetroFramework.Forms;
|
||||
|
||||
namespace minekampf.Forms
|
||||
{
|
||||
public partial class PCK_Manager : MetroForm
|
||||
{
|
||||
public PCK_Manager()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void metroButton5_Click(object sender, EventArgs e)
|
||||
{
|
||||
string nom = metroTextBox2.Text;
|
||||
string pckurl = metroTextBox3.Text;
|
||||
string pckimg = metroTextBox4.Text;
|
||||
string DLUrl = metroTextBox5.Text;
|
||||
string auth = metroTextBox6.Text;
|
||||
string desc = metroTextBox7.Text.Replace("\n","\\n");
|
||||
|
||||
dataGridView1.Rows.Add(nom, DLUrl, auth, desc);
|
||||
}
|
||||
|
||||
private void removeToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
using (DataGridViewRow dr = dataGridView1.SelectedRows[0])
|
||||
{
|
||||
if (dr.Cells[0].Value != null && dr.Cells[1].Value != null)
|
||||
{
|
||||
dataGridView1.Rows.Remove(dr);
|
||||
string filenom = (dr.Cells[0].Value.ToString()).Replace(" ", "");
|
||||
File.Delete(metroTextBox1.Text + "\\mod\\pcks\\" + filenom + ".pck");
|
||||
File.Delete(metroTextBox1.Text + "\\mod\\pcks\\" + filenom + ".png");
|
||||
File.Delete(metroTextBox1.Text + "\\mod\\pcks\\" + filenom + ".desc");
|
||||
File.WriteAllText(metroTextBox1.Text + "\\" + metroComboBox1.SelectedItem.ToString() + ".txt", File.ReadAllText(metroTextBox1.Text + "\\" + metroComboBox1.SelectedItem.ToString() + ".txt").Replace("\n" + filenom, ""));
|
||||
File.WriteAllText(metroTextBox1.Text + "\\" + metroComboBox1.SelectedItem.ToString() + ".txt", File.ReadAllText(metroTextBox1.Text + "\\" + metroComboBox1.SelectedItem.ToString() + ".txt").Replace(filenom, ""));
|
||||
}
|
||||
}
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
private void metroButton2_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (!File.Exists(metroTextBox1.Text + "\\" + metroComboBox1.Text + ".txt"))
|
||||
{
|
||||
File.Create(metroTextBox1.Text + "\\" + metroComboBox1.Text + ".txt");
|
||||
Directory.CreateDirectory(metroTextBox1.Text + "\\mod\\pcks");
|
||||
}
|
||||
|
||||
Console.WriteLine(metroTextBox1.Text + "\\" + metroComboBox1.SelectedItem.ToString() + ".txt");
|
||||
Console.WriteLine(metroTextBox1.Text + "\\" + metroComboBox1.Text + ".txt");
|
||||
string data = File.ReadAllText(metroTextBox1.Text + "\\" + metroComboBox1.SelectedItem.ToString() + ".txt");
|
||||
foreach(string pack in data.Split(new[] { "\n", "\r\n"}, StringSplitOptions.None))
|
||||
{
|
||||
if (!string.IsNullOrWhiteSpace(pack))
|
||||
{
|
||||
string loaded = File.ReadAllText(metroTextBox1.Text + "\\mod\\pcks\\" + pack + ".desc");
|
||||
string[] loadedx = loaded.Split(new[] { "\n", "\r\n" }, StringSplitOptions.None);
|
||||
|
||||
string nom = loadedx[0];
|
||||
string auth = loadedx[1];
|
||||
string desc = loadedx[2];
|
||||
string dlurl = loadedx[3];
|
||||
dataGridView1.Rows.Add(nom, dlurl, auth, desc);
|
||||
}
|
||||
}
|
||||
metroPanel1.Enabled = true;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
private void metroButton1_Click(object sender, EventArgs e)
|
||||
{
|
||||
FolderBrowserDialog fbd = new FolderBrowserDialog();
|
||||
if(fbd.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
dataGridView1.Rows.Clear();
|
||||
metroTextBox1.Text = fbd.SelectedPath;
|
||||
}
|
||||
}
|
||||
|
||||
private void metroButton3_Click(object sender, EventArgs e)
|
||||
{
|
||||
OpenFileDialog opd = new OpenFileDialog();
|
||||
opd.Filter = "PCK Files | *.pck";
|
||||
if (opd.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
metroTextBox5.Text = File.ReadAllText(Environment.CurrentDirectory + "\\settings.ini").Split(new[] { "\r\n", "\n" }, StringSplitOptions.None)[1] + "mod/pcks/" + metroTextBox2.Text.Replace(" ", "") + ".pck";
|
||||
metroTextBox3.Text = opd.FileName;
|
||||
File.Copy(opd.FileName, metroTextBox1.Text + "\\mod\\pcks\\" + metroTextBox2.Text.Replace(" ", "") + ".pck", true);
|
||||
}
|
||||
}
|
||||
|
||||
private void metroComboBox1_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
dataGridView1.Rows.Clear();
|
||||
}
|
||||
|
||||
private void metroButton6_Click(object sender, EventArgs e)
|
||||
{
|
||||
string listdata = "";
|
||||
foreach (DataGridViewRow dr in dataGridView1.Rows)
|
||||
{
|
||||
string descdat = "";
|
||||
try
|
||||
{
|
||||
if (dr.Cells[0] != null)
|
||||
//listdata += dr.Cells[0] + "\n";
|
||||
|
||||
if (dr.Cells[0].Value != null && dr.Cells[1].Value != null)
|
||||
{
|
||||
string contentValue1 = dr.Cells[0].Value.ToString();
|
||||
string contentValue2 = dr.Cells[1].Value.ToString();
|
||||
string contentValue3 = dr.Cells[2].Value.ToString();
|
||||
string contentValue4 = dr.Cells[3].Value.ToString();
|
||||
listdata += contentValue1.Replace(" ","");
|
||||
descdat = contentValue1 + "\n" + contentValue3 + "\n" + contentValue4 + "\n" + contentValue2 + "\nadline";
|
||||
File.WriteAllText((metroTextBox1.Text + "\\mod\\pcks\\" + contentValue1.Replace(" ", "") + ".desc"), descdat);
|
||||
}
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
File.WriteAllText((metroTextBox1.Text + "\\" + metroComboBox1.SelectedItem.ToString() + ".txt"), listdata);
|
||||
}
|
||||
|
||||
private void metroButton4_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
OpenFileDialog opd = new OpenFileDialog();
|
||||
opd.Filter = "PNG Files | *.png";
|
||||
if (opd.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
metroTextBox4.Text = opd.FileName;
|
||||
File.Copy(opd.FileName, metroTextBox1.Text + "\\mod\\pcks\\" + metroTextBox2.Text.Replace(" ", "") + ".png", true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
558
MinecraftUSkinEditor/Forms/PCK Manager.ja.resx
Normal file
@@ -0,0 +1,558 @@
|
||||
<?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>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="resource.AccessibleDescription" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.AccessibleName" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||
<value>Top, Left</value>
|
||||
</data>
|
||||
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="resource.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<data name="resource.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
|
||||
<value>GrowOnly</value>
|
||||
</data>
|
||||
<data name="resource.BackgroundImage" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.BackgroundImageLayout" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>Tile</value>
|
||||
</data>
|
||||
<data name="resource.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>None</value>
|
||||
</data>
|
||||
<data name="resource.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Standard</value>
|
||||
</data>
|
||||
<data name="resource.Font" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="resource.ImageAlign" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.ImageIndex" type="System.Int32, mscorlib">
|
||||
<value>-1</value>
|
||||
</data>
|
||||
<data name="resource.ImageKey" xml:space="preserve">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.MaximumSize" type="System.Drawing.Size, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="resource.RightToLeft" type="System.Windows.Forms.RightToLeft, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.TextImageRelation" type="System.Windows.Forms.TextImageRelation, System.Windows.Forms">
|
||||
<value>Overlay</value>
|
||||
</data>
|
||||
<data name="resource.AccessibleDescription1" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.AccessibleName1" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.Anchor1" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||
<value>Top, Left</value>
|
||||
</data>
|
||||
<data name="resource.AutoSize1" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<data name="resource.AutoSizeMode1" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
|
||||
<value>GrowOnly</value>
|
||||
</data>
|
||||
<data name="resource.BackgroundImage1" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.BackgroundImageLayout1" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>Tile</value>
|
||||
</data>
|
||||
<data name="resource.Dock1" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>None</value>
|
||||
</data>
|
||||
<data name="resource.FlatStyle1" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Standard</value>
|
||||
</data>
|
||||
<data name="resource.Font1" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.ImageAlign1" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.ImageIndex1" type="System.Int32, mscorlib">
|
||||
<value>-1</value>
|
||||
</data>
|
||||
<data name="resource.ImageKey1" xml:space="preserve">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.ImeMode1" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.MaximumSize1" type="System.Drawing.Size, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="resource.RightToLeft1" type="System.Windows.Forms.RightToLeft, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.TextAlign1" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.TextImageRelation1" type="System.Windows.Forms.TextImageRelation, System.Windows.Forms">
|
||||
<value>Overlay</value>
|
||||
</data>
|
||||
<data name="resource.AccessibleDescription2" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.AccessibleName2" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.Anchor2" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||
<value>Top, Left</value>
|
||||
</data>
|
||||
<data name="resource.AutoSize2" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<data name="resource.AutoSizeMode2" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
|
||||
<value>GrowOnly</value>
|
||||
</data>
|
||||
<data name="resource.BackgroundImage2" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.BackgroundImageLayout2" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>Tile</value>
|
||||
</data>
|
||||
<data name="resource.Dock2" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>None</value>
|
||||
</data>
|
||||
<data name="resource.FlatStyle2" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Standard</value>
|
||||
</data>
|
||||
<data name="resource.Font2" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.ImageAlign2" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.ImageIndex2" type="System.Int32, mscorlib">
|
||||
<value>-1</value>
|
||||
</data>
|
||||
<data name="resource.ImageKey2" xml:space="preserve">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.ImeMode2" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.MaximumSize2" type="System.Drawing.Size, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="resource.RightToLeft2" type="System.Windows.Forms.RightToLeft, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.TextAlign2" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.TextImageRelation2" type="System.Windows.Forms.TextImageRelation, System.Windows.Forms">
|
||||
<value>Overlay</value>
|
||||
</data>
|
||||
<data name="resource.AccessibleDescription3" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.AccessibleName3" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.Anchor3" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||
<value>Top, Left</value>
|
||||
</data>
|
||||
<data name="resource.AutoSize3" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<data name="resource.AutoSizeMode3" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
|
||||
<value>GrowOnly</value>
|
||||
</data>
|
||||
<data name="resource.BackgroundImage3" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.BackgroundImageLayout3" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>Tile</value>
|
||||
</data>
|
||||
<data name="resource.Dock3" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>None</value>
|
||||
</data>
|
||||
<data name="resource.FlatStyle3" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Standard</value>
|
||||
</data>
|
||||
<data name="resource.Font3" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.ImageAlign3" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.ImageIndex3" type="System.Int32, mscorlib">
|
||||
<value>-1</value>
|
||||
</data>
|
||||
<data name="resource.ImageKey3" xml:space="preserve">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.ImeMode3" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.MaximumSize3" type="System.Drawing.Size, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="resource.RightToLeft3" type="System.Windows.Forms.RightToLeft, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.TextAlign3" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.TextImageRelation3" type="System.Windows.Forms.TextImageRelation, System.Windows.Forms">
|
||||
<value>Overlay</value>
|
||||
</data>
|
||||
<data name="resource.AccessibleDescription4" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.AccessibleName4" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.Anchor4" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||
<value>Top, Left</value>
|
||||
</data>
|
||||
<data name="resource.AutoSize4" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<data name="resource.AutoSizeMode4" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
|
||||
<value>GrowOnly</value>
|
||||
</data>
|
||||
<data name="resource.BackgroundImage4" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.BackgroundImageLayout4" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>Tile</value>
|
||||
</data>
|
||||
<data name="resource.Dock4" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>None</value>
|
||||
</data>
|
||||
<data name="resource.FlatStyle4" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Standard</value>
|
||||
</data>
|
||||
<data name="resource.Font4" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.ImageAlign4" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.ImageIndex4" type="System.Int32, mscorlib">
|
||||
<value>-1</value>
|
||||
</data>
|
||||
<data name="resource.ImageKey4" xml:space="preserve">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.ImeMode4" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.MaximumSize4" type="System.Drawing.Size, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="resource.RightToLeft4" type="System.Windows.Forms.RightToLeft, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.TextAlign4" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.TextImageRelation4" type="System.Windows.Forms.TextImageRelation, System.Windows.Forms">
|
||||
<value>Overlay</value>
|
||||
</data>
|
||||
<data name="resource.AccessibleDescription5" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.AccessibleName5" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.Anchor5" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||
<value>Top, Left</value>
|
||||
</data>
|
||||
<data name="resource.AutoSize5" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<data name="resource.AutoSizeMode5" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
|
||||
<value>GrowOnly</value>
|
||||
</data>
|
||||
<data name="resource.BackgroundImage5" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.BackgroundImageLayout5" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>Tile</value>
|
||||
</data>
|
||||
<data name="resource.Dock5" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>None</value>
|
||||
</data>
|
||||
<data name="resource.FlatStyle5" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Standard</value>
|
||||
</data>
|
||||
<data name="resource.Font5" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.ImageAlign5" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.ImageIndex5" type="System.Int32, mscorlib">
|
||||
<value>-1</value>
|
||||
</data>
|
||||
<data name="resource.ImageKey5" xml:space="preserve">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.ImeMode5" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.MaximumSize5" type="System.Drawing.Size, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="resource.RightToLeft5" type="System.Windows.Forms.RightToLeft, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.TextAlign5" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.TextImageRelation5" type="System.Windows.Forms.TextImageRelation, System.Windows.Forms">
|
||||
<value>Overlay</value>
|
||||
</data>
|
||||
<data name="resource.AccessibleDescription6" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.AccessibleName6" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.Anchor6" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||
<value>Top, Left</value>
|
||||
</data>
|
||||
<data name="resource.AutoSize6" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<data name="resource.AutoSizeMode6" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
|
||||
<value>GrowOnly</value>
|
||||
</data>
|
||||
<data name="resource.BackgroundImage6" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.BackgroundImageLayout6" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>Tile</value>
|
||||
</data>
|
||||
<data name="resource.Dock6" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>None</value>
|
||||
</data>
|
||||
<data name="resource.FlatStyle6" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Standard</value>
|
||||
</data>
|
||||
<data name="resource.Font6" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.ImageAlign6" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.ImageIndex6" type="System.Int32, mscorlib">
|
||||
<value>-1</value>
|
||||
</data>
|
||||
<data name="resource.ImageKey6" xml:space="preserve">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.ImeMode6" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.MaximumSize6" type="System.Drawing.Size, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="resource.RightToLeft6" type="System.Windows.Forms.RightToLeft, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.TextAlign6" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.TextImageRelation6" type="System.Windows.Forms.TextImageRelation, System.Windows.Forms">
|
||||
<value>Overlay</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>PCKマネージャー</value>
|
||||
</data>
|
||||
<data name="Author.HeaderText" xml:space="preserve">
|
||||
<value>著者</value>
|
||||
</data>
|
||||
<data name="Desc.HeaderText" xml:space="preserve">
|
||||
<value>説明</value>
|
||||
</data>
|
||||
<data name="DownloadUrl.HeaderText" xml:space="preserve">
|
||||
<value>ダウンロードURL</value>
|
||||
</data>
|
||||
<data name="FileName.HeaderText" xml:space="preserve">
|
||||
<value>パック名</value>
|
||||
</data>
|
||||
<data name="metroButton1.Text" xml:space="preserve">
|
||||
<value>ブラウズ</value>
|
||||
</data>
|
||||
<data name="metroButton2.Text" xml:space="preserve">
|
||||
<value>負荷</value>
|
||||
</data>
|
||||
<data name="metroButton3.Text" xml:space="preserve">
|
||||
<value>ブラウズ</value>
|
||||
</data>
|
||||
<data name="metroButton4.Text" xml:space="preserve">
|
||||
<value>ブラウズ</value>
|
||||
</data>
|
||||
<data name="metroButton5.Text" xml:space="preserve">
|
||||
<value>追加</value>
|
||||
</data>
|
||||
<data name="metroButton6.Text" xml:space="preserve">
|
||||
<value>セーブ</value>
|
||||
</data>
|
||||
<data name="metroLabel1.Text" xml:space="preserve">
|
||||
<value>ディレクトリの読み込み</value>
|
||||
</data>
|
||||
<data name="metroLabel2.Text" xml:space="preserve">
|
||||
<value>パック名</value>
|
||||
</data>
|
||||
<data name="metroLabel3.Text" xml:space="preserve">
|
||||
<value>PCKファイル</value>
|
||||
</data>
|
||||
<data name="metroLabel4.Text" xml:space="preserve">
|
||||
<value>PCK画像</value>
|
||||
</data>
|
||||
<data name="metroLabel5.Text" xml:space="preserve">
|
||||
<value>ダウンロードURL</value>
|
||||
</data>
|
||||
<data name="metroLabel6.Text" xml:space="preserve">
|
||||
<value>パック作成者</value>
|
||||
</data>
|
||||
<data name="metroLabel7.Text" xml:space="preserve">
|
||||
<value>パックの説明</value>
|
||||
</data>
|
||||
<data name="removeToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>削除する</value>
|
||||
</data>
|
||||
</root>
|
||||
1275
MinecraftUSkinEditor/Forms/PCK Manager.resx
Normal file
191
MinecraftUSkinEditor/Forms/Pref.Designer.cs
generated
Normal file
@@ -0,0 +1,191 @@
|
||||
namespace minekampf.Forms
|
||||
{
|
||||
partial class Pref
|
||||
{
|
||||
/// <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(Pref));
|
||||
this.buttonClose = new System.Windows.Forms.Button();
|
||||
this.buttonDonate = new System.Windows.Forms.Button();
|
||||
this.metroTextBox1 = new MetroFramework.Controls.MetroTextBox();
|
||||
this.metroLabel1 = new MetroFramework.Controls.MetroLabel();
|
||||
this.metroLabel2 = new MetroFramework.Controls.MetroLabel();
|
||||
this.metroTextBox2 = new MetroFramework.Controls.MetroTextBox();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// buttonClose
|
||||
//
|
||||
resources.ApplyResources(this.buttonClose, "buttonClose");
|
||||
this.buttonClose.BackColor = System.Drawing.Color.Transparent;
|
||||
this.buttonClose.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonClose.Name = "buttonClose";
|
||||
this.buttonClose.UseVisualStyleBackColor = false;
|
||||
//
|
||||
// buttonDonate
|
||||
//
|
||||
resources.ApplyResources(this.buttonDonate, "buttonDonate");
|
||||
this.buttonDonate.BackColor = System.Drawing.Color.Purple;
|
||||
this.buttonDonate.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonDonate.Name = "buttonDonate";
|
||||
this.buttonDonate.UseVisualStyleBackColor = false;
|
||||
this.buttonDonate.Click += new System.EventHandler(this.buttonDonate_Click);
|
||||
//
|
||||
// metroTextBox1
|
||||
//
|
||||
resources.ApplyResources(this.metroTextBox1, "metroTextBox1");
|
||||
//
|
||||
//
|
||||
//
|
||||
this.metroTextBox1.CustomButton.AccessibleDescription = resources.GetString("resource.AccessibleDescription");
|
||||
this.metroTextBox1.CustomButton.AccessibleName = resources.GetString("resource.AccessibleName");
|
||||
this.metroTextBox1.CustomButton.Anchor = ((System.Windows.Forms.AnchorStyles)(resources.GetObject("resource.Anchor")));
|
||||
this.metroTextBox1.CustomButton.AutoSize = ((bool)(resources.GetObject("resource.AutoSize")));
|
||||
this.metroTextBox1.CustomButton.AutoSizeMode = ((System.Windows.Forms.AutoSizeMode)(resources.GetObject("resource.AutoSizeMode")));
|
||||
this.metroTextBox1.CustomButton.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("resource.BackgroundImage")));
|
||||
this.metroTextBox1.CustomButton.BackgroundImageLayout = ((System.Windows.Forms.ImageLayout)(resources.GetObject("resource.BackgroundImageLayout")));
|
||||
this.metroTextBox1.CustomButton.Dock = ((System.Windows.Forms.DockStyle)(resources.GetObject("resource.Dock")));
|
||||
this.metroTextBox1.CustomButton.FlatStyle = ((System.Windows.Forms.FlatStyle)(resources.GetObject("resource.FlatStyle")));
|
||||
this.metroTextBox1.CustomButton.Font = ((System.Drawing.Font)(resources.GetObject("resource.Font")));
|
||||
this.metroTextBox1.CustomButton.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image")));
|
||||
this.metroTextBox1.CustomButton.ImageAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.ImageAlign")));
|
||||
this.metroTextBox1.CustomButton.ImageIndex = ((int)(resources.GetObject("resource.ImageIndex")));
|
||||
this.metroTextBox1.CustomButton.ImageKey = resources.GetString("resource.ImageKey");
|
||||
this.metroTextBox1.CustomButton.ImeMode = ((System.Windows.Forms.ImeMode)(resources.GetObject("resource.ImeMode")));
|
||||
this.metroTextBox1.CustomButton.Location = ((System.Drawing.Point)(resources.GetObject("resource.Location")));
|
||||
this.metroTextBox1.CustomButton.MaximumSize = ((System.Drawing.Size)(resources.GetObject("resource.MaximumSize")));
|
||||
this.metroTextBox1.CustomButton.Name = "";
|
||||
this.metroTextBox1.CustomButton.RightToLeft = ((System.Windows.Forms.RightToLeft)(resources.GetObject("resource.RightToLeft")));
|
||||
this.metroTextBox1.CustomButton.Size = ((System.Drawing.Size)(resources.GetObject("resource.Size")));
|
||||
this.metroTextBox1.CustomButton.Style = MetroFramework.MetroColorStyle.Blue;
|
||||
this.metroTextBox1.CustomButton.TabIndex = ((int)(resources.GetObject("resource.TabIndex")));
|
||||
this.metroTextBox1.CustomButton.TextAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.TextAlign")));
|
||||
this.metroTextBox1.CustomButton.TextImageRelation = ((System.Windows.Forms.TextImageRelation)(resources.GetObject("resource.TextImageRelation")));
|
||||
this.metroTextBox1.CustomButton.Theme = MetroFramework.MetroThemeStyle.Light;
|
||||
this.metroTextBox1.CustomButton.UseSelectable = true;
|
||||
this.metroTextBox1.CustomButton.Visible = ((bool)(resources.GetObject("resource.Visible")));
|
||||
this.metroTextBox1.Lines = new string[0];
|
||||
this.metroTextBox1.MaxLength = 32767;
|
||||
this.metroTextBox1.Name = "metroTextBox1";
|
||||
this.metroTextBox1.PasswordChar = '\0';
|
||||
this.metroTextBox1.ScrollBars = System.Windows.Forms.ScrollBars.None;
|
||||
this.metroTextBox1.SelectedText = "";
|
||||
this.metroTextBox1.SelectionLength = 0;
|
||||
this.metroTextBox1.SelectionStart = 0;
|
||||
this.metroTextBox1.ShortcutsEnabled = true;
|
||||
this.metroTextBox1.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroTextBox1.UseSelectable = true;
|
||||
this.metroTextBox1.WaterMarkColor = System.Drawing.Color.FromArgb(((int)(((byte)(109)))), ((int)(((byte)(109)))), ((int)(((byte)(109)))));
|
||||
this.metroTextBox1.WaterMarkFont = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Pixel);
|
||||
//
|
||||
// metroLabel1
|
||||
//
|
||||
resources.ApplyResources(this.metroLabel1, "metroLabel1");
|
||||
this.metroLabel1.Name = "metroLabel1";
|
||||
this.metroLabel1.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
//
|
||||
// metroLabel2
|
||||
//
|
||||
resources.ApplyResources(this.metroLabel2, "metroLabel2");
|
||||
this.metroLabel2.Name = "metroLabel2";
|
||||
this.metroLabel2.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
//
|
||||
// metroTextBox2
|
||||
//
|
||||
resources.ApplyResources(this.metroTextBox2, "metroTextBox2");
|
||||
//
|
||||
//
|
||||
//
|
||||
this.metroTextBox2.CustomButton.AccessibleDescription = resources.GetString("resource.AccessibleDescription1");
|
||||
this.metroTextBox2.CustomButton.AccessibleName = resources.GetString("resource.AccessibleName1");
|
||||
this.metroTextBox2.CustomButton.Anchor = ((System.Windows.Forms.AnchorStyles)(resources.GetObject("resource.Anchor1")));
|
||||
this.metroTextBox2.CustomButton.AutoSize = ((bool)(resources.GetObject("resource.AutoSize1")));
|
||||
this.metroTextBox2.CustomButton.AutoSizeMode = ((System.Windows.Forms.AutoSizeMode)(resources.GetObject("resource.AutoSizeMode1")));
|
||||
this.metroTextBox2.CustomButton.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("resource.BackgroundImage1")));
|
||||
this.metroTextBox2.CustomButton.BackgroundImageLayout = ((System.Windows.Forms.ImageLayout)(resources.GetObject("resource.BackgroundImageLayout1")));
|
||||
this.metroTextBox2.CustomButton.Dock = ((System.Windows.Forms.DockStyle)(resources.GetObject("resource.Dock1")));
|
||||
this.metroTextBox2.CustomButton.FlatStyle = ((System.Windows.Forms.FlatStyle)(resources.GetObject("resource.FlatStyle1")));
|
||||
this.metroTextBox2.CustomButton.Font = ((System.Drawing.Font)(resources.GetObject("resource.Font1")));
|
||||
this.metroTextBox2.CustomButton.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image1")));
|
||||
this.metroTextBox2.CustomButton.ImageAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.ImageAlign1")));
|
||||
this.metroTextBox2.CustomButton.ImageIndex = ((int)(resources.GetObject("resource.ImageIndex1")));
|
||||
this.metroTextBox2.CustomButton.ImageKey = resources.GetString("resource.ImageKey1");
|
||||
this.metroTextBox2.CustomButton.ImeMode = ((System.Windows.Forms.ImeMode)(resources.GetObject("resource.ImeMode1")));
|
||||
this.metroTextBox2.CustomButton.Location = ((System.Drawing.Point)(resources.GetObject("resource.Location1")));
|
||||
this.metroTextBox2.CustomButton.MaximumSize = ((System.Drawing.Size)(resources.GetObject("resource.MaximumSize1")));
|
||||
this.metroTextBox2.CustomButton.Name = "";
|
||||
this.metroTextBox2.CustomButton.RightToLeft = ((System.Windows.Forms.RightToLeft)(resources.GetObject("resource.RightToLeft1")));
|
||||
this.metroTextBox2.CustomButton.Size = ((System.Drawing.Size)(resources.GetObject("resource.Size1")));
|
||||
this.metroTextBox2.CustomButton.Style = MetroFramework.MetroColorStyle.Blue;
|
||||
this.metroTextBox2.CustomButton.TabIndex = ((int)(resources.GetObject("resource.TabIndex1")));
|
||||
this.metroTextBox2.CustomButton.TextAlign = ((System.Drawing.ContentAlignment)(resources.GetObject("resource.TextAlign1")));
|
||||
this.metroTextBox2.CustomButton.TextImageRelation = ((System.Windows.Forms.TextImageRelation)(resources.GetObject("resource.TextImageRelation1")));
|
||||
this.metroTextBox2.CustomButton.Theme = MetroFramework.MetroThemeStyle.Light;
|
||||
this.metroTextBox2.CustomButton.UseSelectable = true;
|
||||
this.metroTextBox2.CustomButton.Visible = ((bool)(resources.GetObject("resource.Visible1")));
|
||||
this.metroTextBox2.Lines = new string[0];
|
||||
this.metroTextBox2.MaxLength = 32767;
|
||||
this.metroTextBox2.Name = "metroTextBox2";
|
||||
this.metroTextBox2.PasswordChar = '\0';
|
||||
this.metroTextBox2.ScrollBars = System.Windows.Forms.ScrollBars.None;
|
||||
this.metroTextBox2.SelectedText = "";
|
||||
this.metroTextBox2.SelectionLength = 0;
|
||||
this.metroTextBox2.SelectionStart = 0;
|
||||
this.metroTextBox2.ShortcutsEnabled = true;
|
||||
this.metroTextBox2.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.metroTextBox2.UseSelectable = true;
|
||||
this.metroTextBox2.WaterMarkColor = System.Drawing.Color.FromArgb(((int)(((byte)(109)))), ((int)(((byte)(109)))), ((int)(((byte)(109)))));
|
||||
this.metroTextBox2.WaterMarkFont = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Pixel);
|
||||
//
|
||||
// Pref
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.metroLabel2);
|
||||
this.Controls.Add(this.metroTextBox2);
|
||||
this.Controls.Add(this.metroLabel1);
|
||||
this.Controls.Add(this.metroTextBox1);
|
||||
this.Controls.Add(this.buttonClose);
|
||||
this.Controls.Add(this.buttonDonate);
|
||||
this.Name = "Pref";
|
||||
this.Style = MetroFramework.MetroColorStyle.Silver;
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.Load += new System.EventHandler(this.Pref_Load);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.Button buttonClose;
|
||||
private System.Windows.Forms.Button buttonDonate;
|
||||
private MetroFramework.Controls.MetroTextBox metroTextBox1;
|
||||
private MetroFramework.Controls.MetroLabel metroLabel1;
|
||||
private MetroFramework.Controls.MetroLabel metroLabel2;
|
||||
private MetroFramework.Controls.MetroTextBox metroTextBox2;
|
||||
}
|
||||
}
|
||||
36
MinecraftUSkinEditor/Forms/Pref.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using MetroFramework.Forms;
|
||||
|
||||
namespace minekampf.Forms
|
||||
{
|
||||
public partial class Pref : MetroForm
|
||||
{
|
||||
public Pref()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void Pref_Load(object sender, EventArgs e)
|
||||
{
|
||||
string host = File.ReadAllText(Environment.CurrentDirectory + "\\settings.ini").Split(new[] { "\r\n", "\n"}, StringSplitOptions.None)[0];
|
||||
metroTextBox1.Text = host;
|
||||
string host1 = File.ReadAllText(Environment.CurrentDirectory + "\\settings.ini").Split(new[] { "\r\n", "\n"}, StringSplitOptions.None)[1];
|
||||
metroTextBox2.Text = host1;
|
||||
|
||||
}
|
||||
|
||||
private void buttonDonate_Click(object sender, EventArgs e)
|
||||
{
|
||||
File.WriteAllText(Environment.CurrentDirectory + "\\settings.ini", metroTextBox1.Text + "\n" + metroTextBox2.Text);
|
||||
}
|
||||
}
|
||||
}
|
||||
246
MinecraftUSkinEditor/Forms/Pref.ja.resx
Normal file
@@ -0,0 +1,246 @@
|
||||
<?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>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="resource.AccessibleDescription" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.AccessibleName" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||
<value>Top, Left</value>
|
||||
</data>
|
||||
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="resource.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<data name="resource.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
|
||||
<value>GrowOnly</value>
|
||||
</data>
|
||||
<data name="resource.BackgroundImage" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.BackgroundImageLayout" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>Tile</value>
|
||||
</data>
|
||||
<data name="resource.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>None</value>
|
||||
</data>
|
||||
<data name="resource.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Standard</value>
|
||||
</data>
|
||||
<data name="resource.Font" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="resource.ImageAlign" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.ImageIndex" type="System.Int32, mscorlib">
|
||||
<value>-1</value>
|
||||
</data>
|
||||
<data name="resource.ImageKey" xml:space="preserve">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.MaximumSize" type="System.Drawing.Size, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="resource.RightToLeft" type="System.Windows.Forms.RightToLeft, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.TextImageRelation" type="System.Windows.Forms.TextImageRelation, System.Windows.Forms">
|
||||
<value>Overlay</value>
|
||||
</data>
|
||||
<data name="resource.AccessibleDescription1" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.AccessibleName1" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.Anchor1" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||
<value>Top, Left</value>
|
||||
</data>
|
||||
<data name="resource.AutoSize1" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<data name="resource.AutoSizeMode1" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
|
||||
<value>GrowOnly</value>
|
||||
</data>
|
||||
<data name="resource.BackgroundImage1" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.BackgroundImageLayout1" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>Tile</value>
|
||||
</data>
|
||||
<data name="resource.Dock1" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>None</value>
|
||||
</data>
|
||||
<data name="resource.FlatStyle1" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Standard</value>
|
||||
</data>
|
||||
<data name="resource.Font1" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.ImageAlign1" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.ImageIndex1" type="System.Int32, mscorlib">
|
||||
<value>-1</value>
|
||||
</data>
|
||||
<data name="resource.ImageKey1" xml:space="preserve">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.ImeMode1" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.MaximumSize1" type="System.Drawing.Size, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="resource.RightToLeft1" type="System.Windows.Forms.RightToLeft, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.TextAlign1" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.TextImageRelation1" type="System.Windows.Forms.TextImageRelation, System.Windows.Forms">
|
||||
<value>Overlay</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>環境設定</value>
|
||||
</data>
|
||||
<data name="buttonClose.Text" xml:space="preserve">
|
||||
<value>閉じる</value>
|
||||
</data>
|
||||
<data name="buttonDonate.Text" xml:space="preserve">
|
||||
<value>セーブ</value>
|
||||
</data>
|
||||
<data name="metroLabel1.Text" xml:space="preserve">
|
||||
<value>Webサーバー</value>
|
||||
</data>
|
||||
<data name="metroLabel2.Text" xml:space="preserve">
|
||||
<value>PCKホスティングWebサーバー</value>
|
||||
</data>
|
||||
</root>
|
||||
438
MinecraftUSkinEditor/Forms/Pref.resx
Normal file
@@ -0,0 +1,438 @@
|
||||
<?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>
|
||||
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="metroTextBox1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>7</value>
|
||||
</data>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="metroLabel2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>148, 19</value>
|
||||
</data>
|
||||
<data name=">>metroTextBox2.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="resource.AccessibleName" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.Font" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.AutoSize1" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<data name="metroLabel1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>8</value>
|
||||
</data>
|
||||
<data name="metroTextBox2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>95, 162</value>
|
||||
</data>
|
||||
<data name="resource.AccessibleName1" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="metroLabel1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>95, 77</value>
|
||||
</data>
|
||||
<data name="buttonClose.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>103, 38</value>
|
||||
</data>
|
||||
<data name=">>$this.Name" xml:space="preserve">
|
||||
<value>Pref</value>
|
||||
</data>
|
||||
<data name=">>metroLabel1.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name="resource.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Standard</value>
|
||||
</data>
|
||||
<data name="resource.Image" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="buttonClose.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>529, 529</value>
|
||||
</data>
|
||||
<data name="metroLabel2.Text" xml:space="preserve">
|
||||
<value>PCK Hosting Webserver</value>
|
||||
</data>
|
||||
<data name="resource.BackgroundImage" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.Image1" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
|
||||
<value>6, 13</value>
|
||||
</data>
|
||||
<data name="buttonDonate.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>103, 38</value>
|
||||
</data>
|
||||
<data name=">>buttonClose.Name" xml:space="preserve">
|
||||
<value>buttonClose</value>
|
||||
</data>
|
||||
<data name="resource.BackgroundImageLayout" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>Tile</value>
|
||||
</data>
|
||||
<data name="resource.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
|
||||
<value>GrowOnly</value>
|
||||
</data>
|
||||
<data name="buttonDonate.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>5</value>
|
||||
</data>
|
||||
<data name="resource.TextImageRelation1" type="System.Windows.Forms.TextImageRelation, System.Windows.Forms">
|
||||
<value>Overlay</value>
|
||||
</data>
|
||||
<data name=">>buttonClose.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=">>metroLabel2.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name="resource.Location1" type="System.Drawing.Point, System.Drawing">
|
||||
<value>365, 1</value>
|
||||
</data>
|
||||
<data name="metroTextBox2.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>9</value>
|
||||
</data>
|
||||
<data name="resource.Visible" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<data name=">>metroTextBox2.Name" xml:space="preserve">
|
||||
<value>metroTextBox2</value>
|
||||
</data>
|
||||
<data name=">>metroTextBox2.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTextBox, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name="metroLabel2.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>10</value>
|
||||
</data>
|
||||
<data name="resource.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="resource.RightToLeft" type="System.Windows.Forms.RightToLeft, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name=">>metroTextBox1.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name="metroLabel2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>95, 140</value>
|
||||
</data>
|
||||
<data name="metroLabel1.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="buttonDonate.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>415, 529</value>
|
||||
</data>
|
||||
<data name="buttonDonate.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Flat</value>
|
||||
</data>
|
||||
<data name="resource.Font1" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="buttonDonate.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Segoe UI, 12pt</value>
|
||||
</data>
|
||||
<data name="resource.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>365, 1</value>
|
||||
</data>
|
||||
<data name=">>metroLabel1.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="buttonDonate.Text" xml:space="preserve">
|
||||
<value>Save</value>
|
||||
</data>
|
||||
<data name="resource.BackgroundImageLayout1" type="System.Windows.Forms.ImageLayout, System.Windows.Forms">
|
||||
<value>Tile</value>
|
||||
</data>
|
||||
<data name="resource.MaximumSize1" type="System.Drawing.Size, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="metroTextBox1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>95, 99</value>
|
||||
</data>
|
||||
<data name="resource.Anchor1" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||
<value>Top, Left</value>
|
||||
</data>
|
||||
<data name=">>buttonDonate.ZOrder" xml:space="preserve">
|
||||
<value>5</value>
|
||||
</data>
|
||||
<data name="resource.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>None</value>
|
||||
</data>
|
||||
<data name="resource.ImageAlign1" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.AccessibleDescription1" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.Size1" type="System.Drawing.Size, System.Drawing">
|
||||
<value>21, 21</value>
|
||||
</data>
|
||||
<data name=">>buttonDonate.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>metroLabel1.Name" xml:space="preserve">
|
||||
<value>metroLabel1</value>
|
||||
</data>
|
||||
<data name="metroLabel2.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="metroTextBox2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>387, 23</value>
|
||||
</data>
|
||||
<data name=">>buttonClose.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>metroLabel2.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="buttonClose.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Flat</value>
|
||||
</data>
|
||||
<data name="resource.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="metroTextBox1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>387, 23</value>
|
||||
</data>
|
||||
<data name="resource.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="metroLabel1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>72, 19</value>
|
||||
</data>
|
||||
<data name="resource.ImageIndex1" type="System.Int32, mscorlib">
|
||||
<value>-1</value>
|
||||
</data>
|
||||
<data name="buttonClose.Text" xml:space="preserve">
|
||||
<value>Close</value>
|
||||
</data>
|
||||
<data name="resource.ImageKey1" xml:space="preserve">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<data name="resource.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||
<value>Top, Left</value>
|
||||
</data>
|
||||
<data name=">>buttonDonate.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=">>metroTextBox1.Name" xml:space="preserve">
|
||||
<value>metroTextBox1</value>
|
||||
</data>
|
||||
<data name="resource.RightToLeft1" type="System.Windows.Forms.RightToLeft, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name=">>metroLabel2.Name" xml:space="preserve">
|
||||
<value>metroLabel2</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>Preferences</value>
|
||||
</data>
|
||||
<data name="resource.ImageIndex" type="System.Int32, mscorlib">
|
||||
<value>-1</value>
|
||||
</data>
|
||||
<data name="buttonClose.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>6</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="resource.ImeMode1" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||
<value>Inherit</value>
|
||||
</data>
|
||||
<data name="metroLabel1.Text" xml:space="preserve">
|
||||
<value>Webserver</value>
|
||||
</data>
|
||||
<data name=">>metroTextBox2.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name="resource.ImageAlign" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.ImageKey" xml:space="preserve">
|
||||
<value />
|
||||
</data>
|
||||
<data name=">>buttonClose.ZOrder" xml:space="preserve">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name="buttonClose.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Segoe UI, 12pt</value>
|
||||
</data>
|
||||
<data name="resource.TextAlign1" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleCenter</value>
|
||||
</data>
|
||||
<data name="resource.Dock1" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>None</value>
|
||||
</data>
|
||||
<data name="resource.TabIndex1" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name=">>buttonDonate.Name" xml:space="preserve">
|
||||
<value>buttonDonate</value>
|
||||
</data>
|
||||
<data name="resource.MaximumSize" type="System.Drawing.Size, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="resource.AutoSizeMode1" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
|
||||
<value>GrowOnly</value>
|
||||
</data>
|
||||
<data name=">>metroTextBox1.Type" xml:space="preserve">
|
||||
<value>MetroFramework.Controls.MetroTextBox, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
|
||||
</data>
|
||||
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
|
||||
<value>676, 589</value>
|
||||
</data>
|
||||
<data name="resource.AccessibleDescription" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<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>
|
||||
<data name="resource.TextImageRelation" type="System.Windows.Forms.TextImageRelation, System.Windows.Forms">
|
||||
<value>Overlay</value>
|
||||
</data>
|
||||
<data name="resource.Visible1" type="System.Boolean, mscorlib">
|
||||
<value>False</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="resource.BackgroundImage1" type="System.Resources.ResXNullRef, System.Windows.Forms">
|
||||
<value />
|
||||
</data>
|
||||
<data name="resource.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>21, 21</value>
|
||||
</data>
|
||||
<data name="resource.FlatStyle1" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Standard</value>
|
||||
</data>
|
||||
<data name=">>metroTextBox1.ZOrder" xml:space="preserve">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>ja</value>
|
||||
</metadata>
|
||||
</root>
|
||||
84
MinecraftUSkinEditor/Forms/Promo.Designer.cs
generated
Normal file
@@ -0,0 +1,84 @@
|
||||
namespace minekampf.Forms
|
||||
{
|
||||
partial class Promo
|
||||
{
|
||||
/// <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.webBrowser1 = new System.Windows.Forms.WebBrowser();
|
||||
this.buttonOpenInBrowser = new System.Windows.Forms.Button();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// webBrowser1
|
||||
//
|
||||
this.webBrowser1.AllowWebBrowserDrop = false;
|
||||
this.webBrowser1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.webBrowser1.Location = new System.Drawing.Point(20, 60);
|
||||
this.webBrowser1.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.webBrowser1.MinimumSize = new System.Drawing.Size(20, 20);
|
||||
this.webBrowser1.Name = "webBrowser1";
|
||||
this.webBrowser1.ScrollBarsEnabled = false;
|
||||
this.webBrowser1.Size = new System.Drawing.Size(741, 462);
|
||||
this.webBrowser1.TabIndex = 0;
|
||||
//
|
||||
// buttonOpenInBrowser
|
||||
//
|
||||
this.buttonOpenInBrowser.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(192)))));
|
||||
this.buttonOpenInBrowser.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.buttonOpenInBrowser.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonOpenInBrowser.Location = new System.Drawing.Point(670, 499);
|
||||
this.buttonOpenInBrowser.Name = "buttonOpenInBrowser";
|
||||
this.buttonOpenInBrowser.Size = new System.Drawing.Size(98, 29);
|
||||
this.buttonOpenInBrowser.TabIndex = 1;
|
||||
this.buttonOpenInBrowser.Text = "Open in Browser";
|
||||
this.buttonOpenInBrowser.UseVisualStyleBackColor = false;
|
||||
this.buttonOpenInBrowser.Click += new System.EventHandler(this.buttonOpenInBrowser_Click);
|
||||
//
|
||||
// Promo
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(781, 542);
|
||||
this.Controls.Add(this.buttonOpenInBrowser);
|
||||
this.Controls.Add(this.webBrowser1);
|
||||
this.Font = new System.Drawing.Font("Segoe UI Semibold", 8.25F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic))), System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.MaximizeBox = false;
|
||||
this.Name = "Promo";
|
||||
this.Resizable = false;
|
||||
this.ShadowType = MetroFramework.Forms.MetroFormShadowType.DropShadow;
|
||||
this.Text = "Download Freecraft for the PS3!";
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.Load += new System.EventHandler(this.Promo_Load);
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.WebBrowser webBrowser1;
|
||||
private System.Windows.Forms.Button buttonOpenInBrowser;
|
||||
}
|
||||
}
|
||||
56
MinecraftUSkinEditor/Forms/Promo.cs
Normal file
@@ -0,0 +1,56 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace minekampf.Forms
|
||||
{
|
||||
public partial class Promo : MetroFramework.Forms.MetroForm
|
||||
{
|
||||
string data;
|
||||
public Promo()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void Promo_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
try
|
||||
{
|
||||
using (WebClient getData = new WebClient())
|
||||
{
|
||||
data = getData.DownloadString(MinecraftUSkinEditor.Program.baseurl + "Promo/PromoFC");
|
||||
//data = "k_EPynYjxmc";
|
||||
|
||||
webBrowser1.ScrollBarsEnabled = false;
|
||||
|
||||
var embed = "<html><head>" +
|
||||
"<meta http-equiv=\"X-UA-Compatible\" content=\"IE=Edge\"/>" +
|
||||
"</head><body style=\"background-color: #000000;\">" +
|
||||
"<iframe width=\"720\" height=\"439\" src=\"{0}\"" +
|
||||
"frameborder = \"0\" allow = \"autoplay; encrypted-media\" allowfullscreen></iframe>" +
|
||||
"</body></html>";
|
||||
var url = "https://www.youtube.com/embed/" + data;
|
||||
this.webBrowser1.DocumentText = string.Format(embed, url);
|
||||
}
|
||||
}
|
||||
catch
|
||||
{
|
||||
this.Close();
|
||||
}
|
||||
}
|
||||
|
||||
private void buttonOpenInBrowser_Click(object sender, EventArgs e)
|
||||
{
|
||||
System.Diagnostics.Process.Start("https://www.youtube.com/watch?v=" + data );
|
||||
//MessageBox.Show("https://www.youtube.com/watch?v=" + data);
|
||||
}
|
||||
}
|
||||
}
|
||||
120
MinecraftUSkinEditor/Forms/Promo.resx
Normal file
@@ -0,0 +1,120 @@
|
||||
<?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>
|
||||
</root>
|
||||
6
MinecraftUSkinEditor/Forms/ZipArchive.cs
Normal file
@@ -0,0 +1,6 @@
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
internal class ZipArchive
|
||||
{
|
||||
}
|
||||
}
|
||||
145
MinecraftUSkinEditor/Forms/addAnimatedTexture.Designer.cs
generated
Normal file
@@ -0,0 +1,145 @@
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
partial class addAnimatedTexture
|
||||
{
|
||||
/// <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(addAnimatedTexture));
|
||||
this.pictureBox1 = new MinecraftUSkinEditor.PictureBoxWithInterpolationMode();
|
||||
this.textBox1 = new System.Windows.Forms.TextBox();
|
||||
this.textBox2 = new System.Windows.Forms.TextBox();
|
||||
this.textBox3 = new System.Windows.Forms.TextBox();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.button1 = new System.Windows.Forms.Button();
|
||||
this.radioButton1 = new System.Windows.Forms.RadioButton();
|
||||
this.radioButton2 = new System.Windows.Forms.RadioButton();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// pictureBox1
|
||||
//
|
||||
resources.ApplyResources(this.pictureBox1, "pictureBox1");
|
||||
this.pictureBox1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.pictureBox1.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.Default;
|
||||
this.pictureBox1.Name = "pictureBox1";
|
||||
this.pictureBox1.TabStop = false;
|
||||
//
|
||||
// textBox1
|
||||
//
|
||||
resources.ApplyResources(this.textBox1, "textBox1");
|
||||
this.textBox1.Name = "textBox1";
|
||||
//
|
||||
// textBox2
|
||||
//
|
||||
resources.ApplyResources(this.textBox2, "textBox2");
|
||||
this.textBox2.Name = "textBox2";
|
||||
//
|
||||
// textBox3
|
||||
//
|
||||
resources.ApplyResources(this.textBox3, "textBox3");
|
||||
this.textBox3.Name = "textBox3";
|
||||
//
|
||||
// label1
|
||||
//
|
||||
resources.ApplyResources(this.label1, "label1");
|
||||
this.label1.Name = "label1";
|
||||
//
|
||||
// label2
|
||||
//
|
||||
resources.ApplyResources(this.label2, "label2");
|
||||
this.label2.Name = "label2";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
resources.ApplyResources(this.label3, "label3");
|
||||
this.label3.Name = "label3";
|
||||
//
|
||||
// button1
|
||||
//
|
||||
resources.ApplyResources(this.button1, "button1");
|
||||
this.button1.Name = "button1";
|
||||
this.button1.UseVisualStyleBackColor = true;
|
||||
this.button1.Click += new System.EventHandler(this.button1_Click_1);
|
||||
//
|
||||
// radioButton1
|
||||
//
|
||||
resources.ApplyResources(this.radioButton1, "radioButton1");
|
||||
this.radioButton1.Checked = true;
|
||||
this.radioButton1.Name = "radioButton1";
|
||||
this.radioButton1.TabStop = true;
|
||||
this.radioButton1.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// radioButton2
|
||||
//
|
||||
resources.ApplyResources(this.radioButton2, "radioButton2");
|
||||
this.radioButton2.Name = "radioButton2";
|
||||
this.radioButton2.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// addAnimatedTexture
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.radioButton2);
|
||||
this.Controls.Add(this.radioButton1);
|
||||
this.Controls.Add(this.button1);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.textBox3);
|
||||
this.Controls.Add(this.textBox2);
|
||||
this.Controls.Add(this.textBox1);
|
||||
this.Controls.Add(this.pictureBox1);
|
||||
this.ForeColor = System.Drawing.Color.White;
|
||||
this.MaximizeBox = false;
|
||||
this.Name = "addAnimatedTexture";
|
||||
this.Resizable = false;
|
||||
this.ShadowType = MetroFramework.Forms.MetroFormShadowType.DropShadow;
|
||||
this.Style = MetroFramework.MetroColorStyle.Silver;
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.Load += new System.EventHandler(this.addAnimatedTexture_Load);
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private PictureBoxWithInterpolationMode pictureBox1;
|
||||
private System.Windows.Forms.TextBox textBox1;
|
||||
private System.Windows.Forms.TextBox textBox2;
|
||||
private System.Windows.Forms.TextBox textBox3;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private System.Windows.Forms.Button button1;
|
||||
private System.Windows.Forms.RadioButton radioButton1;
|
||||
private System.Windows.Forms.RadioButton radioButton2;
|
||||
}
|
||||
}
|
||||
114
MinecraftUSkinEditor/Forms/addAnimatedTexture.cs
Normal file
@@ -0,0 +1,114 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using System.Drawing.Drawing2D;
|
||||
using System.Linq.Expressions;
|
||||
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
public partial class addAnimatedTexture : MetroFramework.Forms.MetroForm
|
||||
{
|
||||
PCK currentPCK;
|
||||
TreeView treeView1;
|
||||
TreeNode texture = new TreeNode();
|
||||
PCK.MineFile mf = new PCK.MineFile();
|
||||
PCK.MineFile mfc = new PCK.MineFile();
|
||||
string ofd;
|
||||
bool useCape = false;
|
||||
int loop = 0;
|
||||
int i = 0;
|
||||
string data;
|
||||
int speed;
|
||||
|
||||
public addAnimatedTexture(PCK currentPCKIn, TreeView treeView1In, string ofdIn, string name)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
textBox1.Text = name;
|
||||
|
||||
currentPCK = currentPCKIn;
|
||||
treeView1 = treeView1In;
|
||||
ofd = ofdIn;
|
||||
|
||||
pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
|
||||
pictureBox1.InterpolationMode = InterpolationMode.NearestNeighbor;
|
||||
pictureBox1.Image = Image.FromFile(ofd);
|
||||
|
||||
mf.data = File.ReadAllBytes(ofd);
|
||||
|
||||
}
|
||||
|
||||
public class displayId
|
||||
{
|
||||
public string id;
|
||||
public string defaultName;
|
||||
}
|
||||
|
||||
private void button1_Click_1(object sender, EventArgs e)
|
||||
{
|
||||
try{
|
||||
int frames = int.Parse(textBox2.Text);
|
||||
|
||||
speed = int.Parse(textBox3.Text);
|
||||
|
||||
data = "0*" + speed + ",";
|
||||
|
||||
loop = frames - 1;
|
||||
|
||||
generateANIM();
|
||||
|
||||
object[] ANIM = {"ANIM", data};
|
||||
mf.entries.Add(ANIM);
|
||||
|
||||
string path = "";
|
||||
|
||||
if (radioButton1.Checked == true)
|
||||
{
|
||||
path = "res/textures/blocks/" + textBox1.Text + ".png";
|
||||
}
|
||||
else
|
||||
{
|
||||
path = "res/textures/items/" + textBox1.Text + ".png";
|
||||
}
|
||||
|
||||
mf.filesize = mf.data.Length;
|
||||
mf.name = path;
|
||||
mf.type = 0;
|
||||
|
||||
currentPCK.mineFiles.Add(mf);
|
||||
texture.Text = path;
|
||||
texture.Tag = mf;
|
||||
treeView1.Nodes.Insert(17, texture);
|
||||
|
||||
this.Close();
|
||||
}catch (Exception)
|
||||
{
|
||||
MessageBox.Show("Invalid values were entered");
|
||||
}
|
||||
}
|
||||
|
||||
private void generateANIM()
|
||||
{
|
||||
do
|
||||
{
|
||||
i += 1;
|
||||
data += i + "*" + speed + ",";
|
||||
loop -= 1;
|
||||
} while (loop != 0);
|
||||
}
|
||||
|
||||
private void addAnimatedTexture_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
1900
MinecraftUSkinEditor/Forms/addAnimatedTexture.ja.resx
Normal file
2145
MinecraftUSkinEditor/Forms/addAnimatedTexture.resx
Normal file
102
MinecraftUSkinEditor/Forms/addMeta.Designer.cs
generated
Normal file
@@ -0,0 +1,102 @@
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
partial class addMeta
|
||||
{
|
||||
/// <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(addMeta));
|
||||
this.textBox1 = new System.Windows.Forms.TextBox();
|
||||
this.textBox2 = new System.Windows.Forms.TextBox();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.button1 = new System.Windows.Forms.Button();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// textBox1
|
||||
//
|
||||
resources.ApplyResources(this.textBox1, "textBox1");
|
||||
this.textBox1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.textBox1.Name = "textBox1";
|
||||
//
|
||||
// textBox2
|
||||
//
|
||||
resources.ApplyResources(this.textBox2, "textBox2");
|
||||
this.textBox2.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.textBox2.Name = "textBox2";
|
||||
//
|
||||
// label1
|
||||
//
|
||||
resources.ApplyResources(this.label1, "label1");
|
||||
this.label1.ForeColor = System.Drawing.Color.White;
|
||||
this.label1.Name = "label1";
|
||||
//
|
||||
// label2
|
||||
//
|
||||
resources.ApplyResources(this.label2, "label2");
|
||||
this.label2.ForeColor = System.Drawing.Color.White;
|
||||
this.label2.Name = "label2";
|
||||
//
|
||||
// button1
|
||||
//
|
||||
resources.ApplyResources(this.button1, "button1");
|
||||
this.button1.ForeColor = System.Drawing.Color.White;
|
||||
this.button1.Name = "button1";
|
||||
this.button1.UseVisualStyleBackColor = true;
|
||||
this.button1.Click += new System.EventHandler(this.button1_Click);
|
||||
//
|
||||
// addMeta
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.button1);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.textBox2);
|
||||
this.Controls.Add(this.textBox1);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "addMeta";
|
||||
this.Resizable = false;
|
||||
this.ShadowType = MetroFramework.Forms.MetroFormShadowType.DropShadow;
|
||||
this.Style = MetroFramework.MetroColorStyle.Silver;
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.Load += new System.EventHandler(this.addMeta_Load);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.TextBox textBox1;
|
||||
private System.Windows.Forms.TextBox textBox2;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.Button button1;
|
||||
}
|
||||
}
|
||||
38
MinecraftUSkinEditor/Forms/addMeta.cs
Normal file
@@ -0,0 +1,38 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
public partial class addMeta : MetroFramework.Forms.MetroForm
|
||||
{
|
||||
PCK currentPCK;
|
||||
PCK.MineFile file;
|
||||
|
||||
public addMeta(PCK.MineFile fileIn, PCK currentPCKIn)
|
||||
{
|
||||
InitializeComponent();
|
||||
file = fileIn;
|
||||
currentPCK = currentPCKIn;
|
||||
FormBorderStyle = FormBorderStyle.None;
|
||||
}
|
||||
|
||||
private void button1_Click(object sender, EventArgs e)
|
||||
{
|
||||
object[] obj = { textBox1.Text, textBox2.Text };
|
||||
file.entries.Add(obj);
|
||||
this.Close();
|
||||
}
|
||||
|
||||
private void addMeta_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
2356
MinecraftUSkinEditor/Forms/addMeta.ja.resx
Normal file
2487
MinecraftUSkinEditor/Forms/addMeta.resx
Normal file
96
MinecraftUSkinEditor/Forms/addMetaAdvanced.Designer.cs
generated
Normal file
@@ -0,0 +1,96 @@
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
partial class addMetaAdvanced
|
||||
{
|
||||
/// <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(addMetaAdvanced));
|
||||
this.button1 = new System.Windows.Forms.Button();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.textBox2 = new System.Windows.Forms.TextBox();
|
||||
this.textBox1 = new System.Windows.Forms.TextBox();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// button1
|
||||
//
|
||||
resources.ApplyResources(this.button1, "button1");
|
||||
this.button1.Name = "button1";
|
||||
this.button1.UseVisualStyleBackColor = true;
|
||||
this.button1.Click += new System.EventHandler(this.button1_Click);
|
||||
//
|
||||
// label2
|
||||
//
|
||||
resources.ApplyResources(this.label2, "label2");
|
||||
this.label2.Name = "label2";
|
||||
//
|
||||
// label1
|
||||
//
|
||||
resources.ApplyResources(this.label1, "label1");
|
||||
this.label1.Name = "label1";
|
||||
//
|
||||
// textBox2
|
||||
//
|
||||
resources.ApplyResources(this.textBox2, "textBox2");
|
||||
this.textBox2.Name = "textBox2";
|
||||
//
|
||||
// textBox1
|
||||
//
|
||||
resources.ApplyResources(this.textBox1, "textBox1");
|
||||
this.textBox1.Name = "textBox1";
|
||||
//
|
||||
// addMetaAdvanced
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.button1);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.textBox2);
|
||||
this.Controls.Add(this.textBox1);
|
||||
this.ForeColor = System.Drawing.Color.White;
|
||||
this.MaximizeBox = false;
|
||||
this.Name = "addMetaAdvanced";
|
||||
this.Resizable = false;
|
||||
this.ShadowType = MetroFramework.Forms.MetroFormShadowType.DropShadow;
|
||||
this.Style = MetroFramework.MetroColorStyle.Silver;
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.Load += new System.EventHandler(this.addMetaAdvanced_Load);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.Button button1;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.TextBox textBox2;
|
||||
private System.Windows.Forms.TextBox textBox1;
|
||||
}
|
||||
}
|
||||
40
MinecraftUSkinEditor/Forms/addMetaAdvanced.cs
Normal file
@@ -0,0 +1,40 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
public partial class addMetaAdvanced : MetroFramework.Forms.MetroForm
|
||||
{
|
||||
TreeView treeMeta;
|
||||
|
||||
public addMetaAdvanced(TreeView treeMetaIn)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
treeMeta = treeMetaIn;
|
||||
|
||||
}
|
||||
|
||||
private void button1_Click(object sender, EventArgs e)
|
||||
{
|
||||
TreeNode add = new TreeNode();
|
||||
add.Text = textBox1.Text;
|
||||
add.Tag = textBox2.Text;
|
||||
|
||||
treeMeta.Nodes.Add(add);
|
||||
this.Close();
|
||||
}
|
||||
|
||||
private void addMetaAdvanced_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
1861
MinecraftUSkinEditor/Forms/addMetaAdvanced.ja.resx
Normal file
1992
MinecraftUSkinEditor/Forms/addMetaAdvanced.resx
Normal file
312
MinecraftUSkinEditor/Forms/addnewskin.Designer.cs
generated
Normal file
@@ -0,0 +1,312 @@
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
partial class addnewskin
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(addnewskin));
|
||||
this.textTheme = new System.Windows.Forms.TextBox();
|
||||
this.contextMenuSkin = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||
this.replaceToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.contextMenuCape = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||
this.replaceToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.buttonDone = new System.Windows.Forms.Button();
|
||||
this.buttonModelGen = new System.Windows.Forms.Button();
|
||||
this.comboBoxSkinType = new System.Windows.Forms.ComboBox();
|
||||
this.buttonCape = new System.Windows.Forms.Button();
|
||||
this.buttonSkin = new System.Windows.Forms.Button();
|
||||
this.displayBox = new System.Windows.Forms.PictureBox();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.textThemeName = new System.Windows.Forms.TextBox();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.textSkinName = new System.Windows.Forms.TextBox();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.textSkinID = new System.Windows.Forms.TextBox();
|
||||
this.radioAUTO = new System.Windows.Forms.RadioButton();
|
||||
this.radioLOCAL = new System.Windows.Forms.RadioButton();
|
||||
this.labelSelectTexture = new System.Windows.Forms.Label();
|
||||
this.radioSERVER = new System.Windows.Forms.RadioButton();
|
||||
this.webBrowser1 = new System.Windows.Forms.WebBrowser();
|
||||
this.pictureBoxWithInterpolationMode1 = new MinecraftUSkinEditor.PictureBoxWithInterpolationMode();
|
||||
this.pictureBoxTexture = new MinecraftUSkinEditor.PictureBoxWithInterpolationMode();
|
||||
this.contextMenuSkin.SuspendLayout();
|
||||
this.contextMenuCape.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.displayBox)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBoxWithInterpolationMode1)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBoxTexture)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// textTheme
|
||||
//
|
||||
resources.ApplyResources(this.textTheme, "textTheme");
|
||||
this.textTheme.Name = "textTheme";
|
||||
this.textTheme.TextChanged += new System.EventHandler(this.textBox1_TextChanged);
|
||||
//
|
||||
// contextMenuSkin
|
||||
//
|
||||
resources.ApplyResources(this.contextMenuSkin, "contextMenuSkin");
|
||||
this.contextMenuSkin.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.replaceToolStripMenuItem});
|
||||
this.contextMenuSkin.Name = "contextMenuSkin";
|
||||
//
|
||||
// replaceToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.replaceToolStripMenuItem, "replaceToolStripMenuItem");
|
||||
this.replaceToolStripMenuItem.Name = "replaceToolStripMenuItem";
|
||||
this.replaceToolStripMenuItem.Click += new System.EventHandler(this.replaceToolStripMenuItem_Click);
|
||||
//
|
||||
// contextMenuCape
|
||||
//
|
||||
resources.ApplyResources(this.contextMenuCape, "contextMenuCape");
|
||||
this.contextMenuCape.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.replaceToolStripMenuItem1});
|
||||
this.contextMenuCape.Name = "contextMenuCape";
|
||||
//
|
||||
// replaceToolStripMenuItem1
|
||||
//
|
||||
resources.ApplyResources(this.replaceToolStripMenuItem1, "replaceToolStripMenuItem1");
|
||||
this.replaceToolStripMenuItem1.Name = "replaceToolStripMenuItem1";
|
||||
this.replaceToolStripMenuItem1.Click += new System.EventHandler(this.replaceToolStripMenuItem1_Click);
|
||||
//
|
||||
// buttonDone
|
||||
//
|
||||
resources.ApplyResources(this.buttonDone, "buttonDone");
|
||||
this.buttonDone.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonDone.Name = "buttonDone";
|
||||
this.buttonDone.UseVisualStyleBackColor = true;
|
||||
this.buttonDone.Click += new System.EventHandler(this.button1_Click_1);
|
||||
//
|
||||
// buttonModelGen
|
||||
//
|
||||
resources.ApplyResources(this.buttonModelGen, "buttonModelGen");
|
||||
this.buttonModelGen.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonModelGen.Name = "buttonModelGen";
|
||||
this.buttonModelGen.UseVisualStyleBackColor = true;
|
||||
this.buttonModelGen.Click += new System.EventHandler(this.button2_Click_1);
|
||||
//
|
||||
// comboBoxSkinType
|
||||
//
|
||||
resources.ApplyResources(this.comboBoxSkinType, "comboBoxSkinType");
|
||||
this.comboBoxSkinType.FormattingEnabled = true;
|
||||
this.comboBoxSkinType.Items.AddRange(new object[] {
|
||||
resources.GetString("comboBoxSkinType.Items"),
|
||||
resources.GetString("comboBoxSkinType.Items1"),
|
||||
resources.GetString("comboBoxSkinType.Items2")});
|
||||
this.comboBoxSkinType.Name = "comboBoxSkinType";
|
||||
//
|
||||
// buttonCape
|
||||
//
|
||||
resources.ApplyResources(this.buttonCape, "buttonCape");
|
||||
this.buttonCape.Name = "buttonCape";
|
||||
this.buttonCape.UseVisualStyleBackColor = true;
|
||||
this.buttonCape.Click += new System.EventHandler(this.buttonCape_Click);
|
||||
//
|
||||
// buttonSkin
|
||||
//
|
||||
resources.ApplyResources(this.buttonSkin, "buttonSkin");
|
||||
this.buttonSkin.Name = "buttonSkin";
|
||||
this.buttonSkin.UseVisualStyleBackColor = true;
|
||||
this.buttonSkin.Click += new System.EventHandler(this.buttonSkin_Click);
|
||||
//
|
||||
// displayBox
|
||||
//
|
||||
resources.ApplyResources(this.displayBox, "displayBox");
|
||||
this.displayBox.BackColor = System.Drawing.SystemColors.ControlDark;
|
||||
this.displayBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.displayBox.Name = "displayBox";
|
||||
this.displayBox.TabStop = false;
|
||||
//
|
||||
// label3
|
||||
//
|
||||
resources.ApplyResources(this.label3, "label3");
|
||||
this.label3.ForeColor = System.Drawing.Color.White;
|
||||
this.label3.Name = "label3";
|
||||
//
|
||||
// textThemeName
|
||||
//
|
||||
resources.ApplyResources(this.textThemeName, "textThemeName");
|
||||
this.textThemeName.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.textThemeName.Name = "textThemeName";
|
||||
this.textThemeName.TextChanged += new System.EventHandler(this.textThemeName_TextChanged);
|
||||
this.textThemeName.VisibleChanged += new System.EventHandler(this.textThemeName_VisibleChanged);
|
||||
//
|
||||
// label2
|
||||
//
|
||||
resources.ApplyResources(this.label2, "label2");
|
||||
this.label2.ForeColor = System.Drawing.Color.White;
|
||||
this.label2.Name = "label2";
|
||||
//
|
||||
// textSkinName
|
||||
//
|
||||
resources.ApplyResources(this.textSkinName, "textSkinName");
|
||||
this.textSkinName.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.textSkinName.Name = "textSkinName";
|
||||
this.textSkinName.TextChanged += new System.EventHandler(this.textSkinName_TextChanged);
|
||||
this.textSkinName.VisibleChanged += new System.EventHandler(this.textSkinName_VisibleChanged);
|
||||
//
|
||||
// label1
|
||||
//
|
||||
resources.ApplyResources(this.label1, "label1");
|
||||
this.label1.ForeColor = System.Drawing.Color.White;
|
||||
this.label1.Name = "label1";
|
||||
//
|
||||
// textSkinID
|
||||
//
|
||||
resources.ApplyResources(this.textSkinID, "textSkinID");
|
||||
this.textSkinID.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.textSkinID.Name = "textSkinID";
|
||||
this.textSkinID.TextChanged += new System.EventHandler(this.textSkinID_TextChanged_1);
|
||||
//
|
||||
// radioAUTO
|
||||
//
|
||||
resources.ApplyResources(this.radioAUTO, "radioAUTO");
|
||||
this.radioAUTO.ForeColor = System.Drawing.Color.White;
|
||||
this.radioAUTO.Name = "radioAUTO";
|
||||
this.radioAUTO.UseVisualStyleBackColor = true;
|
||||
this.radioAUTO.CheckedChanged += new System.EventHandler(this.radioButton1_CheckedChanged);
|
||||
//
|
||||
// radioLOCAL
|
||||
//
|
||||
resources.ApplyResources(this.radioLOCAL, "radioLOCAL");
|
||||
this.radioLOCAL.Checked = true;
|
||||
this.radioLOCAL.ForeColor = System.Drawing.Color.White;
|
||||
this.radioLOCAL.Name = "radioLOCAL";
|
||||
this.radioLOCAL.TabStop = true;
|
||||
this.radioLOCAL.UseVisualStyleBackColor = true;
|
||||
this.radioLOCAL.CheckedChanged += new System.EventHandler(this.radioLOCAL_CheckedChanged);
|
||||
//
|
||||
// labelSelectTexture
|
||||
//
|
||||
resources.ApplyResources(this.labelSelectTexture, "labelSelectTexture");
|
||||
this.labelSelectTexture.ForeColor = System.Drawing.Color.White;
|
||||
this.labelSelectTexture.Name = "labelSelectTexture";
|
||||
this.labelSelectTexture.Click += new System.EventHandler(this.label4_Click);
|
||||
//
|
||||
// radioSERVER
|
||||
//
|
||||
resources.ApplyResources(this.radioSERVER, "radioSERVER");
|
||||
this.radioSERVER.ForeColor = System.Drawing.Color.White;
|
||||
this.radioSERVER.Name = "radioSERVER";
|
||||
this.radioSERVER.UseVisualStyleBackColor = true;
|
||||
this.radioSERVER.CheckedChanged += new System.EventHandler(this.radioSERVER_CheckedChanged);
|
||||
//
|
||||
// webBrowser1
|
||||
//
|
||||
resources.ApplyResources(this.webBrowser1, "webBrowser1");
|
||||
this.webBrowser1.IsWebBrowserContextMenuEnabled = false;
|
||||
this.webBrowser1.Name = "webBrowser1";
|
||||
this.webBrowser1.ScriptErrorsSuppressed = true;
|
||||
this.webBrowser1.ScrollBarsEnabled = false;
|
||||
this.webBrowser1.Url = new System.Uri("http://nobledez.ga/nobledez.ga/pckStudio/SkinID.php", System.UriKind.Absolute);
|
||||
//
|
||||
// pictureBoxWithInterpolationMode1
|
||||
//
|
||||
resources.ApplyResources(this.pictureBoxWithInterpolationMode1, "pictureBoxWithInterpolationMode1");
|
||||
this.pictureBoxWithInterpolationMode1.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.Default;
|
||||
this.pictureBoxWithInterpolationMode1.Name = "pictureBoxWithInterpolationMode1";
|
||||
this.pictureBoxWithInterpolationMode1.TabStop = false;
|
||||
//
|
||||
// pictureBoxTexture
|
||||
//
|
||||
resources.ApplyResources(this.pictureBoxTexture, "pictureBoxTexture");
|
||||
this.pictureBoxTexture.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.pictureBoxTexture.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.Default;
|
||||
this.pictureBoxTexture.Name = "pictureBoxTexture";
|
||||
this.pictureBoxTexture.TabStop = false;
|
||||
this.pictureBoxTexture.Click += new System.EventHandler(this.pictureBox1_Click);
|
||||
//
|
||||
// addnewskin
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.BorderStyle = MetroFramework.Forms.MetroFormBorderStyle.FixedSingle;
|
||||
this.Controls.Add(this.webBrowser1);
|
||||
this.Controls.Add(this.radioSERVER);
|
||||
this.Controls.Add(this.labelSelectTexture);
|
||||
this.Controls.Add(this.radioLOCAL);
|
||||
this.Controls.Add(this.radioAUTO);
|
||||
this.Controls.Add(this.buttonDone);
|
||||
this.Controls.Add(this.buttonModelGen);
|
||||
this.Controls.Add(this.comboBoxSkinType);
|
||||
this.Controls.Add(this.buttonCape);
|
||||
this.Controls.Add(this.buttonSkin);
|
||||
this.Controls.Add(this.pictureBoxWithInterpolationMode1);
|
||||
this.Controls.Add(this.pictureBoxTexture);
|
||||
this.Controls.Add(this.displayBox);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.textThemeName);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.textSkinName);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.textSkinID);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
|
||||
this.MaximizeBox = false;
|
||||
this.Name = "addnewskin";
|
||||
this.Resizable = false;
|
||||
this.Style = MetroFramework.MetroColorStyle.Silver;
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.Load += new System.EventHandler(this.addnewskin_Load);
|
||||
this.contextMenuSkin.ResumeLayout(false);
|
||||
this.contextMenuCape.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.displayBox)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBoxWithInterpolationMode1)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBoxTexture)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
private System.Windows.Forms.RadioButton radioUpsideDown;
|
||||
private System.Windows.Forms.TextBox textBox1;
|
||||
private System.Windows.Forms.TextBox textTheme;
|
||||
private System.Windows.Forms.ContextMenuStrip contextMenuSkin;
|
||||
private System.Windows.Forms.ToolStripMenuItem replaceToolStripMenuItem;
|
||||
private System.Windows.Forms.ContextMenuStrip contextMenuCape;
|
||||
private System.Windows.Forms.ToolStripMenuItem replaceToolStripMenuItem1;
|
||||
private System.Windows.Forms.Button buttonDone;
|
||||
private System.Windows.Forms.Button buttonModelGen;
|
||||
private System.Windows.Forms.ComboBox comboBoxSkinType;
|
||||
private System.Windows.Forms.Button buttonCape;
|
||||
private System.Windows.Forms.Button buttonSkin;
|
||||
private PictureBoxWithInterpolationMode pictureBoxWithInterpolationMode1;
|
||||
private PictureBoxWithInterpolationMode pictureBoxTexture;
|
||||
private System.Windows.Forms.PictureBox displayBox;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private System.Windows.Forms.TextBox textThemeName;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.TextBox textSkinName;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.TextBox textSkinID;
|
||||
private System.Windows.Forms.RadioButton radioAUTO;
|
||||
private System.Windows.Forms.RadioButton radioLOCAL;
|
||||
private System.Windows.Forms.Label labelSelectTexture;
|
||||
private System.Windows.Forms.RadioButton radioSERVER;
|
||||
private System.Windows.Forms.WebBrowser webBrowser1;
|
||||
}
|
||||
}
|
||||
667
MinecraftUSkinEditor/Forms/addnewskin.cs
Normal file
@@ -0,0 +1,667 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using System.Drawing.Drawing2D;
|
||||
using MySql.Data.MySqlClient;
|
||||
using System.Net;
|
||||
using minekampf;
|
||||
|
||||
namespace MinecraftUSkinEditor
|
||||
{
|
||||
public partial class addnewskin : MetroFramework.Forms.MetroForm
|
||||
{
|
||||
PCK currentPCK;
|
||||
DataTable tbl;
|
||||
LOC currentLoc;
|
||||
PCK.MineFile mf = new PCK.MineFile();
|
||||
PCK.MineFile mfc = new PCK.MineFile();
|
||||
TreeView treeView1;
|
||||
string skinId = "";
|
||||
TreeNode skin = new TreeNode();
|
||||
TreeNode cape = new TreeNode();
|
||||
TreeNode skinName = new TreeNode();
|
||||
TreeNode displayNameId = new TreeNode();
|
||||
TreeNode themeName = new TreeNode();
|
||||
TreeNode themeNameId = new TreeNode();
|
||||
TreeNode anim = new TreeNode();
|
||||
TreeNode free = new TreeNode();
|
||||
TreeNode theme = new TreeNode();
|
||||
TreeNode capePath = new TreeNode();
|
||||
string skinType = "";
|
||||
string ofd;
|
||||
bool useCape = false;
|
||||
string capeID;
|
||||
string localID;
|
||||
string serverID;
|
||||
string skinid;
|
||||
List<object[]> generatedModel = new List<object[]>();
|
||||
|
||||
public addnewskin(PCK currentPCKIn, TreeView treeView1In, string tempIDIn, LOC loc)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
currentLoc = loc;
|
||||
tbl = new DataTable();
|
||||
tbl.Columns.Add(new DataColumn("Language") { ReadOnly = true });
|
||||
tbl.Columns.Add("Display Name");
|
||||
|
||||
currentPCK = currentPCKIn;
|
||||
treeView1 = treeView1In;
|
||||
|
||||
localID = tempIDIn;
|
||||
|
||||
textSkinID.Text = localID;
|
||||
|
||||
FormBorderStyle = FormBorderStyle.None;
|
||||
|
||||
buttonDone.Enabled = false;
|
||||
}
|
||||
|
||||
private void checkImage()
|
||||
{
|
||||
//Checks image dimensions and sets things accordingly
|
||||
if (Image.FromFile(ofd).Height == 64)//If skins is 64x64
|
||||
{
|
||||
MessageBox.Show("64x64 Skin Detected");
|
||||
pictureBoxTexture.Width = pictureBoxTexture.Height;
|
||||
if (skinType != "64x64" && skinType != "64x64HD")
|
||||
{
|
||||
buttonSkin.Location = new Point(buttonSkin.Location.X - pictureBoxTexture.Width, buttonSkin.Location.Y);
|
||||
}
|
||||
comboBoxSkinType.Text = "Steve (64x64)";
|
||||
comboBoxSkinType.Enabled = true;
|
||||
if (comboBoxSkinType.Items.Count == 3)
|
||||
{
|
||||
comboBoxSkinType.Items.RemoveAt(0);
|
||||
}
|
||||
skinType = "64x64";
|
||||
}
|
||||
else if (Image.FromFile(ofd).Height == 32)//If skins is 64x32
|
||||
{
|
||||
MessageBox.Show("64x32 Skin Detected");
|
||||
pictureBoxTexture.Width = pictureBoxTexture.Height * 2;
|
||||
if (skinType == "64x64")
|
||||
{
|
||||
buttonSkin.Location = new Point(buttonSkin.Location.X + pictureBoxTexture.Width / 2, buttonSkin.Location.Y);
|
||||
}
|
||||
if (skinType == "64x64HD")
|
||||
{
|
||||
buttonSkin.Location = new Point(buttonSkin.Location.X + pictureBoxTexture.Width / 2, buttonSkin.Location.Y);
|
||||
}
|
||||
comboBoxSkinType.Text = "Default (64x32)";
|
||||
comboBoxSkinType.Enabled = false;
|
||||
skinType = "64x32";
|
||||
}
|
||||
else if (Image.FromFile(ofd).Width == Image.FromFile(ofd).Height / 1)//If skins is 64x64 HD
|
||||
{
|
||||
MessageBox.Show("64x64 HD Skin Detected");
|
||||
pictureBoxTexture.Width = pictureBoxTexture.Height;
|
||||
if (skinType != "64x64" && skinType != "64x64HD")
|
||||
{
|
||||
buttonSkin.Location = new Point(buttonSkin.Location.X - pictureBoxTexture.Width, buttonSkin.Location.Y);
|
||||
}
|
||||
comboBoxSkinType.Text = "Steve (64x64)";
|
||||
comboBoxSkinType.Enabled = true;
|
||||
if (comboBoxSkinType.Items.Count == 3)
|
||||
{
|
||||
comboBoxSkinType.Items.RemoveAt(0);
|
||||
}
|
||||
skinType = "64x64";
|
||||
}
|
||||
else if (Image.FromFile(ofd).Width == Image.FromFile(ofd).Height / 2)//If skins is 64x32 HD
|
||||
{
|
||||
MessageBox.Show("64x32 HD Skin Detected");
|
||||
pictureBoxTexture.Width = pictureBoxTexture.Height * 2;
|
||||
if (skinType == "64x64")
|
||||
{
|
||||
buttonSkin.Location = new Point(buttonSkin.Location.X + pictureBoxTexture.Width / 2, buttonSkin.Location.Y);
|
||||
}
|
||||
if (skinType == "64x64HD")
|
||||
{
|
||||
buttonSkin.Location = new Point(buttonSkin.Location.X + pictureBoxTexture.Width / 2, buttonSkin.Location.Y);
|
||||
}
|
||||
comboBoxSkinType.Text = "Default (64x32)";
|
||||
comboBoxSkinType.Enabled = false;
|
||||
skinType = "64x32";
|
||||
}
|
||||
else //If dimensions don't fit any skin type //Invalid
|
||||
{
|
||||
MessageBox.Show("Not a Valid Skin File");
|
||||
skinType = "unusable";
|
||||
return;
|
||||
}
|
||||
|
||||
pictureBoxTexture.SizeMode = PictureBoxSizeMode.StretchImage;
|
||||
pictureBoxTexture.InterpolationMode = InterpolationMode.NearestNeighbor;
|
||||
pictureBoxTexture.Image = Image.FromFile(ofd);
|
||||
|
||||
buttonDone.Enabled = true;
|
||||
labelSelectTexture.Visible = false;
|
||||
|
||||
mf.data = File.ReadAllBytes(ofd);
|
||||
}
|
||||
|
||||
public class displayId
|
||||
{
|
||||
public string id;
|
||||
public string defaultName;
|
||||
}
|
||||
|
||||
private void textSkinName_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
skinName.Text = "DISPLAYNAME";
|
||||
skinName.Tag = textSkinName.Text;
|
||||
}
|
||||
|
||||
private void textSkinID_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
skinId = textSkinID.Text;
|
||||
|
||||
displayNameId.Text = "DISPLAYNAMEID";
|
||||
displayNameId.Tag = "IDS_dlcskin" + textSkinID.Text + "_DISPLAYNAME";
|
||||
|
||||
themeName.Text = "THEMENAME";
|
||||
themeName.Tag = "dlcskin" + textSkinID.Text;
|
||||
}
|
||||
|
||||
private void radioSteveModel_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
MessageBox.Show("Skin Model Set to Steve Model");
|
||||
}
|
||||
|
||||
private void radioAlexModel_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
MessageBox.Show("Skin Model Set to Alex Model");
|
||||
|
||||
}
|
||||
|
||||
private void button2_Click(object sender, EventArgs e)
|
||||
{
|
||||
MessageBox.Show("Must be an 8 digit Number");
|
||||
}
|
||||
|
||||
private void button3_Click(object sender, EventArgs e)
|
||||
{
|
||||
MessageBox.Show("This is the Skins Name You'll See In-Game");
|
||||
}
|
||||
|
||||
private void addnewskin_Load(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (File.Exists(Application.StartupPath + "\\temp.png"))
|
||||
{
|
||||
File.Delete(Application.StartupPath + "\\temp.png");
|
||||
}
|
||||
}catch (Exception)
|
||||
{
|
||||
|
||||
}
|
||||
if (skinType == "unusable")
|
||||
{
|
||||
this.Close();
|
||||
}
|
||||
else if (skinType == "64x64")
|
||||
{
|
||||
comboBoxSkinType.Text = "Steve (64x64)";
|
||||
}
|
||||
else if (skinType == "64x64HD")
|
||||
{
|
||||
comboBoxSkinType.Text = "Steve (64x64)";
|
||||
}
|
||||
else if (skinType == "64x32")
|
||||
{
|
||||
comboBoxSkinType.Text = "Steve (64x32)";
|
||||
}
|
||||
else if (skinType == "64x32HD")
|
||||
{
|
||||
comboBoxSkinType.Text = "Steve (64x32)";
|
||||
}
|
||||
|
||||
Bitmap bmp = new Bitmap(displayBox.Width, displayBox.Height);
|
||||
using (Graphics g = Graphics.FromImage(bmp))
|
||||
{
|
||||
//Head
|
||||
g.DrawRectangle(Pens.Black, 70, 15, 40, 40);
|
||||
g.FillRectangle(Brushes.Gray, 71, 16, 39, 39);
|
||||
//Body
|
||||
g.DrawRectangle(Pens.Black, 70, 55, 40, 60);
|
||||
g.FillRectangle(Brushes.Gray, 71, 56, 39, 59);
|
||||
//Arm0
|
||||
g.DrawRectangle(Pens.Black, 50, 55, 20, 60);
|
||||
g.FillRectangle(Brushes.Gray, 51, 56, 19, 59);
|
||||
//Arm1
|
||||
g.DrawRectangle(Pens.Black, 110, 55, 20, 60);
|
||||
g.FillRectangle(Brushes.Gray, 111, 56, 19, 59);
|
||||
//Leg0
|
||||
g.DrawRectangle(Pens.Black, 70, 115, 20, 60);
|
||||
g.FillRectangle(Brushes.Gray, 71, 116, 19, 59);
|
||||
//Leg1
|
||||
g.DrawRectangle(Pens.Black, 90, 115, 20, 60);
|
||||
g.FillRectangle(Brushes.Gray, 91, 116, 19, 59);
|
||||
}
|
||||
displayBox.Image = bmp;
|
||||
}
|
||||
|
||||
private void textBox1_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
themeName.Text = "THEMENAME";
|
||||
themeName.Tag = textTheme.Text;
|
||||
}
|
||||
|
||||
private void buttonSkin_Click(object sender, EventArgs e)
|
||||
{
|
||||
contextMenuSkin.Show(System.Windows.Forms.Form.ActiveForm.Location.X + buttonSkin.Location.X + 2, System.Windows.Forms.Form.ActiveForm.Location.Y + buttonSkin.Location.Y + 23);
|
||||
}
|
||||
|
||||
private void buttonCape_Click(object sender, EventArgs e)
|
||||
{
|
||||
contextMenuCape.Show(System.Windows.Forms.Form.ActiveForm.Location.X + buttonCape.Location.X + 2, System.Windows.Forms.Form.ActiveForm.Location.Y + buttonCape.Location.Y + 23);
|
||||
}
|
||||
|
||||
private void replaceToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
OpenFileDialog ofD = new OpenFileDialog();
|
||||
if (ofD.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
ofd = ofD.FileName;
|
||||
checkImage();
|
||||
}
|
||||
}
|
||||
|
||||
private void replaceToolStripMenuItem1_Click(object sender, EventArgs e)
|
||||
{
|
||||
using (var ofd1 = new OpenFileDialog())
|
||||
{
|
||||
if (ofd1.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
ofd1.Filter = "PNG Files | *.png";
|
||||
ofd1.Title = "Select a PNG File";
|
||||
|
||||
if (Image.FromFile(ofd1.FileName).Width == Image.FromFile(ofd1.FileName).Height * 2)
|
||||
{
|
||||
useCape = true;
|
||||
|
||||
pictureBoxWithInterpolationMode1.SizeMode = PictureBoxSizeMode.StretchImage;
|
||||
pictureBoxWithInterpolationMode1.InterpolationMode = InterpolationMode.NearestNeighbor;
|
||||
pictureBoxWithInterpolationMode1.Image = Image.FromFile(ofd1.FileName);
|
||||
|
||||
mfc.data = File.ReadAllBytes(ofd1.FileName);
|
||||
|
||||
contextMenuCape.Items[0].Text = "Replace";
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show("Not a Valid Cape File");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void button1_Click_1(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (textSkinID.Text.Length / 8 == 1)
|
||||
{
|
||||
bool mashupStructure = false;
|
||||
int skinsFolder = 0;
|
||||
|
||||
foreach (TreeNode item in treeView1.Nodes)
|
||||
{
|
||||
if (item.Text == "Skins")
|
||||
{
|
||||
mashupStructure = true;
|
||||
skinsFolder = item.Index;
|
||||
}
|
||||
}
|
||||
|
||||
if (useCape == true)
|
||||
{
|
||||
try
|
||||
{
|
||||
capePath.Text = "CAPEPATH";
|
||||
capePath.Tag = "dlccape" + textSkinID.Text + ".png";
|
||||
|
||||
object[] CAPE = { capePath.Text, capePath.Tag };
|
||||
mf.entries.Add(CAPE);
|
||||
|
||||
currentPCK.mineFiles.Add(mfc);
|
||||
|
||||
mfc.filesize = mf.data.Length; if (mashupStructure == true)
|
||||
{
|
||||
mfc.name = "Skins/" + "dlccape" + textSkinID.Text + ".png";
|
||||
}
|
||||
else
|
||||
{
|
||||
mfc.name = "dlccape" + textSkinID.Text + ".png";
|
||||
}
|
||||
|
||||
mfc.type = 1;
|
||||
|
||||
cape.Text = "dlccape" + textSkinID.Text + ".png";
|
||||
cape.Tag = mfc;
|
||||
|
||||
cape.ImageIndex = 2;
|
||||
cape.SelectedImageIndex = 2;
|
||||
|
||||
if (mashupStructure == true)
|
||||
{
|
||||
treeView1.Nodes[skinsFolder].Nodes.Add(cape);
|
||||
}
|
||||
else
|
||||
{
|
||||
treeView1.Nodes.Add(cape);
|
||||
}
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
MessageBox.Show("Cape Could Not be Added");
|
||||
}
|
||||
}
|
||||
|
||||
currentPCK.mineFiles.Add(mf);
|
||||
free.Text = "FREE";
|
||||
free.Tag = "1";
|
||||
themeName.Text = "THEMENAME";
|
||||
themeName.Tag = textThemeName.Text;
|
||||
displayNameId.Text = "DISPLAYNAMEID";
|
||||
displayNameId.Tag = "IDS_dlcskin" + textSkinID.Text + "_DISPLAYNAME";
|
||||
skinName.Text = "DISPLAYNAME";
|
||||
skinName.Tag = textSkinName.Text;
|
||||
anim.Text = "ANIM";
|
||||
|
||||
|
||||
object[] DISPLAY = { skinName.Text, skinName.Tag };
|
||||
mf.entries.Add(DISPLAY);
|
||||
|
||||
object[] DISPLAYID = { displayNameId.Text, displayNameId.Tag };
|
||||
mf.entries.Add(DISPLAYID);
|
||||
|
||||
|
||||
if (comboBoxSkinType.Text == "Default (64x32)")
|
||||
{
|
||||
|
||||
}
|
||||
else if (comboBoxSkinType.Text == "Alex (64x64)" && skinType != "64x32")
|
||||
{
|
||||
anim.Tag = "0x80000";
|
||||
|
||||
object[] ANIM = { anim.Text, anim.Tag };
|
||||
mf.entries.Add(ANIM);
|
||||
}
|
||||
else if (comboBoxSkinType.Text == "Steve (64x64)" && skinType != "64x32")
|
||||
{
|
||||
anim.Tag = "0x40000";
|
||||
|
||||
object[] ANIM = { anim.Text, anim.Tag };
|
||||
mf.entries.Add(ANIM);
|
||||
}
|
||||
else if (comboBoxSkinType.Text == "Custom")
|
||||
{
|
||||
anim.Tag = "0x7ff5fc10";
|
||||
|
||||
//mf.entries.Add(new object[2] { (object)"BOX", new ListViewItem() { Tag = ((object)(listViewItem.Tag.ToString() + " " + listViewItem.SubItems[1].Text + " " + listViewItem.SubItems[2].Text + " " + listViewItem.SubItems[3].Text + " " + listViewItem.SubItems[4].Text + " " + listViewItem.SubItems[5].Text + " " + listViewItem.SubItems[6].Text + " " + listViewItem.SubItems[7].Text + " " + listViewItem.SubItems[8].Text)) }.Tag });
|
||||
foreach (object[] item in generatedModel)
|
||||
{
|
||||
mf.entries.Add((object[])item);
|
||||
}
|
||||
|
||||
object[] ANIM = { anim.Text, anim.Tag };
|
||||
mf.entries.Add(ANIM);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
}
|
||||
if (generatedModel != null)
|
||||
{
|
||||
generatedModel.Clear();
|
||||
}
|
||||
|
||||
if (themeName.Tag.ToString() != "")
|
||||
{
|
||||
object[] THEME = { themeName.Text, themeName.Tag };
|
||||
mf.entries.Add(THEME);
|
||||
}
|
||||
|
||||
object[] GAMEFLAGS = { "GAME_FLAGS", "0x18" };
|
||||
mf.entries.Add(GAMEFLAGS);
|
||||
|
||||
object[] FREE = { free.Text, free.Tag };
|
||||
mf.entries.Add(FREE);
|
||||
|
||||
mf.filesize = mf.data.Length;
|
||||
if (mashupStructure == true)
|
||||
{
|
||||
mf.name = "Skins/" + "dlcskin" + textSkinID.Text + ".png";
|
||||
}
|
||||
else
|
||||
{
|
||||
mf.name = "dlcskin" + textSkinID.Text + ".png";
|
||||
}
|
||||
mf.type = 0;
|
||||
|
||||
skin.Text = "dlcskin" + textSkinID.Text + ".png";
|
||||
skin.Tag = mf;
|
||||
|
||||
skin.ImageIndex = 2;
|
||||
skin.SelectedImageIndex = 2;
|
||||
|
||||
if (mashupStructure == true)
|
||||
{
|
||||
treeView1.Nodes[skinsFolder].Nodes.Add(skin);
|
||||
}
|
||||
else
|
||||
{
|
||||
treeView1.Nodes.Add(skin);
|
||||
}
|
||||
|
||||
displayId d = new displayId();
|
||||
d.id = "IDS_dlcskin" + textSkinID.Text + "_DISPLAYNAME";
|
||||
d.defaultName = textSkinName.Text;
|
||||
|
||||
currentLoc.ids.names.Add(d.id);
|
||||
|
||||
foreach (LOC.Language l in currentLoc.langs)
|
||||
l.names.Add(d.defaultName);
|
||||
|
||||
displayId b = new displayId();
|
||||
b.id = "IDS_dlcskin" + textSkinID.Text + "_THEMENAME";
|
||||
b.defaultName = textThemeName.Text;
|
||||
|
||||
currentLoc.ids.names.Add(b.id);
|
||||
|
||||
foreach (LOC.Language l in currentLoc.langs)
|
||||
l.names.Add(b.defaultName);
|
||||
this.Close();
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show("The Skin ID Must be a Unique 8 Digit Number Thats Not Already in Use");
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(ex.ToString());
|
||||
MessageBox.Show("The Skin ID Must be a Unique 8 Digit Number Thats Not Already in Use");
|
||||
}
|
||||
}
|
||||
|
||||
private void textSkinID_TextChanged_1(object sender, EventArgs e)
|
||||
{
|
||||
bool valid = true;
|
||||
if (textSkinID.Text.Length == 8)
|
||||
{
|
||||
try
|
||||
{
|
||||
int CHECK = int.Parse(textSkinID.Text);
|
||||
}
|
||||
catch
|
||||
{
|
||||
valid = false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
valid = false;
|
||||
}
|
||||
|
||||
if (valid == false)
|
||||
{
|
||||
textSkinID.ForeColor = Color.Red;
|
||||
}
|
||||
else if (valid == true)
|
||||
{
|
||||
textSkinID.ForeColor = Color.Green;
|
||||
}
|
||||
}
|
||||
|
||||
private void textSkinName_VisibleChanged(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void textThemeName_VisibleChanged(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void textThemeName_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void button2_Click_1(object sender, EventArgs e)
|
||||
{
|
||||
//Prompt for skin model generator
|
||||
if (MessageBox.Show("Create your own custom skin model?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1) != DialogResult.Yes)
|
||||
return;
|
||||
|
||||
PictureBox preview = new PictureBox();//Creates new picture for generated model preview
|
||||
generateModel generate = new generateModel(generatedModel, preview);
|
||||
|
||||
if (generate.ShowDialog() == DialogResult.OK)//Opens Model Generator Dialog
|
||||
{
|
||||
comboBoxSkinType.Items.Add((object)"Custom");//Adds skin preset to combobox
|
||||
comboBoxSkinType.Text = "Custom";//Sets combo to custom preset
|
||||
displayBox.Image = preview.Image;//Sets displayBox to created model preview
|
||||
try
|
||||
{
|
||||
using (FileStream stream = new FileStream(Application.StartupPath + "\\temp.png", FileMode.Open, FileAccess.Read))
|
||||
{
|
||||
pictureBoxTexture.SizeMode = PictureBoxSizeMode.StretchImage;
|
||||
pictureBoxTexture.InterpolationMode = InterpolationMode.NearestNeighbor;
|
||||
pictureBoxTexture.Image = Image.FromStream(stream);
|
||||
stream.Close();
|
||||
stream.Dispose();
|
||||
}
|
||||
ofd = Application.StartupPath + "\\temp.png";
|
||||
//Sets texture box
|
||||
pictureBoxTexture.Width = pictureBoxTexture.Height;
|
||||
buttonDone.Enabled = true;
|
||||
labelSelectTexture.Visible = false;
|
||||
if (skinType != "64x64" && skinType != "64x64HD")
|
||||
{
|
||||
buttonSkin.Location = new Point(buttonSkin.Location.X - pictureBoxTexture.Width, buttonSkin.Location.Y);
|
||||
skinType = "64x64";
|
||||
}
|
||||
|
||||
mf.data = File.ReadAllBytes(ofd);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(ex.ToString());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void button3_Click_1(object sender, EventArgs e)
|
||||
{
|
||||
MessageBox.Show("Feature not Available in Beta");
|
||||
}
|
||||
|
||||
private void radioButton1_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (radioAUTO.Checked == true)
|
||||
{
|
||||
try
|
||||
{
|
||||
string tempstr = "";
|
||||
Random random = new Random();
|
||||
int num = random.Next(10000000, 99999999);
|
||||
textSkinID.Text = num.ToString();
|
||||
textSkinID.Enabled = false;
|
||||
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void radioLOCAL_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (radioLOCAL.Checked == true)
|
||||
{
|
||||
textSkinID.Text = localID;
|
||||
textSkinID.Enabled = true;
|
||||
}
|
||||
}
|
||||
|
||||
private void pictureBox1_Click(object sender, EventArgs e)
|
||||
{
|
||||
using (var ofdd = new OpenFileDialog())
|
||||
{
|
||||
ofdd.Filter = "PNG Files | *.png";
|
||||
ofdd.Title = "Select a PNG File";
|
||||
if (ofdd.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
ofd = ofdd.FileName;
|
||||
checkImage();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void label4_Click(object sender, EventArgs e)
|
||||
{
|
||||
using (var ofdd = new OpenFileDialog())
|
||||
{
|
||||
ofdd.Filter = "PNG Files | *.png";
|
||||
ofdd.Title = "Select a PNG File";
|
||||
if (ofdd.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
ofd = ofdd.FileName;
|
||||
checkImage();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void radioSERVER_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
if (radioSERVER.Checked == true)
|
||||
{
|
||||
try
|
||||
{
|
||||
WebClient wc = new WebClient();
|
||||
webBrowser1.Refresh();
|
||||
textSkinID.Text = webBrowser1.DocumentText;
|
||||
textSkinID.Enabled = false;
|
||||
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
1965
MinecraftUSkinEditor/Forms/addnewskin.ja.resx
Normal file
2461
MinecraftUSkinEditor/Forms/addnewskin.resx
Normal file
127
MinecraftUSkinEditor/Forms/colEditor.Designer.cs
generated
Normal file
@@ -0,0 +1,127 @@
|
||||
namespace minekampf
|
||||
{
|
||||
partial class colEditor
|
||||
{
|
||||
/// <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(colEditor));
|
||||
this.listView1 = new System.Windows.Forms.ListView();
|
||||
this.pictureBox1 = new System.Windows.Forms.PictureBox();
|
||||
this.metroLabel1 = new MetroFramework.Controls.MetroLabel();
|
||||
this.metroTextBox1 = new MetroFramework.Controls.MetroTextBox();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// listView1
|
||||
//
|
||||
this.listView1.HideSelection = false;
|
||||
this.listView1.Location = new System.Drawing.Point(23, 63);
|
||||
this.listView1.Name = "listView1";
|
||||
this.listView1.Size = new System.Drawing.Size(341, 474);
|
||||
this.listView1.TabIndex = 0;
|
||||
this.listView1.UseCompatibleStateImageBehavior = false;
|
||||
//
|
||||
// pictureBox1
|
||||
//
|
||||
this.pictureBox1.Location = new System.Drawing.Point(408, 63);
|
||||
this.pictureBox1.Name = "pictureBox1";
|
||||
this.pictureBox1.Size = new System.Drawing.Size(216, 191);
|
||||
this.pictureBox1.TabIndex = 1;
|
||||
this.pictureBox1.TabStop = false;
|
||||
//
|
||||
// metroLabel1
|
||||
//
|
||||
this.metroLabel1.AutoSize = true;
|
||||
this.metroLabel1.Location = new System.Drawing.Point(408, 281);
|
||||
this.metroLabel1.Name = "metroLabel1";
|
||||
this.metroLabel1.Size = new System.Drawing.Size(42, 19);
|
||||
this.metroLabel1.TabIndex = 2;
|
||||
this.metroLabel1.Text = "Color";
|
||||
this.metroLabel1.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
//
|
||||
// metroTextBox1
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
this.metroTextBox1.CustomButton.Image = null;
|
||||
this.metroTextBox1.CustomButton.Location = new System.Drawing.Point(107, 1);
|
||||
this.metroTextBox1.CustomButton.Name = "";
|
||||
this.metroTextBox1.CustomButton.Size = new System.Drawing.Size(21, 21);
|
||||
this.metroTextBox1.CustomButton.Style = MetroFramework.MetroColorStyle.Blue;
|
||||
this.metroTextBox1.CustomButton.TabIndex = 1;
|
||||
this.metroTextBox1.CustomButton.Theme = MetroFramework.MetroThemeStyle.Light;
|
||||
this.metroTextBox1.CustomButton.UseSelectable = true;
|
||||
this.metroTextBox1.CustomButton.Visible = false;
|
||||
this.metroTextBox1.Lines = new string[0];
|
||||
this.metroTextBox1.Location = new System.Drawing.Point(408, 304);
|
||||
this.metroTextBox1.MaxLength = 6;
|
||||
this.metroTextBox1.Name = "metroTextBox1";
|
||||
this.metroTextBox1.PasswordChar = '\0';
|
||||
this.metroTextBox1.ScrollBars = System.Windows.Forms.ScrollBars.None;
|
||||
this.metroTextBox1.SelectedText = "";
|
||||
this.metroTextBox1.SelectionLength = 0;
|
||||
this.metroTextBox1.SelectionStart = 0;
|
||||
this.metroTextBox1.ShortcutsEnabled = true;
|
||||
this.metroTextBox1.Size = new System.Drawing.Size(129, 23);
|
||||
this.metroTextBox1.TabIndex = 3;
|
||||
this.metroTextBox1.UseSelectable = true;
|
||||
this.metroTextBox1.WaterMarkColor = System.Drawing.Color.FromArgb(((int)(((byte)(109)))), ((int)(((byte)(109)))), ((int)(((byte)(109)))));
|
||||
this.metroTextBox1.WaterMarkFont = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Pixel);
|
||||
//
|
||||
// colEditor
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(665, 560);
|
||||
this.Controls.Add(this.metroTextBox1);
|
||||
this.Controls.Add(this.metroLabel1);
|
||||
this.Controls.Add(this.pictureBox1);
|
||||
this.Controls.Add(this.listView1);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.MaximizeBox = false;
|
||||
this.Name = "colEditor";
|
||||
this.ShadowType = MetroFramework.Forms.MetroFormShadowType.AeroShadow;
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
|
||||
this.Style = MetroFramework.MetroColorStyle.Silver;
|
||||
this.Text = "Color Editor";
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.Load += new System.EventHandler(this.colEditor_Load);
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.ListView listView1;
|
||||
private System.Windows.Forms.PictureBox pictureBox1;
|
||||
private MetroFramework.Controls.MetroLabel metroLabel1;
|
||||
private MetroFramework.Controls.MetroTextBox metroTextBox1;
|
||||
}
|
||||
}
|
||||
26
MinecraftUSkinEditor/Forms/colEditor.cs
Normal file
@@ -0,0 +1,26 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using minekampf.Classes;
|
||||
|
||||
namespace minekampf
|
||||
{
|
||||
public partial class colEditor : MetroFramework.Forms.MetroForm
|
||||
{
|
||||
public colEditor(COL col)
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void colEditor_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
1846
MinecraftUSkinEditor/Forms/colEditor.resx
Normal file
73
MinecraftUSkinEditor/Forms/creatorSpotlight.Designer.cs
generated
Normal file
@@ -0,0 +1,73 @@
|
||||
namespace minekampf.Forms
|
||||
{
|
||||
partial class creatorSpotlight
|
||||
{
|
||||
/// <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(creatorSpotlight));
|
||||
this.webBrowser1 = new System.Windows.Forms.WebBrowser();
|
||||
this.buttonOpenInBrowser = new System.Windows.Forms.Button();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// webBrowser1
|
||||
//
|
||||
resources.ApplyResources(this.webBrowser1, "webBrowser1");
|
||||
this.webBrowser1.AllowWebBrowserDrop = false;
|
||||
this.webBrowser1.Name = "webBrowser1";
|
||||
this.webBrowser1.ScrollBarsEnabled = false;
|
||||
//
|
||||
// buttonOpenInBrowser
|
||||
//
|
||||
resources.ApplyResources(this.buttonOpenInBrowser, "buttonOpenInBrowser");
|
||||
this.buttonOpenInBrowser.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(192)))));
|
||||
this.buttonOpenInBrowser.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonOpenInBrowser.Name = "buttonOpenInBrowser";
|
||||
this.buttonOpenInBrowser.UseVisualStyleBackColor = false;
|
||||
this.buttonOpenInBrowser.Click += new System.EventHandler(this.buttonOpenInBrowser_Click);
|
||||
//
|
||||
// creatorSpotlight
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.buttonOpenInBrowser);
|
||||
this.Controls.Add(this.webBrowser1);
|
||||
this.MaximizeBox = false;
|
||||
this.Name = "creatorSpotlight";
|
||||
this.Resizable = false;
|
||||
this.ShadowType = MetroFramework.Forms.MetroFormShadowType.DropShadow;
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.Load += new System.EventHandler(this.creatorSpotlight_Load);
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.WebBrowser webBrowser1;
|
||||
private System.Windows.Forms.Button buttonOpenInBrowser;
|
||||
}
|
||||
}
|
||||
57
MinecraftUSkinEditor/Forms/creatorSpotlight.cs
Normal file
@@ -0,0 +1,57 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace minekampf.Forms
|
||||
{
|
||||
public partial class creatorSpotlight : MetroFramework.Forms.MetroForm
|
||||
{
|
||||
string data;
|
||||
public creatorSpotlight()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void creatorSpotlight_Load(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
using (WebClient getData = new WebClient())
|
||||
{
|
||||
data = getData.DownloadString("https://textuploader.com/103da/raw");
|
||||
|
||||
webBrowser1.ScrollBarsEnabled = false;
|
||||
|
||||
var embed = "<html><head>" +
|
||||
"<meta http-equiv=\"X-UA-Compatible\" content=\"IE=Edge\"/>" +
|
||||
"</head><body style=\"background-color: #000000;\">" +
|
||||
"<iframe width=\"720\" height=\"439\" src=\"{0}\"" +
|
||||
"frameborder = \"0\" allow = \"autoplay; encrypted-media\" allowfullscreen></iframe>" +
|
||||
"</body></html>";
|
||||
var url = "https://www.youtube.com/embed/" + data;
|
||||
this.webBrowser1.DocumentText = string.Format(embed, url);
|
||||
}
|
||||
}
|
||||
catch
|
||||
{
|
||||
this.Close();
|
||||
}
|
||||
}
|
||||
|
||||
private void buttonOpenInBrowser_Click(object sender, EventArgs e)
|
||||
{
|
||||
System.Diagnostics.Process.Start("https://www.youtube.com/watch?v=" + data);
|
||||
using (WebClient track = new WebClient())
|
||||
{
|
||||
string trackClick = track.DownloadString("http://nobledez.com/creatorSpotlight.php");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
2273
MinecraftUSkinEditor/Forms/creatorSpotlight.ja.resx
Normal file
2350
MinecraftUSkinEditor/Forms/creatorSpotlight.resx
Normal file
856
MinecraftUSkinEditor/Forms/generateModel.Designer.cs
generated
Normal file
@@ -0,0 +1,856 @@
|
||||
namespace minekampf
|
||||
{
|
||||
partial class generateModel
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(generateModel));
|
||||
this.buttonImportModel = new System.Windows.Forms.Button();
|
||||
this.buttonExportModel = new System.Windows.Forms.Button();
|
||||
this.checkTextureGenerate = new System.Windows.Forms.CheckBox();
|
||||
this.checkGuide = new System.Windows.Forms.CheckBox();
|
||||
this.labelView = new System.Windows.Forms.Label();
|
||||
this.button2 = new System.Windows.Forms.Button();
|
||||
this.button1 = new System.Windows.Forms.Button();
|
||||
this.label7 = new System.Windows.Forms.Label();
|
||||
this.textTextureY = new System.Windows.Forms.TextBox();
|
||||
this.textTextureX = new System.Windows.Forms.TextBox();
|
||||
this.buttonIMPORT = new System.Windows.Forms.Button();
|
||||
this.label5 = new System.Windows.Forms.Label();
|
||||
this.buttonZcplus = new System.Windows.Forms.Button();
|
||||
this.buttonXcminus = new System.Windows.Forms.Button();
|
||||
this.buttonYcminus = new System.Windows.Forms.Button();
|
||||
this.buttonZcminus = new System.Windows.Forms.Button();
|
||||
this.buttonYcplus = new System.Windows.Forms.Button();
|
||||
this.buttonXcplus = new System.Windows.Forms.Button();
|
||||
this.buttonZfplus = new System.Windows.Forms.Button();
|
||||
this.buttonXfminus = new System.Windows.Forms.Button();
|
||||
this.buttonYfminus = new System.Windows.Forms.Button();
|
||||
this.buttonZfminus = new System.Windows.Forms.Button();
|
||||
this.buttonYfplus = new System.Windows.Forms.Button();
|
||||
this.buttonXfplus = new System.Windows.Forms.Button();
|
||||
this.buttonEXPORT = new System.Windows.Forms.Button();
|
||||
this.labelTextureMappingPreview = new System.Windows.Forms.Label();
|
||||
this.buttonDone = new System.Windows.Forms.Button();
|
||||
this.textYc = new System.Windows.Forms.TextBox();
|
||||
this.textZc = new System.Windows.Forms.TextBox();
|
||||
this.textXf = new System.Windows.Forms.TextBox();
|
||||
this.textYf = new System.Windows.Forms.TextBox();
|
||||
this.textZf = new System.Windows.Forms.TextBox();
|
||||
this.textXc = new System.Windows.Forms.TextBox();
|
||||
this.buttonTemplate = new System.Windows.Forms.Button();
|
||||
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
||||
this.tabBody = new System.Windows.Forms.TabControl();
|
||||
this.tabPage1 = new System.Windows.Forms.TabPage();
|
||||
this.myTablePanel2 = new minekampf.Forms.MyTablePanel();
|
||||
this.offsetArms = new System.Windows.Forms.TextBox();
|
||||
this.label14 = new System.Windows.Forms.Label();
|
||||
this.offsetBody = new System.Windows.Forms.TextBox();
|
||||
this.offsetLegs = new System.Windows.Forms.TextBox();
|
||||
this.label10 = new System.Windows.Forms.Label();
|
||||
this.label13 = new System.Windows.Forms.Label();
|
||||
this.offsetHead = new System.Windows.Forms.TextBox();
|
||||
this.label12 = new System.Windows.Forms.Label();
|
||||
this.tabArmor = new System.Windows.Forms.TabPage();
|
||||
this.myTablePanel1 = new minekampf.Forms.MyTablePanel();
|
||||
this.offsetBoots = new System.Windows.Forms.TextBox();
|
||||
this.offsetPants = new System.Windows.Forms.TextBox();
|
||||
this.offsetTool = new System.Windows.Forms.TextBox();
|
||||
this.label4 = new System.Windows.Forms.Label();
|
||||
this.label9 = new System.Windows.Forms.Label();
|
||||
this.offsetHelmet = new System.Windows.Forms.TextBox();
|
||||
this.label15 = new System.Windows.Forms.Label();
|
||||
this.label16 = new System.Windows.Forms.Label();
|
||||
this.label6 = new System.Windows.Forms.Label();
|
||||
this.comboParent = new System.Windows.Forms.ComboBox();
|
||||
this.labelModeParts = new System.Windows.Forms.Label();
|
||||
this.listViewBoxes = new System.Windows.Forms.ListView();
|
||||
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||
this.createToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.cloneToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.deleteToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.changeColorToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.labelFullSkinPreview = new System.Windows.Forms.Label();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.checkBoxArmor = new System.Windows.Forms.CheckBox();
|
||||
this.labelTheme = new System.Windows.Forms.Label();
|
||||
this.listViewBGs = new System.Windows.Forms.ListView();
|
||||
this.tableLayoutPanelMain = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.displayBox = new System.Windows.Forms.PictureBox();
|
||||
this.texturePreview = new System.Windows.Forms.PictureBox();
|
||||
this.groupBox1.SuspendLayout();
|
||||
this.tabBody.SuspendLayout();
|
||||
this.tabPage1.SuspendLayout();
|
||||
this.myTablePanel2.SuspendLayout();
|
||||
this.tabArmor.SuspendLayout();
|
||||
this.myTablePanel1.SuspendLayout();
|
||||
this.contextMenuStrip1.SuspendLayout();
|
||||
this.tableLayoutPanelMain.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.displayBox)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.texturePreview)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// buttonImportModel
|
||||
//
|
||||
resources.ApplyResources(this.buttonImportModel, "buttonImportModel");
|
||||
this.buttonImportModel.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonImportModel.Name = "buttonImportModel";
|
||||
this.buttonImportModel.UseVisualStyleBackColor = true;
|
||||
this.buttonImportModel.Click += new System.EventHandler(this.buttonImportModel_Click);
|
||||
//
|
||||
// buttonExportModel
|
||||
//
|
||||
resources.ApplyResources(this.buttonExportModel, "buttonExportModel");
|
||||
this.buttonExportModel.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonExportModel.Name = "buttonExportModel";
|
||||
this.buttonExportModel.UseVisualStyleBackColor = true;
|
||||
this.buttonExportModel.Click += new System.EventHandler(this.buttonExportModel_Click);
|
||||
//
|
||||
// checkTextureGenerate
|
||||
//
|
||||
resources.ApplyResources(this.checkTextureGenerate, "checkTextureGenerate");
|
||||
this.checkTextureGenerate.Checked = true;
|
||||
this.checkTextureGenerate.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.checkTextureGenerate.ForeColor = System.Drawing.Color.White;
|
||||
this.checkTextureGenerate.Name = "checkTextureGenerate";
|
||||
this.checkTextureGenerate.UseVisualStyleBackColor = true;
|
||||
this.checkTextureGenerate.CheckedChanged += new System.EventHandler(this.checkTextureGenerate_CheckedChanged);
|
||||
//
|
||||
// checkGuide
|
||||
//
|
||||
resources.ApplyResources(this.checkGuide, "checkGuide");
|
||||
this.checkGuide.ForeColor = System.Drawing.Color.White;
|
||||
this.checkGuide.Name = "checkGuide";
|
||||
this.checkGuide.UseVisualStyleBackColor = true;
|
||||
this.checkGuide.CheckedChanged += new System.EventHandler(this.checkGuide_CheckedChanged);
|
||||
//
|
||||
// labelView
|
||||
//
|
||||
resources.ApplyResources(this.labelView, "labelView");
|
||||
this.labelView.ForeColor = System.Drawing.Color.White;
|
||||
this.labelView.Name = "labelView";
|
||||
//
|
||||
// button2
|
||||
//
|
||||
resources.ApplyResources(this.button2, "button2");
|
||||
this.button2.ForeColor = System.Drawing.Color.White;
|
||||
this.button2.Name = "button2";
|
||||
this.button2.UseVisualStyleBackColor = true;
|
||||
this.button2.Click += new System.EventHandler(this.button2_Click);
|
||||
//
|
||||
// button1
|
||||
//
|
||||
resources.ApplyResources(this.button1, "button1");
|
||||
this.button1.ForeColor = System.Drawing.Color.White;
|
||||
this.button1.Name = "button1";
|
||||
this.button1.UseVisualStyleBackColor = true;
|
||||
this.button1.Click += new System.EventHandler(this.button1_Click);
|
||||
//
|
||||
// label7
|
||||
//
|
||||
resources.ApplyResources(this.label7, "label7");
|
||||
this.label7.ForeColor = System.Drawing.Color.White;
|
||||
this.label7.Name = "label7";
|
||||
//
|
||||
// textTextureY
|
||||
//
|
||||
resources.ApplyResources(this.textTextureY, "textTextureY");
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.textTextureY, 2);
|
||||
this.textTextureY.Name = "textTextureY";
|
||||
this.textTextureY.TextChanged += new System.EventHandler(this.textTextureY_TextChanged);
|
||||
this.textTextureY.Leave += new System.EventHandler(this.textXc_Leave);
|
||||
//
|
||||
// textTextureX
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.textTextureX, 2);
|
||||
resources.ApplyResources(this.textTextureX, "textTextureX");
|
||||
this.textTextureX.Name = "textTextureX";
|
||||
this.textTextureX.TextChanged += new System.EventHandler(this.textBox1_TextChanged);
|
||||
this.textTextureX.Leave += new System.EventHandler(this.textXc_Leave);
|
||||
//
|
||||
// buttonIMPORT
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.buttonIMPORT, 3);
|
||||
resources.ApplyResources(this.buttonIMPORT, "buttonIMPORT");
|
||||
this.buttonIMPORT.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonIMPORT.Name = "buttonIMPORT";
|
||||
this.buttonIMPORT.UseVisualStyleBackColor = true;
|
||||
this.buttonIMPORT.Click += new System.EventHandler(this.buttonIMPORT_Click);
|
||||
//
|
||||
// label5
|
||||
//
|
||||
resources.ApplyResources(this.label5, "label5");
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.label5, 3);
|
||||
this.label5.ForeColor = System.Drawing.Color.White;
|
||||
this.label5.Name = "label5";
|
||||
//
|
||||
// buttonZcplus
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.buttonZcplus, 2);
|
||||
resources.ApplyResources(this.buttonZcplus, "buttonZcplus");
|
||||
this.buttonZcplus.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonZcplus.Name = "buttonZcplus";
|
||||
this.buttonZcplus.UseVisualStyleBackColor = true;
|
||||
this.buttonZcplus.Click += new System.EventHandler(this.buttonZcplus_Click);
|
||||
//
|
||||
// buttonXcminus
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.buttonXcminus, 2);
|
||||
resources.ApplyResources(this.buttonXcminus, "buttonXcminus");
|
||||
this.buttonXcminus.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonXcminus.Name = "buttonXcminus";
|
||||
this.buttonXcminus.UseVisualStyleBackColor = true;
|
||||
this.buttonXcminus.Click += new System.EventHandler(this.buttonXcminus_Click);
|
||||
//
|
||||
// buttonYcminus
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.buttonYcminus, 2);
|
||||
resources.ApplyResources(this.buttonYcminus, "buttonYcminus");
|
||||
this.buttonYcminus.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonYcminus.Name = "buttonYcminus";
|
||||
this.buttonYcminus.UseVisualStyleBackColor = true;
|
||||
this.buttonYcminus.Click += new System.EventHandler(this.buttonYcminus_Click);
|
||||
//
|
||||
// buttonZcminus
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.buttonZcminus, 2);
|
||||
resources.ApplyResources(this.buttonZcminus, "buttonZcminus");
|
||||
this.buttonZcminus.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonZcminus.Name = "buttonZcminus";
|
||||
this.buttonZcminus.UseVisualStyleBackColor = true;
|
||||
this.buttonZcminus.Click += new System.EventHandler(this.buttonZcminus_Click);
|
||||
//
|
||||
// buttonYcplus
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.buttonYcplus, 2);
|
||||
resources.ApplyResources(this.buttonYcplus, "buttonYcplus");
|
||||
this.buttonYcplus.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonYcplus.Name = "buttonYcplus";
|
||||
this.buttonYcplus.UseVisualStyleBackColor = true;
|
||||
this.buttonYcplus.Click += new System.EventHandler(this.buttonYcplus_Click);
|
||||
//
|
||||
// buttonXcplus
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.buttonXcplus, 2);
|
||||
resources.ApplyResources(this.buttonXcplus, "buttonXcplus");
|
||||
this.buttonXcplus.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonXcplus.Name = "buttonXcplus";
|
||||
this.buttonXcplus.UseVisualStyleBackColor = true;
|
||||
this.buttonXcplus.Click += new System.EventHandler(this.buttonXcplus_Click);
|
||||
//
|
||||
// buttonZfplus
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.buttonZfplus, 2);
|
||||
resources.ApplyResources(this.buttonZfplus, "buttonZfplus");
|
||||
this.buttonZfplus.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonZfplus.Name = "buttonZfplus";
|
||||
this.buttonZfplus.UseVisualStyleBackColor = true;
|
||||
this.buttonZfplus.Click += new System.EventHandler(this.buttonZfplus_Click);
|
||||
//
|
||||
// buttonXfminus
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.buttonXfminus, 2);
|
||||
resources.ApplyResources(this.buttonXfminus, "buttonXfminus");
|
||||
this.buttonXfminus.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonXfminus.Name = "buttonXfminus";
|
||||
this.buttonXfminus.UseVisualStyleBackColor = true;
|
||||
this.buttonXfminus.Click += new System.EventHandler(this.buttonXfminus_Click);
|
||||
//
|
||||
// buttonYfminus
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.buttonYfminus, 2);
|
||||
resources.ApplyResources(this.buttonYfminus, "buttonYfminus");
|
||||
this.buttonYfminus.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonYfminus.Name = "buttonYfminus";
|
||||
this.buttonYfminus.UseVisualStyleBackColor = true;
|
||||
this.buttonYfminus.Click += new System.EventHandler(this.buttonYfminus_Click);
|
||||
//
|
||||
// buttonZfminus
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.buttonZfminus, 2);
|
||||
resources.ApplyResources(this.buttonZfminus, "buttonZfminus");
|
||||
this.buttonZfminus.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonZfminus.Name = "buttonZfminus";
|
||||
this.buttonZfminus.UseVisualStyleBackColor = true;
|
||||
this.buttonZfminus.Click += new System.EventHandler(this.buttonZfminus_Click);
|
||||
//
|
||||
// buttonYfplus
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.buttonYfplus, 2);
|
||||
resources.ApplyResources(this.buttonYfplus, "buttonYfplus");
|
||||
this.buttonYfplus.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonYfplus.Name = "buttonYfplus";
|
||||
this.buttonYfplus.UseVisualStyleBackColor = true;
|
||||
this.buttonYfplus.Click += new System.EventHandler(this.buttonYfplus_Click);
|
||||
//
|
||||
// buttonXfplus
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.buttonXfplus, 2);
|
||||
resources.ApplyResources(this.buttonXfplus, "buttonXfplus");
|
||||
this.buttonXfplus.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonXfplus.Name = "buttonXfplus";
|
||||
this.buttonXfplus.UseVisualStyleBackColor = true;
|
||||
this.buttonXfplus.Click += new System.EventHandler(this.buttonXfplus_Click);
|
||||
//
|
||||
// buttonEXPORT
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.buttonEXPORT, 3);
|
||||
resources.ApplyResources(this.buttonEXPORT, "buttonEXPORT");
|
||||
this.buttonEXPORT.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonEXPORT.Name = "buttonEXPORT";
|
||||
this.buttonEXPORT.UseVisualStyleBackColor = true;
|
||||
this.buttonEXPORT.Click += new System.EventHandler(this.buttonEXPORT_Click);
|
||||
//
|
||||
// labelTextureMappingPreview
|
||||
//
|
||||
resources.ApplyResources(this.labelTextureMappingPreview, "labelTextureMappingPreview");
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.labelTextureMappingPreview, 6);
|
||||
this.labelTextureMappingPreview.ForeColor = System.Drawing.Color.White;
|
||||
this.labelTextureMappingPreview.Name = "labelTextureMappingPreview";
|
||||
//
|
||||
// buttonDone
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.buttonDone, 3);
|
||||
this.buttonDone.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
resources.ApplyResources(this.buttonDone, "buttonDone");
|
||||
this.buttonDone.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonDone.Name = "buttonDone";
|
||||
this.buttonDone.UseVisualStyleBackColor = true;
|
||||
this.buttonDone.Click += new System.EventHandler(this.buttonDone_Click);
|
||||
//
|
||||
// textYc
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.textYc, 2);
|
||||
resources.ApplyResources(this.textYc, "textYc");
|
||||
this.textYc.Name = "textYc";
|
||||
this.textYc.TextChanged += new System.EventHandler(this.textYc_TextChanged);
|
||||
this.textYc.Leave += new System.EventHandler(this.textXc_Leave);
|
||||
//
|
||||
// textZc
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.textZc, 2);
|
||||
resources.ApplyResources(this.textZc, "textZc");
|
||||
this.textZc.Name = "textZc";
|
||||
this.textZc.TextChanged += new System.EventHandler(this.textZc_TextChanged);
|
||||
this.textZc.Leave += new System.EventHandler(this.textXc_Leave);
|
||||
//
|
||||
// textXf
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.textXf, 2);
|
||||
resources.ApplyResources(this.textXf, "textXf");
|
||||
this.textXf.Name = "textXf";
|
||||
this.textXf.TextChanged += new System.EventHandler(this.textXf_TextChanged);
|
||||
this.textXf.Leave += new System.EventHandler(this.textXc_Leave);
|
||||
//
|
||||
// textYf
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.textYf, 2);
|
||||
resources.ApplyResources(this.textYf, "textYf");
|
||||
this.textYf.Name = "textYf";
|
||||
this.textYf.TextChanged += new System.EventHandler(this.textYf_TextChanged);
|
||||
this.textYf.Leave += new System.EventHandler(this.textXc_Leave);
|
||||
//
|
||||
// textZf
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.textZf, 2);
|
||||
resources.ApplyResources(this.textZf, "textZf");
|
||||
this.textZf.Name = "textZf";
|
||||
this.textZf.TextChanged += new System.EventHandler(this.textZf_TextChanged);
|
||||
this.textZf.Leave += new System.EventHandler(this.textXc_Leave);
|
||||
//
|
||||
// textXc
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.textXc, 2);
|
||||
resources.ApplyResources(this.textXc, "textXc");
|
||||
this.textXc.Name = "textXc";
|
||||
this.textXc.TextChanged += new System.EventHandler(this.textXc_TextChanged);
|
||||
this.textXc.Leave += new System.EventHandler(this.textXc_Leave);
|
||||
//
|
||||
// buttonTemplate
|
||||
//
|
||||
resources.ApplyResources(this.buttonTemplate, "buttonTemplate");
|
||||
this.buttonTemplate.Name = "buttonTemplate";
|
||||
this.buttonTemplate.UseVisualStyleBackColor = true;
|
||||
this.buttonTemplate.Click += new System.EventHandler(this.buttonTemplate_Click);
|
||||
//
|
||||
// groupBox1
|
||||
//
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.groupBox1, 6);
|
||||
this.groupBox1.Controls.Add(this.tabBody);
|
||||
resources.ApplyResources(this.groupBox1, "groupBox1");
|
||||
this.groupBox1.ForeColor = System.Drawing.Color.White;
|
||||
this.groupBox1.Name = "groupBox1";
|
||||
this.tableLayoutPanelMain.SetRowSpan(this.groupBox1, 2);
|
||||
this.groupBox1.TabStop = false;
|
||||
//
|
||||
// tabBody
|
||||
//
|
||||
this.tabBody.Controls.Add(this.tabPage1);
|
||||
this.tabBody.Controls.Add(this.tabArmor);
|
||||
resources.ApplyResources(this.tabBody, "tabBody");
|
||||
this.tabBody.Name = "tabBody";
|
||||
this.tabBody.SelectedIndex = 0;
|
||||
//
|
||||
// tabPage1
|
||||
//
|
||||
this.tabPage1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(17)))), ((int)(((byte)(17)))), ((int)(((byte)(17)))));
|
||||
this.tabPage1.Controls.Add(this.myTablePanel2);
|
||||
resources.ApplyResources(this.tabPage1, "tabPage1");
|
||||
this.tabPage1.Name = "tabPage1";
|
||||
//
|
||||
// myTablePanel2
|
||||
//
|
||||
resources.ApplyResources(this.myTablePanel2, "myTablePanel2");
|
||||
this.myTablePanel2.Controls.Add(this.offsetArms, 1, 3);
|
||||
this.myTablePanel2.Controls.Add(this.label14, 0, 3);
|
||||
this.myTablePanel2.Controls.Add(this.offsetBody, 1, 1);
|
||||
this.myTablePanel2.Controls.Add(this.offsetLegs, 1, 2);
|
||||
this.myTablePanel2.Controls.Add(this.label10, 0, 0);
|
||||
this.myTablePanel2.Controls.Add(this.label13, 0, 2);
|
||||
this.myTablePanel2.Controls.Add(this.offsetHead, 1, 0);
|
||||
this.myTablePanel2.Controls.Add(this.label12, 0, 1);
|
||||
this.myTablePanel2.Name = "myTablePanel2";
|
||||
//
|
||||
// offsetArms
|
||||
//
|
||||
resources.ApplyResources(this.offsetArms, "offsetArms");
|
||||
this.offsetArms.Name = "offsetArms";
|
||||
this.offsetArms.TextChanged += new System.EventHandler(this.offsetHead_TextChanged);
|
||||
//
|
||||
// label14
|
||||
//
|
||||
resources.ApplyResources(this.label14, "label14");
|
||||
this.label14.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(192)))));
|
||||
this.label14.Name = "label14";
|
||||
//
|
||||
// offsetBody
|
||||
//
|
||||
resources.ApplyResources(this.offsetBody, "offsetBody");
|
||||
this.offsetBody.Name = "offsetBody";
|
||||
this.offsetBody.TextChanged += new System.EventHandler(this.offsetHead_TextChanged);
|
||||
//
|
||||
// offsetLegs
|
||||
//
|
||||
resources.ApplyResources(this.offsetLegs, "offsetLegs");
|
||||
this.offsetLegs.Name = "offsetLegs";
|
||||
this.offsetLegs.TextChanged += new System.EventHandler(this.offsetHead_TextChanged);
|
||||
//
|
||||
// label10
|
||||
//
|
||||
resources.ApplyResources(this.label10, "label10");
|
||||
this.label10.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
|
||||
this.label10.Name = "label10";
|
||||
//
|
||||
// label13
|
||||
//
|
||||
resources.ApplyResources(this.label13, "label13");
|
||||
this.label13.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(0)))), ((int)(((byte)(64)))));
|
||||
this.label13.Name = "label13";
|
||||
//
|
||||
// offsetHead
|
||||
//
|
||||
resources.ApplyResources(this.offsetHead, "offsetHead");
|
||||
this.offsetHead.Name = "offsetHead";
|
||||
this.offsetHead.TextChanged += new System.EventHandler(this.offsetHead_TextChanged);
|
||||
//
|
||||
// label12
|
||||
//
|
||||
resources.ApplyResources(this.label12, "label12");
|
||||
this.label12.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(64)))), ((int)(((byte)(0)))));
|
||||
this.label12.Name = "label12";
|
||||
//
|
||||
// tabArmor
|
||||
//
|
||||
this.tabArmor.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(17)))), ((int)(((byte)(17)))), ((int)(((byte)(17)))));
|
||||
this.tabArmor.Controls.Add(this.myTablePanel1);
|
||||
resources.ApplyResources(this.tabArmor, "tabArmor");
|
||||
this.tabArmor.Name = "tabArmor";
|
||||
//
|
||||
// myTablePanel1
|
||||
//
|
||||
resources.ApplyResources(this.myTablePanel1, "myTablePanel1");
|
||||
this.myTablePanel1.Controls.Add(this.offsetBoots, 1, 3);
|
||||
this.myTablePanel1.Controls.Add(this.offsetPants, 1, 2);
|
||||
this.myTablePanel1.Controls.Add(this.offsetTool, 1, 1);
|
||||
this.myTablePanel1.Controls.Add(this.label4, 0, 1);
|
||||
this.myTablePanel1.Controls.Add(this.label9, 0, 0);
|
||||
this.myTablePanel1.Controls.Add(this.offsetHelmet, 1, 0);
|
||||
this.myTablePanel1.Controls.Add(this.label15, 0, 3);
|
||||
this.myTablePanel1.Controls.Add(this.label16, 0, 2);
|
||||
this.myTablePanel1.Name = "myTablePanel1";
|
||||
//
|
||||
// offsetBoots
|
||||
//
|
||||
resources.ApplyResources(this.offsetBoots, "offsetBoots");
|
||||
this.offsetBoots.Name = "offsetBoots";
|
||||
this.offsetBoots.TextChanged += new System.EventHandler(this.offsetBoots_TextChanged);
|
||||
//
|
||||
// offsetPants
|
||||
//
|
||||
resources.ApplyResources(this.offsetPants, "offsetPants");
|
||||
this.offsetPants.Name = "offsetPants";
|
||||
this.offsetPants.TextChanged += new System.EventHandler(this.offsetPants_TextChanged);
|
||||
//
|
||||
// offsetTool
|
||||
//
|
||||
resources.ApplyResources(this.offsetTool, "offsetTool");
|
||||
this.offsetTool.Name = "offsetTool";
|
||||
this.offsetTool.TextChanged += new System.EventHandler(this.offsetTool_TextChanged);
|
||||
//
|
||||
// label4
|
||||
//
|
||||
resources.ApplyResources(this.label4, "label4");
|
||||
this.label4.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(64)))), ((int)(((byte)(0)))));
|
||||
this.label4.Name = "label4";
|
||||
//
|
||||
// label9
|
||||
//
|
||||
resources.ApplyResources(this.label9, "label9");
|
||||
this.label9.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
|
||||
this.label9.Name = "label9";
|
||||
//
|
||||
// offsetHelmet
|
||||
//
|
||||
resources.ApplyResources(this.offsetHelmet, "offsetHelmet");
|
||||
this.offsetHelmet.Name = "offsetHelmet";
|
||||
this.offsetHelmet.TextChanged += new System.EventHandler(this.offsetHelmet_TextChanged);
|
||||
//
|
||||
// label15
|
||||
//
|
||||
resources.ApplyResources(this.label15, "label15");
|
||||
this.label15.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(192)))));
|
||||
this.label15.Name = "label15";
|
||||
//
|
||||
// label16
|
||||
//
|
||||
resources.ApplyResources(this.label16, "label16");
|
||||
this.label16.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(64)))), ((int)(((byte)(0)))));
|
||||
this.label16.Name = "label16";
|
||||
//
|
||||
// label6
|
||||
//
|
||||
resources.ApplyResources(this.label6, "label6");
|
||||
this.label6.ForeColor = System.Drawing.Color.White;
|
||||
this.label6.Name = "label6";
|
||||
//
|
||||
// comboParent
|
||||
//
|
||||
this.comboParent.FormattingEnabled = true;
|
||||
this.comboParent.Items.AddRange(new object[] {
|
||||
resources.GetString("comboParent.Items"),
|
||||
resources.GetString("comboParent.Items1"),
|
||||
resources.GetString("comboParent.Items2"),
|
||||
resources.GetString("comboParent.Items3"),
|
||||
resources.GetString("comboParent.Items4"),
|
||||
resources.GetString("comboParent.Items5")});
|
||||
resources.ApplyResources(this.comboParent, "comboParent");
|
||||
this.comboParent.Name = "comboParent";
|
||||
this.comboParent.SelectedValueChanged += new System.EventHandler(this.comboParent_SelectedIndexChanged);
|
||||
//
|
||||
// labelModeParts
|
||||
//
|
||||
resources.ApplyResources(this.labelModeParts, "labelModeParts");
|
||||
this.labelModeParts.ForeColor = System.Drawing.Color.White;
|
||||
this.labelModeParts.Name = "labelModeParts";
|
||||
//
|
||||
// listViewBoxes
|
||||
//
|
||||
this.listViewBoxes.Activation = System.Windows.Forms.ItemActivation.OneClick;
|
||||
this.listViewBoxes.ContextMenuStrip = this.contextMenuStrip1;
|
||||
resources.ApplyResources(this.listViewBoxes, "listViewBoxes");
|
||||
this.listViewBoxes.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
|
||||
this.listViewBoxes.HideSelection = false;
|
||||
this.listViewBoxes.LabelEdit = true;
|
||||
this.listViewBoxes.MultiSelect = false;
|
||||
this.listViewBoxes.Name = "listViewBoxes";
|
||||
this.tableLayoutPanelMain.SetRowSpan(this.listViewBoxes, 14);
|
||||
this.listViewBoxes.UseCompatibleStateImageBehavior = false;
|
||||
this.listViewBoxes.View = System.Windows.Forms.View.Details;
|
||||
this.listViewBoxes.SelectedIndexChanged += new System.EventHandler(this.listView1_SelectedIndexChanged);
|
||||
this.listViewBoxes.Click += new System.EventHandler(this.listView1_Click);
|
||||
this.listViewBoxes.DoubleClick += new System.EventHandler(this.listView1_DoubleClick_1);
|
||||
this.listViewBoxes.KeyDown += new System.Windows.Forms.KeyEventHandler(this.delStuffUsingDelKey);
|
||||
//
|
||||
// contextMenuStrip1
|
||||
//
|
||||
this.contextMenuStrip1.ImageScalingSize = new System.Drawing.Size(20, 20);
|
||||
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.createToolStripMenuItem,
|
||||
this.cloneToolStripMenuItem,
|
||||
this.deleteToolStripMenuItem,
|
||||
this.changeColorToolStripMenuItem});
|
||||
this.contextMenuStrip1.Name = "contextMenuStrip1";
|
||||
resources.ApplyResources(this.contextMenuStrip1, "contextMenuStrip1");
|
||||
//
|
||||
// createToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.createToolStripMenuItem, "createToolStripMenuItem");
|
||||
this.createToolStripMenuItem.Name = "createToolStripMenuItem";
|
||||
this.createToolStripMenuItem.Click += new System.EventHandler(this.createToolStripMenuItem_Click);
|
||||
//
|
||||
// cloneToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.cloneToolStripMenuItem, "cloneToolStripMenuItem");
|
||||
this.cloneToolStripMenuItem.Name = "cloneToolStripMenuItem";
|
||||
this.cloneToolStripMenuItem.Click += new System.EventHandler(this.cloneToolStripMenuItem_Click);
|
||||
//
|
||||
// deleteToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.deleteToolStripMenuItem, "deleteToolStripMenuItem");
|
||||
this.deleteToolStripMenuItem.Name = "deleteToolStripMenuItem";
|
||||
this.deleteToolStripMenuItem.Click += new System.EventHandler(this.deleteToolStripMenuItem_Click);
|
||||
//
|
||||
// changeColorToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.changeColorToolStripMenuItem, "changeColorToolStripMenuItem");
|
||||
this.changeColorToolStripMenuItem.Name = "changeColorToolStripMenuItem";
|
||||
this.changeColorToolStripMenuItem.Click += new System.EventHandler(this.changeColorToolStripMenuItem_Click);
|
||||
//
|
||||
// labelFullSkinPreview
|
||||
//
|
||||
resources.ApplyResources(this.labelFullSkinPreview, "labelFullSkinPreview");
|
||||
this.labelFullSkinPreview.ForeColor = System.Drawing.Color.White;
|
||||
this.labelFullSkinPreview.Name = "labelFullSkinPreview";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
resources.ApplyResources(this.label3, "label3");
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.label3, 2);
|
||||
this.label3.ForeColor = System.Drawing.Color.White;
|
||||
this.label3.Name = "label3";
|
||||
//
|
||||
// checkBoxArmor
|
||||
//
|
||||
resources.ApplyResources(this.checkBoxArmor, "checkBoxArmor");
|
||||
this.checkBoxArmor.ForeColor = System.Drawing.Color.White;
|
||||
this.checkBoxArmor.Name = "checkBoxArmor";
|
||||
this.checkBoxArmor.UseVisualStyleBackColor = true;
|
||||
this.checkBoxArmor.Click += new System.EventHandler(this.checkBoxArmor_Click);
|
||||
//
|
||||
// labelTheme
|
||||
//
|
||||
resources.ApplyResources(this.labelTheme, "labelTheme");
|
||||
this.labelTheme.ForeColor = System.Drawing.Color.White;
|
||||
this.labelTheme.Name = "labelTheme";
|
||||
//
|
||||
// listViewBGs
|
||||
//
|
||||
resources.ApplyResources(this.listViewBGs, "listViewBGs");
|
||||
this.listViewBGs.HideSelection = false;
|
||||
this.listViewBGs.Items.AddRange(new System.Windows.Forms.ListViewItem[] {
|
||||
((System.Windows.Forms.ListViewItem)(resources.GetObject("listViewBGs.Items"))),
|
||||
((System.Windows.Forms.ListViewItem)(resources.GetObject("listViewBGs.Items1"))),
|
||||
((System.Windows.Forms.ListViewItem)(resources.GetObject("listViewBGs.Items2"))),
|
||||
((System.Windows.Forms.ListViewItem)(resources.GetObject("listViewBGs.Items3"))),
|
||||
((System.Windows.Forms.ListViewItem)(resources.GetObject("listViewBGs.Items4"))),
|
||||
((System.Windows.Forms.ListViewItem)(resources.GetObject("listViewBGs.Items5"))),
|
||||
((System.Windows.Forms.ListViewItem)(resources.GetObject("listViewBGs.Items6"))),
|
||||
((System.Windows.Forms.ListViewItem)(resources.GetObject("listViewBGs.Items7")))});
|
||||
this.listViewBGs.Name = "listViewBGs";
|
||||
this.listViewBGs.UseCompatibleStateImageBehavior = false;
|
||||
this.listViewBGs.SelectedIndexChanged += new System.EventHandler(this.listViewBGs_SelectedIndexChanged);
|
||||
this.listViewBGs.Click += new System.EventHandler(this.listViewBGs_Click);
|
||||
//
|
||||
// tableLayoutPanelMain
|
||||
//
|
||||
resources.ApplyResources(this.tableLayoutPanelMain, "tableLayoutPanelMain");
|
||||
this.tableLayoutPanelMain.Controls.Add(this.labelModeParts, 0, 0);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.listViewBoxes, 0, 1);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonExportModel, 3, 0);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.displayBox, 1, 1);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonImportModel, 2, 0);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.labelFullSkinPreview, 1, 0);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.labelTextureMappingPreview, 5, 0);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.texturePreview, 5, 1);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonIMPORT, 5, 6);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.label7, 5, 7);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonEXPORT, 8, 6);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.textTextureY, 6, 7);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.textTextureX, 8, 7);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.label3, 5, 8);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonXfplus, 5, 9);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.textXf, 5, 10);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonXfminus, 5, 11);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.label5, 5, 12);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonXcplus, 5, 13);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.textXc, 5, 14);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonXcminus, 5, 15);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonYfplus, 7, 9);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.textYf, 7, 10);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonYfminus, 7, 11);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonYcplus, 7, 13);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.textYc, 7, 14);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonYcminus, 7, 15);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonZfplus, 9, 9);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.textZf, 9, 10);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonZfminus, 9, 11);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonZcplus, 9, 13);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.textZc, 9, 14);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonZcminus, 9, 15);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.comboParent, 0, 18);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.label6, 0, 17);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonTemplate, 0, 19);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.groupBox1, 5, 16);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.labelTheme, 0, 15);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.listViewBGs, 0, 16);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.button2, 1, 18);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.button1, 3, 18);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.labelView, 2, 18);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.checkGuide, 1, 19);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.checkTextureGenerate, 2, 19);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.checkBoxArmor, 3, 19);
|
||||
this.tableLayoutPanelMain.Controls.Add(this.buttonDone, 8, 19);
|
||||
this.tableLayoutPanelMain.Name = "tableLayoutPanelMain";
|
||||
//
|
||||
// displayBox
|
||||
//
|
||||
this.displayBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.displayBox, 3);
|
||||
resources.ApplyResources(this.displayBox, "displayBox");
|
||||
this.displayBox.Image = global::minekampf.Properties.Resources.bg2;
|
||||
this.displayBox.Name = "displayBox";
|
||||
this.tableLayoutPanelMain.SetRowSpan(this.displayBox, 17);
|
||||
this.displayBox.TabStop = false;
|
||||
//
|
||||
// texturePreview
|
||||
//
|
||||
this.texturePreview.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.tableLayoutPanelMain.SetColumnSpan(this.texturePreview, 6);
|
||||
resources.ApplyResources(this.texturePreview, "texturePreview");
|
||||
this.texturePreview.Name = "texturePreview";
|
||||
this.tableLayoutPanelMain.SetRowSpan(this.texturePreview, 5);
|
||||
this.texturePreview.TabStop = false;
|
||||
//
|
||||
// generateModel
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.tableLayoutPanelMain);
|
||||
this.MaximizeBox = false;
|
||||
this.Name = "generateModel";
|
||||
this.Style = MetroFramework.MetroColorStyle.Silver;
|
||||
this.Theme = MetroFramework.MetroThemeStyle.Dark;
|
||||
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.generateModel_FormClosing);
|
||||
this.Load += new System.EventHandler(this.generateModel_Load);
|
||||
this.ResizeBegin += new System.EventHandler(this.generateModel_ResizeBegin);
|
||||
this.ResizeEnd += new System.EventHandler(this.generateModel_ResizeEnd);
|
||||
this.SizeChanged += new System.EventHandler(this.generateModel_SizeChanged);
|
||||
this.groupBox1.ResumeLayout(false);
|
||||
this.tabBody.ResumeLayout(false);
|
||||
this.tabPage1.ResumeLayout(false);
|
||||
this.myTablePanel2.ResumeLayout(false);
|
||||
this.myTablePanel2.PerformLayout();
|
||||
this.tabArmor.ResumeLayout(false);
|
||||
this.myTablePanel1.ResumeLayout(false);
|
||||
this.myTablePanel1.PerformLayout();
|
||||
this.contextMenuStrip1.ResumeLayout(false);
|
||||
this.tableLayoutPanelMain.ResumeLayout(false);
|
||||
this.tableLayoutPanelMain.PerformLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.displayBox)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.texturePreview)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.Button buttonImportModel;
|
||||
private System.Windows.Forms.Button buttonExportModel;
|
||||
private System.Windows.Forms.PictureBox displayBox;
|
||||
private System.Windows.Forms.CheckBox checkTextureGenerate;
|
||||
private System.Windows.Forms.CheckBox checkGuide;
|
||||
private System.Windows.Forms.Label labelView;
|
||||
private System.Windows.Forms.Button button2;
|
||||
private System.Windows.Forms.Button button1;
|
||||
private System.Windows.Forms.Label label7;
|
||||
private System.Windows.Forms.TextBox textTextureY;
|
||||
private System.Windows.Forms.TextBox textTextureX;
|
||||
private System.Windows.Forms.Button buttonIMPORT;
|
||||
private System.Windows.Forms.Label label5;
|
||||
private System.Windows.Forms.Button buttonZcplus;
|
||||
private System.Windows.Forms.Button buttonXcminus;
|
||||
private System.Windows.Forms.Button buttonYcminus;
|
||||
private System.Windows.Forms.Button buttonZcminus;
|
||||
private System.Windows.Forms.Button buttonYcplus;
|
||||
private System.Windows.Forms.Button buttonXcplus;
|
||||
private System.Windows.Forms.Button buttonZfplus;
|
||||
private System.Windows.Forms.Button buttonXfminus;
|
||||
private System.Windows.Forms.Button buttonYfminus;
|
||||
private System.Windows.Forms.Button buttonZfminus;
|
||||
private System.Windows.Forms.Button buttonYfplus;
|
||||
private System.Windows.Forms.Button buttonXfplus;
|
||||
private System.Windows.Forms.Button buttonEXPORT;
|
||||
private System.Windows.Forms.Label labelTextureMappingPreview;
|
||||
private System.Windows.Forms.PictureBox texturePreview;
|
||||
private System.Windows.Forms.Button buttonDone;
|
||||
private System.Windows.Forms.TextBox textYc;
|
||||
private System.Windows.Forms.TextBox textZc;
|
||||
private System.Windows.Forms.TextBox textXf;
|
||||
private System.Windows.Forms.TextBox textYf;
|
||||
private System.Windows.Forms.TextBox textZf;
|
||||
private System.Windows.Forms.TextBox textXc;
|
||||
private System.Windows.Forms.Button buttonTemplate;
|
||||
private System.Windows.Forms.GroupBox groupBox1;
|
||||
private System.Windows.Forms.TextBox offsetBody;
|
||||
private System.Windows.Forms.Label label14;
|
||||
private System.Windows.Forms.TextBox offsetLegs;
|
||||
private System.Windows.Forms.Label label13;
|
||||
private System.Windows.Forms.TextBox offsetArms;
|
||||
private System.Windows.Forms.Label label12;
|
||||
private System.Windows.Forms.TextBox offsetHead;
|
||||
private System.Windows.Forms.Label label10;
|
||||
private System.Windows.Forms.Label label6;
|
||||
private System.Windows.Forms.ComboBox comboParent;
|
||||
private System.Windows.Forms.Label labelModeParts;
|
||||
private System.Windows.Forms.ListView listViewBoxes;
|
||||
private System.Windows.Forms.Label labelFullSkinPreview;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
|
||||
private System.Windows.Forms.ToolStripMenuItem createToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem cloneToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem deleteToolStripMenuItem;
|
||||
private System.Windows.Forms.TabControl tabBody;
|
||||
private System.Windows.Forms.TabPage tabPage1;
|
||||
private System.Windows.Forms.TabPage tabArmor;
|
||||
private System.Windows.Forms.CheckBox checkBoxArmor;
|
||||
private System.Windows.Forms.ToolStripMenuItem changeColorToolStripMenuItem;
|
||||
private System.Windows.Forms.TextBox offsetPants;
|
||||
private System.Windows.Forms.Label label9;
|
||||
private System.Windows.Forms.Label label15;
|
||||
private System.Windows.Forms.TextBox offsetHelmet;
|
||||
private System.Windows.Forms.Label label16;
|
||||
private System.Windows.Forms.TextBox offsetBoots;
|
||||
private System.Windows.Forms.Label label4;
|
||||
private System.Windows.Forms.TextBox offsetTool;
|
||||
private System.Windows.Forms.Label labelTheme;
|
||||
private System.Windows.Forms.ListView listViewBGs;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanelMain;
|
||||
private Forms.MyTablePanel myTablePanel2;
|
||||
private Forms.MyTablePanel myTablePanel1;
|
||||
}
|
||||
}
|
||||