HGSS: Add Pokeathlon editor

Closes #4755
This commit is contained in:
Kurt
2026-05-26 00:26:10 -05:00
parent 3009531289
commit 5cbc796ad7
28 changed files with 3770 additions and 24 deletions

View File

@@ -16,7 +16,7 @@ public class Pokeathlon4(Memory<byte> Raw) // 0xD9D4 within SAV4HGSS
// 5 courses to store record data
public PokeathlonCourseRecord4 GetCourseRecord(PokeathlonStat4 index)
{
ArgumentOutOfRangeException.ThrowIfGreaterThanOrEqual((uint)index, (uint)PokeathlonStat4.MAX_COUNT);
ArgumentOutOfRangeException.ThrowIfGreaterThanOrEqual((uint)index, (uint)PokeathlonStat4.Count);
return new(Raw.Slice((int)index * PokeathlonCourseRecord4.SIZE, PokeathlonCourseRecord4.SIZE));
}
@@ -27,14 +27,14 @@ public PokeathlonCourseRecord4 GetCourseRecord(PokeathlonStat4 index)
// 0x2CC, 0xDCA0 within SAV
public PokeathlonEventData4 GetEventSelf(PokeathlonEvent4 index)
{
ArgumentOutOfRangeException.ThrowIfGreaterThanOrEqual((uint)index, (uint)PokeathlonEvent4.MAX_COUNT);
ArgumentOutOfRangeException.ThrowIfGreaterThanOrEqual((uint)index, (uint)PokeathlonEvent4.Count);
return new(Raw.Slice(0x2CC + ((int)index * PokeathlonEventData4.SIZE), PokeathlonEventData4.SIZE));
}
// 0x484, 0xDE58 within SAV
public PokeathlonConnection4 GetEventConnection(PokeathlonEvent4 index)
{
ArgumentOutOfRangeException.ThrowIfGreaterThanOrEqual((uint)index, (uint)PokeathlonEvent4.MAX_COUNT);
ArgumentOutOfRangeException.ThrowIfGreaterThanOrEqual((uint)index, (uint)PokeathlonEvent4.Count);
return new(Raw.Slice(0x484 + ((int)index * PokeathlonConnection4.SIZE), PokeathlonConnection4.SIZE));
}
@@ -45,13 +45,13 @@ public PokeathlonConnection4 GetEventConnection(PokeathlonEvent4 index)
/// </summary>
public ushort GetBestScore(PokeathlonEvent4 index)
{
ArgumentOutOfRangeException.ThrowIfGreaterThanOrEqual((uint)index, (uint)PokeathlonEvent4.MAX_COUNT);
ArgumentOutOfRangeException.ThrowIfGreaterThanOrEqual((uint)index, (uint)PokeathlonEvent4.Count);
return ReadUInt16LittleEndian(Data[(0xAEC + ((int)index * 2))..]);
}
public void SetBestScore(PokeathlonEvent4 index, ushort score)
{
ArgumentOutOfRangeException.ThrowIfGreaterThanOrEqual((uint)index, (uint)PokeathlonEvent4.MAX_COUNT);
ArgumentOutOfRangeException.ThrowIfGreaterThanOrEqual((uint)index, (uint)PokeathlonEvent4.Count);
WriteUInt16LittleEndian(Data[(0xAEC + ((int)index * 2))..], score);
}
@@ -93,10 +93,10 @@ public void SetBestScore(PokeathlonEvent4 index, ushort score)
public uint CalculateGlobalScore()
{
uint result = 0;
for (PokeathlonStat4 i = 0; i < PokeathlonStat4.MAX_COUNT; i++)
for (PokeathlonStat4 i = 0; i < PokeathlonStat4.Count; i++)
result += GetCourseRecord(i).ScoreMax;
result += Medals.GetTotalCount();
for (PokeathlonEvent4 i = 0; i < PokeathlonEvent4.MAX_COUNT; i++)
for (PokeathlonEvent4 i = 0; i < PokeathlonEvent4.Count; i++)
result += GetBestScore(i);
return result;
}
@@ -250,6 +250,9 @@ public struct PokeathlonConnection4(Memory<byte> Raw)
public PokeathlonEventData4 Inner => new(Raw.Slice(0 * PokeathlonEventData4.SIZE, PokeathlonEventData4.SIZE));
/// <summary>
/// Correlated to the <see cref="Inner"/> indexed records.
/// </summary>
public PokeathlonEventTrainer4 GetTrainer(int index)
{
ArgumentOutOfRangeException.ThrowIfGreaterThanOrEqual((uint)index, MaxTrainer);
@@ -363,12 +366,12 @@ public struct PokeathlonGlobalCounters4(Memory<byte> Raw)
{
get
{
ArgumentOutOfRangeException.ThrowIfGreaterThanOrEqual((uint)index, (uint)PokeathlonEvent4.MAX_COUNT);
ArgumentOutOfRangeException.ThrowIfGreaterThanOrEqual((uint)index, (uint)PokeathlonEvent4.Count);
return ReadUInt32LittleEndian(Data[(0x44 + ((int)index * 4))..]);
}
set
{
ArgumentOutOfRangeException.ThrowIfGreaterThanOrEqual((uint)index, (uint)PokeathlonEvent4.MAX_COUNT);
ArgumentOutOfRangeException.ThrowIfGreaterThanOrEqual((uint)index, (uint)PokeathlonEvent4.Count);
WriteUInt32LittleEndian(Data[(0x44 + ((int)index * 4))..], Math.Min(MaxStat, value));
}
}
@@ -379,7 +382,7 @@ public uint TotalEventFirst
get
{
uint total = 0;
for (PokeathlonEvent4 i = 0; i < PokeathlonEvent4.MAX_COUNT; i++)
for (PokeathlonEvent4 i = 0; i < PokeathlonEvent4.Count; i++)
total += this[i];
return total;
}
@@ -548,7 +551,7 @@ public enum PokeathlonStat4 : byte
Stamina = 3,
Jump = 4,
MAX_COUNT = 5,
Count = 5,
}
public enum PokeathlonEvent4 : byte
@@ -564,7 +567,7 @@ public enum PokeathlonEvent4 : byte
SnowThrow = 8,
GoalRoll = 9,
MAX_COUNT = 10,
Count = 10,
}
/// <summary>
@@ -608,5 +611,5 @@ public enum DataCard4 : byte
Instructions = 25, // Pokémon Instructions
TimeSpent = 26, // Time Spent in Pokéathlon
MAX_COUNT = 27,
Count = 27,
};

View File

@@ -93,6 +93,7 @@ private void InitializeComponent()
B_FestivalPlaza = new System.Windows.Forms.Button();
B_MailBox = new System.Windows.Forms.Button();
B_OpenApricorn = new System.Windows.Forms.Button();
B_OpenPokeathlon = new System.Windows.Forms.Button();
B_Raids = new System.Windows.Forms.Button();
B_RaidsDLC1 = new System.Windows.Forms.Button();
B_RaidsDLC2 = new System.Windows.Forms.Button();
@@ -443,6 +444,7 @@ private void InitializeComponent()
FLP_SAVtools.Controls.Add(B_OpenGeonetEditor);
FLP_SAVtools.Controls.Add(B_OpenUnityTowerEditor);
FLP_SAVtools.Controls.Add(B_OpenJoinAvenueEditor);
FLP_SAVtools.Controls.Add(B_OpenPokeathlon);
FLP_SAVtools.Controls.Add(B_OpenMedalsEditor);
FLP_SAVtools.Controls.Add(B_OpenChatterEditor);
FLP_SAVtools.Controls.Add(B_Roamer);
@@ -835,7 +837,7 @@ private void InitializeComponent()
//
// B_Raids
//
B_Raids.Location = new System.Drawing.Point(4, 324);
B_Raids.Location = new System.Drawing.Point(108, 324);
B_Raids.Margin = new System.Windows.Forms.Padding(4);
B_Raids.Name = "B_Raids";
B_Raids.Size = new System.Drawing.Size(96, 32);
@@ -844,9 +846,20 @@ private void InitializeComponent()
B_Raids.UseVisualStyleBackColor = true;
B_Raids.Click += B_OpenRaids_Click;
//
// B_OpenPokeathlon
//
B_OpenPokeathlon.Location = new System.Drawing.Point(4, 324);
B_OpenPokeathlon.Margin = new System.Windows.Forms.Padding(4);
B_OpenPokeathlon.Name = "B_OpenPokeathlon";
B_OpenPokeathlon.Size = new System.Drawing.Size(96, 32);
B_OpenPokeathlon.TabIndex = 1;
B_OpenPokeathlon.Text = "Pokéathlon";
B_OpenPokeathlon.UseVisualStyleBackColor = true;
B_OpenPokeathlon.Click += B_OpenPokeathlon_Click;
//
// B_RaidsDLC1
//
B_RaidsDLC1.Location = new System.Drawing.Point(108, 324);
B_RaidsDLC1.Location = new System.Drawing.Point(212, 324);
B_RaidsDLC1.Margin = new System.Windows.Forms.Padding(4);
B_RaidsDLC1.Name = "B_RaidsDLC1";
B_RaidsDLC1.Size = new System.Drawing.Size(96, 32);
@@ -857,7 +870,7 @@ private void InitializeComponent()
//
// B_RaidsDLC2
//
B_RaidsDLC2.Location = new System.Drawing.Point(212, 324);
B_RaidsDLC2.Location = new System.Drawing.Point(316, 324);
B_RaidsDLC2.Margin = new System.Windows.Forms.Padding(4);
B_RaidsDLC2.Name = "B_RaidsDLC2";
B_RaidsDLC2.Size = new System.Drawing.Size(96, 32);
@@ -868,7 +881,7 @@ private void InitializeComponent()
//
// B_Blocks
//
B_Blocks.Location = new System.Drawing.Point(316, 324);
B_Blocks.Location = new System.Drawing.Point(4, 364);
B_Blocks.Margin = new System.Windows.Forms.Padding(4);
B_Blocks.Name = "B_Blocks";
B_Blocks.Size = new System.Drawing.Size(96, 32);
@@ -879,7 +892,7 @@ private void InitializeComponent()
//
// B_OtherSlots
//
B_OtherSlots.Location = new System.Drawing.Point(4, 364);
B_OtherSlots.Location = new System.Drawing.Point(108, 364);
B_OtherSlots.Margin = new System.Windows.Forms.Padding(4);
B_OtherSlots.Name = "B_OtherSlots";
B_OtherSlots.Size = new System.Drawing.Size(96, 32);
@@ -890,7 +903,7 @@ private void InitializeComponent()
//
// B_OpenSealStickers
//
B_OpenSealStickers.Location = new System.Drawing.Point(108, 364);
B_OpenSealStickers.Location = new System.Drawing.Point(212, 364);
B_OpenSealStickers.Margin = new System.Windows.Forms.Padding(4);
B_OpenSealStickers.Name = "B_OpenSealStickers";
B_OpenSealStickers.Size = new System.Drawing.Size(96, 32);
@@ -901,7 +914,7 @@ private void InitializeComponent()
//
// B_Poffins
//
B_Poffins.Location = new System.Drawing.Point(212, 364);
B_Poffins.Location = new System.Drawing.Point(316, 364);
B_Poffins.Margin = new System.Windows.Forms.Padding(4);
B_Poffins.Name = "B_Poffins";
B_Poffins.Size = new System.Drawing.Size(96, 32);
@@ -912,7 +925,7 @@ private void InitializeComponent()
//
// B_RaidsSevenStar
//
B_RaidsSevenStar.Location = new System.Drawing.Point(316, 364);
B_RaidsSevenStar.Location = new System.Drawing.Point(4, 404);
B_RaidsSevenStar.Margin = new System.Windows.Forms.Padding(4);
B_RaidsSevenStar.Name = "B_RaidsSevenStar";
B_RaidsSevenStar.Size = new System.Drawing.Size(96, 32);
@@ -923,7 +936,7 @@ private void InitializeComponent()
//
// B_OpenBattlePass
//
B_OpenBattlePass.Location = new System.Drawing.Point(4, 404);
B_OpenBattlePass.Location = new System.Drawing.Point(108, 404);
B_OpenBattlePass.Margin = new System.Windows.Forms.Padding(4);
B_OpenBattlePass.Name = "B_OpenBattlePass";
B_OpenBattlePass.Size = new System.Drawing.Size(96, 32);
@@ -934,7 +947,7 @@ private void InitializeComponent()
//
// B_OpenGear
//
B_OpenGear.Location = new System.Drawing.Point(108, 404);
B_OpenGear.Location = new System.Drawing.Point(212, 404);
B_OpenGear.Margin = new System.Windows.Forms.Padding(4);
B_OpenGear.Name = "B_OpenGear";
B_OpenGear.Size = new System.Drawing.Size(96, 32);
@@ -945,7 +958,7 @@ private void InitializeComponent()
//
// B_OpenFashion
//
B_OpenFashion.Location = new System.Drawing.Point(212, 404);
B_OpenFashion.Location = new System.Drawing.Point(316, 404);
B_OpenFashion.Margin = new System.Windows.Forms.Padding(4);
B_OpenFashion.Name = "B_OpenFashion";
B_OpenFashion.Size = new System.Drawing.Size(96, 32);
@@ -1137,6 +1150,7 @@ private void InitializeComponent()
private System.Windows.Forms.Button B_FestivalPlaza;
private System.Windows.Forms.Button B_MailBox;
private System.Windows.Forms.Button B_OpenApricorn;
private System.Windows.Forms.Button B_OpenPokeathlon;
internal SlotList SL_Extra;
private PartyEditor SL_Party;
private System.Windows.Forms.Button B_Raids;

View File

@@ -639,6 +639,7 @@ private static void OpenDialog(Form f)
private void B_CellsStickers_Click(object sender, EventArgs e) => OpenDialog(new SAV_ZygardeCell((SAV7)SAV));
private void B_LinkInfo_Click(object sender, EventArgs e) => OpenDialog(new SAV_Link6(SAV));
private void B_OpenApricorn_Click(object sender, EventArgs e) => OpenDialog(new SAV_Apricorn((SAV4HGSS)SAV));
private void B_OpenPokeathlon_Click(object sender, EventArgs e) => OpenDialog(new SAV_Pokeathlon4((SAV4HGSS)SAV));
private void B_DLC_Click(object sender, EventArgs e) => OpenDialog(new SAV_DLC5((SAV5)SAV));
private void B_OpenTrainerInfo_Click(object sender, EventArgs e) => OpenDialog(GetTrainerEditor(SAV));
private void B_OpenOPowers_Click(object sender, EventArgs e) => OpenDialog(new SAV_OPower((ISaveBlock6Main)SAV));
@@ -1318,6 +1319,7 @@ private void ToggleViewSubEditors(SaveFile sav)
B_OpenBattlePass.Visible = B_OpenGear.Visible = sav is SAV4BR;
B_OpenSealStickers.Visible = B_Poffins.Visible = sav is SAV8BS;
B_OpenApricorn.Visible = sav is SAV4HGSS;
B_OpenPokeathlon.Visible = sav is SAV4HGSS;
B_OpenRTCEditor.Visible = (sav.Generation == 2 && sav is not SAV2Stadium) || sav is SAV3 { SmallBlock: ISaveBlock3SmallHoenn };
B_MailBox.Visible = sav is SAV2 or SAV2Stadium or SAV3 or SAV4 or SAV5;

View File

@@ -48,6 +48,7 @@ SAV_Misc8b=Sonstiges
SAV_MysteryGiftDB=Datenbank
SAV_OPower=O-Kraft-Editor
SAV_Poffin8b=Knursp-Editor
SAV_Pokeathlon4=Pokéathlon-Editor
SAV_Pokebean=Pokébohnen-Editor
SAV_PokeBlockORAS=Pokériegel-Editor
SAV_Pokedex4=Pokédex-Editor
@@ -429,6 +430,7 @@ Main.B_OpenLinkInfo=Pokémon-Link
Main.B_OpenMedalsEditor=Medaillen
Main.B_OpenMiscEditor=Sonstiges
Main.B_OpenOPowers=O-Kräfte
Main.B_OpenPokeathlon=Pokéathlon
Main.B_OpenPokeBeans=Pokébohnen
Main.B_OpenPokeblocks=Pokériegel
Main.B_OpenPokedex=Pokédex
@@ -914,6 +916,21 @@ PlayerSkinColor8.PaleF=Hell (Weiblich)
PlayerSkinColor8.PaleM=Hell (Männlich)
PlayerSkinColor8.TanF=Gebräunt (Weiblich)
PlayerSkinColor8.TanM=Gebräunt (Männlich)
PokeathlonEvent4.BlockSmash=Blöcke brechen
PokeathlonEvent4.CirclePush=Kreisschieben
PokeathlonEvent4.DiscCatch=Scheibenfangen
PokeathlonEvent4.GoalRoll=Zielrollen
PokeathlonEvent4.HurdleDash=Hürdenlauf
PokeathlonEvent4.LampJump=Lampensprung
PokeathlonEvent4.PennantCapture=Fähnchenfang
PokeathlonEvent4.RelayRun=Staffellauf
PokeathlonEvent4.RingDrop=Ringwurf
PokeathlonEvent4.SnowThrow=Schneewurf
PokeathlonStat4.Jump=Sprung
PokeathlonStat4.Power=Kraft
PokeathlonStat4.Skill=Technik
PokeathlonStat4.Speed=Tempo
PokeathlonStat4.Stamina=Ausdauer
PokeSize.L=L
PokeSize.M=M
PokeSize.S=S
@@ -1834,6 +1851,80 @@ SAV_Poffin8b.B_All=Alle
SAV_Poffin8b.B_Cancel=Abbr.
SAV_Poffin8b.B_None=Keine
SAV_Poffin8b.B_Save=Speich.
SAV_Pokeathlon4.B_Cancel=Abbrechen
SAV_Pokeathlon4.B_MedalsClearAll=Alle entfernen
SAV_Pokeathlon4.B_MedalsGiveAll=Alle geben
SAV_Pokeathlon4.B_Save=Speichern
SAV_Pokeathlon4.CHK_IsShiny=Schillernd
SAV_Pokeathlon4.DGV_Jump=Sprung
SAV_Pokeathlon4.DGV_Power=Kraft
SAV_Pokeathlon4.DGV_Skill=Technik
SAV_Pokeathlon4.DGV_Species=Spezies
SAV_Pokeathlon4.DGV_Speed=Tempo
SAV_Pokeathlon4.DGV_Sprite=Sprite
SAV_Pokeathlon4.DGV_Stamina=Ausdauer
SAV_Pokeathlon4.L_Acquired=Erhalten:
SAV_Pokeathlon4.L_Attempts=Versuche:
SAV_Pokeathlon4.L_BlockSmashFirst=Blöcke brechen 1. Platz:
SAV_Pokeathlon4.L_BonusesEarned=Boni erhalten:
SAV_Pokeathlon4.L_CirclePushFirst=Kreisschieben 1. Platz:
SAV_Pokeathlon4.L_ConnectionFirst=Verbindung 1. Platz:
SAV_Pokeathlon4.L_ConnectionIndex=Index:
SAV_Pokeathlon4.L_ConnectionJoined=Verbindungen absolviert:
SAV_Pokeathlon4.L_ConnectionLast=Verbindung letzter Platz:
SAV_Pokeathlon4.L_CourseIndex=Index:
SAV_Pokeathlon4.L_CourseParticipant0=Teilnehmer 1:
SAV_Pokeathlon4.L_CourseParticipant1=Teilnehmer 2:
SAV_Pokeathlon4.L_CourseParticipant2=Teilnehmer 3:
SAV_Pokeathlon4.L_CourseScore0=Punktzahl 1:
SAV_Pokeathlon4.L_CourseScore1=Punktzahl 2:
SAV_Pokeathlon4.L_CourseScore2=Punktzahl 3:
SAV_Pokeathlon4.L_CourseScoreMax=Max. Punktzahl:
SAV_Pokeathlon4.L_DailyShopFlags=Tagesladen:
SAV_Pokeathlon4.L_Dashed=Gesprintet:
SAV_Pokeathlon4.L_DataCards=Datenkarten:
SAV_Pokeathlon4.L_DiscCatchFirst=Scheibenfangen 1. Platz:
SAV_Pokeathlon4.L_Failed=Gescheitert:
SAV_Pokeathlon4.L_Fame=Ruhm:
SAV_Pokeathlon4.L_FellDown=Gefallen:
SAV_Pokeathlon4.L_GoalRollFirst=Zielrollen 1. Platz:
SAV_Pokeathlon4.L_HurdleDashFirst=Hürdenlauf 1. Platz:
SAV_Pokeathlon4.L_Instructions=Anleitungen:
SAV_Pokeathlon4.L_Jumped=Gesprungen:
SAV_Pokeathlon4.L_LampJumpFirst=Lampensprung 1. Platz:
SAV_Pokeathlon4.L_Language=Sprache:
SAV_Pokeathlon4.L_OT=OT:
SAV_Pokeathlon4.L_PennantCaptureFirst=Fähnchenfang 1. Platz:
SAV_Pokeathlon4.L_PID=PID:
SAV_Pokeathlon4.L_PlacedFirst=1. Platz:
SAV_Pokeathlon4.L_PlacedLast=Letzter Platz:
SAV_Pokeathlon4.L_Points=Punkte:
SAV_Pokeathlon4.L_Record=Rekord:
SAV_Pokeathlon4.L_RelayRunFirst=Staffellauf 1. Platz:
SAV_Pokeathlon4.L_RingDropFirst=Ringwurf 1. Platz:
SAV_Pokeathlon4.L_SelfEventIndex=Index:
SAV_Pokeathlon4.L_SelfImpeded=Selbst behindert:
SAV_Pokeathlon4.L_SessionsJoined=Sitzungen beigetreten:
SAV_Pokeathlon4.L_SID16=SID:
SAV_Pokeathlon4.L_SnowThrowFirst=Schneewurf 1. Platz:
SAV_Pokeathlon4.L_Switched=Gewechselt:
SAV_Pokeathlon4.L_Tackled=Getackelt:
SAV_Pokeathlon4.L_TID16=TID:
SAV_Pokeathlon4.L_TimeSpent=Zeit verbracht:
SAV_Pokeathlon4.L_TotalEventFirst=Gesamt 1. Platz:
SAV_Pokeathlon4.L_TotalEventLast=Gesamt letzter Platz:
SAV_Pokeathlon4.L_Trainer0=Trainer 1:
SAV_Pokeathlon4.L_Trainer1=Trainer 2:
SAV_Pokeathlon4.L_Trainer2=Trainer 3:
SAV_Pokeathlon4.L_Trainer3=Trainer 4:
SAV_Pokeathlon4.L_Trainer4=Trainer 5:
SAV_Pokeathlon4.Tab_Best=Bestwerte
SAV_Pokeathlon4.Tab_Connection=Verbindung
SAV_Pokeathlon4.Tab_Counters=Zähler
SAV_Pokeathlon4.Tab_Courses=Courses
SAV_Pokeathlon4.Tab_General=Allgemein
SAV_Pokeathlon4.Tab_Medals=Medaillen
SAV_Pokeathlon4.Tab_SelfEvent=Eigenes Event
SAV_Pokebean.B_All=Alle
SAV_Pokebean.B_Cancel=Abbrechen
SAV_Pokebean.B_None=Keine

View File

