예제 #1
0
        public SAV_HallOfFame(SAV6 sav)
        {
            InitializeComponent();
            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
            SAV = (SAV6)(Origin = sav).Clone();

            data = SAV.Data.Slice(SAV.HoF, 0x1B40); // Copy HoF section of save into Data
            Setup();
            LB_DataEntry.SelectedIndex = 0;
            NUP_PartyIndex_ValueChanged(this, EventArgs.Empty);
            TB_Nickname.Font = TB_OT.Font = FontUtil.GetPKXFont();
            editing          = true;
        }
예제 #2
0
        public SAV_HallOfFame(SaveFile sav)
        {
            InitializeComponent();
            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
            SAV = (SAV6)(Origin = sav).Clone();

            Array.Copy(SAV.Data, SAV.HoF, data, 0, data.Length); //Copy HoF section of save into Data
            Setup();
            LB_DataEntry.SelectedIndex = 0;
            NUP_PartyIndex_ValueChanged(null, EventArgs.Empty);
            try { TB_Nickname.Font = TB_OT.Font = FontUtil.GetPKXFont(11); }
            catch (Exception e) { WinFormsUtil.Alert("Font loading failed...", e.ToString()); }
            editing = true;
        }
예제 #3
0
        public SAV_SecretBase(SaveFile sav)
        {
            InitializeComponent();
            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
            SAV = (SAV6AO)(Origin = sav).Clone();

            NUD_FObject.Maximum = SecretBase6.COUNT_GOODS - 1;     // zero indexed!
            NUD_FPKM.Maximum    = SecretBase6Other.COUNT_TEAM - 1; // zero indexed!
            PG_Base.Font        = FontUtil.GetPKXFont();

            SetupComboBoxes();
            ReloadSecretBaseList();
            LB_Bases.SelectedIndex = 0;

            // Extra data
            NUD_CapturedRecord.Value = SAV.Records.GetRecord(080);
        }
예제 #4
0
        public SAV_Trainer7GG(SaveFile sav)
        {
            InitializeComponent();
            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
            SAV  = (SAV7b)(Origin = sav).Clone();
            Park = new GoParkStorage(SAV);
            UpdateGoSummary(0);

            if (Main.Unicode)
            {
                TB_OTName.Font = TB_RivalName.Font = FontUtil.GetPKXFont();
            }

            B_MaxCash.Click += (sender, e) => MT_Money.Text = "9,999,999";

            GetComboBoxes();
            LoadTrainerInfo();
        }
예제 #5
0
        public SAV_Trainer8a(SAV8LA sav)
        {
            InitializeComponent();
            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
            SAV = (SAV8LA)(Origin = sav).Clone();
            if (Main.Unicode)
            {
                TB_OTName.Font = FontUtil.GetPKXFont();
            }

            B_MaxCash.Click += (_, _) => MT_Money.Text = SAV.MaxMoney.ToString();

            CB_Gender.Items.Clear();
            CB_Gender.Items.AddRange(Main.GenderSymbols.Take(2).ToArray()); // m/f depending on unicode selection

            GetComboBoxes();
            GetTextBoxes();
        }
예제 #6
0
        public SAV_Trainer7(SaveFile sav)
        {
            SAV     = (SAV7)(Origin = sav).Clone();
            Loading = true;
            InitializeComponent();
            if (Main.Unicode)
            {
                try { TB_OTName.Font = FontUtil.GetPKXFont(11); }
                catch (Exception e) { WinFormsUtil.Alert("Font loading failed...", e.ToString()); }
            }

            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
            B_MaxCash.Click += (sender, e) => MT_Money.Text = "9,999,999";

            CB_Gender.Items.Clear();
            CB_Gender.Items.AddRange(Main.GenderSymbols.Take(2).ToArray()); // m/f depending on unicode selection

            GetComboBoxes();
            GetTextBoxes();

            CB_Stats.Items.Clear();
            for (int i = 0; i < 200; i++)
            {
                if (!RecordList.TryGetValue(i, out string name))
                {
                    name = $"{i:D3}";
                }

                CB_Stats.Items.Add(name);
            }
            CB_Stats.SelectedIndex   = RecordList.First().Key;
            CB_Fashion.SelectedIndex = 1;

            if (SAV.USUM)
            {
                LoadUltraData();
            }
            else
            {
                TC_Editor.TabPages.Remove(Tab_Ultra);
            }

            Loading = false;
        }
예제 #7
0
        public SAV_HallOfFame(SaveFile sav)
        {
            SAV = (SAV6)(Origin = sav).Clone();
            InitializeComponent();
            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);

            Array.Copy(SAV.Data, SAV.HoF, data, 0, data.Length); //Copy HoF section of save into Data
            Setup();
            editor_spec = new Control[] {
                GB_OT,
                GB_CurrentMoves,
                CB_Species,
                CB_HeldItem,
                TB_EC,
                TB_VN,
                CAL_MetDate,
                CHK_Nicknamed,
                CHK_Shiny,
                L_PartyNum,
                L_Victory,
                L_Shiny,
                L_Level,
                Label_TID,
                Label_Form,
                Label_Gender,
                Label_HeldItem,
                Label_OT,
                Label_TID,
                Label_SID,
                Label_Species,
                TB_Level,
                NUP_PartyIndex,
                Label_EncryptionConstant,
                Label_MetDate,
            };
            LB_DataEntry.SelectedIndex = 0;
            NUP_PartyIndex_ValueChanged(null, null);
            try { TB_Nickname.Font = FontUtil.GetPKXFont(11); }
            catch (Exception e) { WinFormsUtil.Alert("Font loading failed...", e.ToString()); }
            editing = true;
        }
