void InitializeComboBox() { // モード f_ComboBoxModeSelector_35.Items.Clear(); f_ComboBoxModeSelector_35.Items.Add(Messages.Instance.SystemLabel["Pokemon35_1_2V"]); f_ComboBoxModeSelector_35.Items.Add(Messages.Instance.SystemLabel["Pokemon35_1_3V"]); // ★3~5パネル PokemonFormUtility.SetNatureComboBox(f_ComboBoxNature_351); PokemonFormUtility.SetNatureComboBox(f_ComboBoxNature_352); PokemonFormUtility.SetNatureComboBox(f_ComboBoxNature_353); PokemonFormUtility.SetCharacteristicComboBox(f_ComboBoxCharacteristic_351); PokemonFormUtility.SetCharacteristicComboBox(f_ComboBoxCharacteristic_352); PokemonFormUtility.SetCharacteristicComboBox(f_ComboBoxCharacteristic_353); PokemonFormUtility.SetAbilityComboBox(f_ComboBoxAbility_351, 4); PokemonFormUtility.SetAbilityComboBox(f_ComboBoxAbility_352, 4); PokemonFormUtility.SetAbilityComboBox(f_ComboBoxAbility_353, 4); // ★1~2パネル PokemonFormUtility.SetNatureComboBox(f_ComboBoxNature_1); PokemonFormUtility.SetNatureComboBox(f_ComboBoxNature_2); PokemonFormUtility.SetAbilityComboBox(f_ComboBoxAbility_1, 4); PokemonFormUtility.SetAbilityComboBox(f_ComboBoxAbility_2, 4); }
public void Generate() { UInt64 seed = m_DenSeed; // 消費数0のDen Seed UInt32 ec, otid, pid; int[] ivs = new int[6]; UInt32 fixedIndex; UInt32 ability; UInt32 gender; UInt32 nature; using (StreamWriter sw = new StreamWriter("list.txt")) { sw.Write($"{Messages.Instance.ListLabel["Frame"]},"); if (m_isShowSeed) { sw.Write("Seed,"); } if (m_isShowEc) { sw.Write("EC,"); } for (int i = 0; i < 6; ++i) { sw.Write($"{Messages.Instance.Status[i]},"); } sw.Write($"{Messages.Instance.ListLabel["Ability"]},"); sw.Write($"{Messages.Instance.ListLabel["Nature"]},"); sw.WriteLine($"{Messages.Instance.ListLabel["Shiny"]}"); for (int frame = 0; frame <= m_MaxCount; ++frame) { Xoroshiro xoroshiro = new Xoroshiro(seed); // seedを進める ec = xoroshiro.Next(0xFFFFFFFFu); otid = xoroshiro.Next(0xFFFFFFFFu); pid = xoroshiro.Next(0xFFFFFFFFu); bool isShiny = ((((otid ^ (otid >> 16)) >> 4) & 0xFFF) == (((pid ^ (pid >> 16)) >> 4) & 0xFFF)); bool isSquare = (((otid ^ (otid >> 16)) & 0xFFFF) == ((pid ^ (pid >> 16)) & 0xFFFF)); if (m_isShinyCheck && !isShiny) { seed = seed + 0x82a2b175229d6a5bul; continue; } // V箇所決定 for (int i = 0; i < 6; ++i) { ivs[i] = -1; } int fixedCount = 0; do { fixedIndex = 0; do { fixedIndex = xoroshiro.Next(7); // V箇所 } while (fixedIndex >= 6); if (ivs[fixedIndex] == -1) { ivs[fixedIndex] = 31; ++fixedCount; } } while (fixedCount < m_VCount); // 個体値を埋める for (int i = 0; i < 6; ++i) { if (ivs[i] == -1) { ivs[i] = (int)xoroshiro.Next(0x1F); } } // 特性 if (m_AbilityFlag == 2) { ability = 2; } else if (m_AbilityFlag == 4) { do { ability = xoroshiro.Next(3); } while (ability >= 3); } else { ability = xoroshiro.Next(1); } // 性別値 if (!m_isNoGender) { do { gender = xoroshiro.Next(0xFF); } while (gender >= 253); } // 性格 do { nature = xoroshiro.Next(0x1F); } while (nature >= 25); // 出力 sw.Write($"{frame},"); if (m_isShowSeed) { sw.Write($"{seed:X16},"); } if (m_isShowEc) { sw.Write($"{ec:X8},"); } sw.Write($"{ivs[0]},{ivs[1]},{ivs[2]},{ivs[3]},{ivs[4]},{ivs[5]},"); sw.Write(ability == 2 ? $"{Messages.Instance.ListLabel["HiddenAbility"]}," : $"{ability + 1},"); sw.Write($"{PokemonFormUtility.GetNatureString((int)nature)},"); if (isShiny) { sw.WriteLine(isSquare ? Messages.Instance.ListLabel["SquareShiny"] : Messages.Instance.ListLabel["StarShiny"]); } else if (!m_isShinyCheck) { sw.WriteLine(""); } seed = seed + 0x82a2b175229d6a5bul; } } Process ps = new Process(); ps.StartInfo.FileName = "list.txt"; ps.Start(); }
void ChangeLanguage(bool isFirst, Language language) { int[] nature = new int[5]; int[] characteristic = new int[3]; decimal[] pokemon = new decimal[3]; if (!isFirst) { nature = new int[] { Messages.Instance.Nature[f_ComboBoxNature_1.Text], Messages.Instance.Nature[f_ComboBoxNature_2.Text], Messages.Instance.Nature[f_ComboBoxNature_351.Text], Messages.Instance.Nature[f_ComboBoxNature_352.Text], Messages.Instance.Nature[f_ComboBoxNature_353.Text], }; characteristic = new int[] { Messages.Instance.Characteristic[f_ComboBoxCharacteristic_351.Text], Messages.Instance.Characteristic[f_ComboBoxCharacteristic_352.Text], Messages.Instance.Characteristic[f_ComboBoxCharacteristic_353.Text], }; pokemon = new decimal[] { Messages.Instance.Pokemon.ContainsKey(f_ComboBoxPokemon351.Text) ? Messages.Instance.Pokemon[f_ComboBoxPokemon351.Text] : -1, Messages.Instance.Pokemon.ContainsKey(f_ComboBoxPokemon352.Text) ? Messages.Instance.Pokemon[f_ComboBoxPokemon352.Text] : -1, Messages.Instance.Pokemon.ContainsKey(f_ComboBoxPokemon353.Text) ? Messages.Instance.Pokemon[f_ComboBoxPokemon353.Text] : -1 }; } // 言語のロード if (!Messages.Initialize(language)) { MessageBox.Show("言語ファイルの読み込みに失敗しました。\n----------\n" + Messages.ErrorText, "エラー", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } // コンボボックスは一旦値を退避してセット int modeIndex = 0; int[] abilityIndex = new int[5]; if (!isFirst) { modeIndex = f_ComboBoxModeSelector_35.SelectedIndex; f_ComboBoxModeSelector_35.Items.Clear(); f_ComboBoxNature_1.Items.Clear(); f_ComboBoxNature_2.Items.Clear(); f_ComboBoxNature_351.Items.Clear(); f_ComboBoxNature_352.Items.Clear(); f_ComboBoxNature_353.Items.Clear(); f_ComboBoxCharacteristic_351.Items.Clear(); f_ComboBoxCharacteristic_352.Items.Clear(); f_ComboBoxCharacteristic_353.Items.Clear(); f_ComboBoxPokemon351.Items.Clear(); f_ComboBoxPokemon352.Items.Clear(); f_ComboBoxPokemon353.Items.Clear(); abilityIndex = new int[] { f_ComboBoxAbility_1.SelectedIndex, f_ComboBoxAbility_2.SelectedIndex, f_ComboBoxAbility_351.SelectedIndex, f_ComboBoxAbility_352.SelectedIndex, f_ComboBoxAbility_353.SelectedIndex, }; f_ComboBoxAbility_1.Items.Clear(); f_ComboBoxAbility_2.Items.Clear(); f_ComboBoxAbility_351.Items.Clear(); f_ComboBoxAbility_352.Items.Clear(); f_ComboBoxAbility_353.Items.Clear(); } // 設定変更 m_Preferences.Language = language; // メニューアイテムのチェック switch (language) { case Language.Japanese: f_MenuItemLanguageJp.Checked = true; f_MenuItemLanguageEn.Checked = false; f_MenuItemLanguageZh.Checked = false; f_MenuItemLanguageZh_TW.Checked = false; break; case Language.English: f_MenuItemLanguageJp.Checked = false; f_MenuItemLanguageEn.Checked = true; f_MenuItemLanguageZh.Checked = false; f_MenuItemLanguageZh_TW.Checked = false; break; case Language.ChineseZh: f_MenuItemLanguageJp.Checked = false; f_MenuItemLanguageEn.Checked = false; f_MenuItemLanguageZh.Checked = true; f_MenuItemLanguageZh_TW.Checked = false; break; case Language.ChineseZh_TW: f_MenuItemLanguageJp.Checked = false; f_MenuItemLanguageEn.Checked = false; f_MenuItemLanguageZh.Checked = false; f_MenuItemLanguageZh_TW.Checked = true; break; } // コントロールにメッセージを適用 foreach (var pair in m_MultiLanguageControls) { string str = Messages.Instance.SystemLabel[pair.Key]; foreach (var control in pair.Value) { control.Text = str; } } // パラメータラベル f_LabelStatus0_1.Text = Messages.Instance.Status[0]; f_LabelStatus1_1.Text = Messages.Instance.Status[1]; f_LabelStatus2_1.Text = Messages.Instance.Status[2]; f_LabelStatus3_1.Text = Messages.Instance.Status[3]; f_LabelStatus4_1.Text = Messages.Instance.Status[4]; f_LabelStatus5_1.Text = Messages.Instance.Status[5]; f_LabelStatus0_2.Text = Messages.Instance.Status[0]; f_LabelStatus1_2.Text = Messages.Instance.Status[1]; f_LabelStatus2_2.Text = Messages.Instance.Status[2]; f_LabelStatus3_2.Text = Messages.Instance.Status[3]; f_LabelStatus4_2.Text = Messages.Instance.Status[4]; f_LabelStatus5_2.Text = Messages.Instance.Status[5]; f_LabelStatus0_351.Text = Messages.Instance.Status[0]; f_LabelStatus1_351.Text = Messages.Instance.Status[1]; f_LabelStatus2_351.Text = Messages.Instance.Status[2]; f_LabelStatus3_351.Text = Messages.Instance.Status[3]; f_LabelStatus4_351.Text = Messages.Instance.Status[4]; f_LabelStatus5_351.Text = Messages.Instance.Status[5]; f_LabelStatus0_352.Text = Messages.Instance.Status[0]; f_LabelStatus1_352.Text = Messages.Instance.Status[1]; f_LabelStatus2_352.Text = Messages.Instance.Status[2]; f_LabelStatus3_352.Text = Messages.Instance.Status[3]; f_LabelStatus4_352.Text = Messages.Instance.Status[4]; f_LabelStatus5_352.Text = Messages.Instance.Status[5]; f_LabelStatus0_353.Text = Messages.Instance.Status[0]; f_LabelStatus1_353.Text = Messages.Instance.Status[1]; f_LabelStatus2_353.Text = Messages.Instance.Status[2]; f_LabelStatus3_353.Text = Messages.Instance.Status[3]; f_LabelStatus4_353.Text = Messages.Instance.Status[4]; f_LabelStatus5_353.Text = Messages.Instance.Status[5]; f_LabelLevel351.Text = Messages.Instance.Status[6]; f_LabelLevel352.Text = Messages.Instance.Status[6]; f_LabelLevel353.Text = Messages.Instance.Status[6]; f_LabelPokemon351.Text = Messages.Instance.SystemLabel["Pokemon"]; f_LabelPokemon352.Text = Messages.Instance.SystemLabel["Pokemon"]; f_LabelPokemon353.Text = Messages.Instance.SystemLabel["Pokemon"]; f_ButtonIVCalculate351.Text = Messages.Instance.SystemLabel["CalculateIVs"]; f_ButtonIVCalculate352.Text = Messages.Instance.SystemLabel["CalculateIVs"]; f_ButtonIVCalculate353.Text = Messages.Instance.SystemLabel["CalculateIVs"]; // コンボボックス再初期化 InitializeComboBox(); // 退避していた選択をセット f_ComboBoxModeSelector_35.SelectedIndex = modeIndex; if (!isFirst) { PokemonFormUtility.SelectNatureComboBox(f_ComboBoxNature_1, nature[0]); PokemonFormUtility.SelectNatureComboBox(f_ComboBoxNature_2, nature[1]); PokemonFormUtility.SelectNatureComboBox(f_ComboBoxNature_351, nature[2]); PokemonFormUtility.SelectNatureComboBox(f_ComboBoxNature_352, nature[3]); PokemonFormUtility.SelectNatureComboBox(f_ComboBoxNature_353, nature[4]); PokemonFormUtility.SelectCharacteristicComboBox(f_ComboBoxCharacteristic_351, characteristic[0]); PokemonFormUtility.SelectCharacteristicComboBox(f_ComboBoxCharacteristic_352, characteristic[1]); PokemonFormUtility.SelectCharacteristicComboBox(f_ComboBoxCharacteristic_353, characteristic[2]); f_ComboBoxAbility_1.SelectedIndex = abilityIndex[0]; f_ComboBoxAbility_2.SelectedIndex = abilityIndex[1]; f_ComboBoxAbility_351.SelectedIndex = abilityIndex[2]; f_ComboBoxAbility_352.SelectedIndex = abilityIndex[3]; f_ComboBoxAbility_353.SelectedIndex = abilityIndex[4]; populateComboBoxes(); if (pokemon[0] != -1) { var idxa = (from i in Messages.Instance.Pokemon.Keys where Messages.Instance.Pokemon[i] == pokemon[0] select i).First(); f_ComboBoxPokemon351.SelectedIndex = f_ComboBoxPokemon351.Items.IndexOf(idxa); } if (pokemon[1] != -1) { var idxb = (from i in Messages.Instance.Pokemon.Keys where Messages.Instance.Pokemon[i] == pokemon[1] select i).First(); f_ComboBoxPokemon352.SelectedIndex = f_ComboBoxPokemon351.Items.IndexOf(idxb); } if (pokemon[2] != -1) { var idxc = (from i in Messages.Instance.Pokemon.Keys where Messages.Instance.Pokemon[i] == pokemon[2] select i).First(); f_ComboBoxPokemon353.SelectedIndex = f_ComboBoxPokemon351.Items.IndexOf(idxc); } } }
void ChangeLanguage(bool isFirst, Language language) { int[] nature = new int[5]; int[] characteristic = new int[5]; if (!isFirst) { nature = new int[] { Messages.Instance.Nature[f_ComboBoxNature_1.Text], Messages.Instance.Nature[f_ComboBoxNature_2.Text], Messages.Instance.Nature[f_ComboBoxNature_351.Text], Messages.Instance.Nature[f_ComboBoxNature_352.Text], Messages.Instance.Nature[f_ComboBoxNature_353.Text], }; characteristic = new int[] { Messages.Instance.Characteristic[f_ComboBoxCharacteristic_351.Text], Messages.Instance.Characteristic[f_ComboBoxCharacteristic_352.Text], Messages.Instance.Characteristic[f_ComboBoxCharacteristic_353.Text], }; } // 言語のロード if (!Messages.Initialize(language)) { MessageBox.Show("言語ファイルの読み込みに失敗しました。\n----------\n" + Messages.ErrorText, "エラー", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } // コンボボックスは一旦値を退避してセット int modeIndex = 0; int[] abilityIndex = new int[5]; if (!isFirst) { modeIndex = f_ComboBoxModeSelector_35.SelectedIndex; f_ComboBoxModeSelector_35.Items.Clear(); f_ComboBoxNature_1.Items.Clear(); f_ComboBoxNature_2.Items.Clear(); f_ComboBoxNature_351.Items.Clear(); f_ComboBoxNature_352.Items.Clear(); f_ComboBoxNature_353.Items.Clear(); f_ComboBoxCharacteristic_351.Items.Clear(); f_ComboBoxCharacteristic_352.Items.Clear(); f_ComboBoxCharacteristic_353.Items.Clear(); abilityIndex = new int[] { f_ComboBoxAbility_1.SelectedIndex, f_ComboBoxAbility_2.SelectedIndex, f_ComboBoxAbility_351.SelectedIndex, f_ComboBoxAbility_352.SelectedIndex, f_ComboBoxAbility_353.SelectedIndex, }; f_ComboBoxAbility_1.Items.Clear(); f_ComboBoxAbility_2.Items.Clear(); f_ComboBoxAbility_351.Items.Clear(); f_ComboBoxAbility_352.Items.Clear(); f_ComboBoxAbility_353.Items.Clear(); } // 設定変更 m_Preferences.Language = language; // メニューアイテムのチェック switch (language) { case Language.Japanese: f_MenuItemLanguageJp.Checked = true; f_MenuItemLanguageEn.Checked = false; break; case Language.English: f_MenuItemLanguageJp.Checked = false; f_MenuItemLanguageEn.Checked = true; break; } // コントロールにメッセージを適用 foreach (var pair in m_MultiLanguageControls) { string str = Messages.Instance.SystemLabel[pair.Key]; foreach (var control in pair.Value) { control.Text = str; } } // パラメータラベル f_LabelStatus0_1.Text = Messages.Instance.Status[0]; f_LabelStatus1_1.Text = Messages.Instance.Status[1]; f_LabelStatus2_1.Text = Messages.Instance.Status[2]; f_LabelStatus3_1.Text = Messages.Instance.Status[3]; f_LabelStatus4_1.Text = Messages.Instance.Status[4]; f_LabelStatus5_1.Text = Messages.Instance.Status[5]; f_LabelStatus0_2.Text = Messages.Instance.Status[0]; f_LabelStatus1_2.Text = Messages.Instance.Status[1]; f_LabelStatus2_2.Text = Messages.Instance.Status[2]; f_LabelStatus3_2.Text = Messages.Instance.Status[3]; f_LabelStatus4_2.Text = Messages.Instance.Status[4]; f_LabelStatus5_2.Text = Messages.Instance.Status[5]; f_LabelStatus0_351.Text = Messages.Instance.Status[0]; f_LabelStatus1_351.Text = Messages.Instance.Status[1]; f_LabelStatus2_351.Text = Messages.Instance.Status[2]; f_LabelStatus3_351.Text = Messages.Instance.Status[3]; f_LabelStatus4_351.Text = Messages.Instance.Status[4]; f_LabelStatus5_351.Text = Messages.Instance.Status[5]; f_LabelStatus0_352.Text = Messages.Instance.Status[0]; f_LabelStatus1_352.Text = Messages.Instance.Status[1]; f_LabelStatus2_352.Text = Messages.Instance.Status[2]; f_LabelStatus3_352.Text = Messages.Instance.Status[3]; f_LabelStatus4_352.Text = Messages.Instance.Status[4]; f_LabelStatus5_352.Text = Messages.Instance.Status[5]; f_LabelStatus0_353.Text = Messages.Instance.Status[0]; f_LabelStatus1_353.Text = Messages.Instance.Status[1]; f_LabelStatus2_353.Text = Messages.Instance.Status[2]; f_LabelStatus3_353.Text = Messages.Instance.Status[3]; f_LabelStatus4_353.Text = Messages.Instance.Status[4]; f_LabelStatus5_353.Text = Messages.Instance.Status[5]; // コンボボックス再初期化 InitializeComboBox(); // 退避していた選択をセット f_ComboBoxModeSelector_35.SelectedIndex = modeIndex; if (!isFirst) { PokemonFormUtility.SelectNatureComboBox(f_ComboBoxNature_1, nature[0]); PokemonFormUtility.SelectNatureComboBox(f_ComboBoxNature_2, nature[1]); PokemonFormUtility.SelectNatureComboBox(f_ComboBoxNature_351, nature[2]); PokemonFormUtility.SelectNatureComboBox(f_ComboBoxNature_352, nature[3]); PokemonFormUtility.SelectNatureComboBox(f_ComboBoxNature_353, nature[4]); PokemonFormUtility.SelectCharacteristicComboBox(f_ComboBoxCharacteristic_351, characteristic[0]); PokemonFormUtility.SelectCharacteristicComboBox(f_ComboBoxCharacteristic_352, characteristic[1]); PokemonFormUtility.SelectCharacteristicComboBox(f_ComboBoxCharacteristic_353, characteristic[2]); f_ComboBoxAbility_1.SelectedIndex = abilityIndex[0]; f_ComboBoxAbility_2.SelectedIndex = abilityIndex[1]; f_ComboBoxAbility_351.SelectedIndex = abilityIndex[2]; f_ComboBoxAbility_352.SelectedIndex = abilityIndex[3]; f_ComboBoxAbility_353.SelectedIndex = abilityIndex[4]; } }
public void Generate() { PersonalInfo personalInfo = PersonalTable.SWSH[m_Pokemon.DataSpecies]; var abilityList = PKHeX.Core.Util.GetAbilitiesList(Messages.Instance.LangCode); UInt64 seed = m_DenSeed; // 消費数0のDen Seed UInt32 ec, otid, pid; int[] ivs = new int[6]; UInt32 fixedIndex; UInt32 ability; UInt32 gender = 0; UInt32 nature; using (StreamWriter sw = new StreamWriter("list.txt")) { sw.Write($"{Messages.Instance.ListLabel["Frame"]},"); if (m_isShowSeed) { sw.Write("Seed,"); } if (m_isShowEc) { sw.Write("EC,"); } for (int i = 0; i < 6; ++i) { sw.Write($"{Messages.Instance.Status[i]},"); } if (!m_Pokemon.IsFixedGender) { sw.Write($"{Messages.Instance.SystemLabel["Gender"]},"); } sw.Write($"{Messages.Instance.ListLabel["Ability"]},"); sw.Write($"{Messages.Instance.ListLabel["Nature"]},"); sw.WriteLine($"{Messages.Instance.ListLabel["Shiny"]}"); for (int frame = 0; frame <= m_MaxCount; ++frame) { Xoroshiro xoroshiro = new Xoroshiro(seed); // seedを進める ec = xoroshiro.Next(0xFFFFFFFFu); otid = xoroshiro.Next(0xFFFFFFFFu); pid = xoroshiro.Next(0xFFFFFFFFu); bool isShiny = ((((otid ^ (otid >> 16)) >> 4) & 0xFFF) == (((pid ^ (pid >> 16)) >> 4) & 0xFFF)); bool isSquare = (((otid ^ (otid >> 16)) & 0xFFFF) == ((pid ^ (pid >> 16)) & 0xFFFF)); if (m_isShinyCheck && !isShiny) { seed = seed + 0x82a2b175229d6a5bul; continue; } // V箇所決定 for (int i = 0; i < 6; ++i) { ivs[i] = -1; } int fixedCount = 0; do { fixedIndex = 0; do { fixedIndex = xoroshiro.Next(7); // V箇所 } while (fixedIndex >= 6); if (ivs[fixedIndex] == -1) { ivs[fixedIndex] = 31; ++fixedCount; } } while (fixedCount < m_Pokemon.FlawlessIvs); // 個体値を埋める for (int i = 0; i < 6; ++i) { if (ivs[i] == -1) { ivs[i] = (int)xoroshiro.Next(0x1F); } } // 特性 if (m_Pokemon.Ability == 2) { ability = 2; } else if (m_Pokemon.Ability == 4) { do { ability = xoroshiro.Next(3); } while (ability >= 3); } else { ability = xoroshiro.Next(1); } // 性別値 if (!m_Pokemon.IsFixedGender) { do { gender = xoroshiro.Next(0xFF); } while (gender >= 253); } // 性格 do { nature = xoroshiro.Next(PokemonFormUtility.NatureTableList[m_Pokemon.NatureTableId].Max); } while (nature >= PokemonFormUtility.NatureTableList[m_Pokemon.NatureTableId].Pattern); // 出力 sw.Write($"{frame},"); if (m_isShowSeed) { sw.Write($"{seed:X16},"); } if (m_isShowEc) { sw.Write($"{ec:X8},"); } sw.Write($"{ivs[0]},{ivs[1]},{ivs[2]},{ivs[3]},{ivs[4]},{ivs[5]},"); if (!m_Pokemon.IsFixedGender) { if (gender + 1 < personalInfo.Gender) { sw.Write($"{Messages.Instance.Gender[1]},"); } else { sw.Write($"{Messages.Instance.Gender[0]},"); } } if (m_isShowAbilityName) { sw.Write($"{abilityList[personalInfo.Abilities[ability]]},"); } else { sw.Write(ability == 2 ? $"{Messages.Instance.ListLabel["HiddenAbility"]}," : $"{ability + 1},"); } sw.Write($"{PokemonFormUtility.GetNatureString(PokemonFormUtility.NatureTableList[m_Pokemon.NatureTableId].List[nature])},"); if (isShiny) { sw.WriteLine(isSquare ? Messages.Instance.ListLabel["SquareShiny"] : Messages.Instance.ListLabel["StarShiny"]); } else if (!m_isShinyCheck) { sw.WriteLine(""); } seed = seed + 0x82a2b175229d6a5bul; } } Process ps = new Process(); ps.StartInfo.FileName = "list.txt"; ps.Start(); }