@@ -48,6 +48,7 @@ SAV_Misc8b=Misc Editor
SAV_MysteryGiftDB=Database
SAV_OPower=O-Power Editor
SAV_Poffin8b=Poffin Editor
SAV_Pokeathlon4=Pokéathlon Editor
SAV_Pokebean=Poké Beans Editor
SAV_PokeBlockORAS=Pokéblock Editor
SAV_Pokedex4=Pokédex Editor
@@ -429,6 +430,7 @@ Main.B_OpenLinkInfo=Link Data
Main.B_OpenMedalsEditor=Medals
Main.B_OpenMiscEditor=Misc Edits
Main.B_OpenOPowers=O-Powers
Main.B_OpenPokeathlon=Pokéathlon
Main.B_OpenPokeBeans=Poké Beans
Main.B_OpenPokeblocks=Pokéblocks
Main.B_OpenPokedex=Pokédex
@@ -914,6 +916,21 @@ PlayerSkinColor8.PaleF=Pale (Female)
PlayerSkinColor8.PaleM=Pale (Male)
PlayerSkinColor8.TanF=Tan (Female)
PlayerSkinColor8.TanM=Tan (Male)
PokeathlonEvent4.BlockSmash=Block Smash
PokeathlonEvent4.CirclePush=Circle Push
PokeathlonEvent4.DiscCatch=Disc Catch
PokeathlonEvent4.GoalRoll=Goal Roll
PokeathlonEvent4.HurdleDash=Hurdle Dash
PokeathlonEvent4.LampJump=Lamp Jump
PokeathlonEvent4.PennantCapture=Pennant Capture
PokeathlonEvent4.RelayRun=Relay Run
PokeathlonEvent4.RingDrop=Ring Drop
PokeathlonEvent4.SnowThrow=Snow Throw
PokeathlonStat4.Jump=Jump
PokeathlonStat4.Power=Power
PokeathlonStat4.Skill=Skill
PokeathlonStat4.Speed=Speed
PokeathlonStat4.Stamina=Stamina
PokeSize.L=L
PokeSize.M=M
PokeSize.S=S
@@ -1834,6 +1851,80 @@ SAV_Poffin8b.B_All=All
SAV_Poffin8b.B_Cancel=Cancel
SAV_Poffin8b.B_None=None
SAV_Poffin8b.B_Save=Save
SAV_Pokeathlon4.B_Cancel=Cancel
SAV_Pokeathlon4.B_MedalsClearAll=Clear All
SAV_Pokeathlon4.B_MedalsGiveAll=Give All
SAV_Pokeathlon4.B_Save=Save
SAV_Pokeathlon4.CHK_IsShiny=Shiny
SAV_Pokeathlon4.DGV_Jump=Jump
SAV_Pokeathlon4.DGV_Power=Power
SAV_Pokeathlon4.DGV_Skill=Skill
SAV_Pokeathlon4.DGV_Species=Species
SAV_Pokeathlon4.DGV_Speed=Speed
SAV_Pokeathlon4.DGV_Sprite=Sprite
SAV_Pokeathlon4.DGV_Stamina=Stamina
SAV_Pokeathlon4.L_Acquired=Acquired:
SAV_Pokeathlon4.L_Attempts=Attempts:
SAV_Pokeathlon4.L_BlockSmashFirst=Block Smash 1st:
SAV_Pokeathlon4.L_BonusesEarned=Bonuses Earned:
SAV_Pokeathlon4.L_CirclePushFirst=Circle Push 1st:
SAV_Pokeathlon4.L_ConnectionFirst=Connection 1st:
SAV_Pokeathlon4.L_ConnectionIndex=Index:
SAV_Pokeathlon4.L_ConnectionJoined=Connections Joined:
SAV_Pokeathlon4.L_ConnectionLast=Connection Last:
SAV_Pokeathlon4.L_CourseIndex=Index:
SAV_Pokeathlon4.L_CourseParticipant0=Participant 1:
SAV_Pokeathlon4.L_CourseParticipant1=Participant 2:
SAV_Pokeathlon4.L_CourseParticipant2=Participant 3:
SAV_Pokeathlon4.L_CourseScore0=Score 1:
SAV_Pokeathlon4.L_CourseScore1=Score 2:
SAV_Pokeathlon4.L_CourseScore2=Score 3:
SAV_Pokeathlon4.L_CourseScoreMax=Max Score:
SAV_Pokeathlon4.L_DailyShopFlags=Daily Shop:
SAV_Pokeathlon4.L_Dashed=Dashed:
SAV_Pokeathlon4.L_DataCards=Data Cards:
SAV_Pokeathlon4.L_DiscCatchFirst=Disc Catch 1st:
SAV_Pokeathlon4.L_Failed=Failed:
SAV_Pokeathlon4.L_Fame=Fame:
SAV_Pokeathlon4.L_FellDown=Fell Down:
SAV_Pokeathlon4.L_GoalRollFirst=Goal Roll 1st:
SAV_Pokeathlon4.L_HurdleDashFirst=Hurdle Dash 1st:
SAV_Pokeathlon4.L_Instructions=Instructions:
SAV_Pokeathlon4.L_Jumped=Jumped:
SAV_Pokeathlon4.L_LampJumpFirst=Lamp Jump 1st:
SAV_Pokeathlon4.L_Language=Language:
SAV_Pokeathlon4.L_OT=OT:
SAV_Pokeathlon4.L_PennantCaptureFirst=Pennant Capture 1st:
SAV_Pokeathlon4.L_PID=PID:
SAV_Pokeathlon4.L_PlacedFirst=Placed 1st:
SAV_Pokeathlon4.L_PlacedLast=Placed Last:
SAV_Pokeathlon4.L_Points=Points:
SAV_Pokeathlon4.L_Record=Record:
SAV_Pokeathlon4.L_RelayRunFirst=Relay Run 1st:
SAV_Pokeathlon4.L_RingDropFirst=Ring Drop 1st:
SAV_Pokeathlon4.L_SelfEventIndex=Index:
SAV_Pokeathlon4.L_SelfImpeded=Self-Impeded:
SAV_Pokeathlon4.L_SessionsJoined=Sessions Joined:
SAV_Pokeathlon4.L_SID16=SID:
SAV_Pokeathlon4.L_SnowThrowFirst=Snow Throw 1st:
SAV_Pokeathlon4.L_Switched=Switched:
SAV_Pokeathlon4.L_Tackled=Tackled:
SAV_Pokeathlon4.L_TID16=TID:
SAV_Pokeathlon4.L_TimeSpent=Time Spent:
SAV_Pokeathlon4.L_TotalEventFirst=Total Event 1st:
SAV_Pokeathlon4.L_TotalEventLast=Total Event Last:
SAV_Pokeathlon4.L_Trainer0=Trainer 1:
SAV_Pokeathlon4.L_Trainer1=Trainer 2:
SAV_Pokeathlon4.L_Trainer2=Trainer 3:
SAV_Pokeathlon4.L_Trainer3=Trainer 4:
SAV_Pokeathlon4.L_Trainer4=Trainer 5:
SAV_Pokeathlon4.Tab_Best=Best
SAV_Pokeathlon4.Tab_Connection=Connection
SAV_Pokeathlon4.Tab_Counters=Counters
SAV_Pokeathlon4.Tab_Courses=Courses
SAV_Pokeathlon4.Tab_General=General
SAV_Pokeathlon4.Tab_Medals=Medals
SAV_Pokeathlon4.Tab_SelfEvent=Self Event
SAV_Pokebean.B_All=All
SAV_Pokebean.B_Cancel=Cancel
SAV_Pokebean.B_None=None

View File

@@ -48,6 +48,7 @@ SAV_Misc8b=Editor Misceláneo
SAV_MysteryGiftDB=Base de Datos
SAV_OPower=Editor de Poder O
SAV_Poffin8b=Editor de Pokochos
SAV_Pokeathlon4=Editor de Pokéathlon
SAV_Pokebean=Editor de Pokéhaba
SAV_PokeBlockORAS=Editor de Pokécubos
SAV_Pokedex4=Editor de Pokédex
@@ -429,6 +430,7 @@ Main.B_OpenLinkInfo=Datos Nexo
Main.B_OpenMedalsEditor=Medallas
Main.B_OpenMiscEditor=Misceláneo
Main.B_OpenOPowers=Poder O
Main.B_OpenPokeathlon=Pokéathlon
Main.B_OpenPokeBeans=Pokéhabas
Main.B_OpenPokeblocks=Pokécubos
Main.B_OpenPokedex=Pokédex
@@ -914,6 +916,21 @@ PlayerSkinColor8.PaleF=Pálida (Hembra)
PlayerSkinColor8.PaleM=Pálido (Macho)
PlayerSkinColor8.TanF=Bronceada (Hembra)
PlayerSkinColor8.TanM=Bronceado (Macho)
PokeathlonEvent4.BlockSmash=Rompebloques
PokeathlonEvent4.CirclePush=Empuje Circular
PokeathlonEvent4.DiscCatch=Atrapa Discos
PokeathlonEvent4.GoalRoll=Rodada a Meta
PokeathlonEvent4.HurdleDash=Carrera de Vallas
PokeathlonEvent4.LampJump=Salto de Lámparas
PokeathlonEvent4.PennantCapture=Captura de Banderines
PokeathlonEvent4.RelayRun=Carrera de Relevos
PokeathlonEvent4.RingDrop=Caída de Anillos
PokeathlonEvent4.SnowThrow=Lanzamiento de Nieve
PokeathlonStat4.Jump=Salto
PokeathlonStat4.Power=Potencia
PokeathlonStat4.Skill=Técnica
PokeathlonStat4.Speed=Velocidad
PokeathlonStat4.Stamina=Resistencia
PokeSize.L=L
PokeSize.M=M
PokeSize.S=S
@@ -1834,6 +1851,80 @@ SAV_Poffin8b.B_All=Todos
SAV_Poffin8b.B_Cancel=Cancelar
SAV_Poffin8b.B_None=Ninguno
SAV_Poffin8b.B_Save=Guardar
SAV_Pokeathlon4.B_Cancel=Cancelar
SAV_Pokeathlon4.B_MedalsClearAll=Quitar todo
SAV_Pokeathlon4.B_MedalsGiveAll=Dar todo
SAV_Pokeathlon4.B_Save=Guardar
SAV_Pokeathlon4.CHK_IsShiny=Variocolor
SAV_Pokeathlon4.DGV_Jump=Salto
SAV_Pokeathlon4.DGV_Power=Potencia
SAV_Pokeathlon4.DGV_Skill=Técnica
SAV_Pokeathlon4.DGV_Species=Especie
SAV_Pokeathlon4.DGV_Speed=Velocidad
SAV_Pokeathlon4.DGV_Sprite=Sprite
SAV_Pokeathlon4.DGV_Stamina=Resistencia
SAV_Pokeathlon4.L_Acquired=Obtenido:
SAV_Pokeathlon4.L_Attempts=Intentos:
SAV_Pokeathlon4.L_BlockSmashFirst=Rompebloques 1.º:
SAV_Pokeathlon4.L_BonusesEarned=Bonos conseguidos:
SAV_Pokeathlon4.L_CirclePushFirst=Empuje Circular 1.º:
SAV_Pokeathlon4.L_ConnectionFirst=Conexión 1.º:
SAV_Pokeathlon4.L_ConnectionIndex=Índice:
SAV_Pokeathlon4.L_ConnectionJoined=Conexiones jugadas:
SAV_Pokeathlon4.L_ConnectionLast=Conexión último:
SAV_Pokeathlon4.L_CourseIndex=Índice:
SAV_Pokeathlon4.L_CourseParticipant0=Participante 1:
SAV_Pokeathlon4.L_CourseParticipant1=Participante 2:
SAV_Pokeathlon4.L_CourseParticipant2=Participante 3:
SAV_Pokeathlon4.L_CourseScore0=Puntuación 1:
SAV_Pokeathlon4.L_CourseScore1=Puntuación 2:
SAV_Pokeathlon4.L_CourseScore2=Puntuación 3:
SAV_Pokeathlon4.L_CourseScoreMax=Puntuación máxima:
SAV_Pokeathlon4.L_DailyShopFlags=Tienda diaria:
SAV_Pokeathlon4.L_Dashed=Carrera:
SAV_Pokeathlon4.L_DataCards=Tarjetas de datos:
SAV_Pokeathlon4.L_DiscCatchFirst=Atrapa Discos 1.º:
SAV_Pokeathlon4.L_Failed=Fallos:
SAV_Pokeathlon4.L_Fame=Fama:
SAV_Pokeathlon4.L_FellDown=Se cayó:
SAV_Pokeathlon4.L_GoalRollFirst=Rodada a Meta 1.º:
SAV_Pokeathlon4.L_HurdleDashFirst=Carrera de Vallas 1.º:
SAV_Pokeathlon4.L_Instructions=Instrucciones:
SAV_Pokeathlon4.L_Jumped=Saltó:
SAV_Pokeathlon4.L_LampJumpFirst=Salto de Lámparas 1.º:
SAV_Pokeathlon4.L_Language=Idioma:
SAV_Pokeathlon4.L_OT=OT:
SAV_Pokeathlon4.L_PennantCaptureFirst=Captura de Banderines 1.º:
SAV_Pokeathlon4.L_PID=PID:
SAV_Pokeathlon4.L_PlacedFirst=Quedó 1.º:
SAV_Pokeathlon4.L_PlacedLast=Quedó último:
SAV_Pokeathlon4.L_Points=Puntos:
SAV_Pokeathlon4.L_Record=Récord:
SAV_Pokeathlon4.L_RelayRunFirst=Carrera de Relevos 1.º:
SAV_Pokeathlon4.L_RingDropFirst=Caída de Anillos 1.º:
SAV_Pokeathlon4.L_SelfEventIndex=Índice:
SAV_Pokeathlon4.L_SelfImpeded=Se estorbó a sí mismo:
SAV_Pokeathlon4.L_SessionsJoined=Sesiones jugadas:
SAV_Pokeathlon4.L_SID16=SID:
SAV_Pokeathlon4.L_SnowThrowFirst=Lanzamiento de Nieve 1.º:
SAV_Pokeathlon4.L_Switched=Cambió:
SAV_Pokeathlon4.L_Tackled=Placó:
SAV_Pokeathlon4.L_TID16=TID:
SAV_Pokeathlon4.L_TimeSpent=Tiempo invertido:
SAV_Pokeathlon4.L_TotalEventFirst=Total 1.º:
SAV_Pokeathlon4.L_TotalEventLast=Total último:
SAV_Pokeathlon4.L_Trainer0=Entrenador 1:
SAV_Pokeathlon4.L_Trainer1=Entrenador 2:
SAV_Pokeathlon4.L_Trainer2=Entrenador 3:
SAV_Pokeathlon4.L_Trainer3=Entrenador 4:
SAV_Pokeathlon4.L_Trainer4=Entrenador 5:
SAV_Pokeathlon4.Tab_Best=Récords
SAV_Pokeathlon4.Tab_Connection=Conexión
SAV_Pokeathlon4.Tab_Counters=Contadores
SAV_Pokeathlon4.Tab_Courses=Cursos
SAV_Pokeathlon4.Tab_General=General
SAV_Pokeathlon4.Tab_Medals=Medallas
SAV_Pokeathlon4.Tab_SelfEvent=Evento propio
SAV_Pokebean.B_All=Todos
SAV_Pokebean.B_Cancel=Cancelar
SAV_Pokebean.B_None=Ninguno

View File

@@ -48,6 +48,7 @@ SAV_Misc8b=Editor de Varios
SAV_MysteryGiftDB=Base de Datos
SAV_OPower=Editor de Poder O
SAV_Poffin8b=Editor de Pokochos
SAV_Pokeathlon4=Editor de Pokéathlon
SAV_Pokebean=Editor de Pokéhaba
SAV_PokeBlockORAS=Editor de Pokécubos
SAV_Pokedex4=Editor de Pokédex
@@ -429,6 +430,7 @@ Main.B_OpenLinkInfo=Datos Nexo
Main.B_OpenMedalsEditor=Medallas
Main.B_OpenMiscEditor=Varios
Main.B_OpenOPowers=Poder O
Main.B_OpenPokeathlon=Pokéathlon
Main.B_OpenPokeBeans=Pokéhabas
Main.B_OpenPokeblocks=Pokécubos
Main.B_OpenPokedex=Pokédex
@@ -914,6 +916,21 @@ PlayerSkinColor8.PaleF=Pálida (Hembra)
PlayerSkinColor8.PaleM=Pálido (Macho)
PlayerSkinColor8.TanF=Bronceada (Hembra)
PlayerSkinColor8.TanM=Bronceado (Macho)
PokeathlonEvent4.BlockSmash=Rompebloques
PokeathlonEvent4.CirclePush=Empuje Circular
PokeathlonEvent4.DiscCatch=Atrapa Discos
PokeathlonEvent4.GoalRoll=Rodada a Meta
PokeathlonEvent4.HurdleDash=Carrera de Vallas
PokeathlonEvent4.LampJump=Salto de Lámparas
PokeathlonEvent4.PennantCapture=Captura de Banderines
PokeathlonEvent4.RelayRun=Carrera de Relevos
PokeathlonEvent4.RingDrop=Caída de Anillos
PokeathlonEvent4.SnowThrow=Lanzamiento de Nieve
PokeathlonStat4.Jump=Salto
PokeathlonStat4.Power=Potencia
PokeathlonStat4.Skill=Técnica
PokeathlonStat4.Speed=Velocidad
PokeathlonStat4.Stamina=Resistencia
PokeSize.L=L
PokeSize.M=M
PokeSize.S=S
@@ -1834,6 +1851,80 @@ SAV_Poffin8b.B_All=Todos
SAV_Poffin8b.B_Cancel=Cancelar
SAV_Poffin8b.B_None=Ninguno
SAV_Poffin8b.B_Save=Guardar
SAV_Pokeathlon4.B_Cancel=Cancelar
SAV_Pokeathlon4.B_MedalsClearAll=Quitar todo
SAV_Pokeathlon4.B_MedalsGiveAll=Dar todo
SAV_Pokeathlon4.B_Save=Guardar
SAV_Pokeathlon4.CHK_IsShiny=Variocolor
SAV_Pokeathlon4.DGV_Jump=Salto
SAV_Pokeathlon4.DGV_Power=Potencia
SAV_Pokeathlon4.DGV_Skill=Técnica
SAV_Pokeathlon4.DGV_Species=Especie
SAV_Pokeathlon4.DGV_Speed=Velocidad
SAV_Pokeathlon4.DGV_Sprite=Sprite
SAV_Pokeathlon4.DGV_Stamina=Resistencia
SAV_Pokeathlon4.L_Acquired=Obtenido:
SAV_Pokeathlon4.L_Attempts=Intentos:
SAV_Pokeathlon4.L_BlockSmashFirst=Rompebloques 1.º:
SAV_Pokeathlon4.L_BonusesEarned=Bonos conseguidos:
SAV_Pokeathlon4.L_CirclePushFirst=Empuje Circular 1.º:
SAV_Pokeathlon4.L_ConnectionFirst=Conexión 1.º:
SAV_Pokeathlon4.L_ConnectionIndex=Índice:
SAV_Pokeathlon4.L_ConnectionJoined=Conexiones jugadas:
SAV_Pokeathlon4.L_ConnectionLast=Conexión último:
SAV_Pokeathlon4.L_CourseIndex=Índice:
SAV_Pokeathlon4.L_CourseParticipant0=Participante 1:
SAV_Pokeathlon4.L_CourseParticipant1=Participante 2:
SAV_Pokeathlon4.L_CourseParticipant2=Participante 3:
SAV_Pokeathlon4.L_CourseScore0=Puntuación 1:
SAV_Pokeathlon4.L_CourseScore1=Puntuación 2:
SAV_Pokeathlon4.L_CourseScore2=Puntuación 3:
SAV_Pokeathlon4.L_CourseScoreMax=Puntuación máxima:
SAV_Pokeathlon4.L_DailyShopFlags=Tienda diaria:
SAV_Pokeathlon4.L_Dashed=Carrera:
SAV_Pokeathlon4.L_DataCards=Tarjetas de datos:
SAV_Pokeathlon4.L_DiscCatchFirst=Atrapa Discos 1.º:
SAV_Pokeathlon4.L_Failed=Fallos:
SAV_Pokeathlon4.L_Fame=Fama:
SAV_Pokeathlon4.L_FellDown=Se cayó:
SAV_Pokeathlon4.L_GoalRollFirst=Rodada a Meta 1.º:
SAV_Pokeathlon4.L_HurdleDashFirst=Carrera de Vallas 1.º:
SAV_Pokeathlon4.L_Instructions=Instrucciones:
SAV_Pokeathlon4.L_Jumped=Saltó:
SAV_Pokeathlon4.L_LampJumpFirst=Salto de Lámparas 1.º:
SAV_Pokeathlon4.L_Language=Idioma:
SAV_Pokeathlon4.L_OT=OT:
SAV_Pokeathlon4.L_PennantCaptureFirst=Captura de Banderines 1.º:
SAV_Pokeathlon4.L_PID=PID:
SAV_Pokeathlon4.L_PlacedFirst=Quedó 1.º:
SAV_Pokeathlon4.L_PlacedLast=Quedó último:
SAV_Pokeathlon4.L_Points=Puntos:
SAV_Pokeathlon4.L_Record=Récord:
SAV_Pokeathlon4.L_RelayRunFirst=Carrera de Relevos 1.º:
SAV_Pokeathlon4.L_RingDropFirst=Caída de Anillos 1.º:
SAV_Pokeathlon4.L_SelfEventIndex=Índice:
SAV_Pokeathlon4.L_SelfImpeded=Se estorbó a sí mismo:
SAV_Pokeathlon4.L_SessionsJoined=Sesiones jugadas:
SAV_Pokeathlon4.L_SID16=SID:
SAV_Pokeathlon4.L_SnowThrowFirst=Lanzamiento de Nieve 1.º:
SAV_Pokeathlon4.L_Switched=Cambió:
SAV_Pokeathlon4.L_Tackled=Placó:
SAV_Pokeathlon4.L_TID16=TID:
SAV_Pokeathlon4.L_TimeSpent=Tiempo invertido:
SAV_Pokeathlon4.L_TotalEventFirst=Total 1.º:
SAV_Pokeathlon4.L_TotalEventLast=Total último:
SAV_Pokeathlon4.L_Trainer0=Entrenador 1:
SAV_Pokeathlon4.L_Trainer1=Entrenador 2:
SAV_Pokeathlon4.L_Trainer2=Entrenador 3:
SAV_Pokeathlon4.L_Trainer3=Entrenador 4:
SAV_Pokeathlon4.L_Trainer4=Entrenador 5:
SAV_Pokeathlon4.Tab_Best=Récords
SAV_Pokeathlon4.Tab_Connection=Conexión
SAV_Pokeathlon4.Tab_Counters=Contadores
SAV_Pokeathlon4.Tab_Courses=Cursos
SAV_Pokeathlon4.Tab_General=General
SAV_Pokeathlon4.Tab_Medals=Medallas
SAV_Pokeathlon4.Tab_SelfEvent=Evento propio
SAV_Pokebean.B_All=Todos
SAV_Pokebean.B_Cancel=Cancelar
SAV_Pokebean.B_None=Ninguno

View File

@@ -48,6 +48,7 @@ SAV_Misc8b=Éditeur divers
SAV_MysteryGiftDB=Base de données
SAV_OPower=Éditeur O-Auras
SAV_Poffin8b=Éditeur Poffins
SAV_Pokeathlon4=Éditeur Pokéathlon
SAV_Pokebean=Éditeur Poké Fèves
SAV_PokeBlockORAS=Éditeur Pokéblocs
SAV_Pokedex4=Éditeur Pokédex
@@ -429,6 +430,7 @@ Main.B_OpenLinkInfo=Poké Lien
Main.B_OpenMedalsEditor=Médailles
Main.B_OpenMiscEditor=Éditeur divers
Main.B_OpenOPowers=O-Auras
Main.B_OpenPokeathlon=Pokéathlon
Main.B_OpenPokeBeans=Poké Fèves
Main.B_OpenPokeblocks=Pokéblocs
Main.B_OpenPokedex=Pokédex
@@ -914,6 +916,21 @@ PlayerSkinColor8.PaleF=Pâle (Femelle)
PlayerSkinColor8.PaleM=Pâle (Mâle)
PlayerSkinColor8.TanF=Bronzé (Femelle)
PlayerSkinColor8.TanM=Bronzé (Mâle)
PokeathlonEvent4.BlockSmash=Brise Blocs
PokeathlonEvent4.CirclePush=Poussée Circulaire
PokeathlonEvent4.DiscCatch=Attrape Disques
PokeathlonEvent4.GoalRoll=Roulé au But
PokeathlonEvent4.HurdleDash=Course de Haies
PokeathlonEvent4.LampJump=Saut de Lampes
PokeathlonEvent4.PennantCapture=Capture de Fanions
PokeathlonEvent4.RelayRun=Relais
PokeathlonEvent4.RingDrop=Chute d'Anneaux
PokeathlonEvent4.SnowThrow=Lancer de Neige
PokeathlonStat4.Jump=Saut
PokeathlonStat4.Power=Puissance
PokeathlonStat4.Skill=Technique
PokeathlonStat4.Speed=Vitesse
PokeathlonStat4.Stamina=Endurance
PokeSize.L=L
PokeSize.M=M
PokeSize.S=S
@@ -1834,6 +1851,80 @@ SAV_Poffin8b.B_All=Tout
SAV_Poffin8b.B_Cancel=Annuler
SAV_Poffin8b.B_None=Aucun
SAV_Poffin8b.B_Save=Sauvegarder
SAV_Pokeathlon4.B_Cancel=Annuler
SAV_Pokeathlon4.B_MedalsClearAll=Tout effacer
SAV_Pokeathlon4.B_MedalsGiveAll=Tout donner
SAV_Pokeathlon4.B_Save=Sauvegarder
SAV_Pokeathlon4.CHK_IsShiny=Chromatique
SAV_Pokeathlon4.DGV_Jump=Saut
SAV_Pokeathlon4.DGV_Power=Puissance
SAV_Pokeathlon4.DGV_Skill=Technique
SAV_Pokeathlon4.DGV_Species=Espèce
SAV_Pokeathlon4.DGV_Speed=Vitesse
SAV_Pokeathlon4.DGV_Sprite=Sprite
SAV_Pokeathlon4.DGV_Stamina=Endurance
SAV_Pokeathlon4.L_Acquired=Obtenu :
SAV_Pokeathlon4.L_Attempts=Tentatives :
SAV_Pokeathlon4.L_BlockSmashFirst=Brise Blocs 1re place :
SAV_Pokeathlon4.L_BonusesEarned=Bonus gagnés :
SAV_Pokeathlon4.L_CirclePushFirst=Poussée Circulaire 1re place :
SAV_Pokeathlon4.L_ConnectionFirst=Connexion 1re place :
SAV_Pokeathlon4.L_ConnectionIndex=Indice :
SAV_Pokeathlon4.L_ConnectionJoined=Connexions rejointes :
SAV_Pokeathlon4.L_ConnectionLast=Connexion dernière place :
SAV_Pokeathlon4.L_CourseIndex=Indice :
SAV_Pokeathlon4.L_CourseParticipant0=Participant 1 :
SAV_Pokeathlon4.L_CourseParticipant1=Participant 2 :
SAV_Pokeathlon4.L_CourseParticipant2=Participant 3 :
SAV_Pokeathlon4.L_CourseScore0=Score 1 :
SAV_Pokeathlon4.L_CourseScore1=Score 2 :
SAV_Pokeathlon4.L_CourseScore2=Score 3 :
SAV_Pokeathlon4.L_CourseScoreMax=Score max :
SAV_Pokeathlon4.L_DailyShopFlags=Boutique du jour :
SAV_Pokeathlon4.L_Dashed=Sprints :
SAV_Pokeathlon4.L_DataCards=Cartes de données :
SAV_Pokeathlon4.L_DiscCatchFirst=Attrape Disques 1re place :
SAV_Pokeathlon4.L_Failed=Échecs :
SAV_Pokeathlon4.L_Fame=Renommée :
SAV_Pokeathlon4.L_FellDown=Tombé :
SAV_Pokeathlon4.L_GoalRollFirst=Roulé au But 1re place :
SAV_Pokeathlon4.L_HurdleDashFirst=Course de Haies 1re place :
SAV_Pokeathlon4.L_Instructions=Instructions :
SAV_Pokeathlon4.L_Jumped=Sauts :
SAV_Pokeathlon4.L_LampJumpFirst=Saut de Lampes 1re place :
SAV_Pokeathlon4.L_Language=Langue :
SAV_Pokeathlon4.L_OT=DO :
SAV_Pokeathlon4.L_PennantCaptureFirst=Capture de Fanions 1re place :
SAV_Pokeathlon4.L_PID=PID:
SAV_Pokeathlon4.L_PlacedFirst=Placé 1er :
SAV_Pokeathlon4.L_PlacedLast=Placé dernier :
SAV_Pokeathlon4.L_Points=Points :
SAV_Pokeathlon4.L_Record=Record :
SAV_Pokeathlon4.L_RelayRunFirst=Relais 1re place :
SAV_Pokeathlon4.L_RingDropFirst=Chute d'Anneaux 1re place :
SAV_Pokeathlon4.L_SelfEventIndex=Indice :
SAV_Pokeathlon4.L_SelfImpeded=Gêné soi-même :
SAV_Pokeathlon4.L_SessionsJoined=Sessions rejointes :
SAV_Pokeathlon4.L_SID16=SID :
SAV_Pokeathlon4.L_SnowThrowFirst=Lancer de Neige 1re place :
SAV_Pokeathlon4.L_Switched=Changé :
SAV_Pokeathlon4.L_Tackled=Plaqué :
SAV_Pokeathlon4.L_TID16=TID :
SAV_Pokeathlon4.L_TimeSpent=Temps passé :
SAV_Pokeathlon4.L_TotalEventFirst=Total 1re place :
SAV_Pokeathlon4.L_TotalEventLast=Total dernière place :
SAV_Pokeathlon4.L_Trainer0=Dresseur 1 :
SAV_Pokeathlon4.L_Trainer1=Dresseur 2 :
SAV_Pokeathlon4.L_Trainer2=Dresseur 3 :
SAV_Pokeathlon4.L_Trainer3=Dresseur 4 :
SAV_Pokeathlon4.L_Trainer4=Dresseur 5 :
SAV_Pokeathlon4.Tab_Best=Meilleurs
SAV_Pokeathlon4.Tab_Connection=Connexion
SAV_Pokeathlon4.Tab_Counters=Compteurs
SAV_Pokeathlon4.Tab_Courses=Parcours
SAV_Pokeathlon4.Tab_General=Général
SAV_Pokeathlon4.Tab_Medals=Médailles
SAV_Pokeathlon4.Tab_SelfEvent=Épreuve solo
SAV_Pokebean.B_All=Tout
SAV_Pokebean.B_Cancel=Annuler
SAV_Pokebean.B_None=Aucun

