mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2024-11-16 11:27:33 -08:00
Verify data table sizes with table_width and assert_table_length macros
This was discussed in #706 It also uncovered some off-by-one issues with defining some constants. A few structs now use rsreset/_RS to define their offset constants, as discussed in #739
This commit is contained in:
parent
9c17fb14c8
commit
40902ffe24
@ -1,4 +1,6 @@
|
||||
Cries:
|
||||
; entries correspond to CRY_* constants (see constants/cry_constants.asm)
|
||||
table_width 3, Cries
|
||||
dba Cry_Nidoran_M
|
||||
dba Cry_Nidoran_F
|
||||
dba Cry_Slowpoke
|
||||
@ -67,3 +69,4 @@ Cries:
|
||||
dba Cry_Aipom
|
||||
dba Cry_Dunsparce
|
||||
dba Cry_Donphan
|
||||
assert_table_length NUM_CRIES
|
||||
|
@ -2,6 +2,7 @@
|
||||
|
||||
Music:
|
||||
; entries correspond to MUSIC_* constants
|
||||
table_width 3, Music
|
||||
dba Music_Nothing
|
||||
dba Music_TitleScreen
|
||||
dba Music_Route1
|
||||
@ -106,3 +107,4 @@ Music:
|
||||
dba Music_SuicuneBattle
|
||||
dba Music_BattleTowerLobby
|
||||
dba Music_MobileCenter
|
||||
assert_table_length NUM_MUSIC_SONGS
|
||||
|
@ -1,5 +1,6 @@
|
||||
SFX:
|
||||
; entries correspond to SFX_* constants
|
||||
table_width 3, SFX
|
||||
dba Sfx_DexFanfare5079
|
||||
dba Sfx_Item
|
||||
dba Sfx_CaughtMon
|
||||
@ -208,3 +209,4 @@ SFX:
|
||||
dba Sfx_TwoPcBeeps
|
||||
dba Sfx_4NoteDitty
|
||||
dba Sfx_Twinkle
|
||||
assert_table_length NUM_SFX
|
||||
|
@ -12,7 +12,6 @@ INCLUDE "constants/text_constants.asm"
|
||||
INCLUDE "constants/audio_constants.asm"
|
||||
INCLUDE "constants/battle_anim_constants.asm"
|
||||
INCLUDE "constants/battle_constants.asm"
|
||||
INCLUDE "constants/battle_tower_constants.asm"
|
||||
INCLUDE "constants/collision_constants.asm"
|
||||
INCLUDE "constants/credits_constants.asm"
|
||||
INCLUDE "constants/cry_constants.asm"
|
||||
@ -50,3 +49,4 @@ INCLUDE "constants/tileset_constants.asm"
|
||||
INCLUDE "constants/trainer_constants.asm"
|
||||
INCLUDE "constants/trainer_data_constants.asm"
|
||||
INCLUDE "constants/type_constants.asm"
|
||||
INCLUDE "constants/battle_tower_constants.asm"
|
||||
|
@ -30,44 +30,45 @@ NUM_NOISE_CHANS EQU const_value - NUM_MUSIC_CHANS
|
||||
NUM_CHANNELS EQU const_value
|
||||
|
||||
; channel_struct members (see macros/wram.asm)
|
||||
CHANNEL_MUSIC_ID EQUS "(wChannel1MusicID - wChannel1)"
|
||||
CHANNEL_MUSIC_BANK EQUS "(wChannel1MusicBank - wChannel1)"
|
||||
CHANNEL_FLAGS1 EQUS "(wChannel1Flags1 - wChannel1)"
|
||||
CHANNEL_FLAGS2 EQUS "(wChannel1Flags2 - wChannel1)"
|
||||
CHANNEL_FLAGS3 EQUS "(wChannel1Flags3 - wChannel1)"
|
||||
CHANNEL_MUSIC_ADDRESS EQUS "(wChannel1MusicAddress - wChannel1)"
|
||||
CHANNEL_LAST_MUSIC_ADDRESS EQUS "(wChannel1LastMusicAddress - wChannel1)"
|
||||
CHANNEL_NOTE_FLAGS EQUS "(wChannel1NoteFlags - wChannel1)"
|
||||
CHANNEL_CONDITION EQUS "(wChannel1Condition - wChannel1)"
|
||||
CHANNEL_DUTY_CYCLE EQUS "(wChannel1DutyCycle - wChannel1)"
|
||||
CHANNEL_VOLUME_ENVELOPE EQUS "(wChannel1VolumeEnvelope - wChannel1)"
|
||||
CHANNEL_FREQUENCY EQUS "(wChannel1Frequency - wChannel1)"
|
||||
CHANNEL_PITCH EQUS "(wChannel1Pitch - wChannel1)"
|
||||
CHANNEL_OCTAVE EQUS "(wChannel1Octave - wChannel1)"
|
||||
CHANNEL_TRANSPOSITION EQUS "(wChannel1Transposition - wChannel1)"
|
||||
CHANNEL_NOTE_DURATION EQUS "(wChannel1NoteDuration - wChannel1)"
|
||||
CHANNEL_FIELD16 EQUS "(wChannel1Field16 - wChannel1)"
|
||||
CHANNEL_LOOP_COUNT EQUS "(wChannel1LoopCount - wChannel1)"
|
||||
CHANNEL_TEMPO EQUS "(wChannel1Tempo - wChannel1)"
|
||||
CHANNEL_TRACKS EQUS "(wChannel1Tracks - wChannel1)"
|
||||
CHANNEL_DUTY_CYCLE_PATTERN EQUS "(wChannel1DutyCyclePattern - wChannel1)"
|
||||
CHANNEL_VIBRATO_DELAY_COUNT EQUS "(wChannel1VibratoDelayCount - wChannel1)"
|
||||
CHANNEL_VIBRATO_DELAY EQUS "(wChannel1VibratoDelay - wChannel1)"
|
||||
CHANNEL_VIBRATO_EXTENT EQUS "(wChannel1VibratoExtent - wChannel1)"
|
||||
CHANNEL_VIBRATO_RATE EQUS "(wChannel1VibratoRate - wChannel1)"
|
||||
CHANNEL_PITCH_SLIDE_TARGET EQUS "(wChannel1PitchSlideTarget - wChannel1)"
|
||||
CHANNEL_PITCH_SLIDE_AMOUNT EQUS "(wChannel1PitchSlideAmount - wChannel1)"
|
||||
CHANNEL_PITCH_SLIDE_AMOUNT_FRACTION EQUS "(wChannel1PitchSlideAmountFraction - wChannel1)"
|
||||
CHANNEL_FIELD25 EQUS "(wChannel1Field25 - wChannel1)"
|
||||
CHANNEL_PITCH_OFFSET EQUS "(wChannel1PitchOffset - wChannel1)"
|
||||
CHANNEL_FIELD29 EQUS "(wChannel1Field29 - wChannel1)"
|
||||
CHANNEL_FIELD2A EQUS "(wChannel1Field2a - wChannel1)"
|
||||
CHANNEL_FIELD2C EQUS "(wChannel1Field2c - wChannel1)"
|
||||
CHANNEL_NOTE_LENGTH EQUS "(wChannel1NoteLength - wChannel1)"
|
||||
CHANNEL_FIELD2E EQUS "(wChannel1Field2e - wChannel1)"
|
||||
CHANNEL_FIELD2F EQUS "(wChannel1Field2f - wChannel1)"
|
||||
CHANNEL_FIELD30 EQUS "(wChannel1Field30 - wChannel1)"
|
||||
CHANNEL_STRUCT_LENGTH EQUS "(wChannel2 - wChannel1)"
|
||||
rsreset
|
||||
CHANNEL_MUSIC_ID rw
|
||||
CHANNEL_MUSIC_BANK rb
|
||||
CHANNEL_FLAGS1 rb
|
||||
CHANNEL_FLAGS2 rb
|
||||
CHANNEL_FLAGS3 rb
|
||||
CHANNEL_MUSIC_ADDRESS rw
|
||||
CHANNEL_LAST_MUSIC_ADDRESS rw 2
|
||||
CHANNEL_NOTE_FLAGS rb
|
||||
CHANNEL_CONDITION rb
|
||||
CHANNEL_DUTY_CYCLE rb
|
||||
CHANNEL_VOLUME_ENVELOPE rb
|
||||
CHANNEL_FREQUENCY rw
|
||||
CHANNEL_PITCH rb
|
||||
CHANNEL_OCTAVE rb
|
||||
CHANNEL_TRANSPOSITION rb
|
||||
CHANNEL_NOTE_DURATION rb
|
||||
CHANNEL_FIELD16 rb 2
|
||||
CHANNEL_LOOP_COUNT rb
|
||||
CHANNEL_TEMPO rw
|
||||
CHANNEL_TRACKS rb
|
||||
CHANNEL_DUTY_CYCLE_PATTERN rb
|
||||
CHANNEL_VIBRATO_DELAY_COUNT rb
|
||||
CHANNEL_VIBRATO_DELAY rb
|
||||
CHANNEL_VIBRATO_EXTENT rb
|
||||
CHANNEL_VIBRATO_RATE rb
|
||||
CHANNEL_PITCH_SLIDE_TARGET rw
|
||||
CHANNEL_PITCH_SLIDE_AMOUNT rb
|
||||
CHANNEL_PITCH_SLIDE_AMOUNT_FRACTION rb
|
||||
CHANNEL_FIELD25 rb 2
|
||||
CHANNEL_PITCH_OFFSET rw
|
||||
CHANNEL_FIELD29 rb
|
||||
CHANNEL_FIELD2A rw
|
||||
CHANNEL_FIELD2C rb
|
||||
CHANNEL_NOTE_LENGTH rb
|
||||
CHANNEL_FIELD2E rb
|
||||
CHANNEL_FIELD2F rb
|
||||
CHANNEL_FIELD30 rb 2
|
||||
CHANNEL_STRUCT_LENGTH EQU _RS
|
||||
|
||||
NOISE_CHAN_F EQU 2 ; bit set in CHAN5-CHAN7
|
||||
|
||||
|
@ -7,6 +7,7 @@
|
||||
const BATTLEANIMSTRUCT_FUNCTION
|
||||
const BATTLEANIMSTRUCT_PALETTE
|
||||
const BATTLEANIMSTRUCT_TILEID
|
||||
BATTLEANIMOBJ_LENGTH EQU const_value - 1 ; discount BATTLEANIMSTRUCT_INDEX
|
||||
const BATTLEANIMSTRUCT_XCOORD
|
||||
const BATTLEANIMSTRUCT_YCOORD
|
||||
const BATTLEANIMSTRUCT_XOFFSET
|
||||
@ -217,6 +218,7 @@ BATTLEANIM_BASE_TILE EQU 7 * 7 ; Maximum size of a pokemon picture
|
||||
const ANIM_OBJ_PLAYERHEAD_1ROW
|
||||
const ANIM_OBJ_ENEMYFEET_2ROW
|
||||
const ANIM_OBJ_PLAYERHEAD_2ROW
|
||||
NUM_ANIM_OBJS EQU const_value
|
||||
|
||||
; DoBattleAnimFrame arguments (see engine/battle_anims/functions.asm)
|
||||
const_def
|
||||
@ -300,6 +302,7 @@ BATTLEANIM_BASE_TILE EQU 7 * 7 ; Maximum size of a pokemon picture
|
||||
const BATTLEANIMFUNC_ANCIENT_POWER
|
||||
const BATTLEANIMFUNC_ROCK_SMASH
|
||||
const BATTLEANIMFUNC_COTTON
|
||||
NUM_BATTLEANIMFUNCS EQU const_value
|
||||
|
||||
; BattleAnimFrameData indexes (see data/battle_anims/framesets.asm)
|
||||
const_def
|
||||
@ -488,6 +491,7 @@ BATTLEANIM_BASE_TILE EQU 7 * 7 ; Maximum size of a pokemon picture
|
||||
const BATTLEANIMFRAMESET_B6
|
||||
const BATTLEANIMFRAMESET_B7
|
||||
const BATTLEANIMFRAMESET_B8
|
||||
NUM_BATTLEANIMFRAMESETS EQU const_value
|
||||
|
||||
; BattleAnimOAMData indexes (see data/battle_anims/oam.asm)
|
||||
const_def
|
||||
@ -707,6 +711,7 @@ BATTLEANIM_BASE_TILE EQU 7 * 7 ; Maximum size of a pokemon picture
|
||||
const BATTLEANIMOAMSET_D5
|
||||
const BATTLEANIMOAMSET_D6
|
||||
const BATTLEANIMOAMSET_D7
|
||||
NUM_BATTLEANIMOAMSETS EQU const_value
|
||||
|
||||
; BattleBGEffects indexes (see engine/battle_anims/bg_effects.asm)
|
||||
const_def 1
|
||||
@ -763,6 +768,7 @@ BATTLEANIM_BASE_TILE EQU 7 * 7 ; Maximum size of a pokemon picture
|
||||
const ANIM_BG_VIBRATE_MON
|
||||
const ANIM_BG_WOBBLE_PLAYER
|
||||
const ANIM_BG_WOBBLE_SCREEN
|
||||
NUM_ANIM_BGS EQU const_value - 1
|
||||
|
||||
; wBattleAnimTileDict keys (see wram.asm)
|
||||
; AnimObjGFX indexes (see data/battle_anims/object_gfx.asm)
|
||||
@ -808,6 +814,7 @@ BATTLEANIM_BASE_TILE EQU 7 * 7 ; Maximum size of a pokemon picture
|
||||
const ANIM_GFX_AEROBLAST
|
||||
const ANIM_GFX_PLAYERHEAD
|
||||
const ANIM_GFX_ENEMYFEET
|
||||
NUM_ANIM_GFX EQU const_value - 1
|
||||
|
||||
; battle_bg_effect struct members (see macros/wram.asm)
|
||||
const_def
|
||||
|
@ -120,6 +120,7 @@ SPDSPCDV_SHINY EQU $AA
|
||||
const BATTLE_VARS_LAST_COUNTER_MOVE_OPP
|
||||
const BATTLE_VARS_LAST_MOVE
|
||||
const BATTLE_VARS_LAST_MOVE_OPP
|
||||
NUM_BATTLE_VARS EQU const_value
|
||||
|
||||
; BattleVarLocations indexes (see home/battle.asm)
|
||||
const_def
|
||||
@ -149,6 +150,8 @@ SPDSPCDV_SHINY EQU $AA
|
||||
const ENEMY_COUNTER_MOVE
|
||||
const PLAYER_LAST_MOVE
|
||||
const ENEMY_LAST_MOVE
|
||||
assert const_value % 2 == 0
|
||||
NUM_BATTLE_VAR_LOCATION_PAIRS EQU const_value / 2
|
||||
|
||||
; status condition bit flags
|
||||
SLP EQU %111 ; 0-7 turns
|
||||
|
@ -5,7 +5,7 @@ BATTLETOWER_NUM_UNIQUE_MON EQU 21
|
||||
BATTLETOWER_NUM_UNIQUE_TRAINERS EQU 70
|
||||
|
||||
BATTLETOWER_TRAINERDATALENGTH EQU $24
|
||||
BATTLE_TOWER_STRUCT_LENGTH EQUS "(NAME_LENGTH + BATTLETOWER_PARTY_LENGTH * NICKNAMED_MON_STRUCT_LENGTH + BATTLETOWER_TRAINERDATALENGTH)"
|
||||
BATTLE_TOWER_STRUCT_LENGTH EQU NAME_LENGTH + BATTLETOWER_PARTY_LENGTH * NICKNAMED_MON_STRUCT_LENGTH + BATTLETOWER_TRAINERDATALENGTH
|
||||
|
||||
; BattleTowerAction setval arguments (see engine/events/battle_tower/battle_tower.asm)
|
||||
const_def
|
||||
|
@ -103,6 +103,7 @@
|
||||
const US_COORDINATION
|
||||
const TEXT_TRANSLATION
|
||||
const PAAD_TESTING
|
||||
NUM_CREDITS_STRINGS EQU const_value
|
||||
|
||||
; CreditsScript indexes (see data/credits_script.asm)
|
||||
const_def -1, -1
|
||||
|
@ -72,3 +72,5 @@
|
||||
const CRY_AIPOM
|
||||
const CRY_DUNSPARCE
|
||||
const CRY_DONPHAN
|
||||
|
||||
NUM_CRIES EQU const_value
|
||||
|
@ -1,3 +1,13 @@
|
||||
; decoration attributes
|
||||
const_def
|
||||
const DECOATTR_TYPE
|
||||
const DECOATTR_NAME
|
||||
const DECOATTR_ACTION
|
||||
const DECOATTR_EVENT_FLAG
|
||||
const_skip ; high DECOATTR_EVENT_FLAG byte
|
||||
const DECOATTR_SPRITE
|
||||
DECOATTR_STRUCT_LENGTH EQU const_value
|
||||
|
||||
; decoration types
|
||||
const_def 1
|
||||
const DECO_PLANT
|
||||
@ -6,6 +16,7 @@
|
||||
const DECO_POSTER
|
||||
const DECO_DOLL
|
||||
const DECO_BIGDOLL
|
||||
NUM_DECO_TYPES EQU const_value - 1
|
||||
|
||||
; DecorationNames indexes (see data/decorations/names.asm)
|
||||
const_def 1
|
||||
@ -51,8 +62,7 @@
|
||||
const PUT_AWAY_BIG_DOLL
|
||||
const SET_UP_DOLL
|
||||
const PUT_AWAY_DOLL
|
||||
const SET_UP_ORNAMENT
|
||||
const PUT_AWAY_ORNAMENT
|
||||
NUM_DECO_ACTIONS EQU const_value - 1
|
||||
|
||||
__deco_value__ = 0
|
||||
|
||||
@ -127,3 +137,4 @@ NUM_NON_TROPHY_DECOS EQU __deco_value__
|
||||
deco GOLD_TROPHY_DOLL
|
||||
deco SILVER_TROPHY_DOLL
|
||||
NUM_DECOS EQU __deco_value__
|
||||
NUM_DECO_CATEGORIES EQU const_value - 1 - NUM_DECOS
|
||||
|
@ -6,7 +6,7 @@ NUM_PAL_COLORS EQU 4
|
||||
PAL_COLOR_SIZE EQU 2
|
||||
PALETTE_SIZE EQU NUM_PAL_COLORS * PAL_COLOR_SIZE
|
||||
|
||||
PALRGB_WHITE EQUS "palred 31 + palgreen 31 + palblue 31" ; $7fff
|
||||
PALRGB_WHITE EQU palred 31 + palgreen 31 + palblue 31 ; $7fff
|
||||
|
||||
SCREEN_WIDTH EQU 20 ; tiles
|
||||
SCREEN_HEIGHT EQU 18 ; tiles
|
||||
|
@ -39,6 +39,7 @@
|
||||
const ICON_SLOWPOKE
|
||||
const ICON_SUDOWOODO
|
||||
const ICON_BIGMON
|
||||
NUM_ICONS EQU const_value - 1
|
||||
|
||||
; LoadMenuMonIcon.Jumptable indexes (see engine/gfx/mon_icons.asm)
|
||||
const_def
|
||||
|
@ -196,6 +196,7 @@
|
||||
const MUSIC_MAIL ; bc
|
||||
const MIRAGE_MAIL ; bd
|
||||
const ITEM_BE ; be
|
||||
NUM_ITEMS EQU const_value - 1
|
||||
|
||||
__tmhm_value__ = 1
|
||||
|
||||
|
@ -1,6 +1,5 @@
|
||||
; Landmarks indexes (see data/maps/landmarks.asm)
|
||||
const_def
|
||||
|
||||
; Johto landmarks
|
||||
const LANDMARK_SPECIAL ; 00
|
||||
const LANDMARK_NEW_BARK_TOWN ; 01
|
||||
@ -49,7 +48,6 @@
|
||||
const LANDMARK_DARK_CAVE ; 2c
|
||||
const LANDMARK_ROUTE_46 ; 2d
|
||||
const LANDMARK_SILVER_CAVE ; 2e
|
||||
|
||||
KANTO_LANDMARK EQU const_value
|
||||
const LANDMARK_PALLET_TOWN ; 2f
|
||||
const LANDMARK_ROUTE_1 ; 30
|
||||
@ -100,6 +98,7 @@ KANTO_LANDMARK EQU const_value
|
||||
const LANDMARK_TOHJO_FALLS ; 5d
|
||||
const LANDMARK_ROUTE_28 ; 5e
|
||||
const LANDMARK_FAST_SHIP ; 5f
|
||||
NUM_LANDMARKS EQU const_value
|
||||
|
||||
; used in CaughtData
|
||||
const_def $7f, -1
|
||||
|
@ -50,6 +50,7 @@ NUM_MAP_PALETTES EQU const_value
|
||||
const FISHGROUP_QWILFISH
|
||||
const FISHGROUP_REMORAID
|
||||
const FISHGROUP_QWILFISH_NO_SWARM
|
||||
NUM_FISHGROUPS EQU const_value - 1
|
||||
|
||||
; connection directions (see data/maps/data.asm)
|
||||
const_def
|
||||
@ -66,8 +67,7 @@ NUM_MAP_PALETTES EQU const_value
|
||||
shift_const NORTH
|
||||
|
||||
; SpawnPoints indexes (see data/maps/spawn_points.asm)
|
||||
const_def -1
|
||||
const SPAWN_N_A
|
||||
const_def
|
||||
const SPAWN_HOME
|
||||
const SPAWN_DEBUG
|
||||
; kanto
|
||||
@ -100,6 +100,8 @@ NUM_MAP_PALETTES EQU const_value
|
||||
const SPAWN_FAST_SHIP
|
||||
NUM_SPAWNS EQU const_value
|
||||
|
||||
SPAWN_N_A EQU -1
|
||||
|
||||
; Flypoints indexes (see data/maps/flypoints.asm)
|
||||
const_def
|
||||
; johto
|
||||
|
@ -199,6 +199,7 @@ NUM_SPRITEMOVEDATA EQU const_value
|
||||
const SPRITEMOVEFN_SPIN_COUNTERCLOCKWISE ; 19
|
||||
const SPRITEMOVEFN_BOULDERDUST ; 1a
|
||||
const SPRITEMOVEFN_GRASS ; 1b
|
||||
NUM_SPRITEMOVEFN EQU const_value
|
||||
|
||||
; StepTypesJumptable indexes (see engine/overworld/map_objects.asm)
|
||||
const_def
|
||||
@ -228,6 +229,7 @@ NUM_SPRITEMOVEDATA EQU const_value
|
||||
const STEP_TYPE_17 ; 17
|
||||
const STEP_TYPE_DELETE ; 18
|
||||
const STEP_TYPE_SKYFALL_TOP ; 19
|
||||
NUM_STEP_TYPES EQU const_value
|
||||
|
||||
; ObjectActionPairPointers indexes (see engine/overworld/map_object_action.asm)
|
||||
const_def
|
||||
@ -248,6 +250,7 @@ NUM_SPRITEMOVEDATA EQU const_value
|
||||
const OBJECT_ACTION_BOULDER_DUST ; 0e
|
||||
const OBJECT_ACTION_GRASS_SHAKE ; 0f
|
||||
const OBJECT_ACTION_SKYFALL ; 10
|
||||
NUM_OBJECT_ACTIONS EQU const_value
|
||||
|
||||
; Facings indexes (see data/sprites/facings.asm)
|
||||
const_def
|
||||
@ -283,6 +286,7 @@ NUM_SPRITEMOVEDATA EQU const_value
|
||||
const FACING_BOULDER_DUST_2 ; 1d
|
||||
const FACING_GRASS_1 ; 1e
|
||||
const FACING_GRASS_2 ; 1f
|
||||
NUM_FACINGS EQU const_value
|
||||
|
||||
; DoPlayerMovement.DoStep arguments (see engine/overworld/player_movement.asm)
|
||||
const_def
|
||||
@ -294,3 +298,4 @@ NUM_SPRITEMOVEDATA EQU const_value
|
||||
const STEP_TURN ; 5
|
||||
const STEP_BACK_LEDGE ; 6
|
||||
const STEP_WALK_IN_PLACE ; 7
|
||||
NUM_STEPS EQU const_value
|
||||
|
@ -63,6 +63,7 @@
|
||||
const MONMENUITEM_MOVE ; 19
|
||||
const MONMENUITEM_MAIL ; 20
|
||||
const MONMENUITEM_ERROR ; 21
|
||||
NUM_MONMENUITEMS EQU const_value - 1
|
||||
|
||||
; MonMenuOptions categories
|
||||
MONMENU_FIELD_MOVE EQU 0
|
||||
@ -86,6 +87,7 @@ HMENURETURN_ASM EQU %11111111
|
||||
const PARTYMENUACTION_GIVE_MON_FEMALE ; unused
|
||||
const PARTYMENUACTION_GIVE_ITEM
|
||||
const PARTYMENUACTION_MOBILE ; mobile
|
||||
NUM_PARTYMENUACTIONS EQU const_value
|
||||
; PrintPartyMenuActionText arguments (see engine/pokemon/party_menu.asm)
|
||||
const_next $f0
|
||||
const PARTYMENUTEXT_HEAL_PSN
|
||||
|
@ -285,6 +285,7 @@ NUM_ATTACKS EQU const_value - 1
|
||||
const ANIM_WOBBLE ; 113
|
||||
const ANIM_SHAKE ; 114
|
||||
const ANIM_HIT_CONFUSION ; 115
|
||||
NUM_BATTLE_ANIMS EQU const_value - 1
|
||||
|
||||
; wNumHits uses offsets from ANIM_MISS
|
||||
const_def
|
||||
|
@ -157,3 +157,4 @@
|
||||
const EFFECT_BEAT_UP
|
||||
const EFFECT_FLY
|
||||
const EFFECT_DEFENSE_CURL
|
||||
NUM_MOVE_EFECTS EQU const_value
|
||||
|
@ -107,6 +107,7 @@
|
||||
const MUSIC_SUICUNE_BATTLE ; 64
|
||||
const MUSIC_BATTLE_TOWER_LOBBY ; 65
|
||||
const MUSIC_MOBILE_CENTER ; 66
|
||||
NUM_MUSIC_SONGS EQU const_value
|
||||
|
||||
; GetMapMusic picks music for this value (see home/map.asm)
|
||||
MUSIC_MAHOGANY_MART EQU $64
|
||||
|
@ -1,14 +1,16 @@
|
||||
; npctrade struct members (see data/events/npc_trades.asm)
|
||||
NPCTRADE_DIALOG EQU 0 ; db
|
||||
NPCTRADE_GIVEMON EQU 1 ; db
|
||||
NPCTRADE_GETMON EQU 2 ; db
|
||||
NPCTRADE_NICK EQU 3 ; ds MON_NAME_LENGTH
|
||||
NPCTRADE_DVS EQU 14 ; dw
|
||||
NPCTRADE_ITEM EQU 16 ; db
|
||||
NPCTRADE_OT_ID EQU 17 ; dw
|
||||
NPCTRADE_OT_NAME EQU 19 ; ds NAME_LENGTH
|
||||
NPCTRADE_GENDER EQU 30 ; db
|
||||
NPCTRADE_PADDING EQU 31 ; db
|
||||
rsreset
|
||||
NPCTRADE_DIALOG rb
|
||||
NPCTRADE_GIVEMON rb
|
||||
NPCTRADE_GETMON rb
|
||||
NPCTRADE_NICK rb MON_NAME_LENGTH
|
||||
NPCTRADE_DVS rw
|
||||
NPCTRADE_ITEM rb
|
||||
NPCTRADE_OT_ID rw
|
||||
NPCTRADE_OT_NAME rb NAME_LENGTH
|
||||
NPCTRADE_GENDER rb
|
||||
NPCTRADE_PADDING rb
|
||||
NPCTRADE_STRUCT_LENGTH EQU _RS
|
||||
|
||||
; NPCTrades indexes (see data/events/npc_trades.asm)
|
||||
const_def
|
||||
|
@ -38,6 +38,7 @@
|
||||
const PHONE_HIKER_PARRY
|
||||
const PHONE_PICNICKER_ERIN
|
||||
const PHONE_BUENA
|
||||
NUM_PHONE_CONTACTS EQU const_value - 1
|
||||
|
||||
; SpecialPhoneCallList indexes (see data/phone/special_calls.asm)
|
||||
const_def
|
||||
@ -50,6 +51,8 @@
|
||||
const SPECIALCALL_BIKESHOP
|
||||
const SPECIALCALL_WORRIED
|
||||
const SPECIALCALL_MASTERBALL
|
||||
NUM_SPECIALCALLS EQU const_value - 1
|
||||
SPECIALCALL_SIZE EQU 6
|
||||
|
||||
; phone struct members
|
||||
const_def
|
||||
|
@ -1,30 +1,35 @@
|
||||
; base data struct members (see data/pokemon/base_stats/*.asm)
|
||||
BASE_DEX_NO EQUS "(wBaseDexNo - wCurBaseData)"
|
||||
BASE_STATS EQUS "(wBaseStats - wCurBaseData)"
|
||||
BASE_HP EQUS "(wBaseHP - wCurBaseData)"
|
||||
BASE_ATK EQUS "(wBaseAttack - wCurBaseData)"
|
||||
BASE_SPD EQUS "(wBaseSpeed - wCurBaseData)"
|
||||
BASE_SAT EQUS "(wBaseSpecialAttack - wCurBaseData)"
|
||||
BASE_SDF EQUS "(wBaseSpecialDefense - wCurBaseData)"
|
||||
BASE_TYPES EQUS "(wBaseType - wCurBaseData)"
|
||||
BASE_TYPE_1 EQUS "(wBaseType1 - wCurBaseData)"
|
||||
BASE_TYPE_2 EQUS "(wBaseType2 - wCurBaseData)"
|
||||
BASE_CATCH_RATE EQUS "(wBaseCatchRate - wCurBaseData)"
|
||||
BASE_EXP EQUS "(wBaseExp - wCurBaseData)"
|
||||
BASE_ITEMS EQUS "(wBaseItems - wCurBaseData)"
|
||||
BASE_ITEM_1 EQUS "(wBaseItem1 - wCurBaseData)"
|
||||
BASE_ITEM_2 EQUS "(wBaseItem2 - wCurBaseData)"
|
||||
BASE_GENDER EQUS "(wBaseGender - wCurBaseData)"
|
||||
BASE_UNKNOWN_1 EQUS "(wBaseUnknown1 - wCurBaseData)"
|
||||
BASE_EGG_STEPS EQUS "(wBaseEggSteps - wCurBaseData)"
|
||||
BASE_UNKNOWN_2 EQUS "(wBaseUnknown2 - wCurBaseData)"
|
||||
BASE_PIC_SIZE EQUS "(wBasePicSize - wCurBaseData)"
|
||||
BASE_FRONTPIC EQUS "(wBaseUnusedFrontpic - wCurBaseData)"
|
||||
BASE_BACKPIC EQUS "(wBaseUnusedBackpic - wCurBaseData)"
|
||||
BASE_GROWTH_RATE EQUS "(wBaseGrowthRate - wCurBaseData)"
|
||||
BASE_EGG_GROUPS EQUS "(wBaseEggGroups - wCurBaseData)"
|
||||
BASE_TMHM EQUS "(wBaseTMHM - wCurBaseData)"
|
||||
BASE_DATA_SIZE EQUS "(wCurBaseDataEnd - wCurBaseData)"
|
||||
rsreset
|
||||
BASE_DEX_NO rb
|
||||
BASE_STATS rb NUM_STATS
|
||||
rsset BASE_STATS
|
||||
BASE_HP rb
|
||||
BASE_ATK rb
|
||||
BASE_DEF rb
|
||||
BASE_SPD rb
|
||||
BASE_SAT rb
|
||||
BASE_SDF rb
|
||||
BASE_TYPES rw
|
||||
rsset BASE_TYPES
|
||||
BASE_TYPE_1 rb
|
||||
BASE_TYPE_2 rb
|
||||
BASE_CATCH_RATE rb
|
||||
BASE_EXP rb
|
||||
BASE_ITEMS rw
|
||||
rsset BASE_ITEMS
|
||||
BASE_ITEM_1 rb
|
||||
BASE_ITEM_2 rb
|
||||
BASE_GENDER rb
|
||||
BASE_UNKNOWN_1 rb
|
||||
BASE_EGG_STEPS rb
|
||||
BASE_UNKNOWN_2 rb
|
||||
BASE_PIC_SIZE rb
|
||||
BASE_FRONTPIC rw
|
||||
BASE_BACKPIC rw
|
||||
BASE_GROWTH_RATE rb
|
||||
BASE_EGG_GROUPS rb
|
||||
BASE_TMHM rb (NUM_TM_HM_TUTOR + 7) / 8
|
||||
BASE_DATA_SIZE EQU _RS
|
||||
|
||||
; gender ratio constants
|
||||
GENDER_F0 EQU 0 percent
|
||||
@ -67,39 +72,43 @@ GENDER_UNKNOWN EQU -1
|
||||
NUM_DEX_ENTRY_BANKS EQU 4
|
||||
|
||||
; party_struct members (see macros/wram.asm)
|
||||
MON_SPECIES EQUS "(wPartyMon1Species - wPartyMon1)"
|
||||
MON_ITEM EQUS "(wPartyMon1Item - wPartyMon1)"
|
||||
MON_MOVES EQUS "(wPartyMon1Moves - wPartyMon1)"
|
||||
MON_ID EQUS "(wPartyMon1ID - wPartyMon1)"
|
||||
MON_EXP EQUS "(wPartyMon1Exp - wPartyMon1)"
|
||||
MON_STAT_EXP EQUS "(wPartyMon1StatExp - wPartyMon1)"
|
||||
MON_HP_EXP EQUS "(wPartyMon1HPExp - wPartyMon1)"
|
||||
MON_ATK_EXP EQUS "(wPartyMon1AtkExp - wPartyMon1)"
|
||||
MON_DEF_EXP EQUS "(wPartyMon1DefExp - wPartyMon1)"
|
||||
MON_SPD_EXP EQUS "(wPartyMon1SpdExp - wPartyMon1)"
|
||||
MON_SPC_EXP EQUS "(wPartyMon1SpcExp - wPartyMon1)"
|
||||
MON_DVS EQUS "(wPartyMon1DVs - wPartyMon1)"
|
||||
MON_PP EQUS "(wPartyMon1PP - wPartyMon1)"
|
||||
MON_HAPPINESS EQUS "(wPartyMon1Happiness - wPartyMon1)"
|
||||
MON_PKRUS EQUS "(wPartyMon1PokerusStatus - wPartyMon1)"
|
||||
MON_CAUGHTDATA EQUS "(wPartyMon1CaughtData - wPartyMon1)"
|
||||
MON_CAUGHTLEVEL EQUS "(wPartyMon1CaughtLevel - wPartyMon1)"
|
||||
MON_CAUGHTTIME EQUS "(wPartyMon1CaughtTime - wPartyMon1)"
|
||||
MON_CAUGHTGENDER EQUS "(wPartyMon1CaughtGender - wPartyMon1)"
|
||||
MON_CAUGHTLOCATION EQUS "(wPartyMon1CaughtLocation - wPartyMon1)"
|
||||
MON_LEVEL EQUS "(wPartyMon1Level - wPartyMon1)"
|
||||
MON_STATUS EQUS "(wPartyMon1Status - wPartyMon1)"
|
||||
MON_HP EQUS "(wPartyMon1HP - wPartyMon1)"
|
||||
MON_MAXHP EQUS "(wPartyMon1MaxHP - wPartyMon1)"
|
||||
MON_ATK EQUS "(wPartyMon1Attack - wPartyMon1)"
|
||||
MON_DEF EQUS "(wPartyMon1Defense - wPartyMon1)"
|
||||
MON_SPD EQUS "(wPartyMon1Speed - wPartyMon1)"
|
||||
MON_SAT EQUS "(wPartyMon1SpclAtk - wPartyMon1)"
|
||||
MON_SDF EQUS "(wPartyMon1SpclDef - wPartyMon1)"
|
||||
BOXMON_STRUCT_LENGTH EQUS "(wPartyMon1BoxEnd - wPartyMon1)"
|
||||
PARTYMON_STRUCT_LENGTH EQUS "(wPartyMon1StructEnd - wPartyMon1)"
|
||||
rsreset
|
||||
MON_SPECIES rb
|
||||
MON_ITEM rb
|
||||
MON_MOVES rb NUM_MOVES
|
||||
MON_ID rw
|
||||
MON_EXP rb 3
|
||||
MON_STAT_EXP rw NUM_EXP_STATS
|
||||
rsset MON_STAT_EXP
|
||||
MON_HP_EXP rw
|
||||
MON_ATK_EXP rw
|
||||
MON_DEF_EXP rw
|
||||
MON_SPD_EXP rw
|
||||
MON_SPC_EXP rw
|
||||
MON_DVS rw
|
||||
MON_PP rb NUM_MOVES
|
||||
MON_HAPPINESS rb
|
||||
MON_PKRUS rb
|
||||
MON_CAUGHTDATA rw
|
||||
rsset MON_CAUGHTDATA
|
||||
MON_CAUGHTTIME rb
|
||||
MON_CAUGHTGENDER rb
|
||||
rsset MON_CAUGHTDATA
|
||||
MON_CAUGHTLEVEL rb
|
||||
MON_CAUGHTLOCATION rb
|
||||
MON_LEVEL rb
|
||||
BOXMON_STRUCT_LENGTH EQU _RS
|
||||
MON_STATUS rb 2
|
||||
MON_HP rw
|
||||
MON_MAXHP rw
|
||||
MON_ATK rw
|
||||
MON_DEF rw
|
||||
MON_SPD rw
|
||||
MON_SAT rw
|
||||
MON_SDF rw
|
||||
PARTYMON_STRUCT_LENGTH EQU _RS
|
||||
|
||||
NICKNAMED_MON_STRUCT_LENGTH EQUS "(PARTYMON_STRUCT_LENGTH + MON_NAME_LENGTH)"
|
||||
NICKNAMED_MON_STRUCT_LENGTH EQU PARTYMON_STRUCT_LENGTH + MON_NAME_LENGTH
|
||||
REDMON_STRUCT_LENGTH EQU 44
|
||||
|
||||
; caught data
|
||||
@ -116,6 +125,8 @@ CAUGHT_BY_BOY EQU 2
|
||||
|
||||
CAUGHT_EGG_LEVEL EQU 1
|
||||
|
||||
MON_CRY_LENGTH EQU 6
|
||||
|
||||
; maximum number of party pokemon
|
||||
PARTY_LENGTH EQU 6
|
||||
|
||||
@ -199,6 +210,7 @@ NUM_TREEMON_SETS EQU const_value
|
||||
const HAPPINESS_REVIVALHERB ; 11
|
||||
const HAPPINESS_GROOMING ; 12
|
||||
const HAPPINESS_GAINLEVELATHOME ; 13
|
||||
NUM_HAPPINESS_CHANGES EQU const_value - 1
|
||||
|
||||
; significant happiness values
|
||||
BASE_HAPPINESS EQU 70
|
||||
|
@ -15,6 +15,7 @@
|
||||
const POKE_FLUTE_RADIO ; 08
|
||||
const UNOWN_RADIO ; 09
|
||||
const EVOLUTION_RADIO ; 0a
|
||||
NUM_RADIO_CHANNELS EQU const_value
|
||||
; internal indexes for channel segments
|
||||
const OAKS_POKEMON_TALK_2 ; 0b
|
||||
const OAKS_POKEMON_TALK_3 ; 0c
|
||||
@ -93,6 +94,7 @@
|
||||
const POKEDEX_SHOW_6 ; 55
|
||||
const POKEDEX_SHOW_7 ; 56
|
||||
const POKEDEX_SHOW_8 ; 57
|
||||
NUM_RADIO_SEGMENTS EQU const_value
|
||||
|
||||
; PlayRadio.StationPointers indexes (see engine/pokegear/pokegear.asm)
|
||||
const_def
|
||||
@ -106,9 +108,6 @@
|
||||
const MAPRADIO_LETS_ALL_SING
|
||||
const MAPRADIO_ROCKET
|
||||
|
||||
; OaksPKMNTalkRoutes size (see data/radio/oaks_pkmn_talk_routes.asm)
|
||||
NUM_OAKS_POKEMON_TALK_ROUTES EQU 15
|
||||
|
||||
; These tables in engine/pokegear/radio.asm are all sized to a power of 2
|
||||
; so there's no need for a rejection sampling loop
|
||||
NUM_OAKS_POKEMON_TALK_ADVERBS EQU 16 ; OaksPKMNTalk8.Adverbs
|
||||
|
@ -175,6 +175,7 @@ NUM_CMDQUEUE_TYPES EQU const_value
|
||||
const FLOOR_10F
|
||||
const FLOOR_11F
|
||||
const FLOOR_ROOF
|
||||
NUM_FLOORS EQU const_value
|
||||
|
||||
; showemote arguments
|
||||
; Emotes indexes (see data/sprites/emotes.asm)
|
||||
@ -191,7 +192,9 @@ NUM_CMDQUEUE_TYPES EQU const_value
|
||||
const EMOTE_ROD ; 9
|
||||
const EMOTE_BOULDER_DUST ; 10
|
||||
const EMOTE_GRASS_RUSTLE ; 11
|
||||
NUM_EMOTES EQU const_value
|
||||
EMOTE_FROM_MEM EQU -1
|
||||
EMOTE_LENGTH EQU 6
|
||||
|
||||
; fruittree arguments
|
||||
; FruitTreeItems indexes (see data/items/fruit_trees.asm)
|
||||
@ -236,6 +239,7 @@ NUM_FRUIT_TREES EQU const_value - 1
|
||||
const DECODESC_RIGHT_DOLL ; 2
|
||||
const DECODESC_BIG_DOLL ; 3
|
||||
const DECODESC_CONSOLE ; 4
|
||||
NUM_DECODESCS EQU const_value
|
||||
|
||||
; swarm arguments
|
||||
; StoreSwarmMapIndices arguments
|
||||
|
@ -210,3 +210,5 @@
|
||||
const SFX_TWO_PC_BEEPS ; cc
|
||||
const SFX_4_NOTE_DITTY ; cd
|
||||
const SFX_TWINKLE ; ce
|
||||
|
||||
NUM_SFX EQU const_value
|
||||
|
@ -79,6 +79,7 @@ NUM_SPRITEANIMDICT_ENTRIES EQU 10
|
||||
const SPRITE_ANIM_INDEX_INTRO_UNOWN_F ; 2a
|
||||
const SPRITE_ANIM_INDEX_INTRO_SUICUNE_AWAY ; 2b
|
||||
const SPRITE_ANIM_INDEX_CELEBI ; 2c
|
||||
NUM_SPRITE_ANIM_INDEXES EQU const_value
|
||||
|
||||
; DoAnimFrame.Jumptable indexes (see engine/gfx/sprite_anims.asm)
|
||||
const_def
|
||||
@ -117,6 +118,7 @@ NUM_SPRITEANIMDICT_ENTRIES EQU 10
|
||||
const SPRITE_ANIM_SEQ_INTRO_UNOWN ; 20
|
||||
const SPRITE_ANIM_SEQ_INTRO_UNOWN_F ; 21
|
||||
const SPRITE_ANIM_SEQ_INTRO_SUICUNE_AWAY ; 22
|
||||
NUM_SPRITE_ANIM_SEQS EQU const_value
|
||||
|
||||
; SpriteAnimFrameData indexes (see data/sprite_anims/framesets.asm)
|
||||
const_def
|
||||
@ -186,6 +188,7 @@ NUM_SPRITEANIMDICT_ENTRIES EQU 10
|
||||
const SPRITE_ANIM_FRAMESET_INTRO_UNOWN_F ; 3f
|
||||
const SPRITE_ANIM_FRAMESET_CELEBI_LEFT ; 40
|
||||
const SPRITE_ANIM_FRAMESET_CELEBI_RIGHT ; 41
|
||||
NUM_SPRITE_ANIM_FRAMESETS EQU const_value
|
||||
|
||||
; SpriteAnimOAMData indexes (see data/sprite_anims/oam.asm)
|
||||
const_def
|
||||
@ -329,3 +332,4 @@ NUM_SPRITEANIMDICT_ENTRIES EQU 10
|
||||
const SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_9 ; 89
|
||||
const SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_10 ; 8a
|
||||
const SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_11 ; 8b
|
||||
NUM_SPRITE_ANIM_OAMSETS EQU const_value
|
||||
|
@ -104,6 +104,7 @@
|
||||
const SPRITE_ENTEI ; 64
|
||||
const SPRITE_RAIKOU ; 65
|
||||
const SPRITE_STANDING_YOUNGSTER ; 66
|
||||
NUM_OVERWORLD_SPRITES EQU const_value - 1
|
||||
|
||||
; SpriteMons indexes (see data/sprites/sprite_mons.asm)
|
||||
const_next $80
|
||||
@ -143,6 +144,7 @@ SPRITE_POKEMON EQU const_value
|
||||
const SPRITE_GYARADOS ; a0
|
||||
const SPRITE_LUGIA ; a1
|
||||
const SPRITE_HO_OH ; a2
|
||||
NUM_POKEMON_SPRITES EQU const_value - SPRITE_POKEMON
|
||||
|
||||
; special GetMonSprite values (see engine/overworld/overworld.asm)
|
||||
const_next $e0
|
||||
|
@ -36,6 +36,13 @@
|
||||
const TILESET_KABUTO_WORD_ROOM ; 22
|
||||
const TILESET_OMANYTE_WORD_ROOM ; 23
|
||||
const TILESET_AERODACTYL_WORD_ROOM ; 24
|
||||
NUM_TILESETS EQU const_value - 1
|
||||
|
||||
; wTileset struct size
|
||||
TILESET_LENGTH EQU 15
|
||||
|
||||
; roof length (see gfx/tilesets/roofs)
|
||||
ROOF_LENGTH EQU 9
|
||||
|
||||
; bg palette values (see gfx/tilesets/*_palette_map.asm)
|
||||
; TilesetBGPalette indexes (see gfx/tilesets/bg_tiles.pal)
|
||||
|
@ -25,6 +25,7 @@ CHRIS EQU __trainer_class__
|
||||
const PHONECONTACT_BILL
|
||||
const PHONECONTACT_ELM
|
||||
const PHONECONTACT_BUENA
|
||||
NUM_NONTRAINER_PHONECONTACTS EQU const_value - 1
|
||||
|
||||
KRIS EQU __trainer_class__
|
||||
trainerclass FALKNER ; 1
|
||||
@ -702,4 +703,4 @@ KRIS EQU __trainer_class__
|
||||
trainerclass MYSTICALMAN ; 43
|
||||
const EUSINE
|
||||
|
||||
NUM_TRAINER_CLASSES EQU __trainer_class__
|
||||
NUM_TRAINER_CLASSES EQU __trainer_class__ - 1
|
||||
|
@ -34,4 +34,6 @@ SPECIAL EQU const_value
|
||||
const DARK
|
||||
TYPES_END EQU const_value
|
||||
|
||||
NUM_TYPES EQU TYPES_END + UNUSED_TYPES - UNUSED_TYPES_END
|
||||
NUM_TYPES EQU TYPES_END + UNUSED_TYPES - UNUSED_TYPES_END - 1 ; discount BIRD
|
||||
|
||||
POKEDEX_TYPE_STRING_LENGTH EQU 9
|
||||
|
@ -4,6 +4,7 @@
|
||||
|
||||
BattleCommandPointers:
|
||||
; entries correspond to macros/scripts/battle_commands.asm
|
||||
table_width 2, BattleCommandPointers
|
||||
dw BattleCommand_CheckTurn
|
||||
dw BattleCommand_CheckObedience
|
||||
dw BattleCommand_UsedMoveText
|
||||
@ -179,3 +180,4 @@ BattleCommandPointers:
|
||||
dw BattleCommand_SuperEffectiveLoopText
|
||||
dw BattleCommand_StartLoop
|
||||
dw BattleCommand_Curl
|
||||
assert_table_length NUM_EFFECT_COMMANDS
|
||||
|
@ -1,5 +1,6 @@
|
||||
BattleAnimFrameData:
|
||||
; entries correspond to BATTLEANIMFRAMESET_* constants
|
||||
table_width 2, BattleAnimFrameData
|
||||
dw .Frameset_00 ; BATTLEANIMFRAMESET_00
|
||||
dw .Frameset_01 ; BATTLEANIMFRAMESET_01
|
||||
dw .Frameset_02 ; BATTLEANIMFRAMESET_02
|
||||
@ -185,6 +186,7 @@ BattleAnimFrameData:
|
||||
dw .Frameset_b6 ; BATTLEANIMFRAMESET_B6
|
||||
dw .Frameset_b7 ; BATTLEANIMFRAMESET_B7
|
||||
dw .Frameset_b8 ; BATTLEANIMFRAMESET_B8
|
||||
assert_table_length NUM_BATTLEANIMFRAMESETS
|
||||
|
||||
.Frameset_00:
|
||||
frame BATTLEANIMOAMSET_00, 6
|
||||
|
@ -1,5 +1,6 @@
|
||||
BattleAnimOAMData:
|
||||
; entries correspond to BATTLEANIMOAMSET_* constants
|
||||
table_width 4, BattleAnimOAMData
|
||||
; vtile offset, data length, data pointer
|
||||
dbbw $00, 16, .OAMData_00 ; BATTLEANIMOAMSET_00
|
||||
dbbw $04, 9, .OAMData_01 ; BATTLEANIMOAMSET_01
|
||||
@ -217,6 +218,7 @@ BattleAnimOAMData:
|
||||
dbbw $00, 6, .OAMData_d5 ; BATTLEANIMOAMSET_D5
|
||||
dbbw $00, 14, .OAMData_d6 ; BATTLEANIMOAMSET_D6
|
||||
dbbw $00, 12, .OAMData_d7 ; BATTLEANIMOAMSET_D7
|
||||
assert_table_length NUM_BATTLEANIMOAMSETS
|
||||
|
||||
.OAMData_11:
|
||||
dbsprite -1, -1, 4, 0, $00, $0
|
||||
|
@ -6,6 +6,7 @@ ENDM
|
||||
|
||||
AnimObjGFX:
|
||||
; entries correspond to ANIM_GFX_* constants
|
||||
table_width 4, AnimObjGFX
|
||||
anim_obj_gfx 0, AnimObj00GFX
|
||||
anim_obj_gfx 21, AnimObjHitGFX
|
||||
anim_obj_gfx 6, AnimObjCutGFX
|
||||
@ -48,3 +49,4 @@ AnimObjGFX:
|
||||
anim_obj_gfx 24, AnimObjAeroblastGFX
|
||||
anim_obj_gfx 1, NULL
|
||||
anim_obj_gfx 1, NULL
|
||||
assert_table_length NUM_ANIM_GFX + 1
|
||||
|
@ -18,6 +18,7 @@ ENDM
|
||||
|
||||
BattleAnimObjects:
|
||||
; entries correspond to ANIM_OBJ_* constants
|
||||
table_width BATTLEANIMOBJ_LENGTH, BattleAnimObjects
|
||||
; ANIM_OBJ_HIT_BIG_YFIX
|
||||
battleanimobj RELATIVE_X, $ff, BATTLEANIMFRAMESET_00, BATTLEANIMFUNC_NULL, PAL_BATTLE_OB_GRAY, ANIM_GFX_HIT
|
||||
; ANIM_OBJ_HIT_YFIX
|
||||
@ -394,3 +395,4 @@ BattleAnimObjects:
|
||||
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_B7, BATTLEANIMFUNC_NULL, PAL_BATTLE_OB_ENEMY, ANIM_GFX_PLAYERHEAD
|
||||
; ANIM_OBJ_PLAYERHEAD_2ROW
|
||||
battleanimobj ABSOLUTE_X, $00, BATTLEANIMFRAMESET_B8, BATTLEANIMFUNC_NULL, PAL_BATTLE_OB_PLAYER, ANIM_GFX_ENEMYFEET
|
||||
assert_table_length NUM_ANIM_OBJS
|
||||
|
@ -2,6 +2,8 @@ BattleTowerTrainers:
|
||||
; 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.
|
||||
; See BattleTowerText in engine/events/battle_tower/trainer_text.asm.
|
||||
table_width (NAME_LENGTH - 1) + 1, BattleTowerTrainers
|
||||
; name, class
|
||||
db "HANSON@@@@", FISHER
|
||||
db "SAWYER@@@@", POKEMANIAC
|
||||
db "MASUDA@@@@", GUITARIST
|
||||
@ -23,6 +25,7 @@ BattleTowerTrainers:
|
||||
db "KAUFMAN@@@", SWIMMERM
|
||||
db "LANCASTER@", SKIER
|
||||
db "McMAHILL@@", CAMPER
|
||||
assert_table_length BATTLETOWER_NUM_UNIQUE_MON
|
||||
; The following can only be sampled in Crystal 1.1.
|
||||
db "OBRIEN@@@@", GENTLEMAN
|
||||
db "FROST@@@@@", BEAUTY
|
||||
@ -73,3 +76,4 @@ BattleTowerTrainers:
|
||||
db "DYKSTRA@@@", SWIMMERF
|
||||
db "EATON@@@@@", BIKER
|
||||
db "WONG@@@@@@", FIREBREATHER
|
||||
assert_table_length BATTLETOWER_NUM_UNIQUE_TRAINERS
|
||||
|
@ -1,5 +1,6 @@
|
||||
BattleTowerMons:
|
||||
; 10 groups (one per floor level) of 21 mons (BATTLETOWER_NUM_UNIQUE_MON).
|
||||
table_width NICKNAMED_MON_STRUCT_LENGTH, BattleTowerMons
|
||||
|
||||
; BattleTowerMons group 1
|
||||
|
||||
@ -5489,3 +5490,5 @@ BattleTowerMons:
|
||||
bigdw 214 ; SAtk
|
||||
bigdw 214 ; SDef
|
||||
db "RANTA-N@@@@"
|
||||
|
||||
assert_table_length 10 * BATTLETOWER_NUM_UNIQUE_MON
|
||||
|
@ -1,6 +1,7 @@
|
||||
BattleTowerTrainerData:: ; ???
|
||||
; 70 tables (BATTLETOWER_NUM_UNIQUE_TRAINERS) of 18 two-argument entries (total size BATTLETOWER_TRAINERDATALENGTH).
|
||||
; Second argument points to an entry in Unknown_170470, to which the first argument is compared.
|
||||
table_width BATTLETOWER_TRAINERDATALENGTH, BattleTowerTrainerData
|
||||
|
||||
; BattleTowerTrainerData table 1:
|
||||
db $37, 3
|
||||
@ -1401,3 +1402,5 @@ BattleTowerTrainerData:: ; ???
|
||||
db $22, 7
|
||||
db $d1, 0
|
||||
db $32, 13
|
||||
|
||||
assert_table_length BATTLETOWER_NUM_UNIQUE_TRAINERS
|
||||
|
@ -1,5 +1,6 @@
|
||||
TileCollisionTable::
|
||||
; entries correspond to COLL_* constants
|
||||
table_width 1, TileCollisionTable
|
||||
db LAND_TILE ; COLL_FLOOR
|
||||
db LAND_TILE ; COLL_01
|
||||
db LAND_TILE ; 02
|
||||
@ -256,3 +257,4 @@ TileCollisionTable::
|
||||
db LAND_TILE ; fd
|
||||
db LAND_TILE ; fe
|
||||
db WALL_TILE ; COLL_FF
|
||||
assert_table_length $100
|
||||
|
@ -1,5 +1,6 @@
|
||||
CreditsStringsPointers:
|
||||
; entries correspond to constants/credits_constants.asm
|
||||
table_width 2, CreditsStringsPointers
|
||||
dw .SatoshiTajiri
|
||||
dw .JunichiMasuda
|
||||
dw .TetsuyaWatanabe
|
||||
@ -103,6 +104,7 @@ CreditsStringsPointers:
|
||||
dw .UsCoordination
|
||||
dw .TextTranslation
|
||||
dw .PaadTesting
|
||||
assert_table_length NUM_CREDITS_STRINGS
|
||||
|
||||
.SatoshiTajiri: db " SATOSHI TAJIRI@" ; "たじり さとし@"
|
||||
.JunichiMasuda: db " JUNICHI MASUDA@" ; "ますだ じゅんいち@"
|
||||
|
@ -1,5 +1,5 @@
|
||||
decoration: MACRO
|
||||
; type, name, command, event flag, tile/sprite
|
||||
; type, name, action, event flag, tile/sprite
|
||||
db \1, \2, \3
|
||||
dw \4
|
||||
db \5
|
||||
@ -7,6 +7,7 @@ ENDM
|
||||
|
||||
DecorationAttributes:
|
||||
; entries correspond to deco constants
|
||||
table_width DECOATTR_STRUCT_LENGTH, DecorationAttributes
|
||||
decoration DECO_PLANT, 0, 0, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, 0
|
||||
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_BED, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, 0
|
||||
decoration DECO_BED, FEATHERY_BED, SET_UP_BED, EVENT_DECO_BED_1, $1b
|
||||
@ -60,3 +61,4 @@ DecorationAttributes:
|
||||
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
|
||||
assert_table_length NUM_DECOS + NUM_DECO_CATEGORIES + 1
|
||||
|
@ -1,5 +1,7 @@
|
||||
DecorationIDs:
|
||||
; see constants/deco_constants.asm
|
||||
table_width 1, DecorationIDs
|
||||
|
||||
db DECO_FEATHERY_BED ; 2
|
||||
db DECO_PINK_BED ; 3
|
||||
db DECO_POLKADOT_BED ; 4
|
||||
@ -52,4 +54,5 @@ DecorationIDs:
|
||||
db DECO_GOLD_TROPHY_DOLL ; 33
|
||||
db DECO_SILVER_TROPHY_DOLL ; 34
|
||||
|
||||
assert_table_length NUM_DECOS
|
||||
db -1 ; end
|
||||
|
@ -14,3 +14,5 @@ DefaultOptions:
|
||||
|
||||
db $00
|
||||
db $00
|
||||
.End
|
||||
assert DefaultOptions.End - DefaultOptions == wOptionsEnd - wOptions
|
||||
|
@ -1,5 +1,5 @@
|
||||
BugCatchingContestantEventFlagTable:
|
||||
; there are NUM_BUG_CONTESTANTS entries
|
||||
table_width 2, BugCatchingContestantEventFlagTable
|
||||
dw EVENT_BUG_CATCHING_CONTESTANT_1A
|
||||
dw EVENT_BUG_CATCHING_CONTESTANT_2A
|
||||
dw EVENT_BUG_CATCHING_CONTESTANT_3A
|
||||
@ -10,3 +10,4 @@ BugCatchingContestantEventFlagTable:
|
||||
dw EVENT_BUG_CATCHING_CONTESTANT_8A
|
||||
dw EVENT_BUG_CATCHING_CONTESTANT_9A
|
||||
dw EVENT_BUG_CATCHING_CONTESTANT_10A
|
||||
assert_table_length NUM_BUG_CONTESTANTS
|
||||
|
@ -1,5 +1,5 @@
|
||||
BugContestantPointers:
|
||||
; there are NUM_BUG_CONTESTANTS + 1 entries
|
||||
table_width 2, BugContestantPointers
|
||||
dw BugContestant_BugCatcherDon ; this reverts back to the player
|
||||
dw BugContestant_BugCatcherDon
|
||||
dw BugContestant_BugCatcherEd
|
||||
@ -11,6 +11,7 @@ BugContestantPointers:
|
||||
dw BugContestant_BugCatcherJosh
|
||||
dw BugContestant_YoungsterSamuel
|
||||
dw BugContestant_SchoolboyKipp
|
||||
assert_table_length NUM_BUG_CONTESTANTS + 1
|
||||
|
||||
; contestant format:
|
||||
; db class, id
|
||||
|
@ -1,5 +1,6 @@
|
||||
ElevatorFloorNames:
|
||||
; entries correspond to FLOOR_* constants
|
||||
table_width 2, ElevatorFloorNames
|
||||
dw .B4F
|
||||
dw .B3F
|
||||
dw .B2F
|
||||
@ -16,6 +17,7 @@ ElevatorFloorNames:
|
||||
dw ._10F
|
||||
dw ._11F
|
||||
dw .ROOF
|
||||
assert_table_length NUM_FLOORS
|
||||
|
||||
.B4F: db "B4F@"
|
||||
.B3F: db "B3F@"
|
||||
|
@ -6,6 +6,7 @@ ENDM
|
||||
|
||||
EngineFlags:
|
||||
; entries correspond to ENGINE_* constants
|
||||
table_width 3, EngineFlags
|
||||
|
||||
; pokegear
|
||||
engine_flag wPokegearFlags, POKEGEAR_RADIO_CARD_F
|
||||
@ -197,3 +198,5 @@ EngineFlags:
|
||||
|
||||
engine_flag wSwarmFlags, SWARMFLAGS_DUNSPARCE_SWARM_F
|
||||
engine_flag wSwarmFlags, SWARMFLAGS_YANMA_SWARM_F
|
||||
|
||||
assert_table_length NUM_ENGINE_FLAGS
|
||||
|
@ -1,6 +1,7 @@
|
||||
HappinessChanges:
|
||||
; entries correspond to HAPPINESS_* constants
|
||||
; change if happiness < 100, change if happiness < 200, change otherwise
|
||||
table_width 3, HappinessChanges
|
||||
; 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
|
||||
@ -20,3 +21,4 @@ HappinessChanges:
|
||||
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
|
||||
assert_table_length NUM_HAPPINESS_CHANGES
|
||||
|
@ -8,6 +8,7 @@ ENDM
|
||||
|
||||
NPCTrades:
|
||||
; entries correspond to NPCTRADE_* constants
|
||||
table_width NPCTRADE_STRUCT_LENGTH, NPCTrades
|
||||
npctrade TRADE_DIALOGSET_COLLECTOR, ABRA, MACHOP, "MUSCLE@@@@@", $37, $66, GOLD_BERRY, 37460, "MIKE@@@@@@@", TRADE_GENDER_EITHER
|
||||
npctrade TRADE_DIALOGSET_COLLECTOR, BELLSPROUT, ONIX, "ROCKY@@@@@@", $96, $66, BITTER_BERRY, 48926, "KYLE@@@@@@@", TRADE_GENDER_EITHER
|
||||
npctrade TRADE_DIALOGSET_HAPPY, KRABBY, VOLTORB, "VOLTY@@@@@@", $98, $88, PRZCUREBERRY, 29189, "TIM@@@@@@@@", TRADE_GENDER_EITHER
|
||||
@ -15,3 +16,4 @@ NPCTrades:
|
||||
npctrade TRADE_DIALOGSET_NEWBIE, HAUNTER, XATU, "PAUL@@@@@@@", $96, $86, MYSTERYBERRY, 15616, "CHRIS@@@@@@", TRADE_GENDER_EITHER
|
||||
npctrade TRADE_DIALOGSET_GIRL, CHANSEY, AERODACTYL, "AEROY@@@@@@", $96, $66, GOLD_BERRY, 26491, "KIM@@@@@@@@", TRADE_GENDER_EITHER
|
||||
npctrade TRADE_DIALOGSET_COLLECTOR, DUGTRIO, MAGNETON, "MAGGIE@@@@@", $96, $66, METAL_COAT, 50082, "FOREST@@@@@", TRADE_GENDER_EITHER
|
||||
assert_table_length NUM_NPC_TRADES
|
||||
|
@ -1,9 +1,12 @@
|
||||
NUM_ODD_EGGS EQU 14
|
||||
|
||||
prob: MACRO
|
||||
prob_total = prob_total + (\1)
|
||||
dw prob_total * $ffff / 100
|
||||
ENDM
|
||||
|
||||
OddEggProbabilities:
|
||||
table_width 2, OddEggProbabilities
|
||||
prob_total = 0
|
||||
; Pichu
|
||||
prob 8
|
||||
@ -26,8 +29,10 @@ prob_total = 0
|
||||
; Tyrogue
|
||||
prob 10
|
||||
prob 1
|
||||
assert_table_length NUM_ODD_EGGS
|
||||
|
||||
OddEggs:
|
||||
table_width NICKNAMED_MON_STRUCT_LENGTH, OddEggs
|
||||
|
||||
db PICHU
|
||||
db NO_ITEM
|
||||
@ -392,3 +397,5 @@ OddEggs:
|
||||
bigdw 9 ; SAtk
|
||||
bigdw 9 ; SDef
|
||||
db "EGG@@@@@@@@"
|
||||
|
||||
assert_table_length NUM_ODD_EGGS
|
||||
|
@ -1,5 +1,6 @@
|
||||
IconPointers:
|
||||
; entries correspond to ICON_* constants
|
||||
; entries correspond to ICON_* constants (see constants/icon_constants.asm)
|
||||
table_width 2, IconPointers
|
||||
dw NullIcon
|
||||
dw PoliwagIcon
|
||||
dw JigglypuffIcon
|
||||
@ -39,3 +40,4 @@ IconPointers:
|
||||
dw SlowpokeIcon
|
||||
dw SudowoodoIcon
|
||||
dw BigmonIcon
|
||||
assert_table_length NUM_ICONS + 1
|
||||
|
@ -6,7 +6,8 @@ item_attribute: MACRO
|
||||
ENDM
|
||||
|
||||
ItemAttributes:
|
||||
; entries correspond to item ids
|
||||
; entries correspond to item ids (see constants/item_constants.asm)
|
||||
table_width ITEMATTR_STRUCT_LENGTH, ItemAttributes
|
||||
; MASTER_BALL
|
||||
item_attribute 0, HELD_NONE, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE
|
||||
; ULTRA_BALL
|
||||
@ -387,6 +388,7 @@ ItemAttributes:
|
||||
item_attribute 50, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE
|
||||
; ITEM_BE
|
||||
item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE
|
||||
assert_table_length NUM_ITEMS
|
||||
; TM01
|
||||
item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE
|
||||
; TM02
|
||||
@ -491,6 +493,7 @@ ItemAttributes:
|
||||
item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE
|
||||
; TM50
|
||||
item_attribute 2000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE
|
||||
assert_table_length NUM_ITEMS + NUM_TMS + 2 ; count ITEM_C3 and ITEM_DC
|
||||
; HM01
|
||||
item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE
|
||||
; HM02
|
||||
@ -505,6 +508,7 @@ ItemAttributes:
|
||||
item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE
|
||||
; HM07
|
||||
item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE
|
||||
assert_table_length NUM_ITEMS + NUM_TMS + 2 + NUM_HMS ; count ITEM_C3 and ITEM_DC
|
||||
; ITEM_FA
|
||||
item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE
|
||||
; $fb
|
||||
@ -519,3 +523,4 @@ ItemAttributes:
|
||||
item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE
|
||||
; $00
|
||||
item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE
|
||||
assert_table_length $100
|
||||
|
@ -1,5 +1,5 @@
|
||||
BuenaPrizeItems:
|
||||
; there are NUM_BUENA_PRIZES entries
|
||||
table_width 2, BuenaPrizeItems
|
||||
db ULTRA_BALL, 2
|
||||
db FULL_RESTORE, 2
|
||||
db NUGGET, 3
|
||||
@ -9,3 +9,4 @@ BuenaPrizeItems:
|
||||
db CARBOS, 5
|
||||
db CALCIUM, 5
|
||||
db HP_UP, 5
|
||||
assert_table_length NUM_BUENA_PRIZES
|
||||
|
@ -1,5 +1,6 @@
|
||||
ItemDescriptions:
|
||||
; entries correspond to item ids
|
||||
; entries correspond to item ids (see constants/item_constants.asm)
|
||||
table_width 2, ItemDescriptions
|
||||
dw MasterBallDesc
|
||||
dw UltraBallDesc
|
||||
dw BrightpowderDesc
|
||||
@ -190,6 +191,7 @@ ItemDescriptions:
|
||||
dw MusicMailDesc
|
||||
dw MirageMailDesc
|
||||
dw TeruSama25Desc
|
||||
assert_table_length NUM_ITEMS
|
||||
dw TeruSama26Desc
|
||||
dw TeruSama26Desc
|
||||
dw TeruSama26Desc
|
||||
@ -255,6 +257,7 @@ ItemDescriptions:
|
||||
dw TeruSama31Desc
|
||||
dw TeruSama32Desc
|
||||
dw TeruSama33Desc
|
||||
assert_table_length $ff
|
||||
|
||||
MasterBallDesc:
|
||||
db "The best BALL. It"
|
||||
|
@ -1,5 +1,6 @@
|
||||
FruitTreeItems:
|
||||
; entries correspond to FRUITTREE_* constants
|
||||
table_width 1, FruitTreeItems
|
||||
db BERRY ; ROUTE_29
|
||||
db BERRY ; ROUTE_30_1
|
||||
db BERRY ; ROUTE_38
|
||||
@ -30,3 +31,4 @@ FruitTreeItems:
|
||||
db ICE_BERRY ; PEWTER_CITY_1
|
||||
db MINT_BERRY ; PEWTER_CITY_2
|
||||
db BURNT_BERRY ; FUCHSIA_CITY
|
||||
assert_table_length NUM_FRUIT_TREES
|
||||
|
@ -1,5 +1,6 @@
|
||||
Marts:
|
||||
; entries correspond to MART_* constants
|
||||
; entries correspond to MART_* constants (see constants/mart_constants.asm)
|
||||
table_width 2, Marts
|
||||
dw MartCherrygrove
|
||||
dw MartCherrygroveDex
|
||||
dw MartViolet
|
||||
@ -34,6 +35,7 @@ Marts:
|
||||
dw MartMtMoon
|
||||
dw MartIndigoPlateau
|
||||
dw MartUnderground
|
||||
assert_table_length NUM_MARTS
|
||||
|
||||
MartCherrygrove:
|
||||
db 4 ; # items
|
||||
|
@ -6,6 +6,7 @@ ENDM
|
||||
|
||||
Landmarks:
|
||||
; entries correspond to constants/landmark_constants.asm
|
||||
table_width 4, Landmarks
|
||||
dbbw 0, 0, SpecialMapName
|
||||
landmark 140, 100, NewBarkTownName
|
||||
landmark 128, 100, Route29Name
|
||||
@ -53,6 +54,7 @@ Landmarks:
|
||||
landmark 112, 72, DarkCaveName
|
||||
landmark 124, 88, Route46Name
|
||||
landmark 148, 68, SilverCaveName
|
||||
assert_table_length KANTO_LANDMARK
|
||||
landmark 52, 108, PalletTownName
|
||||
landmark 52, 92, Route1Name
|
||||
landmark 52, 76, ViridianCityName
|
||||
@ -102,6 +104,7 @@ Landmarks:
|
||||
landmark 12, 100, TohjoFallsName
|
||||
landmark 20, 68, Route28Name
|
||||
landmark 140, 116, FastShipName
|
||||
assert_table_length NUM_LANDMARKS
|
||||
|
||||
NewBarkTownName: db "NEW BARK¯TOWN@"
|
||||
CherrygroveCityName: db "CHERRYGROVE¯CITY@"
|
||||
|
@ -16,6 +16,7 @@ ENDM
|
||||
|
||||
MapGroupPointers::
|
||||
; pointers to the first map of each map group
|
||||
table_width 2, MapGroupPointers
|
||||
dw MapGroup_Olivine ; 1
|
||||
dw MapGroup_Mahogany ; 2
|
||||
dw MapGroup_Dungeons ; 3
|
||||
@ -42,6 +43,7 @@ MapGroupPointers::
|
||||
dw MapGroup_NewBark ; 24
|
||||
dw MapGroup_Saffron ; 25
|
||||
dw MapGroup_Cherrygrove ; 26
|
||||
assert_table_length NUM_MAP_GROUPS
|
||||
|
||||
MapGroup_Olivine:
|
||||
map OlivinePokecenter1F, TILESET_POKECENTER, INDOOR, LANDMARK_OLIVINE_CITY, MUSIC_POKEMON_CENTER, FALSE, PALETTE_DAY, FISHGROUP_SHORE
|
||||
|
@ -3,6 +3,7 @@
|
||||
|
||||
OutdoorSprites:
|
||||
; entries correspond to map groups
|
||||
table_width 2, OutdoorSprites
|
||||
dw OlivineGroupSprites
|
||||
dw MahoganyGroupSprites
|
||||
dw DungeonsGroupSprites
|
||||
@ -29,6 +30,7 @@ OutdoorSprites:
|
||||
dw NewBarkGroupSprites
|
||||
dw SaffronGroupSprites
|
||||
dw CherrygroveGroupSprites
|
||||
assert_table_length NUM_MAP_GROUPS
|
||||
|
||||
PalletGroupSprites:
|
||||
db SPRITE_SUICUNE
|
||||
|
@ -5,10 +5,12 @@
|
||||
const ROOF_AZALEA ; 2
|
||||
const ROOF_OLIVINE ; 3
|
||||
const ROOF_GOLDENROD ; 4
|
||||
NUM_ROOFS EQU const_value
|
||||
|
||||
MapGroupRoofs:
|
||||
; entries correspond to map groups
|
||||
; values are indexes for Roofs (see below)
|
||||
table_width 1, MapGroupRoofs
|
||||
db -1 ; 0
|
||||
db ROOF_OLIVINE ; 1 (Olivine)
|
||||
db ROOF_AZALEA ; 2 (Mahogany)
|
||||
@ -36,11 +38,14 @@ MapGroupRoofs:
|
||||
db ROOF_NEW_BARK ; 24 (New Bark)
|
||||
db -1 ; 25
|
||||
db ROOF_NEW_BARK ; 26 (Cherrygrove)
|
||||
assert_table_length NUM_MAP_GROUPS + 1
|
||||
|
||||
Roofs:
|
||||
; entries correspond to ROOF_* constants
|
||||
table_width ROOF_LENGTH * LEN_2BPP_TILE, Roofs
|
||||
INCBIN "gfx/tilesets/roofs/new_bark.2bpp"
|
||||
INCBIN "gfx/tilesets/roofs/violet.2bpp"
|
||||
INCBIN "gfx/tilesets/roofs/azalea.2bpp"
|
||||
INCBIN "gfx/tilesets/roofs/olivine.2bpp"
|
||||
INCBIN "gfx/tilesets/roofs/goldenrod.2bpp"
|
||||
assert_table_length NUM_ROOFS
|
||||
|
@ -2,6 +2,7 @@
|
||||
|
||||
MapGroupRoofSGBPalInds:
|
||||
; entries correspond to map groups
|
||||
table_width 1, MapGroupRoofSGBPalInds
|
||||
db PREDEFPAL_ROUTES
|
||||
db PREDEFPAL_OLIVINE
|
||||
db PREDEFPAL_MAHOGANY
|
||||
@ -29,3 +30,4 @@ MapGroupRoofSGBPalInds:
|
||||
db PREDEFPAL_NEW_BARK
|
||||
db PREDEFPAL_SAFFRON
|
||||
db PREDEFPAL_CHERRYGROVE
|
||||
assert_table_length NUM_MAP_GROUPS + 1
|
||||
|
@ -6,6 +6,7 @@ ENDM
|
||||
|
||||
SpawnPoints:
|
||||
; entries correspond to SPAWN_* constants
|
||||
table_width 4, SpawnPoints
|
||||
|
||||
spawn PLAYERS_HOUSE_2F, 3, 3
|
||||
spawn VIRIDIAN_POKECENTER_1F, 5, 3
|
||||
@ -39,3 +40,5 @@ SpawnPoints:
|
||||
spawn FAST_SHIP_CABINS_SW_SSW_NW, 6, 2
|
||||
|
||||
spawn N_A, -1, -1
|
||||
|
||||
assert_table_length NUM_SPAWNS + 1
|
||||
|
@ -20,6 +20,7 @@ MonMenuOptionStrings:
|
||||
|
||||
MonMenuOptions:
|
||||
; category, item, value; actions are in PokemonActionSubmenu (see engine/pokemon/mon_menu.asm)
|
||||
table_width 3, MonMenuOptions
|
||||
; moves
|
||||
db MONMENU_FIELD_MOVE, MONMENUITEM_CUT, CUT
|
||||
db MONMENU_FIELD_MOVE, MONMENUITEM_FLY, FLY
|
||||
@ -43,4 +44,5 @@ MonMenuOptions:
|
||||
db MONMENU_MENUOPTION, MONMENUITEM_MOVE, MONMENUVALUE_MOVE
|
||||
db MONMENU_MENUOPTION, MONMENUITEM_MAIL, MONMENUVALUE_MAIL
|
||||
db MONMENU_MENUOPTION, MONMENUITEM_ERROR, MONMENUVALUE_ERROR
|
||||
db -1
|
||||
assert_table_length NUM_MONMENUITEMS
|
||||
db -1 ; end
|
||||
|
@ -1,5 +1,6 @@
|
||||
BattleAnimations::
|
||||
; entries correspond to constants/move_constants.asm
|
||||
table_width 2, BattleAnimations
|
||||
dw BattleAnim_0
|
||||
dw BattleAnim_Pound
|
||||
dw BattleAnim_KarateChop
|
||||
@ -252,10 +253,12 @@ BattleAnimations::
|
||||
dw BattleAnim_RockSmash
|
||||
dw BattleAnim_Whirlpool
|
||||
dw BattleAnim_BeatUp
|
||||
assert_table_length NUM_ATTACKS + 1
|
||||
dw BattleAnim_252
|
||||
dw BattleAnim_253
|
||||
dw BattleAnim_254
|
||||
dw BattleAnim_SweetScent2
|
||||
assert_table_length $100
|
||||
; $100
|
||||
dw BattleAnim_ThrowPokeBall
|
||||
dw BattleAnim_SendOutMon
|
||||
@ -279,6 +282,7 @@ BattleAnimations::
|
||||
dw BattleAnim_Wobble
|
||||
dw BattleAnim_Shake
|
||||
dw BattleAnim_HitConfusion
|
||||
assert_table_length NUM_BATTLE_ANIMS + 1
|
||||
|
||||
BattleAnim_0:
|
||||
BattleAnim_252:
|
||||
|
@ -1,5 +1,6 @@
|
||||
MoveDescriptions::
|
||||
; entries correspond to move ids (see constants/move_constants.asm)
|
||||
table_width 2, MoveDescriptions
|
||||
dw PoundDescription
|
||||
dw KarateChopDescription
|
||||
dw DoubleslapDescription
|
||||
@ -251,11 +252,13 @@ MoveDescriptions::
|
||||
dw RockSmashDescription
|
||||
dw WhirlpoolDescription
|
||||
dw BeatUpDescription
|
||||
assert_table_length NUM_ATTACKS
|
||||
dw MoveFCDescription
|
||||
dw MoveFDDescription
|
||||
dw MoveFEDescription
|
||||
dw MoveFFDescription
|
||||
dw Move00Description
|
||||
assert_table_length $100
|
||||
|
||||
MoveFCDescription:
|
||||
MoveFDDescription:
|
||||
|
@ -1,5 +1,6 @@
|
||||
MoveEffectsPointers:
|
||||
; entries correspond to EFFECT_* constants
|
||||
table_width 2, MoveEffectsPointers
|
||||
dw NormalHit
|
||||
dw DoSleep
|
||||
dw PoisonHit
|
||||
@ -157,3 +158,4 @@ MoveEffectsPointers:
|
||||
dw BeatUp
|
||||
dw Fly
|
||||
dw DefenseCurl
|
||||
assert_table_length NUM_MOVE_EFECTS
|
||||
|
@ -11,7 +11,8 @@ move: MACRO
|
||||
ENDM
|
||||
|
||||
Moves:
|
||||
; entries correspond to constants/move_constants.asm
|
||||
; entries correspond to move ids (see constants/move_constants.asm)
|
||||
table_width MOVE_LENGTH, Moves
|
||||
move POUND, EFFECT_NORMAL_HIT, 40, NORMAL, 100, 35, 0
|
||||
move KARATE_CHOP, EFFECT_NORMAL_HIT, 50, FIGHTING, 100, 25, 0
|
||||
move DOUBLESLAP, EFFECT_MULTI_HIT, 15, NORMAL, 85, 10, 0
|
||||
@ -263,3 +264,4 @@ Moves:
|
||||
move ROCK_SMASH, EFFECT_DEFENSE_DOWN_HIT, 20, FIGHTING, 100, 15, 50
|
||||
move WHIRLPOOL, EFFECT_TRAP_TARGET, 15, WATER, 70, 15, 0
|
||||
move BEAT_UP, EFFECT_BEAT_UP, 10, DARK, 100, 10, 0
|
||||
assert_table_length NUM_ATTACKS
|
||||
|
@ -3,6 +3,7 @@
|
||||
|
||||
TMHMMoves:
|
||||
; entries correspond to *_TMNUM constants (see constants/item_constants.asm)
|
||||
table_width 1, TMHMMoves
|
||||
|
||||
; TMs
|
||||
n = 1
|
||||
@ -43,4 +44,6 @@ PURGE MOVE_FOR_MT
|
||||
n = n + 1
|
||||
endr
|
||||
|
||||
assert_table_length NUM_TM_HM_TUTOR
|
||||
|
||||
db 0 ; end
|
||||
|
@ -20,6 +20,7 @@ ENDM
|
||||
|
||||
PartyMenuQualityPointers:
|
||||
; entries correspond to PARTYMENUACTION_* constants
|
||||
table_width 2, PartyMenuQualityPointers
|
||||
dw .Default ; PARTYMENUACTION_CHOOSE_POKEMON
|
||||
dw .Default ; PARTYMENUACTION_HEALING_ITEM
|
||||
dw .Default ; PARTYMENUACTION_SWITCH
|
||||
@ -30,6 +31,7 @@ PartyMenuQualityPointers:
|
||||
dw .Gender ; PARTYMENUACTION_GIVE_MON_FEMALE
|
||||
dw .Default ; PARTYMENUACTION_GIVE_ITEM
|
||||
dw .Mobile ; PARTYMENUACTION_MOBILE
|
||||
assert_table_length NUM_PARTYMENUACTIONS
|
||||
|
||||
.Default: partymenuqualities NICKNAMES, HP_BAR, HP_DIGITS, LEVEL, STATUS
|
||||
.TMHM: partymenuqualities NICKNAMES, TMHM_COMPAT, LEVEL, STATUS
|
||||
|
@ -1,11 +1,13 @@
|
||||
NonTrainerCallerNames:
|
||||
; entries correspond to PHONECONTACT_* constants
|
||||
; entries correspond to PHONECONTACT_* constants (see constants/trainer_constants.asm)
|
||||
table_width 2, NonTrainerCallerNames
|
||||
dw .none
|
||||
dw .mom
|
||||
dw .bikeshop
|
||||
dw .bill
|
||||
dw .elm
|
||||
dw .buena
|
||||
assert_table_length NUM_NONTRAINER_PHONECONTACTS + 1
|
||||
|
||||
.none: db "----------@"
|
||||
.mom: db "MOM:@"
|
||||
|
@ -10,6 +10,7 @@ ENDM
|
||||
|
||||
PhoneContacts:
|
||||
; entries correspond to PHONE_* constants
|
||||
table_width PHONE_CONTACT_SIZE, PhoneContacts
|
||||
phone TRAINER_NONE, PHONE_00, N_A, 0, UnusedPhoneScript, 0, UnusedPhoneScript
|
||||
phone TRAINER_NONE, PHONECONTACT_MOM, PLAYERS_HOUSE_1F, ANYTIME, MomPhoneCalleeScript, 0, UnusedPhoneScript
|
||||
phone TRAINER_NONE, PHONECONTACT_BIKESHOP, OAKS_LAB, 0, UnusedPhoneScript, 0, UnusedPhoneScript
|
||||
@ -48,3 +49,4 @@ PhoneContacts:
|
||||
phone HIKER, PARRY1, ROUTE_45, ANYTIME, ParryPhoneCalleeScript, ANYTIME, ParryPhoneCallerScript
|
||||
phone PICNICKER, ERIN1, ROUTE_46, ANYTIME, ErinPhoneCalleeScript, ANYTIME, ErinPhoneCallerScript
|
||||
phone TRAINER_NONE, PHONECONTACT_BUENA, GOLDENROD_DEPT_STORE_ROOF, ANYTIME, BuenaPhoneCalleeScript, ANYTIME, BuenaPhoneCallerScript
|
||||
assert_table_length NUM_PHONE_CONTACTS + 1
|
||||
|
@ -7,6 +7,7 @@ ENDM
|
||||
|
||||
SpecialPhoneCallList:
|
||||
; entries correspond to SPECIALCALL_* constants
|
||||
table_width SPECIALCALL_SIZE, SpecialPhoneCallList
|
||||
specialcall SpecialCallOnlyWhenOutside, PHONECONTACT_ELM, ElmPhoneCallerScript
|
||||
specialcall SpecialCallOnlyWhenOutside, PHONECONTACT_ELM, ElmPhoneCallerScript
|
||||
specialcall SpecialCallOnlyWhenOutside, PHONECONTACT_ELM, ElmPhoneCallerScript
|
||||
@ -15,3 +16,4 @@ SpecialPhoneCallList:
|
||||
specialcall SpecialCallWhereverYouAre, PHONECONTACT_BIKESHOP, BikeShopPhoneCallerScript
|
||||
specialcall SpecialCallWhereverYouAre, PHONECONTACT_MOM, MomPhoneLectureScript
|
||||
specialcall SpecialCallOnlyWhenOutside, PHONECONTACT_ELM, ElmPhoneCallerScript
|
||||
assert_table_length NUM_SPECIALCALLS
|
||||
|
@ -32,6 +32,7 @@ endr
|
||||
ENDM
|
||||
|
||||
BaseData::
|
||||
table_width BASE_DATA_SIZE, BaseData
|
||||
INCLUDE "data/pokemon/base_stats/bulbasaur.asm"
|
||||
INCLUDE "data/pokemon/base_stats/ivysaur.asm"
|
||||
INCLUDE "data/pokemon/base_stats/venusaur.asm"
|
||||
@ -283,5 +284,4 @@ INCLUDE "data/pokemon/base_stats/tyranitar.asm"
|
||||
INCLUDE "data/pokemon/base_stats/lugia.asm"
|
||||
INCLUDE "data/pokemon/base_stats/ho_oh.asm"
|
||||
INCLUDE "data/pokemon/base_stats/celebi.asm"
|
||||
.End:
|
||||
assert BaseData.End - BaseData == NUM_POKEMON * BASE_DATA_SIZE
|
||||
assert_table_length NUM_POKEMON
|
||||
|
@ -5,6 +5,7 @@ ENDM
|
||||
|
||||
PokemonCries::
|
||||
; entries correspond to constants/pokemon_constants.asm
|
||||
table_width MON_CRY_LENGTH, PokemonCries
|
||||
mon_cry CRY_BULBASAUR, 128, 129 ; BULBASAUR
|
||||
mon_cry CRY_BULBASAUR, 32, 256 ; IVYSAUR
|
||||
mon_cry CRY_BULBASAUR, 0, 320 ; VENUSAUR
|
||||
@ -256,7 +257,9 @@ PokemonCries::
|
||||
mon_cry CRY_TYPHLOSION, 0, 256 ; LUGIA
|
||||
mon_cry CRY_AIPOM, 0, 384 ; HO_OH
|
||||
mon_cry CRY_ENTEI, 330, 273 ; CELEBI
|
||||
assert_table_length NUM_POKEMON
|
||||
mon_cry CRY_NIDORAN_M, 0, 0 ; 252
|
||||
mon_cry CRY_NIDORAN_M, 0, 0 ; 253
|
||||
mon_cry CRY_NIDORAN_M, 0, 0 ; 254
|
||||
mon_cry CRY_NIDORAN_M, 0, 0 ; 255
|
||||
assert_table_length $ff
|
||||
|
@ -1,5 +1,6 @@
|
||||
PokedexDataPointerTable:
|
||||
; entries correspond to constants/pokemon_constants.asm
|
||||
table_width 2, PokedexDataPointerTable
|
||||
dw BulbasaurPokedexEntry
|
||||
dw IvysaurPokedexEntry
|
||||
dw VenusaurPokedexEntry
|
||||
@ -251,3 +252,4 @@ PokedexDataPointerTable:
|
||||
dw LugiaPokedexEntry
|
||||
dw HoOhPokedexEntry
|
||||
dw CelebiPokedexEntry
|
||||
assert_table_length NUM_POKEMON
|
||||
|
@ -1,6 +1,7 @@
|
||||
; Every Pokémon sorted alphabetically by name.
|
||||
|
||||
AlphabeticalPokedexOrder:
|
||||
table_width 1, AlphabeticalPokedexOrder
|
||||
db ABRA
|
||||
db AERODACTYL
|
||||
db AIPOM
|
||||
@ -252,3 +253,4 @@ AlphabeticalPokedexOrder:
|
||||
db YANMA
|
||||
db ZAPDOS
|
||||
db ZUBAT
|
||||
assert_table_length NUM_POKEMON
|
||||
|
@ -1,6 +1,7 @@
|
||||
; Every Pokémon sorted in New Pokédex Order.
|
||||
|
||||
NewPokedexOrder:
|
||||
table_width 1, NewPokedexOrder
|
||||
db CHIKORITA
|
||||
db BAYLEEF
|
||||
db MEGANIUM
|
||||
@ -252,3 +253,4 @@ NewPokedexOrder:
|
||||
db MEWTWO
|
||||
db MEW
|
||||
db CELEBI
|
||||
assert_table_length NUM_POKEMON
|
||||
|
@ -1,4 +1,5 @@
|
||||
EggMovePointers::
|
||||
table_width 2, EggMovePointers
|
||||
dw BulbasaurEggMoves
|
||||
dw NoEggMoves
|
||||
dw NoEggMoves
|
||||
@ -250,3 +251,4 @@ EggMovePointers::
|
||||
dw NoEggMoves
|
||||
dw NoEggMoves
|
||||
dw NoEggMoves
|
||||
assert_table_length NUM_POKEMON
|
||||
|
@ -1,6 +1,7 @@
|
||||
; Evolutions and attacks are grouped together since they're both checked at level-up.
|
||||
|
||||
EvosAttacksPointers::
|
||||
table_width 2, EvosAttacksPointers
|
||||
dw BulbasaurEvosAttacks
|
||||
dw IvysaurEvosAttacks
|
||||
dw VenusaurEvosAttacks
|
||||
@ -252,3 +253,4 @@ EvosAttacksPointers::
|
||||
dw LugiaEvosAttacks
|
||||
dw HoOhEvosAttacks
|
||||
dw CelebiEvosAttacks
|
||||
assert_table_length NUM_POKEMON
|
||||
|
@ -1,6 +1,7 @@
|
||||
; The original base Special stat for each Pokémon from Red/Blue
|
||||
|
||||
KantoMonSpecials:
|
||||
table_width 1, KantoMonSpecials
|
||||
db 65 ; BULBASAUR
|
||||
db 80 ; IVYSAUR
|
||||
db 100 ; VENUSAUR
|
||||
@ -152,3 +153,4 @@ KantoMonSpecials:
|
||||
db 100 ; DRAGONITE
|
||||
db 154 ; MEWTWO
|
||||
db 100 ; MEW
|
||||
assert_table_length JOHTO_POKEMON - 1
|
||||
|
@ -1,4 +1,5 @@
|
||||
Pokered_MonIndices:
|
||||
table_width 1, Pokered_MonIndices
|
||||
db RHYDON
|
||||
db KANGASKHAN
|
||||
db NIDORAN_M
|
||||
@ -189,7 +190,7 @@ Pokered_MonIndices:
|
||||
db BELLSPROUT
|
||||
db WEEPINBELL
|
||||
db VICTREEBEL
|
||||
|
||||
assert_table_length 190 ; gen 1 mon indexes
|
||||
db CHIKORITA
|
||||
db BAYLEEF
|
||||
db MEGANIUM
|
||||
@ -252,3 +253,4 @@ Pokered_MonIndices:
|
||||
db QWILFISH
|
||||
db WOBBUFFET
|
||||
db WOBBUFFET
|
||||
assert_table_length NUM_POKEMON + 1
|
||||
|
@ -1,6 +1,7 @@
|
||||
; party menu icons
|
||||
|
||||
MonMenuIcons:
|
||||
table_width 1, MonMenuIcons
|
||||
db ICON_BULBASAUR ; BULBASAUR
|
||||
db ICON_BULBASAUR ; IVYSAUR
|
||||
db ICON_BULBASAUR ; VENUSAUR
|
||||
@ -252,3 +253,4 @@ MonMenuIcons:
|
||||
db ICON_LUGIA ; LUGIA
|
||||
db ICON_HO_OH ; HO_OH
|
||||
db ICON_HUMANSHAPE ; CELEBI
|
||||
assert_table_length NUM_POKEMON
|
||||
|
@ -1,4 +1,5 @@
|
||||
PokemonNames::
|
||||
table_width NAME_LENGTH - 1, PokemonNames
|
||||
db "BULBASAUR@"
|
||||
db "IVYSAUR@@@"
|
||||
db "VENUSAUR@@"
|
||||
@ -250,8 +251,11 @@ PokemonNames::
|
||||
db "LUGIA@@@@@"
|
||||
db "HO-OH@@@@@"
|
||||
db "CELEBI@@@@"
|
||||
assert_table_length NUM_POKEMON
|
||||
db "?????@@@@@"
|
||||
db "EGG@@@@@@@"
|
||||
assert_table_length EGG
|
||||
db "?????@@@@@"
|
||||
db "?????@@@@@"
|
||||
db "?????@@@@@"
|
||||
assert_table_length $100
|
||||
|
@ -5,6 +5,9 @@ PokemonPalettes:
|
||||
; only the middle two colors are included, not black or white.
|
||||
; Shiny palettes are defined directly, not generated.
|
||||
|
||||
; 2 middle palettes, front and shiny, with 2 colors each
|
||||
table_width PAL_COLOR_SIZE * 2 * 2, PokemonPalettes
|
||||
|
||||
; 000
|
||||
RGB 30, 22, 17
|
||||
RGB 16, 14, 19
|
||||
@ -515,6 +518,8 @@ INCLUDE "gfx/pokemon/ho_oh/shiny.pal"
|
||||
INCBIN "gfx/pokemon/celebi/front.gbcpal", middle_colors
|
||||
INCLUDE "gfx/pokemon/celebi/shiny.pal"
|
||||
|
||||
assert_table_length NUM_POKEMON + 1
|
||||
|
||||
; 252
|
||||
RGB 30, 26, 11
|
||||
RGB 23, 16, 00
|
||||
@ -525,6 +530,8 @@ INCLUDE "gfx/pokemon/celebi/shiny.pal"
|
||||
INCBIN "gfx/pokemon/egg/front.gbcpal", middle_colors
|
||||
INCLUDE "gfx/pokemon/egg/shiny.pal"
|
||||
|
||||
assert_table_length EGG + 1
|
||||
|
||||
; 254
|
||||
RGB 30, 26, 11
|
||||
RGB 23, 16, 00
|
||||
@ -538,3 +545,5 @@ INCLUDE "gfx/pokemon/egg/shiny.pal"
|
||||
; 255 shiny
|
||||
RGB 23, 23, 23
|
||||
RGB 17, 17, 17
|
||||
|
||||
assert_table_length $100
|
||||
|
@ -2,6 +2,7 @@
|
||||
|
||||
PokemonPicPointers::
|
||||
; entries correspond to Pokémon species, two apiece
|
||||
table_width 3 * 2, PokemonPicPointers
|
||||
dba_pic BulbasaurFrontpic
|
||||
dba_pic BulbasaurBackpic
|
||||
dba_pic IvysaurFrontpic
|
||||
@ -507,7 +508,9 @@ PokemonPicPointers::
|
||||
dba_pic HoOhBackpic
|
||||
dba_pic CelebiFrontpic
|
||||
dba_pic CelebiBackpic
|
||||
assert_table_length NUM_POKEMON
|
||||
dbw -1, -1 ; unused
|
||||
dbw -1, -1 ; unused
|
||||
dba_pic EggPic
|
||||
dbw -1, -1 ; unused
|
||||
assert_table_length EGG
|
||||
|
@ -1,5 +1,6 @@
|
||||
UnownPicPointers::
|
||||
; entries correspond to Unown letters, two apiece
|
||||
table_width 3 * 2, UnownPicPointers
|
||||
dba_pic UnownAFrontpic
|
||||
dba_pic UnownABackpic
|
||||
dba_pic UnownBFrontpic
|
||||
@ -52,3 +53,4 @@ UnownPicPointers::
|
||||
dba_pic UnownYBackpic
|
||||
dba_pic UnownZFrontpic
|
||||
dba_pic UnownZBackpic
|
||||
assert_table_length NUM_UNOWN
|
||||
|
@ -9,7 +9,8 @@ ENDM
|
||||
|
||||
UnownWords:
|
||||
; entries correspond to UNOWN_* form constants
|
||||
dw UnownWordA
|
||||
table_width 2, UnownWords
|
||||
dw UnownWordA ; unused
|
||||
dw UnownWordA
|
||||
dw UnownWordB
|
||||
dw UnownWordC
|
||||
@ -36,6 +37,7 @@ UnownWords:
|
||||
dw UnownWordX
|
||||
dw UnownWordY
|
||||
dw UnownWordZ
|
||||
assert_table_length NUM_UNOWN + 1
|
||||
|
||||
UnownWordA: unownword "ANGRY"
|
||||
UnownWordB: unownword "BEAR"
|
||||
|
@ -1,5 +1,5 @@
|
||||
BuenasPasswordTable:
|
||||
; there are NUM_PASSWORD_CATEGORIES entries
|
||||
table_width 2, BuenasPasswordTable
|
||||
dw .JohtoStarters
|
||||
dw .Beverages
|
||||
dw .HealingItems
|
||||
@ -11,6 +11,7 @@ BuenasPasswordTable:
|
||||
dw .Moves
|
||||
dw .XItems
|
||||
dw .RadioStations
|
||||
assert_table_length NUM_PASSWORD_CATEGORIES
|
||||
|
||||
; string type, points, option 1, option 2, option 3
|
||||
.JohtoStarters: db BUENA_MON, 10, CYNDAQUIL, TOTODILE, CHIKORITA
|
||||
|
@ -1,5 +1,6 @@
|
||||
RadioChannelSongs:
|
||||
; entries correspond to radio channel ids
|
||||
; entries correspond to radio channel ids (see constants/radio_constants.asm)
|
||||
table_width 2, RadioChannelSongs
|
||||
dw MUSIC_POKEMON_TALK
|
||||
dw MUSIC_POKEMON_CENTER
|
||||
dw MUSIC_TITLE
|
||||
@ -11,3 +12,4 @@ RadioChannelSongs:
|
||||
dw MUSIC_POKE_FLUTE_CHANNEL
|
||||
dw MUSIC_RUINS_OF_ALPH_RADIO
|
||||
dw MUSIC_LAKE_OF_RAGE_ROCKET_RADIO
|
||||
assert_table_length NUM_RADIO_CHANNELS
|
||||
|
@ -1,7 +1,6 @@
|
||||
; Oak's Pokémon Talk will list wild Pokémon on these maps.
|
||||
|
||||
OaksPKMNTalkRoutes:
|
||||
; there are NUM_OAKS_POKEMON_TALK_ROUTES entries
|
||||
map_id ROUTE_29
|
||||
map_id ROUTE_46
|
||||
map_id ROUTE_30
|
||||
@ -17,3 +16,4 @@ OaksPKMNTalkRoutes:
|
||||
map_id ROUTE_45
|
||||
map_id ROUTE_36
|
||||
map_id ROUTE_31
|
||||
.End
|
||||
|
@ -1,5 +1,6 @@
|
||||
SpriteAnimFrameData:
|
||||
; entries correspond to SPRITE_ANIM_FRAMESET_* constants
|
||||
; entries correspond to SPRITE_ANIM_FRAMESET_* constants (see constants/sprite_anim_constants.asm)
|
||||
table_width 2, SpriteAnimFrameData
|
||||
dw .Frameset_00
|
||||
dw .Frameset_PartyMon
|
||||
dw .Frameset_PartyMonWithMail
|
||||
@ -66,6 +67,7 @@ SpriteAnimFrameData:
|
||||
dw .Frameset_IntroUnownF
|
||||
dw .Frameset_CelebiLeft
|
||||
dw .Frameset_CelebiRight
|
||||
assert_table_length NUM_SPRITE_ANIM_FRAMESETS
|
||||
|
||||
.Frameset_00:
|
||||
frame SPRITE_ANIM_OAMSET_RED_WALK_1, 32
|
||||
|
@ -1,5 +1,6 @@
|
||||
SpriteAnimOAMData:
|
||||
; entries correspond to SPRITE_ANIM_OAMSET_* constants
|
||||
; entries correspond to SPRITE_ANIM_OAMSET_* constants (see constants/sprite_anim_constants.asm)
|
||||
table_width 3, SpriteAnimOAMData
|
||||
; vtile offset, data pointer
|
||||
dbw $00, .OAMData_RedWalk ; SPRITE_ANIM_OAMSET_RED_WALK_1
|
||||
dbw $04, .OAMData_RedWalk ; SPRITE_ANIM_OAMSET_RED_WALK_2
|
||||
@ -141,6 +142,7 @@ SpriteAnimOAMData:
|
||||
dbw $08, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_9
|
||||
dbw $04, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_10
|
||||
dbw $00, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_11
|
||||
assert_table_length NUM_SPRITE_ANIM_OAMSETS
|
||||
|
||||
.OAMData_1x1_Palette0:
|
||||
db 1
|
||||
|
@ -1,5 +1,6 @@
|
||||
SpriteAnimSeqData:
|
||||
; entries correspond to SPRITE_ANIM_INDEX_* constants
|
||||
; entries correspond to SPRITE_ANIM_INDEX_* constants (see constants/sprite_anim_constants.asm)
|
||||
table_width 3, SpriteAnimSeqData
|
||||
; frameset, sequence, tile
|
||||
; SPRITE_ANIM_INDEX_PARTY_MON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_SEQ_PARTY_MON, SPRITE_ANIM_DICT_DEFAULT
|
||||
@ -91,3 +92,4 @@ SpriteAnimSeqData:
|
||||
db SPRITE_ANIM_FRAMESET_INTRO_SUICUNE_AWAY, SPRITE_ANIM_SEQ_INTRO_SUICUNE_AWAY, SPRITE_ANIM_DICT_DEFAULT
|
||||
; SPRITE_ANIM_INDEX_CELEBI
|
||||
db SPRITE_ANIM_FRAMESET_CELEBI_LEFT, SPRITE_ANIM_SEQ_NULL, SPRITE_ANIM_DICT_DEFAULT
|
||||
assert_table_length NUM_SPRITE_ANIM_INDEXES
|
||||
|
@ -7,6 +7,7 @@ ENDM
|
||||
|
||||
Emotes:
|
||||
; entries correspond to EMOTE_* constants
|
||||
table_width EMOTE_LENGTH, Emotes
|
||||
emote ShockEmote, 4, $f8
|
||||
emote QuestionEmote, 4, $f8
|
||||
emote HappyEmote, 4, $f8
|
||||
@ -19,3 +20,4 @@ Emotes:
|
||||
emote FishingRodGFX, 2, $fc
|
||||
emote BoulderDustGFX, 2, $fe
|
||||
emote GrassRustleGFX, 1, $fe
|
||||
assert_table_length NUM_EMOTES
|
||||
|
@ -1,5 +1,6 @@
|
||||
Facings:
|
||||
; entries correspond to FACING_* constants
|
||||
; entries correspond to FACING_* constants (see constants/map_object_constants.asm)
|
||||
table_width 2, Facings
|
||||
dw FacingStepDown0
|
||||
dw FacingStepDown1
|
||||
dw FacingStepDown2
|
||||
@ -32,10 +33,8 @@ Facings:
|
||||
dw FacingBoulderDust2
|
||||
dw FacingGrass1
|
||||
dw FacingGrass2
|
||||
.End
|
||||
dw 0
|
||||
|
||||
NUM_FACINGS EQU (Facings.End - Facings) / 2
|
||||
assert_table_length NUM_FACINGS
|
||||
dw 0 ; end
|
||||
|
||||
; Tables used as a reference to transform OAM data.
|
||||
|
||||
|
@ -1,5 +1,6 @@
|
||||
SpriteMovementData::
|
||||
; entries correspond to SPRITEMOVEDATA_* constants
|
||||
table_width NUM_SPRITEMOVEDATA_FIELDS, SpriteMovementData
|
||||
|
||||
; SPRITEMOVEDATA_00
|
||||
db SPRITEMOVEFN_00 ; movement function
|
||||
@ -304,3 +305,5 @@ SpriteMovementData::
|
||||
db 0 ; flags1
|
||||
db 0 ; flags2
|
||||
db 0 ; palette flags
|
||||
|
||||
assert_table_length NUM_SPRITEMOVEDATA + 1
|
||||
|
@ -1,5 +1,6 @@
|
||||
SpriteMons:
|
||||
; entries correspond to SPRITE_* constants past SPRITE_POKEMON
|
||||
table_width 1, SpriteMons
|
||||
db UNOWN
|
||||
db GEODUDE
|
||||
db GROWLITHE
|
||||
@ -35,3 +36,4 @@ SpriteMons:
|
||||
db GYARADOS
|
||||
db LUGIA
|
||||
db HO_OH
|
||||
assert_table_length NUM_POKEMON_SPRITES
|
||||
|
@ -6,6 +6,7 @@ ENDM
|
||||
|
||||
OverworldSprites:
|
||||
; entries correspond to SPRITE_* constants
|
||||
table_width NUM_SPRITEDATA_FIELDS, OverworldSprites
|
||||
overworld_sprite ChrisSpriteGFX, 12, WALKING_SPRITE, PAL_OW_RED
|
||||
overworld_sprite ChrisBikeSpriteGFX, 12, WALKING_SPRITE, PAL_OW_RED
|
||||
overworld_sprite GameboyKidSpriteGFX, 12, STANDING_SPRITE, PAL_OW_GREEN
|
||||
@ -108,3 +109,4 @@ OverworldSprites:
|
||||
overworld_sprite EnteiSpriteGFX, 4, STILL_SPRITE, PAL_OW_RED
|
||||
overworld_sprite RaikouSpriteGFX, 4, STILL_SPRITE, PAL_OW_RED
|
||||
overworld_sprite StandingYoungsterSpriteGFX, 12, STANDING_SPRITE, PAL_OW_BLUE
|
||||
assert_table_length NUM_OVERWORLD_SPRITES
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user