Merge branch 'PlagueVonKarma:master' into master
11
README.md
|
|
@ -116,8 +116,9 @@ New Areas
|
||||||
New Music
|
New Music
|
||||||
====
|
====
|
||||||
- Mewtwo has its own battle theme: A demake of the iconic Stadium track! It features some creative deviations to give it a distinct Game Boy feel while fitting with Mewtwo's mystique. Composed by LuciShrimp.
|
- Mewtwo has its own battle theme: A demake of the iconic Stadium track! It features some creative deviations to give it a distinct Game Boy feel while fitting with Mewtwo's mystique. Composed by LuciShrimp.
|
||||||
- Mew and the Legendary Birds have their own battle theme, a demake of the FireRed/LeafGreen pitch-shifted remix. Not simply pitching it up, percussion elements have been added to give it that rustic FRLG "feel" that distinguishes it from the original games. Composed by LuciShrimp.
|
- Mew and the Kantonian Legendary Birds have their own battle theme, a demake of the FireRed/LeafGreen pitch-shifted remix. Not simply pitching it up, percussion elements have been added to give it that rustic FRLG "feel" that distinguishes it from the original games. Composed by LuciShrimp.
|
||||||
- Limited static encounters, such as the two sleeping Snorlax, and the restored prototype Omega, also use this theme.
|
- Limited static encounters, such as the two sleeping Snorlax, and the restored prototype Omega, also use this theme.
|
||||||
|
- The Galarian Legendary Birds have a demake of their Sword and Shield battle theme instead! Composed by LuciShrimp.
|
||||||
- Mt. Moon Crater uses a demake of Scarlet and Violet's Area Zero theme! Composed by LuciShrimp.
|
- Mt. Moon Crater uses a demake of Scarlet and Violet's Area Zero theme! Composed by LuciShrimp.
|
||||||
- Team Rocket's battle theme from GSC has been backported with some small changes to give it more of an RBY feel. Plays during Rocket Grunt fights, including Jessie and James, as well as the initial 2 Giovanni battles. Composed by LuciShrimp.
|
- Team Rocket's battle theme from GSC has been backported with some small changes to give it more of an RBY feel. Plays during Rocket Grunt fights, including Jessie and James, as well as the initial 2 Giovanni battles. Composed by LuciShrimp.
|
||||||
- In addition to the aforementioned Team Rocket battle theme, a slower, pitched-down arrangement plays when battling Giovanni in his gym, as well as against a postgame boss. Composed by LuciShrimp and Martha's Against Humanity.
|
- In addition to the aforementioned Team Rocket battle theme, a slower, pitched-down arrangement plays when battling Giovanni in his gym, as well as against a postgame boss. Composed by LuciShrimp and Martha's Against Humanity.
|
||||||
|
|
@ -229,7 +230,7 @@ Many non-multiplayer, non-battle related bugs have been fixed. Battle-related bu
|
||||||
- Some grammar tweaks have been made (eg. If a move is disabled, it now has an upper-case D instead of a lower-case one.)
|
- Some grammar tweaks have been made (eg. If a move is disabled, it now has an upper-case D instead of a lower-case one.)
|
||||||
- Blaine is no longer addicted to Super Potions.
|
- Blaine is no longer addicted to Super Potions.
|
||||||
- CoolTrainerF no longer switches a lot.
|
- CoolTrainerF no longer switches a lot.
|
||||||
- Transformed Pokemon aren't presumed to be Dittos! Mew and Animon function correctly with this at play.
|
- Transformed Pokemon aren't presumed to be Dittos! Mew and Mimmeo function correctly with this at play.
|
||||||
- Status curing items don't remove modifiers anymore.
|
- Status curing items don't remove modifiers anymore.
|
||||||
- Learning new moves plays the sound in the correct bank.
|
- Learning new moves plays the sound in the correct bank.
|
||||||
- Falling through a hole on a bike now properly resets the music, as you fall off a bike when going down.
|
- Falling through a hole on a bike now properly resets the music, as you fall off a bike when going down.
|
||||||
|
|
@ -311,7 +312,7 @@ Kanto Prototype Pokemon:
|
||||||
- Cheep -> Jabetta | L30
|
- Cheep -> Jabetta | L30
|
||||||
- Coinpur -> Meowth | L14
|
- Coinpur -> Meowth | L14
|
||||||
- Decilla -> Gawarhed | L40
|
- Decilla -> Gawarhed | L40
|
||||||
- Gyopin -> Goldeen | L16
|
- Orfry -> Goldeen | L16
|
||||||
- Gentlarva -> Pupal | L7
|
- Gentlarva -> Pupal | L7
|
||||||
- Pupal -> Carapthor | L10
|
- Pupal -> Carapthor | L10
|
||||||
- Kotora -> Gaotora -> Gorotora | L16, L36
|
- Kotora -> Gaotora -> Gorotora | L16, L36
|
||||||
|
|
@ -380,16 +381,18 @@ If you use our implementations of anything at all, it is encouraged to submit Pu
|
||||||
* erosunica - Assistance with developing Celadon University & Citrine City, plus sources for various subjects.
|
* erosunica - Assistance with developing Celadon University & Citrine City, plus sources for various subjects.
|
||||||
* Chatot4444 - Assisting with gym scaling code.
|
* Chatot4444 - Assisting with gym scaling code.
|
||||||
* Enigami - Reworking the Battle Tent's RestoreTeam code to make it work properly.
|
* Enigami - Reworking the Battle Tent's RestoreTeam code to make it work properly.
|
||||||
* HeadBoiSkye - Helped with writing NPC dialogue and Pokédex entries for new Pokémon such as Orfry.
|
* HunnieBuns (originally HeadBoiSkye) - Helped with writing NPC dialogue and Pokédex entries for new Pokémon such as Orfry.
|
||||||
* ZumiIsawhat? - Restorations of prototype OST.
|
* ZumiIsawhat? - Restorations of prototype OST.
|
||||||
* FrenchOrange - Reconstructions of various overworld prototype sprites.
|
* FrenchOrange - Reconstructions of various overworld prototype sprites.
|
||||||
* Helix Chamber (RacieBeep & Orchid) - Prototype Pokémon sprites. Precise credits are available [here](https://cdn.discordapp.com/attachments/1014321591657709569/1015347305483878521/unknown.png) and below.
|
* Helix Chamber (RacieBeep & Orchid) - Prototype Pokémon sprites. Precise credits are available [here](https://cdn.discordapp.com/attachments/1014321591657709569/1015347305483878521/unknown.png) and below.
|
||||||
* Vortiene/Vortyne - Reused a bit of code from their pureRGB hack, including their Trainer AI, move animations and Pokedex stats page. Assisted in bug fixes. Used their sprite sheet generator.
|
* Vortiene/Vortyne - Reused a bit of code from their pureRGB hack, including their Trainer AI, move animations and Pokedex stats page. Assisted in bug fixes. Used their sprite sheet generator.
|
||||||
* wrulfy - Reused a bit of code from their Carmine Red hack to improve a handful of move animations, most notably Drill Peck and Horn Drill. Technical advice.
|
* wrulfy - Reused a bit of code from their Carmine Red hack to improve a handful of move animations, most notably Drill Peck and Horn Drill. Technical advice.
|
||||||
|
* TheSmithPlays - Reused a bit of code from their Yellow Legacy hack.
|
||||||
* Pigu-A, RevoSucks, walle303 - Contributors to Pokemon Anniversary Red's repository, where we reused the Green/FemC sprites and the Battle Tent.
|
* Pigu-A, RevoSucks, walle303 - Contributors to Pokemon Anniversary Red's repository, where we reused the Green/FemC sprites and the Battle Tent.
|
||||||
* Rangi - Reused a bit of code from their Red* / Blue* hack to make HMs usable in the overworld, and generally being an amazing individual.
|
* Rangi - Reused a bit of code from their Red* / Blue* hack to make HMs usable in the overworld, and generally being an amazing individual.
|
||||||
* BGVC - Composed the original 4-channel version of the unused Koukan (trading) music.
|
* BGVC - Composed the original 4-channel version of the unused Koukan (trading) music.
|
||||||
* Rainbow Metal Pigeon - Bug fix relating to Gym Leader rematches.
|
* Rainbow Metal Pigeon - Bug fix relating to Gym Leader rematches.
|
||||||
|
* SoupPotato - Borrowed code to make a functioning EXP bar.
|
||||||
* SatoMew - Technical advice.
|
* SatoMew - Technical advice.
|
||||||
* suloku - Technical advice regarding setting where you spawn after beating the Elite Four, Exp. All modernisation code
|
* suloku - Technical advice regarding setting where you spawn after beating the Elite Four, Exp. All modernisation code
|
||||||
* 大吟醸 (Daiginjo) - Assistance in translating the Tamamushi University Student Book, allowing for an accurate adaptation of the location.
|
* 大吟醸 (Daiginjo) - Assistance in translating the Tamamushi University Student Book, allowing for an accurate adaptation of the location.
|
||||||
|
|
|
||||||
|
|
@ -386,6 +386,9 @@ INCLUDE "crysaudio/music/RBY/giovannibattle.asm"
|
||||||
INCLUDE "crysaudio/music/RBY/elitefourbattle.asm"
|
INCLUDE "crysaudio/music/RBY/elitefourbattle.asm"
|
||||||
INCLUDE "crysaudio/music/RBY/champrival.asm"
|
INCLUDE "crysaudio/music/RBY/champrival.asm"
|
||||||
|
|
||||||
|
SECTION "RBY Songs 5", ROMX
|
||||||
|
INCLUDE "crysaudio/music/RBY/galarbirds.asm"
|
||||||
|
|
||||||
SECTION "TCG Songs 1", ROMX
|
SECTION "TCG Songs 1", ROMX
|
||||||
|
|
||||||
INCLUDE "crysaudio/music/TCG/titlescreen.asm"
|
INCLUDE "crysaudio/music/TCG/titlescreen.asm"
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,8 @@ PlayBattleMusic::
|
||||||
jp z, .legendaryBattle
|
jp z, .legendaryBattle
|
||||||
cp OMEGADGE
|
cp OMEGADGE
|
||||||
jp z, .legendaryBattle
|
jp z, .legendaryBattle
|
||||||
|
cp ARCANINE
|
||||||
|
jp z, .legendaryBattle
|
||||||
cp SNORLAX ; Just like LGPE. Snorlax is basically a legendary in RBY, so I love this.
|
cp SNORLAX ; Just like LGPE. Snorlax is basically a legendary in RBY, so I love this.
|
||||||
jp z, .legendaryBattle
|
jp z, .legendaryBattle
|
||||||
cp DRATINI ; In the Tajiri lore, the Dratini family is considered legendary. Also, we have a static Dragonite. I think the appearance of Dratini in the Safari Zone with this theme could also add some reeeeeal nice hype to the whole ordeal.
|
cp DRATINI ; In the Tajiri lore, the Dratini family is considered legendary. Also, we have a static Dragonite. I think the appearance of Dratini in the Safari Zone with this theme could also add some reeeeeal nice hype to the whole ordeal.
|
||||||
|
|
@ -35,11 +37,11 @@ PlayBattleMusic::
|
||||||
cp DRAGONITE
|
cp DRAGONITE
|
||||||
jp z, .legendaryBattle
|
jp z, .legendaryBattle
|
||||||
cp ARTICUNO_G
|
cp ARTICUNO_G
|
||||||
jp z, .legendaryBattle
|
jp z, .birdsBattle
|
||||||
cp ZAPDOS_G
|
cp ZAPDOS_G
|
||||||
jp z, .legendaryBattle
|
jp z, .birdsBattle
|
||||||
cp MOLTRES_G
|
cp MOLTRES_G
|
||||||
jp z, .legendaryBattle
|
jp z, .birdsBattle
|
||||||
cp OPP_ID_OFFSET
|
cp OPP_ID_OFFSET
|
||||||
jp c, .wildBattle
|
jp c, .wildBattle
|
||||||
cp OPP_YUJIROU
|
cp OPP_YUJIROU
|
||||||
|
|
@ -107,6 +109,9 @@ PlayBattleMusic::
|
||||||
.legendaryBattle
|
.legendaryBattle
|
||||||
ld a, MUSIC_LEGENDARYBATTLE
|
ld a, MUSIC_LEGENDARYBATTLE
|
||||||
jr .playSong
|
jr .playSong
|
||||||
|
.birdsBattle
|
||||||
|
ld a, MUSIC_GALAR_BIRDS
|
||||||
|
jr .playSong
|
||||||
.wildBattle
|
.wildBattle
|
||||||
ld a, MUSIC_WILD_BATTLE
|
ld a, MUSIC_WILD_BATTLE
|
||||||
.playSong
|
.playSong
|
||||||
|
|
|
||||||
|
|
@ -85,25 +85,25 @@ DEF SAFARI_ROCK EQU $16 ; overload
|
||||||
const LIFT_KEY ; $4A
|
const LIFT_KEY ; $4A
|
||||||
const EXP_ALL ; $4B
|
const EXP_ALL ; $4B
|
||||||
const CANDY_JAR ; $4C - was old rod
|
const CANDY_JAR ; $4C - was old rod
|
||||||
const BOTTLE_CAP ; $4D - was good rod
|
const BOTTLE_CAP ; $4D - was good rod
|
||||||
const SUPER_ROD ; $4E
|
const FISHING_ROD ; $4E
|
||||||
const PP_UP ; $4F
|
const PP_UP ; $4F
|
||||||
const ETHER ; $50
|
const ETHER ; $50
|
||||||
const MAX_ETHER ; $51
|
const MAX_ETHER ; $51
|
||||||
const ELIXER ; $52
|
const ELIXER ; $52
|
||||||
const MAX_ELIXER ; $53
|
const MAX_ELIXER ; $53
|
||||||
const ICE_STONE ; $54
|
const ICE_STONE ; $54
|
||||||
const PROTECTOR ; $55
|
const PROTECTOR ; $55
|
||||||
const POISON_STONE ; $56
|
const POISON_STONE ; $56
|
||||||
const BLK_AUGURITE ; $57
|
const BLK_AUGURITE ; $57
|
||||||
const DUBIOUS_DISC ; $58
|
const DUBIOUS_DISC ; $58
|
||||||
const CITRINE_PASS ; $59
|
const CITRINE_PASS ; $59
|
||||||
const OLD_SEA_MAP ; $5A
|
const OLD_SEA_MAP ; $5A
|
||||||
const UP_GRADE ; $5B
|
const UP_GRADE ; $5B
|
||||||
const METAL_COAT ; $5C
|
const METAL_COAT ; $5C
|
||||||
const MYSTERY_BOX ; $5D
|
const MYSTERY_BOX ; $5D
|
||||||
const TEA ; $5E
|
const TEA ; $5E
|
||||||
const SILPHLETTER ; $5F
|
const SILPHLETTER ; $5F
|
||||||
DEF NUM_ITEMS EQU const_value - 1
|
DEF NUM_ITEMS EQU const_value - 1
|
||||||
|
|
||||||
; elevator floors use item IDs
|
; elevator floors use item IDs
|
||||||
|
|
|
||||||
|
|
@ -142,7 +142,7 @@ DEF FIRST_INDOOR_MAP EQU const_value
|
||||||
map_const MT_MOON_CRATER, 25, 25 ; $77 - Was UNUSED_MAP_75
|
map_const MT_MOON_CRATER, 25, 25 ; $77 - Was UNUSED_MAP_75
|
||||||
map_const HALL_OF_FAME, 5, 4 ; $78
|
map_const HALL_OF_FAME, 5, 4 ; $78
|
||||||
map_const UNDERGROUND_PATH_NORTH_SOUTH, 4, 24 ; $79 ; UndergroundPathNorthSouth.blk is actually 4x23
|
map_const UNDERGROUND_PATH_NORTH_SOUTH, 4, 24 ; $79 ; UndergroundPathNorthSouth.blk is actually 4x23
|
||||||
map_const CHAMPIONS_ROOM, 4, 4 ; $7A
|
map_const CHAMPIONS_ROOM, 5, 6 ; $7A
|
||||||
map_const UNDERGROUND_PATH_WEST_EAST, 25, 4 ; $7B
|
map_const UNDERGROUND_PATH_WEST_EAST, 25, 4 ; $7B
|
||||||
map_const CELADON_MART_1F, 10, 4 ; $7C
|
map_const CELADON_MART_1F, 10, 4 ; $7C
|
||||||
map_const CELADON_MART_2F, 10, 4 ; $7D
|
map_const CELADON_MART_2F, 10, 4 ; $7D
|
||||||
|
|
@ -210,7 +210,7 @@ DEF FIRST_INDOOR_MAP EQU const_value
|
||||||
map_const ROUTE_16_GATE_1F, 4, 7 ; $BB
|
map_const ROUTE_16_GATE_1F, 4, 7 ; $BB
|
||||||
map_const ROUTE_16_GATE_2F, 4, 4 ; $BC
|
map_const ROUTE_16_GATE_2F, 4, 4 ; $BC
|
||||||
map_const ROUTE_16_FLY_HOUSE, 4, 4 ; $BD
|
map_const ROUTE_16_FLY_HOUSE, 4, 4 ; $BD
|
||||||
map_const ROUTE_12_SUPER_ROD_HOUSE, 4, 4 ; $BE
|
map_const FISHING_GURU_HOUSE, 4, 4 ; $BE
|
||||||
map_const ROUTE_18_GATE_1F, 4, 5 ; $BF
|
map_const ROUTE_18_GATE_1F, 4, 5 ; $BF
|
||||||
map_const ROUTE_18_GATE_2F, 4, 4 ; $C0
|
map_const ROUTE_18_GATE_2F, 4, 4 ; $C0
|
||||||
map_const SEAFOAM_ISLANDS_1F, 15, 9 ; $C1
|
map_const SEAFOAM_ISLANDS_1F, 15, 9 ; $C1
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
DEF BAG_ITEM_CAPACITY EQU 30
|
DEF BAG_ITEM_CAPACITY EQU 50
|
||||||
DEF PC_ITEM_CAPACITY EQU 50
|
DEF PC_ITEM_CAPACITY EQU 50
|
||||||
|
|
||||||
; text box IDs
|
; text box IDs
|
||||||
|
|
|
||||||
|
|
@ -68,7 +68,8 @@
|
||||||
const MUSIC_ROCKET_RBY
|
const MUSIC_ROCKET_RBY
|
||||||
const MUSIC_GIOVANNI_BATTLE
|
const MUSIC_GIOVANNI_BATTLE
|
||||||
const MUSIC_ELITE_FOUR_BATTLE
|
const MUSIC_ELITE_FOUR_BATTLE
|
||||||
const MUSIC_CHAMP_RIVAL
|
; const MUSIC_CHAMP_RIVAL
|
||||||
|
const MUSIC_GALAR_BIRDS
|
||||||
|
|
||||||
const NUM_SONGS
|
const NUM_SONGS
|
||||||
|
|
||||||
|
|
|
||||||
3053
crysaudio/music/RBY/galarbirds.asm
Normal file
|
|
@ -62,4 +62,5 @@ Music:
|
||||||
dba Music_RocketRBY
|
dba Music_RocketRBY
|
||||||
dba Music_GiovanniBattle
|
dba Music_GiovanniBattle
|
||||||
dba Music_EliteFourBattle
|
dba Music_EliteFourBattle
|
||||||
dba Music_ChampRival
|
; dba Music_ChampRival
|
||||||
|
dba Music_GalarBirds
|
||||||
|
|
|
||||||
|
|
@ -90,7 +90,7 @@ CreditsTextPointers:
|
||||||
dw CredDannye
|
dw CredDannye
|
||||||
dw CredEro
|
dw CredEro
|
||||||
dw CredBlueZangoose
|
dw CredBlueZangoose
|
||||||
dw CredSkye
|
dw CredHunnies
|
||||||
dw CredChatot
|
dw CredChatot
|
||||||
dw CredEni
|
dw CredEni
|
||||||
dw CredVort
|
dw CredVort
|
||||||
|
|
@ -276,8 +276,8 @@ CredEro:
|
||||||
db -4, "EROSUNICA@"
|
db -4, "EROSUNICA@"
|
||||||
CredBlueZangoose:
|
CredBlueZangoose:
|
||||||
db -5, "BLUEZANGOOSE@"
|
db -5, "BLUEZANGOOSE@"
|
||||||
CredSkye:
|
CredHunnies:
|
||||||
db -5, "HEADBOISKYE@"
|
db -4, "HUNNIEBUNS@"
|
||||||
CredChatot:
|
CredChatot:
|
||||||
db -4, "CHATOT4444@"
|
db -4, "CHATOT4444@"
|
||||||
CredEni:
|
CredEni:
|
||||||
|
|
|
||||||
|
|
@ -74,10 +74,10 @@ KeyItemFlags:
|
||||||
dbit TRUE ; SILPH_SCOPE
|
dbit TRUE ; SILPH_SCOPE
|
||||||
dbit TRUE ; POKE_FLUTE
|
dbit TRUE ; POKE_FLUTE
|
||||||
dbit TRUE ; LIFT_KEY
|
dbit TRUE ; LIFT_KEY
|
||||||
dbit TRUE ; EXP_ALL - Did you know this wasn't a key item originally? Yeesh, what if someone sold or tossed it??
|
dbit TRUE ; EXP_ALL - Did you know this wasn't a key item originally? Yeesh, what if someone sold or tossed it??
|
||||||
dbit TRUE ; was TRUE for OLD_ROD, now CANDY_JAR
|
dbit TRUE ; was TRUE for OLD_ROD, now CANDY_JAR
|
||||||
dbit FALSE ; was GOOD_ROD & TRUE, now BOTTLE_CAP
|
dbit FALSE ; was GOOD_ROD & TRUE, now BOTTLE_CAP
|
||||||
dbit TRUE ; SUPER_ROD
|
dbit TRUE ; FISHING_ROD
|
||||||
dbit FALSE ; PP_UP
|
dbit FALSE ; PP_UP
|
||||||
dbit FALSE ; ETHER
|
dbit FALSE ; ETHER
|
||||||
dbit FALSE ; MAX_ETHER
|
dbit FALSE ; MAX_ETHER
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,6 @@ UsableItems_CloseMenu:
|
||||||
db ESCAPE_ROPE
|
db ESCAPE_ROPE
|
||||||
db ITEMFINDER
|
db ITEMFINDER
|
||||||
db POKE_FLUTE
|
db POKE_FLUTE
|
||||||
;db OLD_ROD no longer exists
|
db FISHING_ROD
|
||||||
;db GOOD_ROD no longer exists
|
db POCKET_LAPRAS
|
||||||
db SUPER_ROD
|
|
||||||
db -1 ; end
|
db -1 ; end
|
||||||
|
|
|
||||||
2
data/maps/headers/FishingGuruHouse.asm
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
map_header FishingGuruHouse, FISHING_GURU_HOUSE, HOUSE, 0
|
||||||
|
end_map_header
|
||||||
|
|
@ -1,2 +0,0 @@
|
||||||
map_header Route12SuperRodHouse, ROUTE_12_SUPER_ROD_HOUSE, HOUSE, 0
|
|
||||||
end_map_header
|
|
||||||
|
|
@ -192,7 +192,7 @@ MapHeaderBanks::
|
||||||
db BANK(Route16Gate1F_h)
|
db BANK(Route16Gate1F_h)
|
||||||
db BANK(Route16Gate2F_h)
|
db BANK(Route16Gate2F_h)
|
||||||
db BANK(Route16FlyHouse_h)
|
db BANK(Route16FlyHouse_h)
|
||||||
db BANK(Route12SuperRodHouse_h)
|
db BANK(FishingGuruHouse_h)
|
||||||
db BANK(Route18Gate1F_h)
|
db BANK(Route18Gate1F_h)
|
||||||
db BANK(Route18Gate2F_h)
|
db BANK(Route18Gate2F_h)
|
||||||
db BANK(SeafoamIslands1F_h)
|
db BANK(SeafoamIslands1F_h)
|
||||||
|
|
|
||||||
|
|
@ -192,7 +192,7 @@ MapHeaderPointers::
|
||||||
dw Route16Gate1F_h
|
dw Route16Gate1F_h
|
||||||
dw Route16Gate2F_h
|
dw Route16Gate2F_h
|
||||||
dw Route16FlyHouse_h
|
dw Route16FlyHouse_h
|
||||||
dw Route12SuperRodHouse_h
|
dw FishingGuruHouse_h
|
||||||
dw Route18Gate1F_h
|
dw Route18Gate1F_h
|
||||||
dw Route18Gate2F_h
|
dw Route18Gate2F_h
|
||||||
dw SeafoamIslands1F_h
|
dw SeafoamIslands1F_h
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,8 @@ ChampionsRoom_Object:
|
||||||
db $3 ; border block
|
db $3 ; border block
|
||||||
|
|
||||||
def_warp_events
|
def_warp_events
|
||||||
warp_event 3, 7, LANCES_ROOM, 2
|
warp_event 4, 11, LANCES_ROOM, 2
|
||||||
warp_event 4, 7, LANCES_ROOM, 3
|
warp_event 5, 11, LANCES_ROOM, 3
|
||||||
warp_event 3, 0, HALL_OF_FAME, 1
|
warp_event 3, 0, HALL_OF_FAME, 1
|
||||||
warp_event 4, 0, HALL_OF_FAME, 1
|
warp_event 4, 0, HALL_OF_FAME, 1
|
||||||
|
|
||||||
|
|
@ -11,6 +11,6 @@ ChampionsRoom_Object:
|
||||||
|
|
||||||
def_object_events
|
def_object_events
|
||||||
object_event 4, 2, SPRITE_BLUE, STAY, DOWN, 1 ; person
|
object_event 4, 2, SPRITE_BLUE, STAY, DOWN, 1 ; person
|
||||||
object_event 3, 7, SPRITE_OAK, STAY, UP, 2 ; person
|
object_event 3, 8, SPRITE_OAK, STAY, UP, 2 ; person
|
||||||
|
|
||||||
def_warps_to CHAMPIONS_ROOM
|
def_warps_to CHAMPIONS_ROOM
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
Route12SuperRodHouse_Object:
|
FishingGuruHouse_Object:
|
||||||
db $a ; border block
|
db $a ; border block
|
||||||
|
|
||||||
def_warp_events
|
def_warp_events
|
||||||
|
|
@ -11,4 +11,4 @@ Route12SuperRodHouse_Object:
|
||||||
object_event 2, 4, SPRITE_FISHING_GURU, STAY, RIGHT, 1 ; person
|
object_event 2, 4, SPRITE_FISHING_GURU, STAY, RIGHT, 1 ; person
|
||||||
object_event 5, 6, SPRITE_YOUNGSTER, WALK, LEFT, 2 ; person
|
object_event 5, 6, SPRITE_YOUNGSTER, WALK, LEFT, 2 ; person
|
||||||
|
|
||||||
def_warps_to ROUTE_12_SUPER_ROD_HOUSE
|
def_warps_to FISHING_GURU_HOUSE
|
||||||
|
|
@ -3,7 +3,7 @@ GiovannisRoom_Object:
|
||||||
|
|
||||||
def_warp_events
|
def_warp_events
|
||||||
warp_event 5, 4, VIRIDIAN_GYM, 3
|
warp_event 5, 4, VIRIDIAN_GYM, 3
|
||||||
warp_event 15, 4, VIRIDIAN_CITY, 6
|
warp_event 17, 4, VIRIDIAN_CITY, 6
|
||||||
|
|
||||||
def_bg_events
|
def_bg_events
|
||||||
|
|
||||||
|
|
@ -12,7 +12,7 @@ GiovannisRoom_Object:
|
||||||
object_event 17, 8, SPRITE_PAPER, STAY, RIGHT, 2
|
object_event 17, 8, SPRITE_PAPER, STAY, RIGHT, 2
|
||||||
object_event 17, 15, SPRITE_PAPER, STAY, DOWN, 3
|
object_event 17, 15, SPRITE_PAPER, STAY, DOWN, 3
|
||||||
object_event 14, 24, SPRITE_PAPER, STAY, RIGHT, 4
|
object_event 14, 24, SPRITE_PAPER, STAY, RIGHT, 4
|
||||||
object_event 16, 4, SPRITE_POKE_BALL, STAY, NONE, 5, TM_EARTHQUAKE
|
object_event 18, 4, SPRITE_POKE_BALL, STAY, NONE, 5, TM_EARTHQUAKE
|
||||||
object_event 5, 22, SPRITE_POKE_BALL, STAY, NONE, 6, PROTECTOR
|
object_event 5, 22, SPRITE_POKE_BALL, STAY, NONE, 6, PROTECTOR
|
||||||
|
|
||||||
def_warps_to GIOVANNIS_ROOM
|
def_warps_to GIOVANNIS_ROOM
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ Route24_Object:
|
||||||
db $2c ; border block
|
db $2c ; border block
|
||||||
|
|
||||||
def_warp_events
|
def_warp_events
|
||||||
warp_event 5, 5, ROUTE_12_SUPER_ROD_HOUSE, 1
|
warp_event 5, 5, FISHING_GURU_HOUSE, 1
|
||||||
|
|
||||||
def_bg_events
|
def_bg_events
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -111,7 +111,7 @@ InternalMapEntries:
|
||||||
internal_map MR_PSYCHICS_HOUSE, 10, 5, SaffronCityName
|
internal_map MR_PSYCHICS_HOUSE, 10, 5, SaffronCityName
|
||||||
internal_map ROUTE_15_GATE_2F, 9, 13, Route15Name
|
internal_map ROUTE_15_GATE_2F, 9, 13, Route15Name
|
||||||
internal_map ROUTE_16_FLY_HOUSE, 4, 5, Route16Name
|
internal_map ROUTE_16_FLY_HOUSE, 4, 5, Route16Name
|
||||||
internal_map ROUTE_12_SUPER_ROD_HOUSE, 10, 1, Route24Name
|
internal_map FISHING_GURU_HOUSE, 10, 1, Route24Name
|
||||||
internal_map ROUTE_18_GATE_2F, 7, 13, Route18Name
|
internal_map ROUTE_18_GATE_2F, 7, 13, Route18Name
|
||||||
internal_map SEAFOAM_ISLANDS_1F, 5, 15, SeafoamIslandsName
|
internal_map SEAFOAM_ISLANDS_1F, 5, 15, SeafoamIslandsName
|
||||||
internal_map ROUTE_22_GATE, 0, 7, Route22Name
|
internal_map ROUTE_22_GATE, 0, 7, Route22Name
|
||||||
|
|
|
||||||
|
|
@ -674,7 +674,9 @@ _ViridianBlackboardSleepText::
|
||||||
cont "battles."
|
cont "battles."
|
||||||
|
|
||||||
para "Use AWAKENING to"
|
para "Use AWAKENING to"
|
||||||
line "wake them up!"
|
line "wake it up, or"
|
||||||
|
cont "wait for it to"
|
||||||
|
cont "wake itself up!"
|
||||||
prompt
|
prompt
|
||||||
|
|
||||||
_ViridianBlackboardPoisonText::
|
_ViridianBlackboardPoisonText::
|
||||||
|
|
@ -695,11 +697,11 @@ _ViridianBlackboardPoisonText::
|
||||||
prompt
|
prompt
|
||||||
|
|
||||||
_ViridianBlackboardPrlzText::
|
_ViridianBlackboardPrlzText::
|
||||||
text "Paralysis could"
|
text "Paralysis may"
|
||||||
line "make #MON"
|
line "make a #MON"
|
||||||
cont "moves misfire!"
|
cont "unable to act!"
|
||||||
|
|
||||||
para "It even lowers"
|
para "It also lowers"
|
||||||
line "their SPEED!"
|
line "their SPEED!"
|
||||||
|
|
||||||
para "Paralysis remains"
|
para "Paralysis remains"
|
||||||
|
|
|
||||||
|
|
@ -69,6 +69,11 @@ _SurfingGotOnText::
|
||||||
text "!"
|
text "!"
|
||||||
prompt
|
prompt
|
||||||
|
|
||||||
|
_SurfingGotOnLaprasText:: ; i cringed irl doing it this way pls understand i do not like this either - pvk
|
||||||
|
text "<PLAYER> got on"
|
||||||
|
line "LAPRAS!"
|
||||||
|
prompt
|
||||||
|
|
||||||
_SurfingNoPlaceToGetOffText::
|
_SurfingNoPlaceToGetOffText::
|
||||||
text "There's no place"
|
text "There's no place"
|
||||||
line "to get off!"
|
line "to get off!"
|
||||||
|
|
|
||||||
|
|
@ -354,7 +354,7 @@ EngineerData:
|
||||||
; Celadon University
|
; Celadon University
|
||||||
db 52, GOLEM_A, 0
|
db 52, GOLEM_A, 0
|
||||||
|
|
||||||
; Super Rod encounter showcase, basically
|
; Fishing Rod encounter showcase, basically
|
||||||
FisherData:
|
FisherData:
|
||||||
; SS Anne 2F Rooms
|
; SS Anne 2F Rooms
|
||||||
db 17, GOLDEEN, TENTACOOL, KRABBY, 0
|
db 17, GOLDEEN, TENTACOOL, KRABBY, 0
|
||||||
|
|
|
||||||
48
data/wild/fishing_rod.asm
Normal file
|
|
@ -0,0 +1,48 @@
|
||||||
|
FishingRodSlots::
|
||||||
|
db PALLET_TOWN, MAGIKARP, 7, ORFRY, 6, MAGIKARP, 8, ORFRY, 7
|
||||||
|
db VIRIDIAN_CITY, MAGIKARP, 5, ORFRY, 5, MAGIKARP, 7, ORFRY, 7
|
||||||
|
db ROUTE_22, MAGIKARP, 6, ORFRY, 5, MAGIKARP, 7, ORFRY, 7
|
||||||
|
db ROUTE_4, MAGIKARP, 12, ORFRY, 12, POLIWAG, 12, PSYDUCK, 13
|
||||||
|
db CERULEAN_CITY, MAGIKARP, 11, ORFRY, 14, POLIWAG, 13, STARYU, 13
|
||||||
|
db ROUTE_24, MAGIKARP, 12, ORFRY, 13, POLIWAG, 12, PSYDUCK, 12
|
||||||
|
db ROUTE_25, MAGIKARP, 11, POLIWAG, 12, ORFRY, 12, CHEEP, 12
|
||||||
|
db ROUTE_6, MAGIKARP, 12, ORFRY, 12, POLIWAG, 12, PSYDUCK, 12
|
||||||
|
db VERMILION_CITY, GOLDEEN, 14, SHELLDER, 13, CHEEP, 15, TENTACOOL, 13
|
||||||
|
db VERMILION_DOCK, MAGIKARP, 15, BLOTTLE, 13, CHEEP, 15, TENTACOOL, 15
|
||||||
|
db VERMILION_FERRY_DOCK, MAGIKARP, 16, BLOTTLE, 14, CHEEP, 13, TENTACOOL, 14
|
||||||
|
db ROUTE_11, WIGLETT, 15, KRABBY, 15, CHEEP, 14, TENTACOOL, 13
|
||||||
|
db DIGLETTS_CAVE, WIGLETT, 18, WIGLETT, 19, WIGLETT, 20, WUGTRIO, 28
|
||||||
|
db ROUTE_10, POLIWAG, 17, RIBBITO, 17, KRABBY, 19, SLOWPOKE, 18
|
||||||
|
db ROCK_TUNNEL_1F, POLIWAG, 16, RIBBITO, 16, KRABBY, 17, SLOWPOKE, 17
|
||||||
|
db ROUTE_12, POLIWAG, 18, RIBBITO, 15, KRABBY, 17, SLOWPOKE, 19
|
||||||
|
db CELADON_CITY, MAGIKARP, 15, MAGIKARP, 17, GRIMER, 20, MAGIKARP, 20
|
||||||
|
db CELADON_UNIVERSITY_OUTSIDE, MAGIKARP, 14, MAGIKARP, 18, GRIMER, 21, MAGIKARP, 19
|
||||||
|
db ROUTE_13, PSYDUCK, 25, KRABBY, 25, HORSEA, 24, POLIWHIRL, 26
|
||||||
|
db ROUTE_17, CHEEP, 25, KRABBY, 25, HORSEA, 25, POLIWHIRL, 25
|
||||||
|
db ROUTE_18, CHEEP, 26, KRABBY, 27, HORSEA, 26, POLIWHIRL, 27
|
||||||
|
db ROUTE_23, SLOWBRO, 23, KINGLER, 24, HORSEA, 22, POLIWHIRL, 25
|
||||||
|
db FUCHSIA_CITY, GRIMER, 25, KRABBY, 25, HORSEA, 25, GYARADOS, 26
|
||||||
|
db SAFARI_ZONE_CENTER, SLOWPOKE, 25, KRABBY, 26, DRATINI, 23, DRAGONAIR, 30
|
||||||
|
db SAFARI_ZONE_EAST, SLOWPOKE, 24, KRABBY, 24, WEIRDUCK, 22, DRATINI, 19
|
||||||
|
db SAFARI_ZONE_NORTH, SLOWPOKE, 26, KRABBY, 25, WEIRDUCK, 23, DRATINI, 21
|
||||||
|
db SAFARI_ZONE_WEST, SLOWPOKE, 23, KRABBY, 27, WEIRDUCK, 24, DRATINI, 20
|
||||||
|
db UNDERWATER_TUNNEL, SHELLDER, 30, STARYU, 29, JABETTA, 33, GOLDUCK, 34
|
||||||
|
db ROUTE_19, STARYU, 31, HORSEA, 31, SHELLDER, 31, SHARPOON, 32
|
||||||
|
db ROUTE_20, STARYU, 33, HORSEA, 33, SHELLDER, 33, SHARPOON, 34
|
||||||
|
db ROUTE_21, STARYU, 31, HORSEA, 32, SHELLDER, 31, SHARPOON, 32
|
||||||
|
db SEAFOAM_ISLANDS_B3F, KRABBY, 31, SEEL, 31, SHELLDER, 32, STARYU, 33
|
||||||
|
db SEAFOAM_ISLANDS_B4F, KRABBY, 32, SEEL, 33, SHELLDER, 33, LAPRAS, 35 ; fish for nessie if ur stupid enough - pvk
|
||||||
|
db CINNABAR_ISLAND, STARYU, 30, HORSEA, 30, SHELLDER, 30, SHARPOON, 30
|
||||||
|
db CINNABAR_VOLCANO_FLOORS, GROWLITHE, 32, MAGMAR, 35, MAGMAR, 35, MAGMAR, 36
|
||||||
|
db CINNABAR_VOLCANO, MAGMAR, 35, MAGMAR, 35, MAGMAR, 36, ARCANINE, 38
|
||||||
|
db BILLS_GARDEN, SQUIRTLE, 52, SQUIRTLE, 51, DRATINI, 50, DRAGONAIR, 53
|
||||||
|
db MT_MOON_CRATER, KABUTOPS, 49, OMASTAR, 49, SEAKING, 50, GYARADOS, 53
|
||||||
|
db CITRINE_FERRY_DOCK, PENDRAKEN, 48, TENTACRUEL, 49, KINGLER, 51, SHARPOON, 50
|
||||||
|
db CITRINE_CITY, PENDRAKEN, 48, TENTACRUEL, 49, KINGLER, 52, SHARPOON, 51
|
||||||
|
db BRUNSWICK_TRAIL, STARYU, 48, SEADRA, 49, GOLDUCK, 50, POLIWRATH, 50
|
||||||
|
db GARNET_CAVERN_1F, PENDRAKEN, 50, SEADRA, 49, POLIWRATH, 53, GYARADOS, 54
|
||||||
|
db GARNET_CAVERN_B1F, PENDRAKEN, 51, SEADRA, 48, POLITOED, 52, GYARADOS, 55
|
||||||
|
db SILPH_GAUNTLET_5F, SLOWBRO, 50, KINGLER, 51, GOLDUCK, 51, DRAGONAIR, 52
|
||||||
|
db CERULEAN_CAVE_1F, SHARPOON, 62, SLOWBRO, 64, CROAKOZUNA, 64, GYARADOS, 65
|
||||||
|
db CERULEAN_CAVE_B1F, SHARPOON, 62, SLOWKING, 64, CROAKOZUNA, 64, GYARADOS, 65
|
||||||
|
db -1 ; end
|
||||||
|
|
@ -1,5 +0,0 @@
|
||||||
; random choice of 2 good rod encounters
|
|
||||||
GoodRodMons:
|
|
||||||
; level, species
|
|
||||||
db 10, GOLDEEN
|
|
||||||
db 10, POLIWAG
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
Route13WildMons:
|
Route13WildMons:
|
||||||
def_grass_wildmons 20 ; encounter rate
|
def_grass_wildmons 20 ; encounter rate
|
||||||
db 24, ODDISH
|
db 24, ODDISH
|
||||||
db 25, PIDGEOTTO
|
db 25, FARFETCHD
|
||||||
db 23, BELLSPROUT
|
db 23, BELLSPROUT
|
||||||
db 24, VENONAT
|
db 24, VENONAT
|
||||||
db 24, VENONAT
|
db 24, VENONAT
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ Route15WildMons:
|
||||||
def_grass_wildmons 15 ; encounter rate
|
def_grass_wildmons 15 ; encounter rate
|
||||||
db 24, BELLSPROUT
|
db 24, BELLSPROUT
|
||||||
db 26, VENONAT
|
db 26, VENONAT
|
||||||
db 25, SPEAROW
|
db 25, FARFETCHD
|
||||||
db 25, DITTO
|
db 25, DITTO
|
||||||
db 22, BELLSPROUT
|
db 22, BELLSPROUT
|
||||||
db 28, ODDISH
|
db 28, ODDISH
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@ VictoryRoad3FWildMons:
|
||||||
db 43, RHYHORN
|
db 43, RHYHORN
|
||||||
db 43, GOLBAT
|
db 43, GOLBAT
|
||||||
db 44, GAVILLAIN
|
db 44, GAVILLAIN
|
||||||
db 44, SANDSLASH
|
db 50, CHANSEY ; Possible to Repel Trick, used for grinding.
|
||||||
db 44, PARASECT
|
db 44, PARASECT
|
||||||
db 45, HITMONCHAN ; LGPE Rare Spawn
|
db 45, HITMONCHAN ; LGPE Rare Spawn
|
||||||
end_grass_wildmons
|
end_grass_wildmons
|
||||||
|
|
|
||||||
|
|
@ -1,159 +0,0 @@
|
||||||
; super rod encounters
|
|
||||||
SuperRodData:
|
|
||||||
; map, fishing group
|
|
||||||
dbw PALLET_TOWN, .Group1
|
|
||||||
dbw VIRIDIAN_CITY, .Group1
|
|
||||||
dbw CERULEAN_CITY, .Group2
|
|
||||||
dbw VERMILION_CITY, .Group4
|
|
||||||
dbw CELADON_CITY, .Group13
|
|
||||||
dbw FUCHSIA_CITY, .Group6
|
|
||||||
dbw CINNABAR_ISLAND, .Group9
|
|
||||||
dbw CITRINE_CITY, .Group11
|
|
||||||
dbw ROUTE_4, .Group2
|
|
||||||
dbw ROUTE_6, .Group2
|
|
||||||
dbw ROUTE_10, .Group5
|
|
||||||
dbw ROUTE_11, .Group4
|
|
||||||
dbw ROUTE_12, .Group5
|
|
||||||
dbw ROUTE_13, .Group6
|
|
||||||
dbw ROUTE_17, .Group6
|
|
||||||
dbw ROUTE_18, .Group6
|
|
||||||
dbw ROUTE_19, .Group9
|
|
||||||
dbw ROUTE_20, .Group9
|
|
||||||
dbw ROUTE_21, .Group9
|
|
||||||
dbw ROUTE_22, .Group1
|
|
||||||
dbw ROUTE_23, .Group6
|
|
||||||
dbw ROUTE_24, .Group2
|
|
||||||
dbw ROUTE_25, .Group3
|
|
||||||
dbw BRUNSWICK_TRAIL, .Group11
|
|
||||||
dbw VERMILION_DOCK, .Group4
|
|
||||||
dbw VERMILION_FERRY_DOCK, .Group4
|
|
||||||
dbw CITRINE_FERRY_DOCK, .Group11
|
|
||||||
dbw SEAFOAM_ISLANDS_B3F, .Group9
|
|
||||||
dbw SEAFOAM_ISLANDS_B4F, .Group9
|
|
||||||
dbw SAFARI_ZONE_EAST, .Group7
|
|
||||||
dbw SAFARI_ZONE_NORTH, .Group7
|
|
||||||
dbw SAFARI_ZONE_WEST, .Group7
|
|
||||||
dbw SAFARI_ZONE_CENTER, .Group7
|
|
||||||
dbw CERULEAN_CAVE_2F, .Group12
|
|
||||||
dbw CERULEAN_CAVE_B1F, .Group12
|
|
||||||
dbw CERULEAN_CAVE_1F, .Group12
|
|
||||||
dbw SILPH_GAUNTLET_5F, .Group7
|
|
||||||
dbw ROCK_TUNNEL_1F, .Group5
|
|
||||||
dbw CELADON_UNIVERSITY_OUTSIDE, .Group13
|
|
||||||
dbw MT_MOON_CRATER, .Group12
|
|
||||||
dbw DIGLETTS_CAVE, .Group14
|
|
||||||
dbw BILLS_GARDEN, .Group8
|
|
||||||
dbw UNDERWATER_TUNNEL, .Group10
|
|
||||||
dbw GARNET_CAVERN_1F, .Group11
|
|
||||||
dbw GARNET_CAVERN_2F, .Group11
|
|
||||||
dbw GARNET_CAVERN_B1F, .Group11
|
|
||||||
dbw CINNABAR_VOLCANO_FLOORS, .Group15
|
|
||||||
dbw CINNABAR_VOLCANO, .Group15
|
|
||||||
db -1 ; end
|
|
||||||
|
|
||||||
; fishing groups
|
|
||||||
; number of monsters, followed by level/monster pairs
|
|
||||||
|
|
||||||
.Group1: ; Pallet, Viridian & Route 22
|
|
||||||
db 4
|
|
||||||
db 5, MAGIKARP
|
|
||||||
db 7, MAGIKARP
|
|
||||||
db 5, ORFRY
|
|
||||||
db 7, ORFRY
|
|
||||||
|
|
||||||
.Group2: ; Route 4, Cerulean, Route 24, Route 6
|
|
||||||
db 4
|
|
||||||
db 12, MAGIKARP
|
|
||||||
db 12, POLIWAG
|
|
||||||
db 12, ORFRY
|
|
||||||
db 12, PSYDUCK
|
|
||||||
|
|
||||||
.Group3: ; Route 25
|
|
||||||
db 4
|
|
||||||
db 12, MAGIKARP
|
|
||||||
db 12, POLIWAG
|
|
||||||
db 12, ORFRY
|
|
||||||
db 12, CHEEP
|
|
||||||
|
|
||||||
.Group4: ; Route 11, Vermilion
|
|
||||||
db 4
|
|
||||||
db 15, BLOTTLE
|
|
||||||
db 15, MAGIKARP
|
|
||||||
db 15, TENTACOOL
|
|
||||||
db 15, CHEEP
|
|
||||||
|
|
||||||
.Group5: ; Route 10, Route 12, Rock Tunnel
|
|
||||||
db 4
|
|
||||||
db 20, RIBBITO
|
|
||||||
db 20, POLIWAG
|
|
||||||
db 20, SLOWPOKE
|
|
||||||
db 20, KRABBY
|
|
||||||
|
|
||||||
.Group6: ; Route 13, Route 17, Route 18, Fuchsia, Route 23
|
|
||||||
db 4
|
|
||||||
db 25, HORSEA
|
|
||||||
db 25, POLIWHIRL
|
|
||||||
db 25, KRABBY
|
|
||||||
db 25, BLOTTLE
|
|
||||||
|
|
||||||
.Group7: ; Safari Zone
|
|
||||||
db 4
|
|
||||||
db 15, DRATINI
|
|
||||||
db 20, SLOWPOKE
|
|
||||||
db 25, KRABBY
|
|
||||||
db 25, WEIRDUCK
|
|
||||||
|
|
||||||
.Group8: ; Bill's Garden
|
|
||||||
db 4
|
|
||||||
db 50, SQUIRTLE
|
|
||||||
db 50, SQUIRTLE
|
|
||||||
db 50, DRATINI
|
|
||||||
db 50, DRATINI
|
|
||||||
|
|
||||||
.Group9: ; Cinnabar, Route 19-21, Seafoam Islands
|
|
||||||
db 4
|
|
||||||
db 30, STARYU
|
|
||||||
db 30, HORSEA
|
|
||||||
db 30, SHELLDER
|
|
||||||
db 30, GOLDEEN
|
|
||||||
|
|
||||||
.Group10: ; Underwater Tunnel
|
|
||||||
db 4
|
|
||||||
db 35, SHELLDER
|
|
||||||
db 35, STARYU
|
|
||||||
db 35, CROAKOZUNA
|
|
||||||
db 35, GOLDUCK
|
|
||||||
|
|
||||||
.Group11: ; Citrine, Brunswick, Garnet
|
|
||||||
db 4
|
|
||||||
db 50, KINGLER
|
|
||||||
db 50, SEADRA
|
|
||||||
db 50, PENDRAKEN
|
|
||||||
db 50, GYARADOS
|
|
||||||
|
|
||||||
.Group12: ; Cerulean Cave, Mt Moon Crater
|
|
||||||
db 4
|
|
||||||
db 50, SLOWBRO
|
|
||||||
db 50, SEAKING
|
|
||||||
db 50, GYARADOS
|
|
||||||
db 50, CROAKOZUNA
|
|
||||||
|
|
||||||
.Group13: ; Celadon
|
|
||||||
db 4
|
|
||||||
db 10, MAGIKARP
|
|
||||||
db 15, MAGIKARP
|
|
||||||
db 20, MAGIKARP
|
|
||||||
db 20, GRIMER
|
|
||||||
|
|
||||||
.Group14: ; Diglett's Cave
|
|
||||||
db 4
|
|
||||||
db 17, WIGLETT
|
|
||||||
db 18, WIGLETT
|
|
||||||
db 19, WIGLETT
|
|
||||||
db 20, WIGLETT
|
|
||||||
|
|
||||||
.Group15: ; Cinnabar Volcano
|
|
||||||
db 3
|
|
||||||
db 35, MAGMAR
|
|
||||||
db 37, MAGMAR
|
|
||||||
db 40, MAGMAR
|
|
||||||
|
|
@ -1936,6 +1936,7 @@ DrawPlayerHUDAndHPBar:
|
||||||
hlcoord 10, 7
|
hlcoord 10, 7
|
||||||
call CenterMonName
|
call CenterMonName
|
||||||
call PlaceString
|
call PlaceString
|
||||||
|
call PrintEXPBar
|
||||||
ld hl, wBattleMonSpecies
|
ld hl, wBattleMonSpecies
|
||||||
ld de, wLoadedMon
|
ld de, wLoadedMon
|
||||||
ld bc, wBattleMonDVs - wBattleMonSpecies
|
ld bc, wBattleMonDVs - wBattleMonSpecies
|
||||||
|
|
@ -7308,3 +7309,187 @@ MeltanIncrement:
|
||||||
MeltanFullJar:
|
MeltanFullJar:
|
||||||
text_far _MeltanFullJar
|
text_far _MeltanFullJar
|
||||||
text_end
|
text_end
|
||||||
|
|
||||||
|
PrintEXPBar:
|
||||||
|
call CalcEXPBarPixelLength
|
||||||
|
ld a, [hQuotient + 3] ; pixel length
|
||||||
|
ld [wEXPBarPixelLength], a
|
||||||
|
ld b, a
|
||||||
|
ld c, $08
|
||||||
|
ld d, $08
|
||||||
|
coord hl, 17, 11
|
||||||
|
.loop
|
||||||
|
ld a, b
|
||||||
|
sub c
|
||||||
|
jr nc, .skip
|
||||||
|
ld c, b
|
||||||
|
jr .loop
|
||||||
|
.skip
|
||||||
|
ld b, a
|
||||||
|
ld a, $c0
|
||||||
|
add c
|
||||||
|
.loop2
|
||||||
|
ld [hld], a
|
||||||
|
dec d
|
||||||
|
ret z
|
||||||
|
ld a, b
|
||||||
|
and a
|
||||||
|
jr nz, .loop
|
||||||
|
ld a, $c0
|
||||||
|
jr .loop2
|
||||||
|
|
||||||
|
CalcEXPBarPixelLength:
|
||||||
|
ld hl, wEXPBarKeepFullFlag
|
||||||
|
bit 0, [hl]
|
||||||
|
jr z, .start
|
||||||
|
res 0, [hl]
|
||||||
|
ld a, $40
|
||||||
|
ld [hQuotient + 3], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
.start
|
||||||
|
; get the base exp needed for the current level
|
||||||
|
ld a, [wPlayerBattleStatus3]
|
||||||
|
ld hl, wBattleMonSpecies
|
||||||
|
bit 3, a
|
||||||
|
jr z, .skip
|
||||||
|
ld hl, wPartyMon1
|
||||||
|
call BattleMonPartyAttr
|
||||||
|
.skip
|
||||||
|
ld a, [hl]
|
||||||
|
ld [wd0b5], a
|
||||||
|
call GetMonHeader
|
||||||
|
ld a, [wBattleMonLevel]
|
||||||
|
ld d, a
|
||||||
|
ld hl, CalcExperience
|
||||||
|
ld b, BANK(CalcExperience)
|
||||||
|
call Bankswitch
|
||||||
|
ld hl, hMultiplicand
|
||||||
|
ld de, wEXPBarBaseEXP
|
||||||
|
ld a, [hli]
|
||||||
|
ld [de], a
|
||||||
|
inc de
|
||||||
|
ld a, [hli]
|
||||||
|
ld [de], a
|
||||||
|
inc de
|
||||||
|
ld a, [hl]
|
||||||
|
ld [de], a
|
||||||
|
|
||||||
|
; get the exp needed to gain a level
|
||||||
|
ld a, [wBattleMonLevel]
|
||||||
|
ld d, a
|
||||||
|
inc d
|
||||||
|
ld hl, CalcExperience
|
||||||
|
ld b, BANK(CalcExperience)
|
||||||
|
call Bankswitch
|
||||||
|
|
||||||
|
; get the address of the active Pokemon's current experience
|
||||||
|
ld hl, wPartyMon1Exp
|
||||||
|
call BattleMonPartyAttr
|
||||||
|
|
||||||
|
; current exp - base exp
|
||||||
|
ld b, h
|
||||||
|
ld c, l
|
||||||
|
ld hl, wEXPBarBaseEXP
|
||||||
|
ld de, wEXPBarCurEXP
|
||||||
|
call SubThreeByteNum
|
||||||
|
|
||||||
|
; exp needed - base exp
|
||||||
|
ld bc, hMultiplicand
|
||||||
|
ld hl, wEXPBarBaseEXP
|
||||||
|
ld de, wEXPBarNeededEXP
|
||||||
|
call SubThreeByteNum
|
||||||
|
|
||||||
|
; make the divisor an 8-bit number
|
||||||
|
ld hl, wEXPBarNeededEXP
|
||||||
|
ld de, wEXPBarCurEXP + 1
|
||||||
|
ld a, [hli]
|
||||||
|
and a
|
||||||
|
jr z, .twoBytes
|
||||||
|
ld a, [hli]
|
||||||
|
ld [hld], a
|
||||||
|
dec hl
|
||||||
|
ld a, [hli]
|
||||||
|
ld [hld], a
|
||||||
|
ld a, [de]
|
||||||
|
inc de
|
||||||
|
ld [de], a
|
||||||
|
dec de
|
||||||
|
dec de
|
||||||
|
ld a, [de]
|
||||||
|
inc de
|
||||||
|
ld [de], a
|
||||||
|
dec de
|
||||||
|
xor a
|
||||||
|
ld [hli], a
|
||||||
|
ld [de], a
|
||||||
|
inc de
|
||||||
|
.twoBytes
|
||||||
|
ld a, [hl]
|
||||||
|
and a
|
||||||
|
jr z, .oneByte
|
||||||
|
srl a
|
||||||
|
ld [hli], a
|
||||||
|
ld a, [hl]
|
||||||
|
rr a
|
||||||
|
ld [hld], a
|
||||||
|
ld a, [de]
|
||||||
|
srl a
|
||||||
|
ld [de], a
|
||||||
|
inc de
|
||||||
|
ld a, [de]
|
||||||
|
rr a
|
||||||
|
ld [de], a
|
||||||
|
dec de
|
||||||
|
jr .twoBytes
|
||||||
|
.oneByte
|
||||||
|
|
||||||
|
; current exp * (8 tiles * 8 pixels)
|
||||||
|
ld hl, hMultiplicand
|
||||||
|
ld de, wEXPBarCurEXP
|
||||||
|
ld a, [de]
|
||||||
|
inc de
|
||||||
|
ld [hli], a
|
||||||
|
ld a, [de]
|
||||||
|
inc de
|
||||||
|
ld [hli], a
|
||||||
|
ld a, [de]
|
||||||
|
ld [hl], a
|
||||||
|
ld a, $40
|
||||||
|
ld [hMultiplier], a
|
||||||
|
call Multiply
|
||||||
|
|
||||||
|
; product / needed exp = pixel length
|
||||||
|
ld a, [wEXPBarNeededEXP + 2]
|
||||||
|
ld [hDivisor], a
|
||||||
|
ld b, $04
|
||||||
|
jp Divide
|
||||||
|
|
||||||
|
; calculates the three byte number starting at [bc]
|
||||||
|
; minus the three byte number starting at [hl]
|
||||||
|
; and stores it into the three bytes starting at [de]
|
||||||
|
; assumes that [hl] is smaller than [bc]
|
||||||
|
SubThreeByteNum:
|
||||||
|
call .subByte
|
||||||
|
call .subByte
|
||||||
|
.subByte
|
||||||
|
ld a, [bc]
|
||||||
|
inc bc
|
||||||
|
sub [hl]
|
||||||
|
inc hl
|
||||||
|
ld [de], a
|
||||||
|
jr nc, .noCarry
|
||||||
|
dec de
|
||||||
|
ld a, [de]
|
||||||
|
dec a
|
||||||
|
ld [de], a
|
||||||
|
inc de
|
||||||
|
.noCarry
|
||||||
|
inc de
|
||||||
|
ret
|
||||||
|
|
||||||
|
; return the address of the BattleMon's party struct attribute in hl
|
||||||
|
BattleMonPartyAttr:
|
||||||
|
ld a, [wPlayerMonNumber]
|
||||||
|
ld bc, wPartyMon2 - wPartyMon1
|
||||||
|
jp AddNTimes
|
||||||
|
|
|
||||||
|
|
@ -804,7 +804,6 @@ ThrashPetalDanceEffect:
|
||||||
inc a
|
inc a
|
||||||
ld [de], a ; set thrash/petal dance counter to 2 or 3 at random
|
ld [de], a ; set thrash/petal dance counter to 2 or 3 at random
|
||||||
ldh a, [hWhoseTurn]
|
ldh a, [hWhoseTurn]
|
||||||
add SHRINKING_SQUARE_ANIM
|
|
||||||
jp PlayBattleAnimation2
|
jp PlayBattleAnimation2
|
||||||
|
|
||||||
SwitchAndTeleportEffect:
|
SwitchAndTeleportEffect:
|
||||||
|
|
|
||||||
|
|
@ -167,6 +167,7 @@ GainExperience:
|
||||||
xor a ; PLAYER_PARTY_DATA
|
xor a ; PLAYER_PARTY_DATA
|
||||||
ld [wMonDataLocation], a
|
ld [wMonDataLocation], a
|
||||||
call LoadMonData
|
call LoadMonData
|
||||||
|
call AnimateEXPBar
|
||||||
pop hl
|
pop hl
|
||||||
ld bc, wPartyMon1Level - wPartyMon1Exp
|
ld bc, wPartyMon1Level - wPartyMon1Exp
|
||||||
add hl, bc
|
add hl, bc
|
||||||
|
|
@ -177,6 +178,7 @@ GainExperience:
|
||||||
ld [wTempLevel], a
|
ld [wTempLevel], a
|
||||||
cp d
|
cp d
|
||||||
jp z, .nextMon ; if level didn't change, go to next mon
|
jp z, .nextMon ; if level didn't change, go to next mon
|
||||||
|
call KeepEXPBarFull
|
||||||
ld a, [wCurEnemyLVL]
|
ld a, [wCurEnemyLVL]
|
||||||
push af
|
push af
|
||||||
push hl
|
push hl
|
||||||
|
|
@ -399,3 +401,71 @@ GrewLevelText:
|
||||||
text_far _GrewLevelText
|
text_far _GrewLevelText
|
||||||
sound_level_up
|
sound_level_up
|
||||||
text_end
|
text_end
|
||||||
|
|
||||||
|
AnimateEXPBarAgain:
|
||||||
|
call IsCurrentMonBattleMon
|
||||||
|
ret nz
|
||||||
|
xor a
|
||||||
|
ld [wEXPBarPixelLength], a
|
||||||
|
coord hl, 17, 11
|
||||||
|
ld a, $c0
|
||||||
|
ld c, $08
|
||||||
|
.loop
|
||||||
|
ld [hld], a
|
||||||
|
dec c
|
||||||
|
jr nz, .loop
|
||||||
|
AnimateEXPBar:
|
||||||
|
call IsCurrentMonBattleMon
|
||||||
|
ret nz
|
||||||
|
ld a, SFX_HEAL_HP
|
||||||
|
call PlaySoundWaitForCurrent
|
||||||
|
ld hl, CalcEXPBarPixelLength
|
||||||
|
ld b, BANK(CalcEXPBarPixelLength)
|
||||||
|
call Bankswitch
|
||||||
|
ld hl, wEXPBarPixelLength
|
||||||
|
ld a, [hl]
|
||||||
|
ld b, a
|
||||||
|
ld a, [hQuotient + 3]
|
||||||
|
ld [hl], a
|
||||||
|
sub b
|
||||||
|
jr z, .done
|
||||||
|
ld b, a
|
||||||
|
ld c, $08
|
||||||
|
coord hl, 17, 11
|
||||||
|
.loop1
|
||||||
|
ld a, [hl]
|
||||||
|
cp $c8
|
||||||
|
jr nz, .loop2
|
||||||
|
dec hl
|
||||||
|
dec c
|
||||||
|
jr z, .done
|
||||||
|
jr .loop1
|
||||||
|
.loop2
|
||||||
|
inc a
|
||||||
|
ld [hl], a
|
||||||
|
call DelayFrame
|
||||||
|
dec b
|
||||||
|
jr z, .done
|
||||||
|
jr .loop1
|
||||||
|
.done
|
||||||
|
ld bc, $08
|
||||||
|
coord hl, 10, 11
|
||||||
|
ld de, wTileMapBackup + 10 + 11 * 20
|
||||||
|
call CopyData
|
||||||
|
ld c, $20
|
||||||
|
jp DelayFrames
|
||||||
|
|
||||||
|
KeepEXPBarFull:
|
||||||
|
call IsCurrentMonBattleMon
|
||||||
|
ret nz
|
||||||
|
ld a, [wEXPBarKeepFullFlag]
|
||||||
|
set 0, a
|
||||||
|
ld [wEXPBarKeepFullFlag], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
IsCurrentMonBattleMon:
|
||||||
|
ld a, [wPlayerMonNumber]
|
||||||
|
ld b, a
|
||||||
|
ld a, [wWhichPokemon]
|
||||||
|
cp b
|
||||||
|
ret
|
||||||
|
|
|
||||||
|
|
@ -196,7 +196,7 @@ DebugItemsList:
|
||||||
db CARD_KEY, 1
|
db CARD_KEY, 1
|
||||||
db S_S_TICKET, 1
|
db S_S_TICKET, 1
|
||||||
db CITRINE_PASS, 1
|
db CITRINE_PASS, 1
|
||||||
db SUPER_ROD, 1
|
db FISHING_ROD, 1
|
||||||
db COIN_CASE, 1
|
db COIN_CASE, 1
|
||||||
db POKE_FLUTE, 1
|
db POKE_FLUTE, 1
|
||||||
db SILPH_SCOPE, 1
|
db SILPH_SCOPE, 1
|
||||||
|
|
|
||||||
|
|
@ -72,7 +72,7 @@ ItemUsePtrTable:
|
||||||
dw ItemUseMedicine ; REVIVE
|
dw ItemUseMedicine ; REVIVE
|
||||||
dw ItemUseMedicine ; MAX_REVIVE
|
dw ItemUseMedicine ; MAX_REVIVE
|
||||||
dw ItemUseGuardSpec ; GUARD_SPEC
|
dw ItemUseGuardSpec ; GUARD_SPEC
|
||||||
dw ItemUseSuperRepel ; SUPER_REPL
|
dw ItemUseSuperRepel ; SUPER_REPEL
|
||||||
dw ItemUseMaxRepel ; MAX_REPEL
|
dw ItemUseMaxRepel ; MAX_REPEL
|
||||||
dw ItemUseDireHit ; DIRE_HIT
|
dw ItemUseDireHit ; DIRE_HIT
|
||||||
dw UnusableItem ; COIN
|
dw UnusableItem ; COIN
|
||||||
|
|
@ -92,10 +92,10 @@ ItemUsePtrTable:
|
||||||
dw ItemUsePokeflute ; POKE_FLUTE
|
dw ItemUsePokeflute ; POKE_FLUTE
|
||||||
dw UnusableItem ; LIFT_KEY
|
dw UnusableItem ; LIFT_KEY
|
||||||
dw UnusableItem ; EXP_ALL
|
dw UnusableItem ; EXP_ALL
|
||||||
dw ItemUseCandyJar ; was OLD_ROD, now CANDY_JAR
|
dw ItemUseCandyJar ; was OLD_ROD, now CANDY_JAR
|
||||||
dw UnusableItem ; was GOOD_ROD, now BOTTLE_CAP
|
dw UnusableItem ; was GOOD_ROD, now BOTTLE_CAP
|
||||||
dw ItemUseSuperRod ; SUPER_ROD
|
dw ItemUseFishingRod ; FISHING_ROD
|
||||||
dw ItemUsePPUp ; PP_UP (real one)
|
dw ItemUsePPUp ; PP_UP
|
||||||
dw ItemUsePPRestore ; ETHER
|
dw ItemUsePPRestore ; ETHER
|
||||||
dw ItemUsePPRestore ; MAX_ETHER
|
dw ItemUsePPRestore ; MAX_ETHER
|
||||||
dw ItemUsePPRestore ; ELIXER
|
dw ItemUsePPRestore ; ELIXER
|
||||||
|
|
@ -110,11 +110,11 @@ ItemUsePtrTable:
|
||||||
dw ItemUseEvoStone ; UP_GRADE
|
dw ItemUseEvoStone ; UP_GRADE
|
||||||
dw ItemUseEvoStone ; METAL_COAT
|
dw ItemUseEvoStone ; METAL_COAT
|
||||||
dw ItemUseMysteryBox ; MYSTERY_BOX
|
dw ItemUseMysteryBox ; MYSTERY_BOX
|
||||||
dw UnusableItem ; TEA
|
dw UnusableItem ; TEA
|
||||||
dw ItemUseLetter ; SILPHLETTER
|
dw ItemUseLetter ; SILPHLETTER
|
||||||
dw UnusableItem ; FLOOR_B2F
|
dw UnusableItem ; FLOOR_B2F
|
||||||
dw UnusableItem ; FLOOR_B1F
|
dw UnusableItem ; FLOOR_B1F
|
||||||
dw UnusableItem ; FLOOR_1F
|
dw UnusableItem ; FLOOR_1F
|
||||||
dw UnusableItem ; FLOOR_2F
|
dw UnusableItem ; FLOOR_2F
|
||||||
dw UnusableItem ; FLOOR_3F
|
dw UnusableItem ; FLOOR_3F
|
||||||
dw UnusableItem ; FLOOR_4F
|
dw UnusableItem ; FLOOR_4F
|
||||||
|
|
@ -782,8 +782,17 @@ ItemUseLapras:
|
||||||
ld a, 2
|
ld a, 2
|
||||||
ld [wWalkBikeSurfState], a ; change player state to surfing
|
ld [wWalkBikeSurfState], a ; change player state to surfing
|
||||||
call PlayDefaultMusic ; play surfing music
|
call PlayDefaultMusic ; play surfing music
|
||||||
|
|
||||||
|
; no jimmy i will NOT make a new item
|
||||||
|
ld hl, SurfingGotOnLaprasText
|
||||||
|
ld a, [wSurfMonItemSwitch] ; check if the mon item switch has been set
|
||||||
|
and a
|
||||||
|
jr z, .skip
|
||||||
|
|
||||||
ld hl, SurfingGotOnText
|
ld hl, SurfingGotOnText
|
||||||
|
.skip ; now shut the fuck up
|
||||||
jp PrintText
|
jp PrintText
|
||||||
|
|
||||||
.tryToStopSurfing
|
.tryToStopSurfing
|
||||||
xor a
|
xor a
|
||||||
ldh [hSpriteIndexOrTextID], a
|
ldh [hSpriteIndexOrTextID], a
|
||||||
|
|
@ -851,6 +860,10 @@ SurfingGotOnText:
|
||||||
text_far _SurfingGotOnText
|
text_far _SurfingGotOnText
|
||||||
text_end
|
text_end
|
||||||
|
|
||||||
|
SurfingGotOnLaprasText:
|
||||||
|
text_far _SurfingGotOnLaprasText
|
||||||
|
text_end
|
||||||
|
|
||||||
SurfingNoPlaceToGetOffText:
|
SurfingNoPlaceToGetOffText:
|
||||||
text_far _SurfingNoPlaceToGetOffText
|
text_far _SurfingNoPlaceToGetOffText
|
||||||
text_end
|
text_end
|
||||||
|
|
@ -1986,16 +1999,31 @@ CoinCaseNumCoinsText:
|
||||||
|
|
||||||
;INCLUDE "data/wild/good_rod.asm"
|
;INCLUDE "data/wild/good_rod.asm"
|
||||||
|
|
||||||
ItemUseSuperRod:
|
ItemUseFishingRod:
|
||||||
call FishingInit
|
call FishingInit
|
||||||
jp c, ItemUseNotTime
|
jp c, ItemUseNotTime
|
||||||
call ReadSuperRodData
|
call ReadFishingRodData
|
||||||
ld a, e
|
ld c, e
|
||||||
|
ld b, d
|
||||||
|
ld a, $2
|
||||||
|
ld [wRodResponse], a
|
||||||
|
ld a, c
|
||||||
|
and a ; are there fish in the map?
|
||||||
|
jr z, DoNotGenerateFishingEncounter ; if not, do not generate an encounter
|
||||||
|
ld a, $1
|
||||||
|
ld [wRodResponse], a
|
||||||
|
call Random
|
||||||
|
and $1
|
||||||
|
jr nz, RodResponse
|
||||||
|
xor a
|
||||||
|
ld [wRodResponse], a
|
||||||
|
jr DoNotGenerateFishingEncounter
|
||||||
|
|
||||||
RodResponse:
|
RodResponse:
|
||||||
ld [wRodResponse], a
|
ld [wRodResponse], a
|
||||||
|
|
||||||
dec a ; is there a bite?
|
dec a ; is there a bite?
|
||||||
jr nz, .next
|
jr nz, DoNotGenerateFishingEncounter
|
||||||
; if yes, store level and species data
|
; if yes, store level and species data
|
||||||
ld a, 1
|
ld a, 1
|
||||||
ld [wMoveMissed], a
|
ld [wMoveMissed], a
|
||||||
|
|
@ -2004,7 +2032,7 @@ RodResponse:
|
||||||
ld a, c ; species
|
ld a, c ; species
|
||||||
ld [wCurOpponent], a
|
ld [wCurOpponent], a
|
||||||
|
|
||||||
.next
|
DoNotGenerateFishingEncounter:
|
||||||
ld hl, wWalkBikeSurfState
|
ld hl, wWalkBikeSurfState
|
||||||
ld a, [hl] ; store the value in a
|
ld a, [hl] ; store the value in a
|
||||||
push af
|
push af
|
||||||
|
|
@ -2029,7 +2057,7 @@ FishingInit:
|
||||||
ret c
|
ret c
|
||||||
ld a, [wWalkBikeSurfState]
|
ld a, [wWalkBikeSurfState]
|
||||||
cp 2 ; Surfing?
|
cp 2 ; Surfing?
|
||||||
jr z, .surfing
|
jr z, .cannotFish
|
||||||
call ItemUseReloadOverworldData
|
call ItemUseReloadOverworldData
|
||||||
ld hl, ItemUseText00
|
ld hl, ItemUseText00
|
||||||
call PrintText
|
call PrintText
|
||||||
|
|
@ -2039,7 +2067,7 @@ FishingInit:
|
||||||
call DelayFrames
|
call DelayFrames
|
||||||
and a
|
and a
|
||||||
ret
|
ret
|
||||||
.surfing
|
.cannotFish
|
||||||
scf ; can't fish when surfing
|
scf ; can't fish when surfing
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
@ -2971,52 +2999,47 @@ IsNextTileShoreOrWater:
|
||||||
|
|
||||||
INCLUDE "data/tilesets/water_tilesets.asm"
|
INCLUDE "data/tilesets/water_tilesets.asm"
|
||||||
|
|
||||||
ReadSuperRodData:
|
ReadFishingRodData:
|
||||||
; return e = 2 if no fish on this map
|
|
||||||
; return e = 1 if a bite, bc = level,species
|
|
||||||
; return e = 0 if no bite
|
|
||||||
ld a, [wCurMap]
|
ld a, [wCurMap]
|
||||||
ld de, 3 ; each fishing group is three bytes wide
|
|
||||||
ld hl, SuperRodData
|
|
||||||
call IsInArray
|
|
||||||
jr c, .ReadFishingGroup
|
|
||||||
ld e, $2 ; $2 if no fishing groups found
|
|
||||||
ret
|
|
||||||
|
|
||||||
.ReadFishingGroup
|
|
||||||
; hl points to the fishing group entry in the index
|
|
||||||
inc hl ; skip map id
|
|
||||||
|
|
||||||
; read fishing group address
|
|
||||||
ld a, [hli]
|
|
||||||
ld h, [hl]
|
|
||||||
ld l, a
|
|
||||||
|
|
||||||
ld b, [hl] ; how many mons in group
|
|
||||||
inc hl ; point to data
|
|
||||||
ld e, $0 ; no bite yet
|
|
||||||
|
|
||||||
.RandomLoop
|
|
||||||
call Random
|
|
||||||
srl a
|
|
||||||
ret c ; 50% chance of no battle
|
|
||||||
|
|
||||||
and %11 ; 2-bit random number
|
|
||||||
cp b
|
|
||||||
jr nc, .RandomLoop ; if a is greater than the number of mons, regenerate
|
|
||||||
|
|
||||||
; get the mon
|
|
||||||
add a
|
|
||||||
ld c, a
|
ld c, a
|
||||||
ld b, $0
|
ld hl, FishingRodSlots
|
||||||
add hl, bc
|
.loop
|
||||||
ld b, [hl] ; level
|
ld a, [hli]
|
||||||
inc hl
|
cp $ff
|
||||||
ld c, [hl] ; species
|
jr z, .notfound
|
||||||
ld e, $1 ; $1 if there's a bite
|
cp c
|
||||||
|
jr z, .found
|
||||||
|
ld de, $8
|
||||||
|
add hl, de
|
||||||
|
jr .loop
|
||||||
|
.found
|
||||||
|
call GenerateRandomFishingEncounter
|
||||||
|
ret
|
||||||
|
.notfound
|
||||||
|
ld de, $0
|
||||||
ret
|
ret
|
||||||
|
|
||||||
INCLUDE "data/wild/super_rod.asm"
|
GenerateRandomFishingEncounter:
|
||||||
|
call Random
|
||||||
|
cp $66
|
||||||
|
jr c, .asm_f5ed6
|
||||||
|
inc hl
|
||||||
|
inc hl
|
||||||
|
cp $b2
|
||||||
|
jr c, .asm_f5ed6
|
||||||
|
inc hl
|
||||||
|
inc hl
|
||||||
|
cp $e5
|
||||||
|
jr c, .asm_f5ed6
|
||||||
|
inc hl
|
||||||
|
inc hl
|
||||||
|
.asm_f5ed6
|
||||||
|
ld e, [hl]
|
||||||
|
inc hl
|
||||||
|
ld d, [hl]
|
||||||
|
ret
|
||||||
|
|
||||||
|
INCLUDE "data/wild/fishing_rod.asm"
|
||||||
|
|
||||||
; reloads map view and processes sprite data
|
; reloads map view and processes sprite data
|
||||||
; for items that cause the overworld to be displayed
|
; for items that cause the overworld to be displayed
|
||||||
|
|
|
||||||
|
|
@ -72,6 +72,8 @@ ExitPlayerPC:
|
||||||
call WaitForSoundToFinish
|
call WaitForSoundToFinish
|
||||||
.next
|
.next
|
||||||
ld hl, wFlags_0xcd60
|
ld hl, wFlags_0xcd60
|
||||||
|
res 2, [hl]
|
||||||
|
res 4, [hl]
|
||||||
res 5, [hl]
|
res 5, [hl]
|
||||||
call LoadScreenTilesFromBuffer2
|
call LoadScreenTilesFromBuffer2
|
||||||
xor a
|
xor a
|
||||||
|
|
@ -94,6 +96,9 @@ PlayerPCDeposit:
|
||||||
call PrintText
|
call PrintText
|
||||||
jp PlayerPCMenu
|
jp PlayerPCMenu
|
||||||
.loop
|
.loop
|
||||||
|
ld hl, wFlags_0xcd60
|
||||||
|
set 2, [hl]
|
||||||
|
res 4, [hl]
|
||||||
ld hl, WhatToDepositText
|
ld hl, WhatToDepositText
|
||||||
call PrintText
|
call PrintText
|
||||||
ld hl, wNumBagItems
|
ld hl, wNumBagItems
|
||||||
|
|
@ -106,6 +111,7 @@ PlayerPCDeposit:
|
||||||
ld a, ITEMLISTMENU
|
ld a, ITEMLISTMENU
|
||||||
ld [wListMenuID], a
|
ld [wListMenuID], a
|
||||||
call DisplayListMenuID
|
call DisplayListMenuID
|
||||||
|
jp nz, .sortItems
|
||||||
jp c, PlayerPCMenu
|
jp c, PlayerPCMenu
|
||||||
call IsKeyItem
|
call IsKeyItem
|
||||||
ld a, 1
|
ld a, 1
|
||||||
|
|
@ -120,6 +126,9 @@ PlayerPCDeposit:
|
||||||
cp $ff
|
cp $ff
|
||||||
jp z, .loop
|
jp z, .loop
|
||||||
.next
|
.next
|
||||||
|
ld hl, wFlags_0xcd60
|
||||||
|
res 2, [hl]
|
||||||
|
res 4, [hl]
|
||||||
ld hl, wNumBoxItems
|
ld hl, wNumBoxItems
|
||||||
call AddItemToInventory
|
call AddItemToInventory
|
||||||
jr c, .roomAvailable
|
jr c, .roomAvailable
|
||||||
|
|
@ -136,7 +145,9 @@ PlayerPCDeposit:
|
||||||
ld hl, ItemWasStoredText
|
ld hl, ItemWasStoredText
|
||||||
call PrintText
|
call PrintText
|
||||||
jp .loop
|
jp .loop
|
||||||
|
.sortItems
|
||||||
|
call SortItems
|
||||||
|
jp .loop
|
||||||
PlayerPCWithdraw:
|
PlayerPCWithdraw:
|
||||||
xor a
|
xor a
|
||||||
ld [wCurrentMenuItem], a
|
ld [wCurrentMenuItem], a
|
||||||
|
|
@ -148,6 +159,9 @@ PlayerPCWithdraw:
|
||||||
call PrintText
|
call PrintText
|
||||||
jp PlayerPCMenu
|
jp PlayerPCMenu
|
||||||
.loop
|
.loop
|
||||||
|
ld hl, wFlags_0xcd60
|
||||||
|
set 2, [hl]
|
||||||
|
set 4, [hl]
|
||||||
ld hl, WhatToWithdrawText
|
ld hl, WhatToWithdrawText
|
||||||
call PrintText
|
call PrintText
|
||||||
ld hl, wNumBoxItems
|
ld hl, wNumBoxItems
|
||||||
|
|
@ -160,6 +174,7 @@ PlayerPCWithdraw:
|
||||||
ld a, ITEMLISTMENU
|
ld a, ITEMLISTMENU
|
||||||
ld [wListMenuID], a
|
ld [wListMenuID], a
|
||||||
call DisplayListMenuID
|
call DisplayListMenuID
|
||||||
|
jp nz, .sortItems
|
||||||
jp c, PlayerPCMenu
|
jp c, PlayerPCMenu
|
||||||
call IsKeyItem
|
call IsKeyItem
|
||||||
ld a, 1
|
ld a, 1
|
||||||
|
|
@ -174,6 +189,9 @@ PlayerPCWithdraw:
|
||||||
cp $ff
|
cp $ff
|
||||||
jp z, .loop
|
jp z, .loop
|
||||||
.next
|
.next
|
||||||
|
ld hl, wFlags_0xcd60
|
||||||
|
res 2, [hl]
|
||||||
|
res 4, [hl]
|
||||||
ld hl, wNumBagItems
|
ld hl, wNumBagItems
|
||||||
call AddItemToInventory
|
call AddItemToInventory
|
||||||
jr c, .roomAvailable
|
jr c, .roomAvailable
|
||||||
|
|
@ -190,7 +208,9 @@ PlayerPCWithdraw:
|
||||||
ld hl, WithdrewItemText
|
ld hl, WithdrewItemText
|
||||||
call PrintText
|
call PrintText
|
||||||
jp .loop
|
jp .loop
|
||||||
|
.sortItems
|
||||||
|
call SortItems
|
||||||
|
jp .loop
|
||||||
PlayerPCToss:
|
PlayerPCToss:
|
||||||
xor a
|
xor a
|
||||||
ld [wCurrentMenuItem], a
|
ld [wCurrentMenuItem], a
|
||||||
|
|
@ -202,6 +222,9 @@ PlayerPCToss:
|
||||||
call PrintText
|
call PrintText
|
||||||
jp PlayerPCMenu
|
jp PlayerPCMenu
|
||||||
.loop
|
.loop
|
||||||
|
ld hl, wFlags_0xcd60
|
||||||
|
set 2, [hl]
|
||||||
|
set 4, [hl]
|
||||||
ld hl, WhatToTossText
|
ld hl, WhatToTossText
|
||||||
call PrintText
|
call PrintText
|
||||||
ld hl, wNumBoxItems
|
ld hl, wNumBoxItems
|
||||||
|
|
@ -216,6 +239,7 @@ PlayerPCToss:
|
||||||
push hl
|
push hl
|
||||||
call DisplayListMenuID
|
call DisplayListMenuID
|
||||||
pop hl
|
pop hl
|
||||||
|
jp nz, .sortItems
|
||||||
jp c, PlayerPCMenu
|
jp c, PlayerPCMenu
|
||||||
push hl
|
push hl
|
||||||
call IsKeyItem
|
call IsKeyItem
|
||||||
|
|
@ -237,8 +261,14 @@ PlayerPCToss:
|
||||||
cp $ff
|
cp $ff
|
||||||
jp z, .loop
|
jp z, .loop
|
||||||
.next
|
.next
|
||||||
|
ld hl, wFlags_0xcd60
|
||||||
|
res 2, [hl]
|
||||||
|
res 4, [hl]
|
||||||
call TossItem ; disallows tossing key items
|
call TossItem ; disallows tossing key items
|
||||||
jp .loop
|
jp .loop
|
||||||
|
.sortItems
|
||||||
|
call SortItems
|
||||||
|
jp .loop
|
||||||
|
|
||||||
PlayersPCMenuEntries:
|
PlayersPCMenuEntries:
|
||||||
db "WITHDRAW ITEM"
|
db "WITHDRAW ITEM"
|
||||||
|
|
|
||||||
|
|
@ -165,6 +165,14 @@ StartMenu_Pokemon::
|
||||||
bit 1, [hl]
|
bit 1, [hl]
|
||||||
res 1, [hl]
|
res 1, [hl]
|
||||||
jp z, .loop
|
jp z, .loop
|
||||||
|
|
||||||
|
; this makes it so the pokemon shows up instead of pocket lapras
|
||||||
|
; no visible effect when using surf, it's actually for the item effect later
|
||||||
|
; it makes it so I don't have to make a craptastic new function that falls through, which would require a new item, which is so unimaginably cringe i would fall off my chair and die
|
||||||
|
; - pvk
|
||||||
|
ld a, 1
|
||||||
|
ld [wSurfMonItemSwitch], a
|
||||||
|
|
||||||
ld a, POCKET_LAPRAS
|
ld a, POCKET_LAPRAS
|
||||||
ld [wcf91], a
|
ld [wcf91], a
|
||||||
ld [wPseudoItemID], a
|
ld [wPseudoItemID], a
|
||||||
|
|
@ -319,6 +327,9 @@ StartMenu_Item::
|
||||||
call PrintText
|
call PrintText
|
||||||
jr .exitMenu
|
jr .exitMenu
|
||||||
.notInCableClubRoom
|
.notInCableClubRoom
|
||||||
|
ld hl,wFlags_0xcd60
|
||||||
|
set 2, [hl]
|
||||||
|
res 4, [hl]
|
||||||
ld bc, wNumBagItems
|
ld bc, wNumBagItems
|
||||||
ld hl, wListPointer
|
ld hl, wListPointer
|
||||||
ld a, c
|
ld a, c
|
||||||
|
|
@ -336,6 +347,9 @@ StartMenu_Item::
|
||||||
ld [wBagSavedMenuItem], a
|
ld [wBagSavedMenuItem], a
|
||||||
jr nc, .choseItem
|
jr nc, .choseItem
|
||||||
.exitMenu
|
.exitMenu
|
||||||
|
ld hl,wFlags_0xcd60
|
||||||
|
res 2, [hl]
|
||||||
|
res 4, [hl]
|
||||||
call LoadScreenTilesFromBuffer2 ; restore saved screen
|
call LoadScreenTilesFromBuffer2 ; restore saved screen
|
||||||
call LoadTextBoxTilePatterns
|
call LoadTextBoxTilePatterns
|
||||||
call UpdateSprites
|
call UpdateSprites
|
||||||
|
|
|
||||||
|
|
@ -179,7 +179,7 @@ SortItems::
|
||||||
ld de, 0
|
ld de, 0
|
||||||
ld hl, ItemSortList
|
ld hl, ItemSortList
|
||||||
ld b, [hl] ; This is the first item to check for
|
ld b, [hl] ; This is the first item to check for
|
||||||
ld hl, wBagItems
|
call .ldHLbagorbox
|
||||||
ld c, 0 ; Relative to wBagItems, this is where we'd like to begin swapping
|
ld c, 0 ; Relative to wBagItems, this is where we'd like to begin swapping
|
||||||
.loopCurrItemInBag
|
.loopCurrItemInBag
|
||||||
ld a, [hl] ; Load the value of hl to a (which is an item number) and Increments to the quantity
|
ld a, [hl] ; Load the value of hl to a (which is an item number) and Increments to the quantity
|
||||||
|
|
@ -196,7 +196,7 @@ SortItems::
|
||||||
ld hl, ItemSortList
|
ld hl, ItemSortList
|
||||||
add hl, de
|
add hl, de
|
||||||
ld b, [hl]
|
ld b, [hl]
|
||||||
ld hl, wBagItems ; Resets hl to start at the beginning of the bag
|
call .ldHLbagorbox ; Resets hl to start at the beginning of the bag
|
||||||
ld a, b
|
ld a, b
|
||||||
cp -1 ; Check if we got through all of the items, to the last one
|
cp -1 ; Check if we got through all of the items, to the last one
|
||||||
jr z, .finishedSwapping
|
jr z, .finishedSwapping
|
||||||
|
|
@ -207,7 +207,7 @@ SortItems::
|
||||||
push de
|
push de
|
||||||
ld d, h
|
ld d, h
|
||||||
ld e, l
|
ld e, l
|
||||||
ld hl, wBagItems
|
call .ldHLbagorbox
|
||||||
ld a, b
|
ld a, b
|
||||||
ld b, 0
|
ld b, 0
|
||||||
add hl, bc ; hl now holds where we'd like to swap to
|
add hl, bc ; hl now holds where we'd like to swap to
|
||||||
|
|
@ -240,6 +240,15 @@ SortItems::
|
||||||
pop de
|
pop de
|
||||||
jr .findNextItem
|
jr .findNextItem
|
||||||
|
|
||||||
|
;Allow for sorting both the bag and the item PC box
|
||||||
|
.ldHLbagorbox
|
||||||
|
ld hl, wBagItems
|
||||||
|
ld a, [wFlags_0xcd60]
|
||||||
|
bit 4, a
|
||||||
|
ret z
|
||||||
|
ld hl, wBoxItems
|
||||||
|
ret
|
||||||
|
|
||||||
SortItemsText::
|
SortItemsText::
|
||||||
text_far _SortItemsText
|
text_far _SortItemsText
|
||||||
db "@"
|
db "@"
|
||||||
|
|
@ -255,7 +264,7 @@ NothingToSort::
|
||||||
ItemSortList::
|
ItemSortList::
|
||||||
; Used Key Items
|
; Used Key Items
|
||||||
db BICYCLE
|
db BICYCLE
|
||||||
db SUPER_ROD
|
db FISHING_ROD
|
||||||
db POCKET_LAPRAS
|
db POCKET_LAPRAS
|
||||||
db ITEMFINDER
|
db ITEMFINDER
|
||||||
db TOWN_MAP
|
db TOWN_MAP
|
||||||
|
|
|
||||||
|
|
@ -129,13 +129,13 @@ DisplayTitleScreen:
|
||||||
call Random
|
call Random
|
||||||
ldh a, [hRandomSub]
|
ldh a, [hRandomSub]
|
||||||
cp 129
|
cp 129
|
||||||
jr c, .notshocks
|
jr c, .notscreamtail
|
||||||
ld a, SANDY_SHOCKS
|
ld a, SCREAM_TAIL
|
||||||
ld [wTitleMonSpecies], a
|
ld [wTitleMonSpecies], a
|
||||||
call LoadTitleMonSprite
|
call LoadTitleMonSprite
|
||||||
jr .skip
|
jr .skip
|
||||||
.notshocks
|
.notscreamtail
|
||||||
ld a, SCREAM_TAIL
|
ld a, SANDY_SHOCKS
|
||||||
ld [wTitleMonSpecies], a
|
ld [wTitleMonSpecies], a
|
||||||
call LoadTitleMonSprite
|
call LoadTitleMonSprite
|
||||||
.skip
|
.skip
|
||||||
|
|
|
||||||
|
|
@ -33,10 +33,18 @@ TrySurf:
|
||||||
and a
|
and a
|
||||||
jr nz, .no2
|
jr nz, .no2
|
||||||
call GetPartyMonName2
|
call GetPartyMonName2
|
||||||
|
|
||||||
|
; pocket lapras illusion maintenance service
|
||||||
|
ld a, 1
|
||||||
|
ld [wSurfMonItemSwitch], a
|
||||||
|
|
||||||
ld a, POCKET_LAPRAS
|
ld a, POCKET_LAPRAS
|
||||||
ld [wcf91], a
|
ld [wcf91], a
|
||||||
ld [wPseudoItemID], a
|
ld [wPseudoItemID], a
|
||||||
call UseItem
|
call UseItem
|
||||||
|
; pocket lapras stuff
|
||||||
|
xor a
|
||||||
|
ld [wSurfMonItemSwitch], a
|
||||||
.yes2
|
.yes2
|
||||||
call CloseFieldMoveTextBox
|
call CloseFieldMoveTextBox
|
||||||
.yes
|
.yes
|
||||||
|
|
|
||||||
|
|
@ -69,8 +69,25 @@ UpdatePlayerSprite:
|
||||||
ld a, [hl]
|
ld a, [hl]
|
||||||
inc a
|
inc a
|
||||||
ld [hl], a
|
ld [hl], a
|
||||||
cp 4
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
jr nz, .calcImageIndex
|
;joenote - If B is being held to go faster and full joypad is enabled (i.e. not in a cutscene),
|
||||||
|
;Then increase player animation speed by 25%
|
||||||
|
push bc
|
||||||
|
ld c, 4
|
||||||
|
ld b, a
|
||||||
|
ld a, [wJoyIgnore]
|
||||||
|
and a
|
||||||
|
jr nz, .doneSpeed
|
||||||
|
ld a, [hJoyHeld]
|
||||||
|
and B_BUTTON
|
||||||
|
jr z, .doneSpeed
|
||||||
|
ld c, 3
|
||||||
|
.doneSpeed
|
||||||
|
ld a, b
|
||||||
|
cp c
|
||||||
|
pop bc
|
||||||
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
jr c, .calcImageIndex ;joenote - prevents interframe counter from increasing forever
|
||||||
xor a
|
xor a
|
||||||
ld [hl], a
|
ld [hl], a
|
||||||
inc hl
|
inc hl
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 93 B After Width: | Height: | Size: 185 B |
|
|
@ -7,6 +7,9 @@ ABTiles: INCBIN "gfx/font/AB.2bpp"
|
||||||
HpBarAndStatusGraphics:: INCBIN "gfx/font/font_battle_extra.2bpp"
|
HpBarAndStatusGraphics:: INCBIN "gfx/font/font_battle_extra.2bpp"
|
||||||
HpBarAndStatusGraphicsEnd::
|
HpBarAndStatusGraphicsEnd::
|
||||||
|
|
||||||
|
EXPBarGraphics:: INCBIN "gfx/font/exp_bar.2bpp"
|
||||||
|
EXPBarGraphicsEnd::
|
||||||
|
|
||||||
BattleHudTiles1: INCBIN "gfx/battle/battle_hud_1.1bpp"
|
BattleHudTiles1: INCBIN "gfx/battle/battle_hud_1.1bpp"
|
||||||
BattleHudTiles1End:
|
BattleHudTiles1End:
|
||||||
BattleHudTiles2: INCBIN "gfx/battle/battle_hud_2.1bpp"
|
BattleHudTiles2: INCBIN "gfx/battle/battle_hud_2.1bpp"
|
||||||
|
|
|
||||||
BIN
gfx/font/exp_bar.png
Normal file
|
After Width: | Height: | Size: 199 B |
|
Before Width: | Height: | Size: 407 B After Width: | Height: | Size: 552 B |
|
Before Width: | Height: | Size: 522 B After Width: | Height: | Size: 541 B |
|
|
@ -20,11 +20,6 @@ Plateau_Block:: INCBIN "gfx/blocksets/plateau.bst"
|
||||||
|
|
||||||
SECTION "Tilesets 2", ROMX
|
SECTION "Tilesets 2", ROMX
|
||||||
|
|
||||||
Dojo_GFX::
|
|
||||||
Gym_GFX:: INCBIN "gfx/tilesets/gym.2bpp"
|
|
||||||
Dojo_Block::
|
|
||||||
Gym_Block:: INCBIN "gfx/blocksets/gym.bst"
|
|
||||||
|
|
||||||
Mart_GFX::
|
Mart_GFX::
|
||||||
Pokecenter_GFX:: INCBIN "gfx/tilesets/pokecenter.2bpp"
|
Pokecenter_GFX:: INCBIN "gfx/tilesets/pokecenter.2bpp"
|
||||||
Mart_Block::
|
Mart_Block::
|
||||||
|
|
@ -79,6 +74,11 @@ House_Block:: INCBIN "gfx/blocksets/house.bst"
|
||||||
|
|
||||||
SECTION "Tilesets 5", ROMX
|
SECTION "Tilesets 5", ROMX
|
||||||
|
|
||||||
|
Dojo_GFX::
|
||||||
|
Gym_GFX:: INCBIN "gfx/tilesets/gym.2bpp"
|
||||||
|
Dojo_Block::
|
||||||
|
Gym_Block:: INCBIN "gfx/blocksets/gym.bst"
|
||||||
|
|
||||||
Cavern_GFX:: INCBIN "gfx/tilesets/cavern.2bpp"
|
Cavern_GFX:: INCBIN "gfx/tilesets/cavern.2bpp"
|
||||||
Cavern_Block:: INCBIN "gfx/blocksets/cavern.bst"
|
Cavern_Block:: INCBIN "gfx/blocksets/cavern.bst"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -50,7 +50,13 @@ DisplayListMenuID::
|
||||||
ld [wTopMenuItemY], a
|
ld [wTopMenuItemY], a
|
||||||
ld a, 5
|
ld a, 5
|
||||||
ld [wTopMenuItemX], a
|
ld [wTopMenuItemX], a
|
||||||
ld a, A_BUTTON | B_BUTTON | SELECT | START
|
ld a, [wFlags_0xcd60]
|
||||||
|
ld b, a
|
||||||
|
ld a, A_BUTTON | B_BUTTON | SELECT
|
||||||
|
bit 2, b
|
||||||
|
jr z, .noSortingOption
|
||||||
|
or a, START
|
||||||
|
.noSortingOption
|
||||||
ld [wMenuWatchedKeys], a
|
ld [wMenuWatchedKeys], a
|
||||||
ld c, 10
|
ld c, 10
|
||||||
call DelayFrames
|
call DelayFrames
|
||||||
|
|
|
||||||
|
|
@ -39,9 +39,18 @@ LoadHpBarAndStatusTilePatterns::
|
||||||
ld de, vChars2 tile $62
|
ld de, vChars2 tile $62
|
||||||
ld bc, HpBarAndStatusGraphicsEnd - HpBarAndStatusGraphics
|
ld bc, HpBarAndStatusGraphicsEnd - HpBarAndStatusGraphics
|
||||||
ld a, BANK(HpBarAndStatusGraphics)
|
ld a, BANK(HpBarAndStatusGraphics)
|
||||||
|
call FarCopyData ; if LCD is off, transfer all at once
|
||||||
|
ld hl, EXPBarGraphics
|
||||||
|
ld de, vChars1 tile $40
|
||||||
|
ld bc, EXPBarGraphicsEnd - EXPBarGraphics
|
||||||
|
ld a, BANK(EXPBarGraphics)
|
||||||
jp FarCopyData2 ; if LCD is off, transfer all at once
|
jp FarCopyData2 ; if LCD is off, transfer all at once
|
||||||
.on
|
.on
|
||||||
ld de, HpBarAndStatusGraphics
|
ld de, HpBarAndStatusGraphics
|
||||||
ld hl, vChars2 tile $62
|
ld hl, vChars2 tile $62
|
||||||
lb bc, BANK(HpBarAndStatusGraphics), (HpBarAndStatusGraphicsEnd - HpBarAndStatusGraphics) / $10
|
lb bc, BANK(HpBarAndStatusGraphics), (HpBarAndStatusGraphicsEnd - HpBarAndStatusGraphics) / $10
|
||||||
|
call CopyVideoData ; if LCD is on, transfer during V-blank
|
||||||
|
ld hl, EXPBarGraphics
|
||||||
|
ld de, vChars1 tile $40
|
||||||
|
lb bc, BANK(EXPBarGraphics), (EXPBarGraphicsEnd - EXPBarGraphics) / $10
|
||||||
jp CopyVideoData ; if LCD is on, transfer during V-blank
|
jp CopyVideoData ; if LCD is on, transfer during V-blank
|
||||||
|
|
|
||||||
8
maps.asm
|
|
@ -689,7 +689,7 @@ INCLUDE "data/maps/headers/Route21.asm"
|
||||||
INCLUDE "data/maps/objects/Route21.asm"
|
INCLUDE "data/maps/objects/Route21.asm"
|
||||||
Route21_Blocks: INCBIN "maps/Route21.blk"
|
Route21_Blocks: INCBIN "maps/Route21.blk"
|
||||||
|
|
||||||
Route12SuperRodHouse_Blocks: INCBIN "maps/Route12SuperRodHouse.blk"
|
FishingGuruHouse_Blocks: INCBIN "maps/FishingGuruHouse.blk"
|
||||||
|
|
||||||
Daycare_Blocks: INCBIN "maps/Daycare.blk"
|
Daycare_Blocks: INCBIN "maps/Daycare.blk"
|
||||||
|
|
||||||
|
|
@ -721,9 +721,9 @@ INCLUDE "data/maps/headers/Daycare.asm"
|
||||||
INCLUDE "scripts/Daycare.asm"
|
INCLUDE "scripts/Daycare.asm"
|
||||||
INCLUDE "data/maps/objects/Daycare.asm"
|
INCLUDE "data/maps/objects/Daycare.asm"
|
||||||
|
|
||||||
INCLUDE "data/maps/headers/Route12SuperRodHouse.asm"
|
INCLUDE "data/maps/headers/FishingGuruHouse.asm"
|
||||||
INCLUDE "scripts/Route12SuperRodHouse.asm"
|
INCLUDE "scripts/FishingGuruHouse.asm"
|
||||||
INCLUDE "data/maps/objects/Route12SuperRodHouse.asm"
|
INCLUDE "data/maps/objects/FishingGuruHouse.asm"
|
||||||
|
|
||||||
|
|
||||||
SECTION "Maps 13", ROMX
|
SECTION "Maps 13", ROMX
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
I12JKLKLR12o
|
I1tuKux2uR1vwKuKu
|
||||||
10
ram/wram.asm
|
|
@ -532,7 +532,13 @@ wLowHealthAlarmDisabled:: db
|
||||||
|
|
||||||
wPlayerMonMinimized:: db
|
wPlayerMonMinimized:: db
|
||||||
|
|
||||||
ds 13
|
ds 2
|
||||||
|
|
||||||
|
wEXPBarPixelLength:: ds 1
|
||||||
|
wEXPBarBaseEXP:: ds 3
|
||||||
|
wEXPBarCurEXP:: ds 3
|
||||||
|
wEXPBarNeededEXP:: ds 3
|
||||||
|
wEXPBarKeepFullFlag:: ds 1
|
||||||
|
|
||||||
; number of hits by enemy in attacks like Double Slap, etc.
|
; number of hits by enemy in attacks like Double Slap, etc.
|
||||||
wEnemyNumHits:: ; db
|
wEnemyNumHits:: ; db
|
||||||
|
|
@ -1459,7 +1465,7 @@ wEndBattleLoseTextPointer:: dw
|
||||||
ds 2
|
ds 2
|
||||||
wEndBattleTextRomBank:: db
|
wEndBattleTextRomBank:: db
|
||||||
|
|
||||||
ds 1
|
wSurfMonItemSwitch:: db ; i cant be fucked making a new item just do it this way - pvk
|
||||||
|
|
||||||
; the address _of the address_ of the current subanimation entry
|
; the address _of the address_ of the current subanimation entry
|
||||||
wSubAnimAddrPtr:: dw
|
wSubAnimAddrPtr:: dw
|
||||||
|
|
|
||||||
|
|
@ -40,8 +40,8 @@ GaryScript1:
|
||||||
ret
|
ret
|
||||||
|
|
||||||
GaryEntrance_RLEMovement:
|
GaryEntrance_RLEMovement:
|
||||||
db D_UP, 1
|
db D_UP, 2
|
||||||
db D_RIGHT, 1
|
db D_UP, 2
|
||||||
db D_UP, 3
|
db D_UP, 3
|
||||||
db -1 ; end
|
db -1 ; end
|
||||||
|
|
||||||
|
|
@ -159,14 +159,13 @@ OakEntranceAfterVictoryMovement:
|
||||||
db NPC_MOVEMENT_UP
|
db NPC_MOVEMENT_UP
|
||||||
db NPC_MOVEMENT_UP
|
db NPC_MOVEMENT_UP
|
||||||
db NPC_MOVEMENT_UP
|
db NPC_MOVEMENT_UP
|
||||||
|
db NPC_MOVEMENT_UP
|
||||||
db -1 ; end
|
db -1 ; end
|
||||||
|
|
||||||
GaryScript5:
|
GaryScript5:
|
||||||
ld a, [wd730]
|
ld a, [wd730]
|
||||||
bit 0, a
|
bit 0, a
|
||||||
ret nz
|
ret nz
|
||||||
ld a, PLAYER_DIR_LEFT
|
|
||||||
ld [wPlayerMovingDirection], a
|
|
||||||
ld a, $1
|
ld a, $1
|
||||||
ldh [hSpriteIndex], a
|
ldh [hSpriteIndex], a
|
||||||
ld a, SPRITE_FACING_LEFT
|
ld a, SPRITE_FACING_LEFT
|
||||||
|
|
@ -244,7 +243,7 @@ GaryScript9:
|
||||||
ret
|
ret
|
||||||
|
|
||||||
WalkToHallOfFame_RLEMovment:
|
WalkToHallOfFame_RLEMovment:
|
||||||
db D_UP, 4
|
db D_UP, 5
|
||||||
db D_LEFT, 1
|
db D_LEFT, 1
|
||||||
db -1 ; end
|
db -1 ; end
|
||||||
|
|
||||||
|
|
|
||||||
62
scripts/FishingGuruHouse.asm
Normal file
|
|
@ -0,0 +1,62 @@
|
||||||
|
FishingGuruHouse_Script:
|
||||||
|
jp EnableAutoTextBoxDrawing
|
||||||
|
|
||||||
|
FishingGuruHouse_TextPointers:
|
||||||
|
dw FishingGuruHouseText1
|
||||||
|
dw JumpText
|
||||||
|
|
||||||
|
FishingGuruHouseText1:
|
||||||
|
text_asm
|
||||||
|
ld a, [wd728]
|
||||||
|
bit 5, a ; received fishing rod?
|
||||||
|
jr nz, .got_item
|
||||||
|
ld hl, FishingGuruHouseText_564c0
|
||||||
|
call PrintText
|
||||||
|
call YesNoChoice
|
||||||
|
ld a, [wCurrentMenuItem]
|
||||||
|
and a
|
||||||
|
jr nz, .refused
|
||||||
|
lb bc, FISHING_ROD, 1
|
||||||
|
call GiveItem
|
||||||
|
jr nc, .bag_full
|
||||||
|
ld hl, wd728
|
||||||
|
set 5, [hl] ; received fishing rod
|
||||||
|
ld hl, FishingGuruHouseText_564c5
|
||||||
|
jr .done
|
||||||
|
.bag_full
|
||||||
|
ld hl, FishingGuruHouseText_564d9
|
||||||
|
jr .done
|
||||||
|
.refused
|
||||||
|
ld hl, FishingGuruHouseText_564cf
|
||||||
|
jr .done
|
||||||
|
.got_item
|
||||||
|
ld hl, FishingGuruHouseText_564d4
|
||||||
|
.done
|
||||||
|
call PrintText
|
||||||
|
jp TextScriptEnd
|
||||||
|
|
||||||
|
FishingGuruHouseText_564c0:
|
||||||
|
text_far _FishingGuruHouseText_564c0
|
||||||
|
text_end
|
||||||
|
|
||||||
|
FishingGuruHouseText_564c5:
|
||||||
|
text_far _FishingGuruHouseText_564c5
|
||||||
|
sound_get_item_1
|
||||||
|
text_far _FishingGuruHouseText_564ca
|
||||||
|
text_end
|
||||||
|
|
||||||
|
FishingGuruHouseText_564cf:
|
||||||
|
text_far _FishingGuruHouseText_564cf
|
||||||
|
text_end
|
||||||
|
|
||||||
|
FishingGuruHouseText_564d4:
|
||||||
|
text_far _FishingGuruHouseText_564d4
|
||||||
|
text_end
|
||||||
|
|
||||||
|
FishingGuruHouseText_564d9:
|
||||||
|
text_far _FishingGuruHouseText_564d9
|
||||||
|
text_end
|
||||||
|
|
||||||
|
JumpText:
|
||||||
|
text_far _JumpText
|
||||||
|
text_end
|
||||||
|
|
@ -365,6 +365,8 @@ OaksLabScript9: ; This is where Blue picks up the ball and removes the sprite.
|
||||||
cp $7
|
cp $7
|
||||||
jr nz, .rivalDidNotChoseBall4
|
jr nz, .rivalDidNotChoseBall4
|
||||||
ld a, HS_STARTER_BALL_4
|
ld a, HS_STARTER_BALL_4
|
||||||
|
ld [wMissableObjectIndex], a
|
||||||
|
predef HideObject
|
||||||
ld a, HS_DAMIEN ; This makes the starter gifts show up if you and your rival picked Pikachu and Eevee. It used to be coded differently but for some reason they still showed up if you picked Charmander or Squirtle, so I had to change it.
|
ld a, HS_DAMIEN ; This makes the starter gifts show up if you and your rival picked Pikachu and Eevee. It used to be coded differently but for some reason they still showed up if you picked Charmander or Squirtle, so I had to change it.
|
||||||
ld [wMissableObjectIndex], a
|
ld [wMissableObjectIndex], a
|
||||||
predef ShowObject
|
predef ShowObject
|
||||||
|
|
@ -374,6 +376,8 @@ OaksLabScript9: ; This is where Blue picks up the ball and removes the sprite.
|
||||||
jr .hideBallAndContinue
|
jr .hideBallAndContinue
|
||||||
.rivalDidNotChoseBall4
|
.rivalDidNotChoseBall4
|
||||||
ld a, HS_STARTER_BALL_5
|
ld a, HS_STARTER_BALL_5
|
||||||
|
ld [wMissableObjectIndex], a
|
||||||
|
predef HideObject
|
||||||
ld a, HS_DAMIEN
|
ld a, HS_DAMIEN
|
||||||
ld [wMissableObjectIndex], a
|
ld [wMissableObjectIndex], a
|
||||||
predef ShowObject
|
predef ShowObject
|
||||||
|
|
|
||||||
|
|
@ -1,62 +0,0 @@
|
||||||
Route12SuperRodHouse_Script:
|
|
||||||
jp EnableAutoTextBoxDrawing
|
|
||||||
|
|
||||||
Route12SuperRodHouse_TextPointers:
|
|
||||||
dw Route12HouseText1
|
|
||||||
dw JumpText
|
|
||||||
|
|
||||||
Route12HouseText1:
|
|
||||||
text_asm
|
|
||||||
ld a, [wd728]
|
|
||||||
bit 5, a ; received super rod?
|
|
||||||
jr nz, .got_item
|
|
||||||
ld hl, Route12HouseText_564c0
|
|
||||||
call PrintText
|
|
||||||
call YesNoChoice
|
|
||||||
ld a, [wCurrentMenuItem]
|
|
||||||
and a
|
|
||||||
jr nz, .refused
|
|
||||||
lb bc, SUPER_ROD, 1
|
|
||||||
call GiveItem
|
|
||||||
jr nc, .bag_full
|
|
||||||
ld hl, wd728
|
|
||||||
set 5, [hl] ; received super rod
|
|
||||||
ld hl, Route12HouseText_564c5
|
|
||||||
jr .done
|
|
||||||
.bag_full
|
|
||||||
ld hl, Route12HouseText_564d9
|
|
||||||
jr .done
|
|
||||||
.refused
|
|
||||||
ld hl, Route12HouseText_564cf
|
|
||||||
jr .done
|
|
||||||
.got_item
|
|
||||||
ld hl, Route12HouseText_564d4
|
|
||||||
.done
|
|
||||||
call PrintText
|
|
||||||
jp TextScriptEnd
|
|
||||||
|
|
||||||
Route12HouseText_564c0:
|
|
||||||
text_far _Route12HouseText_564c0
|
|
||||||
text_end
|
|
||||||
|
|
||||||
Route12HouseText_564c5:
|
|
||||||
text_far _Route12HouseText_564c5
|
|
||||||
sound_get_item_1
|
|
||||||
text_far _Route12HouseText_564ca
|
|
||||||
text_end
|
|
||||||
|
|
||||||
Route12HouseText_564cf:
|
|
||||||
text_far _Route12HouseText_564cf
|
|
||||||
text_end
|
|
||||||
|
|
||||||
Route12HouseText_564d4:
|
|
||||||
text_far _Route12HouseText_564d4
|
|
||||||
text_end
|
|
||||||
|
|
||||||
Route12HouseText_564d9:
|
|
||||||
text_far _Route12HouseText_564d9
|
|
||||||
text_end
|
|
||||||
|
|
||||||
JumpText:
|
|
||||||
text_far _JumpText
|
|
||||||
text_end
|
|
||||||
|
|
@ -107,7 +107,7 @@ ChiefScript4:
|
||||||
ld [wMissableObjectIndex], a
|
ld [wMissableObjectIndex], a
|
||||||
predef HideObject
|
predef HideObject
|
||||||
SetEvent EVENT_MEWTWO_UNLOCKED
|
SetEvent EVENT_MEWTWO_UNLOCKED
|
||||||
ResetEventRange SILPH_GAUNTLET_EVENTS_START, SILPH_GAUNTLET_EVENTS_END, 1
|
ResetEventRange EVENT_BEAT_GAUNTLET_YOUNGSTER, EVENT_BEAT_GAUNTLET_BLAINE
|
||||||
|
|
||||||
ld a, $0
|
ld a, $0
|
||||||
ld [wSilphGauntlet7FCurScript], a
|
ld [wSilphGauntlet7FCurScript], a
|
||||||
|
|
|
||||||
2
text.asm
|
|
@ -92,7 +92,7 @@ INCLUDE "text/Route11Gate2F.asm"
|
||||||
INCLUDE "text/DiglettsCaveRoute11.asm"
|
INCLUDE "text/DiglettsCaveRoute11.asm"
|
||||||
INCLUDE "text/Route12Gate1F.asm"
|
INCLUDE "text/Route12Gate1F.asm"
|
||||||
INCLUDE "text/Route12Gate2F.asm"
|
INCLUDE "text/Route12Gate2F.asm"
|
||||||
INCLUDE "text/Route12SuperRodHouse.asm"
|
INCLUDE "text/FishingGuruHouse.asm"
|
||||||
INCLUDE "text/Route15Gate1F.asm"
|
INCLUDE "text/Route15Gate1F.asm"
|
||||||
INCLUDE "text/Route15Gate2F.asm"
|
INCLUDE "text/Route15Gate2F.asm"
|
||||||
INCLUDE "text/Route16Gate1F.asm"
|
INCLUDE "text/Route16Gate1F.asm"
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
_Route12HouseText_564c0::
|
_FishingGuruHouseText_564c0::
|
||||||
text "I'm the FISHING"
|
text "I'm the FISHING"
|
||||||
line "GURU!"
|
line "GURU!"
|
||||||
|
|
||||||
|
|
@ -9,7 +9,7 @@ _Route12HouseText_564c0::
|
||||||
line "fish?"
|
line "fish?"
|
||||||
done
|
done
|
||||||
|
|
||||||
_Route12HouseText_564c5::
|
_FishingGuruHouseText_564c5::
|
||||||
text "Grand! I like"
|
text "Grand! I like"
|
||||||
line "your style!"
|
line "your style!"
|
||||||
|
|
||||||
|
|
@ -22,7 +22,7 @@ _Route12HouseText_564c5::
|
||||||
text "!@"
|
text "!@"
|
||||||
text_end
|
text_end
|
||||||
|
|
||||||
_Route12HouseText_564ca::
|
_FishingGuruHouseText_564ca::
|
||||||
text_start
|
text_start
|
||||||
|
|
||||||
para "Fishing is a way"
|
para "Fishing is a way"
|
||||||
|
|
@ -34,12 +34,12 @@ _Route12HouseText_564ca::
|
||||||
cont "one!"
|
cont "one!"
|
||||||
done
|
done
|
||||||
|
|
||||||
_Route12HouseText_564cf::
|
_FishingGuruHouseText_564cf::
|
||||||
text "Oh... That's so"
|
text "Oh... That's so"
|
||||||
line "disappointing..."
|
line "disappointing..."
|
||||||
done
|
done
|
||||||
|
|
||||||
_Route12HouseText_564d4::
|
_FishingGuruHouseText_564d4::
|
||||||
text "Hello there,"
|
text "Hello there,"
|
||||||
line "<PLAYER>!"
|
line "<PLAYER>!"
|
||||||
|
|
||||||
|
|
@ -53,7 +53,7 @@ _Route12HouseText_564d4::
|
||||||
line "wherever you can!"
|
line "wherever you can!"
|
||||||
done
|
done
|
||||||
|
|
||||||
_Route12HouseText_564d9::
|
_FishingGuruHouseText_564d9::
|
||||||
text "Oh no!"
|
text "Oh no!"
|
||||||
|
|
||||||
para "I had a gift for"
|
para "I had a gift for"
|
||||||
|
|
@ -12,7 +12,7 @@ _KogaPostBattleAdviceText::
|
||||||
_KogaSoulBadgeInfoText::
|
_KogaSoulBadgeInfoText::
|
||||||
text "Now that you have"
|
text "Now that you have"
|
||||||
line "the SOULBADGE,"
|
line "the SOULBADGE,"
|
||||||
cont "the DEFENSE of"
|
cont "the SPEED of"
|
||||||
cont "your #MON"
|
cont "your #MON"
|
||||||
cont "increases!"
|
cont "increases!"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -69,7 +69,7 @@ _SilphGauntlet6FBattleText3::
|
||||||
cont "saved me during"
|
cont "saved me during"
|
||||||
cont "the war! They"
|
cont "the war! They"
|
||||||
cont "even powered my"
|
cont "even powered my"
|
||||||
cont "plane!"
|
cont "Thunderchief!" ; Republic F-105 Thunderchief - Vietnam aircraft, referencing the FRLG Fame Checker, but also adding clarity for the player to figure out which war Surge was in.
|
||||||
|
|
||||||
para "I'll zap you for"
|
para "I'll zap you for"
|
||||||
line "real this time!"
|
line "real this time!"
|
||||||
|
|
@ -83,19 +83,37 @@ _SilphGauntlet6FEndBattleText3::
|
||||||
line "a gallon, now!"
|
line "a gallon, now!"
|
||||||
prompt
|
prompt
|
||||||
|
|
||||||
|
; Originally, we wanted Surge to talk about being Major.
|
||||||
|
; But we realised RG Blaine wears a WWII-era Japanese uniform.
|
||||||
|
; Ergo, Blaine should loathe Surge for manning American war bases.
|
||||||
|
; The implication is that Surge works at an American war base in Japan. Post-war, these propped up to ensure Japan never does what it did again. In modern-day, these are super controversial. Blaine, being a soldier, would get extremely mad.
|
||||||
|
; Thus, we give Surge an explanation for being in Kanto at all...
|
||||||
|
; While also giving a haunting backstory to RG Blaine's design.
|
||||||
|
; This requires a lot of historical knowledge to get right, but we want to adequately represent Surge and Blaine's war uniforms.
|
||||||
|
; This would make Surge around 40 years old, and Blaine around 60-70 years old.
|
||||||
_SilphGauntlet6FAfterBattleText3::
|
_SilphGauntlet6FAfterBattleText3::
|
||||||
text "Huh? BLAINE?"
|
text "Huh? BLAINE? Oh,"
|
||||||
line "Oh, man!"
|
line "man!"
|
||||||
|
|
||||||
para "He won't tell you" ; Referring to Blaine's original design.
|
para "Ever since I told"
|
||||||
line "this, but he was"
|
line "him where I work,"
|
||||||
cont "my mentor!"
|
cont "he's got his"
|
||||||
|
cont "pants in a bunch!" ; s/o Megachiroptera for giving the american version of this saying
|
||||||
|
|
||||||
para "Once, the higher-" ; Commentary on the German, French, and Chinese translations.
|
para "Something about"
|
||||||
line "ups demoted me"
|
line "that war, maybe?" ; World War II
|
||||||
cont "to MAJOR SURGE,"
|
|
||||||
cont "but BLAINE got"
|
para "C'mon, I wasn't"
|
||||||
cont "me reinstated!"
|
line "even born yet!" ; This explains the age gap. He fought in the Vietnam War, deployed from the Japanese base.
|
||||||
|
|
||||||
|
; Old text.
|
||||||
|
; We wanted to reference the Chinese and German translations.
|
||||||
|
; But Surge is too young, and American, so the relations wouldn't work.
|
||||||
|
; para "Once, the higher-"
|
||||||
|
; line "ups demoted me" ; Old text from before we looked at the context of RG Blaine.
|
||||||
|
; cont "to MAJOR SURGE,"
|
||||||
|
; cont "but BLAINE got"
|
||||||
|
; cont "me reinstated!"
|
||||||
|
|
||||||
done
|
done
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,8 +12,9 @@ _LTSurgePostBattleAdviceText::
|
||||||
|
|
||||||
_LTSurgeThunderBadgeInfoText::
|
_LTSurgeThunderBadgeInfoText::
|
||||||
text "The THUNDERBADGE"
|
text "The THUNDERBADGE"
|
||||||
line "cranks up your"
|
line "cranks up the"
|
||||||
cont "#MON's SPEED!"
|
cont "DEFENSE of your"
|
||||||
|
cont "#MON!"
|
||||||
|
|
||||||
para "It also lets your"
|
para "It also lets your"
|
||||||
line "#MON FLY any"
|
line "#MON FLY any"
|
||||||
|
|
|
||||||