View File

@@ -48,6 +48,7 @@ SAV_Misc8b=Editor Varie
SAV_MysteryGiftDB=Database
SAV_OPower=Editor Poteri-O
SAV_Poffin8b=Editor Poffin
SAV_Pokeathlon4=Editor Pokéathlon
SAV_Pokebean=Editor Pokégioli
SAV_PokeBlockORAS=Editor Pokémelle
SAV_Pokedex4=Editor Pokédex
@@ -429,6 +430,7 @@ Main.B_OpenLinkInfo=Dati Link
Main.B_OpenMedalsEditor=Premi
Main.B_OpenMiscEditor=Mod. Varie
Main.B_OpenOPowers=Poteri O
Main.B_OpenPokeathlon=Pokéathlon
Main.B_OpenPokeBeans=Pokégioli
Main.B_OpenPokeblocks=Pokémelle
Main.B_OpenPokedex=Pokédex
@@ -914,6 +916,21 @@ PlayerSkinColor8.PaleF=Chiara (Femmina)
PlayerSkinColor8.PaleM=Chiara (Maschio)
PlayerSkinColor8.TanF=Olivastra (Femmina)
PlayerSkinColor8.TanM=Olivastra (Maschio)
PokeathlonEvent4.BlockSmash=Spacca Blocchi
PokeathlonEvent4.CirclePush=Spinta Circolare
PokeathlonEvent4.DiscCatch=Acchiappa Dischi
PokeathlonEvent4.GoalRoll=Rotola in Porta
PokeathlonEvent4.HurdleDash=Corsa a Ostacoli
PokeathlonEvent4.LampJump=Salto Lampade
PokeathlonEvent4.PennantCapture=Cattura Gagliardetti
PokeathlonEvent4.RelayRun=Staffetta
PokeathlonEvent4.RingDrop=Caduta Anelli
PokeathlonEvent4.SnowThrow=Lancio di Neve
PokeathlonStat4.Jump=Salto
PokeathlonStat4.Power=Potenza
PokeathlonStat4.Skill=Tecnica
PokeathlonStat4.Speed=Velocità
PokeathlonStat4.Stamina=Resistenza
PokeSize.L=L
PokeSize.M=M
PokeSize.S=S
@@ -1834,6 +1851,80 @@ SAV_Poffin8b.B_All=Tutto
SAV_Poffin8b.B_Cancel=Annulla
SAV_Poffin8b.B_None=Nessuno
SAV_Poffin8b.B_Save=Salva
SAV_Pokeathlon4.B_Cancel=Annulla
SAV_Pokeathlon4.B_MedalsClearAll=Rimuovi tutto
SAV_Pokeathlon4.B_MedalsGiveAll=Dai tutto
SAV_Pokeathlon4.B_Save=Salva
SAV_Pokeathlon4.CHK_IsShiny=Cromatico
SAV_Pokeathlon4.DGV_Jump=Salto
SAV_Pokeathlon4.DGV_Power=Potenza
SAV_Pokeathlon4.DGV_Skill=Tecnica
SAV_Pokeathlon4.DGV_Species=Specie
SAV_Pokeathlon4.DGV_Speed=Velocità
SAV_Pokeathlon4.DGV_Sprite=Sprite
SAV_Pokeathlon4.DGV_Stamina=Resistenza
SAV_Pokeathlon4.L_Acquired=Ottenuto:
SAV_Pokeathlon4.L_Attempts=Tentativi:
SAV_Pokeathlon4.L_BlockSmashFirst=Spacca Blocchi 1º:
SAV_Pokeathlon4.L_BonusesEarned=Bonus ottenuti:
SAV_Pokeathlon4.L_CirclePushFirst=Spinta Circolare 1º:
SAV_Pokeathlon4.L_ConnectionFirst=Connessione 1º:
SAV_Pokeathlon4.L_ConnectionIndex=Indice:
SAV_Pokeathlon4.L_ConnectionJoined=Connessioni giocate:
SAV_Pokeathlon4.L_ConnectionLast=Connessione ultimo:
SAV_Pokeathlon4.L_CourseIndex=Indice:
SAV_Pokeathlon4.L_CourseParticipant0=Partecipante 1:
SAV_Pokeathlon4.L_CourseParticipant1=Partecipante 2:
SAV_Pokeathlon4.L_CourseParticipant2=Partecipante 3:
SAV_Pokeathlon4.L_CourseScore0=Punteggio 1:
SAV_Pokeathlon4.L_CourseScore1=Punteggio 2:
SAV_Pokeathlon4.L_CourseScore2=Punteggio 3:
SAV_Pokeathlon4.L_CourseScoreMax=Punteggio max:
SAV_Pokeathlon4.L_DailyShopFlags=Negozio giornaliero:
SAV_Pokeathlon4.L_Dashed=Scatti:
SAV_Pokeathlon4.L_DataCards=Schede dati:
SAV_Pokeathlon4.L_DiscCatchFirst=Acchiappa Dischi 1º:
SAV_Pokeathlon4.L_Failed=Fallimenti:
SAV_Pokeathlon4.L_Fame=Fama:
SAV_Pokeathlon4.L_FellDown=Caduto:
SAV_Pokeathlon4.L_GoalRollFirst=Rotola in Porta 1º:
SAV_Pokeathlon4.L_HurdleDashFirst=Corsa a Ostacoli 1º:
SAV_Pokeathlon4.L_Instructions=Istruzioni:
SAV_Pokeathlon4.L_Jumped=Salti:
SAV_Pokeathlon4.L_LampJumpFirst=Salto Lampade 1º:
SAV_Pokeathlon4.L_Language=Lingua:
SAV_Pokeathlon4.L_OT=OT:
SAV_Pokeathlon4.L_PennantCaptureFirst=Cattura Gagliardetti 1º:
SAV_Pokeathlon4.L_PID=PID:
SAV_Pokeathlon4.L_PlacedFirst=Primo posto:
SAV_Pokeathlon4.L_PlacedLast=Ultimo posto:
SAV_Pokeathlon4.L_Points=Punti:
SAV_Pokeathlon4.L_Record=Record:
SAV_Pokeathlon4.L_RelayRunFirst=Staffetta 1º:
SAV_Pokeathlon4.L_RingDropFirst=Caduta Anelli 1º:
SAV_Pokeathlon4.L_SelfEventIndex=Indice:
SAV_Pokeathlon4.L_SelfImpeded=Si è ostacolato da solo:
SAV_Pokeathlon4.L_SessionsJoined=Sessioni giocate:
SAV_Pokeathlon4.L_SID16=SID:
SAV_Pokeathlon4.L_SnowThrowFirst=Lancio di Neve 1º:
SAV_Pokeathlon4.L_Switched=Cambiato:
SAV_Pokeathlon4.L_Tackled=Placcato:
SAV_Pokeathlon4.L_TID16=TID:
SAV_Pokeathlon4.L_TimeSpent=Tempo trascorso:
SAV_Pokeathlon4.L_TotalEventFirst=Totale 1º:
SAV_Pokeathlon4.L_TotalEventLast=Totale ultimo:
SAV_Pokeathlon4.L_Trainer0=Allenatore 1:
SAV_Pokeathlon4.L_Trainer1=Allenatore 2:
SAV_Pokeathlon4.L_Trainer2=Allenatore 3:
SAV_Pokeathlon4.L_Trainer3=Allenatore 4:
SAV_Pokeathlon4.L_Trainer4=Allenatore 5:
SAV_Pokeathlon4.Tab_Best=Migliori
SAV_Pokeathlon4.Tab_Connection=Connessione
SAV_Pokeathlon4.Tab_Counters=Contatori
SAV_Pokeathlon4.Tab_Courses=Corsi
SAV_Pokeathlon4.Tab_General=Generale
SAV_Pokeathlon4.Tab_Medals=Medaglie
SAV_Pokeathlon4.Tab_SelfEvent=Evento personale
SAV_Pokebean.B_All=Tutto
SAV_Pokebean.B_Cancel=Annulla
SAV_Pokebean.B_None=Nessuno

View File

@@ -48,6 +48,7 @@ SAV_Misc8b=その他
SAV_MysteryGiftDB=ふしぎなおくりものデータベース
SAV_OPower=Oパワー
SAV_Poffin8b=ポフィン
SAV_Pokeathlon4=ポケスロン
SAV_Pokebean=ポケマメ
SAV_PokeBlockORAS=ポロック
SAV_Pokedex4=ポケモン図鑑
@@ -429,6 +430,7 @@ Main.B_OpenLinkInfo=ポケモンリンク
Main.B_OpenMedalsEditor=メダル
Main.B_OpenMiscEditor=その他
Main.B_OpenOPowers= Oパワー
Main.B_OpenPokeathlon=ポケスロン
Main.B_OpenPokeBeans=ポケマメ
Main.B_OpenPokeblocks=ポロック
Main.B_OpenPokedex=ポケモン図鑑
@@ -914,6 +916,21 @@ PlayerSkinColor8.PaleF=Pale (Female)
PlayerSkinColor8.PaleM=Pale (Male)
PlayerSkinColor8.TanF=Tan (Female)
PlayerSkinColor8.TanM=Tan (Male)
PokeathlonEvent4.BlockSmash=ブロックスマッシュ
PokeathlonEvent4.CirclePush=サークルプッシュ
PokeathlonEvent4.DiscCatch=ディスクキャッチ
PokeathlonEvent4.GoalRoll=ゴールロール
PokeathlonEvent4.HurdleDash=ハードルダッシュ
PokeathlonEvent4.LampJump=ランプジャンプ
PokeathlonEvent4.PennantCapture=ペナントキャプチャ
PokeathlonEvent4.RelayRun=リレーラン
PokeathlonEvent4.RingDrop=リングドロップ
PokeathlonEvent4.SnowThrow=スノースロー
PokeathlonStat4.Jump=ジャンプ
PokeathlonStat4.Power=パワー
PokeathlonStat4.Skill=テクニック
PokeathlonStat4.Speed=スピード
PokeathlonStat4.Stamina=スタミナ
PokeSize.L=L
PokeSize.M=M
PokeSize.S=S
@@ -1834,6 +1851,80 @@ SAV_Poffin8b.B_All=全て
SAV_Poffin8b.B_Cancel=キャンセル
SAV_Poffin8b.B_None=リセット
SAV_Poffin8b.B_Save=保存
SAV_Pokeathlon4.B_Cancel=キャンセル
SAV_Pokeathlon4.B_MedalsClearAll=すべて消去
SAV_Pokeathlon4.B_MedalsGiveAll=すべて付与
SAV_Pokeathlon4.B_Save=保存
SAV_Pokeathlon4.CHK_IsShiny=色違い
SAV_Pokeathlon4.DGV_Jump=ジャンプ
SAV_Pokeathlon4.DGV_Power=パワー
SAV_Pokeathlon4.DGV_Skill=テクニック
SAV_Pokeathlon4.DGV_Species=種族
SAV_Pokeathlon4.DGV_Speed=スピード
SAV_Pokeathlon4.DGV_Sprite=スプライト
SAV_Pokeathlon4.DGV_Stamina=スタミナ
SAV_Pokeathlon4.L_Acquired=入手済み:
SAV_Pokeathlon4.L_Attempts=挑戦回数:
SAV_Pokeathlon4.L_BlockSmashFirst=ブロックスマッシュ1位
SAV_Pokeathlon4.L_BonusesEarned=獲得ボーナス:
SAV_Pokeathlon4.L_CirclePushFirst=サークルプッシュ1位
SAV_Pokeathlon4.L_ConnectionFirst=通信1位
SAV_Pokeathlon4.L_ConnectionIndex=番号:
SAV_Pokeathlon4.L_ConnectionJoined=通信参加回数:
SAV_Pokeathlon4.L_ConnectionLast=通信最下位:
SAV_Pokeathlon4.L_CourseIndex=番号:
SAV_Pokeathlon4.L_CourseParticipant0=参加者1
SAV_Pokeathlon4.L_CourseParticipant1=参加者2
SAV_Pokeathlon4.L_CourseParticipant2=参加者3
SAV_Pokeathlon4.L_CourseScore0=スコア1
SAV_Pokeathlon4.L_CourseScore1=スコア2
SAV_Pokeathlon4.L_CourseScore2=スコア3
SAV_Pokeathlon4.L_CourseScoreMax=最高スコア:
SAV_Pokeathlon4.L_DailyShopFlags=日替わりショップ:
SAV_Pokeathlon4.L_Dashed=ダッシュ回数:
SAV_Pokeathlon4.L_DataCards=データカード:
SAV_Pokeathlon4.L_DiscCatchFirst=ディスクキャッチ1位
SAV_Pokeathlon4.L_Failed=失敗:
SAV_Pokeathlon4.L_Fame=名声:
SAV_Pokeathlon4.L_FellDown=転倒:
SAV_Pokeathlon4.L_GoalRollFirst=ゴールロール1位
SAV_Pokeathlon4.L_HurdleDashFirst=ハードルダッシュ1位
SAV_Pokeathlon4.L_Instructions=説明:
SAV_Pokeathlon4.L_Jumped=ジャンプ回数:
SAV_Pokeathlon4.L_LampJumpFirst=ランプジャンプ1位
SAV_Pokeathlon4.L_Language=言語:
SAV_Pokeathlon4.L_OT=親名:
SAV_Pokeathlon4.L_PennantCaptureFirst=ペナントキャプチャ1位
SAV_Pokeathlon4.L_PID=PID:
SAV_Pokeathlon4.L_PlacedFirst=1位回数
SAV_Pokeathlon4.L_PlacedLast=最下位回数:
SAV_Pokeathlon4.L_Points=ポイント:
SAV_Pokeathlon4.L_Record=記録:
SAV_Pokeathlon4.L_RelayRunFirst=リレーラン1位
SAV_Pokeathlon4.L_RingDropFirst=リングドロップ1位
SAV_Pokeathlon4.L_SelfEventIndex=番号:
SAV_Pokeathlon4.L_SelfImpeded=自分で妨害:
SAV_Pokeathlon4.L_SessionsJoined=参加セッション数:
SAV_Pokeathlon4.L_SID16=SID
SAV_Pokeathlon4.L_SnowThrowFirst=スースロー1位
SAV_Pokeathlon4.L_Switched=交代:
SAV_Pokeathlon4.L_Tackled=タックル:
SAV_Pokeathlon4.L_TID16=TID
SAV_Pokeathlon4.L_TimeSpent=経過時間:
SAV_Pokeathlon4.L_TotalEventFirst=総合1位
SAV_Pokeathlon4.L_TotalEventLast=総合最下位:
SAV_Pokeathlon4.L_Trainer0=トレーナー1
SAV_Pokeathlon4.L_Trainer1=トレーナー2
SAV_Pokeathlon4.L_Trainer2=トレーナー3
SAV_Pokeathlon4.L_Trainer3=トレーナー4
SAV_Pokeathlon4.L_Trainer4=トレーナー5
SAV_Pokeathlon4.Tab_Best=ベスト
SAV_Pokeathlon4.Tab_Connection=通信
SAV_Pokeathlon4.Tab_Counters=カウンター
SAV_Pokeathlon4.Tab_Courses=コース
SAV_Pokeathlon4.Tab_General=基本
SAV_Pokeathlon4.Tab_Medals=メダル
SAV_Pokeathlon4.Tab_SelfEvent=自己競技
SAV_Pokebean.B_All=全て取得
SAV_Pokebean.B_Cancel=キャンセル
SAV_Pokebean.B_None=全て消去

View File

@@ -48,6 +48,7 @@ SAV_Misc8b=기타 편집 도구
SAV_MysteryGiftDB=데이터베이스
SAV_OPower=O파워 편집 도구
SAV_Poffin8b=포핀 편집 도구
SAV_Pokeathlon4=포켓슬론
SAV_Pokebean=포켓콩 편집 도구
SAV_PokeBlockORAS=포켓몬스넥 편집 도구
SAV_Pokedex4=포켓몬 도감 편집 도구
@@ -429,6 +430,7 @@ Main.B_OpenLinkInfo=링크 데이터
Main.B_OpenMedalsEditor=메달
Main.B_OpenMiscEditor=기타 편집
Main.B_OpenOPowers=O파워
Main.B_OpenPokeathlon=포켓슬론
Main.B_OpenPokeBeans=포켓콩
Main.B_OpenPokeblocks=포켓몬스넥
Main.B_OpenPokedex=포켓몬 도감
@@ -914,6 +916,21 @@ PlayerSkinColor8.PaleF=밝은 피부 (여)
PlayerSkinColor8.PaleM=밝은 피부 (남)
PlayerSkinColor8.TanF=태닝한 피부 (여)
PlayerSkinColor8.TanM=태닝한 피부 (남)
PokeathlonEvent4.BlockSmash=블록 스매시
PokeathlonEvent4.CirclePush=서클 푸시
PokeathlonEvent4.DiscCatch=디스크 캐치
PokeathlonEvent4.GoalRoll=골 롤
PokeathlonEvent4.HurdleDash=허들 대시
PokeathlonEvent4.LampJump=램프 점프
PokeathlonEvent4.PennantCapture=페넌트 캐치
PokeathlonEvent4.RelayRun=릴레이 런
PokeathlonEvent4.RingDrop=링 드롭
PokeathlonEvent4.SnowThrow=스노우 스로
PokeathlonStat4.Jump=점프
PokeathlonStat4.Power=파워
PokeathlonStat4.Skill=스킬
PokeathlonStat4.Speed=스피드
PokeathlonStat4.Stamina=스태미나
PokeSize.L=L
PokeSize.M=M
PokeSize.S=S
@@ -1834,6 +1851,80 @@ SAV_Poffin8b.B_All=모두
SAV_Poffin8b.B_Cancel=취소
SAV_Poffin8b.B_None=없음
SAV_Poffin8b.B_Save=저장
SAV_Pokeathlon4.B_Cancel=취소
SAV_Pokeathlon4.B_MedalsClearAll=모두 지우기
SAV_Pokeathlon4.B_MedalsGiveAll=모두 지급
SAV_Pokeathlon4.B_Save=저장
SAV_Pokeathlon4.CHK_IsShiny=색이 다른
SAV_Pokeathlon4.DGV_Jump=점프
SAV_Pokeathlon4.DGV_Power=파워
SAV_Pokeathlon4.DGV_Skill=스킬
SAV_Pokeathlon4.DGV_Species=종족
SAV_Pokeathlon4.DGV_Speed=스피드
SAV_Pokeathlon4.DGV_Sprite=스프라이트
SAV_Pokeathlon4.DGV_Stamina=스태미나
SAV_Pokeathlon4.L_Acquired=획득:
SAV_Pokeathlon4.L_Attempts=도전 횟수:
SAV_Pokeathlon4.L_BlockSmashFirst=블록 스매시 1위:
SAV_Pokeathlon4.L_BonusesEarned=획득 보너스:
SAV_Pokeathlon4.L_CirclePushFirst=서클 푸시 1위:
SAV_Pokeathlon4.L_ConnectionFirst=통신 1위:
SAV_Pokeathlon4.L_ConnectionIndex=번호:
SAV_Pokeathlon4.L_ConnectionJoined=통신 참가:
SAV_Pokeathlon4.L_ConnectionLast=통신 꼴찌:
SAV_Pokeathlon4.L_CourseIndex=번호:
SAV_Pokeathlon4.L_CourseParticipant0=참가자 1:
SAV_Pokeathlon4.L_CourseParticipant1=참가자 2:
SAV_Pokeathlon4.L_CourseParticipant2=참가자 3:
SAV_Pokeathlon4.L_CourseScore0=점수 1:
SAV_Pokeathlon4.L_CourseScore1=점수 2:
SAV_Pokeathlon4.L_CourseScore2=점수 3:
SAV_Pokeathlon4.L_CourseScoreMax=최고 점수:
SAV_Pokeathlon4.L_DailyShopFlags=일일 상점:
SAV_Pokeathlon4.L_Dashed=질주 횟수:
SAV_Pokeathlon4.L_DataCards=데이터 카드:
SAV_Pokeathlon4.L_DiscCatchFirst=디스크 캐치 1위:
SAV_Pokeathlon4.L_Failed=실패:
SAV_Pokeathlon4.L_Fame=명성:
SAV_Pokeathlon4.L_FellDown=넘어짐:
SAV_Pokeathlon4.L_GoalRollFirst=골 롤 1위:
SAV_Pokeathlon4.L_HurdleDashFirst=허들 대시 1위:
SAV_Pokeathlon4.L_Instructions=설명:
SAV_Pokeathlon4.L_Jumped=점프 횟수:
SAV_Pokeathlon4.L_LampJumpFirst=램프 점프 1위:
SAV_Pokeathlon4.L_Language=언어:
SAV_Pokeathlon4.L_OT=OT:
SAV_Pokeathlon4.L_PennantCaptureFirst=페넌트 캐치 1위:
SAV_Pokeathlon4.L_PID=PID:
SAV_Pokeathlon4.L_PlacedFirst=1위 달성:
SAV_Pokeathlon4.L_PlacedLast=꼴찌 기록:
SAV_Pokeathlon4.L_Points=포인트:
SAV_Pokeathlon4.L_Record=기록:
SAV_Pokeathlon4.L_RelayRunFirst=릴레이 런 1위:
SAV_Pokeathlon4.L_RingDropFirst=링 드롭 1위:
SAV_Pokeathlon4.L_SelfEventIndex=번호:
SAV_Pokeathlon4.L_SelfImpeded=자기 방해:
SAV_Pokeathlon4.L_SessionsJoined=참가 세션:
SAV_Pokeathlon4.L_SID16=SID:
SAV_Pokeathlon4.L_SnowThrowFirst=스노우 스로 1위:
SAV_Pokeathlon4.L_Switched=교체:
SAV_Pokeathlon4.L_Tackled=태클:
SAV_Pokeathlon4.L_TID16=TID:
SAV_Pokeathlon4.L_TimeSpent=플레이 시간:
SAV_Pokeathlon4.L_TotalEventFirst=총합 1위:
SAV_Pokeathlon4.L_TotalEventLast=총합 꼴찌:
SAV_Pokeathlon4.L_Trainer0=트레이너 1:
SAV_Pokeathlon4.L_Trainer1=트레이너 2:
SAV_Pokeathlon4.L_Trainer2=트레이너 3:
SAV_Pokeathlon4.L_Trainer3=트레이너 4:
SAV_Pokeathlon4.L_Trainer4=트레이너 5:
SAV_Pokeathlon4.Tab_Best=베스트
SAV_Pokeathlon4.Tab_Connection=통신
SAV_Pokeathlon4.Tab_Counters=카운터
SAV_Pokeathlon4.Tab_Courses=코스
SAV_Pokeathlon4.Tab_General=일반
SAV_Pokeathlon4.Tab_Medals=메달
SAV_Pokeathlon4.Tab_SelfEvent=개인 이벤트
SAV_Pokebean.B_All=모두
SAV_Pokebean.B_Cancel=취소
SAV_Pokebean.B_None=없음

View File

