mirror of
https://github.com/kwsch/PKHeX.git
synced 2026-05-06 05:27:14 -05:00
Misc changes
Fixes #954 Incorporates changes from #955 TMHM info was loaded to Emerald personal table Static encounter table reformatted to separate arrays which are then combined later (reduces indentation, possible to further separate into other tables if need be).
This commit is contained in:
parent
d6aa9ec059
commit
24ef01b5c1
|
|
@ -174,7 +174,6 @@ private static void MarkG3Slots_FRLG(ref EncounterArea[] Areas)
|
|||
new EncounterArea { Location = a.First().Location, Slots = a.SelectMany(m => m.Slots).ToArray() }).
|
||||
ToArray();
|
||||
}
|
||||
|
||||
private static void MarkG3Slots_RSE(ref EncounterArea[] Areas)
|
||||
{
|
||||
// Group areas by location id, the raw data have areas with different slots but the same location id
|
||||
|
|
@ -183,7 +182,6 @@ private static void MarkG3Slots_RSE(ref EncounterArea[] Areas)
|
|||
new EncounterArea { Location = a.First().Location, Slots = a.SelectMany(m => m.Slots).ToArray() }).
|
||||
ToArray();
|
||||
}
|
||||
|
||||
private static void MarkG4SwarmSlots(ref EncounterArea[] Areas, EncounterArea[] SwarmAreas)
|
||||
{
|
||||
// Swarm slots replace slots 0 and 1 from encounters data
|
||||
|
|
@ -194,13 +192,13 @@ private static void MarkG4SwarmSlots(ref EncounterArea[] Areas, EncounterArea[]
|
|||
foreach(EncounterSlot SwarmSlot in SwarmSlots)
|
||||
{
|
||||
var OutputSlots = new List<EncounterSlot>();
|
||||
var ReplacedSlots = Area.Slots.Where(s => s.Type == SwarmSlot.Type);
|
||||
var ReplacedSlots = Area.Slots.Where(s => s.Type == SwarmSlot.Type).ToArray();
|
||||
|
||||
var SwarmOutputSlot0 = ReplacedSlots.First().Clone();
|
||||
var SwarmOutputSlot0 = ReplacedSlots[0].Clone();
|
||||
SwarmOutputSlot0.Species = SwarmSlot.Species;
|
||||
OutputSlots.Add(SwarmOutputSlot0);
|
||||
|
||||
var SwarmOutputSlot1 = ReplacedSlots.Skip(1).First().Clone();
|
||||
var SwarmOutputSlot1 = ReplacedSlots[1].Clone();
|
||||
SwarmOutputSlot1.Species = SwarmSlot.Species;
|
||||
OutputSlots.Add(SwarmOutputSlot1);
|
||||
|
||||
|
|
@ -210,14 +208,14 @@ private static void MarkG4SwarmSlots(ref EncounterArea[] Areas, EncounterArea[]
|
|||
Area.Slots = Area.Slots.Where(a => a.Species > 0).ToArray();
|
||||
}
|
||||
}
|
||||
|
||||
private static void MarkG4Slots(ref EncounterArea[] Areas)
|
||||
{
|
||||
// Group areas by location id, the raw data have areas with different slots but the same location id
|
||||
Areas = Areas.GroupBy(a => a.Location).
|
||||
Select(a =>
|
||||
new EncounterArea { Location = a.First().Location, Slots = a.SelectMany(m => m.Slots).ToArray() }).
|
||||
ToArray();
|
||||
Areas = Areas.GroupBy(a => a.Location).Select(a => new EncounterArea
|
||||
{
|
||||
Location = a.First().Location,
|
||||
Slots = a.SelectMany(m => m.Slots).ToArray()
|
||||
}).ToArray();
|
||||
}
|
||||
private static void MarkG5Slots(ref EncounterArea[] Areas)
|
||||
{
|
||||
|
|
@ -250,10 +248,11 @@ private static void MarkG5Slots(ref EncounterArea[] Areas)
|
|||
area.Slots = area.Slots.Where(slot => slot.Species != 0).ToArray();
|
||||
}
|
||||
// Group areas by location id, the raw data have areas with different slots but the same location id
|
||||
Areas = Areas.GroupBy(a => a.Location).
|
||||
Select(a =>
|
||||
new EncounterArea { Location = a.First().Location, Slots = a.SelectMany(m => m.Slots).ToArray() }).
|
||||
ToArray();
|
||||
Areas = Areas.GroupBy(a => a.Location).Select(a => new EncounterArea
|
||||
{
|
||||
Location = a.First().Location,
|
||||
Slots = a.SelectMany(m => m.Slots).ToArray()
|
||||
}).ToArray();
|
||||
}
|
||||
private static void MarkG6XYSlots(ref EncounterArea[] Areas)
|
||||
{
|
||||
|
|
@ -362,7 +361,7 @@ private static EncounterArea[] getTables2()
|
|||
// Update Personal Entries with TM/Tutor Data
|
||||
var TMHM = Data.unpackMini(Resources.hmtm_g3, "g3");
|
||||
for (int i = 0; i <= MaxSpeciesID_3; i++)
|
||||
PersonalTable.RS[i].AddTMHM(TMHM[i]);
|
||||
PersonalTable.E[i].AddTMHM(TMHM[i]);
|
||||
// Tutors g3 contains tutor compatiblity data extracted from emerald,
|
||||
// fire red and leaf green tutors data is a subset of emerald data
|
||||
var tutors = Data.unpackMini(Resources.tutors_g3, "g3");
|
||||
|
|
@ -2033,7 +2032,7 @@ private static IEnumerable<int> getMoves(PKM pkm, int species, int lvl, int form
|
|||
}
|
||||
case 3:
|
||||
{
|
||||
int index = PersonalTable.RS.getFormeIndex(species, 0);
|
||||
int index = PersonalTable.E.getFormeIndex(species, 0);
|
||||
if (index == 0)
|
||||
return r;
|
||||
if (LVL)
|
||||
|
|
@ -2054,7 +2053,7 @@ private static IEnumerable<int> getMoves(PKM pkm, int species, int lvl, int form
|
|||
}
|
||||
if (Machine)
|
||||
{
|
||||
var pi_c = PersonalTable.RS[index];
|
||||
var pi_c = PersonalTable.E[index];
|
||||
r.AddRange(TM_3.Where((t, m) => pi_c.TMHM[m]));
|
||||
if (pkm.Format == 3) // HM moves must be removed for 3->4, only give if current format.
|
||||
r.AddRange(HM_3.Where((t, m) => pi_c.TMHM[m+50]));
|
||||
|
|
@ -2251,17 +2250,19 @@ private static IEnumerable<int> getTutorMoves(PKM pkm, int species, int form, bo
|
|||
moves.Add(57);
|
||||
break;
|
||||
case 2:
|
||||
moves.AddRange(Tutors_GSC.Where((t, i) => PersonalTable.C[species].TMHM[57 + i]));
|
||||
info = PersonalTable.C[species];
|
||||
moves.AddRange(Tutors_GSC.Where((t, i) => info.TMHM[57 + i]));
|
||||
goto case 1;
|
||||
case 3:
|
||||
// E Tutors (Free)
|
||||
// E Tutors (BP)
|
||||
moves.AddRange(Tutor_E.Where((t, i) => PersonalTable.E[species].TMHM[58 + i]));
|
||||
info = PersonalTable.E[species];
|
||||
moves.AddRange(Tutor_E.Where((t, i) => info.TypeTutors[i]));
|
||||
// FRLG Tutors
|
||||
// Only special tutor moves, normal tutor moves are already included in Emerald data
|
||||
moves.AddRange(SpecialTutors_FRLG.Where(t => SpecialTutors_Compatibility_FRLG[t].Any(e => e == species)));
|
||||
moves.AddRange(SpecialTutors_FRLG.Where((t, i) => SpecialTutors_Compatibility_FRLG[i].Any(e => e == species)));
|
||||
// XD
|
||||
moves.AddRange(SpecialTutors_XD_Exclusive.Where(t => SpecialTutors_Compatibility_XD_Exclusive[t].Any(e => e == species)));
|
||||
moves.AddRange(SpecialTutors_XD_Exclusive.Where((t, i) => SpecialTutors_Compatibility_XD_Exclusive[i].Any(e => e == species)));
|
||||
// XD (Mew)
|
||||
if (species == 151)
|
||||
moves.AddRange(Tutor_3Mew);
|
||||
|
|
@ -2270,7 +2271,7 @@ private static IEnumerable<int> getTutorMoves(PKM pkm, int species, int form, bo
|
|||
case 4:
|
||||
info = PersonalTable.HGSS[species];
|
||||
moves.AddRange(Tutors_4.Where((t, i) => info.TypeTutors[i]));
|
||||
moves.AddRange(SpecialTutors_4.Where(t => SpecialTutors_Compatibility_4[t].Any(e => e == species)));
|
||||
moves.AddRange(SpecialTutors_4.Where((t, i) => SpecialTutors_Compatibility_4[i].Any(e => e == species)));
|
||||
break;
|
||||
case 5:
|
||||
info = PersonalTable.B2W2[species];
|
||||
|
|
|
|||
|
|
@ -161,9 +161,9 @@ public static partial class Legal
|
|||
|
||||
internal static readonly int[][] SpecialTutors_Compatibility_FRLG =
|
||||
{
|
||||
new int[] { 6 },
|
||||
new int[] { 9 },
|
||||
new int[] { 3 },
|
||||
new[] { 6 },
|
||||
new[] { 9 },
|
||||
new[] { 3 },
|
||||
};
|
||||
|
||||
// Tutor moves from XD that can be learned as tutor moves in emerald
|
||||
|
|
@ -182,23 +182,23 @@ public static partial class Legal
|
|||
|
||||
internal static readonly int[][] SpecialTutors_Compatibility_XD_Exclusive =
|
||||
{
|
||||
new int[] { 074, 075, 076, 088, 089, 090, 091, 092, 093, 094, 095,
|
||||
100, 101, 102, 103, 109, 110, 143, 150, 151, 185, 204,
|
||||
205, 208, 211, 218, 219, 222, 273, 274, 275, 299, 316,
|
||||
317, 320, 321, 323, 324, 337, 338, 343, 344, 362, 375,
|
||||
376, 377, 378, 379 },
|
||||
new[] { 074, 075, 076, 088, 089, 090, 091, 092, 093, 094, 095,
|
||||
100, 101, 102, 103, 109, 110, 143, 150, 151, 185, 204,
|
||||
205, 208, 211, 218, 219, 222, 273, 274, 275, 299, 316,
|
||||
317, 320, 321, 323, 324, 337, 338, 343, 344, 362, 375,
|
||||
376, 377, 378, 379 },
|
||||
|
||||
new int[] { 016, 017, 018, 021, 022, 084, 085, 142, 144, 145, 146,
|
||||
151, 163, 164, 176, 177, 178, 198, 225, 227, 250, 276,
|
||||
277, 278, 279, 333, 334 },
|
||||
new[] { 016, 017, 018, 021, 022, 084, 085, 142, 144, 145, 146,
|
||||
151, 163, 164, 176, 177, 178, 198, 225, 227, 250, 276,
|
||||
277, 278, 279, 333, 334 },
|
||||
|
||||
new int[] { 012, 035, 036, 039, 040, 052, 053, 063, 064, 065, 079,
|
||||
080, 092, 093, 094, 096, 097, 102, 103, 108, 121, 122,
|
||||
124, 131, 137, 150, 151, 163, 164, 173, 174, 177, 178,
|
||||
190, 196, 197, 198, 199, 200, 203, 206, 215, 228, 229,
|
||||
233, 234, 238, 248, 249, 250, 251, 280, 281, 282, 284,
|
||||
292, 302, 315, 316, 317, 327, 353, 354, 355, 356, 358,
|
||||
359, 385, 386 }
|
||||
new[] { 012, 035, 036, 039, 040, 052, 053, 063, 064, 065, 079,
|
||||
080, 092, 093, 094, 096, 097, 102, 103, 108, 121, 122,
|
||||
124, 131, 137, 150, 151, 163, 164, 173, 174, 177, 178,
|
||||
190, 196, 197, 198, 199, 200, 203, 206, 215, 228, 229,
|
||||
233, 234, 238, 248, 249, 250, 251, 280, 281, 282, 284,
|
||||
292, 302, 315, 316, 317, 327, 353, 354, 355, 356, 358,
|
||||
359, 385, 386 }
|
||||
};
|
||||
|
||||
internal static readonly int[] Roaming_MetLocation_FRLG =
|
||||
|
|
@ -233,125 +233,116 @@ public static partial class Legal
|
|||
|
||||
internal static readonly int[] Roaming_MetLocation_RSE =
|
||||
{
|
||||
// TODO: Check if roaming encounter is possible in routes 11, 119 and 120
|
||||
16, // Route 101
|
||||
17, // Route 102
|
||||
18, // Route 103
|
||||
19, // Route 104
|
||||
// Routes 105 to 109 only have surf encounters
|
||||
25, // Route 110
|
||||
26, // Route 111 Deep sand
|
||||
27, // Route 112
|
||||
28, // Route 113
|
||||
29, // Route 114
|
||||
30, // Route 115
|
||||
31, // Route 116
|
||||
32, // Route 117
|
||||
33, // Route 118
|
||||
34, // Route 119 Long grass
|
||||
35, // Route 120 Long grass
|
||||
36, // Route 121
|
||||
// Routes 122 only have surf encounters
|
||||
38, // Route 123
|
||||
// Routes 124 to 129 only have surf encounters
|
||||
// Route 130 only have grass inMirage Island
|
||||
// Routes 132 to 134 only have surf encounters
|
||||
//Roaming encounter is possible in tall grass and on water
|
||||
//Route 101-138
|
||||
16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
|
||||
26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
|
||||
36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
|
||||
46, 47, 48, 49,
|
||||
};
|
||||
|
||||
internal static readonly EncounterStatic[] Encounter_RSE =
|
||||
(new EncounterStatic { Species = 380, Level = 40, Version = GameVersion.S, Roaming = true, }).Clone(Roaming_MetLocation_RSE).Concat( //Latias
|
||||
(new EncounterStatic { Species = 380, Level = 40, Version = GameVersion.E, Roaming = true, }).Clone(Roaming_MetLocation_RSE)).Concat( //Latias
|
||||
(new EncounterStatic { Species = 381, Level = 40, Version = GameVersion.R, Roaming = true, }).Clone(Roaming_MetLocation_RSE)).Concat( //Latios
|
||||
(new EncounterStatic { Species = 381, Level = 40, Version = GameVersion.E, Roaming = true, }).Clone(Roaming_MetLocation_RSE)).Concat( //Latios
|
||||
new EncounterStatic[]
|
||||
{
|
||||
//Starters
|
||||
new EncounterStatic { Gift = true, Species = 152, Level = 5, Location = 000, Version = GameVersion.E, }, // Chikorita @ Littleroot Town
|
||||
new EncounterStatic { Gift = true, Species = 155, Level = 5, Location = 000, Version = GameVersion.E, }, // Cyndaquil
|
||||
new EncounterStatic { Gift = true, Species = 158, Level = 5, Location = 000, Version = GameVersion.E, }, // Totodile
|
||||
new EncounterStatic { Gift = true, Species = 252, Level = 5, Location = 016, }, // Treecko @ Route 101
|
||||
new EncounterStatic { Gift = true, Species = 255, Level = 5, Location = 016, }, // Torchic
|
||||
new EncounterStatic { Gift = true, Species = 258, Level = 5, Location = 016, }, // Mudkip
|
||||
internal static readonly EncounterStatic[] Encounter_RSE_Roam =
|
||||
{
|
||||
new EncounterStatic { Species = 380, Level = 40, Version = GameVersion.S, Roaming = true }, // Latias
|
||||
new EncounterStatic { Species = 380, Level = 40, Version = GameVersion.E, Roaming = true }, // Latias
|
||||
new EncounterStatic { Species = 381, Level = 40, Version = GameVersion.R, Roaming = true }, // Latios
|
||||
new EncounterStatic { Species = 381, Level = 40, Version = GameVersion.E, Roaming = true }, // Latios
|
||||
};
|
||||
internal static readonly EncounterStatic[] Encounter_RSE_Regular =
|
||||
{
|
||||
// Starters
|
||||
new EncounterStatic { Gift = true, Species = 152, Level = 05, Location = 000, Version = GameVersion.E, }, // Chikorita @ Littleroot Town
|
||||
new EncounterStatic { Gift = true, Species = 155, Level = 05, Location = 000, Version = GameVersion.E, }, // Cyndaquil
|
||||
new EncounterStatic { Gift = true, Species = 158, Level = 05, Location = 000, Version = GameVersion.E, }, // Totodile
|
||||
new EncounterStatic { Gift = true, Species = 252, Level = 05, Location = 016, }, // Treecko @ Route 101
|
||||
new EncounterStatic { Gift = true, Species = 255, Level = 05, Location = 016, }, // Torchic
|
||||
new EncounterStatic { Gift = true, Species = 258, Level = 05, Location = 016, }, // Mudkip
|
||||
|
||||
//Fossil @ Rustboro City
|
||||
new EncounterStatic { Gift = true, Species = 345, Level = 20, Location = 010, }, // Lileep
|
||||
new EncounterStatic { Gift = true, Species = 347, Level = 20, Location = 010, }, // Anorith
|
||||
// Fossil @ Rustboro City
|
||||
new EncounterStatic { Gift = true, Species = 345, Level = 20, Location = 010, }, // Lileep
|
||||
new EncounterStatic { Gift = true, Species = 347, Level = 20, Location = 010, }, // Anorith
|
||||
|
||||
//Gift
|
||||
new EncounterStatic { Gift = true, Species = 351, Level = 25, Location = 034, }, // Castform @ Weather Institute
|
||||
new EncounterStatic { Gift = true, Species = 374, Level = 5, Location = 013, }, // Beldum @ Mossdeep City
|
||||
new EncounterStatic { Gift = true, Species = 360, Level = 5, EggLocation = 253}, // Wynaut Egg
|
||||
// Gift
|
||||
new EncounterStatic { Gift = true, Species = 351, Level = 25, Location = 034, }, // Castform @ Weather Institute
|
||||
new EncounterStatic { Gift = true, Species = 374, Level = 05, Location = 013, }, // Beldum @ Mossdeep City
|
||||
new EncounterStatic { Gift = true, Species = 360, Level = 05, EggLocation = 253}, // Wynaut Egg
|
||||
|
||||
//Stationary
|
||||
new EncounterStatic { Species = 352, Level = 30, Location = 034, }, //Kecleon @ Route 119
|
||||
new EncounterStatic { Species = 352, Level = 30, Location = 035, }, //Kecleon @ Route 120
|
||||
new EncounterStatic { Species = 101, Level = 30, Location = 066, Version = GameVersion.RS, }, //Electrode @ Hideout (R:Magma Hideout/S:Aqua Hideout)
|
||||
new EncounterStatic { Species = 101, Level = 30, Location = 197, Version = GameVersion.E, }, //Electrode @ Aqua Hideout
|
||||
new EncounterStatic { Species = 185, Level = 40, Location = 058, Version = GameVersion.E, }, //Sudowoodo @ Battle Frontier
|
||||
// Stationary
|
||||
new EncounterStatic { Species = 352, Level = 30, Location = 034, }, // Kecleon @ Route 119
|
||||
new EncounterStatic { Species = 352, Level = 30, Location = 035, }, // Kecleon @ Route 120
|
||||
new EncounterStatic { Species = 101, Level = 30, Location = 066, Version = GameVersion.RS, }, // Electrode @ Hideout (R:Magma Hideout/S:Aqua Hideout)
|
||||
new EncounterStatic { Species = 101, Level = 30, Location = 197, Version = GameVersion.E, }, // Electrode @ Aqua Hideout
|
||||
new EncounterStatic { Species = 185, Level = 40, Location = 058, Version = GameVersion.E, }, // Sudowoodo @ Battle Frontier
|
||||
|
||||
//Stationary Lengendary
|
||||
new EncounterStatic { Species = 377, Level = 40, Location = 082, }, //Regirock @ Desert Ruins
|
||||
new EncounterStatic { Species = 378, Level = 40, Location = 081, }, //Regice @ Island Cave
|
||||
new EncounterStatic { Species = 379, Level = 40, Location = 083, }, //Registeel @ Ancient Tomb
|
||||
new EncounterStatic { Species = 380, Level = 50, Location = 073, Version = GameVersion.R, }, //Latias @ Southern Island
|
||||
new EncounterStatic { Species = 380, Level = 50, Location = 073, Version = GameVersion.E, }, //Latias @ Southern Island
|
||||
new EncounterStatic { Species = 381, Level = 50, Location = 073, Version = GameVersion.S, }, //Latios @ Southern Island
|
||||
new EncounterStatic { Species = 381, Level = 50, Location = 073, Version = GameVersion.E, }, //Latios @ Southern Island
|
||||
new EncounterStatic { Species = 382, Level = 45, Location = 072, Version = GameVersion.S, }, //Kyogre @ Cave of Origin
|
||||
new EncounterStatic { Species = 382, Level = 70, Location = 203, Version = GameVersion.E, }, //Kyogre @ Marine Cave
|
||||
new EncounterStatic { Species = 383, Level = 45, Location = 072, Version = GameVersion.R, }, //Groudon @ Cave of Origin
|
||||
new EncounterStatic { Species = 383, Level = 70, Location = 205, Version = GameVersion.E, }, //Groudon @ Terra Cave
|
||||
new EncounterStatic { Species = 384, Level = 70, Location = 085, }, //Rayquaza @ Sky Pillar
|
||||
// Stationary Lengendary
|
||||
new EncounterStatic { Species = 377, Level = 40, Location = 082, }, // Regirock @ Desert Ruins
|
||||
new EncounterStatic { Species = 378, Level = 40, Location = 081, }, // Regice @ Island Cave
|
||||
new EncounterStatic { Species = 379, Level = 40, Location = 083, }, // Registeel @ Ancient Tomb
|
||||
new EncounterStatic { Species = 380, Level = 50, Location = 073, Version = GameVersion.R, }, // Latias @ Southern Island
|
||||
new EncounterStatic { Species = 380, Level = 50, Location = 073, Version = GameVersion.E, }, // Latias @ Southern Island
|
||||
new EncounterStatic { Species = 381, Level = 50, Location = 073, Version = GameVersion.S, }, // Latios @ Southern Island
|
||||
new EncounterStatic { Species = 381, Level = 50, Location = 073, Version = GameVersion.E, }, // Latios @ Southern Island
|
||||
new EncounterStatic { Species = 382, Level = 45, Location = 072, Version = GameVersion.S, }, // Kyogre @ Cave of Origin
|
||||
new EncounterStatic { Species = 382, Level = 70, Location = 203, Version = GameVersion.E, }, // Kyogre @ Marine Cave
|
||||
new EncounterStatic { Species = 383, Level = 45, Location = 072, Version = GameVersion.R, }, // Groudon @ Cave of Origin
|
||||
new EncounterStatic { Species = 383, Level = 70, Location = 205, Version = GameVersion.E, }, // Groudon @ Terra Cave
|
||||
new EncounterStatic { Species = 384, Level = 70, Location = 085, }, // Rayquaza @ Sky Pillar
|
||||
|
||||
//Event
|
||||
new EncounterStatic { Species = 151, Level = 30, Location = 201, Version = GameVersion.E, }, //Mew @ Faraway Island
|
||||
new EncounterStatic { Species = 249, Level = 70, Location = 211, Version = GameVersion.E, }, //Lugia @ Navel Rock
|
||||
new EncounterStatic { Species = 250, Level = 70, Location = 211, Version = GameVersion.E, }, //Ho-Oh @ Navel Rock
|
||||
new EncounterStatic { Species = 386, Form = 3, Level = 30, Location = 200, Version = GameVersion.E, }, //Deoxys @ Birth Island
|
||||
}).ToArray();
|
||||
// Event
|
||||
new EncounterStatic { Species = 151, Level = 30, Location = 201, Version = GameVersion.E, }, // Mew @ Faraway Island
|
||||
new EncounterStatic { Species = 249, Level = 70, Location = 211, Version = GameVersion.E, }, // Lugia @ Navel Rock
|
||||
new EncounterStatic { Species = 250, Level = 70, Location = 211, Version = GameVersion.E, }, // Ho-Oh @ Navel Rock
|
||||
new EncounterStatic { Species = 386, Level = 30, Location = 200, Version = GameVersion.E, Form = 3 }, // Deoxys @ Birth Island
|
||||
};
|
||||
|
||||
internal static readonly EncounterStatic[] Encounter_FRLG =
|
||||
(new EncounterStatic { Species = 243, Level = 50, Roaming = true, }).Clone(Roaming_MetLocation_FRLG).Concat( //Raikou
|
||||
(new EncounterStatic { Species = 244, Level = 50, Roaming = true, }).Clone(Roaming_MetLocation_FRLG)).Concat( //Entei
|
||||
(new EncounterStatic { Species = 245, Level = 50, Roaming = true, }).Clone(Roaming_MetLocation_FRLG)).Concat( //Suicune
|
||||
new EncounterStatic[]
|
||||
{
|
||||
//Starters @ Pallet Town
|
||||
new EncounterStatic { Gift = true, Species = 1, Level = 5, Location = 088, }, // Bulbasaur
|
||||
new EncounterStatic { Gift = true, Species = 4, Level = 5, Location = 088, }, // Charmander
|
||||
new EncounterStatic { Gift = true, Species = 9, Level = 5, Location = 088, }, // Squirtle
|
||||
|
||||
//Fossil @ Cinnabar Island
|
||||
new EncounterStatic { Gift = true, Species = 138, Level = 30, Location = 096, }, // Omanyte
|
||||
new EncounterStatic { Gift = true, Species = 140, Level = 30, Location = 096, }, // Kabuto
|
||||
new EncounterStatic { Gift = true, Species = 142, Level = 30, Location = 096, }, // Aerodactyl
|
||||
internal static readonly EncounterStatic[] Encounter_FRLG_Roam =
|
||||
{
|
||||
new EncounterStatic { Species = 243, Level = 50, Roaming = true, }, // Raikou
|
||||
new EncounterStatic { Species = 244, Level = 50, Roaming = true, }, // Entei
|
||||
new EncounterStatic { Species = 245, Level = 50, Roaming = true, }, // Suicune
|
||||
};
|
||||
internal static readonly EncounterStatic[] Encounter_FRLG_Stationary =
|
||||
{
|
||||
// Starters @ Pallet Town
|
||||
new EncounterStatic { Gift = true, Species = 1, Level = 05, Location = 088, }, // Bulbasaur
|
||||
new EncounterStatic { Gift = true, Species = 4, Level = 05, Location = 088, }, // Charmander
|
||||
new EncounterStatic { Gift = true, Species = 9, Level = 05, Location = 088, }, // Squirtle
|
||||
|
||||
//Gift
|
||||
new EncounterStatic { Gift = true, Species = 106, Level = 25, Location = 098, }, // Hitmonlee @ Saffron City
|
||||
new EncounterStatic { Gift = true, Species = 107, Level = 25, Location = 098, }, // Hitmonchan @ Saffron City
|
||||
new EncounterStatic { Gift = true, Species = 129, Level = 5, Location = 099, }, // Magikarp @ Route 4
|
||||
new EncounterStatic { Gift = true, Species = 131, Level = 25, Location = 134, }, // Lapras @ Silph Co.
|
||||
new EncounterStatic { Gift = true, Species = 133, Level = 25, Location = 094, }, // Eevee @ Celadon City
|
||||
new EncounterStatic { Gift = true, Species = 175, Level = 5, EggLocation = 253 }, // Togepi Egg
|
||||
// Fossil @ Cinnabar Island
|
||||
new EncounterStatic { Gift = true, Species = 138, Level = 05, Location = 096, }, // Omanyte
|
||||
new EncounterStatic { Gift = true, Species = 140, Level = 05, Location = 096, }, // Kabuto
|
||||
new EncounterStatic { Gift = true, Species = 142, Level = 05, Location = 096, }, // Aerodactyl
|
||||
|
||||
//Stationary
|
||||
new EncounterStatic { Species = 143, Level = 30, Location = 112, }, //Snorlax @ Route 12
|
||||
new EncounterStatic { Species = 143, Level = 30, Location = 116, }, //Snorlax @ Route 16
|
||||
new EncounterStatic { Species = 101, Level = 34, Location = 142, }, //Electrode @ Power Plant
|
||||
new EncounterStatic { Species = 097, Level = 30, Location = 176, }, //Hypno @ Berry Forest
|
||||
// Gift
|
||||
new EncounterStatic { Gift = true, Species = 106, Level = 25, Location = 098, }, // Hitmonlee @ Saffron City
|
||||
new EncounterStatic { Gift = true, Species = 107, Level = 25, Location = 098, }, // Hitmonchan @ Saffron City
|
||||
new EncounterStatic { Gift = true, Species = 129, Level = 05, Location = 099, }, // Magikarp @ Route 4
|
||||
new EncounterStatic { Gift = true, Species = 131, Level = 25, Location = 134, }, // Lapras @ Silph Co.
|
||||
new EncounterStatic { Gift = true, Species = 133, Level = 25, Location = 094, }, // Eevee @ Celadon City
|
||||
new EncounterStatic { Gift = true, Species = 175, Level = 05, EggLocation = 253 }, // Togepi Egg
|
||||
|
||||
//Stationary Lengerdary
|
||||
new EncounterStatic { Species = 144, Level = 50, Location = 139, }, //Articuno @ Seafoam Islands
|
||||
new EncounterStatic { Species = 145, Level = 50, Location = 142, }, //Zapdos @ Power Plant
|
||||
new EncounterStatic { Species = 146, Level = 50, Location = 175, }, //Moltres @ Mt. Ember.
|
||||
new EncounterStatic { Species = 150, Level = 70, Location = 141, }, //Mewtwo @ Cerulean Cave
|
||||
// Stationary
|
||||
new EncounterStatic { Species = 143, Level = 30, Location = 112, }, // Snorlax @ Route 12
|
||||
new EncounterStatic { Species = 143, Level = 30, Location = 116, }, // Snorlax @ Route 16
|
||||
new EncounterStatic { Species = 101, Level = 34, Location = 142, }, // Electrode @ Power Plant
|
||||
new EncounterStatic { Species = 097, Level = 30, Location = 176, }, // Hypno @ Berry Forest
|
||||
|
||||
//Event
|
||||
new EncounterStatic { Species = 249, Level = 70, Location = 174, }, //Lugia @ Navel Rock
|
||||
new EncounterStatic { Species = 250, Level = 70, Location = 174, }, //Ho-Oh @ Navel Rock
|
||||
new EncounterStatic { Species = 386, Form = 1, Level = 30, Location = 187, Version = GameVersion.FR, }, //Deoxys @ Birth Island
|
||||
new EncounterStatic { Species = 386, Form = 2, Level = 30, Location = 187, Version = GameVersion.LG, }, //Deoxys @ Birth Island
|
||||
}).ToArray();
|
||||
// Stationary Lengerdary
|
||||
new EncounterStatic { Species = 144, Level = 50, Location = 139, }, // Articuno @ Seafoam Islands
|
||||
new EncounterStatic { Species = 145, Level = 50, Location = 142, }, // Zapdos @ Power Plant
|
||||
new EncounterStatic { Species = 146, Level = 50, Location = 175, }, // Moltres @ Mt. Ember.
|
||||
new EncounterStatic { Species = 150, Level = 70, Location = 141, }, // Mewtwo @ Cerulean Cave
|
||||
|
||||
// Event
|
||||
new EncounterStatic { Species = 249, Level = 70, Location = 174, }, // Lugia @ Navel Rock
|
||||
new EncounterStatic { Species = 250, Level = 70, Location = 174, }, // Ho-Oh @ Navel Rock
|
||||
new EncounterStatic { Species = 386, Level = 30, Location = 187, Version = GameVersion.FR, Form = 1 }, // Deoxys @ Birth Island
|
||||
new EncounterStatic { Species = 386, Level = 30, Location = 187, Version = GameVersion.LG, Form = 2 }, // Deoxys @ Birth Island
|
||||
};
|
||||
|
||||
internal static readonly EncounterStatic[] Encounter_RSE = Encounter_RSE_Roam.SelectMany(e => e.Clone(Roaming_MetLocation_RSE)).Concat(Encounter_RSE_Regular).ToArray();
|
||||
internal static readonly EncounterStatic[] Encounter_FRLG = Encounter_FRLG_Roam.SelectMany(e => e.Clone(Roaming_MetLocation_FRLG)).Concat(Encounter_FRLG_Stationary).ToArray();
|
||||
|
||||
private static readonly int[] TradeContest_Cool = {30, 05, 05, 05, 05, 10};
|
||||
private static readonly int[] TradeContest_Beauty = {05, 30, 05, 05, 05, 10};
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user