mirror of
https://github.com/thornAvery/jep-hack.git
synced 2025-12-03 01:54:29 +13:00
Sevii Region groundwork
This adds the baseline infrastructure to account for the Sevii Islands, while also fixing a couple of bugs. Zeta, please read the commit carefully! Only real issue I noticed was that scrolling on the town map is infinite in all three new regions, implying there's something in `pokegear.asm` I haven't accounted for. I've also ret'd the ezchat order and gen1 orders out of existence to reduce the sheer amount of 8-bit warnings. This abolishes gen1 compatibility (though this was already a bit fucked) in exchange for actually being able to debug things in a reasonable timeframe.
This commit is contained in:
parent
08cea5888f
commit
4432dd4d2f
|
|
@ -98,6 +98,13 @@
|
|||
const ENGINE_FLYPOINT_LAKE_OF_RAGE
|
||||
const ENGINE_FLYPOINT_BLACKTHORN
|
||||
const ENGINE_FLYPOINT_SILVER_CAVE
|
||||
const ENGINE_FLYPOINT_ONE_ISLAND
|
||||
const ENGINE_FLYPOINT_TWO_ISLAND
|
||||
const ENGINE_FLYPOINT_THREE_ISLAND
|
||||
const ENGINE_FLYPOINT_FOUR_ISLAND
|
||||
const ENGINE_FLYPOINT_FIVE_ISLAND
|
||||
const ENGINE_FLYPOINT_SIX_ISLAND
|
||||
const ENGINE_FLYPOINT_SEVEN_ISLAND
|
||||
const ENGINE_FLYPOINT_SILENT_HILLS
|
||||
const ENGINE_FLYPOINT_OLD
|
||||
const ENGINE_FLYPOINT_UNUSED
|
||||
|
|
|
|||
|
|
@ -118,11 +118,13 @@ DEF KANTO_LANDMARK EQU const_value
|
|||
const LANDMARK_TOHJO_FALLS ; 5d
|
||||
const LANDMARK_ROUTE_28 ; 5e
|
||||
const LANDMARK_FAST_SHIP ; 5f
|
||||
const LANDMARK_ONE_ISLAND
|
||||
DEF SEVII_LANDMARK_1 EQU const_value
|
||||
const LANDMARK_ONE_ISLAND
|
||||
const LANDMARK_TWO_ISLAND
|
||||
const LANDMARK_THREE_ISLAND
|
||||
const LANDMARK_FOUR_ISLAND
|
||||
const LANDMARK_FIVE_ISLAND
|
||||
DEF SEVII_LANDMARK_2 EQU const_value
|
||||
const LANDMARK_SIX_ISLAND
|
||||
const LANDMARK_SEVEN_ISLAND
|
||||
DEF NIHON_LANDMARK EQU const_value
|
||||
|
|
@ -148,5 +150,7 @@ DEF NUM_LANDMARKS EQU const_value
|
|||
const_def
|
||||
const JOHTO_REGION ; 0
|
||||
const KANTO_REGION ; 1
|
||||
const NIHON_REGION ; 2
|
||||
const SEVII_REGION_1 ; 2
|
||||
const SEVII_REGION_2 ; 3
|
||||
const NIHON_REGION ; 4
|
||||
DEF NUM_REGIONS EQU const_value
|
||||
|
|
|
|||
|
|
@ -102,6 +102,15 @@ DEF NUM_FISHGROUPS EQU const_value - 1
|
|||
const SPAWN_BLACKTHORN
|
||||
const SPAWN_MT_SILVER
|
||||
const SPAWN_FAST_SHIP
|
||||
; sevii 1
|
||||
const SPAWN_ONE_ISLAND
|
||||
const SPAWN_TWO_ISLAND
|
||||
const SPAWN_THREE_ISLAND
|
||||
const SPAWN_FOUR_ISLAND
|
||||
const SPAWN_FIVE_ISLAND
|
||||
; sevii 2
|
||||
const SPAWN_SIX_ISLAND
|
||||
const SPAWN_SEVEN_ISLAND
|
||||
; nihon
|
||||
const SPAWN_SILENT_HILLS
|
||||
const SPAWN_OLD_CITY
|
||||
|
|
@ -139,6 +148,15 @@ DEF KANTO_FLYPOINT EQU const_value
|
|||
const FLY_FUCHSIA
|
||||
const FLY_CINNABAR
|
||||
const FLY_INDIGO
|
||||
DEF SEVII_FLYPOINT_1 EQU const_value ; 1-5
|
||||
const FLY_ONE_ISLAND
|
||||
const FLY_TWO_ISLAND
|
||||
const FLY_THREE_ISLAND
|
||||
const FLY_FOUR_ISLAND
|
||||
const FLY_FIVE_ISLAND
|
||||
DEF SEVII_FLYPOINT_2 EQU const_value ; 6-7
|
||||
const FLY_SIX_ISLAND
|
||||
const FLY_SEVEN_ISLAND
|
||||
DEF NIHON_FLYPOINT EQU const_value
|
||||
const FLY_SILENT_HILLS
|
||||
const FLY_OLD_CITY
|
||||
|
|
|
|||
|
|
@ -108,6 +108,13 @@ EngineFlags:
|
|||
engine_flag wVisitedSpawns, SPAWN_LAKE_OF_RAGE
|
||||
engine_flag wVisitedSpawns, SPAWN_BLACKTHORN
|
||||
engine_flag wVisitedSpawns, SPAWN_MT_SILVER
|
||||
engine_flag wVisitedSpawns, SPAWN_ONE_ISLAND
|
||||
engine_flag wVisitedSpawns, SPAWN_TWO_ISLAND
|
||||
engine_flag wVisitedSpawns, SPAWN_THREE_ISLAND
|
||||
engine_flag wVisitedSpawns, SPAWN_FOUR_ISLAND
|
||||
engine_flag wVisitedSpawns, SPAWN_FIVE_ISLAND
|
||||
engine_flag wVisitedSpawns, SPAWN_SIX_ISLAND
|
||||
engine_flag wVisitedSpawns, SPAWN_SEVEN_ISLAND
|
||||
engine_flag wVisitedSpawns, SPAWN_SILENT_HILLS
|
||||
engine_flag wVisitedSpawns, SPAWN_OLD_CITY
|
||||
engine_flag wVisitedSpawns, NUM_SPAWNS ; unused
|
||||
|
|
|
|||
|
|
@ -27,6 +27,15 @@ Flypoints:
|
|||
db LANDMARK_FUCHSIA_CITY, SPAWN_FUCHSIA
|
||||
db LANDMARK_CINNABAR_ISLAND, SPAWN_CINNABAR
|
||||
db LANDMARK_INDIGO_PLATEAU, SPAWN_INDIGO
|
||||
; Sevii 1
|
||||
db LANDMARK_ONE_ISLAND, SPAWN_ONE_ISLAND
|
||||
db LANDMARK_TWO_ISLAND, SPAWN_TWO_ISLAND
|
||||
db LANDMARK_THREE_ISLAND, SPAWN_THREE_ISLAND
|
||||
db LANDMARK_FOUR_ISLAND, SPAWN_FOUR_ISLAND
|
||||
db LANDMARK_FIVE_ISLAND, SPAWN_FIVE_ISLAND
|
||||
db LANDMARK_SIX_ISLAND, SPAWN_SIX_ISLAND
|
||||
db LANDMARK_SEVEN_ISLAND, SPAWN_SEVEN_ISLAND
|
||||
; Sevii 2
|
||||
; Nihon
|
||||
db LANDMARK_SILENT_HILLS, SPAWN_SILENT_HILLS
|
||||
db LANDMARK_OLD_CITY, SPAWN_OLD_CITY
|
||||
|
|
|
|||
|
|
@ -122,13 +122,15 @@ Landmarks:
|
|||
landmark 20, 68, Route28Name
|
||||
landmark 140, 116, FastShipName
|
||||
; Sevii stuff
|
||||
landmark 0, 0, UnknownName ; One Island
|
||||
landmark 0, 0, UnknownName ; Two Island
|
||||
landmark 0, 0, UnknownName ; Three Island
|
||||
landmark 0, 0, UnknownName ; Four Island
|
||||
landmark 0, 0, UnknownName ; Five Island
|
||||
landmark 0, 0, UnknownName ; Six Island
|
||||
landmark 0, 0, UnknownName ; Seven Island
|
||||
assert_table_length SEVII_LANDMARK_1
|
||||
landmark 28, 52, OneIslandName ; One Island
|
||||
landmark 60, 44, TwoIslandName ; Two Island
|
||||
landmark 132, 52, ThreeIslandName ; Three Island
|
||||
landmark 28, 108, FourIslandName ; Four Island
|
||||
landmark 116, 100, FiveIslandName ; Five Island
|
||||
assert_table_length SEVII_LANDMARK_2
|
||||
landmark 44, 76, SixIslandName ; Six Island
|
||||
landmark 116, 76, SevenIslandName ; Seven Island
|
||||
assert_table_length NIHON_LANDMARK
|
||||
landmark 108, 116, WinnersPathName
|
||||
landmark 92, 108, SilentHillsName
|
||||
|
|
@ -246,6 +248,16 @@ TohjoFallsName: db "TOHJO FALLS@"
|
|||
UndergroundName: db "UNDERGROUND@"
|
||||
BattleTowerName: db "BATTLE¯TOWER@"
|
||||
SpecialMapName: db "SPECIAL@"
|
||||
; Sevii
|
||||
OneIslandName: db "ONE¯ISLAND@"
|
||||
TwoIslandName: db "TWO¯ISLAND@"
|
||||
ThreeIslandName: db "THREE¯ISLAND@"
|
||||
FourIslandName: db "FOUR¯ISLAND@"
|
||||
FiveIslandName: db "FIVE¯ISLAND@"
|
||||
; these would be in cat 2
|
||||
SixIslandName: db "SIX¯ISLAND@"
|
||||
SevenIslandName: db "SEVEN¯ISLAND@"
|
||||
; Nihon
|
||||
WinnersPathName: db "WINNER'S¯PATH@"
|
||||
SilentHillsName: db "SILENT¯HILLS@"
|
||||
UnknownName: db "?????@"
|
||||
|
|
|
|||
|
|
@ -39,6 +39,14 @@ SpawnPoints:
|
|||
spawn SILVER_CAVE_OUTSIDE, 23, 20
|
||||
spawn FAST_SHIP_CABINS_SW_SSW_NW, 6, 2
|
||||
|
||||
spawn ONE_ISLAND, 17, 7
|
||||
spawn TWO_ISLAND, 17, 7 ; these are placeholders and hopefully zeta will make them all good and proper them before testing
|
||||
spawn THREE_ISLAND, 17, 7
|
||||
spawn FOUR_ISLAND, 17, 7
|
||||
spawn FIVE_ISLAND, 17, 7
|
||||
spawn SIX_ISLAND, 17, 7
|
||||
spawn SEVEN_ISLAND, 17, 7
|
||||
|
||||
spawn SILENT_HILLS, 13, 5
|
||||
spawn OLD_CITY, 27, 29
|
||||
|
||||
|
|
|
|||
|
|
@ -2,94 +2,4 @@
|
|||
; Notably, Rhydon is missing (it should be before Rhyhorn).
|
||||
|
||||
EZChat_SortedPokemon:
|
||||
dw .a
|
||||
dw .i
|
||||
dw .u
|
||||
dw .e
|
||||
dw .o
|
||||
dw .ka_ga
|
||||
dw .ki_gi
|
||||
dw .ku_gu
|
||||
dw .ke_ge
|
||||
dw .ko_go
|
||||
dw .sa_za
|
||||
dw .shi_ji
|
||||
dw .su_zu
|
||||
dw .se_ze
|
||||
dw .so_zo
|
||||
dw .ta_da
|
||||
dw .chi_dhi
|
||||
dw .tsu_du
|
||||
dw .te_de
|
||||
dw .to_do
|
||||
dw .na
|
||||
dw .ni
|
||||
dw .nu
|
||||
dw .ne
|
||||
dw .no
|
||||
dw .ha_ba_pa
|
||||
dw .hi_bi_pi
|
||||
dw .fu_bu_pu
|
||||
dw .he_be_pe
|
||||
dw .ho_bo_po
|
||||
dw .ma
|
||||
dw .mi
|
||||
dw .mu
|
||||
dw .me
|
||||
dw .mo
|
||||
dw .ya
|
||||
dw .yu
|
||||
dw .yo
|
||||
dw .ra
|
||||
dw .ri
|
||||
dw .ru
|
||||
dw .re
|
||||
dw .ro
|
||||
dw .wa
|
||||
dw .end
|
||||
|
||||
.a: db EKANS, ARBOK, SEAKING, ARIADOS, CROCONAW, UNOWN, -1
|
||||
.i: db EEVEE, GEODUDE, SPINARAK, PILOSWINE, ONIX, -1
|
||||
.u: db ARCANINE, SUDOWOODO, WEEPINBELL, VICTREEBEL, WOOPER, SWINUB, -1
|
||||
.e: db SKARMORY, AIPOM, ESPEON, HITMONCHAN, ELEKID, ELECTABUZZ, ENTEI, -1
|
||||
.o: db FERALIGATR, FURRET, OCTILLERY, PRIMEAPE, SENTRET, STANTLER, SPEAROW, FEAROW, OMASTAR, OMANYTE, -1
|
||||
.ka_ga: db GROWLITHE, MACHAMP, DRAGONITE, PINSIR, SNORLAX, KABUTO, KABUTOPS, HITMONTOP, WARTORTLE, BLASTOISE, FARFETCH_D, CUBONE, MAROWAK, KANGASKHAN, -1
|
||||
.ki_gi: db SUNFLORA, CATERPIE, GYARADOS, RAPIDASH, NINETALES, GIRAFARIG, BELLOSSOM, KINGDRA, KINGLER, -1
|
||||
.ku_gu: db GLOOM, PINECO, GLIGAR, KRABBY, GRANBULL, CROBAT, -1
|
||||
.ke_ge: db ABRA, GENGAR, TAUROS, -1
|
||||
.ko_go: db MAGIKARP, MAGNEMITE, GASTLY, HAUNTER, MACHOKE, KAKUNA, PSYDUCK, PHANPY, RATTATA, GOLDUCK, GOLBAT, GOLEM, GRAVELER, VENONAT, -1
|
||||
.sa_za: db RHYHORN, PUPITAR, CORSOLA, HITMONLEE, ZAPDOS, JOLTEON, SANDSHREW, SANDSLASH, -1 ; RHYDON should lead this list
|
||||
.shi_ji: db SEADRA, SHELLDER, VAPOREON, DEWGONG, -1
|
||||
.su_zu: db SUICUNE, STARMIE, SCYTHER, ZUBAT, BEEDRILL, HYPNO, DROWZEE, -1
|
||||
.se_ze: db SQUIRTLE, CELEBI, -1
|
||||
.so_zo: db WOBBUFFET, -1
|
||||
.ta_da: db DUGTRIO, HORSEA, EXEGGCUTE, -1
|
||||
.chi_dhi: db CHIKORITA, CHINCHOU, -1
|
||||
.tsu_du: db SHUCKLE, -1
|
||||
.te_de: db DIGLETT, REMORAID, DELIBIRD, HOUNDOUR, AMPHAROS, -1
|
||||
.to_do: db DODUO, DODRIO, SMEARGLE, KOFFING, TENTACRUEL, TOGETIC, TOGEPI, GOLDEEN, METAPOD, DONPHAN, -1
|
||||
.na: db ODDISH, EXEGGUTOR, -1
|
||||
.ni: db NIDOKING, NIDOQUEEN, NIDORAN_M, NIDORAN_F, NIDORINA, NIDORINO, MEOWTH, SNEASEL, POLIWHIRL, POLITOED, POLIWRATH, POLIWAG, -1
|
||||
.nu: db QUAGSIRE, -1
|
||||
.ne: db NATU, XATU, -1
|
||||
.no: db DUNSPARCE, -1
|
||||
.ha_ba_pa: db SEEL, STEELIX, TYPHLOSION, DRAGONAIR, BUTTERFREE, SCIZOR, HOPPIP, BLISSEY, PARAS, PARASECT, QWILFISH, MR__MIME, TYROGUE, CLOYSTER, TYRANITAR, -1
|
||||
.hi_bi_pi: db CLEFFA, WEEDLE, PIKACHU, CLEFABLE, PIDGEOT, PIDGEOTTO, PICHU, CLEFAIRY, CHARMANDER, STARYU, CYNDAQUIL, SUNKERN, TEDDIURSA, VOLTORB, -1
|
||||
.fu_bu_pu: db MOLTRES, FLAREON, ALAKAZAM, MAGMAR, FORRETRESS, WIGGLYTUFF, IVYSAUR, BULBASAUR, VENUSAUR, AERODACTYL, MAGBY, IGGLYBUFF, UMBREON, ARTICUNO, JIGGLYPUFF, SNUBBULL, -1
|
||||
.he_be_pe: db BAYLEEF, GRIMER, MUK, HERACROSS, HOUNDOOM, PERSIAN, LICKITUNG, -1
|
||||
.ho_bo_po: db HO_OH, HOOTHOOT, PIDGEY, PONYTA, SKIPLOOM, PORYGON, PORYGON2, -1
|
||||
.ma: db MAGCARGO, SLUGMA, QUILAVA, BELLSPROUT, WEEZING, MARILL, AZUMARILL, ELECTRODE, MANKEY, MANTINE, -1
|
||||
.mi: db DRATINI, MEW, MEWTWO, MILTANK, -1
|
||||
.mu: db MISDREAVUS, SMOOCHUM, -1
|
||||
.me: db MEGANIUM, DITTO, TENTACOOL, MAREEP, -1
|
||||
.mo: db FLAAFFY, VENOMOTH, TANGELA, -1
|
||||
.ya: db SLOWKING, SLOWBRO, SLOWPOKE, MURKROW, YANMA, -1
|
||||
.yu: db KADABRA, -1
|
||||
.yo: db LARVITAR, NOCTOWL, -1
|
||||
.ra: db RAIKOU, RAICHU, CHANSEY, RATICATE, LAPRAS, VILEPLUME, LANTURN, -1
|
||||
.ri: db CHARMELEON, CHARIZARD, URSARING, -1
|
||||
.ru: db JYNX, LUGIA, -1
|
||||
.re: db MAGNETON, LEDIAN, LEDYBA, -1
|
||||
.ro: db VULPIX, -1
|
||||
.wa: db JUMPLUFF, TOTODILE, MACHOP ;, -1
|
||||
.end: db -1
|
||||
ret ; removed for space among other things
|
||||
|
|
|
|||
|
|
@ -1,399 +1,4 @@
|
|||
Pokered_MonIndices:
|
||||
table_width 1, Pokered_MonIndices
|
||||
db RHYDON
|
||||
db KANGASKHAN
|
||||
db NIDORAN_M
|
||||
db CLEFAIRY
|
||||
db SPEAROW
|
||||
db VOLTORB
|
||||
db NIDOKING
|
||||
db SLOWBRO
|
||||
db IVYSAUR
|
||||
db EXEGGUTOR
|
||||
db LICKITUNG
|
||||
db EXEGGCUTE
|
||||
db GRIMER
|
||||
db GENGAR
|
||||
db NIDORAN_F
|
||||
db NIDOQUEEN
|
||||
db CUBONE
|
||||
db RHYHORN
|
||||
db LAPRAS
|
||||
db ARCANINE
|
||||
db MEW
|
||||
db GYARADOS
|
||||
db SHELLDER
|
||||
db TENTACOOL
|
||||
db GASTLY
|
||||
db SCYTHER
|
||||
db STARYU
|
||||
db BLASTOISE
|
||||
db PINSIR
|
||||
db TANGELA
|
||||
db SCIZOR ; MISSINGNO.
|
||||
db SHUCKLE ; MISSINGNO.
|
||||
db NIDOREIGN
|
||||
db GROWLITHE
|
||||
db ONIX
|
||||
db FEAROW
|
||||
db PIDGEY
|
||||
db SLOWPOKE
|
||||
db KADABRA
|
||||
db GRAVELER
|
||||
db CHANSEY
|
||||
db MACHOKE
|
||||
db MR__MIME
|
||||
db HITMONLEE
|
||||
db HITMONCHAN
|
||||
db ARBOK
|
||||
db PARASECT
|
||||
db PSYDUCK
|
||||
db DROWZEE
|
||||
db GOLEM
|
||||
db HERACROSS ; MISSINGNO.
|
||||
db MAGMAR
|
||||
db HO_OH ; MISSINGNO.
|
||||
db ELECTABUZZ
|
||||
db MAGNETON
|
||||
db KOFFING
|
||||
db SNEASEL ; MISSINGNO.
|
||||
db MANKEY
|
||||
db SEEL
|
||||
db DIGLETT
|
||||
db TAUROS
|
||||
db TEDDIURSA ; MISSINGNO.
|
||||
db URSARING ; MISSINGNO.
|
||||
db SLUGMA ; MISSINGNO.
|
||||
db FARFETCH_D
|
||||
db VENONAT
|
||||
db DRAGONITE
|
||||
db MAGCARGO ; MISSINGNO.
|
||||
db SWINUB ; MISSINGNO.
|
||||
db PILOSWINE ; MISSINGNO.
|
||||
db DODUO
|
||||
db POLIWAG
|
||||
db JYNX
|
||||
db MOLTRES
|
||||
db ARTICUNO
|
||||
db ZAPDOS
|
||||
db DITTO
|
||||
db MEOWTH
|
||||
db KRABBY
|
||||
db CORSOLA ; MISSINGNO.
|
||||
db REMORAID ; MISSINGNO.
|
||||
db OCTILLERY ; MISSINGNO.
|
||||
db VULPIX
|
||||
db NINETALES
|
||||
db PIKACHU
|
||||
db RAICHU
|
||||
db DELIBIRD ; MISSINGNO.
|
||||
db MANTINE ; MISSINGNO.
|
||||
db DRATINI
|
||||
db DRAGONAIR
|
||||
db KABUTO
|
||||
db KABUTOPS
|
||||
db HORSEA
|
||||
db SEADRA
|
||||
db SKARMORY ; MISSINGNO.
|
||||
db HOUNDOUR ; MISSINGNO.
|
||||
db SANDSHREW
|
||||
db SANDSLASH
|
||||
db OMANYTE
|
||||
db OMASTAR
|
||||
db JIGGLYPUFF
|
||||
db WIGGLYTUFF
|
||||
db EEVEE
|
||||
db FLAREON
|
||||
db JOLTEON
|
||||
db VAPOREON
|
||||
db MACHOP
|
||||
db ZUBAT
|
||||
db EKANS
|
||||
db PARAS
|
||||
db POLIWHIRL
|
||||
db POLIWRATH
|
||||
db WEEDLE
|
||||
db KAKUNA
|
||||
db BEEDRILL
|
||||
db HOUNDOOM ; MISSINGNO.
|
||||
db DODRIO
|
||||
db PRIMEAPE
|
||||
db DUGTRIO
|
||||
db VENOMOTH
|
||||
db DEWGONG
|
||||
db TRICULES
|
||||
db KINGDRA ; MISSINGNO.
|
||||
db PHANPY ; MISSINGNO.
|
||||
db CATERPIE
|
||||
db METAPOD
|
||||
db BUTTERFREE
|
||||
db MACHAMP
|
||||
db DONPHAN ; MISSINGNO.
|
||||
db GOLDUCK
|
||||
db HYPNO
|
||||
db GOLBAT
|
||||
db MEWTWO
|
||||
db SNORLAX
|
||||
db MAGIKARP
|
||||
db PORYGON2 ; MISSINGNO.
|
||||
db STANTLER ; MISSINGNO.
|
||||
db MUK
|
||||
db SMEARGLE ; MISSINGNO.
|
||||
db KINGLER
|
||||
db CLOYSTER
|
||||
db TYROGUE ; MISSINGNO.
|
||||
db ELECTRODE
|
||||
db CLEFABLE
|
||||
db WEEZING
|
||||
db PERSIAN
|
||||
db MAROWAK
|
||||
db HITMONTOP ; MISSINGNO.
|
||||
db HAUNTER
|
||||
db ABRA
|
||||
db ALAKAZAM
|
||||
db PIDGEOTTO
|
||||
db PIDGEOT
|
||||
db STARMIE
|
||||
db BULBASAUR
|
||||
db VENUSAUR
|
||||
db TENTACRUEL
|
||||
db SMOOCHUM ; MISSINGNO.
|
||||
db GOLDEEN
|
||||
db SEAKING
|
||||
db ELEKID ; MISSINGNO.
|
||||
db MAGBY ; MISSINGNO.
|
||||
db MILTANK ; MISSINGNO.
|
||||
db BLISSEY ; MISSINGNO.
|
||||
db PONYTA
|
||||
db RAPIDASH
|
||||
db RATTATA
|
||||
db RATICATE
|
||||
db NIDORINO
|
||||
db NIDORINA
|
||||
db GEODUDE
|
||||
db PORYGON
|
||||
db AERODACTYL
|
||||
db BLASTYKE
|
||||
db RAIKOU ; MISSINGNO.
|
||||
db MAGNEMITE
|
||||
db ENTEI ; MISSINGNO.
|
||||
db SUICUNE ; MISSINGNO.
|
||||
db CHARMANDER
|
||||
db SQUIRTLE
|
||||
db CHARMELEON
|
||||
db WARTORTLE
|
||||
db CHARIZARD
|
||||
db TOTARTLE
|
||||
db LARVITAR ; MISSINGNO.
|
||||
db PUPITAR ; MISSINGNO. KABUTOPS FOSSIL
|
||||
db TYRANITAR ; MISSINGNO. AERODACTYL FOSSIL
|
||||
db LUGIA ; MISSINGNO. GHOST
|
||||
db ODDISH
|
||||
db GLOOM
|
||||
db VILEPLUME
|
||||
db BELLSPROUT
|
||||
db WEEPINBELL
|
||||
db VICTREEBEL
|
||||
assert_table_length 194 ; gen 1 mon indexes
|
||||
db CHIKORITA
|
||||
db BAYLEEF
|
||||
db MEGANIUM
|
||||
db CYNDAQUIL
|
||||
db QUILAVA
|
||||
db TYPHLOSION
|
||||
db TOTODILE
|
||||
db CROCONAW
|
||||
db FERALIGATR
|
||||
db CUBBURN
|
||||
db FLAMBEAR
|
||||
db BRUINOUS
|
||||
db PALSSIO
|
||||
db PRESSIO
|
||||
db DONMARIN
|
||||
db SENTRET
|
||||
db FURRET
|
||||
db HOOTHOOT
|
||||
db NOCTOWL
|
||||
db LEDYBA
|
||||
db LEDIAN
|
||||
db SPINARAK
|
||||
db ARIADOS
|
||||
db CROBAT
|
||||
db CHINCHOU
|
||||
db LANTURN
|
||||
db PICHU
|
||||
db CLEFFA
|
||||
db IGGLYBUFF
|
||||
db TOGEPI
|
||||
db TOGETIC
|
||||
db TOGEKISS
|
||||
db NATU
|
||||
db XATU
|
||||
db MOIBELLE
|
||||
db BELLEDAM
|
||||
db MAREEP
|
||||
db FLAAFFY
|
||||
db AMPHAROS
|
||||
db BELLOSSOM
|
||||
db MARILL
|
||||
db AZUMARILL
|
||||
db SUDOWOODO
|
||||
db POLITOED
|
||||
db HOPPIP
|
||||
db SKIPLOOM
|
||||
db JUMPLUFF
|
||||
db AIPOM
|
||||
db SUNKERN
|
||||
db SUNFLORA
|
||||
db AERCROW
|
||||
db YANMA
|
||||
db PENDING03
|
||||
db WOOPER
|
||||
db QUAGSIRE
|
||||
db ESPEON
|
||||
db UMBREON
|
||||
db MURKROW
|
||||
db SLOWKING
|
||||
db MISDREAVUS
|
||||
db MISMAGIUS
|
||||
db STROMEN
|
||||
db PHANDARIN
|
||||
db UNOWN
|
||||
db WYNAUT
|
||||
db WOBBUFFET
|
||||
db BIPULLA
|
||||
db GIRAFARIG
|
||||
db FARIGIRAF
|
||||
db EMORDROME
|
||||
db PINECO
|
||||
db FORRETRESS
|
||||
db DUNSPARCE
|
||||
db DUDUNSPARCE
|
||||
db GLIGAR
|
||||
db STEELIX
|
||||
db SNUBBULL
|
||||
db GRANBULL
|
||||
db QWILFISH
|
||||
db BELLIGNAN
|
||||
db WALKING_WAKE
|
||||
db SHI_SHI
|
||||
db MUNCHLAX
|
||||
db KLEAVOR
|
||||
db URSALUNA
|
||||
db GOROCHU
|
||||
db GENTLARVA
|
||||
db PUPAL
|
||||
db CARAPTHOR
|
||||
db KOTORA
|
||||
db GAOTORA
|
||||
db GOROTORA
|
||||
db RAITORA
|
||||
db BITTYBAT
|
||||
db VULPIII
|
||||
db PARASPOR
|
||||
db ANNIHILAPE
|
||||
db PUPPERON
|
||||
db COINPUR
|
||||
db PERRSERKER
|
||||
db LEAFEON
|
||||
db GLACEON
|
||||
db SYLVEON
|
||||
db LICKILICKY
|
||||
db LICKILORD
|
||||
db BURGELA
|
||||
db TANGROWTH
|
||||
db JUNGELA
|
||||
db FOLAGE
|
||||
db BARREAU
|
||||
db RAGING_BOLT
|
||||
db GOUGING_FIRE
|
||||
db POCKLE
|
||||
db WARUCHU
|
||||
db SONEGG
|
||||
db CACAWPHONY
|
||||
db TREBIR
|
||||
db SAKURAZE
|
||||
db AMANOBI
|
||||
db TRUSTAN
|
||||
db KUWAGUARD
|
||||
db TONQUITO
|
||||
db MOLAMBINO
|
||||
db LUANBO
|
||||
db GRANBO
|
||||
db ANGORE
|
||||
db EUCALA
|
||||
db KIWOOKED
|
||||
db CYCLORP
|
||||
db KITSEN
|
||||
db WISPIRIT
|
||||
db COATL
|
||||
db MIMEAR
|
||||
db INOSHIKA
|
||||
db RUDDERNAUT
|
||||
db XYLODON
|
||||
db XYLOFIN
|
||||
db DOKUROAR
|
||||
db SCREAM_TAIL
|
||||
db SANDY_SHOCKS
|
||||
db GREAT_TUSK
|
||||
db FLUTTER_MANE
|
||||
db IRON_TREADS
|
||||
db IRON_BUNDLE
|
||||
db IRON_THORNS
|
||||
db ORFRY
|
||||
db CHEEP
|
||||
db JABETTA
|
||||
db RIBBITO
|
||||
db CROAKOZUNA
|
||||
db DISTURBAN
|
||||
db REROAD
|
||||
db QATU
|
||||
db AZURILL
|
||||
db AMBIPOM
|
||||
db SUNBUD
|
||||
db HIPPUNK
|
||||
db FOXFIRE
|
||||
db YANMEGA
|
||||
db KAZAPPELIN
|
||||
db QWILFATHER
|
||||
db STRICHEEL
|
||||
db LURREEL
|
||||
db MANTYKE
|
||||
db WEIRDUCK
|
||||
db LUXWAN
|
||||
db CHARMADA
|
||||
db MAGIPREY
|
||||
db TERRADOS
|
||||
db TOEDSCOOL
|
||||
db TOEDSCRUEL
|
||||
db BLOTTLE
|
||||
db PENDRAKEN
|
||||
db KOLTA
|
||||
db BALUMBA
|
||||
db MAGNETITE
|
||||
db MAGNEZONE
|
||||
db GAVILLAIN
|
||||
db BUU
|
||||
db GRENMAR
|
||||
db SMUJJ
|
||||
db GUARDIA
|
||||
db HAPPINY
|
||||
db MIME_JR_
|
||||
db ELECTIVIRE
|
||||
db MAGMORTAR
|
||||
db MIMMEO
|
||||
db SQUEAMATA
|
||||
db MINISTARE
|
||||
db IGUANARCH
|
||||
db BONSLY
|
||||
db HONCHKROW
|
||||
db CARETORKER
|
||||
db PORYGON_Z
|
||||
db WYRDEER
|
||||
db ELEBEBI
|
||||
db FERADACTYL
|
||||
db DECILLA
|
||||
db GAWARHED
|
||||
db MAMOSWINE
|
||||
db HIRSUSWINE
|
||||
assert_table_length NUM_POKEMON - 1
|
||||
ret ; this has been removed as it's unnecessary and makes debugging extremely difficult - we're removing the compatibility with KEP anyway
|
||||
|
||||
; if you want to make a new list, then go ahead, just make sure to let us know and all that
|
||||
|
|
|
|||
|
|
@ -485,7 +485,7 @@ PKMNTrainerGroup:
|
|||
dw PIDGEOT
|
||||
dw DOUBLE_EDGE, WING_ATTACK, MIRROR_MOVE, PURSUIT
|
||||
db 60
|
||||
db PILOSWINE ; MAMOSWINE
|
||||
dw PILOSWINE ; MAMOSWINE
|
||||
dw EARTHQUAKE, BODY_SLAM, ROAR, ANCIENTPOWER
|
||||
db 60
|
||||
dw SLOWKING
|
||||
|
|
|
|||
38
data/wild/sevii_grass.asm
Normal file
38
data/wild/sevii_grass.asm
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
; Sevii Pokémon in grass
|
||||
|
||||
; General philosophies:
|
||||
; - Alolan Pokemon will be encounterable, as the Sevii Islands are a tropical area.
|
||||
; - It's still Kanto, so we will feature more Kanto than Johto Pokemon. Basically, this will use the "classic Johto" philosophy of hiding them in the back.
|
||||
; - Minimal, if any, Nihon Pokemon.
|
||||
|
||||
SeviiGrassWildMons:
|
||||
|
||||
def_grass_wildmons KINDLE_ROAD
|
||||
db 10 percent, 10 percent, 10 percent ; encounter rates: morn/day/nite
|
||||
; morn
|
||||
dbw 30, FEAROW
|
||||
dbw 31, PERSIAN ; PERSIANA
|
||||
dbw 30, GOLDUCK
|
||||
dbw 31, GRAVELER ; GRAVELERA
|
||||
dbw 32, RAPIDASH
|
||||
dbw 32, SLOWBRO ; Could be Galarian Slowbro considering the Isle of Armor but I'm not sure, given this would mix regional variant origins...
|
||||
dbw 35, SLOWKING
|
||||
; day
|
||||
dbw 30, FEAROW
|
||||
dbw 31, PERSIAN ; PERSIANA
|
||||
dbw 30, GOLDUCK
|
||||
dbw 31, GRAVELER ; GRAVELERA
|
||||
dbw 32, RAPIDASH
|
||||
dbw 32, SLOWBRO
|
||||
dbw 35, SLOWKING
|
||||
; nite
|
||||
dbw 30, NOCTOWL
|
||||
dbw 31, PERSIAN
|
||||
dbw 30, MURKROW
|
||||
dbw 31, GRAVELER
|
||||
dbw 32, RAPIDASH
|
||||
dbw 32, SLOWBRO
|
||||
dbw 35, SLOWKING
|
||||
end_grass_wildmons
|
||||
|
||||
db -1 ; end
|
||||
17
data/wild/sevii_water.asm
Normal file
17
data/wild/sevii_water.asm
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
; Sevii Pokémon in grass
|
||||
|
||||
; General philosophies:
|
||||
; - Alolan Pokemon will be encounterable, as the Sevii Islands are a tropical area.
|
||||
; - It's still Kanto, so we will feature more Kanto than Johto Pokemon. Basically, this will use the "classic Johto" philosophy of hiding them in the back.
|
||||
; - Minimal, if any, Nihon Pokemon.
|
||||
|
||||
SeviiWaterWildMons:
|
||||
|
||||
def_water_wildmons KINDLE_ROAD
|
||||
db 4 percent ; encounter rates: morn/day/nite
|
||||
dbw 30, GRENMAR ; Water/Fire, y'know, it's kinda cute
|
||||
dbw 31, SEADRA
|
||||
dbw 30, GYARADOS
|
||||
end_water_wildmons
|
||||
|
||||
db -1 ; end
|
||||
|
|
@ -68,7 +68,7 @@ RegionCheck:
|
|||
|
||||
.checkagain
|
||||
cp NIHON_LANDMARK
|
||||
jr z, .nihon
|
||||
jr nc, .nihon
|
||||
cp KANTO_LANDMARK
|
||||
jr c, .johto
|
||||
|
||||
|
|
|
|||
|
|
@ -38,8 +38,12 @@ FindNest:
|
|||
ld b, h
|
||||
ld c, l
|
||||
ld a, e
|
||||
cp 2
|
||||
cp NIHON_REGION
|
||||
jr z, .nihon
|
||||
cp SEVII_REGION_2
|
||||
jr z, .sevii ; these areas are small enough to that we shouldn't need two separate tables for these regions.
|
||||
cp SEVII_REGION_1
|
||||
jr z, .sevii
|
||||
and a
|
||||
jr nz, .kanto
|
||||
decoord 0, 0
|
||||
|
|
@ -58,6 +62,13 @@ FindNest:
|
|||
ld hl, KantoWaterWildMons
|
||||
jp .FindWater
|
||||
|
||||
.sevii
|
||||
decoord 0, 0
|
||||
ld hl, SeviiGrassWildMons
|
||||
call .FindGrass
|
||||
ld hl, SeviiWaterWildMons
|
||||
jp .FindWater
|
||||
|
||||
.nihon
|
||||
decoord 0, 0
|
||||
ld hl, NihonGrassWildMons
|
||||
|
|
@ -439,7 +450,7 @@ _GrassWildmonLookup:
|
|||
ld hl, JohtoGrassWildMons
|
||||
|
||||
; Old Nihon Check from 2023.
|
||||
; Testing new method.
|
||||
; it's painfully broken and bad, don't use it unless you have brighter ideas for the below
|
||||
; Nihon Check
|
||||
; Basically, conditionally load Nihon or Kanto into de, depending on region check.
|
||||
; IsInJohto returns 1 if Kanto, 2 if Nihon.
|
||||
|
|
@ -463,9 +474,16 @@ _GrassWildmonLookup:
|
|||
ld c, a
|
||||
call GetWorldMapLocation
|
||||
cp NIHON_LANDMARK
|
||||
jr nc, .skip2
|
||||
jr nc, .johto
|
||||
|
||||
; account for sevii
|
||||
ld de, SeviiGrassWildMons
|
||||
cp SEVII_LANDMARK_2 ; I am 90% sure this check is unnecessary when in tandem with landmark 1.
|
||||
jr nc, .johto
|
||||
cp SEVII_LANDMARK_1
|
||||
jr nc, .johto
|
||||
ld de, KantoGrassWildMons
|
||||
.skip2
|
||||
.johto
|
||||
|
||||
call _JohtoWildmonCheck ; So run this check. More commentary there.
|
||||
ld bc, GRASS_WILDDATA_LENGTH
|
||||
|
|
@ -486,9 +504,17 @@ _WaterWildmonLookup:
|
|||
ld c, a
|
||||
call GetWorldMapLocation
|
||||
cp NIHON_LANDMARK
|
||||
jr nc, .skip2
|
||||
jr nc, .johto
|
||||
|
||||
; account for sevii
|
||||
ld de, SeviiWaterWildMons
|
||||
cp SEVII_LANDMARK_2
|
||||
jr nc, .johto
|
||||
cp SEVII_LANDMARK_1
|
||||
jr nc, .johto
|
||||
|
||||
ld de, KantoWaterWildMons
|
||||
.skip2
|
||||
.johto
|
||||
|
||||
call _JohtoWildmonCheck
|
||||
ld bc, WATER_WILDDATA_LENGTH
|
||||
|
|
@ -1074,6 +1100,8 @@ INCLUDE "data/wild/johto_grass.asm"
|
|||
INCLUDE "data/wild/johto_water.asm"
|
||||
INCLUDE "data/wild/kanto_grass.asm"
|
||||
INCLUDE "data/wild/kanto_water.asm"
|
||||
INCLUDE "data/wild/sevii_grass.asm"
|
||||
INCLUDE "data/wild/sevii_water.asm"
|
||||
INCLUDE "data/wild/nihon_grass.asm"
|
||||
INCLUDE "data/wild/nihon_water.asm"
|
||||
INCLUDE "data/wild/swarm_grass.asm"
|
||||
|
|
|
|||
|
|
@ -19,12 +19,16 @@ DEF PHONE_DISPLAY_HEIGHT EQU 4
|
|||
const POKEGEARSTATE_KANTOMAPJOYPAD ; 6
|
||||
const POKEGEARSTATE_NIHONMAPINIT ; 5
|
||||
const POKEGEARSTATE_NIHONMAPJOYPAD ; 6
|
||||
const POKEGEARSTATE_PHONEINIT ; 7
|
||||
const POKEGEARSTATE_PHONEJOYPAD ; 8
|
||||
const POKEGEARSTATE_MAKEPHONECALL ; 9
|
||||
const POKEGEARSTATE_FINISHPHONECALL ; a
|
||||
const POKEGEARSTATE_RADIOINIT ; b
|
||||
const POKEGEARSTATE_RADIOJOYPAD ; c
|
||||
const POKEGEARSTATE_SEVII1MAPINIT ; 7
|
||||
const POKEGEARSTATE_SEVII1MAPJOYPAD ; 8
|
||||
const POKEGEARSTATE_SEVII2MAPINIT ; 9
|
||||
const POKEGEARSTATE_SEVII2MAPJOYPAD ; 0A
|
||||
const POKEGEARSTATE_PHONEINIT ; 0B
|
||||
const POKEGEARSTATE_PHONEJOYPAD ; 0C
|
||||
const POKEGEARSTATE_MAKEPHONECALL ; 0D
|
||||
const POKEGEARSTATE_FINISHPHONECALL ; 0E
|
||||
const POKEGEARSTATE_RADIOINIT ; 0F
|
||||
const POKEGEARSTATE_RADIOJOYPAD ; 10
|
||||
|
||||
PokeGear:
|
||||
ld hl, wOptions
|
||||
|
|
@ -330,6 +334,10 @@ InitPokegearTilemap:
|
|||
jr z, .johto
|
||||
cp NIHON_LANDMARK
|
||||
jr nc, .nihon
|
||||
cp SEVII_LANDMARK_1
|
||||
jr nc, .sevii1
|
||||
cp SEVII_LANDMARK_2
|
||||
jr nc, .sevii2
|
||||
cp KANTO_LANDMARK
|
||||
jr nc, .kanto
|
||||
.johto
|
||||
|
|
@ -339,9 +347,14 @@ InitPokegearTilemap:
|
|||
.kanto
|
||||
ld e, 1
|
||||
jr .ok
|
||||
|
||||
.nihon
|
||||
.sevii1
|
||||
ld e, 2
|
||||
jr .ok
|
||||
.sevii2
|
||||
ld e, 3
|
||||
jr .ok
|
||||
.nihon
|
||||
ld e, 4
|
||||
.ok
|
||||
farcall PokegearMap
|
||||
ld a, $07
|
||||
|
|
@ -452,6 +465,10 @@ PokegearJumptable:
|
|||
dw PokegearMap_Init
|
||||
dw PokegearMap_KantoMap
|
||||
dw PokegearMap_Init
|
||||
dw PokegearMap_Sevii1Map
|
||||
dw PokegearMap_Init
|
||||
dw PokegearMap_Sevii2Map
|
||||
dw PokegearMap_Init
|
||||
dw PokegearMap_NihonMap
|
||||
dw PokegearPhone_Init
|
||||
dw PokegearPhone_Joypad
|
||||
|
|
@ -540,12 +557,18 @@ Pokegear_UpdateClock:
|
|||
|
||||
PokegearMap_CheckRegion:
|
||||
ld a, [wPokegearMapPlayerIconLandmark]
|
||||
; let's check sevii first - checking the highest ones first simplifies architecture a bit.
|
||||
cp LANDMARK_SEVEN_ISLAND+1
|
||||
jr c, .nihon
|
||||
cp LANDMARK_FAST_SHIP+1
|
||||
jr c, .sevii1
|
||||
cp LANDMARK_FIVE_ISLAND+1
|
||||
jr c, .sevii2
|
||||
cp LANDMARK_SILVER_CAVE+1
|
||||
jr c, .johto
|
||||
cp LANDMARK_FAST_SHIP+1
|
||||
jr c, .kanto
|
||||
;cp NIHON_LANDMARK
|
||||
jp .nihon
|
||||
jp .nihon ; if all else fails
|
||||
.johto
|
||||
ld a, POKEGEARSTATE_JOHTOMAPINIT
|
||||
jr .done
|
||||
|
|
@ -555,7 +578,14 @@ PokegearMap_CheckRegion:
|
|||
ld a, POKEGEARSTATE_KANTOMAPINIT
|
||||
jr .done
|
||||
ret
|
||||
|
||||
.sevii1
|
||||
ld a, POKEGEARSTATE_SEVII1MAPINIT
|
||||
jr .done
|
||||
ret
|
||||
.sevii2
|
||||
ld a, POKEGEARSTATE_SEVII2MAPINIT
|
||||
jr .done
|
||||
ret
|
||||
.nihon
|
||||
ld a, POKEGEARSTATE_NIHONMAPINIT
|
||||
.done
|
||||
|
|
@ -581,6 +611,14 @@ PokegearMap_KantoMap:
|
|||
call TownMap_GetKantoLandmarkLimits
|
||||
jr PokegearMap_ContinueMap
|
||||
|
||||
PokegearMap_Sevii1Map:
|
||||
call TownMap_GetSevii1LandmarkLimits
|
||||
jr PokegearMap_ContinueMap
|
||||
|
||||
PokegearMap_Sevii2Map:
|
||||
call TownMap_GetSevii2LandmarkLimits
|
||||
jr PokegearMap_ContinueMap
|
||||
|
||||
PokegearMap_NihonMap:
|
||||
call TownMap_GetNihonLandmarkLimits
|
||||
jr PokegearMap_ContinueMap
|
||||
|
|
@ -761,10 +799,24 @@ TownMap_GetKantoLandmarkLimits:
|
|||
ld e, LANDMARK_PALLET_TOWN
|
||||
ret
|
||||
|
||||
; BUG: For some reason, backward scrolling on the new regions is infinite!
|
||||
; You end up having Red call the player's name with 9999s and stuff it's really cool actually
|
||||
TownMap_GetSevii1LandmarkLimits:
|
||||
ld a, [wStatusFlags]
|
||||
ld d, LANDMARK_ONE_ISLAND
|
||||
ld e, LANDMARK_FIVE_ISLAND ; This will need to be changed as Five Island's stuff is added.
|
||||
ret
|
||||
|
||||
TownMap_GetSevii2LandmarkLimits:
|
||||
ld a, [wStatusFlags]
|
||||
ld d, LANDMARK_SIX_ISLAND
|
||||
ld e, LANDMARK_SEVEN_ISLAND ; Likewise. Veeery likewise.
|
||||
ret
|
||||
|
||||
TownMap_GetNihonLandmarkLimits:
|
||||
ld a, [wStatusFlags]
|
||||
ld d, LANDMARK_SILENT_HILLS
|
||||
ld e, LANDMARK_WHITE_CITY ; Gonna need another map.
|
||||
ld e, LANDMARK_WHITE_CITY
|
||||
ret
|
||||
|
||||
PokegearRadio_Init:
|
||||
|
|
@ -1574,7 +1626,7 @@ RadioChannels:
|
|||
jr z, .johto
|
||||
cp LANDMARK_SILVER_CAVE+1
|
||||
jr c, .johto
|
||||
; kanto or nihon
|
||||
; kanto or nihon (and sevii too i take it)
|
||||
and a
|
||||
ret
|
||||
|
||||
|
|
@ -1838,6 +1890,10 @@ _TownMap:
|
|||
ld a, [wTownMapPlayerIconLandmark]
|
||||
cp NIHON_LANDMARK
|
||||
jr nc, .nihon
|
||||
cp SEVII_LANDMARK_1
|
||||
jr nc, .sevii1
|
||||
cp SEVII_LANDMARK_2
|
||||
jr nc, .sevii2
|
||||
cp KANTO_LANDMARK
|
||||
jr nc, .kanto
|
||||
ld d, KANTO_LANDMARK - 1
|
||||
|
|
@ -1849,6 +1905,14 @@ _TownMap:
|
|||
call TownMap_GetKantoLandmarkLimits
|
||||
call .loop
|
||||
|
||||
.sevii1
|
||||
call TownMap_GetSevii1LandmarkLimits
|
||||
call .loop
|
||||
|
||||
.sevii2
|
||||
call TownMap_GetSevii2LandmarkLimits
|
||||
call .loop
|
||||
|
||||
.nihon
|
||||
call TownMap_GetNihonLandmarkLimits
|
||||
call .loop
|
||||
|
|
@ -1925,19 +1989,29 @@ _TownMap:
|
|||
|
||||
.InitTilemap:
|
||||
ld a, [wTownMapPlayerIconLandmark]
|
||||
cp LANDMARK_FAST_SHIP+1
|
||||
jr c, .sevii1
|
||||
cp LANDMARK_FIVE_ISLAND+1
|
||||
jr c, .sevii2
|
||||
cp LANDMARK_SEVEN_ISLAND+1
|
||||
jr c, .nihon
|
||||
cp LANDMARK_SILVER_CAVE + 1 ; last johto landmark + 1
|
||||
jr c, .johto2
|
||||
cp LANDMARK_FAST_SHIP + 1 ; last kanto landmark + 1
|
||||
jr c, .kanto2
|
||||
jp .nihon2
|
||||
|
||||
jp .nihon2 ; error handler
|
||||
.johto2
|
||||
ld e, JOHTO_REGION
|
||||
jr .okay_tilemap
|
||||
|
||||
.kanto2
|
||||
ld e, KANTO_REGION
|
||||
jr .okay_tilemap
|
||||
.sevii12
|
||||
ld e, SEVII_REGION_1
|
||||
jr .okay_tilemap
|
||||
.sevii22
|
||||
ld e, SEVII_REGION_2
|
||||
jr .okay_tilemap
|
||||
.nihon2
|
||||
ld e, NIHON_REGION
|
||||
.okay_tilemap
|
||||
|
|
@ -2063,11 +2137,25 @@ PokegearMap:
|
|||
|
||||
.kanto
|
||||
cp KANTO_REGION
|
||||
jr nz, .nihon
|
||||
jr nz, .sevii1
|
||||
call LoadTownMapGFX
|
||||
call FillKantoMap
|
||||
ret
|
||||
|
||||
.sevii1
|
||||
cp SEVII_REGION_1
|
||||
jr nz, .sevii2
|
||||
call LoadTownMapGFX
|
||||
call FillSevii1Map
|
||||
ret
|
||||
|
||||
.sevii2
|
||||
cp SEVII_REGION_2
|
||||
jr nz, .nihon
|
||||
call LoadTownMapGFX
|
||||
call FillSevii2Map
|
||||
ret
|
||||
|
||||
.nihon
|
||||
call LoadTownMapGFX
|
||||
call FillNihonMap
|
||||
|
|
@ -2317,8 +2405,12 @@ FlyMap:
|
|||
; The first 46 locations are part of Johto. The rest are in Kanto.
|
||||
cp NIHON_LANDMARK
|
||||
jr nc, .NihonFlyMap
|
||||
cp SEVII_LANDMARK_1
|
||||
jr nc, .Sevii1FlyMap
|
||||
cp SEVII_LANDMARK_2
|
||||
jp nc, .Sevii2FlyMap
|
||||
cp KANTO_LANDMARK
|
||||
jr nc, .KantoFlyMap
|
||||
jp nc, .KantoFlyMap
|
||||
; Johto fly map
|
||||
; Note that .NoKanto should be modified in tandem with this branch
|
||||
push af
|
||||
|
|
@ -2343,6 +2435,7 @@ FlyMap:
|
|||
; To prevent both of these things from happening when the player
|
||||
; enters Kanto, fly access is restricted until Indigo Plateau is
|
||||
; visited and its flypoint enabled.
|
||||
; the nihon and sevii areas inherit this which is probably quite iffy given winner's path exists but hey
|
||||
push af
|
||||
ld c, SPAWN_INDIGO
|
||||
call HasVisitedSpawn
|
||||
|
|
@ -2362,14 +2455,6 @@ FlyMap:
|
|||
ret
|
||||
|
||||
.NihonFlyMap:
|
||||
; The event that there are no flypoints enabled in a map is not
|
||||
; accounted for. As a result, if you attempt to select a flypoint
|
||||
; when there are none enabled, the game will crash. Additionally,
|
||||
; the flypoint selection has a default starting point that
|
||||
; can be flown to even if none are enabled.
|
||||
; To prevent both of these things from happening when the player
|
||||
; enters Kanto, fly access is restricted until Indigo Plateau is
|
||||
; visited and its flypoint enabled.
|
||||
push af
|
||||
ld c, SPAWN_SILENT_HILLS
|
||||
call HasVisitedSpawn
|
||||
|
|
@ -2388,6 +2473,44 @@ FlyMap:
|
|||
call TownMapPlayerIcon
|
||||
ret
|
||||
|
||||
.Sevii1FlyMap:
|
||||
push af
|
||||
ld c, SPAWN_ONE_ISLAND
|
||||
call HasVisitedSpawn
|
||||
and a
|
||||
jr z, .NoKanto
|
||||
; Nihon's map is only loaded if we've visited Silent Hills
|
||||
ld a, SEVII_FLYPOINT_1 ; first sevii1 flypoint
|
||||
ld [wStartFlypoint], a
|
||||
ld a, SEVII_FLYPOINT_2 - 1 ; last sevii1 flypoint
|
||||
ld [wEndFlypoint], a
|
||||
ld [wTownMapPlayerIconLandmark], a ; last one is default (Silent Hills)
|
||||
; Fill out the map
|
||||
call FillSevii1Map
|
||||
call .MapHud
|
||||
pop af
|
||||
call TownMapPlayerIcon
|
||||
ret
|
||||
|
||||
.Sevii2FlyMap:
|
||||
push af
|
||||
ld c, SPAWN_FIVE_ISLAND
|
||||
call HasVisitedSpawn
|
||||
and a
|
||||
jr z, .NoKanto
|
||||
; Nihon's map is only loaded if we've visited Silent Hills
|
||||
ld a, SEVII_FLYPOINT_2 ; first sevii1 flypoint
|
||||
ld [wStartFlypoint], a
|
||||
ld a, NIHON_FLYPOINT - 1 ; last sevii1 flypoint
|
||||
ld [wEndFlypoint], a
|
||||
ld [wTownMapPlayerIconLandmark], a ; last one is default (Silent Hills)
|
||||
; Fill out the map
|
||||
call FillSevii2Map
|
||||
call .MapHud
|
||||
pop af
|
||||
call TownMapPlayerIcon
|
||||
ret
|
||||
|
||||
.NoKanto:
|
||||
; If Indigo Plateau hasn't been visited, we use Johto's map instead
|
||||
ld a, JOHTO_FLYPOINT ; first Johto flypoint
|
||||
|
|
@ -2409,6 +2532,8 @@ FlyMap:
|
|||
ld [wTownMapCursorCoordinates + 1], a
|
||||
ret
|
||||
|
||||
; If you have trouble seeing areas for wildmons it's probably because of this
|
||||
; it doesn't account for nihon or the sevii isles right now
|
||||
Pokedex_GetArea:
|
||||
; e: Current landmark
|
||||
ld a, [wTownMapPlayerIconLandmark]
|
||||
|
|
@ -2644,6 +2769,9 @@ Pokedex_GetArea:
|
|||
db 0 * 8, 0 * 8, 3 ; bottom right
|
||||
db $80 ; terminator
|
||||
|
||||
; does not account for nihon or the two seviis
|
||||
; it shouldn't come up given the fast ship isn't being used for anything like this
|
||||
; if an error comes up you'll need to sort it out
|
||||
.CheckPlayerLocation:
|
||||
; Don't show the player's sprite if you're
|
||||
; not in the same region as what's currently
|
||||
|
|
@ -2723,6 +2851,14 @@ FillKantoMap:
|
|||
ld de, KantoMap
|
||||
jr FillTownMap
|
||||
|
||||
FillSevii1Map:
|
||||
ld de, Sevii1Map
|
||||
jr FillTownMap
|
||||
|
||||
FillSevii2Map:
|
||||
ld de, Sevii2Map
|
||||
jr FillTownMap
|
||||
|
||||
FillNihonMap:
|
||||
ld de, NihonMap
|
||||
FillTownMap:
|
||||
|
|
@ -2875,6 +3011,12 @@ INCBIN "gfx/pokegear/johto.bin"
|
|||
KantoMap:
|
||||
INCBIN "gfx/pokegear/kanto.bin"
|
||||
|
||||
Sevii1Map:
|
||||
INCBIN "gfx/pokegear/sevii1.bin"
|
||||
|
||||
Sevii2Map:
|
||||
INCBIN "gfx/pokegear/sevii2.bin"
|
||||
|
||||
NihonMap:
|
||||
INCBIN "gfx/pokegear/nihon.bin"
|
||||
|
||||
|
|
|
|||
|
|
@ -21,7 +21,11 @@ IsInJohto::
|
|||
|
||||
.CheckRegion:
|
||||
cp NIHON_LANDMARK
|
||||
jr z, .Nihon
|
||||
jr c, .Nihon
|
||||
cp SEVII_LANDMARK_1
|
||||
jr c, .sevii1
|
||||
cp SEVII_LANDMARK_2
|
||||
jr c, .sevii2
|
||||
cp KANTO_LANDMARK
|
||||
jr nc, .Kanto
|
||||
|
||||
|
|
@ -33,6 +37,14 @@ IsInJohto::
|
|||
ld a, KANTO_REGION
|
||||
ret
|
||||
|
||||
.sevii1:
|
||||
ld a, SEVII_REGION_1
|
||||
ret
|
||||
|
||||
.sevii2:
|
||||
ld a, SEVII_REGION_2
|
||||
ret
|
||||
|
||||
.Nihon:
|
||||
ld a, NIHON_REGION
|
||||
ret
|
||||
|
|
|
|||
4
main.asm
4
main.asm
|
|
@ -315,9 +315,11 @@ INCLUDE "engine/phone/phone.asm"
|
|||
INCLUDE "engine/rtc/timeset.asm"
|
||||
INCLUDE "engine/pokegear/pokegear.asm"
|
||||
INCLUDE "engine/events/fish.asm"
|
||||
INCLUDE "engine/games/slot_machine.asm"
|
||||
INCLUDE "data/pokemon/first_stages.asm"
|
||||
|
||||
SECTION "bank24 spillover", ROMX
|
||||
INCLUDE "engine/games/slot_machine.asm"
|
||||
|
||||
SECTION "Phone Scripts 1", ROMX
|
||||
|
||||
INCLUDE "engine/phone/scripts/generic_caller.asm"
|
||||
|
|
|
|||
|
|
@ -398,7 +398,7 @@ DebugRoom_MapEvents:
|
|||
warp_event 27, 5, PEWTER_CITY, 2
|
||||
warp_event 15, 2, GOLDENROD_CITY, 1 ; city warp
|
||||
warp_event 4, 9, SUMMER_BEACH_HOUSE, 1 ; left lab/league warp
|
||||
warp_event 5, 9, PALLET_TOWN, 1 ; right lab/league warp
|
||||
warp_event 5, 9, ONE_ISLAND, 1 ; right lab/league warp
|
||||
warp_event 35, 17, OLD_CITY, 1 ; east warp
|
||||
warp_event 5, 35, LAVENDER_TOWN, 1 ; southwest warp
|
||||
warp_event 19, 34, SAFARI_ZONE_FUCHSIA_GATE_BETA, 3 ; southern warp
|
||||
|
|
|
|||
|
|
@ -4,6 +4,11 @@ FiveIsland_MapScripts:
|
|||
def_scene_scripts
|
||||
|
||||
def_callbacks
|
||||
callback MAPCALLBACK_NEWMAP, FiveIslandFlypointCallback
|
||||
|
||||
FiveIslandFlypointCallback:
|
||||
setflag ENGINE_FLYPOINT_FIVE_ISLAND
|
||||
endcallback
|
||||
|
||||
FiveIsland_MapEvents:
|
||||
db 0, 0 ; filler
|
||||
|
|
|
|||
|
|
@ -4,6 +4,11 @@ FourIsland_MapScripts:
|
|||
def_scene_scripts
|
||||
|
||||
def_callbacks
|
||||
callback MAPCALLBACK_NEWMAP, FourIslandFlypointCallback
|
||||
|
||||
FourIslandFlypointCallback:
|
||||
setflag ENGINE_FLYPOINT_FOUR_ISLAND
|
||||
endcallback
|
||||
|
||||
FourIsland_MapEvents:
|
||||
db 0, 0 ; filler
|
||||
|
|
|
|||
|
|
@ -4,16 +4,54 @@ OneIsland_MapScripts:
|
|||
def_scene_scripts
|
||||
|
||||
def_callbacks
|
||||
callback MAPCALLBACK_NEWMAP, OneIslandFlypointCallback
|
||||
|
||||
OneIslandFlypointCallback:
|
||||
setflag ENGINE_FLYPOINT_ONE_ISLAND
|
||||
endcallback
|
||||
|
||||
OneIslandSign1:
|
||||
jumptext OneIslandSign1Text
|
||||
|
||||
OneIslandSign1Text:
|
||||
text "Comment to be"
|
||||
line "written."
|
||||
done
|
||||
|
||||
OneIslandSign2:
|
||||
jumptext OneIslandSign2Text
|
||||
|
||||
OneIslandSign2Text:
|
||||
text "Comment to be"
|
||||
line "written."
|
||||
done
|
||||
|
||||
OneIslandSailorScript:
|
||||
jumptextfaceplayer OneIslandSailorText
|
||||
|
||||
OneIslandSailorText:
|
||||
text "Shove off! I'm"
|
||||
line "workin', 'ere!"
|
||||
|
||||
para "Bolt south to"
|
||||
line "TREASURE BEACH"
|
||||
cont "or somethin'!"
|
||||
done
|
||||
|
||||
OneIsland_MapEvents:
|
||||
db 0, 0 ; filler
|
||||
|
||||
def_warp_events
|
||||
warp_event 14, 19, DEBUG_ROOM, 1
|
||||
warp_event 15, 19, DEBUG_ROOM, 1
|
||||
warp_event 14, 19, DEBUG_ROOM, 1 ; port
|
||||
warp_event 15, 19, DEBUG_ROOM, 1 ; port
|
||||
|
||||
warp_event 17, 6, DEBUG_ROOM, 1 ; pokecenter
|
||||
warp_event 11, 13, DEBUG_ROOM, 1 ; left house
|
||||
warp_event 21, 11, DEBUG_ROOM, 1 ; right house
|
||||
|
||||
def_coord_events
|
||||
|
||||
def_bg_events
|
||||
|
||||
def_object_events
|
||||
def_object_events
|
||||
object_event 19, 23, SPRITE_SAILOR, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, OneIslandSailorScript, -1
|
||||
|
|
|
|||
|
|
@ -4,6 +4,11 @@ SevenIsland_MapScripts:
|
|||
def_scene_scripts
|
||||
|
||||
def_callbacks
|
||||
callback MAPCALLBACK_NEWMAP, SevenIslandFlypointCallback
|
||||
|
||||
SevenIslandFlypointCallback:
|
||||
setflag ENGINE_FLYPOINT_SEVEN_ISLAND
|
||||
endcallback
|
||||
|
||||
SevenIsland_MapEvents:
|
||||
db 0, 0 ; filler
|
||||
|
|
|
|||
|
|
@ -4,6 +4,11 @@ SixIsland_MapScripts:
|
|||
def_scene_scripts
|
||||
|
||||
def_callbacks
|
||||
callback MAPCALLBACK_NEWMAP, SixIslandFlypointCallback
|
||||
|
||||
SixIslandFlypointCallback:
|
||||
setflag ENGINE_FLYPOINT_SIX_ISLAND
|
||||
endcallback
|
||||
|
||||
SixIsland_MapEvents:
|
||||
db 0, 0 ; filler
|
||||
|
|
|
|||
|
|
@ -4,6 +4,11 @@ ThreeIsland_MapScripts:
|
|||
def_scene_scripts
|
||||
|
||||
def_callbacks
|
||||
callback MAPCALLBACK_NEWMAP, ThreeIslandFlypointCallback
|
||||
|
||||
ThreeIslandFlypointCallback:
|
||||
setflag ENGINE_FLYPOINT_THREE_ISLAND
|
||||
endcallback
|
||||
|
||||
ThreeIsland_MapEvents:
|
||||
db 0, 0 ; filler
|
||||
|
|
|
|||
|
|
@ -4,6 +4,11 @@ TwoIsland_MapScripts:
|
|||
def_scene_scripts
|
||||
|
||||
def_callbacks
|
||||
callback MAPCALLBACK_NEWMAP, TwoIslandFlypointCallback
|
||||
|
||||
TwoIslandFlypointCallback:
|
||||
setflag ENGINE_FLYPOINT_TWO_ISLAND
|
||||
endcallback
|
||||
|
||||
TwoIsland_MapEvents:
|
||||
db 0, 0 ; filler
|
||||
|
|
|
|||
Loading…
Reference in a new issue