@@ -48,6 +48,7 @@ SAV_Misc8b=杂项编辑
SAV_MysteryGiftDB=礼物数据库
SAV_OPower=O-力量
SAV_Poffin8b=宝芬编辑
SAV_Pokeathlon4=宝可全能竞技
SAV_Pokebean=宝可豆
SAV_PokeBlockORAS=宝可方块
SAV_Pokedex4=图鉴编辑
@@ -429,6 +430,7 @@ Main.B_OpenLinkInfo=宝可梦连接
Main.B_OpenMedalsEditor=奖牌
Main.B_OpenMiscEditor=杂项编辑
Main.B_OpenOPowers=O-力量
Main.B_OpenPokeathlon=宝可全能竞技
Main.B_OpenPokeBeans=宝可豆
Main.B_OpenPokeblocks=宝可方块
Main.B_OpenPokedex=宝可梦图鉴
@@ -914,6 +916,21 @@ PlayerSkinColor8.PaleF=浅色肤色(女)
PlayerSkinColor8.PaleM=浅色肤色(男)
PlayerSkinColor8.TanF=棕色肤色(女)
PlayerSkinColor8.TanM=棕色肤色(男)
PokeathlonEvent4.BlockSmash=粉碎方块
PokeathlonEvent4.CirclePush=圆环推进
PokeathlonEvent4.DiscCatch=飞盘接取
PokeathlonEvent4.GoalRoll=滚向球门
PokeathlonEvent4.HurdleDash=跨栏冲刺
PokeathlonEvent4.LampJump=跳灯赛
PokeathlonEvent4.PennantCapture=夺旗赛
PokeathlonEvent4.RelayRun=接力赛跑
PokeathlonEvent4.RingDrop=投环赛
PokeathlonEvent4.SnowThrow=雪球投掷
PokeathlonStat4.Jump=跳跃
PokeathlonStat4.Power=力量
PokeathlonStat4.Skill=技巧
PokeathlonStat4.Speed=速度
PokeathlonStat4.Stamina=耐力
PokeSize.L=L
PokeSize.M=M
PokeSize.S=S
@@ -1834,6 +1851,80 @@ SAV_Poffin8b.B_All=所有
SAV_Poffin8b.B_Cancel=取消
SAV_Poffin8b.B_None=清空
SAV_Poffin8b.B_Save=保存
SAV_Pokeathlon4.B_Cancel=取消
SAV_Pokeathlon4.B_MedalsClearAll=全部清空
SAV_Pokeathlon4.B_MedalsGiveAll=全部获得
SAV_Pokeathlon4.B_Save=保存
SAV_Pokeathlon4.CHK_IsShiny=异色
SAV_Pokeathlon4.DGV_Jump=跳跃
SAV_Pokeathlon4.DGV_Power=力量
SAV_Pokeathlon4.DGV_Skill=技巧
SAV_Pokeathlon4.DGV_Species=种类
SAV_Pokeathlon4.DGV_Speed=速度
SAV_Pokeathlon4.DGV_Sprite=精灵
SAV_Pokeathlon4.DGV_Stamina=耐力
SAV_Pokeathlon4.L_Acquired=已获得:
SAV_Pokeathlon4.L_Attempts=尝试次数:
SAV_Pokeathlon4.L_BlockSmashFirst=粉碎方块第一:
SAV_Pokeathlon4.L_BonusesEarned=奖励获得:
SAV_Pokeathlon4.L_CirclePushFirst=圆环推进第一:
SAV_Pokeathlon4.L_ConnectionFirst=连接第一:
SAV_Pokeathlon4.L_ConnectionIndex=编号:
SAV_Pokeathlon4.L_ConnectionJoined=连接参加次数:
SAV_Pokeathlon4.L_ConnectionLast=连接最后:
SAV_Pokeathlon4.L_CourseIndex=编号:
SAV_Pokeathlon4.L_CourseParticipant0=参加者1:
SAV_Pokeathlon4.L_CourseParticipant1=参加者2:
SAV_Pokeathlon4.L_CourseParticipant2=参加者3:
SAV_Pokeathlon4.L_CourseScore0=分数1:
SAV_Pokeathlon4.L_CourseScore1=分数2:
SAV_Pokeathlon4.L_CourseScore2=分数3:
SAV_Pokeathlon4.L_CourseScoreMax=最高分:
SAV_Pokeathlon4.L_DailyShopFlags=每日商店:
SAV_Pokeathlon4.L_Dashed=冲刺次数:
SAV_Pokeathlon4.L_DataCards=数据卡:
SAV_Pokeathlon4.L_DiscCatchFirst=飞盘接取第一:
SAV_Pokeathlon4.L_Failed=失败:
SAV_Pokeathlon4.L_Fame=名望:
SAV_Pokeathlon4.L_FellDown=摔倒:
SAV_Pokeathlon4.L_GoalRollFirst=滚向球门第一:
SAV_Pokeathlon4.L_HurdleDashFirst=跨栏冲刺第一:
SAV_Pokeathlon4.L_Instructions=说明:
SAV_Pokeathlon4.L_Jumped=跳跃次数:
SAV_Pokeathlon4.L_LampJumpFirst=跳灯赛第一:
SAV_Pokeathlon4.L_Language=语言:
SAV_Pokeathlon4.L_OT=OT:
SAV_Pokeathlon4.L_PennantCaptureFirst=夺旗赛第一:
SAV_Pokeathlon4.L_PID=PID:
SAV_Pokeathlon4.L_PlacedFirst=第一名次数:
SAV_Pokeathlon4.L_PlacedLast=最后一名次数:
SAV_Pokeathlon4.L_Points=点数:
SAV_Pokeathlon4.L_Record=记录:
SAV_Pokeathlon4.L_RelayRunFirst=接力赛跑第一:
SAV_Pokeathlon4.L_RingDropFirst=投环赛第一:
SAV_Pokeathlon4.L_SelfEventIndex=编号:
SAV_Pokeathlon4.L_SelfImpeded=自我妨碍:
SAV_Pokeathlon4.L_SessionsJoined=参加会话数:
SAV_Pokeathlon4.L_SID16=SID:
SAV_Pokeathlon4.L_SnowThrowFirst=雪球投掷第一:
SAV_Pokeathlon4.L_Switched=切换次数:
SAV_Pokeathlon4.L_Tackled=擒抱:
SAV_Pokeathlon4.L_TID16=TID:
SAV_Pokeathlon4.L_TimeSpent=花费时间:
SAV_Pokeathlon4.L_TotalEventFirst=总赛事第一:
SAV_Pokeathlon4.L_TotalEventLast=总赛事最后:
SAV_Pokeathlon4.L_Trainer0=训练家1:
SAV_Pokeathlon4.L_Trainer1=训练家2:
SAV_Pokeathlon4.L_Trainer2=训练家3:
SAV_Pokeathlon4.L_Trainer3=训练家4:
SAV_Pokeathlon4.L_Trainer4=训练家5:
SAV_Pokeathlon4.Tab_Best=最佳
SAV_Pokeathlon4.Tab_Connection=连接
SAV_Pokeathlon4.Tab_Counters=计数
SAV_Pokeathlon4.Tab_Courses=赛程
SAV_Pokeathlon4.Tab_General=一般
SAV_Pokeathlon4.Tab_Medals=奖牌
SAV_Pokeathlon4.Tab_SelfEvent=个人赛事
SAV_Pokebean.B_All=全部
SAV_Pokebean.B_Cancel=取消
SAV_Pokebean.B_None=清空

View File

@@ -48,6 +48,7 @@ SAV_Misc8b=訓練家資料雜項編輯
SAV_MysteryGiftDB=神秘禮物資料庫
SAV_OPower=O-力量編輯器
SAV_Poffin8b=寶芬編輯器
SAV_Pokeathlon4=寶可全能競技
SAV_Pokebean=寶可豆編輯器
SAV_PokeBlockORAS=寶可方塊編輯器
SAV_Pokedex4=圖鑒編輯器
@@ -429,6 +430,7 @@ Main.B_OpenLinkInfo=寶可夢連接
Main.B_OpenMedalsEditor=獎牌
Main.B_OpenMiscEditor=雜項編輯
Main.B_OpenOPowers=O-力量
Main.B_OpenPokeathlon=寶可全能競技
Main.B_OpenPokeBeans=寶可豆
Main.B_OpenPokeblocks=寶可方塊
Main.B_OpenPokedex=寶可夢圖鑒
@@ -914,6 +916,21 @@ PlayerSkinColor8.PaleF=淺色膚色(女)
PlayerSkinColor8.PaleM=淺色膚色(男)
PlayerSkinColor8.TanF=棕色膚色(女)
PlayerSkinColor8.TanM=棕色膚色(男)
PokeathlonEvent4.BlockSmash=粉碎方塊
PokeathlonEvent4.CirclePush=圓環推進
PokeathlonEvent4.DiscCatch=飛盤接取
PokeathlonEvent4.GoalRoll=滾向球門
PokeathlonEvent4.HurdleDash=跨欄衝刺
PokeathlonEvent4.LampJump=跳燈賽
PokeathlonEvent4.PennantCapture=奪旗賽
PokeathlonEvent4.RelayRun=接力賽跑
PokeathlonEvent4.RingDrop=投環賽
PokeathlonEvent4.SnowThrow=雪球投擲
PokeathlonStat4.Jump=跳躍
PokeathlonStat4.Power=力量
PokeathlonStat4.Skill=技巧
PokeathlonStat4.Speed=速度
PokeathlonStat4.Stamina=耐力
PokeSize.L=L
PokeSize.M=M
PokeSize.S=S
@@ -1834,6 +1851,80 @@ SAV_Poffin8b.B_All=所有
SAV_Poffin8b.B_Cancel=取消
SAV_Poffin8b.B_None=清空
SAV_Poffin8b.B_Save=儲存
SAV_Pokeathlon4.B_Cancel=取消
SAV_Pokeathlon4.B_MedalsClearAll=全部清空
SAV_Pokeathlon4.B_MedalsGiveAll=全部獲得
SAV_Pokeathlon4.B_Save=儲存
SAV_Pokeathlon4.CHK_IsShiny=異色
SAV_Pokeathlon4.DGV_Jump=跳躍
SAV_Pokeathlon4.DGV_Power=力量
SAV_Pokeathlon4.DGV_Skill=技巧
SAV_Pokeathlon4.DGV_Species=種類
SAV_Pokeathlon4.DGV_Speed=速度
SAV_Pokeathlon4.DGV_Sprite=精靈
SAV_Pokeathlon4.DGV_Stamina=耐力
SAV_Pokeathlon4.L_Acquired=已獲得:
SAV_Pokeathlon4.L_Attempts=嘗試次數:
SAV_Pokeathlon4.L_BlockSmashFirst=粉碎方塊第一:
SAV_Pokeathlon4.L_BonusesEarned=獎勵獲得:
SAV_Pokeathlon4.L_CirclePushFirst=圓環推進第一:
SAV_Pokeathlon4.L_ConnectionFirst=連接第一:
SAV_Pokeathlon4.L_ConnectionIndex=編號:
SAV_Pokeathlon4.L_ConnectionJoined=連接參加次數:
SAV_Pokeathlon4.L_ConnectionLast=連接最後:
SAV_Pokeathlon4.L_CourseIndex=編號:
SAV_Pokeathlon4.L_CourseParticipant0=參加者1:
SAV_Pokeathlon4.L_CourseParticipant1=參加者2:
SAV_Pokeathlon4.L_CourseParticipant2=參加者3:
SAV_Pokeathlon4.L_CourseScore0=分數1:
SAV_Pokeathlon4.L_CourseScore1=分數2:
SAV_Pokeathlon4.L_CourseScore2=分數3:
SAV_Pokeathlon4.L_CourseScoreMax=最高分:
SAV_Pokeathlon4.L_DailyShopFlags=每日商店:
SAV_Pokeathlon4.L_Dashed=衝刺次數:
SAV_Pokeathlon4.L_DataCards=資料卡:
SAV_Pokeathlon4.L_DiscCatchFirst=飛盤接取第一:
SAV_Pokeathlon4.L_Failed=失敗:
SAV_Pokeathlon4.L_Fame=名望:
SAV_Pokeathlon4.L_FellDown=摔倒:
SAV_Pokeathlon4.L_GoalRollFirst=滾向球門第一:
SAV_Pokeathlon4.L_HurdleDashFirst=跨欄衝刺第一:
SAV_Pokeathlon4.L_Instructions=說明:
SAV_Pokeathlon4.L_Jumped=跳躍次數:
SAV_Pokeathlon4.L_LampJumpFirst=跳燈賽第一:
SAV_Pokeathlon4.L_Language=語言:
SAV_Pokeathlon4.L_OT=OT:
SAV_Pokeathlon4.L_PennantCaptureFirst=奪旗賽第一:
SAV_Pokeathlon4.L_PID=PID:
SAV_Pokeathlon4.L_PlacedFirst=第一名次數:
SAV_Pokeathlon4.L_PlacedLast=最後一名次數:
SAV_Pokeathlon4.L_Points=點數:
SAV_Pokeathlon4.L_Record=記錄:
SAV_Pokeathlon4.L_RelayRunFirst=接力賽跑第一:
SAV_Pokeathlon4.L_RingDropFirst=投環賽第一:
SAV_Pokeathlon4.L_SelfEventIndex=編號:
SAV_Pokeathlon4.L_SelfImpeded=自我妨礙:
SAV_Pokeathlon4.L_SessionsJoined=參加會話數:
SAV_Pokeathlon4.L_SID16=SID:
SAV_Pokeathlon4.L_SnowThrowFirst=雪球投擲第一:
SAV_Pokeathlon4.L_Switched=切換次數:
SAV_Pokeathlon4.L_Tackled=擒抱:
SAV_Pokeathlon4.L_TID16=TID:
SAV_Pokeathlon4.L_TimeSpent=花費時間:
SAV_Pokeathlon4.L_TotalEventFirst=總賽事第一:
SAV_Pokeathlon4.L_TotalEventLast=總賽事最後:
SAV_Pokeathlon4.L_Trainer0=訓練家1:
SAV_Pokeathlon4.L_Trainer1=訓練家2:
SAV_Pokeathlon4.L_Trainer2=訓練家3:
SAV_Pokeathlon4.L_Trainer3=訓練家4:
SAV_Pokeathlon4.L_Trainer4=訓練家5:
SAV_Pokeathlon4.Tab_Best=最佳
SAV_Pokeathlon4.Tab_Connection=連接
SAV_Pokeathlon4.Tab_Counters=計數
SAV_Pokeathlon4.Tab_Courses=賽程
SAV_Pokeathlon4.Tab_General=一般
SAV_Pokeathlon4.Tab_Medals=獎牌
SAV_Pokeathlon4.Tab_SelfEvent=個人賽事
SAV_Pokebean.B_All=全部
SAV_Pokebean.B_Cancel=取消
SAV_Pokebean.B_None=清空

View File

@@ -0,0 +1,307 @@
namespace PKHeX.WinForms
{
partial class PokeathlonConnection4Editor
{
private System.ComponentModel.IContainer components = null;
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
components.Dispose();
base.Dispose(disposing);
}
#region Component Designer generated code
private void InitializeComponent()
{
TLP_Main = new System.Windows.Forms.TableLayoutPanel();
FLP_Attempts = new System.Windows.Forms.FlowLayoutPanel();
L_Attempts = new System.Windows.Forms.Label();
NUD_Attempts = new System.Windows.Forms.NumericUpDown();
UC_Record0 = new PokeathlonEventRecord4Editor();
L_Trainer0 = new System.Windows.Forms.Label();
UC_Trainer0 = new PokeathlonEventTrainer4Editor();
UC_Record1 = new PokeathlonEventRecord4Editor();
L_Trainer1 = new System.Windows.Forms.Label();
UC_Trainer1 = new PokeathlonEventTrainer4Editor();
UC_Record2 = new PokeathlonEventRecord4Editor();
L_Trainer2 = new System.Windows.Forms.Label();
UC_Trainer2 = new PokeathlonEventTrainer4Editor();
UC_Record3 = new PokeathlonEventRecord4Editor();
L_Trainer3 = new System.Windows.Forms.Label();
UC_Trainer3 = new PokeathlonEventTrainer4Editor();
UC_Record4 = new PokeathlonEventRecord4Editor();
L_Trainer4 = new System.Windows.Forms.Label();
UC_Trainer4 = new PokeathlonEventTrainer4Editor();
TLP_Main.SuspendLayout();
FLP_Attempts.SuspendLayout();
((System.ComponentModel.ISupportInitialize)NUD_Attempts).BeginInit();
SuspendLayout();
//
// TLP_Main
//
TLP_Main.AutoScroll = true;
TLP_Main.ColumnCount = 3;
TLP_Main.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_Main.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_Main.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_Main.Controls.Add(FLP_Attempts, 0, 0);
TLP_Main.Controls.Add(UC_Record0, 0, 1);
TLP_Main.Controls.Add(L_Trainer0, 1, 1);
TLP_Main.Controls.Add(UC_Trainer0, 2, 1);
TLP_Main.Controls.Add(UC_Record1, 0, 2);
TLP_Main.Controls.Add(L_Trainer1, 1, 2);
TLP_Main.Controls.Add(UC_Trainer1, 2, 2);
TLP_Main.Controls.Add(UC_Record2, 0, 3);
TLP_Main.Controls.Add(L_Trainer2, 1, 3);
TLP_Main.Controls.Add(UC_Trainer2, 2, 3);
TLP_Main.Controls.Add(UC_Record3, 0, 4);
TLP_Main.Controls.Add(L_Trainer3, 1, 4);
TLP_Main.Controls.Add(UC_Trainer3, 2, 4);
TLP_Main.Controls.Add(UC_Record4, 0, 5);
TLP_Main.Controls.Add(L_Trainer4, 1, 5);
TLP_Main.Controls.Add(UC_Trainer4, 2, 5);
TLP_Main.Dock = System.Windows.Forms.DockStyle.Fill;
TLP_Main.Location = new System.Drawing.Point(0, 0);
TLP_Main.Margin = new System.Windows.Forms.Padding(0);
TLP_Main.Name = "TLP_Main";
TLP_Main.RowCount = 6;
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.Size = new System.Drawing.Size(613, 841);
TLP_Main.TabIndex = 0;
//
// FLP_Attempts
//
FLP_Attempts.AutoSize = true;
FLP_Attempts.Controls.Add(L_Attempts);
FLP_Attempts.Controls.Add(NUD_Attempts);
FLP_Attempts.Location = new System.Drawing.Point(0, 0);
FLP_Attempts.Margin = new System.Windows.Forms.Padding(0);
FLP_Attempts.Name = "FLP_Attempts";
FLP_Attempts.Size = new System.Drawing.Size(189, 25);
FLP_Attempts.TabIndex = 0;
FLP_Attempts.WrapContents = false;
//
// L_Attempts
//
L_Attempts.Anchor = System.Windows.Forms.AnchorStyles.Left;
L_Attempts.AutoSize = true;
L_Attempts.Location = new System.Drawing.Point(3, 4);
L_Attempts.Name = "L_Attempts";
L_Attempts.Size = new System.Drawing.Size(63, 17);
L_Attempts.TabIndex = 0;
L_Attempts.Text = "Attempts:";
//
// NUD_Attempts
//
NUD_Attempts.Location = new System.Drawing.Point(69, 0);
NUD_Attempts.Margin = new System.Windows.Forms.Padding(0);
NUD_Attempts.Maximum = new decimal(new int[] { 9999999, 0, 0, 0 });
NUD_Attempts.Name = "NUD_Attempts";
NUD_Attempts.Size = new System.Drawing.Size(120, 25);
NUD_Attempts.TabIndex = 1;
//
// UC_Record0
//
UC_Record0.AutoSize = true;
UC_Record0.Dock = System.Windows.Forms.DockStyle.Fill;
UC_Record0.Location = new System.Drawing.Point(0, 37);
UC_Record0.Margin = new System.Windows.Forms.Padding(0, 12, 0, 0);
UC_Record0.Name = "UC_Record0";
UC_Record0.Size = new System.Drawing.Size(249, 148);
UC_Record0.TabIndex = 2;
//
// L_Trainer0
//
L_Trainer0.Anchor = System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right;
L_Trainer0.AutoSize = true;
L_Trainer0.Location = new System.Drawing.Point(249, 25);
L_Trainer0.Margin = new System.Windows.Forms.Padding(0);
L_Trainer0.Name = "L_Trainer0";
L_Trainer0.Padding = new System.Windows.Forms.Padding(0, 16, 0, 0);
L_Trainer0.Size = new System.Drawing.Size(62, 33);
L_Trainer0.TabIndex = 3;
L_Trainer0.Text = "Trainer 1:";
//
// UC_Trainer0
//
UC_Trainer0.AutoSize = true;
UC_Trainer0.Location = new System.Drawing.Point(311, 25);
UC_Trainer0.Margin = new System.Windows.Forms.Padding(0);
UC_Trainer0.Name = "UC_Trainer0";
UC_Trainer0.Padding = new System.Windows.Forms.Padding(0, 12, 0, 0);
UC_Trainer0.Size = new System.Drawing.Size(207, 121);
UC_Trainer0.TabIndex = 4;
//
// UC_Record1
//
UC_Record1.AutoSize = true;
UC_Record1.Dock = System.Windows.Forms.DockStyle.Fill;
UC_Record1.Location = new System.Drawing.Point(0, 197);
UC_Record1.Margin = new System.Windows.Forms.Padding(0, 12, 0, 0);
UC_Record1.Name = "UC_Record1";
UC_Record1.Size = new System.Drawing.Size(249, 148);
UC_Record1.TabIndex = 5;
//
// L_Trainer1
//
L_Trainer1.Anchor = System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right;
L_Trainer1.AutoSize = true;
L_Trainer1.Location = new System.Drawing.Point(249, 185);
L_Trainer1.Margin = new System.Windows.Forms.Padding(0);
L_Trainer1.Name = "L_Trainer1";
L_Trainer1.Padding = new System.Windows.Forms.Padding(0, 16, 0, 0);
L_Trainer1.Size = new System.Drawing.Size(62, 33);
L_Trainer1.TabIndex = 6;
L_Trainer1.Text = "Trainer 2:";
//
// UC_Trainer1
//
UC_Trainer1.AutoSize = true;
UC_Trainer1.Location = new System.Drawing.Point(311, 185);
UC_Trainer1.Margin = new System.Windows.Forms.Padding(0);
UC_Trainer1.Name = "UC_Trainer1";
UC_Trainer1.Padding = new System.Windows.Forms.Padding(0, 12, 0, 0);
UC_Trainer1.Size = new System.Drawing.Size(207, 121);
UC_Trainer1.TabIndex = 7;
//
// UC_Record2
//
UC_Record2.AutoSize = true;
UC_Record2.Dock = System.Windows.Forms.DockStyle.Fill;
UC_Record2.Location = new System.Drawing.Point(0, 357);
UC_Record2.Margin = new System.Windows.Forms.Padding(0, 12, 0, 0);
UC_Record2.Name = "UC_Record2";
UC_Record2.Size = new System.Drawing.Size(249, 148);
UC_Record2.TabIndex = 8;
//
// L_Trainer2
//
L_Trainer2.Anchor = System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right;
L_Trainer2.AutoSize = true;
L_Trainer2.Location = new System.Drawing.Point(249, 345);
L_Trainer2.Margin = new System.Windows.Forms.Padding(0);
L_Trainer2.Name = "L_Trainer2";
L_Trainer2.Padding = new System.Windows.Forms.Padding(0, 16, 0, 0);
L_Trainer2.Size = new System.Drawing.Size(62, 33);
L_Trainer2.TabIndex = 9;
L_Trainer2.Text = "Trainer 3:";
//
// UC_Trainer2
//
UC_Trainer2.AutoSize = true;
UC_Trainer2.Location = new System.Drawing.Point(311, 345);
UC_Trainer2.Margin = new System.Windows.Forms.Padding(0);
UC_Trainer2.Name = "UC_Trainer2";
UC_Trainer2.Padding = new System.Windows.Forms.Padding(0, 12, 0, 0);
UC_Trainer2.Size = new System.Drawing.Size(207, 121);
UC_Trainer2.TabIndex = 10;
//
// UC_Record3
//
UC_Record3.AutoSize = true;
UC_Record3.Dock = System.Windows.Forms.DockStyle.Fill;
UC_Record3.Location = new System.Drawing.Point(0, 517);
UC_Record3.Margin = new System.Windows.Forms.Padding(0, 12, 0, 0);
UC_Record3.Name = "UC_Record3";
UC_Record3.Size = new System.Drawing.Size(249, 148);
UC_Record3.TabIndex = 11;
//
// L_Trainer3
//
L_Trainer3.Anchor = System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right;
L_Trainer3.AutoSize = true;
L_Trainer3.Location = new System.Drawing.Point(249, 505);
L_Trainer3.Margin = new System.Windows.Forms.Padding(0);
L_Trainer3.Name = "L_Trainer3";
L_Trainer3.Padding = new System.Windows.Forms.Padding(0, 16, 0, 0);
L_Trainer3.Size = new System.Drawing.Size(62, 33);
L_Trainer3.TabIndex = 12;
L_Trainer3.Text = "Trainer 4:";
//
// UC_Trainer3
//
UC_Trainer3.AutoSize = true;
UC_Trainer3.Location = new System.Drawing.Point(311, 505);
UC_Trainer3.Margin = new System.Windows.Forms.Padding(0);
UC_Trainer3.Name = "UC_Trainer3";
UC_Trainer3.Padding = new System.Windows.Forms.Padding(0, 12, 0, 0);
UC_Trainer3.Size = new System.Drawing.Size(207, 121);
UC_Trainer3.TabIndex = 13;
//
// UC_Record4
//
UC_Record4.AutoSize = true;
UC_Record4.Dock = System.Windows.Forms.DockStyle.Top;
UC_Record4.Location = new System.Drawing.Point(0, 677);
UC_Record4.Margin = new System.Windows.Forms.Padding(0, 12, 0, 0);
UC_Record4.Name = "UC_Record4";
UC_Record4.Size = new System.Drawing.Size(249, 148);
UC_Record4.TabIndex = 14;
//
// L_Trainer4
//
L_Trainer4.Anchor = System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right;
L_Trainer4.AutoSize = true;
L_Trainer4.Location = new System.Drawing.Point(249, 665);
L_Trainer4.Margin = new System.Windows.Forms.Padding(0);
L_Trainer4.Name = "L_Trainer4";
L_Trainer4.Padding = new System.Windows.Forms.Padding(0, 16, 0, 0);
L_Trainer4.Size = new System.Drawing.Size(62, 33);
L_Trainer4.TabIndex = 15;
L_Trainer4.Text = "Trainer 5:";
//
// UC_Trainer4
//
UC_Trainer4.AutoSize = true;
UC_Trainer4.Location = new System.Drawing.Point(311, 665);
UC_Trainer4.Margin = new System.Windows.Forms.Padding(0);
UC_Trainer4.Name = "UC_Trainer4";
UC_Trainer4.Padding = new System.Windows.Forms.Padding(0, 12, 0, 0);
UC_Trainer4.Size = new System.Drawing.Size(207, 121);
UC_Trainer4.TabIndex = 16;
//
// PokeathlonConnection4Editor
//
AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit;
Controls.Add(TLP_Main);
Margin = new System.Windows.Forms.Padding(0);
Name = "PokeathlonConnection4Editor";
Size = new System.Drawing.Size(613, 841);
TLP_Main.ResumeLayout(false);
TLP_Main.PerformLayout();
FLP_Attempts.ResumeLayout(false);
FLP_Attempts.PerformLayout();
((System.ComponentModel.ISupportInitialize)NUD_Attempts).EndInit();
ResumeLayout(false);
}
#endregion
private System.Windows.Forms.TableLayoutPanel TLP_Main;
private System.Windows.Forms.FlowLayoutPanel FLP_Attempts;
private System.Windows.Forms.Label L_Attempts;
private System.Windows.Forms.NumericUpDown NUD_Attempts;
private PokeathlonEventRecord4Editor UC_Record0;
private System.Windows.Forms.Label L_Trainer0;
private PokeathlonEventTrainer4Editor UC_Trainer0;
private PokeathlonEventRecord4Editor UC_Record1;
private System.Windows.Forms.Label L_Trainer1;
private PokeathlonEventTrainer4Editor UC_Trainer1;
private PokeathlonEventRecord4Editor UC_Record2;
private System.Windows.Forms.Label L_Trainer2;
private PokeathlonEventTrainer4Editor UC_Trainer2;
private PokeathlonEventRecord4Editor UC_Record3;
private System.Windows.Forms.Label L_Trainer3;
private PokeathlonEventTrainer4Editor UC_Trainer3;
private PokeathlonEventRecord4Editor UC_Record4;
private System.Windows.Forms.Label L_Trainer4;
private PokeathlonEventTrainer4Editor UC_Trainer4;
}
}

View File

@@ -0,0 +1,46 @@
using System;
using System.Windows.Forms;
using PKHeX.Core;
namespace PKHeX.WinForms;
public sealed partial class PokeathlonConnection4Editor : UserControl
{
public PokeathlonConnection4Editor()
{
InitializeComponent();
EventRecords = [UC_Record0, UC_Record1, UC_Record2, UC_Record3, UC_Record4];
Trainers = [UC_Trainer0, UC_Trainer1, UC_Trainer2, UC_Trainer3, UC_Trainer4];
}
private PokeathlonEventRecord4Editor[] EventRecords { get; }
private PokeathlonEventTrainer4Editor[] Trainers { get; }
public void LoadObject(PokeathlonConnection4 entity)
{
SuspendLayout();
TLP_Main.SuspendLayout();
var inner = entity.Inner;
NUD_Attempts.Value = Math.Clamp(inner.Attempts, 0, (uint)NUD_Attempts.Maximum);
for (int i = 0; i < EventRecords.Length; i++)
{
EventRecords[i].LoadObject(inner.GetRecord(i));
Trainers[i].LoadObject(entity.GetTrainer(i));
}
TLP_Main.ResumeLayout();
ResumeLayout();
}
public void SaveObject(PokeathlonConnection4 entity)
{
var inner = entity.Inner;
inner.Attempts = (uint)NUD_Attempts.Value;
for (int i = 0; i < EventRecords.Length; i++)
{
EventRecords[i].SaveObject(inner.GetRecord(i));
Trainers[i].SaveObject(entity.GetTrainer(i));
}
}
}

