From c1fa685752b354b138987b1b6a8909331b5247e9 Mon Sep 17 00:00:00 2001 From: Kurt Date: Thu, 11 Dec 2014 22:36:39 -0800 Subject: [PATCH] Manual Merge --- Misc/PKX.cs | 1640 ++---------------------------- Misc/pk2pk.cs | 860 +--------------- PKHeX.csproj | 1 + PKX/f1-Main.Designer.cs | 1 + PKX/f1-Main.cs | 20 +- Properties/Resources.Designer.cs | 15 +- Properties/Resources.resx | 3 + Resources/byte/personal | Bin 0 -> 11564 bytes SAV/SAV_HallOfFame.cs | 13 +- SAV/SAV_PokedexORAS.cs | 17 +- SAV/SAV_PokedexXY.cs | 20 +- SAV/SAV_SecretBase.cs | 20 +- 12 files changed, 144 insertions(+), 2466 deletions(-) create mode 100644 Resources/byte/personal diff --git a/Misc/PKX.cs b/Misc/PKX.cs index 53cc21269..9a923ef58 100644 --- a/Misc/PKX.cs +++ b/Misc/PKX.cs @@ -25,1477 +25,6 @@ namespace PKHeX seed = (seed * a + c) & 0xFFFFFFFF; return seed; } - public static DataTable SpeciesTable() - { - DataTable table = new DataTable(); - table.Columns.Add("Species", typeof(int)); - table.Columns.Add("EXP Growth", typeof(int)); - table.Columns.Add("BST HP", typeof(int)); - table.Columns.Add("BST ATK", typeof(int)); - table.Columns.Add("BST DEF", typeof(int)); - table.Columns.Add("BST SpA", typeof(int)); - table.Columns.Add("BST SpD", typeof(int)); - table.Columns.Add("BST Spe", typeof(int)); - table.Columns.Add("GT ID", typeof(int)); - - table.Rows.Add(0, 0, 0, 0, 0, 0, 0, 0, 256); - table.Rows.Add(1, 3, 45, 49, 49, 65, 65, 45, 32); - table.Rows.Add(2, 3, 60, 62, 63, 80, 80, 60, 32); - table.Rows.Add(3, 3, 80, 82, 83, 100, 100, 80, 32); - table.Rows.Add(4, 3, 39, 52, 43, 60, 50, 65, 32); - table.Rows.Add(5, 3, 58, 64, 58, 80, 65, 80, 32); - table.Rows.Add(6, 3, 78, 84, 78, 109, 85, 100, 32); - table.Rows.Add(7, 3, 44, 48, 65, 50, 64, 43, 32); - table.Rows.Add(8, 3, 59, 63, 80, 65, 80, 58, 32); - table.Rows.Add(9, 3, 79, 83, 100, 85, 105, 78, 32); - table.Rows.Add(10, 2, 45, 30, 35, 20, 20, 45, 128); - table.Rows.Add(11, 2, 50, 20, 55, 25, 25, 30, 128); - table.Rows.Add(12, 2, 60, 45, 50, 90, 80, 70, 128); - table.Rows.Add(13, 2, 40, 35, 30, 20, 20, 50, 128); - table.Rows.Add(14, 2, 45, 25, 50, 25, 25, 35, 128); - table.Rows.Add(15, 2, 65, 90, 40, 45, 80, 75, 128); - table.Rows.Add(16, 3, 40, 45, 40, 35, 35, 56, 128); - table.Rows.Add(17, 3, 63, 60, 55, 50, 50, 71, 128); - table.Rows.Add(18, 3, 83, 80, 75, 70, 70, 101, 128); - table.Rows.Add(19, 2, 30, 56, 35, 25, 35, 72, 128); - table.Rows.Add(20, 2, 55, 81, 60, 50, 70, 97, 128); - table.Rows.Add(21, 2, 40, 60, 30, 31, 31, 70, 128); - table.Rows.Add(22, 2, 65, 90, 65, 61, 61, 100, 128); - table.Rows.Add(23, 2, 35, 60, 44, 40, 54, 55, 128); - table.Rows.Add(24, 2, 60, 85, 69, 65, 79, 80, 128); - table.Rows.Add(25, 2, 35, 55, 40, 50, 50, 90, 128); - table.Rows.Add(26, 2, 60, 90, 55, 90, 80, 110, 128); - table.Rows.Add(27, 2, 50, 75, 85, 20, 30, 40, 128); - table.Rows.Add(28, 2, 75, 100, 110, 45, 55, 65, 128); - table.Rows.Add(29, 3, 55, 47, 52, 40, 40, 41, 257); - table.Rows.Add(30, 3, 70, 62, 67, 55, 55, 56, 257); - table.Rows.Add(31, 3, 90, 92, 87, 75, 85, 76, 257); - table.Rows.Add(32, 3, 46, 57, 40, 40, 40, 50, 256); - table.Rows.Add(33, 3, 61, 72, 57, 55, 55, 65, 256); - table.Rows.Add(34, 3, 81, 102, 77, 85, 75, 85, 256); - table.Rows.Add(35, 1, 70, 45, 48, 60, 65, 35, 192); - table.Rows.Add(36, 1, 95, 70, 73, 95, 90, 60, 192); - table.Rows.Add(37, 2, 38, 41, 40, 50, 65, 65, 192); - table.Rows.Add(38, 2, 73, 76, 75, 81, 100, 100, 192); - table.Rows.Add(39, 1, 115, 45, 20, 45, 25, 20, 192); - table.Rows.Add(40, 1, 140, 70, 45, 85, 50, 45, 192); - table.Rows.Add(41, 2, 40, 45, 35, 30, 40, 55, 128); - table.Rows.Add(42, 2, 75, 80, 70, 65, 75, 90, 128); - table.Rows.Add(43, 3, 45, 50, 55, 75, 65, 30, 128); - table.Rows.Add(44, 3, 60, 65, 70, 85, 75, 40, 128); - table.Rows.Add(45, 3, 75, 80, 85, 110, 90, 50, 128); - table.Rows.Add(46, 2, 35, 70, 55, 45, 55, 25, 128); - table.Rows.Add(47, 2, 60, 95, 80, 60, 80, 30, 128); - table.Rows.Add(48, 2, 60, 55, 50, 40, 55, 45, 128); - table.Rows.Add(49, 2, 70, 65, 60, 90, 75, 90, 128); - table.Rows.Add(50, 2, 10, 55, 25, 35, 45, 95, 128); - table.Rows.Add(51, 2, 35, 80, 50, 50, 70, 120, 128); - table.Rows.Add(52, 2, 40, 45, 35, 40, 40, 90, 128); - table.Rows.Add(53, 2, 65, 70, 60, 65, 65, 115, 128); - table.Rows.Add(54, 2, 50, 52, 48, 65, 50, 55, 128); - table.Rows.Add(55, 2, 80, 82, 78, 95, 80, 85, 128); - table.Rows.Add(56, 2, 40, 80, 35, 35, 45, 70, 128); - table.Rows.Add(57, 2, 65, 105, 60, 60, 70, 95, 128); - table.Rows.Add(58, 4, 55, 70, 45, 70, 50, 60, 64); - table.Rows.Add(59, 4, 90, 110, 80, 100, 80, 95, 64); - table.Rows.Add(60, 3, 40, 50, 40, 40, 40, 90, 128); - table.Rows.Add(61, 3, 65, 65, 65, 50, 50, 90, 128); - table.Rows.Add(62, 3, 90, 95, 95, 70, 90, 70, 128); - table.Rows.Add(63, 3, 25, 20, 15, 105, 55, 90, 64); - table.Rows.Add(64, 3, 40, 35, 30, 120, 70, 105, 64); - table.Rows.Add(65, 3, 55, 50, 45, 135, 95, 120, 64); - table.Rows.Add(66, 3, 70, 80, 50, 35, 35, 35, 64); - table.Rows.Add(67, 3, 80, 100, 70, 50, 60, 45, 64); - table.Rows.Add(68, 3, 90, 130, 80, 65, 85, 55, 64); - table.Rows.Add(69, 3, 50, 75, 35, 70, 30, 40, 128); - table.Rows.Add(70, 3, 65, 90, 50, 85, 45, 55, 128); - table.Rows.Add(71, 3, 80, 105, 65, 100, 70, 70, 128); - table.Rows.Add(72, 4, 40, 40, 35, 50, 100, 70, 128); - table.Rows.Add(73, 4, 80, 70, 65, 80, 120, 100, 128); - table.Rows.Add(74, 3, 40, 80, 100, 30, 30, 20, 128); - table.Rows.Add(75, 3, 55, 95, 115, 45, 45, 35, 128); - table.Rows.Add(76, 3, 80, 120, 130, 55, 65, 45, 128); - table.Rows.Add(77, 2, 50, 85, 55, 65, 65, 90, 128); - table.Rows.Add(78, 2, 65, 100, 70, 80, 80, 105, 128); - table.Rows.Add(79, 2, 90, 65, 65, 40, 40, 15, 128); - table.Rows.Add(80, 2, 95, 75, 110, 100, 80, 30, 128); - table.Rows.Add(81, 2, 25, 35, 70, 95, 55, 45, 258); - table.Rows.Add(82, 2, 50, 60, 95, 120, 70, 70, 258); - table.Rows.Add(83, 2, 52, 65, 55, 58, 62, 60, 128); - table.Rows.Add(84, 2, 35, 85, 45, 35, 35, 75, 128); - table.Rows.Add(85, 2, 60, 110, 70, 60, 60, 100, 128); - table.Rows.Add(86, 2, 65, 45, 55, 45, 70, 45, 128); - table.Rows.Add(87, 2, 90, 70, 80, 70, 95, 70, 128); - table.Rows.Add(88, 2, 80, 80, 50, 40, 50, 25, 128); - table.Rows.Add(89, 2, 105, 105, 75, 65, 100, 50, 128); - table.Rows.Add(90, 4, 30, 65, 100, 45, 25, 40, 128); - table.Rows.Add(91, 4, 50, 95, 180, 85, 45, 70, 128); - table.Rows.Add(92, 3, 30, 35, 30, 100, 35, 80, 128); - table.Rows.Add(93, 3, 45, 50, 45, 115, 55, 95, 128); - table.Rows.Add(94, 3, 60, 65, 60, 130, 75, 110, 128); - table.Rows.Add(95, 2, 35, 45, 160, 30, 45, 70, 128); - table.Rows.Add(96, 2, 60, 48, 45, 43, 90, 42, 128); - table.Rows.Add(97, 2, 85, 73, 70, 73, 115, 67, 128); - table.Rows.Add(98, 2, 30, 105, 90, 25, 25, 50, 128); - table.Rows.Add(99, 2, 55, 130, 115, 50, 50, 75, 128); - table.Rows.Add(100, 2, 40, 30, 50, 55, 55, 100, 258); - table.Rows.Add(101, 2, 60, 50, 70, 80, 80, 140, 258); - table.Rows.Add(102, 4, 60, 40, 80, 60, 45, 40, 128); - table.Rows.Add(103, 4, 95, 95, 85, 125, 65, 55, 128); - table.Rows.Add(104, 2, 50, 50, 95, 40, 50, 35, 128); - table.Rows.Add(105, 2, 60, 80, 110, 50, 80, 45, 128); - table.Rows.Add(106, 2, 50, 120, 53, 35, 110, 87, 256); - table.Rows.Add(107, 2, 50, 105, 79, 35, 110, 76, 256); - table.Rows.Add(108, 2, 90, 55, 75, 60, 75, 30, 128); - table.Rows.Add(109, 2, 40, 65, 95, 60, 45, 35, 128); - table.Rows.Add(110, 2, 65, 90, 120, 85, 70, 60, 128); - table.Rows.Add(111, 4, 80, 85, 95, 30, 30, 25, 128); - table.Rows.Add(112, 4, 105, 130, 120, 45, 45, 40, 128); - table.Rows.Add(113, 1, 250, 5, 5, 35, 105, 50, 257); - table.Rows.Add(114, 2, 65, 55, 115, 100, 40, 60, 128); - table.Rows.Add(115, 2, 105, 95, 80, 40, 80, 90, 257); - table.Rows.Add(116, 2, 30, 40, 70, 70, 25, 60, 128); - table.Rows.Add(117, 2, 55, 65, 95, 95, 45, 85, 128); - table.Rows.Add(118, 2, 45, 67, 60, 35, 50, 63, 128); - table.Rows.Add(119, 2, 80, 92, 65, 65, 80, 68, 128); - table.Rows.Add(120, 4, 30, 45, 55, 70, 55, 85, 258); - table.Rows.Add(121, 4, 60, 75, 85, 100, 85, 115, 258); - table.Rows.Add(122, 2, 40, 45, 65, 100, 120, 90, 128); - table.Rows.Add(123, 2, 70, 110, 80, 55, 80, 105, 128); - table.Rows.Add(124, 2, 65, 50, 35, 115, 95, 95, 257); - table.Rows.Add(125, 2, 65, 83, 57, 95, 85, 105, 64); - table.Rows.Add(126, 2, 65, 95, 57, 100, 85, 93, 64); - table.Rows.Add(127, 4, 65, 125, 100, 55, 70, 85, 128); - table.Rows.Add(128, 4, 75, 100, 95, 40, 70, 110, 256); - table.Rows.Add(129, 4, 20, 10, 55, 15, 20, 80, 128); - table.Rows.Add(130, 4, 95, 125, 79, 60, 100, 81, 128); - table.Rows.Add(131, 4, 130, 85, 80, 85, 95, 60, 128); - table.Rows.Add(132, 2, 48, 48, 48, 48, 48, 48, 258); - table.Rows.Add(133, 2, 55, 55, 50, 45, 65, 55, 32); - table.Rows.Add(134, 2, 130, 65, 60, 110, 95, 65, 32); - table.Rows.Add(135, 2, 65, 65, 60, 110, 95, 130, 32); - table.Rows.Add(136, 2, 65, 130, 60, 95, 110, 65, 32); - table.Rows.Add(137, 2, 65, 60, 70, 85, 75, 40, 258); - table.Rows.Add(138, 2, 35, 40, 100, 90, 55, 35, 32); - table.Rows.Add(139, 2, 70, 60, 125, 115, 70, 55, 32); - table.Rows.Add(140, 2, 30, 80, 90, 55, 45, 55, 32); - table.Rows.Add(141, 2, 60, 115, 105, 65, 70, 80, 32); - table.Rows.Add(142, 4, 80, 105, 65, 60, 75, 130, 32); - table.Rows.Add(143, 4, 160, 110, 65, 65, 110, 30, 32); - table.Rows.Add(144, 4, 90, 85, 100, 95, 125, 85, 258); - table.Rows.Add(145, 4, 90, 90, 85, 125, 90, 100, 258); - table.Rows.Add(146, 4, 90, 100, 90, 125, 85, 90, 258); - table.Rows.Add(147, 4, 41, 64, 45, 50, 50, 50, 128); - table.Rows.Add(148, 4, 61, 84, 65, 70, 70, 70, 128); - table.Rows.Add(149, 4, 91, 134, 95, 100, 100, 80, 128); - table.Rows.Add(150, 4, 106, 110, 90, 154, 90, 130, 258); - table.Rows.Add(151, 3, 100, 100, 100, 100, 100, 100, 258); - table.Rows.Add(152, 3, 45, 49, 65, 49, 65, 45, 32); - table.Rows.Add(153, 3, 60, 62, 80, 63, 80, 60, 32); - table.Rows.Add(154, 3, 80, 82, 100, 83, 100, 80, 32); - table.Rows.Add(155, 3, 39, 52, 43, 60, 50, 65, 32); - table.Rows.Add(156, 3, 58, 64, 58, 80, 65, 80, 32); - table.Rows.Add(157, 3, 78, 84, 78, 109, 85, 100, 32); - table.Rows.Add(158, 3, 50, 65, 64, 44, 48, 43, 32); - table.Rows.Add(159, 3, 65, 80, 80, 59, 63, 58, 32); - table.Rows.Add(160, 3, 85, 105, 100, 79, 83, 78, 32); - table.Rows.Add(161, 2, 35, 46, 34, 35, 45, 20, 128); - table.Rows.Add(162, 2, 85, 76, 64, 45, 55, 90, 128); - table.Rows.Add(163, 2, 60, 30, 30, 36, 56, 50, 128); - table.Rows.Add(164, 2, 100, 50, 50, 76, 96, 70, 128); - table.Rows.Add(165, 1, 40, 20, 30, 40, 80, 55, 128); - table.Rows.Add(166, 1, 55, 35, 50, 55, 110, 85, 128); - table.Rows.Add(167, 1, 40, 60, 40, 40, 40, 30, 128); - table.Rows.Add(168, 1, 70, 90, 70, 60, 60, 40, 128); - table.Rows.Add(169, 2, 85, 90, 80, 70, 80, 130, 128); - table.Rows.Add(170, 4, 75, 38, 38, 56, 56, 67, 128); - table.Rows.Add(171, 4, 125, 58, 58, 76, 76, 67, 128); - table.Rows.Add(172, 2, 20, 40, 15, 35, 35, 60, 128); - table.Rows.Add(173, 1, 50, 25, 28, 45, 55, 15, 192); - table.Rows.Add(174, 1, 90, 30, 15, 40, 20, 15, 192); - table.Rows.Add(175, 1, 35, 20, 65, 40, 65, 20, 32); - table.Rows.Add(176, 1, 55, 40, 85, 80, 105, 40, 32); - table.Rows.Add(177, 2, 40, 50, 45, 70, 45, 70, 128); - table.Rows.Add(178, 2, 65, 75, 70, 95, 70, 95, 128); - table.Rows.Add(179, 3, 55, 40, 40, 65, 45, 35, 128); - table.Rows.Add(180, 3, 70, 55, 55, 80, 60, 45, 128); - table.Rows.Add(181, 3, 90, 75, 85, 115, 90, 55, 128); - table.Rows.Add(182, 3, 75, 80, 95, 90, 100, 50, 128); - table.Rows.Add(183, 1, 70, 20, 50, 20, 50, 40, 128); - table.Rows.Add(184, 1, 100, 50, 80, 60, 80, 50, 128); - table.Rows.Add(185, 2, 70, 100, 115, 30, 65, 30, 128); - table.Rows.Add(186, 3, 90, 75, 75, 90, 100, 70, 128); - table.Rows.Add(187, 3, 35, 35, 40, 35, 55, 50, 128); - table.Rows.Add(188, 3, 55, 45, 50, 45, 65, 80, 128); - table.Rows.Add(189, 3, 75, 55, 70, 55, 95, 110, 128); - table.Rows.Add(190, 1, 55, 70, 55, 40, 55, 85, 128); - table.Rows.Add(191, 3, 30, 30, 30, 30, 30, 30, 128); - table.Rows.Add(192, 3, 75, 75, 55, 105, 85, 30, 128); - table.Rows.Add(193, 2, 65, 65, 45, 75, 45, 95, 128); - table.Rows.Add(194, 2, 55, 45, 45, 25, 25, 15, 128); - table.Rows.Add(195, 2, 95, 85, 85, 65, 65, 35, 128); - table.Rows.Add(196, 2, 65, 65, 60, 130, 95, 110, 32); - table.Rows.Add(197, 2, 95, 65, 110, 60, 130, 65, 32); - table.Rows.Add(198, 3, 60, 85, 42, 85, 42, 91, 128); - table.Rows.Add(199, 2, 95, 75, 80, 100, 110, 30, 128); - table.Rows.Add(200, 1, 60, 60, 60, 85, 85, 85, 128); - table.Rows.Add(201, 2, 48, 72, 48, 72, 48, 48, 258); - table.Rows.Add(202, 2, 190, 33, 58, 33, 58, 33, 128); - table.Rows.Add(203, 2, 70, 80, 65, 90, 65, 85, 128); - table.Rows.Add(204, 2, 50, 65, 90, 35, 35, 15, 128); - table.Rows.Add(205, 2, 75, 90, 140, 60, 60, 40, 128); - table.Rows.Add(206, 2, 100, 70, 70, 65, 65, 45, 128); - table.Rows.Add(207, 3, 65, 75, 105, 35, 65, 85, 128); - table.Rows.Add(208, 2, 75, 85, 200, 55, 65, 30, 128); - table.Rows.Add(209, 1, 60, 80, 50, 40, 40, 30, 192); - table.Rows.Add(210, 1, 90, 120, 75, 60, 60, 45, 192); - table.Rows.Add(211, 2, 65, 95, 75, 55, 55, 85, 128); - table.Rows.Add(212, 2, 70, 130, 100, 55, 80, 65, 128); - table.Rows.Add(213, 3, 20, 10, 230, 10, 230, 5, 128); - table.Rows.Add(214, 4, 80, 125, 75, 40, 95, 85, 128); - table.Rows.Add(215, 3, 55, 95, 55, 35, 75, 115, 128); - table.Rows.Add(216, 2, 60, 80, 50, 50, 50, 40, 128); - table.Rows.Add(217, 2, 90, 130, 75, 75, 75, 55, 128); - table.Rows.Add(218, 2, 40, 40, 40, 70, 40, 20, 128); - table.Rows.Add(219, 2, 50, 50, 120, 80, 80, 30, 128); - table.Rows.Add(220, 4, 50, 50, 40, 30, 30, 50, 128); - table.Rows.Add(221, 4, 100, 100, 80, 60, 60, 50, 128); - table.Rows.Add(222, 1, 55, 55, 85, 65, 85, 35, 192); - table.Rows.Add(223, 2, 35, 65, 35, 65, 35, 65, 128); - table.Rows.Add(224, 2, 75, 105, 75, 105, 75, 45, 128); - table.Rows.Add(225, 1, 45, 55, 45, 65, 45, 75, 128); - table.Rows.Add(226, 4, 65, 40, 70, 80, 140, 70, 128); - table.Rows.Add(227, 4, 65, 80, 140, 40, 70, 70, 128); - table.Rows.Add(228, 4, 45, 60, 30, 80, 50, 65, 128); - table.Rows.Add(229, 4, 75, 90, 50, 110, 80, 95, 128); - table.Rows.Add(230, 2, 75, 95, 95, 95, 95, 85, 128); - table.Rows.Add(231, 2, 90, 60, 60, 40, 40, 40, 128); - table.Rows.Add(232, 2, 90, 120, 120, 60, 60, 50, 128); - table.Rows.Add(233, 2, 85, 80, 90, 105, 95, 60, 258); - table.Rows.Add(234, 4, 73, 95, 62, 85, 65, 85, 128); - table.Rows.Add(235, 1, 55, 20, 35, 20, 45, 75, 128); - table.Rows.Add(236, 2, 35, 35, 35, 35, 35, 35, 256); - table.Rows.Add(237, 2, 50, 95, 95, 35, 110, 70, 256); - table.Rows.Add(238, 2, 45, 30, 15, 85, 65, 65, 257); - table.Rows.Add(239, 2, 45, 63, 37, 65, 55, 95, 64); - table.Rows.Add(240, 2, 45, 75, 37, 70, 55, 83, 64); - table.Rows.Add(241, 4, 95, 80, 105, 40, 70, 100, 257); - table.Rows.Add(242, 1, 255, 10, 10, 75, 135, 55, 257); - table.Rows.Add(243, 4, 90, 85, 75, 115, 100, 115, 258); - table.Rows.Add(244, 4, 115, 115, 85, 90, 75, 100, 258); - table.Rows.Add(245, 4, 100, 75, 115, 90, 115, 85, 258); - table.Rows.Add(246, 4, 50, 64, 50, 45, 50, 41, 128); - table.Rows.Add(247, 4, 70, 84, 70, 65, 70, 51, 128); - table.Rows.Add(248, 4, 100, 134, 110, 95, 100, 61, 128); - table.Rows.Add(249, 4, 106, 90, 130, 90, 154, 110, 258); - table.Rows.Add(250, 4, 106, 130, 90, 110, 154, 90, 258); - table.Rows.Add(251, 3, 100, 100, 100, 100, 100, 100, 258); - table.Rows.Add(252, 3, 40, 45, 35, 65, 55, 70, 32); - table.Rows.Add(253, 3, 50, 65, 45, 85, 65, 95, 32); - table.Rows.Add(254, 3, 70, 85, 65, 105, 85, 120, 32); - table.Rows.Add(255, 3, 45, 60, 40, 70, 50, 45, 32); - table.Rows.Add(256, 3, 60, 85, 60, 85, 60, 55, 32); - table.Rows.Add(257, 3, 80, 120, 70, 110, 70, 80, 32); - table.Rows.Add(258, 3, 50, 70, 50, 50, 50, 40, 32); - table.Rows.Add(259, 3, 70, 85, 70, 60, 70, 50, 32); - table.Rows.Add(260, 3, 100, 110, 90, 85, 90, 60, 32); - table.Rows.Add(261, 2, 35, 55, 35, 30, 30, 35, 128); - table.Rows.Add(262, 2, 70, 90, 70, 60, 60, 70, 128); - table.Rows.Add(263, 2, 38, 30, 41, 30, 41, 60, 128); - table.Rows.Add(264, 2, 78, 70, 61, 50, 61, 100, 128); - table.Rows.Add(265, 2, 45, 45, 35, 20, 30, 20, 128); - table.Rows.Add(266, 2, 50, 35, 55, 25, 25, 15, 128); - table.Rows.Add(267, 2, 60, 70, 50, 100, 50, 65, 128); - table.Rows.Add(268, 2, 50, 35, 55, 25, 25, 15, 128); - table.Rows.Add(269, 2, 60, 50, 70, 50, 90, 65, 128); - table.Rows.Add(270, 3, 40, 30, 30, 40, 50, 30, 128); - table.Rows.Add(271, 3, 60, 50, 50, 60, 70, 50, 128); - table.Rows.Add(272, 3, 80, 70, 70, 90, 100, 70, 128); - table.Rows.Add(273, 3, 40, 40, 50, 30, 30, 30, 128); - table.Rows.Add(274, 3, 70, 70, 40, 60, 40, 60, 128); - table.Rows.Add(275, 3, 90, 100, 60, 90, 60, 80, 128); - table.Rows.Add(276, 3, 40, 55, 30, 30, 30, 85, 128); - table.Rows.Add(277, 3, 60, 85, 60, 50, 50, 125, 128); - table.Rows.Add(278, 2, 40, 30, 30, 55, 30, 85, 128); - table.Rows.Add(279, 2, 60, 50, 100, 85, 70, 65, 128); - table.Rows.Add(280, 4, 28, 25, 25, 45, 35, 40, 128); - table.Rows.Add(281, 4, 38, 35, 35, 65, 55, 50, 128); - table.Rows.Add(282, 4, 68, 65, 65, 125, 115, 80, 128); - table.Rows.Add(283, 2, 40, 30, 32, 50, 52, 65, 128); - table.Rows.Add(284, 2, 70, 60, 62, 80, 82, 60, 128); - table.Rows.Add(285, 5, 60, 40, 60, 40, 60, 35, 128); - table.Rows.Add(286, 5, 60, 130, 80, 60, 60, 70, 128); - table.Rows.Add(287, 4, 60, 60, 60, 35, 35, 30, 128); - table.Rows.Add(288, 4, 80, 80, 80, 55, 55, 90, 128); - table.Rows.Add(289, 4, 150, 160, 100, 95, 65, 100, 128); - table.Rows.Add(290, 0, 31, 45, 90, 30, 30, 40, 128); - table.Rows.Add(291, 0, 61, 90, 45, 50, 50, 160, 128); - table.Rows.Add(292, 0, 1, 90, 45, 30, 30, 40, 258); - table.Rows.Add(293, 3, 64, 51, 23, 51, 23, 28, 128); - table.Rows.Add(294, 3, 84, 71, 43, 71, 43, 48, 128); - table.Rows.Add(295, 3, 104, 91, 63, 91, 73, 68, 128); - table.Rows.Add(296, 5, 72, 60, 30, 20, 30, 25, 64); - table.Rows.Add(297, 5, 144, 120, 60, 40, 60, 50, 64); - table.Rows.Add(298, 1, 50, 20, 40, 20, 40, 20, 192); - table.Rows.Add(299, 2, 30, 45, 135, 45, 90, 30, 128); - table.Rows.Add(300, 1, 50, 45, 45, 35, 35, 50, 192); - table.Rows.Add(301, 1, 70, 65, 65, 55, 55, 70, 192); - table.Rows.Add(302, 3, 50, 75, 75, 65, 65, 50, 128); - table.Rows.Add(303, 1, 50, 85, 85, 55, 55, 50, 128); - table.Rows.Add(304, 4, 50, 70, 100, 40, 40, 30, 128); - table.Rows.Add(305, 4, 60, 90, 140, 50, 50, 40, 128); - table.Rows.Add(306, 4, 70, 110, 180, 60, 60, 50, 128); - table.Rows.Add(307, 2, 30, 40, 55, 40, 55, 60, 128); - table.Rows.Add(308, 2, 60, 60, 75, 60, 75, 80, 128); - table.Rows.Add(309, 4, 40, 45, 40, 65, 40, 65, 128); - table.Rows.Add(310, 4, 70, 75, 60, 105, 60, 105, 128); - table.Rows.Add(311, 2, 60, 50, 40, 85, 75, 95, 128); - table.Rows.Add(312, 2, 60, 40, 50, 75, 85, 95, 128); - table.Rows.Add(313, 0, 65, 73, 55, 47, 75, 85, 256); - table.Rows.Add(314, 5, 65, 47, 55, 73, 75, 85, 257); - table.Rows.Add(315, 3, 50, 60, 45, 100, 80, 65, 128); - table.Rows.Add(316, 5, 70, 43, 53, 43, 53, 40, 128); - table.Rows.Add(317, 5, 100, 73, 83, 73, 83, 55, 128); - table.Rows.Add(318, 4, 45, 90, 20, 65, 20, 65, 128); - table.Rows.Add(319, 4, 70, 120, 40, 95, 40, 95, 128); - table.Rows.Add(320, 5, 130, 70, 35, 70, 35, 60, 128); - table.Rows.Add(321, 5, 170, 90, 45, 90, 45, 60, 128); - table.Rows.Add(322, 2, 60, 60, 40, 65, 45, 35, 128); - table.Rows.Add(323, 2, 70, 100, 70, 105, 75, 40, 128); - table.Rows.Add(324, 2, 70, 85, 140, 85, 70, 20, 128); - table.Rows.Add(325, 1, 60, 25, 35, 70, 80, 60, 128); - table.Rows.Add(326, 1, 80, 45, 65, 90, 110, 80, 128); - table.Rows.Add(327, 1, 60, 60, 60, 60, 60, 60, 128); - table.Rows.Add(328, 3, 45, 100, 45, 45, 45, 10, 128); - table.Rows.Add(329, 3, 50, 70, 50, 50, 50, 70, 128); - table.Rows.Add(330, 3, 80, 100, 80, 80, 80, 100, 128); - table.Rows.Add(331, 3, 50, 85, 40, 85, 40, 35, 128); - table.Rows.Add(332, 3, 70, 115, 60, 115, 60, 55, 128); - table.Rows.Add(333, 0, 45, 40, 60, 40, 75, 50, 128); - table.Rows.Add(334, 0, 75, 70, 90, 70, 105, 80, 128); - table.Rows.Add(335, 0, 73, 115, 60, 60, 60, 90, 128); - table.Rows.Add(336, 5, 73, 100, 60, 100, 60, 65, 128); - table.Rows.Add(337, 1, 70, 55, 65, 95, 85, 70, 258); - table.Rows.Add(338, 1, 70, 95, 85, 55, 65, 70, 258); - table.Rows.Add(339, 2, 50, 48, 43, 46, 41, 60, 128); - table.Rows.Add(340, 2, 110, 78, 73, 76, 71, 60, 128); - table.Rows.Add(341, 5, 43, 80, 65, 50, 35, 35, 128); - table.Rows.Add(342, 5, 63, 120, 85, 90, 55, 55, 128); - table.Rows.Add(343, 2, 40, 40, 55, 40, 70, 55, 258); - table.Rows.Add(344, 2, 60, 70, 105, 70, 120, 75, 258); - table.Rows.Add(345, 0, 66, 41, 77, 61, 87, 23, 32); - table.Rows.Add(346, 0, 86, 81, 97, 81, 107, 43, 32); - table.Rows.Add(347, 0, 45, 95, 50, 40, 50, 75, 32); - table.Rows.Add(348, 0, 75, 125, 100, 70, 80, 45, 32); - table.Rows.Add(349, 0, 20, 15, 20, 10, 55, 80, 128); - table.Rows.Add(350, 0, 95, 60, 79, 100, 125, 81, 128); - table.Rows.Add(351, 2, 70, 70, 70, 70, 70, 70, 128); - table.Rows.Add(352, 3, 60, 90, 70, 60, 120, 40, 128); - table.Rows.Add(353, 1, 44, 75, 35, 63, 33, 45, 128); - table.Rows.Add(354, 1, 64, 115, 65, 83, 63, 65, 128); - table.Rows.Add(355, 1, 20, 40, 90, 30, 90, 25, 128); - table.Rows.Add(356, 1, 40, 70, 130, 60, 130, 25, 128); - table.Rows.Add(357, 4, 99, 68, 83, 72, 87, 51, 128); - table.Rows.Add(358, 1, 65, 50, 70, 95, 80, 65, 128); - table.Rows.Add(359, 3, 65, 130, 60, 75, 60, 75, 128); - table.Rows.Add(360, 2, 95, 23, 48, 23, 48, 23, 128); - table.Rows.Add(361, 2, 50, 50, 50, 50, 50, 50, 128); - table.Rows.Add(362, 2, 80, 80, 80, 80, 80, 80, 128); - table.Rows.Add(363, 3, 70, 40, 50, 55, 50, 25, 128); - table.Rows.Add(364, 3, 90, 60, 70, 75, 70, 45, 128); - table.Rows.Add(365, 3, 110, 80, 90, 95, 90, 65, 128); - table.Rows.Add(366, 0, 35, 64, 85, 74, 55, 32, 128); - table.Rows.Add(367, 0, 55, 104, 105, 94, 75, 52, 128); - table.Rows.Add(368, 0, 55, 84, 105, 114, 75, 52, 128); - table.Rows.Add(369, 4, 100, 90, 130, 45, 65, 55, 32); - table.Rows.Add(370, 1, 43, 30, 55, 40, 65, 97, 192); - table.Rows.Add(371, 4, 45, 75, 60, 40, 30, 50, 128); - table.Rows.Add(372, 4, 65, 95, 100, 60, 50, 50, 128); - table.Rows.Add(373, 4, 95, 135, 80, 110, 80, 100, 128); - table.Rows.Add(374, 4, 40, 55, 80, 35, 60, 30, 258); - table.Rows.Add(375, 4, 60, 75, 100, 55, 80, 50, 258); - table.Rows.Add(376, 4, 80, 135, 130, 95, 90, 70, 258); - table.Rows.Add(377, 4, 80, 100, 200, 50, 100, 50, 258); - table.Rows.Add(378, 4, 80, 50, 100, 100, 200, 50, 258); - table.Rows.Add(379, 4, 80, 75, 150, 75, 150, 50, 258); - table.Rows.Add(380, 4, 80, 80, 90, 110, 130, 110, 257); - table.Rows.Add(381, 4, 80, 90, 80, 130, 110, 110, 256); - table.Rows.Add(382, 4, 100, 100, 90, 150, 140, 90, 258); - table.Rows.Add(383, 4, 100, 150, 140, 100, 90, 90, 258); - table.Rows.Add(384, 4, 105, 150, 90, 150, 90, 95, 258); - table.Rows.Add(385, 4, 100, 100, 100, 100, 100, 100, 258); - table.Rows.Add(386, 4, 50, 180, 20, 180, 20, 150, 258); - table.Rows.Add(387, 3, 55, 68, 64, 45, 55, 31, 32); - table.Rows.Add(388, 3, 75, 89, 85, 55, 65, 36, 32); - table.Rows.Add(389, 3, 95, 109, 105, 75, 85, 56, 32); - table.Rows.Add(390, 3, 44, 58, 44, 58, 44, 61, 32); - table.Rows.Add(391, 3, 64, 78, 52, 78, 52, 81, 32); - table.Rows.Add(392, 3, 76, 104, 71, 104, 71, 108, 32); - table.Rows.Add(393, 3, 53, 51, 53, 61, 56, 40, 32); - table.Rows.Add(394, 3, 64, 66, 68, 81, 76, 50, 32); - table.Rows.Add(395, 3, 84, 86, 88, 111, 101, 60, 32); - table.Rows.Add(396, 3, 40, 55, 30, 30, 30, 60, 128); - table.Rows.Add(397, 3, 55, 75, 50, 40, 40, 80, 128); - table.Rows.Add(398, 3, 85, 120, 70, 50, 60, 100, 128); - table.Rows.Add(399, 2, 59, 45, 40, 35, 40, 31, 128); - table.Rows.Add(400, 2, 79, 85, 60, 55, 60, 71, 128); - table.Rows.Add(401, 3, 37, 25, 41, 25, 41, 25, 128); - table.Rows.Add(402, 3, 77, 85, 51, 55, 51, 65, 128); - table.Rows.Add(403, 3, 45, 65, 34, 40, 34, 45, 128); - table.Rows.Add(404, 3, 60, 85, 49, 60, 49, 60, 128); - table.Rows.Add(405, 3, 80, 120, 79, 95, 79, 70, 128); - table.Rows.Add(406, 3, 40, 30, 35, 50, 70, 55, 128); - table.Rows.Add(407, 3, 60, 70, 65, 125, 105, 90, 128); - table.Rows.Add(408, 0, 67, 125, 40, 30, 30, 58, 32); - table.Rows.Add(409, 0, 97, 165, 60, 65, 50, 58, 32); - table.Rows.Add(410, 0, 30, 42, 118, 42, 88, 30, 32); - table.Rows.Add(411, 0, 60, 52, 168, 47, 138, 30, 32); - table.Rows.Add(412, 2, 40, 29, 45, 29, 45, 36, 128); - table.Rows.Add(413, 2, 60, 59, 85, 79, 105, 36, 257); - table.Rows.Add(414, 2, 70, 94, 50, 94, 50, 66, 256); - table.Rows.Add(415, 3, 30, 30, 42, 30, 42, 70, 32); - table.Rows.Add(416, 3, 70, 80, 102, 80, 102, 40, 257); - table.Rows.Add(417, 2, 60, 45, 70, 45, 90, 95, 128); - table.Rows.Add(418, 2, 55, 65, 35, 60, 30, 85, 128); - table.Rows.Add(419, 2, 85, 105, 55, 85, 50, 115, 128); - table.Rows.Add(420, 2, 45, 35, 45, 62, 53, 35, 128); - table.Rows.Add(421, 2, 70, 60, 70, 87, 78, 85, 128); - table.Rows.Add(422, 2, 76, 48, 48, 57, 62, 34, 128); - table.Rows.Add(423, 2, 111, 83, 68, 92, 82, 39, 128); - table.Rows.Add(424, 1, 75, 100, 66, 60, 66, 115, 128); - table.Rows.Add(425, 5, 90, 50, 34, 60, 44, 70, 128); - table.Rows.Add(426, 5, 150, 80, 44, 90, 54, 80, 128); - table.Rows.Add(427, 2, 55, 66, 44, 44, 56, 85, 128); - table.Rows.Add(428, 2, 65, 76, 84, 54, 96, 105, 128); - table.Rows.Add(429, 1, 60, 60, 60, 105, 105, 105, 128); - table.Rows.Add(430, 3, 100, 125, 52, 105, 52, 71, 128); - table.Rows.Add(431, 1, 49, 55, 42, 42, 37, 85, 192); - table.Rows.Add(432, 1, 71, 82, 64, 64, 59, 112, 192); - table.Rows.Add(433, 1, 45, 30, 50, 65, 50, 45, 128); - table.Rows.Add(434, 2, 63, 63, 47, 41, 41, 74, 128); - table.Rows.Add(435, 2, 103, 93, 67, 71, 61, 84, 128); - table.Rows.Add(436, 2, 57, 24, 86, 24, 86, 23, 258); - table.Rows.Add(437, 2, 67, 89, 116, 79, 116, 33, 258); - table.Rows.Add(438, 2, 50, 80, 95, 10, 45, 10, 128); - table.Rows.Add(439, 2, 20, 25, 45, 70, 90, 60, 128); - table.Rows.Add(440, 1, 100, 5, 5, 15, 65, 30, 257); - table.Rows.Add(441, 3, 76, 65, 45, 92, 42, 91, 128); - table.Rows.Add(442, 2, 50, 92, 108, 92, 108, 35, 128); - table.Rows.Add(443, 4, 58, 70, 45, 40, 45, 42, 128); - table.Rows.Add(444, 4, 68, 90, 65, 50, 55, 82, 128); - table.Rows.Add(445, 4, 108, 130, 95, 80, 85, 102, 128); - table.Rows.Add(446, 4, 135, 85, 40, 40, 85, 5, 32); - table.Rows.Add(447, 3, 40, 70, 40, 35, 40, 60, 32); - table.Rows.Add(448, 3, 70, 110, 70, 115, 70, 90, 32); - table.Rows.Add(449, 4, 68, 72, 78, 38, 42, 32, 128); - table.Rows.Add(450, 4, 108, 112, 118, 68, 72, 47, 128); - table.Rows.Add(451, 4, 40, 50, 90, 30, 55, 65, 128); - table.Rows.Add(452, 4, 70, 90, 110, 60, 75, 95, 128); - table.Rows.Add(453, 2, 48, 61, 40, 61, 40, 50, 128); - table.Rows.Add(454, 2, 83, 106, 65, 86, 65, 85, 128); - table.Rows.Add(455, 4, 74, 100, 72, 90, 72, 46, 128); - table.Rows.Add(456, 0, 49, 49, 56, 49, 61, 66, 128); - table.Rows.Add(457, 0, 69, 69, 76, 69, 86, 91, 128); - table.Rows.Add(458, 4, 45, 20, 50, 60, 120, 50, 128); - table.Rows.Add(459, 4, 60, 62, 50, 62, 60, 40, 128); - table.Rows.Add(460, 4, 90, 92, 75, 92, 85, 60, 128); - table.Rows.Add(461, 3, 70, 120, 65, 45, 85, 125, 128); - table.Rows.Add(462, 2, 70, 70, 115, 130, 90, 60, 258); - table.Rows.Add(463, 2, 110, 85, 95, 80, 95, 50, 128); - table.Rows.Add(464, 4, 115, 140, 130, 55, 55, 40, 128); - table.Rows.Add(465, 2, 100, 100, 125, 110, 50, 50, 128); - table.Rows.Add(466, 2, 75, 123, 67, 95, 85, 95, 64); - table.Rows.Add(467, 2, 75, 95, 67, 125, 95, 83, 64); - table.Rows.Add(468, 1, 85, 50, 95, 120, 115, 80, 32); - table.Rows.Add(469, 2, 86, 76, 86, 116, 56, 95, 128); - table.Rows.Add(470, 2, 65, 110, 130, 60, 65, 95, 32); - table.Rows.Add(471, 2, 65, 60, 110, 130, 95, 65, 32); - table.Rows.Add(472, 3, 75, 95, 125, 45, 75, 95, 128); - table.Rows.Add(473, 4, 110, 130, 80, 70, 60, 80, 128); - table.Rows.Add(474, 2, 85, 80, 70, 135, 75, 90, 258); - table.Rows.Add(475, 4, 68, 125, 65, 65, 115, 80, 256); - table.Rows.Add(476, 2, 60, 55, 145, 75, 150, 40, 128); - table.Rows.Add(477, 1, 45, 100, 135, 65, 135, 45, 128); - table.Rows.Add(478, 2, 70, 80, 70, 80, 70, 110, 257); - table.Rows.Add(479, 2, 50, 65, 107, 105, 107, 86, 258); - table.Rows.Add(480, 4, 75, 75, 130, 75, 130, 95, 258); - table.Rows.Add(481, 4, 80, 105, 105, 105, 105, 80, 258); - table.Rows.Add(482, 4, 75, 125, 70, 125, 70, 115, 258); - table.Rows.Add(483, 4, 100, 120, 120, 150, 100, 90, 258); - table.Rows.Add(484, 4, 90, 120, 100, 150, 120, 100, 258); - table.Rows.Add(485, 4, 91, 90, 106, 130, 106, 77, 128); - table.Rows.Add(486, 4, 110, 160, 110, 80, 110, 100, 258); - table.Rows.Add(487, 4, 150, 100, 120, 100, 120, 90, 258); - table.Rows.Add(488, 4, 120, 70, 120, 75, 130, 85, 257); - table.Rows.Add(489, 4, 80, 80, 80, 80, 80, 80, 258); - table.Rows.Add(490, 4, 100, 100, 100, 100, 100, 100, 258); - table.Rows.Add(491, 4, 70, 90, 90, 135, 90, 125, 258); - table.Rows.Add(492, 3, 100, 100, 100, 100, 100, 100, 258); - table.Rows.Add(493, 4, 120, 120, 120, 120, 120, 120, 258); - table.Rows.Add(494, 4, 100, 100, 100, 100, 100, 100, 258); - table.Rows.Add(495, 3, 45, 45, 55, 45, 55, 63, 32); - table.Rows.Add(496, 3, 60, 60, 75, 60, 75, 83, 32); - table.Rows.Add(497, 3, 75, 75, 95, 75, 95, 113, 32); - table.Rows.Add(498, 3, 65, 63, 45, 45, 45, 45, 32); - table.Rows.Add(499, 3, 90, 93, 55, 70, 55, 55, 32); - table.Rows.Add(500, 3, 110, 123, 65, 100, 65, 65, 32); - table.Rows.Add(501, 3, 55, 55, 45, 63, 45, 45, 32); - table.Rows.Add(502, 3, 75, 75, 60, 83, 60, 60, 32); - table.Rows.Add(503, 3, 95, 100, 85, 108, 70, 70, 32); - table.Rows.Add(504, 2, 45, 55, 39, 35, 39, 42, 128); - table.Rows.Add(505, 2, 60, 85, 69, 60, 69, 77, 128); - table.Rows.Add(506, 3, 45, 60, 45, 25, 45, 55, 128); - table.Rows.Add(507, 3, 65, 80, 65, 35, 65, 60, 128); - table.Rows.Add(508, 3, 85, 110, 90, 45, 90, 80, 128); - table.Rows.Add(509, 2, 41, 50, 37, 50, 37, 66, 128); - table.Rows.Add(510, 2, 64, 88, 50, 88, 50, 106, 128); - table.Rows.Add(511, 2, 50, 53, 48, 53, 48, 64, 32); - table.Rows.Add(512, 2, 75, 98, 63, 98, 63, 101, 32); - table.Rows.Add(513, 2, 50, 53, 48, 53, 48, 64, 32); - table.Rows.Add(514, 2, 75, 98, 63, 98, 63, 101, 32); - table.Rows.Add(515, 2, 50, 53, 48, 53, 48, 64, 32); - table.Rows.Add(516, 2, 75, 98, 63, 98, 63, 101, 32); - table.Rows.Add(517, 1, 76, 25, 45, 67, 55, 24, 128); - table.Rows.Add(518, 1, 116, 55, 85, 107, 95, 29, 128); - table.Rows.Add(519, 3, 50, 55, 50, 36, 30, 43, 128); - table.Rows.Add(520, 3, 62, 77, 62, 50, 42, 65, 128); - table.Rows.Add(521, 3, 80, 115, 80, 65, 55, 93, 128); - table.Rows.Add(522, 2, 45, 60, 32, 50, 32, 76, 128); - table.Rows.Add(523, 2, 75, 100, 63, 80, 63, 116, 128); - table.Rows.Add(524, 3, 55, 75, 85, 25, 25, 15, 128); - table.Rows.Add(525, 3, 70, 105, 105, 50, 40, 20, 128); - table.Rows.Add(526, 3, 85, 135, 130, 60, 80, 25, 128); - table.Rows.Add(527, 2, 55, 45, 43, 55, 43, 72, 128); - table.Rows.Add(528, 2, 67, 57, 55, 77, 55, 114, 128); - table.Rows.Add(529, 2, 60, 85, 40, 30, 45, 68, 128); - table.Rows.Add(530, 2, 110, 135, 60, 50, 65, 88, 128); - table.Rows.Add(531, 1, 103, 60, 86, 60, 86, 50, 128); - table.Rows.Add(532, 3, 75, 80, 55, 25, 35, 35, 64); - table.Rows.Add(533, 3, 85, 105, 85, 40, 50, 40, 64); - table.Rows.Add(534, 3, 105, 140, 95, 55, 65, 45, 64); - table.Rows.Add(535, 3, 50, 50, 40, 50, 40, 64, 128); - table.Rows.Add(536, 3, 75, 65, 55, 65, 55, 69, 128); - table.Rows.Add(537, 3, 105, 95, 75, 85, 75, 74, 128); - table.Rows.Add(538, 2, 120, 100, 85, 30, 85, 45, 256); - table.Rows.Add(539, 2, 75, 125, 75, 30, 75, 85, 256); - table.Rows.Add(540, 3, 45, 53, 70, 40, 60, 42, 128); - table.Rows.Add(541, 3, 55, 63, 90, 50, 80, 42, 128); - table.Rows.Add(542, 3, 75, 103, 80, 70, 80, 92, 128); - table.Rows.Add(543, 3, 30, 45, 59, 30, 39, 57, 128); - table.Rows.Add(544, 3, 40, 55, 99, 40, 79, 47, 128); - table.Rows.Add(545, 3, 60, 100, 89, 55, 69, 112, 128); - table.Rows.Add(546, 2, 40, 27, 60, 37, 50, 66, 128); - table.Rows.Add(547, 2, 60, 67, 85, 77, 75, 116, 128); - table.Rows.Add(548, 2, 45, 35, 50, 70, 50, 30, 257); - table.Rows.Add(549, 2, 70, 60, 75, 110, 75, 90, 257); - table.Rows.Add(550, 2, 70, 92, 65, 80, 55, 98, 128); - table.Rows.Add(551, 3, 50, 72, 35, 35, 35, 65, 128); - table.Rows.Add(552, 3, 60, 82, 45, 45, 45, 74, 128); - table.Rows.Add(553, 3, 95, 117, 80, 65, 70, 92, 128); - table.Rows.Add(554, 3, 70, 90, 45, 15, 45, 50, 128); - table.Rows.Add(555, 3, 105, 140, 55, 30, 55, 95, 128); - table.Rows.Add(556, 2, 75, 86, 67, 106, 67, 60, 128); - table.Rows.Add(557, 2, 50, 65, 85, 35, 35, 55, 128); - table.Rows.Add(558, 2, 70, 95, 125, 65, 75, 45, 128); - table.Rows.Add(559, 2, 50, 75, 70, 35, 70, 48, 128); - table.Rows.Add(560, 2, 65, 90, 115, 45, 115, 58, 128); - table.Rows.Add(561, 2, 72, 58, 80, 103, 80, 97, 128); - table.Rows.Add(562, 2, 38, 30, 85, 55, 65, 30, 128); - table.Rows.Add(563, 2, 58, 50, 145, 95, 105, 30, 128); - table.Rows.Add(564, 2, 54, 78, 103, 53, 45, 22, 32); - table.Rows.Add(565, 2, 74, 108, 133, 83, 65, 32, 32); - table.Rows.Add(566, 2, 55, 112, 45, 74, 45, 70, 32); - table.Rows.Add(567, 2, 75, 140, 65, 112, 65, 110, 32); - table.Rows.Add(568, 2, 50, 50, 62, 40, 62, 65, 128); - table.Rows.Add(569, 2, 80, 95, 82, 60, 82, 75, 128); - table.Rows.Add(570, 3, 40, 65, 40, 80, 40, 65, 32); - table.Rows.Add(571, 3, 60, 105, 60, 120, 60, 105, 32); - table.Rows.Add(572, 1, 55, 50, 40, 40, 40, 75, 192); - table.Rows.Add(573, 1, 75, 95, 60, 65, 60, 115, 192); - table.Rows.Add(574, 3, 45, 30, 50, 55, 65, 45, 192); - table.Rows.Add(575, 3, 60, 45, 70, 75, 85, 55, 192); - table.Rows.Add(576, 3, 70, 55, 95, 95, 110, 65, 192); - table.Rows.Add(577, 3, 45, 30, 40, 105, 50, 20, 128); - table.Rows.Add(578, 3, 65, 40, 50, 125, 60, 30, 128); - table.Rows.Add(579, 3, 110, 65, 75, 125, 85, 30, 128); - table.Rows.Add(580, 2, 62, 44, 50, 44, 50, 55, 128); - table.Rows.Add(581, 2, 75, 87, 63, 87, 63, 98, 128); - table.Rows.Add(582, 4, 36, 50, 50, 65, 60, 44, 128); - table.Rows.Add(583, 4, 51, 65, 65, 80, 75, 59, 128); - table.Rows.Add(584, 4, 71, 95, 85, 110, 95, 79, 128); - table.Rows.Add(585, 2, 60, 60, 50, 40, 50, 75, 128); - table.Rows.Add(586, 2, 80, 100, 70, 60, 70, 95, 128); - table.Rows.Add(587, 2, 55, 75, 60, 75, 60, 103, 128); - table.Rows.Add(588, 2, 50, 75, 45, 40, 45, 60, 128); - table.Rows.Add(589, 2, 70, 135, 105, 60, 105, 20, 128); - table.Rows.Add(590, 2, 69, 55, 45, 55, 55, 15, 128); - table.Rows.Add(591, 2, 114, 85, 70, 85, 80, 30, 128); - table.Rows.Add(592, 2, 55, 40, 50, 65, 85, 40, 128); - table.Rows.Add(593, 2, 100, 60, 70, 85, 105, 60, 128); - table.Rows.Add(594, 1, 165, 75, 80, 40, 45, 65, 128); - table.Rows.Add(595, 2, 50, 47, 50, 57, 50, 65, 128); - table.Rows.Add(596, 2, 70, 77, 60, 97, 60, 108, 128); - table.Rows.Add(597, 2, 44, 50, 91, 24, 86, 10, 128); - table.Rows.Add(598, 2, 74, 94, 131, 54, 116, 20, 128); - table.Rows.Add(599, 3, 40, 55, 70, 45, 60, 30, 258); - table.Rows.Add(600, 3, 60, 80, 95, 70, 85, 50, 258); - table.Rows.Add(601, 3, 60, 100, 115, 70, 85, 90, 258); - table.Rows.Add(602, 4, 35, 55, 40, 45, 40, 60, 128); - table.Rows.Add(603, 4, 65, 85, 70, 75, 70, 40, 128); - table.Rows.Add(604, 4, 85, 115, 80, 105, 80, 50, 128); - table.Rows.Add(605, 2, 55, 55, 55, 85, 55, 30, 128); - table.Rows.Add(606, 2, 75, 75, 75, 125, 95, 40, 128); - table.Rows.Add(607, 3, 50, 30, 55, 65, 55, 20, 128); - table.Rows.Add(608, 3, 60, 40, 60, 95, 60, 55, 128); - table.Rows.Add(609, 3, 60, 55, 90, 145, 90, 80, 128); - table.Rows.Add(610, 4, 46, 87, 60, 30, 40, 57, 128); - table.Rows.Add(611, 4, 66, 117, 70, 40, 50, 67, 128); - table.Rows.Add(612, 4, 76, 147, 90, 60, 70, 97, 128); - table.Rows.Add(613, 2, 55, 70, 40, 60, 40, 40, 128); - table.Rows.Add(614, 2, 95, 110, 80, 70, 80, 50, 128); - table.Rows.Add(615, 2, 70, 50, 30, 95, 135, 105, 258); - table.Rows.Add(616, 2, 50, 40, 85, 40, 65, 25, 128); - table.Rows.Add(617, 2, 80, 70, 40, 100, 60, 145, 128); - table.Rows.Add(618, 2, 109, 66, 84, 81, 99, 32, 128); - table.Rows.Add(619, 3, 45, 85, 50, 55, 50, 65, 128); - table.Rows.Add(620, 3, 65, 125, 60, 95, 60, 105, 128); - table.Rows.Add(621, 2, 77, 120, 90, 60, 90, 48, 128); - table.Rows.Add(622, 2, 59, 74, 50, 35, 50, 35, 258); - table.Rows.Add(623, 2, 89, 124, 80, 55, 80, 55, 258); - table.Rows.Add(624, 2, 45, 85, 70, 40, 40, 60, 128); - table.Rows.Add(625, 2, 65, 125, 100, 60, 70, 70, 128); - table.Rows.Add(626, 2, 95, 110, 95, 40, 95, 55, 128); - table.Rows.Add(627, 4, 70, 83, 50, 37, 50, 60, 256); - table.Rows.Add(628, 4, 100, 123, 75, 57, 75, 80, 256); - table.Rows.Add(629, 4, 70, 55, 75, 45, 65, 60, 257); - table.Rows.Add(630, 4, 110, 65, 105, 55, 95, 80, 257); - table.Rows.Add(631, 2, 85, 97, 66, 105, 66, 65, 128); - table.Rows.Add(632, 2, 58, 109, 112, 48, 48, 109, 128); - table.Rows.Add(633, 4, 52, 65, 50, 45, 50, 38, 128); - table.Rows.Add(634, 4, 72, 85, 70, 65, 70, 58, 128); - table.Rows.Add(635, 4, 92, 105, 90, 125, 90, 98, 128); - table.Rows.Add(636, 4, 55, 85, 55, 50, 55, 60, 128); - table.Rows.Add(637, 4, 85, 60, 65, 135, 105, 100, 128); - table.Rows.Add(638, 4, 91, 90, 129, 90, 72, 108, 258); - table.Rows.Add(639, 4, 91, 129, 90, 72, 90, 108, 258); - table.Rows.Add(640, 4, 91, 90, 72, 90, 129, 108, 258); - table.Rows.Add(641, 4, 79, 115, 70, 125, 80, 111, 256); - table.Rows.Add(642, 4, 79, 115, 70, 125, 80, 111, 256); - table.Rows.Add(643, 4, 100, 120, 100, 150, 120, 90, 258); - table.Rows.Add(644, 4, 100, 150, 120, 120, 100, 90, 258); - table.Rows.Add(645, 4, 89, 125, 90, 115, 80, 101, 256); - table.Rows.Add(646, 4, 125, 130, 90, 130, 90, 95, 258); - table.Rows.Add(647, 4, 91, 72, 90, 129, 90, 108, 258); - table.Rows.Add(648, 4, 100, 77, 77, 128, 128, 90, 258); - table.Rows.Add(649, 4, 71, 120, 95, 120, 95, 99, 258); - table.Rows.Add(650, 3, 56, 61, 65, 48, 45, 33, 32); - table.Rows.Add(651, 3, 61, 78, 95, 56, 58, 57, 32); - table.Rows.Add(652, 3, 88, 107, 122, 74, 75, 64, 32); - table.Rows.Add(653, 3, 40, 45, 40, 62, 60, 60, 32); - table.Rows.Add(654, 3, 59, 59, 58, 90, 70, 73, 32); - table.Rows.Add(655, 3, 75, 69, 72, 114, 100, 104, 32); - table.Rows.Add(656, 3, 41, 56, 40, 62, 44, 71, 32); - table.Rows.Add(657, 3, 54, 63, 52, 83, 56, 97, 32); - table.Rows.Add(658, 3, 72, 95, 67, 103, 71, 122, 32); - table.Rows.Add(659, 2, 38, 36, 38, 32, 36, 57, 128); - table.Rows.Add(660, 2, 85, 56, 77, 50, 77, 78, 128); - table.Rows.Add(661, 3, 45, 50, 43, 40, 38, 62, 128); - table.Rows.Add(662, 3, 62, 73, 55, 56, 52, 84, 128); - table.Rows.Add(663, 3, 78, 81, 71, 74, 69, 126, 128); - table.Rows.Add(664, 2, 38, 35, 40, 27, 25, 35, 128); - table.Rows.Add(665, 2, 45, 22, 60, 27, 30, 29, 128); - table.Rows.Add(666, 2, 80, 52, 50, 90, 50, 89, 128); - table.Rows.Add(667, 3, 62, 50, 58, 73, 54, 72, 192); - table.Rows.Add(668, 3, 86, 68, 72, 109, 66, 106, 192); - table.Rows.Add(669, 2, 44, 38, 39, 61, 79, 42, 257); - table.Rows.Add(670, 2, 54, 45, 47, 75, 98, 52, 257); - table.Rows.Add(671, 2, 78, 65, 68, 112, 154, 75, 257); - table.Rows.Add(672, 2, 66, 65, 48, 62, 57, 52, 128); - table.Rows.Add(673, 2, 123, 100, 62, 97, 81, 68, 128); - table.Rows.Add(674, 2, 67, 82, 62, 46, 48, 43, 128); - table.Rows.Add(675, 2, 95, 124, 78, 69, 71, 58, 128); - table.Rows.Add(676, 2, 75, 80, 60, 65, 90, 102, 128); - table.Rows.Add(677, 2, 62, 48, 54, 63, 60, 68, 128); - table.Rows.Add(678, 2, 74, 48, 76, 83, 81, 104, 128); - table.Rows.Add(679, 2, 45, 80, 100, 35, 37, 28, 128); - table.Rows.Add(680, 2, 59, 110, 150, 45, 49, 35, 128); - table.Rows.Add(681, 2, 60, 50, 150, 50, 150, 60, 128); - table.Rows.Add(682, 2, 78, 52, 60, 63, 65, 23, 128); - table.Rows.Add(683, 2, 101, 72, 72, 99, 89, 29, 128); - table.Rows.Add(684, 2, 62, 48, 66, 59, 57, 49, 128); - table.Rows.Add(685, 2, 82, 80, 86, 85, 75, 72, 128); - table.Rows.Add(686, 2, 53, 54, 37, 46, 45, 45, 128); - table.Rows.Add(687, 2, 86, 92, 88, 68, 75, 73, 128); - table.Rows.Add(688, 2, 42, 52, 67, 39, 56, 50, 128); - table.Rows.Add(689, 2, 72, 105, 115, 54, 86, 68, 128); - table.Rows.Add(690, 2, 50, 60, 60, 60, 60, 30, 128); - table.Rows.Add(691, 2, 65, 75, 90, 97, 123, 44, 128); - table.Rows.Add(692, 4, 50, 53, 62, 58, 63, 44, 128); - table.Rows.Add(693, 4, 71, 73, 88, 120, 89, 59, 128); - table.Rows.Add(694, 2, 44, 38, 33, 61, 43, 70, 128); - table.Rows.Add(695, 2, 62, 55, 52, 109, 94, 109, 128); - table.Rows.Add(696, 2, 58, 89, 77, 45, 45, 48, 32); - table.Rows.Add(697, 2, 82, 121, 119, 69, 59, 71, 32); - table.Rows.Add(698, 2, 77, 59, 50, 67, 63, 46, 32); - table.Rows.Add(699, 2, 123, 77, 72, 99, 92, 58, 32); - table.Rows.Add(700, 2, 95, 65, 65, 110, 130, 60, 32); - table.Rows.Add(701, 2, 78, 92, 75, 74, 63, 118, 128); - table.Rows.Add(702, 2, 67, 58, 57, 81, 67, 101, 128); - table.Rows.Add(703, 4, 50, 50, 150, 50, 150, 50, 258); - table.Rows.Add(704, 4, 45, 50, 35, 55, 75, 40, 128); - table.Rows.Add(705, 4, 68, 75, 53, 83, 113, 60, 128); - table.Rows.Add(706, 4, 90, 100, 70, 110, 150, 80, 128); - table.Rows.Add(707, 1, 57, 80, 91, 80, 87, 75, 128); - table.Rows.Add(708, 2, 43, 70, 48, 50, 60, 38, 128); - table.Rows.Add(709, 2, 85, 110, 76, 65, 82, 56, 128); - table.Rows.Add(710, 2, 49, 66, 70, 44, 55, 51, 128); - table.Rows.Add(711, 2, 65, 90, 122, 58, 75, 84, 128); - table.Rows.Add(712, 2, 55, 69, 85, 32, 35, 28, 128); - table.Rows.Add(713, 2, 95, 117, 184, 44, 46, 28, 128); - table.Rows.Add(714, 2, 40, 30, 35, 45, 40, 55, 128); - table.Rows.Add(715, 2, 85, 70, 80, 97, 80, 123, 128); - table.Rows.Add(716, 4, 126, 131, 95, 131, 98, 99, 258); - table.Rows.Add(717, 4, 126, 131, 95, 131, 98, 99, 258); - table.Rows.Add(718, 4, 108, 100, 121, 81, 95, 95, 258); - table.Rows.Add(719, 4, 50, 100, 150, 100, 150, 50, 258); // Diancie - table.Rows.Add(720, 4, 80, 110, 60, 150, 130, 70, 258); // Hoopa - table.Rows.Add(721, 4, 80, 110, 120, 130, 90, 70, 258); // Volcanion - table.Rows.Add(722, 4, 100, 100, 100, 100, 100, 100, 258); - - return table; - } - public static DataTable Friendship() - { - DataTable table = new DataTable(); - table.Columns.Add("Species", typeof(int)); - table.Columns.Add("Friendship", typeof(byte)); - - table.Rows.Add(0, 0); - table.Rows.Add(1, 70); - table.Rows.Add(2, 70); - table.Rows.Add(3, 70); - table.Rows.Add(4, 70); - table.Rows.Add(5, 70); - table.Rows.Add(6, 70); - table.Rows.Add(7, 70); - table.Rows.Add(8, 70); - table.Rows.Add(9, 70); - table.Rows.Add(10, 70); - table.Rows.Add(11, 70); - table.Rows.Add(12, 70); - table.Rows.Add(13, 70); - table.Rows.Add(14, 70); - table.Rows.Add(15, 70); - table.Rows.Add(16, 70); - table.Rows.Add(17, 70); - table.Rows.Add(18, 70); - table.Rows.Add(19, 70); - table.Rows.Add(20, 70); - table.Rows.Add(21, 70); - table.Rows.Add(22, 70); - table.Rows.Add(23, 70); - table.Rows.Add(24, 70); - table.Rows.Add(25, 70); - table.Rows.Add(26, 70); - table.Rows.Add(27, 70); - table.Rows.Add(28, 70); - table.Rows.Add(29, 70); - table.Rows.Add(30, 70); - table.Rows.Add(31, 70); - table.Rows.Add(32, 70); - table.Rows.Add(33, 70); - table.Rows.Add(34, 70); - table.Rows.Add(35, 140); - table.Rows.Add(36, 140); - table.Rows.Add(37, 70); - table.Rows.Add(38, 70); - table.Rows.Add(39, 70); - table.Rows.Add(40, 70); - table.Rows.Add(41, 70); - table.Rows.Add(42, 70); - table.Rows.Add(43, 70); - table.Rows.Add(44, 70); - table.Rows.Add(45, 70); - table.Rows.Add(46, 70); - table.Rows.Add(47, 70); - table.Rows.Add(48, 70); - table.Rows.Add(49, 70); - table.Rows.Add(50, 70); - table.Rows.Add(51, 70); - table.Rows.Add(52, 70); - table.Rows.Add(53, 70); - table.Rows.Add(54, 70); - table.Rows.Add(55, 70); - table.Rows.Add(56, 70); - table.Rows.Add(57, 70); - table.Rows.Add(58, 70); - table.Rows.Add(59, 70); - table.Rows.Add(60, 70); - table.Rows.Add(61, 70); - table.Rows.Add(62, 70); - table.Rows.Add(63, 70); - table.Rows.Add(64, 70); - table.Rows.Add(65, 70); - table.Rows.Add(66, 70); - table.Rows.Add(67, 70); - table.Rows.Add(68, 70); - table.Rows.Add(69, 70); - table.Rows.Add(70, 70); - table.Rows.Add(71, 70); - table.Rows.Add(72, 70); - table.Rows.Add(73, 70); - table.Rows.Add(74, 70); - table.Rows.Add(75, 70); - table.Rows.Add(76, 70); - table.Rows.Add(77, 70); - table.Rows.Add(78, 70); - table.Rows.Add(79, 70); - table.Rows.Add(80, 70); - table.Rows.Add(81, 70); - table.Rows.Add(82, 70); - table.Rows.Add(83, 70); - table.Rows.Add(84, 70); - table.Rows.Add(85, 70); - table.Rows.Add(86, 70); - table.Rows.Add(87, 70); - table.Rows.Add(88, 70); - table.Rows.Add(89, 70); - table.Rows.Add(90, 70); - table.Rows.Add(91, 70); - table.Rows.Add(92, 70); - table.Rows.Add(93, 70); - table.Rows.Add(94, 70); - table.Rows.Add(95, 70); - table.Rows.Add(96, 70); - table.Rows.Add(97, 70); - table.Rows.Add(98, 70); - table.Rows.Add(99, 70); - table.Rows.Add(100, 70); - table.Rows.Add(101, 70); - table.Rows.Add(102, 70); - table.Rows.Add(103, 70); - table.Rows.Add(104, 70); - table.Rows.Add(105, 70); - table.Rows.Add(106, 70); - table.Rows.Add(107, 70); - table.Rows.Add(108, 70); - table.Rows.Add(109, 70); - table.Rows.Add(110, 70); - table.Rows.Add(111, 70); - table.Rows.Add(112, 70); - table.Rows.Add(113, 140); - table.Rows.Add(114, 70); - table.Rows.Add(115, 70); - table.Rows.Add(116, 70); - table.Rows.Add(117, 70); - table.Rows.Add(118, 70); - table.Rows.Add(119, 70); - table.Rows.Add(120, 70); - table.Rows.Add(121, 70); - table.Rows.Add(122, 70); - table.Rows.Add(123, 70); - table.Rows.Add(124, 70); - table.Rows.Add(125, 70); - table.Rows.Add(126, 70); - table.Rows.Add(127, 70); - table.Rows.Add(128, 70); - table.Rows.Add(129, 70); - table.Rows.Add(130, 70); - table.Rows.Add(131, 70); - table.Rows.Add(132, 70); - table.Rows.Add(133, 70); - table.Rows.Add(134, 70); - table.Rows.Add(135, 70); - table.Rows.Add(136, 70); - table.Rows.Add(137, 70); - table.Rows.Add(138, 70); - table.Rows.Add(139, 70); - table.Rows.Add(140, 70); - table.Rows.Add(141, 70); - table.Rows.Add(142, 70); - table.Rows.Add(143, 70); - table.Rows.Add(144, 35); - table.Rows.Add(145, 35); - table.Rows.Add(146, 35); - table.Rows.Add(147, 35); - table.Rows.Add(148, 35); - table.Rows.Add(149, 35); - table.Rows.Add(150, 0); - table.Rows.Add(151, 100); - table.Rows.Add(152, 70); - table.Rows.Add(153, 70); - table.Rows.Add(154, 70); - table.Rows.Add(155, 70); - table.Rows.Add(156, 70); - table.Rows.Add(157, 70); - table.Rows.Add(158, 70); - table.Rows.Add(159, 70); - table.Rows.Add(160, 70); - table.Rows.Add(161, 70); - table.Rows.Add(162, 70); - table.Rows.Add(163, 70); - table.Rows.Add(164, 70); - table.Rows.Add(165, 70); - table.Rows.Add(166, 70); - table.Rows.Add(167, 70); - table.Rows.Add(168, 70); - table.Rows.Add(169, 70); - table.Rows.Add(170, 70); - table.Rows.Add(171, 70); - table.Rows.Add(172, 70); - table.Rows.Add(173, 140); - table.Rows.Add(174, 70); - table.Rows.Add(175, 70); - table.Rows.Add(176, 70); - table.Rows.Add(177, 70); - table.Rows.Add(178, 70); - table.Rows.Add(179, 70); - table.Rows.Add(180, 70); - table.Rows.Add(181, 70); - table.Rows.Add(182, 70); - table.Rows.Add(183, 70); - table.Rows.Add(184, 70); - table.Rows.Add(185, 70); - table.Rows.Add(186, 70); - table.Rows.Add(187, 70); - table.Rows.Add(188, 70); - table.Rows.Add(189, 70); - table.Rows.Add(190, 70); - table.Rows.Add(191, 70); - table.Rows.Add(192, 70); - table.Rows.Add(193, 70); - table.Rows.Add(194, 70); - table.Rows.Add(195, 70); - table.Rows.Add(196, 70); - table.Rows.Add(197, 35); - table.Rows.Add(198, 35); - table.Rows.Add(199, 70); - table.Rows.Add(200, 35); - table.Rows.Add(201, 70); - table.Rows.Add(202, 70); - table.Rows.Add(203, 70); - table.Rows.Add(204, 70); - table.Rows.Add(205, 70); - table.Rows.Add(206, 70); - table.Rows.Add(207, 70); - table.Rows.Add(208, 70); - table.Rows.Add(209, 70); - table.Rows.Add(210, 70); - table.Rows.Add(211, 70); - table.Rows.Add(212, 70); - table.Rows.Add(213, 70); - table.Rows.Add(214, 70); - table.Rows.Add(215, 35); - table.Rows.Add(216, 70); - table.Rows.Add(217, 70); - table.Rows.Add(218, 70); - table.Rows.Add(219, 70); - table.Rows.Add(220, 70); - table.Rows.Add(221, 70); - table.Rows.Add(222, 70); - table.Rows.Add(223, 70); - table.Rows.Add(224, 70); - table.Rows.Add(225, 70); - table.Rows.Add(226, 70); - table.Rows.Add(227, 70); - table.Rows.Add(228, 35); - table.Rows.Add(229, 35); - table.Rows.Add(230, 70); - table.Rows.Add(231, 70); - table.Rows.Add(232, 70); - table.Rows.Add(233, 70); - table.Rows.Add(234, 70); - table.Rows.Add(235, 70); - table.Rows.Add(236, 70); - table.Rows.Add(237, 70); - table.Rows.Add(238, 70); - table.Rows.Add(239, 70); - table.Rows.Add(240, 70); - table.Rows.Add(241, 70); - table.Rows.Add(242, 140); - table.Rows.Add(243, 35); - table.Rows.Add(244, 35); - table.Rows.Add(245, 35); - table.Rows.Add(246, 35); - table.Rows.Add(247, 35); - table.Rows.Add(248, 35); - table.Rows.Add(249, 0); - table.Rows.Add(250, 0); - table.Rows.Add(251, 100); - table.Rows.Add(252, 70); - table.Rows.Add(253, 70); - table.Rows.Add(254, 70); - table.Rows.Add(255, 70); - table.Rows.Add(256, 70); - table.Rows.Add(257, 70); - table.Rows.Add(258, 70); - table.Rows.Add(259, 70); - table.Rows.Add(260, 70); - table.Rows.Add(261, 70); - table.Rows.Add(262, 70); - table.Rows.Add(263, 70); - table.Rows.Add(264, 70); - table.Rows.Add(265, 70); - table.Rows.Add(266, 70); - table.Rows.Add(267, 70); - table.Rows.Add(268, 70); - table.Rows.Add(269, 70); - table.Rows.Add(270, 70); - table.Rows.Add(271, 70); - table.Rows.Add(272, 70); - table.Rows.Add(273, 70); - table.Rows.Add(274, 70); - table.Rows.Add(275, 70); - table.Rows.Add(276, 70); - table.Rows.Add(277, 70); - table.Rows.Add(278, 70); - table.Rows.Add(279, 70); - table.Rows.Add(280, 35); - table.Rows.Add(281, 35); - table.Rows.Add(282, 35); - table.Rows.Add(283, 70); - table.Rows.Add(284, 70); - table.Rows.Add(285, 70); - table.Rows.Add(286, 70); - table.Rows.Add(287, 70); - table.Rows.Add(288, 70); - table.Rows.Add(289, 70); - table.Rows.Add(290, 70); - table.Rows.Add(291, 70); - table.Rows.Add(292, 70); - table.Rows.Add(293, 70); - table.Rows.Add(294, 70); - table.Rows.Add(295, 70); - table.Rows.Add(296, 70); - table.Rows.Add(297, 70); - table.Rows.Add(298, 70); - table.Rows.Add(299, 70); - table.Rows.Add(300, 70); - table.Rows.Add(301, 70); - table.Rows.Add(302, 35); - table.Rows.Add(303, 70); - table.Rows.Add(304, 35); - table.Rows.Add(305, 35); - table.Rows.Add(306, 35); - table.Rows.Add(307, 70); - table.Rows.Add(308, 70); - table.Rows.Add(309, 70); - table.Rows.Add(310, 70); - table.Rows.Add(311, 70); - table.Rows.Add(312, 70); - table.Rows.Add(313, 70); - table.Rows.Add(314, 70); - table.Rows.Add(315, 70); - table.Rows.Add(316, 70); - table.Rows.Add(317, 70); - table.Rows.Add(318, 35); - table.Rows.Add(319, 35); - table.Rows.Add(320, 70); - table.Rows.Add(321, 70); - table.Rows.Add(322, 70); - table.Rows.Add(323, 70); - table.Rows.Add(324, 70); - table.Rows.Add(325, 70); - table.Rows.Add(326, 70); - table.Rows.Add(327, 70); - table.Rows.Add(328, 70); - table.Rows.Add(329, 70); - table.Rows.Add(330, 70); - table.Rows.Add(331, 35); - table.Rows.Add(332, 35); - table.Rows.Add(333, 70); - table.Rows.Add(334, 70); - table.Rows.Add(335, 70); - table.Rows.Add(336, 70); - table.Rows.Add(337, 70); - table.Rows.Add(338, 70); - table.Rows.Add(339, 70); - table.Rows.Add(340, 70); - table.Rows.Add(341, 70); - table.Rows.Add(342, 70); - table.Rows.Add(343, 70); - table.Rows.Add(344, 70); - table.Rows.Add(345, 70); - table.Rows.Add(346, 70); - table.Rows.Add(347, 70); - table.Rows.Add(348, 70); - table.Rows.Add(349, 70); - table.Rows.Add(350, 70); - table.Rows.Add(351, 70); - table.Rows.Add(352, 70); - table.Rows.Add(353, 35); - table.Rows.Add(354, 35); - table.Rows.Add(355, 35); - table.Rows.Add(356, 35); - table.Rows.Add(357, 70); - table.Rows.Add(358, 70); - table.Rows.Add(359, 35); - table.Rows.Add(360, 70); - table.Rows.Add(361, 70); - table.Rows.Add(362, 70); - table.Rows.Add(363, 70); - table.Rows.Add(364, 70); - table.Rows.Add(365, 70); - table.Rows.Add(366, 70); - table.Rows.Add(367, 70); - table.Rows.Add(368, 70); - table.Rows.Add(369, 70); - table.Rows.Add(370, 70); - table.Rows.Add(371, 35); - table.Rows.Add(372, 35); - table.Rows.Add(373, 35); - table.Rows.Add(374, 35); - table.Rows.Add(375, 35); - table.Rows.Add(376, 35); - table.Rows.Add(377, 35); - table.Rows.Add(378, 35); - table.Rows.Add(379, 35); - table.Rows.Add(380, 90); - table.Rows.Add(381, 90); - table.Rows.Add(382, 0); - table.Rows.Add(383, 0); - table.Rows.Add(384, 0); - table.Rows.Add(385, 100); - table.Rows.Add(386, 0); - table.Rows.Add(387, 70); - table.Rows.Add(388, 70); - table.Rows.Add(389, 70); - table.Rows.Add(390, 70); - table.Rows.Add(391, 70); - table.Rows.Add(392, 70); - table.Rows.Add(393, 70); - table.Rows.Add(394, 70); - table.Rows.Add(395, 70); - table.Rows.Add(396, 70); - table.Rows.Add(397, 70); - table.Rows.Add(398, 70); - table.Rows.Add(399, 70); - table.Rows.Add(400, 70); - table.Rows.Add(401, 70); - table.Rows.Add(402, 70); - table.Rows.Add(403, 70); - table.Rows.Add(404, 100); - table.Rows.Add(405, 70); - table.Rows.Add(406, 70); - table.Rows.Add(407, 70); - table.Rows.Add(408, 70); - table.Rows.Add(409, 70); - table.Rows.Add(410, 70); - table.Rows.Add(411, 70); - table.Rows.Add(412, 70); - table.Rows.Add(413, 70); - table.Rows.Add(414, 70); - table.Rows.Add(415, 70); - table.Rows.Add(416, 70); - table.Rows.Add(417, 100); - table.Rows.Add(418, 70); - table.Rows.Add(419, 70); - table.Rows.Add(420, 70); - table.Rows.Add(421, 70); - table.Rows.Add(422, 70); - table.Rows.Add(423, 70); - table.Rows.Add(424, 100); - table.Rows.Add(425, 70); - table.Rows.Add(426, 70); - table.Rows.Add(427, 0); - table.Rows.Add(428, 140); - table.Rows.Add(429, 35); - table.Rows.Add(430, 35); - table.Rows.Add(431, 70); - table.Rows.Add(432, 70); - table.Rows.Add(433, 70); - table.Rows.Add(434, 70); - table.Rows.Add(435, 70); - table.Rows.Add(436, 70); - table.Rows.Add(437, 70); - table.Rows.Add(438, 70); - table.Rows.Add(439, 70); - table.Rows.Add(440, 140); - table.Rows.Add(441, 35); - table.Rows.Add(442, 70); - table.Rows.Add(443, 70); - table.Rows.Add(444, 70); - table.Rows.Add(445, 70); - table.Rows.Add(446, 70); - table.Rows.Add(447, 70); - table.Rows.Add(448, 70); - table.Rows.Add(449, 70); - table.Rows.Add(450, 70); - table.Rows.Add(451, 70); - table.Rows.Add(452, 70); - table.Rows.Add(453, 100); - table.Rows.Add(454, 70); - table.Rows.Add(455, 70); - table.Rows.Add(456, 70); - table.Rows.Add(457, 70); - table.Rows.Add(458, 70); - table.Rows.Add(459, 70); - table.Rows.Add(460, 70); - table.Rows.Add(461, 35); - table.Rows.Add(462, 70); - table.Rows.Add(463, 70); - table.Rows.Add(464, 70); - table.Rows.Add(465, 70); - table.Rows.Add(466, 70); - table.Rows.Add(467, 70); - table.Rows.Add(468, 70); - table.Rows.Add(469, 70); - table.Rows.Add(470, 35); - table.Rows.Add(471, 35); - table.Rows.Add(472, 70); - table.Rows.Add(473, 70); - table.Rows.Add(474, 70); - table.Rows.Add(475, 35); - table.Rows.Add(476, 70); - table.Rows.Add(477, 35); - table.Rows.Add(478, 70); - table.Rows.Add(479, 70); - table.Rows.Add(480, 140); - table.Rows.Add(481, 140); - table.Rows.Add(482, 140); - table.Rows.Add(483, 0); - table.Rows.Add(484, 0); - table.Rows.Add(485, 100); - table.Rows.Add(486, 0); - table.Rows.Add(487, 0); - table.Rows.Add(488, 100); - table.Rows.Add(489, 70); - table.Rows.Add(490, 70); - table.Rows.Add(491, 0); - table.Rows.Add(492, 100); - table.Rows.Add(493, 0); - table.Rows.Add(494, 100); - table.Rows.Add(495, 70); - table.Rows.Add(496, 70); - table.Rows.Add(497, 70); - table.Rows.Add(498, 70); - table.Rows.Add(499, 70); - table.Rows.Add(500, 70); - table.Rows.Add(501, 70); - table.Rows.Add(502, 70); - table.Rows.Add(503, 70); - table.Rows.Add(504, 70); - table.Rows.Add(505, 70); - table.Rows.Add(506, 70); - table.Rows.Add(507, 70); - table.Rows.Add(508, 70); - table.Rows.Add(509, 70); - table.Rows.Add(510, 70); - table.Rows.Add(511, 70); - table.Rows.Add(512, 70); - table.Rows.Add(513, 70); - table.Rows.Add(514, 70); - table.Rows.Add(515, 70); - table.Rows.Add(516, 70); - table.Rows.Add(517, 70); - table.Rows.Add(518, 70); - table.Rows.Add(519, 70); - table.Rows.Add(520, 70); - table.Rows.Add(521, 70); - table.Rows.Add(522, 70); - table.Rows.Add(523, 70); - table.Rows.Add(524, 70); - table.Rows.Add(525, 70); - table.Rows.Add(526, 70); - table.Rows.Add(527, 70); - table.Rows.Add(528, 70); - table.Rows.Add(529, 70); - table.Rows.Add(530, 70); - table.Rows.Add(531, 70); - table.Rows.Add(532, 70); - table.Rows.Add(533, 70); - table.Rows.Add(534, 70); - table.Rows.Add(535, 70); - table.Rows.Add(536, 70); - table.Rows.Add(537, 70); - table.Rows.Add(538, 70); - table.Rows.Add(539, 70); - table.Rows.Add(540, 70); - table.Rows.Add(541, 70); - table.Rows.Add(542, 70); - table.Rows.Add(543, 70); - table.Rows.Add(544, 70); - table.Rows.Add(545, 70); - table.Rows.Add(546, 70); - table.Rows.Add(547, 70); - table.Rows.Add(548, 70); - table.Rows.Add(549, 70); - table.Rows.Add(550, 70); - table.Rows.Add(551, 70); - table.Rows.Add(552, 70); - table.Rows.Add(553, 70); - table.Rows.Add(554, 70); - table.Rows.Add(555, 70); - table.Rows.Add(556, 70); - table.Rows.Add(557, 70); - table.Rows.Add(558, 70); - table.Rows.Add(559, 35); - table.Rows.Add(560, 70); - table.Rows.Add(561, 70); - table.Rows.Add(562, 70); - table.Rows.Add(563, 70); - table.Rows.Add(564, 70); - table.Rows.Add(565, 70); - table.Rows.Add(566, 70); - table.Rows.Add(567, 70); - table.Rows.Add(568, 70); - table.Rows.Add(569, 70); - table.Rows.Add(570, 70); - table.Rows.Add(571, 70); - table.Rows.Add(572, 70); - table.Rows.Add(573, 70); - table.Rows.Add(574, 70); - table.Rows.Add(575, 70); - table.Rows.Add(576, 70); - table.Rows.Add(577, 70); - table.Rows.Add(578, 70); - table.Rows.Add(579, 70); - table.Rows.Add(580, 70); - table.Rows.Add(581, 70); - table.Rows.Add(582, 70); - table.Rows.Add(583, 70); - table.Rows.Add(584, 70); - table.Rows.Add(585, 70); - table.Rows.Add(586, 70); - table.Rows.Add(587, 70); - table.Rows.Add(588, 70); - table.Rows.Add(589, 70); - table.Rows.Add(590, 70); - table.Rows.Add(591, 70); - table.Rows.Add(592, 70); - table.Rows.Add(593, 70); - table.Rows.Add(594, 70); - table.Rows.Add(595, 70); - table.Rows.Add(596, 70); - table.Rows.Add(597, 70); - table.Rows.Add(598, 70); - table.Rows.Add(599, 70); - table.Rows.Add(600, 70); - table.Rows.Add(601, 70); - table.Rows.Add(602, 70); - table.Rows.Add(603, 70); - table.Rows.Add(604, 70); - table.Rows.Add(605, 70); - table.Rows.Add(606, 70); - table.Rows.Add(607, 70); - table.Rows.Add(608, 70); - table.Rows.Add(609, 70); - table.Rows.Add(610, 35); - table.Rows.Add(611, 35); - table.Rows.Add(612, 35); - table.Rows.Add(613, 70); - table.Rows.Add(614, 70); - table.Rows.Add(615, 70); - table.Rows.Add(616, 70); - table.Rows.Add(617, 70); - table.Rows.Add(618, 70); - table.Rows.Add(619, 70); - table.Rows.Add(620, 70); - table.Rows.Add(621, 70); - table.Rows.Add(622, 70); - table.Rows.Add(623, 70); - table.Rows.Add(624, 35); - table.Rows.Add(625, 35); - table.Rows.Add(626, 70); - table.Rows.Add(627, 70); - table.Rows.Add(628, 70); - table.Rows.Add(629, 35); - table.Rows.Add(630, 35); - table.Rows.Add(631, 70); - table.Rows.Add(632, 70); - table.Rows.Add(633, 35); - table.Rows.Add(634, 35); - table.Rows.Add(635, 35); - table.Rows.Add(636, 70); - table.Rows.Add(637, 70); - table.Rows.Add(638, 35); - table.Rows.Add(639, 35); - table.Rows.Add(640, 35); - table.Rows.Add(641, 90); - table.Rows.Add(642, 90); - table.Rows.Add(643, 0); - table.Rows.Add(644, 0); - table.Rows.Add(645, 90); - table.Rows.Add(646, 0); - table.Rows.Add(647, 35); - table.Rows.Add(648, 100); - table.Rows.Add(649, 0); - table.Rows.Add(650, 70); - table.Rows.Add(651, 70); - table.Rows.Add(652, 70); - table.Rows.Add(653, 70); - table.Rows.Add(654, 70); - table.Rows.Add(655, 70); - table.Rows.Add(656, 70); - table.Rows.Add(657, 70); - table.Rows.Add(658, 70); - table.Rows.Add(659, 70); - table.Rows.Add(660, 70); - table.Rows.Add(661, 70); - table.Rows.Add(662, 70); - table.Rows.Add(663, 70); - table.Rows.Add(664, 70); - table.Rows.Add(665, 70); - table.Rows.Add(666, 70); - table.Rows.Add(667, 70); - table.Rows.Add(668, 70); - table.Rows.Add(669, 70); - table.Rows.Add(670, 70); - table.Rows.Add(671, 70); - table.Rows.Add(672, 70); - table.Rows.Add(673, 70); - table.Rows.Add(674, 70); - table.Rows.Add(675, 70); - table.Rows.Add(676, 70); - table.Rows.Add(677, 70); - table.Rows.Add(678, 70); - table.Rows.Add(679, 70); - table.Rows.Add(680, 70); - table.Rows.Add(681, 70); - table.Rows.Add(682, 70); - table.Rows.Add(683, 70); - table.Rows.Add(684, 70); - table.Rows.Add(685, 70); - table.Rows.Add(686, 70); - table.Rows.Add(687, 70); - table.Rows.Add(688, 70); - table.Rows.Add(689, 70); - table.Rows.Add(690, 70); - table.Rows.Add(691, 70); - table.Rows.Add(692, 70); - table.Rows.Add(693, 70); - table.Rows.Add(694, 70); - table.Rows.Add(695, 70); - table.Rows.Add(696, 70); - table.Rows.Add(697, 70); - table.Rows.Add(698, 70); - table.Rows.Add(699, 70); - table.Rows.Add(700, 70); - table.Rows.Add(701, 70); - table.Rows.Add(702, 70); - table.Rows.Add(703, 70); - table.Rows.Add(704, 35); - table.Rows.Add(705, 35); - table.Rows.Add(706, 35); - table.Rows.Add(707, 70); - table.Rows.Add(708, 70); - table.Rows.Add(709, 70); - table.Rows.Add(710, 70); - table.Rows.Add(711, 70); - table.Rows.Add(712, 70); - table.Rows.Add(713, 70); - table.Rows.Add(714, 70); - table.Rows.Add(715, 70); - table.Rows.Add(716, 0); - table.Rows.Add(717, 0); - table.Rows.Add(718, 0); - table.Rows.Add(719, 70); - table.Rows.Add(720, 100); - table.Rows.Add(721, 100); - table.Rows.Add(722, 0); - - return table; - } public static DataTable MovePPTable() { DataTable table = new DataTable(); @@ -2241,6 +770,8 @@ namespace PKHeX return table; } + public static PersonalParser PersonalGetter = new PersonalParser(); + // Stat Fetching public static int getMovePP(int move, int ppup) { @@ -2268,17 +799,18 @@ namespace PKHeX } public static byte getBaseFriendship(int species) { - return ((byte)PKX.Friendship().Rows[species][1]); + PersonalParser.Personal Mon = PersonalGetter.GetPersonal(species); + return Mon.BaseFriendship; } public static int getLevel(int species, ref uint exp) { if (exp == 0) { return 1; } int tl = 1; // Initial Level - DataTable spectable = PKX.SpeciesTable(); + PersonalParser.Personal MonData = PersonalGetter.GetPersonal(species); DataTable table = PKX.ExpTable(); - int growth = (int)spectable.Rows[species][1]; + int growth = MonData.EXPGrowth; if ((uint)table.Rows[tl][growth + 1] < exp) { @@ -2306,10 +838,10 @@ namespace PKHeX return 0; if (level > 100) level = 100; - DataTable spectable = PKX.SpeciesTable(); - int growth = (int)spectable.Rows[species][1]; + PersonalParser.Personal MonData = PersonalGetter.GetPersonal(species); + int growth = MonData.EXPGrowth; - uint exp = (uint)PKX.ExpTable().Rows[level][growth+1]; + uint exp = (uint)PKX.ExpTable().Rows[level][growth + 1]; return exp; } public static int[] getAbilities(int species, int formnum) @@ -2399,96 +931,14 @@ namespace PKHeX int HP_EV, int ATK_EV, int DEF_EV, int SPA_EV, int SPD_EV, int SPE_EV, int HP_IV, int ATK_IV, int DEF_IV, int SPA_IV, int SPD_IV, int SPE_IV) { - DataTable spectable = SpeciesTable(); - int HP_B = (int)spectable.Rows[species][2]; - int ATK_B = (int)spectable.Rows[species][3]; - int DEF_B = (int)spectable.Rows[species][4]; - int SPA_B = (int)spectable.Rows[species][5]; - int SPD_B = (int)spectable.Rows[species][6]; - int SPE_B = (int)spectable.Rows[species][7]; + PersonalParser.Personal MonData = PersonalGetter.GetPersonal(species, form); + int HP_B = MonData.BaseStats[0]; + int ATK_B = MonData.BaseStats[1]; + int DEF_B = MonData.BaseStats[2]; + int SPE_B = MonData.BaseStats[3]; + int SPA_B = MonData.BaseStats[4]; + int SPD_B = MonData.BaseStats[5]; - // Form Stat Recalculation - if (form != 0) - { - if ((form == 1) && (species == 3)) { HP_B = 80; ATK_B = 100; DEF_B = 123; SPA_B = 122; SPD_B = 120; SPE_B = 80; } - else if ((form == 1) && (species == 6)) { HP_B = 78; ATK_B = 130; DEF_B = 111; SPA_B = 130; SPD_B = 85; SPE_B = 100; } - else if ((form == 2) && (species == 6)) { HP_B = 78; ATK_B = 104; DEF_B = 78; SPA_B = 159; SPD_B = 115; SPE_B = 100; } - else if ((form == 1) && (species == 9)) { HP_B = 79; ATK_B = 103; DEF_B = 120; SPA_B = 135; SPD_B = 115; SPE_B = 78; } - else if ((form == 1) && (species == 65)) { HP_B = 55; ATK_B = 50; DEF_B = 65; SPA_B = 175; SPD_B = 95; SPE_B = 150; } - else if ((form == 1) && (species == 94)) { HP_B = 60; ATK_B = 65; DEF_B = 80; SPA_B = 170; SPD_B = 95; SPE_B = 130; } - else if ((form == 1) && (species == 115)) { HP_B = 105; ATK_B = 125; DEF_B = 100; SPA_B = 60; SPD_B = 100; SPE_B = 100; } - else if ((form == 1) && (species == 127)) { HP_B = 65; ATK_B = 155; DEF_B = 120; SPA_B = 65; SPD_B = 90; SPE_B = 105; } - else if ((form == 1) && (species == 130)) { HP_B = 95; ATK_B = 155; DEF_B = 109; SPA_B = 70; SPD_B = 130; SPE_B = 81; } - else if ((form == 1) && (species == 142)) { HP_B = 80; ATK_B = 135; DEF_B = 85; SPA_B = 70; SPD_B = 95; SPE_B = 150; } - else if ((form == 1) && (species == 150)) { HP_B = 106; ATK_B = 190; DEF_B = 100; SPA_B = 154; SPD_B = 100; SPE_B = 130; } - else if ((form == 2) && (species == 150)) { HP_B = 106; ATK_B = 150; DEF_B = 70; SPA_B = 194; SPD_B = 120; SPE_B = 140; } - else if ((form == 1) && (species == 181)) { HP_B = 90; ATK_B = 95; DEF_B = 105; SPA_B = 165; SPD_B = 110; SPE_B = 45; } - else if ((form == 1) && (species == 212)) { HP_B = 70; ATK_B = 150; DEF_B = 140; SPA_B = 65; SPD_B = 100; SPE_B = 75; } - else if ((form == 1) && (species == 214)) { HP_B = 80; ATK_B = 185; DEF_B = 115; SPA_B = 40; SPD_B = 105; SPE_B = 75; } - else if ((form == 1) && (species == 229)) { HP_B = 75; ATK_B = 90; DEF_B = 90; SPA_B = 140; SPD_B = 90; SPE_B = 115; } - else if ((form == 1) && (species == 248)) { HP_B = 100; ATK_B = 164; DEF_B = 150; SPA_B = 95; SPD_B = 120; SPE_B = 71; } - else if ((form == 1) && (species == 257)) { HP_B = 80; ATK_B = 160; DEF_B = 80; SPA_B = 130; SPD_B = 80; SPE_B = 100; } - else if ((form == 1) && (species == 282)) { HP_B = 68; ATK_B = 85; DEF_B = 65; SPA_B = 165; SPD_B = 135; SPE_B = 100; } - else if ((form == 1) && (species == 303)) { HP_B = 50; ATK_B = 105; DEF_B = 125; SPA_B = 55; SPD_B = 95; SPE_B = 50; } - else if ((form == 1) && (species == 306)) { HP_B = 70; ATK_B = 140; DEF_B = 230; SPA_B = 60; SPD_B = 80; SPE_B = 50; } - else if ((form == 1) && (species == 308)) { HP_B = 60; ATK_B = 100; DEF_B = 85; SPA_B = 80; SPD_B = 85; SPE_B = 100; } - else if ((form == 1) && (species == 310)) { HP_B = 70; ATK_B = 75; DEF_B = 80; SPA_B = 135; SPD_B = 80; SPE_B = 135; } - else if ((form == 1) && (species == 354)) { HP_B = 64; ATK_B = 165; DEF_B = 75; SPA_B = 93; SPD_B = 83; SPE_B = 75; } - else if ((form == 1) && (species == 359)) { HP_B = 65; ATK_B = 150; DEF_B = 60; SPA_B = 115; SPD_B = 60; SPE_B = 115; } - else if ((form == 1) && (species == 380)) { HP_B = 80; ATK_B = 100; DEF_B = 120; SPA_B = 140; SPD_B = 150; SPE_B = 110; } - else if ((form == 1) && (species == 381)) { HP_B = 80; ATK_B = 130; DEF_B = 100; SPA_B = 160; SPD_B = 120; SPE_B = 110; } - else if ((form == 1) && (species == 386)) { HP_B = 50; ATK_B = 180; DEF_B = 20; SPA_B = 180; SPD_B = 20; SPE_B = 150; } - else if ((form == 2) && (species == 386)) { HP_B = 50; ATK_B = 70; DEF_B = 160; SPA_B = 70; SPD_B = 160; SPE_B = 90; } - else if ((form == 3) && (species == 386)) { HP_B = 50; ATK_B = 95; DEF_B = 90; SPA_B = 95; SPD_B = 90; SPE_B = 180; } - else if ((form == 1) && (species == 413)) { HP_B = 60; ATK_B = 79; DEF_B = 105; SPA_B = 59; SPD_B = 85; SPE_B = 36; } - else if ((form == 2) && (species == 413)) { HP_B = 60; ATK_B = 69; DEF_B = 95; SPA_B = 69; SPD_B = 95; SPE_B = 36; } - else if ((form == 1) && (species == 445)) { HP_B = 108; ATK_B = 170; DEF_B = 115; SPA_B = 120; SPD_B = 95; SPE_B = 92; } - else if ((form == 1) && (species == 448)) { HP_B = 70; ATK_B = 145; DEF_B = 88; SPA_B = 140; SPD_B = 70; SPE_B = 112; } - else if ((form == 1) && (species == 460)) { HP_B = 90; ATK_B = 132; DEF_B = 105; SPA_B = 132; SPD_B = 105; SPE_B = 30; } - else if ((form == 1) && (species == 487)) { HP_B = 150; ATK_B = 120; DEF_B = 100; SPA_B = 120; SPD_B = 100; SPE_B = 90; } - else if ((form == 1) && (species == 492)) { HP_B = 100; ATK_B = 103; DEF_B = 75; SPA_B = 120; SPD_B = 75; SPE_B = 127; } - else if ((form == 1) && (species == 555)) { HP_B = 105; ATK_B = 30; DEF_B = 105; SPA_B = 140; SPD_B = 105; SPE_B = 55; } - else if ((form == 1) && (species == 641)) { HP_B = 79; ATK_B = 100; DEF_B = 80; SPA_B = 110; SPD_B = 90; SPE_B = 121; } - else if ((form == 1) && (species == 642)) { HP_B = 79; ATK_B = 105; DEF_B = 70; SPA_B = 145; SPD_B = 80; SPE_B = 101; } - else if ((form == 1) && (species == 645)) { HP_B = 89; ATK_B = 145; DEF_B = 90; SPA_B = 105; SPD_B = 80; SPE_B = 91; } - else if ((form == 1) && (species == 646)) { HP_B = 125; ATK_B = 120; DEF_B = 90; SPA_B = 170; SPD_B = 100; SPE_B = 95; } // white - else if ((form == 2) && (species == 646)) { HP_B = 125; ATK_B = 170; DEF_B = 100; SPA_B = 120; SPD_B = 90; SPE_B = 95; } // black - else if ((form == 1) && (species == 648)) { HP_B = 100; ATK_B = 128; DEF_B = 90; SPA_B = 77; SPD_B = 77; SPE_B = 128; } - else if ((form == 5) && (species == 670)) { HP_B = 74; ATK_B = 65; DEF_B = 67; SPA_B = 125; SPD_B = 128; SPE_B = 92; } - else if ((form == 1) && (species == 681)) { HP_B = 60; ATK_B = 150; DEF_B = 50; SPA_B = 150; SPD_B = 50; SPE_B = 60; } - else if ((form == 1) && (species == 710)) { HP_B = 49; ATK_B = 66; DEF_B = 70; SPA_B = 44; SPD_B = 55; SPE_B = 51; } - else if ((form == 2) && (species == 710)) { HP_B = 54; ATK_B = 66; DEF_B = 70; SPA_B = 44; SPD_B = 55; SPE_B = 46; } - else if ((form == 3) && (species == 710)) { HP_B = 59; ATK_B = 66; DEF_B = 70; SPA_B = 44; SPD_B = 55; SPE_B = 41; } - else if ((form == 1) && (species == 711)) { HP_B = 65; ATK_B = 90; DEF_B = 122; SPA_B = 58; SPD_B = 75; SPE_B = 84; } - else if ((form == 2) && (species == 711)) { HP_B = 75; ATK_B = 95; DEF_B = 122; SPA_B = 58; SPD_B = 75; SPE_B = 69; } - else if ((form == 3) && (species == 711)) { HP_B = 85; ATK_B = 100; DEF_B = 122; SPA_B = 58; SPD_B = 75; SPE_B = 54; } - - // ORAS Stats - else if ((form == 1) && (species == 382)) { HP_B = 100; ATK_B = 150; DEF_B = 90; SPA_B = 180; SPD_B = 160; SPE_B = 90; } // Primal Kyogre - else if ((form == 1) && (species == 383)) { HP_B = 100; ATK_B = 180; DEF_B = 160; SPA_B = 150; SPD_B = 90; SPE_B = 90; } // Primal - - else if ((form == 1) && (species == 015)) { HP_B = 65; ATK_B = 150; DEF_B = 40; SPA_B = 15; SPD_B = 80; SPE_B = 145; } // Beedrill - else if ((form == 1) && (species == 018)) { HP_B = 83; ATK_B = 80; DEF_B = 83; SPA_B = 135; SPD_B = 80; SPE_B = 121; } // Pidgeot - else if ((form == 1) && (species == 080)) { HP_B = 95; ATK_B = 75; DEF_B = 180; SPA_B = 130; SPD_B = 80; SPE_B = 30; } // Slowbro - else if ((form == 1) && (species == 208)) { HP_B = 75; ATK_B = 125; DEF_B = 230; SPA_B = 55; SPD_B = 95; SPE_B = 30; } // Steelix - else if ((form == 1) && (species == 254)) { HP_B = 70; ATK_B = 110; DEF_B = 75; SPA_B = 145; SPD_B = 85; SPE_B = 145; } // Sceptile - else if ((form == 1) && (species == 260)) { HP_B = 100; ATK_B = 150; DEF_B = 110; SPA_B = 95; SPD_B = 110; SPE_B = 70; } // Swampert - else if ((form == 1) && (species == 302)) { HP_B = 50; ATK_B = 85; DEF_B = 125; SPA_B = 85; SPD_B = 115; SPE_B = 20; } // Sableye - else if ((form == 1) && (species == 319)) { HP_B = 70; ATK_B = 140; DEF_B = 70; SPA_B = 110; SPD_B = 65; SPE_B = 105; } // Sharpedo - else if ((form == 1) && (species == 323)) { HP_B = 70; ATK_B = 120; DEF_B = 100; SPA_B = 145; SPD_B = 105; SPE_B = 20; } // Camerupt - else if ((form == 1) && (species == 334)) { HP_B = 75; ATK_B = 110; DEF_B = 110; SPA_B = 110; SPD_B = 105; SPE_B = 80; } // Altaria - else if ((form == 1) && (species == 362)) { HP_B = 80; ATK_B = 120; DEF_B = 80; SPA_B = 120; SPD_B = 80; SPE_B = 100; } // Glalie - else if ((form == 1) && (species == 373)) { HP_B = 95; ATK_B = 145; DEF_B = 130; SPA_B = 120; SPD_B = 90; SPE_B = 120; } // Salamence - else if ((form == 1) && (species == 376)) { HP_B = 80; ATK_B = 145; DEF_B = 150; SPA_B = 105; SPD_B = 110; SPE_B = 110; } // Metagross - else if ((form == 1) && (species == 384)) { HP_B = 105; ATK_B = 180; DEF_B = 100; SPA_B = 180; SPD_B = 100; SPE_B = 115; } // Rayquaza - else if ((form == 1) && (species == 428)) { HP_B = 65; ATK_B = 136; DEF_B = 94; SPA_B = 54; SPD_B = 96; SPE_B = 135; } // Lopunny - else if ((form == 1) && (species == 475)) { HP_B = 68; ATK_B = 165; DEF_B = 95; SPA_B = 65; SPD_B = 115; SPE_B = 110; } // Gallade - else if ((form == 1) && (species == 531)) { HP_B = 103; ATK_B = 60; DEF_B = 126; SPA_B = 80; SPD_B = 126; SPE_B = 50; } // Audino - else if ((form == 1) && (species == 719)) { HP_B = 50; ATK_B = 160; DEF_B = 110; SPA_B = 160; SPD_B = 110; SPE_B = 110; } // Diancie - - else if ((form == 1) && (species == 720)) { HP_B = 80; ATK_B = 160; DEF_B = 60; SPA_B = 170; SPD_B = 130; SPE_B = 80; } // Hoopa Unbound - } - // Calculate Stats ushort[] stats = new ushort[6]; // Stats are stored as ushorts in the PKX structure. We'll cap them as such. stats[0] = (ushort)((((HP_IV + (2 * HP_B) + (HP_EV / 4) + 100) * level) / 100) + 10); @@ -2504,7 +954,7 @@ namespace PKHeX if (incr != decr) { stats[incr] *= 11; stats[incr] /= 10; - stats[decr] *= 9; stats[decr] /= 10; + stats[decr] *= 9; stats[decr] /= 10; } // Return Result @@ -2659,18 +1109,21 @@ namespace PKHeX } public static uint getRandomPID(int species, int cg) { - int gt = (int)SpeciesTable().Rows[species][8]; + PersonalParser.Personal MonData = PersonalGetter.GetPersonal(species); + int gt = MonData.GenderRatio; uint pid = (uint)Util.rnd32(); - if (gt > 255) + if (gt == 255) //Genderless return pid; + if (gt == 254) //Female Only + gt++; while (true) // Loop until we find a suitable PID { uint gv = (pid & 0xFF); if (cg == 2) // Genderless break; // PID Passes - else if ((cg == 1) && (gv < gt)) // Female + else if ((cg == 1) && (gv <= gt)) // Female break; // PID Passes - else if ((cg == 0) && (gv >= gt)) + else if ((cg == 0) && (gv > gt)) break; // PID Passes pid = (uint)Util.rnd32(); } @@ -3862,5 +2315,50 @@ namespace PKHeX 825, 091, 091, 091, }; #endregion + + // Classes + public class PersonalParser + { + public byte[] file = (byte[])Properties.Resources.ResourceManager.GetObject("personal"); + public int EntryLength = 0xE; + public struct Personal + { + public byte[] BaseStats; + public byte[] Abilities; + public byte BaseFriendship; + public byte GenderRatio; + public byte EXPGrowth; + public byte AltFormCount; + public byte FormPointer; //721+FormPointer+(FormID-1)=SpeciesIndex + } + + public Personal GetPersonal(int species) + { + Personal data = new Personal(); + byte[] MonData = new byte[EntryLength]; + data.BaseStats = new byte[6]; + data.Abilities = new byte[3]; + Array.Copy(file, species * EntryLength, MonData, 0, EntryLength); + Array.Copy(MonData, data.BaseStats, 6); + Array.Copy(MonData, 6, data.Abilities, 0, 3); + data.BaseFriendship = MonData[0x9]; + data.GenderRatio = MonData[0xA]; + data.EXPGrowth = MonData[0xB]; + data.AltFormCount = MonData[0xC]; + data.FormPointer = MonData[0xD]; + return data; + } + + public Personal GetPersonal(int species, int formID) + { + Personal data = GetPersonal(species); + if (formID > 0 && formID <= data.AltFormCount && data.AltFormCount > 0 && data.FormPointer > 0) //Working with an Alt Forme with a base stat change + { + formID--; + data = GetPersonal(721 + formID + data.FormPointer); + } + return data; + } + } } } diff --git a/Misc/pk2pk.cs b/Misc/pk2pk.cs index 9f079cc38..0f10bf795 100644 --- a/Misc/pk2pk.cs +++ b/Misc/pk2pk.cs @@ -15,7 +15,6 @@ namespace PKHeX public byte[] ConvertPKM(byte[] input, byte[] savefile, int savindex) { #region Initialize Everything - spectable = PKX.SpeciesTable(); // Load Species Name Tables speclang_ja = Util.getStringList("Species", "ja"); @@ -70,7 +69,6 @@ namespace PKHeX else return input; // Should never get here. } #region Utility - private DataTable spectable; public DateTime moment = DateTime.Now; public string[] speclang_ja; public string[] speclang_en; @@ -85,852 +83,9 @@ namespace PKHeX public byte g6trgend = 0; private int getAbilityNumber(int species, int ability, int formnum) { - #region ability table - int[] speciesability = new int[] { - 000, 000, 000, 000, - 001, 065, 065, 034, - 002, 065, 065, 034, - 003, 065, 065, 034, - 004, 066, 066, 094, - 005, 066, 066, 094, - 006, 066, 066, 094, - 007, 067, 067, 044, - 008, 067, 067, 044, - 009, 067, 067, 044, - 010, 019, 019, 050, - 011, 061, 061, 061, - 012, 014, 014, 110, - 013, 019, 019, 050, - 014, 061, 061, 061, - 015, 068, 068, 097, - 016, 051, 077, 145, - 017, 051, 077, 145, - 018, 051, 077, 145, - 019, 050, 062, 055, - 020, 050, 062, 055, - 021, 051, 051, 097, - 022, 051, 051, 097, - 023, 022, 061, 127, - 024, 022, 061, 127, - 025, 009, 009, 031, - 026, 009, 009, 031, - 027, 008, 008, 146, - 028, 008, 008, 146, - 029, 038, 079, 055, - 030, 038, 079, 055, - 031, 038, 079, 125, - 032, 038, 079, 055, - 033, 038, 079, 055, - 034, 038, 079, 125, - 035, 056, 098, 132, - 036, 056, 098, 109, - 037, 018, 018, 070, - 038, 018, 018, 070, - 039, 056, 172, 132, - 040, 056, 172, 119, - 041, 039, 039, 151, - 042, 039, 039, 151, - 043, 034, 034, 050, - 044, 034, 034, 001, - 045, 034, 034, 027, - 046, 027, 087, 006, - 047, 027, 087, 006, - 048, 014, 110, 050, - 049, 019, 110, 147, - 050, 008, 071, 159, - 051, 008, 071, 159, - 052, 053, 101, 127, - 053, 007, 101, 127, - 054, 006, 013, 033, - 055, 006, 013, 033, - 056, 072, 083, 128, - 057, 072, 083, 128, - 058, 022, 018, 154, - 059, 022, 018, 154, - 060, 011, 006, 033, - 061, 011, 006, 033, - 062, 011, 006, 033, - 063, 028, 039, 098, - 064, 028, 039, 098, - 065, 028, 039, 098, - 066, 062, 099, 080, - 067, 062, 099, 080, - 068, 062, 099, 080, - 069, 034, 034, 082, - 070, 034, 034, 082, - 071, 034, 034, 082, - 072, 029, 064, 044, - 073, 029, 064, 044, - 074, 069, 005, 008, - 075, 069, 005, 008, - 076, 069, 005, 008, - 077, 050, 018, 049, - 078, 050, 018, 049, - 079, 012, 020, 144, - 080, 012, 020, 144, - 081, 042, 005, 148, - 082, 042, 005, 148, - 083, 051, 039, 128, - 084, 050, 048, 077, - 085, 050, 048, 077, - 086, 047, 093, 115, - 087, 047, 093, 115, - 088, 001, 060, 143, - 089, 001, 060, 143, - 090, 075, 092, 142, - 091, 075, 092, 142, - 092, 026, 026, 026, - 093, 026, 026, 026, - 094, 026, 026, 026, - 095, 069, 005, 133, - 096, 015, 108, 039, - 097, 015, 108, 039, - 098, 052, 075, 125, - 099, 052, 075, 125, - 100, 043, 009, 106, - 101, 043, 009, 106, - 102, 034, 034, 139, - 103, 034, 034, 139, - 104, 069, 031, 004, - 105, 069, 031, 004, - 106, 007, 120, 084, - 107, 051, 089, 039, - 108, 020, 012, 013, - 109, 026, 026, 026, - 110, 026, 026, 026, - 111, 031, 069, 120, - 112, 031, 069, 120, - 113, 030, 032, 131, - 114, 034, 102, 144, - 115, 048, 113, 039, - 116, 033, 097, 006, - 117, 038, 097, 006, - 118, 033, 041, 031, - 119, 033, 041, 031, - 120, 035, 030, 148, - 121, 035, 030, 148, - 122, 043, 111, 101, - 123, 068, 101, 080, - 124, 012, 108, 087, - 125, 009, 009, 072, - 126, 049, 049, 072, - 127, 052, 104, 153, - 128, 022, 083, 125, - 129, 033, 033, 155, - 130, 022, 022, 153, - 131, 011, 075, 093, - 132, 007, 007, 150, - 133, 050, 091, 107, - 134, 011, 011, 093, - 135, 010, 010, 095, - 136, 018, 018, 062, - 137, 036, 088, 148, - 138, 033, 075, 133, - 139, 033, 075, 133, - 140, 033, 004, 133, - 141, 033, 004, 133, - 142, 069, 046, 127, - 143, 017, 047, 082, - 144, 046, 046, 081, - 145, 046, 046, 009, - 146, 046, 046, 049, - 147, 061, 061, 063, - 148, 061, 061, 063, - 149, 039, 039, 136, - 150, 046, 046, 127, - 151, 028, 028, 028, - 152, 065, 065, 102, - 153, 065, 065, 102, - 154, 065, 065, 102, - 155, 066, 066, 018, - 156, 066, 066, 018, - 157, 066, 066, 018, - 158, 067, 067, 125, - 159, 067, 067, 125, - 160, 067, 067, 125, - 161, 050, 051, 119, - 162, 050, 051, 119, - 163, 015, 051, 110, - 164, 015, 051, 110, - 165, 068, 048, 155, - 166, 068, 048, 089, - 167, 068, 015, 097, - 168, 068, 015, 097, - 169, 039, 039, 151, - 170, 010, 035, 011, - 171, 010, 035, 011, - 172, 009, 009, 031, - 173, 056, 098, 132, - 174, 056, 172, 132, - 175, 055, 032, 105, - 176, 055, 032, 105, - 177, 028, 048, 156, - 178, 028, 048, 156, - 179, 009, 009, 057, - 180, 009, 009, 057, - 181, 009, 009, 057, - 182, 034, 034, 131, - 183, 047, 037, 157, - 184, 047, 037, 157, - 185, 005, 069, 155, - 186, 011, 006, 002, - 187, 034, 102, 151, - 188, 034, 102, 151, - 189, 034, 102, 151, - 190, 050, 053, 092, - 191, 034, 094, 048, - 192, 034, 094, 048, - 193, 003, 014, 119, - 194, 006, 011, 109, - 195, 006, 011, 109, - 196, 028, 028, 156, - 197, 028, 028, 039, - 198, 015, 105, 158, - 199, 012, 020, 144, - 200, 026, 026, 026, - 201, 026, 026, 026, - 202, 023, 023, 140, - 203, 039, 048, 157, - 204, 005, 005, 142, - 205, 005, 005, 142, - 206, 032, 050, 155, - 207, 052, 008, 017, - 208, 069, 005, 125, - 209, 022, 050, 155, - 210, 022, 095, 155, - 211, 038, 033, 022, - 212, 068, 101, 135, - 213, 005, 082, 126, - 214, 068, 062, 153, - 215, 039, 051, 124, - 216, 053, 095, 118, - 217, 062, 095, 127, - 218, 040, 049, 133, - 219, 040, 049, 133, - 220, 012, 081, 047, - 221, 012, 081, 047, - 222, 055, 030, 144, - 223, 055, 097, 141, - 224, 021, 097, 141, - 225, 072, 055, 015, - 226, 033, 011, 041, - 227, 051, 005, 133, - 228, 048, 018, 127, - 229, 048, 018, 127, - 230, 033, 097, 006, - 231, 053, 053, 008, - 232, 005, 005, 008, - 233, 036, 088, 148, - 234, 022, 119, 157, - 235, 020, 101, 141, - 236, 062, 080, 072, - 237, 022, 101, 080, - 238, 012, 108, 093, - 239, 009, 009, 072, - 240, 049, 049, 072, - 241, 047, 113, 157, - 242, 030, 032, 131, - 243, 046, 046, 010, - 244, 046, 046, 018, - 245, 046, 046, 011, - 246, 062, 062, 008, - 247, 061, 061, 061, - 248, 045, 045, 127, - 249, 046, 046, 136, - 250, 046, 046, 144, - 251, 030, 030, 030, - 252, 065, 065, 084, - 253, 065, 065, 084, - 254, 065, 065, 084, - 255, 066, 066, 003, - 256, 066, 066, 003, - 257, 066, 066, 003, - 258, 067, 067, 006, - 259, 067, 067, 006, - 260, 067, 067, 006, - 261, 050, 095, 155, - 262, 022, 095, 153, - 263, 053, 082, 095, - 264, 053, 082, 095, - 265, 019, 019, 050, - 266, 061, 061, 061, - 267, 068, 068, 079, - 268, 061, 061, 061, - 269, 019, 019, 014, - 270, 033, 044, 020, - 271, 033, 044, 020, - 272, 033, 044, 020, - 273, 034, 048, 124, - 274, 034, 048, 124, - 275, 034, 048, 124, - 276, 062, 062, 113, - 277, 062, 062, 113, - 278, 051, 051, 044, - 279, 051, 051, 044, - 280, 028, 036, 140, - 281, 028, 036, 140, - 282, 028, 036, 140, - 283, 033, 033, 044, - 284, 022, 022, 127, - 285, 027, 090, 095, - 286, 027, 090, 101, - 287, 054, 054, 054, - 288, 072, 072, 072, - 289, 054, 054, 054, - 290, 014, 014, 050, - 291, 003, 003, 151, - 292, 025, 025, 025, - 293, 043, 043, 155, - 294, 043, 043, 113, - 295, 043, 043, 113, - 296, 047, 062, 125, - 297, 047, 062, 125, - 298, 047, 037, 157, - 299, 005, 042, 159, - 300, 056, 096, 147, - 301, 056, 096, 147, - 302, 051, 100, 158, - 303, 052, 022, 125, - 304, 005, 069, 134, - 305, 005, 069, 134, - 306, 005, 069, 134, - 307, 074, 074, 140, - 308, 074, 074, 140, - 309, 009, 031, 058, - 310, 009, 031, 058, - 311, 057, 057, 031, - 312, 058, 058, 010, - 313, 035, 068, 158, - 314, 012, 110, 158, - 315, 030, 038, 102, - 316, 064, 060, 082, - 317, 064, 060, 082, - 318, 024, 024, 003, - 319, 024, 024, 003, - 320, 041, 012, 046, - 321, 041, 012, 046, - 322, 012, 086, 020, - 323, 040, 116, 083, - 324, 073, 073, 075, - 325, 047, 020, 082, - 326, 047, 020, 082, - 327, 020, 077, 126, - 328, 052, 071, 125, - 329, 026, 026, 026, - 330, 026, 026, 026, - 331, 008, 008, 011, - 332, 008, 008, 011, - 333, 030, 030, 013, - 334, 030, 030, 013, - 335, 017, 017, 137, - 336, 061, 061, 151, - 337, 026, 026, 026, - 338, 026, 026, 026, - 339, 012, 107, 093, - 340, 012, 107, 093, - 341, 052, 075, 091, - 342, 052, 075, 091, - 343, 026, 026, 026, - 344, 026, 026, 026, - 345, 021, 021, 114, - 346, 021, 021, 114, - 347, 004, 004, 033, - 348, 004, 004, 033, - 349, 033, 012, 091, - 350, 063, 172, 056, - 351, 059, 059, 059, - 352, 016, 016, 168, - 353, 015, 119, 130, - 354, 015, 119, 130, - 355, 026, 026, 119, - 356, 046, 046, 119, - 357, 034, 094, 139, - 358, 026, 026, 026, - 359, 046, 105, 154, - 360, 023, 023, 140, - 361, 039, 115, 141, - 362, 039, 115, 141, - 363, 047, 115, 012, - 364, 047, 115, 012, - 365, 047, 115, 012, - 366, 075, 075, 155, - 367, 033, 033, 041, - 368, 033, 033, 093, - 369, 033, 069, 005, - 370, 033, 033, 093, - 371, 069, 069, 125, - 372, 069, 069, 142, - 373, 022, 022, 153, - 374, 029, 029, 135, - 375, 029, 029, 135, - 376, 029, 029, 135, - 377, 029, 029, 005, - 378, 029, 029, 115, - 379, 029, 029, 135, - 380, 026, 026, 026, - 381, 026, 026, 026, - 382, 002, 002, 002, - 383, 070, 070, 070, - 384, 076, 076, 076, - 385, 032, 032, 032, - 386, 046, 046, 046, - 387, 065, 065, 075, - 388, 065, 065, 075, - 389, 065, 065, 075, - 390, 066, 066, 089, - 391, 066, 066, 089, - 392, 066, 066, 089, - 393, 067, 067, 128, - 394, 067, 067, 128, - 395, 067, 067, 128, - 396, 051, 051, 120, - 397, 022, 022, 120, - 398, 022, 022, 120, - 399, 086, 109, 141, - 400, 086, 109, 141, - 401, 061, 061, 050, - 402, 068, 068, 101, - 403, 079, 022, 062, - 404, 079, 022, 062, - 405, 079, 022, 062, - 406, 030, 038, 102, - 407, 030, 038, 101, - 408, 104, 104, 125, - 409, 104, 104, 125, - 410, 005, 005, 043, - 411, 005, 005, 043, - 412, 061, 061, 142, - 413, 107, 107, 142, - 414, 068, 068, 110, - 415, 118, 118, 055, - 416, 046, 046, 127, - 417, 050, 053, 010, - 418, 033, 033, 041, - 419, 033, 033, 041, - 420, 034, 034, 034, - 421, 122, 122, 122, - 422, 060, 114, 159, - 423, 060, 114, 159, - 424, 101, 053, 092, - 425, 106, 084, 138, - 426, 106, 084, 138, - 427, 050, 103, 007, - 428, 056, 103, 007, - 429, 026, 026, 026, - 430, 015, 105, 153, - 431, 007, 020, 051, - 432, 047, 020, 128, - 433, 026, 026, 026, - 434, 001, 106, 051, - 435, 001, 106, 051, - 436, 026, 085, 134, - 437, 026, 085, 134, - 438, 005, 069, 155, - 439, 043, 111, 101, - 440, 030, 032, 132, - 441, 051, 077, 145, - 442, 046, 046, 151, - 443, 008, 008, 024, - 444, 008, 008, 024, - 445, 008, 008, 024, - 446, 053, 047, 082, - 447, 080, 039, 158, - 448, 080, 039, 154, - 449, 045, 045, 159, - 450, 045, 045, 159, - 451, 004, 097, 051, - 452, 004, 097, 051, - 453, 107, 087, 143, - 454, 107, 087, 143, - 455, 026, 026, 026, - 456, 033, 114, 041, - 457, 033, 114, 041, - 458, 033, 011, 041, - 459, 117, 117, 043, - 460, 117, 117, 043, - 461, 046, 046, 124, - 462, 042, 005, 148, - 463, 020, 012, 013, - 464, 031, 116, 120, - 465, 034, 102, 144, - 466, 078, 078, 072, - 467, 049, 049, 072, - 468, 055, 032, 105, - 469, 003, 110, 119, - 470, 102, 102, 034, - 471, 081, 081, 115, - 472, 052, 008, 090, - 473, 012, 081, 047, - 474, 091, 088, 148, - 475, 080, 080, 154, - 476, 005, 042, 159, - 477, 046, 046, 119, - 478, 081, 081, 130, - 479, 026, 026, 026, - 480, 026, 026, 026, - 481, 026, 026, 026, - 482, 026, 026, 026, - 483, 046, 046, 140, - 484, 046, 046, 140, - 485, 018, 018, 049, - 486, 112, 112, 112, - 487, 046, 046, 140, - 488, 026, 026, 026, - 489, 093, 093, 093, - 490, 093, 093, 093, - 491, 123, 123, 123, - 492, 030, 030, 030, - 493, 121, 121, 121, - 494, 162, 162, 162, - 495, 065, 065, 126, - 496, 065, 065, 126, - 497, 065, 065, 126, - 498, 066, 066, 047, - 499, 066, 066, 047, - 500, 066, 066, 120, - 501, 067, 067, 075, - 502, 067, 067, 075, - 503, 067, 067, 075, - 504, 050, 051, 148, - 505, 035, 051, 148, - 506, 072, 053, 050, - 507, 022, 146, 113, - 508, 022, 146, 113, - 509, 007, 084, 158, - 510, 007, 084, 158, - 511, 082, 082, 065, - 512, 082, 082, 065, - 513, 082, 082, 066, - 514, 082, 082, 066, - 515, 082, 082, 067, - 516, 082, 082, 067, - 517, 108, 028, 140, - 518, 108, 028, 140, - 519, 145, 105, 079, - 520, 145, 105, 079, - 521, 145, 105, 079, - 522, 031, 078, 157, - 523, 031, 078, 157, - 524, 005, 005, 159, - 525, 005, 005, 159, - 526, 005, 005, 159, - 527, 109, 103, 086, - 528, 109, 103, 086, - 529, 146, 159, 104, - 530, 146, 159, 104, - 531, 131, 144, 103, - 532, 062, 125, 089, - 533, 062, 125, 089, - 534, 062, 125, 089, - 535, 033, 093, 011, - 536, 033, 093, 011, - 537, 033, 143, 011, - 538, 062, 039, 104, - 539, 005, 039, 104, - 540, 068, 034, 142, - 541, 102, 034, 142, - 542, 068, 034, 142, - 543, 038, 068, 003, - 544, 038, 068, 003, - 545, 038, 068, 003, - 546, 158, 151, 034, - 547, 158, 151, 034, - 548, 034, 020, 102, - 549, 034, 020, 102, - 550, 120, 091, 104, - 551, 022, 153, 083, - 552, 022, 153, 083, - 553, 022, 153, 083, - 554, 055, 055, 039, - 555, 125, 125, 161, - 556, 011, 034, 114, - 557, 005, 075, 133, - 558, 005, 075, 133, - 559, 061, 153, 022, - 560, 061, 153, 022, - 561, 147, 098, 110, - 562, 152, 152, 152, - 563, 152, 152, 152, - 564, 116, 005, 033, - 565, 116, 005, 033, - 566, 129, 129, 129, - 567, 129, 129, 129, - 568, 001, 060, 106, - 569, 001, 133, 106, - 570, 149, 149, 149, - 571, 149, 149, 149, - 572, 056, 101, 092, - 573, 056, 101, 092, - 574, 119, 172, 023, - 575, 119, 172, 023, - 576, 119, 172, 023, - 577, 142, 098, 144, - 578, 142, 098, 144, - 579, 142, 098, 144, - 580, 051, 145, 093, - 581, 051, 145, 093, - 582, 115, 115, 133, - 583, 115, 115, 133, - 584, 115, 115, 133, - 585, 034, 157, 032, - 586, 034, 157, 032, - 587, 009, 009, 078, - 588, 068, 061, 099, - 589, 068, 075, 142, - 590, 027, 027, 144, - 591, 027, 027, 144, - 592, 011, 130, 006, - 593, 011, 130, 006, - 594, 131, 093, 144, - 595, 014, 127, 068, - 596, 014, 127, 068, - 597, 160, 160, 160, - 598, 160, 160, 107, - 599, 057, 058, 029, - 600, 057, 058, 029, - 601, 057, 058, 029, - 602, 026, 026, 026, - 603, 026, 026, 026, - 604, 026, 026, 026, - 605, 140, 028, 148, - 606, 140, 028, 148, - 607, 018, 049, 151, - 608, 018, 049, 151, - 609, 018, 049, 151, - 610, 079, 104, 127, - 611, 079, 104, 127, - 612, 079, 104, 127, - 613, 081, 081, 155, - 614, 081, 081, 033, - 615, 026, 026, 026, - 616, 093, 075, 142, - 617, 093, 060, 084, - 618, 009, 007, 008, - 619, 039, 144, 120, - 620, 039, 144, 120, - 621, 024, 125, 104, - 622, 089, 103, 099, - 623, 089, 103, 099, - 624, 128, 039, 046, - 625, 128, 039, 046, - 626, 120, 157, 043, - 627, 051, 125, 055, - 628, 051, 125, 128, - 629, 145, 142, 133, - 630, 145, 142, 133, - 631, 082, 018, 073, - 632, 068, 055, 054, - 633, 055, 055, 055, - 634, 055, 055, 055, - 635, 026, 026, 026, - 636, 049, 049, 068, - 637, 049, 049, 068, - 638, 154, 154, 154, - 639, 154, 154, 154, - 640, 154, 154, 154, - 641, 158, 158, 128, - 642, 158, 158, 128, - 643, 163, 163, 163, - 644, 164, 164, 164, - 645, 159, 159, 125, - 646, 046, 046, 046, - 647, 154, 154, 154, - 648, 032, 032, 032, - 649, 088, 088, 088, - 650, 065, 065, 171, - 651, 065, 065, 171, - 652, 065, 065, 171, - 653, 066, 066, 170, - 654, 066, 066, 170, - 655, 066, 066, 170, - 656, 067, 067, 168, - 657, 067, 067, 168, - 658, 067, 067, 168, - 659, 053, 167, 037, - 660, 053, 167, 037, - 661, 145, 145, 177, - 662, 049, 049, 177, - 663, 049, 049, 177, - 664, 019, 014, 132, - 665, 061, 061, 132, - 666, 019, 014, 132, - 667, 079, 127, 153, - 668, 079, 127, 153, - 669, 166, 166, 180, - 670, 166, 166, 180, - 671, 166, 166, 180, - 672, 157, 157, 179, - 673, 157, 157, 179, - 674, 089, 104, 113, - 675, 089, 104, 113, - 676, 169, 169, 169, - 677, 051, 151, 020, - 678, 051, 151, 158, - 679, 099, 099, 099, - 680, 099, 099, 099, - 681, 176, 176, 176, - 682, 131, 131, 165, - 683, 131, 131, 165, - 684, 175, 175, 084, - 685, 175, 175, 084, - 686, 126, 021, 151, - 687, 126, 021, 151, - 688, 181, 097, 124, - 689, 181, 097, 124, - 690, 038, 143, 091, - 691, 038, 143, 091, - 692, 178, 178, 178, - 693, 178, 178, 178, - 694, 087, 008, 094, - 695, 087, 008, 094, - 696, 173, 173, 005, - 697, 173, 173, 069, - 698, 174, 174, 117, - 699, 174, 174, 117, - 700, 056, 056, 182, - 701, 007, 084, 104, - 702, 167, 053, 057, - 703, 029, 029, 005, - 704, 157, 093, 183, - 705, 157, 093, 183, - 706, 157, 093, 183, - 707, 158, 158, 170, - 708, 030, 119, 139, - 709, 030, 119, 139, - 710, 053, 119, 015, - 711, 053, 119, 015, - 712, 020, 115, 005, - 713, 020, 115, 005, - 714, 119, 151, 140, - 715, 119, 151, 140, - 716, 187, 187, 187, - 717, 186, 186, 186, - 718, 188, 188, 188, - 719, 029, 029, 029, - 720, 170, 170, 170, - 721, 011, 011, 011, - 722, 046, 046, 046, - 723, 046, 046, 046, - 724, 046, 046, 046, - 725, 107, 107, 142, - 726, 107, 107, 142, - 727, 032, 032, 032, - 728, 026, 026, 026, - 729, 026, 026, 026, - 730, 026, 026, 026, - 731, 026, 026, 026, - 732, 026, 026, 026, - 733, 026, 026, 026, - 734, 059, 059, 059, - 735, 059, 059, 059, - 736, 059, 059, 059, - 737, 122, 122, 122, - 738, 069, 091, 104, - 739, 125, 125, 161, - 740, 032, 032, 032, - 741, 163, 163, 163, - 742, 164, 164, 164, - 743, 154, 154, 154, - 744, 144, 144, 144, - 745, 010, 010, 010, - 746, 022, 022, 022, - 747, 023, 023, 023, - 748, 051, 151, 172, - 749, 169, 169, 169, - 750, 169, 169, 169, - 751, 169, 169, 169, - 752, 169, 169, 169, - 753, 169, 169, 169, - 754, 169, 169, 169, - 755, 169, 169, 169, - 756, 169, 169, 169, - 757, 169, 169, 169, - 758, 182, 182, 182, - 759, 104, 104, 104, - 760, 047, 047, 047, - 761, 181, 181, 181, - 762, 070, 070, 070, - 763, 080, 080, 080, - 764, 015, 015, 015, - 765, 003, 003, 003, - 766, 074, 074, 074, - 767, 094, 094, 094, - 768, 111, 111, 111, - 769, 158, 158, 158, - 770, 045, 045, 045, - 771, 101, 101, 101, - 772, 184, 184, 184, - 773, 181, 181, 181, - 774, 091, 091, 091, - 775, 117, 117, 117, - 776, 176, 176, 176, - 777, 178, 178, 178, - 778, 185, 185, 185, - 779, 104, 104, 104, - 780, 156, 156, 156, - 781, 036, 036, 036, - 782, 092, 092, 092, - 783, 037, 037, 037, - 784, 022, 022, 022, - 785, 159, 159, 159, - 786, 026, 026, 026, - 787, 026, 026, 026, - 788, 053, 119, 015, - 789, 053, 119, 015, - 790, 053, 119, 015, - 791, 053, 119, 015, - 792, 053, 119, 015, - 793, 053, 119, 015, - 794, 166, 166, 180, - 795, 166, 166, 180, - 796, 166, 166, 180, - 797, 166, 166, 180, - }; - #endregion - #region form detection - if (species == 492 && formnum == 1) { species = 727; } // Shaymin - else if (species == 487 && formnum == 1) { species = 728; } // Giratina-O - else if (species == 550 && formnum == 1) { species = 738; } // Basculin Blue - else if (species == 646 && formnum == 1) { species = 741; } // Kyurem White - else if (species == 646 && formnum == 1) { species = 742; } // Kyurem Black - else if (species == 641 && formnum == 1) { species = 744; } // Tornadus-T - else if (species == 642 && formnum == 1) { species = 745; } // Thundurus-T - else if (species == 645 && formnum == 1) { species = 746; } // Landorus-T - else if (species == 678 && formnum == 1) { species = 748; } // MeowsticF - - else if (species == 094 && formnum == 1) { species = 747; } // Mega Gengar - else if (species == 282 && formnum == 1) { species = 758; } // Mega Gardevoir - else if (species == 181 && formnum == 1) { species = 759; } // Mega Ampharos - else if (species == 003 && formnum == 1) { species = 760; } // Mega Venusaur - else if (species == 006 && formnum == 1) { species = 761; } // Mega CharizardX - else if (species == 006 && formnum == 2) { species = 762; } // Mega CharizardY - else if (species == 150 && formnum == 1) { species = 763; } // Mega MewtwoX - else if (species == 150 && formnum == 2) { species = 764; } // Mega MewtwoY - else if (species == 257 && formnum == 1) { species = 765; } // Mega Blaziken - else if (species == 308 && formnum == 1) { species = 766; } // Mega Medicham - else if (species == 229 && formnum == 1) { species = 767; } // Mega Houndoom - else if (species == 306 && formnum == 1) { species = 768; } // Mega Aggron - else if (species == 354 && formnum == 1) { species = 769; } // Mega Banette - else if (species == 248 && formnum == 1) { species = 770; } // Mega Tyranitar - else if (species == 212 && formnum == 1) { species = 771; } // Mega Scizor - else if (species == 127 && formnum == 1) { species = 772; } // Mega Pinsir - else if (species == 142 && formnum == 1) { species = 773; } // Mega Aerodactyl - else if (species == 448 && formnum == 1) { species = 774; } // Mega Lucario - else if (species == 460 && formnum == 1) { species = 775; } // Mega Abomasnow - else if (species == 009 && formnum == 1) { species = 777; } // Mega Blastoise - else if (species == 115 && formnum == 1) { species = 778; } // Mega Kangaskhan - else if (species == 130 && formnum == 1) { species = 779; } // Mega Gyarados - else if (species == 359 && formnum == 1) { species = 780; } // Mega Absol - else if (species == 065 && formnum == 1) { species = 781; } // Mega Alakazam - else if (species == 214 && formnum == 1) { species = 782; } // Mega Heracross - else if (species == 303 && formnum == 1) { species = 783; } // Mega Mawile - else if (species == 310 && formnum == 1) { species = 784; } // Mega Manectric - else if (species == 445 && formnum == 1) { species = 785; } // Mega Garchomp - else if (species == 381 && formnum == 1) { species = 786; } // Mega Latios - else if (species == 380 && formnum == 1) { species = 787; } // Mega Latias - #endregion + PKX.PersonalParser.Personal MonData = PKX.PersonalGetter.GetPersonal(species, formnum); int[] spec_abilities = new int[3]; - Array.Copy(speciesability, 4 * species + 1, spec_abilities, 0, 3); + Array.Copy(MonData.Abilities, spec_abilities, 3); int abilval = Array.IndexOf(spec_abilities, ability); if (abilval >= 0) return 1 << abilval; @@ -1002,20 +157,21 @@ namespace PKHeX } // Gender Form Fateful - int genderratio = (int)spectable.Rows[species][8]; + PKX.PersonalParser.Personal MonData = PKX.PersonalGetter.GetPersonal(species); + int genderratio = MonData.GenderRatio; uint PID = BitConverter.ToUInt32(pk4, 0); int gv = (int)(PID & 0xFF); int gender = 0; - if (genderratio == 258) + if (genderratio == 255) gender = 2; - else if (genderratio == 257) + else if (genderratio == 254) gender = 1; - else if (genderratio == 256) + else if (genderratio == 0) gender = 0; else { - if (gv < genderratio) + if (gv <= genderratio) gender = 1; else gender = 0; diff --git a/PKHeX.csproj b/PKHeX.csproj index 4e51167da..111a458b5 100644 --- a/PKHeX.csproj +++ b/PKHeX.csproj @@ -337,6 +337,7 @@ + diff --git a/PKX/f1-Main.Designer.cs b/PKX/f1-Main.Designer.cs index de931c5fe..db585f19b 100644 --- a/PKX/f1-Main.Designer.cs +++ b/PKX/f1-Main.Designer.cs @@ -877,6 +877,7 @@ this.TB_Nickname.Name = "TB_Nickname"; this.TB_Nickname.Size = new System.Drawing.Size(122, 20); this.TB_Nickname.TabIndex = 5; + this.TB_Nickname.MouseDown += new System.Windows.Forms.MouseEventHandler(this.updateNicknameClick); // // CB_Species // diff --git a/PKX/f1-Main.cs b/PKX/f1-Main.cs index cc954b19a..50da0d9aa 100644 --- a/PKX/f1-Main.cs +++ b/PKX/f1-Main.cs @@ -1320,13 +1320,13 @@ namespace PKHeX { // Get Gender Threshold species = Util.getIndex(CB_Species); - DataTable spectable = PKX.SpeciesTable(); - gt = (int)spectable.Rows[species][8]; + PKX.PersonalParser.Personal MonData = PKX.PersonalGetter.GetPersonal(species); + gt = MonData.GenderRatio; - if (gt > 255) // Single gender/genderless + if (gt == 255 || gt == 0 || gt == 254) // Single gender/genderless return; - if (gt < 256) // If not a single gender(less) species: + if (gt < 255) // If not a single gender(less) species: (should be <254 but whatever, 255 never happens^) { if (PKX.getGender(Label_Gender.Text) == 0) // ♂ Label_Gender.Text = gendersymbols[1]; // ♀ @@ -1817,17 +1817,17 @@ namespace PKHeX // Check for Gender Changes // Get Gender Threshold species = Util.getIndex(CB_Species); - DataTable spectable = PKX.SpeciesTable(); - gt = (int)spectable.Rows[species][8]; + PKX.PersonalParser.Personal MonData = PKX.PersonalGetter.GetPersonal(species); + gt = MonData.GenderRatio; - if (gt == 258) // Genderless + if (gt == 255) // Genderless genderflag = 2; - else if (gt == 257) // Female Only + else if (gt == 254) // Female Only genderflag = 1; - else if (gt == 256) // Male Only + else if (gt == 0) // Male Only genderflag = 0; else // get gender from old PID correlation - genderflag = ((Util.getHEXval(TB_PID) & 0xFF) < gt) ? 1 : 0; + genderflag = ((Util.getHEXval(TB_PID) & 0xFF) <= gt) ? 1 : 0; setGenderLabel(); updateAbilityList(TB_AbilityNumber, Util.getIndex(CB_Species), CB_Ability, CB_Form); diff --git a/Properties/Resources.Designer.cs b/Properties/Resources.Designer.cs index 49266905e..fb8b29caf 100644 --- a/Properties/Resources.Designer.cs +++ b/Properties/Resources.Designer.cs @@ -14831,6 +14831,16 @@ namespace PKHeX.Properties { } } + /// + /// Looks up a localized resource of type System.Byte[]. + /// + internal static byte[] personal { + get { + object obj = ResourceManager.GetObject("personal", resourceCulture); + return ((byte[])(obj)); + } + } + /// /// Looks up a localized resource of type System.Byte[]. /// @@ -14987,6 +14997,8 @@ namespace PKHeX.Properties { /// ///// Main Window /// + ///Right Click on Nickname/Nickname box to bring up the ingame-special characters. + /// ///Control + Click on... ///Randomize IVs: Set all IVs to max. ///Randomize EVs: Set all EVs to 0. @@ -14998,8 +15010,7 @@ namespace PKHeX.Properties { ///Control-Drag a Box Slot to Copy-Overwrite ///Alt-Drag a Box Slot to Delete-Overwrite /// - ///Control-Shift-Click a slot to set a Pokemon to every slot in the box. - ///Control-Click [rest of string was truncated]";. + ///C [rest of string was truncated]";. /// internal static string shortcuts { get { diff --git a/Properties/Resources.resx b/Properties/Resources.resx index be0f0633f..75f502484 100644 --- a/Properties/Resources.resx +++ b/Properties/Resources.resx @@ -5461,4 +5461,7 @@ ..\Resources\byte\PGLDings-NormalRegular.ttf;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + ..\Resources\byte\personal;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + \ No newline at end of file diff --git a/Resources/byte/personal b/Resources/byte/personal new file mode 100644 index 0000000000000000000000000000000000000000..62d10267b7613997797aaf5e84ea72b7f3abac37 GIT binary patch literal 11564 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 255) // Single gender/genderless + if (gt == 255) + Label_Gender.Text = gendersymbols[2]; + else if (gt == 254) + Label_Gender.Text = gendersymbols[1]; + else if (gt == 0) + Label_Gender.Text = gendersymbols[0]; + + if (gt == 255 || gt == 0 || gt == 254) // Single gender/genderless abort return; if (gt < 256) // If not a single gender(less) species: diff --git a/SAV/SAV_PokedexORAS.cs b/SAV/SAV_PokedexORAS.cs index 0236d8c4f..63baa6f14 100644 --- a/SAV/SAV_PokedexORAS.cs +++ b/SAV/SAV_PokedexORAS.cs @@ -138,11 +138,11 @@ namespace PKHeX CHK_P1.Enabled = true; int index = LB_Species.SelectedIndex + 1; - DataTable spectable = PKX.SpeciesTable(); - int gt = (int)spectable.Rows[index][8]; + PKX.PersonalParser.Personal MonData = PKX.PersonalGetter.GetPersonal(index); + int gt = MonData.GenderRatio; - CHK_P2.Enabled = CHK_P4.Enabled = CHK_P6.Enabled = CHK_P8.Enabled = (((gt > 255) && (gt != 257)) || gt < 256); - CHK_P3.Enabled = CHK_P5.Enabled = CHK_P7.Enabled = CHK_P9.Enabled = (gt != 256) && (gt != 258); + CHK_P2.Enabled = CHK_P4.Enabled = CHK_P6.Enabled = CHK_P8.Enabled = (gt != 254); // Not Female-Only + CHK_P3.Enabled = CHK_P5.Enabled = CHK_P7.Enabled = CHK_P9.Enabled = (gt != 0) && (gt != 255); // Not Male-Only and Not Genderless for (int i = 0; i < 7; i++) CL[i].Enabled = true; @@ -253,12 +253,13 @@ namespace PKHeX CHK_P1.Checked = !(ModifierKeys == Keys.Control); } int index = LB_Species.SelectedIndex+1; - DataTable spectable = PKX.SpeciesTable(); - int gt = (int)spectable.Rows[index][8]; - CHK_P2.Checked = CHK_P4.Checked = CHK_P6.Checked = CHK_P8.Checked = (((gt > 255) && (gt != 257)) || gt < 256) && !(ModifierKeys == Keys.Control); - CHK_P3.Checked = CHK_P5.Checked = CHK_P7.Checked = CHK_P9.Checked = (gt != 256) && (gt != 258) && !(ModifierKeys == Keys.Control); + PKX.PersonalParser.Personal MonData = PKX.PersonalGetter.GetPersonal(index); + int gt = MonData.GenderRatio; + CHK_P2.Checked = CHK_P4.Checked = CHK_P6.Checked = CHK_P8.Checked = ((gt != 254)) && !(ModifierKeys == Keys.Control); + CHK_P3.Checked = CHK_P5.Checked = CHK_P7.Checked = CHK_P9.Checked = (gt != 0) && (gt != 255) && !(ModifierKeys == Keys.Control); + changePartitionBool(null, null); changeLanguageBool(null, null); LB_Species.SelectedIndex++; diff --git a/SAV/SAV_PokedexXY.cs b/SAV/SAV_PokedexXY.cs index 8f63bd6a4..ca0660fc4 100644 --- a/SAV/SAV_PokedexXY.cs +++ b/SAV/SAV_PokedexXY.cs @@ -168,12 +168,12 @@ namespace PKHeX CHK_P10.Enabled = true; int index = LB_Species.SelectedIndex + 1; - DataTable spectable = PKX.SpeciesTable(); - int gt = (int)spectable.Rows[index][8]; - - CHK_P2.Enabled = CHK_P4.Enabled = CHK_P6.Enabled = CHK_P8.Enabled = (((gt > 255) && (gt != 257)) || gt < 256); - CHK_P3.Enabled = CHK_P5.Enabled = CHK_P7.Enabled = CHK_P9.Enabled = (gt != 256) && (gt != 258); + PKX.PersonalParser.Personal MonData = PKX.PersonalGetter.GetPersonal(index); + int gt = MonData.GenderRatio; + CHK_P2.Enabled = CHK_P4.Enabled = CHK_P6.Enabled = CHK_P8.Enabled = (gt != 254); // Not Female-Only + CHK_P3.Enabled = CHK_P5.Enabled = CHK_P7.Enabled = CHK_P9.Enabled = (gt != 0) && (gt != 255); // Not Male-Only and Not Genderless + for (int i = 0; i < 7; i++) CL[i].Enabled = true; } @@ -296,12 +296,12 @@ namespace PKHeX CHK_F1.Checked = !(ModifierKeys == Keys.Control); } int index = LB_Species.SelectedIndex+1; - DataTable spectable = PKX.SpeciesTable(); - int gt = (int)spectable.Rows[index][8]; - - CHK_P2.Checked = CHK_P4.Checked = CHK_P6.Checked = CHK_P8.Checked = (((gt > 255) && (gt != 257)) || gt < 256) && !(ModifierKeys == Keys.Control); - CHK_P3.Checked = CHK_P5.Checked = CHK_P7.Checked = CHK_P9.Checked = (gt != 256) && (gt != 258) && !(ModifierKeys == Keys.Control); + PKX.PersonalParser.Personal MonData = PKX.PersonalGetter.GetPersonal(index); + int gt = MonData.GenderRatio; + CHK_P2.Checked = CHK_P4.Checked = CHK_P6.Checked = CHK_P8.Checked = ((gt != 254)) && !(ModifierKeys == Keys.Control); + CHK_P3.Checked = CHK_P5.Checked = CHK_P7.Checked = CHK_P9.Checked = (gt != 0) && (gt != 255) && !(ModifierKeys == Keys.Control); + changePartitionBool(null, null); changeLanguageBool(null, null); LB_Species.SelectedIndex++; diff --git a/SAV/SAV_SecretBase.cs b/SAV/SAV_SecretBase.cs index 83ea0d253..35b3c004f 100644 --- a/SAV/SAV_SecretBase.cs +++ b/SAV/SAV_SecretBase.cs @@ -576,20 +576,19 @@ namespace PKHeX // Check for Gender Changes // Get Gender Threshold species = Util.getIndex(CB_Species); - DataTable spectable = PKX.SpeciesTable(); - gt = (int)spectable.Rows[species][8]; + PKX.PersonalParser.Personal MonData = PKX.PersonalGetter.GetPersonal(species); + int gt = MonData.GenderRatio; - if (gt == 258) // Genderless + if (gt == 255) // Genderless genderflag = 2; - else if (gt == 257) // Female Only + else if (gt == 254) // Female Only genderflag = 1; - else if (gt == 256) // Male Only + else if (gt == 0) // Male Only genderflag = 0; setGenderLabel(); m_parent.updateAbilityList(MT_AbilNo, Util.getIndex(CB_Species), CB_Ability, CB_Form); } - private void updateForm(object sender, EventArgs e) { m_parent.updateAbilityList(MT_AbilNo, Util.getIndex(CB_Species), CB_Ability, CB_Form); @@ -600,15 +599,16 @@ namespace PKHeX else if (PKX.getGender(CB_Form.Text) == 1) // ♀ Label_Gender.Text = Form1.gendersymbols[1]; // ♀ } - private int species; private int gt; private int genderflag; + + private int species; private int genderflag; private void Label_Gender_Click(object sender, EventArgs e) { // Get Gender Threshold species = Util.getIndex(CB_Species); - DataTable spectable = PKX.SpeciesTable(); - gt = (int)spectable.Rows[species][8]; + PKX.PersonalParser.Personal MonData = PKX.PersonalGetter.GetPersonal(species); + int gt = MonData.GenderRatio; - if (gt > 255) // Single gender/genderless + if (gt == 255 || gt == 0 || gt == 254) // Single gender/genderless return; if (gt < 256) // If not a single gender(less) species: