diff options
author | Bryan Bishop <kanzure@gmail.com> | 2014-03-03 23:38:54 -0600 |
---|---|---|
committer | Bryan Bishop <kanzure@gmail.com> | 2014-03-03 23:38:54 -0600 |
commit | f676c3d357417c81daa33544536213ae85a5472f (patch) | |
tree | 7a4424aafc11c9f410217062ac0d25c5d48895ac | |
parent | 0b6cb7a3b601875b21f6a2e2a1ab20490eb93921 (diff) | |
parent | 7ab8f76117e13a192a1f4f797ee73c48f6154cff (diff) |
Merge pull request #237 from yenatch/incbins
Map triggers and egg hatching.
-rw-r--r-- | engine/scripting.asm | 4 | ||||
-rw-r--r-- | home.asm | 25 | ||||
-rw-r--r-- | home/map.asm | 14 | ||||
-rw-r--r-- | home/menu.asm | 4 | ||||
-rw-r--r-- | home/text.asm | 80 | ||||
-rw-r--r-- | macros.asm | 5 | ||||
-rw-r--r-- | main.asm | 340 | ||||
-rw-r--r-- | stats/egg_move_pointers.asm | 2 | ||||
-rw-r--r-- | stats/egg_moves.asm | 2 | ||||
-rw-r--r-- | wram.asm | 83 |
10 files changed, 431 insertions, 128 deletions
diff --git a/engine/scripting.asm b/engine/scripting.asm index 1a5ee4cea..21feaf5d2 100644 --- a/engine/scripting.asm +++ b/engine/scripting.asm @@ -1884,7 +1884,7 @@ Script_checkmaptriggers: ; 0x975d1 ld b, a call GetScriptByte ld c, a - call Function2147 + call GetMapTrigger ld a, d or e jr z, .asm_975e5 ; 0x975de $5 @@ -1923,7 +1923,7 @@ Script_domaptrigger: ; 0x975f5 ; fallthrough Unknown_975fd: ; 0x975fd - call Function2147 + call GetMapTrigger ld a, d or e jr z, .asm_97608 ; 0x97602 $4 @@ -1765,13 +1765,14 @@ Function37e2:: ; 37e2 push hl push de push bc + call Function381e jr c, .asm_37ef ld e, c ld d, b call PlayCryHeader - .asm_37ef + pop bc pop de pop hl @@ -1783,16 +1784,17 @@ Function37f3:: ; 37f3 ret c ld a, [hROMBank] push af - ld a, $3c + ld a, BANK(CryHeaders) rst Bankswitch - ld hl, $6787 + ld hl, CryHeaders add hl, bc add hl, bc add hl, bc add hl, bc add hl, bc add hl, bc + ld e, [hl] inc hl ld d, [hl] @@ -1804,10 +1806,10 @@ Function37f3:: ; 37f3 ld a, [hli] ld [CryLength], a ld a, [hl] - ld [$c2b3], a + ld [CryLength + 1], a + pop af rst Bankswitch - and a ret ; 381e @@ -1815,11 +1817,12 @@ Function37f3:: ; 37f3 Function381e:: ; 381e and a jr z, .asm_382b - cp $fc + cp NUM_POKEMON + 1 jr nc, .asm_382b + dec a ld c, a - ld b, $0 + ld b, 0 and a ret @@ -2042,7 +2045,7 @@ GetPartyParamLocation:: ; 3917 push bc ld hl, PartyMons ld c, a - ld b, $00 + ld b, 0 add hl, bc ld a, [CurPartyMon] call GetPartyLocation @@ -2061,12 +2064,12 @@ Function392d:: ; 392d push hl ld a, b dec a - ld b, $0 + ld b, 0 add hl, bc - ld hl, $5424 + ld hl, BaseData + 0 ld bc, $0020 call AddNTimes - ld a, $14 + ld a, BANK(BaseData) call GetFarHalfword ld b, l ld c, h diff --git a/home/map.asm b/home/map.asm index 11e2f4e5a..d581eb6b4 100644 --- a/home/map.asm +++ b/home/map.asm @@ -24,7 +24,7 @@ Function211b:: ; 211b ret ; 212a -Function212a:: ; 212a +GetCurrentMapTrigger:: ; 212a ld a, [MapGroup] ld b, a ld a, [MapNumber] @@ -32,7 +32,7 @@ Function212a:: ; 212a xor a ld [$dbf7], a ld [$dbf8], a - call Function2147 + call GetMapTrigger ret c ld a, e ld [$dbf7], a @@ -42,14 +42,14 @@ Function212a:: ; 212a ret ; 2147 -Function2147:: ; 2147 +GetMapTrigger:: ; 2147 push bc ld a, [hROMBank] push af - ld a, $13 + ld a, BANK(MapTriggers) rst Bankswitch - ld hl, $501e + ld hl, MapTriggers .asm_2151 push hl ld a, [hli] @@ -106,9 +106,9 @@ Function217a:: ; 217a ld bc, TileMapEnd - TileMap call ByteFill - ld a, $13 + ld a, BANK(Function4d15b) rst Bankswitch - call $515b + call Function4d15b pop af rst Bankswitch diff --git a/home/menu.asm b/home/menu.asm index 8ac9b302b..ad52741f2 100644 --- a/home/menu.asm +++ b/home/menu.asm @@ -586,10 +586,10 @@ Function2048:: ; 2048 Function2057:: ; 2057 ld a, [hROMBank] push af - ld a, $21 + ld a, BANK(Function842db) rst Bankswitch - call $42db + call Function842db pop af rst Bankswitch diff --git a/home/text.asm b/home/text.asm index 4aa3cb490..73bda459c 100644 --- a/home/text.asm +++ b/home/text.asm @@ -209,7 +209,7 @@ CheckDict:: ; 1087 and a jp z, Function1383 cp $4c - jp z, $1337 + jp z, Function1337 cp $4b jp z, Char4B cp $51 ; Player name @@ -249,7 +249,7 @@ CheckDict:: ; 1087 cp $56 jp z, Function11d3 cp $57 - jp z, $137c + jp z, Function137c cp $58 jp z, Function135a cp $4a @@ -269,9 +269,9 @@ CheckDict:: ; 1087 cp $5a jp z, Char5D cp $3f - jp z, $121b + jp z, Function121b cp $14 - jp z, $1252 + jp z, Function1252 cp $e4 jr z, .asm_1174 ; 0x113d $35 cp $e5 @@ -322,103 +322,103 @@ Function117b:: ; 117b Function1186:: ; 1186 push de ld de, MomsName - jp $126a + jp Function126a ; 118d Function118d:: ; 118d push de ld de, PlayerName - jp $126a + jp Function126a ; 1194 Function1194:: ; 1194 push de ld de, RivalName - jp $126a + jp Function126a ; 119b Function119b:: ; 119b push de ld de, RedsName - jp $126a + jp Function126a ; 11a2 Function11a2:: ; 11a2 push de ld de, GreensName - jp $126a + jp Function126a ; 11a9 Function11a9:: ; 11a9 push de ld de, Char5DText - jp $126a + jp Function126a ; 11b0 Function11b0:: ; 11b0 push de ld de, Char5CText - jp $126a + jp Function126a ; 11b7 Function11b7:: ; 11b7 push de ld de, Char5BText - jp $126a + jp Function126a ; 11be Function11be:: ; 11be push de ld de, Char5EText - jp $126a + jp Function126a ; 11c5 Function11c5:: ; 11c5 push de ld de, Char54Text - jp $126a + jp Function126a ; 11cc Function11cc:: ; 11cc push de ld de, Char23Text - jp $126a + jp Function126a ; 11d3 Function11d3:: ; 11d3 push de - ld de, $1292 - jp $126a + ld de, Char56Text + jp Function126a ; 11da Function11da:: ; 11da push de ld de, Char4AText - jp $126a + jp Function126a ; 11e1 Function11e1:: ; 11e1 push de ld de, Char24Text - jp $126a + jp Function126a ; 11e8 Function11e8:: ; 11e8 push de ld de, Char37Text - jp $126a + jp Function126a ; 11ef Function11ef:: ; 11ef push de ld de, Char37Text - jp $126a + jp Function126a ; 11f6 Function11f6:: ; 11f6 push de ld de, Char37Text - jp $126a + jp Function126a ; 11fd @@ -437,22 +437,24 @@ Function1205:: ; 1205 and a jr nz, .asm_120e ; 0x1207 $5 ld de, BattleMonNick - jr .asm_126a ; 0x120c $5c + jr Function126a ; 0x120c $5c .asm_120e ld de, Char5AText ; Enemy call PlaceString ld h, b ld l, c ld de, EnemyMonNick - jr .asm_126a ; 0x1219 $4f + jr Function126a ; 0x1219 $4f + +Function121b:: ; 121b push de ld a, [InLinkBattle] and a jr nz, .linkbattle ld a, [TrainerClass] - cp $9 + cp RIVAL1 jr z, .asm_1248 ; 0x1227 $1f - cp $2a + cp RIVAL2 jr z, .asm_1248 ; 0x122b $1b ld de, $c656 call PlaceString @@ -464,13 +466,15 @@ Function1205:: ; 1205 callab Function39939 pop hl ld de, StringBuffer1 - jr .asm_126a ; 0x1246 $22 + jr Function126a ; 0x1246 $22 .asm_1248 ld de, RivalName - jr .asm_126a ; 0x124b $1d + jr Function126a ; 0x124b $1d .linkbattle ld de, $c656 - jr .asm_126a ; 0x1250 $18 + jr Function126a ; 0x1250 $18 + +Function1252:: ; 1252 push de ld de, PlayerName call PlaceString @@ -479,10 +483,11 @@ Function1205:: ; 1205 ld a, [PlayerGender] bit 0, a ld de, String12a5 - jr z, .asm_126a ; 0x1263 $5 + jr z, Function126a ; 0x1263 $5 ld de, String12a6 - jr .asm_126a ; 0x1268 $0 -.asm_126a + jr Function126a ; 0x1268 $0 + +Function126a:: ; 126a call PlaceString ld h, b ld l, c @@ -629,6 +634,7 @@ Char4B:: ; 131f or a call z, Function13cd +Function1337:: ; 1337 push de call Function138c call Function138c @@ -675,12 +681,12 @@ Function135a:: ; 135a call Functionaaf ld a, [InLinkBattle] cp $3 - jr z, .asm_137c + jr z, Function137c cp $4 - jr z, .asm_137c + jr z, Function137c call Function13cd -.asm_137c +Function137c:: ; 137c pop hl ld de, .string_1382 dec de @@ -770,10 +776,10 @@ Function13d4:: ; 13d4 ; 13e0 Function13e0:: ; 13e0 - ld hl, $13e4 + ld hl, String_13e4 ret -.string_13e4 +String_13e4: ; 13e4 db "@" ; 13e5 diff --git a/macros.asm b/macros.asm index b39fb1432..531ead5b5 100644 --- a/macros.asm +++ b/macros.asm @@ -20,6 +20,11 @@ dbw: MACRO dw \2 ENDM +dbbw: MACRO + db \1, \2 + dw \3 + ENDM + dn: MACRO db \1 << 4 + \2 ENDM @@ -29765,14 +29765,14 @@ Function16dac: ; 16dac ; 16dc7 Function16dc7: ; 16dc7 - ld hl, $6e04 + ld hl, UnknownText_0x16e04 call PrintText callba Function50000 jr c, .asm_16df8 ld a, [CurPartySpecies] - cp $fd + cp EGG jr z, .asm_16dfd - ld hl, $6e09 + ld hl, UnknownText_0x16e09 call PrintText call Function2ed3 callba Function8461a @@ -29780,22 +29780,50 @@ Function16dc7: ; 16dc7 ld a, [$ffac] and a jr nz, .asm_16df8 - ld hl, $6e0e + ld hl, UnknownText_0x16e0e jr .asm_16e00 .asm_16df8 - ld hl, $6e13 + ld hl, UnknownText_0x16e13 jr .asm_16e00 .asm_16dfd - ld hl, $6e18 + ld hl, UnknownText_0x16e18 .asm_16e00 call PrintText ret ; 16e04 -INCBIN "baserom.gbc",$16e04,$16e1d - $16e04 +UnknownText_0x16e04: ; 0x16e04 + ; Which #MON should I photo- graph? + text_jump UnknownText_0x1be024 + db "@" +; 0x16e09 + +UnknownText_0x16e09: ; 0x16e09 + ; All righty. Hold still for a bit. + text_jump UnknownText_0x1be047 + db "@" +; 0x16e0e + +UnknownText_0x16e0e: ; 0x16e0e + ; Presto! All done. Come again, OK? + text_jump UnknownText_0x1be06a + db "@" +; 0x16e13 + +UnknownText_0x16e13: ; 0x16e13 + ; Oh, no picture? Come again, OK? + text_jump UnknownText_0x1c0000 + db "@" +; 0x16e18 + +UnknownText_0x16e18: ; 0x16e18 + ; An EGG? My talent is worth more… + text_jump UnknownText_0x1c0021 + db "@" +; 0x16e1d Function16e1d: ; 16e1d @@ -29842,16 +29870,16 @@ Function16e1d: ; 16e1d .asm_16e70 ld c, $0 ld a, [BreedMon1Species] - cp $84 + cp DITTO jr z, .asm_16e82 ld a, [BreedMon2Species] - cp $84 + cp DITTO jr nz, .asm_16eb7 jr .asm_16e89 .asm_16e82 ld a, [BreedMon2Species] - cp $84 + cp DITTO jr z, .asm_16eb7 .asm_16e89 @@ -29920,7 +29948,7 @@ Function16ed6: ; 16ed6 cp $ff jr z, .asm_16f3a ld a, [BreedMon2Species] - cp $84 + cp DITTO jr z, .asm_16f3c ld [CurSpecies], a call GetBaseData @@ -29933,7 +29961,7 @@ Function16ed6: ; 16ed6 swap a ld c, a ld a, [BreedMon1Species] - cp $84 + cp DITTO jr z, .asm_16f3c ld [CurSpecies], a push bc @@ -30016,7 +30044,7 @@ Function16f7a: ; 16f7a (5:6f7a) jp z, Function1708a push de push hl - cp $fd + cp EGG jp nz, Function1707d ld a, [hl] and a @@ -30105,7 +30133,7 @@ Function16f7a: ; 16f7a (5:6f7a) ld e, l ld hl, PlayerName ; $d47d call CopyBytes - ld hl, $708b + ld hl, UnknownText_0x1708b call PrintText ld a, [CurPartyMon] ; $d109 ld hl, PartyMonNicknames ; $de41 (aliases: PartyMon1Nickname) @@ -30114,7 +30142,7 @@ Function16f7a: ; 16f7a (5:6f7a) ld d, h ld e, l push de - ld hl, $70ba + ld hl, UnknownText_0x170ba call PrintText call YesNoBox pop de @@ -30150,7 +30178,13 @@ Function1708a: ; 1708a (5:708a) ret ; 1708b (5:708b) -INCBIN "baserom.gbc",$1708b,$17090 - $1708b +UnknownText_0x1708b: ; 0x1708b + ; Huh? @ @ + text_jump UnknownText_0x1c0db0 + start_asm +; 0x17090 + +Function17090: ; 17090 ld hl, VramState ; $d0ed res 0, [hl] push hl @@ -30159,18 +30193,34 @@ INCBIN "baserom.gbc",$1708b,$17090 - $1708b ld a, [CurPartySpecies] ; $d108 push af call Function1728f - ld hl, $70b0 + ld hl, UnknownText_0x170b0 call PrintText pop af ld [CurPartySpecies], a ; $d108 pop bc pop de pop hl - ld hl, $70b5 + ld hl, UnknownText_0x170b5 ret ; 170b0 (5:70b0) -INCBIN "baserom.gbc",$170b0,$170bf - $170b0 +UnknownText_0x170b0: ; 0x170b0 + ; + text_jump UnknownText_0x1c0db8 + db "@" +; 0x170b5 + +UnknownText_0x170b5: ; 0x170b5 + ; came out of its EGG!@ @ + text_jump UnknownText_0x1c0dba + db "@" +; 0x170ba + +UnknownText_0x170ba: ; 0x170ba + ; Give a nickname to @ ? + text_jump UnknownText_0x1c0dd8 + db "@" +; 0x170bf Function170bf: ; 170bf call Function17197 @@ -30204,18 +30254,20 @@ Function170bf: ; 170bf ; 170e4 Function170e4: ; 170e4 +GLOBAL EggMoves + push bc ld a, [EggSpecies] dec a ld c, a - ld b, $0 - ld hl, $7b11 + ld b, 0 + ld hl, EggMovePointers add hl, bc add hl, bc - ld a, $8 + ld a, BANK(EggMovePointers) call GetFarHalfword .asm_170f6 - ld a, $8 + ld a, BANK(EggMoves) call GetFarByte cp $ff jr z, .asm_17107 @@ -30228,7 +30280,7 @@ Function170e4: ; 170e4 .asm_17107 call Function1720b - ld b, $4 + ld b, NUM_MOVES .asm_1710c ld a, [de] cp [hl] @@ -30242,25 +30294,25 @@ Function170e4: ; 170e4 ld a, [EggSpecies] dec a ld c, a - ld b, $0 - ld hl, $65b1 + ld b, 0 + ld hl, EvosAttacksPointers add hl, bc add hl, bc - ld a, $10 + ld a, BANK(EvosAttacksPointers) call GetFarHalfword .asm_17127 - ld a, $10 + ld a, BANK(EvosAttacks) call GetFarByte inc hl and a jr nz, .asm_17127 .asm_17130 - ld a, $10 + ld a, BANK(EvosAttacks) call GetFarByte and a jr z, .asm_17146 inc hl - ld a, $10 + ld a, BANK(EvosAttacks) call GetFarByte ld b, a ld a, [de] @@ -30270,9 +30322,9 @@ Function170e4: ; 170e4 jr .asm_17130 .asm_17146 - ld hl, $567a + ld hl, TMHMMoves .asm_17149 - ld a, $4 + ld a, BANK(TMHMMoves) call GetFarByte inc hl and a @@ -30305,7 +30357,7 @@ Function17169: ; 17169 ld a, [de] ld b, a ld hl, $df7d - ld c, $4 + ld c, NUM_MOVES .asm_17172 ld a, [hli] and a @@ -30338,10 +30390,10 @@ Function17169: ; 17169 Function17197: ; 17197 ld hl, $df47 ld a, [BreedMon1Species] - cp $84 + cp DITTO jr z, .asm_171b1 ld a, [BreedMon2Species] - cp $84 + cp DITTO jr z, .asm_171d7 ld a, [DittoInDaycare] and a @@ -30398,10 +30450,10 @@ Function17197: ; 17197 Function1720b: ; 1720b ld hl, $df0e ld a, [BreedMon1Species] - cp $84 + cp DITTO ret z ld a, [BreedMon2Species] - cp $84 + cp DITTO jr z, .asm_17220 ld a, [DittoInDaycare] and a @@ -30452,9 +30504,9 @@ Function17254: ; 17254 (5:7254) pop bc pop hl ld a, b - ld [$FF00+$d7], a + ld [$ffd7], a ld a, c - ld [$FF00+$ad], a + ld [$ffad], a ld bc, $707 ld a, $13 call Predef @@ -30481,29 +30533,29 @@ Function1728f: ; 1728f (5:728f) ld [$cf63], a ld a, [CurSpecies] ; $cf60 push af - ld de, $0 + ld de, MUSIC_NONE call PlayMusic callba Function8000 call DisableLCD - ld hl, $7393 + ld hl, EggHatchGFX ld de, $8000 ld bc, $20 - ld a, $5 + ld a, BANK(EggHatchGFX) call FarCopyBytes callba Function8cf53 ld de, $9000 ld a, [$cf63] call Function1723c ld de, $9310 - ld a, $fd + ld a, EGG call Function17224 - ld de, $22 + ld de, MUSIC_EVOLUTION call PlayMusic call EnableLCD ld hl, $c4f7 ld b, $98 ld c, $31 - ld a, $fd + ld a, EGG call Function17254 ld c, $50 call DelayFrames @@ -30540,7 +30592,7 @@ Function1728f: ; 1728f (5:728f) call Function1736d jr .asm_172ee .asm_17327 - ld de, $a6 + ld de, SFX_EGG_HATCH call PlaySFX xor a ld [hSCX], a ; $ff00+$cf @@ -30591,16 +30643,18 @@ Function1736d: ; 1736d (5:736d) ld hl, $3 add hl, bc ld [hl], $0 - ld de, $9e + ld de, SFX_EGG_CRACK jp PlaySFX ; 17393 (5:7393) +EggHatchGFX: ; 17393 INCBIN "baserom.gbc",$17393,$173b3 - $17393 +; 173b3 ; known jump sources: 17336 (5:7336) Function173b3: ; 173b3 (5:73b3) callba Function8cf53 - ld hl, $73ef + ld hl, Unknown_173ef .asm_173bc ld a, [hli] cp $ff @@ -30631,13 +30685,26 @@ Function173b3: ; 173b3 (5:73b3) pop hl jr .asm_173bc .asm_173e5 - ld de, $a6 + ld de, SFX_EGG_HATCH call PlaySFX call Function1727f ret ; 173ef (5:73ef) -INCBIN "baserom.gbc",$173ef,$17418 - $173ef +Unknown_173ef: ; 173ef +; Probably OAM. + db $54, $48, $00, $3c + db $5c, $48, $01, $04 + db $54, $50, $00, $30 + db $5c, $50, $01, $10 + db $54, $58, $02, $24 + db $5c, $58, $03, $1c + db $50, $4c, $00, $36 + db $60, $4c, $01, $0a + db $50, $54, $02, $2a + db $60, $54, $03, $16 + db $ff +; 17418 ; known jump sources: 17346 (5:7346) Function17418: ; 17418 (5:7418) @@ -30649,7 +30716,7 @@ Function17418: ; 17418 (5:7418) ret Function17421: ; 17421 - ld hl, $7467 + ld hl, UnknownText_0x17467 call PrintText ld a, [BreedMon1Species] call Function37ce @@ -30662,7 +30729,7 @@ Function17421: ; 17421 jp PrintText Function17440: ; 17440 - ld hl, $7462 + ld hl, UnknownText_0x17462 call PrintText ld a, [BreedMon2Species] call Function37ce @@ -30678,7 +30745,17 @@ Function1745f: ; 1745f jp Functiona80 ; 17462 -INCBIN "baserom.gbc",$17462,$1746c - $17462 +UnknownText_0x17462: ; 0x17462 + ; It's @ that was left with the DAY-CARE LADY. + text_jump UnknownText_0x1c0df3 + db "@" +; 0x17467 + +UnknownText_0x17467: ; 0x17467 + ; It's @ that was left with the DAY-CARE MAN. + text_jump UnknownText_0x1c0e24 + db "@" +; 0x1746c Function1746c: ; 1746c push bc @@ -30688,25 +30765,62 @@ Function1746c: ; 1746c call Function16e1d pop bc ld a, [$d265] - ld hl, $749c + ld hl, UnknownText_0x1749c cp $ff jr z, .asm_1749b - ld hl, $74a1 + ld hl, UnknownText_0x174a1 and a jr z, .asm_1749b - ld hl, $74a6 - cp $e6 + ld hl, UnknownText_0x174a6 + cp 230 jr nc, .asm_1749b - cp $46 - ld hl, $74ab + cp 70 + ld hl, UnknownText_0x174ab jr nc, .asm_1749b - ld hl, $74b0 + ld hl, UnknownText_0x174b0 .asm_1749b ret ; 1749c -INCBIN "baserom.gbc",$1749c,$174ba - $1749c +UnknownText_0x1749c: ; 0x1749c + ; It's brimming with energy. + text_jump UnknownText_0x1c0e54 + db "@" +; 0x174a1 + +UnknownText_0x174a1: ; 0x174a1 + ; It has no interest in @ . + text_jump UnknownText_0x1c0e6f + db "@" +; 0x174a6 + +UnknownText_0x174a6: ; 0x174a6 + ; It appears to care for @ . + text_jump UnknownText_0x1c0e8d + db "@" +; 0x174ab + +UnknownText_0x174ab: ; 0x174ab + ; It's friendly with @ . + text_jump UnknownText_0x1c0eac + db "@" +; 0x174b0 + +UnknownText_0x174b0: ; 0x174b0 + ; It shows interest in @ . + text_jump UnknownText_0x1c0ec6 + db "@" +; 0x174b5 + +Function_174b5: ; 174b5 + ld hl, String_174b9 + ret +; 174b9 + +String_174b9: ; 174b9 + db "@" +; 174ba SECTION "Tileset Data 1", ROMX, BANK[TILESETS_1] @@ -53701,10 +53815,100 @@ Function4cffe:: ; 4cffe ret ; 4d01e -INCBIN "baserom.gbc",$4d01e,$4d15b - $4d01e +MapTriggers:: ; 4d01e +; Map triggers + +trigger_def: MACRO +; db group, map +; dw address + map \1 + dw \2 +ENDM + + trigger_def POKECENTER_2F, wPokecenter2FTrigger + trigger_def TRADE_CENTER, wTradeCenterTrigger + trigger_def COLOSSEUM, wColosseumTrigger + trigger_def TIME_CAPSULE, wTimeCapsuleTrigger + trigger_def POWER_PLANT, wPowerPlantTrigger + trigger_def CERULEAN_GYM, wCeruleanGymTrigger + trigger_def ROUTE_25, wRoute25Trigger + trigger_def TRAINER_HOUSE_B1F, wTrainerHouseB1FTrigger + trigger_def VICTORY_ROAD_GATE, wVictoryRoadGateTrigger + trigger_def SAFFRON_TRAIN_STATION, wSaffronTrainStationTrigger + trigger_def ROUTE_16_GATE, wRoute16GateTrigger + trigger_def ROUTE_17_18_GATE, wRoute1718GateTrigger + trigger_def INDIGO_PLATEAU_POKECENTER_1F, wIndigoPlateauPokecenter1FTrigger + trigger_def WILLS_ROOM, wWillsRoomTrigger + trigger_def KOGAS_ROOM, wKogasRoomTrigger + trigger_def BRUNOS_ROOM, wBrunosRoomTrigger + trigger_def KARENS_ROOM, wKarensRoomTrigger + trigger_def LANCES_ROOM, wLancesRoomTrigger + trigger_def HALL_OF_FAME, wHallOfFameTrigger + trigger_def ROUTE_27, wRoute27Trigger + trigger_def NEW_BARK_TOWN, wNewBarkTownTrigger + trigger_def ELMS_LAB, wElmsLabTrigger + trigger_def KRISS_HOUSE_1F, wKrissHouse1FTrigger + trigger_def ROUTE_29, wRoute29Trigger + trigger_def CHERRYGROVE_CITY, wCherrygroveCityTrigger + trigger_def MR_POKEMONS_HOUSE, wMrPokemonsHouseTrigger + trigger_def ROUTE_32, wRoute32Trigger + trigger_def ROUTE_35_NATIONAL_PARK_GATE, wRoute35NationalParkGateTrigger + trigger_def ROUTE_36, wRoute36Trigger + trigger_def ROUTE_36_NATIONAL_PARK_GATE, wRoute36NationalParkGateTrigger + trigger_def AZALEA_TOWN, wAzaleaTownTrigger + trigger_def GOLDENROD_GYM, wGoldenrodGymTrigger + trigger_def GOLDENROD_MAGNET_TRAIN_STATION, wGoldenrodMagnetTrainStationTrigger + trigger_def GOLDENROD_POKECENTER_1F, wGoldenrodPokecenter1FTrigger + trigger_def OLIVINE_CITY, wOlivineCityTrigger + trigger_def ROUTE_34, wRoute34Trigger + trigger_def ROUTE_34_ILEX_FOREST_GATE, wRoute34IlexForestGateTrigger + trigger_def ECRUTEAK_HOUSE, wEcruteakHouseTrigger + trigger_def WISE_TRIOS_ROOM, wWiseTriosRoomTrigger + trigger_def ECRUTEAK_POKECENTER_1F, wEcruteakPokecenter1FTrigger + trigger_def ECRUTEAK_GYM, wEcruteakGymTrigger + trigger_def MAHOGANY_TOWN, wMahoganyTownTrigger + trigger_def ROUTE_42, wRoute42Trigger + trigger_def CIANWOOD_CITY, wCianwoodCityTrigger + trigger_def BATTLE_TOWER_1F, wBattleTower1FTrigger + trigger_def BATTLE_TOWER_BATTLE_ROOM, wBattleTowerBattleRoomTrigger + trigger_def BATTLE_TOWER_ELEVATOR, wBattleTowerElevatorTrigger + trigger_def BATTLE_TOWER_HALLWAY, wBattleTowerHallwayTrigger + trigger_def BATTLE_TOWER_OUTSIDE, wBattleTowerOutsideTrigger + trigger_def ROUTE_43_GATE, wRoute43GateTrigger + trigger_def MOUNT_MOON, wMountMoonTrigger + trigger_def SPROUT_TOWER_3F, wSproutTower3FTrigger + trigger_def TIN_TOWER_1F, wTinTower1FTrigger + trigger_def BURNED_TOWER_1F, wBurnedTower1FTrigger + trigger_def BURNED_TOWER_B1F, wBurnedTowerB1FTrigger + trigger_def RADIO_TOWER_5F, wRadioTower5FTrigger + trigger_def RUINS_OF_ALPH_OUTSIDE, wRuinsOfAlphOutsideTrigger + trigger_def RUINS_OF_ALPH_RESEARCH_CENTER, wRuinsOfAlphResearchCenterTrigger + trigger_def RUINS_OF_ALPH_HO_OH_CHAMBER, wRuinsOfAlphHoOhChamberTrigger + trigger_def RUINS_OF_ALPH_KABUTO_CHAMBER, wRuinsOfAlphKabutoChamberTrigger + trigger_def RUINS_OF_ALPH_OMANYTE_CHAMBER, wRuinsOfAlphOmanyteChamberTrigger + trigger_def RUINS_OF_ALPH_AERODACTYL_CHAMBER, wRuinsOfAlphAerodactylChamberTrigger + trigger_def RUINS_OF_ALPH_INNER_CHAMBER, wRuinsOfAlphInnerChamberTrigger + trigger_def MAHOGANY_MART_1F, wMahoganyMart1FTrigger + trigger_def TEAM_ROCKET_BASE_B1F, wTeamRocketBaseB1FTrigger + trigger_def TEAM_ROCKET_BASE_B2F, wTeamRocketBaseB2FTrigger + trigger_def TEAM_ROCKET_BASE_B3F, wTeamRocketBaseB3FTrigger + trigger_def UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES, wUndergroundPathSwitchRoomEntrancesTrigger + trigger_def SILVER_CAVE_ROOM_3, wSilverCaveRoom3Trigger + trigger_def VICTORY_ROAD, wVictoryRoadTrigger + trigger_def DRAGONS_DEN_B1F, wDragonsDenB1FTrigger + trigger_def DRAGON_SHRINE, wDragonShrineTrigger + trigger_def OLIVINE_PORT, wOlivinePortTrigger + trigger_def VERMILION_PORT, wVermilionPortTrigger + trigger_def FAST_SHIP_1F, wFastShip1FTrigger + trigger_def FAST_SHIP_B1F, wFastShipB1FTrigger + trigger_def MOUNT_MOON_SQUARE, wMountMoonSquareTrigger + trigger_def MOBILE_TRADE_ROOM_MOBILE, wMobileTradeRoomMobileTrigger + trigger_def MOBILE_BATTLE_ROOM, wMobileBattleRoomTrigger + db $ff +; 4d15b -Function4d15b: ; 4d15b +Function4d15b:: ; 4d15b ld hl, EnemyMoveAnimation ld a, [$d196] and a @@ -61275,12 +61479,12 @@ Function842ab: ; 842ab INCBIN "baserom.gbc",$842b7,$842db - $842b7 -Function842db: ; 842db +Function842db:: ; 842db ld a, [$c2d5] add a ld e, a - ld d, $0 - ld hl, $42ea + ld d, 0 + ld hl, Jumptable_842ea add hl, de ld a, [hli] ld h, [hl] @@ -91894,7 +92098,7 @@ Function1045b0: ; 1045b0 call Function210f call Function2e50 call Function2e5d - call Function212a + call GetCurrentMapTrigger call Function2e56 ld a, $5 call Function263b @@ -98548,7 +98752,7 @@ Function11b7e5: ; 11b7e5 ld b, a ld a, [MapNumber] ld c, a - call Function2147 + call GetMapTrigger ld a, d or e jr z, .asm_11b872 diff --git a/stats/egg_move_pointers.asm b/stats/egg_move_pointers.asm index 76b9f1a92..11665f23e 100644 --- a/stats/egg_move_pointers.asm +++ b/stats/egg_move_pointers.asm @@ -1,4 +1,4 @@ -EggMovePointers: ; 0x23b11 +EggMovePointers:: ; 0x23b11 dw BulbasaurEggMoves dw NoEggMoves dw NoEggMoves diff --git a/stats/egg_moves.asm b/stats/egg_moves.asm index 185be1cb3..bba403c01 100644 --- a/stats/egg_moves.asm +++ b/stats/egg_moves.asm @@ -13,6 +13,8 @@ SECTION "Egg Moves", ROMX, BANK[EGG_MOVES] INCLUDE "stats/egg_move_pointers.asm" +EggMoves:: + BulbasaurEggMoves: db LIGHT_SCREEN db SKULL_BASH @@ -1782,6 +1782,89 @@ UndergroundSwitchPositions:: ; d963 FarfetchdPosition:: ; d964 ds 1 ; which position the ilex farfetch'd is in +SECTION "Map Triggers", WRAMX[$d972], BANK[1] + +wPokecenter2FTrigger:: ds 1 ; d972 +wTradeCenterTrigger:: ds 1 ; d973 +wColosseumTrigger:: ds 1 ; d974 +wTimeCapsuleTrigger:: ds 1 ; d975 +wPowerPlantTrigger:: ds 1 ; d976 +wCeruleanGymTrigger:: ds 1 ; d977 +wRoute25Trigger:: ds 1 ; d978 +wTrainerHouseB1FTrigger:: ds 1 ; d979 +wVictoryRoadGateTrigger:: ds 1 ; d97a +wSaffronTrainStationTrigger:: ds 1 ; d97b +wRoute16GateTrigger:: ds 1 ; d97c +wRoute1718GateTrigger:: ds 1 ; d97d +wIndigoPlateauPokecenter1FTrigger:: ds 1 ; d97e +wWillsRoomTrigger:: ds 1 ; d97f +wKogasRoomTrigger:: ds 1 ; d980 +wBrunosRoomTrigger:: ds 1 ; d981 +wKarensRoomTrigger:: ds 1 ; d982 +wLancesRoomTrigger:: ds 1 ; d983 +wHallOfFameTrigger:: ds 1 ; d984 +wRoute27Trigger:: ds 1 ; d985 +wNewBarkTownTrigger:: ds 1 ; d986 +wElmsLabTrigger:: ds 1 ; d987 +wKrissHouse1FTrigger:: ds 1 ; d988 +wRoute29Trigger:: ds 1 ; d989 +wCherrygroveCityTrigger:: ds 1 ; d98a +wMrPokemonsHouseTrigger:: ds 1 ; d98b +wRoute32Trigger:: ds 1 ; d98c +wRoute35NationalParkGateTrigger:: ds 1 ; d98d +wRoute36Trigger:: ds 1 ; d98e +wRoute36NationalParkGateTrigger:: ds 1 ; d98f +wAzaleaTownTrigger:: ds 1 ; d990 +wGoldenrodGymTrigger:: ds 1 ; d991 +wGoldenrodMagnetTrainStationTrigger:: ds 1 ; d992 +wGoldenrodPokecenter1FTrigger:: ds 1 ; d993 +wOlivineCityTrigger:: ds 1 ; d994 +wRoute34Trigger:: ds 1 ; d995 +wRoute34IlexForestGateTrigger:: ds 1 ; d996 +wEcruteakHouseTrigger:: ds 1 ; d997 +wWiseTriosRoomTrigger:: ds 1 ; d998 +wEcruteakPokecenter1FTrigger:: ds 1 ; d999 +wEcruteakGymTrigger:: ds 1 ; d99a +wMahoganyTownTrigger:: ds 1 ; d99b +wRoute42Trigger:: ds 1 ; d99c +wCianwoodCityTrigger:: ds 1 ; d99d +wBattleTower1FTrigger:: ds 1 ; d99e +wBattleTowerBattleRoomTrigger:: ds 1 ; d99f +wBattleTowerElevatorTrigger:: ds 1 ; d9a0 +wBattleTowerHallwayTrigger:: ds 1 ; d9a1 +wBattleTowerOutsideTrigger:: ds 1 ; d9a2 +wRoute43GateTrigger:: ds 1 ; d9a3 +wMountMoonTrigger:: ds 1 ; d9a4 +wSproutTower3FTrigger:: ds 1 ; d9a5 +wTinTower1FTrigger:: ds 1 ; d9a6 +wBurnedTower1FTrigger:: ds 1 ; d9a7 +wBurnedTowerB1FTrigger:: ds 1 ; d9a8 +wRadioTower5FTrigger:: ds 1 ; d9a9 +wRuinsOfAlphOutsideTrigger:: ds 1 ; d9aa +wRuinsOfAlphResearchCenterTrigger:: ds 1 ; d9ab +wRuinsOfAlphHoOhChamberTrigger:: ds 1 ; d9ac +wRuinsOfAlphKabutoChamberTrigger:: ds 1 ; d9ad +wRuinsOfAlphOmanyteChamberTrigger:: ds 1 ; d9ae +wRuinsOfAlphAerodactylChamberTrigger:: ds 1 ; d9af +wRuinsOfAlphInnerChamberTrigger:: ds 1 ; d9b0 +wMahoganyMart1FTrigger:: ds 1 ; d9b1 +wTeamRocketBaseB1FTrigger:: ds 1 ; d9b2 +wTeamRocketBaseB2FTrigger:: ds 1 ; d9b3 +wTeamRocketBaseB3FTrigger:: ds 1 ; d9b4 +wUndergroundPathSwitchRoomEntrancesTrigger:: ds 1 ; d9b5 +wSilverCaveRoom3Trigger:: ds 1 ; d9b6 +wVictoryRoadTrigger:: ds 1 ; d9b7 +wDragonsDenB1FTrigger:: ds 1 ; d9b8 +wDragonShrineTrigger:: ds 1 ; d9b9 +wOlivinePortTrigger:: ds 1 ; d9ba +wVermilionPortTrigger:: ds 1 ; d9bb +wFastShip1FTrigger:: ds 1 ; d9bc +wFastShipB1FTrigger:: ds 1 ; d9bd +wMountMoonSquareTrigger:: ds 1 ; d9be +wMobileTradeRoomMobileTrigger:: ds 1 ; d9bf +wMobileBattleRoomTrigger:: ds 1 ; d9c0 + + SECTION "Events",WRAMX[$da72],BANK[1] EventFlags:: ; da72 |