View File

@@ -0,0 +1,157 @@
namespace PKHeX.WinForms
{
partial class PokeathlonEventData4Editor
{
private System.ComponentModel.IContainer components = null;
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
components.Dispose();
base.Dispose(disposing);
}
#region Component Designer generated code
private void InitializeComponent()
{
TLP_Main = new System.Windows.Forms.TableLayoutPanel();
L_Attempts = new System.Windows.Forms.Label();
NUD_Attempts = new System.Windows.Forms.NumericUpDown();
UC_Record0 = new PokeathlonEventRecord4Editor();
UC_Record1 = new PokeathlonEventRecord4Editor();
UC_Record2 = new PokeathlonEventRecord4Editor();
UC_Record3 = new PokeathlonEventRecord4Editor();
UC_Record4 = new PokeathlonEventRecord4Editor();
TLP_Main.SuspendLayout();
((System.ComponentModel.ISupportInitialize)NUD_Attempts).BeginInit();
SuspendLayout();
//
// TLP_Main
//
TLP_Main.AutoScroll = true;
TLP_Main.AutoSize = true;
TLP_Main.ColumnCount = 2;
TLP_Main.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_Main.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
TLP_Main.Controls.Add(L_Attempts, 0, 0);
TLP_Main.Controls.Add(NUD_Attempts, 1, 0);
TLP_Main.Controls.Add(UC_Record0, 0, 1);
TLP_Main.Controls.Add(UC_Record1, 0, 2);
TLP_Main.Controls.Add(UC_Record2, 0, 3);
TLP_Main.Controls.Add(UC_Record3, 0, 4);
TLP_Main.Controls.Add(UC_Record4, 0, 5);
TLP_Main.Dock = System.Windows.Forms.DockStyle.Fill;
TLP_Main.Location = new System.Drawing.Point(0, 0);
TLP_Main.Margin = new System.Windows.Forms.Padding(0);
TLP_Main.Name = "TLP_Main";
TLP_Main.RowCount = 6;
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.Size = new System.Drawing.Size(258, 841);
TLP_Main.TabIndex = 0;
//
// L_Attempts
//
L_Attempts.Anchor = System.Windows.Forms.AnchorStyles.Left;
L_Attempts.AutoSize = true;
L_Attempts.Location = new System.Drawing.Point(3, 4);
L_Attempts.Name = "L_Attempts";
L_Attempts.Size = new System.Drawing.Size(63, 17);
L_Attempts.TabIndex = 0;
L_Attempts.Text = "Attempts:";
//
// NUD_Attempts
//
NUD_Attempts.Location = new System.Drawing.Point(69, 0);
NUD_Attempts.Margin = new System.Windows.Forms.Padding(0);
NUD_Attempts.Maximum = new decimal(new int[] { 9999999, 0, 0, 0 });
NUD_Attempts.Name = "NUD_Attempts";
NUD_Attempts.Size = new System.Drawing.Size(120, 25);
NUD_Attempts.TabIndex = 1;
//
// UC_Record0
//
UC_Record0.AutoSize = true;
TLP_Main.SetColumnSpan(UC_Record0, 2);
UC_Record0.Dock = System.Windows.Forms.DockStyle.Fill;
UC_Record0.Location = new System.Drawing.Point(0, 37);
UC_Record0.Margin = new System.Windows.Forms.Padding(0, 12, 0, 0);
UC_Record0.Name = "UC_Record0";
UC_Record0.Size = new System.Drawing.Size(258, 148);
UC_Record0.TabIndex = 2;
//
// UC_Record1
//
UC_Record1.AutoSize = true;
TLP_Main.SetColumnSpan(UC_Record1, 2);
UC_Record1.Dock = System.Windows.Forms.DockStyle.Fill;
UC_Record1.Location = new System.Drawing.Point(0, 197);
UC_Record1.Margin = new System.Windows.Forms.Padding(0, 12, 0, 0);
UC_Record1.Name = "UC_Record1";
UC_Record1.Size = new System.Drawing.Size(258, 148);
UC_Record1.TabIndex = 3;
//
// UC_Record2
//
UC_Record2.AutoSize = true;
TLP_Main.SetColumnSpan(UC_Record2, 2);
UC_Record2.Dock = System.Windows.Forms.DockStyle.Fill;
UC_Record2.Location = new System.Drawing.Point(0, 357);
UC_Record2.Margin = new System.Windows.Forms.Padding(0, 12, 0, 0);
UC_Record2.Name = "UC_Record2";
UC_Record2.Size = new System.Drawing.Size(258, 148);
UC_Record2.TabIndex = 4;
//
// UC_Record3
//
UC_Record3.AutoSize = true;
TLP_Main.SetColumnSpan(UC_Record3, 2);
UC_Record3.Dock = System.Windows.Forms.DockStyle.Fill;
UC_Record3.Location = new System.Drawing.Point(0, 517);
UC_Record3.Margin = new System.Windows.Forms.Padding(0, 12, 0, 0);
UC_Record3.Name = "UC_Record3";
UC_Record3.Size = new System.Drawing.Size(258, 148);
UC_Record3.TabIndex = 5;
//
// UC_Record4
//
UC_Record4.AutoSize = true;
TLP_Main.SetColumnSpan(UC_Record4, 2);
UC_Record4.Location = new System.Drawing.Point(0, 677);
UC_Record4.Margin = new System.Windows.Forms.Padding(0, 12, 0, 0);
UC_Record4.Name = "UC_Record4";
UC_Record4.Size = new System.Drawing.Size(249, 148);
UC_Record4.TabIndex = 6;
//
// PokeathlonEventData4Editor
//
AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit;
AutoSize = true;
Controls.Add(TLP_Main);
Margin = new System.Windows.Forms.Padding(0);
Name = "PokeathlonEventData4Editor";
Size = new System.Drawing.Size(258, 841);
TLP_Main.ResumeLayout(false);
TLP_Main.PerformLayout();
((System.ComponentModel.ISupportInitialize)NUD_Attempts).EndInit();
ResumeLayout(false);
PerformLayout();
}
#endregion
private System.Windows.Forms.TableLayoutPanel TLP_Main;
private System.Windows.Forms.Label L_Attempts;
private System.Windows.Forms.NumericUpDown NUD_Attempts;
private PokeathlonEventRecord4Editor UC_Record0;
private PokeathlonEventRecord4Editor UC_Record1;
private PokeathlonEventRecord4Editor UC_Record2;
private PokeathlonEventRecord4Editor UC_Record3;
private PokeathlonEventRecord4Editor UC_Record4;
}
}

View File

@@ -0,0 +1,30 @@
using System;
using System.Windows.Forms;
using PKHeX.Core;
namespace PKHeX.WinForms;
public sealed partial class PokeathlonEventData4Editor : UserControl
{
public PokeathlonEventData4Editor()
{
InitializeComponent();
EventRecords = [UC_Record0, UC_Record1, UC_Record2, UC_Record3, UC_Record4];
}
private PokeathlonEventRecord4Editor[] EventRecords { get; }
public void LoadObject(PokeathlonEventData4 entity)
{
NUD_Attempts.Value = Math.Clamp(entity.Attempts, 0, (uint)NUD_Attempts.Maximum);
for (int i = 0; i < EventRecords.Length; i++)
EventRecords[i].LoadObject(entity.GetRecord(i));
}
public void SaveObject(PokeathlonEventData4 entity)
{
entity.Attempts = (uint)NUD_Attempts.Value;
for (int i = 0; i < EventRecords.Length; i++)
EventRecords[i].SaveObject(entity.GetRecord(i));
}
}

View File

@@ -0,0 +1,122 @@
namespace PKHeX.WinForms
{
partial class PokeathlonEventRecord4Editor
{
private System.ComponentModel.IContainer components = null;
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
components.Dispose();
base.Dispose(disposing);
}
#region Component Designer generated code
private void InitializeComponent()
{
TLP_Main = new System.Windows.Forms.TableLayoutPanel();
L_Record = new System.Windows.Forms.Label();
NUD_Record = new System.Windows.Forms.NumericUpDown();
UC_Entry0 = new PokeathlonSpeciesForm4Editor();
UC_Entry1 = new PokeathlonSpeciesForm4Editor();
UC_Entry2 = new PokeathlonSpeciesForm4Editor();
TLP_Main.SuspendLayout();
((System.ComponentModel.ISupportInitialize)NUD_Record).BeginInit();
SuspendLayout();
//
// TLP_Main
//
TLP_Main.AutoSize = true;
TLP_Main.ColumnCount = 2;
TLP_Main.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_Main.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_Main.Controls.Add(L_Record, 0, 0);
TLP_Main.Controls.Add(NUD_Record, 1, 0);
TLP_Main.Controls.Add(UC_Entry0, 0, 1);
TLP_Main.Controls.Add(UC_Entry1, 0, 2);
TLP_Main.Controls.Add(UC_Entry2, 0, 3);
TLP_Main.Dock = System.Windows.Forms.DockStyle.Fill;
TLP_Main.Location = new System.Drawing.Point(0, 0);
TLP_Main.Margin = new System.Windows.Forms.Padding(0);
TLP_Main.Name = "TLP_Main";
TLP_Main.RowCount = 4;
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.Size = new System.Drawing.Size(512, 145);
TLP_Main.TabIndex = 0;
//
// L_Record
//
L_Record.Anchor = System.Windows.Forms.AnchorStyles.Right;
L_Record.AutoSize = true;
L_Record.Location = new System.Drawing.Point(3, 4);
L_Record.Name = "L_Record";
L_Record.Size = new System.Drawing.Size(48, 17);
L_Record.TabIndex = 0;
L_Record.Text = "Record:";
//
// NUD_Record
//
NUD_Record.Location = new System.Drawing.Point(57, 0);
NUD_Record.Margin = new System.Windows.Forms.Padding(3, 0, 3, 3);
NUD_Record.Maximum = new decimal(new int[] { 65535, 0, 0, 0 });
NUD_Record.Name = "NUD_Record";
NUD_Record.Size = new System.Drawing.Size(120, 25);
NUD_Record.TabIndex = 1;
//
// UC_Entry0
//
TLP_Main.SetColumnSpan(UC_Entry0, 2);
UC_Entry0.Anchor = System.Windows.Forms.AnchorStyles.Left;
UC_Entry0.Location = new System.Drawing.Point(0, 28);
UC_Entry0.Margin = new System.Windows.Forms.Padding(0);
UC_Entry0.Name = "UC_Entry0";
UC_Entry0.Size = new System.Drawing.Size(249, 40);
UC_Entry0.TabIndex = 2;
//
// UC_Entry1
//
TLP_Main.SetColumnSpan(UC_Entry1, 2);
UC_Entry1.Anchor = System.Windows.Forms.AnchorStyles.Left;
UC_Entry1.Location = new System.Drawing.Point(0, 68);
UC_Entry1.Margin = new System.Windows.Forms.Padding(0);
UC_Entry1.Name = "UC_Entry1";
UC_Entry1.Size = new System.Drawing.Size(249, 40);
UC_Entry1.TabIndex = 3;
//
// UC_Entry2
//
TLP_Main.SetColumnSpan(UC_Entry2, 2);
UC_Entry2.Anchor = System.Windows.Forms.AnchorStyles.Left;
UC_Entry2.Location = new System.Drawing.Point(0, 108);
UC_Entry2.Margin = new System.Windows.Forms.Padding(0);
UC_Entry2.Name = "UC_Entry2";
UC_Entry2.Size = new System.Drawing.Size(249, 40);
UC_Entry2.TabIndex = 4;
//
// PokeathlonEventRecord4Editor
//
AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit;
Controls.Add(TLP_Main);
Name = "PokeathlonEventRecord4Editor";
Size = new System.Drawing.Size(249, 145);
TLP_Main.ResumeLayout(false);
TLP_Main.PerformLayout();
((System.ComponentModel.ISupportInitialize)NUD_Record).EndInit();
ResumeLayout(false);
PerformLayout();
}
#endregion
private System.Windows.Forms.TableLayoutPanel TLP_Main;
private System.Windows.Forms.Label L_Record;
private System.Windows.Forms.NumericUpDown NUD_Record;
private PokeathlonSpeciesForm4Editor UC_Entry0;
private PokeathlonSpeciesForm4Editor UC_Entry1;
private PokeathlonSpeciesForm4Editor UC_Entry2;
}
}

View File

@@ -0,0 +1,29 @@
using System;
using System.Windows.Forms;
using PKHeX.Core;
namespace PKHeX.WinForms;
public sealed partial class PokeathlonEventRecord4Editor : UserControl
{
public PokeathlonEventRecord4Editor()
{
InitializeComponent();
}
public void LoadObject(PokeathlonEventRecord4 entity)
{
NUD_Record.Value = Math.Clamp(entity.Record, (ushort)0, (ushort)NUD_Record.Maximum);
UC_Entry0.LoadValues(entity.Entry0.Species, entity.Entry0.Form);
UC_Entry1.LoadValues(entity.Entry1.Species, entity.Entry1.Form);
UC_Entry2.LoadValues(entity.Entry2.Species, entity.Entry2.Form);
}
public void SaveObject(PokeathlonEventRecord4 entity)
{
entity.Record = (ushort)NUD_Record.Value;
entity.Entry0 = new SpeciesForm10 { Species = UC_Entry0.Species, Form = UC_Entry0.Form };
entity.Entry1 = new SpeciesForm10 { Species = UC_Entry1.Species, Form = UC_Entry1.Form };
entity.Entry2 = new SpeciesForm10 { Species = UC_Entry2.Species, Form = UC_Entry2.Form };
}
}

View File

@@ -0,0 +1,160 @@
namespace PKHeX.WinForms
{
partial class PokeathlonEventTrainer4Editor
{
private System.ComponentModel.IContainer components = null;
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
components.Dispose();
base.Dispose(disposing);
}
#region Component Designer generated code
private void InitializeComponent()
{
TLP_Main = new System.Windows.Forms.TableLayoutPanel();
L_OT = new System.Windows.Forms.Label();
TB_OT = new System.Windows.Forms.TextBox();
L_TID16 = new System.Windows.Forms.Label();
TB_TID16 = new System.Windows.Forms.TextBox();
L_SID16 = new System.Windows.Forms.Label();
TB_SID16 = new System.Windows.Forms.TextBox();
L_Language = new System.Windows.Forms.Label();
CB_Language = new System.Windows.Forms.ComboBox();
TLP_Main.SuspendLayout();
SuspendLayout();
//
// TLP_Main
//
TLP_Main.AutoSize = true;
TLP_Main.ColumnCount = 2;
TLP_Main.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_Main.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_Main.Controls.Add(L_OT, 0, 0);
TLP_Main.Controls.Add(TB_OT, 1, 0);
TLP_Main.Controls.Add(L_TID16, 0, 1);
TLP_Main.Controls.Add(TB_TID16, 1, 1);
TLP_Main.Controls.Add(L_SID16, 0, 2);
TLP_Main.Controls.Add(TB_SID16, 1, 2);
TLP_Main.Controls.Add(L_Language, 0, 3);
TLP_Main.Controls.Add(CB_Language, 1, 3);
TLP_Main.Dock = System.Windows.Forms.DockStyle.Fill;
TLP_Main.Location = new System.Drawing.Point(0, 0);
TLP_Main.Margin = new System.Windows.Forms.Padding(0);
TLP_Main.Name = "TLP_Main";
TLP_Main.RowCount = 4;
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.Size = new System.Drawing.Size(225, 118);
TLP_Main.TabIndex = 0;
//
// L_OT
//
L_OT.Anchor = System.Windows.Forms.AnchorStyles.Right;
L_OT.AutoSize = true;
L_OT.Location = new System.Drawing.Point(41, 5);
L_OT.Margin = new System.Windows.Forms.Padding(0);
L_OT.Name = "L_OT";
L_OT.Size = new System.Drawing.Size(27, 17);
L_OT.TabIndex = 0;
L_OT.Text = "OT:";
//
// TB_OT
//
TB_OT.Anchor = System.Windows.Forms.AnchorStyles.Left;
TB_OT.Location = new System.Drawing.Point(71, 0);
TB_OT.Margin = new System.Windows.Forms.Padding(3, 0, 0, 3);
TB_OT.Name = "TB_OT";
TB_OT.Size = new System.Drawing.Size(136, 25);
TB_OT.TabIndex = 1;
//
// L_TID16
//
L_TID16.Anchor = System.Windows.Forms.AnchorStyles.Right;
L_TID16.AutoSize = true;
L_TID16.Location = new System.Drawing.Point(38, 33);
L_TID16.Margin = new System.Windows.Forms.Padding(0);
L_TID16.Name = "L_TID16";
L_TID16.Size = new System.Drawing.Size(30, 17);
L_TID16.TabIndex = 2;
L_TID16.Text = "TID:";
//
// TB_TID16
//
TB_TID16.Location = new System.Drawing.Point(71, 28);
TB_TID16.Margin = new System.Windows.Forms.Padding(3, 0, 0, 3);
TB_TID16.Name = "TB_TID16";
TB_TID16.Size = new System.Drawing.Size(90, 25);
TB_TID16.TabIndex = 3;
//
// L_SID16
//
L_SID16.Anchor = System.Windows.Forms.AnchorStyles.Right;
L_SID16.AutoSize = true;
L_SID16.Location = new System.Drawing.Point(38, 61);
L_SID16.Margin = new System.Windows.Forms.Padding(0);
L_SID16.Name = "L_SID16";
L_SID16.Size = new System.Drawing.Size(30, 17);
L_SID16.TabIndex = 4;
L_SID16.Text = "SID:";
//
// TB_SID16
//
TB_SID16.Location = new System.Drawing.Point(71, 56);
TB_SID16.Margin = new System.Windows.Forms.Padding(3, 0, 0, 3);
TB_SID16.Name = "TB_SID16";
TB_SID16.Size = new System.Drawing.Size(90, 25);
TB_SID16.TabIndex = 5;
//
// L_Language
//
L_Language.Anchor = System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right;
L_Language.AutoSize = true;
L_Language.Location = new System.Drawing.Point(0, 88);
L_Language.Margin = new System.Windows.Forms.Padding(0, 4, 0, 0);
L_Language.Name = "L_Language";
L_Language.Size = new System.Drawing.Size(68, 17);
L_Language.TabIndex = 6;
L_Language.Text = "Language:";
//
// CB_Language
//
CB_Language.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
CB_Language.FormattingEnabled = true;
CB_Language.Location = new System.Drawing.Point(71, 84);
CB_Language.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
CB_Language.Name = "CB_Language";
CB_Language.Size = new System.Drawing.Size(136, 25);
CB_Language.TabIndex = 7;
//
// PokeathlonEventTrainer4Editor
//
AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit;
AutoSize = true;
Controls.Add(TLP_Main);
Name = "PokeathlonEventTrainer4Editor";
Size = new System.Drawing.Size(225, 118);
TLP_Main.ResumeLayout(false);
TLP_Main.PerformLayout();
ResumeLayout(false);
PerformLayout();
}
#endregion
private System.Windows.Forms.TableLayoutPanel TLP_Main;
private System.Windows.Forms.Label L_OT;
private System.Windows.Forms.TextBox TB_OT;
private System.Windows.Forms.Label L_TID16;
private System.Windows.Forms.TextBox TB_TID16;
private System.Windows.Forms.Label L_SID16;
private System.Windows.Forms.TextBox TB_SID16;
private System.Windows.Forms.Label L_Language;
private System.Windows.Forms.ComboBox CB_Language;
}
}

View File

@@ -0,0 +1,42 @@
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Windows.Forms;
using PKHeX.Core;
namespace PKHeX.WinForms;
public sealed partial class PokeathlonEventTrainer4Editor : UserControl
{
public PokeathlonEventTrainer4Editor()
{
InitializeComponent();
var languages = new List<ComboItem> { new(GameInfo.Strings.specieslist[0], 0) };
languages.AddRange(GameInfo.LanguageDataSource(4, EntityContext.Gen4).Where(z => z.Value is not 0));
CB_Language.InitializeBinding();
CB_Language.DataSource = new BindingSource(languages, string.Empty);
}
public void LoadObject(PokeathlonEventTrainer4 entity)
{
TB_OT.Text = entity.OT;
TB_TID16.Text = entity.TID16.ToString(CultureInfo.InvariantCulture);
TB_SID16.Text = entity.SID16.ToString(CultureInfo.InvariantCulture);
CB_Language.SelectedValue = (int)entity.Language;
}
public void SaveObject(PokeathlonEventTrainer4 entity)
{
entity.OT = TB_OT.Text;
entity.TID16 = ParseU16(TB_TID16.Text);
entity.SID16 = ParseU16(TB_SID16.Text);
entity.Language = (byte)WinFormsUtil.GetIndex(CB_Language);
}
private static ushort ParseU16(string text)
{
if (!ushort.TryParse(text, NumberStyles.Integer, CultureInfo.InvariantCulture, out var value))
return 0;
return value;
}
}

View File

@@ -0,0 +1,188 @@
using PKHeX.WinForms.Controls;
namespace PKHeX.WinForms
{
partial class PokeathlonParticipant4Editor
{
private System.ComponentModel.IContainer components = null;
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
components.Dispose();
base.Dispose(disposing);
}
#region Component Designer generated code
private void InitializeComponent()
{
TLP_Main = new System.Windows.Forms.TableLayoutPanel();
UC_SpeciesForm = new PokeathlonSpeciesForm4Editor();
FLP_Meta = new System.Windows.Forms.FlowLayoutPanel();
GT_Gender = new GenderToggle();
CHK_IsShiny = new System.Windows.Forms.CheckBox();
L_PID = new System.Windows.Forms.Label();
TB_PID = new System.Windows.Forms.TextBox();
L_TID16 = new System.Windows.Forms.Label();
TB_TID16 = new System.Windows.Forms.TextBox();
L_SID16 = new System.Windows.Forms.Label();
TB_SID16 = new System.Windows.Forms.TextBox();
TLP_Main.SuspendLayout();
FLP_Meta.SuspendLayout();
SuspendLayout();
//
// TLP_Main
//
TLP_Main.AutoSize = true;
TLP_Main.ColumnCount = 1;
TLP_Main.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
TLP_Main.Controls.Add(UC_SpeciesForm, 0, 0);
TLP_Main.Controls.Add(FLP_Meta, 0, 1);
TLP_Main.Dock = System.Windows.Forms.DockStyle.Fill;
TLP_Main.Location = new System.Drawing.Point(0, 0);
TLP_Main.Margin = new System.Windows.Forms.Padding(0);
TLP_Main.Name = "TLP_Main";
TLP_Main.RowCount = 2;
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Main.Size = new System.Drawing.Size(572, 76);
TLP_Main.TabIndex = 0;
//
// UC_SpeciesForm
//
UC_SpeciesForm.DisplayGender = 0;
UC_SpeciesForm.DisplayShiny = false;
UC_SpeciesForm.Dock = System.Windows.Forms.DockStyle.Fill;
UC_SpeciesForm.Location = new System.Drawing.Point(0, 0);
UC_SpeciesForm.Margin = new System.Windows.Forms.Padding(0);
UC_SpeciesForm.Name = "UC_SpeciesForm";
UC_SpeciesForm.Size = new System.Drawing.Size(572, 40);
UC_SpeciesForm.TabIndex = 0;
//
// FLP_Meta
//
FLP_Meta.AutoSize = true;
FLP_Meta.Controls.Add(GT_Gender);
FLP_Meta.Controls.Add(CHK_IsShiny);
FLP_Meta.Controls.Add(L_PID);
FLP_Meta.Controls.Add(TB_PID);
FLP_Meta.Controls.Add(L_TID16);
FLP_Meta.Controls.Add(TB_TID16);
FLP_Meta.Controls.Add(L_SID16);
FLP_Meta.Controls.Add(TB_SID16);
FLP_Meta.Dock = System.Windows.Forms.DockStyle.Fill;
FLP_Meta.Location = new System.Drawing.Point(0, 40);
FLP_Meta.Margin = new System.Windows.Forms.Padding(0);
FLP_Meta.Name = "FLP_Meta";
FLP_Meta.Size = new System.Drawing.Size(572, 36);
FLP_Meta.TabIndex = 1;
FLP_Meta.WrapContents = false;
//
// GT_Gender
//
GT_Gender.AllowClick = true;
GT_Gender.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center;
GT_Gender.Gender = 255;
GT_Gender.Location = new System.Drawing.Point(0, 4);
GT_Gender.Margin = new System.Windows.Forms.Padding(0, 4, 6, 0);
GT_Gender.Name = "GT_Gender";
GT_Gender.Size = new System.Drawing.Size(18, 18);
GT_Gender.TabIndex = 0;
//
// CHK_IsShiny
//
CHK_IsShiny.AutoSize = true;
CHK_IsShiny.Location = new System.Drawing.Point(24, 2);
CHK_IsShiny.Margin = new System.Windows.Forms.Padding(0, 2, 12, 0);
CHK_IsShiny.Name = "CHK_IsShiny";
CHK_IsShiny.Size = new System.Drawing.Size(57, 21);
CHK_IsShiny.TabIndex = 1;
CHK_IsShiny.Text = "Shiny";
CHK_IsShiny.UseVisualStyleBackColor = true;
//
// L_PID
//
L_PID.Anchor = System.Windows.Forms.AnchorStyles.Left;
L_PID.AutoSize = true;
L_PID.Location = new System.Drawing.Point(96, 4);
L_PID.Name = "L_PID";
L_PID.Size = new System.Drawing.Size(26, 17);
L_PID.TabIndex = 2;
L_PID.Text = "PID:";
//
// TB_PID
//
TB_PID.Location = new System.Drawing.Point(128, 0);
TB_PID.Margin = new System.Windows.Forms.Padding(3, 0, 12, 0);
TB_PID.MaxLength = 8;
TB_PID.Name = "TB_PID";
TB_PID.Size = new System.Drawing.Size(86, 25);
TB_PID.TabIndex = 3;
//
// L_TID16
//
L_TID16.Anchor = System.Windows.Forms.AnchorStyles.Left;
L_TID16.AutoSize = true;
L_TID16.Location = new System.Drawing.Point(229, 4);
L_TID16.Name = "L_TID16";
L_TID16.Size = new System.Drawing.Size(30, 17);
L_TID16.TabIndex = 4;
L_TID16.Text = "TID:";
//
// TB_TID16
//
TB_TID16.Location = new System.Drawing.Point(265, 0);
TB_TID16.Margin = new System.Windows.Forms.Padding(3, 0, 12, 0);
TB_TID16.Name = "TB_TID16";
TB_TID16.Size = new System.Drawing.Size(68, 25);
TB_TID16.TabIndex = 5;
//
// L_SID16
//
L_SID16.Anchor = System.Windows.Forms.AnchorStyles.Left;
L_SID16.AutoSize = true;
L_SID16.Location = new System.Drawing.Point(348, 4);
L_SID16.Name = "L_SID16";
L_SID16.Size = new System.Drawing.Size(30, 17);
L_SID16.TabIndex = 6;
L_SID16.Text = "SID:";
//
// TB_SID16
//
TB_SID16.Location = new System.Drawing.Point(384, 0);
TB_SID16.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
TB_SID16.Name = "TB_SID16";
TB_SID16.Size = new System.Drawing.Size(68, 25);
TB_SID16.TabIndex = 7;
//
// PokeathlonParticipant4Editor
//
AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit;
AutoSize = true;
Controls.Add(TLP_Main);
Name = "PokeathlonParticipant4Editor";
Size = new System.Drawing.Size(572, 76);
TLP_Main.ResumeLayout(false);
TLP_Main.PerformLayout();
FLP_Meta.ResumeLayout(false);
FLP_Meta.PerformLayout();
ResumeLayout(false);
PerformLayout();
}
#endregion
private System.Windows.Forms.TableLayoutPanel TLP_Main;
private PokeathlonSpeciesForm4Editor UC_SpeciesForm;
private GenderToggle GT_Gender;
private System.Windows.Forms.CheckBox CHK_IsShiny;
private System.Windows.Forms.FlowLayoutPanel FLP_Meta;
private System.Windows.Forms.Label L_PID;
private System.Windows.Forms.TextBox TB_PID;
private System.Windows.Forms.Label L_TID16;
private System.Windows.Forms.TextBox TB_TID16;
private System.Windows.Forms.Label L_SID16;
private System.Windows.Forms.TextBox TB_SID16;
}
}

