Add files via upload

This commit is contained in:
Fuindin 2017-06-07 08:44:46 -07:00 committed by GitHub
parent b2c9e4a263
commit 9a2305141b
57 changed files with 3788 additions and 0 deletions

38
ShiningEditor.sln Normal file
View File

@ -0,0 +1,38 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.26430.12
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShiningEditor", "ShiningEditor\ShiningEditor.csproj", "{A989E911-FC45-4495-B80B-7A344F5A6B53}"
EndProject
Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "ShiningEditorSetup", "ShiningEditorSetup\ShiningEditorSetup.vdproj", "{94D20EB6-FEEE-4A5D-9044-2F199C897674}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
CD_ROM|Any CPU = CD_ROM|Any CPU
Debug|Any CPU = Debug|Any CPU
DVD-5|Any CPU = DVD-5|Any CPU
Release|Any CPU = Release|Any CPU
SingleImage|Any CPU = SingleImage|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{A989E911-FC45-4495-B80B-7A344F5A6B53}.CD_ROM|Any CPU.ActiveCfg = Release|Any CPU
{A989E911-FC45-4495-B80B-7A344F5A6B53}.CD_ROM|Any CPU.Build.0 = Release|Any CPU
{A989E911-FC45-4495-B80B-7A344F5A6B53}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A989E911-FC45-4495-B80B-7A344F5A6B53}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A989E911-FC45-4495-B80B-7A344F5A6B53}.DVD-5|Any CPU.ActiveCfg = Debug|Any CPU
{A989E911-FC45-4495-B80B-7A344F5A6B53}.DVD-5|Any CPU.Build.0 = Debug|Any CPU
{A989E911-FC45-4495-B80B-7A344F5A6B53}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A989E911-FC45-4495-B80B-7A344F5A6B53}.Release|Any CPU.Build.0 = Release|Any CPU
{A989E911-FC45-4495-B80B-7A344F5A6B53}.SingleImage|Any CPU.ActiveCfg = Release|Any CPU
{A989E911-FC45-4495-B80B-7A344F5A6B53}.SingleImage|Any CPU.Build.0 = Release|Any CPU
{94D20EB6-FEEE-4A5D-9044-2F199C897674}.CD_ROM|Any CPU.ActiveCfg = Release
{94D20EB6-FEEE-4A5D-9044-2F199C897674}.Debug|Any CPU.ActiveCfg = Debug
{94D20EB6-FEEE-4A5D-9044-2F199C897674}.DVD-5|Any CPU.ActiveCfg = Debug
{94D20EB6-FEEE-4A5D-9044-2F199C897674}.Release|Any CPU.ActiveCfg = Release
{94D20EB6-FEEE-4A5D-9044-2F199C897674}.SingleImage|Any CPU.ActiveCfg = Release
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

108
ShiningEditor/AboutForm.Designer.cs generated Normal file
View File

@ -0,0 +1,108 @@
namespace ShiningEditor
{
partial class AboutForm
{
/// <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.label1 = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.label3 = new System.Windows.Forms.Label();
this.label4 = new System.Windows.Forms.Label();
this.label5 = new System.Windows.Forms.Label();
this.SuspendLayout();
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(16, 101);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(282, 13);
this.label1.TabIndex = 0;
this.label1.Text = "Shining Editor is a Genesis / Mega Drive save state editor.";
//
// label2
//
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(16, 118);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(345, 13);
this.label2.TabIndex = 1;
this.label2.Text = "It allows a user to edit the party\'s gold, experience, and various stats for ";
//
// label3
//
this.label3.AutoSize = true;
this.label3.Location = new System.Drawing.Point(16, 135);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(250, 13);
this.label3.TabIndex = 2;
this.label3.Text = "each playable character in Shining in the Darkness.";
//
// label4
//
this.label4.AutoSize = true;
this.label4.Location = new System.Drawing.Point(16, 13);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(72, 13);
this.label4.TabIndex = 3;
this.label4.Text = "Shining Editor";
//
// label5
//
this.label5.AutoSize = true;
this.label5.Location = new System.Drawing.Point(16, 39);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(120, 13);
this.label5.TabIndex = 4;
this.label5.Text = "Programmed by: Fuindin";
//
// AboutForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(414, 339);
this.Controls.Add(this.label5);
this.Controls.Add(this.label4);
this.Controls.Add(this.label3);
this.Controls.Add(this.label2);
this.Controls.Add(this.label1);
this.Name = "AboutForm";
this.Text = "About Shining Editor";
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.Label label5;
}
}

View File

@ -0,0 +1,20 @@
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 ShiningEditor
{
public partial class AboutForm : Form
{
public AboutForm()
{
InitializeComponent();
}
}
}

View 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
ShiningEditor/App.config Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
</configuration>

64
ShiningEditor/ErrorLogView.Designer.cs generated Normal file
View File

@ -0,0 +1,64 @@
namespace ShiningEditor
{
partial class ErrorLogView
{
/// <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.outputTb = new System.Windows.Forms.TextBox();
this.SuspendLayout();
//
// outputTb
//
this.outputTb.BackColor = System.Drawing.Color.White;
this.outputTb.Location = new System.Drawing.Point(13, 13);
this.outputTb.Multiline = true;
this.outputTb.Name = "outputTb";
this.outputTb.ReadOnly = true;
this.outputTb.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
this.outputTb.Size = new System.Drawing.Size(735, 600);
this.outputTb.TabIndex = 0;
//
// ErrorLogView
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(760, 625);
this.Controls.Add(this.outputTb);
this.Name = "ErrorLogView";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "Error Log View";
this.Load += new System.EventHandler(this.ErrorLogView_Load);
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.TextBox outputTb;
}
}

View File

@ -0,0 +1,75 @@
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 System.IO;
namespace ShiningEditor
{
public partial class ErrorLogView : Form
{
public ErrorLogView()
{
InitializeComponent();
}
private void ErrorLogView_Load(object sender, EventArgs e)
{
outputTb.Text = ReadErrorLog();
}
private string ReadErrorLog()
{
string logText = string.Empty;
// Create error log path
string filePath = Path.GetDirectoryName(System.Windows.Forms.Application.ExecutablePath);
filePath += @"\errorlog.txt";
// Create reader object
TextReader reader = null;
// Make sure file exists
if (File.Exists(filePath))
{
try
{
// Open file
reader = new StreamReader(filePath);
// Read the log info
if (reader != null)
logText = reader.ReadToEnd();
}
catch (IOException ioE)
{
outputTb.Text = ioE.Message + " Occurred during call to ReadErrorLog().";
}
catch (OutOfMemoryException oomE)
{
outputTb.Text = oomE.Message + " Occurred during call to ReadErrorLog().";
}
catch (NullReferenceException nE)
{
outputTb.Text = nE.Message + " Occurred during call to ReadErrorLog().";
}
catch (Exception e)
{
outputTb.Text = e.Message + " Occurred during call to ReadErrorLog().";
}
finally
{
// Close the stream
reader.Close();
}
}
return logText;
}
}
}

View 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>

750
ShiningEditor/MainForm.Designer.cs generated Normal file
View File