예제 #8
0
        public SAV_Trainer8b(SAV8BS sav)
        {
            InitializeComponent();
            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
            SAV     = (SAV8BS)(Origin = sav).Clone();
            Loading = true;
            if (Main.Unicode)
            {
                TB_OTName.Font = TB_Rival.Font = FontUtil.GetPKXFont();
            }

            B_MaxCash.Click += (_, _) => MT_Money.Text = SAV.MaxMoney.ToString();

            CB_Gender.Items.Clear();
            CB_Gender.Items.AddRange(Main.GenderSymbols.Take(2).ToArray()); // m/f depending on unicode selection

            GetComboBoxes();
            GetTextBoxes();

            TrainerStats.LoadRecords(SAV, Records.RecordList_8b);

            Loading = false;
        }
예제 #9
0
        public TrashEditor(TextBoxBase TB_NN, byte[] raw, SaveFile sav)
        {
            InitializeComponent();
            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
            SAV = sav;

            FinalString = TB_NN.Text;
            Raw         = FinalBytes = raw;

            editing = true;
            if (raw != null)
            {
                AddTrashEditing(raw.Length);
            }

            var f = FontUtil.GetPKXFont();

            AddCharEditing(f);
            TB_Text.MaxLength = TB_NN.MaxLength;
            TB_Text.Text      = TB_NN.Text;
            TB_Text.Font      = f;

            if (FLP_Characters.Controls.Count == 0)
            {
                FLP_Characters.Visible = false;
                FLP_Hex.Height        *= 2;
            }
            else if (FLP_Hex.Controls.Count == 0)
            {
                FLP_Characters.Location = FLP_Hex.Location;
                FLP_Characters.Height  *= 2;
            }

            editing = false;
            CenterToParent();
        }
예제 #10
0
        public SAV_Trainer8(SaveFile sav)
        {
            InitializeComponent();
            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
            SAV = (SAV8SWSH)(Origin = sav).Clone();
            //Loading = true;
            if (Main.Unicode)
            {
                TB_OTName.Font = TB_TrainerCardName.Font = FontUtil.GetPKXFont();
            }

            B_MaxCash.Click += (sender, e) => MT_Money.Text = SAV.MaxMoney.ToString();
            B_MaxWatt.Click += (sender, e) => MT_Watt.Text = MyStatus8.MaxWatt.ToString();

            CB_Gender.Items.Clear();
            CB_Gender.Items.AddRange(Main.GenderSymbols.Take(2).ToArray()); // m/f depending on unicode selection

            TrainerStats.LoadRecords(SAV, Records.RecordList_8);

            NUD_BP.Value = Math.Min(SAV.Misc.BP, 9999);
            GetComboBoxes();
            GetTextBoxes();
            GetMiscValues();

            TC_Editor.TabPages.Remove(Tab_BadgeMap); // needs more work

            ChangeTitleScreenIndex(this, EventArgs.Empty);
            ChangeTrainerCardIndex(this, EventArgs.Empty);

            if (SAV.SaveRevision == 0)
            {
                B_CollectDiglett.Visible = false;
            }

            //Loading = false;
        }