View File

@@ -0,0 +1,84 @@
using System.Globalization;
using System.Windows.Forms;
using PKHeX.Core;
namespace PKHeX.WinForms;
public sealed partial class PokeathlonParticipant4Editor : UserControl
{
private bool IsLoading;
public PokeathlonParticipant4Editor()
{
InitializeComponent();
UC_SpeciesForm.ValueChanged += (_, _) => SpeciesFormChanged();
GT_Gender.Click += (_, _) => WriteBack();
CHK_IsShiny.CheckedChanged += (_, _) => ShinyChanged();
TB_PID.TextChanged += (_, _) => WriteBack();
TB_TID16.TextChanged += (_, _) => WriteBack();
TB_SID16.TextChanged += (_, _) => WriteBack();
}
public void LoadObject(PokeathlonParticipant4 entity)
{
IsLoading = true;
UC_SpeciesForm.DisplayGender = entity.Gender;
UC_SpeciesForm.DisplayShiny = entity.IsShiny;
UC_SpeciesForm.LoadValues(entity.Species, entity.Form);
GT_Gender.Gender = entity.Gender;
CHK_IsShiny.Checked = entity.IsShiny;
TB_PID.Text = entity.EncryptionConstant.ToString("X8");
TB_TID16.Text = entity.TID16.ToString("00000");
TB_SID16.Text = entity.SID16.ToString("00000");
IsLoading = false;
}
public void SaveObject(PokeathlonParticipant4 entity)
{
entity.Species = UC_SpeciesForm.Species;
entity.Form = UC_SpeciesForm.Form;
entity.Gender = GT_Gender.Gender;
entity.IsShiny = CHK_IsShiny.Checked;
entity.EncryptionConstant = ParseHex(TB_PID.Text);
entity.TID16 = ParseU16(TB_TID16.Text);
entity.SID16 = ParseU16(TB_SID16.Text);
}
private void SpeciesFormChanged()
{
if (IsLoading)
return;
WriteBack();
}
private void ShinyChanged()
{
if (IsLoading)
return;
UC_SpeciesForm.DisplayShiny = CHK_IsShiny.Checked;
WriteBack();
}
private void WriteBack()
{
if (IsLoading)
return;
UC_SpeciesForm.DisplayGender = GT_Gender.Gender;
UC_SpeciesForm.DisplayShiny = CHK_IsShiny.Checked;
}
private static ushort ParseU16(string text)
{
if (!ushort.TryParse(text, NumberStyles.Integer, CultureInfo.InvariantCulture, out var value))
return 0;
return value;
}
private static uint ParseHex(string text)
{
text = Util.GetOnlyHex(text);
if (!uint.TryParse(text, NumberStyles.HexNumber, CultureInfo.InvariantCulture, out var value))
return 0;
return value;
}
}

View File

@@ -0,0 +1,98 @@
namespace PKHeX.WinForms
{
partial class PokeathlonSpeciesForm4Editor
{
private System.ComponentModel.IContainer components = null;
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
components.Dispose();
base.Dispose(disposing);
}
#region Component Designer generated code
private void InitializeComponent()
{
TLP_Main = new System.Windows.Forms.TableLayoutPanel();
PB_Sprite = new System.Windows.Forms.PictureBox();
CB_Species = new System.Windows.Forms.ComboBox();
CB_Form = new System.Windows.Forms.ComboBox();
TLP_Main.SuspendLayout();
((System.ComponentModel.ISupportInitialize)PB_Sprite).BeginInit();
SuspendLayout();
//
// TLP_Main
//
TLP_Main.AutoSize = true;
TLP_Main.ColumnCount = 3;
TLP_Main.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_Main.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_Main.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_Main.Controls.Add(PB_Sprite, 0, 0);
TLP_Main.Controls.Add(CB_Species, 1, 0);
TLP_Main.Controls.Add(CB_Form, 2, 0);
TLP_Main.Dock = System.Windows.Forms.DockStyle.Fill;
TLP_Main.Location = new System.Drawing.Point(0, 0);
TLP_Main.Margin = new System.Windows.Forms.Padding(0);
TLP_Main.Name = "TLP_Main";
TLP_Main.RowCount = 1;
TLP_Main.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
TLP_Main.Size = new System.Drawing.Size(420, 40);
TLP_Main.TabIndex = 0;
//
// PB_Sprite
//
PB_Sprite.Dock = System.Windows.Forms.DockStyle.Fill;
PB_Sprite.Location = new System.Drawing.Point(0, 0);
PB_Sprite.Margin = new System.Windows.Forms.Padding(0);
PB_Sprite.Name = "PB_Sprite";
PB_Sprite.Size = new System.Drawing.Size(40, 40);
PB_Sprite.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage;
PB_Sprite.TabIndex = 0;
PB_Sprite.TabStop = false;
//
// CB_Species
//
CB_Species.Anchor = System.Windows.Forms.AnchorStyles.Left;
CB_Species.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend;
CB_Species.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems;
CB_Species.FormattingEnabled = true;
CB_Species.Location = new System.Drawing.Point(43, 6);
CB_Species.Margin = new System.Windows.Forms.Padding(3, 6, 3, 6);
CB_Species.Name = "CB_Species";
CB_Species.Size = new System.Drawing.Size(120, 25);
CB_Species.TabIndex = 1;
//
// CB_Form
//
CB_Form.Anchor = System.Windows.Forms.AnchorStyles.Left;
CB_Form.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
CB_Form.FormattingEnabled = true;
CB_Form.Location = new System.Drawing.Point(169, 6);
CB_Form.Margin = new System.Windows.Forms.Padding(3, 6, 0, 6);
CB_Form.Name = "CB_Form";
CB_Form.Size = new System.Drawing.Size(80, 25);
CB_Form.TabIndex = 2;
//
// PokeathlonSpeciesForm4Editor
//
AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit;
Controls.Add(TLP_Main);
Name = "PokeathlonSpeciesForm4Editor";
Size = new System.Drawing.Size(249, 40);
TLP_Main.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)PB_Sprite).EndInit();
ResumeLayout(false);
PerformLayout();
}
#endregion
private System.Windows.Forms.TableLayoutPanel TLP_Main;
private System.Windows.Forms.PictureBox PB_Sprite;
private System.Windows.Forms.ComboBox CB_Species;
private System.Windows.Forms.ComboBox CB_Form;
}
}

View File

@@ -0,0 +1,107 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using PKHeX.Core;
using PKHeX.Drawing.PokeSprite;
namespace PKHeX.WinForms;
public sealed partial class PokeathlonSpeciesForm4Editor : UserControl
{
private bool IsLoading;
private byte SpriteGender;
private bool SpriteShiny;
public event EventHandler? ValueChanged;
public ushort Species => (ushort)WinFormsUtil.GetIndex(CB_Species);
public byte Form => (byte)Math.Max(CB_Form.SelectedIndex, 0);
public byte DisplayGender
{
get => SpriteGender;
set
{
SpriteGender = value > 2 ? (byte)2 : value;
RefreshSprite();
}
}
public bool DisplayShiny
{
get => SpriteShiny;
set
{
SpriteShiny = value;
RefreshSprite();
}
}
public PokeathlonSpeciesForm4Editor()
{
InitializeComponent();
InitializeCombo(CB_Species, GameInfo.FilteredSources.Species.ToList());
CB_Species.SelectedValueChanged += CB_Species_SelectedValueChanged;
CB_Form.SelectedValueChanged += CB_Form_SelectedValueChanged;
LoadValues(0, 0);
}
public void LoadValues(ushort species, byte form)
{
IsLoading = true;
CB_Species.SelectedValue = (int)species;
LoadForms(form);
RefreshSprite();
IsLoading = false;
}
private void CB_Species_SelectedValueChanged(object? sender, EventArgs e)
{
LoadForms();
OnValueChanged();
}
private void CB_Form_SelectedValueChanged(object? sender, EventArgs e)
{
RefreshSprite();
OnValueChanged();
}
private void LoadForms(byte selectedForm = 0)
{
var species = Species;
var forms = FormConverter.GetFormList(species, GameInfo.Strings.types, GameInfo.Strings.forms, Main.GenderSymbols, EntityContext.Gen4);
var source = GetFormSource(forms);
CB_Form.InitializeBinding();
CB_Form.DataSource = new BindingSource(source, string.Empty);
CB_Form.SelectedValue = Math.Min(selectedForm, source.Count - 1);
RefreshSprite();
}
private void RefreshSprite()
{
var image = SpriteUtil.GetSprite(Species, Form, SpriteGender, 0, 0, false, SpriteShiny ? Shiny.Always : Shiny.Never, EntityContext.Gen4);
PB_Sprite.Image = image;
}
private void OnValueChanged()
{
if (!IsLoading)
ValueChanged?.Invoke(this, EventArgs.Empty);
}
private static List<ComboItem> GetFormSource(IReadOnlyList<string> forms)
{
var result = new List<ComboItem>(forms.Count);
for (int i = 0; i < forms.Count; i++)
result.Add(new ComboItem(forms[i], i));
return result;
}
private static void InitializeCombo(ComboBox cb, IReadOnlyList<ComboItem> source)
{
cb.InitializeBinding();
cb.DataSource = new BindingSource(source, string.Empty);
}
}

View File

