mirror of
https://github.com/pret/pokegold.git
synced 2026-09-30 19:06:45 -05:00
Add engine/overworld/landmarks.asm and engine/events/fish.asm.
This commit is contained in:
@@ -229,6 +229,12 @@ NUM_FRUIT_TREES EQU const_value - 1
|
||||
const DECODESC_BIG_DOLL ; 3
|
||||
const DECODESC_CONSOLE ; 4
|
||||
|
||||
; ActivateFishingSwarm setval arguments
|
||||
const_def
|
||||
const FISHSWARM_NONE ; 0
|
||||
const FISHSWARM_QWILFISH ; 1
|
||||
const FISHSWARM_REMORAID ; 2
|
||||
|
||||
; SpecialGameboyCheck return values
|
||||
const_def
|
||||
const GBCHECK_GB ; 0
|
||||
|
||||
205
data/maps/landmarks.asm
Normal file
205
data/maps/landmarks.asm
Normal file
@@ -0,0 +1,205 @@
|
||||
landmark: MACRO
|
||||
; x, y, name
|
||||
db \1 + 8, \2 + 16
|
||||
dw \3
|
||||
ENDM
|
||||
|
||||
Landmarks:
|
||||
; entries correspond to constants/landmark_constants.asm
|
||||
dbbw 0, 0, SpecialMapName
|
||||
landmark 140, 100, NewBarkTownName
|
||||
landmark 128, 100, Route29Name
|
||||
landmark 100, 100, CherrygroveCityName
|
||||
landmark 100, 80, Route30Name
|
||||
landmark 96, 60, Route31Name
|
||||
landmark 84, 60, VioletCityName
|
||||
landmark 85, 58, SproutTowerName
|
||||
landmark 84, 92, Route32Name
|
||||
landmark 76, 76, RuinsOfAlphName
|
||||
landmark 84, 124, UnionCaveName
|
||||
landmark 82, 124, Route33Name
|
||||
landmark 68, 124, AzaleaTownName
|
||||
landmark 70, 122, SlowpokeWellName
|
||||
landmark 52, 120, IlexForestName
|
||||
landmark 52, 112, Route34Name
|
||||
landmark 52, 92, GoldenrodCityName
|
||||
landmark 50, 92, RadioTowerName
|
||||
landmark 52, 76, Route35Name
|
||||
landmark 52, 60, NationalParkName
|
||||
landmark 64, 60, Route36Name
|
||||
landmark 68, 52, Route37Name
|
||||
landmark 68, 44, EcruteakCityName
|
||||
landmark 70, 42, TinTowerName
|
||||
landmark 66, 42, BurnedTowerName
|
||||
landmark 52, 44, Route38Name
|
||||
landmark 36, 48, Route39Name
|
||||
landmark 36, 60, OlivineCityName
|
||||
landmark 38, 62, LighthouseName
|
||||
landmark 28, 64, Route40Name
|
||||
landmark 28, 92, WhirlIslandsName
|
||||
landmark 28, 100, Route41Name
|
||||
landmark 20, 100, CianwoodCityName
|
||||
landmark 92, 44, Route42Name
|
||||
landmark 84, 44, MtMortarName
|
||||
landmark 108, 44, MahoganyTownName
|
||||
landmark 108, 36, Route43Name
|
||||
landmark 108, 28, LakeOfRageName
|
||||
landmark 120, 44, Route44Name
|
||||
landmark 130, 38, IcePathName
|
||||
landmark 132, 44, BlackthornCityName
|
||||
landmark 132, 36, DragonsDenName
|
||||
landmark 132, 64, Route45Name
|
||||
landmark 112, 72, DarkCaveName
|
||||
landmark 124, 88, Route46Name
|
||||
landmark 148, 68, SilverCaveName
|
||||
landmark 52, 108, PalletTownName
|
||||
landmark 52, 92, Route1Name
|
||||
landmark 52, 76, ViridianCityName
|
||||
landmark 52, 64, Route2Name
|
||||
landmark 52, 52, PewterCityName
|
||||
landmark 64, 52, Route3Name
|
||||
landmark 76, 52, MtMoonName
|
||||
landmark 88, 52, Route4Name
|
||||
landmark 100, 52, CeruleanCityName
|
||||
landmark 100, 44, Route24Name
|
||||
landmark 108, 36, Route25Name
|
||||
landmark 100, 60, Route5Name
|
||||
landmark 108, 76, UndergroundName
|
||||
landmark 100, 76, Route6Name
|
||||
landmark 100, 84, VermilionCityName
|
||||
landmark 88, 60, DiglettsCaveName
|
||||
landmark 88, 68, Route7Name
|
||||
landmark 116, 68, Route8Name
|
||||
landmark 116, 52, Route9Name
|
||||
landmark 132, 52, RockTunnelName
|
||||
landmark 132, 56, Route10Name
|
||||
landmark 132, 60, PowerPlantName
|
||||
landmark 132, 68, LavenderTownName
|
||||
landmark 140, 68, LavRadioTowerName
|
||||
landmark 76, 68, CeladonCityName
|
||||
landmark 100, 68, SaffronCityName
|
||||
landmark 116, 84, Route11Name
|
||||
landmark 132, 80, Route12Name
|
||||
landmark 124, 100, Route13Name
|
||||
landmark 116, 112, Route14Name
|
||||
landmark 104, 116, Route15Name
|
||||
landmark 68, 68, Route16Name
|
||||
landmark 68, 92, Route17Name
|
||||
landmark 80, 116, Route18Name
|
||||
landmark 92, 116, FuchsiaCityName
|
||||
landmark 92, 128, Route19Name
|
||||
landmark 76, 132, Route20Name
|
||||
landmark 68, 132, SeafoamIslandsName
|
||||
landmark 52, 132, CinnabarIslandName
|
||||
landmark 52, 120, Route21Name
|
||||
landmark 36, 68, Route22Name
|
||||
landmark 28, 52, VictoryRoadName
|
||||
landmark 28, 44, Route23Name
|
||||
landmark 28, 36, IndigoPlateauName
|
||||
landmark 28, 92, Route26Name
|
||||
landmark 20, 100, Route27Name
|
||||
landmark 12, 100, TohjoFallsName
|
||||
landmark 20, 68, Route28Name
|
||||
landmark 140, 116, FastShipName
|
||||
|
||||
NewBarkTownName: db "NEW BARK¯TOWN@"
|
||||
CherrygroveCityName: db "CHERRYGROVE¯CITY@"
|
||||
VioletCityName: db "VIOLET CITY@"
|
||||
AzaleaTownName: db "AZALEA TOWN@"
|
||||
GoldenrodCityName: db "GOLDENROD¯CITY@"
|
||||
EcruteakCityName: db "ECRUTEAK¯CITY@"
|
||||
OlivineCityName: db "OLIVINE¯CITY@"
|
||||
CianwoodCityName: db "CIANWOOD¯CITY@"
|
||||
MahoganyTownName: db "MAHOGANY¯TOWN@"
|
||||
BlackthornCityName: db "BLACKTHORN¯CITY@"
|
||||
LakeOfRageName: db "LAKE OF¯RAGE@"
|
||||
SilverCaveName: db "SILVER CAVE@"
|
||||
SproutTowerName: db "SPROUT¯TOWER@"
|
||||
RuinsOfAlphName: db "RUINS¯OF ALPH@"
|
||||
UnionCaveName: db "UNION CAVE@"
|
||||
SlowpokeWellName: db "SLOWPOKE¯WELL@"
|
||||
RadioTowerName: db "RADIO TOWER@"
|
||||
PowerPlantName: db "POWER PLANT@"
|
||||
NationalParkName: db "NATIONAL¯PARK@"
|
||||
TinTowerName: db "TIN TOWER@"
|
||||
LighthouseName: db "LIGHTHOUSE@"
|
||||
WhirlIslandsName: db "WHIRL¯ISLANDS@"
|
||||
MtMortarName: db "MT.MORTAR@"
|
||||
DragonsDenName: db "DRAGON'S¯DEN@"
|
||||
IcePathName: db "ICE PATH@"
|
||||
NotApplicableName: db "N/A@" ; "オバケやしき" ("HAUNTED HOUSE") in Japanese
|
||||
PalletTownName: db "PALLET TOWN@"
|
||||
ViridianCityName: db "VIRIDIAN¯CITY@"
|
||||
PewterCityName: db "PEWTER CITY@"
|
||||
CeruleanCityName: db "CERULEAN¯CITY@"
|
||||
LavenderTownName: db "LAVENDER¯TOWN@"
|
||||
VermilionCityName: db "VERMILION¯CITY@"
|
||||
CeladonCityName: db "CELADON¯CITY@"
|
||||
SaffronCityName: db "SAFFRON¯CITY@"
|
||||
FuchsiaCityName: db "FUCHSIA¯CITY@"
|
||||
CinnabarIslandName: db "CINNABAR¯ISLAND@"
|
||||
IndigoPlateauName: db "INDIGO¯PLATEAU@"
|
||||
VictoryRoadName: db "VICTORY¯ROAD@"
|
||||
MtMoonName: db "MT.MOON@"
|
||||
RockTunnelName: db "ROCK TUNNEL@"
|
||||
LavRadioTowerName: db "LAV¯RADIO TOWER@"
|
||||
SilphCoName: db "SILPH CO.@"
|
||||
SafariZoneName: db "SAFARI ZONE@"
|
||||
SeafoamIslandsName: db "SEAFOAM¯ISLANDS@"
|
||||
PokemonMansionName: db "#MON¯MANSION@"
|
||||
CeruleanCaveName: db "CERULEAN¯CAVE@"
|
||||
Route1Name: db "ROUTE 1@"
|
||||
Route2Name: db "ROUTE 2@"
|
||||
Route3Name: db "ROUTE 3@"
|
||||
Route4Name: db "ROUTE 4@"
|
||||
Route5Name: db "ROUTE 5@"
|
||||
Route6Name: db "ROUTE 6@"
|
||||
Route7Name: db "ROUTE 7@"
|
||||
Route8Name: db "ROUTE 8@"
|
||||
Route9Name: db "ROUTE 9@"
|
||||
Route10Name: db "ROUTE 10@"
|
||||
Route11Name: db "ROUTE 11@"
|
||||
Route12Name: db "ROUTE 12@"
|
||||
Route13Name: db "ROUTE 13@"
|
||||
Route14Name: db "ROUTE 14@"
|
||||
Route15Name: db "ROUTE 15@"
|
||||
Route16Name: db "ROUTE 16@"
|
||||
Route17Name: db "ROUTE 17@"
|
||||
Route18Name: db "ROUTE 18@"
|
||||
Route19Name: db "ROUTE 19@"
|
||||
Route20Name: db "ROUTE 20@"
|
||||
Route21Name: db "ROUTE 21@"
|
||||
Route22Name: db "ROUTE 22@"
|
||||
Route23Name: db "ROUTE 23@"
|
||||
Route24Name: db "ROUTE 24@"
|
||||
Route25Name: db "ROUTE 25@"
|
||||
Route26Name: db "ROUTE 26@"
|
||||
Route27Name: db "ROUTE 27@"
|
||||
Route28Name: db "ROUTE 28@"
|
||||
Route29Name: db "ROUTE 29@"
|
||||
Route30Name: db "ROUTE 30@"
|
||||
Route31Name: db "ROUTE 31@"
|
||||
Route32Name: db "ROUTE 32@"
|
||||
Route33Name: db "ROUTE 33@"
|
||||
Route34Name: db "ROUTE 34@"
|
||||
Route35Name: db "ROUTE 35@"
|
||||
Route36Name: db "ROUTE 36@"
|
||||
Route37Name: db "ROUTE 37@"
|
||||
Route38Name: db "ROUTE 38@"
|
||||
Route39Name: db "ROUTE 39@"
|
||||
Route40Name: db "ROUTE 40@"
|
||||
Route41Name: db "ROUTE 41@"
|
||||
Route42Name: db "ROUTE 42@"
|
||||
Route43Name: db "ROUTE 43@"
|
||||
Route44Name: db "ROUTE 44@"
|
||||
Route45Name: db "ROUTE 45@"
|
||||
Route46Name: db "ROUTE 46@"
|
||||
DarkCaveName: db "DARK CAVE@"
|
||||
IlexForestName: db "ILEX¯FOREST@"
|
||||
BurnedTowerName: db "BURNED¯TOWER@"
|
||||
FastShipName: db "FAST SHIP@"
|
||||
ViridianForestName: db "VIRIDIAN¯FOREST@"
|
||||
DiglettsCaveName: db "DIGLETT's¯CAVE@"
|
||||
TohjoFallsName: db "TOHJO FALLS@"
|
||||
UndergroundName: db "UNDERGROUND@"
|
||||
SpecialMapName: db "SPECIAL@"
|
||||
@@ -1,225 +1,230 @@
|
||||
FishGroups: ; 92488
|
||||
dbwww 50 percent + 1, .Shore_Old, .Shore_Good, .Shore_Super
|
||||
dbwww 50 percent + 1, .Ocean_Old, .Ocean_Good, .Ocean_Super
|
||||
dbwww 50 percent + 1, .Lake_Old, .Lake_Good, .Lake_Super
|
||||
dbwww 50 percent + 1, .Pond_Old, .Pond_Good, .Pond_Super
|
||||
dbwww 50 percent + 1, .Dratini_Old, .Dratini_Good, .Dratini_Super
|
||||
dbwww 50 percent + 1, .Qwilfish_Swarm_Old, .Qwilfish_Swarm_Good, .Qwilfish_Swarm_Super
|
||||
dbwww 50 percent + 1, .Remoraid_Swarm_Old, .Remoraid_Swarm_Good, .Remoraid_Swarm_Super
|
||||
dbwww 50 percent + 1, .Gyarados_Old, .Gyarados_Good, .Gyarados_Super
|
||||
dbwww 50 percent + 1, .Dratini_2_Old, .Dratini_2_Good, .Dratini_2_Super
|
||||
dbwww 50 percent + 1, .WhirlIslands_Old, .WhirlIslands_Good, .WhirlIslands_Super
|
||||
dbwww 50 percent + 1, .Qwilfish_Old, .Qwilfish_Good, .Qwilfish_Super
|
||||
dbwww 50 percent + 1, .Remoraid_Old, .Remoraid_Good, .Remoraid_Super
|
||||
dbwww 50 percent + 1, .Qwilfish_NoSwarm_Old, .Qwilfish_NoSwarm_Good, .Qwilfish_NoSwarm_Super
|
||||
time_group EQUS "0," ; use the nth TimeFishGroups entry
|
||||
|
||||
.Shore_Old: ; 924e3
|
||||
fishgroup: MACRO
|
||||
; chance, old rod, good rod, super rod
|
||||
dbwww \1, \2, \3, \4
|
||||
ENDM
|
||||
|
||||
FishGroups:
|
||||
; entries correspond to FISHGROUP_* constants
|
||||
fishgroup 50 percent + 1, .Shore_Old, .Shore_Good, .Shore_Super
|
||||
fishgroup 50 percent + 1, .Ocean_Old, .Ocean_Good, .Ocean_Super
|
||||
fishgroup 50 percent + 1, .Lake_Old, .Lake_Good, .Lake_Super
|
||||
fishgroup 50 percent + 1, .Pond_Old, .Pond_Good, .Pond_Super
|
||||
fishgroup 50 percent + 1, .Dratini_Old, .Dratini_Good, .Dratini_Super
|
||||
fishgroup 50 percent + 1, .Qwilfish_Swarm_Old, .Qwilfish_Swarm_Good, .Qwilfish_Swarm_Super
|
||||
fishgroup 50 percent + 1, .Remoraid_Swarm_Old, .Remoraid_Swarm_Good, .Remoraid_Swarm_Super
|
||||
fishgroup 50 percent + 1, .Gyarados_Old, .Gyarados_Good, .Gyarados_Super
|
||||
fishgroup 50 percent + 1, .Dratini_2_Old, .Dratini_2_Good, .Dratini_2_Super
|
||||
fishgroup 50 percent + 1, .WhirlIslands_Old, .WhirlIslands_Good, .WhirlIslands_Super
|
||||
fishgroup 50 percent + 1, .Qwilfish_Old, .Qwilfish_Good, .Qwilfish_Super
|
||||
fishgroup 50 percent + 1, .Remoraid_Old, .Remoraid_Good, .Remoraid_Super
|
||||
fishgroup 50 percent + 1, .Qwilfish_NoSwarm_Old, .Qwilfish_NoSwarm_Good, .Qwilfish_NoSwarm_Super
|
||||
|
||||
.Shore_Old:
|
||||
db 70 percent + 1, MAGIKARP, 10
|
||||
db 85 percent + 1, MAGIKARP, 10
|
||||
db 100 percent, KRABBY, 10
|
||||
.Shore_Good: ; 924ec
|
||||
.Shore_Good:
|
||||
db 35 percent, MAGIKARP, 20
|
||||
db 70 percent, KRABBY, 20
|
||||
db 90 percent + 1, KRABBY, 20
|
||||
db 100 percent, 0, 0
|
||||
.Shore_Super: ; 924f8
|
||||
db 100 percent, time_group 0
|
||||
.Shore_Super:
|
||||
db 40 percent, KRABBY, 40
|
||||
db 70 percent, 0, 1
|
||||
db 70 percent, time_group 1
|
||||
db 90 percent + 1, KRABBY, 40
|
||||
db 100 percent, KINGLER, 40
|
||||
|
||||
.Ocean_Old: ; 92504
|
||||
.Ocean_Old:
|
||||
db 70 percent + 1, MAGIKARP, 10
|
||||
db 85 percent + 1, MAGIKARP, 10
|
||||
db 100 percent, TENTACOOL, 10
|
||||
.Ocean_Good: ; 9250d
|
||||
.Ocean_Good:
|
||||
db 35 percent, MAGIKARP, 20
|
||||
db 70 percent, TENTACOOL, 20
|
||||
db 90 percent + 1, CHINCHOU, 20
|
||||
db 100 percent, 0, 2
|
||||
.Ocean_Super: ; 92519
|
||||
db 100 percent, time_group 2
|
||||
.Ocean_Super:
|
||||
db 40 percent, CHINCHOU, 40
|
||||
db 70 percent, 0, 3
|
||||
db 70 percent, time_group 3
|
||||
db 90 percent + 1, TENTACRUEL, 40
|
||||
db 100 percent, LANTURN, 40
|
||||
|
||||
.Lake_Old: ; 92525
|
||||
.Lake_Old:
|
||||
db 70 percent + 1, MAGIKARP, 10
|
||||
db 85 percent + 1, MAGIKARP, 10
|
||||
db 100 percent, GOLDEEN, 10
|
||||
.Lake_Good: ; 9252e
|
||||
.Lake_Good:
|
||||
db 35 percent, MAGIKARP, 20
|
||||
db 70 percent, GOLDEEN, 20
|
||||
db 90 percent + 1, GOLDEEN, 20
|
||||
db 100 percent, 0, 4
|
||||
.Lake_Super: ; 9253a
|
||||
db 100 percent, time_group 4
|
||||
.Lake_Super:
|
||||
db 40 percent, GOLDEEN, 40
|
||||
db 70 percent, 0, 5
|
||||
db 70 percent, time_group 5
|
||||
db 90 percent + 1, MAGIKARP, 40
|
||||
db 100 percent, SEAKING, 40
|
||||
|
||||
.Pond_Old: ; 92546
|
||||
.Pond_Old:
|
||||
db 70 percent + 1, MAGIKARP, 10
|
||||
db 85 percent + 1, MAGIKARP, 10
|
||||
db 100 percent, POLIWAG, 10
|
||||
.Pond_Good: ; 9254f
|
||||
.Pond_Good:
|
||||
db 35 percent, MAGIKARP, 20
|
||||
db 70 percent, POLIWAG, 20
|
||||
db 90 percent + 1, POLIWAG, 20
|
||||
db 100 percent, 0, 6
|
||||
.Pond_Super: ; 9255b
|
||||
db 100 percent, time_group 6
|
||||
.Pond_Super:
|
||||
db 40 percent, POLIWAG, 40
|
||||
db 70 percent, 0, 7
|
||||
db 70 percent, time_group 7
|
||||
db 90 percent + 1, MAGIKARP, 40
|
||||
db 100 percent, POLIWAG, 40
|
||||
|
||||
.Dratini_Old: ; 92567
|
||||
.Dratini_Old:
|
||||
db 70 percent + 1, MAGIKARP, 10
|
||||
db 85 percent + 1, MAGIKARP, 10
|
||||
db 100 percent, MAGIKARP, 10
|
||||
.Dratini_Good: ; 92570
|
||||
.Dratini_Good:
|
||||
db 35 percent, MAGIKARP, 20
|
||||
db 70 percent, MAGIKARP, 20
|
||||
db 90 percent + 1, MAGIKARP, 20
|
||||
db 100 percent, 0, 8
|
||||
.Dratini_Super: ; 9257c
|
||||
db 100 percent, time_group 8
|
||||
.Dratini_Super:
|
||||
db 40 percent, MAGIKARP, 40
|
||||
db 70 percent, 0, 9
|
||||
db 70 percent, time_group 9
|
||||
db 90 percent + 1, MAGIKARP, 40
|
||||
db 100 percent, DRAGONAIR, 40
|
||||
|
||||
.Qwilfish_Swarm_Old: ; 92588
|
||||
.Qwilfish_Swarm_Old:
|
||||
db 70 percent + 1, MAGIKARP, 5
|
||||
db 85 percent + 1, MAGIKARP, 5
|
||||
db 100 percent, QWILFISH, 5
|
||||
.Qwilfish_Swarm_Good: ; 92591
|
||||
.Qwilfish_Swarm_Good:
|
||||
db 35 percent, MAGIKARP, 20
|
||||
db 70 percent, QWILFISH, 20
|
||||
db 90 percent + 1, QWILFISH, 20
|
||||
db 100 percent, 0, 10
|
||||
.Qwilfish_Swarm_Super: ; 9259d
|
||||
db 100 percent, time_group 10
|
||||
.Qwilfish_Swarm_Super:
|
||||
db 40 percent, QWILFISH, 40
|
||||
db 70 percent, 0, 11
|
||||
db 70 percent, time_group 11
|
||||
db 90 percent + 1, QWILFISH, 40
|
||||
db 100 percent, QWILFISH, 40
|
||||
|
||||
.Remoraid_Swarm_Old: ; 925a9
|
||||
.Remoraid_Swarm_Old:
|
||||
db 70 percent + 1, MAGIKARP, 10
|
||||
db 85 percent + 1, MAGIKARP, 10
|
||||
db 100 percent, REMORAID, 10
|
||||
.Remoraid_Swarm_Good: ; 925b2
|
||||
.Remoraid_Swarm_Good:
|
||||
db 35 percent, MAGIKARP, 20
|
||||
db 70 percent, REMORAID, 20
|
||||
db 90 percent + 1, REMORAID, 20
|
||||
db 100 percent, 0, 12
|
||||
.Remoraid_Swarm_Super: ; 925be
|
||||
db 100 percent, time_group 12
|
||||
.Remoraid_Swarm_Super:
|
||||
db 40 percent, REMORAID, 40
|
||||
db 70 percent, 0, 13
|
||||
db 70 percent, time_group 13
|
||||
db 90 percent + 1, REMORAID, 40
|
||||
db 100 percent, REMORAID, 40
|
||||
|
||||
.Gyarados_Old: ; 925ca
|
||||
.Gyarados_Old:
|
||||
db 70 percent + 1, MAGIKARP, 10
|
||||
db 85 percent + 1, MAGIKARP, 10
|
||||
db 100 percent, MAGIKARP, 10
|
||||
.Gyarados_Good: ; 925d3
|
||||
.Gyarados_Good:
|
||||
db 35 percent, MAGIKARP, 20
|
||||
db 70 percent, MAGIKARP, 20
|
||||
db 90 percent + 1, MAGIKARP, 20
|
||||
db 100 percent, 0, 14
|
||||
.Gyarados_Super: ; 925df
|
||||
db 100 percent, time_group 14
|
||||
.Gyarados_Super:
|
||||
db 40 percent, MAGIKARP, 40
|
||||
db 70 percent, 0, 15
|
||||
db 70 percent, time_group 15
|
||||
db 90 percent + 1, MAGIKARP, 40
|
||||
db 100 percent, MAGIKARP, 40
|
||||
|
||||
.Dratini_2_Old: ; 925eb
|
||||
.Dratini_2_Old:
|
||||
db 70 percent + 1, MAGIKARP, 10
|
||||
db 85 percent + 1, MAGIKARP, 10
|
||||
db 100 percent, MAGIKARP, 10
|
||||
.Dratini_2_Good: ; 925f4
|
||||
.Dratini_2_Good:
|
||||
db 35 percent, MAGIKARP, 10
|
||||
db 70 percent, MAGIKARP, 10
|
||||
db 90 percent + 1, MAGIKARP, 10
|
||||
db 100 percent, 0, 16
|
||||
.Dratini_2_Super: ; 92600
|
||||
db 100 percent, time_group 16
|
||||
.Dratini_2_Super:
|
||||
db 40 percent, MAGIKARP, 10
|
||||
db 70 percent, 0, 17
|
||||
db 70 percent, time_group 17
|
||||
db 90 percent + 1, MAGIKARP, 10
|
||||
db 100 percent, DRAGONAIR, 10
|
||||
|
||||
.WhirlIslands_Old: ; 9260c
|
||||
.WhirlIslands_Old:
|
||||
db 70 percent + 1, MAGIKARP, 10
|
||||
db 85 percent + 1, MAGIKARP, 10
|
||||
db 100 percent, KRABBY, 10
|
||||
.WhirlIslands_Good: ; 92615
|
||||
.WhirlIslands_Good:
|
||||
db 35 percent, MAGIKARP, 20
|
||||
db 70 percent, KRABBY, 20
|
||||
db 90 percent + 1, KRABBY, 20
|
||||
db 100 percent, 0, 18
|
||||
.WhirlIslands_Super: ; 92621
|
||||
db 100 percent, time_group 18
|
||||
.WhirlIslands_Super:
|
||||
db 40 percent, KRABBY, 40
|
||||
db 70 percent, 0, 19
|
||||
db 70 percent, time_group 19
|
||||
db 90 percent + 1, KINGLER, 40
|
||||
db 100 percent, SEADRA, 40
|
||||
|
||||
.Qwilfish_NoSwarm_Old:
|
||||
.Qwilfish_Old: ; 9262d
|
||||
.Qwilfish_Old:
|
||||
db 70 percent + 1, MAGIKARP, 10
|
||||
db 85 percent + 1, MAGIKARP, 10
|
||||
db 100 percent, TENTACOOL, 10
|
||||
.Qwilfish_NoSwarm_Good:
|
||||
.Qwilfish_Good: ; 92636
|
||||
.Qwilfish_Good:
|
||||
db 35 percent, MAGIKARP, 20
|
||||
db 70 percent, TENTACOOL, 20
|
||||
db 90 percent + 1, TENTACOOL, 20
|
||||
db 100 percent, 0, 20
|
||||
db 100 percent, time_group 20
|
||||
.Qwilfish_NoSwarm_Super:
|
||||
.Qwilfish_Super: ; 92642
|
||||
.Qwilfish_Super:
|
||||
db 40 percent, TENTACOOL, 40
|
||||
db 70 percent, 0, 21
|
||||
db 70 percent, time_group 21
|
||||
db 90 percent + 1, MAGIKARP, 40
|
||||
db 100 percent, QWILFISH, 40
|
||||
|
||||
.Remoraid_Old: ; 9264e
|
||||
.Remoraid_Old:
|
||||
db 70 percent + 1, MAGIKARP, 10
|
||||
db 85 percent + 1, MAGIKARP, 10
|
||||
db 100 percent, POLIWAG, 10
|
||||
.Remoraid_Good: ; 92657
|
||||
.Remoraid_Good:
|
||||
db 35 percent, MAGIKARP, 20
|
||||
db 70 percent, POLIWAG, 20
|
||||
db 90 percent + 1, POLIWAG, 20
|
||||
db 100 percent, 0, 6
|
||||
.Remoraid_Super: ; 92663
|
||||
db 100 percent, time_group 6
|
||||
.Remoraid_Super:
|
||||
db 40 percent, POLIWAG, 40
|
||||
db 70 percent, 0, 7
|
||||
db 70 percent, time_group 7
|
||||
db 90 percent + 1, MAGIKARP, 40
|
||||
db 100 percent, REMORAID, 40
|
||||
; 9266f
|
||||
|
||||
|
||||
TimeFishGroups: ; 9266f
|
||||
TimeFishGroups:
|
||||
; day nite
|
||||
db CORSOLA, 20, STARYU, 20
|
||||
db CORSOLA, 40, STARYU, 40
|
||||
db SHELLDER, 20, SHELLDER, 20
|
||||
db SHELLDER, 40, SHELLDER, 40
|
||||
db GOLDEEN, 20, GOLDEEN, 20
|
||||
db GOLDEEN, 40, GOLDEEN, 40
|
||||
db POLIWAG, 20, POLIWAG, 20
|
||||
db POLIWAG, 40, POLIWAG, 40
|
||||
db DRATINI, 20, DRATINI, 20
|
||||
db DRATINI, 40, DRATINI, 40
|
||||
db QWILFISH, 20, QWILFISH, 20
|
||||
db QWILFISH, 40, QWILFISH, 40
|
||||
db REMORAID, 20, REMORAID, 20
|
||||
db REMORAID, 40, REMORAID, 40
|
||||
db GYARADOS, 20, GYARADOS, 20
|
||||
db GYARADOS, 40, GYARADOS, 40
|
||||
db DRATINI, 10, DRATINI, 10
|
||||
db DRATINI, 10, DRATINI, 10
|
||||
db HORSEA, 20, HORSEA, 20
|
||||
db HORSEA, 40, HORSEA, 40
|
||||
db TENTACOOL, 20, TENTACOOL, 20
|
||||
db TENTACOOL, 40, TENTACOOL, 40
|
||||
; 926c7
|
||||
db CORSOLA, 20, STARYU, 20 ; 0
|
||||
db CORSOLA, 40, STARYU, 40 ; 1
|
||||
db SHELLDER, 20, SHELLDER, 20 ; 2
|
||||
db SHELLDER, 40, SHELLDER, 40 ; 3
|
||||
db GOLDEEN, 20, GOLDEEN, 20 ; 4
|
||||
db GOLDEEN, 40, GOLDEEN, 40 ; 5
|
||||
db POLIWAG, 20, POLIWAG, 20 ; 6
|
||||
db POLIWAG, 40, POLIWAG, 40 ; 7
|
||||
db DRATINI, 20, DRATINI, 20 ; 8
|
||||
db DRATINI, 40, DRATINI, 40 ; 9
|
||||
db QWILFISH, 20, QWILFISH, 20 ; 10
|
||||
db QWILFISH, 40, QWILFISH, 40 ; 11
|
||||
db REMORAID, 20, REMORAID, 20 ; 12
|
||||
db REMORAID, 40, REMORAID, 40 ; 13
|
||||
db GYARADOS, 20, GYARADOS, 20 ; 14
|
||||
db GYARADOS, 40, GYARADOS, 40 ; 15
|
||||
db DRATINI, 10, DRATINI, 10 ; 16
|
||||
db DRATINI, 10, DRATINI, 10 ; 17
|
||||
db HORSEA, 20, HORSEA, 20 ; 18
|
||||
db HORSEA, 40, HORSEA, 40 ; 19
|
||||
db TENTACOOL, 20, TENTACOOL, 20 ; 20
|
||||
db TENTACOOL, 40, TENTACOOL, 40 ; 21
|
||||
|
||||
121
engine/events/fish.asm
Normal file
121
engine/events/fish.asm
Normal file
@@ -0,0 +1,121 @@
|
||||
Fish:
|
||||
; Using a fishing rod.
|
||||
; Fish for monsters with rod e in encounter group d.
|
||||
; Return monster d at level e.
|
||||
|
||||
push af
|
||||
push bc
|
||||
push hl
|
||||
|
||||
ld b, e
|
||||
call GetFishGroupIndex
|
||||
|
||||
ld hl, FishGroups
|
||||
rept FISHGROUP_DATA_LENGTH
|
||||
add hl, de
|
||||
endr
|
||||
call .Fish
|
||||
|
||||
pop hl
|
||||
pop bc
|
||||
pop af
|
||||
ret
|
||||
|
||||
.Fish:
|
||||
; Fish for monsters with rod b from encounter data in FishGroup at hl.
|
||||
; Return monster d at level e.
|
||||
|
||||
call Random
|
||||
cp [hl]
|
||||
jr nc, .no_bite
|
||||
|
||||
; Get encounter data by rod:
|
||||
; 0: Old
|
||||
; 1: Good
|
||||
; 2: Super
|
||||
inc hl
|
||||
ld e, b
|
||||
ld d, 0
|
||||
add hl, de
|
||||
add hl, de
|
||||
ld a, [hli]
|
||||
ld h, [hl]
|
||||
ld l, a
|
||||
|
||||
; Compare the encounter chance to select a Pokemon.
|
||||
call Random
|
||||
.loop
|
||||
cp [hl]
|
||||
jr z, .ok
|
||||
jr c, .ok
|
||||
inc hl
|
||||
inc hl
|
||||
inc hl
|
||||
jr .loop
|
||||
.ok
|
||||
inc hl
|
||||
|
||||
; Species 0 reads from a time-based encounter table.
|
||||
ld a, [hli]
|
||||
ld d, a
|
||||
and a
|
||||
call z, .TimeEncounter
|
||||
|
||||
ld e, [hl]
|
||||
ret
|
||||
|
||||
.no_bite
|
||||
ld de, 0
|
||||
ret
|
||||
|
||||
.TimeEncounter:
|
||||
; The level byte is repurposed as the index for the new table.
|
||||
ld e, [hl]
|
||||
ld d, 0
|
||||
ld hl, TimeFishGroups
|
||||
rept 4
|
||||
add hl, de
|
||||
endr
|
||||
|
||||
ld a, [wTimeOfDay]
|
||||
maskbits NUM_DAYTIMES
|
||||
cp NITE_F
|
||||
jr c, .time_species
|
||||
inc hl
|
||||
inc hl
|
||||
|
||||
.time_species
|
||||
ld d, [hl]
|
||||
inc hl
|
||||
ret
|
||||
|
||||
GetFishGroupIndex:
|
||||
; Return the index of fishgroup d in de.
|
||||
|
||||
ld a, d
|
||||
cp FISHGROUP_QWILFISH
|
||||
jr z, .qwilfish
|
||||
cp FISHGROUP_REMORAID
|
||||
jr z, .remoraid
|
||||
|
||||
.done
|
||||
dec d
|
||||
ld e, d
|
||||
ld d, 0
|
||||
ret
|
||||
|
||||
.qwilfish
|
||||
ld a, [wFishingSwarmFlag]
|
||||
cp FISHSWARM_QWILFISH
|
||||
jr nz, .done
|
||||
ld d, FISHGROUP_QWILFISH_SWARM
|
||||
jr .done
|
||||
|
||||
.remoraid
|
||||
ld a, [wFishingSwarmFlag]
|
||||
cp FISHSWARM_REMORAID
|
||||
jr nz, .done
|
||||
ld d, FISHGROUP_REMORAID_SWARM
|
||||
jr .done
|
||||
|
||||
INCLUDE "data/wild/fish.asm"
|
||||
82
engine/overworld/landmarks.asm
Normal file
82
engine/overworld/landmarks.asm
Normal file
@@ -0,0 +1,82 @@
|
||||
GetLandmarkCoords:
|
||||
; Return coordinates (d, e) of landmark e.
|
||||
push hl
|
||||
ld l, e
|
||||
ld h, 0
|
||||
add hl, hl
|
||||
add hl, hl
|
||||
ld de, Landmarks
|
||||
add hl, de
|
||||
ld a, [hli]
|
||||
ld e, a
|
||||
ld d, [hl]
|
||||
pop hl
|
||||
ret
|
||||
|
||||
GetLandmarkName::
|
||||
; Copy the name of landmark e to wStringBuffer1.
|
||||
push hl
|
||||
push de
|
||||
push bc
|
||||
|
||||
ld l, e
|
||||
ld h, 0
|
||||
add hl, hl
|
||||
add hl, hl
|
||||
ld de, Landmarks + 2
|
||||
add hl, de
|
||||
ld a, [hli]
|
||||
ld h, [hl]
|
||||
ld l, a
|
||||
|
||||
ld de, wStringBuffer1
|
||||
ld c, 18
|
||||
.copy
|
||||
ld a, [hli]
|
||||
ld [de], a
|
||||
inc de
|
||||
dec c
|
||||
jr nz, .copy
|
||||
|
||||
pop bc
|
||||
pop de
|
||||
pop hl
|
||||
ret
|
||||
|
||||
INCLUDE "data/maps/landmarks.asm"
|
||||
|
||||
RegionCheck:
|
||||
; Checks if the player is in Kanto or Johto.
|
||||
; If in Johto, returns 0 in e.
|
||||
; If in Kanto, returns 1 in e.
|
||||
ld a, [wMapGroup]
|
||||
ld b, a
|
||||
ld a, [wMapNumber]
|
||||
ld c, a
|
||||
call GetWorldMapLocation
|
||||
cp LANDMARK_FAST_SHIP ; S.S. Aqua
|
||||
jr z, .johto
|
||||
cp LANDMARK_SPECIAL
|
||||
jr nz, .checkagain
|
||||
|
||||
; In a special map, get the backup map group / map id
|
||||
ld a, [wBackupMapGroup]
|
||||
ld b, a
|
||||
ld a, [wBackupMapNumber]
|
||||
ld c, a
|
||||
call GetWorldMapLocation
|
||||
|
||||
.checkagain
|
||||
cp KANTO_LANDMARK
|
||||
jr c, .johto
|
||||
|
||||
; Victory Road area is considered to be Johto.
|
||||
cp LANDMARK_VICTORY_ROAD
|
||||
jr c, .kanto
|
||||
|
||||
.johto
|
||||
ld e, JOHTO_REGION
|
||||
ret
|
||||
.kanto
|
||||
ld e, KANTO_REGION
|
||||
ret
|
||||
8
main.asm
8
main.asm
@@ -593,13 +593,9 @@ SECTION "bank24", ROMX
|
||||
INCLUDE "engine/phone/phone.asm"
|
||||
INCLUDE "engine/rtc/timeset.asm"
|
||||
INCLUDE "engine/pokegear/pokegear.asm"
|
||||
INCLUDE "engine/overworld/landmarks.asm"
|
||||
INCLUDE "engine/events/fish.asm"
|
||||
|
||||
GetLandmarkCoords::
|
||||
dr $92355, $92364
|
||||
GetLandmarkName::
|
||||
dr $92364, $9297a
|
||||
Fish::
|
||||
dr $9297a, $92c36
|
||||
_SlotMachine::
|
||||
dr $92c36, $93f86
|
||||
|
||||
|
||||
Reference in New Issue
Block a user