예제 #11
0
        public SAV_FestivalPlaza(SaveFile sav)
        {
            SAV     = (SAV7)(Origin = sav).Clone();
            editing = true;
            InitializeComponent();
            typeMAX = SAV.USUM ? 0x7F : 0x7C;
            if (SAV.USUM)
            {
                PBs          = new[] { ppkx1, ppkx2, ppkx3 };
                NUD_Trainers = new[] { NUD_Trainer1, NUD_Trainer2, NUD_Trainer3 };
                LoadBattleAgency();
            }
            else
            {
                TC_Editor.TabPages.Remove(Tab_BattleAgency);
            }
            if (Main.Unicode)
            {
                try { TB_OTName.Font = FontUtil.GetPKXFont(11); }
                catch (Exception e) { WinFormsUtil.Alert("Font loading failed...", e.ToString()); }
            }
            uint cc = SAV.FestaCoins;
            uint cu = SAV.UsedFestaCoins;

            NUD_FC_Current.Value = Math.Min(cc, NUD_FC_Current.Maximum);
            NUD_FC_Used.Value    = Math.Min(cu, NUD_FC_Used.Maximum);
            L_FC_CollectedV.Text = (cc + cu).ToString();
            string[] res;
            switch (Main.CurrentLanguage)
            {
            case "ja":
                res = new[] {
                    "おじさんの きんのたま だからね!", "かがくの ちからって すげー", "1 2の …… ポカン!", "おーす! みらいの チャンピオン!", "おお! あんたか!", "みんな げんきに なりましたよ!", "とっても 幸せそう!", "なんでも ないです", "いあいぎりで きりますか?", "レポートを かきこんでいます",
                    "…… ぼくも もう いかなきゃ!", "ボンジュール!", "バイビー!", "ばか はずれです……", "やけどなおしの よういは いいか!", "ウー! ハーッ!", "ポケモンは たたかわせるものさ", "ヤドランは そっぽを むいた!", "マサラは まっしろ はじまりのいろ", "10000こうねん はやいんだよ!", "おーい! まてー! まつんじゃあ!", "こんちわ! ぼく ポケモン……!", "っだと こらあ!", "ぐ ぐーッ! そんな ばかなーッ!", "みゅう!", "タチサレ…… タチサレ……",
                    "カイリュー はかいこうせん", "どっちか 遊んでくれないか?", "ぬいぐるみ かっておいたわよ", "ひとのこと じろじろ みてんなよ", "なんのことだか わかんない", "みんな ポケモン やってるやん", "きょうから 24時間 とっくんだ!", "あたいが ホンモノ!", "でんげきで いちころ……", "スイクンを おいかけて 10ねん", "かんどうが よみがえるよ!", "われわれ ついに やりましたよー!", "ヤドンのシッポを うるなんて……", "ショオーッ!!", "ギャーアアス!!", "だいいっぽを ふみだした!",
                    "いちばん つよくて すごいんだよね", "にくらしいほど エレガント!", "そうぞうりょくが たりないよ", "キミは ビッグウェーブ!", "おまえさんには しびれた わい", "なに いってんだろ…… てへへ……", "ぬいぐるみ なんか かってないよ", "ここで ゆっくり して おいき!", "はじけろ! ポケモン トレーナー!", "はいが はいに はいった……", "…できる!", "ぶつかった かいすう 5かい!", "たすけて おくれーっ!!", "マボロシじま みえんのう……", "ひゅああーん!", "しゅわーん!",
                    "あつい きもち つたわってくる!", "こいつが! おれの きりふだ!", "ひとりじめとか そういうの ダメよ!", "ワーオ! ぶんせきどーり!", "ぱるぱるぅ!!!", "グギュグバァッ!!!", "ばっきん 100まんえん な!", "オレ つよくなる……", "ながれる 時間は とめられない!", "ぜったいに お願いだからね", "きみたちから はどうを かんじる!", "あたしのポケモンに なにすんのさ!", "リングは おれの うみ~♪", "オレの おおごえの ひとりごとを", "そう コードネームは ハンサム!", "……わたしが まけるかも だと!?",
                    "やめたげてよぉ!", "ブラボー! スーパー ブラボー!", "ボクは チャンピオンを こえる", "オレは いまから いかるぜッ!", "ライモンで ポケモン つよいもん", "キミ むしポケモン つかいなよ", "ストップ!", "ひとよんで メダルおやじ!", "トレーナーさんも がんばれよ!", "おもうぞんぶん きそおーぜ!", "プラズマズイ!", "ワタクシを とめることは できない!", "けいさんずみ ですとも!", "ババリバリッシュ!", "ンバーニンガガッ!", "ヒュラララ!",
                    "お友達に なっちゃお♪", "じゃあ みんな またねえ!", "このひとたち ムチャクチャです……", "トレーナーとは なにか しりたい", "スマートに くずれおちるぜ", "いのち ばくはつッ!!", "いいんじゃない いいんじゃないの!", "あれだよ あれ おみごとだよ!", "ぜんりょくでいけー! ってことよ!", "おまちなさいな!", "つまり グッド ポイント なわけ!", "ざんねん ですが さようなら", "にくすぎて むしろ 好きよ", "この しれもの が!", "イクシャア!!", "イガレッカ!!",
                    "フェスサークル ランク 100!",
                };
                break;

            default:
                string musical8note = "♪";
                string linedP       = "₽"; //currency Ruble
                res = new[] {              //source:UltraMoon
                    /* (SM)Pokémon House */ "There's nothing funny about Nuggets.", "The Power of science is awesome.", "1, 2, and... Ta-da!", "How's the future Champ today?", "Why, you!", "There! All happy and healthy!", "Your Pokémon seems to be very happy!", "No thanks!", "Would you like to use Cut?", "Saving...",
                    /* (SM)Kanto Tent */ "Well, I better get going!", "Bonjour!", "Smell ya later!", "Sorry! Bad call!", "You better have Burn Heal!", "Hoo hah!", "Pokémon are for battling!", "Slowbro took a snooze...", "Shades of your journey await!", "You're 10,000 light-years from facing Brock!", "Hey! Wait! Don't go out!", "Hiya! I'm a Pokémon...", "What do you want?", "WHAT! This can't be!", "Mew!", "Be gone... Intruders...",
                    /* (SM)Joht Tent */ "Dragonite, Hymer Beam.", "Spread the fun around.", "I bought an adorable doll with your money.", "What are you staring at?", "I just don't understand.", "Everyone is into Pokémon.", "I'm going to train 24 hours a day!", "I'm the real deal!", "With a jolt of electricity...", "For 10 years I chased Suicune.", "I am just so deeply moved!", "We have finally made it!", "...But selling Slowpoke Tails?", "Shaoooh!", "Gyaaas!", "you've taken your first step!",
                    /* (SM)Hoenn Tent */ "I'm just the strongest there is right now.", "And confoundedly elegant!", "You guys need some imagination.", "You made a much bigger splash!", "You ended up giving me a thrill!", "So what am I talking about...", "I'm not buying any Dolls.", "Take your time and rest up!", "Have a blast, Pokémon Trainers!", "I got ashes in my eyelashes!", "You're sharp!", "Number of collisions: 5 times!", "Please! Help me out!", "I can't see Mirage Island today...", "Hyahhn!", "Shwahhn!",
                    /* (SM)Sinnoh Tent */ "Your will is overwhelming me!", "This is it! My trump card!", "Trying to monopolize Pokémon just isn't...", "See? Just as analyzed.", "Gagyagyaah!", "Gugyugubah!", "It's a " + linedP + "10 million fine if you're late!", "I'm going to get tougher...", "You'll never be able to stem the flow of time!", "Please come!", "Your team! I sense your strong aura!", "What do you think you're doing?!", "The ring is my rolling sea. " + musical8note, "I was just thinking out loud.", "My code name, it is Looker.", "It's not possible that I lose!",
                    /* (SM)Unova Tent */ "Knock it off!", "Bravo! Excellent!!", "I'll defeat the Champion.", "You're about to feel my rage!", "Nimbasa's Pokémon can dance a nimble bossa!", "Use Bug-type Pokémon!", "Stop!", "People call me Mr. Medal!", "Trainer, do your best, too!", "See who's stronger!", "Plasbad, for short!", "I won't allow anyone to stop me!", "I was expecting exactly that kind of move!", "Bazzazzazzash!", "Preeeeaah!", "Haaahraaan!",
                    /* (SM)Kalos Tent */ "We'll become friends. " + musical8note, "I'll see you all later!", "These people have a few screws loose...", "I want to know what a \"Trainer\" is.", "When I lose, I go out in style!", "Let's give it all we've got!", "Fantastic! Just fantastic!", "Outstanding!", "Try as hard as possible!", "Stop right there!", "That really hit me right here...", "But this is adieu to you all.", "You're just too much, you know?", "Fool! You silly, unseeing child!", "Xsaaaaaah!", "Yvaaaaaar!",
                    "I reached Festival Plaza Rank 100!",
                };
                break;
            }
            CLB_Phrases.Items.Clear();
            CLB_Phrases.Items.Add(res.Last(), SAV.GetFestaPhraseUnlocked(106)); //add Lv100 before TentPhrases
            for (int i = 0; i < res.Length - 1; i++)
            {
                CLB_Phrases.Items.Add(res[i], SAV.GetFestaPhraseUnlocked(i));
            }

            DateTime dt = SAV.FestaDate ?? new DateTime(2000, 1, 1);

            CAL_FestaStartDate.Value = CAL_FestaStartTime.Value = dt;

            string[] res2 = { "Rank 4: missions", "Rank 8: facility", "Rank 10: fashion", "Rank 20: rename", "Rank 30: special menu", "Rank 40: BGM", "Rank 50: theme Glitz", "Rank 60: theme Fairy", "Rank 70: theme Tone", "Rank 100: phrase", "Current Rank", };
            CLB_Reward.Items.Clear();
            CLB_Reward.Items.Add(res2.Last(), (CheckState)r[SAV.GetFestPrizeReceived(10)]); //add CurrentRank before const-rewards
            for (int i = 0; i < res2.Length - 1; i++)
            {
                CLB_Reward.Items.Add(res2[i], (CheckState)r[SAV.GetFestPrizeReceived(i)]);
            }

            for (int i = 0; i < 7; i++)
            {
                f[i] = new FestaFacility(SAV, i);
            }

            string[] res3 = { "Meet", "Part", "Moved", "Disappointed" };
            CB_FacilityMessage.Items.Clear();
            CB_FacilityMessage.Items.AddRange(res3);
            string[] res5 =
            {
                "Ace Trainer" + gendersymbols[1],
                "Ace Trainer" + gendersymbols[0],
                "Veteran" + gendersymbols[1],
                "Veteran" + gendersymbols[0],
                "Office Worker" + gendersymbols[0],
                "Office Worker" + gendersymbols[1],
                "Punk Guy",
                "Punk Girl",
                "Breeder" + gendersymbols[0],
                "Breeder" + gendersymbols[1],
                "Youngster",
                "Lass"
            };
            CB_FacilityNPC.Items.Clear();
            CB_FacilityNPC.Items.AddRange(res5);
            string[]   res6 = { "Lottery", "Haunted", "Goody", "Food", "Bouncy", "Fortune", "Dye", "Exchange" };
            string[][] res7 =
            {
                new[] { "BigDream",  "GoldRush",  "TreasureHunt"     },
                new[] { "GhostsDen", "TrickRoom", "ConfuseRay"       },
                new[] { "Ball",      "General",   "Battle", "SoftDrink", "Pharmacy"},
                new[] { "Rare",      "Battle",    "FriendshipCafé", "FriendshipParlor"},
                new[] { "Thump",     "Clink",     "Stomp"            },
                new[] { "Kanto",     "Johto",     "Hoenn", "Sinnoh", "Unova", "Kalos", "Pokémon"},
                new[] { "Red",       "Yellow",    "Green", "Blue", "Orange", "NavyBlue", "Purple", "Pink"},
                new[] { "Switcheroo" }
            };
            CB_FacilityType.Items.Clear();
            for (int k = 0; k < RES_FacilityLevelType.Length - (SAV.USUM ? 0 : 1); k++) //Exchange is USUM only
            {
                for (int j = 0; j < RES_FacilityLevelType[k].Length; j++)
                {
                    if (RES_FacilityLevelType[k][j] != 4)
                    {
                        for (int i = 0; i < RES_FacilityLevelType[k][j]; i++)
                        {
                            CB_FacilityType.Items.Add($"{res6[k]} {res7[k][j]} {i + 1}");
                        }
                    }
                    else
                    {
                        CB_FacilityType.Items.Add($"{res6[k]} {res7[k][j]} 1");
                        CB_FacilityType.Items.Add($"{res6[k]} {res7[k][j]} 3");
                        CB_FacilityType.Items.Add($"{res6[k]} {res7[k][j]} 5");
                    }
                }
            }
            string[] res8 = { "GTS", "Wonder Trade", "Battle Spot", "Festival Plaza", "mission", "lottery shop", "haunted house" };
            string[] res9 = { "+", "++", "+++" };
            CB_LuckyResult.Items.Clear();
            CB_LuckyResult.Items.Add("none");
            for (int i = 0; i < res8.Length; i++)
            {
                for (int j = 0; j < res9.Length; j++)
                {
                    CB_LuckyResult.Items.Add($"{res9[j]} {res8[i]}");
                }
            }

            NUD_Rank.Value = SAV.FestaRank;
            LoadRankLabel(SAV.FestaRank);
            NUD_Messages = new[] { NUD_MyMessageMeet, NUD_MyMessagePart, NUD_MyMessageMoved, NUD_MyMessageDissapointed };
            for (int i = 0; i < NUD_Messages.Length; i++)
            {
                NUD_Messages[i].Value = SAV.GetFestaMessage(i);
            }

            LB_FacilityIndex.SelectedIndex   = 0;
            CB_FacilityMessage.SelectedIndex = 0;
            editing = false;

            entry = 0;
            LoadFacility();
        }
