ref: f676c3d357417c81daa33544536213ae85a5472f
parent: 0b6cb7a3b601875b21f6a2e2a1ab20490eb93921
parent: 7ab8f76117e13a192a1f4f797ee73c48f6154cff
author: Bryan Bishop <[email protected]>
date: Mon Mar 3 18:38:54 EST 2014
Merge pull request #237 from yenatch/incbins Map triggers and egg hatching.
--- a/engine/scripting.asm
+++ b/engine/scripting.asm
@@ -1884,7 +1884,7 @@
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 @@
; fallthrough
Unknown_975fd: ; 0x975fd
- call Function2147
+ call GetMapTrigger
ld a, d
or e
jr z, .asm_97608 ; 0x97602 $4
--- a/home.asm
+++ b/home.asm
@@ -1765,13 +1765,14 @@
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,10 +1784,10 @@
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
@@ -1793,6 +1794,7 @@
add hl, bc
add hl, bc
add hl, bc
+
ld e, [hl]
inc hl
ld d, [hl]
@@ -1804,10 +1806,10 @@
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 @@
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 @@
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 @@
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
--- a/home/map.asm
+++ b/home/map.asm
@@ -24,7 +24,7 @@
ret
; 212a
-Function212a:: ; 212a
+GetCurrentMapTrigger:: ; 212a
ld a, [MapGroup]
ld b, a
ld a, [MapNumber]
@@ -32,7 +32,7 @@
xor a
ld [$dbf7], a
ld [$dbf8], a
- call Function2147
+ call GetMapTrigger
ret c
ld a, e
ld [$dbf7], a
@@ -42,14 +42,14 @@
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 @@
ld bc, TileMapEnd - TileMap
call ByteFill
- ld a, $13
+ ld a, BANK(Function4d15b)
rst Bankswitch
- call $515b
+ call Function4d15b
pop af
rst Bankswitch
--- a/home/menu.asm
+++ b/home/menu.asm
@@ -586,10 +586,10 @@
Function2057:: ; 2057
ld a, [hROMBank]
push af
- ld a, $21
+ ld a, BANK(Function842db)
rst Bankswitch
- call $42db
+ call Function842db
pop af
rst Bankswitch
--- a/home/text.asm
+++ b/home/text.asm
@@ -209,7 +209,7 @@
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 @@
cp $56
jp z, Function11d3
cp $57
- jp z, $137c
+ jp z, Function137c
cp $58
jp z, Function135a
cp $4a
@@ -269,9 +269,9 @@
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 @@
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,7 +437,7 @@
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
@@ -444,15 +444,17 @@
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 @@
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 @@
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 @@
or a
call z, Function13cd
+Function1337:: ; 1337
push de
call Function138c
call Function138c
@@ -675,12 +681,12 @@
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 @@
; 13e0
Function13e0:: ; 13e0
- ld hl, $13e4
+ ld hl, String_13e4
ret
-.string_13e4
+String_13e4: ; 13e4
db "@"
; 13e5
--- a/macros.asm
+++ b/macros.asm
@@ -20,6 +20,11 @@
dw \2
ENDM
+dbbw: MACRO
+ db \1, \2
+ dw \3
+ ENDM
+
dn: MACRO
db \1 << 4 + \2
ENDM
--- a/main.asm
+++ b/main.asm
@@ -29765,14 +29765,14 @@
; 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,15 +29780,15 @@
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
@@ -29795,9 +29795,37 @@
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
call Function16ed6
ld c, $0
@@ -29842,16 +29870,16 @@
.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 @@
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 @@
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 @@
jp z, Function1708a
push de
push hl
- cp $fd
+ cp EGG
jp nz, Function1707d
ld a, [hl]
and a
@@ -30105,7 +30133,7 @@
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 @@
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 @@
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,7 +30193,7 @@
ld a, [CurPartySpecies] ; $d108
push af
call Function1728f
- ld hl, $70b0
+ ld hl, UnknownText_0x170b0
call PrintText
pop af
ld [CurPartySpecies], a ; $d108
@@ -30166,12 +30200,28 @@
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
ld d, h
@@ -30204,18 +30254,20 @@
; 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 @@
.asm_17107
call Function1720b
- ld b, $4
+ ld b, NUM_MOVES
.asm_1710c
ld a, [de]
cp [hl]
@@ -30242,25 +30294,25 @@
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 @@
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 @@
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 @@
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 @@
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 @@
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,14 +30533,14 @@
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
@@ -30495,15 +30547,15 @@
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 @@
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 @@
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 @@
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 @@
ret
Function17421: ; 17421
- ld hl, $7467
+ ld hl, UnknownText_0x17467
call PrintText
ld a, [BreedMon1Species]
call Function37ce
@@ -30662,7 +30729,7 @@
jp PrintText
Function17440: ; 17440
- ld hl, $7462
+ ld hl, UnknownText_0x17462
call PrintText
ld a, [BreedMon2Species]
call Function37ce
@@ -30678,8 +30745,18 @@
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
ld de, StringBuffer1
@@ -30688,27 +30765,64 @@
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]
INCLUDE "tilesets/data_1.asm"
@@ -53701,10 +53815,100 @@
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
-Function4d15b: ; 4d15b
+ 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
ld hl, EnemyMoveAnimation
ld a, [$d196]
and a
@@ -61275,12 +61479,12 @@
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 @@
call Function210f
call Function2e50
call Function2e5d
- call Function212a
+ call GetCurrentMapTrigger
call Function2e56
ld a, $5
call Function263b
@@ -98548,7 +98752,7 @@
ld b, a
ld a, [MapNumber]
ld c, a
- call Function2147
+ call GetMapTrigger
ld a, d
or e
jr z, .asm_11b872
--- 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
--- a/stats/egg_moves.asm
+++ b/stats/egg_moves.asm
@@ -13,6 +13,8 @@
INCLUDE "stats/egg_move_pointers.asm"
+EggMoves::
+
BulbasaurEggMoves:
db LIGHT_SCREEN
db SKULL_BASH
--- a/wram.asm
+++ b/wram.asm
@@ -1782,6 +1782,89 @@
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