@@ -0,0 +1,983 @@
using PKHeX.WinForms.Controls;
namespace PKHeX.WinForms
{
partial class SAV_Pokeathlon4
{
private System.ComponentModel.IContainer components = null;
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
components.Dispose();
base.Dispose(disposing);
}
#region Windows Form Designer generated code
private void InitializeComponent()
{
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
TC_Editor = new System.Windows.Forms.TabControl();
Tab_General = new System.Windows.Forms.TabPage();
TLP_General = new System.Windows.Forms.TableLayoutPanel();
L_Points = new System.Windows.Forms.Label();
NUD_Points = new System.Windows.Forms.NumericUpDown();
L_DailyShopFlags = new System.Windows.Forms.Label();
FLP_DailyShopFlags = new System.Windows.Forms.FlowLayoutPanel();
CHK_DailyShop0 = new System.Windows.Forms.CheckBox();
CHK_DailyShop1 = new System.Windows.Forms.CheckBox();
CHK_DailyShop2 = new System.Windows.Forms.CheckBox();
CHK_DailyShop3 = new System.Windows.Forms.CheckBox();
CHK_DailyShop4 = new System.Windows.Forms.CheckBox();
CHK_DailyShop5 = new System.Windows.Forms.CheckBox();
CHK_DailyShop6 = new System.Windows.Forms.CheckBox();
CHK_DailyShop7 = new System.Windows.Forms.CheckBox();
CHK_DailyShop8 = new System.Windows.Forms.CheckBox();
CHK_DailyShop9 = new System.Windows.Forms.CheckBox();
CHK_DailyShop10 = new System.Windows.Forms.CheckBox();
CHK_DailyShop11 = new System.Windows.Forms.CheckBox();
L_DataCards = new System.Windows.Forms.Label();
CLB_DataCards = new System.Windows.Forms.CheckedListBox();
Tab_Medals = new System.Windows.Forms.TabPage();
FLP_Medals = new System.Windows.Forms.FlowLayoutPanel();
B_MedalsGiveAll = new System.Windows.Forms.Button();
B_MedalsClearAll = new System.Windows.Forms.Button();
DGV_Medals = new DoubleBufferedDataGridView();
Tab_Counters = new System.Windows.Forms.TabPage();
TLP_Counters = new System.Windows.Forms.TableLayoutPanel();
Tab_Best = new System.Windows.Forms.TabPage();
TLP_Best = new System.Windows.Forms.TableLayoutPanel();
Tab_Courses = new System.Windows.Forms.TabPage();
TLP_Courses = new System.Windows.Forms.TableLayoutPanel();
L_CourseIndex = new System.Windows.Forms.Label();
CB_CourseIndex = new System.Windows.Forms.ComboBox();
TLP_CourseScore = new System.Windows.Forms.TableLayoutPanel();
L_CourseScore0 = new System.Windows.Forms.Label();
NUD_CourseScore0 = new System.Windows.Forms.NumericUpDown();
L_CourseScore1 = new System.Windows.Forms.Label();
NUD_CourseScore1 = new System.Windows.Forms.NumericUpDown();
L_CourseScore2 = new System.Windows.Forms.Label();
NUD_CourseScore2 = new System.Windows.Forms.NumericUpDown();
L_CourseScoreMax = new System.Windows.Forms.Label();
NUD_CourseScoreMax = new System.Windows.Forms.NumericUpDown();
L_CourseParticipant0 = new System.Windows.Forms.Label();
UC_CourseParticipant0 = new PokeathlonParticipant4Editor();
L_CourseParticipant1 = new System.Windows.Forms.Label();
UC_CourseParticipant1 = new PokeathlonParticipant4Editor();
L_CourseParticipant2 = new System.Windows.Forms.Label();
UC_CourseParticipant2 = new PokeathlonParticipant4Editor();
Tab_SelfEvent = new System.Windows.Forms.TabPage();
TLP_SelfEvent = new System.Windows.Forms.TableLayoutPanel();
L_SelfEventIndex = new System.Windows.Forms.Label();
CB_SelfEventIndex = new System.Windows.Forms.ComboBox();
UC_SelfEventData = new PokeathlonEventData4Editor();
Tab_Connection = new System.Windows.Forms.TabPage();
TLP_Connection = new System.Windows.Forms.TableLayoutPanel();
L_ConnectionIndex = new System.Windows.Forms.Label();
CB_ConnectionIndex = new System.Windows.Forms.ComboBox();
UC_Connection = new PokeathlonConnection4Editor();
FLP_Buttons = new System.Windows.Forms.FlowLayoutPanel();
B_Cancel = new System.Windows.Forms.Button();
B_Save = new System.Windows.Forms.Button();
TLP_Medals = new System.Windows.Forms.TableLayoutPanel();
TC_Editor.SuspendLayout();
Tab_General.SuspendLayout();
TLP_General.SuspendLayout();
((System.ComponentModel.ISupportInitialize)NUD_Points).BeginInit();
FLP_DailyShopFlags.SuspendLayout();
Tab_Medals.SuspendLayout();
FLP_Medals.SuspendLayout();
((System.ComponentModel.ISupportInitialize)DGV_Medals).BeginInit();
Tab_Counters.SuspendLayout();
Tab_Best.SuspendLayout();
Tab_Courses.SuspendLayout();
TLP_Courses.SuspendLayout();
TLP_CourseScore.SuspendLayout();
((System.ComponentModel.ISupportInitialize)NUD_CourseScore0).BeginInit();
((System.ComponentModel.ISupportInitialize)NUD_CourseScore1).BeginInit();
((System.ComponentModel.ISupportInitialize)NUD_CourseScore2).BeginInit();
((System.ComponentModel.ISupportInitialize)NUD_CourseScoreMax).BeginInit();
Tab_SelfEvent.SuspendLayout();
TLP_SelfEvent.SuspendLayout();
Tab_Connection.SuspendLayout();
TLP_Connection.SuspendLayout();
FLP_Buttons.SuspendLayout();
TLP_Medals.SuspendLayout();
SuspendLayout();
//
// TC_Editor
//
TC_Editor.Controls.Add(Tab_General);
TC_Editor.Controls.Add(Tab_Medals);
TC_Editor.Controls.Add(Tab_Counters);
TC_Editor.Controls.Add(Tab_Best);
TC_Editor.Controls.Add(Tab_Courses);
TC_Editor.Controls.Add(Tab_SelfEvent);
TC_Editor.Controls.Add(Tab_Connection);
TC_Editor.Dock = System.Windows.Forms.DockStyle.Fill;
TC_Editor.Location = new System.Drawing.Point(0, 0);
TC_Editor.Margin = new System.Windows.Forms.Padding(0);
TC_Editor.Name = "TC_Editor";
TC_Editor.SelectedIndex = 0;
TC_Editor.Size = new System.Drawing.Size(612, 924);
TC_Editor.TabIndex = 0;
//
// Tab_General
//
Tab_General.Controls.Add(TLP_General);
Tab_General.Location = new System.Drawing.Point(4, 26);
Tab_General.Name = "Tab_General";
Tab_General.Padding = new System.Windows.Forms.Padding(3);
Tab_General.Size = new System.Drawing.Size(604, 895);
Tab_General.TabIndex = 0;
Tab_General.Text = "General";
Tab_General.UseVisualStyleBackColor = true;
//
// TLP_General
//
TLP_General.ColumnCount = 2;
TLP_General.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_General.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
TLP_General.Controls.Add(L_Points, 0, 0);
TLP_General.Controls.Add(NUD_Points, 1, 0);
TLP_General.Controls.Add(L_DailyShopFlags, 0, 1);
TLP_General.Controls.Add(FLP_DailyShopFlags, 1, 1);
TLP_General.Controls.Add(L_DataCards, 0, 2);
TLP_General.Controls.Add(CLB_DataCards, 1, 2);
TLP_General.Dock = System.Windows.Forms.DockStyle.Fill;
TLP_General.Location = new System.Drawing.Point(3, 3);
TLP_General.Name = "TLP_General";
TLP_General.Padding = new System.Windows.Forms.Padding(8);
TLP_General.RowCount = 3;
TLP_General.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_General.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_General.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
TLP_General.Size = new System.Drawing.Size(598, 889);
TLP_General.TabIndex = 0;
//
// L_Points
//
L_Points.Anchor = System.Windows.Forms.AnchorStyles.Right;
L_Points.AutoSize = true;
L_Points.Location = new System.Drawing.Point(38, 12);
L_Points.Margin = new System.Windows.Forms.Padding(0);
L_Points.Name = "L_Points";
L_Points.Size = new System.Drawing.Size(46, 17);
L_Points.TabIndex = 0;
L_Points.Text = "Points:";
//
// NUD_Points
//
NUD_Points.Location = new System.Drawing.Point(84, 8);
NUD_Points.Margin = new System.Windows.Forms.Padding(0, 0, 0, 1);
NUD_Points.Maximum = new decimal(new int[] { 99999, 0, 0, 0 });
NUD_Points.Name = "NUD_Points";
NUD_Points.Size = new System.Drawing.Size(120, 25);
NUD_Points.TabIndex = 1;
//
// L_DailyShopFlags
//
L_DailyShopFlags.Anchor = System.Windows.Forms.AnchorStyles.Right;
L_DailyShopFlags.AutoSize = true;
L_DailyShopFlags.Location = new System.Drawing.Point(11, 35);
L_DailyShopFlags.Margin = new System.Windows.Forms.Padding(0);
L_DailyShopFlags.Name = "L_DailyShopFlags";
L_DailyShopFlags.Size = new System.Drawing.Size(73, 17);
L_DailyShopFlags.TabIndex = 2;
L_DailyShopFlags.Text = "Daily Shop:";
//
// FLP_DailyShopFlags
//
FLP_DailyShopFlags.AutoSize = true;
FLP_DailyShopFlags.Controls.Add(CHK_DailyShop0);
FLP_DailyShopFlags.Controls.Add(CHK_DailyShop1);
FLP_DailyShopFlags.Controls.Add(CHK_DailyShop2);
FLP_DailyShopFlags.Controls.Add(CHK_DailyShop3);
FLP_DailyShopFlags.Controls.Add(CHK_DailyShop4);
FLP_DailyShopFlags.Controls.Add(CHK_DailyShop5);
FLP_DailyShopFlags.Controls.Add(CHK_DailyShop6);
FLP_DailyShopFlags.Controls.Add(CHK_DailyShop7);
FLP_DailyShopFlags.Controls.Add(CHK_DailyShop8);
FLP_DailyShopFlags.Controls.Add(CHK_DailyShop9);
FLP_DailyShopFlags.Controls.Add(CHK_DailyShop10);
FLP_DailyShopFlags.Controls.Add(CHK_DailyShop11);
FLP_DailyShopFlags.Dock = System.Windows.Forms.DockStyle.Fill;
FLP_DailyShopFlags.Location = new System.Drawing.Point(84, 34);
FLP_DailyShopFlags.Margin = new System.Windows.Forms.Padding(0);
FLP_DailyShopFlags.Name = "FLP_DailyShopFlags";
FLP_DailyShopFlags.Size = new System.Drawing.Size(506, 20);
FLP_DailyShopFlags.TabIndex = 3;
//
// CHK_DailyShop0
//
CHK_DailyShop0.AutoSize = true;
CHK_DailyShop0.Location = new System.Drawing.Point(3, 3);
CHK_DailyShop0.Name = "CHK_DailyShop0";
CHK_DailyShop0.Size = new System.Drawing.Size(15, 14);
CHK_DailyShop0.TabIndex = 0;
CHK_DailyShop0.UseVisualStyleBackColor = true;
//
// CHK_DailyShop1
//
CHK_DailyShop1.AutoSize = true;
CHK_DailyShop1.Location = new System.Drawing.Point(24, 3);
CHK_DailyShop1.Name = "CHK_DailyShop1";
CHK_DailyShop1.Size = new System.Drawing.Size(15, 14);
CHK_DailyShop1.TabIndex = 1;
CHK_DailyShop1.UseVisualStyleBackColor = true;
//
// CHK_DailyShop2
//
CHK_DailyShop2.AutoSize = true;
CHK_DailyShop2.Location = new System.Drawing.Point(45, 3);
CHK_DailyShop2.Name = "CHK_DailyShop2";
CHK_DailyShop2.Size = new System.Drawing.Size(15, 14);
CHK_DailyShop2.TabIndex = 2;
CHK_DailyShop2.UseVisualStyleBackColor = true;
//
// CHK_DailyShop3
//
CHK_DailyShop3.AutoSize = true;
CHK_DailyShop3.Location = new System.Drawing.Point(66, 3);
CHK_DailyShop3.Name = "CHK_DailyShop3";
CHK_DailyShop3.Size = new System.Drawing.Size(15, 14);
CHK_DailyShop3.TabIndex = 3;
CHK_DailyShop3.UseVisualStyleBackColor = true;
//
// CHK_DailyShop4
//
CHK_DailyShop4.AutoSize = true;
CHK_DailyShop4.Location = new System.Drawing.Point(87, 3);
CHK_DailyShop4.Name = "CHK_DailyShop4";
CHK_DailyShop4.Size = new System.Drawing.Size(15, 14);
CHK_DailyShop4.TabIndex = 4;
CHK_DailyShop4.UseVisualStyleBackColor = true;
//
// CHK_DailyShop5
//
CHK_DailyShop5.AutoSize = true;
CHK_DailyShop5.Location = new System.Drawing.Point(108, 3);
CHK_DailyShop5.Name = "CHK_DailyShop5";
CHK_DailyShop5.Size = new System.Drawing.Size(15, 14);
CHK_DailyShop5.TabIndex = 5;
CHK_DailyShop5.UseVisualStyleBackColor = true;
//
// CHK_DailyShop6
//
CHK_DailyShop6.AutoSize = true;
CHK_DailyShop6.Location = new System.Drawing.Point(129, 3);
CHK_DailyShop6.Name = "CHK_DailyShop6";
CHK_DailyShop6.Size = new System.Drawing.Size(15, 14);
CHK_DailyShop6.TabIndex = 6;
CHK_DailyShop6.UseVisualStyleBackColor = true;
//
// CHK_DailyShop7
//
CHK_DailyShop7.AutoSize = true;
CHK_DailyShop7.Location = new System.Drawing.Point(150, 3);
CHK_DailyShop7.Name = "CHK_DailyShop7";
CHK_DailyShop7.Size = new System.Drawing.Size(15, 14);
CHK_DailyShop7.TabIndex = 7;
CHK_DailyShop7.UseVisualStyleBackColor = true;
//
// CHK_DailyShop8
//
CHK_DailyShop8.AutoSize = true;
CHK_DailyShop8.Location = new System.Drawing.Point(171, 3);
CHK_DailyShop8.Name = "CHK_DailyShop8";
CHK_DailyShop8.Size = new System.Drawing.Size(15, 14);
CHK_DailyShop8.TabIndex = 8;
CHK_DailyShop8.UseVisualStyleBackColor = true;
//
// CHK_DailyShop9
//
CHK_DailyShop9.AutoSize = true;
CHK_DailyShop9.Location = new System.Drawing.Point(192, 3);
CHK_DailyShop9.Name = "CHK_DailyShop9";
CHK_DailyShop9.Size = new System.Drawing.Size(15, 14);
CHK_DailyShop9.TabIndex = 9;
CHK_DailyShop9.UseVisualStyleBackColor = true;
//
// CHK_DailyShop10
//
CHK_DailyShop10.AutoSize = true;
CHK_DailyShop10.Location = new System.Drawing.Point(213, 3);
CHK_DailyShop10.Name = "CHK_DailyShop10";
CHK_DailyShop10.Size = new System.Drawing.Size(15, 14);
CHK_DailyShop10.TabIndex = 10;
CHK_DailyShop10.UseVisualStyleBackColor = true;
//
// CHK_DailyShop11
//
CHK_DailyShop11.AutoSize = true;
CHK_DailyShop11.Location = new System.Drawing.Point(234, 3);
CHK_DailyShop11.Name = "CHK_DailyShop11";
CHK_DailyShop11.Size = new System.Drawing.Size(15, 14);
CHK_DailyShop11.TabIndex = 11;
CHK_DailyShop11.UseVisualStyleBackColor = true;
//
// L_DataCards
//
L_DataCards.Anchor = System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right;
L_DataCards.AutoSize = true;
L_DataCards.Location = new System.Drawing.Point(8, 56);
L_DataCards.Margin = new System.Windows.Forms.Padding(0, 2, 0, 0);
L_DataCards.Name = "L_DataCards";
L_DataCards.Size = new System.Drawing.Size(76, 17);
L_DataCards.TabIndex = 4;
L_DataCards.Text = "Data Cards:";
//
// CLB_DataCards
//
CLB_DataCards.CheckOnClick = true;
CLB_DataCards.Dock = System.Windows.Forms.DockStyle.Fill;
CLB_DataCards.FormattingEnabled = true;
CLB_DataCards.IntegralHeight = false;
CLB_DataCards.Location = new System.Drawing.Point(87, 54);
CLB_DataCards.Margin = new System.Windows.Forms.Padding(3, 0, 3, 0);
CLB_DataCards.Name = "CLB_DataCards";
CLB_DataCards.Size = new System.Drawing.Size(500, 827);
CLB_DataCards.TabIndex = 5;
//
// Tab_Medals
//
Tab_Medals.Controls.Add(TLP_Medals);
Tab_Medals.Location = new System.Drawing.Point(4, 26);
Tab_Medals.Name = "Tab_Medals";
Tab_Medals.Padding = new System.Windows.Forms.Padding(3);
Tab_Medals.Size = new System.Drawing.Size(604, 895);
Tab_Medals.TabIndex = 1;
Tab_Medals.Text = "Medals";
Tab_Medals.UseVisualStyleBackColor = true;
//
// FLP_Medals
//
FLP_Medals.AutoSize = true;
FLP_Medals.Controls.Add(B_MedalsGiveAll);
FLP_Medals.Controls.Add(B_MedalsClearAll);
FLP_Medals.Dock = System.Windows.Forms.DockStyle.Fill;
FLP_Medals.Location = new System.Drawing.Point(0, 841);
FLP_Medals.Margin = new System.Windows.Forms.Padding(0);
FLP_Medals.Name = "FLP_Medals";
FLP_Medals.Padding = new System.Windows.Forms.Padding(8);
FLP_Medals.Size = new System.Drawing.Size(598, 48);
FLP_Medals.TabIndex = 1;
FLP_Medals.WrapContents = false;
//
// B_MedalsGiveAll
//
B_MedalsGiveAll.AutoSize = true;
B_MedalsGiveAll.Location = new System.Drawing.Point(11, 11);
B_MedalsGiveAll.Name = "B_MedalsGiveAll";
B_MedalsGiveAll.Size = new System.Drawing.Size(61, 27);
B_MedalsGiveAll.TabIndex = 0;
B_MedalsGiveAll.Text = "Give All";
B_MedalsGiveAll.UseVisualStyleBackColor = true;
B_MedalsGiveAll.Click += B_MedalsGiveAll_Click;
//
// B_MedalsClearAll
//
B_MedalsClearAll.AutoSize = true;
B_MedalsClearAll.Location = new System.Drawing.Point(78, 11);
B_MedalsClearAll.Name = "B_MedalsClearAll";
B_MedalsClearAll.Size = new System.Drawing.Size(66, 27);
B_MedalsClearAll.TabIndex = 1;
B_MedalsClearAll.Text = "Clear All";
B_MedalsClearAll.UseVisualStyleBackColor = true;
B_MedalsClearAll.Click += B_MedalsClearAll_Click;
//
// DGV_Medals
//
dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.ControlLight;
DGV_Medals.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle2;
DGV_Medals.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
DGV_Medals.Dock = System.Windows.Forms.DockStyle.Fill;
DGV_Medals.Location = new System.Drawing.Point(0, 0);
DGV_Medals.Margin = new System.Windows.Forms.Padding(0);
DGV_Medals.Name = "DGV_Medals";
DGV_Medals.RowHeadersVisible = false;
DGV_Medals.Size = new System.Drawing.Size(598, 841);
DGV_Medals.TabIndex = 0;
//
// Tab_Counters
//
Tab_Counters.Controls.Add(TLP_Counters);
Tab_Counters.Location = new System.Drawing.Point(4, 26);
Tab_Counters.Name = "Tab_Counters";
Tab_Counters.Padding = new System.Windows.Forms.Padding(3);
Tab_Counters.Size = new System.Drawing.Size(604, 894);
Tab_Counters.TabIndex = 2;
Tab_Counters.Text = "Counters";
Tab_Counters.UseVisualStyleBackColor = true;
//
// TLP_Counters
//
TLP_Counters.AutoScroll = true;
TLP_Counters.ColumnCount = 2;
TLP_Counters.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_Counters.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_Counters.Dock = System.Windows.Forms.DockStyle.Fill;
TLP_Counters.Location = new System.Drawing.Point(3, 3);
TLP_Counters.Name = "TLP_Counters";
TLP_Counters.Padding = new System.Windows.Forms.Padding(8);
TLP_Counters.RowCount = 1;
TLP_Counters.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Counters.Size = new System.Drawing.Size(598, 888);
TLP_Counters.TabIndex = 0;
//
// Tab_Best
//
Tab_Best.Controls.Add(TLP_Best);
Tab_Best.Location = new System.Drawing.Point(4, 26);
Tab_Best.Name = "Tab_Best";
Tab_Best.Padding = new System.Windows.Forms.Padding(3);
Tab_Best.Size = new System.Drawing.Size(604, 895);
Tab_Best.TabIndex = 3;
Tab_Best.Text = "Best";
Tab_Best.UseVisualStyleBackColor = true;
//
// TLP_Best
//
TLP_Best.AutoScroll = true;
TLP_Best.ColumnCount = 2;
TLP_Best.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_Best.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
TLP_Best.Dock = System.Windows.Forms.DockStyle.Fill;
TLP_Best.Location = new System.Drawing.Point(3, 3);
TLP_Best.Name = "TLP_Best";
TLP_Best.Padding = new System.Windows.Forms.Padding(8);
TLP_Best.RowCount = 1;
TLP_Best.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Best.Size = new System.Drawing.Size(598, 889);
TLP_Best.TabIndex = 0;
//
// Tab_Courses
//
Tab_Courses.Controls.Add(TLP_Courses);
Tab_Courses.Location = new System.Drawing.Point(4, 26);
Tab_Courses.Name = "Tab_Courses";
Tab_Courses.Padding = new System.Windows.Forms.Padding(3);
Tab_Courses.Size = new System.Drawing.Size(604, 895);
Tab_Courses.TabIndex = 4;
Tab_Courses.Text = "Courses";
Tab_Courses.UseVisualStyleBackColor = true;
//
// TLP_Courses
//
TLP_Courses.AutoScroll = true;
TLP_Courses.AutoSize = true;
TLP_Courses.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
TLP_Courses.ColumnCount = 2;
TLP_Courses.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 120F));
TLP_Courses.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
TLP_Courses.Controls.Add(L_CourseIndex, 0, 0);
TLP_Courses.Controls.Add(CB_CourseIndex, 1, 0);
TLP_Courses.Controls.Add(TLP_CourseScore, 1, 1);
TLP_Courses.Controls.Add(L_CourseParticipant0, 0, 2);
TLP_Courses.Controls.Add(UC_CourseParticipant0, 0, 3);
TLP_Courses.Controls.Add(L_CourseParticipant1, 0, 4);
TLP_Courses.Controls.Add(UC_CourseParticipant1, 0, 5);
TLP_Courses.Controls.Add(L_CourseParticipant2, 0, 6);
TLP_Courses.Controls.Add(UC_CourseParticipant2, 0, 7);
TLP_Courses.Dock = System.Windows.Forms.DockStyle.Fill;
TLP_Courses.Location = new System.Drawing.Point(3, 3);
TLP_Courses.Name = "TLP_Courses";
TLP_Courses.Padding = new System.Windows.Forms.Padding(8);
TLP_Courses.RowCount = 8;
TLP_Courses.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Courses.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Courses.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Courses.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Courses.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Courses.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Courses.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Courses.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Courses.Size = new System.Drawing.Size(598, 889);
TLP_Courses.TabIndex = 0;
//
// L_CourseIndex
//
L_CourseIndex.Anchor = System.Windows.Forms.AnchorStyles.Right;
L_CourseIndex.AutoSize = true;
L_CourseIndex.Location = new System.Drawing.Point(83, 12);
L_CourseIndex.Name = "L_CourseIndex";
L_CourseIndex.Size = new System.Drawing.Size(42, 17);
L_CourseIndex.TabIndex = 0;
L_CourseIndex.Text = "Index:";
//
// CB_CourseIndex
//
CB_CourseIndex.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
CB_CourseIndex.FormattingEnabled = true;
CB_CourseIndex.Location = new System.Drawing.Point(128, 8);
CB_CourseIndex.Margin = new System.Windows.Forms.Padding(0, 0, 0, 1);
CB_CourseIndex.Name = "CB_CourseIndex";
CB_CourseIndex.Size = new System.Drawing.Size(121, 25);
CB_CourseIndex.TabIndex = 1;
CB_CourseIndex.SelectedIndexChanged += CB_CourseIndex_SelectedIndexChanged;
//
// TLP_CourseScore
//
TLP_CourseScore.AutoSize = true;
TLP_CourseScore.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
TLP_CourseScore.ColumnCount = 4;
TLP_CourseScore.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_CourseScore.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_CourseScore.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_CourseScore.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_CourseScore.Controls.Add(L_CourseScore0, 0, 0);
TLP_CourseScore.Controls.Add(NUD_CourseScore0, 1, 0);
TLP_CourseScore.Controls.Add(L_CourseScore1, 2, 0);
TLP_CourseScore.Controls.Add(NUD_CourseScore1, 3, 0);
TLP_CourseScore.Controls.Add(L_CourseScore2, 0, 1);
TLP_CourseScore.Controls.Add(NUD_CourseScore2, 1, 1);
TLP_CourseScore.Controls.Add(L_CourseScoreMax, 2, 1);
TLP_CourseScore.Controls.Add(NUD_CourseScoreMax, 3, 1);
TLP_CourseScore.Location = new System.Drawing.Point(128, 46);
TLP_CourseScore.Margin = new System.Windows.Forms.Padding(0, 12, 0, 0);
TLP_CourseScore.Name = "TLP_CourseScore";
TLP_CourseScore.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_CourseScore.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_CourseScore.Size = new System.Drawing.Size(320, 52);
TLP_CourseScore.TabIndex = 2;
//
// L_CourseScore0
//
L_CourseScore0.Anchor = System.Windows.Forms.AnchorStyles.Right;
L_CourseScore0.AutoSize = true;
L_CourseScore0.Location = new System.Drawing.Point(0, 4);
L_CourseScore0.Margin = new System.Windows.Forms.Padding(0);
L_CourseScore0.Name = "L_CourseScore0";
L_CourseScore0.Size = new System.Drawing.Size(51, 17);
L_CourseScore0.TabIndex = 0;
L_CourseScore0.Text = "Score0:";
//
// NUD_CourseScore0
//
NUD_CourseScore0.Location = new System.Drawing.Point(51, 0);
NUD_CourseScore0.Margin = new System.Windows.Forms.Padding(0, 0, 0, 1);
NUD_CourseScore0.Maximum = new decimal(new int[] { 65535, 0, 0, 0 });
NUD_CourseScore0.Name = "NUD_CourseScore0";
NUD_CourseScore0.Size = new System.Drawing.Size(100, 25);
NUD_CourseScore0.TabIndex = 1;
//
// L_CourseScore1
//
L_CourseScore1.Anchor = System.Windows.Forms.AnchorStyles.Right;
L_CourseScore1.AutoSize = true;
L_CourseScore1.Location = new System.Drawing.Point(169, 4);
L_CourseScore1.Margin = new System.Windows.Forms.Padding(0);
L_CourseScore1.Name = "L_CourseScore1";
L_CourseScore1.Size = new System.Drawing.Size(51, 17);
L_CourseScore1.TabIndex = 2;
L_CourseScore1.Text = "Score1:";
//
// NUD_CourseScore1
//
NUD_CourseScore1.Location = new System.Drawing.Point(220, 0);
NUD_CourseScore1.Margin = new System.Windows.Forms.Padding(0, 0, 0, 1);
NUD_CourseScore1.Maximum = new decimal(new int[] { 65535, 0, 0, 0 });
NUD_CourseScore1.Name = "NUD_CourseScore1";
NUD_CourseScore1.Size = new System.Drawing.Size(100, 25);
NUD_CourseScore1.TabIndex = 3;
//
// L_CourseScore2
//
L_CourseScore2.Anchor = System.Windows.Forms.AnchorStyles.Right;
L_CourseScore2.AutoSize = true;
L_CourseScore2.Location = new System.Drawing.Point(0, 30);
L_CourseScore2.Margin = new System.Windows.Forms.Padding(0);
L_CourseScore2.Name = "L_CourseScore2";
L_CourseScore2.Size = new System.Drawing.Size(51, 17);
L_CourseScore2.TabIndex = 4;
L_CourseScore2.Text = "Score2:";
//
// NUD_CourseScore2
//
NUD_CourseScore2.Location = new System.Drawing.Point(51, 26);
NUD_CourseScore2.Margin = new System.Windows.Forms.Padding(0, 0, 0, 1);
NUD_CourseScore2.Maximum = new decimal(new int[] { 65535, 0, 0, 0 });
NUD_CourseScore2.Name = "NUD_CourseScore2";
NUD_CourseScore2.Size = new System.Drawing.Size(100, 25);
NUD_CourseScore2.TabIndex = 5;
//
// L_CourseScoreMax
//
L_CourseScoreMax.Anchor = System.Windows.Forms.AnchorStyles.Right;
L_CourseScoreMax.AutoSize = true;
L_CourseScoreMax.Location = new System.Drawing.Point(151, 30);
L_CourseScoreMax.Margin = new System.Windows.Forms.Padding(0);
L_CourseScoreMax.Name = "L_CourseScoreMax";
L_CourseScoreMax.Size = new System.Drawing.Size(69, 17);
L_CourseScoreMax.TabIndex = 6;
L_CourseScoreMax.Text = "ScoreMax:";
//
// NUD_CourseScoreMax
//
NUD_CourseScoreMax.Location = new System.Drawing.Point(220, 26);
NUD_CourseScoreMax.Margin = new System.Windows.Forms.Padding(0, 0, 0, 1);
NUD_CourseScoreMax.Maximum = new decimal(new int[] { 65535, 0, 0, 0 });
NUD_CourseScoreMax.Name = "NUD_CourseScoreMax";
NUD_CourseScoreMax.Size = new System.Drawing.Size(100, 25);
NUD_CourseScoreMax.TabIndex = 7;
//
// L_CourseParticipant0
//
L_CourseParticipant0.Anchor = System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left;
L_CourseParticipant0.AutoSize = true;
TLP_Courses.SetColumnSpan(L_CourseParticipant0, 2);
L_CourseParticipant0.Location = new System.Drawing.Point(11, 98);
L_CourseParticipant0.Name = "L_CourseParticipant0";
L_CourseParticipant0.Size = new System.Drawing.Size(83, 17);
L_CourseParticipant0.TabIndex = 3;
L_CourseParticipant0.Text = "Participant 1:";
//
// UC_CourseParticipant0
//
UC_CourseParticipant0.AutoSize = true;
TLP_Courses.SetColumnSpan(UC_CourseParticipant0, 2);
UC_CourseParticipant0.Dock = System.Windows.Forms.DockStyle.Fill;
UC_CourseParticipant0.Location = new System.Drawing.Point(8, 115);
UC_CourseParticipant0.Margin = new System.Windows.Forms.Padding(0, 0, 0, 6);
UC_CourseParticipant0.Name = "UC_CourseParticipant0";
UC_CourseParticipant0.Size = new System.Drawing.Size(582, 65);
UC_CourseParticipant0.TabIndex = 4;
//
// L_CourseParticipant1
//
L_CourseParticipant1.Anchor = System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left;
L_CourseParticipant1.AutoSize = true;
TLP_Courses.SetColumnSpan(L_CourseParticipant1, 2);
L_CourseParticipant1.Location = new System.Drawing.Point(11, 186);
L_CourseParticipant1.Name = "L_CourseParticipant1";
L_CourseParticipant1.Size = new System.Drawing.Size(83, 17);
L_CourseParticipant1.TabIndex = 5;
L_CourseParticipant1.Text = "Participant 2:";
//
// UC_CourseParticipant1
//
UC_CourseParticipant1.AutoSize = true;
TLP_Courses.SetColumnSpan(UC_CourseParticipant1, 2);
UC_CourseParticipant1.Dock = System.Windows.Forms.DockStyle.Fill;
UC_CourseParticipant1.Location = new System.Drawing.Point(8, 203);
UC_CourseParticipant1.Margin = new System.Windows.Forms.Padding(0, 0, 0, 6);
UC_CourseParticipant1.Name = "UC_CourseParticipant1";
UC_CourseParticipant1.Size = new System.Drawing.Size(582, 65);
UC_CourseParticipant1.TabIndex = 6;
//
// L_CourseParticipant2
//
L_CourseParticipant2.Anchor = System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left;
L_CourseParticipant2.AutoSize = true;
TLP_Courses.SetColumnSpan(L_CourseParticipant2, 2);
L_CourseParticipant2.Location = new System.Drawing.Point(11, 274);
L_CourseParticipant2.Name = "L_CourseParticipant2";
L_CourseParticipant2.Size = new System.Drawing.Size(83, 17);
L_CourseParticipant2.TabIndex = 7;
L_CourseParticipant2.Text = "Participant 3:";
//
// UC_CourseParticipant2
//
UC_CourseParticipant2.AutoSize = true;
TLP_Courses.SetColumnSpan(UC_CourseParticipant2, 2);
UC_CourseParticipant2.Dock = System.Windows.Forms.DockStyle.Fill;
UC_CourseParticipant2.Location = new System.Drawing.Point(8, 291);
UC_CourseParticipant2.Margin = new System.Windows.Forms.Padding(0);
UC_CourseParticipant2.Name = "UC_CourseParticipant2";
UC_CourseParticipant2.Size = new System.Drawing.Size(582, 590);
UC_CourseParticipant2.TabIndex = 8;
//
// Tab_SelfEvent
//
Tab_SelfEvent.Controls.Add(TLP_SelfEvent);
Tab_SelfEvent.Location = new System.Drawing.Point(4, 26);
Tab_SelfEvent.Name = "Tab_SelfEvent";
Tab_SelfEvent.Padding = new System.Windows.Forms.Padding(3);
Tab_SelfEvent.Size = new System.Drawing.Size(604, 895);
Tab_SelfEvent.TabIndex = 5;
Tab_SelfEvent.Text = "Self Event";
Tab_SelfEvent.UseVisualStyleBackColor = true;
//
// TLP_SelfEvent
//
TLP_SelfEvent.AutoScroll = true;
TLP_SelfEvent.ColumnCount = 2;
TLP_SelfEvent.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_SelfEvent.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
TLP_SelfEvent.Controls.Add(L_SelfEventIndex, 0, 0);
TLP_SelfEvent.Controls.Add(CB_SelfEventIndex, 1, 0);
TLP_SelfEvent.Controls.Add(UC_SelfEventData, 0, 1);
TLP_SelfEvent.Dock = System.Windows.Forms.DockStyle.Fill;
TLP_SelfEvent.Location = new System.Drawing.Point(3, 3);
TLP_SelfEvent.Name = "TLP_SelfEvent";
TLP_SelfEvent.Padding = new System.Windows.Forms.Padding(8);
TLP_SelfEvent.RowCount = 2;
TLP_SelfEvent.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_SelfEvent.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_SelfEvent.Size = new System.Drawing.Size(598, 889);
TLP_SelfEvent.TabIndex = 0;
//
// L_SelfEventIndex
//
L_SelfEventIndex.Anchor = System.Windows.Forms.AnchorStyles.Right;
L_SelfEventIndex.AutoSize = true;
L_SelfEventIndex.Location = new System.Drawing.Point(8, 12);
L_SelfEventIndex.Margin = new System.Windows.Forms.Padding(0);
L_SelfEventIndex.Name = "L_SelfEventIndex";
L_SelfEventIndex.Size = new System.Drawing.Size(42, 17);
L_SelfEventIndex.TabIndex = 0;
L_SelfEventIndex.Text = "Index:";
//
// CB_SelfEventIndex
//
CB_SelfEventIndex.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
CB_SelfEventIndex.FormattingEnabled = true;
CB_SelfEventIndex.Location = new System.Drawing.Point(53, 8);
CB_SelfEventIndex.Margin = new System.Windows.Forms.Padding(3, 0, 3, 0);
CB_SelfEventIndex.Name = "CB_SelfEventIndex";
CB_SelfEventIndex.Size = new System.Drawing.Size(121, 25);
CB_SelfEventIndex.TabIndex = 1;
CB_SelfEventIndex.SelectedIndexChanged += CB_SelfEventIndex_SelectedIndexChanged;
//
// UC_SelfEventData
//
UC_SelfEventData.AutoSize = true;
UC_SelfEventData.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
TLP_SelfEvent.SetColumnSpan(UC_SelfEventData, 2);
UC_SelfEventData.Dock = System.Windows.Forms.DockStyle.Fill;
UC_SelfEventData.Location = new System.Drawing.Point(8, 41);
UC_SelfEventData.Margin = new System.Windows.Forms.Padding(0, 8, 0, 0);
UC_SelfEventData.Name = "UC_SelfEventData";
UC_SelfEventData.Size = new System.Drawing.Size(582, 840);
UC_SelfEventData.TabIndex = 2;
//
// Tab_Connection
//
Tab_Connection.Controls.Add(TLP_Connection);
Tab_Connection.Location = new System.Drawing.Point(4, 26);
Tab_Connection.Name = "Tab_Connection";
Tab_Connection.Padding = new System.Windows.Forms.Padding(3);
Tab_Connection.Size = new System.Drawing.Size(604, 895);
Tab_Connection.TabIndex = 6;
Tab_Connection.Text = "Connection";
Tab_Connection.UseVisualStyleBackColor = true;
//
// TLP_Connection
//
TLP_Connection.AutoScroll = true;
TLP_Connection.ColumnCount = 2;
TLP_Connection.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
TLP_Connection.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
TLP_Connection.Controls.Add(L_ConnectionIndex, 0, 0);
TLP_Connection.Controls.Add(CB_ConnectionIndex, 1, 0);
TLP_Connection.Controls.Add(UC_Connection, 0, 1);
TLP_Connection.Dock = System.Windows.Forms.DockStyle.Fill;
TLP_Connection.Location = new System.Drawing.Point(3, 3);
TLP_Connection.Name = "TLP_Connection";
TLP_Connection.Padding = new System.Windows.Forms.Padding(8);
TLP_Connection.RowCount = 2;
TLP_Connection.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Connection.RowStyles.Add(new System.Windows.Forms.RowStyle());
TLP_Connection.Size = new System.Drawing.Size(598, 889);
TLP_Connection.TabIndex = 0;
//
// L_ConnectionIndex
//
L_ConnectionIndex.Anchor = System.Windows.Forms.AnchorStyles.Right;
L_ConnectionIndex.AutoSize = true;
L_ConnectionIndex.Location = new System.Drawing.Point(8, 12);
L_ConnectionIndex.Margin = new System.Windows.Forms.Padding(0);
L_ConnectionIndex.Name = "L_ConnectionIndex";
L_ConnectionIndex.Size = new System.Drawing.Size(42, 17);
L_ConnectionIndex.TabIndex = 0;
L_ConnectionIndex.Text = "Index:";
//
// CB_ConnectionIndex
//
CB_ConnectionIndex.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
CB_ConnectionIndex.FormattingEnabled = true;
CB_ConnectionIndex.Location = new System.Drawing.Point(53, 8);
CB_ConnectionIndex.Margin = new System.Windows.Forms.Padding(3, 0, 3, 0);
CB_ConnectionIndex.Name = "CB_ConnectionIndex";
CB_ConnectionIndex.Size = new System.Drawing.Size(121, 25);
CB_ConnectionIndex.TabIndex = 1;
CB_ConnectionIndex.SelectedIndexChanged += CB_ConnectionIndex_SelectedIndexChanged;
//
// UC_Connection
//
UC_Connection.AutoSize = true;
TLP_Connection.SetColumnSpan(UC_Connection, 2);
UC_Connection.Dock = System.Windows.Forms.DockStyle.Fill;
UC_Connection.Location = new System.Drawing.Point(8, 41);
UC_Connection.Margin = new System.Windows.Forms.Padding(0, 8, 0, 0);
UC_Connection.Name = "UC_Connection";
UC_Connection.Size = new System.Drawing.Size(582, 840);
UC_Connection.TabIndex = 2;
//
// FLP_Buttons
//
FLP_Buttons.AutoSize = true;
FLP_Buttons.Controls.Add(B_Save);
FLP_Buttons.Controls.Add(B_Cancel);
FLP_Buttons.Dock = System.Windows.Forms.DockStyle.Bottom;
FLP_Buttons.FlowDirection = System.Windows.Forms.FlowDirection.RightToLeft;
FLP_Buttons.Location = new System.Drawing.Point(0, 924);
FLP_Buttons.Name = "FLP_Buttons";
FLP_Buttons.Padding = new System.Windows.Forms.Padding(8);
FLP_Buttons.Size = new System.Drawing.Size(612, 49);
FLP_Buttons.TabIndex = 1;
//
// B_Cancel
//
B_Cancel.AutoSize = true;
B_Cancel.Location = new System.Drawing.Point(427, 11);
B_Cancel.Name = "B_Cancel";
B_Cancel.Size = new System.Drawing.Size(80, 27);
B_Cancel.TabIndex = 0;
B_Cancel.Text = "Cancel";
B_Cancel.UseVisualStyleBackColor = true;
B_Cancel.Click += B_Cancel_Click;
//
// B_Save
//
B_Save.AutoSize = true;
B_Save.Location = new System.Drawing.Point(513, 11);
B_Save.Name = "B_Save";
B_Save.Size = new System.Drawing.Size(80, 27);
B_Save.TabIndex = 1;
B_Save.Text = "Save";
B_Save.UseVisualStyleBackColor = true;
B_Save.Click += B_Save_Click;
//
// TLP_Medals
//
TLP_Medals.ColumnCount = 1;
TLP_Medals.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
TLP_Medals.Controls.Add(DGV_Medals, 0, 0);
TLP_Medals.Controls.Add(FLP_Medals, 0, 1);
TLP_Medals.Dock = System.Windows.Forms.DockStyle.Fill;
TLP_Medals.Location = new System.Drawing.Point(3, 3);
TLP_Medals.Name = "TLP_Medals";
TLP_Medals.RowCount = 2;
TLP_Medals.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
TLP_Medals.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 48F));
TLP_Medals.Size = new System.Drawing.Size(598, 889);
TLP_Medals.TabIndex = 2;
//
// SAV_Pokeathlon4
//
AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit;
ClientSize = new System.Drawing.Size(612, 973);
Controls.Add(TC_Editor);
Controls.Add(FLP_Buttons);
Icon = Properties.Resources.Icon;
MaximizeBox = false;
MinimizeBox = false;
Name = "SAV_Pokeathlon4";
StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
Text = "Pokéathlon";
TC_Editor.ResumeLayout(false);
Tab_General.ResumeLayout(false);
TLP_General.ResumeLayout(false);
TLP_General.PerformLayout();
((System.ComponentModel.ISupportInitialize)NUD_Points).EndInit();
FLP_DailyShopFlags.ResumeLayout(false);
FLP_DailyShopFlags.PerformLayout();
Tab_Medals.ResumeLayout(false);
FLP_Medals.ResumeLayout(false);
FLP_Medals.PerformLayout();
((System.ComponentModel.ISupportInitialize)DGV_Medals).EndInit();
Tab_Counters.ResumeLayout(false);
Tab_Best.ResumeLayout(false);
Tab_Courses.ResumeLayout(false);
Tab_Courses.PerformLayout();
TLP_Courses.ResumeLayout(false);
TLP_Courses.PerformLayout();
TLP_CourseScore.ResumeLayout(false);
TLP_CourseScore.PerformLayout();
((System.ComponentModel.ISupportInitialize)NUD_CourseScore0).EndInit();
((System.ComponentModel.ISupportInitialize)NUD_CourseScore1).EndInit();
((System.ComponentModel.ISupportInitialize)NUD_CourseScore2).EndInit();
((System.ComponentModel.ISupportInitialize)NUD_CourseScoreMax).EndInit();
Tab_SelfEvent.ResumeLayout(false);
TLP_SelfEvent.ResumeLayout(false);
TLP_SelfEvent.PerformLayout();
Tab_Connection.ResumeLayout(false);
TLP_Connection.ResumeLayout(false);
TLP_Connection.PerformLayout();
FLP_Buttons.ResumeLayout(false);
FLP_Buttons.PerformLayout();
TLP_Medals.ResumeLayout(false);
TLP_Medals.PerformLayout();
ResumeLayout(false);
PerformLayout();
}
#endregion
private System.Windows.Forms.TabControl TC_Editor;
private System.Windows.Forms.TabPage Tab_General;
private System.Windows.Forms.TabPage Tab_Medals;
private System.Windows.Forms.TabPage Tab_Counters;
private System.Windows.Forms.TabPage Tab_Best;
private System.Windows.Forms.TabPage Tab_Courses;
private System.Windows.Forms.TabPage Tab_SelfEvent;
private System.Windows.Forms.TabPage Tab_Connection;
private System.Windows.Forms.FlowLayoutPanel FLP_Buttons;
private System.Windows.Forms.Button B_Cancel;
private System.Windows.Forms.Button B_Save;
private System.Windows.Forms.TableLayoutPanel TLP_General;
private System.Windows.Forms.Label L_Points;
private System.Windows.Forms.NumericUpDown NUD_Points;
private System.Windows.Forms.Label L_DailyShopFlags;
private System.Windows.Forms.FlowLayoutPanel FLP_DailyShopFlags;
private System.Windows.Forms.CheckBox CHK_DailyShop0;
private System.Windows.Forms.CheckBox CHK_DailyShop1;
private System.Windows.Forms.CheckBox CHK_DailyShop2;
private System.Windows.Forms.CheckBox CHK_DailyShop3;
private System.Windows.Forms.CheckBox CHK_DailyShop4;
private System.Windows.Forms.CheckBox CHK_DailyShop5;
private System.Windows.Forms.CheckBox CHK_DailyShop6;
private System.Windows.Forms.CheckBox CHK_DailyShop7;
private System.Windows.Forms.CheckBox CHK_DailyShop8;
private System.Windows.Forms.CheckBox CHK_DailyShop9;
private System.Windows.Forms.CheckBox CHK_DailyShop10;
private System.Windows.Forms.CheckBox CHK_DailyShop11;
private System.Windows.Forms.Label L_DataCards;
private System.Windows.Forms.CheckedListBox CLB_DataCards;
private System.Windows.Forms.FlowLayoutPanel FLP_Medals;
private System.Windows.Forms.Button B_MedalsGiveAll;
private System.Windows.Forms.Button B_MedalsClearAll;
private DoubleBufferedDataGridView DGV_Medals;
private System.Windows.Forms.TableLayoutPanel TLP_Counters;
private System.Windows.Forms.TableLayoutPanel TLP_Best;
private System.Windows.Forms.TableLayoutPanel TLP_Courses;
private System.Windows.Forms.Label L_CourseIndex;
private System.Windows.Forms.ComboBox CB_CourseIndex;
private System.Windows.Forms.TableLayoutPanel TLP_CourseScore;
private System.Windows.Forms.Label L_CourseScore0;
private System.Windows.Forms.NumericUpDown NUD_CourseScore0;
private System.Windows.Forms.Label L_CourseScore1;
private System.Windows.Forms.NumericUpDown NUD_CourseScore1;
private System.Windows.Forms.Label L_CourseScore2;
private System.Windows.Forms.NumericUpDown NUD_CourseScore2;
private System.Windows.Forms.Label L_CourseScoreMax;
private System.Windows.Forms.NumericUpDown NUD_CourseScoreMax;
private System.Windows.Forms.Label L_CourseParticipant0;
private PokeathlonParticipant4Editor UC_CourseParticipant0;
private System.Windows.Forms.Label L_CourseParticipant1;
private PokeathlonParticipant4Editor UC_CourseParticipant1;
private System.Windows.Forms.Label L_CourseParticipant2;
private PokeathlonParticipant4Editor UC_CourseParticipant2;
private System.Windows.Forms.TableLayoutPanel TLP_SelfEvent;
private System.Windows.Forms.Label L_SelfEventIndex;
private System.Windows.Forms.ComboBox CB_SelfEventIndex;
private PokeathlonEventData4Editor UC_SelfEventData;
private System.Windows.Forms.TableLayoutPanel TLP_Connection;
private System.Windows.Forms.Label L_ConnectionIndex;
private System.Windows.Forms.ComboBox CB_ConnectionIndex;
private PokeathlonConnection4Editor UC_Connection;
private System.Windows.Forms.TableLayoutPanel TLP_Medals;
}
}

