mirror of
https://github.com/suloku/BW_tool.git
synced 2026-09-07 08:36:19 -05:00
-Added medal editor: can edit date and flags
-Added Trainer records editor: can edit some values Both blocks need more research. -Output savegame is now only raw format (.sav)
This commit is contained in:
@@ -58,6 +58,14 @@
|
||||
<Compile Include="Editors\Grotto.Designer.cs">
|
||||
<DependentUpon>Grotto.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Editors\Medals.cs" />
|
||||
<Compile Include="Editors\Medals.Designer.cs">
|
||||
<DependentUpon>Medals.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Editors\TrainerRec.cs" />
|
||||
<Compile Include="Editors\TrainerRec.Designer.cs">
|
||||
<DependentUpon>TrainerRec.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="MainForm.cs" />
|
||||
<Compile Include="MainForm.Designer.cs">
|
||||
<DependentUpon>MainForm.cs</DependentUpon>
|
||||
@@ -82,6 +90,12 @@
|
||||
<EmbeddedResource Include="Editors\Grotto.resx">
|
||||
<DependentUpon>Grotto.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Editors\Medals.resx">
|
||||
<DependentUpon>Medals.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Editors\TrainerRec.resx">
|
||||
<DependentUpon>TrainerRec.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="MainForm.resx">
|
||||
<DependentUpon>MainForm.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
|
||||
489
BW_tool/Editors/Medals.Designer.cs
generated
Normal file
489
BW_tool/Editors/Medals.Designer.cs
generated
Normal file
@@ -0,0 +1,489 @@
|
||||
/*
|
||||
* Created by SharpDevelop.
|
||||
* User: suloku
|
||||
* Date: 03/03/2016
|
||||
* Time: 19:38
|
||||
*
|
||||
* To change this template use Tools | Options | Coding | Edit Standard Headers.
|
||||
*/
|
||||
namespace BW_tool
|
||||
{
|
||||
partial class Medals
|
||||
{
|
||||
/// <summary>
|
||||
/// Designer variable used to keep track of non-visual components.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
private System.Windows.Forms.NumericUpDown day;
|
||||
private System.Windows.Forms.NumericUpDown month;
|
||||
private System.Windows.Forms.NumericUpDown year;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private System.Windows.Forms.ComboBox indexbox;
|
||||
private System.Windows.Forms.Button exit_but;
|
||||
private System.Windows.Forms.Button saveexit_but;
|
||||
private System.Windows.Forms.CheckBox flag1box;
|
||||
private System.Windows.Forms.CheckBox flag2box;
|
||||
private System.Windows.Forms.CheckBox flag3box;
|
||||
private System.Windows.Forms.CheckBox flag4box;
|
||||
|
||||
/// <summary>
|
||||
/// Disposes resources used by the form.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing) {
|
||||
if (components != null) {
|
||||
components.Dispose();
|
||||
}
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// This method is required for Windows Forms designer support.
|
||||
/// Do not change the method contents inside the source code editor. The Forms designer might
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.day = new System.Windows.Forms.NumericUpDown();
|
||||
this.month = new System.Windows.Forms.NumericUpDown();
|
||||
this.year = new System.Windows.Forms.NumericUpDown();
|
||||
this.indexbox = new System.Windows.Forms.ComboBox();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.exit_but = new System.Windows.Forms.Button();
|
||||
this.saveexit_but = new System.Windows.Forms.Button();
|
||||
this.flag1box = new System.Windows.Forms.CheckBox();
|
||||
this.flag2box = new System.Windows.Forms.CheckBox();
|
||||
this.flag3box = new System.Windows.Forms.CheckBox();
|
||||
this.flag4box = new System.Windows.Forms.CheckBox();
|
||||
((System.ComponentModel.ISupportInitialize)(this.day)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.month)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.year)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// day
|
||||
//
|
||||
this.day.Location = new System.Drawing.Point(49, 39);
|
||||
this.day.Maximum = new decimal(new int[] {
|
||||
31,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.day.Name = "day";
|
||||
this.day.Size = new System.Drawing.Size(46, 20);
|
||||
this.day.TabIndex = 0;
|
||||
this.day.ValueChanged += new System.EventHandler(this.DayValueChanged);
|
||||
//
|
||||
// month
|
||||
//
|
||||
this.month.Location = new System.Drawing.Point(140, 39);
|
||||
this.month.Maximum = new decimal(new int[] {
|
||||
12,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.month.Name = "month";
|
||||
this.month.Size = new System.Drawing.Size(46, 20);
|
||||
this.month.TabIndex = 1;
|
||||
this.month.ValueChanged += new System.EventHandler(this.MonthValueChanged);
|
||||
//
|
||||
// year
|
||||
//
|
||||
this.year.Location = new System.Drawing.Point(229, 39);
|
||||
this.year.Maximum = new decimal(new int[] {
|
||||
127,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.year.Name = "year";
|
||||
this.year.Size = new System.Drawing.Size(46, 20);
|
||||
this.year.TabIndex = 2;
|
||||
this.year.ValueChanged += new System.EventHandler(this.YearValueChanged);
|
||||
//
|
||||
// indexbox
|
||||
//
|
||||
this.indexbox.FormattingEnabled = true;
|
||||
this.indexbox.Items.AddRange(new object[] {
|
||||
" ======= Special Medaling medals =======",
|
||||
"000 - First Step",
|
||||
"001 - Participation Prize",
|
||||
"002 - Rookie Medalist",
|
||||
"003 - Elite Medalist",
|
||||
"004 - Master Medalist",
|
||||
"005 - Legend Medalist",
|
||||
"006 - Top Medalist",
|
||||
"======= Adventure Medal =======",
|
||||
"007 - Light Walker",
|
||||
"008 - Middle Walker",
|
||||
"009 - Heavy Walker",
|
||||
"010 - Honored Footprints",
|
||||
"011 - Step-by-Step Saver",
|
||||
"012 - Busy Saver",
|
||||
"013 - Experienced Saver",
|
||||
"014 - Wonder Writer",
|
||||
"015 - Pokémon Center Fan",
|
||||
"016 - Signboard Starter",
|
||||
"017 - Signboard Savvy",
|
||||
"018 - Graffiti Gazer",
|
||||
"019 - Starter Cycling",
|
||||
"020 - Easy Cycling",
|
||||
"021 - Hard Cycling",
|
||||
"022 - Pedaling Legend",
|
||||
"023 - Old Rod Fisherman",
|
||||
"024 - Good Rod Fisherman",
|
||||
"025 - Super Rod Fisherman",
|
||||
"026 - Mighty Fisher",
|
||||
"027 - Normal-type Catcher",
|
||||
"028 - Fire-type Catcher",
|
||||
"029 - Water-type Catcher",
|
||||
"030 - ElectricCollector",
|
||||
"031 - Grass-type Catcher",
|
||||
"032 - Ice-type Catcher",
|
||||
"033 - Fighting-type Catcher",
|
||||
"034 - Poison-type Catcher",
|
||||
"035 - Ground-type Catcher",
|
||||
"036 - Flying-type Catcher",
|
||||
"037 - Psychic-type Catcher",
|
||||
"038 - Bug-type Catcher",
|
||||
"039 - Rock-type Catcher",
|
||||
"040 - Ghost-type Catcher",
|
||||
"041 - Dragon-type Catcher",
|
||||
"042 - Dark-type Catcher",
|
||||
"043 - Steel-type Catcher",
|
||||
"044 - Unova Catcher",
|
||||
"045 - National Catcher",
|
||||
"046 - 30 Boxed",
|
||||
"047 - 120 Boxed",
|
||||
"048 - 360 Boxed",
|
||||
"049 - Boxes Max",
|
||||
"050 - Capturing Spree",
|
||||
"051 - Vending Virtuoso",
|
||||
"052 - Lucky Drink",
|
||||
"053 - Evolution Hopeful",
|
||||
"054 - Evolution Tech",
|
||||
"055 - Evolution Expert",
|
||||
"056 - Evolution Authority",
|
||||
"057 - Ace Pilot",
|
||||
"058 - Hustle Muscle",
|
||||
"059 - Trash Master",
|
||||
"060 - Dowsing Beginner",
|
||||
"061 - Dowsing Specialist",
|
||||
"062 - Dowsing Collector",
|
||||
"063 - Dowsing Wizard",
|
||||
"064 - Naming Champ",
|
||||
"065 - Television Kid",
|
||||
"066 - Regular Customer",
|
||||
"067 - Moderate Customer",
|
||||
"068 - Great Customer",
|
||||
"069 - Indulgent Customer",
|
||||
"070 - Super Rich",
|
||||
"071 - Smart Shopper",
|
||||
"072 - Sweet Home",
|
||||
"073 - The First Passerby",
|
||||
"074 - 30 Passersby",
|
||||
"075 - 100 Passersby",
|
||||
"076 - Heavy Traffic",
|
||||
"077 - Pass Power+",
|
||||
"078 - Pass Power++",
|
||||
"079 - Pass Power+++",
|
||||
"080 - Pass Power MAX",
|
||||
"081 - Dozing Capture",
|
||||
"082 - Sleeping Capture",
|
||||
"083 - Deep Sleep Capture",
|
||||
"084 - Sweet Dreamer",
|
||||
"085 - Hidden Grotto Adept",
|
||||
"086 - Egg Beginner",
|
||||
"087 - Egg Breeder",
|
||||
"088 - Egg Elite ",
|
||||
"089 - Hatching Aficionado",
|
||||
"090 - Day-Care Faithful",
|
||||
"091 - Archeology Lover",
|
||||
"092 - Pure Youth",
|
||||
"093 - Lucky Colour",
|
||||
"094 - Pokerus Discoverer",
|
||||
"095 - Castelia Boss",
|
||||
"096 - Rail Enthusiast",
|
||||
"097 - Wailord Watcher",
|
||||
"098 - Face Board Memorial",
|
||||
"099 - Heavy Machinery Pro",
|
||||
"Ruins Raider",
|
||||
"Diamond Dust",
|
||||
"Bridge Enthusiast",
|
||||
"Around Unova",
|
||||
"Great Adventurer",
|
||||
"======= Battle Medal =======",
|
||||
"Battle Learner",
|
||||
"Battle Teacher",
|
||||
"Battle Veteran",
|
||||
"Battle Virtuoso",
|
||||
"Link Battle Amateur",
|
||||
"Link Battle Pioneer",
|
||||
"Link Battle Expert",
|
||||
"Born To Battle",
|
||||
"Magikarp Award",
|
||||
"Never Give Up",
|
||||
"Noneffective Artist",
|
||||
"Supereffective Savant",
|
||||
"Subway Low Gear",
|
||||
"Subway Accelerator",
|
||||
"Subway Top Gear",
|
||||
"Runaway Express",
|
||||
"Single Express",
|
||||
"Double Express",
|
||||
"Multi Express",
|
||||
"Test Novice",
|
||||
"Test Fan",
|
||||
"Test Enthusiast",
|
||||
"Exam Genius",
|
||||
"Exp. Millionaire",
|
||||
"BP Wealthy",
|
||||
"Superb Locator",
|
||||
"Battle Repeater",
|
||||
"Cruise Connoisseur",
|
||||
"Driftveil Mightiest",
|
||||
"Rental Champ",
|
||||
"Mix Champ",
|
||||
"Unova Mightiest",
|
||||
"Kanto Mightiest",
|
||||
"Johto Mightiest",
|
||||
"Hoenn Mightiest",
|
||||
"Sinnoh Mightiest",
|
||||
"Mightiest Leader",
|
||||
"World\'s Mightiest",
|
||||
"Rental Master",
|
||||
"Mix Master",
|
||||
"All Types Champ",
|
||||
"Tower Junior",
|
||||
"Tower Master",
|
||||
"Treehollow Junior",
|
||||
"Treehollow Master",
|
||||
"20 Victories",
|
||||
"50 Victories",
|
||||
"100 Victories",
|
||||
"1,000 Wins",
|
||||
"Undefeated: Easy",
|
||||
"Undefeated: Hard",
|
||||
"Pinpoint: Easy",
|
||||
"Pinpoint: Hard",
|
||||
"Quick Clear: Easy",
|
||||
"Quick Clear: Hard",
|
||||
"Battle Guru",
|
||||
"======= Entertainment Medal =======",
|
||||
"Beginning Trader",
|
||||
"Occasional Trader",
|
||||
"Frequent Trader",
|
||||
"Great Trade-Up",
|
||||
"Opposite Trader",
|
||||
"Pen Pal",
|
||||
"Talented Cast Member",
|
||||
"Rising Star",
|
||||
"Big Star",
|
||||
"Superstar",
|
||||
"Musical Prima Donna",
|
||||
"Musical Star",
|
||||
"10 Followers",
|
||||
"First Friend",
|
||||
"Broad Friendship",
|
||||
"Extensive Friendship",
|
||||
"Global Connection",
|
||||
"Spin Trade Whiz",
|
||||
"Feeling Master",
|
||||
"Ace of Hearts",
|
||||
"Ferris Wheel Fan",
|
||||
"New Guide",
|
||||
"Elite Guide",
|
||||
"Veteran Guide",
|
||||
"======= Challenge Medal =======",
|
||||
"Guiding Champ",
|
||||
"Shop Starter",
|
||||
"Shop Builder",
|
||||
"Shop Constructor",
|
||||
"Extreme Developer",
|
||||
"OK Souvenir Getter",
|
||||
"Good Souvenir Getter",
|
||||
"Great Souvenir Getter",
|
||||
"Tycoon of Souvenirs",
|
||||
"Avenue of Fame",
|
||||
"Minigame Fan",
|
||||
"Minigame Buff",
|
||||
"Minigame Expert",
|
||||
"Best Minigamer",
|
||||
"Balloon Rookie",
|
||||
"Balloon Technician",
|
||||
"Balloon Expert",
|
||||
"Balloon Conqueror",
|
||||
"New Face Hero",
|
||||
"Hero Movie Star",
|
||||
"Cop Movie Master",
|
||||
"UFO Movie Master",
|
||||
"Monster Movie Master",
|
||||
"Sci-Fi Movie Master",
|
||||
"Romantic Movie Star",
|
||||
"Fantasy Movie Master",
|
||||
"Comedic Movie Star",
|
||||
"Horror Movie Star",
|
||||
"Robot Movie Master",
|
||||
"Ghost Movie Master",
|
||||
"Hero Ending",
|
||||
"Popular Movie Star",
|
||||
"Blockbuster Star",
|
||||
"Masterpiece Star",
|
||||
"First Cult Classic",
|
||||
"Cult Classic Star",
|
||||
"10 People Funfest",
|
||||
"30 People Funfest",
|
||||
"Scored 100",
|
||||
"Scored 1,000",
|
||||
"Mission Host Lv1",
|
||||
"Mission Host Lv 2",
|
||||
"Participant Lv 1",
|
||||
"Participant Lv 2",
|
||||
"Achiever Lv 1",
|
||||
"Achiever Lv 2",
|
||||
"Funfest Complete",
|
||||
"Good Night",
|
||||
"Beginning of Memory",
|
||||
"Memory Master",
|
||||
"Entertainment Master",
|
||||
"Normal-type Champ",
|
||||
"Fire-type Champ",
|
||||
"Water-type Champ",
|
||||
"Electric-type Champ",
|
||||
"Grass-type Champ",
|
||||
"Ice-type Champ",
|
||||
"Fighting-type Champ",
|
||||
"Poison-type Champ",
|
||||
"Ground-type Champ",
|
||||
"Flying-type Champ",
|
||||
"Psychic-type Champ",
|
||||
"Bug-type Champ",
|
||||
"Rock-type Champ",
|
||||
"Ghost-type Champ",
|
||||
"Dragon-type Champ",
|
||||
"Dark-type Champ",
|
||||
"Steel-type Champ",
|
||||
"One and Only",
|
||||
"Supreme Challenger"});
|
||||
this.indexbox.Location = new System.Drawing.Point(12, 12);
|
||||
this.indexbox.MaxDropDownItems = 10;
|
||||
this.indexbox.Name = "indexbox";
|
||||
this.indexbox.Size = new System.Drawing.Size(263, 21);
|
||||
this.indexbox.TabIndex = 4;
|
||||
this.indexbox.SelectedIndexChanged += new System.EventHandler(this.ComboBox1SelectedIndexChanged);
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.Location = new System.Drawing.Point(12, 41);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(31, 20);
|
||||
this.label1.TabIndex = 5;
|
||||
this.label1.Text = "Day";
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.Location = new System.Drawing.Point(101, 41);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(37, 23);
|
||||
this.label2.TabIndex = 6;
|
||||
this.label2.Text = "Month";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.Location = new System.Drawing.Point(192, 41);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(31, 23);
|
||||
this.label3.TabIndex = 7;
|
||||
this.label3.Text = "Year";
|
||||
//
|
||||
// exit_but
|
||||
//
|
||||
this.exit_but.Location = new System.Drawing.Point(178, 184);
|
||||
this.exit_but.Name = "exit_but";
|
||||
this.exit_but.Size = new System.Drawing.Size(97, 27);
|
||||
this.exit_but.TabIndex = 8;
|
||||
this.exit_but.Text = "Exit";
|
||||
this.exit_but.UseVisualStyleBackColor = true;
|
||||
this.exit_but.Click += new System.EventHandler(this.Exit_butClick);
|
||||
//
|
||||
// saveexit_but
|
||||
//
|
||||
this.saveexit_but.Location = new System.Drawing.Point(178, 217);
|
||||
this.saveexit_but.Name = "saveexit_but";
|
||||
this.saveexit_but.Size = new System.Drawing.Size(99, 29);
|
||||
this.saveexit_but.TabIndex = 9;
|
||||
this.saveexit_but.Text = "Save and Exit";
|
||||
this.saveexit_but.UseVisualStyleBackColor = true;
|
||||
this.saveexit_but.Click += new System.EventHandler(this.Saveexit_butClick);
|
||||
//
|
||||
// flag1box
|
||||
//
|
||||
this.flag1box.Location = new System.Drawing.Point(70, 67);
|
||||
this.flag1box.Name = "flag1box";
|
||||
this.flag1box.Size = new System.Drawing.Size(104, 24);
|
||||
this.flag1box.TabIndex = 10;
|
||||
this.flag1box.Text = "Flag 1";
|
||||
this.flag1box.UseVisualStyleBackColor = true;
|
||||
this.flag1box.CheckedChanged += new System.EventHandler(this.Flag1boxCheckedChanged);
|
||||
//
|
||||
// flag2box
|
||||
//
|
||||
this.flag2box.Location = new System.Drawing.Point(140, 67);
|
||||
this.flag2box.Name = "flag2box";
|
||||
this.flag2box.Size = new System.Drawing.Size(104, 24);
|
||||
this.flag2box.TabIndex = 11;
|
||||
this.flag2box.Text = "Flag 2";
|
||||
this.flag2box.UseVisualStyleBackColor = true;
|
||||
this.flag2box.CheckedChanged += new System.EventHandler(this.Flag2boxCheckedChanged);
|
||||
//
|
||||
// flag3box
|
||||
//
|
||||
this.flag3box.Location = new System.Drawing.Point(70, 97);
|
||||
this.flag3box.Name = "flag3box";
|
||||
this.flag3box.Size = new System.Drawing.Size(104, 24);
|
||||
this.flag3box.TabIndex = 12;
|
||||
this.flag3box.Text = "Flag 3";
|
||||
this.flag3box.UseVisualStyleBackColor = true;
|
||||
this.flag3box.CheckedChanged += new System.EventHandler(this.Flag3boxCheckedChanged);
|
||||
//
|
||||
// flag4box
|
||||
//
|
||||
this.flag4box.Location = new System.Drawing.Point(140, 97);
|
||||
this.flag4box.Name = "flag4box";
|
||||
this.flag4box.Size = new System.Drawing.Size(104, 24);
|
||||
this.flag4box.TabIndex = 13;
|
||||
this.flag4box.Text = "Flag 4";
|
||||
this.flag4box.UseVisualStyleBackColor = true;
|
||||
this.flag4box.CheckedChanged += new System.EventHandler(this.Flag4boxCheckedChanged);
|
||||
//
|
||||
// Medals
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(289, 258);
|
||||
this.Controls.Add(this.flag4box);
|
||||
this.Controls.Add(this.flag3box);
|
||||
this.Controls.Add(this.flag2box);
|
||||
this.Controls.Add(this.flag1box);
|
||||
this.Controls.Add(this.saveexit_but);
|
||||
this.Controls.Add(this.exit_but);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.indexbox);
|
||||
this.Controls.Add(this.year);
|
||||
this.Controls.Add(this.month);
|
||||
this.Controls.Add(this.day);
|
||||
this.Name = "Medals";
|
||||
this.Text = "Medals";
|
||||
((System.ComponentModel.ISupportInitialize)(this.day)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.month)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.year)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
179
BW_tool/Editors/Medals.cs
Normal file
179
BW_tool/Editors/Medals.cs
Normal file
@@ -0,0 +1,179 @@
|
||||
/*
|
||||
* Created by SharpDevelop.
|
||||
* User: suloku
|
||||
* Date: 03/03/2016
|
||||
* Time: 19:38
|
||||
*
|
||||
* To change this template use Tools | Options | Coding | Edit Standard Headers.
|
||||
*/
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace BW_tool
|
||||
{
|
||||
/// <summary>
|
||||
/// Description of Medals.
|
||||
/// </summary>
|
||||
public partial class Medals : Form
|
||||
{
|
||||
MEDAL medals;
|
||||
public Medals()
|
||||
{
|
||||
//
|
||||
// The InitializeComponent() call is required for Windows Forms designer support.
|
||||
//
|
||||
InitializeComponent();
|
||||
medals = new MEDAL(MainForm.save.getBlock(68));
|
||||
indexbox.SelectedIndex = 0;
|
||||
day.Value = medals.Day;
|
||||
month.Value = medals.Month;
|
||||
year.Value = medals.Year;
|
||||
flag1box.Checked = medals.Flag1;
|
||||
flag2box.Checked = medals.Flag2;
|
||||
flag3box.Checked = medals.Flag3;
|
||||
flag4box.Checked = medals.Flag4;
|
||||
|
||||
//
|
||||
// TODO: Add constructor code after the InitializeComponent() call.
|
||||
//
|
||||
}
|
||||
void ComboBox1SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (indexbox.SelectedIndex == 0)
|
||||
{
|
||||
indexbox.SelectedIndex = 1;
|
||||
}
|
||||
else if (indexbox.SelectedIndex == 8)
|
||||
{
|
||||
indexbox.SelectedIndex = 9;
|
||||
}
|
||||
else if (indexbox.SelectedIndex == 107)
|
||||
{
|
||||
indexbox.SelectedIndex = 108;
|
||||
}
|
||||
else if (indexbox.SelectedIndex == 164)
|
||||
{
|
||||
indexbox.SelectedIndex = 165;
|
||||
}
|
||||
else if (indexbox.SelectedIndex == 189)
|
||||
{
|
||||
indexbox.SelectedIndex = 190;
|
||||
}
|
||||
|
||||
if (indexbox.SelectedIndex > 0 && indexbox.SelectedIndex < 8)
|
||||
{
|
||||
medals.Index = (int)indexbox.SelectedIndex - 1;
|
||||
}
|
||||
else if (indexbox.SelectedIndex > 8 && indexbox.SelectedIndex < 107)
|
||||
{
|
||||
medals.Index = (int)indexbox.SelectedIndex - 2;
|
||||
}
|
||||
else if (indexbox.SelectedIndex > 107 && indexbox.SelectedIndex < 164)
|
||||
{
|
||||
medals.Index = (int)indexbox.SelectedIndex - 3;
|
||||
}
|
||||
else if (indexbox.SelectedIndex > 164 && indexbox.SelectedIndex < 189)
|
||||
{
|
||||
medals.Index = (int)indexbox.SelectedIndex - 4;
|
||||
}
|
||||
else if (indexbox.SelectedIndex > 189)
|
||||
{
|
||||
medals.Index = (int)indexbox.SelectedIndex - 5;
|
||||
}
|
||||
day.Value = medals.Day;
|
||||
month.Value = medals.Month;
|
||||
year.Value = medals.Year;
|
||||
flag1box.Checked = medals.Flag1;
|
||||
flag2box.Checked = medals.Flag2;
|
||||
flag3box.Checked = medals.Flag3;
|
||||
flag4box.Checked = medals.Flag4;
|
||||
}
|
||||
void DayValueChanged(object sender, EventArgs e)
|
||||
{
|
||||
medals.Day = (int)day.Value;
|
||||
}
|
||||
void MonthValueChanged(object sender, EventArgs e)
|
||||
{
|
||||
medals.Month = (int)month.Value;
|
||||
}
|
||||
void YearValueChanged(object sender, EventArgs e)
|
||||
{
|
||||
medals.Year = (int)year.Value;
|
||||
}
|
||||
void Exit_butClick(object sender, EventArgs e)
|
||||
{
|
||||
this.Close();
|
||||
}
|
||||
void Saveexit_butClick(object sender, EventArgs e)
|
||||
{
|
||||
MainForm.save.setBlock(medals.Data, 68);
|
||||
this.Close();
|
||||
}
|
||||
void Flag1boxCheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
medals.Flag1 = flag1box.Checked;
|
||||
}
|
||||
void Flag2boxCheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
medals.Flag2 = flag2box.Checked;
|
||||
}
|
||||
void Flag3boxCheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
medals.Flag3 = flag3box.Checked;
|
||||
}
|
||||
void Flag4boxCheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
medals.Flag4 = flag4box.Checked;
|
||||
}
|
||||
public class MEDAL
|
||||
{
|
||||
internal int MedalSize = 4;
|
||||
internal int Size = MainForm.save.getBlockLength(68);
|
||||
|
||||
public byte[] Data;
|
||||
public MEDAL(byte[] data = null)
|
||||
{
|
||||
Data = data ?? new byte[Size];
|
||||
}
|
||||
private int index = 0;
|
||||
public int Index {
|
||||
get { return index/4; }
|
||||
set { if ((value >= 0) && (value < 256)){ index = (int)(value*MedalSize);} } }
|
||||
|
||||
private UInt16 build_date(int day, int month, int year)
|
||||
{
|
||||
|
||||
return (UInt16) ( ((day & 0x1F) << 11) | ((month & 0x0F) << 7) | (year & 0x7F) );
|
||||
}
|
||||
|
||||
|
||||
public int Day {
|
||||
get { return (BitConverter.ToUInt16(Data, index)) >> 11; }
|
||||
set { BitConverter.GetBytes(build_date(value, Month, Year)).CopyTo(Data, index); } }
|
||||
public int Month {
|
||||
get { return (BitConverter.ToUInt16(Data, index) & 0x0780) >> 7; }
|
||||
set { BitConverter.GetBytes(build_date(Day, value, Year)).CopyTo(Data, index); } }
|
||||
public int Year {
|
||||
get { return (BitConverter.ToUInt16(Data, index) & 0x007F); }
|
||||
set { BitConverter.GetBytes(build_date(Day, Month, value)).CopyTo(Data, index); } }
|
||||
public UInt16 Flags {
|
||||
get { return BitConverter.ToUInt16(Data, index+0x02); }
|
||||
set { BitConverter.GetBytes((UInt16)value).CopyTo(Data, index+0x2); } }
|
||||
|
||||
public bool Flag1{
|
||||
get { return Convert.ToBoolean(Flags&0x1); }
|
||||
//set { Flags = (UInt16)(Convert.ToByte(value) | (Flags & ~(0x1))); } }
|
||||
set { if (value) Flags = (UInt16)(0x1 | (Flags & ~(0x4))); else Flags = (UInt16)(Flags & ~(0x1)); } }
|
||||
public bool Flag2{
|
||||
get { return Convert.ToBoolean(Flags&0x2); }
|
||||
set { if (value) Flags = (UInt16)(0x2 | (Flags & ~(0x4))); else Flags = (UInt16)(Flags & ~(0x2)); } }
|
||||
public bool Flag3{
|
||||
get { return Convert.ToBoolean(Flags&0x4); }
|
||||
set { if (value) Flags = (UInt16)(0x4 | (Flags & ~(0x4))); else Flags = (UInt16)(Flags & ~(0x4)); } }
|
||||
public bool Flag4{
|
||||
get { return Convert.ToBoolean(Flags&0x8); }
|
||||
set { if (value) Flags = (UInt16)(0x8 | (Flags & ~(0x4))); else Flags = (UInt16)(Flags & ~(0x8)); } }
|
||||
}
|
||||
}
|
||||
}
|
||||
120
BW_tool/Editors/Medals.resx
Normal file
120
BW_tool/Editors/Medals.resx
Normal file
@@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
199
BW_tool/Editors/TrainerRec.Designer.cs
generated
Normal file
199
BW_tool/Editors/TrainerRec.Designer.cs
generated
Normal file
@@ -0,0 +1,199 @@
|
||||
/*
|
||||
* Created by SharpDevelop.
|
||||
* User: suloku
|
||||
* Date: 03/03/2016
|
||||
* Time: 17:31
|
||||
*
|
||||
* To change this template use Tools | Options | Coding | Edit Standard Headers.
|
||||
*/
|
||||
namespace BW_tool
|
||||
{
|
||||
partial class TrainerRec
|
||||
{
|
||||
/// <summary>
|
||||
/// Designer variable used to keep track of non-visual components.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
private System.Windows.Forms.NumericUpDown record_value;
|
||||
private System.Windows.Forms.ComboBox record_index;
|
||||
|
||||
/// <summary>
|
||||
/// Disposes resources used by the form.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing) {
|
||||
if (components != null) {
|
||||
components.Dispose();
|
||||
}
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// This method is required for Windows Forms designer support.
|
||||
/// Do not change the method contents inside the source code editor. The Forms designer might
|
||||
/// not be able to load this method if it was changed manually.
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.record_value = new System.Windows.Forms.NumericUpDown();
|
||||
this.record_index = new System.Windows.Forms.ComboBox();
|
||||
((System.ComponentModel.ISupportInitialize)(this.record_value)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// record_value
|
||||
//
|
||||
this.record_value.Location = new System.Drawing.Point(284, 50);
|
||||
this.record_value.Maximum = new decimal(new int[] {
|
||||
-1,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.record_value.Name = "record_value";
|
||||
this.record_value.Size = new System.Drawing.Size(120, 20);
|
||||
this.record_value.TabIndex = 0;
|
||||
//
|
||||
// record_index
|
||||
//
|
||||
this.record_index.FormattingEnabled = true;
|
||||
this.record_index.Items.AddRange(new object[] {
|
||||
"001",
|
||||
"002",
|
||||
"003",
|
||||
"004",
|
||||
"005 - Wild Pokémon Encounters",
|
||||
"006 - Trainers Battled",
|
||||
"007",
|
||||
"008",
|
||||
"009",
|
||||
"010",
|
||||
"011",
|
||||
"012",
|
||||
"013",
|
||||
"014",
|
||||
"015",
|
||||
"016",
|
||||
"017",
|
||||
"018",
|
||||
"019",
|
||||
"020",
|
||||
"021",
|
||||
"022",
|
||||
"023",
|
||||
"024",
|
||||
"025",
|
||||
"026",
|
||||
"027",
|
||||
"028",
|
||||
"029",
|
||||
"030",
|
||||
"031",
|
||||
"032",
|
||||
"033",
|
||||
"034",
|
||||
"035",
|
||||
"036",
|
||||
"037",
|
||||
"038",
|
||||
"039",
|
||||
"040",
|
||||
"041",
|
||||
"042",
|
||||
"043",
|
||||
"044",
|
||||
"045",
|
||||
"046",
|
||||
"047",
|
||||
"048",
|
||||
"049",
|
||||
"050",
|
||||
"051",
|
||||
"052",
|
||||
"053",
|
||||
"054",
|
||||
"055",
|
||||
"056",
|
||||
"057",
|
||||
"058",
|
||||
"059",
|
||||
"060",
|
||||
"061",
|
||||
"062",
|
||||
"063",
|
||||
"064",
|
||||
"065",
|
||||
"066",
|
||||
"067",
|
||||
"068",
|
||||
"069",
|
||||
"070",
|
||||
"071",
|
||||
"072",
|
||||
"073",
|
||||
"074",
|
||||
"075",
|
||||
"076",
|
||||
"077",
|
||||
"078",
|
||||
"079",
|
||||
"080",
|
||||
"081",
|
||||
"082",
|
||||
"083",
|
||||
"084",
|
||||
"085",
|
||||
"086",
|
||||
"087",
|
||||
"088",
|
||||
"089",
|
||||
"090",
|
||||
"091",
|
||||
"092",
|
||||
"093",
|
||||
"094",
|
||||
"095",
|
||||
"096",
|
||||
"097",
|
||||
"098",
|
||||
"099",
|
||||
"100",
|
||||
"101",
|
||||
"102",
|
||||
"103",
|
||||
"104",
|
||||
"105",
|
||||
"106",
|
||||
"107",
|
||||
"108",
|
||||
"109",
|
||||
"110",
|
||||
"111",
|
||||
"112",
|
||||
"113",
|
||||
"114",
|
||||
"115",
|
||||
"116",
|
||||
"117",
|
||||
"118"});
|
||||
this.record_index.Location = new System.Drawing.Point(56, 49);
|
||||
this.record_index.Name = "record_index";
|
||||
this.record_index.Size = new System.Drawing.Size(121, 21);
|
||||
this.record_index.TabIndex = 1;
|
||||
this.record_index.SelectedIndexChanged += new System.EventHandler(this.Record_indexSelectedIndexChanged);
|
||||
//
|
||||
// TrainerRec
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(712, 286);
|
||||
this.Controls.Add(this.record_index);
|
||||
this.Controls.Add(this.record_value);
|
||||
this.Name = "TrainerRec";
|
||||
this.Text = "Trainer Card Records Editor";
|
||||
((System.ComponentModel.ISupportInitialize)(this.record_value)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
111
BW_tool/Editors/TrainerRec.cs
Normal file
111
BW_tool/Editors/TrainerRec.cs
Normal file
@@ -0,0 +1,111 @@
|
||||
/*
|
||||
* Created by SharpDevelop.
|
||||
* User: suloku
|
||||
* Date: 03/03/2016
|
||||
* Time: 17:31
|
||||
*
|
||||
* To change this template use Tools | Options | Coding | Edit Standard Headers.
|
||||
*/
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using System.Windows.Forms;
|
||||
|
||||
/* Data shown in trainer card info
|
||||
*
|
||||
Times Linked
|
||||
Link Battles
|
||||
Link Battle Wins
|
||||
Link Battle Losses
|
||||
Link Trades
|
||||
Wild Pokémon encounters
|
||||
Trainers Battled
|
||||
Feeling checks
|
||||
|
||||
|
||||
----Not on trainer records
|
||||
|
||||
People passed by
|
||||
Usable Pass Powers
|
||||
Musical Performances ? - Appears if not 0
|
||||
Poké Transfer High Score ? - Appears if not 0
|
||||
Battle Test High Score ? - Appears if not 0
|
||||
Cleared Funfest missions
|
||||
Movie Shoots ? - Appears if not 0
|
||||
Wins at the PWT
|
||||
Customers recommended to Join Avenue ? - Appears if not 0
|
||||
*/
|
||||
|
||||
namespace BW_tool
|
||||
{
|
||||
/// <summary>
|
||||
/// Description of TrainerRec.
|
||||
/// </summary>
|
||||
public partial class TrainerRec : Form
|
||||
{
|
||||
TR trainerrecords;
|
||||
public TrainerRec()
|
||||
{
|
||||
//
|
||||
// The InitializeComponent() call is required for Windows Forms designer support.
|
||||
//
|
||||
InitializeComponent();
|
||||
if ( MainForm.save.B2W2)
|
||||
{
|
||||
trainerrecords = new TR(MainForm.save.getBlockDec(38));
|
||||
}else
|
||||
{
|
||||
trainerrecords = new TR(MainForm.save.getBlockDec(38));
|
||||
}
|
||||
record_index.SelectedIndex = 0;
|
||||
record_value.Value = trainerrecords.WildCount;
|
||||
//
|
||||
// TODO: Add constructor code after the InitializeComponent() call.
|
||||
//
|
||||
}
|
||||
public class TR
|
||||
{
|
||||
internal int Size = MainForm.save.B2W2? MainForm.save.getBlockLength(38) : MainForm.save.getBlockLength(38); //Update with BW 1
|
||||
|
||||
public byte[] Data;
|
||||
public TR(byte[] data = null)
|
||||
{
|
||||
Data = data ?? new byte[Size];
|
||||
}
|
||||
|
||||
// General Card Properties
|
||||
public uint WildCount {
|
||||
get { return BitConverter.ToUInt32(Data, 0x14); }
|
||||
set { BitConverter.GetBytes((uint)value).CopyTo(Data, 0x14); } }
|
||||
public uint TrBattles {
|
||||
get { return BitConverter.ToUInt32(Data, 0x18); }
|
||||
set { BitConverter.GetBytes((uint)value).CopyTo(Data, 0x18); } }
|
||||
public UInt16 Feelings {
|
||||
get { return BitConverter.ToUInt16(Data, 0x170); }
|
||||
set { BitConverter.GetBytes((UInt16)value).CopyTo(Data, 0x170); } }
|
||||
public UInt16 Musical {
|
||||
get { return BitConverter.ToUInt16(Data, 0x172); }
|
||||
set { BitConverter.GetBytes((UInt16)value).CopyTo(Data, 0x172); } }
|
||||
public UInt16 BattleTest {
|
||||
get { return BitConverter.ToUInt16(Data, 0x186); }
|
||||
set { BitConverter.GetBytes((UInt16)value).CopyTo(Data, 0x186); } }
|
||||
public UInt16 MovieShoots {
|
||||
get { return BitConverter.ToUInt16(Data, 0x194); }
|
||||
set { BitConverter.GetBytes((UInt16)value).CopyTo(Data, 0x194); } }
|
||||
public UInt16 Customers {
|
||||
get { return BitConverter.ToUInt16(Data, 0x18C); }
|
||||
set { BitConverter.GetBytes((UInt16)value).CopyTo(Data, 0x18C); } }
|
||||
public UInt16 BattleWins {
|
||||
get { return BitConverter.ToUInt16(Data, 0x120); }
|
||||
set { BitConverter.GetBytes((UInt16)value).CopyTo(Data, 0x120); } }
|
||||
public UInt16 BattleLoses {
|
||||
get { return BitConverter.ToUInt16(Data, 0x4C); }
|
||||
set { BitConverter.GetBytes((UInt16)value).CopyTo(Data, 0x4C); } }
|
||||
}
|
||||
|
||||
|
||||
void Record_indexSelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
record_value.Value = trainerrecords.WildCount;
|
||||
}
|
||||
}
|
||||
}
|
||||
120
BW_tool/Editors/TrainerRec.resx
Normal file
120
BW_tool/Editors/TrainerRec.resx
Normal file
@@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
34
BW_tool/MainForm.Designer.cs
generated
34
BW_tool/MainForm.Designer.cs
generated
@@ -22,6 +22,8 @@ namespace BW_tool
|
||||
private System.Windows.Forms.Button chk_but;
|
||||
private System.Windows.Forms.Button chk_updt_but;
|
||||
private System.Windows.Forms.Button grotto_but;
|
||||
private System.Windows.Forms.Button trainer_records_but;
|
||||
private System.Windows.Forms.Button medal_but;
|
||||
|
||||
/// <summary>
|
||||
/// Disposes resources used by the form.
|
||||
@@ -52,6 +54,8 @@ namespace BW_tool
|
||||
this.chk_but = new System.Windows.Forms.Button();
|
||||
this.chk_updt_but = new System.Windows.Forms.Button();
|
||||
this.grotto_but = new System.Windows.Forms.Button();
|
||||
this.trainer_records_but = new System.Windows.Forms.Button();
|
||||
this.medal_but = new System.Windows.Forms.Button();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// loadsave_but
|
||||
@@ -93,7 +97,7 @@ namespace BW_tool
|
||||
// dumper_but
|
||||
//
|
||||
this.dumper_but.Enabled = false;
|
||||
this.dumper_but.Location = new System.Drawing.Point(12, 80);
|
||||
this.dumper_but.Location = new System.Drawing.Point(323, 67);
|
||||
this.dumper_but.Name = "dumper_but";
|
||||
this.dumper_but.Size = new System.Drawing.Size(92, 23);
|
||||
this.dumper_but.TabIndex = 4;
|
||||
@@ -126,7 +130,7 @@ namespace BW_tool
|
||||
// grotto_but
|
||||
//
|
||||
this.grotto_but.Enabled = false;
|
||||
this.grotto_but.Location = new System.Drawing.Point(110, 80);
|
||||
this.grotto_but.Location = new System.Drawing.Point(12, 78);
|
||||
this.grotto_but.Name = "grotto_but";
|
||||
this.grotto_but.Size = new System.Drawing.Size(140, 23);
|
||||
this.grotto_but.TabIndex = 7;
|
||||
@@ -134,11 +138,35 @@ namespace BW_tool
|
||||
this.grotto_but.UseVisualStyleBackColor = true;
|
||||
this.grotto_but.Click += new System.EventHandler(this.Grotto_butClick);
|
||||
//
|
||||
// trainer_records_but
|
||||
//
|
||||
this.trainer_records_but.Enabled = false;
|
||||
this.trainer_records_but.Location = new System.Drawing.Point(12, 107);
|
||||
this.trainer_records_but.Name = "trainer_records_but";
|
||||
this.trainer_records_but.Size = new System.Drawing.Size(140, 23);
|
||||
this.trainer_records_but.TabIndex = 8;
|
||||
this.trainer_records_but.Text = "Trainer Records";
|
||||
this.trainer_records_but.UseVisualStyleBackColor = true;
|
||||
this.trainer_records_but.Click += new System.EventHandler(this.Trainer_records_butClick);
|
||||
//
|
||||
// medal_but
|
||||
//
|
||||
this.medal_but.Enabled = false;
|
||||
this.medal_but.Location = new System.Drawing.Point(158, 107);
|
||||
this.medal_but.Name = "medal_but";
|
||||
this.medal_but.Size = new System.Drawing.Size(140, 23);
|
||||
this.medal_but.TabIndex = 9;
|
||||
this.medal_but.Text = "Medals";
|
||||
this.medal_but.UseVisualStyleBackColor = true;
|
||||
this.medal_but.Click += new System.EventHandler(this.Medal_butClick);
|
||||
//
|
||||
// MainForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(503, 119);
|
||||
this.ClientSize = new System.Drawing.Size(503, 147);
|
||||
this.Controls.Add(this.medal_but);
|
||||
this.Controls.Add(this.trainer_records_but);
|
||||
this.Controls.Add(this.grotto_but);
|
||||
this.Controls.Add(this.chk_updt_but);
|
||||
this.Controls.Add(this.chk_but);
|
||||
|
||||
@@ -46,6 +46,10 @@ namespace BW_tool
|
||||
int filesize = FileIO.load_file(ref savebuffer, ref path, dsfilter);
|
||||
if( filesize == SAV5.SIZERAW || filesize == SAV5.SIZERAW+122 )
|
||||
{
|
||||
//Convert DSV to SAV
|
||||
if (filesize == SAV5.SIZERAW+122)
|
||||
Array.Resize(ref savebuffer, SAV5.SIZERAW);
|
||||
|
||||
savegamename.Text = path;
|
||||
save = new SAV5(savebuffer);
|
||||
|
||||
@@ -58,6 +62,8 @@ namespace BW_tool
|
||||
chk_updt_but.Enabled = true;
|
||||
save_but.Enabled = true;
|
||||
grotto_but.Enabled = true;
|
||||
trainer_records_but.Enabled = true;
|
||||
medal_but.Enabled = true;
|
||||
}
|
||||
else if (save.BW)
|
||||
{
|
||||
@@ -67,7 +73,9 @@ namespace BW_tool
|
||||
chk_but.Enabled = true;
|
||||
chk_updt_but.Enabled = true;
|
||||
save_but.Enabled = true;
|
||||
//grotto_but.Enabled = false;
|
||||
grotto_but.Enabled = false;
|
||||
trainer_records_but.Enabled = false;
|
||||
medal_but.Enabled = false;
|
||||
}
|
||||
else versiontext.Text = "Invalid file";
|
||||
|
||||
@@ -80,6 +88,8 @@ namespace BW_tool
|
||||
chk_updt_but.Enabled = false;
|
||||
save_but.Enabled = false;
|
||||
grotto_but.Enabled = false;
|
||||
trainer_records_but.Enabled = false;
|
||||
medal_but.Enabled = false;
|
||||
}
|
||||
}
|
||||
void Save_butClick(object sender, EventArgs e)
|
||||
@@ -110,5 +120,15 @@ namespace BW_tool
|
||||
Form grotto = new Grotto();
|
||||
grotto.ShowDialog();
|
||||
}
|
||||
void Trainer_records_butClick(object sender, EventArgs e)
|
||||
{
|
||||
Form trainerrec = new TrainerRec();
|
||||
trainerrec.ShowDialog();
|
||||
}
|
||||
void Medal_butClick(object sender, EventArgs e)
|
||||
{
|
||||
Form medals = new Medals();
|
||||
medals.ShowDialog();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -84,7 +84,7 @@ namespace BW_tool
|
||||
if (buffer == null) return;
|
||||
SaveFileDialog saveFD = new SaveFileDialog();
|
||||
//saveFD.InitialDirectory = "c:\\";
|
||||
saveFD.Filter = "NDS save data|*.sav;*.dsv|All Files (*.*)|*.*";
|
||||
saveFD.Filter = "NDS RAW save data|*.sav|All Files (*.*)|*.*";
|
||||
if (saveFD.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
System.IO.FileStream saveFile;
|
||||
|
||||
Reference in New Issue
Block a user