Merge pull request #411 from roukaour/master

Clean up more labels, constants, and file names
This commit is contained in:
yenatch 2017-12-12 00:08:54 -05:00 committed by GitHub
commit f6942b9a13
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
903 changed files with 12223 additions and 12105 deletions

View File

@ -197,17 +197,16 @@ gfx/trainer_card/kris_card.2bpp: rgbgfx += -h
gfx/battle/dude.2bpp: rgbgfx += -h
gfx/misc/unknown_egg.2bpp: rgbgfx += -h
gfx/pokegear/pokegear.2bpp: rgbgfx += -x2
gfx/pokegear/pokegear_sprites.2bpp: tools/gfx += --trim-whitespace
gfx/unknown/0f8f34.1bpp: tools/gfx += --trim-whitespace
gfx/unknown/16c173.2bpp: tools/gfx += --remove-duplicates --remove-xflip
gfx/unknown/170d16.2bpp: tools/gfx += --trim-whitespace
gfx/unknown/1715a4.2bpp: tools/gfx += --trim-whitespace
gfx/unknown/1715a4_nonmatching.2bpp: tools/gfx += --remove-duplicates --remove-xflip
gfx/unknown/171db1.2bpp: tools/gfx += --trim-whitespace
gfx/unknown/ascii_font.2bpp: tools/gfx += --trim-whitespace
gfx/unknown/bold_font.1bpp: tools/gfx += --trim-whitespace
gfx/unknown/egg_animated.2bpp: tools/gfx += --trim-whitespace
gfx/unknown/egg_animated_nonmatching.2bpp: tools/gfx += --remove-duplicates --remove-xflip
gfx/unknown/mobile_splash.2bpp: tools/gfx += --remove-duplicates --remove-xflip
gfx/unknown/pichu_animated.2bpp: tools/gfx += --trim-whitespace
gfx/unknown/unknown_egg.2bpp: rgbgfx += -h
%.bin: ;

View File

@ -4,19 +4,10 @@ INCLUDE "includes.asm"
SECTION "Audio", ROMX
INCLUDE "audio/engine.asm"
; What music plays when a trainer notices you
INCLUDE "audio/trainer_encounters.asm"
Music:
INCLUDE "trainers/encounter_music.asm"
INCLUDE "audio/music_pointers.asm"
INCLUDE "audio/music/nothing.asm"
Cries:
INCLUDE "audio/cry_pointers.asm"
SFX:
INCLUDE "audio/sfx_pointers.asm"

View File

@ -1,4 +1,4 @@
; e91b0
Cries: ; e91b0
dba Cry_Nidoran_M
dba Cry_Nidoran_F
dba Cry_Slowpoke

301
audio/drumkits.asm Normal file
View File

@ -0,0 +1,301 @@
Drumkits: ; e8e52
dw Drumkit0
dw Drumkit1
dw Drumkit2
dw Drumkit3
dw Drumkit4
dw Drumkit5
; e8e5e
Drumkit0: ; e8e5e
dw Drum00 ; rest
dw Snare1 ; c
dw Snare2 ; c#
dw Snare3 ; d
dw Snare4 ; d#
dw Drum05 ; e
dw Triangle1 ; f
dw Triangle2 ; f#
dw HiHat1 ; g
dw Snare5 ; g#
dw Snare6 ; a
dw Snare7 ; a#
dw HiHat2 ; b
Drumkit1: ; e8e78
dw Drum00
dw HiHat1
dw Snare5
dw Snare6
dw Snare7
dw HiHat2
dw HiHat3
dw Snare8
dw Triangle3
dw Triangle4
dw Snare9
dw Snare10
dw Snare11
Drumkit2: ; e8e92
dw Drum00
dw Snare1
dw Snare9
dw Snare10
dw Snare11
dw Drum05
dw Triangle1
dw Triangle2
dw HiHat1
dw Snare5
dw Snare6
dw Snare7
dw HiHat2
Drumkit3: ; e8eac
dw Drum21
dw Snare12
dw Snare13
dw Snare14
dw Kick1
dw Triangle5
dw Drum20
dw Drum27
dw Drum28
dw Drum29
dw Drum21
dw Kick2
dw Crash2
Drumkit4: ; e8ec6
dw Drum21
dw Drum20
dw Snare13
dw Snare14
dw Kick1
dw Drum33
dw Triangle5
dw Drum35
dw Drum31
dw Drum32
dw Drum36
dw Kick2
dw Crash1
Drumkit5: ; e8ee0
dw Drum00
dw Snare9
dw Snare10
dw Snare11
dw Drum27
dw Drum28
dw Drum29
dw Drum05
dw Triangle1
dw Crash1
dw Snare14
dw Snare13
dw Kick2
; e8efa
Drum00: ; e8efa
; unused
noise C#, 1, $11, $00
endchannel
; e8efe
Snare1: ; e8efe
noise C#, 1, $c1, $33
endchannel
; e8f02
Snare2: ; e8f02
noise C#, 1, $b1, $33
endchannel
; e8f06
Snare3: ; e8f06
noise C#, 1, $a1, $33
endchannel
; e8f0a
Snare4: ; e8f0a
noise C#, 1, $81, $33
endchannel
; e8f0e
Drum05: ; e8f0e
noise C#, 8, $84, $37
noise C#, 7, $84, $36
noise C#, 6, $83, $35
noise C#, 5, $83, $34
noise C#, 4, $82, $33
noise C#, 3, $81, $32
endchannel
; e8f21
Triangle1: ; e8f21
noise C#, 1, $51, $2a
endchannel
; e8f25
Triangle2: ; e8f25
noise C#, 2, $41, $2b
noise C#, 1, $61, $2a
endchannel
; e8f2c
HiHat1: ; e8f2c
noise C#, 1, $81, $10
endchannel
; e8f30
Snare5: ; e8f30
noise C#, 1, $82, $23
endchannel
; e8f34
Snare6: ; e8f34
noise C#, 1, $82, $25
endchannel
; e8f38
Snare7: ; e8f38
noise C#, 1, $82, $26
endchannel
; e8f3c
HiHat2: ; e8f3c
noise C#, 1, $a1, $10
endchannel
; e8f40
HiHat3: ; e8f40
noise C#, 1, $a2, $11
endchannel
; e8f44
Snare8: ; e8f44
noise C#, 1, $a2, $50
endchannel
; e8f48
Triangle3: ; e8f48
noise C#, 1, $a1, $18
noise C#, 1, $31, $33
endchannel
; e8f4f
Triangle4: ; e8f4f
noise C#, 3, $91, $28
noise C#, 1, $71, $18
endchannel
; e8f56
Snare9: ; e8f56
noise C#, 1, $91, $22
endchannel
; e8f5a
Snare10: ; e8f5a
noise C#, 1, $71, $22
endchannel
; e8f5e
Snare11: ; e8f5e
noise C#, 1, $61, $22
endchannel
; e8f62
Drum20: ; e8f62
noise C#, 1, $11, $11
endchannel
; e8f66
Drum21: ; e8f66
endchannel
; e8f67
Snare12: ; e8f67
noise C#, 1, $91, $33
endchannel
; e8f6b
Snare13: ; e8f6b
noise C#, 1, $51, $32
endchannel
; e8f6f
Snare14: ; e8f6f
noise C#, 1, $81, $31
endchannel
; e8f73
Kick1: ; e8f73
noise C#, 1, $88, $6b
noise C#, 1, $71, $00
endchannel
; e8f7a
Triangle5: ; e8f7a
noise D_, 1, $91, $18
endchannel
; e8f7e
Drum27: ; e8f7e
noise C#, 8, $92, $10
endchannel
; e8f82
Drum28: ; e8f82
noise D_, 4, $91, $00
noise D_, 4, $11, $00
endchannel
; e8f89
Drum29: ; e8f89
noise D_, 4, $91, $11
noise D_, 4, $11, $00
endchannel
; e8f90
Crash1: ; e8f90
noise D_, 4, $88, $15
noise C#, 1, $65, $12
endchannel
; e8f97
Drum31: ; e8f97
noise D_, 4, $51, $21
noise D_, 4, $11, $11
endchannel
; e8f9e
Drum32: ; e8f9e
noise D_, 4, $51, $50
noise D_, 4, $11, $11
endchannel
; e8fa5
Drum33: ; e8fa5
noise C#, 1, $a1, $31
endchannel
; e8fa9
Crash2: ; e8fa9
noise C#, 1, $84, $12
endchannel
; e8fad
Drum35: ; e8fad
noise D_, 4, $81, $00
noise D_, 4, $11, $00
endchannel
; e8fb4
Drum36: ; e8fb4
noise D_, 4, $81, $21
noise D_, 4, $11, $11
endchannel
; e8fbb
Kick2: ; e8fbb
noise C#, 1, $a8, $6b
noise C#, 1, $71, $00
endchannel
; e8fc2

View File

@ -2882,350 +2882,13 @@ LoadMusicByte:: ; e8d76
; e8d80
FrequencyTable: ; e8d80
dw 0 ; __
dw $f82c ; C_
dw $f89d ; C#
dw $f907 ; D_
dw $f96b ; D#
dw $f9ca ; E_
dw $fa23 ; F_
dw $fa77 ; F#
dw $fac7 ; G_
dw $fb12 ; G#
dw $fb58 ; A_
dw $fb9b ; A#
dw $fbda ; B_
dw $fc16 ; C_
dw $fc4e ; C#
dw $fc83 ; D_
dw $fcb5 ; D#
dw $fce5 ; E_
dw $fd11 ; F_
dw $fd3b ; F#
dw $fd63 ; G_
dw $fd89 ; G#
dw $fdac ; A_
dw $fdcd ; A#
dw $fded ; B_
; e8db2
WaveSamples: ; e8db2
; these are streams of 32 4-bit values used as wavepatterns
; nothing interesting here!
dn 0, 2, 4, 6, 8, 10, 12, 14, 15, 15, 15, 14, 14, 13, 13, 12, 12, 11, 10, 9, 8, 7, 6, 5, 4, 4, 3, 3, 2, 2, 1, 1
dn 0, 2, 4, 6, 8, 10, 12, 14, 14, 15, 15, 15, 15, 14, 14, 14, 13, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 2, 1, 1
dn 1, 3, 6, 9, 11, 13, 14, 14, 14, 14, 15, 15, 15, 15, 14, 13, 13, 14, 15, 15, 15, 15, 14, 14, 14, 14, 13, 11, 9, 6, 3, 1
dn 0, 2, 4, 6, 8, 10, 12, 13, 14, 15, 15, 14, 13, 14, 15, 15, 14, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0
dn 0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 14, 15, 7, 7, 15, 14, 14, 13, 12, 10, 8, 7, 6, 5, 4, 3, 2, 1, 0
dn 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 3, 3, 2, 2, 1, 1, 15, 15, 14, 14, 12, 12, 10, 10, 8, 8, 10, 10, 12, 12, 14, 14
dn 0, 2, 4, 6, 8, 10, 12, 14, 12, 11, 10, 9, 8, 7, 6, 5, 15, 15, 15, 14, 14, 13, 13, 12, 4, 4, 3, 3, 2, 2, 1, 1
dn 12, 0, 10, 9, 8, 7, 15, 5, 15, 15, 15, 14, 14, 13, 13, 12, 4, 4, 3, 3, 2, 2, 15, 1, 0, 2, 4, 6, 8, 10, 12, 14
dn 4, 4, 3, 3, 2, 2, 1, 15, 0, 0, 4, 6, 8, 10, 12, 14, 15, 8, 15, 14, 14, 13, 13, 12, 12, 11, 10, 9, 8, 7, 6, 5
dn 1, 1, 0, 0, 0, 0, 0, 8, 0, 0, 1, 3, 5, 7, 9, 10, 11, 4, 11, 10, 10, 9, 9, 8, 8, 7, 6, 5, 4, 3, 2, 1
; e8e52
INCLUDE "data/audio/notes.asm"
Drumkits: ; e8e52
dw Drumkit0
dw Drumkit1
dw Drumkit2
dw Drumkit3
dw Drumkit4
dw Drumkit5
; e8e5e
INCLUDE "data/audio/wave_samples.asm"
Drumkit0: ; e8e5e
dw Drum00 ; rest
dw Snare1 ; c
dw Snare2 ; c#
dw Snare3 ; d
dw Snare4 ; d#
dw Drum05 ; e
dw Triangle1 ; f
dw Triangle2 ; f#
dw HiHat1 ; g
dw Snare5 ; g#
dw Snare6 ; a
dw Snare7 ; a#
dw HiHat2 ; b
Drumkit1: ; e8e78
dw Drum00
dw HiHat1
dw Snare5
dw Snare6
dw Snare7
dw HiHat2
dw HiHat3
dw Snare8
dw Triangle3
dw Triangle4
dw Snare9
dw Snare10
dw Snare11
Drumkit2: ; e8e92
dw Drum00
dw Snare1
dw Snare9
dw Snare10
dw Snare11
dw Drum05
dw Triangle1
dw Triangle2
dw HiHat1
dw Snare5
dw Snare6
dw Snare7
dw HiHat2
Drumkit3: ; e8eac
dw Drum21
dw Snare12
dw Snare13
dw Snare14
dw Kick1
dw Triangle5
dw Drum20
dw Drum27
dw Drum28
dw Drum29
dw Drum21
dw Kick2
dw Crash2
Drumkit4: ; e8ec6
dw Drum21
dw Drum20
dw Snare13
dw Snare14
dw Kick1
dw Drum33
dw Triangle5
dw Drum35
dw Drum31
dw Drum32
dw Drum36
dw Kick2
dw Crash1
Drumkit5: ; e8ee0
dw Drum00
dw Snare9
dw Snare10
dw Snare11
dw Drum27
dw Drum28
dw Drum29
dw Drum05
dw Triangle1
dw Crash1
dw Snare14
dw Snare13
dw Kick2
; e8efa
INCLUDE "audio/drumkits.asm"
Drum00: ; e8efa
; unused
noise C#, 1, $11, $00
endchannel
; e8efe
Snare1: ; e8efe
noise C#, 1, $c1, $33
endchannel
; e8f02
Snare2: ; e8f02
noise C#, 1, $b1, $33
endchannel
; e8f06
Snare3: ; e8f06
noise C#, 1, $a1, $33
endchannel
; e8f0a
Snare4: ; e8f0a
noise C#, 1, $81, $33
endchannel
; e8f0e
Drum05: ; e8f0e
noise C#, 8, $84, $37
noise C#, 7, $84, $36
noise C#, 6, $83, $35
noise C#, 5, $83, $34
noise C#, 4, $82, $33
noise C#, 3, $81, $32
endchannel
; e8f21
Triangle1: ; e8f21
noise C#, 1, $51, $2a
endchannel
; e8f25
Triangle2: ; e8f25
noise C#, 2, $41, $2b
noise C#, 1, $61, $2a
endchannel
; e8f2c
HiHat1: ; e8f2c
noise C#, 1, $81, $10
endchannel
; e8f30
Snare5: ; e8f30
noise C#, 1, $82, $23
endchannel
; e8f34
Snare6: ; e8f34
noise C#, 1, $82, $25
endchannel
; e8f38
Snare7: ; e8f38
noise C#, 1, $82, $26
endchannel
; e8f3c
HiHat2: ; e8f3c
noise C#, 1, $a1, $10
endchannel
; e8f40
HiHat3: ; e8f40
noise C#, 1, $a2, $11
endchannel
; e8f44
Snare8: ; e8f44
noise C#, 1, $a2, $50
endchannel
; e8f48
Triangle3: ; e8f48
noise C#, 1, $a1, $18
noise C#, 1, $31, $33
endchannel
; e8f4f
Triangle4: ; e8f4f
noise C#, 3, $91, $28
noise C#, 1, $71, $18
endchannel
; e8f56
Snare9: ; e8f56
noise C#, 1, $91, $22
endchannel
; e8f5a
Snare10: ; e8f5a
noise C#, 1, $71, $22
endchannel
; e8f5e
Snare11: ; e8f5e
noise C#, 1, $61, $22
endchannel
; e8f62
Drum20: ; e8f62
noise C#, 1, $11, $11
endchannel
; e8f66
Drum21: ; e8f66
endchannel
; e8f67
Snare12: ; e8f67
noise C#, 1, $91, $33
endchannel
; e8f6b
Snare13: ; e8f6b
noise C#, 1, $51, $32
endchannel
; e8f6f
Snare14: ; e8f6f
noise C#, 1, $81, $31
endchannel
; e8f73
Kick1: ; e8f73
noise C#, 1, $88, $6b
noise C#, 1, $71, $00
endchannel
; e8f7a
Triangle5: ; e8f7a
noise D_, 1, $91, $18
endchannel
; e8f7e
Drum27: ; e8f7e
noise C#, 8, $92, $10
endchannel
; e8f82
Drum28: ; e8f82
noise D_, 4, $91, $00
noise D_, 4, $11, $00
endchannel
; e8f89
Drum29: ; e8f89
noise D_, 4, $91, $11
noise D_, 4, $11, $00
endchannel
; e8f90
Crash1: ; e8f90
noise D_, 4, $88, $15
noise C#, 1, $65, $12
endchannel
; e8f97
Drum31: ; e8f97
noise D_, 4, $51, $21
noise D_, 4, $11, $11
endchannel
; e8f9e
Drum32: ; e8f9e
noise D_, 4, $51, $50
noise D_, 4, $11, $11
endchannel
; e8fa5
Drum33: ; e8fa5
noise C#, 1, $a1, $31
endchannel
; e8fa9
Crash2: ; e8fa9
noise C#, 1, $84, $12
endchannel
; e8fad
Drum35: ; e8fad
noise D_, 4, $81, $00
noise D_, 4, $11, $00
endchannel
; e8fb4
Drum36: ; e8fb4
noise D_, 4, $81, $21
noise D_, 4, $11, $11
endchannel
; e8fbb
Kick2: ; e8fbb
noise C#, 1, $a8, $6b
noise C#, 1, $71, $00
endchannel
; e8fc2
GetLRTracks: ; e8fc2
; gets the default sound l/r channels
@ -3306,3 +2969,24 @@ ClearChannel: ; e8ffe
ret
; e900a
PlayTrainerEncounterMusic:: ; e900a
; input: e = trainer type
; turn fade off
xor a
ld [MusicFade], a
; play nothing for one frame
push de
ld de, 0 ; id: Music_Nothing
call PlayMusic
call DelayFrame
; play new song
call MaxVolume
pop de
ld d, $00
ld hl, TrainerEncounterMusic
add hl, de
ld e, [hl]
call PlayMusic
ret
; e9027

View File

@ -1,6 +1,8 @@
; See song sections in audio.asm.
; e906e
Music: ; e906e
; entries correspond to MUSIC_* constants
dba Music_Nothing ; 0xe91a3
dba Music_TitleScreen ; 0xeb808
dba Music_Route1 ; 0xec000

View File

@ -1211,16 +1211,16 @@ Sfx_3RdPlace_Ch7: ; f0e56
togglesfx
Sfx_GetEggFromDaycareLady: ; f0e66
Sfx_GetEggFromDaycareMan: ; f0e66
musicheader 4, 5, Sfx_GetEggFromDaycareLady_Ch5
musicheader 1, 6, Sfx_GetEggFromDaycareLady_Ch6
musicheader 1, 7, Sfx_GetEggFromDaycareLady_Ch7
musicheader 1, 8, Sfx_GetEggFromDaycareLady_Ch8
Sfx_GetEggFromDayCareLady: ; f0e66
Sfx_GetEggFromDayCareMan: ; f0e66
musicheader 4, 5, Sfx_GetEggFromDayCareLady_Ch5
musicheader 1, 6, Sfx_GetEggFromDayCareLady_Ch6
musicheader 1, 7, Sfx_GetEggFromDayCareLady_Ch7
musicheader 1, 8, Sfx_GetEggFromDayCareLady_Ch8
; f0e72
Sfx_GetEggFromDaycareLady_Ch5: ; f0e72
Sfx_GetEggFromDaycareMan_Ch5: ; f0e72
Sfx_GetEggFromDayCareLady_Ch5: ; f0e72
Sfx_GetEggFromDayCareMan_Ch5: ; f0e72
togglesfx
tempo 120
volume $77
@ -1253,8 +1253,8 @@ Sfx_GetEggFromDaycareMan_Ch5: ; f0e72
togglesfx
Sfx_GetEggFromDaycareLady_Ch6: ; f0e9b
Sfx_GetEggFromDaycareMan_Ch6: ; f0e9b
Sfx_GetEggFromDayCareLady_Ch6: ; f0e9b
Sfx_GetEggFromDayCareMan_Ch6: ; f0e9b
togglesfx
vibrato $12, $34
dutycycle $3
@ -1284,8 +1284,8 @@ Sfx_GetEggFromDaycareMan_Ch6: ; f0e9b
togglesfx
Sfx_GetEggFromDaycareLady_Ch7: ; f0ebe
Sfx_GetEggFromDaycareMan_Ch7: ; f0ebe
Sfx_GetEggFromDayCareLady_Ch7: ; f0ebe
Sfx_GetEggFromDayCareMan_Ch7: ; f0ebe
togglesfx
notetype $8, $25
note __, 2
@ -1305,8 +1305,8 @@ Sfx_GetEggFromDaycareMan_Ch7: ; f0ebe
togglesfx
Sfx_GetEggFromDaycareLady_Ch8: ; f0ed0
Sfx_GetEggFromDaycareMan_Ch8: ; f0ed0
Sfx_GetEggFromDayCareLady_Ch8: ; f0ed0
Sfx_GetEggFromDayCareMan_Ch8: ; f0ed0
togglesfx
sfxtogglenoise $4
notetype $8

View File

@ -1,4 +1,6 @@
; e927c
SFX: ; e927c
; entries correspond to SFX_* constants
dba Sfx_DexFanfare5079
dba Sfx_Item
dba Sfx_CaughtMon
@ -148,8 +150,8 @@
dba Sfx_Fanfare2
dba Sfx_RegisterPhoneNumber
dba Sfx_3RdPlace
dba Sfx_GetEggFromDaycareMan
dba Sfx_GetEggFromDaycareLady
dba Sfx_GetEggFromDayCareMan
dba Sfx_GetEggFromDayCareLady
dba Sfx_MoveDeleted
dba Sfx_2ndPlace
dba Sfx_1stPlace

View File

@ -1,96 +0,0 @@
; Currently, must be in the same bank as the sound engine.
PlayTrainerEncounterMusic:: ; e900a
; input: e = trainer type
; turn fade off
xor a
ld [MusicFade], a
; play nothing for one frame
push de
ld de, 0 ; id: Music_Nothing
call PlayMusic
call DelayFrame
; play new song
call MaxVolume
pop de
ld d, $00
ld hl, TrainerEncounterMusic
add hl, de
ld e, [hl]
call PlayMusic
ret
; e9027
TrainerEncounterMusic: ; e9027
db MUSIC_HIKER_ENCOUNTER
db MUSIC_YOUNGSTER_ENCOUNTER ; falkner
db MUSIC_LASS_ENCOUNTER ; whitney
db MUSIC_YOUNGSTER_ENCOUNTER ; bugsy
db MUSIC_OFFICER_ENCOUNTER ; morty
db MUSIC_OFFICER_ENCOUNTER ; pryce
db MUSIC_LASS_ENCOUNTER ; jasmine
db MUSIC_OFFICER_ENCOUNTER ; chuck
db MUSIC_BEAUTY_ENCOUNTER ; clair
db MUSIC_RIVAL_ENCOUNTER ; rival1
db MUSIC_HIKER_ENCOUNTER ; pokemon_prof
db MUSIC_HIKER_ENCOUNTER ; will
db MUSIC_HIKER_ENCOUNTER ; cal
db MUSIC_OFFICER_ENCOUNTER ; bruno
db MUSIC_HIKER_ENCOUNTER ; karen
db MUSIC_HIKER_ENCOUNTER ; koga
db MUSIC_OFFICER_ENCOUNTER ; champion
db MUSIC_YOUNGSTER_ENCOUNTER ; brock
db MUSIC_LASS_ENCOUNTER ; misty
db MUSIC_OFFICER_ENCOUNTER ; lt_surge
db MUSIC_ROCKET_ENCOUNTER ; scientist
db MUSIC_OFFICER_ENCOUNTER ; erika
db MUSIC_YOUNGSTER_ENCOUNTER ; youngster
db MUSIC_YOUNGSTER_ENCOUNTER ; schoolboy
db MUSIC_YOUNGSTER_ENCOUNTER ; bird_keeper
db MUSIC_LASS_ENCOUNTER ; lass
db MUSIC_LASS_ENCOUNTER ; janine
db MUSIC_HIKER_ENCOUNTER ; cooltrainerm
db MUSIC_BEAUTY_ENCOUNTER ; cooltrainerf
db MUSIC_BEAUTY_ENCOUNTER ; beauty
db MUSIC_POKEMANIAC_ENCOUNTER ; pokemaniac
db MUSIC_ROCKET_ENCOUNTER ; gruntm
db MUSIC_HIKER_ENCOUNTER ; gentleman
db MUSIC_BEAUTY_ENCOUNTER ; skier
db MUSIC_BEAUTY_ENCOUNTER ; teacher
db MUSIC_BEAUTY_ENCOUNTER ; sabrina
db MUSIC_YOUNGSTER_ENCOUNTER ; bug_catcher
db MUSIC_HIKER_ENCOUNTER ; fisher
db MUSIC_HIKER_ENCOUNTER ; swimmerm
db MUSIC_BEAUTY_ENCOUNTER ; swimmerf
db MUSIC_HIKER_ENCOUNTER ; sailor
db MUSIC_POKEMANIAC_ENCOUNTER ; super_nerd
db MUSIC_RIVAL_ENCOUNTER ; rival2
db MUSIC_HIKER_ENCOUNTER ; guitarist
db MUSIC_HIKER_ENCOUNTER ; hiker
db MUSIC_HIKER_ENCOUNTER ; biker
db MUSIC_OFFICER_ENCOUNTER ; blaine
db MUSIC_POKEMANIAC_ENCOUNTER ; burglar
db MUSIC_HIKER_ENCOUNTER ; firebreather
db MUSIC_POKEMANIAC_ENCOUNTER ; juggler
db MUSIC_HIKER_ENCOUNTER ; blackbelt_t
db MUSIC_ROCKET_ENCOUNTER ; executivem
db MUSIC_YOUNGSTER_ENCOUNTER ; psychic_t
db MUSIC_LASS_ENCOUNTER ; picnicker
db MUSIC_YOUNGSTER_ENCOUNTER ; camper
db MUSIC_ROCKET_ENCOUNTER ; executivef
db MUSIC_SAGE_ENCOUNTER ; sage
db MUSIC_SAGE_ENCOUNTER ; medium
db MUSIC_HIKER_ENCOUNTER ; boarder
db MUSIC_HIKER_ENCOUNTER ; pokefanm
db MUSIC_KIMONO_ENCOUNTER ; kimono_girl
db MUSIC_LASS_ENCOUNTER ; twins
db MUSIC_BEAUTY_ENCOUNTER ; pokefanf
db MUSIC_HIKER_ENCOUNTER ; red
db MUSIC_RIVAL_ENCOUNTER ; blue
db MUSIC_HIKER_ENCOUNTER ; officer
db MUSIC_ROCKET_ENCOUNTER ; gruntf
db MUSIC_HIKER_ENCOUNTER ; mysticalman
db MUSIC_HIKER_ENCOUNTER
db MUSIC_HIKER_ENCOUNTER
db MUSIC_HIKER_ENCOUNTER
; e906e

View File

@ -1,3 +1,5 @@
AIScoring: ; 38591
AI_Basic: ; 38591
; Don't do anything redundant:
; -Using status-only moves if the player can't be statused

View File

@ -1437,13 +1437,13 @@ BattleAnim_SetBGPals: ; cc91a
ld de, UnknBGPals
ld a, [rBGP]
ld b, a
ld c, $7
ld c, 7
call CopyPals
ld hl, OBPals
ld de, UnknOBPals
ld a, [rBGP]
ld b, a
ld c, $2
ld c, 2
call CopyPals
pop af
ld [rSVBK], a
@ -1461,11 +1461,11 @@ BattleAnim_SetOBPals: ; cc94b
push af
ld a, $5
ld [rSVBK], a
ld hl, OBPals + $10
ld de, UnknOBPals + $10
ld hl, OBPals palette PAL_BATTLE_OB_GRAY
ld de, UnknOBPals palette PAL_BATTLE_OB_GRAY
ld a, [rOBP0]
ld b, a
ld c, $2
ld c, 2
call CopyPals
pop af
ld [rSVBK], a

View File

@ -3484,8 +3484,8 @@ IsThePlayerPkmnTypesEffectiveAgainstOTPkmn: ; 3d618
add hl, bc
ld a, [hl]
dec a
ld hl, BaseData + 7 ; type
ld bc, BaseData1 - BaseData0
ld hl, BaseData + BASE_TYPES
ld bc, BASE_DATA_SIZE
call AddNTimes
ld de, EnemyMonType
ld bc, 2
@ -6676,7 +6676,7 @@ CheckSleepingTreeMon: ; 3eb38
; Get list for the time of day
ld hl, .Morn
ld a, [TimeOfDay]
cp DAY
cp DAY_F
jr c, .Check
ld hl, .Day
jr z, .Check

View File

@ -1,6 +1,7 @@
dw 0 ; padding
BattleCommandPointers: ; 3fd28
; entries correspond to constants/effect_command_constants.asm
dw BattleCommand_CheckTurn ; 34084
dw BattleCommand_CheckObedience ; 343db
dw BattleCommand_UsedMoveText ; 34541

View File

@ -9323,21 +9323,21 @@ BattleCommand_ClearHazards: ; 37b39
BattleCommand_HealMorn: ; 37b74
; healmorn
ld b, MORN
ld b, MORN_F
jr BattleCommand_TimeBasedHealContinue
; 37b78
BattleCommand_HealDay: ; 37b78
; healday
ld b, DAY
ld b, DAY_F
jr BattleCommand_TimeBasedHealContinue
; 37b7c
BattleCommand_HealNite: ; 37b7c
; healnite
ld b, NITE
ld b, NITE_F
; fallthrough
; 37b7e

View File

@ -1,3 +1,4 @@
MoveNames::
db "POUND@"
db "KARATE CHOP@"
db "DOUBLESLAP@"

View File

@ -1,3 +1,4 @@
; entries correspond to EFFECT_* constants
dw NormalHit
dw DoSleep
dw PoisonHit

View File

@ -19,567 +19,567 @@ RELATIVE_X EQU $01
; ANIM_OBJ_00
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_00, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $01
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_00, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $01
; ANIM_OBJ_01
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_01, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $01
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_01, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $01
; ANIM_OBJ_02
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_02, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $01
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_02, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $01
; ANIM_OBJ_03
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_00, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $01
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_00, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $01
; ANIM_OBJ_04
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_01, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $01
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_01, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $01
; ANIM_OBJ_05
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_02, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $01
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_02, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $01
; ANIM_OBJ_06
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_03, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $01
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_03, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $01
; ANIM_OBJ_07
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_04, BATTLEANIMFUNC_1B, PAL_BATTLE_GRAY, $01
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_04, BATTLEANIMFUNC_1B, PAL_BATTLE_OB_GRAY, $01
; ANIM_OBJ_08
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_05, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $01
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_05, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $01
; ANIM_OBJ_09
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_06, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $01
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_06, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $01
; ANIM_OBJ_0A
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_07, BATTLEANIMFUNC_09, PAL_BATTLE_GRAY, $01
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_07, BATTLEANIMFUNC_09, PAL_BATTLE_OB_GRAY, $01
; ANIM_OBJ_0B
battleanimobj RELATIVE_X, $aa, BATTLEANIMFRAMESET_10, BATTLEANIMFUNC_10, PAL_BATTLE_RED, $03
battleanimobj RELATIVE_X, $aa, BATTLEANIMFRAMESET_10, BATTLEANIMFUNC_10, PAL_BATTLE_OB_RED, $03
; ANIM_OBJ_0C
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_0E, BATTLEANIMFUNC_04, PAL_BATTLE_RED, $03
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_0E, BATTLEANIMFUNC_04, PAL_BATTLE_OB_RED, $03
; ANIM_OBJ_0D
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_0F, BATTLEANIMFUNC_03, PAL_BATTLE_RED, $03
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_0F, BATTLEANIMFUNC_03, PAL_BATTLE_OB_RED, $03
; ANIM_OBJ_0E
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_10, BATTLEANIMFUNC_08, PAL_BATTLE_RED, $03
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_10, BATTLEANIMFUNC_08, PAL_BATTLE_OB_RED, $03
; ANIM_OBJ_0F
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_0F, BATTLEANIMFUNC_0A, PAL_BATTLE_RED, $03
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_0F, BATTLEANIMFUNC_0A, PAL_BATTLE_OB_RED, $03
; ANIM_OBJ_BURNED
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_11, BATTLEANIMFUNC_03, PAL_BATTLE_RED, $03
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_11, BATTLEANIMFUNC_03, PAL_BATTLE_OB_RED, $03
; ANIM_OBJ_BLIZZARD
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_12, BATTLEANIMFUNC_08, PAL_BATTLE_BLUE, $0a
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_12, BATTLEANIMFUNC_08, PAL_BATTLE_OB_BLUE, $0a
; ANIM_OBJ_12
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_13, BATTLEANIMFUNC_00, PAL_BATTLE_BLUE, $0a
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_13, BATTLEANIMFUNC_00, PAL_BATTLE_OB_BLUE, $0a
; ANIM_OBJ_ICE_BEAM
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_14, BATTLEANIMFUNC_01, PAL_BATTLE_BLUE, $0a
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_14, BATTLEANIMFUNC_01, PAL_BATTLE_OB_BLUE, $0a
; ANIM_OBJ_RAZOR_LEAF
battleanimobj RELATIVE_X | X_FLIP, $78, BATTLEANIMFRAMESET_16, BATTLEANIMFUNC_RAZOR_LEAF, PAL_BATTLE_GREEN, $06
battleanimobj RELATIVE_X | X_FLIP, $78, BATTLEANIMFRAMESET_16, BATTLEANIMFUNC_RAZOR_LEAF, PAL_BATTLE_OB_GREEN, $06
; ANIM_OBJ_POKE_BALL
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_09, BATTLEANIMFUNC_12, PAL_BATTLE_RED, $0b
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_09, BATTLEANIMFUNC_12, PAL_BATTLE_OB_RED, $0b
; ANIM_OBJ_POKE_BALL_BLOCKED
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_09, BATTLEANIMFUNC_13, PAL_BATTLE_RED, $0b
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_09, BATTLEANIMFUNC_13, PAL_BATTLE_OB_RED, $0b
; ANIM_OBJ_17
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_18, BATTLEANIMFUNC_00, PAL_BATTLE_RED, $08
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_18, BATTLEANIMFUNC_00, PAL_BATTLE_OB_RED, $08
; ANIM_OBJ_18
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_18, BATTLEANIMFUNC_00, PAL_BATTLE_RED, $08
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_18, BATTLEANIMFUNC_00, PAL_BATTLE_OB_RED, $08
; ANIM_OBJ_19
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_1D, BATTLEANIMFUNC_06, PAL_BATTLE_GRAY, $0c
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_1D, BATTLEANIMFUNC_06, PAL_BATTLE_OB_GRAY, $0c
; ANIM_OBJ_1A
battleanimobj RELATIVE_X, $b4, BATTLEANIMFRAMESET_1F, BATTLEANIMFUNC_38, PAL_BATTLE_GRAY, $0c
battleanimobj RELATIVE_X, $b4, BATTLEANIMFRAMESET_1F, BATTLEANIMFUNC_38, PAL_BATTLE_OB_GRAY, $0c
; ANIM_OBJ_1B
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_08, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $07
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_08, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $07
; ANIM_OBJ_BALL_POOF
battleanimobj RELATIVE_X, $a0, BATTLEANIMFRAMESET_08, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $07
battleanimobj RELATIVE_X, $a0, BATTLEANIMFRAMESET_08, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $07
; ANIM_OBJ_1D
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_19, BATTLEANIMFUNC_07, PAL_BATTLE_BROWN, $09
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_19, BATTLEANIMFUNC_07, PAL_BATTLE_OB_BROWN, $09
; ANIM_OBJ_1E
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_1A, BATTLEANIMFUNC_07, PAL_BATTLE_BROWN, $09
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_1A, BATTLEANIMFUNC_07, PAL_BATTLE_OB_BROWN, $09
; ANIM_OBJ_1F
battleanimobj RELATIVE_X, $b0, BATTLEANIMFRAMESET_1B, BATTLEANIMFUNC_36, PAL_BATTLE_BROWN, $09
battleanimobj RELATIVE_X, $b0, BATTLEANIMFRAMESET_1B, BATTLEANIMFUNC_36, PAL_BATTLE_OB_BROWN, $09
; ANIM_OBJ_20
battleanimobj RELATIVE_X, $b0, BATTLEANIMFRAMESET_84, BATTLEANIMFUNC_36, PAL_BATTLE_BLUE, $21
battleanimobj RELATIVE_X, $b0, BATTLEANIMFRAMESET_84, BATTLEANIMFUNC_36, PAL_BATTLE_OB_BLUE, $21
; ANIM_OBJ_BUBBLE
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_21, BATTLEANIMFUNC_0C, PAL_BATTLE_BLUE, $0d
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_21, BATTLEANIMFUNC_0C, PAL_BATTLE_OB_BLUE, $0d
; ANIM_OBJ_22
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_23, BATTLEANIMFUNC_0D, PAL_BATTLE_BLUE, $0d
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_23, BATTLEANIMFUNC_0D, PAL_BATTLE_OB_BLUE, $0d
; ANIM_OBJ_23
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_24, BATTLEANIMFUNC_0E, PAL_BATTLE_GRAY, $0e
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_24, BATTLEANIMFUNC_0E, PAL_BATTLE_OB_GRAY, $0e
; ANIM_OBJ_24
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $80, BATTLEANIMFRAMESET_27, BATTLEANIMFUNC_0F, PAL_BATTLE_BLUE, $04
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $80, BATTLEANIMFRAMESET_27, BATTLEANIMFUNC_0F, PAL_BATTLE_OB_BLUE, $04
; ANIM_OBJ_25
battleanimobj RELATIVE_X, $b4, BATTLEANIMFRAMESET_2A, BATTLEANIMFUNC_00, PAL_BATTLE_BLUE, $04
battleanimobj RELATIVE_X, $b4, BATTLEANIMFRAMESET_2A, BATTLEANIMFUNC_00, PAL_BATTLE_OB_BLUE, $04
; ANIM_OBJ_26
battleanimobj RELATIVE_X, $40, BATTLEANIMFRAMESET_2B, BATTLEANIMFUNC_11, PAL_BATTLE_GREEN, $0f
battleanimobj RELATIVE_X, $40, BATTLEANIMFRAMESET_2B, BATTLEANIMFUNC_11, PAL_BATTLE_OB_GREEN, $0f
; ANIM_OBJ_27
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $98, BATTLEANIMFRAMESET_2C, BATTLEANIMFUNC_00, PAL_BATTLE_YELLOW, $10
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $98, BATTLEANIMFRAMESET_2C, BATTLEANIMFUNC_00, PAL_BATTLE_OB_YELLOW, $10
; ANIM_OBJ_28
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $98, BATTLEANIMFRAMESET_2D, BATTLEANIMFUNC_09, PAL_BATTLE_YELLOW, $10
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $98, BATTLEANIMFRAMESET_2D, BATTLEANIMFUNC_09, PAL_BATTLE_OB_YELLOW, $10
; ANIM_OBJ_ICE_BUILDUP
battleanimobj RELATIVE_X, $b8, BATTLEANIMFRAMESET_2E, BATTLEANIMFUNC_00, PAL_BATTLE_BLUE, $0a
battleanimobj RELATIVE_X, $b8, BATTLEANIMFRAMESET_2E, BATTLEANIMFUNC_00, PAL_BATTLE_OB_BLUE, $0a
; ANIM_OBJ_FROZEN
battleanimobj RELATIVE_X, $b8, BATTLEANIMFRAMESET_2F, BATTLEANIMFUNC_00, PAL_BATTLE_BLUE, $0a
battleanimobj RELATIVE_X, $b8, BATTLEANIMFRAMESET_2F, BATTLEANIMFUNC_00, PAL_BATTLE_OB_BLUE, $0a
; ANIM_OBJ_MASTER_BALL_SPARKLE
battleanimobj RELATIVE_X, $b8, BATTLEANIMFRAMESET_30, BATTLEANIMFUNC_14, PAL_BATTLE_BROWN, $11
battleanimobj RELATIVE_X, $b8, BATTLEANIMFRAMESET_30, BATTLEANIMFUNC_14, PAL_BATTLE_OB_BROWN, $11
; ANIM_OBJ_2C
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_21, BATTLEANIMFUNC_14, PAL_BATTLE_YELLOW, $0d
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_21, BATTLEANIMFUNC_14, PAL_BATTLE_OB_YELLOW, $0d
; ANIM_OBJ_2D
battleanimobj RELATIVE_X | X_FLIP, $b0, BATTLEANIMFRAMESET_31, BATTLEANIMFUNC_00, PAL_BATTLE_YELLOW, $05
battleanimobj RELATIVE_X | X_FLIP, $b0, BATTLEANIMFRAMESET_31, BATTLEANIMFUNC_00, PAL_BATTLE_OB_YELLOW, $05
; ANIM_OBJ_2E
battleanimobj RELATIVE_X | X_FLIP, $b0, BATTLEANIMFRAMESET_32, BATTLEANIMFUNC_00, PAL_BATTLE_YELLOW, $05
battleanimobj RELATIVE_X | X_FLIP, $b0, BATTLEANIMFRAMESET_32, BATTLEANIMFUNC_00, PAL_BATTLE_OB_YELLOW, $05
; ANIM_OBJ_2F
battleanimobj RELATIVE_X | X_FLIP, $b0, BATTLEANIMFRAMESET_33, BATTLEANIMFUNC_00, PAL_BATTLE_YELLOW, $05
battleanimobj RELATIVE_X | X_FLIP, $b0, BATTLEANIMFRAMESET_33, BATTLEANIMFUNC_00, PAL_BATTLE_OB_YELLOW, $05
; ANIM_OBJ_30
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_34, BATTLEANIMFUNC_15, PAL_BATTLE_YELLOW, $05
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_34, BATTLEANIMFUNC_15, PAL_BATTLE_OB_YELLOW, $05
; ANIM_OBJ_31
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_36, BATTLEANIMFUNC_00, PAL_BATTLE_YELLOW, $05
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_36, BATTLEANIMFUNC_00, PAL_BATTLE_OB_YELLOW, $05
; ANIM_OBJ_LIGHTNING_BOLT
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_37, BATTLEANIMFUNC_03, PAL_BATTLE_GRAY, $08
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_37, BATTLEANIMFUNC_03, PAL_BATTLE_OB_GRAY, $08
; ANIM_OBJ_33
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_38, BATTLEANIMFUNC_00, PAL_BATTLE_YELLOW, $05
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_38, BATTLEANIMFUNC_00, PAL_BATTLE_OB_YELLOW, $05
; ANIM_OBJ_34
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_39, BATTLEANIMFUNC_03, PAL_BATTLE_GRAY, $08
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_39, BATTLEANIMFUNC_03, PAL_BATTLE_OB_GRAY, $08
; ANIM_OBJ_35
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_3A, BATTLEANIMFUNC_16, PAL_BATTLE_GRAY, $02
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_3A, BATTLEANIMFUNC_16, PAL_BATTLE_OB_GRAY, $02
; ANIM_OBJ_36
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_3C, BATTLEANIMFUNC_17, PAL_BATTLE_GRAY, $02
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_3C, BATTLEANIMFUNC_17, PAL_BATTLE_OB_GRAY, $02
; ANIM_OBJ_37
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_3E, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $02
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_3E, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $02
; ANIM_OBJ_38
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_3F, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $02
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_3F, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $02
; ANIM_OBJ_39
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_40, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $02
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_40, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $02
; ANIM_OBJ_3A
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_41, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $02
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_41, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $02
; ANIM_OBJ_3B
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_42, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $02
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_42, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $02
; ANIM_OBJ_3C
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_43, BATTLEANIMFUNC_18, PAL_BATTLE_GREEN, $12
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_43, BATTLEANIMFUNC_18, PAL_BATTLE_OB_GREEN, $12
; ANIM_OBJ_3D
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_44, BATTLEANIMFUNC_00, PAL_BATTLE_GREEN, $12
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_44, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GREEN, $12
; ANIM_OBJ_GUST
battleanimobj RELATIVE_X | X_FLIP, $b8, BATTLEANIMFRAMESET_45, BATTLEANIMFUNC_19, PAL_BATTLE_GRAY, $13
battleanimobj RELATIVE_X | X_FLIP, $b8, BATTLEANIMFRAMESET_45, BATTLEANIMFUNC_19, PAL_BATTLE_OB_GRAY, $13
; ANIM_OBJ_3F
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_46, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $14
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_46, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $14
; ANIM_OBJ_40
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_47, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $14
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_47, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $14
; ANIM_OBJ_41
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_48, BATTLEANIMFUNC_1A, PAL_BATTLE_GRAY, $14
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_48, BATTLEANIMFUNC_1A, PAL_BATTLE_OB_GRAY, $14
; ANIM_OBJ_42
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_49, BATTLEANIMFUNC_1A, PAL_BATTLE_GRAY, $14
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_49, BATTLEANIMFUNC_1A, PAL_BATTLE_OB_GRAY, $14
; ANIM_OBJ_43
battleanimobj RELATIVE_X | X_FLIP, $98, BATTLEANIMFRAMESET_4A, BATTLEANIMFUNC_01, PAL_BATTLE_GRAY, $14
battleanimobj RELATIVE_X | X_FLIP, $98, BATTLEANIMFRAMESET_4A, BATTLEANIMFUNC_01, PAL_BATTLE_OB_GRAY, $14
; ANIM_OBJ_44
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_4B, BATTLEANIMFUNC_00, PAL_BATTLE_YELLOW, $11
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_4B, BATTLEANIMFUNC_00, PAL_BATTLE_OB_YELLOW, $11
; ANIM_OBJ_ABSORB
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_4C, BATTLEANIMFUNC_1C, PAL_BATTLE_GREEN, $12
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_4C, BATTLEANIMFUNC_1C, PAL_BATTLE_OB_GREEN, $12
; ANIM_OBJ_46
battleanimobj RELATIVE_X | X_FLIP, $b0, BATTLEANIMFRAMESET_4D, BATTLEANIMFUNC_1D, PAL_BATTLE_GRAY, $15
battleanimobj RELATIVE_X | X_FLIP, $b0, BATTLEANIMFRAMESET_4D, BATTLEANIMFUNC_1D, PAL_BATTLE_OB_GRAY, $15
; ANIM_OBJ_47
battleanimobj RELATIVE_X, $b0, BATTLEANIMFRAMESET_51, BATTLEANIMFUNC_1E, PAL_BATTLE_YELLOW, $11
battleanimobj RELATIVE_X, $b0, BATTLEANIMFRAMESET_51, BATTLEANIMFUNC_1E, PAL_BATTLE_OB_YELLOW, $11
; ANIM_OBJ_48
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_52, BATTLEANIMFUNC_1F, PAL_BATTLE_GREEN, $16
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_52, BATTLEANIMFUNC_1F, PAL_BATTLE_OB_GREEN, $16
; ANIM_OBJ_49
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_54, BATTLEANIMFUNC_1F, PAL_BATTLE_GREEN, $16
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_54, BATTLEANIMFUNC_1F, PAL_BATTLE_OB_GREEN, $16
; ANIM_OBJ_LEECH_SEED
battleanimobj RELATIVE_X | X_FLIP, $68, BATTLEANIMFRAMESET_56, BATTLEANIMFUNC_LEECH_SEED, PAL_BATTLE_GREEN, $06
battleanimobj RELATIVE_X | X_FLIP, $68, BATTLEANIMFRAMESET_56, BATTLEANIMFUNC_LEECH_SEED, PAL_BATTLE_OB_GREEN, $06
; ANIM_OBJ_4B
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_59, BATTLEANIMFUNC_21, PAL_BATTLE_GRAY, $0e
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_59, BATTLEANIMFUNC_21, PAL_BATTLE_OB_GRAY, $0e
; ANIM_OBJ_4C
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_5C, BATTLEANIMFUNC_02, PAL_BATTLE_GRAY, $17
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_5C, BATTLEANIMFUNC_02, PAL_BATTLE_OB_GRAY, $17
; ANIM_OBJ_4D
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_5D, BATTLEANIMFUNC_22, PAL_BATTLE_YELLOW, $11
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_5D, BATTLEANIMFUNC_22, PAL_BATTLE_OB_YELLOW, $11
; ANIM_OBJ_4E
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $88, BATTLEANIMFRAMESET_5F, BATTLEANIMFUNC_00, PAL_BATTLE_YELLOW, $10
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $88, BATTLEANIMFRAMESET_5F, BATTLEANIMFUNC_00, PAL_BATTLE_OB_YELLOW, $10
; ANIM_OBJ_4F
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $88, BATTLEANIMFRAMESET_2D, BATTLEANIMFUNC_09, PAL_BATTLE_YELLOW, $10
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $88, BATTLEANIMFRAMESET_2D, BATTLEANIMFUNC_09, PAL_BATTLE_OB_YELLOW, $10
; ANIM_OBJ_50
battleanimobj RELATIVE_X | X_FLIP, $88, BATTLEANIMFRAMESET_60, BATTLEANIMFUNC_00, PAL_BATTLE_YELLOW, $18
battleanimobj RELATIVE_X | X_FLIP, $88, BATTLEANIMFRAMESET_60, BATTLEANIMFUNC_00, PAL_BATTLE_OB_YELLOW, $18
; ANIM_OBJ_51
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_60, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $18
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_60, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $18
; ANIM_OBJ_CHICK
battleanimobj RELATIVE_X | X_FLIP, $50, BATTLEANIMFRAMESET_61, BATTLEANIMFUNC_23, PAL_BATTLE_YELLOW, $19
battleanimobj RELATIVE_X | X_FLIP, $50, BATTLEANIMFRAMESET_61, BATTLEANIMFUNC_23, PAL_BATTLE_OB_YELLOW, $19
; ANIM_OBJ_53
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_63, BATTLEANIMFUNC_24, PAL_BATTLE_GRAY, $19
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_63, BATTLEANIMFUNC_24, PAL_BATTLE_OB_GRAY, $19
; ANIM_OBJ_54
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_66, BATTLEANIMFUNC_25, PAL_BATTLE_GRAY, $19
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_66, BATTLEANIMFUNC_25, PAL_BATTLE_OB_GRAY, $19
; ANIM_OBJ_SKULL
battleanimobj RELATIVE_X, $50, BATTLEANIMFRAMESET_1C, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $0c
battleanimobj RELATIVE_X, $50, BATTLEANIMFRAMESET_1C, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $0c
; ANIM_OBJ_56
battleanimobj RELATIVE_X | X_FLIP, $a8, BATTLEANIMFRAMESET_67, BATTLEANIMFUNC_26, PAL_BATTLE_BROWN, $1a
battleanimobj RELATIVE_X | X_FLIP, $a8, BATTLEANIMFRAMESET_67, BATTLEANIMFUNC_26, PAL_BATTLE_OB_BROWN, $1a
; ANIM_OBJ_57
battleanimobj RELATIVE_X | X_FLIP, $a8, BATTLEANIMFRAMESET_68, BATTLEANIMFUNC_00, PAL_BATTLE_BROWN, $1a
battleanimobj RELATIVE_X | X_FLIP, $a8, BATTLEANIMFRAMESET_68, BATTLEANIMFUNC_00, PAL_BATTLE_OB_BROWN, $1a
; ANIM_OBJ_58
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_69, BATTLEANIMFUNC_01, PAL_BATTLE_GRAY, $1a
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_69, BATTLEANIMFUNC_01, PAL_BATTLE_OB_GRAY, $1a
; ANIM_OBJ_PARALYZED
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_6D, BATTLEANIMFUNC_28, PAL_BATTLE_YELLOW, $19
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_6D, BATTLEANIMFUNC_28, PAL_BATTLE_OB_YELLOW, $19
; ANIM_OBJ_5A
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_6A, BATTLEANIMFUNC_27, PAL_BATTLE_GRAY, $1b
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_6A, BATTLEANIMFUNC_27, PAL_BATTLE_OB_GRAY, $1b
; ANIM_OBJ_HAZE
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_6F, BATTLEANIMFUNC_SPRIAL_DESCENT, PAL_BATTLE_GRAY, $1c
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_6F, BATTLEANIMFUNC_SPRIAL_DESCENT, PAL_BATTLE_OB_GRAY, $1c
; ANIM_OBJ_MIST
battleanimobj RELATIVE_X | X_FLIP, $48, BATTLEANIMFRAMESET_70, BATTLEANIMFUNC_SPRIAL_DESCENT, PAL_BATTLE_GRAY, $1c
battleanimobj RELATIVE_X | X_FLIP, $48, BATTLEANIMFRAMESET_70, BATTLEANIMFUNC_SPRIAL_DESCENT, PAL_BATTLE_OB_GRAY, $1c
; ANIM_OBJ_SMOG
battleanimobj RELATIVE_X | X_FLIP, $48, BATTLEANIMFRAMESET_6F, BATTLEANIMFUNC_SPRIAL_DESCENT, PAL_BATTLE_GRAY, $1c
battleanimobj RELATIVE_X | X_FLIP, $48, BATTLEANIMFRAMESET_6F, BATTLEANIMFUNC_SPRIAL_DESCENT, PAL_BATTLE_OB_GRAY, $1c
; ANIM_OBJ_POISON_GAS
battleanimobj RELATIVE_X | X_FLIP, $78, BATTLEANIMFRAMESET_6F, BATTLEANIMFUNC_POISON_GAS, PAL_BATTLE_GRAY, $1c
battleanimobj RELATIVE_X | X_FLIP, $78, BATTLEANIMFRAMESET_6F, BATTLEANIMFUNC_POISON_GAS, PAL_BATTLE_OB_GRAY, $1c
; ANIM_OBJ_HORN
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $90, BATTLEANIMFRAMESET_71, BATTLEANIMFUNC_HORN, PAL_BATTLE_GRAY, $1d
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $90, BATTLEANIMFRAMESET_71, BATTLEANIMFUNC_HORN, PAL_BATTLE_OB_GRAY, $1d
; ANIM_OBJ_60
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $90, BATTLEANIMFRAMESET_72, BATTLEANIMFUNC_2C, PAL_BATTLE_GRAY, $1d
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $90, BATTLEANIMFRAMESET_72, BATTLEANIMFUNC_2C, PAL_BATTLE_OB_GRAY, $1d
; ANIM_OBJ_61
battleanimobj RELATIVE_X, $48, BATTLEANIMFRAMESET_73, BATTLEANIMFUNC_2D, PAL_BATTLE_RED, $1e
battleanimobj RELATIVE_X, $48, BATTLEANIMFRAMESET_73, BATTLEANIMFUNC_2D, PAL_BATTLE_OB_RED, $1e
; ANIM_OBJ_62
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_74, BATTLEANIMFUNC_06, PAL_BATTLE_GRAY, $15
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_74, BATTLEANIMFUNC_06, PAL_BATTLE_OB_GRAY, $15
; ANIM_OBJ_63
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_75, BATTLEANIMFUNC_2E, PAL_BATTLE_BROWN, $19
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_75, BATTLEANIMFUNC_2E, PAL_BATTLE_OB_BROWN, $19
; ANIM_OBJ_64
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_4A, BATTLEANIMFUNC_02, PAL_BATTLE_GRAY, $14
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_4A, BATTLEANIMFUNC_02, PAL_BATTLE_OB_GRAY, $14
; ANIM_OBJ_65
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_30, BATTLEANIMFUNC_2F, PAL_BATTLE_GRAY, $11
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_30, BATTLEANIMFUNC_2F, PAL_BATTLE_OB_GRAY, $11
; ANIM_OBJ_66
battleanimobj RELATIVE_X, $78, BATTLEANIMFRAMESET_76, BATTLEANIMFUNC_POISON_GAS, PAL_BATTLE_RED, $23
battleanimobj RELATIVE_X, $78, BATTLEANIMFRAMESET_76, BATTLEANIMFUNC_POISON_GAS, PAL_BATTLE_OB_RED, $23
; ANIM_OBJ_67
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_77, BATTLEANIMFUNC_30, PAL_BATTLE_GRAY, $1f
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_77, BATTLEANIMFUNC_30, PAL_BATTLE_OB_GRAY, $1f
; ANIM_OBJ_68
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_77, BATTLEANIMFUNC_02, PAL_BATTLE_GRAY, $1f
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_77, BATTLEANIMFUNC_02, PAL_BATTLE_OB_GRAY, $1f
; ANIM_OBJ_69
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_77, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $1f
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_77, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $1f
; ANIM_OBJ_6A
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_78, BATTLEANIMFUNC_08, PAL_BATTLE_YELLOW, $23
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_78, BATTLEANIMFUNC_08, PAL_BATTLE_OB_YELLOW, $23
; ANIM_OBJ_6B
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_79, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $1f
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_79, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $1f
; ANIM_OBJ_6C
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_7A, BATTLEANIMFUNC_31, PAL_BATTLE_YELLOW, $11
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_7A, BATTLEANIMFUNC_31, PAL_BATTLE_OB_YELLOW, $11
; ANIM_OBJ_6D
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_7A, BATTLEANIMFUNC_31, PAL_BATTLE_YELLOW, $11
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_7A, BATTLEANIMFUNC_31, PAL_BATTLE_OB_YELLOW, $11
; ANIM_OBJ_SKY_ATTACK_FEAROW
battleanimobj RELATIVE_X | X_FLIP, $88, BATTLEANIMFRAMESET_7B, BATTLEANIMFUNC_32, PAL_BATTLE_GRAY, $20
battleanimobj RELATIVE_X | X_FLIP, $88, BATTLEANIMFRAMESET_7B, BATTLEANIMFUNC_32, PAL_BATTLE_OB_GRAY, $20
; ANIM_OBJ_LICK
battleanimobj RELATIVE_X | X_FLIP, $98, BATTLEANIMFRAMESET_7C, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $04
battleanimobj RELATIVE_X | X_FLIP, $98, BATTLEANIMFRAMESET_7C, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $04
; ANIM_OBJ_WITHDRAW
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_7D, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $18
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_7D, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $18
; ANIM_OBJ_71
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_21, BATTLEANIMFUNC_2F, PAL_BATTLE_BLUE, $0d
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_21, BATTLEANIMFUNC_2F, PAL_BATTLE_OB_BLUE, $0d
; ANIM_OBJ_72
battleanimobj RELATIVE_X, $b0, BATTLEANIMFRAMESET_7E, BATTLEANIMFUNC_33, PAL_BATTLE_YELLOW, $12
battleanimobj RELATIVE_X, $b0, BATTLEANIMFRAMESET_7E, BATTLEANIMFUNC_33, PAL_BATTLE_OB_YELLOW, $12
; ANIM_OBJ_73
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_7F, BATTLEANIMFUNC_2F, PAL_BATTLE_GRAY, $08
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_7F, BATTLEANIMFUNC_2F, PAL_BATTLE_OB_GRAY, $08
; ANIM_OBJ_74
battleanimobj RELATIVE_X | X_FLIP, $a0, BATTLEANIMFRAMESET_6F, BATTLEANIMFUNC_34, PAL_BATTLE_GRAY, $1c
battleanimobj RELATIVE_X | X_FLIP, $a0, BATTLEANIMFRAMESET_6F, BATTLEANIMFUNC_34, PAL_BATTLE_OB_GRAY, $1c
; ANIM_OBJ_75
battleanimobj RELATIVE_X | X_FLIP, $a0, BATTLEANIMFRAMESET_74, BATTLEANIMFUNC_35, PAL_BATTLE_GRAY, $15
battleanimobj RELATIVE_X | X_FLIP, $a0, BATTLEANIMFRAMESET_74, BATTLEANIMFUNC_35, PAL_BATTLE_OB_GRAY, $15
; ANIM_OBJ_76
battleanimobj RELATIVE_X | X_FLIP, $b0, BATTLEANIMFRAMESET_80, BATTLEANIMFUNC_33, PAL_BATTLE_GRAY, $14
battleanimobj RELATIVE_X | X_FLIP, $b0, BATTLEANIMFRAMESET_80, BATTLEANIMFUNC_33, PAL_BATTLE_OB_GRAY, $14
; ANIM_OBJ_77
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_81, BATTLEANIMFUNC_37, PAL_BATTLE_GRAY, $11
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_81, BATTLEANIMFUNC_37, PAL_BATTLE_OB_GRAY, $11
; ANIM_OBJ_78
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_85, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $22
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_85, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $22
; ANIM_OBJ_79
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_86, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $22
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_86, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $22
; ANIM_OBJ_7A
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_87, BATTLEANIMFUNC_39, PAL_BATTLE_GRAY, $1f
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_87, BATTLEANIMFUNC_39, PAL_BATTLE_OB_GRAY, $1f
; ANIM_OBJ_7B
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_30, BATTLEANIMFUNC_3A, PAL_BATTLE_YELLOW, $11
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_30, BATTLEANIMFUNC_3A, PAL_BATTLE_OB_YELLOW, $11
; ANIM_OBJ_7C
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_34, BATTLEANIMFUNC_00, PAL_BATTLE_YELLOW, $05
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_34, BATTLEANIMFUNC_00, PAL_BATTLE_OB_YELLOW, $05
; ANIM_OBJ_7D
battleanimobj RELATIVE_X | X_FLIP | BEHIND_BG, $88, BATTLEANIMFRAMESET_88, BATTLEANIMFUNC_3B, PAL_BATTLE_BLUE, $13
battleanimobj RELATIVE_X | X_FLIP | BEHIND_BG, $88, BATTLEANIMFRAMESET_88, BATTLEANIMFUNC_3B, PAL_BATTLE_OB_BLUE, $13
; ANIM_OBJ_HEART
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_76, BATTLEANIMFUNC_25, PAL_BATTLE_RED, $23
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_76, BATTLEANIMFUNC_25, PAL_BATTLE_OB_RED, $23
; ANIM_OBJ_7F
battleanimobj RELATIVE_X, $98, BATTLEANIMFRAMESET_10, BATTLEANIMFUNC_34, PAL_BATTLE_RED, $03
battleanimobj RELATIVE_X, $98, BATTLEANIMFRAMESET_10, BATTLEANIMFUNC_34, PAL_BATTLE_OB_RED, $03
; ANIM_OBJ_80
battleanimobj RELATIVE_X, $a8, BATTLEANIMFRAMESET_0F, BATTLEANIMFUNC_3C, PAL_BATTLE_RED, $03
battleanimobj RELATIVE_X, $a8, BATTLEANIMFRAMESET_0F, BATTLEANIMFUNC_3C, PAL_BATTLE_OB_RED, $03
; ANIM_OBJ_COTTON_SPORE
battleanimobj RELATIVE_X | X_FLIP, $68, BATTLEANIMFRAMESET_89, BATTLEANIMFUNC_SPRIAL_DESCENT, PAL_BATTLE_GRAY, $1f
battleanimobj RELATIVE_X | X_FLIP, $68, BATTLEANIMFRAMESET_89, BATTLEANIMFUNC_SPRIAL_DESCENT, PAL_BATTLE_OB_GRAY, $1f
; ANIM_OBJ_82
battleanimobj RELATIVE_X | X_FLIP, $b0, BATTLEANIMFRAMESET_8A, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $1f
battleanimobj RELATIVE_X | X_FLIP, $b0, BATTLEANIMFRAMESET_8A, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $1f
; ANIM_OBJ_83
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_8C, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $1f
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_8C, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $1f
; ANIM_OBJ_84
battleanimobj RELATIVE_X | X_FLIP, $50, BATTLEANIMFRAMESET_8D, BATTLEANIMFUNC_00, PAL_BATTLE_YELLOW, $1f
battleanimobj RELATIVE_X | X_FLIP, $50, BATTLEANIMFRAMESET_8D, BATTLEANIMFUNC_00, PAL_BATTLE_OB_YELLOW, $1f
; ANIM_OBJ_85
battleanimobj RELATIVE_X, $40, BATTLEANIMFRAMESET_24, BATTLEANIMFUNC_40, PAL_BATTLE_GRAY, $0e
battleanimobj RELATIVE_X, $40, BATTLEANIMFRAMESET_24, BATTLEANIMFUNC_40, PAL_BATTLE_OB_GRAY, $0e
; ANIM_OBJ_86
battleanimobj RELATIVE_X | X_FLIP, $a8, BATTLEANIMFRAMESET_8E, BATTLEANIMFUNC_41, PAL_BATTLE_RED, $1f
battleanimobj RELATIVE_X | X_FLIP, $a8, BATTLEANIMFRAMESET_8E, BATTLEANIMFUNC_41, PAL_BATTLE_OB_RED, $1f
; ANIM_OBJ_87
battleanimobj RELATIVE_X | X_FLIP, $88, BATTLEANIMFRAMESET_8F, BATTLEANIMFUNC_3E, PAL_BATTLE_GRAY, $1f
battleanimobj RELATIVE_X | X_FLIP, $88, BATTLEANIMFRAMESET_8F, BATTLEANIMFUNC_3E, PAL_BATTLE_OB_GRAY, $1f
; ANIM_OBJ_88
battleanimobj RELATIVE_X | X_FLIP, $88, BATTLEANIMFRAMESET_93, BATTLEANIMFUNC_3E, PAL_BATTLE_GRAY, $1f
battleanimobj RELATIVE_X | X_FLIP, $88, BATTLEANIMFRAMESET_93, BATTLEANIMFUNC_3E, PAL_BATTLE_OB_GRAY, $1f
; ANIM_OBJ_89
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_97, BATTLEANIMFUNC_3D, PAL_BATTLE_GRAY, $1f
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_97, BATTLEANIMFUNC_3D, PAL_BATTLE_OB_GRAY, $1f
; ANIM_OBJ_8A
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_78, BATTLEANIMFUNC_3D, PAL_BATTLE_YELLOW, $23
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_78, BATTLEANIMFUNC_3D, PAL_BATTLE_OB_YELLOW, $23
; ANIM_OBJ_8B
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_99, BATTLEANIMFUNC_2E, PAL_BATTLE_GRAY, $19
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_99, BATTLEANIMFUNC_2E, PAL_BATTLE_OB_GRAY, $19
; ANIM_OBJ_8C
battleanimobj RELATIVE_X | X_FLIP, $a0, BATTLEANIMFRAMESET_74, BATTLEANIMFUNC_02, PAL_BATTLE_GRAY, $15
battleanimobj RELATIVE_X | X_FLIP, $a0, BATTLEANIMFRAMESET_74, BATTLEANIMFUNC_02, PAL_BATTLE_OB_GRAY, $15
; ANIM_OBJ_8D
battleanimobj RELATIVE_X | X_FLIP, $a0, BATTLEANIMFRAMESET_99, BATTLEANIMFUNC_35, PAL_BATTLE_RED, $19
battleanimobj RELATIVE_X | X_FLIP, $a0, BATTLEANIMFRAMESET_99, BATTLEANIMFUNC_35, PAL_BATTLE_OB_RED, $19
; ANIM_OBJ_SPIKES
battleanimobj RELATIVE_X | X_FLIP, $70, BATTLEANIMFRAMESET_8B, BATTLEANIMFUNC_3F, PAL_BATTLE_GRAY, $1f
battleanimobj RELATIVE_X | X_FLIP, $70, BATTLEANIMFRAMESET_8B, BATTLEANIMFUNC_3F, PAL_BATTLE_OB_GRAY, $1f
; ANIM_OBJ_8F
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_15, BATTLEANIMFUNC_08, PAL_BATTLE_GRAY, $0a
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_15, BATTLEANIMFUNC_08, PAL_BATTLE_OB_GRAY, $0a
; ANIM_OBJ_90
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_11, BATTLEANIMFUNC_02, PAL_BATTLE_RED, $03
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_11, BATTLEANIMFUNC_02, PAL_BATTLE_OB_RED, $03
; ANIM_OBJ_91
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_7F, BATTLEANIMFUNC_42, PAL_BATTLE_GRAY, $08
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_7F, BATTLEANIMFUNC_42, PAL_BATTLE_OB_GRAY, $08
; ANIM_OBJ_92
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_9A, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $1b
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_9A, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $1b
; ANIM_OBJ_93
battleanimobj RELATIVE_X | X_FLIP, $a0, BATTLEANIMFRAMESET_9B, BATTLEANIMFUNC_35, PAL_BATTLE_RED, $23
battleanimobj RELATIVE_X | X_FLIP, $a0, BATTLEANIMFRAMESET_9B, BATTLEANIMFUNC_35, PAL_BATTLE_OB_RED, $23
; ANIM_OBJ_94
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_9C, BATTLEANIMFUNC_23, PAL_BATTLE_GRAY, $25
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_9C, BATTLEANIMFUNC_23, PAL_BATTLE_OB_GRAY, $25
; ANIM_OBJ_95
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_9D, BATTLEANIMFUNC_25, PAL_BATTLE_GRAY, $25
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_9D, BATTLEANIMFUNC_25, PAL_BATTLE_OB_GRAY, $25
; ANIM_OBJ_96
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_9C, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $25
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_9C, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $25
; ANIM_OBJ_97
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_9E, BATTLEANIMFUNC_00, PAL_BATTLE_BLUE, $25
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_9E, BATTLEANIMFUNC_00, PAL_BATTLE_OB_BLUE, $25
; ANIM_OBJ_98
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $80, BATTLEANIMFRAMESET_9F, BATTLEANIMFUNC_3A, PAL_BATTLE_GREEN, $23
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $80, BATTLEANIMFRAMESET_9F, BATTLEANIMFUNC_3A, PAL_BATTLE_OB_GREEN, $23
; ANIM_OBJ_99
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_A0, BATTLEANIMFUNC_16, PAL_BATTLE_GRAY, $23
battleanimobj RELATIVE_X | X_FLIP, $80, BATTLEANIMFRAMESET_A0, BATTLEANIMFUNC_16, PAL_BATTLE_OB_GRAY, $23
; ANIM_OBJ_9A
battleanimobj RELATIVE_X | X_FLIP, $70, BATTLEANIMFRAMESET_78, BATTLEANIMFUNC_43, PAL_BATTLE_YELLOW, $23
battleanimobj RELATIVE_X | X_FLIP, $70, BATTLEANIMFRAMESET_78, BATTLEANIMFUNC_43, PAL_BATTLE_OB_YELLOW, $23
; ANIM_OBJ_9B
battleanimobj RELATIVE_X | X_FLIP, $c0, BATTLEANIMFRAMESET_A2, BATTLEANIMFUNC_01, PAL_BATTLE_GRAY, $25
battleanimobj RELATIVE_X | X_FLIP, $c0, BATTLEANIMFRAMESET_A2, BATTLEANIMFUNC_01, PAL_BATTLE_OB_GRAY, $25
; ANIM_OBJ_9C
battleanimobj RELATIVE_X | X_FLIP, $40, BATTLEANIMFRAMESET_A3, BATTLEANIMFUNC_44, PAL_BATTLE_YELLOW, $24
battleanimobj RELATIVE_X | X_FLIP, $40, BATTLEANIMFRAMESET_A3, BATTLEANIMFUNC_44, PAL_BATTLE_OB_YELLOW, $24
; ANIM_OBJ_9D
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_A4, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $24
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_A4, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $24
; ANIM_OBJ_9E
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_A5, BATTLEANIMFUNC_00, PAL_BATTLE_YELLOW, $24
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_A5, BATTLEANIMFUNC_00, PAL_BATTLE_OB_YELLOW, $24
; ANIM_OBJ_9F
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_43, BATTLEANIMFUNC_45, PAL_BATTLE_RED, $12
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_43, BATTLEANIMFUNC_45, PAL_BATTLE_OB_RED, $12
; ANIM_OBJ_A0
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_A6, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $02
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_A6, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $02
; ANIM_OBJ_A1
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_A7, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $02
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_A7, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $02
; ANIM_OBJ_A2
battleanimobj RELATIVE_X | X_FLIP, $00, BATTLEANIMFRAMESET_B4, BATTLEANIMFUNC_4A, PAL_BATTLE_BROWN, $0f
battleanimobj RELATIVE_X | X_FLIP, $00, BATTLEANIMFRAMESET_B4, BATTLEANIMFUNC_4A, PAL_BATTLE_OB_BROWN, $0f
; ANIM_OBJ_A3
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_A8, BATTLEANIMFUNC_02, PAL_BATTLE_YELLOW, $05
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_A8, BATTLEANIMFUNC_02, PAL_BATTLE_OB_YELLOW, $05
; ANIM_OBJ_A4
battleanimobj RELATIVE_X | X_FLIP, $40, BATTLEANIMFRAMESET_9C, BATTLEANIMFUNC_11, PAL_BATTLE_GRAY, $25
battleanimobj RELATIVE_X | X_FLIP, $40, BATTLEANIMFRAMESET_9C, BATTLEANIMFUNC_11, PAL_BATTLE_OB_GRAY, $25
; ANIM_OBJ_A5
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $90, BATTLEANIMFRAMESET_A9, BATTLEANIMFUNC_46, PAL_BATTLE_GRAY, $23
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $90, BATTLEANIMFRAMESET_A9, BATTLEANIMFUNC_46, PAL_BATTLE_OB_GRAY, $23
; ANIM_OBJ_PERISH_SONG
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_24, BATTLEANIMFUNC_47, PAL_BATTLE_GRAY, $0e
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_24, BATTLEANIMFUNC_47, PAL_BATTLE_OB_GRAY, $0e
; ANIM_OBJ_A7
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_AA, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $24
battleanimobj RELATIVE_X, $80, BATTLEANIMFRAMESET_AA, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $24
; ANIM_OBJ_A8
battleanimobj RELATIVE_X | X_FLIP, $b8, BATTLEANIMFRAMESET_AB, BATTLEANIMFUNC_48, PAL_BATTLE_GRAY, $13
battleanimobj RELATIVE_X | X_FLIP, $b8, BATTLEANIMFRAMESET_AB, BATTLEANIMFUNC_48, PAL_BATTLE_OB_GRAY, $13
; ANIM_OBJ_A9
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_AC, BATTLEANIMFUNC_44, PAL_BATTLE_GRAY, $13
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_AC, BATTLEANIMFUNC_44, PAL_BATTLE_OB_GRAY, $13
; ANIM_OBJ_AA
battleanimobj RELATIVE_X, $a8, BATTLEANIMFRAMESET_05, BATTLEANIMFUNC_00, PAL_BATTLE_GRAY, $01
battleanimobj RELATIVE_X, $a8, BATTLEANIMFRAMESET_05, BATTLEANIMFUNC_00, PAL_BATTLE_OB_GRAY, $01
; ANIM_OBJ_AB
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_24, BATTLEANIMFUNC_43, PAL_BATTLE_GRAY, $0e
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_24, BATTLEANIMFUNC_43, PAL_BATTLE_OB_GRAY, $0e
; ANIM_OBJ_AC
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_AD, BATTLEANIMFUNC_00, PAL_BATTLE_BLUE, $17
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_AD, BATTLEANIMFUNC_00, PAL_BATTLE_OB_BLUE, $17
; ANIM_OBJ_AD
battleanimobj RELATIVE_X, $a8, BATTLEANIMFRAMESET_AE, BATTLEANIMFUNC_49, PAL_BATTLE_GRAY, $01
battleanimobj RELATIVE_X, $a8, BATTLEANIMFRAMESET_AE, BATTLEANIMFUNC_49, PAL_BATTLE_OB_GRAY, $01
; ANIM_OBJ_AE
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_AF, BATTLEANIMFUNC_01, PAL_BATTLE_YELLOW, $11
battleanimobj RELATIVE_X | X_FLIP, $90, BATTLEANIMFRAMESET_AF, BATTLEANIMFUNC_01, PAL_BATTLE_OB_YELLOW, $11
; ANIM_OBJ_AF
battleanimobj RELATIVE_X | X_FLIP, $00, BATTLEANIMFRAMESET_B0, BATTLEANIMFUNC_4A, PAL_BATTLE_GRAY, $04
battleanimobj RELATIVE_X | X_FLIP, $00, BATTLEANIMFRAMESET_B0, BATTLEANIMFUNC_4A, PAL_BATTLE_OB_GRAY, $04
; ANIM_OBJ_B0
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_70, BATTLEANIMFUNC_4B, PAL_BATTLE_RED, $1c
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_70, BATTLEANIMFUNC_4B, PAL_BATTLE_OB_RED, $1c
; ANIM_OBJ_B1
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_B1, BATTLEANIMFUNC_4C, PAL_BATTLE_GRAY, $19
battleanimobj RELATIVE_X, $88, BATTLEANIMFRAMESET_B1, BATTLEANIMFUNC_4C, PAL_BATTLE_OB_GRAY, $19
; ANIM_OBJ_B2
battleanimobj RELATIVE_X, $b8, BATTLEANIMFRAMESET_19, BATTLEANIMFUNC_4D, PAL_BATTLE_BROWN, $09
battleanimobj RELATIVE_X, $b8, BATTLEANIMFRAMESET_19, BATTLEANIMFUNC_4D, PAL_BATTLE_OB_BROWN, $09
; ANIM_OBJ_B3
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $98, BATTLEANIMFRAMESET_B3, BATTLEANIMFUNC_00, PAL_BATTLE_YELLOW, $27
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $98, BATTLEANIMFRAMESET_B3, BATTLEANIMFUNC_00, PAL_BATTLE_OB_YELLOW, $27
; ANIM_OBJ_B4
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $98, BATTLEANIMFRAMESET_74, BATTLEANIMFUNC_04, PAL_BATTLE_BLUE, $15
battleanimobj RELATIVE_X | X_FLIP | Y_FLIP, $98, BATTLEANIMFRAMESET_74, BATTLEANIMFUNC_04, PAL_BATTLE_OB_BLUE, $15
; ANIM_OBJ_B5
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_19, BATTLEANIMFUNC_4E, PAL_BATTLE_BROWN, $09
battleanimobj RELATIVE_X | X_FLIP, $ff, BATTLEANIMFRAMESET_19, BATTLEANIMFUNC_4E, PAL_BATTLE_OB_BROWN, $09
; ANIM_OBJ_FLOWER
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_73, BATTLEANIMFUNC_08, PAL_BATTLE_RED, $1e
battleanimobj RELATIVE_X, $90, BATTLEANIMFRAMESET_73, BATTLEANIMFUNC_08, PAL_BATTLE_OB_RED, $1e
; ANIM_OBJ_COTTON
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_89, BATTLEANIMFUNC_4F, PAL_BATTLE_RED, $1f
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_89, BATTLEANIMFUNC_4F, PAL_BATTLE_OB_RED, $1f
; ANIM_OBJ_PLAYERFEETFOLLOW
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_B5, BATTLEANIMFUNC_00, PAL_BATTLE_ENEMY, $28
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_B5, BATTLEANIMFUNC_00, PAL_BATTLE_OB_ENEMY, $28
; ANIM_OBJ_ENEMYFEETFOLLOW
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_B6, BATTLEANIMFUNC_00, PAL_BATTLE_PLAYER, $29
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_B6, BATTLEANIMFUNC_00, PAL_BATTLE_OB_PLAYER, $29
; ANIM_OBJ_BA
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_B7, BATTLEANIMFUNC_00, PAL_BATTLE_ENEMY, $28
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_B7, BATTLEANIMFUNC_00, PAL_BATTLE_OB_ENEMY, $28
; ANIM_OBJ_BB
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_B8, BATTLEANIMFUNC_00, PAL_BATTLE_PLAYER, $29
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_B8, BATTLEANIMFUNC_00, PAL_BATTLE_OB_PLAYER, $29
; ccfbe

View File

@ -424,7 +424,7 @@ BattleAnimFunction_PokeBallBlocked: ; cd212 (33:5212)
ret
GetBallAnimPal: ; cd249 (33:5249)
ld hl, .balls
ld hl, BallColors
ld a, [rSVBK]
push af
ld a, $1
@ -448,22 +448,10 @@ GetBallAnimPal: ; cd249 (33:5249)
add hl, bc
ld [hl], a
ret
; cd26c (33:526c)
.balls
db MASTER_BALL, PAL_BATTLE_GREEN
db ULTRA_BALL, PAL_BATTLE_YELLOW
db GREAT_BALL, PAL_BATTLE_BLUE
db POKE_BALL, PAL_BATTLE_RED
db HEAVY_BALL, PAL_BATTLE_GRAY
db LEVEL_BALL, PAL_BATTLE_BROWN
db LURE_BALL, PAL_BATTLE_BLUE
db FAST_BALL, PAL_BATTLE_BLUE
db FRIEND_BALL, PAL_BATTLE_YELLOW
db MOON_BALL, PAL_BATTLE_GRAY
db LOVE_BALL, PAL_BATTLE_RED
db -1, PAL_BATTLE_GRAY
; cd284
INCLUDE "data/ball_colors.asm"
BattleAnimFunction_10: ; cd284 (33:5284)
call BattleAnim_AnonJumptable
.anon_dw

View File

@ -7,7 +7,9 @@ INCLUDE "constants/wram_constants.asm"
INCLUDE "constants/pokemon_constants.asm"
INCLUDE "constants/type_constants.asm"
INCLUDE "constants/move_constants.asm"
INCLUDE "constants/effect_command_constants.asm"
INCLUDE "constants/battle_constants.asm"
INCLUDE "constants/map_dimension_constants.asm"
INCLUDE "constants/map_constants.asm"
INCLUDE "constants/map_setup_constants.asm"
INCLUDE "constants/landmark_constants.asm"
@ -21,14 +23,17 @@ INCLUDE "constants/sfx_constants.asm"
INCLUDE "constants/animation_constants.asm"
INCLUDE "constants/phone_constants.asm"
INCLUDE "constants/gfx_constants.asm"
INCLUDE "constants/input_constants.asm"
INCLUDE "constants/pokemon_data_constants.asm"
INCLUDE "constants/serial_constants.asm"
INCLUDE "constants/mobile_constants.asm"
INCLUDE "constants/misc_constants.asm"
INCLUDE "constants/std_constants.asm"
INCLUDE "constants/deco_constants.asm"
INCLUDE "constants/radio_constants.asm"
INCLUDE "constants/npctrade_constants.asm"
INCLUDE "constants/sprite_constants.asm"
INCLUDE "constants/tilemap_constants.asm"
INCLUDE "constants/tileset_constants.asm"
INCLUDE "constants/cgb_constants.asm"
INCLUDE "constants/battle_tower_constants.asm"
INCLUDE "constants/cry_constants.asm"

View File

@ -824,13 +824,24 @@ const_value SET 1
const BG_EFFECT_STRUCT_BATTLE_TURN
const BG_EFFECT_STRUCT_03
; battle palettes
const_def
const PAL_BATTLE_BG_PLAYER ; 0
const PAL_BATTLE_BG_ENEMY ; 1
const PAL_BATTLE_BG_ENEMY_HP ; 2
const PAL_BATTLE_BG_PLAYER_HP ; 3
const PAL_BATTLE_BG_EXP ; 4
const PAL_BATTLE_BG_5 ; 5
const PAL_BATTLE_BG_6 ; 6
const PAL_BATTLE_BG_TEXT ; 7
; animation object palettes
const_def
const PAL_BATTLE_ENEMY ; 0
const PAL_BATTLE_PLAYER ; 1
const PAL_BATTLE_GRAY ; 2
const PAL_BATTLE_YELLOW ; 3
const PAL_BATTLE_RED ; 4
const PAL_BATTLE_GREEN ; 5
const PAL_BATTLE_BLUE ; 6
const PAL_BATTLE_BROWN ; 7
const PAL_BATTLE_OB_ENEMY ; 0
const PAL_BATTLE_OB_PLAYER ; 1
const PAL_BATTLE_OB_GRAY ; 2
const PAL_BATTLE_OB_YELLOW ; 3
const PAL_BATTLE_OB_RED ; 4
const PAL_BATTLE_OB_GREEN ; 5
const PAL_BATTLE_OB_BLUE ; 6
const PAL_BATTLE_OB_BROWN ; 7

View File

@ -1,4 +1,5 @@
; pitch
; FrequencyTable indexes (see data/audio/notes.asm)
const_def
const __ ; 0
const C_ ; 1

View File

@ -59,7 +59,7 @@ deco: MACRO
enum DECOFLAG_\1
endm
; decorations
; decorations (see data/decoration_attribute.asm)
const_value = 1
__enum__ = 0
const BEDS

View File

@ -1,10 +1,11 @@
; BattleCommandPointers indexes (see battle/effect_commands.asm)
command: macro
enum \1_command
\1 equs "db \1_command"
endm
enum_start 1
command checkturn ; 01
command checkobedience ; 02
command usedmovetext ; 03

View File

@ -6,11 +6,11 @@
const ENGINE_PHONE_CARD
const ENGINE_EXPN_CARD
const ENGINE_POKEGEAR
; wDaycareMan
const ENGINE_DAYCARE_MAN_HAS_EGG
const ENGINE_DAYCARE_MAN_HAS_MON
; wDaycareLady
const ENGINE_DAYCARE_LADY_HAS_MON
; wDayCareMan
const ENGINE_DAY_CARE_MAN_HAS_EGG
const ENGINE_DAY_CARE_MAN_HAS_MON
; wDayCareLady
const ENGINE_DAY_CARE_LADY_HAS_MON
; wMomSavingMoney
const ENGINE_MOM_SAVING_MONEY
const ENGINE_DST

View File

@ -1836,10 +1836,10 @@
const EVENT_TEAM_ROCKET_BASE_B2F_ELECTRODE_3
const EVENT_BLACKTHORN_CITY_SUPER_NERD_BLOCKS_GYM
const EVENT_BLACKTHORN_CITY_SUPER_NERD_DOES_NOT_BLOCK_GYM
const EVENT_DAYCARE_MAN_IN_DAYCARE
const EVENT_DAYCARE_MAN_ON_ROUTE_34
const EVENT_DAYCARE_MON_1
const EVENT_DAYCARE_MON_2
const EVENT_DAY_CARE_MAN_IN_DAY_CARE
const EVENT_DAY_CARE_MAN_ON_ROUTE_34
const EVENT_DAY_CARE_MON_1
const EVENT_DAY_CARE_MON_2
const EVENT_ILEX_FOREST_FARFETCHD
const EVENT_ROUTE_34_ILEX_FOREST_GATE_TEACHER_BEHIND_COUNTER
const EVENT_ROUTE_34_ILEX_FOREST_GATE_LASS

View File

@ -1,3 +1,21 @@
LEN_2BPP_TILE EQU 16
LEN_1BPP_TILE EQU 8
TILES_PER_FRAME EQU 6
LEN_1BPP_TILE EQU 8 ; bytes
LEN_2BPP_TILE EQU 16 ; bytes
TILE_WIDTH EQU 8 ; pixels
NUM_PAL_COLORS EQU 4
SCREEN_WIDTH EQU 20 ; tiles
SCREEN_HEIGHT EQU 18 ; tiles
SCREEN_WIDTH_PX EQU SCREEN_WIDTH * TILE_WIDTH ; pixels
SCREEN_HEIGHT_PX EQU SCREEN_HEIGHT * TILE_WIDTH ; pixels
BG_MAP_WIDTH EQU 32 ; tiles
BG_MAP_HEIGHT EQU 32 ; tiles
WMISC_WIDTH EQU 6 * 4
WMISC_HEIGHT EQU 5 * 4
HP_BAR_LENGTH EQU 6 ; tiles
HP_BAR_LENGTH_PX EQU HP_BAR_LENGTH * TILE_WIDTH ; pixels
EXP_BAR_LENGTH EQU 8 ; tiles
EXP_BAR_LENGTH_PX EQU EXP_BAR_LENGTH * TILE_WIDTH ; pixels

View File

@ -0,0 +1,26 @@
; joypad buttons
const_def
const A_BUTTON_F ; 0
const B_BUTTON_F ; 1
const SELECT_F ; 2
const START_F ; 3
const D_RIGHT_F ; 4
const D_LEFT_F ; 5
const D_UP_F ; 6
const D_DOWN_F ; 7
NO_INPUT EQU %00000000
A_BUTTON EQU 1 << A_BUTTON_F
B_BUTTON EQU 1 << B_BUTTON_F
SELECT EQU 1 << SELECT_F
START EQU 1 << START_F
D_RIGHT EQU 1 << D_RIGHT_F
D_LEFT EQU 1 << D_LEFT_F
D_UP EQU 1 << D_UP_F
D_DOWN EQU 1 << D_DOWN_F
BUTTONS EQU A_BUTTON | B_BUTTON | SELECT | START
D_PAD EQU D_RIGHT | D_LEFT | D_UP | D_DOWN
R_DPAD EQU %00100000
R_BUTTONS EQU %00010000

View File

@ -197,6 +197,7 @@
const MIRAGE_MAIL ; $BD
const ITEM_BE ; $BE
; see data/tmhm_moves.asm for moves
add_tm DYNAMICPUNCH ; $BF
add_tm HEADBUTT ; $C0
add_tm CURSE ; $C1

View File

@ -1,4 +1,4 @@
; Landmarks indexes (see engine/landmarks.asm)
; Landmarks indexes (see data/landmarks.asm)
const_def
; Johto landmarks

View File

@ -1,484 +1,8 @@
GROUP_N_A EQU -1
MAP_N_A EQU -1
GROUP_NONE EQU 0
MAP_NONE EQU 0
; map group ids
; `newgroup` indexes are for:
; - MapGroupPointers (see maps/map_headers.asm)
; - OutdoorSprites (see engine/overworld.asm)
; - MapGroupRoofs (see tilesets/roofs.asm)
; `mapgroup` indexes are for the sub-tables of MapGroupPointers (see maps/map_headers.asm)
const_def
newgroup ; 1
mapgroup OLIVINE_POKECENTER_1F, 4, 5 ; 1
mapgroup OLIVINE_GYM, 8, 5 ; 2
mapgroup OLIVINE_TIMS_HOUSE, 4, 4 ; 3
mapgroup OLIVINE_HOUSE_BETA, 4, 4 ; 4
mapgroup OLIVINE_PUNISHMENT_SPEECH_HOUSE, 4, 4 ; 5
mapgroup OLIVINE_GOOD_ROD_HOUSE, 4, 4 ; 6
mapgroup OLIVINE_CAFE, 4, 4 ; 7
mapgroup OLIVINE_MART, 4, 6 ; 8
mapgroup ROUTE_38_ECRUTEAK_GATE, 4, 5 ; 9
mapgroup ROUTE_39_BARN, 4, 4 ; 10
mapgroup ROUTE_39_FARMHOUSE, 4, 4 ; 11
mapgroup ROUTE_38, 9, 20 ; 12
mapgroup ROUTE_39, 18, 10 ; 13
mapgroup OLIVINE_CITY, 18, 20 ; 14
newgroup ; 2
mapgroup MAHOGANY_RED_GYARADOS_SPEECH_HOUSE, 4, 4 ; 1
mapgroup MAHOGANY_GYM, 9, 5 ; 2
mapgroup MAHOGANY_POKECENTER_1F, 4, 5 ; 3
mapgroup ROUTE_42_ECRUTEAK_GATE, 4, 5 ; 4
mapgroup ROUTE_42, 9, 30 ; 5
mapgroup ROUTE_44, 9, 30 ; 6
mapgroup MAHOGANY_TOWN, 9, 10 ; 7
newgroup ; 3
mapgroup SPROUT_TOWER_1F, 8, 10 ; 1
mapgroup SPROUT_TOWER_2F, 8, 10 ; 2
mapgroup SPROUT_TOWER_3F, 8, 10 ; 3
mapgroup TIN_TOWER_1F, 9, 10 ; 4
mapgroup TIN_TOWER_2F, 9, 10 ; 5
mapgroup TIN_TOWER_3F, 9, 10 ; 6
mapgroup TIN_TOWER_4F, 9, 10 ; 7
mapgroup TIN_TOWER_5F, 9, 10 ; 8
mapgroup TIN_TOWER_6F, 9, 10 ; 9
mapgroup TIN_TOWER_7F, 9, 10 ; 10
mapgroup TIN_TOWER_8F, 9, 10 ; 11
mapgroup TIN_TOWER_9F, 9, 10 ; 12
mapgroup BURNED_TOWER_1F, 9, 10 ; 13
mapgroup BURNED_TOWER_B1F, 9, 10 ; 14
mapgroup NATIONAL_PARK, 27, 20 ; 15
mapgroup NATIONAL_PARK_BUG_CONTEST, 27, 20 ; 16
mapgroup RADIO_TOWER_1F, 4, 9 ; 17
mapgroup RADIO_TOWER_2F, 4, 9 ; 18
mapgroup RADIO_TOWER_3F, 4, 9 ; 19
mapgroup RADIO_TOWER_4F, 4, 9 ; 20
mapgroup RADIO_TOWER_5F, 4, 9 ; 21
mapgroup RUINS_OF_ALPH_OUTSIDE, 18, 10 ; 22
mapgroup RUINS_OF_ALPH_HO_OH_CHAMBER, 5, 4 ; 23
mapgroup RUINS_OF_ALPH_KABUTO_CHAMBER, 5, 4 ; 24
mapgroup RUINS_OF_ALPH_OMANYTE_CHAMBER, 5, 4 ; 25
mapgroup RUINS_OF_ALPH_AERODACTYL_CHAMBER, 5, 4 ; 26
mapgroup RUINS_OF_ALPH_INNER_CHAMBER, 14, 10 ; 27
mapgroup RUINS_OF_ALPH_RESEARCH_CENTER, 4, 4 ; 28
mapgroup RUINS_OF_ALPH_HO_OH_ITEM_ROOM, 5, 4 ; 29
mapgroup RUINS_OF_ALPH_KABUTO_ITEM_ROOM, 5, 4 ; 30
mapgroup RUINS_OF_ALPH_OMANYTE_ITEM_ROOM, 5, 4 ; 31
mapgroup RUINS_OF_ALPH_AERODACTYL_ITEM_ROOM, 5, 4 ; 32
mapgroup RUINS_OF_ALPH_HO_OH_WORD_ROOM, 12, 10 ; 33
mapgroup RUINS_OF_ALPH_KABUTO_WORD_ROOM, 7, 10 ; 34
mapgroup RUINS_OF_ALPH_OMANYTE_WORD_ROOM, 8, 10 ; 35
mapgroup RUINS_OF_ALPH_AERODACTYL_WORD_ROOM, 7, 10 ; 36
mapgroup UNION_CAVE_1F, 18, 10 ; 37
mapgroup UNION_CAVE_B1F, 18, 10 ; 38
mapgroup UNION_CAVE_B2F, 18, 10 ; 39
mapgroup SLOWPOKE_WELL_B1F, 9, 10 ; 40
mapgroup SLOWPOKE_WELL_B2F, 9, 10 ; 41
mapgroup OLIVINE_LIGHTHOUSE_1F, 9, 10 ; 42
mapgroup OLIVINE_LIGHTHOUSE_2F, 9, 10 ; 43
mapgroup OLIVINE_LIGHTHOUSE_3F, 9, 10 ; 44
mapgroup OLIVINE_LIGHTHOUSE_4F, 9, 10 ; 45
mapgroup OLIVINE_LIGHTHOUSE_5F, 9, 10 ; 46
mapgroup OLIVINE_LIGHTHOUSE_6F, 9, 10 ; 47
mapgroup MAHOGANY_MART_1F, 4, 4 ; 48
mapgroup TEAM_ROCKET_BASE_B1F, 9, 15 ; 49
mapgroup TEAM_ROCKET_BASE_B2F, 9, 15 ; 50
mapgroup TEAM_ROCKET_BASE_B3F, 9, 15 ; 51
mapgroup ILEX_FOREST, 27, 15 ; 52
mapgroup WAREHOUSE_ENTRANCE, 18, 15 ; 53
mapgroup UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES, 18, 15 ; 54
mapgroup GOLDENROD_DEPT_STORE_B1F, 9, 10 ; 55
mapgroup UNDERGROUND_WAREHOUSE, 9, 10 ; 56
mapgroup MOUNT_MORTAR_1F_OUTSIDE, 18, 20 ; 57
mapgroup MOUNT_MORTAR_1F_INSIDE, 27, 20 ; 58
mapgroup MOUNT_MORTAR_2F_INSIDE, 18, 20 ; 59
mapgroup MOUNT_MORTAR_B1F, 18, 20 ; 60
mapgroup ICE_PATH_1F, 18, 20 ; 61
mapgroup ICE_PATH_B1F, 18, 10 ; 62
mapgroup ICE_PATH_B2F_MAHOGANY_SIDE, 9, 10 ; 63
mapgroup ICE_PATH_B2F_BLACKTHORN_SIDE, 9, 5 ; 64
mapgroup ICE_PATH_B3F, 9, 10 ; 65
mapgroup WHIRL_ISLAND_NW, 9, 5 ; 66
mapgroup WHIRL_ISLAND_NE, 9, 10 ; 67
mapgroup WHIRL_ISLAND_SW, 9, 10 ; 68
mapgroup WHIRL_ISLAND_CAVE, 9, 5 ; 69
mapgroup WHIRL_ISLAND_SE, 9, 5 ; 70
mapgroup WHIRL_ISLAND_B1F, 18, 20 ; 71
mapgroup WHIRL_ISLAND_B2F, 18, 10 ; 72
mapgroup WHIRL_ISLAND_LUGIA_CHAMBER, 9, 10 ; 73
mapgroup SILVER_CAVE_ROOM_1, 18, 10 ; 74
mapgroup SILVER_CAVE_ROOM_2, 18, 15 ; 75
mapgroup SILVER_CAVE_ROOM_3, 18, 10 ; 76
mapgroup SILVER_CAVE_ITEM_ROOMS, 9, 10 ; 77
mapgroup DARK_CAVE_VIOLET_ENTRANCE, 18, 20 ; 78
mapgroup DARK_CAVE_BLACKTHORN_ENTRANCE, 18, 15 ; 79
mapgroup DRAGONS_DEN_1F, 9, 5 ; 80
mapgroup DRAGONS_DEN_B1F, 18, 20 ; 81
mapgroup DRAGON_SHRINE, 5, 5 ; 82
mapgroup TOHJO_FALLS, 9, 15 ; 83
mapgroup DIGLETTS_CAVE, 18, 10 ; 84
mapgroup MOUNT_MOON, 9, 15 ; 85
mapgroup UNDERGROUND, 14, 3 ; 86
mapgroup ROCK_TUNNEL_1F, 18, 15 ; 87
mapgroup ROCK_TUNNEL_B1F, 18, 15 ; 88
mapgroup SAFARI_ZONE_FUCHSIA_GATE_BETA, 4, 5 ; 89
mapgroup SAFARI_ZONE_BETA, 18, 10 ; 90
mapgroup VICTORY_ROAD, 36, 10 ; 91
newgroup ; 4
mapgroup ECRUTEAK_HOUSE, 9, 10 ; 1
mapgroup WISE_TRIOS_ROOM, 4, 4 ; 2
mapgroup ECRUTEAK_POKECENTER_1F, 4, 5 ; 3
mapgroup ECRUTEAK_LUGIA_SPEECH_HOUSE, 4, 4 ; 4
mapgroup DANCE_THEATRE, 7, 6 ; 5
mapgroup ECRUTEAK_MART, 4, 6 ; 6
mapgroup ECRUTEAK_GYM, 9, 5 ; 7
mapgroup ECRUTEAK_ITEMFINDER_HOUSE, 4, 4 ; 8
mapgroup ECRUTEAK_CITY, 18, 20 ; 9
newgroup ; 5
mapgroup BLACKTHORN_GYM_1F, 9, 5 ; 1
mapgroup BLACKTHORN_GYM_2F, 9, 5 ; 2
mapgroup BLACKTHORN_DRAGON_SPEECH_HOUSE, 4, 4 ; 3
mapgroup BLACKTHORN_EMYS_HOUSE, 4, 4 ; 4
mapgroup BLACKTHORN_MART, 4, 6 ; 5
mapgroup BLACKTHORN_POKECENTER_1F, 4, 5 ; 6
mapgroup MOVE_DELETERS_HOUSE, 4, 4 ; 7
mapgroup ROUTE_45, 45, 10 ; 8
mapgroup ROUTE_46, 18, 10 ; 9
mapgroup BLACKTHORN_CITY, 18, 20 ; 10
newgroup ; 6
mapgroup CINNABAR_POKECENTER_1F, 4, 5 ; 1
mapgroup CINNABAR_POKECENTER_2F_BETA, 4, 8 ; 2
mapgroup ROUTE_19___FUCHSIA_GATE, 4, 5 ; 3
mapgroup SEAFOAM_GYM, 4, 5 ; 4
mapgroup ROUTE_19, 18, 10 ; 5
mapgroup ROUTE_20, 9, 30 ; 6
mapgroup ROUTE_21, 18, 10 ; 7
mapgroup CINNABAR_ISLAND, 9, 10 ; 8
newgroup ; 7
mapgroup CERULEAN_GYM_BADGE_SPEECH_HOUSE, 4, 4 ; 1
mapgroup CERULEAN_POLICE_STATION, 4, 4 ; 2
mapgroup CERULEAN_TRADE_SPEECH_HOUSE, 4, 4 ; 3
mapgroup CERULEAN_POKECENTER_1F, 4, 5 ; 4
mapgroup CERULEAN_POKECENTER_2F_BETA, 4, 8 ; 5
mapgroup CERULEAN_GYM, 8, 5 ; 6
mapgroup CERULEAN_MART, 4, 6 ; 7
mapgroup ROUTE_10_POKECENTER_1F, 4, 5 ; 8
mapgroup ROUTE_10_POKECENTER_2F_BETA, 4, 8 ; 9
mapgroup POWER_PLANT, 9, 10 ; 10
mapgroup BILLS_HOUSE, 4, 4 ; 11
mapgroup ROUTE_4, 9, 20 ; 12
mapgroup ROUTE_9, 9, 30 ; 13
mapgroup ROUTE_10_NORTH, 9, 10 ; 14
mapgroup ROUTE_24, 9, 10 ; 15
mapgroup ROUTE_25, 9, 30 ; 16
mapgroup CERULEAN_CITY, 18, 20 ; 17
newgroup ; 8
mapgroup AZALEA_POKECENTER_1F, 4, 5 ; 1
mapgroup CHARCOAL_KILN, 4, 4 ; 2
mapgroup AZALEA_MART, 4, 6 ; 3
mapgroup KURTS_HOUSE, 4, 8 ; 4
mapgroup AZALEA_GYM, 8, 5 ; 5
mapgroup ROUTE_33, 9, 10 ; 6
mapgroup AZALEA_TOWN, 9, 20 ; 7
newgroup ; 9
mapgroup LAKE_OF_RAGE_HIDDEN_POWER_HOUSE, 4, 4 ; 1
mapgroup LAKE_OF_RAGE_MAGIKARP_HOUSE, 4, 4 ; 2
mapgroup ROUTE_43_MAHOGANY_GATE, 4, 5 ; 3
mapgroup ROUTE_43_GATE, 4, 5 ; 4
mapgroup ROUTE_43, 27, 10 ; 5
mapgroup LAKE_OF_RAGE, 18, 20 ; 6
newgroup ; 10
mapgroup ROUTE_32, 45, 10 ; 1
mapgroup ROUTE_35, 18, 10 ; 2
mapgroup ROUTE_36, 9, 30 ; 3
mapgroup ROUTE_37, 9, 10 ; 4
mapgroup VIOLET_CITY, 18, 20 ; 5
mapgroup VIOLET_MART, 4, 6 ; 6
mapgroup VIOLET_GYM, 8, 5 ; 7
mapgroup EARLS_POKEMON_ACADEMY, 8, 4 ; 8
mapgroup VIOLET_NICKNAME_SPEECH_HOUSE, 4, 4 ; 9
mapgroup VIOLET_POKECENTER_1F, 4, 5 ; 10
mapgroup VIOLET_ONIX_TRADE_HOUSE, 4, 4 ; 11
mapgroup ROUTE_32_RUINS_OF_ALPH_GATE, 4, 5 ; 12
mapgroup ROUTE_32_POKECENTER_1F, 4, 5 ; 13
mapgroup ROUTE_35_GOLDENROD_GATE, 4, 5 ; 14
mapgroup ROUTE_35_NATIONAL_PARK_GATE, 4, 4 ; 15
mapgroup ROUTE_36_RUINS_OF_ALPH_GATE, 4, 5 ; 16
mapgroup ROUTE_36_NATIONAL_PARK_GATE, 4, 5 ; 17
newgroup ; 11
mapgroup ROUTE_34, 27, 10 ; 1
mapgroup GOLDENROD_CITY, 18, 20 ; 2
mapgroup GOLDENROD_GYM, 9, 10 ; 3
mapgroup GOLDENROD_BIKE_SHOP, 4, 4 ; 4
mapgroup GOLDENROD_HAPPINESS_RATER, 4, 4 ; 5
mapgroup GOLDENROD_BILLS_HOUSE, 4, 4 ; 6
mapgroup GOLDENROD_MAGNET_TRAIN_STATION, 9, 10 ; 7
mapgroup GOLDENROD_FLOWER_SHOP, 4, 4 ; 8
mapgroup GOLDENROD_PP_SPEECH_HOUSE, 4, 4 ; 9
mapgroup GOLDENROD_NAME_RATER, 4, 4 ; 10
mapgroup GOLDENROD_DEPT_STORE_1F, 4, 8 ; 11
mapgroup GOLDENROD_DEPT_STORE_2F, 4, 8 ; 12
mapgroup GOLDENROD_DEPT_STORE_3F, 4, 8 ; 13
mapgroup GOLDENROD_DEPT_STORE_4F, 4, 8 ; 14
mapgroup GOLDENROD_DEPT_STORE_5F, 4, 8 ; 15
mapgroup GOLDENROD_DEPT_STORE_6F, 4, 8 ; 16
mapgroup GOLDENROD_DEPT_STORE_ELEVATOR, 2, 2 ; 17
mapgroup GOLDENROD_DEPT_STORE_ROOF, 4, 8 ; 18
mapgroup GOLDENROD_GAME_CORNER, 7, 10 ; 19
mapgroup GOLDENROD_POKECENTER_1F, 4, 5 ; 20
mapgroup GOLDENROD_POKECOM_CENTER_2F_MOBILE, 16, 16 ; 21
mapgroup ILEX_FOREST_AZALEA_GATE, 4, 5 ; 22
mapgroup ROUTE_34_ILEX_FOREST_GATE, 4, 5 ; 23
mapgroup DAYCARE, 4, 5 ; 24
newgroup ; 12
mapgroup ROUTE_6, 9, 10 ; 1
mapgroup ROUTE_11, 9, 20 ; 2
mapgroup VERMILION_CITY, 18, 20 ; 3
mapgroup VERMILION_HOUSE_FISHING_SPEECH_HOUSE, 4, 4 ; 4
mapgroup VERMILION_POKECENTER_1F, 4, 5 ; 5
mapgroup VERMILION_POKECENTER_2F_BETA, 4, 8 ; 6
mapgroup POKEMON_FAN_CLUB, 4, 5 ; 7
mapgroup VERMILION_MAGNET_TRAIN_SPEECH_HOUSE, 4, 4 ; 8
mapgroup VERMILION_MART, 4, 6 ; 9
mapgroup VERMILION_HOUSE_DIGLETTS_CAVE_SPEECH_HOUSE, 4, 4 ; 10
mapgroup VERMILION_GYM, 9, 5 ; 11
mapgroup ROUTE_6_SAFFRON_GATE, 4, 5 ; 12
mapgroup ROUTE_6_UNDERGROUND_ENTRANCE, 4, 4 ; 13
newgroup ; 13
mapgroup ROUTE_1, 18, 10 ; 1
mapgroup PALLET_TOWN, 9, 10 ; 2
mapgroup REDS_HOUSE_1F, 4, 4 ; 3
mapgroup REDS_HOUSE_2F, 4, 4 ; 4
mapgroup BLUES_HOUSE, 4, 4 ; 5
mapgroup OAKS_LAB, 6, 5 ; 6
newgroup ; 14
mapgroup ROUTE_3, 9, 30 ; 1
mapgroup PEWTER_CITY, 18, 20 ; 2
mapgroup PEWTER_NIDORAN_SPEECH_HOUSE, 4, 4 ; 3
mapgroup PEWTER_GYM, 7, 5 ; 4
mapgroup PEWTER_MART, 4, 6 ; 5
mapgroup PEWTER_POKECENTER_1F, 4, 5 ; 6
mapgroup PEWTER_POKECENTER_2F_BETA, 4, 8 ; 7
mapgroup PEWTER_SNOOZE_SPEECH_HOUSE, 4, 4 ; 8
newgroup ; 15
mapgroup OLIVINE_PORT, 18, 10 ; 1
mapgroup VERMILION_PORT, 18, 10 ; 2
mapgroup FAST_SHIP_1F, 9, 16 ; 3
mapgroup FAST_SHIP_CABINS_NNW_NNE_NE, 16, 4 ; 4
mapgroup FAST_SHIP_CABINS_SW_SSW_NW, 16, 4 ; 5
mapgroup FAST_SHIP_CABINS_SE_SSE_CAPTAINS_CABIN, 17, 5 ; 6
mapgroup FAST_SHIP_B1F, 8, 16 ; 7
mapgroup OLIVINE_PORT_PASSAGE, 9, 10 ; 8
mapgroup VERMILION_PORT_PASSAGE, 9, 10 ; 9
mapgroup MOUNT_MOON_SQUARE, 9, 15 ; 10
mapgroup MOUNT_MOON_GIFT_SHOP, 4, 4 ; 11
mapgroup TIN_TOWER_ROOF, 9, 10 ; 12
newgroup ; 16
mapgroup ROUTE_23, 9, 10 ; 1
mapgroup INDIGO_PLATEAU_POKECENTER_1F, 7, 9 ; 2
mapgroup WILLS_ROOM, 9, 5 ; 3
mapgroup KOGAS_ROOM, 9, 5 ; 4
mapgroup BRUNOS_ROOM, 9, 5 ; 5
mapgroup KARENS_ROOM, 9, 5 ; 6
mapgroup LANCES_ROOM, 12, 5 ; 7
mapgroup HALL_OF_FAME, 7, 5 ; 8
newgroup ; 17
mapgroup ROUTE_13, 9, 30 ; 1
mapgroup ROUTE_14, 18, 10 ; 2
mapgroup ROUTE_15, 9, 20 ; 3
mapgroup ROUTE_18, 9, 10 ; 4
mapgroup FUCHSIA_CITY, 18, 20 ; 5
mapgroup FUCHSIA_MART, 4, 6 ; 6
mapgroup SAFARI_ZONE_MAIN_OFFICE, 4, 4 ; 7
mapgroup FUCHSIA_GYM, 9, 5 ; 8
mapgroup FUCHSIA_BILL_SPEECH_HOUSE, 4, 4 ; 9
mapgroup FUCHSIA_POKECENTER_1F, 4, 5 ; 10
mapgroup FUCHSIA_POKECENTER_2F_BETA, 4, 8 ; 11
mapgroup SAFARI_ZONE_WARDENS_HOME, 4, 5 ; 12
mapgroup ROUTE_15_FUCHSIA_GATE, 4, 5 ; 13
newgroup ; 18
mapgroup ROUTE_8, 9, 20 ; 1
mapgroup ROUTE_12, 27, 10 ; 2
mapgroup ROUTE_10_SOUTH, 9, 10 ; 3
mapgroup LAVENDER_TOWN, 9, 10 ; 4
mapgroup LAVENDER_POKECENTER_1F, 4, 5 ; 5
mapgroup LAVENDER_POKECENTER_2F_BETA, 4, 8 ; 6
mapgroup MR_FUJIS_HOUSE, 4, 5 ; 7
mapgroup LAVENDER_TOWN_SPEECH_HOUSE, 4, 4 ; 8
mapgroup LAVENDER_NAME_RATER, 4, 4 ; 9
mapgroup LAVENDER_MART, 4, 6 ; 10
mapgroup SOUL_HOUSE, 4, 5 ; 11
mapgroup LAV_RADIO_TOWER_1F, 4, 10 ; 12
mapgroup ROUTE_8_SAFFRON_GATE, 4, 5 ; 13
mapgroup ROUTE_12_SUPER_ROD_HOUSE, 4, 4 ; 14
newgroup ; 19
mapgroup ROUTE_28, 9, 20 ; 1
mapgroup SILVER_CAVE_OUTSIDE, 18, 20 ; 2
mapgroup SILVER_CAVE_POKECENTER_1F, 4, 5 ; 3
mapgroup ROUTE_28_FAMOUS_SPEECH_HOUSE, 4, 4 ; 4
newgroup ; 20
mapgroup POKECENTER_2F, 4, 8 ; 1
mapgroup TRADE_CENTER, 4, 5 ; 2
mapgroup COLOSSEUM, 4, 5 ; 3
mapgroup TIME_CAPSULE, 4, 5 ; 4
mapgroup MOBILE_TRADE_ROOM_MOBILE, 4, 5 ; 5
mapgroup MOBILE_BATTLE_ROOM, 4, 5 ; 6
newgroup ; 21
mapgroup ROUTE_7, 9, 10 ; 1
mapgroup ROUTE_16, 9, 10 ; 2
mapgroup ROUTE_17, 45, 10 ; 3
mapgroup CELADON_CITY, 18, 20 ; 4
mapgroup CELADON_DEPT_STORE_1F, 4, 8 ; 5
mapgroup CELADON_DEPT_STORE_2F, 4, 8 ; 6
mapgroup CELADON_DEPT_STORE_3F, 4, 8 ; 7
mapgroup CELADON_DEPT_STORE_4F, 4, 8 ; 8
mapgroup CELADON_DEPT_STORE_5F, 4, 8 ; 9
mapgroup CELADON_DEPT_STORE_6F, 4, 8 ; 10
mapgroup CELADON_DEPT_STORE_ELEVATOR, 2, 2 ; 11
mapgroup CELADON_MANSION_1F, 5, 4 ; 12
mapgroup CELADON_MANSION_2F, 5, 4 ; 13
mapgroup CELADON_MANSION_3F, 5, 4 ; 14
mapgroup CELADON_MANSION_ROOF, 5, 4 ; 15
mapgroup CELADON_MANSION_ROOF_HOUSE, 4, 4 ; 16
mapgroup CELADON_POKECENTER_1F, 4, 5 ; 17
mapgroup CELADON_POKECENTER_2F_BETA, 4, 8 ; 18
mapgroup CELADON_GAME_CORNER, 7, 10 ; 19
mapgroup CELADON_GAME_CORNER_PRIZE_ROOM, 3, 3 ; 20
mapgroup CELADON_GYM, 9, 5 ; 21
mapgroup CELADON_CAFE, 4, 6 ; 22
mapgroup ROUTE_16_FUCHSIA_SPEECH_HOUSE, 4, 4 ; 23
mapgroup ROUTE_16_GATE, 4, 5 ; 24
mapgroup ROUTE_7_SAFFRON_GATE, 4, 5 ; 25
mapgroup ROUTE_17_18_GATE, 4, 5 ; 26
newgroup ; 22
mapgroup ROUTE_40, 18, 10 ; 1
mapgroup ROUTE_41, 27, 25 ; 2
mapgroup CIANWOOD_CITY, 27, 15 ; 3
mapgroup MANIAS_HOUSE, 4, 4 ; 4
mapgroup CIANWOOD_GYM, 9, 5 ; 5
mapgroup CIANWOOD_POKECENTER_1F, 4, 5 ; 6
mapgroup CIANWOOD_PHARMACY, 4, 4 ; 7
mapgroup CIANWOOD_CITY_PHOTO_STUDIO, 4, 4 ; 8
mapgroup CIANWOOD_LUGIA_SPEECH_HOUSE, 4, 4 ; 9
mapgroup POKE_SEERS_HOUSE, 4, 4 ; 10
mapgroup BATTLE_TOWER_1F, 5, 8 ; 11
mapgroup BATTLE_TOWER_BATTLE_ROOM, 4, 4 ; 12
mapgroup BATTLE_TOWER_ELEVATOR, 2, 2 ; 13
mapgroup BATTLE_TOWER_HALLWAY, 2, 11 ; 14
mapgroup ROUTE_40_BATTLE_TOWER_GATE, 4, 5 ; 15
mapgroup BATTLE_TOWER_OUTSIDE, 14, 10 ; 16
newgroup ; 23
mapgroup ROUTE_2, 27, 10 ; 1
mapgroup ROUTE_22, 9, 20 ; 2
mapgroup VIRIDIAN_CITY, 18, 20 ; 3
mapgroup VIRIDIAN_GYM, 9, 5 ; 4
mapgroup VIRIDIAN_NICKNAME_SPEECH_HOUSE, 4, 4 ; 5
mapgroup TRAINER_HOUSE_1F, 7, 5 ; 6
mapgroup TRAINER_HOUSE_B1F, 8, 5 ; 7
mapgroup VIRIDIAN_MART, 4, 6 ; 8
mapgroup VIRIDIAN_POKECENTER_1F, 4, 5 ; 9
mapgroup VIRIDIAN_POKECENTER_2F_BETA, 4, 8 ; 10
mapgroup ROUTE_2_NUGGET_SPEECH_HOUSE, 4, 4 ; 11
mapgroup ROUTE_2_GATE, 4, 5 ; 12
mapgroup VICTORY_ROAD_GATE, 9, 10 ; 13
newgroup ; 24
mapgroup ROUTE_26, 54, 10 ; 1
mapgroup ROUTE_27, 9, 40 ; 2
mapgroup ROUTE_29, 9, 30 ; 3
mapgroup NEW_BARK_TOWN, 9, 10 ; 4
mapgroup ELMS_LAB, 6, 5 ; 5
mapgroup KRISS_HOUSE_1F, 4, 5 ; 6
mapgroup KRISS_HOUSE_2F, 3, 4 ; 7
mapgroup KRISS_NEIGHBORS_HOUSE, 4, 4 ; 8
mapgroup ELMS_HOUSE, 4, 4 ; 9
mapgroup ROUTE_26_HEAL_SPEECH_HOUSE, 4, 4 ; 10
mapgroup ROUTE_26_DAY_OF_WEEK_SIBLINGS_HOUSE, 4, 4 ; 11
mapgroup ROUTE_27_SANDSTORM_HOUSE, 4, 4 ; 12
mapgroup ROUTE_29_46_GATE, 4, 5 ; 13
newgroup ; 25
mapgroup ROUTE_5, 9, 10 ; 1
mapgroup SAFFRON_CITY, 18, 20 ; 2
mapgroup FIGHTING_DOJO, 6, 5 ; 3
mapgroup SAFFRON_GYM, 9, 10 ; 4
mapgroup SAFFRON_MART, 4, 6 ; 5
mapgroup SAFFRON_POKECENTER_1F, 4, 5 ; 6
mapgroup SAFFRON_POKECENTER_2F_BETA, 4, 8 ; 7
mapgroup MR_PSYCHICS_HOUSE, 4, 4 ; 8
mapgroup SAFFRON_TRAIN_STATION, 9, 10 ; 9
mapgroup SILPH_CO_1F, 4, 8 ; 10
mapgroup COPYCATS_HOUSE_1F, 4, 4 ; 11
mapgroup COPYCATS_HOUSE_2F, 3, 5 ; 12
mapgroup ROUTE_5_UNDERGROUND_ENTRANCE, 4, 4 ; 13
mapgroup ROUTE_5_SAFFRON_CITY_GATE, 4, 5 ; 14
mapgroup ROUTE_5_CLEANSE_TAG_SPEECH_HOUSE, 4, 4 ; 15
newgroup ; 26
mapgroup ROUTE_30, 27, 10 ; 1
mapgroup ROUTE_31, 9, 20 ; 2
mapgroup CHERRYGROVE_CITY, 9, 20 ; 3
mapgroup CHERRYGROVE_MART, 4, 6 ; 4
mapgroup CHERRYGROVE_POKECENTER_1F, 4, 5 ; 5
mapgroup CHERRYGROVE_GYM_SPEECH_HOUSE, 4, 4 ; 6
mapgroup GUIDE_GENTS_HOUSE, 4, 4 ; 7
mapgroup CHERRYGROVE_EVOLUTION_SPEECH_HOUSE, 4, 4 ; 8
mapgroup ROUTE_30_BERRY_SPEECH_HOUSE, 4, 4 ; 9
mapgroup MR_POKEMONS_HOUSE, 4, 4 ; 10
mapgroup ROUTE_31_VIOLET_GATE, 4, 5 ; 11
; map permissions (wPermission)
const_value SET 1
const TOWN
@ -603,7 +127,7 @@ SLIDING EQU 3
EMOTE_OBJECT EQU 7
; SpawnPoints indexes (see engine/spawn_points.asm)
; SpawnPoints indexes (see data/spawn_points.asm)
const_value = -1
const SPAWN_N_A
const SPAWN_HOME
@ -679,7 +203,7 @@ NUM_SPAWNS EQU const_value
const EMOTE_GRASS_RUSTLE ; 11
EMOTE_MEM EQU -1
; FruitTreeItems indexes (see engine/fruit_trees.asm)
; FruitTreeItems indexes (see data/fruit_tree_items.asm)
const_value SET 1
const FRUITTREE_ROUTE_29 ; 01
const FRUITTREE_ROUTE_30_1 ; 02
@ -716,22 +240,22 @@ NUM_FRUIT_TREES EQU const_value +- 1
; elevator floors
; used by `elevfloor`
const_def
const _B4F
const _B3F
const _B2F
const _B1F
const _1F
const _2F
const _3F
const _4F
const _5F
const _6F
const _7F
const _8F
const _9F
const _10F
const _11F
const _ROOF
const FLOOR_B4F
const FLOOR_B3F
const FLOOR_B2F
const FLOOR_B1F
const FLOOR_1F
const FLOOR_2F
const FLOOR_3F
const FLOOR_4F
const FLOOR_5F
const FLOOR_6F
const FLOOR_7F
const FLOOR_8F
const FLOOR_9F
const FLOOR_10F
const FLOOR_11F
const FLOOR_ROOF
; command queue members
CMDQUEUE_TYPE EQU 0

View File

@ -0,0 +1,473 @@
; map group ids
; `newgroup` indexes are for:
; - MapGroupPointers (see maps/map_headers.asm)
; - OutdoorSprites (see data/outdoor_sprites.asm)
; - MapGroupRoofs (see data/mapgroup_roofs.asm)
; `mapgroup` indexes are for the sub-tables of MapGroupPointers (see maps/map_headers.asm)
const_def
newgroup ; 1
mapgroup OLIVINE_POKECENTER_1F, 4, 5 ; 1
mapgroup OLIVINE_GYM, 8, 5 ; 2
mapgroup OLIVINE_TIMS_HOUSE, 4, 4 ; 3
mapgroup OLIVINE_HOUSE_BETA, 4, 4 ; 4
mapgroup OLIVINE_PUNISHMENT_SPEECH_HOUSE, 4, 4 ; 5
mapgroup OLIVINE_GOOD_ROD_HOUSE, 4, 4 ; 6
mapgroup OLIVINE_CAFE, 4, 4 ; 7
mapgroup OLIVINE_MART, 4, 6 ; 8
mapgroup ROUTE_38_ECRUTEAK_GATE, 4, 5 ; 9
mapgroup ROUTE_39_BARN, 4, 4 ; 10
mapgroup ROUTE_39_FARMHOUSE, 4, 4 ; 11
mapgroup ROUTE_38, 9, 20 ; 12
mapgroup ROUTE_39, 18, 10 ; 13
mapgroup OLIVINE_CITY, 18, 20 ; 14
newgroup ; 2
mapgroup MAHOGANY_RED_GYARADOS_SPEECH_HOUSE, 4, 4 ; 1
mapgroup MAHOGANY_GYM, 9, 5 ; 2
mapgroup MAHOGANY_POKECENTER_1F, 4, 5 ; 3
mapgroup ROUTE_42_ECRUTEAK_GATE, 4, 5 ; 4
mapgroup ROUTE_42, 9, 30 ; 5
mapgroup ROUTE_44, 9, 30 ; 6
mapgroup MAHOGANY_TOWN, 9, 10 ; 7
newgroup ; 3
mapgroup SPROUT_TOWER_1F, 8, 10 ; 1
mapgroup SPROUT_TOWER_2F, 8, 10 ; 2
mapgroup SPROUT_TOWER_3F, 8, 10 ; 3
mapgroup TIN_TOWER_1F, 9, 10 ; 4
mapgroup TIN_TOWER_2F, 9, 10 ; 5
mapgroup TIN_TOWER_3F, 9, 10 ; 6
mapgroup TIN_TOWER_4F, 9, 10 ; 7
mapgroup TIN_TOWER_5F, 9, 10 ; 8
mapgroup TIN_TOWER_6F, 9, 10 ; 9
mapgroup TIN_TOWER_7F, 9, 10 ; 10
mapgroup TIN_TOWER_8F, 9, 10 ; 11
mapgroup TIN_TOWER_9F, 9, 10 ; 12
mapgroup BURNED_TOWER_1F, 9, 10 ; 13
mapgroup BURNED_TOWER_B1F, 9, 10 ; 14
mapgroup NATIONAL_PARK, 27, 20 ; 15
mapgroup NATIONAL_PARK_BUG_CONTEST, 27, 20 ; 16
mapgroup RADIO_TOWER_1F, 4, 9 ; 17
mapgroup RADIO_TOWER_2F, 4, 9 ; 18
mapgroup RADIO_TOWER_3F, 4, 9 ; 19
mapgroup RADIO_TOWER_4F, 4, 9 ; 20
mapgroup RADIO_TOWER_5F, 4, 9 ; 21
mapgroup RUINS_OF_ALPH_OUTSIDE, 18, 10 ; 22
mapgroup RUINS_OF_ALPH_HO_OH_CHAMBER, 5, 4 ; 23
mapgroup RUINS_OF_ALPH_KABUTO_CHAMBER, 5, 4 ; 24
mapgroup RUINS_OF_ALPH_OMANYTE_CHAMBER, 5, 4 ; 25
mapgroup RUINS_OF_ALPH_AERODACTYL_CHAMBER, 5, 4 ; 26
mapgroup RUINS_OF_ALPH_INNER_CHAMBER, 14, 10 ; 27
mapgroup RUINS_OF_ALPH_RESEARCH_CENTER, 4, 4 ; 28
mapgroup RUINS_OF_ALPH_HO_OH_ITEM_ROOM, 5, 4 ; 29
mapgroup RUINS_OF_ALPH_KABUTO_ITEM_ROOM, 5, 4 ; 30
mapgroup RUINS_OF_ALPH_OMANYTE_ITEM_ROOM, 5, 4 ; 31
mapgroup RUINS_OF_ALPH_AERODACTYL_ITEM_ROOM, 5, 4 ; 32
mapgroup RUINS_OF_ALPH_HO_OH_WORD_ROOM, 12, 10 ; 33
mapgroup RUINS_OF_ALPH_KABUTO_WORD_ROOM, 7, 10 ; 34
mapgroup RUINS_OF_ALPH_OMANYTE_WORD_ROOM, 8, 10 ; 35
mapgroup RUINS_OF_ALPH_AERODACTYL_WORD_ROOM, 7, 10 ; 36
mapgroup UNION_CAVE_1F, 18, 10 ; 37
mapgroup UNION_CAVE_B1F, 18, 10 ; 38
mapgroup UNION_CAVE_B2F, 18, 10 ; 39
mapgroup SLOWPOKE_WELL_B1F, 9, 10 ; 40
mapgroup SLOWPOKE_WELL_B2F, 9, 10 ; 41
mapgroup OLIVINE_LIGHTHOUSE_1F, 9, 10 ; 42
mapgroup OLIVINE_LIGHTHOUSE_2F, 9, 10 ; 43
mapgroup OLIVINE_LIGHTHOUSE_3F, 9, 10 ; 44
mapgroup OLIVINE_LIGHTHOUSE_4F, 9, 10 ; 45
mapgroup OLIVINE_LIGHTHOUSE_5F, 9, 10 ; 46
mapgroup OLIVINE_LIGHTHOUSE_6F, 9, 10 ; 47
mapgroup MAHOGANY_MART_1F, 4, 4 ; 48
mapgroup TEAM_ROCKET_BASE_B1F, 9, 15 ; 49
mapgroup TEAM_ROCKET_BASE_B2F, 9, 15 ; 50
mapgroup TEAM_ROCKET_BASE_B3F, 9, 15 ; 51
mapgroup ILEX_FOREST, 27, 15 ; 52
mapgroup WAREHOUSE_ENTRANCE, 18, 15 ; 53
mapgroup UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES, 18, 15 ; 54
mapgroup GOLDENROD_DEPT_STORE_B1F, 9, 10 ; 55
mapgroup UNDERGROUND_WAREHOUSE, 9, 10 ; 56
mapgroup MOUNT_MORTAR_1F_OUTSIDE, 18, 20 ; 57
mapgroup MOUNT_MORTAR_1F_INSIDE, 27, 20 ; 58
mapgroup MOUNT_MORTAR_2F_INSIDE, 18, 20 ; 59
mapgroup MOUNT_MORTAR_B1F, 18, 20 ; 60
mapgroup ICE_PATH_1F, 18, 20 ; 61
mapgroup ICE_PATH_B1F, 18, 10 ; 62
mapgroup ICE_PATH_B2F_MAHOGANY_SIDE, 9, 10 ; 63
mapgroup ICE_PATH_B2F_BLACKTHORN_SIDE, 9, 5 ; 64
mapgroup ICE_PATH_B3F, 9, 10 ; 65
mapgroup WHIRL_ISLAND_NW, 9, 5 ; 66
mapgroup WHIRL_ISLAND_NE, 9, 10 ; 67
mapgroup WHIRL_ISLAND_SW, 9, 10 ; 68
mapgroup WHIRL_ISLAND_CAVE, 9, 5 ; 69
mapgroup WHIRL_ISLAND_SE, 9, 5 ; 70
mapgroup WHIRL_ISLAND_B1F, 18, 20 ; 71
mapgroup WHIRL_ISLAND_B2F, 18, 10 ; 72
mapgroup WHIRL_ISLAND_LUGIA_CHAMBER, 9, 10 ; 73
mapgroup SILVER_CAVE_ROOM_1, 18, 10 ; 74
mapgroup SILVER_CAVE_ROOM_2, 18, 15 ; 75
mapgroup SILVER_CAVE_ROOM_3, 18, 10 ; 76
mapgroup SILVER_CAVE_ITEM_ROOMS, 9, 10 ; 77
mapgroup DARK_CAVE_VIOLET_ENTRANCE, 18, 20 ; 78
mapgroup DARK_CAVE_BLACKTHORN_ENTRANCE, 18, 15 ; 79
mapgroup DRAGONS_DEN_1F, 9, 5 ; 80
mapgroup DRAGONS_DEN_B1F, 18, 20 ; 81
mapgroup DRAGON_SHRINE, 5, 5 ; 82
mapgroup TOHJO_FALLS, 9, 15 ; 83
mapgroup DIGLETTS_CAVE, 18, 10 ; 84
mapgroup MOUNT_MOON, 9, 15 ; 85
mapgroup UNDERGROUND, 14, 3 ; 86
mapgroup ROCK_TUNNEL_1F, 18, 15 ; 87
mapgroup ROCK_TUNNEL_B1F, 18, 15 ; 88
mapgroup SAFARI_ZONE_FUCHSIA_GATE_BETA, 4, 5 ; 89
mapgroup SAFARI_ZONE_BETA, 18, 10 ; 90
mapgroup VICTORY_ROAD, 36, 10 ; 91
newgroup ; 4
mapgroup ECRUTEAK_HOUSE, 9, 10 ; 1
mapgroup WISE_TRIOS_ROOM, 4, 4 ; 2
mapgroup ECRUTEAK_POKECENTER_1F, 4, 5 ; 3
mapgroup ECRUTEAK_LUGIA_SPEECH_HOUSE, 4, 4 ; 4
mapgroup DANCE_THEATRE, 7, 6 ; 5
mapgroup ECRUTEAK_MART, 4, 6 ; 6
mapgroup ECRUTEAK_GYM, 9, 5 ; 7
mapgroup ECRUTEAK_ITEMFINDER_HOUSE, 4, 4 ; 8
mapgroup ECRUTEAK_CITY, 18, 20 ; 9
newgroup ; 5
mapgroup BLACKTHORN_GYM_1F, 9, 5 ; 1
mapgroup BLACKTHORN_GYM_2F, 9, 5 ; 2
mapgroup BLACKTHORN_DRAGON_SPEECH_HOUSE, 4, 4 ; 3
mapgroup BLACKTHORN_EMYS_HOUSE, 4, 4 ; 4
mapgroup BLACKTHORN_MART, 4, 6 ; 5
mapgroup BLACKTHORN_POKECENTER_1F, 4, 5 ; 6
mapgroup MOVE_DELETERS_HOUSE, 4, 4 ; 7
mapgroup ROUTE_45, 45, 10 ; 8
mapgroup ROUTE_46, 18, 10 ; 9
mapgroup BLACKTHORN_CITY, 18, 20 ; 10
newgroup ; 6
mapgroup CINNABAR_POKECENTER_1F, 4, 5 ; 1
mapgroup CINNABAR_POKECENTER_2F_BETA, 4, 8 ; 2
mapgroup ROUTE_19___FUCHSIA_GATE, 4, 5 ; 3
mapgroup SEAFOAM_GYM, 4, 5 ; 4
mapgroup ROUTE_19, 18, 10 ; 5
mapgroup ROUTE_20, 9, 30 ; 6
mapgroup ROUTE_21, 18, 10 ; 7
mapgroup CINNABAR_ISLAND, 9, 10 ; 8
newgroup ; 7
mapgroup CERULEAN_GYM_BADGE_SPEECH_HOUSE, 4, 4 ; 1
mapgroup CERULEAN_POLICE_STATION, 4, 4 ; 2
mapgroup CERULEAN_TRADE_SPEECH_HOUSE, 4, 4 ; 3
mapgroup CERULEAN_POKECENTER_1F, 4, 5 ; 4
mapgroup CERULEAN_POKECENTER_2F_BETA, 4, 8 ; 5
mapgroup CERULEAN_GYM, 8, 5 ; 6
mapgroup CERULEAN_MART, 4, 6 ; 7
mapgroup ROUTE_10_POKECENTER_1F, 4, 5 ; 8
mapgroup ROUTE_10_POKECENTER_2F_BETA, 4, 8 ; 9
mapgroup POWER_PLANT, 9, 10 ; 10
mapgroup BILLS_HOUSE, 4, 4 ; 11
mapgroup ROUTE_4, 9, 20 ; 12
mapgroup ROUTE_9, 9, 30 ; 13
mapgroup ROUTE_10_NORTH, 9, 10 ; 14
mapgroup ROUTE_24, 9, 10 ; 15
mapgroup ROUTE_25, 9, 30 ; 16
mapgroup CERULEAN_CITY, 18, 20 ; 17
newgroup ; 8
mapgroup AZALEA_POKECENTER_1F, 4, 5 ; 1
mapgroup CHARCOAL_KILN, 4, 4 ; 2
mapgroup AZALEA_MART, 4, 6 ; 3
mapgroup KURTS_HOUSE, 4, 8 ; 4
mapgroup AZALEA_GYM, 8, 5 ; 5
mapgroup ROUTE_33, 9, 10 ; 6
mapgroup AZALEA_TOWN, 9, 20 ; 7
newgroup ; 9
mapgroup LAKE_OF_RAGE_HIDDEN_POWER_HOUSE, 4, 4 ; 1
mapgroup LAKE_OF_RAGE_MAGIKARP_HOUSE, 4, 4 ; 2
mapgroup ROUTE_43_MAHOGANY_GATE, 4, 5 ; 3
mapgroup ROUTE_43_GATE, 4, 5 ; 4
mapgroup ROUTE_43, 27, 10 ; 5
mapgroup LAKE_OF_RAGE, 18, 20 ; 6
newgroup ; 10
mapgroup ROUTE_32, 45, 10 ; 1
mapgroup ROUTE_35, 18, 10 ; 2
mapgroup ROUTE_36, 9, 30 ; 3
mapgroup ROUTE_37, 9, 10 ; 4
mapgroup VIOLET_CITY, 18, 20 ; 5
mapgroup VIOLET_MART, 4, 6 ; 6
mapgroup VIOLET_GYM, 8, 5 ; 7
mapgroup EARLS_POKEMON_ACADEMY, 8, 4 ; 8
mapgroup VIOLET_NICKNAME_SPEECH_HOUSE, 4, 4 ; 9
mapgroup VIOLET_POKECENTER_1F, 4, 5 ; 10
mapgroup VIOLET_ONIX_TRADE_HOUSE, 4, 4 ; 11
mapgroup ROUTE_32_RUINS_OF_ALPH_GATE, 4, 5 ; 12
mapgroup ROUTE_32_POKECENTER_1F, 4, 5 ; 13
mapgroup ROUTE_35_GOLDENROD_GATE, 4, 5 ; 14
mapgroup ROUTE_35_NATIONAL_PARK_GATE, 4, 4 ; 15
mapgroup ROUTE_36_RUINS_OF_ALPH_GATE, 4, 5 ; 16
mapgroup ROUTE_36_NATIONAL_PARK_GATE, 4, 5 ; 17
newgroup ; 11
mapgroup ROUTE_34, 27, 10 ; 1
mapgroup GOLDENROD_CITY, 18, 20 ; 2
mapgroup GOLDENROD_GYM, 9, 10 ; 3
mapgroup GOLDENROD_BIKE_SHOP, 4, 4 ; 4
mapgroup GOLDENROD_HAPPINESS_RATER, 4, 4 ; 5
mapgroup GOLDENROD_BILLS_HOUSE, 4, 4 ; 6
mapgroup GOLDENROD_MAGNET_TRAIN_STATION, 9, 10 ; 7
mapgroup GOLDENROD_FLOWER_SHOP, 4, 4 ; 8
mapgroup GOLDENROD_PP_SPEECH_HOUSE, 4, 4 ; 9
mapgroup GOLDENROD_NAME_RATER, 4, 4 ; 10
mapgroup GOLDENROD_DEPT_STORE_1F, 4, 8 ; 11
mapgroup GOLDENROD_DEPT_STORE_2F, 4, 8 ; 12
mapgroup GOLDENROD_DEPT_STORE_3F, 4, 8 ; 13
mapgroup GOLDENROD_DEPT_STORE_4F, 4, 8 ; 14
mapgroup GOLDENROD_DEPT_STORE_5F, 4, 8 ; 15
mapgroup GOLDENROD_DEPT_STORE_6F, 4, 8 ; 16
mapgroup GOLDENROD_DEPT_STORE_ELEVATOR, 2, 2 ; 17
mapgroup GOLDENROD_DEPT_STORE_ROOF, 4, 8 ; 18
mapgroup GOLDENROD_GAME_CORNER, 7, 10 ; 19
mapgroup GOLDENROD_POKECENTER_1F, 4, 5 ; 20
mapgroup GOLDENROD_POKECOM_CENTER_2F_MOBILE, 16, 16 ; 21
mapgroup ILEX_FOREST_AZALEA_GATE, 4, 5 ; 22
mapgroup ROUTE_34_ILEX_FOREST_GATE, 4, 5 ; 23
mapgroup DAY_CARE, 4, 5 ; 24
newgroup ; 12
mapgroup ROUTE_6, 9, 10 ; 1
mapgroup ROUTE_11, 9, 20 ; 2
mapgroup VERMILION_CITY, 18, 20 ; 3
mapgroup VERMILION_HOUSE_FISHING_SPEECH_HOUSE, 4, 4 ; 4
mapgroup VERMILION_POKECENTER_1F, 4, 5 ; 5
mapgroup VERMILION_POKECENTER_2F_BETA, 4, 8 ; 6
mapgroup POKEMON_FAN_CLUB, 4, 5 ; 7
mapgroup VERMILION_MAGNET_TRAIN_SPEECH_HOUSE, 4, 4 ; 8
mapgroup VERMILION_MART, 4, 6 ; 9
mapgroup VERMILION_HOUSE_DIGLETTS_CAVE_SPEECH_HOUSE, 4, 4 ; 10
mapgroup VERMILION_GYM, 9, 5 ; 11
mapgroup ROUTE_6_SAFFRON_GATE, 4, 5 ; 12
mapgroup ROUTE_6_UNDERGROUND_ENTRANCE, 4, 4 ; 13
newgroup ; 13
mapgroup ROUTE_1, 18, 10 ; 1
mapgroup PALLET_TOWN, 9, 10 ; 2
mapgroup REDS_HOUSE_1F, 4, 4 ; 3
mapgroup REDS_HOUSE_2F, 4, 4 ; 4
mapgroup BLUES_HOUSE, 4, 4 ; 5
mapgroup OAKS_LAB, 6, 5 ; 6
newgroup ; 14
mapgroup ROUTE_3, 9, 30 ; 1
mapgroup PEWTER_CITY, 18, 20 ; 2
mapgroup PEWTER_NIDORAN_SPEECH_HOUSE, 4, 4 ; 3
mapgroup PEWTER_GYM, 7, 5 ; 4
mapgroup PEWTER_MART, 4, 6 ; 5
mapgroup PEWTER_POKECENTER_1F, 4, 5 ; 6
mapgroup PEWTER_POKECENTER_2F_BETA, 4, 8 ; 7
mapgroup PEWTER_SNOOZE_SPEECH_HOUSE, 4, 4 ; 8
newgroup ; 15
mapgroup OLIVINE_PORT, 18, 10 ; 1
mapgroup VERMILION_PORT, 18, 10 ; 2
mapgroup FAST_SHIP_1F, 9, 16 ; 3
mapgroup FAST_SHIP_CABINS_NNW_NNE_NE, 16, 4 ; 4
mapgroup FAST_SHIP_CABINS_SW_SSW_NW, 16, 4 ; 5
mapgroup FAST_SHIP_CABINS_SE_SSE_CAPTAINS_CABIN, 17, 5 ; 6
mapgroup FAST_SHIP_B1F, 8, 16 ; 7
mapgroup OLIVINE_PORT_PASSAGE, 9, 10 ; 8
mapgroup VERMILION_PORT_PASSAGE, 9, 10 ; 9
mapgroup MOUNT_MOON_SQUARE, 9, 15 ; 10
mapgroup MOUNT_MOON_GIFT_SHOP, 4, 4 ; 11
mapgroup TIN_TOWER_ROOF, 9, 10 ; 12
newgroup ; 16
mapgroup ROUTE_23, 9, 10 ; 1
mapgroup INDIGO_PLATEAU_POKECENTER_1F, 7, 9 ; 2
mapgroup WILLS_ROOM, 9, 5 ; 3
mapgroup KOGAS_ROOM, 9, 5 ; 4
mapgroup BRUNOS_ROOM, 9, 5 ; 5
mapgroup KARENS_ROOM, 9, 5 ; 6
mapgroup LANCES_ROOM, 12, 5 ; 7
mapgroup HALL_OF_FAME, 7, 5 ; 8
newgroup ; 17
mapgroup ROUTE_13, 9, 30 ; 1
mapgroup ROUTE_14, 18, 10 ; 2
mapgroup ROUTE_15, 9, 20 ; 3
mapgroup ROUTE_18, 9, 10 ; 4
mapgroup FUCHSIA_CITY, 18, 20 ; 5
mapgroup FUCHSIA_MART, 4, 6 ; 6
mapgroup SAFARI_ZONE_MAIN_OFFICE, 4, 4 ; 7
mapgroup FUCHSIA_GYM, 9, 5 ; 8
mapgroup FUCHSIA_BILL_SPEECH_HOUSE, 4, 4 ; 9
mapgroup FUCHSIA_POKECENTER_1F, 4, 5 ; 10
mapgroup FUCHSIA_POKECENTER_2F_BETA, 4, 8 ; 11
mapgroup SAFARI_ZONE_WARDENS_HOME, 4, 5 ; 12
mapgroup ROUTE_15_FUCHSIA_GATE, 4, 5 ; 13
newgroup ; 18
mapgroup ROUTE_8, 9, 20 ; 1
mapgroup ROUTE_12, 27, 10 ; 2
mapgroup ROUTE_10_SOUTH, 9, 10 ; 3
mapgroup LAVENDER_TOWN, 9, 10 ; 4
mapgroup LAVENDER_POKECENTER_1F, 4, 5 ; 5
mapgroup LAVENDER_POKECENTER_2F_BETA, 4, 8 ; 6
mapgroup MR_FUJIS_HOUSE, 4, 5 ; 7
mapgroup LAVENDER_TOWN_SPEECH_HOUSE, 4, 4 ; 8
mapgroup LAVENDER_NAME_RATER, 4, 4 ; 9
mapgroup LAVENDER_MART, 4, 6 ; 10
mapgroup SOUL_HOUSE, 4, 5 ; 11
mapgroup LAV_RADIO_TOWER_1F, 4, 10 ; 12
mapgroup ROUTE_8_SAFFRON_GATE, 4, 5 ; 13
mapgroup ROUTE_12_SUPER_ROD_HOUSE, 4, 4 ; 14
newgroup ; 19
mapgroup ROUTE_28, 9, 20 ; 1
mapgroup SILVER_CAVE_OUTSIDE, 18, 20 ; 2
mapgroup SILVER_CAVE_POKECENTER_1F, 4, 5 ; 3
mapgroup ROUTE_28_FAMOUS_SPEECH_HOUSE, 4, 4 ; 4
newgroup ; 20
mapgroup POKECENTER_2F, 4, 8 ; 1
mapgroup TRADE_CENTER, 4, 5 ; 2
mapgroup COLOSSEUM, 4, 5 ; 3
mapgroup TIME_CAPSULE, 4, 5 ; 4
mapgroup MOBILE_TRADE_ROOM_MOBILE, 4, 5 ; 5
mapgroup MOBILE_BATTLE_ROOM, 4, 5 ; 6
newgroup ; 21
mapgroup ROUTE_7, 9, 10 ; 1
mapgroup ROUTE_16, 9, 10 ; 2
mapgroup ROUTE_17, 45, 10 ; 3
mapgroup CELADON_CITY, 18, 20 ; 4
mapgroup CELADON_DEPT_STORE_1F, 4, 8 ; 5
mapgroup CELADON_DEPT_STORE_2F, 4, 8 ; 6
mapgroup CELADON_DEPT_STORE_3F, 4, 8 ; 7
mapgroup CELADON_DEPT_STORE_4F, 4, 8 ; 8
mapgroup CELADON_DEPT_STORE_5F, 4, 8 ; 9
mapgroup CELADON_DEPT_STORE_6F, 4, 8 ; 10
mapgroup CELADON_DEPT_STORE_ELEVATOR, 2, 2 ; 11
mapgroup CELADON_MANSION_1F, 5, 4 ; 12
mapgroup CELADON_MANSION_2F, 5, 4 ; 13
mapgroup CELADON_MANSION_3F, 5, 4 ; 14
mapgroup CELADON_MANSION_ROOF, 5, 4 ; 15
mapgroup CELADON_MANSION_ROOF_HOUSE, 4, 4 ; 16
mapgroup CELADON_POKECENTER_1F, 4, 5 ; 17
mapgroup CELADON_POKECENTER_2F_BETA, 4, 8 ; 18
mapgroup CELADON_GAME_CORNER, 7, 10 ; 19
mapgroup CELADON_GAME_CORNER_PRIZE_ROOM, 3, 3 ; 20
mapgroup CELADON_GYM, 9, 5 ; 21
mapgroup CELADON_CAFE, 4, 6 ; 22
mapgroup ROUTE_16_FUCHSIA_SPEECH_HOUSE, 4, 4 ; 23
mapgroup ROUTE_16_GATE, 4, 5 ; 24
mapgroup ROUTE_7_SAFFRON_GATE, 4, 5 ; 25
mapgroup ROUTE_17_18_GATE, 4, 5 ; 26
newgroup ; 22
mapgroup ROUTE_40, 18, 10 ; 1
mapgroup ROUTE_41, 27, 25 ; 2
mapgroup CIANWOOD_CITY, 27, 15 ; 3
mapgroup MANIAS_HOUSE, 4, 4 ; 4
mapgroup CIANWOOD_GYM, 9, 5 ; 5
mapgroup CIANWOOD_POKECENTER_1F, 4, 5 ; 6
mapgroup CIANWOOD_PHARMACY, 4, 4 ; 7
mapgroup CIANWOOD_CITY_PHOTO_STUDIO, 4, 4 ; 8
mapgroup CIANWOOD_LUGIA_SPEECH_HOUSE, 4, 4 ; 9
mapgroup POKE_SEERS_HOUSE, 4, 4 ; 10
mapgroup BATTLE_TOWER_1F, 5, 8 ; 11
mapgroup BATTLE_TOWER_BATTLE_ROOM, 4, 4 ; 12
mapgroup BATTLE_TOWER_ELEVATOR, 2, 2 ; 13
mapgroup BATTLE_TOWER_HALLWAY, 2, 11 ; 14
mapgroup ROUTE_40_BATTLE_TOWER_GATE, 4, 5 ; 15
mapgroup BATTLE_TOWER_OUTSIDE, 14, 10 ; 16
newgroup ; 23
mapgroup ROUTE_2, 27, 10 ; 1
mapgroup ROUTE_22, 9, 20 ; 2
mapgroup VIRIDIAN_CITY, 18, 20 ; 3
mapgroup VIRIDIAN_GYM, 9, 5 ; 4
mapgroup VIRIDIAN_NICKNAME_SPEECH_HOUSE, 4, 4 ; 5
mapgroup TRAINER_HOUSE_1F, 7, 5 ; 6
mapgroup TRAINER_HOUSE_B1F, 8, 5 ; 7
mapgroup VIRIDIAN_MART, 4, 6 ; 8
mapgroup VIRIDIAN_POKECENTER_1F, 4, 5 ; 9
mapgroup VIRIDIAN_POKECENTER_2F_BETA, 4, 8 ; 10
mapgroup ROUTE_2_NUGGET_SPEECH_HOUSE, 4, 4 ; 11
mapgroup ROUTE_2_GATE, 4, 5 ; 12
mapgroup VICTORY_ROAD_GATE, 9, 10 ; 13
newgroup ; 24
mapgroup ROUTE_26, 54, 10 ; 1
mapgroup ROUTE_27, 9, 40 ; 2
mapgroup ROUTE_29, 9, 30 ; 3
mapgroup NEW_BARK_TOWN, 9, 10 ; 4
mapgroup ELMS_LAB, 6, 5 ; 5
mapgroup KRISS_HOUSE_1F, 4, 5 ; 6
mapgroup KRISS_HOUSE_2F, 3, 4 ; 7
mapgroup KRISS_NEIGHBORS_HOUSE, 4, 4 ; 8
mapgroup ELMS_HOUSE, 4, 4 ; 9
mapgroup ROUTE_26_HEAL_SPEECH_HOUSE, 4, 4 ; 10
mapgroup ROUTE_26_DAY_OF_WEEK_SIBLINGS_HOUSE, 4, 4 ; 11
mapgroup ROUTE_27_SANDSTORM_HOUSE, 4, 4 ; 12
mapgroup ROUTE_29_46_GATE, 4, 5 ; 13
newgroup ; 25
mapgroup ROUTE_5, 9, 10 ; 1
mapgroup SAFFRON_CITY, 18, 20 ; 2
mapgroup FIGHTING_DOJO, 6, 5 ; 3
mapgroup SAFFRON_GYM, 9, 10 ; 4
mapgroup SAFFRON_MART, 4, 6 ; 5
mapgroup SAFFRON_POKECENTER_1F, 4, 5 ; 6
mapgroup SAFFRON_POKECENTER_2F_BETA, 4, 8 ; 7
mapgroup MR_PSYCHICS_HOUSE, 4, 4 ; 8
mapgroup SAFFRON_TRAIN_STATION, 9, 10 ; 9
mapgroup SILPH_CO_1F, 4, 8 ; 10
mapgroup COPYCATS_HOUSE_1F, 4, 4 ; 11
mapgroup COPYCATS_HOUSE_2F, 3, 5 ; 12
mapgroup ROUTE_5_UNDERGROUND_ENTRANCE, 4, 4 ; 13
mapgroup ROUTE_5_SAFFRON_CITY_GATE, 4, 5 ; 14
mapgroup ROUTE_5_CLEANSE_TAG_SPEECH_HOUSE, 4, 4 ; 15
newgroup ; 26
mapgroup ROUTE_30, 27, 10 ; 1
mapgroup ROUTE_31, 9, 20 ; 2
mapgroup CHERRYGROVE_CITY, 9, 20 ; 3
mapgroup CHERRYGROVE_MART, 4, 6 ; 4
mapgroup CHERRYGROVE_POKECENTER_1F, 4, 5 ; 5
mapgroup CHERRYGROVE_GYM_SPEECH_HOUSE, 4, 4 ; 6
mapgroup GUIDE_GENTS_HOUSE, 4, 4 ; 7
mapgroup CHERRYGROVE_EVOLUTION_SPEECH_HOUSE, 4, 4 ; 8
mapgroup ROUTE_30_BERRY_SPEECH_HOUSE, 4, 4 ; 9
mapgroup MR_POKEMONS_HOUSE, 4, 4 ; 10
mapgroup ROUTE_31_VIOLET_GATE, 4, 5 ; 11

View File

@ -25,6 +25,7 @@ PKMN_NAME_LENGTH EQU 11
MOVE_NAME_LENGTH EQU 13
ITEM_NAME_LENGTH EQU 13
TRAINER_CLASS_NAME_LENGTH EQU 13
NAME_LENGTH_JAPANESE EQU 6
; GetName types (see home.asm)
PKMN_NAME EQU 1
@ -37,70 +38,11 @@ TRAINER_NAME EQU 7
; broken ptr EQU 8
; boxes
MONS_PER_BOX EQU 20
NUM_BOXES EQU 14
; hall of fame
HOF_MON_LENGTH = 1 + 2 + 2 + 1 + (PKMN_NAME_LENGTH +- 1) ; species, id, dvs, level, nick
HOF_LENGTH = 1 + HOF_MON_LENGTH * PARTY_LENGTH + 1 ; win count, party, terminator
NUM_HOF_TEAMS = 30
; joypad
const_def
const A_BUTTON_F
const B_BUTTON_F
const SELECT_F
const START_F
const D_RIGHT_F
const D_LEFT_F
const D_UP_F
const D_DOWN_F
NO_INPUT EQU %00000000
A_BUTTON EQU 1 << A_BUTTON_F
B_BUTTON EQU 1 << B_BUTTON_F
SELECT EQU 1 << SELECT_F
START EQU 1 << START_F
D_RIGHT EQU 1 << D_RIGHT_F
D_LEFT EQU 1 << D_LEFT_F
D_UP EQU 1 << D_UP_F
D_DOWN EQU 1 << D_DOWN_F
BUTTONS EQU A_BUTTON | B_BUTTON | SELECT | START
D_PAD EQU D_RIGHT | D_LEFT | D_UP | D_DOWN
R_DPAD EQU %00100000
R_BUTTONS EQU %00010000
; screen
HP_BAR_LENGTH EQU 6
HP_BAR_LENGTH_PX EQU HP_BAR_LENGTH * 8
EXP_BAR_LENGTH EQU 8
EXP_BAR_LENGTH_PX EQU EXP_BAR_LENGTH * 8
SCREEN_WIDTH EQU 20
SCREEN_HEIGHT EQU 18
SCREEN_WIDTH_PX EQU SCREEN_WIDTH * 8
SCREEN_HEIGHT_PX EQU SCREEN_HEIGHT * 8
BG_MAP_WIDTH EQU 32
BG_MAP_HEIGHT EQU 32
WMISC_WIDTH EQU 6 * 4
WMISC_HEIGHT EQU 5 * 4
TILE_WIDTH EQU 8
; printing text
PRINTNUM_MONEY_F EQU 5
PRINTNUM_RIGHTALIGN_F EQU 6
PRINTNUM_LEADINGZEROS_F EQU 7
const_value set 5
const PRINTNUM_MONEY_F ; 5
const PRINTNUM_RIGHTALIGN_F ; 6
const PRINTNUM_LEADINGZEROS_F ; 7
PRINTNUM_MONEY EQU 1 << PRINTNUM_MONEY_F
PRINTNUM_RIGHTALIGN EQU 1 << PRINTNUM_RIGHTALIGN_F
@ -119,7 +61,34 @@ PRINTNUM_LEADINGZEROS EQU 1 << PRINTNUM_LEADINGZEROS_F
const STEP_WALK_IN_PLACE ; 7
; ChangeHappiness arguments (see event/happiness_egg.asm)
HMENURETURN_SCRIPT EQU %10000000
HMENURETURN_ASM EQU %11111111
; time of day boundaries
MORN_HOUR EQU 4 ; 4 AM
DAY_HOUR EQU 10 ; 10 AM
NITE_HOUR EQU 18 ; 6 PM
NOON_HOUR EQU 12 ; 12 PM
MAX_HOUR EQU 24 ; 12 AM
; boxes
MONS_PER_BOX EQU 20
NUM_BOXES EQU 14
; hall of fame
HOF_MON_LENGTH = 1 + 2 + 2 + 1 + (PKMN_NAME_LENGTH +- 1) ; species, id, dvs, level, nick
HOF_LENGTH = 1 + HOF_MON_LENGTH * PARTY_LENGTH + 1 ; win count, party, terminator
NUM_HOF_TEAMS = 30
; significant money values
START_MONEY EQU 3000
MOM_MONEY EQU 2300
; ChangeHappiness arguments (see data/happiness_changes.asm)
const_value = 1
const HAPPINESS_GAINLEVEL ; 01
const HAPPINESS_USEDITEM ; 02
@ -140,19 +109,3 @@ const_value = 1
const HAPPINESS_REVIVALHERB ; 11
const HAPPINESS_MASSAGE ; 12
const HAPPINESS_GAINLEVELATHOME ; 13
const_def
const LINK_NULL ; 0
const LINK_TIMECAPSULE ; 1
const LINK_TRADECENTER ; 2
const LINK_COLOSSEUM ; 3
const LINK_MOBILE ; 4
SERIAL_TIMECAPSULE EQU $60
SERIAL_TRADECENTER EQU $70
SERIAL_BATTLE EQU $80
HMENURETURN_SCRIPT EQU %10000000
HMENURETURN_ASM EQU %11111111

View File

@ -110,5 +110,7 @@
; GetMapHeaderMusic picks music for this value (see home/map.asm)
MUSIC_MAHOGANY_MART EQU $64
; GetMapHeaderMusic picks music for this bit flag
RADIO_TOWER_MUSIC EQU 7
RADIO_TOWER_MUSIC_F EQU 7
RADIO_TOWER_MUSIC EQU 1 << RADIO_TOWER_MUSIC_F

View File

@ -0,0 +1,21 @@
; npctrade struct members (see data/npc_trades.asm)
TRADE_DIALOG EQU 0
TRADE_GIVEMON EQU 1
TRADE_GETMON EQU 2
TRADE_NICK EQU 3
TRADE_DVS EQU 14
TRADE_ITEM EQU 16
TRADE_OT_ID EQU 17
TRADE_OT_NAME EQU 19
TRADE_GENDER EQU 30
TRADE_PADDING EQU 31
; NPCTrades indexes (see data/npc_trades.asm)
const_def
const NPCTRADE_MIKE ; 0
const NPCTRADE_KYLE ; 1
const NPCTRADE_TIM ; 2
const NPCTRADE_EMY ; 3
const NPCTRADE_CHRIS ; 4
const NPCTRADE_KIM ; 5
const NPCTRADE_FOREST ; 6

View File

@ -1,4 +1,4 @@
; PhoneContacts indexes (see engine/phone.asm)
; PhoneContacts indexes (see data/phone_contacts.asm)
const_def
const PHONE_00
const PHONE_MOM
@ -39,7 +39,7 @@
const PHONE_PICNICKER_ERIN
const PHONE_BUENA
; SpecialPhoneCallList indexes (see engine/phone.asm)
; SpecialPhoneCallList indexes (see data/phone_special.asm)
const_def
const SPECIALCALL_NONE
const SPECIALCALL_POKERUS

View File

@ -14,7 +14,7 @@
; - PicPointers (see gfx/pics/pic_pointers.asm)
; - AlphabeticalPokedexOrder (see data/pokedex/order_alpha.asm)
; - NewPokedexOrder (see data/pokedex/order_new.asm)
; - MonMenuIcons (see menu/mon_icons.asm)
; - MonMenuIcons (see data/mon_menu_icons.asm)
; - Pokered_MonIndices (see engine/time_capsule/conversion.asm)
; - SortedPokemon (see misc/fixed_words.asm)
const_value set 1
@ -274,74 +274,5 @@ NUM_POKEMON EQU const_value +- 1
const EGG ; fd
const MON_FE ; fe
; party_struct members (see macros/wram.asm)
MON_SPECIES EQUS "(PartyMon1Species - PartyMon1)"
MON_ITEM EQUS "(PartyMon1Item - PartyMon1)"
MON_MOVES EQUS "(PartyMon1Moves - PartyMon1)"
MON_ID EQUS "(PartyMon1ID - PartyMon1)"
MON_EXP EQUS "(PartyMon1Exp - PartyMon1)"
MON_STAT_EXP EQUS "(PartyMon1StatExp - PartyMon1)"
MON_HP_EXP EQUS "(PartyMon1HPExp - PartyMon1)"
MON_ATK_EXP EQUS "(PartyMon1AtkExp - PartyMon1)"
MON_DEF_EXP EQUS "(PartyMon1DefExp - PartyMon1)"
MON_SPD_EXP EQUS "(PartyMon1SpdExp - PartyMon1)"
MON_SPC_EXP EQUS "(PartyMon1SpcExp - PartyMon1)"
MON_DVS EQUS "(PartyMon1DVs - PartyMon1)"
MON_PP EQUS "(PartyMon1PP - PartyMon1)"
MON_HAPPINESS EQUS "(PartyMon1Happiness - PartyMon1)"
MON_PKRUS EQUS "(PartyMon1PokerusStatus - PartyMon1)"
MON_CAUGHTDATA EQUS "(PartyMon1CaughtData - PartyMon1)"
MON_CAUGHTLEVEL EQUS "(PartyMon1CaughtLevel - PartyMon1)"
MON_CAUGHTTIME EQUS "(PartyMon1CaughtTime - PartyMon1)"
MON_CAUGHTGENDER EQUS "(PartyMon1CaughtGender - PartyMon1)"
MON_CAUGHTLOCATION EQUS "(PartyMon1CaughtLocation - PartyMon1)"
MON_LEVEL EQUS "(PartyMon1Level - PartyMon1)"
MON_STATUS EQUS "(PartyMon1Status - PartyMon1)"
MON_HP EQUS "(PartyMon1HP - PartyMon1)"
MON_MAXHP EQUS "(PartyMon1MaxHP - PartyMon1)"
MON_ATK EQUS "(PartyMon1Attack - PartyMon1)"
MON_DEF EQUS "(PartyMon1Defense - PartyMon1)"
MON_SPD EQUS "(PartyMon1Speed - PartyMon1)"
MON_SAT EQUS "(PartyMon1SpclAtk - PartyMon1)"
MON_SDF EQUS "(PartyMon1SpclDef - PartyMon1)"
BOXMON_STRUCT_LENGTH EQUS "(PartyMon1End - PartyMon1)"
PARTYMON_STRUCT_LENGTH EQUS "(PartyMon1StatsEnd - PartyMon1)"
REDMON_STRUCT_LENGTH EQU 44
; MonMenuOptions indexes (see engine/mon_menu.asm)
const_value SET 1
; moves
const MONMENU_CUT ; 1
const MONMENU_FLY ; 2
const MONMENU_SURF ; 3
const MONMENU_STRENGTH ; 4
const MONMENU_WATERFALL ; 5
const MONMENU_FLASH ; 6
const MONMENU_WHIRLPOOL ; 7
const MONMENU_DIG ; 8
const MONMENU_TELEPORT ; 9
const MONMENU_SOFTBOILED ; 10
const MONMENU_HEADBUTT ; 11
const MONMENU_ROCKSMASH ; 12
const MONMENU_MILKDRINK ; 13
const MONMENU_SWEETSCENT ; 14
; options
const MONMENU_STATS ; 15
const MONMENU_SWITCH ; 16
const MONMENU_ITEM ; 17
const MONMENU_CANCEL ; 18
const MONMENU_MOVE ; 19
const MONMENU_MAIL ; 20
const MONMENU_ERROR ; 21
; MonMenuOptions types
MONMENU_FIELD_MOVE EQU 0
MONMENU_MENUOPTION EQU 1
NUM_MONMENU_ITEMS EQU 8
; maximum number of party pokemon
PARTY_LENGTH EQU 6
; number of Unown forms
NUM_UNOWN EQU 26

View File

@ -1,3 +1,30 @@
; base data struct members (see data/base_stats/*.asm)
BASE_DEX_NO EQUS "(BaseDexNo - CurBaseData)"
BASE_STATS EQUS "(BaseStats - CurBaseData)"
BASE_HP EQUS "(BaseHP - CurBaseData)"
BASE_ATK EQUS "(BaseAttack - CurBaseData)"
BASE_SPD EQUS "(BaseSpeed - CurBaseData)"
BASE_SAT EQUS "(BaseSpecialAttack - CurBaseData)"
BASE_SDF EQUS "(BaseSpecialDefense - CurBaseData)"
BASE_TYPES EQUS "(BaseType - CurBaseData)"
BASE_TYPE_1 EQUS "(BaseType1 - CurBaseData)"
BASE_TYPE_2 EQUS "(BaseType2 - CurBaseData)"
BASE_CATCH_RATE EQUS "(BaseCatchRate - CurBaseData)"
BASE_EXP EQUS "(BaseExp - CurBaseData)"
BASE_ITEMS EQUS "(BaseItems - CurBaseData)"
BASE_ITEM_1 EQUS "(BaseItem1 - CurBaseData)"
BASE_ITEM_2 EQUS "(BaseItem2 - CurBaseData)"
BASE_GENDER EQUS "(BaseGender - CurBaseData)"
BASE_UNKNOWN_1 EQUS "(BaseUnknown1 - CurBaseData)"
BASE_EGG_STEPS EQUS "(BaseEggSteps - CurBaseData)"
BASE_UNKNOWN_2 EQUS "(BaseUnknown2 - CurBaseData)"
BASE_PIC_SIZE EQUS "(BasePicSize - CurBaseData)"
BASE_PADDING EQUS "(BasePadding - CurBaseData)"
BASE_GROWTH_RATE EQUS "(BaseGrowthRate - CurBaseData)"
BASE_EGG_GROUPS EQUS "(BaseEggGroups - CurBaseData)"
BASE_TMHM EQUS "(BaseTMHM - CurBaseData)"
BASE_DATA_SIZE EQUS "(CurBaseDataEnd - CurBaseData)"
; BaseGrowthRate values
; GrowthRates indexes (see main.asm)
const_def
@ -27,8 +54,48 @@ const_value SET 1
const NO_EGGS ; f
; IconPointers indexes (see menu/mon_icons.asm)
const_value SET 1
; party_struct members (see macros/wram.asm)
MON_SPECIES EQUS "(PartyMon1Species - PartyMon1)"
MON_ITEM EQUS "(PartyMon1Item - PartyMon1)"
MON_MOVES EQUS "(PartyMon1Moves - PartyMon1)"
MON_ID EQUS "(PartyMon1ID - PartyMon1)"
MON_EXP EQUS "(PartyMon1Exp - PartyMon1)"
MON_STAT_EXP EQUS "(PartyMon1StatExp - PartyMon1)"
MON_HP_EXP EQUS "(PartyMon1HPExp - PartyMon1)"
MON_ATK_EXP EQUS "(PartyMon1AtkExp - PartyMon1)"
MON_DEF_EXP EQUS "(PartyMon1DefExp - PartyMon1)"
MON_SPD_EXP EQUS "(PartyMon1SpdExp - PartyMon1)"
MON_SPC_EXP EQUS "(PartyMon1SpcExp - PartyMon1)"
MON_DVS EQUS "(PartyMon1DVs - PartyMon1)"
MON_PP EQUS "(PartyMon1PP - PartyMon1)"
MON_HAPPINESS EQUS "(PartyMon1Happiness - PartyMon1)"
MON_PKRUS EQUS "(PartyMon1PokerusStatus - PartyMon1)"
MON_CAUGHTDATA EQUS "(PartyMon1CaughtData - PartyMon1)"
MON_CAUGHTLEVEL EQUS "(PartyMon1CaughtLevel - PartyMon1)"
MON_CAUGHTTIME EQUS "(PartyMon1CaughtTime - PartyMon1)"
MON_CAUGHTGENDER EQUS "(PartyMon1CaughtGender - PartyMon1)"
MON_CAUGHTLOCATION EQUS "(PartyMon1CaughtLocation - PartyMon1)"
MON_LEVEL EQUS "(PartyMon1Level - PartyMon1)"
MON_STATUS EQUS "(PartyMon1Status - PartyMon1)"
MON_HP EQUS "(PartyMon1HP - PartyMon1)"
MON_MAXHP EQUS "(PartyMon1MaxHP - PartyMon1)"
MON_ATK EQUS "(PartyMon1Attack - PartyMon1)"
MON_DEF EQUS "(PartyMon1Defense - PartyMon1)"
MON_SPD EQUS "(PartyMon1Speed - PartyMon1)"
MON_SAT EQUS "(PartyMon1SpclAtk - PartyMon1)"
MON_SDF EQUS "(PartyMon1SpclDef - PartyMon1)"
BOXMON_STRUCT_LENGTH EQUS "(PartyMon1End - PartyMon1)"
PARTYMON_STRUCT_LENGTH EQUS "(PartyMon1StatsEnd - PartyMon1)"
REDMON_STRUCT_LENGTH EQU 44
; maximum number of party pokemon
PARTY_LENGTH EQU 6
; IconPointers indexes (see gfx/icon_pointers.asm)
const_def
const ICON_NULL
const ICON_POLIWAG
const ICON_JIGGLYPUFF
const ICON_DIGLETT
@ -94,8 +161,12 @@ const_value SET 1
BASE_HAPPINESS EQU 70
FRIEND_BALL_HAPPINESS EQU 200
HAPPINESS_TO_EVOLVE EQU 220
HAPPINESS_THRESHOLD_1 EQU 100
HAPPINESS_THRESHOLD_2 EQU 200
; wild data
NUM_GRASSMON EQU 7 ; data/wild/*_grass.asm table size
NUM_WATERMON EQU 3 ; data/wild/*_water.asm table size
@ -110,3 +181,36 @@ SWARM_YANMA EQU 1
FISHSWARM_QWILFISH EQU 1
FISHSWARM_REMORAID EQU 2
; MonMenuOptions indexes (see engine/mon_menu.asm)
const_value SET 1
; moves
const MONMENU_CUT ; 1
const MONMENU_FLY ; 2
const MONMENU_SURF ; 3
const MONMENU_STRENGTH ; 4
const MONMENU_WATERFALL ; 5
const MONMENU_FLASH ; 6
const MONMENU_WHIRLPOOL ; 7
const MONMENU_DIG ; 8
const MONMENU_TELEPORT ; 9
const MONMENU_SOFTBOILED ; 10
const MONMENU_HEADBUTT ; 11
const MONMENU_ROCKSMASH ; 12
const MONMENU_MILKDRINK ; 13
const MONMENU_SWEETSCENT ; 14
; options
const MONMENU_STATS ; 15
const MONMENU_SWITCH ; 16
const MONMENU_ITEM ; 17
const MONMENU_CANCEL ; 18
const MONMENU_MOVE ; 19
const MONMENU_MAIL ; 20
const MONMENU_ERROR ; 21
; MonMenuOptions types
MONMENU_FIELD_MOVE EQU 0
MONMENU_MENUOPTION EQU 1
NUM_MONMENU_ITEMS EQU 8

View File

@ -0,0 +1,12 @@
; link types
const_def
const LINK_NULL ; 0
const LINK_TIMECAPSULE ; 1
const LINK_TRADECENTER ; 2
const LINK_COLOSSEUM ; 3
const LINK_MOBILE ; 4
SERIAL_TIMECAPSULE EQU $60
SERIAL_TRADECENTER EQU $70
SERIAL_BATTLE EQU $80

View File

@ -150,8 +150,8 @@
const SFX_FANFARE_2 ; 92
const SFX_REGISTER_PHONE_NUMBER ; 93
const SFX_3RD_PLACE ; 94
const SFX_GET_EGG_FROM_DAYCARE_MAN ; 95
const SFX_GET_EGG_FROM_DAYCARE_LADY ; 96
const SFX_GET_EGG_FROM_DAY_CARE_MAN ; 95
const SFX_GET_EGG_FROM_DAY_CARE_LADY ; 96
const SFX_MOVE_DELETED ; 97
const SFX_2ND_PLACE ; 98
const SFX_1ST_PLACE ; 99

View File

@ -1,5 +1,5 @@
; sprite ids
; SpriteHeaders indexes (see gfx/overworld/sprite_headers.asm)
; SpriteHeaders indexes (see gfx/sprite_headers.asm)
const_def
const SPRITE_NONE ; 00
const SPRITE_CHRIS ; 01
@ -105,7 +105,7 @@
const SPRITE_RAIKOU ; 65
const SPRITE_STANDING_YOUNGSTER ; 66
; SpriteMons indexes (see engine/overworld.asm)
; SpriteMons indexes (see data/sprite_mons.asm)
const_value SET $80
SPRITE_POKEMON EQU const_value
const SPRITE_UNOWN ; 80
@ -146,8 +146,8 @@ SPRITE_POKEMON EQU const_value
; special GetMonSprite values (see engine/overworld.asm)
const_value SET $e0
const SPRITE_DAYCARE_MON_1 ; e0
const SPRITE_DAYCARE_MON_2 ; e1
const SPRITE_DAY_CARE_MON_1 ; e0
const SPRITE_DAY_CARE_MON_2 ; e1
; VariableSprites indexes (see wram.asm)
const_value SET $f0
@ -166,7 +166,7 @@ SPRITE_VARS EQU const_value
const SPRITE_COPYCAT ; fb
const SPRITE_JANINE_IMPERSONATOR ; fc
; sprite_header struct members (see gfx/overworld/sprite_headers.asm)
; sprite_header struct members (see gfx/sprite_headers.asm)
const_def
const SPRITEHEADER_ADDR_LO
const SPRITEHEADER_ADDR_HI
@ -193,6 +193,17 @@ const_value SET 1
const PAL_OW_TREE ; 6
const PAL_OW_ROCK ; 7
; person_events set bit 3 so as not to use the sprite's default palette
const_value set (1 << 3)
const PAL_NPC_RED ; 8
const PAL_NPC_BLUE ; 9
const PAL_NPC_GREEN ; a
const PAL_NPC_BROWN ; b
const PAL_NPC_PINK ; c
const PAL_NPC_SILVER ; d
const PAL_NPC_TREE ; e
const PAL_NPC_ROCK ; f
; SpriteMovementData indexes (see data/map_objects.asm)
const_def
const SPRITEMOVEDATA_00 ; 00
@ -315,7 +326,7 @@ SPRITEMOVEDATA_FIELDS EQU 6
const PERSON_ACTION_GRASS_SHAKE
const PERSON_ACTION_SKYFALL
; Facings indexes (see engine/facings.asm)
; Facings indexes (see data/facings.asm)
const_def
const FACING_STEP_DOWN_0
const FACING_STEP_DOWN_1
@ -369,7 +380,7 @@ SPRITEMOVEDATA_FIELDS EQU 6
const SPRITEANIMSTRUCT_0E ; e
const SPRITEANIMSTRUCT_0F ; f
; SpriteAnimFrameData indexes (see data/sprite_engine.asm)
; SpriteAnimFrameData indexes (see data/sprite_anim_frames.asm)
const_def
const SPRITE_ANIM_FRAMESET_00
const SPRITE_ANIM_FRAMESET_PARTY_MON
@ -476,7 +487,7 @@ SPRITEMOVEDATA_FIELDS EQU 6
const SPRITE_ANIM_SEQ_INTRO_UNOWN_F
const SPRITE_ANIM_SEQ_INTRO_SUICUNE_AWAY
; SpriteAnimSeqData indexes (see engine/sprites.asm)
; SpriteAnimSeqData indexes (see data/sprite_anim_seqs.asm)
const_def
const SPRITE_ANIM_INDEX_PARTY_MON
const SPRITE_ANIM_INDEX_01
@ -524,7 +535,7 @@ SPRITEMOVEDATA_FIELDS EQU 6
const SPRITE_ANIM_INDEX_INTRO_SUICUNE_AWAY
const SPRITE_ANIM_INDEX_CELEBI
; SpriteAnimOAMData indexes (see data/sprite_engine.asm)
; SpriteAnimOAMData indexes (see data/sprite_anim_oam.asm)
const_def
const SPRITE_ANIM_FRAME_IDX_00
const SPRITE_ANIM_FRAME_IDX_01

View File

@ -11,7 +11,7 @@ const_value SET 1
const TILESET_KANTO ; 03
const TILESET_BATTLE_TOWER_OUTSIDE ; 04
const TILESET_HOUSE_1 ; 05
const TILESET_KRISS_HOUSE ; 06
const TILESET_PLAYERS_HOUSE ; 06
const TILESET_POKECENTER ; 07
const TILESET_GATE ; 08
const TILESET_PORT ; 09
@ -21,11 +21,11 @@ const_value SET 1
const TILESET_CELADON_MANSION ; 0d
const TILESET_GAME_CORNER ; 0e
const TILESET_GYM_1 ; 0f
const TILESET_KURT_HOUSE ; 10
const TILESET_KURTS_HOUSE ; 10
const TILESET_TRAIN_STATION ; 11
const TILESET_OLIVINE_GYM ; 12
const TILESET_LIGHTHOUSE ; 13
const TILESET_KRISS_HOUSE_2F ; 14
const TILESET_PLAYERS_HOUSE_2F ; 14
const TILESET_POKECOM_CENTER ; 15
const TILESET_BATTLE_TOWER ; 16
const TILESET_SPROUT_TOWER ; 17
@ -37,7 +37,7 @@ const_value SET 1
const TILESET_ICE_PATH ; 1d
const TILESET_WHIRL_ISLANDS ; 1e
const TILESET_ILEX_FOREST ; 1f
const TILESET_32 ; 20
const TILESET_BETA_WORD_ROOM ; 20
const TILESET_HO_OH_WORD_ROOM ; 21
const TILESET_KABUTO_WORD_ROOM ; 22
const TILESET_OMANYTE_WORD_ROOM ; 23

View File

@ -2,8 +2,8 @@
; `trainerclass` indexes are for:
; - TrainerClassAttributes (see trainers/attributes.asm)
; - TrainerClassDVs (see trainers/dvs.asm)
; - TrainerEncounterMusic (see trainers/encounter_music.asm)
; - TrainerGroups (see trainers/trainer_pointers.asm)
; - TrainerEncounterMusic (see audio/trainer_encounters.asm)
; - BTTrainerClassGenders (see misc/battle_tower_47.asm)
; trainer constants are Trainers indexes, for the sub-tables of TrainerGroups (see trainers/trainers.asm)
enum_start

View File

@ -7,27 +7,38 @@
const WILDMON ; 4
; Options: (bits) ; cfcc
const_value SET 5
const_value SET 4
const NO_TEXT_SCROLL ; 4
const STEREO ; 5
const BATTLE_SHIFT ; 6
const BATTLE_SCENE ; 7
; Options: (bits 0-2 values) ; cfcc
FAST_TEXT EQU 0
MED_TEXT EQU 1
SLOW_TEXT EQU 2
NO_TEXT_SCROLL EQU 4
; Options: (bits 0-2)
TEXT_DELAY_FAST EQU 1
TEXT_DELAY_MED EQU 3
TEXT_DELAY_SLOW EQU 5
; TextBoxFrame: ; cfce
const_def
const FRAME_1 ; 0
const FRAME_2 ; 1
const FRAME_3 ; 2
const FRAME_4 ; 3
const FRAME_5 ; 4
const FRAME_6 ; 5
const FRAME_7 ; 6
const FRAME_8 ; 7
; Options2:
const_def
const MENU_ACCOUNT ; 0
; GBPrinter:
PRINT_LIGHTEST EQU $00
PRINT_LIGHTER EQU $20
PRINT_NORMAL EQU $40
PRINT_DARKER EQU $60
PRINT_DARKEST EQU $7f
GBPRINTER_LIGHTEST EQU $00
GBPRINTER_LIGHTER EQU $20
GBPRINTER_NORMAL EQU $40
GBPRINTER_DARKER EQU $60
GBPRINTER_DARKEST EQU $7f
; WalkingDirection: ; d043
const_value SET -1
@ -37,6 +48,11 @@ const_value SET -1
const LEFT ; 2
const RIGHT ; 3
DOWN_MASK EQU 1 << DOWN
UP_MASK EQU 1 << UP
LEFT_MASK EQU 1 << LEFT
RIGHT_MASK EQU 1 << RIGHT
; FacingDirection: ; d044
FACE_CURRENT EQU 0
FACE_DOWN EQU 8
@ -46,10 +62,15 @@ FACE_RIGHT EQU 1
; TimeOfDay: ; d269
const_def
const MORN ; 0
const DAY ; 1
const NITE ; 2
const DARKNESS ; 3
const MORN_F ; 0
const DAY_F ; 1
const NITE_F ; 2
const DARKNESS_F ; 3
MORN EQU 1 << MORN_F
DAY EQU 1 << DAY_F
NITE EQU 1 << NITE_F
DARKNESS EQU 1 << DARKNESS_F
; ScriptFlags: ; d434
SCRIPT_RUNNING EQU 2
@ -100,8 +121,8 @@ SPAWN_RED EQU 2
; wPokemonWithdrawDepositParameter
PC_WITHDRAW EQU 0
PC_DEPOSIT EQU 1
DAYCARE_WITHDRAW EQU 2
DAYCARE_DEPOSIT EQU 3
DAY_CARE_WITHDRAW EQU 2
DAY_CARE_DEPOSIT EQU 3
; wCurrentDexMode
const_def

27
data/audio/notes.asm Normal file
View File

@ -0,0 +1,27 @@
FrequencyTable: ; e8d80
dw 0 ; __
dw $f82c ; C_
dw $f89d ; C#
dw $f907 ; D_
dw $f96b ; D#
dw $f9ca ; E_
dw $fa23 ; F_
dw $fa77 ; F#
dw $fac7 ; G_
dw $fb12 ; G#
dw $fb58 ; A_
dw $fb9b ; A#
dw $fbda ; B_
dw $fc16 ; C_
dw $fc4e ; C#
dw $fc83 ; D_
dw $fcb5 ; D#
dw $fce5 ; E_
dw $fd11 ; F_
dw $fd3b ; F#
dw $fd63 ; G_
dw $fd89 ; G#
dw $fdac ; A_
dw $fdcd ; A#
dw $fded ; B_
; e8db2

View File

@ -0,0 +1,14 @@
WaveSamples: ; e8db2
; these are streams of 32 4-bit values used as wavepatterns
; nothing interesting here!
dn 0, 2, 4, 6, 8, 10, 12, 14, 15, 15, 15, 14, 14, 13, 13, 12, 12, 11, 10, 9, 8, 7, 6, 5, 4, 4, 3, 3, 2, 2, 1, 1
dn 0, 2, 4, 6, 8, 10, 12, 14, 14, 15, 15, 15, 15, 14, 14, 14, 13, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 2, 1, 1
dn 1, 3, 6, 9, 11, 13, 14, 14, 14, 14, 15, 15, 15, 15, 14, 13, 13, 14, 15, 15, 15, 15, 14, 14, 14, 14, 13, 11, 9, 6, 3, 1
dn 0, 2, 4, 6, 8, 10, 12, 13, 14, 15, 15, 14, 13, 14, 15, 15, 14, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0
dn 0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 14, 15, 7, 7, 15, 14, 14, 13, 12, 10, 8, 7, 6, 5, 4, 3, 2, 1, 0
dn 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 3, 3, 2, 2, 1, 1, 15, 15, 14, 14, 12, 12, 10, 10, 8, 8, 10, 10, 12, 12, 14, 14
dn 0, 2, 4, 6, 8, 10, 12, 14, 12, 11, 10, 9, 8, 7, 6, 5, 15, 15, 15, 14, 14, 13, 13, 12, 4, 4, 3, 3, 2, 2, 1, 1
dn 12, 0, 10, 9, 8, 7, 15, 5, 15, 15, 15, 14, 14, 13, 13, 12, 4, 4, 3, 3, 2, 2, 15, 1, 0, 2, 4, 6, 8, 10, 12, 14
dn 4, 4, 3, 3, 2, 2, 1, 15, 0, 0, 4, 6, 8, 10, 12, 14, 15, 8, 15, 14, 14, 13, 13, 12, 12, 11, 10, 9, 8, 7, 6, 5
dn 1, 1, 0, 0, 0, 0, 0, 8, 0, 0, 1, 3, 5, 7, 9, 10, 11, 4, 11, 10, 10, 9, 9, 8, 8, 7, 6, 5, 4, 3, 2, 1
; e8e52

16
data/ball_colors.asm Normal file
View File

@ -0,0 +1,16 @@
; colors of balls thrown in battle
BallColors: ; cd26c (33:526c)
db MASTER_BALL, PAL_BATTLE_OB_GREEN
db ULTRA_BALL, PAL_BATTLE_OB_YELLOW
db GREAT_BALL, PAL_BATTLE_OB_BLUE
db POKE_BALL, PAL_BATTLE_OB_RED
db HEAVY_BALL, PAL_BATTLE_OB_GRAY
db LEVEL_BALL, PAL_BATTLE_OB_BROWN
db LURE_BALL, PAL_BATTLE_OB_BLUE
db FAST_BALL, PAL_BATTLE_OB_BLUE
db FRIEND_BALL, PAL_BATTLE_OB_YELLOW
db MOON_BALL, PAL_BATTLE_OB_GRAY
db LOVE_BALL, PAL_BATTLE_OB_RED
db -1, PAL_BATTLE_OB_GRAY
; cd284

View File

@ -1,6 +1,5 @@
BaseData0::
BaseData::
INCLUDE "data/base_stats/bulbasaur.asm"
BaseData1::
INCLUDE "data/base_stats/ivysaur.asm"
INCLUDE "data/base_stats/venusaur.asm"
INCLUDE "data/base_stats/charmander.asm"

View File

@ -1,212 +1,3 @@
Function_LoadOpponentTrainerAndPokemons: ; 1f8000
ld a, [rSVBK]
push af
ld a, BANK(BT_OTTrainer)
ld [rSVBK], a
; Fill BT_OTTrainer with zeros
xor a
ld hl, BT_OTTrainer
ld bc, BT_OTTrainerEnd - BT_OTTrainer
call ByteFill
; Write $ff into the Item-Slots
ld a, $ff
ld [BT_OTPkmn1Item], a
ld [BT_OTPkmn2Item], a
ld [BT_OTPkmn3Item], a
; Set BT_OTTrainer as start address to write the following data to
ld de, BT_OTTrainer
ld a, [hRandomAdd]
ld b, a
.resample ; loop to find a random trainer
call Random
ld a, [hRandomAdd]
add b
ld b, a ; b contains the nr of the trainer
IF DEF(CRYSTAL11)
and (1 << 7) - 1
cp 70
ELSE
and (1 << 5) - 1
cp 21
ENDC
jr nc, .resample
ld b, a
ld a, BANK(sBTTrainers)
call GetSRAMBank
ld c, BATTLETOWER_NROFTRAINERS
ld hl, sBTTrainers
.next_trainer
ld a, [hli]
cp b
jr z, .resample
dec c
jr nz, .next_trainer ; c <= 7 initialise all 7 trainers?
ld hl, sBTTrainers
ld a, [sNrOfBeatenBattleTowerTrainers]
ld c, a
ld a, b
ld b, 0
add hl, bc
ld [hl], a
call CloseSRAM
push af
; Copy name (10 bytes) and class (1 byte) of trainer
ld hl, BattleTowerTrainers
ld bc, NAME_LENGTH
call AddNTimes
ld bc, NAME_LENGTH
call CopyBytes
call Function_LoadRandomBattleTowerPkmn
pop af
ld hl, BattleTowerTrainerData
ld bc, BATTLETOWER_TRAINERDATALENGTH
call AddNTimes
ld bc, BATTLETOWER_TRAINERDATALENGTH
.copy_bt_trainer_data_loop
ld a, BANK(BattleTowerTrainerData)
call GetFarByte
ld [de], a
inc hl
inc de
dec bc
ld a, b
or c
jr nz, .copy_bt_trainer_data_loop
pop af
ld [rSVBK], a
ret
Function_LoadRandomBattleTowerPkmn: ; 1f8081
ld c, BATTLETOWER_NROFPKMNS
.loop
push bc
ld a, BANK(sBTPkmnPrevTrainer1)
call GetSRAMBank
.FindARandomBattleTowerPkmn:
; From Which LevelGroup are the Pkmn loaded
; a = 1..10
ld a, [wBTChoiceOfLvlGroup] ; [$d800]
dec a
ld hl, BattleTowerMons
ld bc, BattleTowerMons2 - BattleTowerMons1
call AddNTimes
ld a, [hRandomAdd]
ld b, a
.resample
call Random
ld a, [hRandomAdd]
add b
ld b, a
and $1f
cp BATTLETOWER_NRMONSPERLEVELBRACKET
jr nc, .resample
; in register 'a' is the chosen Pkmn of the LevelGroup
; Check if Pkmn was already loaded before
; Check current and the 2 previous teams
; includes check if item is double at the current team
ld bc, PARTYMON_STRUCT_LENGTH + PKMN_NAME_LENGTH
call AddNTimes
ld a, [hli]
ld b, a
ld a, [hld]
ld c, a
ld a, [BT_OTPkmn1]
cp b
jr z, .FindARandomBattleTowerPkmn
ld a, [BT_OTPkmn1Item]
cp c
jr z, .FindARandomBattleTowerPkmn
ld a, [BT_OTPkmn2]
cp b
jr z, .FindARandomBattleTowerPkmn
ld a, [BT_OTPkmn2Item]
cp c
jr z, .FindARandomBattleTowerPkmn
ld a, [BT_OTPkmn3]
cp b
jr z, .FindARandomBattleTowerPkmn
ld a, [BT_OTPkmn3Item]
cp c
jr z, .FindARandomBattleTowerPkmn
ld a, [sBTPkmnPrevTrainer1]
cp b
jr z, .FindARandomBattleTowerPkmn
ld a, [sBTPkmnPrevTrainer2]
cp b
jr z, .FindARandomBattleTowerPkmn
ld a, [sBTPkmnPrevTrainer3]
cp b
jr z, .FindARandomBattleTowerPkmn
ld a, [sBTPkmnPrevPrevTrainer1]
cp b
jr z, .FindARandomBattleTowerPkmn
ld a, [sBTPkmnPrevPrevTrainer2]
cp b
jr z, .FindARandomBattleTowerPkmn
ld a, [sBTPkmnPrevPrevTrainer3]
cp b
jr z, .FindARandomBattleTowerPkmn
ld bc, PARTYMON_STRUCT_LENGTH + PKMN_NAME_LENGTH
call CopyBytes
ld a, [wNamedObjectIndexBuffer]
push af
push de
ld hl, - (PARTYMON_STRUCT_LENGTH + PKMN_NAME_LENGTH)
add hl, de
ld a, [hl]
ld [wNamedObjectIndexBuffer], a
ld bc, PARTYMON_STRUCT_LENGTH
add hl, bc
push hl
call GetPokemonName
ld h, d
ld l, e
pop de
ld bc, PKMN_NAME_LENGTH
call CopyBytes
pop de
pop af
ld [wNamedObjectIndexBuffer], a
pop bc
dec c
jp nz, .loop
ld a, [sBTPkmnPrevTrainer1]
ld [sBTPkmnPrevPrevTrainer1], a
ld a, [sBTPkmnPrevTrainer2]
ld [sBTPkmnPrevPrevTrainer2], a
ld a, [sBTPkmnPrevTrainer3]
ld [sBTPkmnPrevPrevTrainer3], a
ld a, [BT_OTPkmn1]
ld [sBTPkmnPrevTrainer1], a
ld a, [BT_OTPkmn2]
ld [sBTPkmnPrevTrainer2], a
ld a, [BT_OTPkmn3]
ld [sBTPkmnPrevTrainer3], a
call CloseSRAM
ret
; 1f814e
BattleTowerTrainers: ; 1f814e
; The trainer class is not used in Crystal 1.0 due to a bug.
; Instead, the sixth character in the trainer's name is used.

View File

@ -0,0 +1,74 @@
BugContestantPointers: ; 13783
dw BugContestant_BugCatcherDon ; This reverts back to the player
dw BugContestant_BugCatcherDon
dw BugContestant_BugCatcherEd
dw BugContestant_CooltrainerMNick
dw BugContestant_PokefanMWilliam
dw BugContestant_BugCatcherBenny
dw BugContestant_CamperBarry
dw BugContestant_PicnickerCindy
dw BugContestant_BugCatcherJosh
dw BugContestant_YoungsterSamuel
dw BugContestant_SchoolboyKipp
; 13799
BugContestant_BugCatcherDon:
db BUG_CATCHER, DON
dbw KAKUNA, 300
dbw METAPOD, 285
dbw CATERPIE, 226
BugContestant_BugCatcherEd:
db BUG_CATCHER, ED
dbw BUTTERFREE, 286
dbw BUTTERFREE, 251
dbw CATERPIE, 237
BugContestant_CooltrainerMNick:
db COOLTRAINERM, NICK
dbw SCYTHER, 357
dbw BUTTERFREE, 349
dbw PINSIR, 368
BugContestant_PokefanMWilliam:
db POKEFANM, WILLIAM
dbw PINSIR, 332
dbw BUTTERFREE, 324
dbw VENONAT, 321
BugContestant_BugCatcherBenny:
db BUG_CATCHER, BUG_CATCHER_BENNY
dbw BUTTERFREE, 318
dbw WEEDLE, 295
dbw CATERPIE, 285
BugContestant_CamperBarry:
db CAMPER, BARRY
dbw PINSIR, 366
dbw VENONAT, 329
dbw KAKUNA, 314
BugContestant_PicnickerCindy:
db PICNICKER, CINDY
dbw BUTTERFREE, 341
dbw METAPOD, 301
dbw CATERPIE, 264
BugContestant_BugCatcherJosh:
db BUG_CATCHER, JOSH
dbw SCYTHER, 326
dbw BUTTERFREE, 292
dbw METAPOD, 282
BugContestant_YoungsterSamuel:
db YOUNGSTER, SAMUEL
dbw WEEDLE, 270
dbw PINSIR, 282
dbw CATERPIE, 251
BugContestant_SchoolboyKipp:
db SCHOOLBOY, KIPP
dbw VENONAT, 267
dbw PARAS, 254
dbw KAKUNA, 259
; 13807

View File

@ -0,0 +1,63 @@
decoration: MACRO
; type, name, command, event flag, tile/sprite
db \1, \2, \3
dw \4
db \5
ENDM
DecorationAttributes: ; 26a4f
; entries correspond to deco constants
decoration DECO_PLANT, $00, $0, EVENT_GAVE_KURT_APRICORNS, $00
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_BED, EVENT_GAVE_KURT_APRICORNS, $00
decoration DECO_BED, FEATHERY_BED, SET_UP_BED, EVENT_DECO_BED_1, $1b
decoration DECO_BED, PINK_BED, SET_UP_BED, EVENT_DECO_BED_2, $1c
decoration DECO_BED, POLKADOT_BED, SET_UP_BED, EVENT_DECO_BED_3, $1d
decoration DECO_BED, PIKACHU_BED, SET_UP_BED, EVENT_DECO_BED_4, $1e
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_CARPET, EVENT_GAVE_KURT_APRICORNS, $00
decoration DECO_CARPET, RED_CARPET, SET_UP_CARPET, EVENT_DECO_CARPET_1, $08
decoration DECO_CARPET, BLUE_CARPET, SET_UP_CARPET, EVENT_DECO_CARPET_2, $0b
decoration DECO_CARPET, YELLOW_CARPET, SET_UP_CARPET, EVENT_DECO_CARPET_3, $0e
decoration DECO_CARPET, GREEN_CARPET, SET_UP_CARPET, EVENT_DECO_CARPET_4, $11
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_PLANT, EVENT_GAVE_KURT_APRICORNS, $00
decoration DECO_PLANT, MAGNAPLANT, SET_UP_PLANT, EVENT_DECO_PLANT_1, $20
decoration DECO_PLANT, TROPICPLANT, SET_UP_PLANT, EVENT_DECO_PLANT_2, $21
decoration DECO_PLANT, JUMBOPLANT, SET_UP_PLANT, EVENT_DECO_PLANT_3, $22
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_POSTER, EVENT_GAVE_KURT_APRICORNS, $00
decoration DECO_PLANT, TOWN_MAP_D, SET_UP_POSTER, EVENT_DECO_PLANT_4, $1f
decoration DECO_POSTER, PIKACHU, SET_UP_POSTER, EVENT_DECO_POSTER_1, $23
decoration DECO_POSTER, CLEFAIRY, SET_UP_POSTER, EVENT_DECO_POSTER_2, $24
decoration DECO_POSTER, JIGGLYPUFF, SET_UP_POSTER, EVENT_DECO_POSTER_3, $25
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_CONSOLE, EVENT_GAVE_KURT_APRICORNS, $00
decoration DECO_PLANT, FAMICOM, SET_UP_CONSOLE, EVENT_DECO_FAMICOM, SPRITE_FAMICOM
decoration DECO_PLANT, SUPER_NES, SET_UP_CONSOLE, EVENT_DECO_SNES, SPRITE_SNES
decoration DECO_PLANT, NINTENDO_64, SET_UP_CONSOLE, EVENT_DECO_N64, SPRITE_N64
decoration DECO_PLANT, VIRTUAL_BOY, SET_UP_CONSOLE, EVENT_DECO_VIRTUAL_BOY, SPRITE_VIRTUAL_BOY
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_BIG_DOLL, EVENT_GAVE_KURT_APRICORNS, $00
decoration DECO_BIGDOLL, SNORLAX, SET_UP_BIG_DOLL, EVENT_DECO_BIG_SNORLAX_DOLL, SPRITE_BIG_SNORLAX
decoration DECO_BIGDOLL, ONIX, SET_UP_BIG_DOLL, EVENT_DECO_BIG_ONIX_DOLL, SPRITE_BIG_ONIX
decoration DECO_BIGDOLL, LAPRAS, SET_UP_BIG_DOLL, EVENT_DECO_BIG_LAPRAS_DOLL, SPRITE_BIG_LAPRAS
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_DOLL, EVENT_GAVE_KURT_APRICORNS, $00
decoration DECO_DOLL, PIKACHU, SET_UP_DOLL, EVENT_DECO_PIKACHU_DOLL, SPRITE_PIKACHU
decoration DECO_PLANT, SURF_PIKA_DOLL, SET_UP_DOLL, EVENT_DECO_SURFING_PIKACHU_DOLL, SPRITE_SURFING_PIKACHU
decoration DECO_DOLL, CLEFAIRY, SET_UP_DOLL, EVENT_DECO_CLEFAIRY_DOLL, SPRITE_CLEFAIRY
decoration DECO_DOLL, JIGGLYPUFF, SET_UP_DOLL, EVENT_DECO_JIGGLYPUFF_DOLL, SPRITE_JIGGLYPUFF
decoration DECO_DOLL, BULBASAUR, SET_UP_DOLL, EVENT_DECO_BULBASAUR_DOLL, SPRITE_BULBASAUR
decoration DECO_DOLL, CHARMANDER, SET_UP_DOLL, EVENT_DECO_CHARMANDER_DOLL, SPRITE_CHARMANDER
decoration DECO_DOLL, SQUIRTLE, SET_UP_DOLL, EVENT_DECO_SQUIRTLE_DOLL, SPRITE_SQUIRTLE
decoration DECO_DOLL, POLIWAG, SET_UP_DOLL, EVENT_DECO_POLIWAG_DOLL, SPRITE_POLIWAG
decoration DECO_DOLL, DIGLETT, SET_UP_DOLL, EVENT_DECO_DIGLETT_DOLL, SPRITE_DIGLETT
decoration DECO_DOLL, STARYU, SET_UP_DOLL, EVENT_DECO_STARMIE_DOLL, SPRITE_STARMIE
decoration DECO_DOLL, MAGIKARP, SET_UP_DOLL, EVENT_DECO_MAGIKARP_DOLL, SPRITE_MAGIKARP
decoration DECO_DOLL, ODDISH, SET_UP_DOLL, EVENT_DECO_ODDISH_DOLL, SPRITE_ODDISH
decoration DECO_DOLL, GENGAR, SET_UP_DOLL, EVENT_DECO_GENGAR_DOLL, SPRITE_GENGAR
decoration DECO_DOLL, SHELLDER, SET_UP_DOLL, EVENT_DECO_SHELLDER_DOLL, SPRITE_SHELLDER
decoration DECO_DOLL, GRIMER, SET_UP_DOLL, EVENT_DECO_GRIMER_DOLL, SPRITE_GRIMER
decoration DECO_DOLL, VOLTORB, SET_UP_DOLL, EVENT_DECO_VOLTORB_DOLL, SPRITE_VOLTORB
decoration DECO_DOLL, WEEDLE, SET_UP_DOLL, EVENT_DECO_WEEDLE_DOLL, SPRITE_WEEDLE
decoration DECO_DOLL, UNOWN, SET_UP_DOLL, EVENT_DECO_UNOWN_DOLL, SPRITE_UNOWN
decoration DECO_DOLL, GEODUDE, SET_UP_DOLL, EVENT_DECO_GEODUDE_DOLL, SPRITE_GEODUDE
decoration DECO_DOLL, MACHOP, SET_UP_DOLL, EVENT_DECO_MACHOP_DOLL, SPRITE_MACHOP
decoration DECO_DOLL, TENTACOOL, SET_UP_DOLL, EVENT_DECO_TENTACOOL_DOLL, SPRITE_TENTACOOL
decoration DECO_PLANT, GOLD_TROPHY, SET_UP_DOLL, EVENT_DECO_GOLD_TROPHY, SPRITE_GOLD_TROPHY
decoration DECO_PLANT, SILVER_TROPHY, SET_UP_DOLL, EVENT_DECO_SILVER_TROPHY, SPRITE_SILVER_TROPHY
; 26b8d

18
data/default_options.asm Normal file
View File

@ -0,0 +1,18 @@
DefaultOptions: ; 14f7c
; Options: med text speed
db TEXT_DELAY_MED
; wSaveFileExists: no
db $00
; TextBoxFrame: frame 1
db FRAME_1
; TextBoxFlags: ??
db $01
; GBPrinter: normal brightness
db GBPRINTER_NORMAL
; Options2: menu account on
db $01
; $cfd2: ??
db $00
; $cfd3: ??
db $00
; 14f84

View File

@ -254,3 +254,4 @@ endc
dw NoEggMoves
dw NoEggMoves
dw NoEggMoves
; 0x23d07

22
data/emote_headers.asm Normal file
View File

@ -0,0 +1,22 @@
emote_header: MACRO
; graphics pointer, length, starting tile
dw \1
db \2 tiles, BANK(\1)
dw VTiles1 tile \3
ENDM
EmotesPointers: ; 144d
; entries correspond to EMOTE_* constants
emote_header ShockEmote, 4, $78
emote_header QuestionEmote, 4, $78
emote_header HappyEmote, 4, $78
emote_header SadEmote, 4, $78
emote_header HeartEmote, 4, $78
emote_header BoltEmote, 4, $78
emote_header SleepEmote, 4, $78
emote_header FishEmote, 4, $78
emote_header JumpShadowGFX, 1, $7c
emote_header FishingRodGFX, 2, $7c
emote_header BoulderDustGFX, 2, $7e
emote_header GrassRustleGFX, 1, $7e
; 14495

206
data/engine_flags.asm Normal file
View File

@ -0,0 +1,206 @@
engine_flag: MACRO
dwb \1, 1 << \2
ENDM
EngineFlags: ; 80462
; location, bit
; (all locations are in WRAM bank 1)
; pokegear
engine_flag wPokegearFlags, 1 ; radio card ; $0
engine_flag wPokegearFlags, 0 ; map card
engine_flag wPokegearFlags, 2 ; phone card
engine_flag wPokegearFlags, 3 ; expn card
engine_flag wPokegearFlags, 7 ; on/off
; wDayCareMan, 7 ; day-care 1 on
engine_flag wDayCareMan, 6 ; egg is ready
; wDayCareMan, 5 ; monster 1 and 2 are compatible
engine_flag wDayCareMan, 0 ; monster 1 in day-care
; wDayCareLady, 7 = day-care 2 on
engine_flag wDayCareLady, 0 ; monster 2 in day-care
engine_flag wMomSavingMoney, 0 ; mom saving money ; $8
engine_flag wMomSavingMoney, 7 ; dst
engine_flag wUnusedTwoDayTimerOn, 0 ; unused, possibly related to a 2-day timer
engine_flag StatusFlags, 0 ; pokedex
engine_flag StatusFlags, 1 ; unown dex
engine_flag StatusFlags, 3 ; pokerus
engine_flag StatusFlags, 4 ; rocket signal on ch20
engine_flag StatusFlags, 6 ; credits skip
engine_flag StatusFlags, 7 ; bug contest on ; $10
engine_flag StatusFlags2, 2 ; bug contest timer
engine_flag StatusFlags2, 1 ; safari zone?
engine_flag StatusFlags2, 0 ; rockets in radio tower
engine_flag StatusFlags2, 4 ; bike shop call enabled (1024 bike steps reqd)
engine_flag StatusFlags2, 5 ; give pokerus
engine_flag StatusFlags2, 6 ; berry -> berry juice when trading?
engine_flag StatusFlags2, 7 ; rockets in mahogany
engine_flag BikeFlags, 0 ; strength active ; $18
engine_flag BikeFlags, 1 ; always on bike (cant surf)
engine_flag BikeFlags, 2 ; downhill (cycling road)
engine_flag JohtoBadges, 0 ; zephyrbadge
engine_flag JohtoBadges, 1 ; hivebadge
engine_flag JohtoBadges, 2 ; plainbadge
engine_flag JohtoBadges, 3 ; fogbadge
engine_flag JohtoBadges, 4 ; mineralbadge
engine_flag JohtoBadges, 5 ; stormbadge ; $20
engine_flag JohtoBadges, 6 ; glacierbadge
engine_flag JohtoBadges, 7 ; risingbadge
engine_flag KantoBadges, 0 ; boulderbadge
engine_flag KantoBadges, 1 ; cascadebadge
engine_flag KantoBadges, 2 ; thunderbadge
engine_flag KantoBadges, 3 ; rainbowbadge
engine_flag KantoBadges, 4 ; soulbadge
engine_flag KantoBadges, 5 ; marshbadge ; $28
engine_flag KantoBadges, 6 ; volcanobadge
engine_flag KantoBadges, 7 ; earthbadge
; unown sets
engine_flag UnlockedUnowns, 0 ; 1
engine_flag UnlockedUnowns, 1 ; 2
engine_flag UnlockedUnowns, 2 ; 3
engine_flag UnlockedUnowns, 3 ; 4
engine_flag UnlockedUnowns, 4 ; 5
engine_flag UnlockedUnowns, 5 ; 6 ; $30
engine_flag UnlockedUnowns, 6 ; 7
engine_flag UnlockedUnowns, 7 ; 8
; fly
engine_flag VisitedSpawns, 0 ; your house
engine_flag VisitedSpawns, 1 ; viridian pokecenter
engine_flag VisitedSpawns, 2 ; pallet
engine_flag VisitedSpawns, 3 ; viridian
engine_flag VisitedSpawns, 4 ; pewter
engine_flag VisitedSpawns, 5 ; cerulean ; $38
engine_flag VisitedSpawns, 6 ; rock tunnel
engine_flag VisitedSpawns, 7 ; vermilion
engine_flag VisitedSpawns + 1, 0 ; lavender
engine_flag VisitedSpawns + 1, 1 ; saffron
engine_flag VisitedSpawns + 1, 2 ; celadon
engine_flag VisitedSpawns + 1, 3 ; fuchsia
engine_flag VisitedSpawns + 1, 4 ; cinnabar
engine_flag VisitedSpawns + 1, 5 ; indigo plateau ; $40
engine_flag VisitedSpawns + 1, 6 ; new bark
engine_flag VisitedSpawns + 1, 7 ; cherrygrove
engine_flag VisitedSpawns + 2, 0 ; violet
; union cave
engine_flag VisitedSpawns + 2, 2 ; azalea
engine_flag VisitedSpawns + 2, 3 ; cianwood
engine_flag VisitedSpawns + 2, 4 ; goldenrod
engine_flag VisitedSpawns + 2, 5 ; olivine
engine_flag VisitedSpawns + 2, 6 ; ecruteak ; $48
engine_flag VisitedSpawns + 2, 7 ; mahogany
engine_flag VisitedSpawns + 3, 0 ; lake of rage
engine_flag VisitedSpawns + 3, 1 ; blackthorn
engine_flag VisitedSpawns + 3, 2 ; silver cave
; fast ship
engine_flag VisitedSpawns + 3, 4 ; unused
engine_flag wLuckyNumberShowFlag, 0 ; lucky number show
engine_flag StatusFlags2, 3 ; ????
engine_flag DailyFlags, 0 ; kurt making balls ; $50
engine_flag DailyFlags, 1 ; ????
engine_flag DailyFlags, 2 ; special wilddata?
engine_flag DailyFlags, 3 ; time capsule (24h wait)
engine_flag DailyFlags, 4 ; all fruit trees
engine_flag DailyFlags, 5 ; shuckle given
engine_flag DailyFlags, 6 ; goldenrod underground merchant closed
engine_flag DailyFlags, 7 ; fought in trainer hall today
engine_flag WeeklyFlags, 0 ; mt moon square clefairy ; $58
engine_flag WeeklyFlags, 1 ; union cave lapras
engine_flag WeeklyFlags, 2 ; goldenrod underground haircut used
engine_flag WeeklyFlags, 3 ; goldenrod mall happiness event floor05 person07
engine_flag WeeklyFlags, 4 ; tea in blues house
engine_flag WeeklyFlags, 5 ; indigo plateau rival fight
engine_flag WeeklyFlags, 6 ; move tutor
engine_flag WeeklyFlags, 7 ; buenas password
engine_flag SwarmFlags, 0 ; buenas password 2
engine_flag SwarmFlags, 1 ; goldenrod dept store sale is on
engine_flag GameTimerPause, 7 ; $62
engine_flag PlayerGender, 0 ; player is female
engine_flag wCelebiEvent, 2 ; have gs ball after kurt examined it
; rematches
engine_flag wDailyRematchFlags, 0 ; jack
engine_flag wDailyRematchFlags, 1 ; huey
engine_flag wDailyRematchFlags, 2 ; gaven
engine_flag wDailyRematchFlags, 3 ; beth ; $68
engine_flag wDailyRematchFlags, 4 ; jose
engine_flag wDailyRematchFlags, 5 ; reena
engine_flag wDailyRematchFlags, 6 ; joey
engine_flag wDailyRematchFlags, 7 ; wade
engine_flag wDailyRematchFlags + 1, 0 ; ralph
engine_flag wDailyRematchFlags + 1, 1 ; liz
engine_flag wDailyRematchFlags + 1, 2 ; anthony
engine_flag wDailyRematchFlags + 1, 3 ; todd ; $70
engine_flag wDailyRematchFlags + 1, 4 ; gina
engine_flag wDailyRematchFlags + 1, 5 ; arnie
engine_flag wDailyRematchFlags + 1, 6 ; alan
engine_flag wDailyRematchFlags + 1, 7 ; dana
engine_flag wDailyRematchFlags + 2, 0 ; chad
engine_flag wDailyRematchFlags + 2, 1 ; tully
engine_flag wDailyRematchFlags + 2, 2 ; brent
engine_flag wDailyRematchFlags + 2, 3 ; tiffany ; $78
engine_flag wDailyRematchFlags + 2, 4 ; vance
engine_flag wDailyRematchFlags + 2, 5 ; wilton
engine_flag wDailyRematchFlags + 2, 6 ; parry
engine_flag wDailyRematchFlags + 2, 7 ; erin
engine_flag wDailyPhoneItemFlags, 0 ; beverly has nugget
engine_flag wDailyPhoneItemFlags, 1 ; jose has star piece
engine_flag wDailyPhoneItemFlags, 2 ; wade has item (see EVENT_WADE_HAS_*** in constants/event_flags.asm)
engine_flag wDailyPhoneItemFlags, 3 ; gina has leaf stone ; $80
engine_flag wDailyPhoneItemFlags, 4 ; alan has fire stone
engine_flag wDailyPhoneItemFlags, 5 ; liz has thunderstone
engine_flag wDailyPhoneItemFlags, 6 ; derek has nugget
engine_flag wDailyPhoneItemFlags, 7 ; tully has water stone
engine_flag wDailyPhoneItemFlags + 1, 0 ; tiffany has pink bow
engine_flag wDailyPhoneItemFlags + 1, 1 ; wilton has item (see EVENT_WILTON_HAS_*** in constants/event_flags.asm)
engine_flag wDailyPhoneTimeOfDayFlags, 0
engine_flag wDailyPhoneTimeOfDayFlags, 1 ; $88
engine_flag wDailyPhoneTimeOfDayFlags, 2
engine_flag wDailyPhoneTimeOfDayFlags, 3
engine_flag wDailyPhoneTimeOfDayFlags, 4
engine_flag wDailyPhoneTimeOfDayFlags, 5
engine_flag wDailyPhoneTimeOfDayFlags, 6
engine_flag wDailyPhoneTimeOfDayFlags, 7
engine_flag wDailyPhoneTimeOfDayFlags + 1, 0
engine_flag wDailyPhoneTimeOfDayFlags + 1, 1 ; $90
engine_flag wDailyPhoneTimeOfDayFlags + 1, 2
engine_flag wDailyPhoneTimeOfDayFlags + 1, 3
engine_flag wDailyPhoneTimeOfDayFlags + 1, 4
engine_flag wDailyPhoneTimeOfDayFlags + 1, 5
engine_flag wDailyPhoneTimeOfDayFlags + 1, 6
engine_flag wDailyPhoneTimeOfDayFlags + 1, 7
engine_flag wDailyPhoneTimeOfDayFlags + 2, 0
engine_flag wDailyPhoneTimeOfDayFlags + 2, 1 ; $98
engine_flag wDailyPhoneTimeOfDayFlags + 2, 2
engine_flag wDailyPhoneTimeOfDayFlags + 2, 3
engine_flag wDailyPhoneTimeOfDayFlags + 2, 4
engine_flag wDailyPhoneTimeOfDayFlags + 2, 5
engine_flag wDailyPhoneTimeOfDayFlags + 2, 6
engine_flag wDailyPhoneTimeOfDayFlags + 2, 7
engine_flag wPlayerSpriteSetupFlags, 2 ; female player has been transformed into male
engine_flag SwarmFlags, 2 ; dunsparce swarm ; $a0
engine_flag SwarmFlags, 3 ; yanma swarm
; 80648

View File

@ -1,6 +1,4 @@
; Pointer table for evolutions and attacks.
; These are grouped together since they're both checked at level-up.
; Evolutions and attacks are grouped together since they're both checked at level-up.
EvosAttacksPointers:: ; 0x425b1
dw BulbasaurEvosAttacks
@ -254,3 +252,4 @@ EvosAttacksPointers:: ; 0x425b1
dw LugiaEvosAttacks
dw HoOhEvosAttacks
dw CelebiEvosAttacks
; 0x427a7

View File

@ -0,0 +1,53 @@
CutTreeBlockPointers: ; c862
; tileset, block list pointer
dbw TILESET_JOHTO_1, .johto1
dbw TILESET_JOHTO_2, .johto2
dbw TILESET_KANTO, .kanto
dbw TILESET_PARK, .park
dbw TILESET_ILEX_FOREST, .ilex
db -1
.johto1 ; Johto OW
; facing block, replacement block, animation
db $03, $02, $01 ; grass
db $5b, $3c, $00 ; tree
db $5f, $3d, $00 ; tree
db $63, $3f, $00 ; tree
db $67, $3e, $00 ; tree
db -1
.johto2 ; Goldenrod area
; facing block, replacement block, animation
db $03, $02, $01 ; grass
db -1
.kanto ; Kanto OW
; facing block, replacement block, animation
db $0b, $0a, $01 ; grass
db $32, $6d, $00 ; tree
db $33, $6c, $00 ; tree
db $34, $6f, $00 ; tree
db $35, $4c, $00 ; tree
db $60, $6e, $00 ; tree
db -1
.park ; National Park
; facing block, replacement block, animation
db $13, $03, $01 ; grass
db $03, $04, $01 ; grass
db -1
.ilex ; Ilex Forest
; facing block, replacement block, animation
db $0f, $17, $00
db -1
WhirlpoolBlockPointers: ; c8a4
dbw TILESET_JOHTO_1, .johto
db -1
.johto ; c8a8
; facing block, replacement block, animation
db $07, $36, $00
db -1

33
data/fruit_tree_items.asm Normal file
View File

@ -0,0 +1,33 @@
FruitTreeItems: ; 44097
; entries correspond to FRUITTREE_* constants
db BERRY ; ROUTE_29
db BERRY ; ROUTE_30_1
db BERRY ; ROUTE_38
db BERRY ; ROUTE_46_1
db PSNCUREBERRY ; ROUTE_30_2
db PSNCUREBERRY ; ROUTE_33
db BITTER_BERRY ; ROUTE_31
db BITTER_BERRY ; ROUTE_43
db PRZCUREBERRY ; VIOLET_CITY
db PRZCUREBERRY ; ROUTE_46_2
db MYSTERYBERRY ; ROUTE_35
db MYSTERYBERRY ; ROUTE_45
db ICE_BERRY ; ROUTE_36
db ICE_BERRY ; ROUTE_26
db MINT_BERRY ; ROUTE_39
db BURNT_BERRY ; ROUTE_44
db RED_APRICORN ; ROUTE_37_1
db BLU_APRICORN ; ROUTE_37_2
db BLK_APRICORN ; ROUTE_37_3
db WHT_APRICORN ; AZALEA_TOWN
db PNK_APRICORN ; ROUTE_42_1
db GRN_APRICORN ; ROUTE_42_2
db YLW_APRICORN ; ROUTE_42_3
db BERRY ; ROUTE_11
db PSNCUREBERRY ; ROUTE_2
db BITTER_BERRY ; ROUTE_1
db PRZCUREBERRY ; ROUTE_8
db ICE_BERRY ; PEWTER_CITY_1
db MINT_BERRY ; PEWTER_CITY_2
db BURNT_BERRY ; FUCHSIA_CITY
; 440b5

20
data/growth_rates.asm Normal file
View File

@ -0,0 +1,20 @@
growth_rate: MACRO
; [1]/[2]*n**3 + [3]*n**2 + [4]*n - [5]
dn \1, \2
if \3 & $80 ; signed
db -\3 | $80
else
db \3
endc
db \4, \5
ENDM
GrowthRates: ; 50efa
; entries correspond to base growth rate constants (see constants/pokemon_data_constants.asm)
growth_rate 1, 1, 0, 0, 0 ; Medium Fast
growth_rate 3, 4, 10, 0, 30 ; Slightly Fast
growth_rate 3, 4, 20, 0, 70 ; Slightly Slow
growth_rate 6, 5, -15, 100, 140 ; Medium Slow
growth_rate 4, 5, 0, 0, 0 ; Fast
growth_rate 5, 4, 0, 0, 0 ; Slow
; 50f12

View File

@ -0,0 +1,22 @@
HappinessChanges:
; entries correspond to HAPPINESS_* constants
; change if happiness < 100, change if happiness < 200, change otherwise
db +5, +3, +2 ; Gained a level
db +5, +3, +2 ; Vitamin
db +1, +1, +0 ; X Item
db +3, +2, +1 ; Battled a Gym Leader
db +1, +1, +0 ; Learned a move
db -1, -1, -1 ; Lost to an enemy
db -5, -5, -10 ; Fainted due to poison
db -5, -5, -10 ; Lost to a much stronger enemy
db +1, +1, +1 ; Haircut (Y1)
db +3, +3, +1 ; Haircut (Y2)
db +5, +5, +2 ; Haircut (Y3)
db +1, +1, +1 ; Haircut (O1)
db +3, +3, +1 ; Haircut (O2)
db +10, +10, +4 ; Haircut (O3)
db -5, -5, -10 ; Used Heal Powder or Energypowder (bitter)
db -10, -10, -15 ; Used Energy Root (bitter)
db -15, -15, -20 ; Used Revival Herb (bitter)
db +3, +3, +1 ; Grooming
db +10, +6, +4 ; Gained a level in the place where it was caught

12
data/hm_moves.asm Normal file
View File

@ -0,0 +1,12 @@
; HM moves can't be forgotten
HMMoves: ; 34f0
db CUT
db FLY
db SURF
db STRENGTH
db FLASH
db WATERFALL
db WHIRLPOOL
db -1 ; end
; 34f8

208
data/landmarks.asm Normal file
View File

@ -0,0 +1,208 @@
landmark: MACRO
; x, y, name
db \1, \2
dw \3
ENDM
Landmarks: ; 0x1ca8c3
; entries correspond to constants/landmark_constants.asm
landmark 0, 0, SpecialMapName
landmark 148, 116, NewBarkTownName
landmark 136, 116, Route29Name
landmark 108, 116, CherrygroveCityName
landmark 108, 96, Route30Name
landmark 104, 76, Route31Name
landmark 92, 76, VioletCityName
landmark 93, 74, SproutTowerName
landmark 92, 108, Route32Name
landmark 84, 92, RuinsOfAlphName
landmark 92, 140, UnionCaveName
landmark 90, 140, Route33Name
landmark 76, 140, AzaleaTownName
landmark 78, 138, SlowpokeWellName
landmark 60, 136, IlexForestName
landmark 60, 128, Route34Name
landmark 60, 108, GoldenrodCityName
landmark 58, 108, RadioTowerName
landmark 60, 92, Route35Name
landmark 60, 76, NationalParkName
landmark 72, 76, Route36Name
landmark 76, 68, Route37Name
landmark 76, 60, EcruteakCityName
landmark 78, 58, TinTowerName
landmark 74, 58, BurnedTowerName
landmark 60, 60, Route38Name
landmark 44, 64, Route39Name
landmark 44, 76, OlivineCityName
landmark 46, 78, LighthouseName
landmark 36, 72, BattleTowerName
landmark 36, 80, Route40Name
landmark 36, 108, WhirlIslandsName
landmark 36, 116, Route41Name
landmark 28, 116, CianwoodCityName
landmark 100, 60, Route42Name
landmark 92, 60, MtMortarName
landmark 116, 60, MahoganyTownName
landmark 116, 52, Route43Name
landmark 116, 44, LakeOfRageName
landmark 128, 60, Route44Name
landmark 138, 54, IcePathName
landmark 140, 60, BlackthornCityName
landmark 140, 52, DragonsDenName
landmark 140, 80, Route45Name
landmark 120, 88, DarkCaveName
landmark 132, 104, Route46Name
landmark 156, 84, SilverCaveName
landmark 60, 124, PalletTownName
landmark 60, 108, Route1Name
landmark 60, 92, ViridianCityName
landmark 60, 80, Route2Name
landmark 60, 68, PewterCityName
landmark 72, 68, Route3Name
landmark 84, 68, MtMoonName
landmark 96, 68, Route4Name
landmark 108, 68, CeruleanCityName
landmark 108, 60, Route24Name
landmark 116, 52, Route25Name
landmark 108, 76, Route5Name
landmark 116, 92, UndergroundName
landmark 108, 92, Route6Name
landmark 108, 100, VermilionCityName
landmark 96, 76, DiglettsCaveName
landmark 96, 84, Route7Name
landmark 124, 84, Route8Name
landmark 124, 68, Route9Name
landmark 140, 68, RockTunnelName
landmark 140, 72, Route10Name
landmark 140, 76, PowerPlantName
landmark 140, 84, LavenderTownName
landmark 148, 84, LavRadioTowerName
landmark 84, 84, CeladonCityName
landmark 108, 84, SaffronCityName
landmark 124, 100, Route11Name
landmark 140, 96, Route12Name
landmark 132, 116, Route13Name
landmark 124, 128, Route14Name
landmark 112, 132, Route15Name
landmark 76, 84, Route16Name
landmark 76, 108, Route17Name
landmark 88, 132, Route18Name
landmark 100, 132, FuchsiaCityName
landmark 100, 144, Route19Name
landmark 84, 148, Route20Name
landmark 76, 148, SeafoamIslandsName
landmark 60, 148, CinnabarIslandName
landmark 60, 136, Route21Name
landmark 44, 84, Route22Name
landmark 36, 68, VictoryRoadName
landmark 36, 60, Route23Name
landmark 36, 52, IndigoPlateauName
landmark 36, 108, Route26Name
landmark 28, 116, Route27Name
landmark 20, 116, TohjoFallsName
landmark 28, 84, Route28Name
landmark 148, 132, FastShipName
; 0x1caa43
NewBarkTownName: db "NEW BARK¯TOWN@"
CherrygroveCityName: db "CHERRYGROVE¯CITY@"
VioletCityName: db "VIOLET CITY@"
AzaleaTownName: db "AZALEA TOWN@"
GoldenrodCityName: db "GOLDENROD¯CITY@"
EcruteakCityName: db "ECRUTEAK¯CITY@"
OlivineCityName: db "OLIVINE¯CITY@"
CianwoodCityName: db "CIANWOOD¯CITY@"
MahoganyTownName: db "MAHOGANY¯TOWN@"
BlackthornCityName: db "BLACKTHORN¯CITY@"
LakeOfRageName: db "LAKE OF¯RAGE@"
SilverCaveName: db "SILVER CAVE@"
SproutTowerName: db "SPROUT¯TOWER@"
RuinsOfAlphName: db "RUINS¯OF ALPH@"
UnionCaveName: db "UNION CAVE@"
SlowpokeWellName: db "SLOWPOKE¯WELL@"
RadioTowerName: db "RADIO TOWER@"
PowerPlantName: db "POWER PLANT@"
NationalParkName: db "NATIONAL¯PARK@"
TinTowerName: db "TIN TOWER@"
LighthouseName: db "LIGHTHOUSE@"
WhirlIslandsName: db "WHIRL¯ISLANDS@"
MtMortarName: db "MT.MORTAR@"
DragonsDenName: db "DRAGON'S¯DEN@"
IcePathName: db "ICE PATH@"
NotApplicableName: db "N/A@"
PalletTownName: db "PALLET TOWN@"
ViridianCityName: db "VIRIDIAN¯CITY@"
PewterCityName: db "PEWTER CITY@"
CeruleanCityName: db "CERULEAN¯CITY@"
LavenderTownName: db "LAVENDER¯TOWN@"
VermilionCityName: db "VERMILION¯CITY@"
CeladonCityName: db "CELADON¯CITY@"
SaffronCityName: db "SAFFRON¯CITY@"
FuchsiaCityName: db "FUCHSIA¯CITY@"
CinnabarIslandName: db "CINNABAR¯ISLAND@"
IndigoPlateauName: db "INDIGO¯PLATEAU@"
VictoryRoadName: db "VICTORY¯ROAD@"
MtMoonName: db "MT.MOON@"
RockTunnelName: db "ROCK TUNNEL@"
LavRadioTowerName: db "LAV¯RADIO TOWER@"
SilphCoName: db "SILPH CO.@"
SafariZoneName: db "SAFARI ZONE@"
SeafoamIslandsName: db "SEAFOAM¯ISLANDS@"
PokemonMansionName: db "#MON¯MANSION@"
CeruleanCaveName: db "CERULEAN¯CAVE@"
Route1Name: db "ROUTE 1@"
Route2Name: db "ROUTE 2@"
Route3Name: db "ROUTE 3@"
Route4Name: db "ROUTE 4@"
Route5Name: db "ROUTE 5@"
Route6Name: db "ROUTE 6@"
Route7Name: db "ROUTE 7@"
Route8Name: db "ROUTE 8@"
Route9Name: db "ROUTE 9@"
Route10Name: db "ROUTE 10@"
Route11Name: db "ROUTE 11@"
Route12Name: db "ROUTE 12@"
Route13Name: db "ROUTE 13@"
Route14Name: db "ROUTE 14@"
Route15Name: db "ROUTE 15@"
Route16Name: db "ROUTE 16@"
Route17Name: db "ROUTE 17@"
Route18Name: db "ROUTE 18@"
Route19Name: db "ROUTE 19@"
Route20Name: db "ROUTE 20@"
Route21Name: db "ROUTE 21@"
Route22Name: db "ROUTE 22@"
Route23Name: db "ROUTE 23@"
Route24Name: db "ROUTE 24@"
Route25Name: db "ROUTE 25@"
Route26Name: db "ROUTE 26@"
Route27Name: db "ROUTE 27@"
Route28Name: db "ROUTE 28@"
Route29Name: db "ROUTE 29@"
Route30Name: db "ROUTE 30@"
Route31Name: db "ROUTE 31@"
Route32Name: db "ROUTE 32@"
Route33Name: db "ROUTE 33@"
Route34Name: db "ROUTE 34@"
Route35Name: db "ROUTE 35@"
Route36Name: db "ROUTE 36@"
Route37Name: db "ROUTE 37@"
Route38Name: db "ROUTE 38@"
Route39Name: db "ROUTE 39@"
Route40Name: db "ROUTE 40@"
Route41Name: db "ROUTE 41@"
Route42Name: db "ROUTE 42@"
Route43Name: db "ROUTE 43@"
Route44Name: db "ROUTE 44@"
Route45Name: db "ROUTE 45@"
Route46Name: db "ROUTE 46@"
DarkCaveName: db "DARK CAVE@"
IlexForestName: db "ILEX¯FOREST@"
BurnedTowerName: db "BURNED¯TOWER@"
FastShipName: db "FAST SHIP@"
ViridianForestName: db "VIRIDIAN¯FOREST@"
DiglettsCaveName: db "DIGLETT'S¯CAVE@"
TohjoFallsName: db "TOHJO FALLS@"
UndergroundName: db "UNDERGROUND@"
BattleTowerName: db "BATTLE¯TOWER@"
SpecialMapName: db "SPECIAL@"

19
data/mail_input_chars.asm Normal file
View File

@ -0,0 +1,19 @@
; see engine/naming_screen.asm
MailEntry_Uppercase: ; 122dd
db "A B C D E F G H I J"
db "K L M N O P Q R S T"
db "U V W X Y Z , ? !"
db "1 2 3 4 5 6 7 8 9 0"
db "<PK> <MN> <PO> <KE> é ♂ ♀ ¥ … ×"
db "lower DEL END "
; 1224f
MailEntry_Lowercase: ; 1224f
db "a b c d e f g h i j"
db "k l m n o p q r s t"
db "u v w x y z . - /"
db "'d 'l 'm 'r 's 't 'v & ( )"
db "<``> <''> [ ] ' : ; "
db "UPPER DEL END "
; 122c1

View File

@ -1,10 +1,10 @@
; entries correspond to SPRITEMOVEDATA_* constants
sprite_movement_data: macro
db \1, \2, \3, \4, \5
dn \6, 0
endm
SpriteMovementData:: ; 4273
; entries correspond to SPRITEMOVEDATA_* constants
; function, facing, action, flags1, flags2, palette flags
sprite_movement_data SPRITEMOVEFN_00, DOWN, PERSON_ACTION_STAND, $02, $00, %0000 ; 00
sprite_movement_data SPRITEMOVEFN_STANDING, DOWN, PERSON_ACTION_STAND, $0c, $00, %0000 ; 01
@ -44,3 +44,4 @@ endm
sprite_movement_data SPRITEMOVEFN_GRASS, DOWN, PERSON_ACTION_GRASS_SHAKE, $8e, $02, %0000 ; 23
sprite_movement_data SPRITEMOVEFN_RANDOM_WALK_XY, DOWN, PERSON_ACTION_STAND, $00, $00, %0010 ; 24
sprite_movement_data SPRITEMOVEFN_00, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 25
; 4357

View File

@ -1,6 +1,3 @@
MapTriggers:: ; 4d01e
; Map triggers
trigger_def: MACRO
; db group, map
; dw address
@ -8,6 +5,7 @@ trigger_def: MACRO
dw \2
ENDM
MapTriggers:: ; 4d01e
trigger_def POKECENTER_2F, wPokecenter2FTrigger
trigger_def TRADE_CENTER, wTradeCenterTrigger
trigger_def COLOSSEUM, wColosseumTrigger

31
data/mapgroup_roofs.asm Normal file
View File

@ -0,0 +1,31 @@
; valid roofs: 0, 1, 2, 3, 4, or -1 for none
MapGroupRoofs: ; 1c021i
db -1 ; group 0 (unused)
db 3 ; group 1 (Olivine)
db 2 ; group 2 (Mahogany)
db -1 ; group 3
db 1 ; group 4 (Ecruteak)
db 2 ; group 5 (Blackthorn)
db -1 ; group 6
db -1 ; group 7
db 2 ; group 8 (Azalea)
db 2 ; group 9 (Lake of Rage)
db 1 ; group 10 (Violet)
db 4 ; group 11 (Goldenrod)
db -1 ; group 12
db -1 ; group 13
db -1 ; group 14
db -1 ; group 15
db -1 ; group 16
db -1 ; group 17
db -1 ; group 18
db 0 ; group 19 (Silver Cave)
db -1 ; group 20
db -1 ; group 21
db 3 ; group 22 (Cianwood)
db -1 ; group 23
db 0 ; group 24 (New Bark)
db -1 ; group 25
db 0 ; group 26 (Cherrygrove)
; 1c03c

27
data/mom_phone_items.asm Normal file
View File

@ -0,0 +1,27 @@
momitem: macro
; money to trigger, cost, kind, item
dt \1
dt \2
db \3, \4
ENDM
MomItems_1: ; fd136
momitem 0, 600, MOM_ITEM, SUPER_POTION
momitem 0, 90, MOM_ITEM, ANTIDOTE
momitem 0, 180, MOM_ITEM, POKE_BALL
momitem 0, 450, MOM_ITEM, ESCAPE_ROPE
momitem 0, 500, MOM_ITEM, GREAT_BALL
MomItems_1End: ; fd15e
MomItems_2: ; fd15e
momitem 900, 600, MOM_ITEM, SUPER_POTION
momitem 4000, 270, MOM_ITEM, REPEL
momitem 7000, 600, MOM_ITEM, SUPER_POTION
momitem 10000, 1800, MOM_DOLL, DECO_CHARMANDER_DOLL
momitem 15000, 3000, MOM_ITEM, MOON_STONE
momitem 19000, 600, MOM_ITEM, SUPER_POTION
momitem 30000, 4800, MOM_DOLL, DECO_CLEFAIRY_DOLL
momitem 40000, 900, MOM_ITEM, HYPER_POTION
momitem 50000, 8000, MOM_DOLL, DECO_PIKACHU_DOLL
momitem 100000, 22800, MOM_DOLL, DECO_BIG_SNORLAX_DOLL
MomItems_2End: ; fd1ae

255
data/mon_menu_icons.asm Normal file
View File

@ -0,0 +1,255 @@
; party menu icons
MonMenuIcons: ; 8eac4
db ICON_BULBASAUR ; BULBASAUR
db ICON_BULBASAUR ; IVYSAUR
db ICON_BULBASAUR ; VENUSAUR
db ICON_CHARMANDER ; CHARMANDER
db ICON_CHARMANDER ; CHARMELEON
db ICON_BIGMON ; CHARIZARD
db ICON_SQUIRTLE ; SQUIRTLE
db ICON_SQUIRTLE ; WARTORTLE
db ICON_SQUIRTLE ; BLASTOISE
db ICON_CATERPILLAR ; CATERPIE
db ICON_CATERPILLAR ; METAPOD
db ICON_MOTH ; BUTTERFREE
db ICON_CATERPILLAR ; WEEDLE
db ICON_CATERPILLAR ; KAKUNA
db ICON_BUG ; BEEDRILL
db ICON_BIRD ; PIDGEY
db ICON_BIRD ; PIDGEOTTO
db ICON_BIRD ; PIDGEOT
db ICON_FOX ; RATTATA
db ICON_FOX ; RATICATE
db ICON_BIRD ; SPEAROW
db ICON_BIRD ; FEAROW
db ICON_SERPENT ; EKANS
db ICON_SERPENT ; ARBOK
db ICON_PIKACHU ; PIKACHU
db ICON_PIKACHU ; RAICHU
db ICON_MONSTER ; SANDSHREW
db ICON_MONSTER ; SANDSLASH
db ICON_FOX ; NIDORAN_F
db ICON_FOX ; NIDORINA
db ICON_MONSTER ; NIDOQUEEN
db ICON_FOX ; NIDORAN_M
db ICON_FOX ; NIDORINO
db ICON_MONSTER ; NIDOKING
db ICON_CLEFAIRY ; CLEFAIRY
db ICON_CLEFAIRY ; CLEFABLE
db ICON_FOX ; VULPIX
db ICON_FOX ; NINETALES
db ICON_JIGGLYPUFF ; JIGGLYPUFF
db ICON_JIGGLYPUFF ; WIGGLYTUFF
db ICON_BAT ; ZUBAT
db ICON_BAT ; GOLBAT
db ICON_ODDISH ; ODDISH
db ICON_ODDISH ; GLOOM
db ICON_ODDISH ; VILEPLUME
db ICON_BUG ; PARAS
db ICON_BUG ; PARASECT
db ICON_CATERPILLAR ; VENONAT
db ICON_MOTH ; VENOMOTH
db ICON_DIGLETT ; DIGLETT
db ICON_DIGLETT ; DUGTRIO
db ICON_FOX ; MEOWTH
db ICON_FOX ; PERSIAN
db ICON_MONSTER ; PSYDUCK
db ICON_MONSTER ; GOLDUCK
db ICON_FIGHTER ; MANKEY
db ICON_FIGHTER ; PRIMEAPE
db ICON_FOX ; GROWLITHE
db ICON_FOX ; ARCANINE
db ICON_POLIWAG ; POLIWAG
db ICON_POLIWAG ; POLIWHIRL
db ICON_POLIWAG ; POLIWRATH
db ICON_HUMANSHAPE ; ABRA
db ICON_HUMANSHAPE ; KADABRA
db ICON_HUMANSHAPE ; ALAKAZAM
db ICON_FIGHTER ; MACHOP
db ICON_FIGHTER ; MACHOKE
db ICON_FIGHTER ; MACHAMP
db ICON_ODDISH ; BELLSPROUT
db ICON_ODDISH ; WEEPINBELL
db ICON_ODDISH ; VICTREEBEL
db ICON_JELLYFISH ; TENTACOOL
db ICON_JELLYFISH ; TENTACRUEL
db ICON_GEODUDE ; GEODUDE
db ICON_GEODUDE ; GRAVELER
db ICON_GEODUDE ; GOLEM
db ICON_EQUINE ; PONYTA
db ICON_EQUINE ; RAPIDASH
db ICON_SLOWPOKE ; SLOWPOKE
db ICON_SLOWPOKE ; SLOWBRO
db ICON_VOLTORB ; MAGNEMITE
db ICON_VOLTORB ; MAGNETON
db ICON_BIRD ; FARFETCH_D
db ICON_BIRD ; DODUO
db ICON_BIRD ; DODRIO
db ICON_LAPRAS ; SEEL
db ICON_LAPRAS ; DEWGONG
db ICON_BLOB ; GRIMER
db ICON_BLOB ; MUK
db ICON_SHELL ; SHELLDER
db ICON_SHELL ; CLOYSTER
db ICON_GHOST ; GASTLY
db ICON_GHOST ; HAUNTER
db ICON_GHOST ; GENGAR
db ICON_SERPENT ; ONIX
db ICON_HUMANSHAPE ; DROWZEE
db ICON_HUMANSHAPE ; HYPNO
db ICON_SHELL ; KRABBY
db ICON_SHELL ; KINGLER
db ICON_VOLTORB ; VOLTORB
db ICON_VOLTORB ; ELECTRODE
db ICON_ODDISH ; EXEGGCUTE
db ICON_ODDISH ; EXEGGUTOR
db ICON_MONSTER ; CUBONE
db ICON_MONSTER ; MAROWAK
db ICON_FIGHTER ; HITMONLEE
db ICON_FIGHTER ; HITMONCHAN
db ICON_MONSTER ; LICKITUNG
db ICON_BLOB ; KOFFING
db ICON_BLOB ; WEEZING
db ICON_EQUINE ; RHYHORN
db ICON_MONSTER ; RHYDON
db ICON_CLEFAIRY ; CHANSEY
db ICON_ODDISH ; TANGELA
db ICON_MONSTER ; KANGASKHAN
db ICON_FISH ; HORSEA
db ICON_FISH ; SEADRA
db ICON_FISH ; GOLDEEN
db ICON_FISH ; SEAKING
db ICON_STARYU ; STARYU
db ICON_STARYU ; STARMIE
db ICON_HUMANSHAPE ; MR__MIME
db ICON_BUG ; SCYTHER
db ICON_HUMANSHAPE ; JYNX
db ICON_HUMANSHAPE ; ELECTABUZZ
db ICON_HUMANSHAPE ; MAGMAR
db ICON_BUG ; PINSIR
db ICON_EQUINE ; TAUROS
db ICON_FISH ; MAGIKARP
db ICON_GYARADOS ; GYARADOS
db ICON_LAPRAS ; LAPRAS
db ICON_BLOB ; DITTO
db ICON_FOX ; EEVEE
db ICON_FOX ; VAPOREON
db ICON_FOX ; JOLTEON
db ICON_FOX ; FLAREON
db ICON_VOLTORB ; PORYGON
db ICON_SHELL ; OMANYTE
db ICON_SHELL ; OMASTAR
db ICON_SHELL ; KABUTO
db ICON_SHELL ; KABUTOPS
db ICON_BIRD ; AERODACTYL
db ICON_SNORLAX ; SNORLAX
db ICON_BIRD ; ARTICUNO
db ICON_BIRD ; ZAPDOS
db ICON_BIRD ; MOLTRES
db ICON_SERPENT ; DRATINI
db ICON_SERPENT ; DRAGONAIR
db ICON_BIGMON ; DRAGONITE
db ICON_HUMANSHAPE ; MEWTWO
db ICON_HUMANSHAPE ; MEW
db ICON_ODDISH ; CHIKORITA
db ICON_ODDISH ; BAYLEEF
db ICON_ODDISH ; MEGANIUM
db ICON_FOX ; CYNDAQUIL
db ICON_FOX ; QUILAVA
db ICON_FOX ; TYPHLOSION
db ICON_MONSTER ; TOTODILE
db ICON_MONSTER ; CROCONAW
db ICON_MONSTER ; FERALIGATR
db ICON_FOX ; SENTRET
db ICON_FOX ; FURRET
db ICON_BIRD ; HOOTHOOT
db ICON_BIRD ; NOCTOWL
db ICON_BUG ; LEDYBA
db ICON_BUG ; LEDIAN
db ICON_BUG ; SPINARAK
db ICON_BUG ; ARIADOS
db ICON_BAT ; CROBAT
db ICON_FISH ; CHINCHOU
db ICON_FISH ; LANTURN
db ICON_PIKACHU ; PICHU
db ICON_CLEFAIRY ; CLEFFA
db ICON_JIGGLYPUFF ; IGGLYBUFF
db ICON_CLEFAIRY ; TOGEPI
db ICON_BIRD ; TOGETIC
db ICON_BIRD ; NATU
db ICON_BIRD ; XATU
db ICON_FOX ; MAREEP
db ICON_MONSTER ; FLAAFFY
db ICON_MONSTER ; AMPHAROS
db ICON_ODDISH ; BELLOSSOM
db ICON_JIGGLYPUFF ; MARILL
db ICON_JIGGLYPUFF ; AZUMARILL
db ICON_SUDOWOODO ; SUDOWOODO
db ICON_POLIWAG ; POLITOED
db ICON_ODDISH ; HOPPIP
db ICON_ODDISH ; SKIPLOOM
db ICON_ODDISH ; JUMPLUFF
db ICON_MONSTER ; AIPOM
db ICON_ODDISH ; SUNKERN
db ICON_ODDISH ; SUNFLORA
db ICON_BUG ; YANMA
db ICON_MONSTER ; WOOPER
db ICON_MONSTER ; QUAGSIRE
db ICON_FOX ; ESPEON
db ICON_FOX ; UMBREON
db ICON_BIRD ; MURKROW
db ICON_SLOWPOKE ; SLOWKING
db ICON_GHOST ; MISDREAVUS
db ICON_UNOWN ; UNOWN
db ICON_GHOST ; WOBBUFFET
db ICON_EQUINE ; GIRAFARIG
db ICON_BUG ; PINECO
db ICON_BUG ; FORRETRESS
db ICON_SERPENT ; DUNSPARCE
db ICON_BUG ; GLIGAR
db ICON_SERPENT ; STEELIX
db ICON_MONSTER ; SNUBBULL
db ICON_MONSTER ; GRANBULL
db ICON_FISH ; QWILFISH
db ICON_BUG ; SCIZOR
db ICON_BUG ; SHUCKLE
db ICON_BUG ; HERACROSS
db ICON_FOX ; SNEASEL
db ICON_MONSTER ; TEDDIURSA
db ICON_MONSTER ; URSARING
db ICON_BLOB ; SLUGMA
db ICON_BLOB ; MAGCARGO
db ICON_EQUINE ; SWINUB
db ICON_EQUINE ; PILOSWINE
db ICON_SHELL ; CORSOLA
db ICON_FISH ; REMORAID
db ICON_FISH ; OCTILLERY
db ICON_MONSTER ; DELIBIRD
db ICON_FISH ; MANTINE
db ICON_BIRD ; SKARMORY
db ICON_FOX ; HOUNDOUR
db ICON_FOX ; HOUNDOOM
db ICON_BIGMON ; KINGDRA
db ICON_EQUINE ; PHANPY
db ICON_EQUINE ; DONPHAN
db ICON_VOLTORB ; PORYGON2
db ICON_EQUINE ; STANTLER
db ICON_MONSTER ; SMEARGLE
db ICON_FIGHTER ; TYROGUE
db ICON_FIGHTER ; HITMONTOP
db ICON_HUMANSHAPE ; SMOOCHUM
db ICON_HUMANSHAPE ; ELEKID
db ICON_HUMANSHAPE ; MAGBY
db ICON_EQUINE ; MILTANK
db ICON_CLEFAIRY ; BLISSEY
db ICON_FOX ; RAIKOU
db ICON_FOX ; ENTEI
db ICON_FOX ; SUICUNE
db ICON_MONSTER ; LARVITAR
db ICON_MONSTER ; PUPITAR
db ICON_MONSTER ; TYRANITAR
db ICON_LUGIA ; LUGIA
db ICON_HO_OH ; HO_OH
db ICON_HUMANSHAPE ; CELEBI
; 8ebbf

View File

@ -0,0 +1,40 @@
MysteryGiftDecos: ; 2c74a
db DECOFLAG_PIKACHU_DOLL
db DECOFLAG_BULBASAUR_DOLL
db DECOFLAG_CHARMANDER_DOLL
db DECOFLAG_SQUIRTLE_DOLL
db DECOFLAG_POLIWAG_DOLL
db DECOFLAG_DIGLETT_DOLL
db DECOFLAG_STARMIE_DOLL
db DECOFLAG_MAGIKARP_DOLL
db DECOFLAG_ODDISH_DOLL
db DECOFLAG_GENGAR_DOLL
db DECOFLAG_CLEFAIRY_POSTER
db DECOFLAG_JIGGLYPUFF_POSTER
db DECOFLAG_SNES
db DECOFLAG_SHELLDER_DOLL
db DECOFLAG_VOLTORB_DOLL
db DECOFLAG_WEEDLE_DOLL
db DECOFLAG_MAGNAPLANT
db DECOFLAG_TROPICPLANT
db DECOFLAG_FAMICOM
db DECOFLAG_N64
db DECOFLAG_SURF_PIKACHU_DOLL
db DECOFLAG_JIGGLYPUFF_DOLL
db DECOFLAG_PINK_BED
db DECOFLAG_POLKADOT_BED
db DECOFLAG_RED_CARPET
db DECOFLAG_BLUE_CARPET
db DECOFLAG_YELLOW_CARPET
db DECOFLAG_GREEN_CARPET
db DECOFLAG_JUMBOPLANT
db DECOFLAG_VIRTUAL_BOY
db DECOFLAG_MACHOP_DOLL
db DECOFLAG_PIKACHU_POSTER
db DECOFLAG_TENTACOOL_DOLL
db DECOFLAG_BIG_ONIX_DOLL
db DECOFLAG_PIKACHU_BED
db DECOFLAG_GRIMER_DOLL
db DECOFLAG_UNOWN_DOLL
MysteryGiftDecosEnd
; 2c76f

View File

@ -0,0 +1,40 @@
MysteryGiftItems: ; 2c725
db BERRY
db PRZCUREBERRY
db MINT_BERRY
db ICE_BERRY
db BURNT_BERRY
db PSNCUREBERRY
db GUARD_SPEC
db X_DEFEND
db X_ATTACK
db BITTER_BERRY
db DIRE_HIT
db X_SPECIAL
db X_ACCURACY
db EON_MAIL
db MORPH_MAIL
db MUSIC_MAIL
db MIRACLEBERRY
db GOLD_BERRY
db REVIVE
db GREAT_BALL
db SUPER_REPEL
db MAX_REPEL
db ELIXER
db ETHER
db WATER_STONE
db FIRE_STONE
db LEAF_STONE
db THUNDERSTONE
db MAX_ETHER
db MAX_ELIXER
db MAX_REVIVE
db SCOPE_LENS
db HP_UP
db PP_UP
db RARE_CANDY
db BLUESKY_MAIL
db MIRAGE_MAIL
MysteryGiftItemsEnd:
; 2c74a

31
data/name_input_chars.asm Normal file
View File

@ -0,0 +1,31 @@
; see engine/naming_screen.asm
NameInputLower:
db "a b c d e f g h i"
db "j k l m n o p q r"
db "s t u v w x y z "
db "× ( ) : ; [ ] <PK> <MN>"
db "UPPER DEL END "
BoxNameInputLower:
db "a b c d e f g h i"
db "j k l m n o p q r"
db "s t u v w x y z "
db "é 'd 'l 'm 'r 's 't 'v 0"
db "1 2 3 4 5 6 7 8 9"
db "UPPER DEL END "
NameInputUpper:
db "A B C D E F G H I"
db "J K L M N O P Q R"
db "S T U V W X Y Z "
db "- ? ! / . , "
db "lower DEL END "
BoxNameInputUpper:
db "A B C D E F G H I"
db "J K L M N O P Q R"
db "S T U V W X Y Z "
db "× ( ) : ; [ ] <PK> <MN>"
db "- ? ! ♂ ♀ / . , &"
db "lower DEL END "

22
data/npc_trades.asm Normal file
View File

@ -0,0 +1,22 @@
TRADE_EITHER_GENDER EQU 0
TRADE_MALE_ONLY EQU 1
TRADE_FEMALE_ONLY EQU 2
npctrade: MACRO
; dialog set, requested mon, offered mon, nickname, dvs, item, OT ID, OT name, gender requested
db \1, \2, \3, \4, \5, \6, \7
shift
dw \7
db \8, \9, 0
ENDM
NPCTrades: ; fce58
; entries correspond to NPCTRADE_* constants
npctrade 0, ABRA, MACHOP, "MUSCLE@@@@@", $37, $66, GOLD_BERRY, 37460, "MIKE@@@@@@@", TRADE_EITHER_GENDER
npctrade 0, BELLSPROUT, ONIX, "ROCKY@@@@@@", $96, $66, BITTER_BERRY, 48926, "KYLE@@@@@@@", TRADE_EITHER_GENDER
npctrade 1, KRABBY, VOLTORB, "VOLTY@@@@@@", $98, $88, PRZCUREBERRY, 29189, "TIM@@@@@@@@", TRADE_EITHER_GENDER
npctrade 3, DRAGONAIR, DODRIO, "DORIS@@@@@@", $77, $66, SMOKE_BALL, 00283, "EMY@@@@@@@@", TRADE_FEMALE_ONLY
npctrade 2, HAUNTER, XATU, "PAUL@@@@@@@", $96, $86, MYSTERYBERRY, 15616, "CHRIS@@@@@@", TRADE_EITHER_GENDER
npctrade 3, CHANSEY, AERODACTYL, "AEROY@@@@@@", $96, $66, GOLD_BERRY, 26491, "KIM@@@@@@@@", TRADE_EITHER_GENDER
npctrade 0, DUGTRIO, MAGNETON, "MAGGIE@@@@@", $96, $66, METAL_COAT, 50082, "FOREST@@@@@", TRADE_EITHER_GENDER
; fcf38

View File

@ -1,106 +1,9 @@
GiveOddEgg: ; 1fb4b6
; Figure out which egg to give.
; Compare a random word to
; probabilities out of 0xffff.
call Random
ld hl, .Probabilities
ld c, 0
ld b, c
.loop
ld a, [hli]
ld e, a
ld a, [hli]
ld d, a
; Break on $ffff.
ld a, d
cp $ffff / $100
jr nz, .not_done
ld a, e
cp $ffff % $100
jr z, .done
.not_done
; Break when [hRandom] <= de.
ld a, [hRandom + 1]
cp d
jr c, .done
jr z, .ok
jr .next
.ok
ld a, [hRandom + 0]
cp e
jr c, .done
jr z, .done
.next
inc bc
jr .loop
.done
ld hl, OddEggs
ld a, OddEgg2 - OddEgg1
call AddNTimes
ld de, OddEggSpecies
ld bc, PARTYMON_STRUCT_LENGTH + 2 * PKMN_NAME_LENGTH
call CopyBytes
ld a, EGG_TICKET
ld [CurItem], a
ld a, 1
ld [wItemQuantityChangeBuffer], a
ld a, -1
ld [CurItemQuantity], a
ld hl, NumItems
call TossItem
; load species in wcd2a
ld a, EGG
ld [wMobileMonSpeciesBuffer], a
; load pointer to (wMobileMonSpeciesBuffer - 1) in wMobileMonSpeciesPointerBuffer
ld a, (wMobileMonSpeciesBuffer - 1) % $100
ld [wMobileMonSpeciesPointerBuffer], a
ld a, (wMobileMonSpeciesBuffer - 1) / $100
ld [wMobileMonSpeciesPointerBuffer + 1], a
; load pointer to OddEggSpecies in wMobileMonStructurePointerBuffer
ld a, OddEggSpecies % $100
ld [wMobileMonStructurePointerBuffer], a
ld a, OddEggSpecies / $100
ld [wMobileMonStructurePointerBuffer + 1], a
; load Odd Egg Name in wTempOddEggNickname
ld hl, .Odd
ld de, wTempOddEggNickname
ld bc, PKMN_NAME_LENGTH
call CopyBytes
; load pointer to wTempOddEggNickname in wMobileMonOTNamePointerBuffer
ld a, wTempOddEggNickname % $100
ld [wMobileMonOTNamePointerBuffer], a
ld a, wTempOddEggNickname / $100
ld [wMobileMonOTNamePointerBuffer + 1], a
; load pointer to wOddEggName in wMobileMonNicknamePointerBuffer
ld a, wOddEggName % $100
ld [wMobileMonNicknamePointerBuffer], a
ld a, wOddEggName / $100
ld [wMobileMonNicknamePointerBuffer + 1], a
callba AddMobileMonToParty
ret
; 1fb546
.Odd:
db "ODD@@@@@@@@@"
.Probabilities:
prob: MACRO
prob: macro
prob_total = prob_total + (\1)
dw prob_total * $ffff / 100
ENDM
endm
OddEggProbabilities:
prob_total = 0
; Pichu
prob 8

696
data/outdoor_sprites.asm Normal file
View File

@ -0,0 +1,696 @@
; Valid sprite IDs for each map group.
; Maps with permission ROUTE or TOWN can only use these sprites.
OutdoorSprites: ; 144b8
dw Group1Sprites
dw Group2Sprites
dw Group3Sprites
dw Group4Sprites
dw Group5Sprites
dw Group6Sprites
dw Group7Sprites
dw Group8Sprites
dw Group9Sprites
dw Group10Sprites
dw Group11Sprites
dw Group12Sprites
dw Group13Sprites
dw Group14Sprites
dw Group15Sprites
dw Group16Sprites
dw Group17Sprites
dw Group18Sprites
dw Group19Sprites
dw Group20Sprites
dw Group21Sprites
dw Group22Sprites
dw Group23Sprites
dw Group24Sprites
dw Group25Sprites
dw Group26Sprites
; 144ec
Group13Sprites: ; 144ec
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_TEACHER
db SPRITE_FISHER
db SPRITE_YOUNGSTER
db SPRITE_BLUE
db SPRITE_GRAMPS
db SPRITE_BUG_CATCHER
db SPRITE_COOLTRAINER_F
db SPRITE_SWIMMER_GIRL
db SPRITE_SWIMMER_GUY
db SPRITE_POKE_BALL
db SPRITE_FRUIT_TREE
; 14503
Group23Sprites: ; 14503
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_TEACHER
db SPRITE_FISHER
db SPRITE_YOUNGSTER
db SPRITE_BLUE
db SPRITE_GRAMPS
db SPRITE_BUG_CATCHER
db SPRITE_COOLTRAINER_F
db SPRITE_SWIMMER_GIRL
db SPRITE_SWIMMER_GUY
db SPRITE_POKE_BALL
db SPRITE_FRUIT_TREE
; 1451a
Group14Sprites: ; 1451a
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_TEACHER
db SPRITE_FISHER
db SPRITE_YOUNGSTER
db SPRITE_BLUE
db SPRITE_GRAMPS
db SPRITE_BUG_CATCHER
db SPRITE_COOLTRAINER_F
db SPRITE_SWIMMER_GIRL
db SPRITE_SWIMMER_GUY
db SPRITE_POKE_BALL
db SPRITE_FRUIT_TREE
; 14531
Group6Sprites: ; 14531
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_TEACHER
db SPRITE_FISHER
db SPRITE_YOUNGSTER
db SPRITE_BLUE
db SPRITE_GRAMPS
db SPRITE_BUG_CATCHER
db SPRITE_COOLTRAINER_F
db SPRITE_SWIMMER_GIRL
db SPRITE_SWIMMER_GUY
db SPRITE_POKE_BALL
db SPRITE_FRUIT_TREE
; 14548
Group7Sprites: ; 14548
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_COOLTRAINER_M
db SPRITE_SUPER_NERD
db SPRITE_COOLTRAINER_F
db SPRITE_FISHER
db SPRITE_YOUNGSTER
db SPRITE_LASS
db SPRITE_POKEFAN_M
db SPRITE_ROCKET
db SPRITE_MISTY
db SPRITE_POKE_BALL
db SPRITE_SLOWPOKE
; 1455f
Group25Sprites: ; 1455f
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_COOLTRAINER_M
db SPRITE_SUPER_NERD
db SPRITE_COOLTRAINER_F
db SPRITE_FISHER
db SPRITE_YOUNGSTER
db SPRITE_LASS
db SPRITE_POKEFAN_M
db SPRITE_ROCKET
db SPRITE_MISTY
db SPRITE_POKE_BALL
db SPRITE_SLOWPOKE
; 14576
Group21Sprites: ; 14576
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_FISHER
db SPRITE_POLIWAG
db SPRITE_TEACHER
db SPRITE_GRAMPS
db SPRITE_YOUNGSTER
db SPRITE_LASS
db SPRITE_BIKER
db SPRITE_SILVER
db SPRITE_BLUE
db SPRITE_POKE_BALL
db SPRITE_FRUIT_TREE
; 1458d
Group18Sprites: ; 1458d
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_POKEFAN_M
db SPRITE_MACHOP
db SPRITE_GRAMPS
db SPRITE_YOUNGSTER
db SPRITE_FISHER
db SPRITE_TEACHER
db SPRITE_SUPER_NERD
db SPRITE_BIG_SNORLAX
db SPRITE_BIKER
db SPRITE_POKE_BALL
db SPRITE_FRUIT_TREE
; 145a4
Group12Sprites: ; 145a4
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_POKEFAN_M
db SPRITE_MACHOP
db SPRITE_GRAMPS
db SPRITE_YOUNGSTER
db SPRITE_FISHER
db SPRITE_TEACHER
db SPRITE_SUPER_NERD
db SPRITE_BIG_SNORLAX
db SPRITE_BIKER
db SPRITE_POKE_BALL
db SPRITE_FRUIT_TREE
; 145bb
Group17Sprites: ; 145bb
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_POKEFAN_M
db SPRITE_MACHOP
db SPRITE_GRAMPS
db SPRITE_YOUNGSTER
db SPRITE_FISHER
db SPRITE_TEACHER
db SPRITE_SUPER_NERD
db SPRITE_BIG_SNORLAX
db SPRITE_BIKER
db SPRITE_POKE_BALL
db SPRITE_FRUIT_TREE
; 145d2
Group16Sprites: ; 145d2
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_POKEFAN_M
db SPRITE_BUENA
db SPRITE_GRAMPS
db SPRITE_YOUNGSTER
db SPRITE_FISHER
db SPRITE_TEACHER
db SPRITE_SUPER_NERD
db SPRITE_MACHOP
db SPRITE_BIKER
db SPRITE_POKE_BALL
db SPRITE_BOULDER
; 145e9
Group24Sprites: ; 145e9
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_SILVER
db SPRITE_TEACHER
db SPRITE_FISHER
db SPRITE_COOLTRAINER_M
db SPRITE_YOUNGSTER
db SPRITE_MONSTER
db SPRITE_GRAMPS
db SPRITE_BUG_CATCHER
db SPRITE_COOLTRAINER_F
db SPRITE_POKE_BALL
db SPRITE_FRUIT_TREE
; 14600
Group26Sprites: ; 14600
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_SILVER
db SPRITE_TEACHER
db SPRITE_FISHER
db SPRITE_COOLTRAINER_M
db SPRITE_YOUNGSTER
db SPRITE_MONSTER
db SPRITE_GRAMPS
db SPRITE_BUG_CATCHER
db SPRITE_COOLTRAINER_F
db SPRITE_POKE_BALL
db SPRITE_FRUIT_TREE
; 14617
Group19Sprites: ; 14617
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_SILVER
db SPRITE_TEACHER
db SPRITE_FISHER
db SPRITE_COOLTRAINER_M
db SPRITE_YOUNGSTER
db SPRITE_MONSTER
db SPRITE_GRAMPS
db SPRITE_BUG_CATCHER
db SPRITE_COOLTRAINER_F
db SPRITE_POKE_BALL
db SPRITE_FRUIT_TREE
; 1462e
Group10Sprites: ; 1462e
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_FISHER
db SPRITE_LASS
db SPRITE_OFFICER
db SPRITE_GRAMPS
db SPRITE_YOUNGSTER
db SPRITE_COOLTRAINER_M
db SPRITE_BUG_CATCHER
db SPRITE_SUPER_NERD
db SPRITE_WEIRD_TREE
db SPRITE_POKE_BALL
db SPRITE_FRUIT_TREE
; 14645
Group4Sprites: ; 14645
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_FISHER
db SPRITE_LASS
db SPRITE_OFFICER
db SPRITE_GRAMPS
db SPRITE_YOUNGSTER
db SPRITE_COOLTRAINER_M
db SPRITE_BUG_CATCHER
db SPRITE_SUPER_NERD
db SPRITE_WEIRD_TREE
db SPRITE_POKE_BALL
db SPRITE_FRUIT_TREE
; 1465c
Group8Sprites: ; 1465c
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_KURT_OUTSIDE
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_GRAMPS
db SPRITE_YOUNGSTER
db SPRITE_OFFICER
db SPRITE_POKEFAN_M
db SPRITE_BLACK_BELT
db SPRITE_TEACHER
db SPRITE_AZALEA_ROCKET
db SPRITE_LASS
db SPRITE_SILVER
db SPRITE_FRUIT_TREE
db SPRITE_SLOWPOKE
; 14673
Group11Sprites: ; 14673
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_POKE_BALL
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_GRAMPS
db SPRITE_YOUNGSTER
db SPRITE_OFFICER
db SPRITE_POKEFAN_M
db SPRITE_DAY_CARE_MON_1
db SPRITE_COOLTRAINER_F
db SPRITE_ROCKET
db SPRITE_LASS
db SPRITE_DAY_CARE_MON_2
db SPRITE_FRUIT_TREE
db SPRITE_SLOWPOKE
; 1468a
Group22Sprites: ; 1468a
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_STANDING_YOUNGSTER
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_OLIVINE_RIVAL
db SPRITE_POKEFAN_M
db SPRITE_LASS
db SPRITE_BUENA
db SPRITE_SWIMMER_GIRL
db SPRITE_SAILOR
db SPRITE_POKEFAN_F
db SPRITE_SUPER_NERD
db SPRITE_TAUROS
db SPRITE_FRUIT_TREE
db SPRITE_ROCK
; 146a1
Group1Sprites: ; 146a1
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_STANDING_YOUNGSTER
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_OLIVINE_RIVAL
db SPRITE_POKEFAN_M
db SPRITE_LASS
db SPRITE_BUENA
db SPRITE_SWIMMER_GIRL
db SPRITE_SAILOR
db SPRITE_POKEFAN_F
db SPRITE_SUPER_NERD
db SPRITE_TAUROS
db SPRITE_FRUIT_TREE
db SPRITE_ROCK
; 146b8
Group9Sprites: ; 146b8
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_LANCE
db SPRITE_GRAMPS
db SPRITE_SUPER_NERD
db SPRITE_COOLTRAINER_F
db SPRITE_FISHER
db SPRITE_COOLTRAINER_M
db SPRITE_LASS
db SPRITE_YOUNGSTER
db SPRITE_GYARADOS
db SPRITE_FRUIT_TREE
db SPRITE_POKE_BALL
; 146cf
Group2Sprites: ; 146cf
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_GRAMPS
db SPRITE_YOUNGSTER
db SPRITE_LASS
db SPRITE_SUPER_NERD
db SPRITE_COOLTRAINER_M
db SPRITE_POKEFAN_M
db SPRITE_BLACK_BELT
db SPRITE_COOLTRAINER_F
db SPRITE_FISHER
db SPRITE_FRUIT_TREE
db SPRITE_POKE_BALL
; 146e6
Group5Sprites: ; 146e6
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_GRAMPS
db SPRITE_YOUNGSTER
db SPRITE_LASS
db SPRITE_SUPER_NERD
db SPRITE_COOLTRAINER_M
db SPRITE_POKEFAN_M
db SPRITE_BLACK_BELT
db SPRITE_COOLTRAINER_F
db SPRITE_FISHER
db SPRITE_FRUIT_TREE
db SPRITE_POKE_BALL
; 146fd
Group3Sprites: ; 146fd
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_GAMEBOY_KID
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_LASS
db SPRITE_POKEFAN_F
db SPRITE_TEACHER
db SPRITE_YOUNGSTER
db SPRITE_GROWLITHE
db SPRITE_POKEFAN_M
db SPRITE_ROCKER
db SPRITE_FISHER
db SPRITE_SCIENTIST
db SPRITE_POKE_BALL
db SPRITE_BOULDER
; 14714
Group15Sprites: ; 14714
db SPRITE_SUICUNE
db SPRITE_SILVER_TROPHY
db SPRITE_FAMICOM
db SPRITE_POKEDEX
db SPRITE_WILL
db SPRITE_KAREN
db SPRITE_NURSE
db SPRITE_OLD_LINK_RECEPTIONIST
db SPRITE_BIG_LAPRAS
db SPRITE_BIG_ONIX
db SPRITE_SUDOWOODO
db SPRITE_BIG_SNORLAX
db SPRITE_SAILOR
db SPRITE_FISHING_GURU
db SPRITE_GENTLEMAN
db SPRITE_SUPER_NERD
db SPRITE_HO_OH
db SPRITE_TEACHER
db SPRITE_COOLTRAINER_F
db SPRITE_YOUNGSTER
db SPRITE_FAIRY
db SPRITE_POKE_BALL
db SPRITE_ROCK
; 1472b
Group20Sprites: ; 1472b
db SPRITE_OAK
db SPRITE_FISHER
db SPRITE_TEACHER
db SPRITE_TWIN
db SPRITE_POKEFAN_M
db SPRITE_GRAMPS
db SPRITE_FAIRY
db SPRITE_SILVER
db SPRITE_FISHING_GURU
db SPRITE_POKE_BALL
db SPRITE_POKEDEX
; 14736

51
data/phone_contacts.asm Normal file
View File

@ -0,0 +1,51 @@
phone: macro
; trainer class, trainer id, map, ?, script 1, ?, script 2
db \1, \2
map \3
db \4
dba \5
db \6
dba \7
endm
PhoneContacts: ; 9045f
; entries correspond to PHONE_* constants
phone TRAINER_NONE, PHONE_00, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript
phone TRAINER_NONE, PHONECONTACT_MOM, KRISS_HOUSE_1F, 7, MomPhoneScript, 0, UnusedPhoneScript
phone TRAINER_NONE, PHONECONTACT_BIKESHOP, OAKS_LAB, 0, UnusedPhoneScript, 0, UnusedPhoneScript
phone TRAINER_NONE, PHONECONTACT_BILL, N_A, 7, BillPhoneScript1, 0, BillPhoneScript2
phone TRAINER_NONE, PHONECONTACT_ELM, ELMS_LAB, 7, ElmPhoneScript1, 0, ElmPhoneScript2
phone SCHOOLBOY, JACK1, NATIONAL_PARK, 7, JackPhoneScript1, 7, JackPhoneScript2
phone POKEFANF, BEVERLY1, NATIONAL_PARK, 7, BeverlyPhoneScript1, 7, BeverlyPhoneScript2
phone SAILOR, HUEY1, OLIVINE_LIGHTHOUSE_2F, 7, HueyPhoneScript1, 7, HueyPhoneScript2
phone TRAINER_NONE, PHONE_00, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript
phone TRAINER_NONE, PHONE_00, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript
phone TRAINER_NONE, PHONE_00, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript
phone COOLTRAINERM, GAVEN3, ROUTE_26, 7, GavenPhoneScript1, 7, GavenPhoneScript2
phone COOLTRAINERF, BETH1, ROUTE_26, 7, BethPhoneScript1, 7, BethPhoneScript2
phone BIRD_KEEPER, JOSE2, ROUTE_27, 7, JosePhoneScript1, 7, JosePhoneScript2
phone COOLTRAINERF, REENA1, ROUTE_27, 7, ReenaPhoneScript1, 7, ReenaPhoneScript2
phone YOUNGSTER, JOEY1, ROUTE_30, 7, JoeyPhoneScript1, 7, JoeyPhoneScript2
phone BUG_CATCHER, WADE1, ROUTE_31, 7, WadePhoneScript1, 7, WadePhoneScript2
phone FISHER, RALPH1, ROUTE_32, 7, RalphPhoneScript1, 7, RalphPhoneScript2
phone PICNICKER, LIZ1, ROUTE_32, 7, LizPhoneScript1, 7, LizPhoneScript2
phone HIKER, ANTHONY2, ROUTE_33, 7, AnthonyPhoneScript1, 7, AnthonyPhoneScript2
phone CAMPER, TODD1, ROUTE_34, 7, ToddPhoneScript1, 7, ToddPhoneScript2
phone PICNICKER, GINA1, ROUTE_34, 7, GinaPhoneScript1, 7, GinaPhoneScript2
phone JUGGLER, IRWIN1, ROUTE_35, 7, IrwinPhoneScript1, 7, IrwinPhoneScript2
phone BUG_CATCHER, ARNIE1, ROUTE_35, 7, ArniePhoneScript1, 7, ArniePhoneScript2
phone SCHOOLBOY, ALAN1, ROUTE_36, 7, AlanPhoneScript1, 7, AlanPhoneScript2
phone TRAINER_NONE, PHONE_00, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript
phone LASS, DANA1, ROUTE_38, 7, DanaPhoneScript1, 7, DanaPhoneScript2
phone SCHOOLBOY, CHAD1, ROUTE_38, 7, ChadPhoneScript1, 7, ChadPhoneScript2
phone POKEFANM, DEREK1, ROUTE_39, 7, DerekPhoneScript1, 7, DerekPhoneScript2
phone FISHER, TULLY1, ROUTE_42, 7, TullyPhoneScript1, 7, TullyPhoneScript2
phone POKEMANIAC, BRENT1, ROUTE_43, 7, BrentPhoneScript1, 7, BrentPhoneScript2
phone PICNICKER, TIFFANY3, ROUTE_43, 7, TiffanyPhoneScript1, 7, TiffanyPhoneScript2
phone BIRD_KEEPER, VANCE1, ROUTE_44, 7, VancePhoneScript1, 7, VancePhoneScript2
phone FISHER, WILTON1, ROUTE_44, 7, WiltonPhoneScript1, 7, WiltonPhoneScript2
phone BLACKBELT_T, KENJI3, ROUTE_45, 7, KenjiPhoneScript1, 7, KenjiPhoneScript2
phone HIKER, PARRY1, ROUTE_45, 7, ParryPhoneScript1, 7, ParryPhoneScript2
phone PICNICKER, ERIN1, ROUTE_46, 7, ErinPhoneScript1, 7, ErinPhoneScript2
phone TRAINER_NONE, PHONECONTACT_BUENA, GOLDENROD_DEPT_STORE_ROOF, 7, BuenaPhoneScript1, 7, BuenaPhoneScript2
; 90627

18
data/phone_special.asm Normal file
View File

@ -0,0 +1,18 @@
specialcall: macro
; condition, contact, script
dw \1
db \2
dba \3
endm
SpecialPhoneCallList: ; 90627
; entries correspond to SPECIALCALL_* constants
specialcall SpecialCallOnlyWhenOutside, PHONE_ELM, ElmPhoneScript2
specialcall SpecialCallOnlyWhenOutside, PHONE_ELM, ElmPhoneScript2
specialcall SpecialCallOnlyWhenOutside, PHONE_ELM, ElmPhoneScript2
specialcall SpecialCallOnlyWhenOutside, PHONE_ELM, ElmPhoneScript2
specialcall SpecialCallWhereverYouAre, PHONE_ELM, ElmPhoneScript2
specialcall SpecialCallWhereverYouAre, PHONE_OAK, BikeShopPhoneScript
specialcall SpecialCallWhereverYouAre, PHONE_MOM, MomPhoneLectureScript
specialcall SpecialCallOnlyWhenOutside, PHONE_ELM, ElmPhoneScript2
; 90657

View File

@ -4,22 +4,269 @@ INCLUDE "includes.asm"
SECTION "Pokedex Entries 001-064", ROMX
PokedexEntries1::
INCLUDE "data/pokedex/entries_1.asm"
BulbasaurPokedexEntry:: INCLUDE "data/pokedex/entries/bulbasaur.asm"
IvysaurPokedexEntry:: INCLUDE "data/pokedex/entries/ivysaur.asm"
VenusaurPokedexEntry:: INCLUDE "data/pokedex/entries/venusaur.asm"
CharmanderPokedexEntry:: INCLUDE "data/pokedex/entries/charmander.asm"
CharmeleonPokedexEntry:: INCLUDE "data/pokedex/entries/charmeleon.asm"
CharizardPokedexEntry:: INCLUDE "data/pokedex/entries/charizard.asm"
SquirtlePokedexEntry:: INCLUDE "data/pokedex/entries/squirtle.asm"
WartortlePokedexEntry:: INCLUDE "data/pokedex/entries/wartortle.asm"
BlastoisePokedexEntry:: INCLUDE "data/pokedex/entries/blastoise.asm"
CaterpiePokedexEntry:: INCLUDE "data/pokedex/entries/caterpie.asm"
MetapodPokedexEntry:: INCLUDE "data/pokedex/entries/metapod.asm"
ButterfreePokedexEntry:: INCLUDE "data/pokedex/entries/butterfree.asm"
WeedlePokedexEntry:: INCLUDE "data/pokedex/entries/weedle.asm"
KakunaPokedexEntry:: INCLUDE "data/pokedex/entries/kakuna.asm"
BeedrillPokedexEntry:: INCLUDE "data/pokedex/entries/beedrill.asm"
PidgeyPokedexEntry:: INCLUDE "data/pokedex/entries/pidgey.asm"
PidgeottoPokedexEntry:: INCLUDE "data/pokedex/entries/pidgeotto.asm"
PidgeotPokedexEntry:: INCLUDE "data/pokedex/entries/pidgeot.asm"
RattataPokedexEntry:: INCLUDE "data/pokedex/entries/rattata.asm"
RaticatePokedexEntry:: INCLUDE "data/pokedex/entries/raticate.asm"
SpearowPokedexEntry:: INCLUDE "data/pokedex/entries/spearow.asm"
FearowPokedexEntry:: INCLUDE "data/pokedex/entries/fearow.asm"
EkansPokedexEntry:: INCLUDE "data/pokedex/entries/ekans.asm"
ArbokPokedexEntry:: INCLUDE "data/pokedex/entries/arbok.asm"
PikachuPokedexEntry:: INCLUDE "data/pokedex/entries/pikachu.asm"
RaichuPokedexEntry:: INCLUDE "data/pokedex/entries/raichu.asm"
SandshrewPokedexEntry:: INCLUDE "data/pokedex/entries/sandshrew.asm"
SandslashPokedexEntry:: INCLUDE "data/pokedex/entries/sandslash.asm"
NidoranFPokedexEntry:: INCLUDE "data/pokedex/entries/nidoran_f.asm"
NidorinaPokedexEntry:: INCLUDE "data/pokedex/entries/nidorina.asm"
NidoqueenPokedexEntry:: INCLUDE "data/pokedex/entries/nidoqueen.asm"
NidoranMPokedexEntry:: INCLUDE "data/pokedex/entries/nidoran_m.asm"
NidorinoPokedexEntry:: INCLUDE "data/pokedex/entries/nidorino.asm"
NidokingPokedexEntry:: INCLUDE "data/pokedex/entries/nidoking.asm"
ClefairyPokedexEntry:: INCLUDE "data/pokedex/entries/clefairy.asm"
ClefablePokedexEntry:: INCLUDE "data/pokedex/entries/clefable.asm"
VulpixPokedexEntry:: INCLUDE "data/pokedex/entries/vulpix.asm"
NinetalesPokedexEntry:: INCLUDE "data/pokedex/entries/ninetales.asm"
JigglypuffPokedexEntry:: INCLUDE "data/pokedex/entries/jigglypuff.asm"
WigglytuffPokedexEntry:: INCLUDE "data/pokedex/entries/wigglytuff.asm"
ZubatPokedexEntry:: INCLUDE "data/pokedex/entries/zubat.asm"
GolbatPokedexEntry:: INCLUDE "data/pokedex/entries/golbat.asm"
OddishPokedexEntry:: INCLUDE "data/pokedex/entries/oddish.asm"
GloomPokedexEntry:: INCLUDE "data/pokedex/entries/gloom.asm"
VileplumePokedexEntry:: INCLUDE "data/pokedex/entries/vileplume.asm"
ParasPokedexEntry:: INCLUDE "data/pokedex/entries/paras.asm"
ParasectPokedexEntry:: INCLUDE "data/pokedex/entries/parasect.asm"
VenonatPokedexEntry:: INCLUDE "data/pokedex/entries/venonat.asm"
VenomothPokedexEntry:: INCLUDE "data/pokedex/entries/venomoth.asm"
DiglettPokedexEntry:: INCLUDE "data/pokedex/entries/diglett.asm"
DugtrioPokedexEntry:: INCLUDE "data/pokedex/entries/dugtrio.asm"
MeowthPokedexEntry:: INCLUDE "data/pokedex/entries/meowth.asm"
PersianPokedexEntry:: INCLUDE "data/pokedex/entries/persian.asm"
PsyduckPokedexEntry:: INCLUDE "data/pokedex/entries/psyduck.asm"
GolduckPokedexEntry:: INCLUDE "data/pokedex/entries/golduck.asm"
MankeyPokedexEntry:: INCLUDE "data/pokedex/entries/mankey.asm"
PrimeapePokedexEntry:: INCLUDE "data/pokedex/entries/primeape.asm"
GrowlithePokedexEntry:: INCLUDE "data/pokedex/entries/growlithe.asm"
ArcaninePokedexEntry:: INCLUDE "data/pokedex/entries/arcanine.asm"
PoliwagPokedexEntry:: INCLUDE "data/pokedex/entries/poliwag.asm"
PoliwhirlPokedexEntry:: INCLUDE "data/pokedex/entries/poliwhirl.asm"
PoliwrathPokedexEntry:: INCLUDE "data/pokedex/entries/poliwrath.asm"
AbraPokedexEntry:: INCLUDE "data/pokedex/entries/abra.asm"
KadabraPokedexEntry:: INCLUDE "data/pokedex/entries/kadabra.asm"
SECTION "Pokedex Entries 065-128", ROMX
PokedexEntries2::
INCLUDE "data/pokedex/entries_2.asm"
AlakazamPokedexEntry:: INCLUDE "data/pokedex/entries/alakazam.asm"
MachopPokedexEntry:: INCLUDE "data/pokedex/entries/machop.asm"
MachokePokedexEntry:: INCLUDE "data/pokedex/entries/machoke.asm"
MachampPokedexEntry:: INCLUDE "data/pokedex/entries/machamp.asm"
BellsproutPokedexEntry:: INCLUDE "data/pokedex/entries/bellsprout.asm"
WeepinbellPokedexEntry:: INCLUDE "data/pokedex/entries/weepinbell.asm"
VictreebelPokedexEntry:: INCLUDE "data/pokedex/entries/victreebel.asm"
TentacoolPokedexEntry:: INCLUDE "data/pokedex/entries/tentacool.asm"
TentacruelPokedexEntry:: INCLUDE "data/pokedex/entries/tentacruel.asm"
GeodudePokedexEntry:: INCLUDE "data/pokedex/entries/geodude.asm"
GravelerPokedexEntry:: INCLUDE "data/pokedex/entries/graveler.asm"
GolemPokedexEntry:: INCLUDE "data/pokedex/entries/golem.asm"
PonytaPokedexEntry:: INCLUDE "data/pokedex/entries/ponyta.asm"
RapidashPokedexEntry:: INCLUDE "data/pokedex/entries/rapidash.asm"
SlowpokePokedexEntry:: INCLUDE "data/pokedex/entries/slowpoke.asm"
SlowbroPokedexEntry:: INCLUDE "data/pokedex/entries/slowbro.asm"
MagnemitePokedexEntry:: INCLUDE "data/pokedex/entries/magnemite.asm"
MagnetonPokedexEntry:: INCLUDE "data/pokedex/entries/magneton.asm"
FarfetchDPokedexEntry:: INCLUDE "data/pokedex/entries/farfetch_d.asm"
DoduoPokedexEntry:: INCLUDE "data/pokedex/entries/doduo.asm"
DodrioPokedexEntry:: INCLUDE "data/pokedex/entries/dodrio.asm"
SeelPokedexEntry:: INCLUDE "data/pokedex/entries/seel.asm"
DewgongPokedexEntry:: INCLUDE "data/pokedex/entries/dewgong.asm"
GrimerPokedexEntry:: INCLUDE "data/pokedex/entries/grimer.asm"
MukPokedexEntry:: INCLUDE "data/pokedex/entries/muk.asm"
ShellderPokedexEntry:: INCLUDE "data/pokedex/entries/shellder.asm"
CloysterPokedexEntry:: INCLUDE "data/pokedex/entries/cloyster.asm"
GastlyPokedexEntry:: INCLUDE "data/pokedex/entries/gastly.asm"
HaunterPokedexEntry:: INCLUDE "data/pokedex/entries/haunter.asm"
GengarPokedexEntry:: INCLUDE "data/pokedex/entries/gengar.asm"
OnixPokedexEntry:: INCLUDE "data/pokedex/entries/onix.asm"
DrowzeePokedexEntry:: INCLUDE "data/pokedex/entries/drowzee.asm"
HypnoPokedexEntry:: INCLUDE "data/pokedex/entries/hypno.asm"
KrabbyPokedexEntry:: INCLUDE "data/pokedex/entries/krabby.asm"
KinglerPokedexEntry:: INCLUDE "data/pokedex/entries/kingler.asm"
VoltorbPokedexEntry:: INCLUDE "data/pokedex/entries/voltorb.asm"
ElectrodePokedexEntry:: INCLUDE "data/pokedex/entries/electrode.asm"
ExeggcutePokedexEntry:: INCLUDE "data/pokedex/entries/exeggcute.asm"
ExeggutorPokedexEntry:: INCLUDE "data/pokedex/entries/exeggutor.asm"
CubonePokedexEntry:: INCLUDE "data/pokedex/entries/cubone.asm"
MarowakPokedexEntry:: INCLUDE "data/pokedex/entries/marowak.asm"
HitmonleePokedexEntry:: INCLUDE "data/pokedex/entries/hitmonlee.asm"
HitmonchanPokedexEntry:: INCLUDE "data/pokedex/entries/hitmonchan.asm"
LickitungPokedexEntry:: INCLUDE "data/pokedex/entries/lickitung.asm"
KoffingPokedexEntry:: INCLUDE "data/pokedex/entries/koffing.asm"
WeezingPokedexEntry:: INCLUDE "data/pokedex/entries/weezing.asm"
RhyhornPokedexEntry:: INCLUDE "data/pokedex/entries/rhyhorn.asm"
RhydonPokedexEntry:: INCLUDE "data/pokedex/entries/rhydon.asm"
ChanseyPokedexEntry:: INCLUDE "data/pokedex/entries/chansey.asm"
TangelaPokedexEntry:: INCLUDE "data/pokedex/entries/tangela.asm"
KangaskhanPokedexEntry:: INCLUDE "data/pokedex/entries/kangaskhan.asm"
HorseaPokedexEntry:: INCLUDE "data/pokedex/entries/horsea.asm"
SeadraPokedexEntry:: INCLUDE "data/pokedex/entries/seadra.asm"
GoldeenPokedexEntry:: INCLUDE "data/pokedex/entries/goldeen.asm"
SeakingPokedexEntry:: INCLUDE "data/pokedex/entries/seaking.asm"
StaryuPokedexEntry:: INCLUDE "data/pokedex/entries/staryu.asm"
StarmiePokedexEntry:: INCLUDE "data/pokedex/entries/starmie.asm"
MrMimePokedexEntry:: INCLUDE "data/pokedex/entries/mr__mime.asm"
ScytherPokedexEntry:: INCLUDE "data/pokedex/entries/scyther.asm"
JynxPokedexEntry:: INCLUDE "data/pokedex/entries/jynx.asm"
ElectabuzzPokedexEntry:: INCLUDE "data/pokedex/entries/electabuzz.asm"
MagmarPokedexEntry:: INCLUDE "data/pokedex/entries/magmar.asm"
PinsirPokedexEntry:: INCLUDE "data/pokedex/entries/pinsir.asm"
TaurosPokedexEntry:: INCLUDE "data/pokedex/entries/tauros.asm"
SECTION "Pokedex Entries 129-192", ROMX
PokedexEntries3::
INCLUDE "data/pokedex/entries_3.asm"
MagikarpPokedexEntry:: INCLUDE "data/pokedex/entries/magikarp.asm"
GyaradosPokedexEntry:: INCLUDE "data/pokedex/entries/gyarados.asm"
LaprasPokedexEntry:: INCLUDE "data/pokedex/entries/lapras.asm"
DittoPokedexEntry:: INCLUDE "data/pokedex/entries/ditto.asm"
EeveePokedexEntry:: INCLUDE "data/pokedex/entries/eevee.asm"
VaporeonPokedexEntry:: INCLUDE "data/pokedex/entries/vaporeon.asm"
JolteonPokedexEntry:: INCLUDE "data/pokedex/entries/jolteon.asm"
FlareonPokedexEntry:: INCLUDE "data/pokedex/entries/flareon.asm"
PorygonPokedexEntry:: INCLUDE "data/pokedex/entries/porygon.asm"
OmanytePokedexEntry:: INCLUDE "data/pokedex/entries/omanyte.asm"
OmastarPokedexEntry:: INCLUDE "data/pokedex/entries/omastar.asm"
KabutoPokedexEntry:: INCLUDE "data/pokedex/entries/kabuto.asm"
KabutopsPokedexEntry:: INCLUDE "data/pokedex/entries/kabutops.asm"
AerodactylPokedexEntry:: INCLUDE "data/pokedex/entries/aerodactyl.asm"
SnorlaxPokedexEntry:: INCLUDE "data/pokedex/entries/snorlax.asm"
ArticunoPokedexEntry:: INCLUDE "data/pokedex/entries/articuno.asm"
ZapdosPokedexEntry:: INCLUDE "data/pokedex/entries/zapdos.asm"
MoltresPokedexEntry:: INCLUDE "data/pokedex/entries/moltres.asm"
DratiniPokedexEntry:: INCLUDE "data/pokedex/entries/dratini.asm"
DragonairPokedexEntry:: INCLUDE "data/pokedex/entries/dragonair.asm"
DragonitePokedexEntry:: INCLUDE "data/pokedex/entries/dragonite.asm"
MewtwoPokedexEntry:: INCLUDE "data/pokedex/entries/mewtwo.asm"
MewPokedexEntry:: INCLUDE "data/pokedex/entries/mew.asm"
ChikoritaPokedexEntry:: INCLUDE "data/pokedex/entries/chikorita.asm"
BayleefPokedexEntry:: INCLUDE "data/pokedex/entries/bayleef.asm"
MeganiumPokedexEntry:: INCLUDE "data/pokedex/entries/meganium.asm"
CyndaquilPokedexEntry:: INCLUDE "data/pokedex/entries/cyndaquil.asm"
QuilavaPokedexEntry:: INCLUDE "data/pokedex/entries/quilava.asm"
TyphlosionPokedexEntry:: INCLUDE "data/pokedex/entries/typhlosion.asm"
TotodilePokedexEntry:: INCLUDE "data/pokedex/entries/totodile.asm"
CroconawPokedexEntry:: INCLUDE "data/pokedex/entries/croconaw.asm"
FeraligatrPokedexEntry:: INCLUDE "data/pokedex/entries/feraligatr.asm"
SentretPokedexEntry:: INCLUDE "data/pokedex/entries/sentret.asm"
FurretPokedexEntry:: INCLUDE "data/pokedex/entries/furret.asm"
HoothootPokedexEntry:: INCLUDE "data/pokedex/entries/hoothoot.asm"
NoctowlPokedexEntry:: INCLUDE "data/pokedex/entries/noctowl.asm"
LedybaPokedexEntry:: INCLUDE "data/pokedex/entries/ledyba.asm"
LedianPokedexEntry:: INCLUDE "data/pokedex/entries/ledian.asm"
SpinarakPokedexEntry:: INCLUDE "data/pokedex/entries/spinarak.asm"
AriadosPokedexEntry:: INCLUDE "data/pokedex/entries/ariados.asm"
CrobatPokedexEntry:: INCLUDE "data/pokedex/entries/crobat.asm"
ChinchouPokedexEntry:: INCLUDE "data/pokedex/entries/chinchou.asm"
LanturnPokedexEntry:: INCLUDE "data/pokedex/entries/lanturn.asm"
PichuPokedexEntry:: INCLUDE "data/pokedex/entries/pichu.asm"
CleffaPokedexEntry:: INCLUDE "data/pokedex/entries/cleffa.asm"
IgglybuffPokedexEntry:: INCLUDE "data/pokedex/entries/igglybuff.asm"
TogepiPokedexEntry:: INCLUDE "data/pokedex/entries/togepi.asm"
TogeticPokedexEntry:: INCLUDE "data/pokedex/entries/togetic.asm"
NatuPokedexEntry:: INCLUDE "data/pokedex/entries/natu.asm"
XatuPokedexEntry:: INCLUDE "data/pokedex/entries/xatu.asm"
MareepPokedexEntry:: INCLUDE "data/pokedex/entries/mareep.asm"
FlaaffyPokedexEntry:: INCLUDE "data/pokedex/entries/flaaffy.asm"
AmpharosPokedexEntry:: INCLUDE "data/pokedex/entries/ampharos.asm"
BellossomPokedexEntry:: INCLUDE "data/pokedex/entries/bellossom.asm"
MarillPokedexEntry:: INCLUDE "data/pokedex/entries/marill.asm"
AzumarillPokedexEntry:: INCLUDE "data/pokedex/entries/azumarill.asm"
SudowoodoPokedexEntry:: INCLUDE "data/pokedex/entries/sudowoodo.asm"
PolitoedPokedexEntry:: INCLUDE "data/pokedex/entries/politoed.asm"
HoppipPokedexEntry:: INCLUDE "data/pokedex/entries/hoppip.asm"
SkiploomPokedexEntry:: INCLUDE "data/pokedex/entries/skiploom.asm"
JumpluffPokedexEntry:: INCLUDE "data/pokedex/entries/jumpluff.asm"
AipomPokedexEntry:: INCLUDE "data/pokedex/entries/aipom.asm"
SunkernPokedexEntry:: INCLUDE "data/pokedex/entries/sunkern.asm"
SunfloraPokedexEntry:: INCLUDE "data/pokedex/entries/sunflora.asm"
SECTION "Pokedex Entries 193-251", ROMX
PokedexEntries4::
INCLUDE "data/pokedex/entries_4.asm"
YanmaPokedexEntry:: INCLUDE "data/pokedex/entries/yanma.asm"
WooperPokedexEntry:: INCLUDE "data/pokedex/entries/wooper.asm"
QuagsirePokedexEntry:: INCLUDE "data/pokedex/entries/quagsire.asm"
EspeonPokedexEntry:: INCLUDE "data/pokedex/entries/espeon.asm"
UmbreonPokedexEntry:: INCLUDE "data/pokedex/entries/umbreon.asm"
MurkrowPokedexEntry:: INCLUDE "data/pokedex/entries/murkrow.asm"
SlowkingPokedexEntry:: INCLUDE "data/pokedex/entries/slowking.asm"
MisdreavusPokedexEntry:: INCLUDE "data/pokedex/entries/misdreavus.asm"
UnownPokedexEntry:: INCLUDE "data/pokedex/entries/unown.asm"
WobbuffetPokedexEntry:: INCLUDE "data/pokedex/entries/wobbuffet.asm"
GirafarigPokedexEntry:: INCLUDE "data/pokedex/entries/girafarig.asm"
PinecoPokedexEntry:: INCLUDE "data/pokedex/entries/pineco.asm"
ForretressPokedexEntry:: INCLUDE "data/pokedex/entries/forretress.asm"
DunsparcePokedexEntry:: INCLUDE "data/pokedex/entries/dunsparce.asm"
GligarPokedexEntry:: INCLUDE "data/pokedex/entries/gligar.asm"
SteelixPokedexEntry:: INCLUDE "data/pokedex/entries/steelix.asm"
SnubbullPokedexEntry:: INCLUDE "data/pokedex/entries/snubbull.asm"
GranbullPokedexEntry:: INCLUDE "data/pokedex/entries/granbull.asm"
QwilfishPokedexEntry:: INCLUDE "data/pokedex/entries/qwilfish.asm"
ScizorPokedexEntry:: INCLUDE "data/pokedex/entries/scizor.asm"
ShucklePokedexEntry:: INCLUDE "data/pokedex/entries/shuckle.asm"
HeracrossPokedexEntry:: INCLUDE "data/pokedex/entries/heracross.asm"
SneaselPokedexEntry:: INCLUDE "data/pokedex/entries/sneasel.asm"
TeddiursaPokedexEntry:: INCLUDE "data/pokedex/entries/teddiursa.asm"
UrsaringPokedexEntry:: INCLUDE "data/pokedex/entries/ursaring.asm"
SlugmaPokedexEntry:: INCLUDE "data/pokedex/entries/slugma.asm"
MagcargoPokedexEntry:: INCLUDE "data/pokedex/entries/magcargo.asm"
SwinubPokedexEntry:: INCLUDE "data/pokedex/entries/swinub.asm"
PiloswinePokedexEntry:: INCLUDE "data/pokedex/entries/piloswine.asm"
CorsolaPokedexEntry:: INCLUDE "data/pokedex/entries/corsola.asm"
RemoraidPokedexEntry:: INCLUDE "data/pokedex/entries/remoraid.asm"
OctilleryPokedexEntry:: INCLUDE "data/pokedex/entries/octillery.asm"
DelibirdPokedexEntry:: INCLUDE "data/pokedex/entries/delibird.asm"
MantinePokedexEntry:: INCLUDE "data/pokedex/entries/mantine.asm"
SkarmoryPokedexEntry:: INCLUDE "data/pokedex/entries/skarmory.asm"
HoundourPokedexEntry:: INCLUDE "data/pokedex/entries/houndour.asm"
HoundoomPokedexEntry:: INCLUDE "data/pokedex/entries/houndoom.asm"
KingdraPokedexEntry:: INCLUDE "data/pokedex/entries/kingdra.asm"
PhanpyPokedexEntry:: INCLUDE "data/pokedex/entries/phanpy.asm"
DonphanPokedexEntry:: INCLUDE "data/pokedex/entries/donphan.asm"
Porygon2PokedexEntry:: INCLUDE "data/pokedex/entries/porygon2.asm"
StantlerPokedexEntry:: INCLUDE "data/pokedex/entries/stantler.asm"
SmearglePokedexEntry:: INCLUDE "data/pokedex/entries/smeargle.asm"
TyroguePokedexEntry:: INCLUDE "data/pokedex/entries/tyrogue.asm"
HitmontopPokedexEntry:: INCLUDE "data/pokedex/entries/hitmontop.asm"
SmoochumPokedexEntry:: INCLUDE "data/pokedex/entries/smoochum.asm"
ElekidPokedexEntry:: INCLUDE "data/pokedex/entries/elekid.asm"
MagbyPokedexEntry:: INCLUDE "data/pokedex/entries/magby.asm"
MiltankPokedexEntry:: INCLUDE "data/pokedex/entries/miltank.asm"
BlisseyPokedexEntry:: INCLUDE "data/pokedex/entries/blissey.asm"
RaikouPokedexEntry:: INCLUDE "data/pokedex/entries/raikou.asm"
EnteiPokedexEntry:: INCLUDE "data/pokedex/entries/entei.asm"
SuicunePokedexEntry:: INCLUDE "data/pokedex/entries/suicune.asm"
LarvitarPokedexEntry:: INCLUDE "data/pokedex/entries/larvitar.asm"
PupitarPokedexEntry:: INCLUDE "data/pokedex/entries/pupitar.asm"
TyranitarPokedexEntry:: INCLUDE "data/pokedex/entries/tyranitar.asm"
LugiaPokedexEntry:: INCLUDE "data/pokedex/entries/lugia.asm"
HoOhPokedexEntry:: INCLUDE "data/pokedex/entries/ho_oh.asm"
CelebiPokedexEntry:: INCLUDE "data/pokedex/entries/celebi.asm"

View File

@ -1,64 +0,0 @@
BulbasaurPokedexEntry:: INCLUDE "data/pokedex/entries/bulbasaur.asm"
IvysaurPokedexEntry:: INCLUDE "data/pokedex/entries/ivysaur.asm"
VenusaurPokedexEntry:: INCLUDE "data/pokedex/entries/venusaur.asm"
CharmanderPokedexEntry:: INCLUDE "data/pokedex/entries/charmander.asm"
CharmeleonPokedexEntry:: INCLUDE "data/pokedex/entries/charmeleon.asm"
CharizardPokedexEntry:: INCLUDE "data/pokedex/entries/charizard.asm"
SquirtlePokedexEntry:: INCLUDE "data/pokedex/entries/squirtle.asm"
WartortlePokedexEntry:: INCLUDE "data/pokedex/entries/wartortle.asm"
BlastoisePokedexEntry:: INCLUDE "data/pokedex/entries/blastoise.asm"
CaterpiePokedexEntry:: INCLUDE "data/pokedex/entries/caterpie.asm"
MetapodPokedexEntry:: INCLUDE "data/pokedex/entries/metapod.asm"
ButterfreePokedexEntry:: INCLUDE "data/pokedex/entries/butterfree.asm"
WeedlePokedexEntry:: INCLUDE "data/pokedex/entries/weedle.asm"
KakunaPokedexEntry:: INCLUDE "data/pokedex/entries/kakuna.asm"
BeedrillPokedexEntry:: INCLUDE "data/pokedex/entries/beedrill.asm"
PidgeyPokedexEntry:: INCLUDE "data/pokedex/entries/pidgey.asm"
PidgeottoPokedexEntry:: INCLUDE "data/pokedex/entries/pidgeotto.asm"
PidgeotPokedexEntry:: INCLUDE "data/pokedex/entries/pidgeot.asm"
RattataPokedexEntry:: INCLUDE "data/pokedex/entries/rattata.asm"
RaticatePokedexEntry:: INCLUDE "data/pokedex/entries/raticate.asm"
SpearowPokedexEntry:: INCLUDE "data/pokedex/entries/spearow.asm"
FearowPokedexEntry:: INCLUDE "data/pokedex/entries/fearow.asm"
EkansPokedexEntry:: INCLUDE "data/pokedex/entries/ekans.asm"
ArbokPokedexEntry:: INCLUDE "data/pokedex/entries/arbok.asm"
PikachuPokedexEntry:: INCLUDE "data/pokedex/entries/pikachu.asm"
RaichuPokedexEntry:: INCLUDE "data/pokedex/entries/raichu.asm"
SandshrewPokedexEntry:: INCLUDE "data/pokedex/entries/sandshrew.asm"
SandslashPokedexEntry:: INCLUDE "data/pokedex/entries/sandslash.asm"
NidoranFPokedexEntry:: INCLUDE "data/pokedex/entries/nidoran_f.asm"
NidorinaPokedexEntry:: INCLUDE "data/pokedex/entries/nidorina.asm"
NidoqueenPokedexEntry:: INCLUDE "data/pokedex/entries/nidoqueen.asm"
NidoranMPokedexEntry:: INCLUDE "data/pokedex/entries/nidoran_m.asm"
NidorinoPokedexEntry:: INCLUDE "data/pokedex/entries/nidorino.asm"
NidokingPokedexEntry:: INCLUDE "data/pokedex/entries/nidoking.asm"
ClefairyPokedexEntry:: INCLUDE "data/pokedex/entries/clefairy.asm"
ClefablePokedexEntry:: INCLUDE "data/pokedex/entries/clefable.asm"
VulpixPokedexEntry:: INCLUDE "data/pokedex/entries/vulpix.asm"
NinetalesPokedexEntry:: INCLUDE "data/pokedex/entries/ninetales.asm"
JigglypuffPokedexEntry:: INCLUDE "data/pokedex/entries/jigglypuff.asm"
WigglytuffPokedexEntry:: INCLUDE "data/pokedex/entries/wigglytuff.asm"
ZubatPokedexEntry:: INCLUDE "data/pokedex/entries/zubat.asm"
GolbatPokedexEntry:: INCLUDE "data/pokedex/entries/golbat.asm"
OddishPokedexEntry:: INCLUDE "data/pokedex/entries/oddish.asm"
GloomPokedexEntry:: INCLUDE "data/pokedex/entries/gloom.asm"
VileplumePokedexEntry:: INCLUDE "data/pokedex/entries/vileplume.asm"
ParasPokedexEntry:: INCLUDE "data/pokedex/entries/paras.asm"
ParasectPokedexEntry:: INCLUDE "data/pokedex/entries/parasect.asm"
VenonatPokedexEntry:: INCLUDE "data/pokedex/entries/venonat.asm"
VenomothPokedexEntry:: INCLUDE "data/pokedex/entries/venomoth.asm"
DiglettPokedexEntry:: INCLUDE "data/pokedex/entries/diglett.asm"
DugtrioPokedexEntry:: INCLUDE "data/pokedex/entries/dugtrio.asm"
MeowthPokedexEntry:: INCLUDE "data/pokedex/entries/meowth.asm"
PersianPokedexEntry:: INCLUDE "data/pokedex/entries/persian.asm"
PsyduckPokedexEntry:: INCLUDE "data/pokedex/entries/psyduck.asm"
GolduckPokedexEntry:: INCLUDE "data/pokedex/entries/golduck.asm"
MankeyPokedexEntry:: INCLUDE "data/pokedex/entries/mankey.asm"
PrimeapePokedexEntry:: INCLUDE "data/pokedex/entries/primeape.asm"
GrowlithePokedexEntry:: INCLUDE "data/pokedex/entries/growlithe.asm"
ArcaninePokedexEntry:: INCLUDE "data/pokedex/entries/arcanine.asm"
PoliwagPokedexEntry:: INCLUDE "data/pokedex/entries/poliwag.asm"
PoliwhirlPokedexEntry:: INCLUDE "data/pokedex/entries/poliwhirl.asm"
PoliwrathPokedexEntry:: INCLUDE "data/pokedex/entries/poliwrath.asm"
AbraPokedexEntry:: INCLUDE "data/pokedex/entries/abra.asm"
KadabraPokedexEntry:: INCLUDE "data/pokedex/entries/kadabra.asm"

View File

@ -1,64 +0,0 @@
AlakazamPokedexEntry:: INCLUDE "data/pokedex/entries/alakazam.asm"
MachopPokedexEntry:: INCLUDE "data/pokedex/entries/machop.asm"
MachokePokedexEntry:: INCLUDE "data/pokedex/entries/machoke.asm"
MachampPokedexEntry:: INCLUDE "data/pokedex/entries/machamp.asm"
BellsproutPokedexEntry:: INCLUDE "data/pokedex/entries/bellsprout.asm"
WeepinbellPokedexEntry:: INCLUDE "data/pokedex/entries/weepinbell.asm"
VictreebelPokedexEntry:: INCLUDE "data/pokedex/entries/victreebel.asm"
TentacoolPokedexEntry:: INCLUDE "data/pokedex/entries/tentacool.asm"
TentacruelPokedexEntry:: INCLUDE "data/pokedex/entries/tentacruel.asm"
GeodudePokedexEntry:: INCLUDE "data/pokedex/entries/geodude.asm"
GravelerPokedexEntry:: INCLUDE "data/pokedex/entries/graveler.asm"
GolemPokedexEntry:: INCLUDE "data/pokedex/entries/golem.asm"
PonytaPokedexEntry:: INCLUDE "data/pokedex/entries/ponyta.asm"
RapidashPokedexEntry:: INCLUDE "data/pokedex/entries/rapidash.asm"
SlowpokePokedexEntry:: INCLUDE "data/pokedex/entries/slowpoke.asm"
SlowbroPokedexEntry:: INCLUDE "data/pokedex/entries/slowbro.asm"
MagnemitePokedexEntry:: INCLUDE "data/pokedex/entries/magnemite.asm"
MagnetonPokedexEntry:: INCLUDE "data/pokedex/entries/magneton.asm"
FarfetchDPokedexEntry:: INCLUDE "data/pokedex/entries/farfetch_d.asm"
DoduoPokedexEntry:: INCLUDE "data/pokedex/entries/doduo.asm"
DodrioPokedexEntry:: INCLUDE "data/pokedex/entries/dodrio.asm"
SeelPokedexEntry:: INCLUDE "data/pokedex/entries/seel.asm"
DewgongPokedexEntry:: INCLUDE "data/pokedex/entries/dewgong.asm"
GrimerPokedexEntry:: INCLUDE "data/pokedex/entries/grimer.asm"
MukPokedexEntry:: INCLUDE "data/pokedex/entries/muk.asm"
ShellderPokedexEntry:: INCLUDE "data/pokedex/entries/shellder.asm"
CloysterPokedexEntry:: INCLUDE "data/pokedex/entries/cloyster.asm"
GastlyPokedexEntry:: INCLUDE "data/pokedex/entries/gastly.asm"
HaunterPokedexEntry:: INCLUDE "data/pokedex/entries/haunter.asm"
GengarPokedexEntry:: INCLUDE "data/pokedex/entries/gengar.asm"
OnixPokedexEntry:: INCLUDE "data/pokedex/entries/onix.asm"
DrowzeePokedexEntry:: INCLUDE "data/pokedex/entries/drowzee.asm"
HypnoPokedexEntry:: INCLUDE "data/pokedex/entries/hypno.asm"
KrabbyPokedexEntry:: INCLUDE "data/pokedex/entries/krabby.asm"
KinglerPokedexEntry:: INCLUDE "data/pokedex/entries/kingler.asm"
VoltorbPokedexEntry:: INCLUDE "data/pokedex/entries/voltorb.asm"
ElectrodePokedexEntry:: INCLUDE "data/pokedex/entries/electrode.asm"
ExeggcutePokedexEntry:: INCLUDE "data/pokedex/entries/exeggcute.asm"
ExeggutorPokedexEntry:: INCLUDE "data/pokedex/entries/exeggutor.asm"
CubonePokedexEntry:: INCLUDE "data/pokedex/entries/cubone.asm"
MarowakPokedexEntry:: INCLUDE "data/pokedex/entries/marowak.asm"
HitmonleePokedexEntry:: INCLUDE "data/pokedex/entries/hitmonlee.asm"
HitmonchanPokedexEntry:: INCLUDE "data/pokedex/entries/hitmonchan.asm"
LickitungPokedexEntry:: INCLUDE "data/pokedex/entries/lickitung.asm"
KoffingPokedexEntry:: INCLUDE "data/pokedex/entries/koffing.asm"
WeezingPokedexEntry:: INCLUDE "data/pokedex/entries/weezing.asm"
RhyhornPokedexEntry:: INCLUDE "data/pokedex/entries/rhyhorn.asm"
RhydonPokedexEntry:: INCLUDE "data/pokedex/entries/rhydon.asm"
ChanseyPokedexEntry:: INCLUDE "data/pokedex/entries/chansey.asm"
TangelaPokedexEntry:: INCLUDE "data/pokedex/entries/tangela.asm"
KangaskhanPokedexEntry:: INCLUDE "data/pokedex/entries/kangaskhan.asm"
HorseaPokedexEntry:: INCLUDE "data/pokedex/entries/horsea.asm"
SeadraPokedexEntry:: INCLUDE "data/pokedex/entries/seadra.asm"
GoldeenPokedexEntry:: INCLUDE "data/pokedex/entries/goldeen.asm"
SeakingPokedexEntry:: INCLUDE "data/pokedex/entries/seaking.asm"
StaryuPokedexEntry:: INCLUDE "data/pokedex/entries/staryu.asm"
StarmiePokedexEntry:: INCLUDE "data/pokedex/entries/starmie.asm"
MrMimePokedexEntry:: INCLUDE "data/pokedex/entries/mr__mime.asm"
ScytherPokedexEntry:: INCLUDE "data/pokedex/entries/scyther.asm"
JynxPokedexEntry:: INCLUDE "data/pokedex/entries/jynx.asm"
ElectabuzzPokedexEntry:: INCLUDE "data/pokedex/entries/electabuzz.asm"
MagmarPokedexEntry:: INCLUDE "data/pokedex/entries/magmar.asm"
PinsirPokedexEntry:: INCLUDE "data/pokedex/entries/pinsir.asm"
TaurosPokedexEntry:: INCLUDE "data/pokedex/entries/tauros.asm"

View File

@ -1,64 +0,0 @@
MagikarpPokedexEntry:: INCLUDE "data/pokedex/entries/magikarp.asm"
GyaradosPokedexEntry:: INCLUDE "data/pokedex/entries/gyarados.asm"
LaprasPokedexEntry:: INCLUDE "data/pokedex/entries/lapras.asm"
DittoPokedexEntry:: INCLUDE "data/pokedex/entries/ditto.asm"
EeveePokedexEntry:: INCLUDE "data/pokedex/entries/eevee.asm"
VaporeonPokedexEntry:: INCLUDE "data/pokedex/entries/vaporeon.asm"
JolteonPokedexEntry:: INCLUDE "data/pokedex/entries/jolteon.asm"
FlareonPokedexEntry:: INCLUDE "data/pokedex/entries/flareon.asm"
PorygonPokedexEntry:: INCLUDE "data/pokedex/entries/porygon.asm"
OmanytePokedexEntry:: INCLUDE "data/pokedex/entries/omanyte.asm"
OmastarPokedexEntry:: INCLUDE "data/pokedex/entries/omastar.asm"
KabutoPokedexEntry:: INCLUDE "data/pokedex/entries/kabuto.asm"
KabutopsPokedexEntry:: INCLUDE "data/pokedex/entries/kabutops.asm"
AerodactylPokedexEntry:: INCLUDE "data/pokedex/entries/aerodactyl.asm"
SnorlaxPokedexEntry:: INCLUDE "data/pokedex/entries/snorlax.asm"
ArticunoPokedexEntry:: INCLUDE "data/pokedex/entries/articuno.asm"
ZapdosPokedexEntry:: INCLUDE "data/pokedex/entries/zapdos.asm"
MoltresPokedexEntry:: INCLUDE "data/pokedex/entries/moltres.asm"
DratiniPokedexEntry:: INCLUDE "data/pokedex/entries/dratini.asm"
DragonairPokedexEntry:: INCLUDE "data/pokedex/entries/dragonair.asm"
DragonitePokedexEntry:: INCLUDE "data/pokedex/entries/dragonite.asm"
MewtwoPokedexEntry:: INCLUDE "data/pokedex/entries/mewtwo.asm"
MewPokedexEntry:: INCLUDE "data/pokedex/entries/mew.asm"
ChikoritaPokedexEntry:: INCLUDE "data/pokedex/entries/chikorita.asm"
BayleefPokedexEntry:: INCLUDE "data/pokedex/entries/bayleef.asm"
MeganiumPokedexEntry:: INCLUDE "data/pokedex/entries/meganium.asm"
CyndaquilPokedexEntry:: INCLUDE "data/pokedex/entries/cyndaquil.asm"
QuilavaPokedexEntry:: INCLUDE "data/pokedex/entries/quilava.asm"
TyphlosionPokedexEntry:: INCLUDE "data/pokedex/entries/typhlosion.asm"
TotodilePokedexEntry:: INCLUDE "data/pokedex/entries/totodile.asm"
CroconawPokedexEntry:: INCLUDE "data/pokedex/entries/croconaw.asm"
FeraligatrPokedexEntry:: INCLUDE "data/pokedex/entries/feraligatr.asm"
SentretPokedexEntry:: INCLUDE "data/pokedex/entries/sentret.asm"
FurretPokedexEntry:: INCLUDE "data/pokedex/entries/furret.asm"
HoothootPokedexEntry:: INCLUDE "data/pokedex/entries/hoothoot.asm"
NoctowlPokedexEntry:: INCLUDE "data/pokedex/entries/noctowl.asm"
LedybaPokedexEntry:: INCLUDE "data/pokedex/entries/ledyba.asm"
LedianPokedexEntry:: INCLUDE "data/pokedex/entries/ledian.asm"
SpinarakPokedexEntry:: INCLUDE "data/pokedex/entries/spinarak.asm"
AriadosPokedexEntry:: INCLUDE "data/pokedex/entries/ariados.asm"
CrobatPokedexEntry:: INCLUDE "data/pokedex/entries/crobat.asm"
ChinchouPokedexEntry:: INCLUDE "data/pokedex/entries/chinchou.asm"
LanturnPokedexEntry:: INCLUDE "data/pokedex/entries/lanturn.asm"
PichuPokedexEntry:: INCLUDE "data/pokedex/entries/pichu.asm"
CleffaPokedexEntry:: INCLUDE "data/pokedex/entries/cleffa.asm"
IgglybuffPokedexEntry:: INCLUDE "data/pokedex/entries/igglybuff.asm"
TogepiPokedexEntry:: INCLUDE "data/pokedex/entries/togepi.asm"
TogeticPokedexEntry:: INCLUDE "data/pokedex/entries/togetic.asm"
NatuPokedexEntry:: INCLUDE "data/pokedex/entries/natu.asm"
XatuPokedexEntry:: INCLUDE "data/pokedex/entries/xatu.asm"
MareepPokedexEntry:: INCLUDE "data/pokedex/entries/mareep.asm"
FlaaffyPokedexEntry:: INCLUDE "data/pokedex/entries/flaaffy.asm"
AmpharosPokedexEntry:: INCLUDE "data/pokedex/entries/ampharos.asm"
BellossomPokedexEntry:: INCLUDE "data/pokedex/entries/bellossom.asm"
MarillPokedexEntry:: INCLUDE "data/pokedex/entries/marill.asm"
AzumarillPokedexEntry:: INCLUDE "data/pokedex/entries/azumarill.asm"
SudowoodoPokedexEntry:: INCLUDE "data/pokedex/entries/sudowoodo.asm"
PolitoedPokedexEntry:: INCLUDE "data/pokedex/entries/politoed.asm"
HoppipPokedexEntry:: INCLUDE "data/pokedex/entries/hoppip.asm"
SkiploomPokedexEntry:: INCLUDE "data/pokedex/entries/skiploom.asm"
JumpluffPokedexEntry:: INCLUDE "data/pokedex/entries/jumpluff.asm"
AipomPokedexEntry:: INCLUDE "data/pokedex/entries/aipom.asm"
SunkernPokedexEntry:: INCLUDE "data/pokedex/entries/sunkern.asm"
SunfloraPokedexEntry:: INCLUDE "data/pokedex/entries/sunflora.asm"

View File

@ -1,59 +0,0 @@
YanmaPokedexEntry:: INCLUDE "data/pokedex/entries/yanma.asm"
WooperPokedexEntry:: INCLUDE "data/pokedex/entries/wooper.asm"
QuagsirePokedexEntry:: INCLUDE "data/pokedex/entries/quagsire.asm"
EspeonPokedexEntry:: INCLUDE "data/pokedex/entries/espeon.asm"
UmbreonPokedexEntry:: INCLUDE "data/pokedex/entries/umbreon.asm"
MurkrowPokedexEntry:: INCLUDE "data/pokedex/entries/murkrow.asm"
SlowkingPokedexEntry:: INCLUDE "data/pokedex/entries/slowking.asm"
MisdreavusPokedexEntry:: INCLUDE "data/pokedex/entries/misdreavus.asm"
UnownPokedexEntry:: INCLUDE "data/pokedex/entries/unown.asm"
WobbuffetPokedexEntry:: INCLUDE "data/pokedex/entries/wobbuffet.asm"
GirafarigPokedexEntry:: INCLUDE "data/pokedex/entries/girafarig.asm"
PinecoPokedexEntry:: INCLUDE "data/pokedex/entries/pineco.asm"
ForretressPokedexEntry:: INCLUDE "data/pokedex/entries/forretress.asm"
DunsparcePokedexEntry:: INCLUDE "data/pokedex/entries/dunsparce.asm"
GligarPokedexEntry:: INCLUDE "data/pokedex/entries/gligar.asm"
SteelixPokedexEntry:: INCLUDE "data/pokedex/entries/steelix.asm"
SnubbullPokedexEntry:: INCLUDE "data/pokedex/entries/snubbull.asm"
GranbullPokedexEntry:: INCLUDE "data/pokedex/entries/granbull.asm"
QwilfishPokedexEntry:: INCLUDE "data/pokedex/entries/qwilfish.asm"
ScizorPokedexEntry:: INCLUDE "data/pokedex/entries/scizor.asm"
ShucklePokedexEntry:: INCLUDE "data/pokedex/entries/shuckle.asm"
HeracrossPokedexEntry:: INCLUDE "data/pokedex/entries/heracross.asm"
SneaselPokedexEntry:: INCLUDE "data/pokedex/entries/sneasel.asm"
TeddiursaPokedexEntry:: INCLUDE "data/pokedex/entries/teddiursa.asm"
UrsaringPokedexEntry:: INCLUDE "data/pokedex/entries/ursaring.asm"
SlugmaPokedexEntry:: INCLUDE "data/pokedex/entries/slugma.asm"
MagcargoPokedexEntry:: INCLUDE "data/pokedex/entries/magcargo.asm"
SwinubPokedexEntry:: INCLUDE "data/pokedex/entries/swinub.asm"
PiloswinePokedexEntry:: INCLUDE "data/pokedex/entries/piloswine.asm"
CorsolaPokedexEntry:: INCLUDE "data/pokedex/entries/corsola.asm"
RemoraidPokedexEntry:: INCLUDE "data/pokedex/entries/remoraid.asm"
OctilleryPokedexEntry:: INCLUDE "data/pokedex/entries/octillery.asm"
DelibirdPokedexEntry:: INCLUDE "data/pokedex/entries/delibird.asm"
MantinePokedexEntry:: INCLUDE "data/pokedex/entries/mantine.asm"
SkarmoryPokedexEntry:: INCLUDE "data/pokedex/entries/skarmory.asm"
HoundourPokedexEntry:: INCLUDE "data/pokedex/entries/houndour.asm"
HoundoomPokedexEntry:: INCLUDE "data/pokedex/entries/houndoom.asm"
KingdraPokedexEntry:: INCLUDE "data/pokedex/entries/kingdra.asm"
PhanpyPokedexEntry:: INCLUDE "data/pokedex/entries/phanpy.asm"
DonphanPokedexEntry:: INCLUDE "data/pokedex/entries/donphan.asm"
Porygon2PokedexEntry:: INCLUDE "data/pokedex/entries/porygon2.asm"
StantlerPokedexEntry:: INCLUDE "data/pokedex/entries/stantler.asm"
SmearglePokedexEntry:: INCLUDE "data/pokedex/entries/smeargle.asm"
TyroguePokedexEntry:: INCLUDE "data/pokedex/entries/tyrogue.asm"
HitmontopPokedexEntry:: INCLUDE "data/pokedex/entries/hitmontop.asm"
SmoochumPokedexEntry:: INCLUDE "data/pokedex/entries/smoochum.asm"
ElekidPokedexEntry:: INCLUDE "data/pokedex/entries/elekid.asm"
MagbyPokedexEntry:: INCLUDE "data/pokedex/entries/magby.asm"
MiltankPokedexEntry:: INCLUDE "data/pokedex/entries/miltank.asm"
BlisseyPokedexEntry:: INCLUDE "data/pokedex/entries/blissey.asm"
RaikouPokedexEntry:: INCLUDE "data/pokedex/entries/raikou.asm"
EnteiPokedexEntry:: INCLUDE "data/pokedex/entries/entei.asm"
SuicunePokedexEntry:: INCLUDE "data/pokedex/entries/suicune.asm"
LarvitarPokedexEntry:: INCLUDE "data/pokedex/entries/larvitar.asm"
PupitarPokedexEntry:: INCLUDE "data/pokedex/entries/pupitar.asm"
TyranitarPokedexEntry:: INCLUDE "data/pokedex/entries/tyranitar.asm"
LugiaPokedexEntry:: INCLUDE "data/pokedex/entries/lugia.asm"
HoOhPokedexEntry:: INCLUDE "data/pokedex/entries/ho_oh.asm"
CelebiPokedexEntry:: INCLUDE "data/pokedex/entries/celebi.asm"

View File

@ -1,2 +0,0 @@
INCLUDE "pokecrystal.asm"
INCLUDE "data/pokedex/entries.asm"

View File

@ -1,77 +1,5 @@
GetDexEntryPointer: ; 44333
; return dex entry pointer b:de
push hl
ld hl, PokedexDataPointerTable
ld a, b
dec a
ld d, 0
ld e, a
add hl, de
add hl, de
ld e, [hl]
inc hl
ld d, [hl]
push de
rlca
rlca
and $3
ld hl, .PokedexEntryBanks
ld d, 0
ld e, a
add hl, de
ld b, [hl]
pop de
pop hl
ret
.PokedexEntryBanks: ; 44351
GLOBAL PokedexEntries1
GLOBAL PokedexEntries2
GLOBAL PokedexEntries3
GLOBAL PokedexEntries4
db BANK(PokedexEntries1)
db BANK(PokedexEntries2)
db BANK(PokedexEntries3)
db BANK(PokedexEntries4)
GetDexEntryPagePointer: ; 44355
call GetDexEntryPointer ; b:de
push hl
ld h, d
ld l, e
; skip species name
.loop1
ld a, b
call GetFarByte
inc hl
cp "@"
jr nz, .loop1
; skip height and weight
rept 4
inc hl
endr
; if c != 1: skip entry
dec c
jr z, .done
; skip entry
.loop2
ld a, b
call GetFarByte
inc hl
cp "@"
jr nz, .loop2
.done
ld d, h
ld e, l
pop hl
ret
PokedexDataPointerTable: ; 0x44378
; Pointers to all the Pokedex entries.
; entries correspond to constants/pokemon_constants.asm
dw BulbasaurPokedexEntry
dw IvysaurPokedexEntry
dw VenusaurPokedexEntry
@ -323,3 +251,4 @@ PokedexDataPointerTable: ; 0x44378
dw LugiaPokedexEntry
dw HoOhPokedexEntry
dw CelebiPokedexEntry
; 0x4456e

View File

@ -1,5 +1,6 @@
; Every Pokemon sorted alphabetically by name.
; Every Pokémon sorted alphabetically by name.
AlphabeticalPokedexOrder: ; 0x40c65
db ABRA
db AERODACTYL
db AIPOM
@ -251,3 +252,4 @@
db YANMA
db ZAPDOS
db ZUBAT
; 0x40d60

View File

@ -1,5 +1,6 @@
; Every Pokemon sorted in New Pokedex Order.
; Every Pokémon sorted in New Pokédex Order.
NewPokedexOrder: ; 0x40d60
db CHIKORITA
db BAYLEEF
db MEGANIUM
@ -251,3 +252,4 @@
db MEWTWO
db MEW
db CELEBI
; 0x40e5b

View File

@ -1,3 +1,4 @@
PokemonNames::
db "BULBASAUR@"
db "IVYSAUR@@@"
db "VENUSAUR@@"

41
data/spawn_points.asm Normal file
View File

@ -0,0 +1,41 @@
spawn: MACRO
; map, y, x
map \1
db \2, \3
ENDM
SpawnPoints: ; 0x152ab
; entries correspond to SPAWN_* constants
spawn KRISS_HOUSE_2F, 3, 3
spawn VIRIDIAN_POKECENTER_1F, 5, 3
spawn PALLET_TOWN, 5, 6
spawn VIRIDIAN_CITY, 23, 26
spawn PEWTER_CITY, 13, 26
spawn CERULEAN_CITY, 19, 22
spawn ROUTE_10_NORTH, 11, 2
spawn VERMILION_CITY, 9, 6
spawn LAVENDER_TOWN, 5, 6
spawn SAFFRON_CITY, 9, 30
spawn CELADON_CITY, 29, 10
spawn FUCHSIA_CITY, 19, 28
spawn CINNABAR_ISLAND, 11, 12
spawn ROUTE_23, 9, 6
spawn NEW_BARK_TOWN, 13, 6
spawn CHERRYGROVE_CITY, 29, 4
spawn VIOLET_CITY, 31, 26
spawn ROUTE_32, 11, 74
spawn AZALEA_TOWN, 15, 10
spawn CIANWOOD_CITY, 23, 44
spawn GOLDENROD_CITY, 15, 28
spawn OLIVINE_CITY, 13, 22
spawn ECRUTEAK_CITY, 23, 28
spawn MAHOGANY_TOWN, 15, 14
spawn LAKE_OF_RAGE, 21, 29
spawn BLACKTHORN_CITY, 21, 30
spawn SILVER_CAVE_OUTSIDE, 23, 20
spawn FAST_SHIP_CABINS_SW_SSW_NW, 6, 2
spawn N_A, -1, -1
; 1531f

499
data/sprite_anim_frames.asm Executable file
View File

@ -0,0 +1,499 @@
SpriteAnimFrameData: ; 8d6e6
; entries correspond to SPRITE_ANIM_FRAMESET_* constants
dw .Frameset_00
dw .Frameset_PartyMon
dw .Frameset_02
dw .Frameset_03
dw .Frameset_04
dw .Frameset_05
dw .Frameset_06
dw .Frameset_07
dw .Frameset_TextEntryCursor
dw .Frameset_09
dw .Frameset_GameFreakLogo
dw .Frameset_GSIntroStar
dw .Frameset_GSIntroSparkle
dw .Frameset_SlotsGolem
dw .Frameset_SlotsChansey
dw .Frameset_SlotsChansey2
dw .Frameset_SlotsEgg
dw .Frameset_RedWalk
dw .Frameset_StillCursor
dw .Frameset_TradePokeBall
dw .Frameset_TradePokeBall0
dw .Frameset_TradePoof
dw .Frameset_TradeTubeBulge
dw .Frameset_TrademonIcon
dw .Frameset_TrademonBubble
dw .Frameset_EvolutionBallOfLight
dw .Frameset_RadioTuningKnob
dw .Frameset_MagnetTrainRed
dw .Frameset_1c
dw .Frameset_Leaf
dw .Frameset_CutTree
dw .Frameset_EggCrack
dw .Frameset_EggHatch
dw .Frameset_21
dw .Frameset_22
dw .Frameset_23
dw .Frameset_24
dw .Frameset_HeadbuttTree
dw .Frameset_26
dw .Frameset_27
dw .Frameset_28
dw .Frameset_29
dw .Frameset_2a
dw .Frameset_2b
dw .Frameset_2c
dw .Frameset_BlueWalk
dw .Frameset_MagnetTrainBlue
dw .Frameset_2f
dw .Frameset_30
dw .Frameset_31
dw .Frameset_32
dw .Frameset_33
dw .Frameset_34
dw .Frameset_IntroSuicune
dw .Frameset_IntroSuicune2
dw .Frameset_IntroPichu
dw .Frameset_IntroWooper
dw .Frameset_IntroUnown1
dw .Frameset_IntroUnown2
dw .Frameset_IntroUnown3
dw .Frameset_IntroUnown4
dw .Frameset_IntroUnownF2
dw .Frameset_IntroSuicuneAway
dw .Frameset_IntroUnownF
dw .Frameset_CelebiLeft
dw .Frameset_CelebiRight
; 8d76a
.Frameset_00:
frame SPRITE_ANIM_FRAME_IDX_00, 32
endanim
.Frameset_PartyMon:
frame SPRITE_ANIM_FRAME_IDX_00, 8
frame SPRITE_ANIM_FRAME_IDX_01, 8
dorestart
.Frameset_02:
frame SPRITE_ANIM_FRAME_IDX_3D, 8
frame SPRITE_ANIM_FRAME_IDX_3E, 8
dorestart
.Frameset_03:
frame SPRITE_ANIM_FRAME_IDX_3F, 8
frame SPRITE_ANIM_FRAME_IDX_40, 8
dorestart
.Frameset_04:
frame SPRITE_ANIM_FRAME_IDX_00, 4
frame SPRITE_ANIM_FRAME_IDX_01, 4
dorestart
.Frameset_05:
frame SPRITE_ANIM_FRAME_IDX_3D, 4
frame SPRITE_ANIM_FRAME_IDX_3E, 4
dorestart
.Frameset_06:
frame SPRITE_ANIM_FRAME_IDX_3F, 4
frame SPRITE_ANIM_FRAME_IDX_40, 4
dorestart
.Frameset_RedWalk:
frame SPRITE_ANIM_FRAME_IDX_00, 8
frame SPRITE_ANIM_FRAME_IDX_01, 8
frame SPRITE_ANIM_FRAME_IDX_00, 8
frame SPRITE_ANIM_FRAME_IDX_01, 8, OAM_X_FLIP
dorestart
.Frameset_BlueWalk:
frame SPRITE_ANIM_FRAME_IDX_63, 8
frame SPRITE_ANIM_FRAME_IDX_64, 8
frame SPRITE_ANIM_FRAME_IDX_63, 8
frame SPRITE_ANIM_FRAME_IDX_64, 8, OAM_X_FLIP
dorestart
.Frameset_MagnetTrainBlue:
frame SPRITE_ANIM_FRAME_IDX_65, 8
frame SPRITE_ANIM_FRAME_IDX_66, 8
frame SPRITE_ANIM_FRAME_IDX_65, 8
frame SPRITE_ANIM_FRAME_IDX_66, 8, OAM_X_FLIP
dorestart
.Frameset_07:
frame SPRITE_ANIM_FRAME_IDX_1E, 1
frame SPRITE_ANIM_FRAME_IDX_1F, 1
dorestart
.Frameset_TextEntryCursor:
frame SPRITE_ANIM_FRAME_IDX_20, 1
dorepeat 1
dorestart
.Frameset_09:
frame SPRITE_ANIM_FRAME_IDX_21, 1
dorepeat 1
dorestart
.Frameset_GameFreakLogo:
frame SPRITE_ANIM_FRAME_IDX_81, 12
frame SPRITE_ANIM_FRAME_IDX_82, 1
frame SPRITE_ANIM_FRAME_IDX_83, 1
frame SPRITE_ANIM_FRAME_IDX_82, 4
frame SPRITE_ANIM_FRAME_IDX_81, 12
frame SPRITE_ANIM_FRAME_IDX_82, 12
frame SPRITE_ANIM_FRAME_IDX_83, 4
frame SPRITE_ANIM_FRAME_IDX_84, 32
frame SPRITE_ANIM_FRAME_IDX_85, 3
frame SPRITE_ANIM_FRAME_IDX_86, 3
frame SPRITE_ANIM_FRAME_IDX_87, 4
frame SPRITE_ANIM_FRAME_IDX_88, 4
frame SPRITE_ANIM_FRAME_IDX_89, 4
frame SPRITE_ANIM_FRAME_IDX_8A, 10
frame SPRITE_ANIM_FRAME_IDX_8B, 7
endanim
.Frameset_GSIntroStar:
frame SPRITE_ANIM_FRAME_IDX_23, 3
frame SPRITE_ANIM_FRAME_IDX_23, 3, OAM_Y_FLIP
dorestart
.Frameset_GSIntroSparkle:
frame SPRITE_ANIM_FRAME_IDX_24, 2
frame SPRITE_ANIM_FRAME_IDX_25, 2
frame SPRITE_ANIM_FRAME_IDX_26, 2
frame SPRITE_ANIM_FRAME_IDX_25, 2
dorestart
.Frameset_SlotsGolem:
frame SPRITE_ANIM_FRAME_IDX_27, 7
frame SPRITE_ANIM_FRAME_IDX_28, 7
frame SPRITE_ANIM_FRAME_IDX_27, 7, OAM_Y_FLIP
frame SPRITE_ANIM_FRAME_IDX_28, 7, OAM_X_FLIP
dorestart
.Frameset_SlotsChansey:
frame SPRITE_ANIM_FRAME_IDX_29, 7
frame SPRITE_ANIM_FRAME_IDX_2A, 7
frame SPRITE_ANIM_FRAME_IDX_29, 7
frame SPRITE_ANIM_FRAME_IDX_2B, 7
dorestart
.Frameset_SlotsChansey2:
frame SPRITE_ANIM_FRAME_IDX_29, 7
frame SPRITE_ANIM_FRAME_IDX_2C, 7
frame SPRITE_ANIM_FRAME_IDX_2D, 7
frame SPRITE_ANIM_FRAME_IDX_2C, 7
frame SPRITE_ANIM_FRAME_IDX_29, 7
endanim
.Frameset_SlotsEgg:
frame SPRITE_ANIM_FRAME_IDX_2E, 20
endanim
.Frameset_StillCursor:
frame SPRITE_ANIM_FRAME_IDX_2F, 32
endanim
.Frameset_TradePokeBall:
frame SPRITE_ANIM_FRAME_IDX_30, 32
endanim
.Frameset_TradePokeBall0:
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3, OAM_X_FLIP
dorestart
.Frameset_TradePoof:
frame SPRITE_ANIM_FRAME_IDX_32, 4
frame SPRITE_ANIM_FRAME_IDX_33, 4
frame SPRITE_ANIM_FRAME_IDX_34, 4
delanim
.Frameset_TradeTubeBulge:
frame SPRITE_ANIM_FRAME_IDX_35, 3
frame SPRITE_ANIM_FRAME_IDX_36, 3
dorestart
.Frameset_TrademonIcon:
frame SPRITE_ANIM_FRAME_IDX_37, 7
frame SPRITE_ANIM_FRAME_IDX_38, 7
dorestart
.Frameset_TrademonBubble:
frame SPRITE_ANIM_FRAME_IDX_39, 32
endanim
.Frameset_EvolutionBallOfLight:
frame SPRITE_ANIM_FRAME_IDX_3B, 2
frame SPRITE_ANIM_FRAME_IDX_3A, 2
frame SPRITE_ANIM_FRAME_IDX_3B, 2
endanim
.Frameset_RadioTuningKnob:
frame SPRITE_ANIM_FRAME_IDX_3C, 32
endanim
.Frameset_MagnetTrainRed:
frame SPRITE_ANIM_FRAME_IDX_41, 8
frame SPRITE_ANIM_FRAME_IDX_42, 8
frame SPRITE_ANIM_FRAME_IDX_41, 8
frame SPRITE_ANIM_FRAME_IDX_42, 8, OAM_X_FLIP
dorestart
; XXX
frame SPRITE_ANIM_FRAME_IDX_43, 8
frame SPRITE_ANIM_FRAME_IDX_44, 8
dorestart
; XXX
frame SPRITE_ANIM_FRAME_IDX_45, 8
frame SPRITE_ANIM_FRAME_IDX_46, 8
dorestart
; XXX
frame SPRITE_ANIM_FRAME_IDX_47, 8
frame SPRITE_ANIM_FRAME_IDX_48, 8
dorestart
; XXX
frame SPRITE_ANIM_FRAME_IDX_49, 1
frame SPRITE_ANIM_FRAME_IDX_49, 1, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_49, 1, OAM_X_FLIP, OAM_Y_FLIP
frame SPRITE_ANIM_FRAME_IDX_49, 1, OAM_Y_FLIP
dorestart
; XXX
frame SPRITE_ANIM_FRAME_IDX_4A, 32
endanim
; XXX
frame SPRITE_ANIM_FRAME_IDX_4B, 32
endanim
; XXX
frame SPRITE_ANIM_FRAME_IDX_4C, 32
endanim
; XXX
frame SPRITE_ANIM_FRAME_IDX_4D, 32
endanim
; XXX
frame SPRITE_ANIM_FRAME_IDX_4E, 3
dorepeat 3
dorestart
.Frameset_1c:
dorepeat 32
endanim
.Frameset_Leaf:
frame SPRITE_ANIM_FRAME_IDX_4F, 32
endanim
.Frameset_CutTree:
frame SPRITE_ANIM_FRAME_IDX_50, 2
frame SPRITE_ANIM_FRAME_IDX_51, 16
dorepeat 1
frame SPRITE_ANIM_FRAME_IDX_52, 1
dorepeat 1
frame SPRITE_ANIM_FRAME_IDX_53, 1
delanim
.Frameset_EggCrack:
frame SPRITE_ANIM_FRAME_IDX_54, 32
endanim
.Frameset_EggHatch:
frame SPRITE_ANIM_FRAME_IDX_55, 32
endanim
.Frameset_21:
frame SPRITE_ANIM_FRAME_IDX_55, 32, OAM_X_FLIP
endanim
.Frameset_22:
frame SPRITE_ANIM_FRAME_IDX_55, 32, OAM_Y_FLIP
endanim
.Frameset_23:
frame SPRITE_ANIM_FRAME_IDX_55, 32, OAM_X_FLIP, OAM_Y_FLIP
endanim
.Frameset_24:
frame SPRITE_ANIM_FRAME_IDX_56, 10
frame SPRITE_ANIM_FRAME_IDX_57, 9
frame SPRITE_ANIM_FRAME_IDX_58, 10
frame SPRITE_ANIM_FRAME_IDX_59, 10
frame SPRITE_ANIM_FRAME_IDX_58, 9
frame SPRITE_ANIM_FRAME_IDX_5A, 10
dorestart
.Frameset_HeadbuttTree:
frame SPRITE_ANIM_FRAME_IDX_50, 2
frame SPRITE_ANIM_FRAME_IDX_5B, 2
frame SPRITE_ANIM_FRAME_IDX_50, 2
frame SPRITE_ANIM_FRAME_IDX_5B, 2, OAM_X_FLIP
dorestart
.Frameset_26:
frame SPRITE_ANIM_FRAME_IDX_5C, 2
endanim
.Frameset_27:
frame SPRITE_ANIM_FRAME_IDX_5D, 2
endanim
.Frameset_28:
frame SPRITE_ANIM_FRAME_IDX_5E, 2
endanim
.Frameset_29:
frame SPRITE_ANIM_FRAME_IDX_5F, 2
endanim
.Frameset_2a:
frame SPRITE_ANIM_FRAME_IDX_60, 2
endanim
.Frameset_2b:
frame SPRITE_ANIM_FRAME_IDX_61, 2
endanim
.Frameset_2c:
frame SPRITE_ANIM_FRAME_IDX_62, 2
endanim
.Frameset_2f:
frame SPRITE_ANIM_FRAME_IDX_32, 3
frame SPRITE_ANIM_FRAME_IDX_33, 3
frame SPRITE_ANIM_FRAME_IDX_34, 3
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3, OAM_X_FLIP
endanim
.Frameset_30:
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_32, 3
frame SPRITE_ANIM_FRAME_IDX_33, 3
frame SPRITE_ANIM_FRAME_IDX_34, 3
delanim
.Frameset_31:
frame SPRITE_ANIM_FRAME_IDX_67, 3
frame SPRITE_ANIM_FRAME_IDX_68, 3
dorestart
.Frameset_32:
frame SPRITE_ANIM_FRAME_IDX_6C, 3
endanim
.Frameset_33:
frame SPRITE_ANIM_FRAME_IDX_6D, 3
endanim
.Frameset_34:
frame SPRITE_ANIM_FRAME_IDX_69, 2
frame SPRITE_ANIM_FRAME_IDX_6A, 2
frame SPRITE_ANIM_FRAME_IDX_6B, 2
delanim
.Frameset_IntroSuicune:
frame SPRITE_ANIM_FRAME_IDX_6E, 3
frame SPRITE_ANIM_FRAME_IDX_6F, 3
frame SPRITE_ANIM_FRAME_IDX_70, 3
frame SPRITE_ANIM_FRAME_IDX_71, 3
dorestart
.Frameset_IntroSuicune2:
frame SPRITE_ANIM_FRAME_IDX_71, 3
frame SPRITE_ANIM_FRAME_IDX_6E, 7
endanim
.Frameset_IntroPichu:
frame SPRITE_ANIM_FRAME_IDX_72, 32
frame SPRITE_ANIM_FRAME_IDX_73, 7
frame SPRITE_ANIM_FRAME_IDX_74, 7
endanim
.Frameset_IntroWooper:
frame SPRITE_ANIM_FRAME_IDX_75, 3
endanim
.Frameset_IntroUnown1:
frame SPRITE_ANIM_FRAME_IDX_76, 3
frame SPRITE_ANIM_FRAME_IDX_77, 3
frame SPRITE_ANIM_FRAME_IDX_78, 7
delanim
.Frameset_IntroUnown2:
frame SPRITE_ANIM_FRAME_IDX_76, 3, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_77, 3, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_78, 7, OAM_X_FLIP
delanim
.Frameset_IntroUnown3:
frame SPRITE_ANIM_FRAME_IDX_76, 3, OAM_Y_FLIP
frame SPRITE_ANIM_FRAME_IDX_77, 3, OAM_Y_FLIP
frame SPRITE_ANIM_FRAME_IDX_78, 7, OAM_Y_FLIP
delanim
.Frameset_IntroUnown4:
frame SPRITE_ANIM_FRAME_IDX_76, 3, OAM_X_FLIP, OAM_Y_FLIP
frame SPRITE_ANIM_FRAME_IDX_77, 3, OAM_X_FLIP, OAM_Y_FLIP
frame SPRITE_ANIM_FRAME_IDX_78, 7, OAM_X_FLIP, OAM_Y_FLIP
delanim
.Frameset_IntroUnownF2:
frame SPRITE_ANIM_FRAME_IDX_79, 3
frame SPRITE_ANIM_FRAME_IDX_7A, 3
frame SPRITE_ANIM_FRAME_IDX_7B, 3
frame SPRITE_ANIM_FRAME_IDX_7C, 7
frame SPRITE_ANIM_FRAME_IDX_7D, 7
endanim
.Frameset_IntroSuicuneAway:
frame SPRITE_ANIM_FRAME_IDX_7E, 3
endanim
.Frameset_IntroUnownF:
dorepeat 0
endanim
.Frameset_CelebiLeft:
frame SPRITE_ANIM_FRAME_IDX_7F, 8
frame SPRITE_ANIM_FRAME_IDX_80, 8
endanim
.Frameset_CelebiRight:
frame SPRITE_ANIM_FRAME_IDX_7F, 8, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_80, 8, OAM_X_FLIP
endanim
; 8d94d

514
data/sprite_engine.asm → data/sprite_anim_oam.asm Executable file → Normal file
View File

@ -1,503 +1,3 @@
SpriteAnimFrameData: ; 8d6e6
; entries correspond to SPRITE_ANIM_FRAMESET_* constants
dw .Frameset_00
dw .Frameset_PartyMon
dw .Frameset_02
dw .Frameset_03
dw .Frameset_04
dw .Frameset_05
dw .Frameset_06
dw .Frameset_07
dw .Frameset_TextEntryCursor
dw .Frameset_09
dw .Frameset_GameFreakLogo
dw .Frameset_GSIntroStar
dw .Frameset_GSIntroSparkle
dw .Frameset_SlotsGolem
dw .Frameset_SlotsChansey
dw .Frameset_SlotsChansey2
dw .Frameset_SlotsEgg
dw .Frameset_RedWalk
dw .Frameset_StillCursor
dw .Frameset_TradePokeBall
dw .Frameset_TradePokeBall0
dw .Frameset_TradePoof
dw .Frameset_TradeTubeBulge
dw .Frameset_TrademonIcon
dw .Frameset_TrademonBubble
dw .Frameset_EvolutionBallOfLight
dw .Frameset_RadioTuningKnob
dw .Frameset_MagnetTrainRed
dw .Frameset_1c
dw .Frameset_Leaf
dw .Frameset_CutTree
dw .Frameset_EggCrack
dw .Frameset_EggHatch
dw .Frameset_21
dw .Frameset_22
dw .Frameset_23
dw .Frameset_24
dw .Frameset_HeadbuttTree
dw .Frameset_26
dw .Frameset_27
dw .Frameset_28
dw .Frameset_29
dw .Frameset_2a
dw .Frameset_2b
dw .Frameset_2c
dw .Frameset_BlueWalk
dw .Frameset_MagnetTrainBlue
dw .Frameset_2f
dw .Frameset_30
dw .Frameset_31
dw .Frameset_32
dw .Frameset_33
dw .Frameset_34
dw .Frameset_IntroSuicune
dw .Frameset_IntroSuicune2
dw .Frameset_IntroPichu
dw .Frameset_IntroWooper
dw .Frameset_IntroUnown1
dw .Frameset_IntroUnown2
dw .Frameset_IntroUnown3
dw .Frameset_IntroUnown4
dw .Frameset_IntroUnownF2
dw .Frameset_IntroSuicuneAway
dw .Frameset_IntroUnownF
dw .Frameset_CelebiLeft
dw .Frameset_CelebiRight
; 8d76a
.Frameset_00:
frame SPRITE_ANIM_FRAME_IDX_00, 32
endanim
.Frameset_PartyMon:
frame SPRITE_ANIM_FRAME_IDX_00, 8
frame SPRITE_ANIM_FRAME_IDX_01, 8
dorestart
.Frameset_02:
frame SPRITE_ANIM_FRAME_IDX_3D, 8
frame SPRITE_ANIM_FRAME_IDX_3E, 8
dorestart
.Frameset_03:
frame SPRITE_ANIM_FRAME_IDX_3F, 8
frame SPRITE_ANIM_FRAME_IDX_40, 8
dorestart
.Frameset_04:
frame SPRITE_ANIM_FRAME_IDX_00, 4
frame SPRITE_ANIM_FRAME_IDX_01, 4
dorestart
.Frameset_05:
frame SPRITE_ANIM_FRAME_IDX_3D, 4
frame SPRITE_ANIM_FRAME_IDX_3E, 4
dorestart
.Frameset_06:
frame SPRITE_ANIM_FRAME_IDX_3F, 4
frame SPRITE_ANIM_FRAME_IDX_40, 4
dorestart
.Frameset_RedWalk:
frame SPRITE_ANIM_FRAME_IDX_00, 8
frame SPRITE_ANIM_FRAME_IDX_01, 8
frame SPRITE_ANIM_FRAME_IDX_00, 8
frame SPRITE_ANIM_FRAME_IDX_01, 8, OAM_X_FLIP
dorestart
.Frameset_BlueWalk:
frame SPRITE_ANIM_FRAME_IDX_63, 8
frame SPRITE_ANIM_FRAME_IDX_64, 8
frame SPRITE_ANIM_FRAME_IDX_63, 8
frame SPRITE_ANIM_FRAME_IDX_64, 8, OAM_X_FLIP
dorestart
.Frameset_MagnetTrainBlue:
frame SPRITE_ANIM_FRAME_IDX_65, 8
frame SPRITE_ANIM_FRAME_IDX_66, 8
frame SPRITE_ANIM_FRAME_IDX_65, 8
frame SPRITE_ANIM_FRAME_IDX_66, 8, OAM_X_FLIP
dorestart
.Frameset_07:
frame SPRITE_ANIM_FRAME_IDX_1E, 1
frame SPRITE_ANIM_FRAME_IDX_1F, 1
dorestart
.Frameset_TextEntryCursor:
frame SPRITE_ANIM_FRAME_IDX_20, 1
dorepeat 1
dorestart
.Frameset_09:
frame SPRITE_ANIM_FRAME_IDX_21, 1
dorepeat 1
dorestart
.Frameset_GameFreakLogo:
frame SPRITE_ANIM_FRAME_IDX_81, 12
frame SPRITE_ANIM_FRAME_IDX_82, 1
frame SPRITE_ANIM_FRAME_IDX_83, 1
frame SPRITE_ANIM_FRAME_IDX_82, 4
frame SPRITE_ANIM_FRAME_IDX_81, 12
frame SPRITE_ANIM_FRAME_IDX_82, 12
frame SPRITE_ANIM_FRAME_IDX_83, 4
frame SPRITE_ANIM_FRAME_IDX_84, 32
frame SPRITE_ANIM_FRAME_IDX_85, 3
frame SPRITE_ANIM_FRAME_IDX_86, 3
frame SPRITE_ANIM_FRAME_IDX_87, 4
frame SPRITE_ANIM_FRAME_IDX_88, 4
frame SPRITE_ANIM_FRAME_IDX_89, 4
frame SPRITE_ANIM_FRAME_IDX_8A, 10
frame SPRITE_ANIM_FRAME_IDX_8B, 7
endanim
.Frameset_GSIntroStar:
frame SPRITE_ANIM_FRAME_IDX_23, 3
frame SPRITE_ANIM_FRAME_IDX_23, 3, OAM_Y_FLIP
dorestart
.Frameset_GSIntroSparkle:
frame SPRITE_ANIM_FRAME_IDX_24, 2
frame SPRITE_ANIM_FRAME_IDX_25, 2
frame SPRITE_ANIM_FRAME_IDX_26, 2
frame SPRITE_ANIM_FRAME_IDX_25, 2
dorestart
.Frameset_SlotsGolem:
frame SPRITE_ANIM_FRAME_IDX_27, 7
frame SPRITE_ANIM_FRAME_IDX_28, 7
frame SPRITE_ANIM_FRAME_IDX_27, 7, OAM_Y_FLIP
frame SPRITE_ANIM_FRAME_IDX_28, 7, OAM_X_FLIP
dorestart
.Frameset_SlotsChansey:
frame SPRITE_ANIM_FRAME_IDX_29, 7
frame SPRITE_ANIM_FRAME_IDX_2A, 7
frame SPRITE_ANIM_FRAME_IDX_29, 7
frame SPRITE_ANIM_FRAME_IDX_2B, 7
dorestart
.Frameset_SlotsChansey2:
frame SPRITE_ANIM_FRAME_IDX_29, 7
frame SPRITE_ANIM_FRAME_IDX_2C, 7
frame SPRITE_ANIM_FRAME_IDX_2D, 7
frame SPRITE_ANIM_FRAME_IDX_2C, 7
frame SPRITE_ANIM_FRAME_IDX_29, 7
endanim
.Frameset_SlotsEgg:
frame SPRITE_ANIM_FRAME_IDX_2E, 20
endanim
.Frameset_StillCursor:
frame SPRITE_ANIM_FRAME_IDX_2F, 32
endanim
.Frameset_TradePokeBall:
frame SPRITE_ANIM_FRAME_IDX_30, 32
endanim
.Frameset_TradePokeBall0:
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3, OAM_X_FLIP
dorestart
.Frameset_TradePoof:
frame SPRITE_ANIM_FRAME_IDX_32, 4
frame SPRITE_ANIM_FRAME_IDX_33, 4
frame SPRITE_ANIM_FRAME_IDX_34, 4
delanim
.Frameset_TradeTubeBulge:
frame SPRITE_ANIM_FRAME_IDX_35, 3
frame SPRITE_ANIM_FRAME_IDX_36, 3
dorestart
.Frameset_TrademonIcon:
frame SPRITE_ANIM_FRAME_IDX_37, 7
frame SPRITE_ANIM_FRAME_IDX_38, 7
dorestart
.Frameset_TrademonBubble:
frame SPRITE_ANIM_FRAME_IDX_39, 32
endanim
.Frameset_EvolutionBallOfLight:
frame SPRITE_ANIM_FRAME_IDX_3B, 2
frame SPRITE_ANIM_FRAME_IDX_3A, 2
frame SPRITE_ANIM_FRAME_IDX_3B, 2
endanim
.Frameset_RadioTuningKnob:
frame SPRITE_ANIM_FRAME_IDX_3C, 32
endanim
.Frameset_MagnetTrainRed:
frame SPRITE_ANIM_FRAME_IDX_41, 8
frame SPRITE_ANIM_FRAME_IDX_42, 8
frame SPRITE_ANIM_FRAME_IDX_41, 8
frame SPRITE_ANIM_FRAME_IDX_42, 8, OAM_X_FLIP
dorestart
; XXX
frame SPRITE_ANIM_FRAME_IDX_43, 8
frame SPRITE_ANIM_FRAME_IDX_44, 8
dorestart
; XXX
frame SPRITE_ANIM_FRAME_IDX_45, 8
frame SPRITE_ANIM_FRAME_IDX_46, 8
dorestart
; XXX
frame SPRITE_ANIM_FRAME_IDX_47, 8
frame SPRITE_ANIM_FRAME_IDX_48, 8
dorestart
; XXX
frame SPRITE_ANIM_FRAME_IDX_49, 1
frame SPRITE_ANIM_FRAME_IDX_49, 1, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_49, 1, OAM_X_FLIP, OAM_Y_FLIP
frame SPRITE_ANIM_FRAME_IDX_49, 1, OAM_Y_FLIP
dorestart
; XXX
frame SPRITE_ANIM_FRAME_IDX_4A, 32
endanim
; XXX
frame SPRITE_ANIM_FRAME_IDX_4B, 32
endanim
; XXX
frame SPRITE_ANIM_FRAME_IDX_4C, 32
endanim
; XXX
frame SPRITE_ANIM_FRAME_IDX_4D, 32
endanim
; XXX
frame SPRITE_ANIM_FRAME_IDX_4E, 3
dorepeat 3
dorestart
.Frameset_1c:
dorepeat 32
endanim
.Frameset_Leaf:
frame SPRITE_ANIM_FRAME_IDX_4F, 32
endanim
.Frameset_CutTree:
frame SPRITE_ANIM_FRAME_IDX_50, 2
frame SPRITE_ANIM_FRAME_IDX_51, 16
dorepeat 1
frame SPRITE_ANIM_FRAME_IDX_52, 1
dorepeat 1
frame SPRITE_ANIM_FRAME_IDX_53, 1
delanim
.Frameset_EggCrack:
frame SPRITE_ANIM_FRAME_IDX_54, 32
endanim
.Frameset_EggHatch:
frame SPRITE_ANIM_FRAME_IDX_55, 32
endanim
.Frameset_21:
frame SPRITE_ANIM_FRAME_IDX_55, 32, OAM_X_FLIP
endanim
.Frameset_22:
frame SPRITE_ANIM_FRAME_IDX_55, 32, OAM_Y_FLIP
endanim
.Frameset_23:
frame SPRITE_ANIM_FRAME_IDX_55, 32, OAM_X_FLIP, OAM_Y_FLIP
endanim
.Frameset_24:
frame SPRITE_ANIM_FRAME_IDX_56, 10
frame SPRITE_ANIM_FRAME_IDX_57, 9
frame SPRITE_ANIM_FRAME_IDX_58, 10
frame SPRITE_ANIM_FRAME_IDX_59, 10
frame SPRITE_ANIM_FRAME_IDX_58, 9
frame SPRITE_ANIM_FRAME_IDX_5A, 10
dorestart
.Frameset_HeadbuttTree:
frame SPRITE_ANIM_FRAME_IDX_50, 2
frame SPRITE_ANIM_FRAME_IDX_5B, 2
frame SPRITE_ANIM_FRAME_IDX_50, 2
frame SPRITE_ANIM_FRAME_IDX_5B, 2, OAM_X_FLIP
dorestart
.Frameset_26:
frame SPRITE_ANIM_FRAME_IDX_5C, 2
endanim
.Frameset_27:
frame SPRITE_ANIM_FRAME_IDX_5D, 2
endanim
.Frameset_28:
frame SPRITE_ANIM_FRAME_IDX_5E, 2
endanim
.Frameset_29:
frame SPRITE_ANIM_FRAME_IDX_5F, 2
endanim
.Frameset_2a:
frame SPRITE_ANIM_FRAME_IDX_60, 2
endanim
.Frameset_2b:
frame SPRITE_ANIM_FRAME_IDX_61, 2
endanim
.Frameset_2c:
frame SPRITE_ANIM_FRAME_IDX_62, 2
endanim
.Frameset_2f:
frame SPRITE_ANIM_FRAME_IDX_32, 3
frame SPRITE_ANIM_FRAME_IDX_33, 3
frame SPRITE_ANIM_FRAME_IDX_34, 3
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3, OAM_X_FLIP
endanim
.Frameset_30:
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3
frame SPRITE_ANIM_FRAME_IDX_30, 3
frame SPRITE_ANIM_FRAME_IDX_31, 3, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_32, 3
frame SPRITE_ANIM_FRAME_IDX_33, 3
frame SPRITE_ANIM_FRAME_IDX_34, 3
delanim
.Frameset_31:
frame SPRITE_ANIM_FRAME_IDX_67, 3
frame SPRITE_ANIM_FRAME_IDX_68, 3
dorestart
.Frameset_32:
frame SPRITE_ANIM_FRAME_IDX_6C, 3
endanim
.Frameset_33:
frame SPRITE_ANIM_FRAME_IDX_6D, 3
endanim
.Frameset_34:
frame SPRITE_ANIM_FRAME_IDX_69, 2
frame SPRITE_ANIM_FRAME_IDX_6A, 2
frame SPRITE_ANIM_FRAME_IDX_6B, 2
delanim
.Frameset_IntroSuicune:
frame SPRITE_ANIM_FRAME_IDX_6E, 3
frame SPRITE_ANIM_FRAME_IDX_6F, 3
frame SPRITE_ANIM_FRAME_IDX_70, 3
frame SPRITE_ANIM_FRAME_IDX_71, 3
dorestart
.Frameset_IntroSuicune2:
frame SPRITE_ANIM_FRAME_IDX_71, 3
frame SPRITE_ANIM_FRAME_IDX_6E, 7
endanim
.Frameset_IntroPichu:
frame SPRITE_ANIM_FRAME_IDX_72, 32
frame SPRITE_ANIM_FRAME_IDX_73, 7
frame SPRITE_ANIM_FRAME_IDX_74, 7
endanim
.Frameset_IntroWooper:
frame SPRITE_ANIM_FRAME_IDX_75, 3
endanim
.Frameset_IntroUnown1:
frame SPRITE_ANIM_FRAME_IDX_76, 3
frame SPRITE_ANIM_FRAME_IDX_77, 3
frame SPRITE_ANIM_FRAME_IDX_78, 7
delanim
.Frameset_IntroUnown2:
frame SPRITE_ANIM_FRAME_IDX_76, 3, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_77, 3, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_78, 7, OAM_X_FLIP
delanim
.Frameset_IntroUnown3:
frame SPRITE_ANIM_FRAME_IDX_76, 3, OAM_Y_FLIP
frame SPRITE_ANIM_FRAME_IDX_77, 3, OAM_Y_FLIP
frame SPRITE_ANIM_FRAME_IDX_78, 7, OAM_Y_FLIP
delanim
.Frameset_IntroUnown4:
frame SPRITE_ANIM_FRAME_IDX_76, 3, OAM_X_FLIP, OAM_Y_FLIP
frame SPRITE_ANIM_FRAME_IDX_77, 3, OAM_X_FLIP, OAM_Y_FLIP
frame SPRITE_ANIM_FRAME_IDX_78, 7, OAM_X_FLIP, OAM_Y_FLIP
delanim
.Frameset_IntroUnownF2:
frame SPRITE_ANIM_FRAME_IDX_79, 3
frame SPRITE_ANIM_FRAME_IDX_7A, 3
frame SPRITE_ANIM_FRAME_IDX_7B, 3
frame SPRITE_ANIM_FRAME_IDX_7C, 7
frame SPRITE_ANIM_FRAME_IDX_7D, 7
endanim
.Frameset_IntroSuicuneAway:
frame SPRITE_ANIM_FRAME_IDX_7E, 3
endanim
.Frameset_IntroUnownF:
dorepeat 0
endanim
.Frameset_CelebiLeft:
frame SPRITE_ANIM_FRAME_IDX_7F, 8
frame SPRITE_ANIM_FRAME_IDX_80, 8
endanim
.Frameset_CelebiRight:
frame SPRITE_ANIM_FRAME_IDX_7F, 8, OAM_X_FLIP
frame SPRITE_ANIM_FRAME_IDX_80, 8, OAM_X_FLIP
endanim
; 8d94d
SpriteAnimOAMData: ; 8d94d
; entries correspond to SPRITE_ANIM_FRAME_IDX_* constants
; vtile offset, pointer
@ -1634,17 +1134,3 @@ SpriteAnimOAMData: ; 8d94d
dsprite 0, 0, 0, 4, $52, $01
dsprite 0, 0, 1, 4, $53, $01
; 8e706
BrokenStdGFXPointers: ; Broken 2bpp pointers
dbbw $80, $01, .deleted ; 128-tile 2bpp at 1:672a (inside Multiply)
dbbw $80, $01, .deleted
dbbw $80, $01, .deleted
dbbw $80, $01, .deleted
dbbw $10, $37, .deleted ; 16-tile 2bpp at 37:672a (within Tileset11GFX)
dbbw $10, $11, .deleted ; 16-tile 2bpp at 11:672a (empty data)
dbbw $10, $39, .deleted ; 16-tile 2bpp at 39:672a (empty data)
dbbw $10, $24, .deleted ; 16-tile 2bpp at 24:672a (inside Function926f7)
dbbw $10, $21, .deleted ; 16-tile 2bpp at 21:672a (inside Function8671c)
.deleted
; 8e72a (23:672a)

94
data/sprite_anim_seqs.asm Normal file
View File

@ -0,0 +1,94 @@
SpriteAnimSeqData: ; 8d1c4
; entries correspond to SPRITE_ANIM_INDEX_* constants
; frameset sequence, tile
; SPRITE_ANIM_INDEX_PARTY_MON
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_SEQ_PARTY_MON, $00
; SPRITE_ANIM_INDEX_01
db SPRITE_ANIM_FRAMESET_07, SPRITE_ANIM_SEQ_04, $00
; SPRITE_ANIM_INDEX_NAMING_SCREEN_CURSOR
db SPRITE_ANIM_FRAMESET_TEXT_ENTRY_CURSOR, SPRITE_ANIM_SEQ_NAMING_SCREEN_CURSOR, $05
; SPRITE_ANIM_INDEX_GAMEFREAK_LOGO
db SPRITE_ANIM_FRAMESET_GAMEFREAK_LOGO, SPRITE_ANIM_SEQ_GAMEFREAK_LOGO, $00
; SPRITE_ANIM_INDEX_GS_INTRO_STAR
db SPRITE_ANIM_FRAMESET_GS_INTRO_STAR, SPRITE_ANIM_SEQ_GS_INTRO_STAR, $06
; SPRITE_ANIM_INDEX_GS_INTRO_SPARKLE
db SPRITE_ANIM_FRAMESET_GS_INTRO_SPARKLE, SPRITE_ANIM_SEQ_GS_INTRO_SPARKLE, $06
; SPRITE_ANIM_INDEX_SLOTS_GOLEM
db SPRITE_ANIM_FRAMESET_SLOTS_GOLEM, SPRITE_ANIM_SEQ_SLOTS_GOLEM, $07
; SPRITE_ANIM_INDEX_SLOTS_CHANSEY
db SPRITE_ANIM_FRAMESET_SLOTS_CHANSEY, SPRITE_ANIM_SEQ_SLOTS_CHANSEY, $07
; SPRITE_ANIM_INDEX_SLOTS_EGG
db SPRITE_ANIM_FRAMESET_SLOTS_EGG, SPRITE_ANIM_SEQ_SLOTS_EGG, $07
; SPRITE_ANIM_INDEX_COMPOSE_MAIL_CURSOR
db SPRITE_ANIM_FRAMESET_TEXT_ENTRY_CURSOR, SPRITE_ANIM_SEQ_MAIL_CURSOR, $05
; SPRITE_ANIM_INDEX_RED_WALK
db SPRITE_ANIM_FRAMESET_RED_WALK, SPRITE_ANIM_SEQ_NULL, $00
; SPRITE_ANIM_INDEX_0B
db SPRITE_ANIM_FRAMESET_STILL_CURSOR, SPRITE_ANIM_SEQ_0D, $08
; SPRITE_ANIM_INDEX_DUMMY_GAME
db SPRITE_ANIM_FRAMESET_STILL_CURSOR, SPRITE_ANIM_SEQ_0E, $08
; SPRITE_ANIM_INDEX_0D
db SPRITE_ANIM_FRAMESET_STILL_CURSOR, SPRITE_ANIM_SEQ_0F, $08
; SPRITE_ANIM_INDEX_TRADE_POKE_BALL
db SPRITE_ANIM_FRAMESET_TRADE_POKE_BALL, SPRITE_ANIM_SEQ_TRADE_POKE_BALL, $00
; SPRITE_ANIM_INDEX_TRADE_POOF
db SPRITE_ANIM_FRAMESET_TRADE_POOF, SPRITE_ANIM_SEQ_NULL, $00
; SPRITE_ANIM_INDEX_TRADE_TUBE_BULGE
db SPRITE_ANIM_FRAMESET_TRADE_TUBE_BULGE, SPRITE_ANIM_SEQ_TRADE_TUBE_BULGE, $00
; SPRITE_ANIM_INDEX_TRADEMON_ICON
db SPRITE_ANIM_FRAMESET_TRADEMON_ICON, SPRITE_ANIM_SEQ_TRADEMON_IN_TUBE, $00
; SPRITE_ANIM_INDEX_TRADEMON_BUBBLE
db SPRITE_ANIM_FRAMESET_TRADEMON_BUBBLE, SPRITE_ANIM_SEQ_TRADEMON_IN_TUBE, $00
; SPRITE_ANIM_INDEX_EVOLUTION_BALL_OF_LIGHT
db SPRITE_ANIM_FRAMESET_EVOLUTION_BALL_OF_LIGHT, SPRITE_ANIM_SEQ_REVEAL_NEW_MON, $00
; SPRITE_ANIM_INDEX_RADIO_TUNING_KNOB
db SPRITE_ANIM_FRAMESET_RADIO_TUNING_KNOB, SPRITE_ANIM_SEQ_RADIO_TUNING_KNOB, $00
; SPRITE_ANIM_INDEX_MAGNET_TRAIN_RED
db SPRITE_ANIM_FRAMESET_MAGNET_TRAIN_RED, SPRITE_ANIM_SEQ_NULL, $00
; SPRITE_ANIM_INDEX_LEAF
db SPRITE_ANIM_FRAMESET_LEAF, SPRITE_ANIM_SEQ_CUT_LEAVES, $00
; SPRITE_ANIM_INDEX_CUT_TREE
db SPRITE_ANIM_FRAMESET_CUT_TREE, SPRITE_ANIM_SEQ_NULL, $00
; SPRITE_ANIM_INDEX_FLY_LEAF
db SPRITE_ANIM_FRAMESET_LEAF, SPRITE_ANIM_SEQ_FLY_LEAF, $00
; SPRITE_ANIM_INDEX_EGG_CRACK
db SPRITE_ANIM_FRAMESET_EGG_CRACK, SPRITE_ANIM_SEQ_NULL, $00
; SPRITE_ANIM_INDEX_1A
db SPRITE_ANIM_FRAMESET_24, SPRITE_ANIM_SEQ_19, $00
; SPRITE_ANIM_INDEX_HEADBUTT
db SPRITE_ANIM_FRAMESET_HEADBUTT, SPRITE_ANIM_SEQ_NULL, $00
; SPRITE_ANIM_INDEX_EGG_HATCH
db SPRITE_ANIM_FRAMESET_EGG_HATCH, SPRITE_ANIM_SEQ_REVEAL_NEW_MON, $00
; SPRITE_ANIM_INDEX_1D
db SPRITE_ANIM_FRAMESET_26, SPRITE_ANIM_SEQ_1A, $00
; SPRITE_ANIM_INDEX_BLUE_WALK
db SPRITE_ANIM_FRAMESET_BLUE_WALK, SPRITE_ANIM_SEQ_NULL, $00
; SPRITE_ANIM_INDEX_MAGNET_TRAIN_BLUE
db SPRITE_ANIM_FRAMESET_MAGNET_TRAIN_BLUE, SPRITE_ANIM_SEQ_NULL, $00
; SPRITE_ANIM_INDEX_20
db SPRITE_ANIM_FRAMESET_2F, SPRITE_ANIM_SEQ_NULL, $00
; SPRITE_ANIM_INDEX_21
db SPRITE_ANIM_FRAMESET_30, SPRITE_ANIM_SEQ_NULL, $00
; SPRITE_ANIM_INDEX_22
db SPRITE_ANIM_FRAMESET_31, SPRITE_ANIM_SEQ_NULL, $00
; SPRITE_ANIM_INDEX_23
db SPRITE_ANIM_FRAMESET_32, SPRITE_ANIM_SEQ_1B, $00
; SPRITE_ANIM_INDEX_24
db SPRITE_ANIM_FRAMESET_33, SPRITE_ANIM_SEQ_1C, $00
; SPRITE_ANIM_INDEX_25
db SPRITE_ANIM_FRAMESET_34, SPRITE_ANIM_SEQ_NULL, $00
; SPRITE_ANIM_INDEX_INTRO_SUICUNE
db SPRITE_ANIM_FRAMESET_INTRO_SUICUNE, SPRITE_ANIM_SEQ_INTRO_SUICUNE, $00
; SPRITE_ANIM_INDEX_INTRO_PICHU
db SPRITE_ANIM_FRAMESET_INTRO_PICHU, SPRITE_ANIM_SEQ_INTRO_PICHU_WOOPER, $00
; SPRITE_ANIM_INDEX_INTRO_WOOPER
db SPRITE_ANIM_FRAMESET_INTRO_WOOPER, SPRITE_ANIM_SEQ_INTRO_PICHU_WOOPER, $00
; SPRITE_ANIM_INDEX_INTRO_UNOWN
db SPRITE_ANIM_FRAMESET_INTRO_UNOWN_1, SPRITE_ANIM_SEQ_INTRO_UNOWN, $00
; SPRITE_ANIM_INDEX_INTRO_UNOWN_F
db SPRITE_ANIM_FRAMESET_INTRO_UNOWN_F, SPRITE_ANIM_SEQ_INTRO_UNOWN_F, $00
; SPRITE_ANIM_INDEX_INTRO_SUICUNE_AWAY
db SPRITE_ANIM_FRAMESET_INTRO_SUICUNE_AWAY, SPRITE_ANIM_SEQ_INTRO_SUICUNE_AWAY, $00
; SPRITE_ANIM_INDEX_CELEBI
db SPRITE_ANIM_FRAMESET_CELEBI_LEFT, SPRITE_ANIM_SEQ_NULL, $00 ; 2c
; 8d24b

38
data/sprite_mons.asm Normal file
View File

@ -0,0 +1,38 @@
SpriteMons: ; 14495
; entries correspond to SPRITE_* constants past SPRITE_POKEMON
db UNOWN
db GEODUDE
db GROWLITHE
db WEEDLE
db SHELLDER
db ODDISH
db GENGAR
db ZUBAT
db MAGIKARP
db SQUIRTLE
db TOGEPI
db BUTTERFREE
db DIGLETT
db POLIWAG
db PIKACHU
db CLEFAIRY
db CHARMANDER
db JYNX
db STARMIE
db BULBASAUR
db JIGGLYPUFF
db GRIMER
db EKANS
db PARAS
db TENTACOOL
db TAUROS
db MACHOP
db VOLTORB
db LAPRAS
db RHYDON
db MOLTRES
db SNORLAX
db GYARADOS
db LUGIA
db HO_OH
; 144b8

View File

@ -0,0 +1,19 @@
; Pokémon traded from RBY do not have held items, so GSC usually interprets the
; catch rate as an item. However, if the catch rate appears in this table, the
; item associated with the table entry is used instead.
TimeCapsule_CatchRateItems: ; 28785
db ITEM_19, LEFTOVERS
db ITEM_2D, BITTER_BERRY
db ITEM_32, GOLD_BERRY
db ITEM_5A, BERRY
db ITEM_64, BERRY
db ITEM_78, BERRY
db ITEM_87, BERRY
db ITEM_BE, BERRY
db ITEM_C3, BERRY
db ITEM_DC, BERRY
db ITEM_FA, BERRY
db -1, BERRY
db 0 ; end
; 2879e

View File

@ -0,0 +1,255 @@
Pokered_MonIndices: ; fb91c
db RHYDON
db KANGASKHAN
db NIDORAN_M
db CLEFAIRY
db SPEAROW
db VOLTORB
db NIDOKING
db SLOWBRO
db IVYSAUR
db EXEGGUTOR
db LICKITUNG
db EXEGGCUTE
db GRIMER
db GENGAR
db NIDORAN_F
db NIDOQUEEN
db CUBONE
db RHYHORN
db LAPRAS
db ARCANINE
db MEW
db GYARADOS
db SHELLDER
db TENTACOOL
db GASTLY
db SCYTHER
db STARYU
db BLASTOISE
db PINSIR
db TANGELA
db SCIZOR ; MISSINGNO.
db SHUCKLE ; MISSINGNO.
db GROWLITHE
db ONIX
db FEAROW
db PIDGEY
db SLOWPOKE
db KADABRA
db GRAVELER
db CHANSEY
db MACHOKE
db MR__MIME
db HITMONLEE
db HITMONCHAN
db ARBOK
db PARASECT
db PSYDUCK
db DROWZEE
db GOLEM
db HERACROSS ; MISSINGNO.
db MAGMAR
db HO_OH ; MISSINGNO.
db ELECTABUZZ
db MAGNETON
db KOFFING
db SNEASEL ; MISSINGNO.
db MANKEY
db SEEL
db DIGLETT
db TAUROS
db TEDDIURSA ; MISSINGNO.
db URSARING ; MISSINGNO.
db SLUGMA ; MISSINGNO.
db FARFETCH_D
db VENONAT
db DRAGONITE
db MAGCARGO ; MISSINGNO.
db SWINUB ; MISSINGNO.
db PILOSWINE ; MISSINGNO.
db DODUO
db POLIWAG
db JYNX
db MOLTRES
db ARTICUNO
db ZAPDOS
db DITTO
db MEOWTH
db KRABBY
db CORSOLA ; MISSINGNO.
db REMORAID ; MISSINGNO.
db OCTILLERY ; MISSINGNO.
db VULPIX
db NINETALES
db PIKACHU
db RAICHU
db DELIBIRD ; MISSINGNO.
db MANTINE ; MISSINGNO.
db DRATINI
db DRAGONAIR
db KABUTO
db KABUTOPS
db HORSEA
db SEADRA
db SKARMORY ; MISSINGNO.
db HOUNDOUR ; MISSINGNO.
db SANDSHREW
db SANDSLASH
db OMANYTE
db OMASTAR
db JIGGLYPUFF
db WIGGLYTUFF
db EEVEE
db FLAREON
db JOLTEON
db VAPOREON
db MACHOP
db ZUBAT
db EKANS
db PARAS
db POLIWHIRL
db POLIWRATH
db WEEDLE
db KAKUNA
db BEEDRILL
db HOUNDOOM ; MISSINGNO.
db DODRIO
db PRIMEAPE
db DUGTRIO
db VENOMOTH
db DEWGONG
db KINGDRA ; MISSINGNO.
db PHANPY ; MISSINGNO.
db CATERPIE
db METAPOD
db BUTTERFREE
db MACHAMP
db DONPHAN ; MISSINGNO.
db GOLDUCK
db HYPNO
db GOLBAT
db MEWTWO
db SNORLAX
db MAGIKARP
db PORYGON2 ; MISSINGNO.
db STANTLER ; MISSINGNO.
db MUK
db SMEARGLE ; MISSINGNO.
db KINGLER
db CLOYSTER
db TYROGUE ; MISSINGNO.
db ELECTRODE
db CLEFABLE
db WEEZING
db PERSIAN
db MAROWAK
db HITMONTOP ; MISSINGNO.
db HAUNTER
db ABRA
db ALAKAZAM
db PIDGEOTTO
db PIDGEOT
db STARMIE
db BULBASAUR
db VENUSAUR
db TENTACRUEL
db SMOOCHUM ; MISSINGNO.
db GOLDEEN
db SEAKING
db ELEKID ; MISSINGNO.
db MAGBY ; MISSINGNO.
db MILTANK ; MISSINGNO.
db BLISSEY ; MISSINGNO.
db PONYTA
db RAPIDASH
db RATTATA
db RATICATE
db NIDORINO
db NIDORINA
db GEODUDE
db PORYGON
db AERODACTYL
db RAIKOU ; MISSINGNO.
db MAGNEMITE
db ENTEI ; MISSINGNO.
db SUICUNE ; MISSINGNO.
db CHARMANDER
db SQUIRTLE
db CHARMELEON
db WARTORTLE
db CHARIZARD
db LARVITAR ; MISSINGNO.
db PUPITAR ; MISSINGNO. KABUTOPS FOSSIL
db TYRANITAR ; MISSINGNO. AERODACTYL FOSSIL
db LUGIA ; MISSINGNO. GHOST
db ODDISH
db GLOOM
db VILEPLUME
db BELLSPROUT
db WEEPINBELL
db VICTREEBEL
db CHIKORITA
db BAYLEEF
db MEGANIUM
db CYNDAQUIL
db QUILAVA
db TYPHLOSION
db TOTODILE
db CROCONAW
db FERALIGATR
db SENTRET
db FURRET
db HOOTHOOT
db NOCTOWL
db LEDYBA
db LEDIAN
db SPINARAK
db ARIADOS
db CROBAT
db CHINCHOU
db LANTURN
db PICHU
db CLEFFA
db IGGLYBUFF
db TOGEPI
db TOGETIC
db NATU
db XATU
db MAREEP
db FLAAFFY
db AMPHAROS
db BELLOSSOM
db MARILL
db AZUMARILL
db SUDOWOODO
db POLITOED
db HOPPIP
db SKIPLOOM
db JUMPLUFF
db AIPOM
db SUNKERN
db SUNFLORA
db YANMA
db WOOPER
db QUAGSIRE
db ESPEON
db UMBREON
db MURKROW
db SLOWKING
db MISDREAVUS
db UNOWN
db WOBBUFFET
db GIRAFARIG
db PINECO
db FORRETRESS
db DUNSPARCE
db GLIGAR
db STEELIX
db SNUBBULL
db GRANBULL
db QWILFISH
db WOBBUFFET
db WOBBUFFET
; fba18

View File

@ -0,0 +1,155 @@
; The original base Special stat for each Pokémon from Red/Blue
KantoMonSpecials: ; fb656
db 65 ; BULBASAUR
db 80 ; IVYSAUR
db 100 ; VENUSAUR
db 50 ; CHARMANDER
db 65 ; CHARMELEON
db 85 ; CHARIZARD
db 50 ; SQUIRTLE
db 65 ; WARTORTLE
db 85 ; BLASTOISE
db 20 ; CATERPIE
db 25 ; METAPOD
db 80 ; BUTTERFREE
db 20 ; WEEDLE
db 25 ; KAKUNA
db 45 ; BEEDRILL
db 35 ; PIDGEY
db 50 ; PIDGEOTTO
db 70 ; PIDGEOT
db 25 ; RATTATA
db 50 ; RATICATE
db 31 ; SPEAROW
db 61 ; FEAROW
db 40 ; EKANS
db 65 ; ARBOK
db 50 ; PIKACHU
db 90 ; RAICHU
db 30 ; SANDSHREW
db 55 ; SANDSLASH
db 40 ; NIDORAN_F
db 55 ; NIDORINA
db 75 ; NIDOQUEEN
db 40 ; NIDORAN_M
db 55 ; NIDORINO
db 75 ; NIDOKING
db 60 ; CLEFAIRY
db 85 ; CLEFABLE
db 65 ; VULPIX
db 100 ; NINETALES
db 25 ; JIGGLYPUFF
db 50 ; WIGGLYTUFF
db 40 ; ZUBAT
db 75 ; GOLBAT
db 75 ; ODDISH
db 85 ; GLOOM
db 100 ; VILEPLUME
db 55 ; PARAS
db 80 ; PARASECT
db 40 ; VENONAT
db 90 ; VENOMOTH
db 45 ; DIGLETT
db 70 ; DUGTRIO
db 40 ; MEOWTH
db 65 ; PERSIAN
db 50 ; PSYDUCK
db 80 ; GOLDUCK
db 35 ; MANKEY
db 60 ; PRIMEAPE
db 50 ; GROWLITHE
db 80 ; ARCANINE
db 40 ; POLIWAG
db 50 ; POLIWHIRL
db 70 ; POLIWRATH
db 105 ; ABRA
db 120 ; KADABRA
db 135 ; ALAKAZAM
db 35 ; MACHOP
db 50 ; MACHOKE
db 65 ; MACHAMP
db 70 ; BELLSPROUT
db 85 ; WEEPINBELL
db 100 ; VICTREEBEL
db 100 ; TENTACOOL
db 120 ; TENTACRUEL
db 30 ; GEODUDE
db 45 ; GRAVELER
db 55 ; GOLEM
db 65 ; PONYTA
db 80 ; RAPIDASH
db 40 ; SLOWPOKE
db 80 ; SLOWBRO
db 95 ; MAGNEMITE
db 120 ; MAGNETON
db 58 ; FARFETCH_D
db 35 ; DODUO
db 60 ; DODRIO
db 70 ; SEEL
db 95 ; DEWGONG
db 40 ; GRIMER
db 65 ; MUK
db 45 ; SHELLDER
db 85 ; CLOYSTER
db 100 ; GASTLY
db 115 ; HAUNTER
db 130 ; GENGAR
db 30 ; ONIX
db 90 ; DROWZEE
db 115 ; HYPNO
db 25 ; KRABBY
db 50 ; KINGLER
db 55 ; VOLTORB
db 80 ; ELECTRODE
db 60 ; EXEGGCUTE
db 125 ; EXEGGUTOR
db 40 ; CUBONE
db 50 ; MAROWAK
db 35 ; HITMONLEE
db 35 ; HITMONCHAN
db 60 ; LICKITUNG
db 60 ; KOFFING
db 85 ; WEEZING
db 30 ; RHYHORN
db 45 ; RHYDON
db 105 ; CHANSEY
db 100 ; TANGELA
db 40 ; KANGASKHAN
db 70 ; HORSEA
db 95 ; SEADRA
db 50 ; GOLDEEN
db 80 ; SEAKING
db 70 ; STARYU
db 100 ; STARMIE
db 100 ; MR__MIME
db 55 ; SCYTHER
db 95 ; JYNX
db 85 ; ELECTABUZZ
db 85 ; MAGMAR
db 55 ; PINSIR
db 70 ; TAUROS
db 20 ; MAGIKARP
db 100 ; GYARADOS
db 95 ; LAPRAS
db 48 ; DITTO
db 65 ; EEVEE
db 110 ; VAPOREON
db 110 ; JOLTEON
db 110 ; FLAREON
db 75 ; PORYGON
db 90 ; OMANYTE
db 115 ; OMASTAR
db 45 ; KABUTO
db 70 ; KABUTOPS
db 60 ; AERODACTYL
db 65 ; SNORLAX
db 125 ; ARTICUNO
db 125 ; ZAPDOS
db 125 ; MOLTRES
db 50 ; DRATINI
db 70 ; DRAGONAIR
db 100 ; DRAGONITE
db 154 ; MEWTWO
db 100 ; MEW
; fb6ed

69
data/tmhm_moves.asm Normal file
View File

@ -0,0 +1,69 @@
TMHMMoves: ; 1167a
; TMs
db DYNAMICPUNCH
db HEADBUTT
db CURSE
db ROLLOUT
db ROAR
db TOXIC
db ZAP_CANNON
db ROCK_SMASH
db PSYCH_UP
db HIDDEN_POWER
db SUNNY_DAY
db SWEET_SCENT
db SNORE
db BLIZZARD
db HYPER_BEAM
db ICY_WIND
db PROTECT
db RAIN_DANCE
db GIGA_DRAIN
db ENDURE
db FRUSTRATION
db SOLARBEAM
db IRON_TAIL
db DRAGONBREATH
db THUNDER
db EARTHQUAKE
db RETURN
db DIG
db PSYCHIC_M
db SHADOW_BALL
db MUD_SLAP
db DOUBLE_TEAM
db ICE_PUNCH
db SWAGGER
db SLEEP_TALK
db SLUDGE_BOMB
db SANDSTORM
db FIRE_BLAST
db SWIFT
db DEFENSE_CURL
db THUNDERPUNCH
db DREAM_EATER
db DETECT
db REST
db ATTRACT
db THIEF
db STEEL_WING
db FIRE_PUNCH
db FURY_CUTTER
db NIGHTMARE
; HMs
db CUT
db FLY
db SURF
db STRENGTH
db FLASH
db WHIRLPOOL
db WATERFALL
; Move tutor
db FLAMETHROWER
db THUNDERBOLT
db ICE_BEAM
db 0 ; end
; 116b7

View File

@ -0,0 +1,14 @@
ContestMons: ; 97d87
; %, species, min, max
db 20, CATERPIE, 7, 18
db 20, WEEDLE, 7, 18
db 10, METAPOD, 9, 18
db 10, KAKUNA, 9, 18
db 5, BUTTERFREE, 12, 15
db 5, BEEDRILL, 12, 15
db 10, VENONAT, 10, 16
db 10, PARAS, 10, 17
db 5, SCYTHER, 13, 14
db 5, PINSIR, 13, 14
db -1, VENOMOTH, 30, 40
; 97db3

View File

@ -1,5 +1,7 @@
; Johto Pokémon in grass
JohtoGrassWildMons: ; 0x2a5e9
map SPROUT_TOWER_2F
db 2 percent, 2 percent, 2 percent ; encounter rates: morn/day/nite
; morn

View File

@ -1,5 +1,7 @@
; Johto Pokémon in water
JohtoWaterWildMons: ; 0x2b11d
map RUINS_OF_ALPH_OUTSIDE
db 2 percent ; encounter rate
db 15, WOOPER

View File

@ -1,5 +1,7 @@
; Kanto Pokémon in grass
KantoGrassWildMons: ; 0x2b274
map DIGLETTS_CAVE
db 4 percent, 2 percent, 8 percent ; encounter rates: morn/day/nite
; morn

View File

@ -1,5 +1,7 @@
; Kanto Pokémon in water
KantoWaterWildMons: ; 0x2b7f7
map TOHJO_FALLS
db 4 percent ; encounter rate
db 20, GOLDEEN

Some files were not shown because too many files have changed in this diff Show More