View File

@@ -0,0 +1,462 @@
using PKHeX.Core;
using PKHeX.Drawing.PokeSprite;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Windows.Forms;
namespace PKHeX.WinForms;
public sealed partial class SAV_Pokeathlon4 : Form
{
private const int MaxSpeciesGen4 = 493;
private readonly SAV4HGSS Origin;
private readonly SAV4HGSS SAV;
private readonly Pokeathlon4 Pokeathlon;
private readonly CheckBox[] DailyShopEditors;
private readonly NumericUpDown[] CourseScoreEditors;
private readonly PokeathlonParticipant4Editor[] CourseParticipantEditors;
private readonly List<CounterBinding> CounterEditors = [];
private readonly List<(PokeathlonEvent4 Event, NumericUpDown Editor)> BestScoreEditors = [];
private readonly Button B_BestSpacer = new();
private bool IsLoading;
private int CurrentCourseIndex = -1;
private int CurrentSelfEventIndex = -1;
private int CurrentConnectionIndex = -1;
private static string Localize<T>(T value) where T : Enum => WinFormsTranslator.TranslateEnum(value, Main.CurrentLanguage);
private static string GetCourseDisplayName(PokeathlonStat4 stat) => $"{(int)stat + 1} - {Localize(stat)}";
private static string GetEventDisplayName(PokeathlonEvent4 value) => $"{(int)value + 1} - {Localize(value)}";
public SAV_Pokeathlon4(SAV4HGSS sav)
{
InitializeComponent();
#if DEBUG // Translation Rip
// ReSharper disable once NullCoalescingConditionIsAlwaysNotNullAccordingToAPIContract
// ReSharper disable once ArrangeObjectCreationWhenTypeNotEvident
sav ??= new();
#endif
Origin = sav;
SAV = (SAV4HGSS)sav.Clone();
Pokeathlon = SAV.Pokeathlon;
DailyShopEditors =
[
CHK_DailyShop0, CHK_DailyShop1, CHK_DailyShop2, CHK_DailyShop3, CHK_DailyShop4, CHK_DailyShop5,
CHK_DailyShop6, CHK_DailyShop7, CHK_DailyShop8, CHK_DailyShop9, CHK_DailyShop10, CHK_DailyShop11,
];
CourseScoreEditors = [NUD_CourseScore0, NUD_CourseScore1, NUD_CourseScore2, NUD_CourseScoreMax];
CourseParticipantEditors = [UC_CourseParticipant0, UC_CourseParticipant1, UC_CourseParticipant2];
InitializeGeneral();
InitializeMedals();
InitializeCounters();
InitializeBestScores();
InitializeIndexes();
WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
LoadData();
}
private void B_Save_Click(object sender, EventArgs e)
{
SaveCurrentViews();
SaveGeneral();
SaveMedals();
SaveCounters();
SaveBestScores();
Origin.CopyChangesFrom(SAV);
Close();
}
private void B_Cancel_Click(object sender, EventArgs e) => Close();
private void CB_CourseIndex_SelectedIndexChanged(object sender, EventArgs e)
{
if (IsLoading)
return;
var index = WinFormsUtil.GetIndex(CB_CourseIndex);
if (CurrentCourseIndex >= 0)
SaveCourse(CurrentCourseIndex);
LoadCourse(index);
}
private void CB_SelfEventIndex_SelectedIndexChanged(object sender, EventArgs e)
{
if (IsLoading)
return;
var index = WinFormsUtil.GetIndex(CB_SelfEventIndex);
if (CurrentSelfEventIndex >= 0)
SaveSelfEvent(CurrentSelfEventIndex);
LoadSelfEvent(index);
}
private void CB_ConnectionIndex_SelectedIndexChanged(object sender, EventArgs e)
{
if (IsLoading)
return;
var index = WinFormsUtil.GetIndex(CB_ConnectionIndex);
if (CurrentConnectionIndex >= 0)
SaveConnection(index: CurrentConnectionIndex);
LoadConnection(index);
}
private void InitializeGeneral()
{
var items = GameInfo.Strings.GetItemStrings(EntityContext.Gen4);
CLB_DataCards.Items.Clear();
for (int i = 0; i < (int)DataCard4.Count; i++)
{
var itemID = 505 + i; // Data Card 01...
var name = items[itemID];
CLB_DataCards.Items.Add($"[{i}] {name}");
}
}
private void InitializeMedals()
{
DGV_Medals.Columns.Clear();
DGV_Medals.Rows.Clear();
DGV_Medals.AllowUserToAddRows = false;
DGV_Medals.AllowUserToDeleteRows = false;
DGV_Medals.AllowUserToResizeRows = false;
DGV_Medals.MultiSelect = false;
DGV_Medals.RowHeadersVisible = false;
DGV_Medals.RowTemplate.Height = 40;
DGV_Medals.Columns.Add(new DataGridViewTextBoxColumn
{
Name = "Species",
HeaderText = "Species",
Width = 80,
ReadOnly = true,
DefaultCellStyle = { Alignment = DataGridViewContentAlignment.MiddleCenter },
});
DGV_Medals.Columns.Add(new DataGridViewImageColumn
{
Name = "Sprite",
HeaderText = "Sprite",
Width = 48,
ReadOnly = true,
ImageLayout = DataGridViewImageCellLayout.Zoom,
});
foreach (var name in Enum.GetNames<PokeathlonStat4>().Take((int)PokeathlonStat4.Count))
{
DGV_Medals.Columns.Add(new DataGridViewCheckBoxColumn
{
Name = name,
HeaderText = name,
Width = 80,
SortMode = DataGridViewColumnSortMode.Automatic,
});
}
DGV_Medals.Rows.Add(MaxSpeciesGen4);
for (int species = 1; species <= MaxSpeciesGen4; species++)
{
var row = DGV_Medals.Rows[species - 1];
row.Cells[0].Value = species;
row.Cells[1].Value = SpriteUtil.GetSprite((ushort)species, 0, 0, 0, 0, false, Shiny.Never, EntityContext.Gen4);
row.Tag = (ushort)species;
row.Cells[0].ToolTipText = GameInfo.Strings.specieslist[species];
row.Cells[1].ToolTipText = GameInfo.Strings.specieslist[species];
}
}
private void InitializeCounters()
{
AddCounterRow("TimeSpent", PokeathlonGlobalCounters4.MaxPlay, () => Pokeathlon.GlobalCounters.TimeSpent, value => { var c = Pokeathlon.GlobalCounters; c.TimeSpent = value; });
AddCounterRow("SessionsJoined", PokeathlonGlobalCounters4.MaxStat, () => Pokeathlon.GlobalCounters.SessionsJoined, value => { var c = Pokeathlon.GlobalCounters; c.SessionsJoined = value; });
AddCounterRow("PlacedFirst", PokeathlonGlobalCounters4.MaxStat, () => Pokeathlon.GlobalCounters.PlacedFirst, value => { var c = Pokeathlon.GlobalCounters; c.PlacedFirst = value; });
AddCounterRow("PlacedLast", PokeathlonGlobalCounters4.MaxStat, () => Pokeathlon.GlobalCounters.PlacedLast, value => { var c = Pokeathlon.GlobalCounters; c.PlacedLast = value; });
AddCounterRow("BonusesEarned", PokeathlonGlobalCounters4.MaxStat, () => Pokeathlon.GlobalCounters.BonusesEarned, value => { var c = Pokeathlon.GlobalCounters; c.BonusesEarned = value; });
AddCounterRow("Instructions", PokeathlonGlobalCounters4.MaxStat, () => Pokeathlon.GlobalCounters.Instructions, value => { var c = Pokeathlon.GlobalCounters; c.Instructions = value; });
AddCounterRow("Failed", PokeathlonGlobalCounters4.MaxStat, () => Pokeathlon.GlobalCounters.Failed, value => { var c = Pokeathlon.GlobalCounters; c.Failed = value; });
AddCounterRow("Jumped", PokeathlonGlobalCounters4.MaxStat, () => Pokeathlon.GlobalCounters.Jumped, value => { var c = Pokeathlon.GlobalCounters; c.Jumped = value; });
AddCounterRow("Acquired", PokeathlonGlobalCounters4.MaxStat, () => Pokeathlon.GlobalCounters.Acquired, value => { var c = Pokeathlon.GlobalCounters; c.Acquired = value; });
AddCounterRow("Tackled", PokeathlonGlobalCounters4.MaxStat, () => Pokeathlon.GlobalCounters.Tackled, value => { var c = Pokeathlon.GlobalCounters; c.Tackled = value; });
AddCounterRow("FellDown", PokeathlonGlobalCounters4.MaxStat, () => Pokeathlon.GlobalCounters.FellDown, value => { var c = Pokeathlon.GlobalCounters; c.FellDown = value; });
AddCounterRow("Dashed", PokeathlonGlobalCounters4.MaxStat, () => Pokeathlon.GlobalCounters.Dashed, value => { var c = Pokeathlon.GlobalCounters; c.Dashed = value; });
AddCounterRow("Switched", PokeathlonGlobalCounters4.MaxStat, () => Pokeathlon.GlobalCounters.Switched, value => { var c = Pokeathlon.GlobalCounters; c.Switched = value; });
AddCounterRow("SelfImpeded", PokeathlonGlobalCounters4.MaxStat, () => Pokeathlon.GlobalCounters.SelfImpeded, value => { var c = Pokeathlon.GlobalCounters; c.SelfImpeded = value; });
AddCounterRow("ConnectionJoined", PokeathlonGlobalCounters4.MaxStat, () => Pokeathlon.GlobalCounters.ConnectionJoined, value => { var c = Pokeathlon.GlobalCounters; c.ConnectionJoined = value; });
AddCounterRow("ConnectionFirst", PokeathlonGlobalCounters4.MaxStat, () => Pokeathlon.GlobalCounters.ConnectionFirst, value => { var c = Pokeathlon.GlobalCounters; c.ConnectionFirst = value; });
AddCounterRow("ConnectionLast", PokeathlonGlobalCounters4.MaxStat, () => Pokeathlon.GlobalCounters.ConnectionLast, value => { var c = Pokeathlon.GlobalCounters; c.ConnectionLast = value; });
for (int i = 0; i < (int)PokeathlonEvent4.Count; i++)
{
var eventIndex = (PokeathlonEvent4)i;
AddCounterRow($"{Localize(eventIndex)}First", PokeathlonGlobalCounters4.MaxStat,
() => { var c = Pokeathlon.GlobalCounters; return c[eventIndex]; },
value => { var c = Pokeathlon.GlobalCounters; c[eventIndex] = value; });
}
AddCounterRow("TotalEventFirst", PokeathlonGlobalCounters4.MaxStat * (decimal)PokeathlonEvent4.Count,
() => { var c = Pokeathlon.GlobalCounters; return c.TotalEventFirst; }, null);
AddCounterRow("TotalEventLast", PokeathlonGlobalCounters4.MaxStat,
() => Pokeathlon.GlobalCounters.TotalEventLast,
value => { var c = Pokeathlon.GlobalCounters; c.TotalEventLast = value; });
AddCounterRow("Fame", PokeathlonGlobalCounters4.MaxFame,
() => Pokeathlon.GlobalCounters.Fame,
value => { var c = Pokeathlon.GlobalCounters; c.Fame = value; });
}
private void InitializeBestScores()
{
for (int i = 0; i < (int)PokeathlonEvent4.Count; i++)
{
var label = new Label
{
Anchor = AnchorStyles.Right,
AutoSize = true,
Text = GetEventDisplayName((PokeathlonEvent4)i) + ':',
};
var editor = CreateNumericEditor(ushort.MaxValue);
TLP_Best.RowStyles.Add(new RowStyle());
TLP_Best.Controls.Add(label, 0, i);
TLP_Best.Controls.Add(editor, 1, i);
BestScoreEditors.Add(((PokeathlonEvent4)i, editor));
}
int spacerRow = BestScoreEditors.Count;
TLP_Best.RowStyles.Add(new RowStyle());
B_BestSpacer.Enabled = false;
B_BestSpacer.TabStop = false;
B_BestSpacer.Margin = Padding.Empty;
B_BestSpacer.Size = new Size(120, 1);
TLP_Best.Controls.Add(B_BestSpacer, 1, spacerRow);
}
private void InitializeIndexes()
{
InitializeCombo(CB_CourseIndex, [.. Enum.GetValues<PokeathlonStat4>().Take((int)PokeathlonStat4.Count).Select(z => new ComboItem(GetCourseDisplayName(z), (int)z))]);
List<ComboItem> events = [.. Enum.GetValues<PokeathlonEvent4>().Take((int)PokeathlonEvent4.Count).Select(z => new ComboItem(GetEventDisplayName(z), (int)z))];
InitializeCombo(CB_SelfEventIndex, events);
InitializeCombo(CB_ConnectionIndex, events);
}
private void LoadData()
{
IsLoading = true;
LoadGeneral();
LoadMedals();
LoadCounters();
LoadBestScores();
CB_CourseIndex.SelectedValue = 0;
CB_SelfEventIndex.SelectedValue = 0;
CB_ConnectionIndex.SelectedValue = 0;
IsLoading = false;
LoadCourse(0);
LoadSelfEvent(0);
LoadConnection(0);
}
private void LoadGeneral()
{
NUD_Points.SetValueClamped(Pokeathlon.Points);
var dailyFlags = Pokeathlon.FlagsDailyShop;
for (int i = 0; i < DailyShopEditors.Length; i++)
DailyShopEditors[i].Checked = ((dailyFlags >> i) & 1) != 0;
var dataCardFlags = Pokeathlon.FlagsDataCard;
for (int i = 0; i < CLB_DataCards.Items.Count; i++)
CLB_DataCards.SetItemChecked(i, ((dataCardFlags >> i) & 1) != 0);
}
private void SaveGeneral()
{
Pokeathlon.Points = (uint)NUD_Points.Value;
ushort dailyFlags = 0;
for (int i = 0; i < DailyShopEditors.Length; i++)
{
if (DailyShopEditors[i].Checked)
dailyFlags |= (ushort)(1 << i);
}
Pokeathlon.FlagsDailyShop = dailyFlags;
uint dataCardFlags = 0;
for (int i = 0; i < CLB_DataCards.Items.Count; i++)
{
if (CLB_DataCards.GetItemChecked(i))
dataCardFlags |= 1u << i;
}
Pokeathlon.FlagsDataCard = dataCardFlags;
}
private void LoadMedals()
{
var medals = Pokeathlon.Medals;
for (int species = 1; species <= MaxSpeciesGen4; species++)
{
var bits = medals.GetMedal((ushort)species);
var row = DGV_Medals.Rows[species - 1];
for (int i = 0; i < (int)PokeathlonStat4.Count; i++)
row.Cells[2 + i].Value = ((bits >> i) & 1) != 0;
}
}
private void SaveMedals()
{
var medals = Pokeathlon.Medals;
for (int species = 1; species <= MaxSpeciesGen4; species++)
{
byte bits = 0;
var row = DGV_Medals.Rows[species - 1];
for (int i = 0; i < (int)PokeathlonStat4.Count; i++)
{
if ((bool?)row.Cells[2 + i].Value == true)
bits |= (byte)(1 << i);
}
medals.SetMedal((ushort)species, bits);
}
}
private void LoadCounters()
{
foreach (var binding in CounterEditors)
binding.Editor.SetValueClamped(binding.Getter());
}
private void SaveCounters()
{
foreach (var binding in CounterEditors)
{
if (binding.Setter is not null)
binding.Setter((uint)binding.Editor.Value);
}
}
private void LoadBestScores()
{
foreach (var binding in BestScoreEditors)
binding.Editor.SetValueClamped(Pokeathlon.GetBestScore(binding.Event));
}
private void SaveBestScores()
{
foreach (var binding in BestScoreEditors)
Pokeathlon.SetBestScore(binding.Event, (ushort)binding.Editor.Value);
}
private void LoadCourse(int index)
{
IsLoading = true;
var course = Pokeathlon.GetCourseRecord((PokeathlonStat4)index);
CourseScoreEditors[0].SetValueClamped(course.Score0);
CourseScoreEditors[1].SetValueClamped(course.Score1);
CourseScoreEditors[2].SetValueClamped(course.Score2);
CourseScoreEditors[3].SetValueClamped(course.ScoreMax);
for (int i = 0; i < CourseParticipantEditors.Length; i++)
CourseParticipantEditors[i].LoadObject(course.GetParticipant(i));
CurrentCourseIndex = index;
IsLoading = false;
}
private void SaveCourse(int index)
{
var course = Pokeathlon.GetCourseRecord((PokeathlonStat4)index);
course.Score0 = (ushort)CourseScoreEditors[0].Value;
course.Score1 = (ushort)CourseScoreEditors[1].Value;
course.Score2 = (ushort)CourseScoreEditors[2].Value;
course.ScoreMax = (ushort)CourseScoreEditors[3].Value;
for (int i = 0; i < CourseParticipantEditors.Length; i++)
CourseParticipantEditors[i].SaveObject(course.GetParticipant(i));
}
private void LoadSelfEvent(int index)
{
IsLoading = true;
UC_SelfEventData.LoadObject(Pokeathlon.GetEventSelf((PokeathlonEvent4)index));
CurrentSelfEventIndex = index;
IsLoading = false;
}
private void SaveSelfEvent(int index)
{
UC_SelfEventData.SaveObject(Pokeathlon.GetEventSelf((PokeathlonEvent4)index));
}
private void LoadConnection(int index)
{
IsLoading = true;
UC_Connection.LoadObject(Pokeathlon.GetEventConnection((PokeathlonEvent4)index));
CurrentConnectionIndex = index;
IsLoading = false;
}
private void SaveConnection(int index)
{
UC_Connection.SaveObject(Pokeathlon.GetEventConnection((PokeathlonEvent4)index));
}
private void SaveCurrentViews()
{
if (CurrentCourseIndex >= 0)
SaveCourse(CurrentCourseIndex);
if (CurrentSelfEventIndex >= 0)
SaveSelfEvent(CurrentSelfEventIndex);
if (CurrentConnectionIndex >= 0)
SaveConnection(CurrentConnectionIndex);
}
private void AddCounterRow(string name, decimal maximum, Func<uint> getter, Action<uint>? setter)
{
int row = CounterEditors.Count;
TLP_Counters.RowStyles.Add(new RowStyle());
var label = new Label
{
Name = $"L_{name}",
Anchor = AnchorStyles.Right,
AutoSize = true,
Text = name,
};
var editor = CreateNumericEditor(maximum, setter is not null);
TLP_Counters.Controls.Add(label, 0, row);
TLP_Counters.Controls.Add(editor, 1, row);
CounterEditors.Add(new CounterBinding(name, editor, getter, setter));
}
private static NumericUpDown CreateNumericEditor(decimal maximum, bool enabled = true) => new()
{
Maximum = maximum,
Size = new Size(120, 25),
Enabled = enabled,
};
private static void InitializeCombo(ComboBox cb, IReadOnlyList<ComboItem> source)
{
cb.InitializeBinding();
cb.DataSource = new BindingSource(source, string.Empty);
}
private void B_MedalsGiveAll_Click(object? sender, EventArgs e)
{
var medals = Pokeathlon.Medals;
medals.SetAllMedals();
LoadMedals();
WinFormsUtil.Asterisk();
}
private void B_MedalsClearAll_Click(object? sender, EventArgs e)
{
var medals = Pokeathlon.Medals;
medals.Clear();
LoadMedals();
WinFormsUtil.Asterisk();
}
private sealed record CounterBinding(string Name, NumericUpDown Editor, Func<uint> Getter, Action<uint>? Setter);
}

View File

@@ -179,6 +179,8 @@ private static void UpdateTranslations()
typeof(PokeSize),
typeof(PokeSizeDetailed),
typeof(PokeathlonStat4),
typeof(PokeathlonEvent4),
typeof(PassPower5),
typeof(Funfest5Mission),
typeof(JoinAvenueCeilingColor5),