@ -0,0 +1,750 @@
namespace ShiningEditor
{
partial class MainForm
{
/// <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(MainForm));
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.gameToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.shiningInTheDarknessToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.helpToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.viewErrorLogToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.clearErrorLogToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.aboutToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.browseBtn = new System.Windows.Forms.Button();
this.saveStateFileTb = new System.Windows.Forms.TextBox();
this.label1 = new System.Windows.Forms.Label();
this.shiningPanel = new System.Windows.Forms.Panel();
this.updSaveStateBtn = new System.Windows.Forms.Button();
this.label39 = new System.Windows.Forms.Label();
this.label38 = new System.Windows.Forms.Label();
this.label36 = new System.Windows.Forms.Label();
this.label35 = new System.Windows.Forms.Label();
this.shiningNewAttackTb = new System.Windows.Forms.TextBox();
this.shiningNewLuckTb = new System.Windows.Forms.TextBox();
this.shiningDefTb = new System.Windows.Forms.TextBox();
this.shiningAttackTb = new System.Windows.Forms.TextBox();
this.shiningLuckTb = new System.Windows.Forms.TextBox();
this.shiningSpeedTb = new System.Windows.Forms.TextBox();
this.label34 = new System.Windows.Forms.Label();
this.shiningNewIQTb = new System.Windows.Forms.TextBox();
this.shiningIQTb = new System.Windows.Forms.TextBox();
this.maxTPLbl = new System.Windows.Forms.Label();
this.curTPLbl = new System.Windows.Forms.Label();
this.label29 = new System.Windows.Forms.Label();
this.label78 = new System.Windows.Forms.Label();
this.shiningNewMaxMPTb = new System.Windows.Forms.TextBox();
this.shiningNewCurMPTb = new System.Windows.Forms.TextBox();
this.shiningNewMaxHPTb = new System.Windows.Forms.TextBox();
this.shiningNewCurHPTb = new System.Windows.Forms.TextBox();
this.shiningMaxMPTb = new System.Windows.Forms.TextBox();
this.shiningCurMPTb = new System.Windows.Forms.TextBox();
this.shiningMaxHPTb = new System.Windows.Forms.TextBox();
this.shiningCurHPTb = new System.Windows.Forms.TextBox();
this.label3 = new System.Windows.Forms.Label();
this.label33 = new System.Windows.Forms.Label();
this.shiningNewExpTb = new System.Windows.Forms.TextBox();
this.shiningExpTb = new System.Windows.Forms.TextBox();
this.label40 = new System.Windows.Forms.Label();
this.label42 = new System.Windows.Forms.Label();
this.label41 = new System.Windows.Forms.Label();
this.shiningLevelTb = new System.Windows.Forms.TextBox();
this.label28 = new System.Windows.Forms.Label();
this.label77 = new System.Windows.Forms.Label();
this.shiningNewGoldTb = new System.Windows.Forms.TextBox();
this.label27 = new System.Windows.Forms.Label();
this.shiningCurGoldTb = new System.Windows.Forms.TextBox();
this.label26 = new System.Windows.Forms.Label();
this.label43 = new System.Windows.Forms.Label();
this.shiningCharacterCmb = new System.Windows.Forms.ComboBox();
this.label2 = new System.Windows.Forms.Label();
this.shiningPic = new System.Windows.Forms.PictureBox();
this.openFD = new System.Windows.Forms.OpenFileDialog();
this.menuStrip1.SuspendLayout();
this.shiningPanel.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.shiningPic)).BeginInit();
this.SuspendLayout();
//
// menuStrip1
//
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.fileToolStripMenuItem,
this.gameToolStripMenuItem,
this.helpToolStripMenuItem});
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
this.menuStrip1.Name = "menuStrip1";
this.menuStrip1.Size = new System.Drawing.Size(714, 24);
this.menuStrip1.TabIndex = 0;
this.menuStrip1.Text = "menuStrip1";
//
// fileToolStripMenuItem
//
this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.exitToolStripMenuItem});
this.fileToolStripMenuItem.Name = "fileToolStripMenuItem";
this.fileToolStripMenuItem.Size = new System.Drawing.Size(37, 20);
this.fileToolStripMenuItem.Text = "File";
//
// exitToolStripMenuItem
//
this.exitToolStripMenuItem.Name = "exitToolStripMenuItem";
this.exitToolStripMenuItem.Size = new System.Drawing.Size(92, 22);
this.exitToolStripMenuItem.Text = "Exit";
this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click);
//
// gameToolStripMenuItem
//
this.gameToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.shiningInTheDarknessToolStripMenuItem});
this.gameToolStripMenuItem.Name = "gameToolStripMenuItem";
this.gameToolStripMenuItem.Size = new System.Drawing.Size(50, 20);
this.gameToolStripMenuItem.Text = "Game";
//
// shiningInTheDarknessToolStripMenuItem
//
this.shiningInTheDarknessToolStripMenuItem.Name = "shiningInTheDarknessToolStripMenuItem";
this.shiningInTheDarknessToolStripMenuItem.Size = new System.Drawing.Size(197, 22);
this.shiningInTheDarknessToolStripMenuItem.Text = "Shining in the Darkness";
this.shiningInTheDarknessToolStripMenuItem.Click += new System.EventHandler(this.shiningInTheDarknessToolStripMenuItem_Click);
//
// helpToolStripMenuItem
//
this.helpToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.viewErrorLogToolStripMenuItem,
this.clearErrorLogToolStripMenuItem,
this.aboutToolStripMenuItem});
this.helpToolStripMenuItem.Name = "helpToolStripMenuItem";
this.helpToolStripMenuItem.Size = new System.Drawing.Size(44, 20);
this.helpToolStripMenuItem.Text = "Help";
//
// viewErrorLogToolStripMenuItem
//
this.viewErrorLogToolStripMenuItem.Name = "viewErrorLogToolStripMenuItem";
this.viewErrorLogToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
this.viewErrorLogToolStripMenuItem.Text = "View Error Log";
this.viewErrorLogToolStripMenuItem.Click += new System.EventHandler(this.viewErrorLogToolStripMenuItem_Click);
//
// clearErrorLogToolStripMenuItem
//
this.clearErrorLogToolStripMenuItem.Name = "clearErrorLogToolStripMenuItem";
this.clearErrorLogToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
this.clearErrorLogToolStripMenuItem.Text = "Clear Error Log";
this.clearErrorLogToolStripMenuItem.Click += new System.EventHandler(this.clearErrorLogToolStripMenuItem_Click);
//
// aboutToolStripMenuItem
//
this.aboutToolStripMenuItem.Name = "aboutToolStripMenuItem";
this.aboutToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
this.aboutToolStripMenuItem.Text = "About";
this.aboutToolStripMenuItem.Click += new System.EventHandler(this.aboutToolStripMenuItem_Click);
//
// browseBtn
//
this.browseBtn.Location = new System.Drawing.Point(276, 48);
this.browseBtn.Name = "browseBtn";
this.browseBtn.Size = new System.Drawing.Size(75, 23);
this.browseBtn.TabIndex = 5;
this.browseBtn.Text = "Browse";
this.browseBtn.UseVisualStyleBackColor = true;
this.browseBtn.Click += new System.EventHandler(this.browseBtn_Click);
//
// saveStateFileTb
//
this.saveStateFileTb.Location = new System.Drawing.Point(14, 50);
this.saveStateFileTb.Name = "saveStateFileTb";
this.saveStateFileTb.Size = new System.Drawing.Size(247, 20);
this.saveStateFileTb.TabIndex = 4;
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(11, 33);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(79, 13);
this.label1.TabIndex = 3;
this.label1.Text = "Save State File";
//
// shiningPanel
//
this.shiningPanel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.shiningPanel.Controls.Add(this.updSaveStateBtn);
this.shiningPanel.Controls.Add(this.label39);
this.shiningPanel.Controls.Add(this.label38);
this.shiningPanel.Controls.Add(this.label36);
this.shiningPanel.Controls.Add(this.label35);
this.shiningPanel.Controls.Add(this.shiningNewAttackTb);
this.shiningPanel.Controls.Add(this.shiningNewLuckTb);
this.shiningPanel.Controls.Add(this.shiningDefTb);
this.shiningPanel.Controls.Add(this.shiningAttackTb);
this.shiningPanel.Controls.Add(this.shiningLuckTb);
this.shiningPanel.Controls.Add(this.shiningSpeedTb);
this.shiningPanel.Controls.Add(this.label34);
this.shiningPanel.Controls.Add(this.shiningNewIQTb);
this.shiningPanel.Controls.Add(this.shiningIQTb);
this.shiningPanel.Controls.Add(this.maxTPLbl);
this.shiningPanel.Controls.Add(this.curTPLbl);
this.shiningPanel.Controls.Add(this.label29);
this.shiningPanel.Controls.Add(this.label78);
this.shiningPanel.Controls.Add(this.shiningNewMaxMPTb);
this.shiningPanel.Controls.Add(this.shiningNewCurMPTb);
this.shiningPanel.Controls.Add(this.shiningNewMaxHPTb);
this.shiningPanel.Controls.Add(this.shiningNewCurHPTb);
this.shiningPanel.Controls.Add(this.shiningMaxMPTb);
this.shiningPanel.Controls.Add(this.shiningCurMPTb);
this.shiningPanel.Controls.Add(this.shiningMaxHPTb);
this.shiningPanel.Controls.Add(this.shiningCurHPTb);
this.shiningPanel.Controls.Add(this.label3);
this.shiningPanel.Controls.Add(this.label33);
this.shiningPanel.Controls.Add(this.shiningNewExpTb);
this.shiningPanel.Controls.Add(this.shiningExpTb);
this.shiningPanel.Controls.Add(this.label40);
this.shiningPanel.Controls.Add(this.label42);
this.shiningPanel.Controls.Add(this.label41);
this.shiningPanel.Controls.Add(this.shiningLevelTb);
this.shiningPanel.Controls.Add(this.label28);
this.shiningPanel.Controls.Add(this.label77);
this.shiningPanel.Controls.Add(this.shiningNewGoldTb);
this.shiningPanel.Controls.Add(this.label27);
this.shiningPanel.Controls.Add(this.shiningCurGoldTb);
this.shiningPanel.Controls.Add(this.label26);
this.shiningPanel.Controls.Add(this.label43);
this.shiningPanel.Controls.Add(this.shiningCharacterCmb);
this.shiningPanel.Controls.Add(this.label2);
this.shiningPanel.Controls.Add(this.shiningPic);
this.shiningPanel.Location = new System.Drawing.Point(7, 80);
this.shiningPanel.Name = "shiningPanel";
this.shiningPanel.Size = new System.Drawing.Size(700, 487);
this.shiningPanel.TabIndex = 6;
//
// updSaveStateBtn
//
this.updSaveStateBtn.Location = new System.Drawing.Point(554, 438);
this.updSaveStateBtn.Name = "updSaveStateBtn";
this.updSaveStateBtn.Size = new System.Drawing.Size(129, 23);
this.updSaveStateBtn.TabIndex = 162;
this.updSaveStateBtn.Text = "Update Save State";
this.updSaveStateBtn.UseVisualStyleBackColor = true;
this.updSaveStateBtn.Click += new System.EventHandler(this.updSaveStateBtn_Click);
//
// label39
//
this.label39.AutoSize = true;
this.label39.Location = new System.Drawing.Point(34, 443);
this.label39.Name = "label39";
this.label39.Size = new System.Drawing.Size(50, 13);
this.label39.TabIndex = 148;
this.label39.Text = "Defense:";
this.label39.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// label38
//
this.label38.AutoSize = true;
this.label38.Location = new System.Drawing.Point(43, 415);
this.label38.Name = "label38";
this.label38.Size = new System.Drawing.Size(41, 13);
this.label38.TabIndex = 149;
this.label38.Text = "Attack:";
this.label38.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// label36
//
this.label36.AutoSize = true;
this.label36.Location = new System.Drawing.Point(50, 387);
this.label36.Name = "label36";
this.label36.Size = new System.Drawing.Size(34, 13);
this.label36.TabIndex = 151;
this.label36.Text = "Luck:";
this.label36.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// label35
//
this.label35.AutoSize = true;
this.label35.Location = new System.Drawing.Point(44, 359);
this.label35.Name = "label35";
this.label35.Size = new System.Drawing.Size(41, 13);
this.label35.TabIndex = 152;
this.label35.Text = "Speed:";
this.label35.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// shiningNewAttackTb
//
this.shiningNewAttackTb.Location = new System.Drawing.Point(240, 412);
this.shiningNewAttackTb.Name = "shiningNewAttackTb";
this.shiningNewAttackTb.Size = new System.Drawing.Size(130, 20);
this.shiningNewAttackTb.TabIndex = 160;
//
// shiningNewLuckTb
//
this.shiningNewLuckTb.Location = new System.Drawing.Point(240, 384);
this.shiningNewLuckTb.Name = "shiningNewLuckTb";
this.shiningNewLuckTb.Size = new System.Drawing.Size(130, 20);
this.shiningNewLuckTb.TabIndex = 156;
//
// shiningDefTb
//
this.shiningDefTb.BackColor = System.Drawing.Color.White;
this.shiningDefTb.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.shiningDefTb.Location = new System.Drawing.Point(89, 440);
this.shiningDefTb.Name = "shiningDefTb";
this.shiningDefTb.ReadOnly = true;
this.shiningDefTb.Size = new System.Drawing.Size(132, 20);
this.shiningDefTb.TabIndex = 161;
//
// shiningAttackTb
//
this.shiningAttackTb.BackColor = System.Drawing.Color.White;
this.shiningAttackTb.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.shiningAttackTb.Location = new System.Drawing.Point(89, 412);
this.shiningAttackTb.Name = "shiningAttackTb";
this.shiningAttackTb.ReadOnly = true;
this.shiningAttackTb.Size = new System.Drawing.Size(132, 20);
this.shiningAttackTb.TabIndex = 159;
//
// shiningLuckTb
//
this.shiningLuckTb.BackColor = System.Drawing.Color.White;
this.shiningLuckTb.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.shiningLuckTb.Location = new System.Drawing.Point(89, 384);
this.shiningLuckTb.Name = "shiningLuckTb";
this.shiningLuckTb.ReadOnly = true;
this.shiningLuckTb.Size = new System.Drawing.Size(132, 20);
this.shiningLuckTb.TabIndex = 155;
//
// shiningSpeedTb
//
this.shiningSpeedTb.BackColor = System.Drawing.Color.White;
this.shiningSpeedTb.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.shiningSpeedTb.Location = new System.Drawing.Point(89, 356);
this.shiningSpeedTb.Name = "shiningSpeedTb";
this.shiningSpeedTb.ReadOnly = true;
this.shiningSpeedTb.Size = new System.Drawing.Size(132, 20);
this.shiningSpeedTb.TabIndex = 153;
//
// label34
//
this.label34.AutoSize = true;
this.label34.Location = new System.Drawing.Point(64, 332);
this.label34.Name = "label34";
this.label34.Size = new System.Drawing.Size(21, 13);
this.label34.TabIndex = 145;
this.label34.Text = "IQ:";
this.label34.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// shiningNewIQTb
//
this.shiningNewIQTb.Location = new System.Drawing.Point(240, 329);
this.shiningNewIQTb.Name = "shiningNewIQTb";
this.shiningNewIQTb.Size = new System.Drawing.Size(130, 20);
this.shiningNewIQTb.TabIndex = 147;
//
// shiningIQTb
//
this.shiningIQTb.BackColor = System.Drawing.Color.White;
this.shiningIQTb.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.shiningIQTb.Location = new System.Drawing.Point(89, 329);
this.shiningIQTb.Name = "shiningIQTb";
this.shiningIQTb.ReadOnly = true;
this.shiningIQTb.Size = new System.Drawing.Size(132, 20);
this.shiningIQTb.TabIndex = 146;
//
// maxTPLbl
//
this.maxTPLbl.AutoSize = true;
this.maxTPLbl.Location = new System.Drawing.Point(36, 304);
this.maxTPLbl.Name = "maxTPLbl";
this.maxTPLbl.Size = new System.Drawing.Size(49, 13);
this.maxTPLbl.TabIndex = 133;
this.maxTPLbl.Text = "Max MP:";
this.maxTPLbl.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// curTPLbl
//
this.curTPLbl.AutoSize = true;
this.curTPLbl.Location = new System.Drawing.Point(23, 272);
this.curTPLbl.Name = "curTPLbl";
this.curTPLbl.Size = new System.Drawing.Size(63, 13);
this.curTPLbl.TabIndex = 134;
this.curTPLbl.Text = "Current MP:";
this.curTPLbl.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// label29
//
this.label29.AutoSize = true;
this.label29.Location = new System.Drawing.Point(36, 246);
this.label29.Name = "label29";
this.label29.Size = new System.Drawing.Size(48, 13);
this.label29.TabIndex = 135;
this.label29.Text = "Max HP:";
this.label29.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// label78
//
this.label78.AutoSize = true;
this.label78.Location = new System.Drawing.Point(22, 218);
this.label78.Name = "label78";
this.label78.Size = new System.Drawing.Size(62, 13);
this.label78.TabIndex = 136;
this.label78.Text = "Current HP:";
this.label78.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// shiningNewMaxMPTb
//
this.shiningNewMaxMPTb.Location = new System.Drawing.Point(240, 301);
this.shiningNewMaxMPTb.Name = "shiningNewMaxMPTb";
this.shiningNewMaxMPTb.Size = new System.Drawing.Size(130, 20);
this.shiningNewMaxMPTb.TabIndex = 144;
//
// shiningNewCurMPTb
//
this.shiningNewCurMPTb.Location = new System.Drawing.Point(240, 272);
this.shiningNewCurMPTb.Name = "shiningNewCurMPTb";
this.shiningNewCurMPTb.Size = new System.Drawing.Size(130, 20);
this.shiningNewCurMPTb.TabIndex = 142;
//
// shiningNewMaxHPTb
//
this.shiningNewMaxHPTb.Location = new System.Drawing.Point(240, 243);
this.shiningNewMaxHPTb.Name = "shiningNewMaxHPTb";
this.shiningNewMaxHPTb.Size = new System.Drawing.Size(130, 20);
this.shiningNewMaxHPTb.TabIndex = 140;
//
// shiningNewCurHPTb
//
this.shiningNewCurHPTb.Location = new System.Drawing.Point(240, 215);
this.shiningNewCurHPTb.Name = "shiningNewCurHPTb";
this.shiningNewCurHPTb.Size = new System.Drawing.Size(130, 20);
this.shiningNewCurHPTb.TabIndex = 138;
//
// shiningMaxMPTb
//
this.shiningMaxMPTb.BackColor = System.Drawing.Color.White;
this.shiningMaxMPTb.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.shiningMaxMPTb.Location = new System.Drawing.Point(89, 301);
this.shiningMaxMPTb.Name = "shiningMaxMPTb";
this.shiningMaxMPTb.ReadOnly = true;
this.shiningMaxMPTb.Size = new System.Drawing.Size(132, 20);
this.shiningMaxMPTb.TabIndex = 143;
//
// shiningCurMPTb
//
this.shiningCurMPTb.BackColor = System.Drawing.Color.White;
this.shiningCurMPTb.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.shiningCurMPTb.Location = new System.Drawing.Point(89, 272);
this.shiningCurMPTb.Name = "shiningCurMPTb";
this.shiningCurMPTb.ReadOnly = true;
this.shiningCurMPTb.Size = new System.Drawing.Size(132, 20);
this.shiningCurMPTb.TabIndex = 141;
//
// shiningMaxHPTb
//
this.shiningMaxHPTb.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.shiningMaxHPTb.Location = new System.Drawing.Point(89, 243);
this.shiningMaxHPTb.Name = "shiningMaxHPTb";
this.shiningMaxHPTb.Size = new System.Drawing.Size(132, 20);
this.shiningMaxHPTb.TabIndex = 139;
//
// shiningCurHPTb
//
this.shiningCurHPTb.BackColor = System.Drawing.Color.White;
this.shiningCurHPTb.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.shiningCurHPTb.Location = new System.Drawing.Point(89, 215);
this.shiningCurHPTb.Name = "shiningCurHPTb";
this.shiningCurHPTb.ReadOnly = true;
this.shiningCurHPTb.Size = new System.Drawing.Size(132, 20);
this.shiningCurHPTb.TabIndex = 137;
//
// label3
//
this.label3.AutoSize = true;
this.label3.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label3.Location = new System.Drawing.Point(11, 29);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(529, 13);
this.label3.TabIndex = 132;
this.label3.Text = " " +
" " +
" ";
//
// label33
//
this.label33.AutoSize = true;
this.label33.Location = new System.Drawing.Point(21, 191);
this.label33.Name = "label33";
this.label33.Size = new System.Drawing.Size(63, 13);
this.label33.TabIndex = 129;
this.label33.Text = "Experience:";
this.label33.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// shiningNewExpTb
//
this.shiningNewExpTb.Location = new System.Drawing.Point(240, 188);
this.shiningNewExpTb.Name = "shiningNewExpTb";
this.shiningNewExpTb.Size = new System.Drawing.Size(130, 20);
this.shiningNewExpTb.TabIndex = 131;
//
// shiningExpTb
//
this.shiningExpTb.BackColor = System.Drawing.Color.White;
this.shiningExpTb.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.shiningExpTb.Location = new System.Drawing.Point(89, 188);
this.shiningExpTb.Name = "shiningExpTb";
this.shiningExpTb.ReadOnly = true;
this.shiningExpTb.Size = new System.Drawing.Size(132, 20);
this.shiningExpTb.TabIndex = 130;
//
// label40
//
this.label40.AutoSize = true;
this.label40.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Underline))), System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label40.Location = new System.Drawing.Point(18, 122);
this.label40.Name = "label40";
this.label40.Size = new System.Drawing.Size(520, 13);
this.label40.TabIndex = 128;
this.label40.Text = "Stats " +
" ";
//
// label42
//
this.label42.AutoSize = true;
this.label42.Location = new System.Drawing.Point(48, 166);
this.label42.Name = "label42";
this.label42.Size = new System.Drawing.Size(36, 13);
this.label42.TabIndex = 14;
this.label42.Text = "Level:";
this.label42.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// label41
//
this.label41.AutoSize = true;
this.label41.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label41.Location = new System.Drawing.Point(239, 144);
this.label41.Name = "label41";
this.label41.Size = new System.Drawing.Size(131, 13);
this.label41.TabIndex = 15;
this.label41.Text = "New ";
//
// shiningLevelTb
//
this.shiningLevelTb.BackColor = System.Drawing.Color.White;
this.shiningLevelTb.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.shiningLevelTb.Location = new System.Drawing.Point(89, 162);
this.shiningLevelTb.Name = "shiningLevelTb";
this.shiningLevelTb.ReadOnly = true;
this.shiningLevelTb.Size = new System.Drawing.Size(132, 20);
this.shiningLevelTb.TabIndex = 17;
//
// label28
//
this.label28.AutoSize = true;
this.label28.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label28.Location = new System.Drawing.Point(86, 144);
this.label28.Name = "label28";
this.label28.Size = new System.Drawing.Size(137, 13);
this.label28.TabIndex = 16;
this.label28.Text = "Current ";
//
// label77
//
this.label77.AutoSize = true;
this.label77.Location = new System.Drawing.Point(199, 68);
this.label77.Name = "label77";
this.label77.Size = new System.Drawing.Size(32, 13);
this.label77.TabIndex = 8;
this.label77.Text = "Gold:";
this.label77.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// shiningNewGoldTb
//
this.shiningNewGoldTb.Location = new System.Drawing.Point(407, 65);
this.shiningNewGoldTb.Name = "shiningNewGoldTb";
this.shiningNewGoldTb.Size = new System.Drawing.Size(130, 20);
this.shiningNewGoldTb.TabIndex = 12;
//
// label27
//
this.label27.AutoSize = true;
this.label27.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label27.Location = new System.Drawing.Point(404, 48);
this.label27.Name = "label27";
this.label27.Size = new System.Drawing.Size(134, 13);
this.label27.TabIndex = 9;
this.label27.Text = "New ";
//
// shiningCurGoldTb
//
this.shiningCurGoldTb.BackColor = System.Drawing.Color.White;
this.shiningCurGoldTb.Location = new System.Drawing.Point(237, 65);
this.shiningCurGoldTb.Name = "shiningCurGoldTb";
this.shiningCurGoldTb.ReadOnly = true;
this.shiningCurGoldTb.Size = new System.Drawing.Size(130, 20);
this.shiningCurGoldTb.TabIndex = 11;
//
// label26
//
this.label26.AutoSize = true;
this.label26.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label26.Location = new System.Drawing.Point(234, 48);
this.label26.Name = "label26";
this.label26.Size = new System.Drawing.Size(134, 13);
this.label26.TabIndex = 10;
this.label26.Text = "Current ";
//
// label43
//
this.label43.AutoSize = true;
this.label43.Location = new System.Drawing.Point(141, 102);
this.label43.Name = "label43";
this.label43.Size = new System.Drawing.Size(89, 13);
this.label43.TabIndex = 6;
this.label43.Text = "Select Character:";
this.label43.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// shiningCharacterCmb
//
this.shiningCharacterCmb.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.shiningCharacterCmb.FormattingEnabled = true;
this.shiningCharacterCmb.Location = new System.Drawing.Point(235, 99);
this.shiningCharacterCmb.Name = "shiningCharacterCmb";
this.shiningCharacterCmb.Size = new System.Drawing.Size(132, 21);
this.shiningCharacterCmb.TabIndex = 7;
this.shiningCharacterCmb.SelectedIndexChanged += new System.EventHandler(this.shiningCharacterCmb_SelectedIndexChanged);
//
// label2
//
this.label2.AutoSize = true;
this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label2.Location = new System.Drawing.Point(6, 6);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(200, 20);
this.label2.TabIndex = 1;
this.label2.Text = "Shining in the Darkness";
//
// shiningPic
//
this.shiningPic.Image = ((System.Drawing.Image)(resources.GetObject("shiningPic.Image")));
this.shiningPic.Location = new System.Drawing.Point(551, 3);
this.shiningPic.Name = "shiningPic";
this.shiningPic.Size = new System.Drawing.Size(143, 185);
this.shiningPic.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.shiningPic.TabIndex = 0;
this.shiningPic.TabStop = false;
//
// openFD
//
this.openFD.FileName = "openFD";
//
// MainForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(714, 571);
this.Controls.Add(this.shiningPanel);
this.Controls.Add(this.browseBtn);
this.Controls.Add(this.saveStateFileTb);
this.Controls.Add(this.label1);
this.Controls.Add(this.menuStrip1);
this.MainMenuStrip = this.menuStrip1;
this.Name = "MainForm";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Shining Save State Editor";
this.Load += new System.EventHandler(this.MainForm_Load);
this.menuStrip1.ResumeLayout(false);
this.menuStrip1.PerformLayout();
this.shiningPanel.ResumeLayout(false);
this.shiningPanel.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.shiningPic)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.MenuStrip menuStrip1;
private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem exitToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem gameToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem shiningInTheDarknessToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem helpToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem viewErrorLogToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem clearErrorLogToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem aboutToolStripMenuItem;
private System.Windows.Forms.Button browseBtn;
private System.Windows.Forms.TextBox saveStateFileTb;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Panel shiningPanel;
private System.Windows.Forms.PictureBox shiningPic;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label maxTPLbl;
private System.Windows.Forms.Label curTPLbl;
private System.Windows.Forms.Label label29;
private System.Windows.Forms.Label label78;
private System.Windows.Forms.TextBox shiningNewMaxMPTb;
private System.Windows.Forms.TextBox shiningNewCurMPTb;
private System.Windows.Forms.TextBox shiningNewMaxHPTb;
private System.Windows.Forms.TextBox shiningNewCurHPTb;
private System.Windows.Forms.TextBox shiningMaxMPTb;
private System.Windows.Forms.TextBox shiningCurMPTb;
private System.Windows.Forms.TextBox shiningMaxHPTb;
private System.Windows.Forms.TextBox shiningCurHPTb;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.Label label33;
private System.Windows.Forms.TextBox shiningNewExpTb;
private System.Windows.Forms.TextBox shiningExpTb;
private System.Windows.Forms.Label label40;
private System.Windows.Forms.Label label42;
private System.Windows.Forms.Label label41;
private System.Windows.Forms.TextBox shiningLevelTb;
private System.Windows.Forms.Label label28;
private System.Windows.Forms.Label label77;
private System.Windows.Forms.TextBox shiningNewGoldTb;
private System.Windows.Forms.Label label27;
private System.Windows.Forms.TextBox shiningCurGoldTb;
private System.Windows.Forms.Label label26;
private System.Windows.Forms.Label label43;
private System.Windows.Forms.ComboBox shiningCharacterCmb;
private System.Windows.Forms.Label label34;
private System.Windows.Forms.TextBox shiningNewIQTb;
private System.Windows.Forms.TextBox shiningIQTb;
private System.Windows.Forms.Label label39;
private System.Windows.Forms.Label label38;
private System.Windows.Forms.Label label36;
private System.Windows.Forms.Label label35;
private System.Windows.Forms.TextBox shiningNewAttackTb;
private System.Windows.Forms.TextBox shiningNewLuckTb;
private System.Windows.Forms.TextBox shiningDefTb;
private System.Windows.Forms.TextBox shiningAttackTb;
private System.Windows.Forms.TextBox shiningLuckTb;
private System.Windows.Forms.TextBox shiningSpeedTb;
private System.Windows.Forms.Button updSaveStateBtn;
private System.Windows.Forms.OpenFileDialog openFD;
}
}

