mirror of
https://github.com/kwsch/PKHeX
synced 2024-11-10 06:34:19 +00:00
Add support for Indigo Disk (#4111)
This commit is contained in:
parent
4f56aa27f7
commit
01c82e472e
308 changed files with 6286 additions and 2564 deletions
2
.github/README-de.md
vendored
2
.github/README-de.md
vendored
|
@ -24,7 +24,7 @@ PKHeX erwartet entschlüsselte Spielstände. Da diese konsolenspezifisch verschl
|
|||
|
||||
## Screenshots
|
||||
|
||||
![Main Window](https://i.imgur.com/37SMQSr.png)
|
||||
![Main Window](https://i.imgur.com/7ErmRJI.png)
|
||||
|
||||
## Erstellen
|
||||
|
||||
|
|
2
.github/README-es.md
vendored
2
.github/README-es.md
vendored
|
@ -24,7 +24,7 @@ PKHeX espera archivos de guardado que no estén cifrados con las claves específ
|
|||
|
||||
## Capturas de Pantalla
|
||||
|
||||
![Pantalla principal](https://i.imgur.com/gREbXFH.png)
|
||||
![Pantalla principal](https://i.imgur.com/oM407mV.png)
|
||||
|
||||
## Building
|
||||
|
||||
|
|
2
.github/README-fr.md
vendored
2
.github/README-fr.md
vendored
|
@ -23,7 +23,7 @@ PKHeX attend des fichiers de sauvegarde qui ne sont pas chiffrés avec des clés
|
|||
|
||||
## Captures d'écran
|
||||
|
||||
![Main Window](https://i.imgur.com/fk6IX2a.png)
|
||||
![Main Window](https://i.imgur.com/YEdBzlt.png)
|
||||
|
||||
## Construction
|
||||
|
||||
|
|
2
.github/README-it.md
vendored
2
.github/README-it.md
vendored
|
@ -24,7 +24,7 @@ PKHeX si aspetta file di salvataggio non criptati con le chiavi specifiche della
|
|||
|
||||
## Screenshots
|
||||
|
||||
![Main Window](https://i.imgur.com/epXOQ5M.png)
|
||||
![Main Window](https://i.imgur.com/ICmQ41m.png)
|
||||
|
||||
## Building
|
||||
|
||||
|
|
2
.github/README-zh.md
vendored
2
.github/README-zh.md
vendored
|
@ -24,7 +24,7 @@ PKHeX 所读取存档文件必须是未经主机唯一密钥加密,因此请
|
|||
|
||||
## 截图
|
||||
|
||||
![主介面](https://i.imgur.com/hM8GJ4U.png)
|
||||
![主介面](https://i.imgur.com/SfskT2Q.png)
|
||||
|
||||
## 构建
|
||||
|
||||
|
|
2
.github/README-zhHK.md
vendored
2
.github/README-zhHK.md
vendored
|
@ -24,7 +24,7 @@ PKHeX 所讀取檔案須未經主機唯一密鑰加密,因而請使用儲存
|
|||
|
||||
## 螢幕擷取截圖
|
||||
|
||||
![主介面](https://i.imgur.com/U5FKBIF.png)
|
||||
![主介面](https://i.imgur.com/zEGGuJC.png)
|
||||
|
||||
## 構建
|
||||
|
||||
|
|
|
@ -66,6 +66,11 @@ public static class HiddenPower
|
|||
return SixBitType[(int)hp];
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Count of unique Hidden Power Types
|
||||
/// </summary>
|
||||
public const int TypeCount = 16;
|
||||
|
||||
private static ReadOnlySpan<byte> SixBitType =>
|
||||
[
|
||||
// (low-bit mash) * 15 / 63
|
||||
|
|
|
@ -222,12 +222,17 @@ public static partial class Extensions
|
|||
var afterBox = sav.GetBoxOffset(BoxLayout9.BoxCount);
|
||||
var list = new List<SlotInfoMisc>
|
||||
{
|
||||
// Ride Legend
|
||||
new(sav.BoxInfo.Data.AsMemory(afterBox), 0, true, Mutable: true) { Type = StorageSlotType.Party },
|
||||
};
|
||||
|
||||
var block = sav.Blocks.GetBlock(SaveBlockAccessor9SV.KFusedCalyrex);
|
||||
var c = new SlotInfoMisc(block.Data, 3, 0, true) { Type = StorageSlotType.Fused };
|
||||
list.Add(c);
|
||||
list.Add(new(block.Data, 0, 0, true) { Type = StorageSlotType.Fused });
|
||||
|
||||
if (sav.Blocks.TryGetBlock(SaveBlockAccessor9SV.KFusedKyurem, out var kyurem))
|
||||
list.Add(new(kyurem.Data, 1, 0, true) { Type = StorageSlotType.Fused });
|
||||
if (sav.Blocks.TryGetBlock(SaveBlockAccessor9SV.KFusedNecrozma, out var necrozma))
|
||||
list.Add(new(necrozma.Data, 2, 0, true) { Type = StorageSlotType.Fused });
|
||||
return list;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -309,7 +309,11 @@ public sealed class ShowdownSet : IBattleTemplate
|
|||
var types = Strings.types;
|
||||
var val = StringUtil.FindIndexIgnoreCase(types, value);
|
||||
if (val < 0)
|
||||
{
|
||||
if (value is not "Stellar")
|
||||
return false;
|
||||
val = TeraTypeUtil.Stellar;
|
||||
}
|
||||
TeraType = (MoveType)val;
|
||||
return true;
|
||||
}
|
||||
|
@ -369,8 +373,14 @@ public sealed class ShowdownSet : IBattleTemplate
|
|||
// Secondary Stats
|
||||
if ((uint)Ability < Strings.Ability.Count)
|
||||
result.Add($"Ability: {Strings.Ability[Ability]}");
|
||||
if (Context == EntityContext.Gen9 && TeraType != MoveType.Any && (uint)TeraType < Strings.Types.Count)
|
||||
if (Context == EntityContext.Gen9 && TeraType != MoveType.Any)
|
||||
{
|
||||
if ((uint)TeraType <= (int)MoveType.Fairy)
|
||||
result.Add($"Tera Type: {Strings.Types[(int)TeraType]}");
|
||||
else if ((uint)TeraType == TeraTypeUtil.Stellar)
|
||||
result.Add($"Tera Type: {Strings.Types[TeraTypeUtil.StellarTypeDisplayStringIndex]}");
|
||||
}
|
||||
|
||||
if (Level != 100)
|
||||
result.Add($"Level: {Level}");
|
||||
if (Shiny)
|
||||
|
@ -703,7 +713,8 @@ public sealed class ShowdownSet : IBattleTemplate
|
|||
|
||||
// Defined Hidden Power
|
||||
var type = GetHiddenPowerType(moveString[(hiddenPowerName.Length + 1)..]);
|
||||
int hpVal = StringUtil.FindIndexIgnoreCase(Strings.types.AsSpan(1, 16), type); // Get HP Type
|
||||
var types = Strings.types.AsSpan(1, HiddenPower.TypeCount);
|
||||
int hpVal = StringUtil.FindIndexIgnoreCase(types, type); // Get HP Type
|
||||
if (hpVal == -1)
|
||||
return hiddenPowerName;
|
||||
|
||||
|
|
|
@ -312,5 +312,9 @@ public enum Ability : ushort
|
|||
EmbodyAspect3,
|
||||
ToxicChain,
|
||||
SupersweetSyrup,
|
||||
TeraShift,
|
||||
TeraShell,
|
||||
TeraformZero,
|
||||
PoisonPuppeteer,
|
||||
MAX_COUNT,
|
||||
}
|
||||
|
|
|
@ -910,5 +910,20 @@ public enum Move : ushort
|
|||
MatchaGotcha,
|
||||
SyrupBomb,
|
||||
IvyCudgel,
|
||||
ElectroShot,
|
||||
TeraStarstorm,
|
||||
FickleBeam,
|
||||
BurningBulwark,
|
||||
Thunderclap,
|
||||
MightyCleave,
|
||||
TachyonCutter,
|
||||
HardPress,
|
||||
DragonCheer,
|
||||
AlluringVoice,
|
||||
TemperFlare,
|
||||
SupercellSlam,
|
||||
PsychicNoise,
|
||||
UpperHand,
|
||||
MalignantChain,
|
||||
MAX_COUNT,
|
||||
}
|
||||
|
|
|
@ -1023,5 +1023,13 @@ public enum Species : ushort
|
|||
Munkidori,
|
||||
Fezandipiti,
|
||||
Ogerpon,
|
||||
Archaludon,
|
||||
Hydrapple,
|
||||
GougingFire,
|
||||
RagingBolt,
|
||||
IronBoulder,
|
||||
IronCrown,
|
||||
Terapagos,
|
||||
Pecharunt,
|
||||
MAX_COUNT,
|
||||
}
|
||||
|
|
|
@ -613,6 +613,9 @@ public sealed class GameStrings : IBasicStrings
|
|||
m[164] += " (1)"; // Kitakami Wilds
|
||||
m[167] += " (2)"; // Kitakami Wilds
|
||||
|
||||
m[196] += " (1)"; // Area Zero Underdepths
|
||||
m[198] += " (2)"; // Area Zero Underdepths
|
||||
|
||||
set.Met3[1] += $" ({NPC})"; // Anything from an NPC
|
||||
set.Met3[2] += $" ({EggName})"; // Egg From Link Trade
|
||||
for (int i = 3; i <= 6; i++) // distinguish first set of regions (unused) from second (used)
|
||||
|
|
|
@ -169,8 +169,8 @@ public static class Locations
|
|||
public static bool IsMetLocation7SM(ushort z) => z < 200; // Outer Cape
|
||||
public static bool IsMetLocation7USUM(ushort z) => z < 234; // Dividing Peak Tunnel
|
||||
public static bool IsMetLocation7GG(ushort z) => z <= 54; // Pokémon League
|
||||
public static bool IsMetLocation8SWSH(ushort z) => z <= 246; // at the Crown Tundra Station
|
||||
public static bool IsMetLocation8SWSH(ushort z) => z <= 246; // Crown Tundra Station
|
||||
public static bool IsMetLocation8BDSP(ushort z) => z <= 657; // Ramanas Park (Genome Room)
|
||||
public static bool IsMetLocation8LA(ushort z) => z <= 155; // Training Grounds
|
||||
public static bool IsMetLocation9SV(ushort z) => z <= 131; // Uva Academy
|
||||
public static bool IsMetLocation9SV(ushort z) => z <= 200; // Terarium (Entry Tunnel)
|
||||
}
|
||||
|
|
|
@ -7,13 +7,23 @@ internal static class Locations9
|
|||
/// <summary>
|
||||
/// Checks if the location is accessible in Paldea (without DLC).
|
||||
/// </summary>
|
||||
public static bool IsAccessiblePreDLC(ushort location) => !IsKitakami(location);
|
||||
public static bool IsAccessiblePreDLC(ushort location) => location <= 131;
|
||||
|
||||
/// <summary>
|
||||
/// Checks if the location is accessible in Kitakami.
|
||||
/// </summary>
|
||||
public static bool IsKitakami(ushort location) => location is (>= 132 and <= 170);
|
||||
|
||||
/// <summary>
|
||||
/// Checks if the location is accessible in Blueberry Academy.
|
||||
/// </summary>
|
||||
public static bool IsBlueberry(ushort location) => location is (>= 172 and <= 194);
|
||||
|
||||
/// <summary>
|
||||
/// Checks if the location is accessible in Blueberry Academy.
|
||||
/// </summary>
|
||||
public static bool IsPaldeaDLC(ushort location) => location is 196 or 198; // Area Zero Underdepths
|
||||
|
||||
public static ReadOnlySpan<byte> Met0 =>
|
||||
[
|
||||
002, 004, 006, 008,
|
||||
|
@ -36,7 +46,10 @@ internal static class Locations9
|
|||
130, 131, 132, 134, 136, 138,
|
||||
140, 142, 144, 146, 148, 150,
|
||||
152, 154, 156, 158, 160, 162,
|
||||
164, 166, 168, 170,
|
||||
164, 166, 168, 170, 172, 174,
|
||||
176, 178, 180, 182, 184, 186,
|
||||
188, 190, 192, 194, 196, 198,
|
||||
200,
|
||||
];
|
||||
|
||||
public static ReadOnlySpan<ushort> Met3 =>
|
||||
|
|
|
@ -47,7 +47,7 @@ public static class HeldItemLumpUtil
|
|||
9 when item is (>= 0328 and <= 0419) // TM01-TM92
|
||||
or (>= 0618 and <= 0620) // TM093-TM095
|
||||
or (>= 0690 and <= 0693) // TM096-TM099
|
||||
or (>= 2160 and <= 2261) /* TM100-TM201 */ => HeldItemLumpImage.TechnicalMachine,
|
||||
or (>= 2160 and <= 2289) /* TM100-TM229 */ => HeldItemLumpImage.TechnicalMachine,
|
||||
_ => HeldItemLumpImage.NotLump,
|
||||
};
|
||||
}
|
||||
|
|
|
@ -40,27 +40,29 @@ public sealed class ItemStorage9SV : IItemStorage
|
|||
0045, 0046, 0047, 0048, 0049, 0050, 0051, 0052, 0053, 0080,
|
||||
0081, 0082, 0083, 0084, 0085, 0107, 0108, 0109, 0110, 0111,
|
||||
0112, 0135, 0136, 0213, 0214, 0217, 0218, 0219, 0220, 0221,
|
||||
0222, 0223, 0224, 0228, 0229, 0230, 0231, 0232, 0233, 0234,
|
||||
0236, 0237, 0238, 0239, 0240, 0241, 0242, 0243, 0244, 0245,
|
||||
0246, 0247, 0248, 0249, 0250, 0251, 0253, 0265, 0266, 0267,
|
||||
0268, 0269, 0270, 0271, 0272, 0273, 0275, 0276, 0277, 0278,
|
||||
0279, 0280, 0281, 0282, 0283, 0284, 0285, 0286, 0287, 0288,
|
||||
0289, 0290, 0291, 0292, 0293, 0294, 0295, 0296, 0297, 0298,
|
||||
0299, 0300, 0301, 0302, 0303, 0304, 0305, 0306, 0307, 0308,
|
||||
0309, 0310, 0311, 0312, 0313, 0325, 0326, 0327, 0485, 0486,
|
||||
0487, 0488, 0489, 0490, 0491, 0537, 0538, 0539, 0540, 0541,
|
||||
0542, 0543, 0544, 0545, 0546, 0547, 0564, 0565, 0566, 0567,
|
||||
0568, 0569, 0570, 0639, 0640, 0644, 0645, 0648, 0649, 0650,
|
||||
0795, 0796, 0846, 0849, 0853, 0854, 0855, 0856, 0879, 0880,
|
||||
0881, 0882, 0883, 0884, 1103, 1104, 1116, 1117, 1118, 1119,
|
||||
1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1231,
|
||||
1232, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241,
|
||||
1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1250, 1251,
|
||||
1253, 1254, 1582, 1592, 1606, 1777, 1778, 1779, 1861, 1862,
|
||||
1863, 1864, 1865, 1866, 1867, 1868, 1869, 1870, 1871, 1872,
|
||||
1873, 1874, 1875, 1876, 1877, 1878, 1879, 1880, 1881, 1882,
|
||||
1883, 1884, 1885, 1886, 2344, 2345, 2401, 2402, 2403, 2404,
|
||||
2406, 2407, 2408, 2411, 2412, 2413, 2414, 2415, 2416, 2479,
|
||||
0222, 0223, 0224, 0225, 0228, 0229, 0230, 0231, 0232, 0233,
|
||||
0234, 0235, 0236, 0237, 0238, 0239, 0240, 0241, 0242, 0243,
|
||||
0244, 0245, 0246, 0247, 0248, 0249, 0250, 0251, 0252, 0253,
|
||||
0265, 0266, 0267, 0268, 0269, 0270, 0271, 0272, 0273, 0275,
|
||||
0276, 0277, 0278, 0279, 0280, 0281, 0282, 0283, 0284, 0285,
|
||||
0286, 0287, 0288, 0289, 0290, 0291, 0292, 0293, 0294, 0295,
|
||||
0296, 0297, 0298, 0299, 0300, 0301, 0302, 0303, 0304, 0305,
|
||||
0306, 0307, 0308, 0309, 0310, 0311, 0312, 0313, 0321, 0322,
|
||||
0323, 0324, 0325, 0326, 0327, 0485, 0486, 0487, 0488, 0489,
|
||||
0490, 0491, 0537, 0538, 0539, 0540, 0541, 0542, 0543, 0544,
|
||||
0545, 0546, 0547, 0564, 0565, 0566, 0567, 0568, 0569, 0570,
|
||||
0639, 0640, 0644, 0645, 0648, 0649, 0650, 0795, 0796, 0846,
|
||||
0849, 0853, 0854, 0855, 0856, 0879, 0880, 0881, 0882, 0883,
|
||||
0884, 1103, 1104, 1109, 1110, 1111, 1112, 1113, 1114, 1115,
|
||||
1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125,
|
||||
1126, 1127, 1128, 1231, 1232, 1233, 1234, 1235, 1236, 1237,
|
||||
1238, 1239, 1240, 1241, 1242, 1243, 1244, 1245, 1246, 1247,
|
||||
1248, 1249, 1250, 1251, 1253, 1254, 1581, 1582, 1592, 1606,
|
||||
1777, 1778, 1779, 1861, 1862, 1863, 1864, 1865, 1866, 1867,
|
||||
1868, 1869, 1870, 1871, 1872, 1873, 1874, 1875, 1876, 1877,
|
||||
1878, 1879, 1880, 1881, 1882, 1883, 1884, 1885, 1886, 2344,
|
||||
2345, 2401, 2402, 2403, 2404, 2406, 2407, 2408, 2411, 2412,
|
||||
2413, 2414, 2415, 2416, 2479, 2482, 2549,
|
||||
];
|
||||
|
||||
private static ReadOnlySpan<ushort> Pouch_TM_SV =>
|
||||
|
@ -85,7 +87,9 @@ public sealed class ItemStorage9SV : IItemStorage
|
|||
2230, 2231, 2232, 2233, 2234, 2235, 2236, 2237, 2238, 2239,
|
||||
2240, 2241, 2242, 2243, 2244, 2245, 2246, 2247, 2248, 2249,
|
||||
2250, 2251, 2252, 2253, 2254, 2255, 2256, 2257, 2258, 2259,
|
||||
2260, 2261,
|
||||
2260, 2261, 2262, 2263, 2264, 2265, 2266, 2267, 2268, 2269,
|
||||
2270, 2271, 2272, 2273, 2274, 2275, 2276, 2277, 2278, 2279,
|
||||
2280, 2281, 2282, 2283, 2284, 2285, 2286, 2287, 2288, 2289,
|
||||
];
|
||||
|
||||
private static ReadOnlySpan<ushort> Pouch_Treasure_SV =>
|
||||
|
@ -112,14 +116,18 @@ public sealed class ItemStorage9SV : IItemStorage
|
|||
2389, 2390, 2391, 2392, 2393, 2394, 2395, 2396, 2397, 2398,
|
||||
2399, 2400, 2417, 2418, 2419, 2420, 2421, 2422, 2423, 2424,
|
||||
2425, 2426, 2427, 2428, 2429, 2430, 2431, 2432, 2433, 2434,
|
||||
2435, 2436, 2437,
|
||||
2435, 2436, 2437, 2548, 2551, 2552,
|
||||
];
|
||||
|
||||
private static ReadOnlySpan<ushort> Pouch_Event_SV =>
|
||||
[
|
||||
0078, 0466, 0631, 0632, 0638, 0703, 0765, 1267, 1278, 1587,
|
||||
1589, 1590, 1591, 1829, 1830, 1831, 1832, 1833, 1834, 1835,
|
||||
1836, 1857, 1858, 2405, 2409, 2410, 2480, 2481,
|
||||
0078, 0466, 0628, 0629, 0631, 0632, 0638, 0703, 0765, 0943,
|
||||
0944, 0945, 0946, 1267, 1278, 1587, 1589, 1590, 1591, 1829,
|
||||
1830, 1831, 1832, 1833, 1834, 1835, 1836, 1857, 1858, 2405,
|
||||
2409, 2410, 2480, 2481, 2483, 2522, 2523, 2524, 2525, 2526,
|
||||
2527, 2528, 2529, 2530, 2531, 2532, 2533, 2534, 2535, 2536,
|
||||
2537, 2538, 2539, 2540, 2541, 2542, 2543, 2544, 2545, 2546,
|
||||
2547, 2550, 2553, 2554, 2555, 2556, 2557,
|
||||
];
|
||||
|
||||
private static ReadOnlySpan<ushort> Pouch_Material_SV =>
|
||||
|
@ -146,7 +154,10 @@ public sealed class ItemStorage9SV : IItemStorage
|
|||
2447, 2448, 2449, 2450, 2451, 2452, 2453, 2454, 2455, 2456,
|
||||
2457, 2458, 2459, 2460, 2461, 2462, 2463, 2464, 2465, 2466,
|
||||
2467, 2468, 2469, 2470, 2471, 2472, 2473, 2474, 2475, 2476,
|
||||
2477, 2478,
|
||||
2477, 2478, 2484, 2485, 2486, 2487, 2488, 2489, 2490, 2491,
|
||||
2492, 2493, 2494, 2495, 2496, 2497, 2498, 2499, 2500, 2501,
|
||||
2502, 2503, 2504, 2505, 2506, 2507, 2508, 2509, 2510, 2511,
|
||||
2512, 2513, 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521,
|
||||
];
|
||||
|
||||
internal static ReadOnlySpan<InventoryType> ValidTypes =>
|
||||
|
@ -166,10 +177,8 @@ public sealed class ItemStorage9SV : IItemStorage
|
|||
InventoryType.Treasure,
|
||||
];
|
||||
|
||||
// [AUCTION] Porto Marinada specialty auctioneer, locked behind HOME in 2023.
|
||||
public static ReadOnlySpan<ushort> Unreleased =>
|
||||
[
|
||||
0005, // Safari Ball
|
||||
0016, // Cherish Ball
|
||||
|
||||
0111, // Odd Keystone
|
||||
|
@ -182,16 +191,12 @@ public sealed class ItemStorage9SV : IItemStorage
|
|||
0490, // White Apricorn
|
||||
0491, // Black Apricorn
|
||||
|
||||
0499, // Sport Ball
|
||||
0500, // Park Ball
|
||||
0708, // Lumiose Galette
|
||||
0709, // Shalour Sable
|
||||
|
||||
1230, // TM00 - Mega Punch (Nothing learns, not obtainable even though it is assigned a move.)
|
||||
|
||||
1582, // Galarica Cuff
|
||||
1592, // Galarica Wreath
|
||||
|
||||
1785, // Strange Ball
|
||||
];
|
||||
|
||||
|
|
|
@ -206,6 +206,7 @@ public static class Breeding
|
|||
(int)Koraidon or (int)Miraidon => false,
|
||||
(int)WalkingWake or (int)IronLeaves => false,
|
||||
(int)Okidogi or (int)Munkidori or (int)Fezandipiti or (int)Ogerpon => false,
|
||||
(int)GougingFire or (int)RagingBolt or (int)IronBoulder or (int)IronCrown or (int)Terapagos or (int)Pecharunt => false,
|
||||
|
||||
_ => true,
|
||||
};
|
||||
|
|
|
@ -114,10 +114,10 @@ public static class Legal
|
|||
//internal const int MaxGameID_8b = (int)GameVersion.SP;
|
||||
internal const int MaxAbilityID_8b = MaxAbilityID_8_R2;
|
||||
|
||||
internal const int MaxSpeciesID_9 = MaxSpeciesID_9_T1;
|
||||
internal const int MaxMoveID_9 = MaxMoveID_9_T1;
|
||||
internal const int MaxItemID_9 = MaxItemID_9_T1;
|
||||
internal const int MaxAbilityID_9 = MaxAbilityID_9_T1;
|
||||
internal const int MaxSpeciesID_9 = MaxSpeciesID_9_T2;
|
||||
internal const int MaxMoveID_9 = MaxMoveID_9_T2;
|
||||
internal const int MaxItemID_9 = MaxItemID_9_T2;
|
||||
internal const int MaxAbilityID_9 = MaxAbilityID_9_T2;
|
||||
|
||||
internal const int MaxSpeciesID_9_T0 = (int)Species.IronLeaves;
|
||||
internal const int MaxMoveID_9_T0 = (int)Move.MagicalTorque;
|
||||
|
@ -129,6 +129,11 @@ public static class Legal
|
|||
internal const int MaxItemID_9_T1 = 2481; // Glimmering Charm
|
||||
internal const int MaxAbilityID_9_T1 = (int)Ability.SupersweetSyrup;
|
||||
|
||||
internal const int MaxSpeciesID_9_T2 = (int)Species.Pecharunt;
|
||||
internal const int MaxMoveID_9_T2 = (int)Move.MalignantChain;
|
||||
internal const int MaxItemID_9_T2 = 2557; // Briar’s Book
|
||||
internal const int MaxAbilityID_9_T2 = (int)Ability.PoisonPuppeteer;
|
||||
|
||||
internal const int MaxBallID_9 = (int)Ball.LAOrigin;
|
||||
internal const int MaxGameID_9 = (int)GameVersion.VL;
|
||||
internal const int MaxGameID_HOME = MaxGameID_9;
|
||||
|
|
|
@ -74,6 +74,42 @@ internal static class Encounters9
|
|||
new(SV) { FixedBall = Ball.Poke, Species = 0390, Shiny = Never, Level = 01, Location = 000, Ability = OnlyFirst, Size = 128, EggLocation = 60005 }, // Chimchar
|
||||
new(SV) { FixedBall = Ball.Poke, Species = 0393, Shiny = Never, Level = 01, Location = 000, Ability = OnlyFirst, Size = 128, EggLocation = 60005 }, // Piplup
|
||||
#endregion
|
||||
|
||||
#region Sudachi 2
|
||||
// Legendary Pokémon
|
||||
new(SV) { Species = 0144, Shiny = Never, Level = 70, Location = 038, Ability = OnlyFirst, TeraType = GemType.Ice, Size = 128 }, // Articuno
|
||||
new(SV) { Species = 0145, Shiny = Never, Level = 70, Location = 006, Ability = OnlyFirst, TeraType = GemType.Electric, Size = 128 }, // Zapdos
|
||||
new(SV) { Species = 0146, Shiny = Never, Level = 70, Location = 024, Ability = OnlyFirst, TeraType = GemType.Fire, Size = 128 }, // Moltres
|
||||
new(SV) { Species = 0243, Shiny = Never, Level = 70, Location = 022, Ability = OnlyFirst, TeraType = GemType.Electric, Size = 128 }, // Raikou
|
||||
new(SV) { Species = 0244, Shiny = Never, Level = 70, Location = 032, Ability = OnlyFirst, TeraType = GemType.Fire, Size = 128 }, // Entei
|
||||
new(SV) { Species = 0245, Shiny = Never, Level = 70, Location = 040, Ability = OnlyFirst, TeraType = GemType.Water, Size = 128 }, // Suicune
|
||||
new(SV) { Species = 0249, Shiny = Never, Level = 70, Location = 062, Ability = OnlyFirst, TeraType = GemType.Water, Size = 128 }, // Lugia
|
||||
new(SV) { Species = 0250, Shiny = Never, Level = 70, Location = 014, Ability = OnlyFirst, TeraType = GemType.Fire, Size = 128 }, // Ho-Oh
|
||||
new(SV) { Species = 0380, Shiny = Never, Level = 70, Location = 014, Ability = OnlyFirst, Gender = 1, TeraType = GemType.Psychic, Size = 128 }, // Latias
|
||||
new(SV) { Species = 0381, Shiny = Never, Level = 70, Location = 048, Ability = OnlyFirst, Gender = 0, TeraType = GemType.Psychic, Size = 128, Moves = new(295,406,428,225) }, // Latios
|
||||
new(SV) { Species = 0382, Shiny = Never, Level = 70, Location = 040, Ability = OnlyFirst, TeraType = GemType.Water, Size = 128 }, // Kyogre
|
||||
new(SV) { Species = 0383, Shiny = Never, Level = 70, Location = 067, Ability = OnlyFirst, TeraType = GemType.Fire, Size = 128 }, // Groudon
|
||||
new(SV) { Species = 0384, Shiny = Never, Level = 70, Location = 050, Ability = OnlyFirst, TeraType = GemType.Flying, Size = 128 }, // Rayquaza
|
||||
new(SV) { Species = 0638, Shiny = Never, Level = 70, Location = 048, Ability = OnlyFirst, TeraType = GemType.Fighting, Size = 128 }, // Cobalion
|
||||
new(SV) { Species = 0639, Shiny = Never, Level = 70, Location = 022, Ability = OnlyFirst, TeraType = GemType.Fighting, Size = 128 }, // Terrakion
|
||||
new(SV) { Species = 0640, Shiny = Never, Level = 70, Location = 030, Ability = OnlyFirst, TeraType = GemType.Fighting, Size = 128 }, // Virizion
|
||||
new(SV) { Species = 0643, Shiny = Never, Level = 70, Location = 034, Ability = OnlyFirst, TeraType = GemType.Dragon, Size = 128 }, // Reshiram
|
||||
new(SV) { Species = 0644, Shiny = Never, Level = 70, Location = 018, Ability = OnlyFirst, TeraType = GemType.Dragon, Size = 128 }, // Zekrom
|
||||
new(SV) { Species = 0646, Shiny = Never, Level = 70, Location = 069, Ability = OnlyFirst, TeraType = GemType.Dragon, Size = 128 }, // Kyurem
|
||||
new(SV) { Species = 0791, Shiny = Never, Level = 70, Location = 010, Ability = OnlyFirst, TeraType = GemType.Psychic, Size = 128 }, // Solgaleo
|
||||
new(SV) { Species = 0792, Shiny = Never, Level = 70, Location = 040, Ability = OnlyFirst, TeraType = GemType.Psychic, Size = 128 }, // Lunala
|
||||
new(SV) { Species = 0800, Shiny = Never, Level = 70, Location = 109, Ability = OnlyFirst, TeraType = GemType.Psychic, Size = 128 }, // Necrozma
|
||||
new(SV) { Species = 0891, Shiny = Never, Level = 30, Location = 048, Ability = OnlyFirst, TeraType = GemType.Fighting, Size = 128 }, // Kubfu
|
||||
new(SV) { Species = 0896, Shiny = Never, Level = 70, Location = 038, Ability = OnlyFirst, TeraType = GemType.Ice, Size = 128 }, // Glastrier
|
||||
new(SV) { Species = 0897, Shiny = Never, Level = 70, Location = 038, Ability = OnlyFirst, TeraType = GemType.Ghost, Size = 128 }, // Spectrier
|
||||
|
||||
// Terapagos (Captured in Stellar Form)
|
||||
new(SV) { Species = 1024, Shiny = Never, Level = 85, Location = 198, Ability = OnlyFirst, Gender = 0, Nature = Nature.Hardy, TeraType = GemType.Stellar, Size = 128, IVs = new(31,15,31,31,31,31), Moves = new(906,428,414,352) }, // Terapagos
|
||||
|
||||
// Mythical Pokémon
|
||||
new(SV) { Species = 0648, Shiny = Never, Level = 70, Location = 176, Ability = OnlyFirst, TeraType = GemType.Fighting, Size = 128, FlawlessIVCount = 3, Moves = new(547,304,047,094) }, // Meloetta
|
||||
//new(SV) { Species = 1025, Shiny = Never, Level = 88, Location = 138, Ability = OnlyFirst, Nature = Nature.Timid, TeraType = GemType.Poison, Size = 128, FlawlessIVCount = 3, Moves = new(417,092,919,247) }, // Pecharunt
|
||||
#endregion
|
||||
];
|
||||
|
||||
internal static readonly EncounterStatic9[] StaticSL =
|
||||
|
@ -89,6 +125,10 @@ internal static class Encounters9
|
|||
|
||||
// Former Quaking Earth Titan
|
||||
new(SL) { Species = 0984, Shiny = Never, Level = 45, Location = 024, Ability = OnlyFirst, Nature = Nature.Naughty, Size = 255, IVs = new(30,30,30,30,30,30), Moves = new(229,280,282,707), IsTitan = true }, // Great Tusk
|
||||
|
||||
// Paradox Pokémon
|
||||
new(SL) { Species = 1020, Shiny = Never, Level = 75, Location = 124, Ability = OnlyFirst, TeraType = GemType.Fire, Size = 128, IVs = new(20,20,20,20,20,20) }, // Gouging Fire
|
||||
new(SL) { Species = 1021, Shiny = Never, Level = 75, Location = 124, Ability = OnlyFirst, TeraType = GemType.Electric, Size = 128, IVs = new(20,20,20,20,20,20) }, // Raging Bolt
|
||||
];
|
||||
|
||||
internal static readonly EncounterStatic9[] StaticVL =
|
||||
|
@ -105,20 +145,56 @@ internal static class Encounters9
|
|||
// Former Quaking Earth Titan
|
||||
new(VL) { Species = 0990, Shiny = Never, Level = 45, Location = 024, Ability = OnlyFirst, Nature = Nature.Naughty, Size = 255, IVs = new(30,30,30,30,30,30), Moves = new(229,442,282,707), IsTitan = true }, // Iron Treads
|
||||
|
||||
// Paradox Pokémon
|
||||
new(VL) { Species = 1022, Shiny = Never, Level = 75, Location = 124, Ability = OnlyFirst, TeraType = GemType.Rock, Size = 128, IVs = new(20,20,20,20,20,20) }, // Iron Boulder
|
||||
new(VL) { Species = 1023, Shiny = Never, Level = 75, Location = 124, Ability = OnlyFirst, TeraType = GemType.Steel, Size = 128, IVs = new(20,20,20,20,20,20) }, // Iron Crown
|
||||
|
||||
];
|
||||
|
||||
private const string tradeSV = "tradesv";
|
||||
private static readonly string[][] TradeNames = Util.GetLanguageStrings10(tradeSV, "zh2");
|
||||
|
||||
// 3 Trades are currently inaccessible (legally at least) until the Mochi Mayhem Epilogue is released.
|
||||
internal static readonly EncounterTrade9[] TradeGift_SV =
|
||||
[
|
||||
new(TradeNames, 00, SV, 0194,18) { ID32 = 033081, Ability = OnlySecond, OTGender = 1, Gender = 0, Nature = Nature.Relaxed, IVs = new(27,18,25,13,16,31) }, // Wooper
|
||||
new(TradeNames, 01, SV, 0093,25) { ID32 = 016519, Ability = OnlyFirst, OTGender = 1, Gender = 1, Nature = Nature.Lonely, IVs = new(14,20,25,31,28,16), EvolveOnTrade = true }, // Haunter
|
||||
new(TradeNames, 02, SV, 0872,10) { ID32 = 050724, Ability = Any12, OTGender = 0, Gender = 1, Nature = Nature.Bashful, IVs = new(31,18,13,20,28,26) }, // Snom
|
||||
new(TradeNames, 00, SV, 0194, 18) { FixedBall = Ball.Poke, ID32 = 033081, Ability = OnlySecond, OTGender = 1, Gender = 0, Nature = Nature.Relaxed, TeraType = GemType.Water, Weight = SizeType9.M, Scale = SizeType9.M, IVs = new(27,18,25,13,16,31) }, // Wooper
|
||||
new(TradeNames, 01, SV, 0093, 25) { FixedBall = Ball.Poke, ID32 = 016519, Ability = OnlyFirst, OTGender = 1, Gender = 1, Nature = Nature.Lonely, TeraType = GemType.Ghost, Weight = SizeType9.S, Scale = SizeType9.S, IVs = new(14,20,25,31,28,16), EvolveOnTrade = true }, // Haunter
|
||||
new(TradeNames, 02, SV, 0240, 12) { FixedBall = Ball.Quick, ID32 = 418071, Ability = OnlyHidden, OTGender = 0, Gender = 0, Nature = Nature.Docile, TeraType = GemType.Fire, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(31,12,25,15,31,31), Moves = new(264,052,108,499) }, // Magby
|
||||
new(TradeNames, 03, SV, 0982, 35) { FixedBall = Ball.Poke, ID32 = 766634, Ability = OnlyFirst, OTGender = 0, Gender = 0, Nature = Nature.Relaxed, TeraType = GemType.Flying, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(15,24,31,26,31,11), Moves = new(263,403,529,887) }, // Dudunsparce
|
||||
//new(TradeNames, 04, SV, 0133, 01) { FixedBall = Ball.Poke, ID32 = 376983, Ability = OnlyHidden, OTGender = 1, Gender = 0, Nature = Nature.Modest, TeraType = GemType.Dark, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(08,26,31,31,31,31), Moves = new(033,039,270,174) }, // Eevee
|
||||
new(TradeNames, 05, SV, 0194, 08) { FixedBall = Ball.Poke, ID32 = 591912, Ability = OnlyHidden, OTGender = 1, Gender = 0, Nature = Nature.Naughty, TeraType = GemType.Poison, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(27,31,31,06,16,30), Moves = new(341,068,491,342), Form = 1 }, // Wooper-1
|
||||
new(TradeNames, 06, SV, 0922, 24) { FixedBall = Ball.Poke, ID32 = 209896, Ability = OnlyFirst, OTGender = 0, Gender = 0, Nature = Nature.Hasty, TeraType = GemType.Fighting, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(15,22,31,29,14,03) }, // Pawmo
|
||||
new(TradeNames, 07, SV, 0974, 37) { FixedBall = Ball.Poke, ID32 = 209896, Ability = OnlyHidden, OTGender = 0, Gender = 0, Nature = Nature.Bashful, TeraType = GemType.Ice, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(31,23,18,31,15,09) }, // Cetoddle
|
||||
new(TradeNames, 08, SV, 0976, 20) { FixedBall = Ball.Poke, ID32 = 373015, Ability = OnlyHidden, OTGender = 0, Gender = 1, Nature = Nature.Sassy, TeraType = GemType.Water, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(31,28,14,26,14,18) }, // Veluza
|
||||
new(TradeNames, 09, SV, 0997, 45) { FixedBall = Ball.Poke, ID32 = 316242, Ability = OnlyFirst, OTGender = 0, Gender = 0, Nature = Nature.Relaxed, TeraType = GemType.Dragon, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(24,22,21,30,30,31), Moves = new(407,423,242,116) }, // Arctibax
|
||||
new(TradeNames, 10, SV, 0415, 15) { FixedBall = Ball.Poke, ID32 = 993663, Ability = OnlyHidden, OTGender = 1, Gender = 1, Nature = Nature.Calm, TeraType = GemType.Bug, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(24,22,31,16,28,00) }, // Combee
|
||||
new(TradeNames, 11, SV, 0884, 36) { FixedBall = Ball.Poke, ID32 = 217978, Ability = OnlyHidden, OTGender = 0, Gender = 0, Nature = Nature.Quiet, TeraType = GemType.Electric, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(20,30,25,00,31,13) }, // Duraludon
|
||||
new(TradeNames, 12, SV, 0307, 28) { FixedBall = Ball.Poke, ID32 = 137719, Ability = OnlySecond, OTGender = 1, Gender = 0, Nature = Nature.Quirky, TeraType = GemType.Fire, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(24,30,12,29,00,06), Moves = new(223,007,008,009) }, // Meditite
|
||||
new(TradeNames, 13, SV, 0192, 40) { FixedBall = Ball.Poke, ID32 = 584457, Ability = OnlySecond, OTGender = 0, Gender = 0, Nature = Nature.Brave, TeraType = GemType.Grass, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(12,19,25,20,16,24), Moves = new(885,241,283,235) }, // Sunflora
|
||||
new(TradeNames, 14, SV, 0747, 20) { FixedBall = Ball.Poke, ID32 = 158604, Ability = OnlyHidden, OTGender = 1, Gender = 1, Nature = Nature.Timid, TeraType = GemType.Poison, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(30,21,10,16,22,29) }, // Mareanie
|
||||
new(TradeNames, 15, SV, 0081, 22) { FixedBall = Ball.Poke, ID32 = 568659, Ability = OnlyFirst, OTGender = 1, Gender = 2, Nature = Nature.Rash, TeraType = GemType.Electric, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(04,29,08,30,31,02), Moves = new(527,048,086,209) }, // Magnemite
|
||||
//new(TradeNames, 16, SV, 0128, 50) { FixedBall = Ball.Poke, ID32 = 933665, Ability = OnlyFirst, OTGender = 1, Gender = 0, Nature = Nature.Jolly, TeraType = GemType.Fighting, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(31,31,26,31,31,31), Moves = new(873,528,038,370), Form = 1 }, // Tauros-1
|
||||
new(TradeNames, 17, SV, 0227, 40) { FixedBall = Ball.Heavy, ID32 = 745642, Ability = OnlySecond, OTGender = 1, Gender = 1, Nature = Nature.Lonely, TeraType = GemType.Steel, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(24,15,22,19,14,09) }, // Skarmory
|
||||
new(TradeNames, 18, SV, 0969, 05) { FixedBall = Ball.Poke, ID32 = 661291, Ability = OnlyHidden, OTGender = 1, Gender = 1, Nature = Nature.Modest, TeraType = GemType.Psychic, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(31,00,22,31,30,31), Moves = new(851,092,088,479) }, // Glimmet
|
||||
//new(TradeNames, 19, SV, 0819, 07) { FixedBall = Ball.Poke, ID32 = 105971, Ability = OnlyHidden, OTGender = 0, Gender = 1, Nature = Nature.Gentle, TeraType = GemType.Fighting, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(14,12,22,10,23,22) }, // Skwovet
|
||||
new(TradeNames, 20, SV, 0958, 25) { FixedBall = Ball.Poke, ID32 = 949475, Ability = OnlyFirst, OTGender = 1, Gender = 1, Nature = Nature.Careful, TeraType = GemType.Fairy, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(12,29,29,26,28,22) }, // Tinkatuff
|
||||
new(TradeNames, 21, SV, 0971, 10) { FixedBall = Ball.Poke, ID32 = 275703, Ability = OnlyHidden, OTGender = 1, Gender = 0, Nature = Nature.Jolly, TeraType = GemType.Ghost, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(15,26,14,16,04,31) }, // Greavard
|
||||
new(TradeNames, 22, SV, 0999, 30) { FixedBall = Ball.Poke, ID32 = 361010, Ability = OnlyFirst, OTGender = 1, Gender = 2, Nature = Nature.Sassy, TeraType = GemType.Steel, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(05,12,01,22,16,18) }, // Gimmighoul
|
||||
new(TradeNames, 23, SV, 0955, 32) { FixedBall = Ball.Poke, ID32 = 149671, Ability = OnlyHidden, OTGender = 1, Gender = 1, Nature = Nature.Impish, TeraType = GemType.Psychic, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(13,20,12,12,21,21) }, // Flittle
|
||||
new(TradeNames, 24, SV, 0857, 33) { FixedBall = Ball.Poke, ID32 = 654886, Ability = OnlyFirst, OTGender = 0, Gender = 1, Nature = Nature.Serious, TeraType = GemType.Fairy, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(22,18,18,07,31,31) }, // Hattrem
|
||||
new(TradeNames, 25, SV, 0052, 21) { FixedBall = Ball.Poke, ID32 = 314512, Ability = OnlySecond, OTGender = 0, Gender = 1, Nature = Nature.Relaxed, TeraType = GemType.Dark, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(09,31,24,11,12,12), Form = 1 }, // Meowth-1
|
||||
new(TradeNames, 26, SV, 0522, 20) { FixedBall = Ball.Poke, ID32 = 390518, Ability = OnlyFirst, OTGender = 0, Gender = 0, Nature = Nature.Hardy, TeraType = GemType.Electric, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(31,25,23,31,23,31), Shiny = Always }, // Blitzle
|
||||
new(TradeNames, 27, SV, 0840, 15) { FixedBall = Ball.Poke, ID32 = 184745, Ability = OnlyHidden, OTGender = 0, Gender = 0, Nature = Nature.Modest, TeraType = GemType.Dragon, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(30,31,22,18,31,26), Moves = new(110,310,278,389) }, // Applin
|
||||
new(TradeNames, 28, SV, 0209, 18) { FixedBall = Ball.Nest, ID32 = 816963, Ability = OnlyFirst, OTGender = 1, Gender = 0, Nature = Nature.Adamant, TeraType = GemType.Fairy, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(18,30,24,31,24,25) }, // Snubbull
|
||||
new(TradeNames, 29, SV, 0744, 12) { FixedBall = Ball.Poke, ID32 = 980975, Ability = OnlyHidden, OTGender = 1, Gender = 1, Nature = Nature.Impish, TeraType = GemType.Ground, Weight = SizeType9.M, Scale = SizeType9.M, IVs = new(20,30,02,19,15,17), Moves = new(707,088,387,283) }, // Rockruff
|
||||
new(TradeNames, 30, SV, 1012, 30) { FixedBall = Ball.Poke, ID32 = 704310, Ability = OnlyFirst, OTGender = 1, Gender = 1, Nature = Nature.Sassy, TeraType = GemType.Water, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(12,19,29,22,31,03), Moves = new(506,072,078,503) }, // Poltchageist
|
||||
new(TradeNames, 31, SV, 0316, 17) { FixedBall = Ball.Poke, ID32 = 134745, Ability = OnlyHidden, OTGender = 0, Gender = 1, Nature = Nature.Gentle, TeraType = GemType.Poison, Weight = SizeType9.VALUE, Scale = SizeType9.VALUE, IVs = new(12,28,25,19,17,31), Moves = new(491,227,499,281) }, // Gulpin
|
||||
new(TradeNames, 32, SV, 0872, 10) { FixedBall = Ball.Poke, ID32 = 050724, Ability = Any12, OTGender = 0, Gender = 1, Nature = Nature.Bashful, TeraType = GemType.Ice, Weight = SizeType9.L, Scale = SizeType9.L, IVs = new(31,18,13,20,28,26) }, // Snom
|
||||
];
|
||||
|
||||
internal static readonly EncounterTera9[] TeraBase = EncounterTera9.GetArray(Get("gem_paldea"), TeraRaidMapParent.Paldea);
|
||||
internal static readonly EncounterTera9[] TeraDLC1 = EncounterTera9.GetArray(Get("gem_kitakami"), TeraRaidMapParent.Kitakami);
|
||||
internal static readonly EncounterTera9[] TeraDLC2 = EncounterTera9.GetArray(Get("gem_blueberry"), TeraRaidMapParent.Blueberry);
|
||||
internal static readonly EncounterDist9[] Dist = EncounterDist9.GetArray(Get("dist_paldea"));
|
||||
internal static readonly EncounterMight9[] Might = EncounterMight9.GetArray(Get("might_paldea"));
|
||||
internal static readonly EncounterFixed9[] Fixed = EncounterFixed9.GetArray(Get("fixed_paldea"));
|
||||
|
|
|
@ -43,6 +43,7 @@ public record struct EncounterPossible9(EvoCriteria[] Chain, EncounterTypeGroup
|
|||
StaticFixed,
|
||||
StaticTeraBase,
|
||||
StaticTeraDLC1,
|
||||
StaticTeraDLC2,
|
||||
StaticDist,
|
||||
StaticOutbreak,
|
||||
StaticMight,
|
||||
|
@ -117,6 +118,10 @@ public record struct EncounterPossible9(EvoCriteria[] Chain, EncounterTypeGroup
|
|||
case YieldState.StaticTeraDLC1:
|
||||
if (TryGetNext(Encounters9.TeraDLC1))
|
||||
return true;
|
||||
Index = 0; State = YieldState.StaticTeraDLC2; goto case YieldState.StaticTeraDLC2;
|
||||
case YieldState.StaticTeraDLC2:
|
||||
if (TryGetNext(Encounters9.TeraDLC2))
|
||||
return true;
|
||||
Index = 0; State = YieldState.StaticDist; goto case YieldState.StaticDist;
|
||||
case YieldState.StaticDist:
|
||||
if (TryGetNext(Encounters9.Dist))
|
||||
|
|
|
@ -45,6 +45,7 @@ public record struct EncounterEnumerator9SWSH(PKM Entity, EvoCriteria[] Chain, G
|
|||
StaticFixed,
|
||||
StaticTeraBase,
|
||||
StaticTeraDLC1,
|
||||
StaticTeraDLC2,
|
||||
StaticDist,
|
||||
StaticOutbreak,
|
||||
StaticMight,
|
||||
|
@ -140,6 +141,10 @@ public record struct EncounterEnumerator9SWSH(PKM Entity, EvoCriteria[] Chain, G
|
|||
case YieldState.StaticTeraDLC1:
|
||||
if (TryGetNext(Encounters9.TeraDLC1))
|
||||
return true;
|
||||
Index = 0; State = YieldState.StaticTeraDLC2; goto case YieldState.StaticTeraDLC2;
|
||||
case YieldState.StaticTeraDLC2:
|
||||
if (TryGetNext(Encounters9.TeraDLC2))
|
||||
return true;
|
||||
Index = 0; State = YieldState.StaticDist; goto case YieldState.StaticDist;
|
||||
case YieldState.StaticDist:
|
||||
if (TryGetNext(Encounters9.Dist))
|
||||
|
|
|
@ -46,6 +46,7 @@ public record struct EncounterEnumerator9(PKM Entity, EvoCriteria[] Chain, GameV
|
|||
StaticFixed,
|
||||
StaticTeraBase,
|
||||
StaticTeraDLC1,
|
||||
StaticTeraDLC2,
|
||||
StaticDist,
|
||||
StaticOutbreak,
|
||||
StaticMight,
|
||||
|
@ -147,6 +148,10 @@ public record struct EncounterEnumerator9(PKM Entity, EvoCriteria[] Chain, GameV
|
|||
case YieldState.StaticTeraDLC1:
|
||||
if (TryGetNext(Encounters9.TeraDLC1))
|
||||
return true;
|
||||
Index = 0; State = YieldState.StaticTeraDLC2; goto case YieldState.StaticTeraDLC2;
|
||||
case YieldState.StaticTeraDLC2:
|
||||
if (TryGetNext(Encounters9.TeraDLC2))
|
||||
return true;
|
||||
Index = 0; State = YieldState.StaticDist; goto case YieldState.StaticDist;
|
||||
case YieldState.StaticDist:
|
||||
if (TryGetNext(Encounters9.Dist))
|
||||
|
|
|
@ -142,7 +142,7 @@ public abstract record EncounterStatic8Nest<T>(GameVersion Version)
|
|||
|
||||
if (pk is IRibbonSetMark8 { HasMarkEncounter8: true })
|
||||
return false;
|
||||
if (pk.Species == (int)Core.Species.Shedinja && pk is IRibbonSetAffixed { AffixedRibbon: >= (int)RibbonIndex.MarkLunchtime and <= (int)RibbonIndex.MarkSlump })
|
||||
if (pk.Species == (int)Core.Species.Shedinja && pk is IRibbonSetAffixed x && ((RibbonIndex)x.AffixedRibbon).IsEncounterMark8())
|
||||
return false;
|
||||
|
||||
if (!IsMatchEggLocation(pk))
|
||||
|
|
|
@ -174,7 +174,7 @@ public sealed record EncounterSlot8a(EncounterArea8a Parent, ushort Species, byt
|
|||
private bool IsFormArgMismatch(PKM pk) => pk.Species switch
|
||||
{
|
||||
(int)Core.Species.Wyrdeer when Species is not (int)Core.Species.Wyrdeer && pk is IFormArgument { FormArgument: 0 } => true,
|
||||
(int)Core.Species.Overqwil when Species is not (int)Core.Species.Overqwil && pk is IFormArgument { FormArgument: 0 } => true,
|
||||
(int)Core.Species.Overqwil when Species is not (int)Core.Species.Overqwil && pk is IFormArgument { FormArgument: 0 } and IHomeTrack { HasTracker: false } => true,
|
||||
(int)Core.Species.Basculegion when Species is not (int)Core.Species.Basculegion && pk is IFormArgument { FormArgument: 0 } => true,
|
||||
_ => false,
|
||||
};
|
||||
|
|
|
@ -6,7 +6,7 @@ namespace PKHeX.Core;
|
|||
/// Generation 9 Static Encounter
|
||||
/// </summary>
|
||||
public sealed record EncounterStatic9(GameVersion Version)
|
||||
: IEncounterable, IEncounterMatch, IEncounterConvertible<PK9>, IMoveset, IFlawlessIVCount, IFixedIVSet, IGemType, IFixedGender, IFixedNature, IEncounterMarkExtra
|
||||
: IEncounterable, IEncounterMatch, IEncounterConvertible<PK9>, IMoveset, IFlawlessIVCount, IFixedIVSet, IGemType, IFatefulEncounterReadOnly, IFixedGender, IFixedNature, IEncounterMarkExtra
|
||||
{
|
||||
public int Generation => 9;
|
||||
public EntityContext Context => EntityContext.Gen9;
|
||||
|
@ -32,6 +32,7 @@ public sealed record EncounterStatic9(GameVersion Version)
|
|||
public byte Size { get; init; }
|
||||
public bool IsTitan { get; init; }
|
||||
public bool RibbonMarkCrafty => Species == (int)Core.Species.Munchlax; // Shiny etc
|
||||
public bool FatefulEncounter { get; init; }
|
||||
public bool IsMissingExtraMark(PKM pk, out RibbonIndex index)
|
||||
{
|
||||
if (RibbonMarkCrafty)
|
||||
|
@ -80,6 +81,7 @@ public sealed record EncounterStatic9(GameVersion Version)
|
|||
MetDate = EncounterDate.GetDateSwitch(),
|
||||
Version = (byte)version,
|
||||
Ball = (byte)Ball.Poke,
|
||||
FatefulEncounter = FatefulEncounter,
|
||||
|
||||
Nickname = SpeciesName.GetSpeciesNameGeneration(Species, lang, Generation),
|
||||
Obedience_Level = LevelMin,
|
||||
|
|
|
@ -56,6 +56,7 @@ public sealed record EncounterTera9
|
|||
{
|
||||
TeraRaidMapParent.Paldea => GetRateTotalBaseSL(star),
|
||||
TeraRaidMapParent.Kitakami => GetRateTotalKitakamiSL(star),
|
||||
TeraRaidMapParent.Blueberry => GetRateTotalBlueberry(star),
|
||||
_ => 0,
|
||||
};
|
||||
|
||||
|
@ -64,6 +65,7 @@ public sealed record EncounterTera9
|
|||
{
|
||||
TeraRaidMapParent.Paldea => GetRateTotalBaseVL(star),
|
||||
TeraRaidMapParent.Kitakami => GetRateTotalKitakamiVL(star),
|
||||
TeraRaidMapParent.Blueberry => GetRateTotalBlueberry(star),
|
||||
_ => 0,
|
||||
};
|
||||
|
||||
|
@ -111,6 +113,18 @@ public sealed record EncounterTera9
|
|||
_ => 0,
|
||||
};
|
||||
|
||||
// finally the same for both games
|
||||
public static short GetRateTotalBlueberry(int star) => star switch
|
||||
{
|
||||
1 => 1100,
|
||||
2 => 1100,
|
||||
3 => 2000,
|
||||
4 => 1900,
|
||||
5 => 2100,
|
||||
6 => 2600,
|
||||
_ => 0,
|
||||
};
|
||||
|
||||
public static EncounterTera9[] GetArray(ReadOnlySpan<byte> data, TeraRaidMapParent map)
|
||||
{
|
||||
const int size = 0x18;
|
||||
|
@ -312,4 +326,5 @@ public enum TeraRaidMapParent : byte
|
|||
{
|
||||
Paldea,
|
||||
Kitakami,
|
||||
Blueberry,
|
||||
}
|
||||
|
|
|
@ -6,14 +6,14 @@ namespace PKHeX.Core;
|
|||
/// Generation 9 Trade Encounter
|
||||
/// </summary>
|
||||
public sealed record EncounterTrade9
|
||||
: IEncounterable, IEncounterMatch, IFixedTrainer, IFixedNickname, IEncounterConvertible<PK9>, IGemType, IFixedGender, IFixedNature
|
||||
: IEncounterable, IEncounterMatch, IFixedTrainer, IFixedNickname, IEncounterConvertible<PK9>, IGemType, IFixedGender, IFixedNature, IRibbonPartner, IMoveset
|
||||
{
|
||||
public int Generation => 9;
|
||||
public EntityContext Context => EntityContext.Gen9;
|
||||
public int Location => Locations.LinkTrade6NPC;
|
||||
public Shiny Shiny => Shiny.Never;
|
||||
public Shiny Shiny { get; init; }
|
||||
public bool EggEncounter => false;
|
||||
public Ball FixedBall => Ball.Poke;
|
||||
public Ball FixedBall { get; init; }
|
||||
public bool IsShiny => false;
|
||||
public int EggLocation => 0;
|
||||
public bool IsFixedTrainer => true;
|
||||
|
@ -24,16 +24,20 @@ public sealed record EncounterTrade9
|
|||
private string[] Nicknames { get; }
|
||||
|
||||
public required Nature Nature { get; init; }
|
||||
public required ushort ID32 { get; init; }
|
||||
public required uint ID32 { get; init; }
|
||||
public required AbilityPermission Ability { get; init; }
|
||||
public required byte Gender { get; init; }
|
||||
public byte Gender { get; init; }
|
||||
public required byte OTGender { get; init; }
|
||||
public required IndividualValueSet IVs { get; init; }
|
||||
public ushort Species { get; }
|
||||
public byte Level { get; }
|
||||
public Moveset Moves { get; init; }
|
||||
public bool EvolveOnTrade { get; init; }
|
||||
public SizeType9 Weight { get; init; }
|
||||
public SizeType9 Scale { get; init; }
|
||||
private const byte FixedValueScale = 128;
|
||||
|
||||
public byte Form => 0;
|
||||
public byte Form { get; init; }
|
||||
|
||||
private const string _name = "In-game Trade";
|
||||
public string Name => _name;
|
||||
|
@ -41,13 +45,15 @@ public sealed record EncounterTrade9
|
|||
public byte LevelMin => Level;
|
||||
public byte LevelMax => Level;
|
||||
|
||||
public GemType TeraType => GemType.Default;
|
||||
public required GemType TeraType { get; init; }
|
||||
public bool RibbonPartner { get; }
|
||||
|
||||
public EncounterTrade9(ReadOnlySpan<string[]> names, byte index, GameVersion game, ushort species, byte level)
|
||||
{
|
||||
Version = game;
|
||||
Nicknames = EncounterUtil.GetNamesForLanguage(names, index);
|
||||
TrainerNames = EncounterUtil.GetNamesForLanguage(names, (uint)(index + (names[1].Length >> 1)));
|
||||
RibbonPartner = index is (>= 2 and <= 31);
|
||||
Species = species;
|
||||
Level = level;
|
||||
}
|
||||
|
@ -64,6 +70,7 @@ public sealed record EncounterTrade9
|
|||
var version = this.GetCompatibleVersion((GameVersion)tr.Game);
|
||||
int lang = (int)Language.GetSafeLanguage(Generation, (LanguageID)tr.Language, version);
|
||||
var pi = PersonalTable.SV[Species, Form];
|
||||
var rnd = new Xoroshiro128Plus(Util.Rand.Rand64());
|
||||
var pk = new PK9
|
||||
{
|
||||
Species = Species,
|
||||
|
@ -89,8 +96,8 @@ public sealed record EncounterTrade9
|
|||
Nickname = Nicknames[lang],
|
||||
|
||||
HeightScalar = PokeSizeUtil.GetRandomScalar(),
|
||||
WeightScalar = PokeSizeUtil.GetRandomScalar(),
|
||||
Scale = PokeSizeUtil.GetRandomScalar(),
|
||||
WeightScalar = Weight.GetSizeValue(Weight == SizeType9.RANDOM ? FixedValueScale : default, ref rnd),
|
||||
Scale = Scale.GetSizeValue(Scale == SizeType9.RANDOM ? FixedValueScale : default, ref rnd),
|
||||
TeraTypeOriginal = GetOriginalTeraType(),
|
||||
|
||||
HT_Name = tr.OT,
|
||||
|
@ -104,6 +111,8 @@ public sealed record EncounterTrade9
|
|||
SetPINGA(pk, criteria, pi);
|
||||
if (EvolveOnTrade)
|
||||
pk.Species++;
|
||||
if (RibbonPartner)
|
||||
pk.RibbonPartner = true;
|
||||
|
||||
pk.ResetPartyStats();
|
||||
|
||||
|
@ -174,9 +183,23 @@ public sealed record EncounterTrade9
|
|||
return false;
|
||||
if (EvolveOnTrade && pk.Species == Species)
|
||||
return false;
|
||||
if (pk is IScaledSize s2)
|
||||
{
|
||||
if (pk is IScaledSize3 s3 && !VerifyScalar(Scale, s3.Scale))
|
||||
return false;
|
||||
if (!VerifyScalar(Weight, s2.WeightScalar))
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
private static bool VerifyScalar(SizeType9 type, byte value)
|
||||
{
|
||||
if (type is SizeType9.VALUE)
|
||||
return value == FixedValueScale;
|
||||
return type.IsWithinRange(value);
|
||||
}
|
||||
|
||||
private bool IsMatchEggLocation(PKM pk)
|
||||
{
|
||||
var metState = LocationsHOME.GetRemapState(Context, pk.Context);
|
||||
|
|
|
@ -36,6 +36,7 @@ public enum GemType : byte
|
|||
Dragon = 17,
|
||||
Dark = 18,
|
||||
Fairy = 19,
|
||||
Stellar = 101,
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -39,7 +39,7 @@ public static class SizeType9Extensions
|
|||
/// Gets a random size value for the specified <see cref="SizeType9"/>.
|
||||
/// </summary>
|
||||
/// <param name="type">Size Type</param>
|
||||
/// <param name="value">Value if <see cref="SizeType9.VALUE"/>, unused otherwise.</param>
|
||||
/// <param name="value">Value if <see cref="VALUE"/>, unused otherwise.</param>
|
||||
/// <param name="rand">RNG to generate value with.</param>
|
||||
/// <returns>Size Value</returns>
|
||||
/// <exception cref="ArgumentOutOfRangeException"></exception>
|
||||
|
@ -54,4 +54,22 @@ public static class SizeType9Extensions
|
|||
VALUE => value,
|
||||
_ => throw new ArgumentOutOfRangeException(nameof(type), type, null),
|
||||
};
|
||||
|
||||
/// <summary>
|
||||
/// Checks if the specified value is within the range of the <see cref="SizeType9"/>.
|
||||
/// </summary>
|
||||
/// <param name="type">Size Type</param>
|
||||
/// <param name="value">Value to check</param>
|
||||
/// <returns>True if the value is within the range of the <see cref="SizeType9"/>.</returns>
|
||||
/// <exception cref="ArgumentOutOfRangeException"></exception>
|
||||
public static bool IsWithinRange(this SizeType9 type, byte value) => type switch
|
||||
{
|
||||
RANDOM => true,
|
||||
XS => value < 0x10,
|
||||
S => value is >= 0x10 and < 0x30,
|
||||
M => value is >= 0x30 and < 0xD0,
|
||||
L => value is >= 0xD0 and < 0xF0,
|
||||
XL => value >= 0xF0,
|
||||
_ => throw new ArgumentOutOfRangeException(nameof(type), type, null),
|
||||
};
|
||||
}
|
||||
|
|
|
@ -38,6 +38,9 @@ public static class EggHatchLocation9
|
|||
3, 0, 3, 0, 3, 0, 3, 0, 3, 0,
|
||||
0, 0, 3, 0, 0, 0, 3, 0, 3, 0,
|
||||
3, 0, 3, 0, 3, 0, 3, 0, 3, 0,
|
||||
3, 0,
|
||||
3, 0, 3, 0, 3, 0, 3, 0, 3, 0,
|
||||
3, 0, 3, 0, 3, 0, 3, 0, 3, 0,
|
||||
3, 0, 3, 0, 3, 0, 3, 0, 3, 0,
|
||||
3, // Terarium (Entry Tunnel)
|
||||
];
|
||||
}
|
||||
|
|
|
@ -273,9 +273,5 @@ public sealed class EvolutionEnvironment9 : IEvolutionEnvironment
|
|||
}
|
||||
|
||||
// Unreleased Item
|
||||
private static bool IsEvolutionBanned(in ISpeciesForm head) => head.Species switch
|
||||
{
|
||||
(int)Species.Slowpoke => head.Form == 1,
|
||||
_ => false,
|
||||
};
|
||||
private static bool IsEvolutionBanned(in ISpeciesForm head) => false;
|
||||
}
|
||||
|
|
|
@ -7,6 +7,9 @@ namespace PKHeX.Core;
|
|||
/// </summary>
|
||||
public static class Tera9RNG
|
||||
{
|
||||
/// <summary>
|
||||
/// Type max (exclusive) to use when picking a random a Tera Type.
|
||||
/// </summary>
|
||||
private const uint TeraTypeCount = 18;
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -187,6 +187,7 @@ public static class FormInfo
|
|||
|
||||
(int)Palafin,
|
||||
(int)Ogerpon,
|
||||
(int)Terapagos,
|
||||
];
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -19,7 +19,8 @@ public static class SpeciesCategory
|
|||
(int)Diancie or (int)Hoopa or (int)Volcanion or
|
||||
(int)Magearna or (int)Marshadow or
|
||||
(int)Zeraora or (int)Meltan or (int)Melmetal or
|
||||
(int)Zarude
|
||||
(int)Zarude or
|
||||
(int)Pecharunt
|
||||
;
|
||||
|
||||
/// <summary>
|
||||
|
@ -36,7 +37,8 @@ public static class SpeciesCategory
|
|||
(int)Xerneas or (int)Yveltal or (int)Zygarde or
|
||||
(int)Cosmog or (int)Cosmoem or (int)Solgaleo or (int)Lunala or (int)Necrozma or
|
||||
(int)Zacian or (int)Zamazenta or (int)Eternatus or (int)Calyrex or
|
||||
(int)Koraidon or (int)Miraidon
|
||||
(int)Koraidon or (int)Miraidon or
|
||||
(int)Terapagos
|
||||
;
|
||||
|
||||
/// <summary>
|
||||
|
@ -63,7 +65,9 @@ public static class SpeciesCategory
|
|||
/// <summary>
|
||||
/// Checks if the <see cref="species"/> is a Paradox Pokémon.
|
||||
/// </summary>
|
||||
public static bool IsParadox(ushort species) => species is (>= (int)GreatTusk and <= (int)IronThorns) or (int)RoaringMoon or (int)IronValiant;
|
||||
public static bool IsParadox(ushort species) => species is (>= (int)GreatTusk and <= (int)IronThorns)
|
||||
or (int)RoaringMoon or (int)IronValiant
|
||||
or (int)GougingFire or (int)RagingBolt or (int)IronBoulder or (int)IronCrown;
|
||||
|
||||
public static bool IsFixedGenderFromDual(ushort currentSpecies) => currentSpecies switch
|
||||
{
|
||||
|
|
|
@ -91,56 +91,56 @@ public sealed class BallContextHOME : IBallContext
|
|||
public static ReadOnlySpan<byte> Permit =>
|
||||
[
|
||||
0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7B, 0x0B, 0x0B, 0x6F, 0x0B, 0x0B, 0x6F, // 000-019
|
||||
0x0B, 0x6F, 0x0B, 0x6F, 0x6B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 020-039
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x0B, 0x7F, 0x6B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6B, 0x6B, 0x7F, 0x7F, // 040-059
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6F, 0x6B, 0x6B, 0x7F, 0x7F, 0x6F, 0x6B, 0x6B, 0x7F, 0x7F, 0x7F, // 060-079
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x2F, 0x0B, 0x6B, 0x0B, 0x6F, 0x6B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6F, 0x6B, 0x7F, 0x7F, // 080-099
|
||||
0x6F, 0x6B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 100-119
|
||||
0x0B, 0x6F, 0x0B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 020-039
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x0B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 040-059
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 060-079
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 080-099
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 100-119
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 120-139
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x00, 0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x00, 0x00, 0x4B, 0x0B, 0x0B, 0x6B, 0x6B, 0x6B, 0x4B, 0x0B, // 140-159
|
||||
0x0B, 0x6F, 0x6B, 0x7F, 0x7F, 0x6F, 0x0B, 0x6F, 0x6B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6F, // 160-179
|
||||
0x6B, 0x6B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6F, 0x6B, 0x6F, 0x6F, 0x6F, 0x6B, 0x6F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6F, 0x7F, // 180-199
|
||||
0x6F, 0x00, 0x7F, 0x6F, 0x6F, 0x6B, 0x7F, 0x6F, 0x7F, 0x6F, 0x0B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6F, 0x6B, 0x6B, 0x6B, // 200-219
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6F, 0x6B, 0x7F, 0x6F, 0x6B, 0x7F, 0x6F, 0x6F, 0x7F, 0x7F, 0x7F, 0x7F, // 220-239
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x00, 0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 140-159
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6F, 0x0B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 160-179
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 180-199
|
||||
0x7F, 0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 200-219
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 220-239
|
||||
0x7F, 0x7F, 0x7F, 0x00, 0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x00, 0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 240-259
|
||||
0x7F, 0x6B, 0x6B, 0x7F, 0x7F, 0x3B, 0x0B, 0x0B, 0x0B, 0x0B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6B, 0x0B, 0x7F, 0x7F, // 260-279
|
||||
0x7F, 0x7F, 0x7F, 0x6F, 0x6B, 0x6F, 0x6B, 0x6F, 0x6B, 0x6B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6B, 0x6B, 0x7F, 0x6F, // 280-299
|
||||
0x2B, 0x0B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6F, 0x6B, 0x7F, 0x7F, 0x2B, 0x2B, 0x7F, 0x7F, 0x7F, 0x6F, 0x6B, 0x7F, 0x7F, // 300-319
|
||||
0x7F, 0x7F, 0x6B, 0x6B, 0x7F, 0x6B, 0x6B, 0x6F, 0x7F, 0x7F, 0x7F, 0x6F, 0x6B, 0x7F, 0x7F, 0x6F, 0x6F, 0x7F, 0x7F, 0x7F, // 320-339
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6B, 0x6F, 0x6F, 0x6B, 0x7F, 0x7F, 0x6F, 0x6F, 0x7F, // 340-359
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6B, 0x0B, 0x0B, 0x7F, 0x6B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x00, 0x00, 0x00, // 360-379
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6B, 0x0B, 0x0B, 0x6B, 0x0B, 0x0B, 0x6B, 0x0B, 0x0B, 0x6F, 0x6B, 0x6B, 0x2F, // 380-399
|
||||
0x0B, 0x7B, 0x6B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x23, 0x0B, 0x23, 0x0B, 0x2B, 0x0B, 0x0B, 0x7F, 0x7F, 0x6F, 0x6F, 0x6B, // 400-419
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x6B, 0x7F, 0x7F, 0x7F, 0x7F, 0x6B, 0x6B, 0x2B, 0x0B, 0x6F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 420-439
|
||||
0x7F, 0x2B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x2F, 0x6B, 0x6B, 0x7F, 0x7F, // 440-459
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6B, 0x7F, 0x7F, 0x6B, 0x7F, 0x7F, 0x7F, 0x6B, 0x7F, 0x7F, 0x7F, // 460-479
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4B, 0x03, 0x03, 0x4B, 0x03, // 480-499
|
||||
0x03, 0x6B, 0x6B, 0x6B, 0x03, 0x03, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x23, 0x03, 0x23, 0x03, 0x23, 0x03, 0x7F, 0x7F, 0x7F, // 500-519
|
||||
0x7F, 0x7F, 0x03, 0x03, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 520-539
|
||||
0x6B, 0x6B, 0x6B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 540-559
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x3B, 0x0B, 0x0B, 0x0B, 0x0B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6B, 0x0B, 0x7F, 0x7F, // 260-279
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 280-299
|
||||
0x2B, 0x0B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 300-319
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 320-339
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6B, 0x6F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 340-359
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6B, 0x0B, 0x0B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x00, 0x00, 0x00, // 360-379
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x2F, // 380-399
|
||||
0x0B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x2B, 0x0B, 0x0B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 400-419
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x2B, 0x0B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 420-439
|
||||
0x7F, 0x2B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x2F, 0x7F, 0x7F, 0x7F, 0x7F, // 440-459
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 460-479
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 480-499
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x03, 0x03, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x23, 0x03, 0x23, 0x03, 0x23, 0x03, 0x7F, 0x7F, 0x7F, // 500-519
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 520-539
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 540-559
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 560-579
|
||||
0x6B, 0x6B, 0x7F, 0x7F, 0x7F, 0x6B, 0x6B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x6B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 580-599
|
||||
0x7F, 0x7F, 0x6B, 0x6B, 0x6B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 600-619
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 580-599
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 600-619
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x00, 0x00, // 620-639
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x7F, // 640-659
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x7F, 0x7F, 0x4B, 0x7F, 0x7F, 0x7F, // 660-679
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 640-659
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x4B, 0x7F, 0x7F, 0x7F, // 660-679
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 680-699
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x00, 0x00, 0x00, 0x00, // 700-719
|
||||
0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x4B, 0x43, 0x43, 0x6B, 0x6B, 0x7F, 0x7F, 0x7F, 0x6B, // 720-739
|
||||
0x6B, 0x6B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 740-759
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x00, 0x00, 0x4B, 0x6B, 0x7F, 0x7F, 0x7F, 0x6B, // 760-779
|
||||
0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 720-739
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 740-759
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 760-779
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 780-799
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x7F, // 800-819
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 800-819
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 820-839
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 840-859
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 860-879
|
||||
0x00, 0x00, 0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6B, // 880-899
|
||||
0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, // 900-919
|
||||
0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, // 920-939
|
||||
0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, // 940-959
|
||||
0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, // 960-979
|
||||
0x6B, 0x6B, 0x6B, 0x6B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6B, 0x6B, 0x6B, 0x00, // 980-999
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6B, 0x6B, 0x6B,
|
||||
0x00, 0x00, 0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, // 880-899
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 900-919
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 920-939
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 940-959
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, // 960-979
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x00, // 980-999
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x7F, // 1000-1019
|
||||
];
|
||||
|
||||
private enum BallType : byte
|
||||
|
|
|
@ -90,5 +90,6 @@ internal static class BallUseLegality
|
|||
public const ulong WildPokeballs8g_WithRaid = WildPokeballs7b & ~(1ul << (int)Master); // Ultra Great Poke Premier, no Master
|
||||
public const ulong WildPokeballs8g_WithoutRaid = WildPokeRegular & ~(1ul << (int)Master); // Ultra Great Poke, no Premier/Master
|
||||
|
||||
public const ulong WildPokeballs9 = WildPokeballs7 | WildPokeEnhance5; // Same as Gen7 + Dream
|
||||
public const ulong WildPokeballs9 = WildPokeballs8;
|
||||
public const ulong WildPokeballs9PreDLC2 = WildPokeballs7 | WildPokeEnhance5; // Same as Gen7 + Dream
|
||||
}
|
||||
|
|
|
@ -30,10 +30,10 @@ public sealed class MarkVerifier : Verifier
|
|||
|
||||
private void VerifyNoMarksPresent(LegalityAnalysis data, IRibbonIndex m)
|
||||
{
|
||||
for (var x = MarkLunchtime; x <= MarkSlump; x++)
|
||||
for (var mark = MarkLunchtime; mark <= MarkSlump; mark++)
|
||||
{
|
||||
if (m.GetRibbon((int)x))
|
||||
data.AddLine(GetInvalid(string.Format(LRibbonMarkingFInvalid_0, GetRibbonNameSafe(x))));
|
||||
if (m.GetRibbon((int)mark))
|
||||
data.AddLine(GetInvalid(string.Format(LRibbonMarkingFInvalid_0, GetRibbonNameSafe(mark))));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -175,6 +175,11 @@ public sealed class MiscVerifier : Verifier
|
|||
if (pk9.TeraTypeOverride != (MoveType)TeraTypeUtil.OverrideNone)
|
||||
data.AddLine(GetInvalid(LTeraTypeIncorrect));
|
||||
}
|
||||
else if (pk9.Species == (int)Species.Terapagos)
|
||||
{
|
||||
if (!TeraTypeUtil.IsValidTerapagos((byte)pk9.TeraTypeOverride))
|
||||
data.AddLine(GetInvalid(LTeraTypeIncorrect));
|
||||
}
|
||||
else if (pk9.Species == (int)Species.Ogerpon)
|
||||
{
|
||||
if (!TeraTypeUtil.IsValidOgerpon((byte)pk9.TeraTypeOverride, pk9.Form))
|
||||
|
@ -223,8 +228,15 @@ public sealed class MiscVerifier : Verifier
|
|||
{
|
||||
if (enc is { Species: (int)Species.Larvesta, Form: 0 } and not EncounterEgg)
|
||||
DisallowLevelUpMove(24, (ushort)Move.BugBite, pk9, data);
|
||||
if (enc is { Species: (int)Species.Zorua, Form: 1 } and not EncounterEgg)
|
||||
else if (enc is { Species: (int)Species.Zorua, Form: 1 } and not EncounterEgg)
|
||||
DisallowLevelUpMove(28, (ushort)Move.Spite, pk9, data);
|
||||
else
|
||||
return;
|
||||
|
||||
// Safari and Sport are not obtainable in the base game.
|
||||
// For the learnset restricted cases, we need to check if the ball is available too.
|
||||
if (((BallUseLegality.WildPokeballs9PreDLC2 >> pk9.Ball) & 1) != 1)
|
||||
data.AddLine(GetInvalid(LBallUnavailable));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -248,9 +248,9 @@ public static class MarkRules
|
|||
public static RibbonIndex GetMaxAffixValue(EvolutionHistory evos)
|
||||
{
|
||||
if (evos.HasVisitedGen9)
|
||||
return MarkTitan;
|
||||
return RibbonIndexExtensions.MAX_G9;
|
||||
if (evos.HasVisitedSWSH)
|
||||
return MarkSlump; // Pioneer and Twinkling Star cannot be selected in SW/SH.
|
||||
return RibbonIndexExtensions.MAX_G8; // Pioneer and Twinkling Star cannot be selected in SW/SH.
|
||||
return unchecked((RibbonIndex)(-1));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -94,7 +94,7 @@ public static class RibbonRules
|
|||
return true;
|
||||
|
||||
// Legendaries can not compete in ranked yet.
|
||||
if (evos.HasVisitedGen9 && IsRibbonValidMasterRankSV(pk))
|
||||
if (evos.HasVisitedGen9 && IsRibbonValidMasterRankSV(enc))
|
||||
return true;
|
||||
|
||||
return false;
|
||||
|
@ -135,9 +135,111 @@ public static class RibbonRules
|
|||
return false;
|
||||
if (SpeciesCategory.IsMythical(species))
|
||||
return false;
|
||||
if (TempBanRegE.Contains(species))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
private static ReadOnlySpan<ushort> TempBanRegE =>
|
||||
[
|
||||
0001, // Bulbasaur
|
||||
0002, // Ivysaur
|
||||
0003, // Venusaur
|
||||
0007, // Squirtle
|
||||
0008, // Wartortle
|
||||
0009, // Blastoise
|
||||
0043, // Oddish
|
||||
0044, // Gloom
|
||||
0045, // Vileplume
|
||||
0084, // Doduo
|
||||
0085, // Dodrio
|
||||
0086, // Seel
|
||||
0087, // Dewgong
|
||||
0102, // Exeggcute
|
||||
0103, // Exeggutor
|
||||
0103, // Exeggutor
|
||||
0106, // Hitmonlee
|
||||
0107, // Hitmonchan
|
||||
0111, // Rhyhorn
|
||||
0112, // Rhydon
|
||||
0126, // Magmar
|
||||
0131, // Lapras
|
||||
0152, // Chikorita
|
||||
0153, // Bayleef
|
||||
0154, // Meganium
|
||||
0158, // Totodile
|
||||
0159, // Croconaw
|
||||
0160, // Feraligatr
|
||||
0182, // Bellossom
|
||||
0227, // Skarmory
|
||||
0235, // Smeargle
|
||||
0236, // Tyrogue
|
||||
0237, // Hitmontop
|
||||
0240, // Magby
|
||||
0252, // Treecko
|
||||
0253, // Grovyle
|
||||
0254, // Sceptile
|
||||
0255, // Torchic
|
||||
0256, // Combusken
|
||||
0257, // Blaziken
|
||||
0258, // Mudkip
|
||||
0259, // Marshtomp
|
||||
0260, // Swampert
|
||||
0328, // Trapinch
|
||||
0329, // Vibrava
|
||||
0330, // Flygon
|
||||
0374, // Beldum
|
||||
0375, // Metang
|
||||
0376, // Metagross
|
||||
0408, // Cranidos
|
||||
0409, // Rampardos
|
||||
0410, // Shieldon
|
||||
0411, // Bastiodon
|
||||
0464, // Rhyperior
|
||||
0467, // Magmortar
|
||||
0495, // Snivy
|
||||
0496, // Servine
|
||||
0497, // Serperior
|
||||
0498, // Tepig
|
||||
0499, // Pignite
|
||||
0500, // Emboar
|
||||
0522, // Blitzle
|
||||
0523, // Zebstrika
|
||||
0546, // Cottonee
|
||||
0547, // Whimsicott
|
||||
0572, // Minccino
|
||||
0573, // Cinccino
|
||||
0577, // Solosis
|
||||
0578, // Duosion
|
||||
0579, // Reuniclus
|
||||
0622, // Golett
|
||||
0623, // Golurk
|
||||
0677, // Espurr
|
||||
0678, // Meowstic
|
||||
0686, // Inkay
|
||||
0687, // Malamar
|
||||
0725, // Litten
|
||||
0726, // Torracat
|
||||
0727, // Incineroar
|
||||
0728, // Popplio
|
||||
0729, // Brionne
|
||||
0730, // Primarina
|
||||
0731, // Pikipek
|
||||
0732, // Trumbeak
|
||||
0733, // Toucannon
|
||||
0868, // Milcery
|
||||
0869, // Alcremie
|
||||
0884, // Duraludon
|
||||
|
||||
// New Species
|
||||
(ushort)Archaludon,
|
||||
//(ushort)Hydrapple,
|
||||
(ushort)GougingFire,
|
||||
(ushort)RagingBolt,
|
||||
(ushort)IronBoulder,
|
||||
(ushort)IronCrown,
|
||||
];
|
||||
|
||||
/// <summary>
|
||||
/// Checks if the input can receive the <see cref="IRibbonSetCommon6.RibbonTraining"/> ribbon.
|
||||
/// </summary>
|
||||
|
|
|
@ -13,6 +13,8 @@ public static class RibbonVerifierCommon9
|
|||
list.Add(ChampionPaldea);
|
||||
if (r.RibbonOnceInALifetime) // Flag it.
|
||||
list.Add(OnceInALifetime);
|
||||
if (r.RibbonPartner != args.Encounter is IRibbonPartner { RibbonPartner: true })
|
||||
list.Add(Partner);
|
||||
}
|
||||
|
||||
public static void ParseEgg(this IRibbonSetCommon9 r, ref RibbonResultList list)
|
||||
|
@ -21,5 +23,7 @@ public static class RibbonVerifierCommon9
|
|||
list.Add(ChampionPaldea);
|
||||
if (r.RibbonOnceInALifetime)
|
||||
list.Add(OnceInALifetime);
|
||||
if (r.RibbonPartner)
|
||||
list.Add(Partner);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -77,7 +77,12 @@ public static class MoveInfo
|
|||
/// Checks if the move can be known by anything in any context.
|
||||
/// </summary>
|
||||
/// <remarks> Assumes the move ID is within [0,max]. </remarks>
|
||||
public static bool IsMoveKnowable(ushort move) => !IsMoveZ(move) && !IsMoveDynamax(move);
|
||||
public static bool IsMoveKnowable(ushort move) => !IsMoveZ(move) && !IsMoveDynamax(move) && !IsMoveTorque(move);
|
||||
|
||||
/// <summary>
|
||||
/// Checks if the move is a Starmobile-only move.
|
||||
/// </summary>
|
||||
public static bool IsMoveTorque(ushort move) => move - (uint)CombatTorque <= 3;
|
||||
|
||||
/// <summary>
|
||||
/// Checks if the <see cref="move"/> is unable to be used in battle.
|
||||
|
@ -173,6 +178,7 @@ public static class MoveInfo
|
|||
{
|
||||
Gen6 when move is (int)ThousandArrows or (int)ThousandWaves => false,
|
||||
Gen8b when IsDummiedMove(MoveInfo8b.DummiedMoves, move) => false,
|
||||
Gen9 when IsDummiedMove(MoveInfo9.DummiedMoves, move) => false,
|
||||
_ => true,
|
||||
};
|
||||
|
||||
|
|
|
@ -54,7 +54,7 @@ internal static class MoveInfo9
|
|||
10, 10, 10, 10, 15, 15, 10, 10, 10, 05, 15, 10, 10, 10, 10, 10, 10, 15, 15, 05,
|
||||
10, 15, 05, 01, 15, 10, 15, 10, 10, 10, 10, 10, 10, 10, 05, 15, 15, 10, 05, 05,
|
||||
10, 10, 10, 10, 20, 20, 20, 05, 10, 10, 05, 10, 05, 05, 10, 20, 10, 10, 10, 10,
|
||||
10, 05, 15, 10, 10,
|
||||
10, 05, 15, 10, 10, 10, 05, 05, 10, 05, 05, 10, 10, 15, 10, 10, 15, 10, 15, 05,
|
||||
];
|
||||
|
||||
public static ReadOnlySpan<byte> MoveType_SV =>
|
||||
|
@ -104,7 +104,7 @@ internal static class MoveInfo9
|
|||
13, 07, 08, 01, 07, 16, 02, 12, 04, 13, 13, 00, 06, 01, 07, 13, 15, 10, 11, 08,
|
||||
00, 14, 15, 00, 05, 10, 03, 00, 00, 16, 11, 09, 10, 00, 08, 13, 10, 16, 01, 12,
|
||||
00, 14, 00, 14, 06, 11, 10, 00, 13, 07, 09, 09, 12, 08, 16, 10, 09, 16, 03, 01,
|
||||
17, 00, 11, 11, 11,
|
||||
17, 00, 11, 11, 11, 12, 00, 15, 09, 12, 05, 08, 08, 15, 17, 09, 12, 13, 01, 03,
|
||||
];
|
||||
|
||||
/// <summary>
|
||||
|
@ -118,13 +118,13 @@ internal static class MoveInfo9
|
|||
[
|
||||
0x1C, 0x20, 0x00, 0x0C, 0x00, 0x02, 0x02, 0x00, 0x04, 0x00,
|
||||
0x04, 0x00, 0x09, 0x00, 0xA1, 0x22, 0x5D, 0x50, 0x36, 0xC8,
|
||||
0xC1, 0x0E, 0x03, 0x42, 0x02, 0x00, 0x00, 0x65, 0x10, 0x22,
|
||||
0x00, 0x00, 0x04, 0x0A, 0xA4, 0x80, 0xA7, 0x71, 0x00, 0x51,
|
||||
0x91, 0x00, 0x00, 0x04, 0x64, 0x08, 0xA0, 0x67, 0x04, 0x00,
|
||||
0x00, 0x00, 0x00, 0xA4, 0x80, 0x28, 0x01, 0x41, 0x04, 0x28,
|
||||
0x23, 0x00, 0x04, 0x08, 0x10, 0x00, 0x0C, 0x83, 0xF7, 0xC6,
|
||||
0x8A, 0x02, 0x4D, 0x10, 0x80, 0x03, 0xF0, 0xC3, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0x07, 0x85, 0x26, 0xA0, 0x94, 0xFF, 0x91, 0xE7,
|
||||
0xFF, 0xFF, 0xFF, 0x00, 0xEE, 0xFF, 0x7F, 0x0A, 0x00, 0x0D,
|
||||
0x00, 0x0E, 0x00, 0x42, 0x02, 0x00, 0x00, 0x45, 0x10, 0x22,
|
||||
0x00, 0x00, 0x04, 0x0A, 0xA4, 0x80, 0x27, 0x70, 0x00, 0x51,
|
||||
0x91, 0x00, 0x00, 0x04, 0x60, 0x08, 0xA0, 0x67, 0x04, 0x00,
|
||||
0x00, 0x00, 0x00, 0xA4, 0x00, 0x28, 0x01, 0x01, 0x04, 0x28,
|
||||
0x23, 0x00, 0x04, 0x08, 0x10, 0x00, 0x0C, 0x83, 0x07, 0x00,
|
||||
0x8A, 0x02, 0x4C, 0x10, 0x80, 0x03, 0xF0, 0xC3, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0x07, 0x80, 0x26, 0xA0, 0x80, 0xFF, 0x11, 0xE1,
|
||||
0xFB, 0xFF, 0xFF, 0x00, 0xEE, 0xFF, 0x7F, 0x08, 0x00, 0x0D,
|
||||
];
|
||||
}
|
||||
|
|
|
@ -813,7 +813,7 @@ public sealed class WA8(byte[] Data) : DataMysteryGift(Data), ILangNick, INature
|
|||
|
||||
public void SetRibbon(int index, bool value = true)
|
||||
{
|
||||
ArgumentOutOfRangeException.ThrowIfGreaterThan((uint)index, (uint)MarkSlump);
|
||||
ArgumentOutOfRangeException.ThrowIfGreaterThan((uint)index, (uint)RibbonIndexExtensions.MAX_G8A);
|
||||
if (value)
|
||||
{
|
||||
if (GetRibbon(index))
|
||||
|
|
|
@ -826,11 +826,11 @@ public sealed class WB8(byte[] Data) : DataMysteryGift(Data),
|
|||
public bool RibbonHisui { get => this.GetRibbonIndex(Hisui); set => this.SetRibbonIndex(Hisui, value); }
|
||||
|
||||
public int GetRibbonByte(int index) => Array.IndexOf(Data, (byte)index, RibbonBytesOffset, RibbonBytesCount);
|
||||
public bool GetRibbon(int index) => GetRibbonByte(index) >= 0;
|
||||
public bool GetRibbon(int index) => RibbonSpan.Contains((byte)index);
|
||||
|
||||
public void SetRibbon(int index, bool value = true)
|
||||
{
|
||||
ArgumentOutOfRangeException.ThrowIfGreaterThan((uint)index, (uint)MarkSlump);
|
||||
ArgumentOutOfRangeException.ThrowIfGreaterThan((uint)index, (uint)RibbonIndexExtensions.MAX_G8B);
|
||||
if (value)
|
||||
{
|
||||
if (GetRibbon(index))
|
||||
|
|
|
@ -195,16 +195,17 @@ public sealed class WC8(byte[] Data) : DataMysteryGift(Data), ILangNick, INature
|
|||
private const int RibbonBytesCount = 0x20;
|
||||
private const int RibbonByteNone = 0xFF; // signed -1
|
||||
|
||||
private ReadOnlySpan<byte> RibbonSpan => Data.AsSpan(RibbonBytesOffset, RibbonBytesCount);
|
||||
|
||||
public bool HasMarkEncounter8
|
||||
{
|
||||
get
|
||||
{
|
||||
for (int i = 0; i < RibbonBytesCount; i++)
|
||||
foreach (var value in RibbonSpan)
|
||||
{
|
||||
var value = Data[RibbonBytesOffset + i];
|
||||
if (value == RibbonByteNone)
|
||||
return false;
|
||||
if ((RibbonIndex)value is >= MarkLunchtime and <= MarkSlump)
|
||||
return false; // end
|
||||
if (((RibbonIndex)value).IsEncounterMark8())
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -883,11 +884,11 @@ public sealed class WC8(byte[] Data) : DataMysteryGift(Data), ILangNick, INature
|
|||
public bool RibbonHisui { get => this.GetRibbonIndex(Hisui); set => this.SetRibbonIndex(Hisui, value); }
|
||||
|
||||
public int GetRibbonByte(int index) => Array.IndexOf(Data, (byte)index, RibbonBytesOffset, RibbonBytesCount);
|
||||
public bool GetRibbon(int index) => GetRibbonByte(index) >= 0;
|
||||
public bool GetRibbon(int index) => RibbonSpan.Contains((byte)index);
|
||||
|
||||
public void SetRibbon(int index, bool value = true)
|
||||
{
|
||||
ArgumentOutOfRangeException.ThrowIfGreaterThan((uint)index, (uint)MarkSlump);
|
||||
ArgumentOutOfRangeException.ThrowIfGreaterThan((uint)index, (uint)RibbonIndexExtensions.MAX_G8);
|
||||
if (value)
|
||||
{
|
||||
if (GetRibbon(index))
|
||||
|
|
|
@ -903,13 +903,14 @@ public sealed class WC9(byte[] Data) : DataMysteryGift(Data), ILangNick, INature
|
|||
public bool RibbonMarkAlpha { get => this.GetRibbonIndex(MarkAlpha); set => this.SetRibbonIndex(MarkAlpha, value); }
|
||||
public bool RibbonMarkMightiest { get => this.GetRibbonIndex(MarkMightiest); set => this.SetRibbonIndex(MarkMightiest, value); }
|
||||
public bool RibbonMarkTitan { get => this.GetRibbonIndex(MarkTitan); set => this.SetRibbonIndex(MarkTitan, value); }
|
||||
public bool RibbonPartner { get => this.GetRibbonIndex(Partner); set => this.SetRibbonIndex(Partner, value); }
|
||||
|
||||
public int GetRibbonByte(int index) => Array.IndexOf(Data, (byte)index, RibbonBytesOffset, RibbonBytesCount);
|
||||
public bool GetRibbon(int index) => GetRibbonByte(index) >= 0;
|
||||
public bool GetRibbon(int index) => RibbonSpan.Contains((byte)index);
|
||||
|
||||
public void SetRibbon(int index, bool value = true)
|
||||
{
|
||||
ArgumentOutOfRangeException.ThrowIfGreaterThan((uint)index, (uint)RibbonPartner);
|
||||
ArgumentOutOfRangeException.ThrowIfGreaterThan((uint)index, (uint)RibbonIndexExtensions.MAX_G9);
|
||||
if (value)
|
||||
{
|
||||
if (GetRibbon(index))
|
||||
|
|
|
@ -191,7 +191,7 @@ public sealed class GameDataCore : IHomeTrack, ISpeciesForm, ITrainerID, INature
|
|||
public bool RibbonMarkAlpha { get => GetFlag(0x3F, 3); set => SetFlag(0x3F, 3, value); }
|
||||
public bool RibbonMarkMightiest { get => GetFlag(0x3F, 4); set => SetFlag(0x3F, 4, value); }
|
||||
public bool RibbonMarkTitan { get => GetFlag(0x3F, 5); set => SetFlag(0x3F, 5, value); }
|
||||
public bool RIB45_6 { get => GetFlag(0x3F, 6); set => SetFlag(0x3F, 6, value); }
|
||||
public bool RibbonPartner { get => GetFlag(0x3F, 6); set => SetFlag(0x3F, 6, value); }
|
||||
public bool RIB45_7 { get => GetFlag(0x3F, 7); set => SetFlag(0x3F, 7, value); }
|
||||
|
||||
public bool RIB46_0 { get => GetFlag(0x40, 0); set => SetFlag(0x40, 0, value); }
|
||||
|
|
|
@ -27,11 +27,21 @@ public static class TeraTypeUtil
|
|||
/// </summary>
|
||||
public const byte OverrideNone = 19;
|
||||
|
||||
/// <summary>
|
||||
/// Magic value to indicate that a Tera Type is the Stellar type.
|
||||
/// </summary>
|
||||
public const byte Stellar = 99;
|
||||
|
||||
/// <summary>
|
||||
/// Max amount of Tera Types possible. Range is [0,17].
|
||||
/// </summary>
|
||||
public const byte MaxType = 17;
|
||||
|
||||
/// <summary>
|
||||
/// String resource index for the Stellar type.
|
||||
/// </summary>
|
||||
public const byte StellarTypeDisplayStringIndex = 18;
|
||||
|
||||
/// <summary>
|
||||
/// For out of range values, we fall back to this Tera Type.
|
||||
/// </summary>
|
||||
|
@ -51,7 +61,14 @@ public static class TeraTypeUtil
|
|||
/// </summary>
|
||||
/// <param name="override">Current override value</param>
|
||||
/// <returns>True if valid.</returns>
|
||||
public static bool IsValid(byte @override) => @override is <= MaxType or OverrideNone;
|
||||
public static bool IsValid(byte @override) => @override is <= MaxType or OverrideNone or Stellar;
|
||||
|
||||
/// <summary>
|
||||
/// Indicates if the Tera Type value is valid (changed to anything).
|
||||
/// </summary>
|
||||
/// <param name="override">Current override value</param>
|
||||
/// <returns>True if valid.</returns>
|
||||
public static bool IsOverrideValid(byte @override) => @override is <= MaxType or Stellar;
|
||||
|
||||
/// <summary>
|
||||
/// Checks if Ogerpon's Tera Type is valid.
|
||||
|
@ -68,6 +85,13 @@ public static class TeraTypeUtil
|
|||
_ => false,
|
||||
};
|
||||
|
||||
/// <summary>
|
||||
/// Checks if Terapagos' Tera Type is valid.
|
||||
/// </summary>
|
||||
/// <param name="type">Tera Type to check</param>
|
||||
/// <returns>True if the Tera Type is valid.</returns>
|
||||
public static bool IsValidTerapagos(byte type) => type == OverrideNone;
|
||||
|
||||
/// <summary>
|
||||
/// Calculates the effective Tera Type based on the inputs.
|
||||
/// </summary>
|
||||
|
@ -75,12 +99,12 @@ public static class TeraTypeUtil
|
|||
/// <param name="override">If the type was modified, this value will indicate accordingly.</param>
|
||||
public static MoveType GetTeraType(byte original, byte @override)
|
||||
{
|
||||
if (@override <= MaxType)
|
||||
if (IsOverrideValid(@override))
|
||||
return (MoveType)@override;
|
||||
if (@override != OverrideNone)
|
||||
return Fallback; // 18 or out of range.
|
||||
|
||||
if (original <= MaxType)
|
||||
if (original <= Stellar)
|
||||
return (MoveType)original;
|
||||
return Fallback; // out of range.
|
||||
}
|
||||
|
@ -92,7 +116,7 @@ public static class TeraTypeUtil
|
|||
/// <param name="type">Value to update with.</param>
|
||||
public static void SetTeraType(this ITeraType t, MoveType type)
|
||||
{
|
||||
if ((byte)type > MaxType)
|
||||
if ((byte)type > Stellar)
|
||||
type = Fallback;
|
||||
|
||||
var original = t.TeraTypeOriginal;
|
||||
|
@ -139,5 +163,5 @@ public static class TeraTypeUtil
|
|||
/// </summary>
|
||||
/// <param name="species">Species to check</param>
|
||||
/// <returns>True if the species can have its Tera Type changed.</returns>
|
||||
public static bool CanChangeTeraType(ushort species) => species != (int)Species.Ogerpon;
|
||||
public static bool CanChangeTeraType(ushort species) => species is not ((int)Species.Ogerpon or (int)Species.Terapagos);
|
||||
}
|
||||
|
|
|
@ -290,7 +290,7 @@ public sealed class PA8 : PKM, ISanityChecksum,
|
|||
public bool RibbonMarkAlpha { get => FlagUtil.GetFlag(Data, 0x45, 3); set => FlagUtil.SetFlag(Data, 0x45, 3, value); }
|
||||
public bool RibbonMarkMightiest { get => FlagUtil.GetFlag(Data, 0x45, 4); set => FlagUtil.SetFlag(Data, 0x45, 4, value); }
|
||||
public bool RibbonMarkTitan { get => FlagUtil.GetFlag(Data, 0x45, 5); set => FlagUtil.SetFlag(Data, 0x45, 5, value); }
|
||||
public bool RIB45_6 { get => FlagUtil.GetFlag(Data, 0x45, 6); set => FlagUtil.SetFlag(Data, 0x45, 6, value); }
|
||||
public bool RibbonPartner { get => FlagUtil.GetFlag(Data, 0x45, 6); set => FlagUtil.SetFlag(Data, 0x45, 6, value); }
|
||||
public bool RIB45_7 { get => FlagUtil.GetFlag(Data, 0x45, 7); set => FlagUtil.SetFlag(Data, 0x45, 7, value); }
|
||||
|
||||
public bool RIB46_0 { get => FlagUtil.GetFlag(Data, 0x46, 0); set => FlagUtil.SetFlag(Data, 0x46, 0, value); }
|
||||
|
|
|
@ -288,7 +288,7 @@ public sealed class PK9 : PKM, ISanityChecksum, ITeraType, ITechRecord, IObedien
|
|||
public bool RibbonMarkAlpha { get => FlagUtil.GetFlag(Data, 0x45, 3); set => FlagUtil.SetFlag(Data, 0x45, 3, value); }
|
||||
public bool RibbonMarkMightiest { get => FlagUtil.GetFlag(Data, 0x45, 4); set => FlagUtil.SetFlag(Data, 0x45, 4, value); }
|
||||
public bool RibbonMarkTitan { get => FlagUtil.GetFlag(Data, 0x45, 5); set => FlagUtil.SetFlag(Data, 0x45, 5, value); }
|
||||
public bool RIB45_6 { get => FlagUtil.GetFlag(Data, 0x45, 6); set => FlagUtil.SetFlag(Data, 0x45, 6, value); }
|
||||
public bool RibbonPartner { get => FlagUtil.GetFlag(Data, 0x45, 6); set => FlagUtil.SetFlag(Data, 0x45, 6, value); }
|
||||
public bool RIB45_7 { get => FlagUtil.GetFlag(Data, 0x45, 7); set => FlagUtil.SetFlag(Data, 0x45, 7, value); }
|
||||
|
||||
public bool RIB46_0 { get => FlagUtil.GetFlag(Data, 0x46, 0); set => FlagUtil.SetFlag(Data, 0x46, 0, value); }
|
||||
|
|
|
@ -264,7 +264,7 @@ public abstract class G8PKM : PKM, ISanityChecksum,
|
|||
public bool RibbonMarkAlpha { get => FlagUtil.GetFlag(Data, 0x45, 3); set => FlagUtil.SetFlag(Data, 0x45, 3, value); }
|
||||
public bool RibbonMarkMightiest { get => FlagUtil.GetFlag(Data, 0x45, 4); set => FlagUtil.SetFlag(Data, 0x45, 4, value); }
|
||||
public bool RibbonMarkTitan { get => FlagUtil.GetFlag(Data, 0x45, 5); set => FlagUtil.SetFlag(Data, 0x45, 5, value); }
|
||||
public bool RIB45_6 { get => FlagUtil.GetFlag(Data, 0x45, 6); set => FlagUtil.SetFlag(Data, 0x45, 6, value); }
|
||||
public bool RibbonPartner { get => FlagUtil.GetFlag(Data, 0x45, 6); set => FlagUtil.SetFlag(Data, 0x45, 6, value); }
|
||||
public bool RIB45_7 { get => FlagUtil.GetFlag(Data, 0x45, 7); set => FlagUtil.SetFlag(Data, 0x45, 7, value); }
|
||||
|
||||
public bool RIB46_0 { get => FlagUtil.GetFlag(Data, 0x46, 0); set => FlagUtil.SetFlag(Data, 0x46, 0, value); }
|
||||
|
|
|
@ -17,7 +17,7 @@ public static class StringConverter12
|
|||
return false;
|
||||
}
|
||||
return true;
|
||||
static bool IsJapanese(char c) => c is >= '\u3000' and <= '\u30FC'; // todo: bitmask check
|
||||
static bool IsJapanese(char c) => c is >= '\u3000' and <= '\u30FC';
|
||||
}
|
||||
|
||||
public static bool GetIsG1English(ReadOnlySpan<char> str) => !GetIsG1Japanese(str);
|
||||
|
|
|
@ -9,6 +9,8 @@ public static class StringConverter3
|
|||
{
|
||||
private const byte TerminatorByte = 0xFF;
|
||||
private const char Terminator = (char)TerminatorByte;
|
||||
private const char Apostrophe = '\''; // ’
|
||||
private const byte ApostropheByte = 0xB4;
|
||||
|
||||
/// <summary>
|
||||
/// Converts a Generation 3 encoded value array to string.
|
||||
|
@ -68,8 +70,8 @@ public static class StringConverter3
|
|||
for (; i < value.Length; i++)
|
||||
{
|
||||
var chr = value[i];
|
||||
if (chr == '\'') // ’
|
||||
return 0xB4;
|
||||
if (chr == Apostrophe) // ’
|
||||
return ApostropheByte;
|
||||
var b = (byte)table.IndexOf(chr);
|
||||
if (b == TerminatorByte)
|
||||
break;
|
||||
|
@ -102,8 +104,8 @@ public static class StringConverter3
|
|||
/// <returns>Generation 3 encoded value.</returns>
|
||||
public static byte SetG3Char(char chr, bool jp)
|
||||
{
|
||||
if (chr == '\'') // ’
|
||||
return 0xB4;
|
||||
if (chr == Apostrophe)
|
||||
return ApostropheByte;
|
||||
var table = jp ? G3_JP : G3_EN;
|
||||
var index = table.IndexOf(chr);
|
||||
return (byte)index;
|
||||
|
|
|
@ -22,6 +22,8 @@ public static class FormConverter
|
|||
/// <returns>A list of strings corresponding to the forms that a Pokémon can have.</returns>
|
||||
public static string[] GetFormList(ushort species, IReadOnlyList<string> types, IReadOnlyList<string> forms, IReadOnlyList<string> genders, EntityContext context)
|
||||
{
|
||||
int generation = context.Generation();
|
||||
|
||||
// Mega List
|
||||
if (context.IsMegaGeneration() && IsFormListSingleMega(species))
|
||||
return GetMegaSingle(types, forms);
|
||||
|
@ -33,13 +35,13 @@ public static class FormConverter
|
|||
{
|
||||
<= Legal.MaxSpeciesID_1 => GetFormsGen1(species, types, forms, context),
|
||||
<= Legal.MaxSpeciesID_2 => GetFormsGen2(species, types, forms, context),
|
||||
<= Legal.MaxSpeciesID_3 => GetFormsGen3(species, types, forms, context.Generation()),
|
||||
<= Legal.MaxSpeciesID_4 => GetFormsGen4(species, types, forms, context.Generation()),
|
||||
<= Legal.MaxSpeciesID_5 => GetFormsGen5(species, types, forms, context.Generation()),
|
||||
<= Legal.MaxSpeciesID_6 => GetFormsGen6(species, types, forms, genders, context.Generation()),
|
||||
<= Legal.MaxSpeciesID_7_USUM => GetFormsGen7(species, types, forms, context.Generation()),
|
||||
<= Legal.MaxSpeciesID_8a => GetFormsGen8(species, context.Generation(), types, forms, genders),
|
||||
_ => GetFormsGen9(species, context.Generation(), types, forms, genders),
|
||||
<= Legal.MaxSpeciesID_3 => GetFormsGen3(species, types, forms, generation),
|
||||
<= Legal.MaxSpeciesID_4 => GetFormsGen4(species, types, forms, generation),
|
||||
<= Legal.MaxSpeciesID_5 => GetFormsGen5(species, types, forms, generation),
|
||||
<= Legal.MaxSpeciesID_6 => GetFormsGen6(species, types, forms, genders, generation),
|
||||
<= Legal.MaxSpeciesID_7_USUM => GetFormsGen7(species, types, forms, generation),
|
||||
<= Legal.MaxSpeciesID_8a => GetFormsGen8(species, generation, types, forms, genders),
|
||||
_ => GetFormsGen9(species, generation, types, forms, genders),
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -351,12 +353,17 @@ public static class FormConverter
|
|||
forms[(int)Mimikyu], // Disguised
|
||||
forms[1058], // Busted
|
||||
],
|
||||
Necrozma => [
|
||||
Necrozma when generation == 7 => [
|
||||
types[0], // Normal
|
||||
forms[1065], // Dusk Mane
|
||||
forms[1066], // Dawn Wings
|
||||
forms[1067], // Ultra Necrozma
|
||||
],
|
||||
Necrozma => [
|
||||
types[0], // Normal
|
||||
forms[1065], // Dusk Mane
|
||||
forms[1066], // Dawn Wings
|
||||
],
|
||||
Magearna => [
|
||||
types[0],
|
||||
forms[1062], // Original
|
||||
|
@ -509,6 +516,11 @@ public static class FormConverter
|
|||
forms[Unremarkable],
|
||||
forms[Masterpiece],
|
||||
],
|
||||
Terapagos => [
|
||||
types[0], // Normal
|
||||
forms[Terastal],
|
||||
forms[Stellar],
|
||||
],
|
||||
_ => EMPTY,
|
||||
};
|
||||
}
|
||||
|
@ -904,6 +916,8 @@ public static class FormConverter
|
|||
internal const int MaskCornerstone = 1132;
|
||||
private const int Artisan = 1133;
|
||||
private const int Masterpiece = 1134;
|
||||
private const int Terastal = 1135;
|
||||
private const int Stellar = 1136;
|
||||
|
||||
public static string GetGigantamaxName(IReadOnlyList<string> forms) => forms[Gigantamax];
|
||||
|
||||
|
|
|
@ -150,12 +150,10 @@ public static class SpeciesConverter
|
|||
029, -53, -65, 025, -06, -03, -07, -04, -04, -08,
|
||||
-04, 001, -03, -03, -06, -04, -47, -47, -47, -23,
|
||||
-23, -05, -07, -09, -07, -20, -13, -09, -09, -29,
|
||||
-23, 001, 012, 012, 000, 000, 000, -06, UNK, UNK,
|
||||
UNK, UNK, UNK, UNK, UNK, UNK,
|
||||
-23, 001, 012, 012, 000, 000, 000, -06, 005, -06,
|
||||
-03, -03, -02, -04, -03, -03,
|
||||
];
|
||||
|
||||
private const sbyte UNK = 111;
|
||||
|
||||
/// <summary>
|
||||
/// Difference of Gen9 Species IDs (index) and the associated National Dex IDs (value)
|
||||
/// </summary>
|
||||
|
@ -171,7 +169,7 @@ public static class SpeciesConverter
|
|||
029, 008, 003, 004, 004, 020, 004, 023, 006, 003,
|
||||
003, 004, -01, 013, 009, 007, 005, 007, 009, 009,
|
||||
-43, -43, -43, -68, -68, -68, -58, -58, -25, -29,
|
||||
-31, 006, -01, UNK, 000, 000, 000, UNK, UNK, UNK,
|
||||
UNK, UNK, UNK, UNK, -12, -12,
|
||||
-31, 006, -01, 006, 000, 000, 000, 003, 003, 004,
|
||||
002, 003, 003, -05, -12, -12,
|
||||
];
|
||||
}
|
||||
|
|
|
@ -135,7 +135,9 @@ public sealed class PersonalInfo9SV(byte[] Data) : PersonalInfo, IPersonalAbilit
|
|||
796, 851, 046, 268, 114, 092, 328, 180, 356, 479,
|
||||
360, 282, 450, 162, 410, 679, 667, 333, 503, 535,
|
||||
669, 253, 264, 311, 803, 807, 812, 814, 809, 808,
|
||||
799, 802,
|
||||
799, 802, 220, 244, 038, 283, 572, 915, 250, 330,
|
||||
916, 527, 813, 811, 482, 815, 297, 248, 797, 806,
|
||||
800, 675, 784, 319, 174, 912, 913, 914, 917, 918,
|
||||
];
|
||||
|
||||
public byte DexKitakami { get => Data[0x4A]; set => Data[0x4A] = value; }
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,6 +1,66 @@
|
|||
Marinchen
|
||||
Spectra
|
||||
Magby
|
||||
Dummimisel
|
||||
Evoli
|
||||
Felino
|
||||
Pamamo
|
||||
Flaniwal
|
||||
Agiluza
|
||||
Cryospino
|
||||
Wadribie
|
||||
Duraludon
|
||||
Meditie
|
||||
Sonnflora
|
||||
Garstella
|
||||
Magnetilo
|
||||
Tauros
|
||||
Panzaeron
|
||||
Lumispross
|
||||
Raffel
|
||||
Tafforgita
|
||||
Gruff
|
||||
Gierspenst
|
||||
Flattutu
|
||||
Brimano
|
||||
Mauzi
|
||||
Elezeba
|
||||
Knapfel
|
||||
Snubbull
|
||||
Wuffels
|
||||
Mortcha
|
||||
Schluppuck
|
||||
Flöckchen
|
||||
Lotti
|
||||
Polla
|
||||
Matt
|
||||
Aoki
|
||||
Cosima
|
||||
Cay
|
||||
Clavel
|
||||
Grusha
|
||||
Kombu
|
||||
Sinius
|
||||
Ronah
|
||||
Levy
|
||||
Amura
|
||||
Colzo
|
||||
Mimi
|
||||
Enigmara
|
||||
Nemila
|
||||
Erin
|
||||
Sagaria
|
||||
Pepper
|
||||
Poppy
|
||||
Etta
|
||||
Moira
|
||||
Tulia
|
||||
Saguaro
|
||||
Salvatore
|
||||
Cyano
|
||||
Jo
|
||||
Tara
|
||||
Quendella
|
||||
Hana
|
||||
Jim
|
||||
Misha
|
|
@ -1,6 +1,66 @@
|
|||
Manchester
|
||||
Hauntikins
|
||||
Magby
|
||||
Dudunsparce
|
||||
Eevee
|
||||
Wooper
|
||||
Pawmo
|
||||
Cetoddle
|
||||
Veluza
|
||||
Arctibax
|
||||
Combee
|
||||
Duraludon
|
||||
Meditite
|
||||
Sunflora
|
||||
Mareanie
|
||||
Magnemite
|
||||
Tauros
|
||||
Skarmory
|
||||
Glimmet
|
||||
Skwovet
|
||||
Tinkatuff
|
||||
Greavard
|
||||
Gimmighoul
|
||||
Flittle
|
||||
Hattrem
|
||||
Meowth
|
||||
Blitzle
|
||||
Applin
|
||||
Snubbull
|
||||
Rockruff
|
||||
Poltchageist
|
||||
Gulpin
|
||||
Snowsalot
|
||||
Sue
|
||||
Blossom
|
||||
Crispin
|
||||
Larry
|
||||
Penny
|
||||
Rika
|
||||
Clavell
|
||||
Grusha
|
||||
Kofu
|
||||
Hassel
|
||||
Katy
|
||||
Drayton
|
||||
Dendra
|
||||
Brassius
|
||||
Miriam
|
||||
Iono
|
||||
Nemona
|
||||
Amarys
|
||||
Geeta
|
||||
Arven
|
||||
Poppy
|
||||
Ryme
|
||||
Raifort
|
||||
Tulip
|
||||
Saguaro
|
||||
Salvatore
|
||||
Cyrano
|
||||
Kieran
|
||||
Lacey
|
||||
Tyme
|
||||
Carmine
|
||||
Jacq
|
||||
Glen
|
|
@ -1,6 +1,66 @@
|
|||
Celeste
|
||||
Umbra
|
||||
Magby
|
||||
Dudunsparce
|
||||
Eevee
|
||||
Wooper
|
||||
Pawmo
|
||||
Cetoddle
|
||||
Veluza
|
||||
Arctibax
|
||||
Combee
|
||||
Duraludon
|
||||
Meditite
|
||||
Sunflora
|
||||
Mareanie
|
||||
Magnemite
|
||||
Tauros
|
||||
Skarmory
|
||||
Glimmet
|
||||
Skwovet
|
||||
Tinkatuff
|
||||
Greavard
|
||||
Gimmighoul
|
||||
Flittle
|
||||
Hattrem
|
||||
Meowth
|
||||
Blitzle
|
||||
Applin
|
||||
Snubbull
|
||||
Rockruff
|
||||
Poltchageist
|
||||
Gulpin
|
||||
Nevadito
|
||||
Anita
|
||||
Estrella
|
||||
Denis
|
||||
Laureano
|
||||
Noa
|
||||
Cayena
|
||||
Clavel
|
||||
Grusha
|
||||
Fuco
|
||||
Hesperio
|
||||
Araceli
|
||||
Levi
|
||||
Kendra
|
||||
Brais
|
||||
Mimí
|
||||
e-Nigma
|
||||
Mencía
|
||||
Nerina
|
||||
Ságita
|
||||
Damián
|
||||
Pola
|
||||
Lima
|
||||
Cloe
|
||||
Tuli
|
||||
Hugo
|
||||
Silvio
|
||||
Mirtilo
|
||||
Cass
|
||||
Aroa
|
||||
Mila
|
||||
Corin
|
||||
Cinio
|
||||
Fernán
|
|
@ -1,6 +1,66 @@
|
|||
Lazuli
|
||||
Spectrounet
|
||||
Magby
|
||||
Deusolourdo
|
||||
Évoli
|
||||
Axoloto
|
||||
Pohmotte
|
||||
Piétacé
|
||||
Délestin
|
||||
Cryodo
|
||||
Apitrini
|
||||
Duralugon
|
||||
Méditikka
|
||||
Héliatronc
|
||||
Vorastérie
|
||||
Magnéti
|
||||
Tauros
|
||||
Airmure
|
||||
Germéclat
|
||||
Rongourmand
|
||||
Forgella
|
||||
Toutombe
|
||||
Mordudor
|
||||
Flotillon
|
||||
Chapotus
|
||||
Miaouss
|
||||
Zébibron
|
||||
Verpom
|
||||
Snubbull
|
||||
Rocabot
|
||||
Poltchageist
|
||||
Gloupti
|
||||
Floconou
|
||||
Anna
|
||||
Electra
|
||||
Rubépin
|
||||
Okuba
|
||||
Pania
|
||||
Cayenn
|
||||
Clavel
|
||||
Grusha
|
||||
Kombu
|
||||
Hassa
|
||||
Éra
|
||||
Irido
|
||||
Élige
|
||||
Colza
|
||||
Mimosa
|
||||
Mashynn
|
||||
Menzi
|
||||
Nérine
|
||||
Alisma
|
||||
Pepper
|
||||
Popi
|
||||
Laïm
|
||||
Mora
|
||||
Tully
|
||||
Saguaro
|
||||
Salvio
|
||||
Cyano
|
||||
Kassis
|
||||
Taro
|
||||
Thaïm
|
||||
Roseille
|
||||
Jacq
|
||||
Flavio
|
|
@ -1,6 +1,66 @@
|
|||
Celestino
|
||||
Babau
|
||||
Magby
|
||||
Dudunsparce
|
||||
Eevee
|
||||
Wooper
|
||||
Pawmo
|
||||
Cetoddle
|
||||
Veluza
|
||||
Arctibax
|
||||
Combee
|
||||
Duraludon
|
||||
Meditite
|
||||
Sunflora
|
||||
Mareanie
|
||||
Magnemite
|
||||
Tauros
|
||||
Skarmory
|
||||
Glimmet
|
||||
Skwovet
|
||||
Tinkatuff
|
||||
Greavard
|
||||
Gimmighoul
|
||||
Flittle
|
||||
Hattrem
|
||||
Meowth
|
||||
Blitzle
|
||||
Applin
|
||||
Snubbull
|
||||
Rockruff
|
||||
Poltchageist
|
||||
Gulpin
|
||||
Nevolino
|
||||
Woopy
|
||||
Harriet
|
||||
Piros
|
||||
Ubaldo
|
||||
Penny
|
||||
Capsi
|
||||
Clavel
|
||||
Grusha
|
||||
Algaro
|
||||
Oranzio
|
||||
Aceria
|
||||
Aris
|
||||
Dendra
|
||||
Brassius
|
||||
Mimosa
|
||||
Kissara
|
||||
Nemi
|
||||
Erin
|
||||
Alisma
|
||||
Pepe
|
||||
Verina
|
||||
Lima
|
||||
Morasia
|
||||
Tulipa
|
||||
Guaro
|
||||
Salvis
|
||||
Bluebert
|
||||
Riben
|
||||
Rupi
|
||||
Thyma
|
||||
Rubra
|
||||
Zim
|
||||
Florio
|
|
@ -1,6 +1,66 @@
|
|||
マサオ
|
||||
ちみちゃん
|
||||
ブビィ
|
||||
ノココッチ
|
||||
イーブイ
|
||||
ウパー
|
||||
パモット
|
||||
アルクジラ
|
||||
ミガルーサ
|
||||
セゴール
|
||||
ミツハニー
|
||||
ジュラルドン
|
||||
アサナン
|
||||
キマワリ
|
||||
ヒドイデ
|
||||
コイル
|
||||
ケンタロス
|
||||
エアームド
|
||||
キラーメ
|
||||
ホシガリス
|
||||
ナカヌチャン
|
||||
ボチ
|
||||
コレクレー
|
||||
ヒラヒナ
|
||||
テブリム
|
||||
ニャース
|
||||
シママ
|
||||
カジッチュ
|
||||
ブルー
|
||||
イワンコ
|
||||
チャデス
|
||||
ゴクリン
|
||||
こゆきち
|
||||
チェミ
|
||||
サキねえ
|
||||
アカマツ
|
||||
アオキ
|
||||
ボタン
|
||||
チリ
|
||||
クラベル
|
||||
グルーシャ
|
||||
ハイダイ
|
||||
ハッサク
|
||||
カエデ
|
||||
カキツバタ
|
||||
キハダ
|
||||
コルサ
|
||||
ミモザ
|
||||
ナンジャモ
|
||||
ネモ
|
||||
ネリネ
|
||||
オモダカ
|
||||
ペパー
|
||||
ポピー
|
||||
ライム
|
||||
レホール
|
||||
リップ
|
||||
サワロ
|
||||
セイジ
|
||||
シアノ
|
||||
スグリ
|
||||
タロ
|
||||
タイム
|
||||
ゼイユ
|
||||
ジニア
|
||||
ヒカタロ
|
|
@ -1,6 +1,66 @@
|
|||
퍼랭이
|
||||
티미
|
||||
마그비
|
||||
노고고치
|
||||
이브이
|
||||
우파
|
||||
빠모트
|
||||
터벅고래
|
||||
가비루사
|
||||
드니꽁
|
||||
세꿀버리
|
||||
두랄루돈
|
||||
요가랑
|
||||
해루미
|
||||
시마사리
|
||||
코일
|
||||
켄타로스
|
||||
무장조
|
||||
초롱순
|
||||
탐리스
|
||||
벼리짱
|
||||
망망이
|
||||
모으령
|
||||
하느라기
|
||||
손지브림
|
||||
나옹
|
||||
줄뮤마
|
||||
과사삭벌레
|
||||
블루
|
||||
암멍이
|
||||
차데스
|
||||
꼴깍몬
|
||||
가루누니
|
||||
체미
|
||||
소희
|
||||
하솔
|
||||
청목
|
||||
모란
|
||||
칠리
|
||||
클라벨
|
||||
그루샤
|
||||
곤포
|
||||
팔자크
|
||||
단풍
|
||||
제빈
|
||||
운향
|
||||
콜사
|
||||
미모사
|
||||
모야모
|
||||
네모
|
||||
네리네
|
||||
테사
|
||||
페퍼
|
||||
뽀삐
|
||||
라임
|
||||
레포르
|
||||
리파
|
||||
사구아로
|
||||
세이지
|
||||
시아노
|
||||
카지
|
||||
타로
|
||||
타임
|
||||
시유
|
||||
지니어
|
||||
태호
|
|
@ -1,6 +1,66 @@
|
|||
真苍
|
||||
智美
|
||||
鸭嘴宝宝
|
||||
土龙节节
|
||||
伊布
|
||||
乌波
|
||||
布土拨
|
||||
走鲸
|
||||
轻身鳕
|
||||
冻脊龙
|
||||
三蜜蜂
|
||||
铝钢龙
|
||||
玛沙那
|
||||
向日花怪
|
||||
好坏星
|
||||
小磁怪
|
||||
肯泰罗
|
||||
盔甲鸟
|
||||
晶光芽
|
||||
贪心栗鼠
|
||||
巧锻匠
|
||||
墓仔狗
|
||||
索财灵
|
||||
飘飘雏
|
||||
提布莉姆
|
||||
喵喵
|
||||
斑斑马
|
||||
啃果虫
|
||||
布鲁
|
||||
岩狗狗
|
||||
斯魔茶
|
||||
溶食兽
|
||||
小由吉
|
||||
彩美
|
||||
纱希姐
|
||||
赤松
|
||||
青木
|
||||
牡丹
|
||||
辛俐
|
||||
克拉韦尔
|
||||
古鲁夏
|
||||
海岱
|
||||
八朔
|
||||
阿枫
|
||||
杜若
|
||||
凰檗
|
||||
寇沙
|
||||
米莫莎
|
||||
奇树
|
||||
妮莫
|
||||
纳莉
|
||||
也慈
|
||||
派帕
|
||||
波琵
|
||||
莱姆
|
||||
蕾荷
|
||||
莉普
|
||||
萨瓦罗
|
||||
赛吉
|
||||
席蓝
|
||||
乌栗
|
||||
紫竽
|
||||
泰姆
|
||||
丹瑜
|
||||
吉尼亚
|
||||
彼加太郎
|
|
@ -1,6 +1,66 @@
|
|||
真蒼
|
||||
智美
|
||||
鴨嘴寶寶
|
||||
土龍節節
|
||||
伊布
|
||||
烏波
|
||||
布土撥
|
||||
走鯨
|
||||
輕身鱈
|
||||
凍脊龍
|
||||
三蜜蜂
|
||||
鋁鋼龍
|
||||
瑪沙那
|
||||
向日花怪
|
||||
好壞星
|
||||
小磁怪
|
||||
肯泰羅
|
||||
盔甲鳥
|
||||
晶光芽
|
||||
貪心栗鼠
|
||||
巧鍛匠
|
||||
墓仔狗
|
||||
索財靈
|
||||
飄飄雛
|
||||
提布莉姆
|
||||
喵喵
|
||||
斑斑馬
|
||||
啃果蟲
|
||||
布魯
|
||||
岩狗狗
|
||||
斯魔茶
|
||||
溶食獸
|
||||
小由吉
|
||||
彩美
|
||||
紗希姐
|
||||
赤松
|
||||
青木
|
||||
牡丹
|
||||
辛俐
|
||||
克拉韋爾
|
||||
古魯夏
|
||||
海岱
|
||||
八朔
|
||||
阿楓
|
||||
杜若
|
||||
凰檗
|
||||
寇沙
|
||||
米莫莎
|
||||
奇樹
|
||||
妮莫
|
||||
納莉
|
||||
也慈
|
||||
派帕
|
||||
波琵
|
||||
萊姆
|
||||
蕾荷
|
||||
莉普
|
||||
薩瓦羅
|
||||
賽吉
|
||||
席藍
|
||||
烏栗
|
||||
紫竽
|
||||
泰姆
|
||||
丹瑜
|
||||
吉尼亞
|
||||
彼加太朗
|
Binary file not shown.
Binary file not shown.
|
@ -2480,3 +2480,79 @@ Mortcha-Puder
|
|||
Neuanfangs-Mochi
|
||||
Rotom-Stick
|
||||
Glitzerpin
|
||||
Legierungsmetall
|
||||
Blaue Style-Karte
|
||||
Myrapla-Blatt
|
||||
Tentacha-Stachel
|
||||
Dodu-Daune
|
||||
Jurob-Haar
|
||||
Owei-Schale
|
||||
Rabauz-Schweiß
|
||||
Rihorn-Zahn
|
||||
Seeper-Tinte
|
||||
Elekid-Haar
|
||||
Magby-Haar
|
||||
Lapras-Träne
|
||||
Porygon-Splitter
|
||||
Lampi-Strom
|
||||
Snubbull-Haar
|
||||
Panzaeron-Feder
|
||||
Farbeagle-Tinte
|
||||
Plusle-Haar
|
||||
Minun-Haar
|
||||
Knacklion-Schale
|
||||
Tanhel-Kralle
|
||||
Koknodon-Stachel
|
||||
Schilterus-Kralle
|
||||
Elezeba-Mähnenhaar
|
||||
Rotomurf-Kralle
|
||||
Waumboll-Watte
|
||||
Zurrokex-Schweiß
|
||||
Picochilla-Haar
|
||||
Monozyto-Gel
|
||||
Wattzapf-Faden
|
||||
Golbit-Splitter
|
||||
Psiau-Haar
|
||||
Iscalar-Tinte
|
||||
Peppeck-Feder
|
||||
Araqua-Faden
|
||||
Curelei-Blüte
|
||||
Meteno-Schale
|
||||
Hokumil-Sahne
|
||||
Duraludon-Patina
|
||||
Arktos-Snack
|
||||
Zapdos-Snack
|
||||
Lavados-Snack
|
||||
Raikou-Snack
|
||||
Entei-Snack
|
||||
Suicune-Snack
|
||||
Lugia-Snack
|
||||
Ho-Oh-Snack
|
||||
Latias-Snack
|
||||
Latios-Snack
|
||||
Kyogre-Snack
|
||||
Groudon-Snack
|
||||
Rayquaza-Snack
|
||||
Kobalium-Snack
|
||||
Terrakium-Snack
|
||||
Viridium-Snack
|
||||
Reshiram-Snack
|
||||
Zekrom-Snack
|
||||
Kyurem-Snack
|
||||
Solgaleo-Snack
|
||||
Lunala-Snack
|
||||
Necrozma-Snack
|
||||
Dakuma-Snack
|
||||
Polaross-Snack
|
||||
Phantoross-Snack
|
||||
Indigoblaue Scheibe
|
||||
Flammen-Pikser
|
||||
Tera-Stück (Stellar)
|
||||
Mysteriöse Pirsifbeere
|
||||
Blaubeer-Tischtuch
|
||||
Blaubeer-Stühle
|
||||
Synchromaschine
|
||||
Meteorit
|
||||
Karmesinbuch
|
||||
Purpurbuch
|
||||
Briannas Buch
|
|
@ -2480,3 +2480,79 @@ Poltchageist Powder
|
|||
Fresh-Start Mochi
|
||||
Roto-Stick
|
||||
Glimmering Charm
|
||||
Metal Alloy
|
||||
Indigo Style Card
|
||||
Oddish Leaf
|
||||
Tentacool Stinger
|
||||
Doduo Down
|
||||
Seel Fur
|
||||
Exeggcute Shell
|
||||
Tyrogue Sweat
|
||||
Rhyhorn Fang
|
||||
Horsea Ink
|
||||
Elekid Fur
|
||||
Magby Hair
|
||||
Lapras Teardrop
|
||||
Porygon Fragment
|
||||
Chinchou Sparks
|
||||
Snubbull Hair
|
||||
Skarmory Feather
|
||||
Smeargle Paint
|
||||
Plusle Fur
|
||||
Minun Fur
|
||||
Trapinch Shell
|
||||
Beldum Claw
|
||||
Cranidos Spike
|
||||
Shieldon Claw
|
||||
Blitzle Mane Hair
|
||||
Drilbur Claw
|
||||
Cottonee Fluff
|
||||
Scraggy Sweat
|
||||
Minccino Fur
|
||||
Solosis Gel
|
||||
Joltik Thread
|
||||
Golett Shard
|
||||
Espurr Fur
|
||||
Inkay Ink
|
||||
Pikipek Feather
|
||||
Dewpider Thread
|
||||
Comfey Flower
|
||||
Minior Shell
|
||||
Milcery Cream
|
||||
Duraludon Tarnish
|
||||
Articuno Treat
|
||||
Zapdos Treat
|
||||
Moltres Treat
|
||||
Raikou Treat
|
||||
Entei Treat
|
||||
Suicune Treat
|
||||
Lugia Treat
|
||||
Ho-Oh Treat
|
||||
Latias Treat
|
||||
Latios Treat
|
||||
Kyogre Treat
|
||||
Groudon Treat
|
||||
Rayquaza Treat
|
||||
Cobalion Treat
|
||||
Terrakion Treat
|
||||
Virizion Treat
|
||||
Reshiram Treat
|
||||
Zekrom Treat
|
||||
Kyurem Treat
|
||||
Solgaleo Treat
|
||||
Lunala Treat
|
||||
Necrozma Treat
|
||||
Kubfu Treat
|
||||
Glastrier Treat
|
||||
Spectrier Treat
|
||||
Indigo Disk
|
||||
Fiery Pick
|
||||
Stellar Tera Shard
|
||||
Mythical Pecha Berry
|
||||
Blueberry Tablecloth
|
||||
Blueberry Chairs
|
||||
Synchro Machine
|
||||
Meteorite
|
||||
Scarlet Book
|
||||
Violet Book
|
||||
Briar’s Book
|
|
@ -449,7 +449,7 @@ Supercaña
|
|||
Psydugadera
|
||||
Pokochera
|
||||
Bici
|
||||
Llave Suite
|
||||
Llave de la Suite
|
||||
Carta Prof. Oak
|
||||
Pluma Lunar
|
||||
Carné de Socio
|
||||
|
@ -2480,3 +2480,79 @@ Polvo de Poltchageist
|
|||
Mochi Reinicio
|
||||
Paloselfi Rotom
|
||||
Amuleto Cristalino
|
||||
Metal Compuesto
|
||||
Tarjeta Chic Azul
|
||||
Hoja de Oddish
|
||||
Aguijón de Tentacool
|
||||
Plumón de Doduo
|
||||
Pelo de Seel
|
||||
Cáscara de Exeggcute
|
||||
Sudor de Tyrogue
|
||||
Colmillo de Rhyhorn
|
||||
Tinta de Horsea
|
||||
Pelo de Elekid
|
||||
Pelo de Magby
|
||||
Lágrima de Lapras
|
||||
Fragmento de Porygon
|
||||
Electricidad de Chinchou
|
||||
Pelo de Snubbull
|
||||
Pluma de Skarmory
|
||||
Pintura de Smeargle
|
||||
Pelo de Plusle
|
||||
Pelo de Minun
|
||||
Coraza de Trapinch
|
||||
Garra de Beldum
|
||||
Púa de Cranidos
|
||||
Garra de Shieldon
|
||||
Mechón de Blitzle
|
||||
Garra de Drilbur
|
||||
Algodón de Cottonee
|
||||
Sudor de Scraggy
|
||||
Pelo de Minccino
|
||||
Gel de Solosis
|
||||
Hilo de Joltik
|
||||
Fragmento de Golett
|
||||
Pelo de Espurr
|
||||
Tinta de Inkay
|
||||
Pluma de Pikipek
|
||||
Hilo de Dewpider
|
||||
Flor de Comfey
|
||||
Caparazón de Minior
|
||||
Nata de Milcery
|
||||
Óxido de Duraludon
|
||||
Galleta Articuno
|
||||
Galleta Zapdos
|
||||
Galleta Moltres
|
||||
Galleta Raikou
|
||||
Galleta Entei
|
||||
Galleta Suicune
|
||||
Galleta Lugia
|
||||
Galleta Ho-Oh
|
||||
Galleta Latias
|
||||
Galleta Latios
|
||||
Galleta Kyogre
|
||||
Galleta Groudon
|
||||
Galleta Rayquaza
|
||||
Galleta Cobalion
|
||||
Galleta Terrakion
|
||||
Galleta Virizion
|
||||
Galleta Reshiram
|
||||
Galleta Zekrom
|
||||
Galleta Kyurem
|
||||
Galleta Solgaleo
|
||||
Galleta Lunala
|
||||
Galleta Necrozma
|
||||
Galleta Kubfu
|
||||
Galleta Glastrier
|
||||
Galleta Spectrier
|
||||
Disco Índigo
|
||||
Palillo Ígneo
|
||||
Teralito Astral
|
||||
Baya Meloc Singular
|
||||
Mantel Arándano
|
||||
Sillas Arándano
|
||||
Sincromisor
|
||||
Meteorito
|
||||
Libro Escarlata
|
||||
Libro Púrpura
|
||||
Libro de Brie
|
|
@ -2480,3 +2480,79 @@ Poudre de Poltchageist
|
|||
Mochi Renouveau
|
||||
Perche à Motismart
|
||||
Charme Éclatant
|
||||
Métal Composite
|
||||
Carte Élégance Bleue
|
||||
Feuille de Mystherbe
|
||||
Aiguillon de Tentacool
|
||||
Duvet de Doduo
|
||||
Poils d’Otaria
|
||||
Coquille de Noeunoeuf
|
||||
Sueur de Debugant
|
||||
Croc de Rhinocorne
|
||||
Encre d’Hypotrempe
|
||||
Poils d’Élekid
|
||||
Poils de Magby
|
||||
Larme de Lokhlass
|
||||
Fragment de Porygon
|
||||
Électricité de Loupio
|
||||
Poils de Snubbull
|
||||
Plume d’Airmure
|
||||
Peinture de Queulorior
|
||||
Poils de Posipi
|
||||
Poils de Négapi
|
||||
Carapace de Kraknoix
|
||||
Griffe de Terhal
|
||||
Piquant de Kranidos
|
||||
Ongle de Dinoclier
|
||||
Crinière de Zébibron
|
||||
Griffe de Rototaupe
|
||||
Coton de Doudouvet
|
||||
Sueur de Baggiguane
|
||||
Poils de Chinchidou
|
||||
Fluide de Nucléos
|
||||
Fil de Statitik
|
||||
Fragment de Gringolem
|
||||
Poils de Psystigri
|
||||
Encre de Sepiatop
|
||||
Plume de Picassaut
|
||||
Fil d’Araqua
|
||||
Fleur de Guérilande
|
||||
Carapace de Météno
|
||||
Crème de Crèmy
|
||||
Rouille de Duralugon
|
||||
Friandise Artikodin
|
||||
Friandise Électhor
|
||||
Friandise Sulfura
|
||||
Friandise Raikou
|
||||
Friandise Entei
|
||||
Friandise Suicune
|
||||
Friandise Lugia
|
||||
Friandise Ho-Oh
|
||||
Friandise Latias
|
||||
Friandise Latios
|
||||
Friandise Kyogre
|
||||
Friandise Groudon
|
||||
Friandise Rayquaza
|
||||
Friandise Cobaltium
|
||||
Friandise Terrakium
|
||||
Friandise Viridium
|
||||
Friandise Reshiram
|
||||
Friandise Zekrom
|
||||
Friandise Kyurem
|
||||
Friandise Solgaleo
|
||||
Friandise Lunala
|
||||
Friandise Necrozma
|
||||
Friandise Wushours
|
||||
Friandise Blizzeval
|
||||
Friandise Spectreval
|
||||
Disque Indigo
|
||||
Pique Volcanique
|
||||
Téra-Éclat Stellaire
|
||||
Baie Pêcha Fabuleuse
|
||||
Nappe Myrtille
|
||||
Sièges Myrtille
|
||||
Synchrotron
|
||||
Météorite
|
||||
Livre Écarlate
|
||||
Livre Violet
|
||||
Livre de Bria
|
|
@ -2480,3 +2480,79 @@ Polvere di Poltchageist
|
|||
Mochi del ripristino
|
||||
Bastone Rotoselfie
|
||||
Brillamuleto
|
||||
Metallo composito
|
||||
Tessera chic blu
|
||||
Foglia di Oddish
|
||||
Aculeo di Tentacool
|
||||
Piuma di Doduo
|
||||
Pelo di Seel
|
||||
Guscio di Exeggcute
|
||||
Sudore di Tyrogue
|
||||
Zanna di Rhyhorn
|
||||
Inchiostro di Horsea
|
||||
Pelo di Elekid
|
||||
Pelo di Magby
|
||||
Lacrime di Lapras
|
||||
Frammento di Porygon
|
||||
Elettricità di Chinchou
|
||||
Pelo di Snubbull
|
||||
Penna di Skarmory
|
||||
Pittura di Smeargle
|
||||
Pelo di Plusle
|
||||
Pelo di Minun
|
||||
Guscio di Trapinch
|
||||
Artiglio di Beldum
|
||||
Punta di Cranidos
|
||||
Artiglio di Shieldon
|
||||
Crine di Blitzle
|
||||
Artiglio di Drilbur
|
||||
Lanugine di Cottonee
|
||||
Sudore di Scraggy
|
||||
Pelo di Minccino
|
||||
Gel di Solosis
|
||||
Filo di Joltik
|
||||
Frammento di Golett
|
||||
Pelo di Espurr
|
||||
Inchiostro di Inkay
|
||||
Penna di Pikipek
|
||||
Filo di Dewpider
|
||||
Fiore di Comfey
|
||||
Guscio di Minior
|
||||
Panna di Milcery
|
||||
Ruggine di Duraludon
|
||||
Spuntino per Articuno
|
||||
Spuntino per Zapdos
|
||||
Spuntino per Moltres
|
||||
Spuntino per Raikou
|
||||
Spuntino per Entei
|
||||
Spuntino per Suicune
|
||||
Spuntino per Lugia
|
||||
Spuntino per Ho-Oh
|
||||
Spuntino per Latias
|
||||
Spuntino per Latios
|
||||
Spuntino per Kyogre
|
||||
Spuntino per Groudon
|
||||
Spuntino per Rayquaza
|
||||
Spuntino per Cobalion
|
||||
Spuntino per Terrakion
|
||||
Spuntino per Virizion
|
||||
Spuntino per Reshiram
|
||||
Spuntino per Zekrom
|
||||
Spuntino per Kyurem
|
||||
Spuntino per Solgaleo
|
||||
Spuntino per Lunala
|
||||
Spuntino per Necrozma
|
||||
Spuntino per Kubfu
|
||||
Spuntino per Glastrier
|
||||
Spuntino per Spectrier
|
||||
Disco indaco
|
||||
Stecchino infuocato
|
||||
Teralite Astrale
|
||||
Baccapesca misteriosa
|
||||
Tovaglia Mirtillo
|
||||
Sedie Mirtillo
|
||||
Sincronizzatore
|
||||
Meteorite
|
||||
Libro scarlatto
|
||||
Libro violetto
|
||||
Libro di Rea
|
|
@ -1613,16 +1613,16 @@
|
|||
ふるさとマフィン
|
||||
ぼんぐりのみ
|
||||
コトブキマフィン
|
||||
ビルドアッパー
|
||||
マルチアップ
|
||||
クリティカッター
|
||||
こだわりちまき
|
||||
にばいづけ
|
||||
あべこべやき
|
||||
まるいはっぱ
|
||||
たくみのえまき
|
||||
タマゼンマイ
|
||||
かいでんのタネ
|
||||
モンスターボール
|
||||
ススキのおとしもの
|
||||
こだいのこおり
|
||||
???
|
||||
えいえんのこおり
|
||||
ユクシーのつめ
|
||||
アグノムのきば
|
||||
エムリットのはね
|
||||
|
@ -1637,46 +1637,46 @@
|
|||
ごりごりミネラル
|
||||
もくざい
|
||||
キングリーフ
|
||||
シズメダマ2
|
||||
ぬまのシズメダマ
|
||||
モンスターボール
|
||||
スーパーボール
|
||||
ハイパーボール
|
||||
クラフトレシピ41
|
||||
フェザーボール
|
||||
ポケモンこけし
|
||||
クラフトレシピ06
|
||||
クラフトレシピ07
|
||||
???
|
||||
めかくしだま
|
||||
ばりばりだま
|
||||
ねばりだま
|
||||
クラフトレシピ10
|
||||
クラフトレシピ11
|
||||
むらさきハーブ
|
||||
クラフトレシピ12
|
||||
クラフトレシピ13
|
||||
クラフトレシピ14
|
||||
クラフトレシピ15
|
||||
クラフトレシピ16
|
||||
クラフトレシピ17
|
||||
クラフトレシピ18
|
||||
クラフトレシピ19
|
||||
クラフトレシピ20
|
||||
クラフトレシピ21
|
||||
クラフトレシピ22
|
||||
クラフトレシピ23
|
||||
クラフトレシピ24
|
||||
クラフトレシピ25
|
||||
クラフトレシピ26
|
||||
クラフトレシピ27
|
||||
クラフトレシピ28
|
||||
クラフトレシピ29
|
||||
クラフトレシピ30
|
||||
クラフトレシピ31
|
||||
ほしのかけら
|
||||
キノコよせだま
|
||||
ムシヨケソウ
|
||||
ミツよせだま
|
||||
イナホよせだま
|
||||
マメよせだま
|
||||
ミネラルよせだま
|
||||
キズぐすり
|
||||
いいキズぐすり
|
||||
すごいキズぐすり
|
||||
まんたんのくすり
|
||||
かいふくのくすり
|
||||
カンポーやく
|
||||
いいカンポーやく
|
||||
すごいカンポーやく
|
||||
もりのヨウカン
|
||||
コトブキマフィン
|
||||
なんでもなおし
|
||||
げんきのかけら
|
||||
げんきのかたまり
|
||||
ピーピーリカバー
|
||||
ピーピーマックス
|
||||
ひそやかスプレー
|
||||
???
|
||||
クラフトレシピ33
|
||||
クラフトレシピ34
|
||||
クラフトレシピ35
|
||||
クラフトレシピ36
|
||||
クラフトレシピ37
|
||||
しずめダマ
|
||||
せめのがんやく
|
||||
まもりのがんやく
|
||||
クリティカッター
|
||||
ヨクアタラーヌ
|
||||
マルチアップ
|
||||
もりのシズメダマ
|
||||
てつのかけら
|
||||
???
|
||||
くろいろたまいし
|
||||
|
@ -1684,38 +1684,38 @@
|
|||
???
|
||||
どろだんご
|
||||
???
|
||||
バリバリモズク
|
||||
バリバリモ
|
||||
ケムリイモ
|
||||
むしくいぼんぐり
|
||||
ゆきだま
|
||||
ねばりだま
|
||||
くろのきせき
|
||||
ピートブロック
|
||||
むしよけスプレー
|
||||
ひそやかスプレー
|
||||
クスリソウ
|
||||
ゲンキツボミ
|
||||
ゲンキノツボミ
|
||||
ピーピーグサ
|
||||
???
|
||||
???
|
||||
ふしぎなおまもり2(仮)
|
||||
ふしぎなおまもり3(仮)
|
||||
みがわりおまもり2
|
||||
みがわりおまもり3
|
||||
ツルギマイタケ
|
||||
テッペキクラゲ
|
||||
カゲブンシメジ(仮)
|
||||
キュウショウロ(仮)
|
||||
すなはまダイコン
|
||||
ふしぎなおまもり4(仮)
|
||||
ふしぎなおまもり5(仮)
|
||||
カゲブンシメジ
|
||||
キュウショウロ
|
||||
スナハマダイコン
|
||||
みがわりおまもり4
|
||||
みがわりおまもり5
|
||||
スイートトリュフ
|
||||
よせだまのもと
|
||||
モンスターボール
|
||||
スーパーボール
|
||||
ハイパーボール
|
||||
フェザーボール
|
||||
アーチボール
|
||||
とくしゅボール
|
||||
ビビリだま
|
||||
けむりだま
|
||||
???
|
||||
???
|
||||
ばりばりだま
|
||||
めかくしだま
|
||||
???
|
||||
???
|
||||
ポケモンこけし
|
||||
|
@ -1727,9 +1727,9 @@
|
|||
マメよせだま
|
||||
キノコよせだま
|
||||
ミネラルよせだま
|
||||
クラフトレシピ38
|
||||
クラフトレシピ39
|
||||
クラフトレシピ40
|
||||
あべこべやき
|
||||
こだわりちまき
|
||||
にばいづけ
|
||||
あんぜんおまもり1
|
||||
あんぜんおまもり2
|
||||
あんぜんおまもり3
|
||||
|
@ -1750,30 +1750,30 @@
|
|||
メガトンボール
|
||||
ギガトンボール
|
||||
ウイングボール
|
||||
クラフトレシピ42
|
||||
クラフトレシピ43
|
||||
ジェットボール
|
||||
ヘビーボール
|
||||
ポフのみ
|
||||
すごいカンポーやく
|
||||
アタックアップ
|
||||
ディフェンスアップ
|
||||
せめのがんやく
|
||||
まもりのがんやく
|
||||
ヨクアタラーヌ
|
||||
ガンバリのすな
|
||||
ガンバリのじゃり
|
||||
ガンバリのいし
|
||||
ガンバリのいわ
|
||||
ガンバリセット
|
||||
ふしぎなおまもり
|
||||
だれかのポーチ
|
||||
だれかのポーチ
|
||||
だれかのポーチ
|
||||
だれかのポーチ
|
||||
だれかのポーチ
|
||||
スマートフォン
|
||||
ひでんのくすり
|
||||
みがわりおまもり1
|
||||
だれかのおとしもの
|
||||
だれかのおとしもの
|
||||
だれかのおとしもの
|
||||
だれかのおとしもの
|
||||
だれかのおとしもの
|
||||
???
|
||||
オリジンボール
|
||||
だれかのきんちゃく
|
||||
タマカゴ
|
||||
だんいんしょう
|
||||
くさりのはへん
|
||||
???
|
||||
???
|
||||
???
|
||||
???
|
||||
オリジンこうせき
|
||||
だいこんごうだま
|
||||
だいしらたま
|
||||
|
@ -1781,15 +1781,15 @@
|
|||
まっさらプレート
|
||||
???
|
||||
クラフトキット
|
||||
クラフトレシピ44
|
||||
クラフトレシピ45
|
||||
メガトンボール
|
||||
ギガトンボール
|
||||
ストレンジボール
|
||||
ポケモンずかん
|
||||
ふるいポエム1
|
||||
ふるいポエム2
|
||||
ふるいポエム3
|
||||
ふるいポエム4
|
||||
アルセウスフォン
|
||||
???
|
||||
ふるいポエム5
|
||||
ふるいポエム6
|
||||
ふるいポエム7
|
||||
|
@ -2480,3 +2480,79 @@ Bステンレスボトル
|
|||
まっさらもち
|
||||
ロトりぼう
|
||||
きらめくおまもり
|
||||
ふくごうきんぞく
|
||||
おしゃれカードあお
|
||||
ナゾノクサのはっぱ
|
||||
メノクラゲのはり
|
||||
ドードーのうもう
|
||||
パウワウのけ
|
||||
タマタマのから
|
||||
バルキーのあせ
|
||||
サイホーンのキバ
|
||||
タッツーのスミ
|
||||
エレキッドのけ
|
||||
ブビィのけ
|
||||
ラプラスのなみだ
|
||||
ポリゴンのかけら
|
||||
チョンチーのでんき
|
||||
ブルーのけ
|
||||
エアームドのはね
|
||||
ドーブルのインク
|
||||
プラスルのけ
|
||||
マイナンのけ
|
||||
ナックラーのから
|
||||
ダンバルのツメ
|
||||
ズガイドスのトゲ
|
||||
タテトプスのツメ
|
||||
シママのたてがみ
|
||||
モグリューのツメ
|
||||
モンメンのわたげ
|
||||
ズルッグのあせ
|
||||
チラーミィのけ
|
||||
ユニランのジェル
|
||||
バチュルのいと
|
||||
ゴビットのかけら
|
||||
ニャスパーのけ
|
||||
マーイーカのスミ
|
||||
ツツケラのはね
|
||||
シズクモのいと
|
||||
キュワワーのはな
|
||||
メテノのから
|
||||
マホミルのクリーム
|
||||
ジュラルドンのさび
|
||||
フリーザーのおやつ
|
||||
サンダーのおやつ
|
||||
ファイヤーのおやつ
|
||||
ライコウのおやつ
|
||||
エンテイのおやつ
|
||||
スイクンのおやつ
|
||||
ルギアのおやつ
|
||||
ホウオウのおやつ
|
||||
ラティアスのおやつ
|
||||
ラティオスのおやつ
|
||||
カイオーガのおやつ
|
||||
グラードンのおやつ
|
||||
レックウザのおやつ
|
||||
コバルオンのおやつ
|
||||
テラキオンのおやつ
|
||||
ビリジオンのおやつ
|
||||
レシラムのおやつ
|
||||
ゼクロムのおやつ
|
||||
キュレムのおやつ
|
||||
ソルガレオのおやつ
|
||||
ルナアーラのおやつ
|
||||
ネクロズマのおやつ
|
||||
ダクマのおやつ
|
||||
ブリザポスのおやつ
|
||||
レイスポスのおやつ
|
||||
あおのディスク
|
||||
メラメラピック
|
||||
テラピースステラ
|
||||
まぼろしモモン
|
||||
ブルーベリークロス
|
||||
ブルーベリーチェア
|
||||
シンクロマシン
|
||||
いんせき
|
||||
スカーレットブック
|
||||
バイオレットブック
|
||||
ゼロの秘宝
|
|
@ -2480,3 +2480,79 @@ B 스테인리스 보틀
|
|||
순백떡
|
||||
로토무셀카봉
|
||||
반짝이는부적
|
||||
복합금속
|
||||
멋쟁이카드 블루
|
||||
뚜벅쵸의잎
|
||||
왕눈해의가시
|
||||
두두의솜털
|
||||
쥬쥬의털
|
||||
아라리의껍데기
|
||||
배루키의땀
|
||||
뿔카노의이빨
|
||||
쏘드라의먹물
|
||||
에레키드의털
|
||||
마그비의털
|
||||
라프라스의눈물
|
||||
폴리곤의조각
|
||||
초라기의전기
|
||||
블루의털
|
||||
무장조의깃털
|
||||
루브도의잉크
|
||||
플러시의털
|
||||
마이농의털
|
||||
톱치의껍데기
|
||||
메탕의발톱
|
||||
두개도스의가시
|
||||
방패톱스의발톱
|
||||
줄뮤마의갈기
|
||||
두더류의손톱
|
||||
소미안의솜
|
||||
곤율랭의땀
|
||||
치라미의털
|
||||
유니란의젤
|
||||
파쪼옥의실
|
||||
골비람의조각
|
||||
냐스퍼의털
|
||||
오케이징의먹물
|
||||
콕코구리의깃털
|
||||
물거미의실
|
||||
큐아링의꽃
|
||||
메테노의껍데기
|
||||
마빌크의크림
|
||||
두랄루돈의녹
|
||||
프리져의간식
|
||||
썬더의간식
|
||||
파이어의간식
|
||||
라이코의간식
|
||||
앤테이의간식
|
||||
스이쿤의간식
|
||||
루기아의간식
|
||||
칠색조의간식
|
||||
라티아스의간식
|
||||
라티오스의간식
|
||||
가이오가의간식
|
||||
그란돈의간식
|
||||
레쿠쟈의간식
|
||||
코바르온의간식
|
||||
테라키온의간식
|
||||
비리디온의간식
|
||||
레시라무의간식
|
||||
제크로무의간식
|
||||
큐레무의간식
|
||||
솔가레오의간식
|
||||
루나아라의간식
|
||||
네크로즈마의간식
|
||||
치고마의간식
|
||||
블리자포스의간식
|
||||
레이스포스의간식
|
||||
남청의디스크
|
||||
이글이글 픽
|
||||
테라피스 스텔라
|
||||
환상복슝
|
||||
블루베리 테이블보
|
||||
블루베리 체어
|
||||
싱크로머신
|
||||
운석
|
||||
스칼렛북
|
||||
바이올렛북
|
||||
제로의 비보
|
|
@ -2480,3 +2480,79 @@
|
|||
净空粘糕
|
||||
洛拍棒
|
||||
晶耀护符
|
||||
复合金属
|
||||
蓝之时尚名人卡
|
||||
走路草的叶片
|
||||
玛瑙水母的针
|
||||
嘟嘟的羽绒
|
||||
小海狮的毛
|
||||
蛋蛋的壳
|
||||
无畏小子的汗
|
||||
独角犀牛的牙
|
||||
墨海马的墨汁
|
||||
电击怪的毛
|
||||
鸭嘴宝宝的毛
|
||||
拉普拉斯的眼泪
|
||||
多边兽的碎片
|
||||
灯笼鱼的电力
|
||||
布鲁的毛
|
||||
盔甲鸟的羽毛
|
||||
图图犬的墨汁
|
||||
正电拍拍的毛
|
||||
负电拍拍的毛
|
||||
大颚蚁的壳
|
||||
铁哑铃的爪子
|
||||
头盖龙的刺
|
||||
盾甲龙的爪子
|
||||
斑斑马的鬃毛
|
||||
螺钉地鼠的爪子
|
||||
木棉球的棉絮
|
||||
滑滑小子的汗
|
||||
泡沫栗鼠的毛
|
||||
单卵细胞球的凝胶
|
||||
电电虫的丝
|
||||
泥偶小人的碎片
|
||||
妙喵的毛
|
||||
好啦鱿的墨汁
|
||||
小笃儿的羽毛
|
||||
滴蛛的丝
|
||||
花疗环环的花
|
||||
小陨星的壳
|
||||
小仙奶的奶油
|
||||
铝钢龙的锈
|
||||
急冻鸟的点心
|
||||
闪电鸟的点心
|
||||
火焰鸟的点心
|
||||
雷公的点心
|
||||
炎帝的点心
|
||||
水君的点心
|
||||
洛奇亚的点心
|
||||
凤王的点心
|
||||
拉帝亚斯的点心
|
||||
拉帝欧斯的点心
|
||||
盖欧卡的点心
|
||||
固拉多的点心
|
||||
烈空坐的点心
|
||||
勾帕路翁的点心
|
||||
代拉基翁的点心
|
||||
毕力吉翁的点心
|
||||
莱希拉姆的点心
|
||||
捷克罗姆的点心
|
||||
酋雷姆的点心
|
||||
索尔迦雷欧的点心
|
||||
露奈雅拉的点心
|
||||
奈克洛兹玛的点心
|
||||
熊徒弟的点心
|
||||
雪暴马的点心
|
||||
灵幽马的点心
|
||||
蓝之光碟
|
||||
鸭嘴炎兽三明治签
|
||||
星晶太晶碎块
|
||||
幻之桃桃果
|
||||
蓝莓桌巾
|
||||
蓝莓椅子
|
||||
同步器
|
||||
陨石
|
||||
朱之书
|
||||
紫之书
|
||||
零之秘宝
|
|
@ -2480,3 +2480,79 @@
|
|||
淨空糬
|
||||
洛拍棒
|
||||
晶耀護符
|
||||
複合金屬
|
||||
藍之時尚名人卡
|
||||
走路草的葉片
|
||||
瑪瑙水母的針
|
||||
嘟嘟的羽絨
|
||||
小海獅的毛
|
||||
蛋蛋的殼
|
||||
無畏小子的汗
|
||||
獨角犀牛的牙
|
||||
墨海馬的墨汁
|
||||
電擊怪的毛
|
||||
鴨嘴寶寶的毛
|
||||
拉普拉斯的眼淚
|
||||
多邊獸的碎片
|
||||
燈籠魚的電力
|
||||
布魯的毛
|
||||
盔甲鳥的羽毛
|
||||
圖圖犬的墨汁
|
||||
正電拍拍的毛
|
||||
負電拍拍的毛
|
||||
大顎蟻的殼
|
||||
鐵啞鈴的爪子
|
||||
頭蓋龍的刺
|
||||
盾甲龍的爪子
|
||||
斑斑馬的鬃毛
|
||||
螺釘地鼠的爪子
|
||||
木棉球的棉絮
|
||||
滑滑小子的汗
|
||||
泡沫栗鼠的毛
|
||||
單卵細胞球的凝膠
|
||||
電電蟲的絲
|
||||
泥偶小人的碎片
|
||||
妙喵的毛
|
||||
好啦魷的墨汁
|
||||
小篤兒的羽毛
|
||||
滴蛛的絲
|
||||
花療環環的花
|
||||
小隕星的殼
|
||||
小仙奶的奶油
|
||||
鋁鋼龍的鏽
|
||||
急凍鳥的點心
|
||||
閃電鳥的點心
|
||||
火焰鳥的點心
|
||||
雷公的點心
|
||||
炎帝的點心
|
||||
水君的點心
|
||||
洛奇亞的點心
|
||||
鳳王的點心
|
||||
拉帝亞斯的點心
|
||||
拉帝歐斯的點心
|
||||
蓋歐卡的點心
|
||||
固拉多的點心
|
||||
烈空坐的點心
|
||||
勾帕路翁的點心
|
||||
代拉基翁的點心
|
||||
畢力吉翁的點心
|
||||
萊希拉姆的點心
|
||||
捷克羅姆的點心
|
||||
酋雷姆的點心
|
||||
索爾迦雷歐的點心
|
||||
露奈雅拉的點心
|
||||
奈克洛茲瑪的點心
|
||||
熊徒弟的點心
|
||||
雪暴馬的點心
|
||||
靈幽馬的點心
|
||||
藍之光碟
|
||||
鴨嘴炎獸三明治籤
|
||||
星晶太晶碎塊
|
||||
幻之桃桃果
|
||||
藍莓桌巾
|
||||
藍莓椅子
|
||||
同步器
|
||||
隕石
|
||||
朱之書
|
||||
紫之書
|
||||
零之秘寶
|
|
@ -169,3 +169,33 @@ Wildnis von Kitakami
|
|||
Infernopass
|
||||
Oniyama
|
||||
Kaltwasserkarst
|
||||
|
||||
Blaubeer-Akademie
|
||||
|
||||
Savannen-Areal
|
||||
Tera-Kuppel
|
||||
Küsten-Areal
|
||||
Tera-Kuppel
|
||||
Canyon-Areal
|
||||
Tera-Kuppel
|
||||
Polar-Areal
|
||||
Tera-Kuppel
|
||||
Zentralplatz
|
||||
Tera-Kuppel
|
||||
Savannen-Platz
|
||||
Tera-Kuppel
|
||||
Küsten-Platz
|
||||
Tera-Kuppel
|
||||
Canyon-Platz
|
||||
Tera-Kuppel
|
||||
Polar-Platz
|
||||
Tera-Kuppel
|
||||
Elektrolithgrotte
|
||||
Tera-Kuppel
|
||||
Fackellabyrinth
|
||||
Tera-Kuppel
|
||||
Höhlensystem Null
|
||||
|
||||
Höhlensystem Null
|
||||
|
||||
Tera-Kuppel
|
||||
|
|
|
@ -169,3 +169,33 @@ Kitakami Wilds
|
|||
Infernal Pass
|
||||
Oni Mountain
|
||||
Chilling Waterhead
|
||||
|
||||
Blueberry Academy
|
||||
|
||||
Savanna Biome
|
||||
Terarium
|
||||
Coastal Biome
|
||||
Terarium
|
||||
Canyon Biome
|
||||
Terarium
|
||||
Polar Biome
|
||||
Terarium
|
||||
Central Plaza
|
||||
Terarium
|
||||
Savanna Plaza
|
||||
Terarium
|
||||
Coastal Plaza
|
||||
Terarium
|
||||
Canyon Plaza
|
||||
Terarium
|
||||
Polar Plaza
|
||||
Terarium
|
||||
Chargestone Cavern
|
||||
Terarium
|
||||
Torchlit Labyrinth
|
||||
Terarium
|
||||
Area Zero Underdepths
|
||||
|
||||
Area Zero Underdepths
|
||||
|
||||
Terarium
|
||||
|
|
|
@ -169,3 +169,33 @@ Campos Prístinos de Noroteo
|
|||
Paso del Averno
|
||||
Monte Ogro
|
||||
Cueva Aguafría
|
||||
|
||||
Academia Arándano
|
||||
|
||||
Área Árida
|
||||
Biodomo
|
||||
Área Costera
|
||||
Biodomo
|
||||
Área Escarpada
|
||||
Biodomo
|
||||
Área Polar
|
||||
Biodomo
|
||||
Plaza Cúbica
|
||||
Biodomo
|
||||
Plaza Árida
|
||||
Biodomo
|
||||
Plaza Costera
|
||||
Biodomo
|
||||
Plaza Escarpada
|
||||
Biodomo
|
||||
Plaza Polar
|
||||
Biodomo
|
||||
Gruta Electrorroca
|
||||
Biodomo
|
||||
Laberinto Lumbre
|
||||
Biodomo
|
||||
Caverna Abisal Cero
|
||||
|
||||
Caverna Abisal Cero
|
||||
|
||||
Biodomo
|
||||
|
|
|
@ -169,3 +169,33 @@ Terres Vierges de Septentria
|
|||
Val Infernal
|
||||
Mont Strueux
|
||||
Grotte Douche Froide
|
||||
|
||||
Institut Myrtille
|
||||
|
||||
Zone Savane
|
||||
Terra-Dôme
|
||||
Zone Côtière
|
||||
Terra-Dôme
|
||||
Zone Canyon
|
||||
Terra-Dôme
|
||||
Zone Polaire
|
||||
Terra-Dôme
|
||||
Poste Central
|
||||
Terra-Dôme
|
||||
Poste Savane
|
||||
Terra-Dôme
|
||||
Poste Côtier
|
||||
Terra-Dôme
|
||||
Poste Canyon
|
||||
Terra-Dôme
|
||||
Poste Polaire
|
||||
Terra-Dôme
|
||||
Caverne Électrolithe
|
||||
Terra-Dôme
|
||||
Dédale des Torches
|
||||
Terra-Dôme
|
||||
Abîme Zéro
|
||||
|
||||
Abîme Zéro
|
||||
|
||||
Terra-Dôme
|
||||
|
|
|
@ -169,3 +169,33 @@ Terre Primeve di Nordivia
|
|||
Pendio Infernale
|
||||
Monte Orco
|
||||
Grotta Doccia Fredda
|
||||
|
||||
Istituto Mirtillo
|
||||
|
||||
Settore Savana
|
||||
Bioterarium
|
||||
Settore Costa
|
||||
Bioterarium
|
||||
Settore Canyon
|
||||
Bioterarium
|
||||
Settore Ghiacciai
|
||||
Bioterarium
|
||||
Piazza Centrale
|
||||
Bioterarium
|
||||
Piazza della Savana
|
||||
Bioterarium
|
||||
Piazza della Costa
|
||||
Bioterarium
|
||||
Piazza del Canyon
|
||||
Bioterarium
|
||||
Piazza dei Ghiacciai
|
||||
Bioterarium
|
||||
Grotta Pietrelettrica
|
||||
Bioterarium
|
||||
Labirinto dei Lumi
|
||||
Bioterarium
|
||||
Grande Abisso Zero
|
||||
|
||||
Grande Abisso Zero
|
||||
|
||||
Bioterarium
|
||||
|
|
|
@ -169,3 +169,33 @@
|
|||
地獄谷
|
||||
鬼が山
|
||||
ひやみず洞
|
||||
|
||||
ブルーベリー学園
|
||||
|
||||
サバンナエリア
|
||||
テラリウムドーム
|
||||
コーストエリア
|
||||
テラリウムドーム
|
||||
キャニオンエリア
|
||||
テラリウムドーム
|
||||
ポーラエリア
|
||||
テラリウムドーム
|
||||
センタースクエア
|
||||
テラリウムドーム
|
||||
サバンナスクエア
|
||||
テラリウムドーム
|
||||
コーストスクエア
|
||||
テラリウムドーム
|
||||
キャニオンスクエア
|
||||
テラリウムドーム
|
||||
ポーラスクエア
|
||||
テラリウムドーム
|
||||
電気石の岩窟
|
||||
テラリウムドーム
|
||||
ともしびの迷路
|
||||
テラリウムドーム
|
||||
ゼロの大空洞
|
||||
|
||||
ゼロの大空洞
|
||||
|
||||
テラリウムドーム
|
||||
|
|
|
@ -169,3 +169,33 @@
|
|||
지옥골
|
||||
도깨비산
|
||||
찬물 동굴
|
||||
|
||||
블루베리 아카데미
|
||||
|
||||
사바나 에리어
|
||||
테라리움 돔
|
||||
코스트 에리어
|
||||
테라리움 돔
|
||||
캐니언 에리어
|
||||
테라리움 돔
|
||||
폴라 에리어
|
||||
테라리움 돔
|
||||
센터 스퀘어
|
||||
테라리움 돔
|
||||
사바나 스퀘어
|
||||
테라리움 돔
|
||||
코스트 스퀘어
|
||||
테라리움 돔
|
||||
캐니언 스퀘어
|
||||
테라리움 돔
|
||||
폴라 스퀘어
|
||||
테라리움 돔
|
||||
전기돌의 암굴
|
||||
테라리움 돔
|
||||
등불의 미로
|
||||
테라리움 돔
|
||||
제로의 대공동
|
||||
|
||||
제로의 대공동
|
||||
|
||||
테라리움 돔
|
||||
|
|
|
@ -169,3 +169,33 @@
|
|||
地狱谷
|
||||
鬼山
|
||||
冷水洞
|
||||
|
||||
蓝莓学园
|
||||
|
||||
草原区
|
||||
生态巨蛋
|
||||
海岸区
|
||||
生态巨蛋
|
||||
峡谷区
|
||||
生态巨蛋
|
||||
极地区
|
||||
生态巨蛋
|
||||
中心广场
|
||||
生态巨蛋
|
||||
草原广场
|
||||
生态巨蛋
|
||||
海岸广场
|
||||
生态巨蛋
|
||||
峡谷广场
|
||||
生态巨蛋
|
||||
极地广场
|
||||
生态巨蛋
|
||||
电气石岩窟
|
||||
生态巨蛋
|
||||
火光迷宫
|
||||
生态巨蛋
|
||||
零之大空洞
|
||||
|
||||
零之大空洞
|
||||
|
||||
生态巨蛋
|
||||
|
|
|
@ -169,3 +169,33 @@
|
|||
地獄谷
|
||||
鬼山
|
||||
冷水洞
|
||||
|
||||
藍莓學園
|
||||
|
||||
草原區
|
||||
生態巨蛋
|
||||
海岸區
|
||||
生態巨蛋
|
||||
峽谷區
|
||||
生態巨蛋
|
||||
極地區
|
||||
生態巨蛋
|
||||
中心廣場
|
||||
生態巨蛋
|
||||
草原廣場
|
||||
生態巨蛋
|
||||
海岸廣場
|
||||
生態巨蛋
|
||||
峽谷廣場
|
||||
生態巨蛋
|
||||
極地廣場
|
||||
生態巨蛋
|
||||
電氣石岩窟
|
||||
生態巨蛋
|
||||
火光迷宮
|
||||
生態巨蛋
|
||||
零之大空洞
|
||||
|
||||
零之大空洞
|
||||
|
||||
生態巨蛋
|
||||
|
|
|
@ -141,6 +141,5 @@ Pokémon HOME
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -77,70 +77,69 @@ a Pokémon shop
|
|||
a demo version
|
||||
the Poké Ball Plus
|
||||
Pokémon HOME
|
||||
[~ 78]
|
||||
[~ 79]
|
||||
[~ 80]
|
||||
[~ 81]
|
||||
[~ 82]
|
||||
[~ 83]
|
||||
[~ 84]
|
||||
[~ 85]
|
||||
[~ 86]
|
||||
[~ 87]
|
||||
[~ 88]
|
||||
[~ 89]
|
||||
[~ 90]
|
||||
[~ 91]
|
||||
[~ 92]
|
||||
[~ 93]
|
||||
[~ 94]
|
||||
[~ 95]
|
||||
[~ 96]
|
||||
[~ 97]
|
||||
[~ 98]
|
||||
[~ 99]
|
||||
[~ 100]
|
||||
[~ 101]
|
||||
[~ 102]
|
||||
[~ 103]
|
||||
[~ 104]
|
||||
[~ 105]
|
||||
[~ 106]
|
||||
[~ 107]
|
||||
[~ 108]
|
||||
[~ 109]
|
||||
[~ 110]
|
||||
[~ 111]
|
||||
[~ 112]
|
||||
[~ 113]
|
||||
[~ 114]
|
||||
[~ 115]
|
||||
[~ 116]
|
||||
[~ 117]
|
||||
[~ 118]
|
||||
[~ 119]
|
||||
[~ 120]
|
||||
[~ 121]
|
||||
[~ 122]
|
||||
[~ 123]
|
||||
[~ 124]
|
||||
[~ 125]
|
||||
[~ 126]
|
||||
[~ 127]
|
||||
[~ 128]
|
||||
[~ 129]
|
||||
[~ 130]
|
||||
[~ 131]
|
||||
[~ 132]
|
||||
[~ 133]
|
||||
[~ 134]
|
||||
[~ 135]
|
||||
[~ 136]
|
||||
[~ 137]
|
||||
[~ 138]
|
||||
[~ 139]
|
||||
[~ 140]
|
||||
[~ 141]
|
||||
[~ 142]
|
||||
[~ 143]
|
||||
[~ 144]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -77,70 +77,69 @@ Establecimiento Pokémon
|
|||
Versión de prueba
|
||||
Poké Ball Plus
|
||||
Pokémon HOME
|
||||
[~ 78]
|
||||
[~ 79]
|
||||
[~ 80]
|
||||
[~ 81]
|
||||
[~ 82]
|
||||
[~ 83]
|
||||
[~ 84]
|
||||
[~ 85]
|
||||
[~ 86]
|
||||
[~ 87]
|
||||
[~ 88]
|
||||
[~ 89]
|
||||
[~ 90]
|
||||
[~ 91]
|
||||
[~ 92]
|
||||
[~ 93]
|
||||
[~ 94]
|
||||
[~ 95]
|
||||
[~ 96]
|
||||
[~ 97]
|
||||
[~ 98]
|
||||
[~ 99]
|
||||
[~ 100]
|
||||
[~ 101]
|
||||
[~ 102]
|
||||
[~ 103]
|
||||
[~ 104]
|
||||
[~ 105]
|
||||
[~ 106]
|
||||
[~ 107]
|
||||
[~ 108]
|
||||
[~ 109]
|
||||
[~ 110]
|
||||
[~ 111]
|
||||
[~ 112]
|
||||
[~ 113]
|
||||
[~ 114]
|
||||
[~ 115]
|
||||
[~ 116]
|
||||
[~ 117]
|
||||
[~ 118]
|
||||
[~ 119]
|
||||
[~ 120]
|
||||
[~ 121]
|
||||
[~ 122]
|
||||
[~ 123]
|
||||
[~ 124]
|
||||
[~ 125]
|
||||
[~ 126]
|
||||
[~ 127]
|
||||
[~ 128]
|
||||
[~ 129]
|
||||
[~ 130]
|
||||
[~ 131]
|
||||
[~ 132]
|
||||
[~ 133]
|
||||
[~ 134]
|
||||
[~ 135]
|
||||
[~ 136]
|
||||
[~ 137]
|
||||
[~ 138]
|
||||
[~ 139]
|
||||
[~ 140]
|
||||
[~ 141]
|
||||
[~ 142]
|
||||
[~ 143]
|
||||
[~ 144]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -77,70 +77,69 @@ Magasin Pokémon
|
|||
Démo
|
||||
Poké Ball Plus
|
||||
Pokémon HOME
|
||||
[~ 78]
|
||||
[~ 79]
|
||||
[~ 80]
|
||||
[~ 81]
|
||||
[~ 82]
|
||||
[~ 83]
|
||||
[~ 84]
|
||||
[~ 85]
|
||||
[~ 86]
|
||||
[~ 87]
|
||||
[~ 88]
|
||||
[~ 89]
|
||||
[~ 90]
|
||||
[~ 91]
|
||||
[~ 92]
|
||||
[~ 93]
|
||||
[~ 94]
|
||||
[~ 95]
|
||||
[~ 96]
|
||||
[~ 97]
|
||||
[~ 98]
|
||||
[~ 99]
|
||||
[~ 100]
|
||||
[~ 101]
|
||||
[~ 102]
|
||||
[~ 103]
|
||||
[~ 104]
|
||||
[~ 105]
|
||||
[~ 106]
|
||||
[~ 107]
|
||||
[~ 108]
|
||||
[~ 109]
|
||||
[~ 110]
|
||||
[~ 111]
|
||||
[~ 112]
|
||||
[~ 113]
|
||||
[~ 114]
|
||||
[~ 115]
|
||||
[~ 116]
|
||||
[~ 117]
|
||||
[~ 118]
|
||||
[~ 119]
|
||||
[~ 120]
|
||||
[~ 121]
|
||||
[~ 122]
|
||||
[~ 123]
|
||||
[~ 124]
|
||||
[~ 125]
|
||||
[~ 126]
|
||||
[~ 127]
|
||||
[~ 128]
|
||||
[~ 129]
|
||||
[~ 130]
|
||||
[~ 131]
|
||||
[~ 132]
|
||||
[~ 133]
|
||||
[~ 134]
|
||||
[~ 135]
|
||||
[~ 136]
|
||||
[~ 137]
|
||||
[~ 138]
|
||||
[~ 139]
|
||||
[~ 140]
|
||||
[~ 141]
|
||||
[~ 142]
|
||||
[~ 143]
|
||||
[~ 144]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -77,70 +77,69 @@ un negozio Pokémon
|
|||
una versione demo
|
||||
la Poké Ball Plus
|
||||
Pokémon HOME
|
||||
[~ 78]
|
||||
[~ 79]
|
||||
[~ 80]
|
||||
[~ 81]
|
||||
[~ 82]
|
||||
[~ 83]
|
||||
[~ 84]
|
||||
[~ 85]
|
||||
[~ 86]
|
||||
[~ 87]
|
||||
[~ 88]
|
||||
[~ 89]
|
||||
[~ 90]
|
||||
[~ 91]
|
||||
[~ 92]
|
||||
[~ 93]
|
||||
[~ 94]
|
||||
[~ 95]
|
||||
[~ 96]
|
||||
[~ 97]
|
||||
[~ 98]
|
||||
[~ 99]
|
||||
[~ 100]
|
||||
[~ 101]
|
||||
[~ 102]
|
||||
[~ 103]
|
||||
[~ 104]
|
||||
[~ 105]
|
||||
[~ 106]
|
||||
[~ 107]
|
||||
[~ 108]
|
||||
[~ 109]
|
||||
[~ 110]
|
||||
[~ 111]
|
||||
[~ 112]
|
||||
[~ 113]
|
||||
[~ 114]
|
||||
[~ 115]
|
||||
[~ 116]
|
||||
[~ 117]
|
||||
[~ 118]
|
||||
[~ 119]
|
||||
[~ 120]
|
||||
[~ 121]
|
||||
[~ 122]
|
||||
[~ 123]
|
||||
[~ 124]
|
||||
[~ 125]
|
||||
[~ 126]
|
||||
[~ 127]
|
||||
[~ 128]
|
||||
[~ 129]
|
||||
[~ 130]
|
||||
[~ 131]
|
||||
[~ 132]
|
||||
[~ 133]
|
||||
[~ 134]
|
||||
[~ 135]
|
||||
[~ 136]
|
||||
[~ 137]
|
||||
[~ 138]
|
||||
[~ 139]
|
||||
[~ 140]
|
||||
[~ 141]
|
||||
[~ 142]
|
||||
[~ 143]
|
||||
[~ 144]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -77,70 +77,69 @@ Pokémon GO
|
|||
体験版
|
||||
モンスターボール Plus
|
||||
Pokémon HOME
|
||||
[~ 78]
|
||||
[~ 79]
|
||||
[~ 80]
|
||||
[~ 81]
|
||||
[~ 82]
|
||||
[~ 83]
|
||||
[~ 84]
|
||||
[~ 85]
|
||||
[~ 86]
|
||||
[~ 87]
|
||||
[~ 88]
|
||||
[~ 89]
|
||||
[~ 90]
|
||||
[~ 91]
|
||||
[~ 92]
|
||||
[~ 93]
|
||||
[~ 94]
|
||||
[~ 95]
|
||||
[~ 96]
|
||||
[~ 97]
|
||||
[~ 98]
|
||||
[~ 99]
|
||||
[~ 100]
|
||||
[~ 101]
|
||||
[~ 102]
|
||||
[~ 103]
|
||||
[~ 104]
|
||||
[~ 105]
|
||||
[~ 106]
|
||||
[~ 107]
|
||||
[~ 108]
|
||||
[~ 109]
|
||||
[~ 110]
|
||||
[~ 111]
|
||||
[~ 112]
|
||||
[~ 113]
|
||||
[~ 114]
|
||||
[~ 115]
|
||||
[~ 116]
|
||||
[~ 117]
|
||||
[~ 118]
|
||||
[~ 119]
|
||||
[~ 120]
|
||||
[~ 121]
|
||||
[~ 122]
|
||||
[~ 123]
|
||||
[~ 124]
|
||||
[~ 125]
|
||||
[~ 126]
|
||||
[~ 127]
|
||||
[~ 128]
|
||||
[~ 129]
|
||||
[~ 130]
|
||||
[~ 131]
|
||||
[~ 132]
|
||||
[~ 133]
|
||||
[~ 134]
|
||||
[~ 135]
|
||||
[~ 136]
|
||||
[~ 137]
|
||||
[~ 138]
|
||||
[~ 139]
|
||||
[~ 140]
|
||||
[~ 141]
|
||||
[~ 142]
|
||||
[~ 143]
|
||||
[~ 144]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -77,70 +77,69 @@ a Pokémon shop
|
|||
체험판
|
||||
몬스터볼 Plus
|
||||
Pokémon HOME
|
||||
[~ 78]
|
||||
[~ 79]
|
||||
[~ 80]
|
||||
[~ 81]
|
||||
[~ 82]
|
||||
[~ 83]
|
||||
[~ 84]
|
||||
[~ 85]
|
||||
[~ 86]
|
||||
[~ 87]
|
||||
[~ 88]
|
||||
[~ 89]
|
||||
[~ 90]
|
||||
[~ 91]
|
||||
[~ 92]
|
||||
[~ 93]
|
||||
[~ 94]
|
||||
[~ 95]
|
||||
[~ 96]
|
||||
[~ 97]
|
||||
[~ 98]
|
||||
[~ 99]
|
||||
[~ 100]
|
||||
[~ 101]
|
||||
[~ 102]
|
||||
[~ 103]
|
||||
[~ 104]
|
||||
[~ 105]
|
||||
[~ 106]
|
||||
[~ 107]
|
||||
[~ 108]
|
||||
[~ 109]
|
||||
[~ 110]
|
||||
[~ 111]
|
||||
[~ 112]
|
||||
[~ 113]
|
||||
[~ 114]
|
||||
[~ 115]
|
||||
[~ 116]
|
||||
[~ 117]
|
||||
[~ 118]
|
||||
[~ 119]
|
||||
[~ 120]
|
||||
[~ 121]
|
||||
[~ 122]
|
||||
[~ 123]
|
||||
[~ 124]
|
||||
[~ 125]
|
||||
[~ 126]
|
||||
[~ 127]
|
||||
[~ 128]
|
||||
[~ 129]
|
||||
[~ 130]
|
||||
[~ 131]
|
||||
[~ 132]
|
||||
[~ 133]
|
||||
[~ 134]
|
||||
[~ 135]
|
||||
[~ 136]
|
||||
[~ 137]
|
||||
[~ 138]
|
||||
[~ 139]
|
||||
[~ 140]
|
||||
[~ 141]
|
||||
[~ 142]
|
||||
[~ 143]
|
||||
[~ 144]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -77,70 +77,69 @@ Pokémon GO
|
|||
体验版
|
||||
精灵球 Plus
|
||||
Pokémon HOME
|
||||
[~ 78]
|
||||
[~ 79]
|
||||
[~ 80]
|
||||
[~ 81]
|
||||
[~ 82]
|
||||
[~ 83]
|
||||
[~ 84]
|
||||
[~ 85]
|
||||
[~ 86]
|
||||
[~ 87]
|
||||
[~ 88]
|
||||
[~ 89]
|
||||
[~ 90]
|
||||
[~ 91]
|
||||
[~ 92]
|
||||
[~ 93]
|
||||
[~ 94]
|
||||
[~ 95]
|
||||
[~ 96]
|
||||
[~ 97]
|
||||
[~ 98]
|
||||
[~ 99]
|
||||
[~ 100]
|
||||
[~ 101]
|
||||
[~ 102]
|
||||
[~ 103]
|
||||
[~ 104]
|
||||
[~ 105]
|
||||
[~ 106]
|
||||
[~ 107]
|
||||
[~ 108]
|
||||
[~ 109]
|
||||
[~ 110]
|
||||
[~ 111]
|
||||
[~ 112]
|
||||
[~ 113]
|
||||
[~ 114]
|
||||
[~ 115]
|
||||
[~ 116]
|
||||
[~ 117]
|
||||
[~ 118]
|
||||
[~ 119]
|
||||
[~ 120]
|
||||
[~ 121]
|
||||
[~ 122]
|
||||
[~ 123]
|
||||
[~ 124]
|
||||
[~ 125]
|
||||
[~ 126]
|
||||
[~ 127]
|
||||
[~ 128]
|
||||
[~ 129]
|
||||
[~ 130]
|
||||
[~ 131]
|
||||
[~ 132]
|
||||
[~ 133]
|
||||
[~ 134]
|
||||
[~ 135]
|
||||
[~ 136]
|
||||
[~ 137]
|
||||
[~ 138]
|
||||
[~ 139]
|
||||
[~ 140]
|
||||
[~ 141]
|
||||
[~ 142]
|
||||
[~ 143]
|
||||
[~ 144]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue