2017-07-25 07:28:43 +00:00
|
|
|
|
using System;
|
|
|
|
|
using static PKHeX.Core.EncounterUtil;
|
|
|
|
|
|
|
|
|
|
namespace PKHeX.Core
|
|
|
|
|
{
|
2017-10-24 06:12:58 +00:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// Generation 1 Encounters
|
|
|
|
|
/// </summary>
|
2017-07-25 07:28:43 +00:00
|
|
|
|
internal static class Encounters1
|
|
|
|
|
{
|
2019-10-08 01:40:09 +00:00
|
|
|
|
internal static readonly EncounterArea1[] SlotsRBY;
|
2017-07-25 07:28:43 +00:00
|
|
|
|
internal static readonly EncounterStatic[] StaticRBY;
|
|
|
|
|
|
|
|
|
|
static Encounters1()
|
|
|
|
|
{
|
|
|
|
|
StaticRBY = Encounter_RBY;
|
|
|
|
|
SlotsRBY = GetAreas();
|
2017-12-19 00:17:21 +00:00
|
|
|
|
MarkEncountersGeneration(1, SlotsRBY);
|
|
|
|
|
MarkEncountersGeneration(1, StaticRBY, TradeGift_RBY_NoTradeback, TradeGift_RBY_Tradeback);
|
2018-03-27 05:23:11 +00:00
|
|
|
|
|
2020-07-18 20:36:30 +00:00
|
|
|
|
var trades = ArrayUtil.ConcatAll(TradeGift_RBY_Common, TradeGift_RBY_NoTradeback, TradeGift_RBY_Tradeback);
|
2018-03-27 05:23:11 +00:00
|
|
|
|
foreach (var t in trades)
|
2018-03-31 04:38:57 +00:00
|
|
|
|
{
|
2018-07-10 23:45:24 +00:00
|
|
|
|
t.TrainerNames = TradeOTG1;
|
2018-04-30 02:03:55 +00:00
|
|
|
|
if (t.Version == GameVersion.Any)
|
|
|
|
|
t.Version = GameVersion.RBY;
|
2018-03-31 04:38:57 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
SlotsRBY.SetVersion(GameVersion.RBY);
|
|
|
|
|
StaticRBY.SetVersion(GameVersion.RBY);
|
2017-07-25 07:28:43 +00:00
|
|
|
|
}
|
|
|
|
|
|
PKHeX.Core Nullable cleanup (#2401)
* Handle some nullable cases
Refactor MysteryGift into a second abstract class (backed by a byte array, or fake data)
Make some classes have explicit constructors instead of { } initialization
* Handle bits more obviously without null
* Make SaveFile.BAK explicitly readonly again
* merge constructor methods to have readonly fields
* Inline some properties
* More nullable handling
* Rearrange box actions
define straightforward classes to not have any null properties
* Make extrabyte reference array immutable
* Move tooltip creation to designer
* Rearrange some logic to reduce nesting
* Cache generated fonts
* Split mystery gift album purpose
* Handle more tooltips
* Disallow null setters
* Don't capture RNG object, only type enum
* Unify learnset objects
Now have readonly properties which are never null
don't new() empty learnsets (>800 Learnset objects no longer created,
total of 2400 objects since we also new() a move & level array)
optimize g1/2 reader for early abort case
* Access rewrite
Initialize blocks in a separate object, and get via that object
removes a couple hundred "might be null" warnings since blocks are now readonly getters
some block references have been relocated, but interfaces should expose all that's needed
put HoF6 controls in a groupbox, and disable
* Readonly personal data
* IVs non nullable for mystery gift
* Explicitly initialize forced encounter moves
* Make shadow objects readonly & non-null
Put murkrow fix in binary data resource, instead of on startup
* Assign dex form fetch on constructor
Fixes legality parsing edge cases
also handle cxd parse for valid; exit before exception is thrown in FrameGenerator
* Remove unnecessary null checks
* Keep empty value until init
SetPouch sets the value to an actual one during load, but whatever
* Readonly team lock data
* Readonly locks
Put locked encounters at bottom (favor unlocked)
* Mail readonly data / offset
Rearrange some call flow and pass defaults
Add fake classes for SaveDataEditor mocking
Always party size, no need to check twice in stat editor
use a fake save file as initial data for savedata editor, and for
gamedata (wow i found a usage)
constrain eventwork editor to struct variable types (uint, int, etc),
thus preventing null assignment errors
2019-10-17 01:47:31 +00:00
|
|
|
|
internal static readonly string[] TradeOTG1 = {string.Empty, "トレーナー", "Trainer", "Dresseur", "Allenatore", "Trainer", string.Empty, "Entrenador", "트레이너"};
|
2018-07-10 23:45:24 +00:00
|
|
|
|
|
2019-09-12 05:06:24 +00:00
|
|
|
|
private static EncounterArea1[] GetAreas()
|
2017-07-25 07:28:43 +00:00
|
|
|
|
{
|
2019-09-12 05:06:24 +00:00
|
|
|
|
var red_gw = EncounterArea1.GetArray1GrassWater(Util.GetBinaryResource("encounter_red.pkl"));
|
|
|
|
|
var blu_gw = EncounterArea1.GetArray1GrassWater(Util.GetBinaryResource("encounter_blue.pkl"));
|
|
|
|
|
var ylw_gw = EncounterArea1.GetArray1GrassWater(Util.GetBinaryResource("encounter_yellow.pkl"));
|
|
|
|
|
var rb_fish = EncounterArea1.GetArray1Fishing(Util.GetBinaryResource("encounter_rb_f.pkl"));
|
|
|
|
|
var ylw_fish = EncounterArea1.GetArray1FishingYellow(Util.GetBinaryResource("encounter_yellow_f.pkl"));
|
2017-07-25 07:28:43 +00:00
|
|
|
|
|
|
|
|
|
MarkEncountersVersion(red_gw, GameVersion.RD);
|
2018-04-29 16:31:13 +00:00
|
|
|
|
MarkEncountersVersion(blu_gw, GameVersion.BU);
|
2017-07-25 07:28:43 +00:00
|
|
|
|
MarkEncountersVersion(ylw_gw, GameVersion.YW);
|
|
|
|
|
MarkEncountersVersion(rb_fish, GameVersion.RB);
|
|
|
|
|
MarkEncountersVersion(ylw_fish, GameVersion.YW);
|
|
|
|
|
|
|
|
|
|
var table = AddExtraTableSlots(red_gw, blu_gw, ylw_gw, rb_fish, ylw_fish);
|
|
|
|
|
Array.Resize(ref table, table.Length + 1);
|
|
|
|
|
table[table.Length - 1] = FishOldGood_RBY;
|
|
|
|
|
|
2017-11-26 02:16:50 +00:00
|
|
|
|
foreach (var arr in table)
|
2018-08-03 03:11:42 +00:00
|
|
|
|
{
|
|
|
|
|
foreach (var slot in arr.Slots)
|
|
|
|
|
slot.Area = arr;
|
|
|
|
|
}
|
|
|
|
|
|
2017-07-25 07:28:43 +00:00
|
|
|
|
return table;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private static readonly EncounterStatic[] Encounter_RBY =
|
|
|
|
|
{
|
|
|
|
|
// Gameversion is RBY for pokemon with the same catch rate and initial moves in all games
|
|
|
|
|
// If there are differents in moves or catch rate they will have different encounters defined
|
|
|
|
|
new EncounterStatic { Species = 001, Level = 05, Version = GameVersion.RBY }, // Bulbasaur
|
|
|
|
|
new EncounterStatic { Species = 004, Level = 05, Version = GameVersion.RBY }, // Charmander
|
|
|
|
|
new EncounterStatic { Species = 007, Level = 05, Version = GameVersion.RBY }, // Squirtle
|
|
|
|
|
new EncounterStatic { Species = 025, Level = 05, Version = GameVersion.YW }, // Pikachu
|
2018-05-12 15:13:39 +00:00
|
|
|
|
|
2017-07-25 07:28:43 +00:00
|
|
|
|
// Game Corner
|
|
|
|
|
new EncounterStatic { Species = 030, Level = 17, Version = GameVersion.RB }, // Nidorina (Red Game Corner)
|
|
|
|
|
new EncounterStatic { Species = 033, Level = 17, Version = GameVersion.BU }, // Nidorino (Blue[EN] / Green[JP] Game Corner)
|
|
|
|
|
new EncounterStatic { Species = 035, Level = 08, Version = GameVersion.RBY }, // Clefairy (Red Game Corner)
|
2018-04-30 03:04:13 +00:00
|
|
|
|
new EncounterStatic { Species = 036, Level = 24, Version = GameVersion.BU }, // Clefable (Blue[JP] Game Corner)
|
2017-07-25 07:28:43 +00:00
|
|
|
|
new EncounterStatic { Species = 037, Level = 18, Version = GameVersion.RBY }, // Vulpix (Yellow Game Corner)
|
|
|
|
|
new EncounterStatic { Species = 040, Level = 22, Version = GameVersion.RBY }, // Wigglytuff (Yellow Game Corner)
|
2018-04-30 03:04:13 +00:00
|
|
|
|
new EncounterStatic { Species = 063, Level = 06, Version = GameVersion.BU }, // Abra (Blue[EN] / Green[JP] Game Corner)
|
|
|
|
|
new EncounterStatic { Species = 116, Level = 18, Version = GameVersion.BU }, // Horsea (Blue[JP] Game Corner)
|
2017-07-25 07:28:43 +00:00
|
|
|
|
new EncounterStatic { Species = 123, Level = 25, Version = GameVersion.RBY }, // Scyther (Red Game Corner)
|
|
|
|
|
new EncounterStatic { Species = 127, Level = 20, Version = GameVersion.BU }, // Pinsir (Blue[EN] / Green[JP] Game Corner)
|
|
|
|
|
new EncounterStatic { Species = 127, Level = 30, Version = GameVersion.YW }, // Pinsir (Yellow Game Corner) (Different initial moves)
|
2018-04-30 03:04:13 +00:00
|
|
|
|
new EncounterStatic { Species = 137, Level = 18, Version = GameVersion.BU }, // Porygon (Blue[EN] / Green[JP] Game Corner)
|
2017-07-25 07:28:43 +00:00
|
|
|
|
new EncounterStatic { Species = 147, Level = 18, Version = GameVersion.RBY }, // Dratini (Red Game Corner)
|
|
|
|
|
new EncounterStatic { Species = 148, Level = 30, Version = GameVersion.BU }, // Dragonair (Blue[JP] Game Corner)
|
|
|
|
|
new EncounterStatic { Species = 025, Level = 12, Version = GameVersion.BU }, // Pikachu (Blue[JP] Game Corner) (Different catch rate)
|
|
|
|
|
|
|
|
|
|
// Lower level less ideal matches; best match is from above.
|
|
|
|
|
// new EncounterStatic { Species = 035, Level = 12 }, // Clefairy (Blue[EN] / Green[JP] Game Corner)
|
|
|
|
|
// new EncounterStatic { Species = 063, Level = 09 }, // Abra (Red Game Corner)
|
|
|
|
|
// new EncounterStatic { Species = 063, Level = 08 }, // Abra (Blue[JP] Game Corner)
|
|
|
|
|
// new EncounterStatic { Species = 063, Level = 15 }, // Abra (Yellow Game Corner)
|
|
|
|
|
// new EncounterStatic { Species = 123, Level = 30 }, // Scyther (Yellow Game Corner)
|
|
|
|
|
// new EncounterStatic { Species = 137, Level = 22 }, // Porygon (Blue[JP] Game Corner)
|
|
|
|
|
// new EncounterStatic { Species = 137, Level = 26 }, // Porygon (Red Game Corner)
|
|
|
|
|
// new EncounterStatic { Species = 137, Level = 26 }, // Porygon (Yellow Game Corner)
|
|
|
|
|
// new EncounterStatic { Species = 147, Level = 24 }, // Dratini (Blue[EN] / Green[JP] Game Corner)
|
|
|
|
|
|
|
|
|
|
new EncounterStatic { Species = 129, Level = 05, Version = GameVersion.RBY }, // Magikarp
|
|
|
|
|
new EncounterStatic { Species = 143, Level = 30, Version = GameVersion.RBY }, // Snorlax
|
|
|
|
|
new EncounterStatic { Species = 106, Level = 30, Version = GameVersion.RBY }, // Hitmonlee
|
|
|
|
|
new EncounterStatic { Species = 107, Level = 30, Version = GameVersion.RBY }, // Hitmonchan
|
|
|
|
|
|
|
|
|
|
new EncounterStatic { Species = 131, Level = 15, Version = GameVersion.RBY }, // Lapras
|
|
|
|
|
new EncounterStatic { Species = 138, Level = 30, Version = GameVersion.RBY }, // Omanyte
|
|
|
|
|
new EncounterStatic { Species = 140, Level = 30, Version = GameVersion.RBY }, // Kabuto
|
|
|
|
|
new EncounterStatic { Species = 142, Level = 30, Version = GameVersion.RBY }, // Aerodactyl
|
2018-05-12 15:13:39 +00:00
|
|
|
|
|
2017-07-25 07:28:43 +00:00
|
|
|
|
new EncounterStatic { Species = 144, Level = 50, Version = GameVersion.RBY }, // Articuno
|
|
|
|
|
new EncounterStatic { Species = 145, Level = 50, Version = GameVersion.RBY }, // Zapdos
|
|
|
|
|
new EncounterStatic { Species = 146, Level = 50, Version = GameVersion.RBY }, // Moltres
|
|
|
|
|
|
|
|
|
|
new EncounterStatic { Species = 150, Level = 70, Version = GameVersion.RBY }, // Mewtwo
|
2018-05-12 15:13:39 +00:00
|
|
|
|
|
2017-07-25 07:28:43 +00:00
|
|
|
|
new EncounterStatic { Species = 133, Level = 25, Version = GameVersion.RB }, // Eevee
|
|
|
|
|
new EncounterStatic { Species = 133, Level = 25, Version = GameVersion.YW }, // Eevee (Different initial moves)
|
2018-05-12 15:13:39 +00:00
|
|
|
|
|
2018-01-01 18:38:38 +00:00
|
|
|
|
new EncounterStatic { Species = 100, Level = 40, Version = GameVersion.RBY }, // Voltorb (Power Plant)
|
|
|
|
|
new EncounterStatic { Species = 101, Level = 43, Version = GameVersion.RBY }, // Electrode (Power Plant)
|
2017-07-25 07:28:43 +00:00
|
|
|
|
|
|
|
|
|
// Yellow Only -- duplicate encounters with a higher level
|
|
|
|
|
// new EncounterStatic { Species = 001, Level = 10, Version = GameVersion.YW }, // Bulbasaur (Cerulean City)
|
|
|
|
|
// new EncounterStatic { Species = 004, Level = 10, Version = GameVersion.YW }, // Charmander (Route 24)
|
|
|
|
|
// new EncounterStatic { Species = 007, Level = 10, Version = GameVersion.YW }, // Squirtle (Vermillion City)
|
|
|
|
|
|
|
|
|
|
new EncounterStatic { Species = 054, Level = 15, Moves = new [] { 133, 10 }, Version = GameVersion.Stadium }, // Stadium Psyduck (Amnesia)
|
|
|
|
|
new EncounterStatic { Species = 001, Level = 05, Version = GameVersion.Stadium }, // Bulbasaur
|
|
|
|
|
new EncounterStatic { Species = 004, Level = 05, Version = GameVersion.Stadium }, // Charmander
|
|
|
|
|
new EncounterStatic { Species = 071, Level = 05, Version = GameVersion.Stadium }, // Squirtle
|
|
|
|
|
new EncounterStatic { Species = 106, Level = 20, Version = GameVersion.Stadium }, // Hitmonlee
|
|
|
|
|
new EncounterStatic { Species = 107, Level = 20, Version = GameVersion.Stadium }, // Hitmonchan
|
|
|
|
|
new EncounterStatic { Species = 133, Level = 25, Version = GameVersion.Stadium }, // Eevee
|
|
|
|
|
new EncounterStatic { Species = 138, Level = 20, Version = GameVersion.Stadium }, // Omanyte
|
|
|
|
|
new EncounterStatic { Species = 140, Level = 20, Version = GameVersion.Stadium }, // Kabuto
|
|
|
|
|
new EncounterStatic { Species = 151, Level = 5, IVs = new [] {15,15,15,15,15,15}, Version = GameVersion.VCEvents }, // Event Mew
|
|
|
|
|
};
|
|
|
|
|
|
2020-07-18 20:36:30 +00:00
|
|
|
|
internal static readonly EncounterTrade1[] TradeGift_RBY_Common =
|
2017-07-25 07:28:43 +00:00
|
|
|
|
{
|
|
|
|
|
// Species & Minimum level (legal) possible to acquire at.
|
2017-12-19 00:17:21 +00:00
|
|
|
|
//new EncounterTrade { Species = 122, Level = 06 }, // Mr. Mime - Game Corner Abra
|
2020-07-18 20:36:30 +00:00
|
|
|
|
new EncounterTrade1(032, 02) { Version = GameVersion.RD }, // Nidoran♂ - Wild Nidoran♀
|
|
|
|
|
new EncounterTrade1(029, 02) { Version = GameVersion.BU }, // Nidoran♀ - Wild Nidoran♂
|
|
|
|
|
new EncounterTrade1(030, 16) { Version = GameVersion.RB }, // Nidorina - Evolve Nidorino
|
|
|
|
|
new EncounterTrade1(030, 16) { Version = GameVersion.YW }, // Nidorina - Evolve Nidorino (Different initial moves)
|
|
|
|
|
new EncounterTrade1(108, 15) { Version = GameVersion.RBY }, // Lickitung - Surf Slowbro
|
|
|
|
|
new EncounterTrade1(083, 02) { Version = GameVersion.RBY }, // Farfetch’d - Wild Spearow
|
|
|
|
|
new EncounterTrade1(101, 03) { Version = GameVersion.RBY }, // Electrode - Wild Raichu
|
|
|
|
|
|
|
|
|
|
new EncounterTrade1(122, 03) { Version = GameVersion.RBY }, // Mr. Mime - Wild Jigglypuff
|
|
|
|
|
new EncounterTrade1(060, 02) { Version = GameVersion.RBY }, // Poliwag - Wild Rattata
|
2017-12-19 00:17:21 +00:00
|
|
|
|
//new EncounterTrade { Species = 083, Level = 02 }, // Farfetch’d - Wild Pidgey
|
2018-09-20 02:08:10 +00:00
|
|
|
|
|
2020-07-18 20:36:30 +00:00
|
|
|
|
new EncounterTrade1(093, 28, 45) { EvolveOnTrade = true, Version = GameVersion.RBY }, // Haunter - Evolve Machop->Machoke
|
|
|
|
|
new EncounterTrade1(075, 16, 45) { EvolveOnTrade = true, Version = GameVersion.RBY }, // Graveler - Evolve Abra->Kadabra
|
2017-07-25 07:28:43 +00:00
|
|
|
|
};
|
|
|
|
|
|
2020-07-18 20:36:30 +00:00
|
|
|
|
internal static readonly EncounterTrade1[] TradeGift_RBY_NoTradeback = ArrayUtil.ConcatAll(TradeGift_RBY_Common, new[]
|
2017-07-25 07:28:43 +00:00
|
|
|
|
{
|
|
|
|
|
// Species & Minimum level (legal) possible to acquire at.
|
2020-07-18 20:36:30 +00:00
|
|
|
|
new EncounterTrade1(124, 15) { Version = GameVersion.RBY }, // Jynx - Fish Poliwhirl (GSC: 10)
|
|
|
|
|
new EncounterTrade1(114, 13) { Version = GameVersion.RBY }, // Tangela - Wild Venonat (GSC: 5) No different moves at level 13
|
|
|
|
|
new EncounterTrade1(086, 28) { Version = GameVersion.RBY }, // Seel - Wild Ponyta (GSC: 5)
|
2018-05-12 15:13:39 +00:00
|
|
|
|
|
2020-07-18 20:36:30 +00:00
|
|
|
|
new EncounterTrade1(115, 15) { Version = GameVersion.RBY }, // Kangaskhan - Trade Rhydon (GSC: 10)
|
|
|
|
|
new EncounterTrade1(128, 28) { Version = GameVersion.RBY }, // Tauros - Evolve Persian (GSC: 18)
|
|
|
|
|
new EncounterTrade1(098, 15, 204) { Version = GameVersion.RBY }, // Krabby - Wild Growlithe (GSC: 5)
|
2018-05-12 15:13:39 +00:00
|
|
|
|
|
2017-12-19 00:17:21 +00:00
|
|
|
|
//new EncounterTrade { Species = 122, Level = 08 }, // Mr. Mime - Wild Clefairy (GSC: 6)
|
2020-07-18 20:36:30 +00:00
|
|
|
|
new EncounterTrade1(067, 16) { Version = GameVersion.RBY, EvolveOnTrade = true }, // Machoke - Wild Cubone (GSC: 5)
|
|
|
|
|
new EncounterTrade1(112, 15) { Version = GameVersion.RBY }, // Rhydon - Surf Golduck (GSC: 10)
|
|
|
|
|
new EncounterTrade1(087, 15) { Version = GameVersion.RBY }, // Dewgong - Wild Growlithe (GSC: 5)
|
|
|
|
|
new EncounterTrade1(089, 25) { Version = GameVersion.RBY }, // Muk - Wild Kangaskhan (GSC: 5)
|
|
|
|
|
new EncounterTrade1(079, 22) { Version = GameVersion.RBY }, // Slowpoke - Wild Seel (GSC 5)
|
|
|
|
|
new EncounterTrade1(051, 15) { Version = GameVersion.RBY }, // Dugtrio - Trade Lickitung (GSC 5)
|
|
|
|
|
new EncounterTrade1(047, 13) { Version = GameVersion.RBY }, // Parasect - Trade Tangela (GSC 5)
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
internal static readonly EncounterTrade1[] TradeGift_RBY_Tradeback = ArrayUtil.ConcatAll(TradeGift_RBY_Common, new[]
|
2017-07-25 07:28:43 +00:00
|
|
|
|
{
|
|
|
|
|
// Trade gifts that can be obtained at a lower level due to the requested Pokémon being a lower level in GSC
|
2020-07-18 20:36:30 +00:00
|
|
|
|
new EncounterTrade1(124, 10) { Version = GameVersion.RBY }, // Jynx - Fish Poliwhirl (RBY: 15)
|
|
|
|
|
new EncounterTrade1(114, 05) { Version = GameVersion.RBY }, // Tangela - Wild Venonat (RBY: 13)
|
|
|
|
|
new EncounterTrade1(086, 05) { Version = GameVersion.RBY }, // Seel - Egg Ponyta (RBY: 28)
|
2018-05-12 15:13:39 +00:00
|
|
|
|
|
2020-07-18 20:36:30 +00:00
|
|
|
|
new EncounterTrade1(115, 10) { Version = GameVersion.RBY }, // Kangaskhan - Trade Rhydon (RBY: 42)
|
|
|
|
|
new EncounterTrade1(128, 18) { Version = GameVersion.RBY }, // Tauros - Evolve Persian (RBY: 28)
|
|
|
|
|
new EncounterTrade1(098, 05, 204) { Version = GameVersion.RBY }, // Krabby - Egg Growlithe (RBY: 15)
|
2018-05-12 15:13:39 +00:00
|
|
|
|
|
2020-07-18 20:36:30 +00:00
|
|
|
|
//new EncounterTrade1(122, 08), // Mr. Mime - Wild Clefairy (RBY: 6)
|
|
|
|
|
new EncounterTrade1(067, 05) { Version = GameVersion.RBY, EvolveOnTrade = true }, // Machoke - Egg Cubone (RBY: 20)
|
|
|
|
|
new EncounterTrade1(112, 10) { Version = GameVersion.RBY }, // Rhydon - Surf Golduck (RBY: 15)
|
|
|
|
|
new EncounterTrade1(087, 05) { Version = GameVersion.RBY }, // Dewgong - Egg Growlithe (RBY: 15)
|
|
|
|
|
new EncounterTrade1(089, 05) { Version = GameVersion.RBY }, // Muk - Egg Kangaskhan (RBY: 25)
|
2018-04-07 19:34:06 +00:00
|
|
|
|
|
2020-07-18 20:36:30 +00:00
|
|
|
|
new EncounterTrade1(079, 05) { Version = GameVersion.RBY }, // Slowpoke - Wild Seel (GSC 5)
|
|
|
|
|
new EncounterTrade1(051, 05) { Version = GameVersion.RBY }, // Dugtrio - Trade Lickitung (GSC 5)
|
|
|
|
|
new EncounterTrade1(047, 05) { Version = GameVersion.RBY }, // Parasect - Trade Tangela (GSC 5)
|
|
|
|
|
});
|
2018-08-03 03:11:42 +00:00
|
|
|
|
|
2019-09-12 05:06:24 +00:00
|
|
|
|
private static readonly EncounterArea1 FishOldGood_RBY = new EncounterArea1
|
2017-07-25 07:28:43 +00:00
|
|
|
|
{
|
|
|
|
|
Location = -1,
|
2020-07-18 20:36:30 +00:00
|
|
|
|
Slots = new EncounterSlot[]
|
2017-07-25 07:28:43 +00:00
|
|
|
|
{
|
|
|
|
|
new EncounterSlot1 {Species = 129, LevelMin = 05, LevelMax = 05, Type = SlotType.Old_Rod, Rate = -1, Version = GameVersion.RBY }, // Magikarp
|
|
|
|
|
new EncounterSlot1 {Species = 118, LevelMin = 10, LevelMax = 10, Type = SlotType.Good_Rod, Rate = -1, Version = GameVersion.RBY }, // Goldeen
|
|
|
|
|
new EncounterSlot1 {Species = 060, LevelMin = 10, LevelMax = 10, Type = SlotType.Good_Rod, Rate = -1, Version = GameVersion.RBY }, // Poliwag
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
}
|