예제 #12
0
        public SAV_SecretBase(SaveFile sav)
        {
            InitializeComponent();
            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
            SAV         = (SAV6AO)(Origin = sav).Clone();
            abilitylist = GameInfo.Strings.abilitylist;

            SetupComboBoxes();
            PopFavorite();
            PopFavorite();
            TB_FOT.Font = TB_FT1.Font = TB_FT2.Font = TB_FSay1.Font = TB_FSay2.Font = TB_FSay3.Font = TB_FSay4.Font = LB_Favorite.Font = FontUtil.GetPKXFont();
            CB_Ability.InitializeBinding();

            LB_Favorite.SelectedIndex = 0;
            MT_Flags.Text             = SAV.Records.GetRecord(080).ToString(); // read counter; also present in the Secret Base data block
            B_SAV2FAV(null, EventArgs.Empty);
        }
        public SAV_Trainer(SaveFile sav)
        {
            InitializeComponent();
            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
            SAV = (SAV6)(Origin = sav).Clone();
            if (Main.Unicode)
            {
                try
                {
                    TB_OTName.Font = FontUtil.GetPKXFont(11);
                    if (SAV.XY)
                    {
                        TB_TRNick.Font = TB_OTName.Font;
                    }
                }
                catch (Exception e) { WinFormsUtil.Alert("Font loading failed...", e.ToString()); }
            }

            B_MaxCash.Click += (sender, e) => MT_Money.Text = "9,999,999";

            CB_Gender.Items.Clear();
            CB_Gender.Items.AddRange(Main.GenderSymbols.Take(2).ToArray()); // m/f depending on unicode selection

            TrainerStats.LoadRecords(SAV, Records.RecordList_6);
            TrainerStats.GetToolTipText = UpdateTip;

            MaisonRecords = new[]
            {
                TB_MCSN, TB_MCSS, TB_MBSN, TB_MBSS,
                TB_MCDN, TB_MCDS, TB_MBDN, TB_MBDS,
                TB_MCTN, TB_MCTS, TB_MBTN, TB_MBTS,
                TB_MCRN, TB_MCRS, TB_MBRN, TB_MBRS,
                TB_MCMN, TB_MCMS, TB_MBMN, TB_MBMS,
            };
            cba = new[] { CHK_Badge1, CHK_Badge2, CHK_Badge3, CHK_Badge4, CHK_Badge5, CHK_Badge6, CHK_Badge7, CHK_Badge8, };
            pba = new [] { PB_Badge1, PB_Badge2, PB_Badge3, PB_Badge4, PB_Badge5, PB_Badge6, PB_Badge7, PB_Badge8, };

            L_MultiplayerSprite.Enabled = CB_MultiplayerSprite.Enabled = SAV.ORAS;
            L_MultiplayerSprite.Visible = CB_MultiplayerSprite.Visible = SAV.ORAS;
            PB_Sprite.Visible           = CHK_MegaRayquazaUnlocked.Visible = SAV.ORAS;

            L_Style.Visible = TB_Style.Visible = SAV.XY;
            if (!SAV.XY)
            {
                TC_Editor.TabPages.Remove(Tab_Appearance);
            }
            if (SAV.ORASDEMO)
            {
                TC_Editor.TabPages.Remove(Tab_Multiplayer);
            }
            if (SAV.MaisonStats < 0)
            {
                TC_Editor.TabPages.Remove(Tab_Maison);
            }

            GetComboBoxes();
            GetTextBoxes();
            GetBadges();
            editing = false;

            CHK_MegaUnlocked.Checked         = SAV.IsMegaEvolutionUnlocked;
            CHK_MegaRayquazaUnlocked.Checked = SAV.IsMegaRayquazaUnlocked;
        }