715
ShiningEditor/MainForm.cs Normal file
View File

@ -0,0 +1,715 @@
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 System.IO;
namespace ShiningEditor
{
public partial class MainForm : Form
{
#region - Enums -
public enum AppPanel
{
All,
Shining,
None
}
#endregion
#region - Class Fields -
private bool fileLoaded;
private const string SHINING_GOLD_LOC = "3B1C";
private AppPanel activePanel;
#endregion
#region - Class Properties -
public bool FileLoaded
{
get { return fileLoaded; }
set { fileLoaded = value; }
}
public AppPanel ActivePanel
{
get { return activePanel; }
set { activePanel = value; }
}
#endregion
#region - Class Constructor -
public MainForm()
{
InitializeComponent();
}
#endregion
#region - Event Handlers -
private void MainForm_Load(object sender, EventArgs e)
{
ActivePanel = AppPanel.None;
ShowPanel(AppPanel.All, false);
FileLoaded = false;
}
private void exitToolStripMenuItem_Click(object sender, EventArgs e)
{
this.Close();
}
private void shiningInTheDarknessToolStripMenuItem_Click(object sender, EventArgs e)
{
ActivePanel = AppPanel.Shining;
saveStateFileTb.Text = string.Empty;
ResetShiningControls(true);
PopulateShiningCharacterList();
ShowPanel(AppPanel.Shining, true);
}
private void viewErrorLogToolStripMenuItem_Click(object sender, EventArgs e)
{
ErrorLogView errLogView = new ErrorLogView();
errLogView.ShowDialog();
}
private void clearErrorLogToolStripMenuItem_Click(object sender, EventArgs e)
{
ClearErrorLog();
}
private void aboutToolStripMenuItem_Click(object sender, EventArgs e)
{
AboutForm aboutForm = new AboutForm();
aboutForm.ShowDialog();
}
private void browseBtn_Click(object sender, EventArgs e)
{
string game = GetSelectedGameTitle();
if (game != string.Empty)
{
// Set the open file dialog properties
openFD.Title = "Select a " + game + " save state file";
openFD.InitialDirectory = System.Environment.GetFolderPath(Environment.SpecialFolder.Personal);
openFD.FileName = "";
// Show the open file dialog and capture the selected file
if (openFD.ShowDialog() != DialogResult.Cancel)
{
saveStateFileTb.Text = openFD.FileName;
FileLoaded = true;
switch (ActivePanel)
{
case AppPanel.Shining:
PopulateShiningCurrentGold();
break;
// Add cases here
}
}
else
saveStateFileTb.Text = "";
}
else
MessageBox.Show("You must first select a Phantasy Star game from the menu so the correct game data is loaded.", "Warning!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
private void shiningCharacterCmb_SelectedIndexChanged(object sender, EventArgs e)
{
if (shiningCharacterCmb.SelectedIndex >= 0)
{
if (FileLoaded)
{
PopulateShiningCharacterDetails(shiningCharacterCmb.SelectedItem as ShiningCharacterItem);
}
else
{
MessageBox.Show("You must load a save state file before you can view character data.", "Warning!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
}
private void updSaveStateBtn_Click(object sender, EventArgs e)
{
UpdateShiningSaveState();
}
#endregion
#region - Private Methods -
private void ShowPanel(AppPanel panel, bool show)
{
switch (panel)
{
case AppPanel.All:
shiningPanel.Visible = show;
break;
case AppPanel.Shining:
shiningPanel.Visible = show;
if (show)
{
// Add here
}
break;
// Add other cases here
}
}
private void ShowControl(TextBox control, bool show)
{
control.Visible = show;
}
private void ResetShiningControls(bool resetCharacterList)
{
if (resetCharacterList)
{
shiningCharacterCmb.SelectedIndex = -1;
}
shiningCurGoldTb.Text = string.Empty;
shiningNewGoldTb.Text = string.Empty;
shiningLevelTb.Text = string.Empty;
shiningExpTb.Text = string.Empty;
shiningNewExpTb.Text = string.Empty;
shiningCurHPTb.Text = string.Empty;
shiningNewCurHPTb.Text = string.Empty;
shiningMaxHPTb.Text = string.Empty;
shiningNewMaxHPTb.Text = string.Empty;
shiningCurMPTb.Text = string.Empty;
shiningNewCurMPTb.Text = string.Empty;
shiningMaxMPTb.Text = string.Empty;
shiningNewMaxMPTb.Text = string.Empty;
shiningIQTb.Text = string.Empty;
shiningNewIQTb.Text = string.Empty;
shiningSpeedTb.Text = string.Empty;
shiningLuckTb.Text = string.Empty;
shiningNewLuckTb.Text = string.Empty;
shiningAttackTb.Text = string.Empty;
shiningNewAttackTb.Text = string.Empty;
shiningDefTb.Text = string.Empty;
}
private void PopulateShiningCharacterList()
{
shiningCharacterCmb.Items.Clear();
ShiningCharacterItem hiroItem = new ShiningCharacterItem("Hiro",
"3B50",
"3B56",
"3B20",
"3B2C",
"3B26",
"3B32",
"3B4A",
"398A",
"3990",
"3B38",
"3978");
shiningCharacterCmb.Items.Add(hiroItem);
ShiningCharacterItem miloItem = new ShiningCharacterItem("Milo",
"3B52",
"3B5A",
"3B22",
"3B2E",
"3B28",
"3B34",
"3B4C",
"398C",
"3992",
"3B3A",
"397A");
shiningCharacterCmb.Items.Add(miloItem);
ShiningCharacterItem pyraItem = new ShiningCharacterItem("Pyra",
"3B54",
"3B5E",
"3B24",
"3B30",
"3B2A",
"3B36",
"3B4E",
"398E",
"3994",
"3B3C",
"397C");
shiningCharacterCmb.Items.Add(pyraItem);
shiningCharacterCmb.DisplayMember = "Name";
}
private string GetSelectedGameTitle()
{
string game = string.Empty;
switch (ActivePanel)
{
case AppPanel.Shining:
game = "Shining in the Darkness";
break;
// Add cases here
}
return game;
}
private string GetShiningCurrentGold()
{
string hexVal = GetValueByOffset(SHINING_GOLD_LOC, 4);
long gold = long.Parse(hexVal, System.Globalization.NumberStyles.HexNumber);
return gold.ToString();
}
private void PopulateShiningCurrentGold()
{
shiningCurGoldTb.Text = GetShiningCurrentGold();
}
private void PopulateShiningCharacterDetails(ShiningCharacterItem charItem)
{
string value = GetValueByOffset(charItem.LevelLoc, 2);
long val = long.Parse(value, System.Globalization.NumberStyles.HexNumber);
shiningLevelTb.Text = val.ToString();
value = GetValueByOffset(charItem.ExpLoc, 4);
val = long.Parse(value, System.Globalization.NumberStyles.HexNumber);
shiningExpTb.Text = val.ToString();
value = GetValueByOffset(charItem.CurHPLoc, 2);
val = long.Parse(value, System.Globalization.NumberStyles.HexNumber);
shiningCurHPTb.Text = val.ToString();
value = GetValueByOffset(charItem.MaxHPLoc, 2);
val = long.Parse(value, System.Globalization.NumberStyles.HexNumber);
shiningMaxHPTb.Text = val.ToString();
if (charItem.Name != "Hiro")
{
ShowControl(shiningNewCurMPTb, true);
ShowControl(shiningNewMaxMPTb, true);
value = GetValueByOffset(charItem.CurMPLoc, 2);
val = long.Parse(value, System.Globalization.NumberStyles.HexNumber);
shiningCurMPTb.Text = val.ToString();
value = GetValueByOffset(charItem.MaxMPLoc, 2);
val = long.Parse(value, System.Globalization.NumberStyles.HexNumber);
shiningMaxMPTb.Text = val.ToString();
}
else
{
ShowControl(shiningNewCurMPTb, false);
ShowControl(shiningNewMaxMPTb, false);
}
value = GetValueByOffset(charItem.IQLoc, 2);
val = long.Parse(value, System.Globalization.NumberStyles.HexNumber);
shiningIQTb.Text = val.ToString();
value = GetValueByOffset(charItem.SpeedLoc, 2);
val = long.Parse(value, System.Globalization.NumberStyles.HexNumber);
shiningSpeedTb.Text = val.ToString();
value = GetValueByOffset(charItem.LuckLoc, 2);
val = long.Parse(value, System.Globalization.NumberStyles.HexNumber);
shiningLuckTb.Text = val.ToString();
value = GetValueByOffset(charItem.AttackLoc, 2);
val = long.Parse(value, System.Globalization.NumberStyles.HexNumber);
shiningAttackTb.Text = val.ToString();
value = GetValueByOffset(charItem.DefLoc, 2);
val = long.Parse(value, System.Globalization.NumberStyles.HexNumber);
shiningDefTb.Text = val.ToString();
}
private void LogError(string errMsg)
{
// Create a write and open the file
string filePath = Path.GetDirectoryName(System.Windows.Forms.Application.ExecutablePath);
filePath += @"\errorlog.txt";
TextWriter writer = new StreamWriter(filePath, true);
// Write the error message to the error log
writer.WriteLine(errMsg + " Added: " + DateTime.Now.ToString());
// Close the stream
writer.Close();
}
private void ClearErrorLog()
{
// Create the file path
string filePath = Path.GetDirectoryName(System.Windows.Forms.Application.ExecutablePath);
filePath += @"\errorlog.txt";
string errMessage = string.Empty;
// Delete the file
try
{
File.Delete(filePath);
MessageBox.Show("The error log has been cleared.", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
catch (IOException ioE)
{
errMessage = ioE.Message + " Occurred during call to ClearErroLog().";
MessageBox.Show(errMessage, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
catch (UnauthorizedAccessException uaE)
{
errMessage = uaE.Message + " Occurred during call to ClearErroLog().";
MessageBox.Show(errMessage, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
catch (Exception e)
{
errMessage = e.Message + " Occurred during call to ClearErroLog().";
MessageBox.Show(errMessage, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private string GetValueByOffset(string offset, int bytesToRead)
{
string value = string.Empty;
BinaryReader reader = null;
try
{
reader = new BinaryReader(new FileStream(saveStateFileTb.Text, FileMode.Open));
// Set the position of the reader by the offset
reader.BaseStream.Position = long.Parse(offset, System.Globalization.NumberStyles.HexNumber);
// Read the offset
value = BitConverter.ToString(reader.ReadBytes(bytesToRead)).Replace("-", null);
}
catch (IOException ioe)
{
LogError(ioe.Message + " Occurred when attempting to read a value by its offset.");
}
catch (ArgumentException aue)
{
LogError(aue.Message + " Occurred when attempting to read a value by its offset.");
}
catch (Exception e)
{
LogError(e.Message + " Occurred when attempting to read a value by its offset.");
}
finally
{
reader.Close();
reader.Dispose();
}
return value;
}
private bool SetValueByOffset(string value, string offset)
{
bool success = false;
BinaryWriter writer = null;
try
{
writer = new BinaryWriter(new FileStream(saveStateFileTb.Text, FileMode.Open));
writer.BaseStream.Position = long.Parse(offset, System.Globalization.NumberStyles.HexNumber);
int valNum = Convert.ToInt32(value);
byte[] bytes = BitConverter.GetBytes(valNum).Reverse().ToArray();
writer.Write(bytes);
success = true;
}
catch (IOException ioe)
{
LogError(ioe.Message + " Occurred while attempting to write a value to the save state file.");
success = false;
}
catch (ArgumentException aue)
{
LogError(aue.Message + " Occurred while attempting to write a value to the save state file.");
success = false;
}
catch (Exception e)
{
LogError(e.Message + " Occurred while attempting to write a value to the save state file.");
success = false;
}
finally
{
writer.Close();
writer.Dispose();
}
return success;
}
private bool SetValueByOffset(long value, string offset)
{
bool success = false;
BinaryWriter writer = null;
try
{
writer = new BinaryWriter(new FileStream(saveStateFileTb.Text, FileMode.Open));
writer.BaseStream.Position = long.Parse(offset, System.Globalization.NumberStyles.HexNumber);
byte[] bytes = BitConverter.GetBytes(value).Reverse().ToArray();
writer.Write(bytes);
success = true;
}
catch (IOException ioe)
{
LogError(ioe.Message + " Occurred while attempting to write a value to the save state file.");
success = false;
}
catch (ArgumentException aue)
{
LogError(aue.Message + " Occurred while attempting to write a value to the save state file.");
success = false;
}
catch (Exception e)
{
LogError(e.Message + " Occurred while attempting to write a value to the save state file.");
success = false;
}
finally
{
writer.Close();
writer.Dispose();
}
return success;
}
private bool SetValueByOffset(int value, string offset)
{
bool success = false;
BinaryWriter writer = null;
try
{
writer = new BinaryWriter(new FileStream(saveStateFileTb.Text, FileMode.Open));
writer.BaseStream.Position = long.Parse(offset, System.Globalization.NumberStyles.HexNumber);
byte[] bytes = BitConverter.GetBytes(value).Reverse().ToArray();
writer.Write(bytes);
success = true;
}
catch (IOException ioe)
{
LogError(ioe.Message + " Occurred while attempting to write a value to the save state file.");
success = false;
}
catch (ArgumentException aue)
{
LogError(aue.Message + " Occurred while attempting to write a value to the save state file.");
success = false;
}
catch (Exception e)
{
LogError(e.Message + " Occurred while attempting to write a value to the save state file.");
success = false;
}
finally
{
writer.Close();
writer.Dispose();
}
return success;
}
private bool SetValueByOffset(short value, string offset)
{
bool success = false;
BinaryWriter writer = null;
try
{
writer = new BinaryWriter(new FileStream(saveStateFileTb.Text, FileMode.Open));
writer.BaseStream.Position = long.Parse(offset, System.Globalization.NumberStyles.HexNumber);
byte[] bytes = BitConverter.GetBytes(value).Reverse().ToArray();
writer.Write(bytes);
success = true;
}
catch (IOException ioe)
{
LogError(ioe.Message + " Occurred while attempting to write a value to the save state file.");
success = false;
}
catch (ArgumentException aue)
{
LogError(aue.Message + " Occurred while attempting to write a value to the save state file.");
success = false;
}
catch (Exception e)
{
LogError(e.Message + " Occurred while attempting to write a value to the save state file.");
success = false;
}
finally
{
writer.Close();
writer.Dispose();
}
return success;
}
private bool SetValueByOffset(byte value, string offset)
{
bool success = false;
BinaryWriter writer = null;
try
{
writer = new BinaryWriter(new FileStream(saveStateFileTb.Text, FileMode.Open));
writer.BaseStream.Position = long.Parse(offset, System.Globalization.NumberStyles.HexNumber);
writer.Write(value);
success = true;
}
catch (IOException ioe)
{
LogError(ioe.Message + " Occurred while attempting to write a value to the save state file.");
success = false;
}
catch (ArgumentException aue)
{
LogError(aue.Message + " Occurred while attempting to write a value to the save state file.");
success = false;
}
catch (Exception e)
{
LogError(e.Message + " Occurred while attempting to write a value to the save state file.");
success = false;
}
finally
{
writer.Close();
writer.Dispose();
}
return success;
}
private void UpdateShiningSaveState()
{
ShiningCharacterItem charItem = shiningCharacterCmb.SelectedItem as ShiningCharacterItem;
if (shiningNewGoldTb.Text != string.Empty)
{
int meseta = 0;
if (int.TryParse(shiningNewGoldTb.Text, out meseta))
{
SetValueByOffset(meseta, SHINING_GOLD_LOC);
}
else
{
MessageBox.Show("You must enter a numeric value for the new gold value.", "Warning!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
if (shiningNewExpTb.Text != string.Empty)
{
int exp = 0;
if (int.TryParse(shiningNewExpTb.Text, out exp))
{
SetValueByOffset(exp, charItem.ExpLoc);
}
else
{
MessageBox.Show("You must enter a numeric value for the new experience value.", "Warning!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
if (shiningNewCurHPTb.Text != string.Empty)
{
short hp = 0;
if (short.TryParse(shiningNewCurHPTb.Text, out hp))
{
SetValueByOffset(hp, charItem.CurHPLoc);
}
else
{
MessageBox.Show("You must enter a numeric value for the new current HP value.", "Warning!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
if (shiningNewMaxHPTb.Text != string.Empty)
{
short hp = 0;
if (short.TryParse(shiningNewMaxHPTb.Text, out hp))
{
SetValueByOffset(hp, charItem.MaxHPLoc);
}
else
{
MessageBox.Show("You must enter a numeric value for the new max HP value.", "Warning!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
if (shiningNewCurMPTb.Text != string.Empty)
{
short tp = 0;
if (short.TryParse(shiningNewCurMPTb.Text, out tp))
{
SetValueByOffset(tp, charItem.CurMPLoc);
}
else
{
MessageBox.Show("You must enter a numeric value for the new current MP value.", "Warning!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
if (shiningNewMaxMPTb.Text != string.Empty)
{
short tp = 0;
if (short.TryParse(shiningNewMaxMPTb.Text, out tp))
{
SetValueByOffset(tp, charItem.MaxMPLoc);
}
else
{
MessageBox.Show("You must enter a numeric value for the new max MP value.", "Warning!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
if (shiningNewIQTb.Text != string.Empty)
{
short str = 0;
if (short.TryParse(shiningNewIQTb.Text, out str))
{
SetValueByOffset(str, charItem.IQLoc);
}
else
{
MessageBox.Show("You must enter a numeric value for the new IQ value.", "Warning!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
if (shiningNewLuckTb.Text != string.Empty)
{
short str = 0;
if (short.TryParse(shiningNewLuckTb.Text, out str))
{
SetValueByOffset(str, charItem.LuckLoc);
}
else
{
MessageBox.Show("You must enter a numeric value for the new luck value.", "Warning!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
if (shiningNewAttackTb.Text != string.Empty)
{
short str = 0;
if (short.TryParse(shiningNewAttackTb.Text, out str))
{
SetValueByOffset(str, charItem.AttackLoc);
}
else
{
MessageBox.Show("You must enter a numeric value for the new attack value.", "Warning!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
MessageBox.Show("The save state update process has completed.", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
ResetShiningControls(false);
PopulateShiningCurrentGold();
PopulateShiningCharacterDetails(charItem);
}
#endregion
}
}

507
ShiningEditor/MainForm.resx Normal file
View File

@ -0,0 +1,507 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>111, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="shiningPic.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
xAuBiJeOzInAI646UfpjlOtxjobb74nM4z//2Q==
</value>
</data>
<metadata name="openFD.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>

22
ShiningEditor/Program.cs Normal file
View File

@ -0,0 +1,22 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace ShiningEditor
{
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new MainForm());
}
}
}

View 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("ShiningEditor")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("ShiningEditor")]
[assembly: AssemblyCopyright("Copyright © 2016")]
[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("47666678-6bf3-46d9-831b-23c0a98ba796")]
// 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")]

View 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 ShiningEditor.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("ShiningEditor.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;
}
}
}
}

View 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>

View 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 ShiningEditor.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;
}
}
}
}

View 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>

View File

@ -0,0 +1,113 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ShiningEditor
{
public class ShiningCharacterItem
{
#region - Class Fields -
private string name;
private string levelLoc;
private string expLoc;
private string curHPLoc;
private string maxHPLoc;
private string curMPLoc;
private string maxMPLoc;
private string iqLoc;
private string speedLoc;
private string luckLoc;
private string attackLoc;
private string defLoc;
#endregion
#region - Class Properties -
public string Name
{
get { return name; }
set { name = value; }
}
public string LevelLoc
{
get { return levelLoc; }
set { levelLoc = value; }
}
public string ExpLoc
{
get { return expLoc; }
set { expLoc = value; }
}
public string CurHPLoc
{
get { return curHPLoc; }
set { curHPLoc = value; }
}
public string MaxHPLoc
{
get { return maxHPLoc; }
set { maxHPLoc = value; }
}
public string CurMPLoc
{
get { return curMPLoc; }
set { curMPLoc = value; }
}
public string MaxMPLoc
{
get { return maxMPLoc; }
set { maxMPLoc = value; }
}
public string IQLoc
{
get { return iqLoc; }
set { iqLoc = value; }
}
public string SpeedLoc
{
get { return speedLoc; }
set { speedLoc = value; }
}
public string LuckLoc
{
get { return luckLoc; }
set { luckLoc = value; }
}
public string AttackLoc
{
get { return attackLoc; }
set { attackLoc = value; }
}
public string DefLoc
{
get { return defLoc; }
set { defLoc = value; }
}
#endregion
#region - Class Constructors -
public ShiningCharacterItem(string name, string levelLoc, string expLoc, string curHPLoc, string maxHPLoc, string curMPLoc, string maxMPLoc, string iqLoc, string speedLoc, string luckLoc, string attackLoc, string defLoc)
{
Name = name;
LevelLoc = levelLoc;
ExpLoc = expLoc;
CurHPLoc = curHPLoc;
MaxHPLoc = maxHPLoc;
CurMPLoc = curMPLoc;
MaxMPLoc = maxMPLoc;
IQLoc = iqLoc;
SpeedLoc = speedLoc;
LuckLoc = luckLoc;
AttackLoc = attackLoc;
DefLoc = defLoc;
}
public ShiningCharacterItem()
: this(string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty)
{
}
#endregion
}
}

View File

@ -0,0 +1,107 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" 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>{A989E911-FC45-4495-B80B-7A344F5A6B53}</ProjectGuid>
<OutputType>WinExe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>ShiningEditor</RootNamespace>
<AssemblyName>ShiningEditor</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</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="System" />
<Reference Include="System.Core" />
<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.Windows.Forms" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="AboutForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="AboutForm.Designer.cs">
<DependentUpon>AboutForm.cs</DependentUpon>
</Compile>
<Compile Include="ErrorLogView.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="ErrorLogView.Designer.cs">
<DependentUpon>ErrorLogView.cs</DependentUpon>
</Compile>
<Compile Include="MainForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="MainForm.Designer.cs">
<DependentUpon>MainForm.cs</DependentUpon>
</Compile>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="ShiningCharacterItem.cs" />
<EmbeddedResource Include="AboutForm.resx">
<DependentUpon>AboutForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="ErrorLogView.resx">
<DependentUpon>ErrorLogView.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="MainForm.resx">
<DependentUpon>MainForm.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="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" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

BIN
ShiningEditor/Sitdlogo.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
</configuration>

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
</configuration>

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<requestedExecutionLevel level="asInvoker" uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>

Binary file not shown.

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
</configuration>

Binary file not shown.

View File

@ -0,0 +1 @@
dc49526bb4d34ea59b64f9ba7ff96d14c01bfd28

View File

@ -0,0 +1,10 @@
c:\users\lamin\documents\visual studio 2012\Projects\ShiningEditor\ShiningEditor\bin\Debug\ShiningEditor.exe.config
c:\users\lamin\documents\visual studio 2012\Projects\ShiningEditor\ShiningEditor\bin\Debug\ShiningEditor.exe
c:\users\lamin\documents\visual studio 2012\Projects\ShiningEditor\ShiningEditor\bin\Debug\ShiningEditor.pdb
c:\users\lamin\documents\visual studio 2012\Projects\ShiningEditor\ShiningEditor\obj\Debug\ShiningEditor.MainForm.resources
c:\users\lamin\documents\visual studio 2012\Projects\ShiningEditor\ShiningEditor\obj\Debug\ShiningEditor.Properties.Resources.resources
c:\users\lamin\documents\visual studio 2012\Projects\ShiningEditor\ShiningEditor\obj\Debug\ShiningEditor.csproj.GenerateResource.Cache
c:\users\lamin\documents\visual studio 2012\Projects\ShiningEditor\ShiningEditor\obj\Debug\ShiningEditor.exe
c:\users\lamin\documents\visual studio 2012\Projects\ShiningEditor\ShiningEditor\obj\Debug\ShiningEditor.pdb
c:\users\lamin\documents\visual studio 2012\Projects\ShiningEditor\ShiningEditor\obj\Debug\ShiningEditor.ErrorLogView.resources
C:\Users\lamin\documents\visual studio 2012\Projects\ShiningEditor\ShiningEditor\obj\Debug\ShiningEditor.AboutForm.resources

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1 @@
dc49526bb4d34ea59b64f9ba7ff96d14c01bfd28

View File

@ -0,0 +1,10 @@
C:\Users\lamin\Documents\Visual Studio 2012\Projects\ShiningEditor\ShiningEditor\bin\Release\ShiningEditor.exe.config
C:\Users\lamin\Documents\Visual Studio 2012\Projects\ShiningEditor\ShiningEditor\bin\Release\ShiningEditor.exe
C:\Users\lamin\Documents\Visual Studio 2012\Projects\ShiningEditor\ShiningEditor\bin\Release\ShiningEditor.pdb
C:\Users\lamin\Documents\Visual Studio 2012\Projects\ShiningEditor\ShiningEditor\obj\Release\ShiningEditor.AboutForm.resources
C:\Users\lamin\Documents\Visual Studio 2012\Projects\ShiningEditor\ShiningEditor\obj\Release\ShiningEditor.ErrorLogView.resources
C:\Users\lamin\Documents\Visual Studio 2012\Projects\ShiningEditor\ShiningEditor\obj\Release\ShiningEditor.MainForm.resources
C:\Users\lamin\Documents\Visual Studio 2012\Projects\ShiningEditor\ShiningEditor\obj\Release\ShiningEditor.Properties.Resources.resources
C:\Users\lamin\Documents\Visual Studio 2012\Projects\ShiningEditor\ShiningEditor\obj\Release\ShiningEditor.csproj.GenerateResource.Cache
C:\Users\lamin\Documents\Visual Studio 2012\Projects\ShiningEditor\ShiningEditor\obj\Release\ShiningEditor.exe
C:\Users\lamin\Documents\Visual Studio 2012\Projects\ShiningEditor\ShiningEditor\obj\Release\ShiningEditor.pdb

Binary file not shown.

Binary file not shown.

BIN
ShiningEditorSetup.msi Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,711 @@
"DeployProject"
{
"VSVersion" = "3:800"
"ProjectType" = "8:{978C614F-708E-4E1A-B201-565925725DBA}"
"IsWebType" = "8:FALSE"
"ProjectName" = "8:ShiningEditorSetup"
"LanguageId" = "3:1033"
"CodePage" = "3:1252"
"UILanguageId" = "3:1033"
"SccProjectName" = "8:"
"SccLocalPath" = "8:"
"SccAuxPath" = "8:"
"SccProvider" = "8:"
"Hierarchy"
{
"Entry"
{
"MsmKey" = "8:_539B49BF858749A4BC884962B12B60BA"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
"MsmKey" = "8:_UNDEFINED"
"OwnerKey" = "8:_539B49BF858749A4BC884962B12B60BA"
"MsmSig" = "8:_UNDEFINED"
}
}
"Configurations"
{
"Debug"
{
"DisplayName" = "8:Debug"
"IsDebugOnly" = "11:TRUE"
"IsReleaseOnly" = "11:FALSE"
"OutputFilename" = "8:Debug\\ShiningEditorSetup.msi"
"PackageFilesAs" = "3:2"
"PackageFileSize" = "3:-2147483648"
"CabType" = "3:1"
"Compression" = "3:2"
"SignOutput" = "11:FALSE"
"CertificateFile" = "8:"
"PrivateKeyFile" = "8:"
"TimeStampServer" = "8:"
"InstallerBootstrapper" = "3:2"
}
"Release"
{
"DisplayName" = "8:Release"
"IsDebugOnly" = "11:FALSE"
"IsReleaseOnly" = "11:TRUE"
"OutputFilename" = "8:Release\\ShiningEditorSetup.msi"
"PackageFilesAs" = "3:2"
"PackageFileSize" = "3:-2147483648"
"CabType" = "3:1"
"Compression" = "3:2"
"SignOutput" = "11:FALSE"
"CertificateFile" = "8:"
"PrivateKeyFile" = "8:"
"TimeStampServer" = "8:"
"InstallerBootstrapper" = "3:2"
}
}
"Deployable"
{
"CustomAction"
{
}
"DefaultFeature"
{
"Name" = "8:DefaultFeature"
"Title" = "8:"
"Description" = "8:"
}
"ExternalPersistence"
{
"LaunchCondition"
{
"{A06ECF26-33A3-4562-8140-9B0E340D4F24}:_FF0B51D446B9428E886AB15775AF59D3"
{
"Name" = "8:.NET Framework"
"Message" = "8:[VSDNETMSG]"
"FrameworkVersion" = "8:.NETFramework,Version=v4.6.1"
"AllowLaterVersions" = "11:FALSE"
"InstallUrl" = "8:http://go.microsoft.com/fwlink/?LinkId=671728"
}
}
}
"File"
{
}
"FileType"
{
}
"Folder"
{
"{1525181F-901A-416C-8A58-119130FE478E}:_607C762D6BDC4860948675443DCA9526"
{
"Name" = "8:#1919"
"AlwaysCreate" = "11:FALSE"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Property" = "8:ProgramMenuFolder"
"Folders"
{
}
}
"{3C67513D-01DD-4637-8A68-80971EB9504F}:_EB34D8CCA4CB4A9498AE801D9D44D0D5"
{
"DefaultLocation" = "8:[ProgramFilesFolder][Manufacturer]\\[ProductName]"
"Name" = "8:#1925"
"AlwaysCreate" = "11:FALSE"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Property" = "8:TARGETDIR"
"Folders"
{
}
}
"{1525181F-901A-416C-8A58-119130FE478E}:_EE0B60D236594D2FA64065DAF08E4D07"
{
"Name" = "8:#1916"
"AlwaysCreate" = "11:FALSE"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Property" = "8:DesktopFolder"
"Folders"
{
}
}
}
"LaunchCondition"
{
}
"Locator"
{
}
"MsiBootstrapper"
{
"LangId" = "3:1033"
"RequiresElevation" = "11:FALSE"
}
"Product"
{
"Name" = "8:Microsoft Visual Studio"
"ProductName" = "8:ShiningEditorSetup"
"ProductCode" = "8:{0CF33220-42CE-48A7-A4EA-53E3AF1DEAEA}"
"PackageCode" = "8:{01748095-82FD-4FAF-B843-79368E988891}"
"UpgradeCode" = "8:{B7B37570-EDA3-4D2B-8507-A799C0C48F35}"
"AspNetVersion" = "8:4.0.30319.0"
"RestartWWWService" = "11:FALSE"
"RemovePreviousVersions" = "11:FALSE"
"DetectNewerInstalledVersion" = "11:TRUE"
"InstallAllUsers" = "11:FALSE"
"ProductVersion" = "8:1.0.0"
"Manufacturer" = "8:JWalkers"
"ARPHELPTELEPHONE" = "8:"
"ARPHELPLINK" = "8:"
"Title" = "8:ShiningEditorSetup"
"Subject" = "8:"
"ARPCONTACT" = "8:Fuindin"
"Keywords" = "8:"
"ARPCOMMENTS" = "8:"
"ARPURLINFOABOUT" = "8:"
"ARPPRODUCTICON" = "8:"
"ARPIconIndex" = "3:0"
"SearchPath" = "8:"
"UseSystemSearchPath" = "11:TRUE"
"TargetPlatform" = "3:0"
"PreBuildEvent" = "8:"
"PostBuildEvent" = "8:"
"RunPostBuildEvent" = "3:0"
}
"Registry"
{
"HKLM"
{
"Keys"
{
"{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_B1A4BD0D03A347BEB2A72257E99F2C88"
{
"Name" = "8:Software"
"Condition" = "8:"
"AlwaysCreate" = "11:FALSE"
"DeleteAtUninstall" = "11:FALSE"
"Transitive" = "11:FALSE"
"Keys"
{
"{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_1CC90A12FE17460CB901C4ACF717A57A"
{
"Name" = "8:[Manufacturer]"
"Condition" = "8:"
"AlwaysCreate" = "11:FALSE"
"DeleteAtUninstall" = "11:FALSE"
"Transitive" = "11:FALSE"
"Keys"
{
}
"Values"
{
}
}
}
"Values"
{
}
}
}
}
"HKCU"
{
"Keys"
{
"{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_9CD709D1C0CD45EBB252A0F59D1F2757"
{
"Name" = "8:Software"
"Condition" = "8:"
"AlwaysCreate" = "11:FALSE"
"DeleteAtUninstall" = "11:FALSE"
"Transitive" = "11:FALSE"
"Keys"
{
"{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_0BADEDFDBF7D4410AF051DEEE5C5E7C2"
{
"Name" = "8:[Manufacturer]"
"Condition" = "8:"
"AlwaysCreate" = "11:FALSE"
"DeleteAtUninstall" = "11:FALSE"
"Transitive" = "11:FALSE"
"Keys"
{
}
"Values"
{
}
}
}
"Values"
{
}
}
}
}
"HKCR"
{
"Keys"
{
}
}
"HKU"
{
"Keys"
{
}
}
"HKPU"
{
"Keys"
{
}
}
}
"Sequences"
{
}
"Shortcut"
{
"{970C0BB2-C7D0-45D7-ABFA-7EC378858BC0}:_AB0CA3F3331A464DB3A4956CFED33B79"
{
"Name" = "8:ShiningEditor"
"Arguments" = "8:"
"Description" = "8:"
"ShowCmd" = "3:1"
"IconIndex" = "3:0"
"Transitive" = "11:FALSE"
"Target" = "8:_539B49BF858749A4BC884962B12B60BA"
"Folder" = "8:_607C762D6BDC4860948675443DCA9526"
"WorkingFolder" = "8:_EB34D8CCA4CB4A9498AE801D9D44D0D5"
"Icon" = "8:"
"Feature" = "8:"
}
}
"UserInterface"
{
"{DF760B10-853B-4699-99F2-AFF7185B4A62}:_01D81DA22FE542B0B69F9AB283514182"
{
"Name" = "8:#1901"
"Sequence" = "3:1"
"Attributes" = "3:2"
"Dialogs"
{
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_53DEF766A0234D3DA2F647D1C33E89F9"
{
"Sequence" = "3:100"
"DisplayName" = "8:Progress"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdProgressDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
"ShowProgress"
{
"Name" = "8:ShowProgress"
"DisplayName" = "8:#1009"
"Description" = "8:#1109"
"Type" = "3:5"
"ContextData" = "8:1;True=1;False=0"
"Attributes" = "3:0"
"Setting" = "3:0"
"Value" = "3:1"
"DefaultValue" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
}
}
}
}
"{DF760B10-853B-4699-99F2-AFF7185B4A62}:_04EACFDEAA964CD38C24A014BC5AA779"
{
"Name" = "8:#1901"
"Sequence" = "3:2"
"Attributes" = "3:2"
"Dialogs"
{
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_8529B238C02540A6882A7CEEFBC3CA18"
{
"Sequence" = "3:100"
"DisplayName" = "8:Progress"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdAdminProgressDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
"ShowProgress"
{
"Name" = "8:ShowProgress"
"DisplayName" = "8:#1009"
"Description" = "8:#1109"
"Type" = "3:5"
"ContextData" = "8:1;True=1;False=0"
"Attributes" = "3:0"
"Setting" = "3:0"
"Value" = "3:1"
"DefaultValue" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
}
}
}
}
"{DF760B10-853B-4699-99F2-AFF7185B4A62}:_1D2DEF1A6C274A44B32814BF5CC831B1"
{
"Name" = "8:#1902"
"Sequence" = "3:1"
"Attributes" = "3:3"
"Dialogs"
{
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_6A10A14207164D1EA59E1E7131286DFD"
{
"Sequence" = "3:100"
"DisplayName" = "8:Finished"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdFinishedDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
"UpdateText"
{
"Name" = "8:UpdateText"
"DisplayName" = "8:#1058"
"Description" = "8:#1158"
"Type" = "3:15"
"ContextData" = "8:"
"Attributes" = "3:0"
"Setting" = "3:1"
"Value" = "8:#1258"
"DefaultValue" = "8:#1258"
"UsePlugInResources" = "11:TRUE"
}
}
}
}
}
"{2479F3F5-0309-486D-8047-8187E2CE5BA0}:_78B48B7FBA154DB189D497C845B51A68"
{
"UseDynamicProperties" = "11:FALSE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdUserInterface.wim"
}
"{2479F3F5-0309-486D-8047-8187E2CE5BA0}:_8536F9D029C54EB1B7103A2E0867A77C"
{
"UseDynamicProperties" = "11:FALSE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdBasicDialogs.wim"
}
"{DF760B10-853B-4699-99F2-AFF7185B4A62}:_8B21E8A66DCF4DB1940E5F79B174D26F"
{
"Name" = "8:#1900"
"Sequence" = "3:1"
"Attributes" = "3:1"
"Dialogs"
{
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_1B8A33821F494C2796F86440EF37CF7C"
{
"Sequence" = "3:100"
"DisplayName" = "8:Welcome"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdWelcomeDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
"CopyrightWarning"
{
"Name" = "8:CopyrightWarning"
"DisplayName" = "8:#1002"
"Description" = "8:#1102"
"Type" = "3:3"
"ContextData" = "8:"
"Attributes" = "3:0"
"Setting" = "3:1"
"Value" = "8:#1202"
"DefaultValue" = "8:#1202"
"UsePlugInResources" = "11:TRUE"
}
"Welcome"
{
"Name" = "8:Welcome"
"DisplayName" = "8:#1003"
"Description" = "8:#1103"
"Type" = "3:3"
"ContextData" = "8:"
"Attributes" = "3:0"
"Setting" = "3:1"
"Value" = "8:#1203"
"DefaultValue" = "8:#1203"
"UsePlugInResources" = "11:TRUE"
}
}
}
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_24A71964F7E8400AAF12394D7D7AE011"
{
"Sequence" = "3:300"
"DisplayName" = "8:Confirm Installation"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdConfirmDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
}
}
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_9F8A31268A174ED0B0A172690DF824BB"
{
"Sequence" = "3:200"
"DisplayName" = "8:Installation Folder"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdFolderDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
"InstallAllUsersVisible"
{
"Name" = "8:InstallAllUsersVisible"
"DisplayName" = "8:#1059"
"Description" = "8:#1159"
"Type" = "3:5"
"ContextData" = "8:1;True=1;False=0"
"Attributes" = "3:0"
"Setting" = "3:0"
"Value" = "3:1"
"DefaultValue" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
}
}
}
}
"{DF760B10-853B-4699-99F2-AFF7185B4A62}:_A0E407861F364309A12E138FCEFB693C"
{
"Name" = "8:#1900"
"Sequence" = "3:2"
"Attributes" = "3:1"
"Dialogs"
{
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_417B7E66819C48D19E564AB847314EDC"
{
"Sequence" = "3:100"
"DisplayName" = "8:Welcome"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdAdminWelcomeDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
"CopyrightWarning"
{
"Name" = "8:CopyrightWarning"
"DisplayName" = "8:#1002"
"Description" = "8:#1102"
"Type" = "3:3"
"ContextData" = "8:"
"Attributes" = "3:0"
"Setting" = "3:1"
"Value" = "8:#1202"
"DefaultValue" = "8:#1202"
"UsePlugInResources" = "11:TRUE"
}
"Welcome"
{
"Name" = "8:Welcome"
"DisplayName" = "8:#1003"
"Description" = "8:#1103"
"Type" = "3:3"
"ContextData" = "8:"
"Attributes" = "3:0"
"Setting" = "3:1"
"Value" = "8:#1203"
"DefaultValue" = "8:#1203"
"UsePlugInResources" = "11:TRUE"
}
}
}
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_8751EEE21F254EA9951FE86762FA02C9"
{
"Sequence" = "3:200"
"DisplayName" = "8:Installation Folder"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdAdminFolderDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
}
}
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_FFB62A71508F4B7397210F8BE1F445F6"
{
"Sequence" = "3:300"
"DisplayName" = "8:Confirm Installation"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdAdminConfirmDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
}
}
}
}
"{DF760B10-853B-4699-99F2-AFF7185B4A62}:_F7D8341D24AD404BA4B0BB3F10914313"
{
"Name" = "8:#1902"
"Sequence" = "3:2"
"Attributes" = "3:3"
"Dialogs"
{
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_E288F31C44E94731ACE6928A86E50DBE"
{
"Sequence" = "3:100"
"DisplayName" = "8:Finished"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdAdminFinishedDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
}
}
}
}
}
"MergeModule"
{
}
"ProjectOutput"
{
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_539B49BF858749A4BC884962B12B60BA"
{
"SourcePath" = "8:..\\ShiningEditor\\obj\\Debug\\ShiningEditor.exe"
"TargetName" = "8:"
"Tag" = "8:"
"Folder" = "8:_EB34D8CCA4CB4A9498AE801D9D44D0D5"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Vital" = "11:TRUE"
"ReadOnly" = "11:FALSE"
"Hidden" = "11:FALSE"
"System" = "11:FALSE"
"Permanent" = "11:FALSE"
"SharedLegacy" = "11:FALSE"
"PackageAs" = "3:1"
"Register" = "3:1"
"Exclude" = "11:FALSE"
"IsDependency" = "11:FALSE"
"IsolateTo" = "8:"
"ProjectOutputGroupRegister" = "3:1"
"OutputConfiguration" = "8:"
"OutputGroupCanonicalName" = "8:Built"
"OutputProjectGuid" = "8:{A989E911-FC45-4495-B80B-7A344F5A6B53}"
"ShowKeyOutput" = "11:TRUE"
"ExcludeFilters"
{
}
}
}
}
}

BIN
setup.exe Normal file

Binary file not shown.