예제 #14
0
파일: SAV_Trainer.cs 프로젝트: antwa/PKHeX
        public SAV_Trainer(SaveFile sav)
        {
            InitializeComponent();
            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
            SAV = (SAV6)(Origin = sav).Clone();
            if (Main.Unicode)
            {
                try
                {
                    TB_OTName.Font = FontUtil.GetPKXFont(11);
                    if (SAV.XY)
                    {
                        TB_TRNick.Font = TB_OTName.Font;
                    }
                }
                catch (Exception e) { WinFormsUtil.Alert("Font loading failed...", e.ToString()); }
            }

            B_MaxCash.Click += (sender, e) => MT_Money.Text = "9,999,999";

            CB_Gender.Items.Clear();
            CB_Gender.Items.AddRange(Main.GenderSymbols.Take(2).ToArray()); // m/f depending on unicode selection

            MaisonRecords = new[]
            {
                TB_MCSN, TB_MCSS, TB_MBSN, TB_MBSS,
                TB_MCDN, TB_MCDS, TB_MBDN, TB_MBDS,
                TB_MCTN, TB_MCTS, TB_MBTN, TB_MBTS,
                TB_MCRN, TB_MCRS, TB_MBRN, TB_MBRS,
                TB_MCMN, TB_MCMS, TB_MBMN, TB_MBMS,
            };
            cba = new[] { CHK_Badge1, CHK_Badge2, CHK_Badge3, CHK_Badge4, CHK_Badge5, CHK_Badge6, CHK_Badge7, CHK_Badge8, };
            pba = new [] { PB_Badge1, PB_Badge2, PB_Badge3, PB_Badge4, PB_Badge5, PB_Badge6, PB_Badge7, PB_Badge8, };

            L_MultiplayerSprite.Enabled = CB_MultiplayerSprite.Enabled = SAV.ORAS;
            L_MultiplayerSprite.Visible = CB_MultiplayerSprite.Visible = SAV.ORAS;
            PB_Sprite.Visible           = SAV.ORAS;

            L_Style.Visible = TB_Style.Visible = SAV.XY;
            if (!SAV.XY)
            {
                TC_Editor.TabPages.Remove(Tab_Appearance);
            }
            if (SAV.ORASDEMO)
            {
                TC_Editor.TabPages.Remove(Tab_Multiplayer);
            }
            if (SAV.MaisonStats < 0)
            {
                TC_Editor.TabPages.Remove(Tab_Maison);
            }

            editing = true;
            GetComboBoxes();
            GetTextBoxes();
            GetBadges();

            statdata = new[] {
                "0x000", "0x000",        // Steps taken?
                "0x004", "0x004",        // Minutes Played / Pokemon Encountered?
                "0x008", "0x008",
                "0x00C", "0x00C",
                "0x010", "0x010",
                "0x014", "0x014",
                "0x018", "0x018",
                "0x01C", "Pokémon Captured",
                "0x020", "0x020",
                "0x024", "Eggs Hatched",
                "0x028", "Pokémon Evolved",
                "0x02C", "0x02C",
                "0x030", "~People Passed",        // I think the following ones are Passerby actions...
                "0x034", "0x034",
                "0x038", "0x038",
                "0x03C", "0x03C",
                "0x040", "Link Trades",
                "0x044", "Link Battles",
                "0x048", "Link Battle Wins",
                "0x04C", "0x04C",
                "0x050", "0x050",
                "0x054", "0x054",
                "0x058", "0x058",
                "0x05C", "0x05C",
                "0x060", "0x060",
                "0x064", "0x064",
                "0x068", "0x068",
                "0x06C", "0x06C",
                "0x070", "0x070",
                "0x074", "0x074",
                "0x078", "0x078",
                "0x07C", "0x07C",
                "0x080", "0x080",
                "0x084", "0x084",
                "0x088", "BP Earned",
                "0x08C", "0x08C",
                "0x090", "0x090",
                "0x094", "0x094",
                "0x098", "0x098",
                "0x09C", "0x09C",
                "0x0A0", "0x0A0",
                "0x0A4", "0x0A4",
                "0x0A8", "0x0A8",
                "0x0AC", "0x0AC",
                "0x0B0", "0x0B0",
                "0x0B4", "0x0B4",
                "0x0B8", "0x0B8",
                "0x0BC", "0x0BC",
                "0x0C0", "0x0C0",
                "0x0C4", "0x0C4",
                "0x0C8", "0x0C8",
                "0x0CC", "0x0CC",
                "0x0D0", "0x0D0",
                "0x0D4", "0x0D4",
                "0x0D8", "0x0D8",
                "0x0DC", "0x0DC",
                "0x0E0", "0x0E0",
                "0x0E4", "0x0E4",
                "0x0E8", "0x0E8",
                "0x0EC", "Nice! Received",
                "0x0F0", "Birthday Wishes",
                "0x0F4", "Total People Met Online",
                "0x0F8", "0x0F8",
                //"0x0FC",	"Current Pokemiles",
                "0x100", "Obtained Pokemiles",
                "0x104", "0x104",
                "0x108", "0x108",
                "0x10C", "Super Training Clears",
                "0x110", "Judge Evaluations",
                "0x114", "0x114",
                "0x118", "0x118",        // Link Trades?
                "0x11C", "Link Battle",  // Wins", // ?
                "0x120", "0x120",        // Link Battle Losses?
                "0x124", "0x124",
                "0x128", "0x128",
                "0x12C", "0x12C",
                "0x130", "0x130",
                "0x134", "0x134",
                "0x138", "0x138",
                "0x13C", "0x13C",
                "0x140", "Flags Captured",
                "0x144", "0x144",
                "0x148", "0x148",
                "0x14C", "0x14C",
                "0x150", "0x150",
                "0x154", "0x154",
                "0x158", "0x158",
                "0x15C", "0x15C",
                "0x160", "0x160",
                "0x164", "0x164",
                "0x168", "0x168",
                "0x16C", "0x16C",
                "0x170", "0x170",
                "0x174", "0x174",
                "0x178", "0x178",
                "0x17C", "0x17C",
                "0x180", "0x180",
                "0x184", "0x184",
                "0x188", "0x188",
                "0x18C", "0x18C",
                "0x190", "0x190",
                "0x194", "0x194",
                "0x198", "0x198",
                "0x19C", "0x19C",
                "0x1A0", "0x1A0",
                "0x1A4", "0x1A4",
                "0x1A8", "0x1A8",
                "0x1AC", "0x1AC",
                "0x1B0", "0x1B0",
                "0x1B4", "0x1B4",
                "0x1B8", "0x1B8",
                "0x1BC", "Battle Tests",
                "0x1C0", "0x1C0",
                "0x1C4", "0x1C4",
                "0x1C8", "0x1C8",
                "0x1CC", "0x1CC",
                "0x1D0", "0x1D0",
                "0x1D4", "0x1D4",
                "0x1D8", "0x1D8",
                "0x1DC", "0x1DC",
                "0x1E0", "0x1E0",
                "0x1E4", "0x1E4",
                "0x1E8", "0x1E8",
                "0x1EC", "0x1EC",
                "0x1F0", "0x1F0",
                "0x1F4", "0x1F4",
                "0x1F8", "0x1F8",
                "0x1FC", "0x1FC",
                "0x200", "0x200",
                "0x204", "0x204",
                "0x208", "0x208",
                "0x20C", "0x20C",
                "0x210", "0x210",
                "0x214", "0x214",
                "0x218", "0x218",
                "0x21C", "0x21C",
                "0x220", "0x220",
                "0x224", "0x224",
                "0x228", "0x228",
                "0x22C", "0x22C",
                "0x230", "0x230",
                "0x234", "0x234",
                "0x238", "0x238",
                "0x23C", "0x23C",
                "0x240", "0x240",
                "0x244", "0x244",
                "0x248", "0x248",
                "0x24C", "0x24C",
                "0x250", "0x250",
                "0x254", "0x254",
                "0x258", "0x258",
            }; // Offset, Title. Horrible implementation, but works.

            CB_Stats.Items.Clear();
            for (int i = 0; i < statdata.Length / 2; i++)
            {
                CB_Stats.Items.Add(statdata[2 * i + 1]);
            }
            CB_Stats.SelectedIndex = 0;

            CHK_MegaUnlocked.Checked = SAV.IsMegaEvolutionUnlocked;
        }
예제 #15
0
        public SAV_FestivalPlaza(SaveFile sav)
        {
            InitializeComponent();
            SAV               = (SAV7)(Origin = sav).Clone();
            editing           = true;
            entry             = -1;
            typeMAX           = SAV is SAV7USUM ? 0x7F : 0x7C;
            TB_PlazaName.Text = SAV.Festa.FestivalPlazaName;

            if (SAV is SAV7USUM)
            {
                PBs          = new[] { ppkx1, ppkx2, ppkx3 };
                NUD_Trainers = new[] { NUD_Trainer1, NUD_Trainer2, NUD_Trainer3 };
                LoadBattleAgency();
            }
            else
            {
                TC_Editor.TabPages.Remove(Tab_BattleAgency);
            }

            if (Main.Unicode)
            {
                TB_OTName.Font = FontUtil.GetPKXFont();
            }

            var cc = SAV.Festa.FestaCoins;
            var cu = SAV.GetRecord(038);

            NUD_FC_Current.Value = Math.Min(cc, NUD_FC_Current.Maximum);
            NUD_FC_Used.Value    = Math.Min(cu, NUD_FC_Used.Maximum);
            L_FC_CollectedV.Text = (cc + cu).ToString();
            string[] res;
            switch (Main.CurrentLanguage)
            {
            case "ja":
                res = new[] {
                    "おじさんの きんのたま だからね!", "かがくの ちからって すげー", "1 2の …… ポカン!", "おーす! みらいの チャンピオン!", "おお! あんたか!", "みんな げんきに なりましたよ!", "とっても 幸せそう!", "なんでも ないです", "いあいぎりで きりますか?", "レポートを かきこんでいます",
                    "…… ぼくも もう いかなきゃ!", "ボンジュール!", "バイビー!", "ばか はずれです……", "やけどなおしの よういは いいか!", "ウー! ハーッ!", "ポケモンは たたかわせるものさ", "ヤドランは そっぽを むいた!", "マサラは まっしろ はじまりのいろ", "10000こうねん はやいんだよ!", "おーい! まてー! まつんじゃあ!", "こんちわ! ぼく ポケモン……!", "っだと こらあ!", "ぐ ぐーッ! そんな ばかなーッ!", "みゅう!", "タチサレ…… タチサレ……",
                    "カイリュー はかいこうせん", "どっちか 遊んでくれないか?", "ぬいぐるみ かっておいたわよ", "ひとのこと じろじろ みてんなよ", "なんのことだか わかんない", "みんな ポケモン やってるやん", "きょうから 24時間 とっくんだ!", "あたいが ホンモノ!", "でんげきで いちころ……", "スイクンを おいかけて 10ねん", "かんどうが よみがえるよ!", "われわれ ついに やりましたよー!", "ヤドンのシッポを うるなんて……", "ショオーッ!!", "ギャーアアス!!", "だいいっぽを ふみだした!",
                    "いちばん つよくて すごいんだよね", "にくらしいほど エレガント!", "そうぞうりょくが たりないよ", "キミは ビッグウェーブ!", "おまえさんには しびれた わい", "なに いってんだろ…… てへへ……", "ぬいぐるみ なんか かってないよ", "ここで ゆっくり して おいき!", "はじけろ! ポケモン トレーナー!", "はいが はいに はいった……", "…できる!", "ぶつかった かいすう 5かい!", "たすけて おくれーっ!!", "マボロシじま みえんのう……", "ひゅああーん!", "しゅわーん!",
                    "あつい きもち つたわってくる!", "こいつが! おれの きりふだ!", "ひとりじめとか そういうの ダメよ!", "ワーオ! ぶんせきどーり!", "ぱるぱるぅ!!!", "グギュグバァッ!!!", "ばっきん 100まんえん な!", "オレ つよくなる……", "ながれる 時間は とめられない!", "ぜったいに お願いだからね", "きみたちから はどうを かんじる!", "あたしのポケモンに なにすんのさ!", "リングは おれの うみ~♪", "オレの おおごえの ひとりごとを", "そう コードネームは ハンサム!", "……わたしが まけるかも だと!?",
                    "やめたげてよぉ!", "ブラボー! スーパー ブラボー!", "ボクは チャンピオンを こえる", "オレは いまから いかるぜッ!", "ライモンで ポケモン つよいもん", "キミ むしポケモン つかいなよ", "ストップ!", "ひとよんで メダルおやじ!", "トレーナーさんも がんばれよ!", "おもうぞんぶん きそおーぜ!", "プラズマズイ!", "ワタクシを とめることは できない!", "けいさんずみ ですとも!", "ババリバリッシュ!", "ンバーニンガガッ!", "ヒュラララ!",
                    "お友達に なっちゃお♪", "じゃあ みんな またねえ!", "このひとたち ムチャクチャです……", "トレーナーとは なにか しりたい", "スマートに くずれおちるぜ", "いのち ばくはつッ!!", "いいんじゃない いいんじゃないの!", "あれだよ あれ おみごとだよ!", "ぜんりょくでいけー! ってことよ!", "おまちなさいな!", "つまり グッド ポイント なわけ!", "ざんねん ですが さようなら", "にくすぎて むしろ 好きよ", "この しれもの が!", "イクシャア!!", "イガレッカ!!",
                    "フェスサークル ランク 100!",
                };
                break;

            default:
                const string musical8note = "♪";
                const string linedP       = "₽"; //currency Ruble
                res = new[] {                    //source:UltraMoon
                    /* (SM)Pokémon House */ "There's nothing funny about Nuggets.", "The Power of science is awesome.", "1, 2, and... Ta-da!", "How's the future Champ today?", "Why, you!", "There! All happy and healthy!", "Your Pokémon seems to be very happy!", "No thanks!", "Would you like to use Cut?", "Saving...",
                    /* (SM)Kanto Tent */ "Well, I better get going!", "Bonjour!", "Smell ya later!", "Sorry! Bad call!", "You better have Burn Heal!", "Hoo hah!", "Pokémon are for battling!", "Slowbro took a snooze...", "Shades of your journey await!", "You're 10,000 light-years from facing Brock!", "Hey! Wait! Don't go out!", "Hiya! I'm a Pokémon...", "What do you want?", "WHAT! This can't be!", "Mew!", "Be gone... Intruders...",
                    /* (SM)Joht Tent */ "Dragonite, Hymer Beam.", "Spread the fun around.", "I bought an adorable doll with your money.", "What are you staring at?", "I just don't understand.", "Everyone is into Pokémon.", "I'm going to train 24 hours a day!", "I'm the real deal!", "With a jolt of electricity...", "For 10 years I chased Suicune.", "I am just so deeply moved!", "We have finally made it!", "...But selling Slowpoke Tails?", "Shaoooh!", "Gyaaas!", "you've taken your first step!",
                    /* (SM)Hoenn Tent */ "I'm just the strongest there is right now.", "And confoundedly elegant!", "You guys need some imagination.", "You made a much bigger splash!", "You ended up giving me a thrill!", "So what am I talking about...", "I'm not buying any Dolls.", "Take your time and rest up!", "Have a blast, Pokémon Trainers!", "I got ashes in my eyelashes!", "You're sharp!", "Number of collisions: 5 times!", "Please! Help me out!", "I can't see Mirage Island today...", "Hyahhn!", "Shwahhn!",
                    /* (SM)Sinnoh Tent */ "Your will is overwhelming me!", "This is it! My trump card!", "Trying to monopolize Pokémon just isn't...", "See? Just as analyzed.", "Gagyagyaah!", "Gugyugubah!", "It's a " + linedP + "10 million fine if you're late!", "I'm going to get tougher...", "You'll never be able to stem the flow of time!", "Please come!", "Your team! I sense your strong aura!", "What do you think you're doing?!", "The ring is my rolling sea. " + musical8note, "I was just thinking out loud.", "My code name, it is Looker.", "It's not possible that I lose!",
                    /* (SM)Unova Tent */ "Knock it off!", "Bravo! Excellent!!", "I'll defeat the Champion.", "You're about to feel my rage!", "Nimbasa's Pokémon can dance a nimble bossa!", "Use Bug-type Pokémon!", "Stop!", "People call me Mr. Medal!", "Trainer, do your best, too!", "See who's stronger!", "Plasbad, for short!", "I won't allow anyone to stop me!", "I was expecting exactly that kind of move!", "Bazzazzazzash!", "Preeeeaah!", "Haaahraaan!",
                    /* (SM)Kalos Tent */ "We'll become friends. " + musical8note, "I'll see you all later!", "These people have a few screws loose...", "I want to know what a \"Trainer\" is.", "When I lose, I go out in style!", "Let's give it all we've got!", "Fantastic! Just fantastic!", "Outstanding!", "Try as hard as possible!", "Stop right there!", "That really hit me right here...", "But this is adieu to you all.", "You're just too much, you know?", "Fool! You silly, unseeing child!", "Xsaaaaaah!", "Yvaaaaaar!",
                    "I reached Festival Plaza Rank 100!",
                };
                break;
            }
            CLB_Phrases.Items.Clear();
            CLB_Phrases.Items.Add(res[^ 1], SAV.Festa.GetFestaPhraseUnlocked(106)); //add Lv100 before TentPhrases
예제 #16
0
        public SAV_SecretBase(SaveFile sav)
        {
            InitializeComponent();
            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
            SAV         = (SAV6)(Origin = sav).Clone();
            abilitylist = GameInfo.Strings.abilitylist;

            SetupComboBoxes();
            PopFavorite();
            PopFavorite();
            TB_FOT.Font = TB_FT1.Font = TB_FT2.Font = TB_FSay1.Font = TB_FSay2.Font = TB_FSay3.Font = TB_FSay4.Font = LB_Favorite.Font = FontUtil.GetPKXFont(11);
            CB_Ability.InitializeBinding();

            LB_Favorite.SelectedIndex = 0;
            // MT_Flags.Text = BitConverter.ToUInt16(sav, 0x24800 + 0x140).ToString(); PSS Stat transmitted
            MT_Flags.Text = BitConverter.ToUInt32(SAV.Data, SAV.SecretBase + 0x62C).ToString(); // read counter
            B_SAV2FAV(null, EventArgs.Empty);
        }