mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2024-11-16 11:27:33 -08:00
parent
a4d346cc8c
commit
3648afda16
24
STYLE.md
24
STYLE.md
@ -79,19 +79,19 @@ hPascalCase: ; hram
|
||||
PascalCase: ; rom
|
||||
|
||||
; Some constants are also prefixed
|
||||
rBGP EQU $ff47 ; hardware register
|
||||
DEF rBGP EQU $ff47 ; hardware register
|
||||
|
||||
; Most other constants should be upper case
|
||||
UPPER_CASE EQU 1
|
||||
DEF UPPER_CASE EQU 1
|
||||
|
||||
|
||||
; Long lists of constants should be aligned
|
||||
SHORT_CONSTANT EQU 1
|
||||
LONGER_CONSTANT EQU 2
|
||||
PRETTY_LONG_CONSTANT EQU 3
|
||||
TINY EQU 4
|
||||
DEF SHORT_CONSTANT EQU 1
|
||||
DEF LONGER_CONSTANT EQU 2
|
||||
DEF PRETTY_LONG_CONSTANT EQU 3
|
||||
DEF TINY EQU 4
|
||||
|
||||
BUT_ONLY_RELATED_CONSTANTS EQU 5
|
||||
DEF BUT_ONLY_RELATED_CONSTANTS EQU 5
|
||||
|
||||
```
|
||||
|
||||
@ -103,12 +103,12 @@ BUT_ONLY_RELATED_CONSTANTS EQU 5
|
||||
SECTION "section", ROMX
|
||||
INCLUDE "filename"
|
||||
INCBIN "filename"
|
||||
my_macro: MACRO
|
||||
MACRO my_macro
|
||||
nop
|
||||
ENDM
|
||||
TEST EQUS "test"
|
||||
DEF TEST EQUS "test"
|
||||
PURGE TEST
|
||||
TEST EQU 2
|
||||
DEF TEST EQU 2
|
||||
|
||||
; data macros should be lowercase
|
||||
db 1
|
||||
@ -135,7 +135,7 @@ endr
|
||||
|
||||
```asm
|
||||
|
||||
when_in_doubt_lowercase: MACRO
|
||||
MACRO when_in_doubt_lowercase
|
||||
|
||||
; only shift if it's required or more readable
|
||||
|
||||
@ -158,7 +158,7 @@ endr
|
||||
ENDM
|
||||
|
||||
|
||||
UPPER_CASE_IS_OK_SOMETIMES: MACRO
|
||||
MACRO UPPER_CASE_IS_OK_SOMETIMES
|
||||
|
||||
; but I can't think of any examples besides ACRONYMS
|
||||
|
||||
|
@ -13,7 +13,7 @@
|
||||
const A_ ; a
|
||||
const A# ; b
|
||||
const B_ ; c
|
||||
NUM_NOTES EQU const_value - 1
|
||||
DEF NUM_NOTES EQU const_value - 1
|
||||
|
||||
; channel
|
||||
; ChannelPointers indexes (see audio/engine.asm)
|
||||
@ -22,60 +22,60 @@ NUM_NOTES EQU const_value - 1
|
||||
const CHAN2 ; 1
|
||||
const CHAN3 ; 2
|
||||
const CHAN4 ; 3
|
||||
NUM_MUSIC_CHANS EQU const_value
|
||||
DEF NUM_MUSIC_CHANS EQU const_value
|
||||
const CHAN5 ; 4
|
||||
const CHAN6 ; 5
|
||||
const CHAN7 ; 6
|
||||
const CHAN8 ; 7
|
||||
NUM_NOISE_CHANS EQU const_value - NUM_MUSIC_CHANS
|
||||
NUM_CHANNELS EQU const_value
|
||||
DEF NUM_NOISE_CHANS EQU const_value - NUM_MUSIC_CHANS
|
||||
DEF NUM_CHANNELS EQU const_value
|
||||
|
||||
; channel_struct members (see macros/wram.asm)
|
||||
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
|
||||
DEF CHANNEL_MUSIC_ID rw
|
||||
DEF CHANNEL_MUSIC_BANK rb
|
||||
DEF CHANNEL_FLAGS1 rb
|
||||
DEF CHANNEL_FLAGS2 rb
|
||||
DEF CHANNEL_FLAGS3 rb
|
||||
DEF CHANNEL_MUSIC_ADDRESS rw
|
||||
DEF CHANNEL_LAST_MUSIC_ADDRESS rw
|
||||
rb_skip 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
|
||||
DEF CHANNEL_NOTE_FLAGS rb
|
||||
DEF CHANNEL_CONDITION rb
|
||||
DEF CHANNEL_DUTY_CYCLE rb
|
||||
DEF CHANNEL_VOLUME_ENVELOPE rb
|
||||
DEF CHANNEL_FREQUENCY rw
|
||||
DEF CHANNEL_PITCH rb
|
||||
DEF CHANNEL_OCTAVE rb
|
||||
DEF CHANNEL_TRANSPOSITION rb
|
||||
DEF CHANNEL_NOTE_DURATION rb
|
||||
DEF CHANNEL_FIELD16 rb
|
||||
rb_skip
|
||||
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
|
||||
DEF CHANNEL_LOOP_COUNT rb
|
||||
DEF CHANNEL_TEMPO rw
|
||||
DEF CHANNEL_TRACKS rb
|
||||
DEF CHANNEL_DUTY_CYCLE_PATTERN rb
|
||||
DEF CHANNEL_VIBRATO_DELAY_COUNT rb
|
||||
DEF CHANNEL_VIBRATO_DELAY rb
|
||||
DEF CHANNEL_VIBRATO_EXTENT rb
|
||||
DEF CHANNEL_VIBRATO_RATE rb
|
||||
DEF CHANNEL_PITCH_SLIDE_TARGET rw
|
||||
DEF CHANNEL_PITCH_SLIDE_AMOUNT rb
|
||||
DEF CHANNEL_PITCH_SLIDE_AMOUNT_FRACTION rb
|
||||
DEF CHANNEL_FIELD25 rb
|
||||
rb_skip
|
||||
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
|
||||
DEF CHANNEL_PITCH_OFFSET rw
|
||||
DEF CHANNEL_FIELD29 rb
|
||||
DEF CHANNEL_FIELD2A rw
|
||||
DEF CHANNEL_FIELD2C rb
|
||||
DEF CHANNEL_NOTE_LENGTH rb
|
||||
DEF CHANNEL_FIELD2E rb
|
||||
DEF CHANNEL_FIELD2F rb
|
||||
DEF CHANNEL_FIELD30 rb
|
||||
rb_skip
|
||||
CHANNEL_STRUCT_LENGTH EQU _RS
|
||||
DEF CHANNEL_STRUCT_LENGTH EQU _RS
|
||||
|
||||
NOISE_CHAN_F EQU 2 ; bit set in CHAN5-CHAN7
|
||||
DEF NOISE_CHAN_F EQU 2 ; bit set in CHAN5-CHAN7
|
||||
|
||||
; Flags1
|
||||
const_def
|
||||
@ -113,22 +113,22 @@ NOISE_CHAN_F EQU 2 ; bit set in CHAN5-CHAN7
|
||||
const NOTE_VIBRATO_OVERRIDE ; 6
|
||||
|
||||
; wVolume
|
||||
VOLUME_SO1_F EQU 3
|
||||
VOLUME_SO2_F EQU 7
|
||||
VOLUME_SO1_LEVEL EQU %00000111
|
||||
VOLUME_SO2_LEVEL EQU %01110000
|
||||
MAX_VOLUME EQU $77
|
||||
DEF VOLUME_SO1_F EQU 3
|
||||
DEF VOLUME_SO2_F EQU 7
|
||||
DEF VOLUME_SO1_LEVEL EQU %00000111
|
||||
DEF VOLUME_SO2_LEVEL EQU %01110000
|
||||
DEF MAX_VOLUME EQU $77
|
||||
|
||||
; wSoundInput
|
||||
SOUND_INPUT_CH1_F EQU 0
|
||||
SOUND_INPUT_CH2_F EQU 1
|
||||
SOUND_INPUT_CH3_F EQU 2
|
||||
SOUND_INPUT_CH4_F EQU 3
|
||||
SOUND_INPUT_GLOBAL_F EQU 7
|
||||
DEF SOUND_INPUT_CH1_F EQU 0
|
||||
DEF SOUND_INPUT_CH2_F EQU 1
|
||||
DEF SOUND_INPUT_CH3_F EQU 2
|
||||
DEF SOUND_INPUT_CH4_F EQU 3
|
||||
DEF SOUND_INPUT_GLOBAL_F EQU 7
|
||||
|
||||
; wLowHealthAlarm
|
||||
DANGER_PITCH_F EQU 4
|
||||
DANGER_ON_F EQU 7
|
||||
DEF DANGER_PITCH_F EQU 4
|
||||
DEF DANGER_ON_F EQU 7
|
||||
|
||||
; wMusicFade
|
||||
MUSIC_FADE_IN_F EQU 7
|
||||
DEF MUSIC_FADE_IN_F EQU 7
|
||||
|
@ -1,32 +1,32 @@
|
||||
; battle_anim_struct members (see macros/wram.asm)
|
||||
rsreset
|
||||
BATTLEANIMSTRUCT_INDEX rb
|
||||
BATTLEANIMSTRUCT_OAMFLAGS rb
|
||||
BATTLEANIMSTRUCT_FIX_Y rb
|
||||
BATTLEANIMSTRUCT_FRAMESET_ID rb
|
||||
BATTLEANIMSTRUCT_FUNCTION rb
|
||||
BATTLEANIMSTRUCT_PALETTE rb
|
||||
BATTLEANIMSTRUCT_TILEID rb
|
||||
BATTLEANIMOBJ_LENGTH EQU _RS - 1 ; discount BATTLEANIMSTRUCT_INDEX
|
||||
BATTLEANIMSTRUCT_XCOORD rb
|
||||
BATTLEANIMSTRUCT_YCOORD rb
|
||||
BATTLEANIMSTRUCT_XOFFSET rb
|
||||
BATTLEANIMSTRUCT_YOFFSET rb
|
||||
BATTLEANIMSTRUCT_PARAM rb
|
||||
BATTLEANIMSTRUCT_DURATION rb
|
||||
BATTLEANIMSTRUCT_FRAME rb
|
||||
BATTLEANIMSTRUCT_JUMPTABLE_INDEX rb
|
||||
BATTLEANIMSTRUCT_VAR1 rb
|
||||
BATTLEANIMSTRUCT_VAR2 rb
|
||||
DEF BATTLEANIMSTRUCT_INDEX rb
|
||||
DEF BATTLEANIMSTRUCT_OAMFLAGS rb
|
||||
DEF BATTLEANIMSTRUCT_FIX_Y rb
|
||||
DEF BATTLEANIMSTRUCT_FRAMESET_ID rb
|
||||
DEF BATTLEANIMSTRUCT_FUNCTION rb
|
||||
DEF BATTLEANIMSTRUCT_PALETTE rb
|
||||
DEF BATTLEANIMSTRUCT_TILEID rb
|
||||
DEF BATTLEANIMOBJ_LENGTH EQU _RS - 1 ; discount BATTLEANIMSTRUCT_INDEX
|
||||
DEF BATTLEANIMSTRUCT_XCOORD rb
|
||||
DEF BATTLEANIMSTRUCT_YCOORD rb
|
||||
DEF BATTLEANIMSTRUCT_XOFFSET rb
|
||||
DEF BATTLEANIMSTRUCT_YOFFSET rb
|
||||
DEF BATTLEANIMSTRUCT_PARAM rb
|
||||
DEF BATTLEANIMSTRUCT_DURATION rb
|
||||
DEF BATTLEANIMSTRUCT_FRAME rb
|
||||
DEF BATTLEANIMSTRUCT_JUMPTABLE_INDEX rb
|
||||
DEF BATTLEANIMSTRUCT_VAR1 rb
|
||||
DEF BATTLEANIMSTRUCT_VAR2 rb
|
||||
rb_skip 7
|
||||
BATTLEANIMSTRUCT_LENGTH EQU _RS
|
||||
NUM_ANIM_OBJECTS EQU 10 ; see wActiveAnimObjects
|
||||
DEF BATTLEANIMSTRUCT_LENGTH EQU _RS
|
||||
DEF NUM_ANIM_OBJECTS EQU 10 ; see wActiveAnimObjects
|
||||
|
||||
; wBattleAnimTileDict size (see wram.asm)
|
||||
NUM_BATTLEANIMTILEDICT_ENTRIES EQU 5
|
||||
DEF NUM_BATTLEANIMTILEDICT_ENTRIES EQU 5
|
||||
|
||||
; Start tile for battle animation graphics
|
||||
BATTLEANIM_BASE_TILE EQU 7 * 7 ; Maximum size of a pokemon picture
|
||||
DEF BATTLEANIM_BASE_TILE EQU 7 * 7 ; Maximum size of a pokemon picture
|
||||
|
||||
; BattleAnimObjects indexes (see data/battle_anims/objects.asm)
|
||||
const_def
|
||||
@ -218,7 +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
|
||||
DEF NUM_ANIM_OBJS EQU const_value
|
||||
|
||||
; DoBattleAnimFrame arguments (see engine/battle_anims/functions.asm)
|
||||
const_def
|
||||
@ -302,7 +302,7 @@ NUM_ANIM_OBJS EQU const_value
|
||||
const BATTLEANIMFUNC_ANCIENT_POWER
|
||||
const BATTLEANIMFUNC_ROCK_SMASH
|
||||
const BATTLEANIMFUNC_COTTON
|
||||
NUM_BATTLEANIMFUNCS EQU const_value
|
||||
DEF NUM_BATTLEANIMFUNCS EQU const_value
|
||||
|
||||
; BattleAnimFrameData indexes (see data/battle_anims/framesets.asm)
|
||||
const_def
|
||||
@ -491,7 +491,7 @@ NUM_BATTLEANIMFUNCS EQU const_value
|
||||
const BATTLEANIMFRAMESET_B6
|
||||
const BATTLEANIMFRAMESET_B7
|
||||
const BATTLEANIMFRAMESET_B8
|
||||
NUM_BATTLEANIMFRAMESETS EQU const_value
|
||||
DEF NUM_BATTLEANIMFRAMESETS EQU const_value
|
||||
|
||||
; BattleAnimOAMData indexes (see data/battle_anims/oam.asm)
|
||||
const_def
|
||||
@ -711,7 +711,7 @@ NUM_BATTLEANIMFRAMESETS EQU const_value
|
||||
const BATTLEANIMOAMSET_D5
|
||||
const BATTLEANIMOAMSET_D6
|
||||
const BATTLEANIMOAMSET_D7
|
||||
NUM_BATTLEANIMOAMSETS EQU const_value
|
||||
DEF NUM_BATTLEANIMOAMSETS EQU const_value
|
||||
|
||||
; BattleBGEffects indexes (see engine/battle_anims/bg_effects.asm)
|
||||
const_def 1
|
||||
@ -768,7 +768,7 @@ NUM_BATTLEANIMOAMSETS EQU const_value
|
||||
const ANIM_BG_VIBRATE_MON
|
||||
const ANIM_BG_WOBBLE_PLAYER
|
||||
const ANIM_BG_WOBBLE_SCREEN
|
||||
NUM_ANIM_BGS EQU const_value - 1
|
||||
DEF NUM_ANIM_BGS EQU const_value - 1
|
||||
|
||||
; wBattleAnimTileDict keys (see wram.asm)
|
||||
; AnimObjGFX indexes (see data/battle_anims/object_gfx.asm)
|
||||
@ -814,16 +814,16 @@ NUM_ANIM_BGS EQU const_value - 1
|
||||
const ANIM_GFX_AEROBLAST
|
||||
const ANIM_GFX_PLAYERHEAD
|
||||
const ANIM_GFX_ENEMYFEET
|
||||
NUM_ANIM_GFX EQU const_value - 1
|
||||
DEF NUM_ANIM_GFX EQU const_value - 1
|
||||
|
||||
; battle_bg_effect struct members (see macros/wram.asm)
|
||||
rsreset
|
||||
BG_EFFECT_STRUCT_FUNCTION rb
|
||||
BG_EFFECT_STRUCT_JT_INDEX rb
|
||||
BG_EFFECT_STRUCT_BATTLE_TURN rb
|
||||
BG_EFFECT_STRUCT_PARAM rb
|
||||
BG_EFFECT_STRUCT_LENGTH EQU _RS
|
||||
NUM_BG_EFFECTS EQU 5 ; see wActiveBGEffects
|
||||
DEF BG_EFFECT_STRUCT_FUNCTION rb
|
||||
DEF BG_EFFECT_STRUCT_JT_INDEX rb
|
||||
DEF BG_EFFECT_STRUCT_BATTLE_TURN rb
|
||||
DEF BG_EFFECT_STRUCT_PARAM rb
|
||||
DEF BG_EFFECT_STRUCT_LENGTH EQU _RS
|
||||
DEF NUM_BG_EFFECTS EQU 5 ; see wActiveBGEffects
|
||||
|
||||
; anim_bgeffect battle turn values for some effects
|
||||
const_def
|
||||
|
@ -1,31 +1,31 @@
|
||||
; significant level values
|
||||
MAX_LEVEL EQU 100
|
||||
MIN_LEVEL EQU 2
|
||||
EGG_LEVEL EQU 5
|
||||
DEF MAX_LEVEL EQU 100
|
||||
DEF MIN_LEVEL EQU 2
|
||||
DEF EGG_LEVEL EQU 5
|
||||
|
||||
; maximum moves known per mon
|
||||
NUM_MOVES EQU 4
|
||||
DEF NUM_MOVES EQU 4
|
||||
|
||||
; significant stat values
|
||||
BASE_STAT_LEVEL EQU 7
|
||||
MAX_STAT_LEVEL EQU 13
|
||||
DEF BASE_STAT_LEVEL EQU 7
|
||||
DEF MAX_STAT_LEVEL EQU 13
|
||||
|
||||
; turns that sleep lasts
|
||||
REST_SLEEP_TURNS EQU 2
|
||||
TREEMON_SLEEP_TURNS EQU 7
|
||||
DEF REST_SLEEP_TURNS EQU 2
|
||||
DEF TREEMON_SLEEP_TURNS EQU 7
|
||||
|
||||
; default move priority
|
||||
BASE_PRIORITY EQU 1
|
||||
DEF BASE_PRIORITY EQU 1
|
||||
|
||||
; type effectiveness factors, scaled by 10
|
||||
SUPER_EFFECTIVE EQU 20
|
||||
MORE_EFFECTIVE EQU 15
|
||||
EFFECTIVE EQU 10
|
||||
NOT_VERY_EFFECTIVE EQU 05
|
||||
NO_EFFECT EQU 00
|
||||
DEF SUPER_EFFECTIVE EQU 20
|
||||
DEF MORE_EFFECTIVE EQU 15
|
||||
DEF EFFECTIVE EQU 10
|
||||
DEF NOT_VERY_EFFECTIVE EQU 05
|
||||
DEF NO_EFFECT EQU 00
|
||||
|
||||
; enemy AI behavior
|
||||
BASE_AI_SWITCH_SCORE EQU 10
|
||||
DEF BASE_AI_SWITCH_SCORE EQU 10
|
||||
|
||||
; wPlayerStatLevels and wEnemyStatLevels indexes (see wram.asm)
|
||||
; GetStatName arguments (see data/battle/stat_names.asm)
|
||||
@ -38,18 +38,18 @@ BASE_AI_SWITCH_SCORE EQU 10
|
||||
const ACCURACY
|
||||
const EVASION
|
||||
const ABILITY ; used for BattleCommand_Curse
|
||||
NUM_LEVEL_STATS EQU const_value
|
||||
DEF NUM_LEVEL_STATS EQU const_value
|
||||
|
||||
; move struct members (see data/moves/moves.asm)
|
||||
rsreset
|
||||
MOVE_ANIM rb ; 0
|
||||
MOVE_EFFECT rb ; 1
|
||||
MOVE_POWER rb ; 2
|
||||
MOVE_TYPE rb ; 3
|
||||
MOVE_ACC rb ; 4
|
||||
MOVE_PP rb ; 5
|
||||
MOVE_CHANCE rb ; 6
|
||||
MOVE_LENGTH EQU _RS
|
||||
DEF MOVE_ANIM rb ; 0
|
||||
DEF MOVE_EFFECT rb ; 1
|
||||
DEF MOVE_POWER rb ; 2
|
||||
DEF MOVE_TYPE rb ; 3
|
||||
DEF MOVE_ACC rb ; 4
|
||||
DEF MOVE_PP rb ; 5
|
||||
DEF MOVE_CHANCE rb ; 6
|
||||
DEF MOVE_LENGTH EQU _RS
|
||||
|
||||
; stat constants
|
||||
; indexes for:
|
||||
@ -61,20 +61,20 @@ MOVE_LENGTH EQU _RS
|
||||
const STAT_DEF
|
||||
const STAT_SPD
|
||||
const STAT_SATK
|
||||
NUM_EXP_STATS EQU const_value - 1
|
||||
DEF NUM_EXP_STATS EQU const_value - 1
|
||||
const STAT_SDEF
|
||||
NUM_STATS EQU const_value - 1
|
||||
NUM_BATTLE_STATS EQU NUM_STATS - 1 ; don't count HP
|
||||
DEF NUM_STATS EQU const_value - 1
|
||||
DEF NUM_BATTLE_STATS EQU NUM_STATS - 1 ; don't count HP
|
||||
|
||||
; stat formula constants
|
||||
STAT_MIN_NORMAL EQU 5
|
||||
STAT_MIN_HP EQU 10
|
||||
DEF STAT_MIN_NORMAL EQU 5
|
||||
DEF STAT_MIN_HP EQU 10
|
||||
|
||||
MAX_STAT_VALUE EQU 999
|
||||
DEF MAX_STAT_VALUE EQU 999
|
||||
|
||||
; shiny dvs
|
||||
ATKDEFDV_SHINY EQU $EA
|
||||
SPDSPCDV_SHINY EQU $AA
|
||||
DEF ATKDEFDV_SHINY EQU $EA
|
||||
DEF SPDSPCDV_SHINY EQU $AA
|
||||
|
||||
; battle classes (wBattleMode values)
|
||||
const_def 1
|
||||
@ -120,7 +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
|
||||
DEF NUM_BATTLE_VARS EQU const_value
|
||||
|
||||
; BattleVarLocations indexes (see home/battle_vars.asm)
|
||||
const_def
|
||||
@ -151,17 +151,17 @@ NUM_BATTLE_VARS EQU const_value
|
||||
const PLAYER_LAST_MOVE
|
||||
const ENEMY_LAST_MOVE
|
||||
assert const_value % 2 == 0
|
||||
NUM_BATTLE_VAR_LOCATION_PAIRS EQU const_value / 2
|
||||
DEF NUM_BATTLE_VAR_LOCATION_PAIRS EQU const_value / 2
|
||||
|
||||
; status condition bit flags
|
||||
SLP EQU %111 ; 0-7 turns
|
||||
DEF SLP EQU %111 ; 0-7 turns
|
||||
const_def 3
|
||||
const PSN
|
||||
const BRN
|
||||
const FRZ
|
||||
const PAR
|
||||
|
||||
ALL_STATUS EQU (1 << PSN) | (1 << BRN) | (1 << FRZ) | (1 << PAR) | SLP
|
||||
DEF ALL_STATUS EQU (1 << PSN) | (1 << BRN) | (1 << FRZ) | (1 << PAR) | SLP
|
||||
|
||||
; wPlayerSubStatus1 or wEnemySubStatus1 bit flags
|
||||
const_def
|
||||
@ -260,10 +260,10 @@ ALL_STATUS EQU (1 << PSN) | (1 << BRN) | (1 << FRZ) | (1 << PAR) | SLP
|
||||
const LOSE
|
||||
const DRAW
|
||||
|
||||
BATTLERESULT_CAUGHT_CELEBI EQU 6
|
||||
BATTLERESULT_BOX_FULL EQU 7
|
||||
BATTLERESULT_BITMASK EQU (1 << BATTLERESULT_CAUGHT_CELEBI) | (1 << BATTLERESULT_BOX_FULL)
|
||||
DEF BATTLERESULT_CAUGHT_CELEBI EQU 6
|
||||
DEF BATTLERESULT_BOX_FULL EQU 7
|
||||
DEF BATTLERESULT_BITMASK EQU (1 << BATTLERESULT_CAUGHT_CELEBI) | (1 << BATTLERESULT_BOX_FULL)
|
||||
|
||||
; link_battle_record struct
|
||||
LINK_BATTLE_RECORD_LENGTH EQU 2 + (NAME_LENGTH - 1) + 2 * 3
|
||||
NUM_LINK_BATTLE_RECORDS EQU 5
|
||||
DEF LINK_BATTLE_RECORD_LENGTH EQU 2 + (NAME_LENGTH - 1) + 2 * 3
|
||||
DEF NUM_LINK_BATTLE_RECORDS EQU 5
|
||||
|
@ -1,11 +1,11 @@
|
||||
BATTLETOWER_PARTY_LENGTH EQU 3
|
||||
BATTLETOWER_STREAK_LENGTH EQU 7
|
||||
DEF BATTLETOWER_PARTY_LENGTH EQU 3
|
||||
DEF BATTLETOWER_STREAK_LENGTH EQU 7
|
||||
|
||||
BATTLETOWER_NUM_UNIQUE_MON EQU 21
|
||||
BATTLETOWER_NUM_UNIQUE_TRAINERS EQU 70
|
||||
DEF BATTLETOWER_NUM_UNIQUE_MON EQU 21
|
||||
DEF BATTLETOWER_NUM_UNIQUE_TRAINERS EQU 70
|
||||
|
||||
BATTLETOWER_TRAINERDATALENGTH EQU 18 * 2 ; $24
|
||||
BATTLE_TOWER_STRUCT_LENGTH EQU NAME_LENGTH + BATTLETOWER_PARTY_LENGTH * NICKNAMED_MON_STRUCT_LENGTH + BATTLETOWER_TRAINERDATALENGTH ; $e0
|
||||
DEF BATTLETOWER_TRAINERDATALENGTH EQU 18 * 2 ; $24
|
||||
DEF BATTLE_TOWER_STRUCT_LENGTH EQU NAME_LENGTH + BATTLETOWER_PARTY_LENGTH * NICKNAMED_MON_STRUCT_LENGTH + BATTLETOWER_TRAINERDATALENGTH ; $e0
|
||||
|
||||
; BattleTowerAction setval arguments (see engine/events/battle_tower/battle_tower.asm)
|
||||
const_def
|
||||
@ -44,7 +44,7 @@ BATTLE_TOWER_STRUCT_LENGTH EQU NAME_LENGTH + BATTLETOWER_PARTY_LENGTH * NICKNAME
|
||||
|
||||
; BattleTowerAction return values
|
||||
; - from BATTLETOWERACTION_CHECKMOBILEEVENT
|
||||
MOBILE_EVENT_OBJECT_GS_BALL EQU $b
|
||||
DEF MOBILE_EVENT_OBJECT_GS_BALL EQU $b
|
||||
|
||||
; BattleTowerText arguments (see engine/events/battle_tower/trainer_text.asm)
|
||||
const_def 1
|
||||
|
@ -1,129 +1,129 @@
|
||||
; collision permissions (see data/collision/collision_permissions.asm)
|
||||
LAND_TILE EQU $00
|
||||
WATER_TILE EQU $01
|
||||
WALL_TILE EQU $0f
|
||||
TALK EQU $10
|
||||
DEF LAND_TILE EQU $00
|
||||
DEF WATER_TILE EQU $01
|
||||
DEF WALL_TILE EQU $0f
|
||||
DEF TALK EQU $10
|
||||
|
||||
; collision data types (see data/tilesets/*_collision.asm)
|
||||
; TileCollisionTable indexes (see data/collision/collision_permissions.asm)
|
||||
COLL_FLOOR EQU $00
|
||||
COLL_01 EQU $01 ; garbage
|
||||
COLL_03 EQU $03 ; garbage
|
||||
COLL_04 EQU $04 ; garbage
|
||||
COLL_WALL EQU $07
|
||||
COLL_CUT_08 EQU $08 ; unused
|
||||
COLL_TALL_GRASS_10 EQU $10 ; unused
|
||||
COLL_CUT_TREE EQU $12
|
||||
COLL_LONG_GRASS EQU $14
|
||||
COLL_HEADBUTT_TREE EQU $15
|
||||
COLL_TALL_GRASS EQU $18
|
||||
COLL_CUT_TREE_1A EQU $1a ; unused
|
||||
COLL_LONG_GRASS_1C EQU $1c ; unused
|
||||
COLL_HEADBUTT_TREE_1D EQU $1d ; unused
|
||||
COLL_WATER_21 EQU $21 ; unused
|
||||
COLL_ICE EQU $23
|
||||
COLL_WHIRLPOOL EQU $24
|
||||
COLL_BUOY EQU $27
|
||||
COLL_CUT_28 EQU $28 ; garbage
|
||||
COLL_WATER EQU $29
|
||||
COLL_ICE_2B EQU $2b ; unused
|
||||
COLL_WHIRLPOOL_2C EQU $2c ; unused
|
||||
COLL_WATERFALL_RIGHT EQU $30 ; unused
|
||||
COLL_WATERFALL_LEFT EQU $31 ; unused
|
||||
COLL_WATERFALL_UP EQU $32 ; unused
|
||||
COLL_WATERFALL EQU $33
|
||||
COLL_CURRENT_RIGHT EQU $38 ; unused
|
||||
COLL_CURRENT_LEFT EQU $39 ; unused
|
||||
COLL_CURRENT_UP EQU $3a ; unused
|
||||
COLL_CURRENT_DOWN EQU $3b ; unused
|
||||
COLL_BRAKE EQU $40 ; unused
|
||||
COLL_WALK_RIGHT EQU $41 ; unused
|
||||
COLL_WALK_LEFT EQU $42 ; unused
|
||||
COLL_WALK_UP EQU $43 ; unused
|
||||
COLL_WALK_DOWN EQU $44 ; unused
|
||||
COLL_BRAKE_45 EQU $45 ; garbage
|
||||
COLL_BRAKE_46 EQU $46 ; unused
|
||||
COLL_BRAKE_47 EQU $47 ; unused
|
||||
COLL_GRASS_48 EQU $48 ; unused
|
||||
COLL_GRASS_49 EQU $49 ; unused
|
||||
COLL_GRASS_4A EQU $4a ; garbage
|
||||
COLL_GRASS_4B EQU $4b ; garbage
|
||||
COLL_GRASS_4C EQU $4c ; unused
|
||||
COLL_WALK_RIGHT_ALT EQU $50 ; unused
|
||||
COLL_WALK_LEFT_ALT EQU $51 ; unused
|
||||
COLL_WALK_UP_ALT EQU $52 ; unused
|
||||
COLL_WALK_DOWN_ALT EQU $53 ; unused
|
||||
COLL_BRAKE_ALT EQU $54 ; unused
|
||||
COLL_BRAKE_55 EQU $55 ; unused
|
||||
COLL_BRAKE_56 EQU $56 ; unused
|
||||
COLL_BRAKE_57 EQU $57 ; unused
|
||||
COLL_5B EQU $5b ; garbage
|
||||
COLL_PIT EQU $60
|
||||
COLL_VIRTUAL_BOY EQU $61 ; garbage
|
||||
COLL_64 EQU $64 ; garbage
|
||||
COLL_65 EQU $65 ; garbage
|
||||
COLL_PIT_68 EQU $68 ; unused
|
||||
COLL_WARP_CARPET_DOWN EQU $70
|
||||
COLL_DOOR EQU $71
|
||||
COLL_LADDER EQU $72
|
||||
COLL_STAIRCASE_73 EQU $73 ; unused
|
||||
COLL_CAVE_74 EQU $74 ; unused
|
||||
COLL_DOOR_75 EQU $75 ; unused
|
||||
COLL_WARP_CARPET_LEFT EQU $76
|
||||
COLL_WARP_77 EQU $77 ; unused
|
||||
COLL_WARP_CARPET_UP EQU $78
|
||||
COLL_DOOR_79 EQU $79 ; unused
|
||||
COLL_STAIRCASE EQU $7a
|
||||
COLL_CAVE EQU $7b
|
||||
COLL_WARP_PANEL EQU $7c
|
||||
COLL_DOOR_7D EQU $7d ; unused
|
||||
COLL_WARP_CARPET_RIGHT EQU $7e
|
||||
COLL_WARP_7F EQU $7f ; unused
|
||||
COLL_COUNTER EQU $90
|
||||
COLL_BOOKSHELF EQU $91
|
||||
COLL_PC EQU $93
|
||||
COLL_RADIO EQU $94
|
||||
COLL_TOWN_MAP EQU $95
|
||||
COLL_MART_SHELF EQU $96
|
||||
COLL_TV EQU $97
|
||||
COLL_COUNTER_98 EQU $98 ; unused
|
||||
COLL_9C EQU $9c ; garbage
|
||||
COLL_WINDOW EQU $9d
|
||||
COLL_INCENSE_BURNER EQU $9f
|
||||
COLL_HOP_RIGHT EQU $a0
|
||||
COLL_HOP_LEFT EQU $a1
|
||||
COLL_HOP_UP EQU $a2 ; unused
|
||||
COLL_HOP_DOWN EQU $a3
|
||||
COLL_HOP_DOWN_RIGHT EQU $a4
|
||||
COLL_HOP_DOWN_LEFT EQU $a5
|
||||
COLL_HOP_UP_RIGHT EQU $a6 ; unused
|
||||
COLL_HOP_UP_LEFT EQU $a7 ; unused
|
||||
COLL_RIGHT_WALL EQU $b0
|
||||
COLL_LEFT_WALL EQU $b1
|
||||
COLL_UP_WALL EQU $b2
|
||||
COLL_DOWN_WALL EQU $b3 ; unused
|
||||
COLL_DOWN_RIGHT_WALL EQU $b4 ; unused
|
||||
COLL_DOWN_LEFT_WALL EQU $b5 ; unused
|
||||
COLL_UP_RIGHT_WALL EQU $b6 ; unused
|
||||
COLL_UP_LEFT_WALL EQU $b7 ; unused
|
||||
COLL_RIGHT_BUOY EQU $c0 ; unused
|
||||
COLL_LEFT_BUOY EQU $c1 ; unused
|
||||
COLL_UP_BUOY EQU $c2 ; unused
|
||||
COLL_DOWN_BUOY EQU $c3 ; unused
|
||||
COLL_DOWN_RIGHT_BUOY EQU $c4 ; unused
|
||||
COLL_DOWN_LEFT_BUOY EQU $c5 ; unused
|
||||
COLL_UP_RIGHT_BUOY EQU $c6 ; unused
|
||||
COLL_UP_LEFT_BUOY EQU $c7 ; unused
|
||||
COLL_FF EQU $ff ; garbage
|
||||
DEF COLL_FLOOR EQU $00
|
||||
DEF COLL_01 EQU $01 ; garbage
|
||||
DEF COLL_03 EQU $03 ; garbage
|
||||
DEF COLL_04 EQU $04 ; garbage
|
||||
DEF COLL_WALL EQU $07
|
||||
DEF COLL_CUT_08 EQU $08 ; unused
|
||||
DEF COLL_TALL_GRASS_10 EQU $10 ; unused
|
||||
DEF COLL_CUT_TREE EQU $12
|
||||
DEF COLL_LONG_GRASS EQU $14
|
||||
DEF COLL_HEADBUTT_TREE EQU $15
|
||||
DEF COLL_TALL_GRASS EQU $18
|
||||
DEF COLL_CUT_TREE_1A EQU $1a ; unused
|
||||
DEF COLL_LONG_GRASS_1C EQU $1c ; unused
|
||||
DEF COLL_HEADBUTT_TREE_1D EQU $1d ; unused
|
||||
DEF COLL_WATER_21 EQU $21 ; unused
|
||||
DEF COLL_ICE EQU $23
|
||||
DEF COLL_WHIRLPOOL EQU $24
|
||||
DEF COLL_BUOY EQU $27
|
||||
DEF COLL_CUT_28 EQU $28 ; garbage
|
||||
DEF COLL_WATER EQU $29
|
||||
DEF COLL_ICE_2B EQU $2b ; unused
|
||||
DEF COLL_WHIRLPOOL_2C EQU $2c ; unused
|
||||
DEF COLL_WATERFALL_RIGHT EQU $30 ; unused
|
||||
DEF COLL_WATERFALL_LEFT EQU $31 ; unused
|
||||
DEF COLL_WATERFALL_UP EQU $32 ; unused
|
||||
DEF COLL_WATERFALL EQU $33
|
||||
DEF COLL_CURRENT_RIGHT EQU $38 ; unused
|
||||
DEF COLL_CURRENT_LEFT EQU $39 ; unused
|
||||
DEF COLL_CURRENT_UP EQU $3a ; unused
|
||||
DEF COLL_CURRENT_DOWN EQU $3b ; unused
|
||||
DEF COLL_BRAKE EQU $40 ; unused
|
||||
DEF COLL_WALK_RIGHT EQU $41 ; unused
|
||||
DEF COLL_WALK_LEFT EQU $42 ; unused
|
||||
DEF COLL_WALK_UP EQU $43 ; unused
|
||||
DEF COLL_WALK_DOWN EQU $44 ; unused
|
||||
DEF COLL_BRAKE_45 EQU $45 ; garbage
|
||||
DEF COLL_BRAKE_46 EQU $46 ; unused
|
||||
DEF COLL_BRAKE_47 EQU $47 ; unused
|
||||
DEF COLL_GRASS_48 EQU $48 ; unused
|
||||
DEF COLL_GRASS_49 EQU $49 ; unused
|
||||
DEF COLL_GRASS_4A EQU $4a ; garbage
|
||||
DEF COLL_GRASS_4B EQU $4b ; garbage
|
||||
DEF COLL_GRASS_4C EQU $4c ; unused
|
||||
DEF COLL_WALK_RIGHT_ALT EQU $50 ; unused
|
||||
DEF COLL_WALK_LEFT_ALT EQU $51 ; unused
|
||||
DEF COLL_WALK_UP_ALT EQU $52 ; unused
|
||||
DEF COLL_WALK_DOWN_ALT EQU $53 ; unused
|
||||
DEF COLL_BRAKE_ALT EQU $54 ; unused
|
||||
DEF COLL_BRAKE_55 EQU $55 ; unused
|
||||
DEF COLL_BRAKE_56 EQU $56 ; unused
|
||||
DEF COLL_BRAKE_57 EQU $57 ; unused
|
||||
DEF COLL_5B EQU $5b ; garbage
|
||||
DEF COLL_PIT EQU $60
|
||||
DEF COLL_VIRTUAL_BOY EQU $61 ; garbage
|
||||
DEF COLL_64 EQU $64 ; garbage
|
||||
DEF COLL_65 EQU $65 ; garbage
|
||||
DEF COLL_PIT_68 EQU $68 ; unused
|
||||
DEF COLL_WARP_CARPET_DOWN EQU $70
|
||||
DEF COLL_DOOR EQU $71
|
||||
DEF COLL_LADDER EQU $72
|
||||
DEF COLL_STAIRCASE_73 EQU $73 ; unused
|
||||
DEF COLL_CAVE_74 EQU $74 ; unused
|
||||
DEF COLL_DOOR_75 EQU $75 ; unused
|
||||
DEF COLL_WARP_CARPET_LEFT EQU $76
|
||||
DEF COLL_WARP_77 EQU $77 ; unused
|
||||
DEF COLL_WARP_CARPET_UP EQU $78
|
||||
DEF COLL_DOOR_79 EQU $79 ; unused
|
||||
DEF COLL_STAIRCASE EQU $7a
|
||||
DEF COLL_CAVE EQU $7b
|
||||
DEF COLL_WARP_PANEL EQU $7c
|
||||
DEF COLL_DOOR_7D EQU $7d ; unused
|
||||
DEF COLL_WARP_CARPET_RIGHT EQU $7e
|
||||
DEF COLL_WARP_7F EQU $7f ; unused
|
||||
DEF COLL_COUNTER EQU $90
|
||||
DEF COLL_BOOKSHELF EQU $91
|
||||
DEF COLL_PC EQU $93
|
||||
DEF COLL_RADIO EQU $94
|
||||
DEF COLL_TOWN_MAP EQU $95
|
||||
DEF COLL_MART_SHELF EQU $96
|
||||
DEF COLL_TV EQU $97
|
||||
DEF COLL_COUNTER_98 EQU $98 ; unused
|
||||
DEF COLL_9C EQU $9c ; garbage
|
||||
DEF COLL_WINDOW EQU $9d
|
||||
DEF COLL_INCENSE_BURNER EQU $9f
|
||||
DEF COLL_HOP_RIGHT EQU $a0
|
||||
DEF COLL_HOP_LEFT EQU $a1
|
||||
DEF COLL_HOP_UP EQU $a2 ; unused
|
||||
DEF COLL_HOP_DOWN EQU $a3
|
||||
DEF COLL_HOP_DOWN_RIGHT EQU $a4
|
||||
DEF COLL_HOP_DOWN_LEFT EQU $a5
|
||||
DEF COLL_HOP_UP_RIGHT EQU $a6 ; unused
|
||||
DEF COLL_HOP_UP_LEFT EQU $a7 ; unused
|
||||
DEF COLL_RIGHT_WALL EQU $b0
|
||||
DEF COLL_LEFT_WALL EQU $b1
|
||||
DEF COLL_UP_WALL EQU $b2
|
||||
DEF COLL_DOWN_WALL EQU $b3 ; unused
|
||||
DEF COLL_DOWN_RIGHT_WALL EQU $b4 ; unused
|
||||
DEF COLL_DOWN_LEFT_WALL EQU $b5 ; unused
|
||||
DEF COLL_UP_RIGHT_WALL EQU $b6 ; unused
|
||||
DEF COLL_UP_LEFT_WALL EQU $b7 ; unused
|
||||
DEF COLL_RIGHT_BUOY EQU $c0 ; unused
|
||||
DEF COLL_LEFT_BUOY EQU $c1 ; unused
|
||||
DEF COLL_UP_BUOY EQU $c2 ; unused
|
||||
DEF COLL_DOWN_BUOY EQU $c3 ; unused
|
||||
DEF COLL_DOWN_RIGHT_BUOY EQU $c4 ; unused
|
||||
DEF COLL_DOWN_LEFT_BUOY EQU $c5 ; unused
|
||||
DEF COLL_UP_RIGHT_BUOY EQU $c6 ; unused
|
||||
DEF COLL_UP_LEFT_BUOY EQU $c7 ; unused
|
||||
DEF COLL_FF EQU $ff ; garbage
|
||||
|
||||
; collision data type nybbles
|
||||
LO_NYBBLE_GRASS EQU $07
|
||||
HI_NYBBLE_TALL_GRASS EQU $10
|
||||
HI_NYBBLE_WATER EQU $20
|
||||
HI_NYBBLE_CURRENT EQU $30
|
||||
HI_NYBBLE_WALK EQU $40
|
||||
HI_NYBBLE_WALK_ALT EQU $50
|
||||
HI_NYBBLE_WARPS EQU $70
|
||||
HI_NYBBLE_LEDGES EQU $a0
|
||||
HI_NYBBLE_SIDE_WALLS EQU $b0
|
||||
HI_NYBBLE_SIDE_BUOYS EQU $c0
|
||||
DEF LO_NYBBLE_GRASS EQU $07
|
||||
DEF HI_NYBBLE_TALL_GRASS EQU $10
|
||||
DEF HI_NYBBLE_WATER EQU $20
|
||||
DEF HI_NYBBLE_CURRENT EQU $30
|
||||
DEF HI_NYBBLE_WALK EQU $40
|
||||
DEF HI_NYBBLE_WALK_ALT EQU $50
|
||||
DEF HI_NYBBLE_WARPS EQU $70
|
||||
DEF HI_NYBBLE_LEDGES EQU $a0
|
||||
DEF HI_NYBBLE_SIDE_WALLS EQU $b0
|
||||
DEF HI_NYBBLE_SIDE_BUOYS EQU $c0
|
||||
|
@ -103,7 +103,7 @@
|
||||
const US_COORDINATION
|
||||
const TEXT_TRANSLATION
|
||||
const PAAD_TESTING
|
||||
NUM_CREDITS_STRINGS EQU const_value
|
||||
DEF NUM_CREDITS_STRINGS EQU const_value
|
||||
|
||||
; CreditsScript indexes (see data/credits_script.asm)
|
||||
const_def -1, -1
|
||||
|
@ -73,4 +73,4 @@
|
||||
const CRY_DUNSPARCE
|
||||
const CRY_DONPHAN
|
||||
|
||||
NUM_CRIES EQU const_value
|
||||
DEF NUM_CRIES EQU const_value
|
||||
|
@ -1,11 +1,11 @@
|
||||
; decoration attributes
|
||||
rsreset
|
||||
DECOATTR_TYPE rb
|
||||
DECOATTR_NAME rb
|
||||
DECOATTR_ACTION rb
|
||||
DECOATTR_EVENT_FLAG rw
|
||||
DECOATTR_SPRITE rb
|
||||
DECOATTR_STRUCT_LENGTH EQU _RS
|
||||
DEF DECOATTR_TYPE rb
|
||||
DEF DECOATTR_NAME rb
|
||||
DEF DECOATTR_ACTION rb
|
||||
DEF DECOATTR_EVENT_FLAG rw
|
||||
DEF DECOATTR_SPRITE rb
|
||||
DEF DECOATTR_STRUCT_LENGTH EQU _RS
|
||||
|
||||
; decoration types
|
||||
const_def 1
|
||||
@ -15,7 +15,7 @@ DECOATTR_STRUCT_LENGTH EQU _RS
|
||||
const DECO_POSTER
|
||||
const DECO_DOLL
|
||||
const DECO_BIGDOLL
|
||||
NUM_DECO_TYPES EQU const_value - 1
|
||||
DEF NUM_DECO_TYPES EQU const_value - 1
|
||||
|
||||
; DecorationNames indexes (see data/decorations/names.asm)
|
||||
const_def
|
||||
@ -45,7 +45,7 @@ NUM_DECO_TYPES EQU const_value - 1
|
||||
const BLUE_CARPET
|
||||
const YELLOW_CARPET
|
||||
const GREEN_CARPET
|
||||
NUM_DECO_NAMES EQU const_value
|
||||
DEF NUM_DECO_NAMES EQU const_value
|
||||
|
||||
; DoDecorationAction2.DecoActions indexes (see engine/overworld/decorations.asm)
|
||||
const_def 1
|
||||
@ -63,14 +63,14 @@ NUM_DECO_NAMES EQU const_value
|
||||
const PUT_AWAY_BIG_DOLL
|
||||
const SET_UP_DOLL
|
||||
const PUT_AWAY_DOLL
|
||||
NUM_DECO_ACTIONS EQU const_value - 1
|
||||
DEF NUM_DECO_ACTIONS EQU const_value - 1
|
||||
|
||||
__deco_value__ = 0
|
||||
DEF __deco_value__ = 0
|
||||
|
||||
deco: MACRO
|
||||
MACRO deco
|
||||
const DECO_\1
|
||||
DECOFLAG_\1 EQU __deco_value__
|
||||
__deco_value__ += 1
|
||||
DEF DECOFLAG_\1 EQU __deco_value__
|
||||
DEF __deco_value__ += 1
|
||||
ENDM
|
||||
|
||||
; decorations:
|
||||
@ -134,8 +134,8 @@ ENDM
|
||||
deco GEODUDE_DOLL
|
||||
deco MACHOP_DOLL
|
||||
deco TENTACOOL_DOLL
|
||||
NUM_NON_TROPHY_DECOS EQU __deco_value__
|
||||
DEF 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
|
||||
DEF NUM_DECOS EQU __deco_value__
|
||||
DEF NUM_DECO_CATEGORIES EQU const_value - 1 - NUM_DECOS
|
||||
|
@ -187,4 +187,4 @@
|
||||
; wSwarmFlags
|
||||
const ENGINE_DUNSPARCE_SWARM
|
||||
const ENGINE_YANMA_SWARM
|
||||
NUM_ENGINE_FLAGS EQU const_value
|
||||
DEF NUM_ENGINE_FLAGS EQU const_value
|
||||
|
@ -1459,4 +1459,4 @@
|
||||
; Unused: next 48 events
|
||||
|
||||
const_next 2048
|
||||
NUM_EVENTS EQU const_value ; 800
|
||||
DEF NUM_EVENTS EQU const_value ; 800
|
||||
|
@ -1,48 +1,48 @@
|
||||
TILE_WIDTH EQU 8 ; pixels
|
||||
LEN_1BPP_TILE EQU 1 * TILE_WIDTH ; bytes
|
||||
LEN_2BPP_TILE EQU 2 * TILE_WIDTH ; bytes
|
||||
DEF TILE_WIDTH EQU 8 ; pixels
|
||||
DEF LEN_1BPP_TILE EQU 1 * TILE_WIDTH ; bytes
|
||||
DEF LEN_2BPP_TILE EQU 2 * TILE_WIDTH ; bytes
|
||||
|
||||
NUM_PAL_COLORS EQU 4
|
||||
PAL_COLOR_SIZE EQU 2
|
||||
PALETTE_SIZE EQU NUM_PAL_COLORS * PAL_COLOR_SIZE
|
||||
DEF NUM_PAL_COLORS EQU 4
|
||||
DEF PAL_COLOR_SIZE EQU 2
|
||||
DEF PALETTE_SIZE EQU NUM_PAL_COLORS * PAL_COLOR_SIZE
|
||||
|
||||
PALRGB_WHITE EQU palred 31 + palgreen 31 + palblue 31 ; $7fff
|
||||
DEF PALRGB_WHITE EQU palred 31 + palgreen 31 + palblue 31 ; $7fff
|
||||
|
||||
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
|
||||
DEF SCREEN_WIDTH EQU 20 ; tiles
|
||||
DEF SCREEN_HEIGHT EQU 18 ; tiles
|
||||
DEF SCREEN_WIDTH_PX EQU SCREEN_WIDTH * TILE_WIDTH ; pixels
|
||||
DEF SCREEN_HEIGHT_PX EQU SCREEN_HEIGHT * TILE_WIDTH ; pixels
|
||||
|
||||
BG_MAP_WIDTH EQU 32 ; tiles
|
||||
BG_MAP_HEIGHT EQU 32 ; tiles
|
||||
DEF BG_MAP_WIDTH EQU 32 ; tiles
|
||||
DEF BG_MAP_HEIGHT EQU 32 ; tiles
|
||||
|
||||
METATILE_WIDTH EQU 4 ; tiles
|
||||
SCREEN_META_WIDTH EQU 6 ; metatiles
|
||||
SCREEN_META_HEIGHT EQU 5 ; metatiles
|
||||
SURROUNDING_WIDTH EQU SCREEN_META_WIDTH * METATILE_WIDTH ; tiles
|
||||
SURROUNDING_HEIGHT EQU SCREEN_META_HEIGHT * METATILE_WIDTH ; tiles
|
||||
MAP_CONNECTION_PADDING_WIDTH EQU 3 ; metatiles
|
||||
DEF METATILE_WIDTH EQU 4 ; tiles
|
||||
DEF SCREEN_META_WIDTH EQU 6 ; metatiles
|
||||
DEF SCREEN_META_HEIGHT EQU 5 ; metatiles
|
||||
DEF SURROUNDING_WIDTH EQU SCREEN_META_WIDTH * METATILE_WIDTH ; tiles
|
||||
DEF SURROUNDING_HEIGHT EQU SCREEN_META_HEIGHT * METATILE_WIDTH ; tiles
|
||||
DEF MAP_CONNECTION_PADDING_WIDTH EQU 3 ; metatiles
|
||||
|
||||
HP_BAR_LENGTH EQU 6 ; tiles
|
||||
EXP_BAR_LENGTH EQU 8 ; tiles
|
||||
HP_BAR_LENGTH_PX EQU HP_BAR_LENGTH * TILE_WIDTH ; pixels
|
||||
EXP_BAR_LENGTH_PX EQU EXP_BAR_LENGTH * TILE_WIDTH ; pixels
|
||||
DEF HP_BAR_LENGTH EQU 6 ; tiles
|
||||
DEF EXP_BAR_LENGTH EQU 8 ; tiles
|
||||
DEF HP_BAR_LENGTH_PX EQU HP_BAR_LENGTH * TILE_WIDTH ; pixels
|
||||
DEF EXP_BAR_LENGTH_PX EQU EXP_BAR_LENGTH * TILE_WIDTH ; pixels
|
||||
|
||||
; GetHPPal return values (see home/tilemap.asm)
|
||||
HP_GREEN EQU 0
|
||||
HP_YELLOW EQU 1
|
||||
HP_RED EQU 2
|
||||
DEF HP_GREEN EQU 0
|
||||
DEF HP_YELLOW EQU 1
|
||||
DEF HP_RED EQU 2
|
||||
|
||||
; sprite_oam_struct members (see macros/wram.asm)
|
||||
rsreset
|
||||
SPRITEOAMSTRUCT_YCOORD rb ; 0
|
||||
SPRITEOAMSTRUCT_XCOORD rb ; 1
|
||||
SPRITEOAMSTRUCT_TILE_ID rb ; 2
|
||||
SPRITEOAMSTRUCT_ATTRIBUTES rb ; 3
|
||||
SPRITEOAMSTRUCT_LENGTH EQU _RS
|
||||
NUM_SPRITE_OAM_STRUCTS EQU 40 ; see wVirtualOAM
|
||||
DEF SPRITEOAMSTRUCT_YCOORD rb ; 0
|
||||
DEF SPRITEOAMSTRUCT_XCOORD rb ; 1
|
||||
DEF SPRITEOAMSTRUCT_TILE_ID rb ; 2
|
||||
DEF SPRITEOAMSTRUCT_ATTRIBUTES rb ; 3
|
||||
DEF SPRITEOAMSTRUCT_LENGTH EQU _RS
|
||||
DEF NUM_SPRITE_OAM_STRUCTS EQU 40 ; see wVirtualOAM
|
||||
|
||||
SPRITE_GFX_LIST_CAPACITY EQU 32 ; see wUsedSprites
|
||||
DEF SPRITE_GFX_LIST_CAPACITY EQU 32 ; see wUsedSprites
|
||||
|
||||
; PokeAnims indexes (see engine/gfx/pic_animation.asm)
|
||||
const_def
|
||||
|
@ -4,165 +4,165 @@
|
||||
; http://gameboy.mongenel.com/dmg/asmmemmap.html
|
||||
|
||||
; memory map
|
||||
VRAM_Begin EQU $8000
|
||||
VRAM_End EQU $a000
|
||||
SRAM_Begin EQU $a000
|
||||
SRAM_End EQU $c000
|
||||
WRAM0_Begin EQU $c000
|
||||
WRAM0_End EQU $d000
|
||||
WRAM1_Begin EQU $d000
|
||||
WRAM1_End EQU $e000
|
||||
DEF VRAM_Begin EQU $8000
|
||||
DEF VRAM_End EQU $a000
|
||||
DEF SRAM_Begin EQU $a000
|
||||
DEF SRAM_End EQU $c000
|
||||
DEF WRAM0_Begin EQU $c000
|
||||
DEF WRAM0_End EQU $d000
|
||||
DEF WRAM1_Begin EQU $d000
|
||||
DEF WRAM1_End EQU $e000
|
||||
; hardware registers $ff00-$ff80 (see below)
|
||||
HRAM_Begin EQU $ff80
|
||||
HRAM_End EQU $ffff
|
||||
DEF HRAM_Begin EQU $ff80
|
||||
DEF HRAM_End EQU $ffff
|
||||
|
||||
; MBC3
|
||||
MBC3SRamEnable EQU $0000
|
||||
MBC3RomBank EQU $2000
|
||||
MBC3SRamBank EQU $4000
|
||||
MBC3LatchClock EQU $6000
|
||||
MBC3RTC EQU $a000
|
||||
DEF MBC3SRamEnable EQU $0000
|
||||
DEF MBC3RomBank EQU $2000
|
||||
DEF MBC3SRamBank EQU $4000
|
||||
DEF MBC3LatchClock EQU $6000
|
||||
DEF MBC3RTC EQU $a000
|
||||
|
||||
SRAM_DISABLE EQU $00
|
||||
SRAM_ENABLE EQU $0a
|
||||
DEF SRAM_DISABLE EQU $00
|
||||
DEF SRAM_ENABLE EQU $0a
|
||||
|
||||
NUM_SRAM_BANKS EQU 4
|
||||
DEF NUM_SRAM_BANKS EQU 4
|
||||
|
||||
RTC_S EQU $08 ; Seconds 0-59 (0-3Bh)
|
||||
RTC_M EQU $09 ; Minutes 0-59 (0-3Bh)
|
||||
RTC_H EQU $0a ; Hours 0-23 (0-17h)
|
||||
RTC_DL EQU $0b ; Lower 8 bits of Day Counter (0-FFh)
|
||||
RTC_DH EQU $0c ; Upper 1 bit of Day Counter, Carry Bit, Halt Flag
|
||||
DEF RTC_S EQU $08 ; Seconds 0-59 (0-3Bh)
|
||||
DEF RTC_M EQU $09 ; Minutes 0-59 (0-3Bh)
|
||||
DEF RTC_H EQU $0a ; Hours 0-23 (0-17h)
|
||||
DEF RTC_DL EQU $0b ; Lower 8 bits of Day Counter (0-FFh)
|
||||
DEF RTC_DH EQU $0c ; Upper 1 bit of Day Counter, Carry Bit, Halt Flag
|
||||
; Bit 0 Most significant bit of Day Counter (Bit 8)
|
||||
; Bit 6 Halt (0=Active, 1=Stop Timer)
|
||||
; Bit 7 Day Counter Carry Bit (1=Counter Overflow)
|
||||
|
||||
; interrupt flags
|
||||
VBLANK EQU 0
|
||||
LCD_STAT EQU 1
|
||||
TIMER EQU 2
|
||||
SERIAL EQU 3
|
||||
JOYPAD EQU 4
|
||||
IE_DEFAULT EQU (1 << SERIAL) | (1 << TIMER) | (1 << LCD_STAT) | (1 << VBLANK)
|
||||
DEF VBLANK EQU 0
|
||||
DEF LCD_STAT EQU 1
|
||||
DEF TIMER EQU 2
|
||||
DEF SERIAL EQU 3
|
||||
DEF JOYPAD EQU 4
|
||||
DEF IE_DEFAULT EQU (1 << SERIAL) | (1 << TIMER) | (1 << LCD_STAT) | (1 << VBLANK)
|
||||
|
||||
; OAM attribute flags
|
||||
OAM_TILE_BANK EQU 3
|
||||
OAM_OBP_NUM EQU 4 ; non CGB Mode Only
|
||||
OAM_X_FLIP EQU 5
|
||||
OAM_Y_FLIP EQU 6
|
||||
OAM_PRIORITY EQU 7 ; 0: OBJ above BG, 1: OBJ behind BG (colors 1-3)
|
||||
DEF OAM_TILE_BANK EQU 3
|
||||
DEF OAM_OBP_NUM EQU 4 ; non CGB Mode Only
|
||||
DEF OAM_X_FLIP EQU 5
|
||||
DEF OAM_Y_FLIP EQU 6
|
||||
DEF OAM_PRIORITY EQU 7 ; 0: OBJ above BG, 1: OBJ behind BG (colors 1-3)
|
||||
|
||||
; BG Map attribute flags
|
||||
PALETTE_MASK EQU %111
|
||||
VRAM_BANK_1 EQU 1 << OAM_TILE_BANK ; $08
|
||||
OBP_NUM EQU 1 << OAM_OBP_NUM ; $10
|
||||
X_FLIP EQU 1 << OAM_X_FLIP ; $20
|
||||
Y_FLIP EQU 1 << OAM_Y_FLIP ; $40
|
||||
PRIORITY EQU 1 << OAM_PRIORITY ; $80
|
||||
DEF PALETTE_MASK EQU %111
|
||||
DEF VRAM_BANK_1 EQU 1 << OAM_TILE_BANK ; $08
|
||||
DEF OBP_NUM EQU 1 << OAM_OBP_NUM ; $10
|
||||
DEF X_FLIP EQU 1 << OAM_X_FLIP ; $20
|
||||
DEF Y_FLIP EQU 1 << OAM_Y_FLIP ; $40
|
||||
DEF PRIORITY EQU 1 << OAM_PRIORITY ; $80
|
||||
|
||||
; Hardware registers
|
||||
rJOYP EQU $ff00 ; Joypad (R/W)
|
||||
rSB EQU $ff01 ; Serial transfer data (R/W)
|
||||
rSC EQU $ff02 ; Serial Transfer Control (R/W)
|
||||
rSC_ON EQU 7
|
||||
rSC_CGB EQU 1
|
||||
rSC_CLOCK EQU 0
|
||||
rDIV EQU $ff04 ; Divider Register (R/W)
|
||||
rTIMA EQU $ff05 ; Timer counter (R/W)
|
||||
rTMA EQU $ff06 ; Timer Modulo (R/W)
|
||||
rTAC EQU $ff07 ; Timer Control (R/W)
|
||||
rTAC_ON EQU 2
|
||||
rTAC_4096_HZ EQU %00
|
||||
rTAC_262144_HZ EQU %01
|
||||
rTAC_65536_HZ EQU %10
|
||||
rTAC_16384_HZ EQU %11
|
||||
rIF EQU $ff0f ; Interrupt Flag (R/W)
|
||||
rNR10 EQU $ff10 ; Channel 1 Sweep register (R/W)
|
||||
rNR11 EQU $ff11 ; Channel 1 Sound length/Wave pattern duty (R/W)
|
||||
rNR12 EQU $ff12 ; Channel 1 Volume Envelope (R/W)
|
||||
rNR13 EQU $ff13 ; Channel 1 Frequency lo (Write Only)
|
||||
rNR14 EQU $ff14 ; Channel 1 Frequency hi (R/W)
|
||||
rNR20 EQU $ff15 ; Channel 2 Sweep register (R/W)
|
||||
rNR21 EQU $ff16 ; Channel 2 Sound Length/Wave Pattern Duty (R/W)
|
||||
rNR22 EQU $ff17 ; Channel 2 Volume Envelope (R/W)
|
||||
rNR23 EQU $ff18 ; Channel 2 Frequency lo data (W)
|
||||
rNR24 EQU $ff19 ; Channel 2 Frequency hi data (R/W)
|
||||
rNR30 EQU $ff1a ; Channel 3 Sound on/off (R/W)
|
||||
rNR31 EQU $ff1b ; Channel 3 Sound Length
|
||||
rNR32 EQU $ff1c ; Channel 3 Select output level (R/W)
|
||||
rNR33 EQU $ff1d ; Channel 3 Frequency's lower data (W)
|
||||
rNR34 EQU $ff1e ; Channel 3 Frequency's higher data (R/W)
|
||||
rNR40 EQU $ff1f ; Channel 4 Sweep register (R/W)
|
||||
rNR41 EQU $ff20 ; Channel 4 Sound Length (R/W)
|
||||
rNR42 EQU $ff21 ; Channel 4 Volume Envelope (R/W)
|
||||
rNR43 EQU $ff22 ; Channel 4 Polynomial Counter (R/W)
|
||||
rNR44 EQU $ff23 ; Channel 4 Counter/consecutive; Inital (R/W)
|
||||
rNR50 EQU $ff24 ; Channel control / ON-OFF / Volume (R/W)
|
||||
rNR51 EQU $ff25 ; Selection of Sound output terminal (R/W)
|
||||
rNR52 EQU $ff26 ; Sound on/off
|
||||
rWave_0 EQU $ff30
|
||||
rWave_1 EQU $ff31
|
||||
rWave_2 EQU $ff32
|
||||
rWave_3 EQU $ff33
|
||||
rWave_4 EQU $ff34
|
||||
rWave_5 EQU $ff35
|
||||
rWave_6 EQU $ff36
|
||||
rWave_7 EQU $ff37
|
||||
rWave_8 EQU $ff38
|
||||
rWave_9 EQU $ff39
|
||||
rWave_a EQU $ff3a
|
||||
rWave_b EQU $ff3b
|
||||
rWave_c EQU $ff3c
|
||||
rWave_d EQU $ff3d
|
||||
rWave_e EQU $ff3e
|
||||
rWave_f EQU $ff3f
|
||||
rLCDC EQU $ff40 ; LCD Control (R/W)
|
||||
rLCDC_BG_PRIORITY EQU 0 ; 0=Off, 1=On
|
||||
rLCDC_SPRITES_ENABLE EQU 1 ; 0=Off, 1=On
|
||||
rLCDC_SPRITE_SIZE EQU 2 ; 0=8x8, 1=8x16
|
||||
rLCDC_BG_TILEMAP EQU 3 ; 0=9800-9BFF, 1=9C00-9FFF
|
||||
rLCDC_TILE_DATA EQU 4 ; 0=8800-97FF, 1=8000-8FFF
|
||||
rLCDC_WINDOW_ENABLE EQU 5 ; 0=Off, 1=On
|
||||
rLCDC_WINDOW_TILEMAP EQU 6 ; 0=9800-9BFF, 1=9C00-9FFF
|
||||
rLCDC_ENABLE EQU 7 ; 0=Off, 1=On
|
||||
LCDC_DEFAULT EQU (1 << rLCDC_ENABLE) | (1 << rLCDC_WINDOW_TILEMAP) | (1 << rLCDC_WINDOW_ENABLE) | (1 << rLCDC_SPRITES_ENABLE) | (1 << rLCDC_BG_PRIORITY)
|
||||
rSTAT EQU $ff41 ; LCDC Status (R/W)
|
||||
rSCY EQU $ff42 ; Scroll Y (R/W)
|
||||
rSCX EQU $ff43 ; Scroll X (R/W)
|
||||
rLY EQU $ff44 ; LCDC Y-Coordinate (R)
|
||||
LY_VBLANK EQU 144
|
||||
rLYC EQU $ff45 ; LY Compare (R/W)
|
||||
rDMA EQU $ff46 ; DMA Transfer and Start Address (W)
|
||||
rBGP EQU $ff47 ; BG Palette Data (R/W) - Non CGB Mode Only
|
||||
rOBP0 EQU $ff48 ; Object Palette 0 Data (R/W) - Non CGB Mode Only
|
||||
rOBP1 EQU $ff49 ; Object Palette 1 Data (R/W) - Non CGB Mode Only
|
||||
rWY EQU $ff4a ; Window Y Position (R/W)
|
||||
rWX EQU $ff4b ; Window X Position minus 7 (R/W)
|
||||
rLCDMODE EQU $ff4c
|
||||
rKEY1 EQU $ff4d ; CGB Mode Only - Prepare Speed Switch
|
||||
rVBK EQU $ff4f ; CGB Mode Only - VRAM Bank
|
||||
rBLCK EQU $ff50
|
||||
rHDMA1 EQU $ff51 ; CGB Mode Only - New DMA Source, High
|
||||
rHDMA2 EQU $ff52 ; CGB Mode Only - New DMA Source, Low
|
||||
rHDMA3 EQU $ff53 ; CGB Mode Only - New DMA Destination, High
|
||||
rHDMA4 EQU $ff54 ; CGB Mode Only - New DMA Destination, Low
|
||||
rHDMA5 EQU $ff55 ; CGB Mode Only - New DMA Length/Mode/Start
|
||||
rRP EQU $ff56 ; CGB Mode Only - Infrared Communications Port
|
||||
rRP_LED_ON EQU 0
|
||||
rRP_RECEIVING EQU 1
|
||||
rRP_ENABLE_READ_MASK EQU %11000000
|
||||
rBGPI EQU $ff68 ; CGB Mode Only - Background Palette Index
|
||||
rBGPI_AUTO_INCREMENT EQU 7 ; increment rBGPI after write to rBGPD
|
||||
rBGPD EQU $ff69 ; CGB Mode Only - Background Palette Data
|
||||
rOBPI EQU $ff6a ; CGB Mode Only - Sprite Palette Index
|
||||
rOBPI_AUTO_INCREMENT EQU 7 ; increment rOBPI after write to rOBPD
|
||||
rOBPD EQU $ff6b ; CGB Mode Only - Sprite Palette Data
|
||||
rUNKNOWN1 EQU $ff6c ; (FEh) Bit 0 (Read/Write) - CGB Mode Only
|
||||
rSVBK EQU $ff70 ; CGB Mode Only - WRAM Bank
|
||||
rUNKNOWN2 EQU $ff72 ; (00h) - Bit 0-7 (Read/Write)
|
||||
rUNKNOWN3 EQU $ff73 ; (00h) - Bit 0-7 (Read/Write)
|
||||
rUNKNOWN4 EQU $ff74 ; (00h) - Bit 0-7 (Read/Write) - CGB Mode Only
|
||||
rUNKNOWN5 EQU $ff75 ; (8Fh) - Bit 4-6 (Read/Write)
|
||||
rUNKNOWN6 EQU $ff76 ; (00h) - Always 00h (Read Only)
|
||||
rUNKNOWN7 EQU $ff77 ; (00h) - Always 00h (Read Only)
|
||||
rIE EQU $ffff ; Interrupt Enable (R/W)
|
||||
DEF rJOYP EQU $ff00 ; Joypad (R/W)
|
||||
DEF rSB EQU $ff01 ; Serial transfer data (R/W)
|
||||
DEF rSC EQU $ff02 ; Serial Transfer Control (R/W)
|
||||
DEF rSC_ON EQU 7
|
||||
DEF rSC_CGB EQU 1
|
||||
DEF rSC_CLOCK EQU 0
|
||||
DEF rDIV EQU $ff04 ; Divider Register (R/W)
|
||||
DEF rTIMA EQU $ff05 ; Timer counter (R/W)
|
||||
DEF rTMA EQU $ff06 ; Timer Modulo (R/W)
|
||||
DEF rTAC EQU $ff07 ; Timer Control (R/W)
|
||||
DEF rTAC_ON EQU 2
|
||||
DEF rTAC_4096_HZ EQU %00
|
||||
DEF rTAC_262144_HZ EQU %01
|
||||
DEF rTAC_65536_HZ EQU %10
|
||||
DEF rTAC_16384_HZ EQU %11
|
||||
DEF rIF EQU $ff0f ; Interrupt Flag (R/W)
|
||||
DEF rNR10 EQU $ff10 ; Channel 1 Sweep register (R/W)
|
||||
DEF rNR11 EQU $ff11 ; Channel 1 Sound length/Wave pattern duty (R/W)
|
||||
DEF rNR12 EQU $ff12 ; Channel 1 Volume Envelope (R/W)
|
||||
DEF rNR13 EQU $ff13 ; Channel 1 Frequency lo (Write Only)
|
||||
DEF rNR14 EQU $ff14 ; Channel 1 Frequency hi (R/W)
|
||||
DEF rNR20 EQU $ff15 ; Channel 2 Sweep register (R/W)
|
||||
DEF rNR21 EQU $ff16 ; Channel 2 Sound Length/Wave Pattern Duty (R/W)
|
||||
DEF rNR22 EQU $ff17 ; Channel 2 Volume Envelope (R/W)
|
||||
DEF rNR23 EQU $ff18 ; Channel 2 Frequency lo data (W)
|
||||
DEF rNR24 EQU $ff19 ; Channel 2 Frequency hi data (R/W)
|
||||
DEF rNR30 EQU $ff1a ; Channel 3 Sound on/off (R/W)
|
||||
DEF rNR31 EQU $ff1b ; Channel 3 Sound Length
|
||||
DEF rNR32 EQU $ff1c ; Channel 3 Select output level (R/W)
|
||||
DEF rNR33 EQU $ff1d ; Channel 3 Frequency's lower data (W)
|
||||
DEF rNR34 EQU $ff1e ; Channel 3 Frequency's higher data (R/W)
|
||||
DEF rNR40 EQU $ff1f ; Channel 4 Sweep register (R/W)
|
||||
DEF rNR41 EQU $ff20 ; Channel 4 Sound Length (R/W)
|
||||
DEF rNR42 EQU $ff21 ; Channel 4 Volume Envelope (R/W)
|
||||
DEF rNR43 EQU $ff22 ; Channel 4 Polynomial Counter (R/W)
|
||||
DEF rNR44 EQU $ff23 ; Channel 4 Counter/consecutive; Inital (R/W)
|
||||
DEF rNR50 EQU $ff24 ; Channel control / ON-OFF / Volume (R/W)
|
||||
DEF rNR51 EQU $ff25 ; Selection of Sound output terminal (R/W)
|
||||
DEF rNR52 EQU $ff26 ; Sound on/off
|
||||
DEF rWave_0 EQU $ff30
|
||||
DEF rWave_1 EQU $ff31
|
||||
DEF rWave_2 EQU $ff32
|
||||
DEF rWave_3 EQU $ff33
|
||||
DEF rWave_4 EQU $ff34
|
||||
DEF rWave_5 EQU $ff35
|
||||
DEF rWave_6 EQU $ff36
|
||||
DEF rWave_7 EQU $ff37
|
||||
DEF rWave_8 EQU $ff38
|
||||
DEF rWave_9 EQU $ff39
|
||||
DEF rWave_a EQU $ff3a
|
||||
DEF rWave_b EQU $ff3b
|
||||
DEF rWave_c EQU $ff3c
|
||||
DEF rWave_d EQU $ff3d
|
||||
DEF rWave_e EQU $ff3e
|
||||
DEF rWave_f EQU $ff3f
|
||||
DEF rLCDC EQU $ff40 ; LCD Control (R/W)
|
||||
DEF rLCDC_BG_PRIORITY EQU 0 ; 0=Off, 1=On
|
||||
DEF rLCDC_SPRITES_ENABLE EQU 1 ; 0=Off, 1=On
|
||||
DEF rLCDC_SPRITE_SIZE EQU 2 ; 0=8x8, 1=8x16
|
||||
DEF rLCDC_BG_TILEMAP EQU 3 ; 0=9800-9BFF, 1=9C00-9FFF
|
||||
DEF rLCDC_TILE_DATA EQU 4 ; 0=8800-97FF, 1=8000-8FFF
|
||||
DEF rLCDC_WINDOW_ENABLE EQU 5 ; 0=Off, 1=On
|
||||
DEF rLCDC_WINDOW_TILEMAP EQU 6 ; 0=9800-9BFF, 1=9C00-9FFF
|
||||
DEF rLCDC_ENABLE EQU 7 ; 0=Off, 1=On
|
||||
DEF LCDC_DEFAULT EQU (1 << rLCDC_ENABLE) | (1 << rLCDC_WINDOW_TILEMAP) | (1 << rLCDC_WINDOW_ENABLE) | (1 << rLCDC_SPRITES_ENABLE) | (1 << rLCDC_BG_PRIORITY)
|
||||
DEF rSTAT EQU $ff41 ; LCDC Status (R/W)
|
||||
DEF rSCY EQU $ff42 ; Scroll Y (R/W)
|
||||
DEF rSCX EQU $ff43 ; Scroll X (R/W)
|
||||
DEF rLY EQU $ff44 ; LCDC Y-Coordinate (R)
|
||||
DEF LY_VBLANK EQU 144
|
||||
DEF rLYC EQU $ff45 ; LY Compare (R/W)
|
||||
DEF rDMA EQU $ff46 ; DMA Transfer and Start Address (W)
|
||||
DEF rBGP EQU $ff47 ; BG Palette Data (R/W) - Non CGB Mode Only
|
||||
DEF rOBP0 EQU $ff48 ; Object Palette 0 Data (R/W) - Non CGB Mode Only
|
||||
DEF rOBP1 EQU $ff49 ; Object Palette 1 Data (R/W) - Non CGB Mode Only
|
||||
DEF rWY EQU $ff4a ; Window Y Position (R/W)
|
||||
DEF rWX EQU $ff4b ; Window X Position minus 7 (R/W)
|
||||
DEF rLCDMODE EQU $ff4c
|
||||
DEF rKEY1 EQU $ff4d ; CGB Mode Only - Prepare Speed Switch
|
||||
DEF rVBK EQU $ff4f ; CGB Mode Only - VRAM Bank
|
||||
DEF rBLCK EQU $ff50
|
||||
DEF rHDMA1 EQU $ff51 ; CGB Mode Only - New DMA Source, High
|
||||
DEF rHDMA2 EQU $ff52 ; CGB Mode Only - New DMA Source, Low
|
||||
DEF rHDMA3 EQU $ff53 ; CGB Mode Only - New DMA Destination, High
|
||||
DEF rHDMA4 EQU $ff54 ; CGB Mode Only - New DMA Destination, Low
|
||||
DEF rHDMA5 EQU $ff55 ; CGB Mode Only - New DMA Length/Mode/Start
|
||||
DEF rRP EQU $ff56 ; CGB Mode Only - Infrared Communications Port
|
||||
DEF rRP_LED_ON EQU 0
|
||||
DEF rRP_RECEIVING EQU 1
|
||||
DEF rRP_ENABLE_READ_MASK EQU %11000000
|
||||
DEF rBGPI EQU $ff68 ; CGB Mode Only - Background Palette Index
|
||||
DEF rBGPI_AUTO_INCREMENT EQU 7 ; increment rBGPI after write to rBGPD
|
||||
DEF rBGPD EQU $ff69 ; CGB Mode Only - Background Palette Data
|
||||
DEF rOBPI EQU $ff6a ; CGB Mode Only - Sprite Palette Index
|
||||
DEF rOBPI_AUTO_INCREMENT EQU 7 ; increment rOBPI after write to rOBPD
|
||||
DEF rOBPD EQU $ff6b ; CGB Mode Only - Sprite Palette Data
|
||||
DEF rUNKNOWN1 EQU $ff6c ; (FEh) Bit 0 (Read/Write) - CGB Mode Only
|
||||
DEF rSVBK EQU $ff70 ; CGB Mode Only - WRAM Bank
|
||||
DEF rUNKNOWN2 EQU $ff72 ; (00h) - Bit 0-7 (Read/Write)
|
||||
DEF rUNKNOWN3 EQU $ff73 ; (00h) - Bit 0-7 (Read/Write)
|
||||
DEF rUNKNOWN4 EQU $ff74 ; (00h) - Bit 0-7 (Read/Write) - CGB Mode Only
|
||||
DEF rUNKNOWN5 EQU $ff75 ; (8Fh) - Bit 4-6 (Read/Write)
|
||||
DEF rUNKNOWN6 EQU $ff76 ; (00h) - Always 00h (Read Only)
|
||||
DEF rUNKNOWN7 EQU $ff77 ; (00h) - Always 00h (Read Only)
|
||||
DEF rIE EQU $ffff ; Interrupt Enable (R/W)
|
||||
|
@ -39,7 +39,7 @@
|
||||
const ICON_SLOWPOKE
|
||||
const ICON_SUDOWOODO
|
||||
const ICON_BIGMON
|
||||
NUM_ICONS EQU const_value - 1
|
||||
DEF NUM_ICONS EQU const_value - 1
|
||||
|
||||
; LoadMenuMonIcon.Jumptable indexes (see engine/gfx/mon_icons.asm)
|
||||
const_def
|
||||
|
@ -9,18 +9,18 @@
|
||||
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
|
||||
DEF NO_INPUT EQU %00000000
|
||||
DEF A_BUTTON EQU 1 << A_BUTTON_F
|
||||
DEF B_BUTTON EQU 1 << B_BUTTON_F
|
||||
DEF SELECT EQU 1 << SELECT_F
|
||||
DEF START EQU 1 << START_F
|
||||
DEF D_RIGHT EQU 1 << D_RIGHT_F
|
||||
DEF D_LEFT EQU 1 << D_LEFT_F
|
||||
DEF D_UP EQU 1 << D_UP_F
|
||||
DEF 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
|
||||
DEF BUTTONS EQU A_BUTTON | B_BUTTON | SELECT | START
|
||||
DEF D_PAD EQU D_RIGHT | D_LEFT | D_UP | D_DOWN
|
||||
|
||||
R_DPAD EQU %00100000
|
||||
R_BUTTONS EQU %00010000
|
||||
DEF R_DPAD EQU %00100000
|
||||
DEF R_BUTTONS EQU %00010000
|
||||
|
@ -196,16 +196,16 @@
|
||||
const MUSIC_MAIL ; bc
|
||||
const MIRAGE_MAIL ; bd
|
||||
const ITEM_BE ; be
|
||||
NUM_ITEMS EQU const_value - 1
|
||||
DEF NUM_ITEMS EQU const_value - 1
|
||||
|
||||
__tmhm_value__ = 1
|
||||
DEF __tmhm_value__ = 1
|
||||
|
||||
add_tmnum: MACRO
|
||||
\1_TMNUM EQU __tmhm_value__
|
||||
__tmhm_value__ += 1
|
||||
MACRO add_tmnum
|
||||
DEF \1_TMNUM EQU __tmhm_value__
|
||||
DEF __tmhm_value__ += 1
|
||||
ENDM
|
||||
|
||||
add_tm: MACRO
|
||||
MACRO add_tm
|
||||
; Defines three constants:
|
||||
; - TM_\1: the item id, starting at $bf
|
||||
; - \1_TMNUM: the learnable TM/HM flag, starting at 1
|
||||
@ -216,7 +216,7 @@ TM{02d:__tmhm_value__}_MOVE = \1
|
||||
ENDM
|
||||
|
||||
; see data/moves/tmhm_moves.asm for moves
|
||||
TM01 EQU const_value
|
||||
DEF TM01 EQU const_value
|
||||
add_tm DYNAMICPUNCH ; bf
|
||||
add_tm HEADBUTT ; c0
|
||||
add_tm CURSE ; c1
|
||||
@ -269,20 +269,20 @@ TM01 EQU const_value
|
||||
add_tm FIRE_PUNCH ; f0
|
||||
add_tm FURY_CUTTER ; f1
|
||||
add_tm NIGHTMARE ; f2
|
||||
NUM_TMS EQU __tmhm_value__ - 1
|
||||
DEF NUM_TMS EQU __tmhm_value__ - 1
|
||||
|
||||
add_hm: MACRO
|
||||
MACRO add_hm
|
||||
; Defines three constants:
|
||||
; - HM_\1: the item id, starting at $f3
|
||||
; - \1_TMNUM: the learnable TM/HM flag, starting at 51
|
||||
; - HM##_MOVE: alias for the move id, equal to the value of \1
|
||||
const HM_\1
|
||||
HM_VALUE = __tmhm_value__ - NUM_TMS
|
||||
HM{02d:HM_VALUE}_MOVE = \1
|
||||
DEF HM_VALUE = __tmhm_value__ - NUM_TMS
|
||||
DEF HM{02d:HM_VALUE}_MOVE = \1
|
||||
add_tmnum \1
|
||||
ENDM
|
||||
|
||||
HM01 EQU const_value
|
||||
DEF HM01 EQU const_value
|
||||
add_hm CUT ; f3
|
||||
add_hm FLY ; f4
|
||||
add_hm SURF ; f5
|
||||
@ -290,31 +290,31 @@ HM01 EQU const_value
|
||||
add_hm FLASH ; f7
|
||||
add_hm WHIRLPOOL ; f8
|
||||
add_hm WATERFALL ; f9
|
||||
NUM_HMS EQU __tmhm_value__ - NUM_TMS - 1
|
||||
DEF NUM_HMS EQU __tmhm_value__ - NUM_TMS - 1
|
||||
|
||||
add_mt: MACRO
|
||||
MACRO add_mt
|
||||
; Defines two constants:
|
||||
; - \1_TMNUM: the learnable TM/HM flag, starting at 58
|
||||
; - MT##_MOVE: alias for the move id, equal to the value of \1
|
||||
MT_VALUE = __tmhm_value__ - NUM_TMS - NUM_HMS
|
||||
MT{02d:MT_VALUE}_MOVE = \1
|
||||
DEF MT_VALUE = __tmhm_value__ - NUM_TMS - NUM_HMS
|
||||
DEF MT{02d:MT_VALUE}_MOVE = \1
|
||||
add_tmnum \1
|
||||
ENDM
|
||||
|
||||
MT01 EQU const_value
|
||||
DEF MT01 EQU const_value
|
||||
add_mt FLAMETHROWER
|
||||
add_mt THUNDERBOLT
|
||||
add_mt ICE_BEAM
|
||||
NUM_TUTORS = __tmhm_value__ - NUM_TMS - NUM_HMS - 1
|
||||
DEF NUM_TUTORS = __tmhm_value__ - NUM_TMS - NUM_HMS - 1
|
||||
|
||||
NUM_TM_HM_TUTOR EQU NUM_TMS + NUM_HMS + NUM_TUTORS
|
||||
DEF NUM_TM_HM_TUTOR EQU NUM_TMS + NUM_HMS + NUM_TUTORS
|
||||
|
||||
const ITEM_FA ; fa
|
||||
|
||||
USE_SCRIPT_VAR EQU $00
|
||||
ITEM_FROM_MEM EQU $ff
|
||||
DEF USE_SCRIPT_VAR EQU $00
|
||||
DEF ITEM_FROM_MEM EQU $ff
|
||||
|
||||
; leftovers from red
|
||||
SAFARI_BALL EQU $08 ; MOON_STONE
|
||||
MOON_STONE_RED EQU $0a ; BURN_HEAL
|
||||
FULL_HEAL_RED EQU $34 ; X_SPEED
|
||||
DEF SAFARI_BALL EQU $08 ; MOON_STONE
|
||||
DEF MOON_STONE_RED EQU $0a ; BURN_HEAL
|
||||
DEF FULL_HEAL_RED EQU $34 ; X_SPEED
|
||||
|
@ -1,15 +1,15 @@
|
||||
; item_attributes struct members (see data/items/attributes.asm)
|
||||
rsreset
|
||||
ITEMATTR_PRICE rw
|
||||
DEF ITEMATTR_PRICE rw
|
||||
rsset ITEMATTR_PRICE
|
||||
ITEMATTR_PRICE_LO rb
|
||||
ITEMATTR_PRICE_HI rb
|
||||
ITEMATTR_EFFECT rb
|
||||
ITEMATTR_PARAM rb
|
||||
ITEMATTR_PERMISSIONS rb
|
||||
ITEMATTR_POCKET rb
|
||||
ITEMATTR_HELP rb
|
||||
ITEMATTR_STRUCT_LENGTH EQU _RS
|
||||
DEF ITEMATTR_PRICE_LO rb
|
||||
DEF ITEMATTR_PRICE_HI rb
|
||||
DEF ITEMATTR_EFFECT rb
|
||||
DEF ITEMATTR_PARAM rb
|
||||
DEF ITEMATTR_PERMISSIONS rb
|
||||
DEF ITEMATTR_POCKET rb
|
||||
DEF ITEMATTR_HELP rb
|
||||
DEF ITEMATTR_STRUCT_LENGTH EQU _RS
|
||||
|
||||
; item types
|
||||
const_def 1
|
||||
@ -17,7 +17,7 @@ ITEMATTR_STRUCT_LENGTH EQU _RS
|
||||
const KEY_ITEM ; 2
|
||||
const BALL ; 3
|
||||
const TM_HM ; 4
|
||||
NUM_ITEM_TYPES EQU const_value - 1
|
||||
DEF NUM_ITEM_TYPES EQU const_value - 1
|
||||
|
||||
; item menu types
|
||||
; UseItem.dw indexes (see engine/items/pack.asm)
|
||||
@ -30,12 +30,12 @@ NUM_ITEM_TYPES EQU const_value - 1
|
||||
const ITEMMENU_CLOSE ; 6
|
||||
|
||||
; item actions
|
||||
CANT_SELECT_F EQU 6
|
||||
CANT_TOSS_F EQU 7
|
||||
DEF CANT_SELECT_F EQU 6
|
||||
DEF CANT_TOSS_F EQU 7
|
||||
|
||||
NO_LIMITS EQU 0
|
||||
CANT_SELECT EQU 1 << CANT_SELECT_F
|
||||
CANT_TOSS EQU 1 << CANT_TOSS_F
|
||||
DEF NO_LIMITS EQU 0
|
||||
DEF CANT_SELECT EQU 1 << CANT_SELECT_F
|
||||
DEF CANT_TOSS EQU 1 << CANT_TOSS_F
|
||||
|
||||
; pack pockets
|
||||
const_def
|
||||
@ -43,20 +43,20 @@ CANT_TOSS EQU 1 << CANT_TOSS_F
|
||||
const BALL_POCKET ; 1
|
||||
const KEY_ITEM_POCKET ; 2
|
||||
const TM_HM_POCKET ; 3
|
||||
NUM_POCKETS EQU const_value
|
||||
DEF NUM_POCKETS EQU const_value
|
||||
|
||||
MAX_ITEMS EQU 20
|
||||
MAX_BALLS EQU 12
|
||||
MAX_KEY_ITEMS EQU 25
|
||||
MAX_PC_ITEMS EQU 50
|
||||
DEF MAX_ITEMS EQU 20
|
||||
DEF MAX_BALLS EQU 12
|
||||
DEF MAX_KEY_ITEMS EQU 25
|
||||
DEF MAX_PC_ITEMS EQU 50
|
||||
|
||||
MAX_ITEM_STACK EQU 99
|
||||
DEF MAX_ITEM_STACK EQU 99
|
||||
|
||||
; mail
|
||||
MAIL_LINE_LENGTH EQU $10
|
||||
MAIL_MSG_LENGTH EQU $20
|
||||
MAILBOX_CAPACITY EQU 10
|
||||
MAIL_STRUCT_LENGTH EQU $2f ; mailmsg struct
|
||||
DEF MAIL_LINE_LENGTH EQU $10
|
||||
DEF MAIL_MSG_LENGTH EQU $20
|
||||
DEF MAILBOX_CAPACITY EQU 10
|
||||
DEF MAIL_STRUCT_LENGTH EQU $2f ; mailmsg struct
|
||||
|
||||
; held item effects
|
||||
const_def
|
||||
|
@ -48,7 +48,7 @@
|
||||
const LANDMARK_DARK_CAVE ; 2c
|
||||
const LANDMARK_ROUTE_46 ; 2d
|
||||
const LANDMARK_SILVER_CAVE ; 2e
|
||||
KANTO_LANDMARK EQU const_value
|
||||
DEF KANTO_LANDMARK EQU const_value
|
||||
const LANDMARK_PALLET_TOWN ; 2f
|
||||
const LANDMARK_ROUTE_1 ; 30
|
||||
const LANDMARK_VIRIDIAN_CITY ; 31
|
||||
@ -98,7 +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
|
||||
DEF NUM_LANDMARKS EQU const_value
|
||||
|
||||
; used in CaughtData
|
||||
const_def $7f, -1
|
||||
@ -109,4 +109,4 @@ NUM_LANDMARKS EQU const_value
|
||||
const_def
|
||||
const JOHTO_REGION ; 0
|
||||
const KANTO_REGION ; 1
|
||||
NUM_REGIONS EQU const_value
|
||||
DEF NUM_REGIONS EQU const_value
|
||||
|
@ -1,24 +1,24 @@
|
||||
newgroup: MACRO
|
||||
MACRO newgroup
|
||||
;\1: group id
|
||||
const_skip
|
||||
MAPGROUP_\1 EQU const_value
|
||||
CURRENT_NUM_MAPGROUP_MAPS EQUS "NUM_\1_MAPS"
|
||||
__map_value__ = 1
|
||||
DEF MAPGROUP_\1 EQU const_value
|
||||
DEF CURRENT_NUM_MAPGROUP_MAPS EQUS "NUM_\1_MAPS"
|
||||
DEF __map_value__ = 1
|
||||
ENDM
|
||||
|
||||
map_const: MACRO
|
||||
MACRO map_const
|
||||
;\1: map id
|
||||
;\2: width: in blocks
|
||||
;\3: height: in blocks
|
||||
GROUP_\1 EQU const_value
|
||||
MAP_\1 EQU __map_value__
|
||||
__map_value__ += 1
|
||||
\1_WIDTH EQU \2
|
||||
\1_HEIGHT EQU \3
|
||||
DEF GROUP_\1 EQU const_value
|
||||
DEF MAP_\1 EQU __map_value__
|
||||
DEF __map_value__ += 1
|
||||
DEF \1_WIDTH EQU \2
|
||||
DEF \1_HEIGHT EQU \3
|
||||
ENDM
|
||||
|
||||
endgroup: MACRO
|
||||
{CURRENT_NUM_MAPGROUP_MAPS} EQU __map_value__ - 1
|
||||
MACRO endgroup
|
||||
DEF {CURRENT_NUM_MAPGROUP_MAPS} EQU __map_value__ - 1
|
||||
PURGE CURRENT_NUM_MAPGROUP_MAPS
|
||||
ENDM
|
||||
|
||||
@ -501,4 +501,4 @@ ENDM
|
||||
map_const ROUTE_31_VIOLET_GATE, 5, 4 ; 11
|
||||
endgroup
|
||||
|
||||
NUM_MAP_GROUPS EQU const_value ; 26
|
||||
DEF NUM_MAP_GROUPS EQU const_value ; 26
|
||||
|
@ -1,21 +1,21 @@
|
||||
MAPGROUP_N_A EQU -1
|
||||
GROUP_N_A EQU -1
|
||||
MAP_N_A EQU -1
|
||||
MAPGROUP_NONE EQU 0
|
||||
GROUP_NONE EQU 0
|
||||
MAP_NONE EQU 0
|
||||
DEF MAPGROUP_N_A EQU -1
|
||||
DEF GROUP_N_A EQU -1
|
||||
DEF MAP_N_A EQU -1
|
||||
DEF MAPGROUP_NONE EQU 0
|
||||
DEF GROUP_NONE EQU 0
|
||||
DEF MAP_NONE EQU 0
|
||||
|
||||
; map struct members (see data/maps/maps.asm)
|
||||
rsreset
|
||||
MAP_MAPATTRIBUTES_BANK rb ; 0
|
||||
MAP_TILESET rb ; 1
|
||||
MAP_ENVIRONMENT rb ; 2
|
||||
MAP_MAPATTRIBUTES rw ; 3
|
||||
MAP_LOCATION rb ; 5
|
||||
MAP_MUSIC rb ; 6
|
||||
MAP_PALETTE rb ; 7
|
||||
MAP_FISHGROUP rb ; 8
|
||||
MAP_LENGTH EQU _RS
|
||||
DEF MAP_MAPATTRIBUTES_BANK rb ; 0
|
||||
DEF MAP_TILESET rb ; 1
|
||||
DEF MAP_ENVIRONMENT rb ; 2
|
||||
DEF MAP_MAPATTRIBUTES rw ; 3
|
||||
DEF MAP_LOCATION rb ; 5
|
||||
DEF MAP_MUSIC rb ; 6
|
||||
DEF MAP_PALETTE rb ; 7
|
||||
DEF MAP_FISHGROUP rb ; 8
|
||||
DEF MAP_LENGTH EQU _RS
|
||||
|
||||
; map environments (wEnvironment)
|
||||
; EnvironmentColorsPointers indexes (see data/maps/environment_colors.asm)
|
||||
@ -27,7 +27,7 @@ MAP_LENGTH EQU _RS
|
||||
const ENVIRONMENT_5
|
||||
const GATE
|
||||
const DUNGEON
|
||||
NUM_ENVIRONMENTS EQU const_value - 1
|
||||
DEF NUM_ENVIRONMENTS EQU const_value - 1
|
||||
|
||||
; map palettes (wEnvironment)
|
||||
const_def
|
||||
@ -36,7 +36,7 @@ NUM_ENVIRONMENTS EQU const_value - 1
|
||||
const PALETTE_NITE
|
||||
const PALETTE_MORN
|
||||
const PALETTE_DARK
|
||||
NUM_MAP_PALETTES EQU const_value
|
||||
DEF NUM_MAP_PALETTES EQU const_value
|
||||
|
||||
; FishGroups indexes (see data/wild/fish.asm)
|
||||
const_def
|
||||
@ -54,7 +54,7 @@ NUM_MAP_PALETTES EQU const_value
|
||||
const FISHGROUP_QWILFISH
|
||||
const FISHGROUP_REMORAID
|
||||
const FISHGROUP_QWILFISH_NO_SWARM
|
||||
NUM_FISHGROUPS EQU const_value - 1
|
||||
DEF NUM_FISHGROUPS EQU const_value - 1
|
||||
|
||||
; connection directions (see data/maps/data.asm)
|
||||
const_def
|
||||
@ -102,14 +102,14 @@ NUM_FISHGROUPS EQU const_value - 1
|
||||
const SPAWN_BLACKTHORN
|
||||
const SPAWN_MT_SILVER
|
||||
const SPAWN_FAST_SHIP
|
||||
NUM_SPAWNS EQU const_value
|
||||
DEF NUM_SPAWNS EQU const_value
|
||||
|
||||
SPAWN_N_A EQU -1
|
||||
DEF SPAWN_N_A EQU -1
|
||||
|
||||
; Flypoints indexes (see data/maps/flypoints.asm)
|
||||
const_def
|
||||
; johto
|
||||
JOHTO_FLYPOINT EQU const_value
|
||||
DEF JOHTO_FLYPOINT EQU const_value
|
||||
const FLY_NEW_BARK
|
||||
const FLY_CHERRYGROVE
|
||||
const FLY_VIOLET
|
||||
@ -123,7 +123,7 @@ JOHTO_FLYPOINT EQU const_value
|
||||
const FLY_BLACKTHORN
|
||||
const FLY_MT_SILVER
|
||||
; kanto
|
||||
KANTO_FLYPOINT EQU const_value
|
||||
DEF KANTO_FLYPOINT EQU const_value
|
||||
const FLY_PALLET
|
||||
const FLY_VIRIDIAN
|
||||
const FLY_PEWTER
|
||||
@ -136,6 +136,6 @@ KANTO_FLYPOINT EQU const_value
|
||||
const FLY_FUCHSIA
|
||||
const FLY_CINNABAR
|
||||
const FLY_INDIGO
|
||||
NUM_FLYPOINTS EQU const_value
|
||||
DEF NUM_FLYPOINTS EQU const_value
|
||||
|
||||
MAX_OUTDOOR_SPRITES EQU 23 ; see engine/overworld/overworld.asm
|
||||
DEF MAX_OUTDOOR_SPRITES EQU 23 ; see engine/overworld/overworld.asm
|
||||
|
@ -1,47 +1,47 @@
|
||||
; object_struct members (see macros/wram.asm)
|
||||
rsreset
|
||||
OBJECT_SPRITE rb ; 00
|
||||
OBJECT_MAP_OBJECT_INDEX rb ; 01
|
||||
OBJECT_SPRITE_TILE rb ; 02
|
||||
OBJECT_MOVEMENTTYPE rb ; 03
|
||||
OBJECT_FLAGS1 rb ; 04
|
||||
OBJECT_FLAGS2 rb ; 05
|
||||
OBJECT_PALETTE rb ; 06
|
||||
OBJECT_DIRECTION_WALKING rb ; 07
|
||||
OBJECT_FACING rb ; 08
|
||||
OBJECT_STEP_TYPE rb ; 09
|
||||
OBJECT_STEP_DURATION rb ; 0a
|
||||
OBJECT_ACTION rb ; 0b
|
||||
OBJECT_STEP_FRAME rb ; 0c
|
||||
OBJECT_FACING_STEP rb ; 0d
|
||||
OBJECT_NEXT_TILE rb ; 0e
|
||||
OBJECT_STANDING_TILE rb ; 0f
|
||||
OBJECT_NEXT_MAP_X rb ; 10
|
||||
OBJECT_NEXT_MAP_Y rb ; 11
|
||||
OBJECT_MAP_X rb ; 12
|
||||
OBJECT_MAP_Y rb ; 13
|
||||
OBJECT_INIT_X rb ; 14
|
||||
OBJECT_INIT_Y rb ; 15
|
||||
OBJECT_RADIUS rb ; 16
|
||||
OBJECT_SPRITE_X rb ; 17
|
||||
OBJECT_SPRITE_Y rb ; 18
|
||||
OBJECT_SPRITE_X_OFFSET rb ; 19
|
||||
OBJECT_SPRITE_Y_OFFSET rb ; 1a
|
||||
OBJECT_MOVEMENT_BYTE_INDEX rb ; 1b
|
||||
OBJECT_1C rb ; 1c
|
||||
OBJECT_1D rb ; 1d
|
||||
OBJECT_1E rb ; 1e
|
||||
OBJECT_1F rb ; 1f
|
||||
OBJECT_RANGE rb ; 20
|
||||
DEF OBJECT_SPRITE rb ; 00
|
||||
DEF OBJECT_MAP_OBJECT_INDEX rb ; 01
|
||||
DEF OBJECT_SPRITE_TILE rb ; 02
|
||||
DEF OBJECT_MOVEMENTTYPE rb ; 03
|
||||
DEF OBJECT_FLAGS1 rb ; 04
|
||||
DEF OBJECT_FLAGS2 rb ; 05
|
||||
DEF OBJECT_PALETTE rb ; 06
|
||||
DEF OBJECT_DIRECTION_WALKING rb ; 07
|
||||
DEF OBJECT_FACING rb ; 08
|
||||
DEF OBJECT_STEP_TYPE rb ; 09
|
||||
DEF OBJECT_STEP_DURATION rb ; 0a
|
||||
DEF OBJECT_ACTION rb ; 0b
|
||||
DEF OBJECT_STEP_FRAME rb ; 0c
|
||||
DEF OBJECT_FACING_STEP rb ; 0d
|
||||
DEF OBJECT_NEXT_TILE rb ; 0e
|
||||
DEF OBJECT_STANDING_TILE rb ; 0f
|
||||
DEF OBJECT_NEXT_MAP_X rb ; 10
|
||||
DEF OBJECT_NEXT_MAP_Y rb ; 11
|
||||
DEF OBJECT_MAP_X rb ; 12
|
||||
DEF OBJECT_MAP_Y rb ; 13
|
||||
DEF OBJECT_INIT_X rb ; 14
|
||||
DEF OBJECT_INIT_Y rb ; 15
|
||||
DEF OBJECT_RADIUS rb ; 16
|
||||
DEF OBJECT_SPRITE_X rb ; 17
|
||||
DEF OBJECT_SPRITE_Y rb ; 18
|
||||
DEF OBJECT_SPRITE_X_OFFSET rb ; 19
|
||||
DEF OBJECT_SPRITE_Y_OFFSET rb ; 1a
|
||||
DEF OBJECT_MOVEMENT_BYTE_INDEX rb ; 1b
|
||||
DEF OBJECT_1C rb ; 1c
|
||||
DEF OBJECT_1D rb ; 1d
|
||||
DEF OBJECT_1E rb ; 1e
|
||||
DEF OBJECT_1F rb ; 1f
|
||||
DEF OBJECT_RANGE rb ; 20
|
||||
rb_skip 7
|
||||
OBJECT_LENGTH EQU _RS
|
||||
NUM_OBJECT_STRUCTS EQU 13 ; see wObjectStructs
|
||||
DEF OBJECT_LENGTH EQU _RS
|
||||
DEF NUM_OBJECT_STRUCTS EQU 13 ; see wObjectStructs
|
||||
|
||||
; object_struct OBJECT_FACING values
|
||||
OW_DOWN EQU DOWN << 2
|
||||
OW_UP EQU UP << 2
|
||||
OW_LEFT EQU LEFT << 2
|
||||
OW_RIGHT EQU RIGHT << 2
|
||||
DEF OW_DOWN EQU DOWN << 2
|
||||
DEF OW_UP EQU UP << 2
|
||||
DEF OW_LEFT EQU LEFT << 2
|
||||
DEF OW_RIGHT EQU RIGHT << 2
|
||||
|
||||
; object_struct OBJECT_FLAGS1 bit flags
|
||||
const_def
|
||||
@ -54,14 +54,14 @@ OW_RIGHT EQU RIGHT << 2
|
||||
const NOCLIP_OBJS_F ; 6
|
||||
const EMOTE_OBJECT_F ; 7
|
||||
|
||||
INVISIBLE EQU 1 << INVISIBLE_F
|
||||
WONT_DELETE EQU 1 << WONT_DELETE_F
|
||||
FIXED_FACING EQU 1 << FIXED_FACING_F
|
||||
SLIDING EQU 1 << SLIDING_F
|
||||
NOCLIP_TILES EQU 1 << NOCLIP_TILES_F
|
||||
MOVE_ANYWHERE EQU 1 << MOVE_ANYWHERE_F
|
||||
NOCLIP_OBJS EQU 1 << NOCLIP_OBJS_F
|
||||
EMOTE_OBJECT EQU 1 << EMOTE_OBJECT_F
|
||||
DEF INVISIBLE EQU 1 << INVISIBLE_F
|
||||
DEF WONT_DELETE EQU 1 << WONT_DELETE_F
|
||||
DEF FIXED_FACING EQU 1 << FIXED_FACING_F
|
||||
DEF SLIDING EQU 1 << SLIDING_F
|
||||
DEF NOCLIP_TILES EQU 1 << NOCLIP_TILES_F
|
||||
DEF MOVE_ANYWHERE EQU 1 << MOVE_ANYWHERE_F
|
||||
DEF NOCLIP_OBJS EQU 1 << NOCLIP_OBJS_F
|
||||
DEF EMOTE_OBJECT EQU 1 << EMOTE_OBJECT_F
|
||||
|
||||
; object_struct OBJECT_FLAGS2 bit flags
|
||||
const_def
|
||||
@ -74,10 +74,10 @@ EMOTE_OBJECT EQU 1 << EMOTE_OBJECT_F
|
||||
const OBJ_FLAGS2_6 ; 6
|
||||
const OBJ_FLAGS2_7 ; 7
|
||||
|
||||
LOW_PRIORITY EQU 1 << LOW_PRIORITY_F
|
||||
HIGH_PRIORITY EQU 1 << HIGH_PRIORITY_F
|
||||
OVERHEAD EQU 1 << OVERHEAD_F
|
||||
USE_OBP1 EQU 1 << USE_OBP1_F
|
||||
DEF LOW_PRIORITY EQU 1 << LOW_PRIORITY_F
|
||||
DEF HIGH_PRIORITY EQU 1 << HIGH_PRIORITY_F
|
||||
DEF OVERHEAD EQU 1 << OVERHEAD_F
|
||||
DEF USE_OBP1 EQU 1 << USE_OBP1_F
|
||||
|
||||
; object_struct OBJECT_PALETTE bit flags
|
||||
const_def 5
|
||||
@ -85,48 +85,48 @@ USE_OBP1 EQU 1 << USE_OBP1_F
|
||||
const STRENGTH_BOULDER_F ; 6
|
||||
const BIG_OBJECT_F ; 7
|
||||
|
||||
SWIMMING EQU 1 << SWIMMING_F
|
||||
STRENGTH_BOULDER EQU 1 << STRENGTH_BOULDER_F
|
||||
BIG_OBJECT EQU 1 << BIG_OBJECT_F
|
||||
DEF SWIMMING EQU 1 << SWIMMING_F
|
||||
DEF STRENGTH_BOULDER EQU 1 << STRENGTH_BOULDER_F
|
||||
DEF BIG_OBJECT EQU 1 << BIG_OBJECT_F
|
||||
|
||||
; facing attribute bit flags
|
||||
RELATIVE_ATTRIBUTES_F EQU 1
|
||||
ABSOLUTE_TILE_ID_F EQU 2
|
||||
DEF RELATIVE_ATTRIBUTES_F EQU 1
|
||||
DEF ABSOLUTE_TILE_ID_F EQU 2
|
||||
|
||||
RELATIVE_ATTRIBUTES EQU 1 << RELATIVE_ATTRIBUTES_F
|
||||
ABSOLUTE_TILE_ID EQU 1 << ABSOLUTE_TILE_ID_F
|
||||
DEF RELATIVE_ATTRIBUTES EQU 1 << RELATIVE_ATTRIBUTES_F
|
||||
DEF ABSOLUTE_TILE_ID EQU 1 << ABSOLUTE_TILE_ID_F
|
||||
|
||||
; map_object struct members (see macros/wram.asm)
|
||||
rsreset
|
||||
MAPOBJECT_OBJECT_STRUCT_ID rb ; 0
|
||||
MAPOBJECT_SPRITE rb ; 1
|
||||
MAPOBJECT_Y_COORD rb ; 2
|
||||
MAPOBJECT_X_COORD rb ; 3
|
||||
MAPOBJECT_MOVEMENT rb ; 4
|
||||
MAPOBJECT_RADIUS rb ; 5
|
||||
MAPOBJECT_HOUR rb ; 6
|
||||
MAPOBJECT_TIMEOFDAY rb ; 7
|
||||
MAPOBJECT_COLOR rb ; 8
|
||||
MAPOBJECT_RANGE rb ; 9
|
||||
MAPOBJECT_SCRIPT_POINTER rw ; a
|
||||
MAPOBJECT_EVENT_FLAG rw ; c
|
||||
DEF MAPOBJECT_OBJECT_STRUCT_ID rb ; 0
|
||||
DEF MAPOBJECT_SPRITE rb ; 1
|
||||
DEF MAPOBJECT_Y_COORD rb ; 2
|
||||
DEF MAPOBJECT_X_COORD rb ; 3
|
||||
DEF MAPOBJECT_MOVEMENT rb ; 4
|
||||
DEF MAPOBJECT_RADIUS rb ; 5
|
||||
DEF MAPOBJECT_HOUR rb ; 6
|
||||
DEF MAPOBJECT_TIMEOFDAY rb ; 7
|
||||
DEF MAPOBJECT_COLOR rb ; 8
|
||||
DEF MAPOBJECT_RANGE rb ; 9
|
||||
DEF MAPOBJECT_SCRIPT_POINTER rw ; a
|
||||
DEF MAPOBJECT_EVENT_FLAG rw ; c
|
||||
rb_skip 2
|
||||
MAPOBJECT_LENGTH EQU _RS
|
||||
NUM_OBJECTS EQU 16
|
||||
PLAYER_OBJECT EQU 0
|
||||
DEF MAPOBJECT_LENGTH EQU _RS
|
||||
DEF NUM_OBJECTS EQU 16
|
||||
DEF PLAYER_OBJECT EQU 0
|
||||
|
||||
; SpriteMovementData struct members (see data/sprites/map_objects.asm)
|
||||
rsreset
|
||||
SPRITEMOVEATTR_MOVEMENT rb ; 0
|
||||
SPRITEMOVEATTR_FACING rb ; 1
|
||||
SPRITEMOVEATTR_ACTION rb ; 2
|
||||
SPRITEMOVEATTR_FLAGS1 rb ; 3
|
||||
SPRITEMOVEATTR_FLAGS2 rb ; 4
|
||||
SPRITEMOVEATTR_PALFLAGS rb ; 5
|
||||
NUM_SPRITEMOVEDATA_FIELDS EQU _RS
|
||||
DEF SPRITEMOVEATTR_MOVEMENT rb ; 0
|
||||
DEF SPRITEMOVEATTR_FACING rb ; 1
|
||||
DEF SPRITEMOVEATTR_ACTION rb ; 2
|
||||
DEF SPRITEMOVEATTR_FLAGS1 rb ; 3
|
||||
DEF SPRITEMOVEATTR_FLAGS2 rb ; 4
|
||||
DEF SPRITEMOVEATTR_PALFLAGS rb ; 5
|
||||
DEF NUM_SPRITEMOVEDATA_FIELDS EQU _RS
|
||||
|
||||
MAPOBJECT_SCREEN_WIDTH EQU (SCREEN_WIDTH / 2) + 2
|
||||
MAPOBJECT_SCREEN_HEIGHT EQU (SCREEN_HEIGHT / 2) + 2
|
||||
DEF MAPOBJECT_SCREEN_WIDTH EQU (SCREEN_WIDTH / 2) + 2
|
||||
DEF MAPOBJECT_SCREEN_HEIGHT EQU (SCREEN_HEIGHT / 2) + 2
|
||||
|
||||
; SpriteMovementData indexes (see data/sprites/map_objects.asm)
|
||||
const_def
|
||||
@ -167,7 +167,7 @@ MAPOBJECT_SCREEN_HEIGHT EQU (SCREEN_HEIGHT / 2) + 2
|
||||
const SPRITEMOVEDATA_BOULDERDUST ; 22
|
||||
const SPRITEMOVEDATA_GRASS ; 23
|
||||
const SPRITEMOVEDATA_SWIM_WANDER ; 24
|
||||
NUM_SPRITEMOVEDATA EQU const_value
|
||||
DEF NUM_SPRITEMOVEDATA EQU const_value
|
||||
|
||||
; StepFunction_FromMovement.Pointers indexes (see engine/overworld/map_objects.asm)
|
||||
const_def
|
||||
@ -199,7 +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
|
||||
DEF NUM_SPRITEMOVEFN EQU const_value
|
||||
|
||||
; StepTypesJumptable indexes (see engine/overworld/map_objects.asm)
|
||||
const_def
|
||||
@ -229,7 +229,7 @@ NUM_SPRITEMOVEFN 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
|
||||
DEF NUM_STEP_TYPES EQU const_value
|
||||
|
||||
; ObjectActionPairPointers indexes (see engine/overworld/map_object_action.asm)
|
||||
const_def
|
||||
@ -250,7 +250,7 @@ NUM_STEP_TYPES 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
|
||||
DEF NUM_OBJECT_ACTIONS EQU const_value
|
||||
|
||||
; Facings indexes (see data/sprites/facings.asm)
|
||||
const_def
|
||||
@ -286,7 +286,7 @@ NUM_OBJECT_ACTIONS EQU const_value
|
||||
const FACING_BOULDER_DUST_2 ; 1d
|
||||
const FACING_GRASS_1 ; 1e
|
||||
const FACING_GRASS_2 ; 1f
|
||||
NUM_FACINGS EQU const_value
|
||||
DEF NUM_FACINGS EQU const_value
|
||||
|
||||
; DoPlayerMovement.DoStep arguments (see engine/overworld/player_movement.asm)
|
||||
const_def
|
||||
@ -298,4 +298,4 @@ NUM_FACINGS EQU const_value
|
||||
const STEP_TURN ; 5
|
||||
const STEP_BACK_LEDGE ; 6
|
||||
const STEP_WALK_IN_PLACE ; 7
|
||||
NUM_STEPS EQU const_value
|
||||
DEF NUM_STEPS EQU const_value
|
||||
|
@ -13,7 +13,7 @@
|
||||
const MAPSETUP_SUBMENU ; fa
|
||||
const MAPSETUP_BADWARP ; fb
|
||||
const MAPSETUP_FLY ; fc
|
||||
NUM_MAPSETUP_SCRIPTS EQU const_value - $f1
|
||||
DEF NUM_MAPSETUP_SCRIPTS EQU const_value - $f1
|
||||
|
||||
; callback types
|
||||
const_def 1
|
||||
|
@ -42,4 +42,4 @@
|
||||
const MART_MT_MOON
|
||||
const MART_INDIGO_PLATEAU
|
||||
const MART_UNDERGROUND
|
||||
NUM_MARTS EQU const_value
|
||||
DEF NUM_MARTS EQU const_value
|
||||
|
@ -63,17 +63,17 @@
|
||||
const MONMENUITEM_MOVE ; 19
|
||||
const MONMENUITEM_MAIL ; 20
|
||||
const MONMENUITEM_ERROR ; 21
|
||||
NUM_MONMENUITEMS EQU const_value - 1
|
||||
DEF NUM_MONMENUITEMS EQU const_value - 1
|
||||
|
||||
; MonMenuOptions categories
|
||||
MONMENU_FIELD_MOVE EQU 0
|
||||
MONMENU_MENUOPTION EQU 1
|
||||
DEF MONMENU_FIELD_MOVE EQU 0
|
||||
DEF MONMENU_MENUOPTION EQU 1
|
||||
|
||||
NUM_MONMENU_ITEMS EQU 8
|
||||
DEF NUM_MONMENU_ITEMS EQU 8
|
||||
|
||||
; start/select menu return values
|
||||
HMENURETURN_SCRIPT EQU %10000000
|
||||
HMENURETURN_ASM EQU %11111111
|
||||
DEF HMENURETURN_SCRIPT EQU %10000000
|
||||
DEF HMENURETURN_ASM EQU %11111111
|
||||
|
||||
; PartyMenuQualityPointers indexes (see data/party_menu_qualities.asm)
|
||||
const_def
|
||||
@ -87,7 +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
|
||||
DEF NUM_PARTYMENUACTIONS EQU const_value
|
||||
; PrintPartyMenuActionText arguments (see engine/pokemon/party_menu.asm)
|
||||
const_next $f0
|
||||
const PARTYMENUTEXT_HEAL_PSN
|
||||
@ -111,4 +111,4 @@ NUM_PARTYMENUACTIONS EQU const_value
|
||||
const NAME_FRIEND
|
||||
const NAME_6 ; duplicate of NAME_MON
|
||||
const NAME_7 ; duplicate of NAME_MON
|
||||
NUM_NAME_TYPES EQU const_value
|
||||
DEF NUM_NAME_TYPES EQU const_value
|
||||
|
@ -1,10 +1,10 @@
|
||||
; Boolean checks
|
||||
FALSE EQU 0
|
||||
TRUE EQU 1
|
||||
DEF FALSE EQU 0
|
||||
DEF TRUE EQU 1
|
||||
|
||||
; genders
|
||||
MALE EQU 0
|
||||
FEMALE EQU 1
|
||||
DEF MALE EQU 0
|
||||
DEF FEMALE EQU 1
|
||||
|
||||
; FlagAction arguments (see home/flag.asm)
|
||||
const_def
|
||||
@ -14,36 +14,36 @@ FEMALE EQU 1
|
||||
|
||||
; G/S version ID: 0 = Gold, 1 = Silver (used by checkver)
|
||||
; Mystery Gift uses incremented values 1 and 2
|
||||
GS_VERSION EQU 0
|
||||
DEF GS_VERSION EQU 0
|
||||
; Pokémon Pikachu 2, a step counter / virtual pet device (used by Mystery Gift)
|
||||
POKEMON_PIKACHU_2_VERSION EQU 3
|
||||
RESERVED_GAME_VERSION EQU 4
|
||||
DEF POKEMON_PIKACHU_2_VERSION EQU 3
|
||||
DEF RESERVED_GAME_VERSION EQU 4
|
||||
|
||||
; save file corruption check values
|
||||
SAVE_CHECK_VALUE_1 EQU 99
|
||||
SAVE_CHECK_VALUE_2 EQU 127
|
||||
DEF SAVE_CHECK_VALUE_1 EQU 99
|
||||
DEF SAVE_CHECK_VALUE_2 EQU 127
|
||||
|
||||
; RTC halted check value
|
||||
RTC_HALT_VALUE EQU $1234
|
||||
DEF RTC_HALT_VALUE EQU $1234
|
||||
|
||||
; 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
|
||||
DEF MORN_HOUR EQU 4 ; 4 AM
|
||||
DEF DAY_HOUR EQU 10 ; 10 AM
|
||||
DEF NITE_HOUR EQU 18 ; 6 PM
|
||||
DEF NOON_HOUR EQU 12 ; 12 PM
|
||||
DEF MAX_HOUR EQU 24 ; 12 AM
|
||||
|
||||
; significant money values
|
||||
START_MONEY EQU 3000
|
||||
MOM_MONEY EQU 2300
|
||||
MAX_MONEY EQU 999999
|
||||
MAX_COINS EQU 9999
|
||||
DEF START_MONEY EQU 3000
|
||||
DEF MOM_MONEY EQU 2300
|
||||
DEF MAX_MONEY EQU 999999
|
||||
DEF MAX_COINS EQU 9999
|
||||
|
||||
; link record
|
||||
MAX_LINK_RECORD EQU 9999
|
||||
DEF MAX_LINK_RECORD EQU 9999
|
||||
|
||||
; day-care
|
||||
MAX_DAY_CARE_EXP EQU $500000
|
||||
DEF MAX_DAY_CARE_EXP EQU $500000
|
||||
|
||||
; hall of fame
|
||||
HOF_MASTER_COUNT EQU 200
|
||||
DEF HOF_MASTER_COUNT EQU 200
|
||||
|
@ -53,11 +53,11 @@
|
||||
const EZCHAT_FAREWELLS
|
||||
const EZCHAT_THISANDTHAT
|
||||
|
||||
NUM_KANA EQU 45 ; length of SortedPokemon table (see mobile/fixed_words.asm)
|
||||
DEF NUM_KANA EQU 45 ; length of SortedPokemon table (see mobile/fixed_words.asm)
|
||||
|
||||
MOBILE_LOGIN_PASSWORD_LENGTH EQU 17
|
||||
MOBILE_PHONE_NUMBER_LENGTH EQU 20
|
||||
DEF MOBILE_LOGIN_PASSWORD_LENGTH EQU 17
|
||||
DEF MOBILE_PHONE_NUMBER_LENGTH EQU 20
|
||||
|
||||
; Maximum amount of time allowed for mobile battles each day
|
||||
MOBILE_BATTLE_ALLOWED_SECONDS EQU 0
|
||||
MOBILE_BATTLE_ALLOWED_MINUTES EQU 10
|
||||
DEF MOBILE_BATTLE_ALLOWED_SECONDS EQU 0
|
||||
DEF MOBILE_BATTLE_ALLOWED_MINUTES EQU 10
|
||||
|
@ -257,7 +257,7 @@
|
||||
const ROCK_SMASH ; f9
|
||||
const WHIRLPOOL ; fa
|
||||
const BEAT_UP ; fb
|
||||
NUM_ATTACKS EQU const_value - 1
|
||||
DEF NUM_ATTACKS EQU const_value - 1
|
||||
|
||||
; Battle animations use the same constants as the moves up to this point
|
||||
const_next $ff
|
||||
@ -285,7 +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
|
||||
DEF NUM_BATTLE_ANIMS EQU const_value - 1
|
||||
|
||||
; wNumHits uses offsets from ANIM_MISS
|
||||
const_def
|
||||
|
@ -157,4 +157,4 @@
|
||||
const EFFECT_BEAT_UP
|
||||
const EFFECT_FLY
|
||||
const EFFECT_DEFENSE_CURL
|
||||
NUM_MOVE_EFECTS EQU const_value
|
||||
DEF NUM_MOVE_EFECTS EQU const_value
|
||||
|
@ -105,15 +105,15 @@
|
||||
const MUSIC_SUICUNE_BATTLE ; 64
|
||||
const MUSIC_BATTLE_TOWER_LOBBY ; 65
|
||||
const MUSIC_MOBILE_CENTER ; 66
|
||||
NUM_MUSIC_SONGS EQU const_value
|
||||
DEF NUM_MUSIC_SONGS EQU const_value
|
||||
|
||||
; GetMapMusic picks music for this value (see home/map.asm)
|
||||
MUSIC_MAHOGANY_MART EQU $64
|
||||
DEF MUSIC_MAHOGANY_MART EQU $64
|
||||
|
||||
; ExitPokegearRadio_HandleMusic uses these values
|
||||
RESTART_MAP_MUSIC EQU $fe
|
||||
ENTER_MAP_MUSIC EQU $ff
|
||||
DEF RESTART_MAP_MUSIC EQU $fe
|
||||
DEF ENTER_MAP_MUSIC EQU $ff
|
||||
|
||||
; GetMapMusic picks music for this bit flag
|
||||
RADIO_TOWER_MUSIC_F EQU 7
|
||||
RADIO_TOWER_MUSIC EQU 1 << RADIO_TOWER_MUSIC_F
|
||||
DEF RADIO_TOWER_MUSIC_F EQU 7
|
||||
DEF RADIO_TOWER_MUSIC EQU 1 << RADIO_TOWER_MUSIC_F
|
||||
|
@ -1,16 +1,16 @@
|
||||
; npctrade struct members (see data/events/npc_trades.asm)
|
||||
rsreset
|
||||
NPCTRADE_DIALOG rb
|
||||
NPCTRADE_GIVEMON rb
|
||||
NPCTRADE_GETMON rb
|
||||
NPCTRADE_NICKNAME rb MON_NAME_LENGTH
|
||||
NPCTRADE_DVS rw
|
||||
NPCTRADE_ITEM rb
|
||||
NPCTRADE_OT_ID rw
|
||||
NPCTRADE_OT_NAME rb NAME_LENGTH
|
||||
NPCTRADE_GENDER rb
|
||||
DEF NPCTRADE_DIALOG rb
|
||||
DEF NPCTRADE_GIVEMON rb
|
||||
DEF NPCTRADE_GETMON rb
|
||||
DEF NPCTRADE_NICKNAME rb MON_NAME_LENGTH
|
||||
DEF NPCTRADE_DVS rw
|
||||
DEF NPCTRADE_ITEM rb
|
||||
DEF NPCTRADE_OT_ID rw
|
||||
DEF NPCTRADE_OT_NAME rb NAME_LENGTH
|
||||
DEF NPCTRADE_GENDER rb
|
||||
rb_skip
|
||||
NPCTRADE_STRUCT_LENGTH EQU _RS
|
||||
DEF NPCTRADE_STRUCT_LENGTH EQU _RS
|
||||
|
||||
; NPCTrades indexes (see data/events/npc_trades.asm)
|
||||
const_def
|
||||
@ -21,7 +21,7 @@ NPCTRADE_STRUCT_LENGTH EQU _RS
|
||||
const NPC_TRADE_CHRIS ; 4
|
||||
const NPC_TRADE_KIM ; 5
|
||||
const NPC_TRADE_FOREST ; 6
|
||||
NUM_NPC_TRADES EQU const_value
|
||||
DEF NUM_NPC_TRADES EQU const_value
|
||||
|
||||
; trade gender limits
|
||||
const_def
|
||||
|
@ -38,7 +38,7 @@
|
||||
const PHONE_HIKER_PARRY
|
||||
const PHONE_PICNICKER_ERIN
|
||||
const PHONE_BUENA
|
||||
NUM_PHONE_CONTACTS EQU const_value - 1
|
||||
DEF NUM_PHONE_CONTACTS EQU const_value - 1
|
||||
|
||||
; SpecialPhoneCallList indexes (see data/phone/special_calls.asm)
|
||||
const_def
|
||||
@ -51,22 +51,22 @@ NUM_PHONE_CONTACTS EQU const_value - 1
|
||||
const SPECIALCALL_BIKESHOP
|
||||
const SPECIALCALL_WORRIED
|
||||
const SPECIALCALL_MASTERBALL
|
||||
NUM_SPECIALCALLS EQU const_value - 1
|
||||
SPECIALCALL_SIZE EQU 6
|
||||
DEF NUM_SPECIALCALLS EQU const_value - 1
|
||||
DEF SPECIALCALL_SIZE EQU 6
|
||||
|
||||
; phone struct members
|
||||
rsreset
|
||||
PHONE_CONTACT_TRAINER_CLASS rb
|
||||
PHONE_CONTACT_TRAINER_NUMBER rb
|
||||
PHONE_CONTACT_MAP_GROUP rb
|
||||
PHONE_CONTACT_MAP_NUMBER rb
|
||||
PHONE_CONTACT_SCRIPT1_TIME rb
|
||||
PHONE_CONTACT_SCRIPT1_BANK rb
|
||||
PHONE_CONTACT_SCRIPT1_ADDR rw
|
||||
PHONE_CONTACT_SCRIPT2_TIME rb
|
||||
PHONE_CONTACT_SCRIPT2_BANK rb
|
||||
PHONE_CONTACT_SCRIPT2_ADDR rw
|
||||
PHONE_CONTACT_SIZE EQU _RS
|
||||
DEF PHONE_CONTACT_TRAINER_CLASS rb
|
||||
DEF PHONE_CONTACT_TRAINER_NUMBER rb
|
||||
DEF PHONE_CONTACT_MAP_GROUP rb
|
||||
DEF PHONE_CONTACT_MAP_NUMBER rb
|
||||
DEF PHONE_CONTACT_SCRIPT1_TIME rb
|
||||
DEF PHONE_CONTACT_SCRIPT1_BANK rb
|
||||
DEF PHONE_CONTACT_SCRIPT1_ADDR rw
|
||||
DEF PHONE_CONTACT_SCRIPT2_TIME rb
|
||||
DEF PHONE_CONTACT_SCRIPT2_BANK rb
|
||||
DEF PHONE_CONTACT_SCRIPT2_ADDR rw
|
||||
DEF PHONE_CONTACT_SIZE EQU _RS
|
||||
|
||||
; maximum number of pokegear contacts
|
||||
CONTACT_LIST_SIZE EQU 10
|
||||
DEF CONTACT_LIST_SIZE EQU 10
|
||||
|
@ -170,7 +170,7 @@
|
||||
const DRAGONITE ; 95
|
||||
const MEWTWO ; 96
|
||||
const MEW ; 97
|
||||
JOHTO_POKEMON EQU const_value
|
||||
DEF JOHTO_POKEMON EQU const_value
|
||||
const CHIKORITA ; 98
|
||||
const BAYLEEF ; 99
|
||||
const MEGANIUM ; 9a
|
||||
@ -271,7 +271,7 @@ JOHTO_POKEMON EQU const_value
|
||||
const LUGIA ; f9
|
||||
const HO_OH ; fa
|
||||
const CELEBI ; fb
|
||||
NUM_POKEMON EQU const_value - 1
|
||||
DEF NUM_POKEMON EQU const_value - 1
|
||||
const_skip ; fc
|
||||
const EGG ; fd
|
||||
|
||||
@ -310,4 +310,4 @@ NUM_POKEMON EQU const_value - 1
|
||||
const UNOWN_X ; 24
|
||||
const UNOWN_Y ; 25
|
||||
const UNOWN_Z ; 26
|
||||
NUM_UNOWN EQU const_value - 1 ; 26
|
||||
DEF NUM_UNOWN EQU const_value - 1 ; 26
|
||||
|
@ -1,44 +1,44 @@
|
||||
; base data struct members (see data/pokemon/base_stats/*.asm)
|
||||
rsreset
|
||||
BASE_DEX_NO rb
|
||||
BASE_STATS rb NUM_STATS
|
||||
DEF BASE_DEX_NO rb
|
||||
DEF 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
|
||||
DEF BASE_HP rb
|
||||
DEF BASE_ATK rb
|
||||
DEF BASE_DEF rb
|
||||
DEF BASE_SPD rb
|
||||
DEF BASE_SAT rb
|
||||
DEF BASE_SDF rb
|
||||
DEF BASE_TYPES rw
|
||||
rsset BASE_TYPES
|
||||
BASE_TYPE_1 rb
|
||||
BASE_TYPE_2 rb
|
||||
BASE_CATCH_RATE rb
|
||||
BASE_EXP rb
|
||||
BASE_ITEMS rw
|
||||
DEF BASE_TYPE_1 rb
|
||||
DEF BASE_TYPE_2 rb
|
||||
DEF BASE_CATCH_RATE rb
|
||||
DEF BASE_EXP rb
|
||||
DEF BASE_ITEMS rw
|
||||
rsset BASE_ITEMS
|
||||
BASE_ITEM_1 rb
|
||||
BASE_ITEM_2 rb
|
||||
BASE_GENDER rb
|
||||
DEF BASE_ITEM_1 rb
|
||||
DEF BASE_ITEM_2 rb
|
||||
DEF BASE_GENDER rb
|
||||
rb_skip
|
||||
BASE_EGG_STEPS rb
|
||||
DEF BASE_EGG_STEPS rb
|
||||
rb_skip
|
||||
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
|
||||
DEF BASE_PIC_SIZE rb
|
||||
DEF BASE_FRONTPIC rw
|
||||
DEF BASE_BACKPIC rw
|
||||
DEF BASE_GROWTH_RATE rb
|
||||
DEF BASE_EGG_GROUPS rb
|
||||
DEF BASE_TMHM rb (NUM_TM_HM_TUTOR + 7) / 8
|
||||
DEF BASE_DATA_SIZE EQU _RS
|
||||
|
||||
; gender ratio constants
|
||||
GENDER_F0 EQU 0 percent
|
||||
GENDER_F12_5 EQU 12 percent + 1
|
||||
GENDER_F25 EQU 25 percent
|
||||
GENDER_F50 EQU 50 percent
|
||||
GENDER_F75 EQU 75 percent
|
||||
GENDER_F100 EQU 100 percent - 1
|
||||
GENDER_UNKNOWN EQU -1
|
||||
DEF GENDER_F0 EQU 0 percent
|
||||
DEF GENDER_F12_5 EQU 12 percent + 1
|
||||
DEF GENDER_F25 EQU 25 percent
|
||||
DEF GENDER_F50 EQU 50 percent
|
||||
DEF GENDER_F75 EQU 75 percent
|
||||
DEF GENDER_F100 EQU 100 percent - 1
|
||||
DEF GENDER_UNKNOWN EQU -1
|
||||
|
||||
; wBaseGrowthRate values
|
||||
; GrowthRates indexes (see data/growth_rates.asm)
|
||||
@ -49,7 +49,7 @@ GENDER_UNKNOWN EQU -1
|
||||
const GROWTH_MEDIUM_SLOW
|
||||
const GROWTH_FAST
|
||||
const GROWTH_SLOW
|
||||
NUM_GROWTH_RATES EQU const_value
|
||||
DEF NUM_GROWTH_RATES EQU const_value
|
||||
|
||||
; wBaseEggGroups values
|
||||
const_def 1
|
||||
@ -70,82 +70,82 @@ NUM_GROWTH_RATES EQU const_value
|
||||
const EGG_NONE ; f (Undiscovered)
|
||||
|
||||
; pokedex entries (see data/pokemon/dex_entries.asm)
|
||||
NUM_DEX_ENTRY_BANKS EQU 4
|
||||
DEF NUM_DEX_ENTRY_BANKS EQU 4
|
||||
|
||||
; party_struct members (see macros/wram.asm)
|
||||
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
|
||||
DEF MON_SPECIES rb
|
||||
DEF MON_ITEM rb
|
||||
DEF MON_MOVES rb NUM_MOVES
|
||||
DEF MON_ID rw
|
||||
DEF MON_EXP rb 3
|
||||
DEF 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_POKERUS rb
|
||||
MON_CAUGHTDATA rw
|
||||
DEF MON_HP_EXP rw
|
||||
DEF MON_ATK_EXP rw
|
||||
DEF MON_DEF_EXP rw
|
||||
DEF MON_SPD_EXP rw
|
||||
DEF MON_SPC_EXP rw
|
||||
DEF MON_DVS rw
|
||||
DEF MON_PP rb NUM_MOVES
|
||||
DEF MON_HAPPINESS rb
|
||||
DEF MON_POKERUS rb
|
||||
DEF MON_CAUGHTDATA rw
|
||||
rsset MON_CAUGHTDATA
|
||||
MON_CAUGHTTIME rb
|
||||
MON_CAUGHTGENDER rb
|
||||
DEF MON_CAUGHTTIME rb
|
||||
DEF MON_CAUGHTGENDER rb
|
||||
rsset MON_CAUGHTDATA
|
||||
MON_CAUGHTLEVEL rb
|
||||
MON_CAUGHTLOCATION rb
|
||||
MON_LEVEL rb
|
||||
BOXMON_STRUCT_LENGTH EQU _RS
|
||||
MON_STATUS rb
|
||||
DEF MON_CAUGHTLEVEL rb
|
||||
DEF MON_CAUGHTLOCATION rb
|
||||
DEF MON_LEVEL rb
|
||||
DEF BOXMON_STRUCT_LENGTH EQU _RS
|
||||
DEF MON_STATUS rb
|
||||
rb_skip
|
||||
MON_HP rw
|
||||
MON_MAXHP rw
|
||||
MON_STATS rw NUM_BATTLE_STATS
|
||||
DEF MON_HP rw
|
||||
DEF MON_MAXHP rw
|
||||
DEF MON_STATS rw NUM_BATTLE_STATS
|
||||
rsset MON_STATS
|
||||
MON_ATK rw
|
||||
MON_DEF rw
|
||||
MON_SPD rw
|
||||
MON_SAT rw
|
||||
MON_SDF rw
|
||||
PARTYMON_STRUCT_LENGTH EQU _RS
|
||||
DEF MON_ATK rw
|
||||
DEF MON_DEF rw
|
||||
DEF MON_SPD rw
|
||||
DEF MON_SAT rw
|
||||
DEF MON_SDF rw
|
||||
DEF PARTYMON_STRUCT_LENGTH EQU _RS
|
||||
|
||||
NICKNAMED_MON_STRUCT_LENGTH EQU PARTYMON_STRUCT_LENGTH + MON_NAME_LENGTH
|
||||
REDMON_STRUCT_LENGTH EQU 44
|
||||
DEF NICKNAMED_MON_STRUCT_LENGTH EQU PARTYMON_STRUCT_LENGTH + MON_NAME_LENGTH
|
||||
DEF REDMON_STRUCT_LENGTH EQU 44
|
||||
|
||||
; caught data
|
||||
|
||||
CAUGHT_TIME_MASK EQU %11000000
|
||||
CAUGHT_LEVEL_MASK EQU %00111111
|
||||
DEF CAUGHT_TIME_MASK EQU %11000000
|
||||
DEF CAUGHT_LEVEL_MASK EQU %00111111
|
||||
|
||||
CAUGHT_GENDER_MASK EQU %10000000
|
||||
CAUGHT_LOCATION_MASK EQU %01111111
|
||||
DEF CAUGHT_GENDER_MASK EQU %10000000
|
||||
DEF CAUGHT_LOCATION_MASK EQU %01111111
|
||||
|
||||
CAUGHT_BY_UNKNOWN EQU 0
|
||||
CAUGHT_BY_GIRL EQU 1
|
||||
CAUGHT_BY_BOY EQU 2
|
||||
DEF CAUGHT_BY_UNKNOWN EQU 0
|
||||
DEF CAUGHT_BY_GIRL EQU 1
|
||||
DEF CAUGHT_BY_BOY EQU 2
|
||||
|
||||
CAUGHT_EGG_LEVEL EQU 1
|
||||
DEF CAUGHT_EGG_LEVEL EQU 1
|
||||
|
||||
MON_CRY_LENGTH EQU 6
|
||||
DEF MON_CRY_LENGTH EQU 6
|
||||
|
||||
; maximum number of party pokemon
|
||||
PARTY_LENGTH EQU 6
|
||||
DEF PARTY_LENGTH EQU 6
|
||||
|
||||
; boxes
|
||||
MONS_PER_BOX EQU 20
|
||||
DEF MONS_PER_BOX EQU 20
|
||||
; box: count, species, mons, OTs, nicknames, padding
|
||||
BOX_LENGTH EQU 1 + MONS_PER_BOX + 1 + (BOXMON_STRUCT_LENGTH + NAME_LENGTH + MON_NAME_LENGTH) * MONS_PER_BOX + 2 ; $450
|
||||
NUM_BOXES EQU 14
|
||||
DEF BOX_LENGTH EQU 1 + MONS_PER_BOX + 1 + (BOXMON_STRUCT_LENGTH + NAME_LENGTH + MON_NAME_LENGTH) * MONS_PER_BOX + 2 ; $450
|
||||
DEF NUM_BOXES EQU 14
|
||||
|
||||
; hall of fame
|
||||
; hof_mon: species, id, dvs, level, nicknames
|
||||
HOF_MON_LENGTH EQU 1 + 2 + 2 + 1 + (MON_NAME_LENGTH - 1) ; $10
|
||||
DEF HOF_MON_LENGTH EQU 1 + 2 + 2 + 1 + (MON_NAME_LENGTH - 1) ; $10
|
||||
; hall_of_fame: win count, party, terminator
|
||||
HOF_LENGTH EQU 1 + HOF_MON_LENGTH * PARTY_LENGTH + 1 ; $62
|
||||
NUM_HOF_TEAMS EQU 30
|
||||
DEF HOF_LENGTH EQU 1 + HOF_MON_LENGTH * PARTY_LENGTH + 1 ; $62
|
||||
DEF NUM_HOF_TEAMS EQU 30
|
||||
|
||||
; evolution types (used in data/pokemon/evos_attacks.asm)
|
||||
const_def 1
|
||||
@ -169,14 +169,14 @@ NUM_HOF_TEAMS EQU 30
|
||||
|
||||
; wild data
|
||||
|
||||
NUM_GRASSMON EQU 7 ; data/wild/*_grass.asm table size
|
||||
NUM_WATERMON EQU 3 ; data/wild/*_water.asm table size
|
||||
DEF NUM_GRASSMON EQU 7 ; data/wild/*_grass.asm table size
|
||||
DEF NUM_WATERMON EQU 3 ; data/wild/*_water.asm table size
|
||||
|
||||
GRASS_WILDDATA_LENGTH EQU 2 + 3 + NUM_GRASSMON * 2 * 3
|
||||
WATER_WILDDATA_LENGTH EQU 2 + 1 + NUM_WATERMON * 2
|
||||
FISHGROUP_DATA_LENGTH EQU 1 + 2 * 3
|
||||
DEF GRASS_WILDDATA_LENGTH EQU 2 + 3 + NUM_GRASSMON * 2 * 3
|
||||
DEF WATER_WILDDATA_LENGTH EQU 2 + 1 + NUM_WATERMON * 2
|
||||
DEF FISHGROUP_DATA_LENGTH EQU 1 + 2 * 3
|
||||
|
||||
NUM_ROAMMON_MAPS EQU 16 ; RoamMaps table size (see data/wild/roammon_maps.asm)
|
||||
DEF NUM_ROAMMON_MAPS EQU 16 ; RoamMaps table size (see data/wild/roammon_maps.asm)
|
||||
|
||||
; treemon sets
|
||||
; TreeMons indexes (see data/wild/treemons.asm)
|
||||
@ -189,7 +189,7 @@ NUM_ROAMMON_MAPS EQU 16 ; RoamMaps table size (see data/wild/roammon_maps.asm)
|
||||
const TREEMON_SET_LAKE
|
||||
const TREEMON_SET_FOREST
|
||||
const TREEMON_SET_ROCK
|
||||
NUM_TREEMON_SETS EQU const_value
|
||||
DEF NUM_TREEMON_SETS EQU const_value
|
||||
|
||||
; treemon scores
|
||||
const_def
|
||||
@ -218,16 +218,16 @@ 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
|
||||
DEF NUM_HAPPINESS_CHANGES EQU const_value - 1
|
||||
|
||||
; significant happiness values
|
||||
BASE_HAPPINESS EQU 70
|
||||
FRIEND_BALL_HAPPINESS EQU 200
|
||||
HAPPINESS_TO_EVOLVE EQU 220
|
||||
HAPPINESS_THRESHOLD_1 EQU 100
|
||||
HAPPINESS_THRESHOLD_2 EQU 200
|
||||
DEF BASE_HAPPINESS EQU 70
|
||||
DEF FRIEND_BALL_HAPPINESS EQU 200
|
||||
DEF HAPPINESS_TO_EVOLVE EQU 220
|
||||
DEF HAPPINESS_THRESHOLD_1 EQU 100
|
||||
DEF HAPPINESS_THRESHOLD_2 EQU 200
|
||||
|
||||
; PP
|
||||
PP_UP_MASK EQU %11000000
|
||||
PP_UP_ONE EQU %01000000
|
||||
PP_MASK EQU %00111111
|
||||
DEF PP_UP_MASK EQU %11000000
|
||||
DEF PP_UP_ONE EQU %01000000
|
||||
DEF PP_MASK EQU %00111111
|
||||
|
@ -15,7 +15,7 @@
|
||||
const POKE_FLUTE_RADIO ; 08
|
||||
const UNOWN_RADIO ; 09
|
||||
const EVOLUTION_RADIO ; 0a
|
||||
NUM_RADIO_CHANNELS EQU const_value
|
||||
DEF NUM_RADIO_CHANNELS EQU const_value
|
||||
; internal indexes for channel segments
|
||||
const OAKS_POKEMON_TALK_2 ; 0b
|
||||
const OAKS_POKEMON_TALK_3 ; 0c
|
||||
@ -94,7 +94,7 @@ NUM_RADIO_CHANNELS EQU const_value
|
||||
const POKEDEX_SHOW_6 ; 55
|
||||
const POKEDEX_SHOW_7 ; 56
|
||||
const POKEDEX_SHOW_8 ; 57
|
||||
NUM_RADIO_SEGMENTS EQU const_value
|
||||
DEF NUM_RADIO_SEGMENTS EQU const_value
|
||||
|
||||
; PlayRadioStationPointers indexes (see engine/pokegear/pokegear.asm)
|
||||
const_def
|
||||
@ -107,21 +107,21 @@ NUM_RADIO_SEGMENTS EQU const_value
|
||||
const MAPRADIO_PLACES_PEOPLE
|
||||
const MAPRADIO_LETS_ALL_SING
|
||||
const MAPRADIO_ROCKET
|
||||
NUM_MAP_RADIO_STATIONS EQU const_value
|
||||
DEF NUM_MAP_RADIO_STATIONS EQU const_value
|
||||
|
||||
; 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
|
||||
NUM_OAKS_POKEMON_TALK_ADJECTIVES EQU 16 ; OaksPKMNTalk9.Adjectives
|
||||
NUM_PNP_PEOPLE_ADJECTIVES EQU 16 ; PeoplePlaces5.Adjectives
|
||||
NUM_PNP_PLACES_ADJECTIVES EQU 16 ; PeoplePlaces7.Adjectives
|
||||
DEF NUM_OAKS_POKEMON_TALK_ADVERBS EQU 16 ; OaksPKMNTalk8.Adverbs
|
||||
DEF NUM_OAKS_POKEMON_TALK_ADJECTIVES EQU 16 ; OaksPKMNTalk9.Adjectives
|
||||
DEF NUM_PNP_PEOPLE_ADJECTIVES EQU 16 ; PeoplePlaces5.Adjectives
|
||||
DEF NUM_PNP_PLACES_ADJECTIVES EQU 16 ; PeoplePlaces7.Adjectives
|
||||
|
||||
; BuenasPasswordTable sizes (see data/radio/buenas_passwords.asm)
|
||||
NUM_PASSWORD_CATEGORIES EQU 11
|
||||
NUM_PASSWORDS_PER_CATEGORY EQU 3
|
||||
DEF NUM_PASSWORD_CATEGORIES EQU 11
|
||||
DEF NUM_PASSWORDS_PER_CATEGORY EQU 3
|
||||
|
||||
; BuenaPrizeItems size (see data/items/buena_prizes.asm)
|
||||
NUM_BUENA_PRIZES EQU 9
|
||||
DEF NUM_BUENA_PRIZES EQU 9
|
||||
|
||||
; GetBuenasPassword.StringFunctionJumpTable indexes (see engine/pokegear/radio.asm)
|
||||
const_def
|
||||
@ -129,4 +129,4 @@ NUM_BUENA_PRIZES EQU 9
|
||||
const BUENA_ITEM
|
||||
const BUENA_MOVE
|
||||
const BUENA_STRING
|
||||
NUM_BUENA_FUNCTIONS EQU const_value
|
||||
DEF NUM_BUENA_FUNCTIONS EQU const_value
|
||||
|
@ -2,13 +2,13 @@
|
||||
; Each scene_script and coord_event is associated with a current scene ID.
|
||||
|
||||
; Scene variables default to 0.
|
||||
SCENE_DEFAULT EQU 0
|
||||
DEF SCENE_DEFAULT EQU 0
|
||||
; Often a map will have a one-time default event for scene 0, and switch to a
|
||||
; do-nothing scene 1 when the event finishes.
|
||||
SCENE_FINISHED EQU 1
|
||||
DEF SCENE_FINISHED EQU 1
|
||||
; A coord_event for scene -1 will always activate, regardless of the map's
|
||||
; scene variable value.
|
||||
SCENE_ALWAYS EQU -1
|
||||
DEF SCENE_ALWAYS EQU -1
|
||||
|
||||
; wPokecenter2FSceneID
|
||||
const_def 1
|
||||
|
@ -32,10 +32,10 @@
|
||||
const SCGB_TRAINER_OR_MON_FRONTPIC_PALS
|
||||
const SCGB_MYSTERY_GIFT
|
||||
const SCGB_1E
|
||||
NUM_SCGB_LAYOUTS EQU const_value
|
||||
DEF NUM_SCGB_LAYOUTS EQU const_value
|
||||
|
||||
SCGB_PARTY_MENU_HP_BARS EQU $fc
|
||||
SCGB_DEFAULT EQU $ff
|
||||
DEF SCGB_PARTY_MENU_HP_BARS EQU $fc
|
||||
DEF SCGB_DEFAULT EQU $ff
|
||||
|
||||
; GetCrystalCGBLayout arguments (see engine/gfx/crystal_layouts.asm)
|
||||
const_def
|
||||
@ -125,7 +125,7 @@ SCGB_DEFAULT EQU $ff
|
||||
const PREDEFPAL_UNOWN_PUZZLE
|
||||
const PREDEFPAL_GAMEFREAK_LOGO_OB
|
||||
const PREDEFPAL_GAMEFREAK_LOGO_BG
|
||||
NUM_PREDEF_PALS EQU const_value
|
||||
DEF NUM_PREDEF_PALS EQU const_value
|
||||
|
||||
; SGB system command codes
|
||||
; http://gbdev.gg8.se/wiki/articles/SGB_Functions#SGB_System_Command_Table
|
||||
@ -156,4 +156,4 @@ NUM_PREDEF_PALS EQU const_value
|
||||
const SGB_MASK_EN
|
||||
const SGB_OBJ_TRN
|
||||
|
||||
PALPACKET_LENGTH EQU $10
|
||||
DEF PALPACKET_LENGTH EQU $10
|
||||
|
@ -1,15 +1,15 @@
|
||||
; object constants
|
||||
PLAYER EQU 0
|
||||
LAST_TALKED EQU -2
|
||||
DEF PLAYER EQU 0
|
||||
DEF LAST_TALKED EQU -2
|
||||
|
||||
; string buffer constants
|
||||
const_def
|
||||
const STRING_BUFFER_3 ; use wStringBuffer3
|
||||
const STRING_BUFFER_4 ; use wStringBuffer4
|
||||
const STRING_BUFFER_5 ; use wStringBuffer5
|
||||
NUM_STRING_BUFFERS EQU const_value
|
||||
DEF NUM_STRING_BUFFERS EQU const_value
|
||||
|
||||
STRING_BUFFER_LENGTH EQU 19
|
||||
DEF STRING_BUFFER_LENGTH EQU 19
|
||||
|
||||
; checkmoney/takemoney accounts
|
||||
const_def
|
||||
@ -72,12 +72,12 @@ STRING_BUFFER_LENGTH EQU 19
|
||||
const VAR_BLUECARDBALANCE ; 18
|
||||
const VAR_BUENASPASSWORD ; 19
|
||||
const VAR_KENJI_BREAK ; 1a
|
||||
NUM_VARS EQU const_value ; 1b
|
||||
DEF NUM_VARS EQU const_value
|
||||
|
||||
; variable action types
|
||||
RETVAR_STRBUF2 EQU 0 << 6
|
||||
RETVAR_ADDR_DE EQU 1 << 6
|
||||
RETVAR_EXECUTE EQU 2 << 6
|
||||
DEF RETVAR_STRBUF2 EQU 0 << 6
|
||||
DEF RETVAR_ADDR_DE EQU 1 << 6
|
||||
DEF RETVAR_EXECUTE EQU 2 << 6
|
||||
|
||||
; PlayerEventScriptPointers indexes (see engine/overworld/events.asm)
|
||||
const_def -1
|
||||
@ -92,7 +92,7 @@ RETVAR_EXECUTE EQU 2 << 6
|
||||
const PLAYEREVENT_WHITEOUT
|
||||
const PLAYEREVENT_HATCH
|
||||
const PLAYEREVENT_JOYCHANGEFACING
|
||||
NUM_PLAYER_EVENTS EQU const_value
|
||||
DEF NUM_PLAYER_EVENTS EQU const_value
|
||||
|
||||
; PlayerMovementPointers indexes (see engine/overworld/events.asm)
|
||||
const_def
|
||||
@ -104,15 +104,15 @@ NUM_PLAYER_EVENTS EQU const_value
|
||||
const PLAYERMOVEMENT_CONTINUE
|
||||
const PLAYERMOVEMENT_EXIT_WATER
|
||||
const PLAYERMOVEMENT_JUMP
|
||||
NUM_PLAYER_MOVEMENTS EQU const_value
|
||||
DEF NUM_PLAYER_MOVEMENTS EQU const_value
|
||||
|
||||
; script data sizes (see macros/scripts/maps.asm)
|
||||
SCENE_SCRIPT_SIZE EQU 4 ; scene_script
|
||||
CALLBACK_SIZE EQU 3 ; callback
|
||||
WARP_EVENT_SIZE EQU 5 ; warp_event
|
||||
COORD_EVENT_SIZE EQU 8 ; coord_event
|
||||
BG_EVENT_SIZE EQU 5 ; bg_event
|
||||
OBJECT_EVENT_SIZE EQU 13 ; object_event
|
||||
DEF SCENE_SCRIPT_SIZE EQU 4 ; scene_script
|
||||
DEF CALLBACK_SIZE EQU 3 ; callback
|
||||
DEF WARP_EVENT_SIZE EQU 5 ; warp_event
|
||||
DEF COORD_EVENT_SIZE EQU 8 ; coord_event
|
||||
DEF BG_EVENT_SIZE EQU 5 ; bg_event
|
||||
DEF OBJECT_EVENT_SIZE EQU 13 ; object_event
|
||||
|
||||
; bg_event types
|
||||
; BGEventJumptable indexes (see engine/overworld/events.asm)
|
||||
@ -126,7 +126,7 @@ OBJECT_EVENT_SIZE EQU 13 ; object_event
|
||||
const BGEVENT_IFNOTSET
|
||||
const BGEVENT_ITEM
|
||||
const BGEVENT_COPY
|
||||
NUM_BGEVENTS EQU const_value
|
||||
DEF NUM_BGEVENTS EQU const_value
|
||||
|
||||
; object_event types
|
||||
; ObjectEventTypeArray indexes (see engine/overworld/events.asm)
|
||||
@ -138,17 +138,17 @@ NUM_BGEVENTS EQU const_value
|
||||
const OBJECTTYPE_4
|
||||
const OBJECTTYPE_5
|
||||
const OBJECTTYPE_6
|
||||
NUM_OBJECT_TYPES EQU const_value
|
||||
DEF NUM_OBJECT_TYPES EQU const_value
|
||||
|
||||
; command queue members
|
||||
CMDQUEUE_TYPE EQU 0
|
||||
CMDQUEUE_ADDR EQU 1
|
||||
CMDQUEUE_02 EQU 2
|
||||
CMDQUEUE_03 EQU 3
|
||||
CMDQUEUE_04 EQU 4
|
||||
CMDQUEUE_05 EQU 5
|
||||
CMDQUEUE_ENTRY_SIZE EQU 6
|
||||
CMDQUEUE_CAPACITY EQU 4
|
||||
DEF CMDQUEUE_TYPE EQU 0
|
||||
DEF CMDQUEUE_ADDR EQU 1
|
||||
DEF CMDQUEUE_02 EQU 2
|
||||
DEF CMDQUEUE_03 EQU 3
|
||||
DEF CMDQUEUE_04 EQU 4
|
||||
DEF CMDQUEUE_05 EQU 5
|
||||
DEF CMDQUEUE_ENTRY_SIZE EQU 6
|
||||
DEF CMDQUEUE_CAPACITY EQU 4
|
||||
|
||||
; HandleQueuedCommand.Jumptable indexes (see engine/overworld/events.asm)
|
||||
const_def
|
||||
@ -157,7 +157,7 @@ CMDQUEUE_CAPACITY EQU 4
|
||||
const CMDQUEUE_STONETABLE
|
||||
const CMDQUEUE_TYPE3
|
||||
const CMDQUEUE_TYPE4
|
||||
NUM_CMDQUEUE_TYPES EQU const_value
|
||||
DEF NUM_CMDQUEUE_TYPES EQU const_value
|
||||
|
||||
; elevfloor macro values
|
||||
; ElevatorFloorNames indexes (see data/events/elevator_floors.asm)
|
||||
@ -178,7 +178,7 @@ NUM_CMDQUEUE_TYPES EQU const_value
|
||||
const FLOOR_10F
|
||||
const FLOOR_11F
|
||||
const FLOOR_ROOF
|
||||
NUM_FLOORS EQU const_value
|
||||
DEF NUM_FLOORS EQU const_value
|
||||
|
||||
; showemote arguments
|
||||
; Emotes indexes (see data/sprites/emotes.asm)
|
||||
@ -195,9 +195,9 @@ NUM_FLOORS EQU const_value
|
||||
const EMOTE_ROD
|
||||
const EMOTE_BOULDER_DUST
|
||||
const EMOTE_GRASS_RUSTLE
|
||||
NUM_EMOTES EQU const_value
|
||||
EMOTE_FROM_MEM EQU -1
|
||||
EMOTE_LENGTH EQU 6
|
||||
DEF NUM_EMOTES EQU const_value
|
||||
DEF EMOTE_FROM_MEM EQU -1
|
||||
DEF EMOTE_LENGTH EQU 6
|
||||
|
||||
; fruittree arguments
|
||||
; FruitTreeItems indexes (see data/items/fruit_trees.asm)
|
||||
@ -232,7 +232,7 @@ EMOTE_LENGTH EQU 6
|
||||
const FRUITTREE_PEWTER_CITY_1 ; 1c
|
||||
const FRUITTREE_PEWTER_CITY_2 ; 1d
|
||||
const FRUITTREE_FUCHSIA_CITY ; 1e
|
||||
NUM_FRUIT_TREES EQU const_value - 1
|
||||
DEF NUM_FRUIT_TREES EQU const_value - 1
|
||||
|
||||
; describedecoration arguments
|
||||
; DescribeDecoration.JumpTable indexes (see engine/overworld/decorations.asm)
|
||||
@ -242,7 +242,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
|
||||
DEF NUM_DECODESCS EQU const_value
|
||||
|
||||
; swarm arguments
|
||||
; StoreSwarmMapIndices arguments
|
||||
@ -284,12 +284,12 @@ NUM_DECODESCS EQU const_value
|
||||
const BUGCONTEST_NO_CATCH ; 2
|
||||
|
||||
; Bug-Catching Contest values
|
||||
BUG_CONTEST_BALLS EQU 20
|
||||
BUG_CONTEST_MINUTES EQU 20
|
||||
BUG_CONTEST_SECONDS EQU 0
|
||||
BUG_CONTEST_PLAYER EQU 1
|
||||
NUM_BUG_CONTESTANTS EQU 10 ; not counting the player
|
||||
BUG_CONTESTANT_SIZE EQU 4
|
||||
DEF BUG_CONTEST_BALLS EQU 20
|
||||
DEF BUG_CONTEST_MINUTES EQU 20
|
||||
DEF BUG_CONTEST_SECONDS EQU 0
|
||||
DEF BUG_CONTEST_PLAYER EQU 1
|
||||
DEF NUM_BUG_CONTESTANTS EQU 10 ; not counting the player
|
||||
DEF BUG_CONTESTANT_SIZE EQU 4
|
||||
|
||||
; HealMachineAnim setval arguments
|
||||
; HealMachineAnim.Pointers indexes (see engine/events/heal_machine_anim.asm)
|
||||
@ -305,7 +305,7 @@ BUG_CONTESTANT_SIZE EQU 4
|
||||
const UNOWNPUZZLE_OMANYTE ; 1
|
||||
const UNOWNPUZZLE_AERODACTYL ; 2
|
||||
const UNOWNPUZZLE_HO_OH ; 3
|
||||
NUM_UNOWN_PUZZLES EQU const_value
|
||||
DEF NUM_UNOWN_PUZZLES EQU const_value
|
||||
|
||||
; DisplayUnownWords setval arguments
|
||||
; UnownWalls and MenuHeaders_UnownWalls indexes (see data/events/unown_walls.asm)
|
||||
|
@ -7,41 +7,41 @@
|
||||
const LINK_MOBILE ; 4
|
||||
|
||||
; hSerialReceive high nybbles
|
||||
SERIAL_TIMECAPSULE EQU $60
|
||||
SERIAL_TRADECENTER EQU $70
|
||||
SERIAL_BATTLE EQU $80
|
||||
DEF SERIAL_TIMECAPSULE EQU $60
|
||||
DEF SERIAL_TRADECENTER EQU $70
|
||||
DEF SERIAL_BATTLE EQU $80
|
||||
|
||||
ESTABLISH_CONNECTION_WITH_INTERNAL_CLOCK EQU $01
|
||||
ESTABLISH_CONNECTION_WITH_EXTERNAL_CLOCK EQU $02
|
||||
DEF ESTABLISH_CONNECTION_WITH_INTERNAL_CLOCK EQU $01
|
||||
DEF ESTABLISH_CONNECTION_WITH_EXTERNAL_CLOCK EQU $02
|
||||
|
||||
START_TRANSFER_EXTERNAL_CLOCK EQU $80 ; 1 << rSC_ON
|
||||
START_TRANSFER_INTERNAL_CLOCK EQU $81 ; (1 << rSC_ON) | 1
|
||||
DEF START_TRANSFER_EXTERNAL_CLOCK EQU $80 ; 1 << rSC_ON
|
||||
DEF START_TRANSFER_INTERNAL_CLOCK EQU $81 ; (1 << rSC_ON) | 1
|
||||
|
||||
; hSerialConnectionStatus
|
||||
USING_EXTERNAL_CLOCK EQU $01
|
||||
USING_INTERNAL_CLOCK EQU $02
|
||||
CONNECTION_NOT_ESTABLISHED EQU $ff
|
||||
DEF USING_EXTERNAL_CLOCK EQU $01
|
||||
DEF USING_INTERNAL_CLOCK EQU $02
|
||||
DEF CONNECTION_NOT_ESTABLISHED EQU $ff
|
||||
|
||||
; length of a patch list (less than any of the signal bytes)
|
||||
SERIAL_PATCH_LIST_LENGTH EQU $fc
|
||||
DEF SERIAL_PATCH_LIST_LENGTH EQU $fc
|
||||
; signals the start of an array of bytes transferred over the link cable
|
||||
SERIAL_PREAMBLE_BYTE EQU $fd
|
||||
DEF SERIAL_PREAMBLE_BYTE EQU $fd
|
||||
; this byte is used when there is no data to send
|
||||
SERIAL_NO_DATA_BYTE EQU $fe
|
||||
DEF SERIAL_NO_DATA_BYTE EQU $fe
|
||||
; signals the end of one part of a patch list (there are two parts) for player/enemy party data
|
||||
SERIAL_PATCH_LIST_PART_TERMINATOR EQU $ff
|
||||
DEF SERIAL_PATCH_LIST_PART_TERMINATOR EQU $ff
|
||||
; used to replace SERIAL_NO_DATA_BYTE
|
||||
SERIAL_PATCH_REPLACEMENT_BYTE EQU $ff
|
||||
DEF SERIAL_PATCH_REPLACEMENT_BYTE EQU $ff
|
||||
|
||||
SERIAL_PREAMBLE_LENGTH EQU 6
|
||||
SERIAL_RN_PREAMBLE_LENGTH EQU 7
|
||||
SERIAL_RNS_LENGTH EQU 10
|
||||
DEF SERIAL_PREAMBLE_LENGTH EQU 6
|
||||
DEF SERIAL_RN_PREAMBLE_LENGTH EQU 7
|
||||
DEF SERIAL_RNS_LENGTH EQU 10
|
||||
|
||||
SERIAL_MAIL_PREAMBLE_BYTE EQU $20
|
||||
SERIAL_MAIL_REPLACEMENT_BYTE EQU $21
|
||||
SERIAL_MAIL_PREAMBLE_LENGTH EQU 5
|
||||
DEF SERIAL_MAIL_PREAMBLE_BYTE EQU $20
|
||||
DEF SERIAL_MAIL_REPLACEMENT_BYTE EQU $21
|
||||
DEF SERIAL_MAIL_PREAMBLE_LENGTH EQU 5
|
||||
|
||||
; timeout duration after exchanging a byte
|
||||
SERIAL_LINK_BYTE_TIMEOUT EQU $5000
|
||||
DEF SERIAL_LINK_BYTE_TIMEOUT EQU $5000
|
||||
|
||||
MAX_MYSTERY_GIFT_PARTNERS EQU 5
|
||||
DEF MAX_MYSTERY_GIFT_PARTNERS EQU 5
|
||||
|
@ -208,4 +208,4 @@
|
||||
const SFX_TWO_PC_BEEPS ; cc
|
||||
const SFX_4_NOTE_DITTY ; cd
|
||||
const SFX_TWINKLE ; ce
|
||||
NUM_SFX EQU const_value
|
||||
DEF NUM_SFX EQU const_value
|
||||
|
@ -1,23 +1,23 @@
|
||||
; sprite_anim_struct members (see macros/wram.asm)
|
||||
rsreset
|
||||
SPRITEANIMSTRUCT_INDEX rb ; 0
|
||||
SPRITEANIMSTRUCT_FRAMESET_ID rb ; 1
|
||||
SPRITEANIMSTRUCT_ANIM_SEQ_ID rb ; 2
|
||||
SPRITEANIMSTRUCT_TILE_ID rb ; 3
|
||||
SPRITEANIMSTRUCT_XCOORD rb ; 4
|
||||
SPRITEANIMSTRUCT_YCOORD rb ; 5
|
||||
SPRITEANIMSTRUCT_XOFFSET rb ; 6
|
||||
SPRITEANIMSTRUCT_YOFFSET rb ; 7
|
||||
SPRITEANIMSTRUCT_DURATION rb ; 8
|
||||
SPRITEANIMSTRUCT_DURATIONOFFSET rb ; 9
|
||||
SPRITEANIMSTRUCT_FRAME rb ; a
|
||||
SPRITEANIMSTRUCT_JUMPTABLE_INDEX rb ; b
|
||||
SPRITEANIMSTRUCT_VAR1 rb ; c
|
||||
SPRITEANIMSTRUCT_VAR2 rb ; d
|
||||
SPRITEANIMSTRUCT_VAR3 rb ; e
|
||||
SPRITEANIMSTRUCT_VAR4 rb ; f
|
||||
SPRITEANIMSTRUCT_LENGTH EQU _RS
|
||||
NUM_SPRITE_ANIM_STRUCTS EQU 10 ; see wSpriteAnimationStructs
|
||||
DEF SPRITEANIMSTRUCT_INDEX rb ; 0
|
||||
DEF SPRITEANIMSTRUCT_FRAMESET_ID rb ; 1
|
||||
DEF SPRITEANIMSTRUCT_ANIM_SEQ_ID rb ; 2
|
||||
DEF SPRITEANIMSTRUCT_TILE_ID rb ; 3
|
||||
DEF SPRITEANIMSTRUCT_XCOORD rb ; 4
|
||||
DEF SPRITEANIMSTRUCT_YCOORD rb ; 5
|
||||
DEF SPRITEANIMSTRUCT_XOFFSET rb ; 6
|
||||
DEF SPRITEANIMSTRUCT_YOFFSET rb ; 7
|
||||
DEF SPRITEANIMSTRUCT_DURATION rb ; 8
|
||||
DEF SPRITEANIMSTRUCT_DURATIONOFFSET rb ; 9
|
||||
DEF SPRITEANIMSTRUCT_FRAME rb ; a
|
||||
DEF SPRITEANIMSTRUCT_JUMPTABLE_INDEX rb ; b
|
||||
DEF SPRITEANIMSTRUCT_VAR1 rb ; c
|
||||
DEF SPRITEANIMSTRUCT_VAR2 rb ; d
|
||||
DEF SPRITEANIMSTRUCT_VAR3 rb ; e
|
||||
DEF SPRITEANIMSTRUCT_VAR4 rb ; f
|
||||
DEF SPRITEANIMSTRUCT_LENGTH EQU _RS
|
||||
DEF NUM_SPRITE_ANIM_STRUCTS EQU 10 ; see wSpriteAnimationStructs
|
||||
|
||||
; wSpriteAnimDict keys (see wram.asm)
|
||||
; UnusedSpriteAnimGFX indexes (see data/sprite_anims/unused_gfx.asm)
|
||||
@ -28,10 +28,10 @@ NUM_SPRITE_ANIM_STRUCTS EQU 10 ; see wSpriteAnimationStructs
|
||||
const SPRITE_ANIM_DICT_GS_SPLASH ; 6
|
||||
const SPRITE_ANIM_DICT_SLOTS ; 7
|
||||
const SPRITE_ANIM_DICT_ARROW_CURSOR ; 8
|
||||
NUM_SPRITE_ANIM_GFX EQU const_value
|
||||
DEF NUM_SPRITE_ANIM_GFX EQU const_value
|
||||
|
||||
; wSpriteAnimDict size (see wram.asm)
|
||||
NUM_SPRITEANIMDICT_ENTRIES EQU 10
|
||||
DEF NUM_SPRITEANIMDICT_ENTRIES EQU 10
|
||||
|
||||
; SpriteAnimSeqData indexes (see data/sprite_anims/sequences.asm)
|
||||
const_def
|
||||
@ -80,7 +80,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
|
||||
DEF NUM_SPRITE_ANIM_INDEXES EQU const_value
|
||||
|
||||
; DoAnimFrame.Jumptable indexes (see engine/gfx/sprite_anims.asm)
|
||||
const_def
|
||||
@ -119,7 +119,7 @@ NUM_SPRITE_ANIM_INDEXES EQU const_value
|
||||
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
|
||||
DEF NUM_SPRITE_ANIM_SEQS EQU const_value
|
||||
|
||||
; SpriteAnimFrameData indexes (see data/sprite_anims/framesets.asm)
|
||||
const_def
|
||||
@ -189,7 +189,7 @@ NUM_SPRITE_ANIM_SEQS EQU const_value
|
||||
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
|
||||
DEF NUM_SPRITE_ANIM_FRAMESETS EQU const_value
|
||||
|
||||
; SpriteAnimOAMData indexes (see data/sprite_anims/oam.asm)
|
||||
const_def
|
||||
@ -333,4 +333,4 @@ NUM_SPRITE_ANIM_FRAMESETS EQU const_value
|
||||
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
|
||||
DEF NUM_SPRITE_ANIM_OAMSETS EQU const_value
|
||||
|
@ -104,11 +104,11 @@
|
||||
const SPRITE_ENTEI ; 64
|
||||
const SPRITE_RAIKOU ; 65
|
||||
const SPRITE_STANDING_YOUNGSTER ; 66
|
||||
NUM_OVERWORLD_SPRITES EQU const_value - 1
|
||||
DEF NUM_OVERWORLD_SPRITES EQU const_value - 1
|
||||
|
||||
; SpriteMons indexes (see data/sprites/sprite_mons.asm)
|
||||
const_next $80
|
||||
SPRITE_POKEMON EQU const_value
|
||||
DEF SPRITE_POKEMON EQU const_value
|
||||
const SPRITE_UNOWN ; 80
|
||||
const SPRITE_GEODUDE ; 81
|
||||
const SPRITE_GROWLITHE ; 82
|
||||
@ -144,7 +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
|
||||
DEF NUM_POKEMON_SPRITES EQU const_value - SPRITE_POKEMON
|
||||
|
||||
; special GetMonSprite values (see engine/overworld/overworld.asm)
|
||||
const_next $e0
|
||||
@ -153,7 +153,7 @@ NUM_POKEMON_SPRITES EQU const_value - SPRITE_POKEMON
|
||||
|
||||
; wVariableSprites indexes (see wram.asm)
|
||||
const_next $f0
|
||||
SPRITE_VARS EQU const_value
|
||||
DEF SPRITE_VARS EQU const_value
|
||||
const SPRITE_CONSOLE ; f0
|
||||
const SPRITE_DOLL_1 ; f1
|
||||
const SPRITE_DOLL_2 ; f2
|
||||
|
@ -1,11 +1,11 @@
|
||||
; overworld_sprite struct members (see data/sprites/sprites.asm)
|
||||
rsreset
|
||||
SPRITEDATA_ADDR rw ; 0
|
||||
SPRITEDATA_SIZE rb ; 2
|
||||
SPRITEDATA_BANK rb ; 3
|
||||
SPRITEDATA_TYPE rb ; 4
|
||||
SPRITEDATA_PALETTE rb ; 5
|
||||
NUM_SPRITEDATA_FIELDS EQU _RS
|
||||
DEF SPRITEDATA_ADDR rw ; 0
|
||||
DEF SPRITEDATA_SIZE rb ; 2
|
||||
DEF SPRITEDATA_BANK rb ; 3
|
||||
DEF SPRITEDATA_TYPE rb ; 4
|
||||
DEF SPRITEDATA_PALETTE rb ; 5
|
||||
DEF NUM_SPRITEDATA_FIELDS EQU _RS
|
||||
|
||||
; sprite types
|
||||
const_def 1
|
||||
|
@ -1,12 +1,12 @@
|
||||
; name lengths
|
||||
NAME_LENGTH EQU 11
|
||||
PLAYER_NAME_LENGTH EQU 8
|
||||
BOX_NAME_LENGTH EQU 9
|
||||
MON_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
|
||||
DEF NAME_LENGTH EQU 11
|
||||
DEF PLAYER_NAME_LENGTH EQU 8
|
||||
DEF BOX_NAME_LENGTH EQU 9
|
||||
DEF MON_NAME_LENGTH EQU 11
|
||||
DEF MOVE_NAME_LENGTH EQU 13
|
||||
DEF ITEM_NAME_LENGTH EQU 13
|
||||
DEF TRAINER_CLASS_NAME_LENGTH EQU 13
|
||||
DEF NAME_LENGTH_JAPANESE EQU 6
|
||||
|
||||
; GetName types (see home/names.asm)
|
||||
const_def 1
|
||||
@ -20,18 +20,18 @@ NAME_LENGTH_JAPANESE EQU 6
|
||||
const MOVE_DESC_NAME_BROKEN ; 8
|
||||
|
||||
; see home/text.asm
|
||||
BORDER_WIDTH EQU 2
|
||||
TEXTBOX_WIDTH EQU SCREEN_WIDTH
|
||||
TEXTBOX_INNERW EQU TEXTBOX_WIDTH - BORDER_WIDTH
|
||||
TEXTBOX_HEIGHT EQU 6
|
||||
TEXTBOX_INNERH EQU TEXTBOX_HEIGHT - BORDER_WIDTH
|
||||
TEXTBOX_X EQU 0
|
||||
TEXTBOX_INNERX EQU TEXTBOX_X + 1
|
||||
TEXTBOX_Y EQU SCREEN_HEIGHT - TEXTBOX_HEIGHT
|
||||
TEXTBOX_INNERY EQU TEXTBOX_Y + 2
|
||||
DEF BORDER_WIDTH EQU 2
|
||||
DEF TEXTBOX_WIDTH EQU SCREEN_WIDTH
|
||||
DEF TEXTBOX_INNERW EQU TEXTBOX_WIDTH - BORDER_WIDTH
|
||||
DEF TEXTBOX_HEIGHT EQU 6
|
||||
DEF TEXTBOX_INNERH EQU TEXTBOX_HEIGHT - BORDER_WIDTH
|
||||
DEF TEXTBOX_X EQU 0
|
||||
DEF TEXTBOX_INNERX EQU TEXTBOX_X + 1
|
||||
DEF TEXTBOX_Y EQU SCREEN_HEIGHT - TEXTBOX_HEIGHT
|
||||
DEF TEXTBOX_INNERY EQU TEXTBOX_Y + 2
|
||||
|
||||
; see gfx/frames/*.png
|
||||
TEXTBOX_FRAME_TILES EQU 6
|
||||
DEF TEXTBOX_FRAME_TILES EQU 6
|
||||
|
||||
; PrintNum bit flags
|
||||
const_def 5
|
||||
@ -40,13 +40,13 @@ TEXTBOX_FRAME_TILES EQU 6
|
||||
const PRINTNUM_LEADINGZEROS_F ; 7
|
||||
|
||||
; PrintNum arguments (see engine/math/print_num.asm)
|
||||
PRINTNUM_MONEY EQU 1 << PRINTNUM_MONEY_F
|
||||
PRINTNUM_LEFTALIGN EQU 1 << PRINTNUM_LEFTALIGN_F
|
||||
PRINTNUM_LEADINGZEROS EQU 1 << PRINTNUM_LEADINGZEROS_F
|
||||
DEF PRINTNUM_MONEY EQU 1 << PRINTNUM_MONEY_F
|
||||
DEF PRINTNUM_LEFTALIGN EQU 1 << PRINTNUM_LEFTALIGN_F
|
||||
DEF PRINTNUM_LEADINGZEROS EQU 1 << PRINTNUM_LEADINGZEROS_F
|
||||
|
||||
; character sets (see charmap.asm)
|
||||
FIRST_REGULAR_TEXT_CHAR EQU $60
|
||||
FIRST_HIRAGANA_DAKUTEN_CHAR EQU $20
|
||||
DEF FIRST_REGULAR_TEXT_CHAR EQU $60
|
||||
DEF FIRST_HIRAGANA_DAKUTEN_CHAR EQU $20
|
||||
|
||||
; gfx/font/unown_font.png
|
||||
FIRST_UNOWN_CHAR EQU $40
|
||||
DEF FIRST_UNOWN_CHAR EQU $40
|
||||
|
@ -36,13 +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
|
||||
DEF NUM_TILESETS EQU const_value - 1
|
||||
|
||||
; wTileset struct size
|
||||
TILESET_LENGTH EQU 15
|
||||
DEF TILESET_LENGTH EQU 15
|
||||
|
||||
; roof length (see gfx/tilesets/roofs)
|
||||
ROOF_LENGTH EQU 9
|
||||
DEF ROOF_LENGTH EQU 9
|
||||
|
||||
; bg palette values (see gfx/tilesets/*_palette_map.asm)
|
||||
; TilesetBGPalette indexes (see gfx/tilesets/bg_tiles.pal)
|
||||
|
@ -1,8 +1,8 @@
|
||||
__trainer_class__ = 0
|
||||
DEF __trainer_class__ = 0
|
||||
|
||||
trainerclass: MACRO
|
||||
\1 EQU __trainer_class__
|
||||
__trainer_class__ += 1
|
||||
MACRO trainerclass
|
||||
DEF \1 EQU __trainer_class__
|
||||
DEF __trainer_class__ += 1
|
||||
const_def 1
|
||||
ENDM
|
||||
|
||||
@ -18,16 +18,16 @@ ENDM
|
||||
; - BTTrainerClassSprites (see data/trainers/sprites.asm)
|
||||
; - BTTrainerClassGenders (see data/trainers/genders.asm)
|
||||
; trainer constants are Trainers indexes, for the sub-tables of TrainerGroups (see data/trainers/parties.asm)
|
||||
CHRIS EQU __trainer_class__
|
||||
DEF CHRIS EQU __trainer_class__
|
||||
trainerclass TRAINER_NONE ; 0
|
||||
const PHONECONTACT_MOM
|
||||
const PHONECONTACT_BIKESHOP
|
||||
const PHONECONTACT_BILL
|
||||
const PHONECONTACT_ELM
|
||||
const PHONECONTACT_BUENA
|
||||
NUM_NONTRAINER_PHONECONTACTS EQU const_value - 1
|
||||
DEF NUM_NONTRAINER_PHONECONTACTS EQU const_value - 1
|
||||
|
||||
KRIS EQU __trainer_class__
|
||||
DEF KRIS EQU __trainer_class__
|
||||
trainerclass FALKNER ; 1
|
||||
const FALKNER1
|
||||
|
||||
@ -703,4 +703,4 @@ KRIS EQU __trainer_class__
|
||||
trainerclass MYSTICALMAN ; 43
|
||||
const EUSINE
|
||||
|
||||
NUM_TRAINER_CLASSES EQU __trainer_class__ - 1
|
||||
DEF NUM_TRAINER_CLASSES EQU __trainer_class__ - 1
|
||||
|
@ -1,11 +1,11 @@
|
||||
; TrainerClassAttributes struct members (see data/trainers/attributes.asm)
|
||||
rsreset
|
||||
TRNATTR_ITEM1 rb ; 0
|
||||
TRNATTR_ITEM2 rb ; 1
|
||||
TRNATTR_BASEMONEY rb ; 2
|
||||
TRNATTR_AI_MOVE_WEIGHTS rw ; 3
|
||||
TRNATTR_AI_ITEM_SWITCH rw ; 5
|
||||
NUM_TRAINER_ATTRIBUTES EQU _RS
|
||||
DEF TRNATTR_ITEM1 rb ; 0
|
||||
DEF TRNATTR_ITEM2 rb ; 1
|
||||
DEF TRNATTR_BASEMONEY rb ; 2
|
||||
DEF TRNATTR_AI_MOVE_WEIGHTS rw ; 3
|
||||
DEF TRNATTR_AI_ITEM_SWITCH rw ; 5
|
||||
DEF NUM_TRAINER_ATTRIBUTES EQU _RS
|
||||
|
||||
; TRNATTR_AI_MOVE_WEIGHTS bit flags (wEnemyTrainerAIFlags)
|
||||
; AIScoringPointers indexes (see engine/battle/ai/move.asm)
|
||||
@ -20,7 +20,7 @@ NUM_TRAINER_ATTRIBUTES EQU _RS
|
||||
shift_const AI_CAUTIOUS
|
||||
shift_const AI_STATUS
|
||||
shift_const AI_RISKY
|
||||
NO_AI EQU 0
|
||||
DEF NO_AI EQU 0
|
||||
|
||||
; TRNATTR_AI_ITEM_SWITCH bit flags
|
||||
const_def
|
||||
@ -32,12 +32,12 @@ NO_AI EQU 0
|
||||
const UNKNOWN_USE_F ; 5
|
||||
const CONTEXT_USE_F ; 6
|
||||
|
||||
SWITCH_OFTEN EQU 1 << SWITCH_OFTEN_F
|
||||
SWITCH_RARELY EQU 1 << SWITCH_RARELY_F
|
||||
SWITCH_SOMETIMES EQU 1 << SWITCH_SOMETIMES_F
|
||||
ALWAYS_USE EQU 1 << ALWAYS_USE_F
|
||||
UNKNOWN_USE EQU 1 << UNKNOWN_USE_F
|
||||
CONTEXT_USE EQU 1 << CONTEXT_USE_F
|
||||
DEF SWITCH_OFTEN EQU 1 << SWITCH_OFTEN_F
|
||||
DEF SWITCH_RARELY EQU 1 << SWITCH_RARELY_F
|
||||
DEF SWITCH_SOMETIMES EQU 1 << SWITCH_SOMETIMES_F
|
||||
DEF ALWAYS_USE EQU 1 << ALWAYS_USE_F
|
||||
DEF UNKNOWN_USE EQU 1 << UNKNOWN_USE_F
|
||||
DEF CONTEXT_USE EQU 1 << CONTEXT_USE_F
|
||||
|
||||
; TrainerTypes indexes (see engine/battle/read_trainer_party.asm)
|
||||
const_def
|
||||
|
@ -6,7 +6,7 @@
|
||||
; - TypeBoostItems (see data/types/type_boost_items.asm)
|
||||
const_def
|
||||
|
||||
PHYSICAL EQU const_value
|
||||
DEF PHYSICAL EQU const_value
|
||||
const NORMAL
|
||||
const FIGHTING
|
||||
const FLYING
|
||||
@ -18,12 +18,12 @@ PHYSICAL EQU const_value
|
||||
const GHOST
|
||||
const STEEL
|
||||
|
||||
UNUSED_TYPES EQU const_value
|
||||
DEF UNUSED_TYPES EQU const_value
|
||||
const_next 19
|
||||
const CURSE_TYPE
|
||||
UNUSED_TYPES_END EQU const_value
|
||||
DEF UNUSED_TYPES_END EQU const_value
|
||||
|
||||
SPECIAL EQU const_value
|
||||
DEF SPECIAL EQU const_value
|
||||
const FIRE
|
||||
const WATER
|
||||
const GRASS
|
||||
@ -32,8 +32,8 @@ SPECIAL EQU const_value
|
||||
const ICE
|
||||
const DRAGON
|
||||
const DARK
|
||||
TYPES_END EQU const_value
|
||||
DEF TYPES_END EQU const_value
|
||||
|
||||
NUM_TYPES EQU TYPES_END + UNUSED_TYPES - UNUSED_TYPES_END - 1 ; discount BIRD
|
||||
DEF NUM_TYPES EQU TYPES_END + UNUSED_TYPES - UNUSED_TYPES_END - 1 ; discount BIRD
|
||||
|
||||
POKEDEX_TYPE_STRING_LENGTH EQU 9
|
||||
DEF POKEDEX_TYPE_STRING_LENGTH EQU 9
|
||||
|
@ -1,5 +1,5 @@
|
||||
; wInputType::
|
||||
AUTO_INPUT EQU $ff
|
||||
DEF AUTO_INPUT EQU $ff
|
||||
|
||||
; wDebugFlags::
|
||||
const_def
|
||||
@ -22,24 +22,24 @@ AUTO_INPUT EQU $ff
|
||||
const WILDMON ; 4
|
||||
|
||||
; wGameTimerPaused::
|
||||
GAME_TIMER_PAUSED_F EQU 0
|
||||
GAME_TIMER_MOBILE_F EQU 7
|
||||
DEF GAME_TIMER_PAUSED_F EQU 0
|
||||
DEF GAME_TIMER_MOBILE_F EQU 7
|
||||
|
||||
; wJoypadDisable::
|
||||
JOYPAD_DISABLE_MON_FAINT_F EQU 6
|
||||
JOYPAD_DISABLE_SGB_TRANSFER_F EQU 7
|
||||
DEF JOYPAD_DISABLE_MON_FAINT_F EQU 6
|
||||
DEF JOYPAD_DISABLE_SGB_TRANSFER_F EQU 7
|
||||
|
||||
; wOptions1::
|
||||
TEXT_DELAY_MASK EQU %111
|
||||
DEF TEXT_DELAY_MASK EQU %111
|
||||
const_def 4
|
||||
const NO_TEXT_SCROLL ; 4
|
||||
const STEREO ; 5
|
||||
const BATTLE_SHIFT ; 6
|
||||
const BATTLE_SCENE ; 7
|
||||
|
||||
TEXT_DELAY_FAST EQU %001 ; 1
|
||||
TEXT_DELAY_MED EQU %011 ; 3
|
||||
TEXT_DELAY_SLOW EQU %101 ; 5
|
||||
DEF TEXT_DELAY_FAST EQU %001 ; 1
|
||||
DEF TEXT_DELAY_MED EQU %011 ; 3
|
||||
DEF TEXT_DELAY_SLOW EQU %101 ; 5
|
||||
|
||||
; wTextboxFrame::
|
||||
const_def
|
||||
@ -51,7 +51,7 @@ TEXT_DELAY_SLOW EQU %101 ; 5
|
||||
const FRAME_6 ; 5
|
||||
const FRAME_7 ; 6
|
||||
const FRAME_8 ; 7
|
||||
NUM_FRAMES EQU const_value
|
||||
DEF NUM_FRAMES EQU const_value
|
||||
|
||||
; wTextboxFlags::
|
||||
const_def
|
||||
@ -59,11 +59,11 @@ NUM_FRAMES EQU const_value
|
||||
const NO_TEXT_DELAY_F ; 1
|
||||
|
||||
; wGBPrinterBrightness::
|
||||
GBPRINTER_LIGHTEST EQU $00
|
||||
GBPRINTER_LIGHTER EQU $20
|
||||
GBPRINTER_NORMAL EQU $40
|
||||
GBPRINTER_DARKER EQU $60
|
||||
GBPRINTER_DARKEST EQU $7f
|
||||
DEF GBPRINTER_LIGHTEST EQU $00
|
||||
DEF GBPRINTER_LIGHTER EQU $20
|
||||
DEF GBPRINTER_NORMAL EQU $40
|
||||
DEF GBPRINTER_DARKER EQU $60
|
||||
DEF GBPRINTER_DARKEST EQU $7f
|
||||
|
||||
; wOptions2::
|
||||
const_def
|
||||
@ -76,12 +76,12 @@ GBPRINTER_DARKEST EQU $7f
|
||||
const UP ; 1
|
||||
const LEFT ; 2
|
||||
const RIGHT ; 3
|
||||
NUM_DIRECTIONS EQU const_value
|
||||
DEF NUM_DIRECTIONS EQU const_value
|
||||
|
||||
DOWN_MASK EQU 1 << DOWN
|
||||
UP_MASK EQU 1 << UP
|
||||
LEFT_MASK EQU 1 << LEFT
|
||||
RIGHT_MASK EQU 1 << RIGHT
|
||||
DEF DOWN_MASK EQU 1 << DOWN
|
||||
DEF UP_MASK EQU 1 << UP
|
||||
DEF LEFT_MASK EQU 1 << LEFT
|
||||
DEF RIGHT_MASK EQU 1 << RIGHT
|
||||
|
||||
; wFacingDirection::
|
||||
const_def NUM_DIRECTIONS - 1, -1
|
||||
@ -89,15 +89,15 @@ RIGHT_MASK EQU 1 << RIGHT
|
||||
shift_const FACE_UP ; 4
|
||||
shift_const FACE_LEFT ; 2
|
||||
shift_const FACE_RIGHT ; 1
|
||||
FACE_CURRENT EQU 0
|
||||
DEF FACE_CURRENT EQU 0
|
||||
|
||||
; wPokemonWithdrawDepositParameter::
|
||||
PC_WITHDRAW EQU 0
|
||||
PC_DEPOSIT EQU 1
|
||||
REMOVE_PARTY EQU 0
|
||||
REMOVE_BOX EQU 1
|
||||
DAY_CARE_WITHDRAW EQU 2
|
||||
DAY_CARE_DEPOSIT EQU 3
|
||||
DEF PC_WITHDRAW EQU 0
|
||||
DEF PC_DEPOSIT EQU 1
|
||||
DEF REMOVE_PARTY EQU 0
|
||||
DEF REMOVE_BOX EQU 1
|
||||
DEF DAY_CARE_WITHDRAW EQU 2
|
||||
DEF DAY_CARE_DEPOSIT EQU 3
|
||||
|
||||
; wPlayerStepFlags::
|
||||
const_def 4
|
||||
@ -107,11 +107,11 @@ DAY_CARE_DEPOSIT EQU 3
|
||||
const PLAYERSTEP_START_F ; 7
|
||||
|
||||
; wInitListType::
|
||||
INIT_ENEMYOT_LIST EQU 1
|
||||
INIT_BAG_ITEM_LIST EQU 2
|
||||
INIT_OTHER_ITEM_LIST EQU 3
|
||||
INIT_PLAYEROT_LIST EQU 4
|
||||
INIT_MON_LIST EQU 5
|
||||
DEF INIT_ENEMYOT_LIST EQU 1
|
||||
DEF INIT_BAG_ITEM_LIST EQU 2
|
||||
DEF INIT_OTHER_ITEM_LIST EQU 3
|
||||
DEF INIT_PLAYEROT_LIST EQU 4
|
||||
DEF INIT_MON_LIST EQU 5
|
||||
|
||||
; wTimeOfDay::
|
||||
const_def
|
||||
@ -119,17 +119,17 @@ INIT_MON_LIST EQU 5
|
||||
const DAY_F ; 1
|
||||
const NITE_F ; 2
|
||||
const DARKNESS_F ; 3
|
||||
NUM_DAYTIMES EQU const_value
|
||||
DEF NUM_DAYTIMES EQU const_value
|
||||
|
||||
MORN EQU 1 << MORN_F
|
||||
DAY EQU 1 << DAY_F
|
||||
NITE EQU 1 << NITE_F
|
||||
DARKNESS EQU 1 << DARKNESS_F
|
||||
DEF MORN EQU 1 << MORN_F
|
||||
DEF DAY EQU 1 << DAY_F
|
||||
DEF NITE EQU 1 << NITE_F
|
||||
DEF DARKNESS EQU 1 << DARKNESS_F
|
||||
|
||||
ANYTIME EQU MORN | DAY | NITE
|
||||
DEF ANYTIME EQU MORN | DAY | NITE
|
||||
|
||||
; wTimeOfDayPalset::
|
||||
DARKNESS_PALSET EQU (DARKNESS_F << 6) | (DARKNESS_F << 4) | (DARKNESS_F << 2) | DARKNESS_F
|
||||
DEF DARKNESS_PALSET EQU (DARKNESS_F << 6) | (DARKNESS_F << 4) | (DARKNESS_F << 2) | DARKNESS_F
|
||||
|
||||
; wBattleAnimFlags::
|
||||
const_def
|
||||
@ -139,14 +139,14 @@ DARKNESS_PALSET EQU (DARKNESS_F << 6) | (DARKNESS_F << 4) | (DARKNESS_F << 2) |
|
||||
const BATTLEANIM_KEEPSPRITES_F ; 3
|
||||
|
||||
; wPlayerSpriteSetupFlags::
|
||||
PLAYERSPRITESETUP_FACING_MASK EQU %11
|
||||
PLAYERSPRITESETUP_FEMALE_TO_MALE_F EQU 2
|
||||
PLAYERSPRITESETUP_CUSTOM_FACING_F EQU 5
|
||||
PLAYERSPRITESETUP_SKIP_RELOAD_GFX_F EQU 6
|
||||
PLAYERSPRITESETUP_RESET_ACTION_F EQU 7
|
||||
DEF PLAYERSPRITESETUP_FACING_MASK EQU %11
|
||||
DEF PLAYERSPRITESETUP_FEMALE_TO_MALE_F EQU 2
|
||||
DEF PLAYERSPRITESETUP_CUSTOM_FACING_F EQU 5
|
||||
DEF PLAYERSPRITESETUP_SKIP_RELOAD_GFX_F EQU 6
|
||||
DEF PLAYERSPRITESETUP_RESET_ACTION_F EQU 7
|
||||
|
||||
; wPlayerGender::
|
||||
PLAYERGENDER_FEMALE_F EQU 0
|
||||
DEF PLAYERGENDER_FEMALE_F EQU 0
|
||||
|
||||
; wMapStatus::
|
||||
const_def
|
||||
@ -161,7 +161,7 @@ PLAYERGENDER_FEMALE_F EQU 0
|
||||
const MAPEVENTS_OFF ; 1
|
||||
|
||||
; wScriptFlags::
|
||||
SCRIPT_RUNNING EQU 2
|
||||
DEF SCRIPT_RUNNING EQU 2
|
||||
|
||||
; wScriptMode::
|
||||
const_def
|
||||
@ -171,8 +171,8 @@ SCRIPT_RUNNING EQU 2
|
||||
const SCRIPT_WAIT
|
||||
|
||||
; wSpawnAfterChampion::
|
||||
SPAWN_LANCE EQU 1
|
||||
SPAWN_RED EQU 2
|
||||
DEF SPAWN_LANCE EQU 1
|
||||
DEF SPAWN_RED EQU 2
|
||||
|
||||
; wCurDay::
|
||||
const_def
|
||||
@ -207,12 +207,12 @@ SPAWN_RED EQU 2
|
||||
const STATUSFLAGS2_ROCKETS_IN_MAHOGANY_F ; 7
|
||||
|
||||
; wMomSavingMoney::
|
||||
MOM_SAVING_SOME_MONEY_F EQU 0
|
||||
MOM_SAVING_HALF_MONEY_F EQU 1
|
||||
MOM_SAVING_ALL_MONEY_F EQU 2
|
||||
MOM_ACTIVE_F EQU 7
|
||||
DEF MOM_SAVING_SOME_MONEY_F EQU 0
|
||||
DEF MOM_SAVING_HALF_MONEY_F EQU 1
|
||||
DEF MOM_SAVING_ALL_MONEY_F EQU 2
|
||||
DEF MOM_ACTIVE_F EQU 7
|
||||
|
||||
MOM_SAVING_MONEY_MASK EQU (1 << MOM_SAVING_SOME_MONEY_F) | (1 << MOM_SAVING_HALF_MONEY_F) | (1 << MOM_SAVING_ALL_MONEY_F)
|
||||
DEF MOM_SAVING_MONEY_MASK EQU (1 << MOM_SAVING_SOME_MONEY_F) | (1 << MOM_SAVING_HALF_MONEY_F) | (1 << MOM_SAVING_ALL_MONEY_F)
|
||||
|
||||
; wJohtoBadges::
|
||||
const_def
|
||||
@ -224,7 +224,7 @@ MOM_SAVING_MONEY_MASK EQU (1 << MOM_SAVING_SOME_MONEY_F) | (1 << MOM_SAVING_HALF
|
||||
const STORMBADGE
|
||||
const GLACIERBADGE
|
||||
const RISINGBADGE
|
||||
NUM_JOHTO_BADGES EQU const_value
|
||||
DEF NUM_JOHTO_BADGES EQU const_value
|
||||
|
||||
; wKantoBadges::
|
||||
const_def
|
||||
@ -236,8 +236,8 @@ NUM_JOHTO_BADGES EQU const_value
|
||||
const MARSHBADGE
|
||||
const VOLCANOBADGE
|
||||
const EARTHBADGE
|
||||
NUM_KANTO_BADGES EQU const_value
|
||||
NUM_BADGES EQU NUM_JOHTO_BADGES + NUM_KANTO_BADGES
|
||||
DEF NUM_KANTO_BADGES EQU const_value
|
||||
DEF NUM_BADGES EQU NUM_JOHTO_BADGES + NUM_KANTO_BADGES
|
||||
|
||||
; wPokegearFlags::
|
||||
const_def
|
||||
@ -249,18 +249,18 @@ NUM_BADGES EQU NUM_JOHTO_BADGES + NUM_KANTO_BADGES
|
||||
const POKEGEAR_OBTAINED_F ; 7
|
||||
|
||||
; wWhichRegisteredItem::
|
||||
REGISTERED_POCKET EQU %11000000
|
||||
REGISTERED_NUMBER EQU %00111111
|
||||
DEF REGISTERED_POCKET EQU %11000000
|
||||
DEF REGISTERED_NUMBER EQU %00111111
|
||||
|
||||
; wPlayerState::
|
||||
PLAYER_NORMAL EQU 0
|
||||
PLAYER_BIKE EQU 1
|
||||
PLAYER_SKATE EQU 2
|
||||
PLAYER_SURF EQU 4
|
||||
PLAYER_SURF_PIKA EQU 8
|
||||
DEF PLAYER_NORMAL EQU 0
|
||||
DEF PLAYER_BIKE EQU 1
|
||||
DEF PLAYER_SKATE EQU 2
|
||||
DEF PLAYER_SURF EQU 4
|
||||
DEF PLAYER_SURF_PIKA EQU 8
|
||||
|
||||
; wCelebiEvent::
|
||||
CELEBIEVENT_FOREST_IS_RESTLESS_F EQU 2
|
||||
DEF CELEBIEVENT_FOREST_IS_RESTLESS_F EQU 2
|
||||
|
||||
; wBikeFlags::
|
||||
const_def
|
||||
@ -299,14 +299,14 @@ CELEBIEVENT_FOREST_IS_RESTLESS_F EQU 2
|
||||
const SWARMFLAGS_MOBILE_4_F ; 4
|
||||
|
||||
; wLuckyNumberShowFlag::
|
||||
LUCKYNUMBERSHOW_GAME_OVER_F EQU 0
|
||||
DEF LUCKYNUMBERSHOW_GAME_OVER_F EQU 0
|
||||
|
||||
; wDayCareMan::
|
||||
DAYCAREMAN_HAS_MON_F EQU 0
|
||||
DAYCAREMAN_MONS_COMPATIBLE_F EQU 5
|
||||
DAYCAREMAN_HAS_EGG_F EQU 6
|
||||
DAYCAREMAN_ACTIVE_F EQU 7
|
||||
DEF DAYCAREMAN_HAS_MON_F EQU 0
|
||||
DEF DAYCAREMAN_MONS_COMPATIBLE_F EQU 5
|
||||
DEF DAYCAREMAN_HAS_EGG_F EQU 6
|
||||
DEF DAYCAREMAN_ACTIVE_F EQU 7
|
||||
|
||||
; wDayCareLady::
|
||||
DAYCARELADY_HAS_MON_F EQU 0
|
||||
DAYCARELADY_ACTIVE_F EQU 7
|
||||
DEF DAYCARELADY_HAS_MON_F EQU 0
|
||||
DEF DAYCARELADY_ACTIVE_F EQU 7
|
||||
|
@ -1,4 +1,4 @@
|
||||
battleanimoam: MACRO
|
||||
MACRO battleanimoam
|
||||
; vtile offset, data length, data pointer
|
||||
db \1, \2
|
||||
dw \3
|
||||
|
@ -1,4 +1,4 @@
|
||||
anim_obj_gfx: MACRO
|
||||
MACRO anim_obj_gfx
|
||||
; # tiles, gfx pointer
|
||||
db \1
|
||||
dba \2
|
||||
|
@ -1,7 +1,7 @@
|
||||
ABSOLUTE_X EQU $00
|
||||
RELATIVE_X EQU $01
|
||||
DEF ABSOLUTE_X EQU $00
|
||||
DEF RELATIVE_X EQU $01
|
||||
|
||||
battleanimobj: MACRO
|
||||
MACRO battleanimobj
|
||||
db \1 ; flags
|
||||
; bit 7: priority
|
||||
; bit 6: y flip (for enemy)
|
||||
|
@ -1,6 +1,6 @@
|
||||
; std scripts associated with tile collisions
|
||||
|
||||
stdcoll: MACRO
|
||||
MACRO stdcoll
|
||||
db \1
|
||||
dw (\2StdScript - StdScripts) / 3
|
||||
ENDM
|
||||
|
@ -1,4 +1,4 @@
|
||||
decoration: MACRO
|
||||
MACRO decoration
|
||||
; type, name, action, event flag, tile/sprite
|
||||
db \1, \2, \3
|
||||
dw \4
|
||||
|
@ -1,4 +1,4 @@
|
||||
engine_flag: MACRO
|
||||
MACRO engine_flag
|
||||
; location, bit
|
||||
; (all locations are in WRAM bank 1)
|
||||
dwb \1 + (\2 / 8), 1 << (\2 % 8)
|
||||
|
@ -1,4 +1,4 @@
|
||||
npctrade: MACRO
|
||||
MACRO npctrade
|
||||
; dialog set, requested mon, offered mon, nickname, dvs, item, OT ID, OT name, gender requested
|
||||
db \1, \2, \3, \4, \5, \6, \7
|
||||
dw \8
|
||||
|
@ -1,14 +1,14 @@
|
||||
NUM_ODD_EGGS EQU 14
|
||||
DEF NUM_ODD_EGGS EQU 14
|
||||
|
||||
prob: MACRO
|
||||
prob_total += \1
|
||||
MACRO prob
|
||||
DEF prob_total += \1
|
||||
dw prob_total * $ffff / 100
|
||||
ENDM
|
||||
|
||||
OddEggProbabilities:
|
||||
; entries correspond to OddEggs (below)
|
||||
table_width 2, OddEggProbabilities
|
||||
prob_total = 0
|
||||
DEF prob_total = 0
|
||||
; Pichu
|
||||
prob 8
|
||||
prob 1
|
||||
|
@ -1,4 +1,4 @@
|
||||
rating: MACRO
|
||||
MACRO rating
|
||||
; count, sfx, text
|
||||
db \1
|
||||
dw \2, \3
|
||||
|
@ -1,7 +1,7 @@
|
||||
; Special routines can be used with the "special" map script command.
|
||||
; They often use wScriptVar for arguments and return values.
|
||||
|
||||
add_special: MACRO
|
||||
MACRO add_special
|
||||
\1Special::
|
||||
dba \1
|
||||
ENDM
|
||||
|
@ -1,6 +1,6 @@
|
||||
unownwall: MACRO
|
||||
MACRO unownwall
|
||||
for n, CHARLEN(\1)
|
||||
x = CHARSUB(\1, n + 1)
|
||||
DEF x = CHARSUB(\1, n + 1)
|
||||
if x == "-"
|
||||
db $64
|
||||
elif x >= "Y"
|
||||
|
@ -1,4 +1,4 @@
|
||||
growth_rate: MACRO
|
||||
MACRO growth_rate
|
||||
; [1]/[2]*n**3 + [3]*n**2 + [4]*n - [5]
|
||||
dn \1, \2
|
||||
if \3 < 0
|
||||
|
@ -1,4 +1,4 @@
|
||||
item_attribute: MACRO
|
||||
MACRO item_attribute
|
||||
; price, held effect, parameter, property, pocket, field menu, battle menu
|
||||
dw \1
|
||||
db \2, \3, \4, \5
|
||||
|
@ -1,4 +1,4 @@
|
||||
momitem: MACRO
|
||||
MACRO momitem
|
||||
; money to trigger, cost, kind, item
|
||||
dt \1
|
||||
dt \2
|
||||
|
@ -1,10 +1,10 @@
|
||||
map_attributes: MACRO
|
||||
MACRO map_attributes
|
||||
;\1: map name
|
||||
;\2: map id
|
||||
;\3: border block
|
||||
;\4: connections: combo of NORTH, SOUTH, WEST, and/or EAST, or 0 for none
|
||||
CURRENT_MAP_WIDTH = \2_WIDTH
|
||||
CURRENT_MAP_HEIGHT = \2_HEIGHT
|
||||
DEF CURRENT_MAP_WIDTH = \2_WIDTH
|
||||
DEF CURRENT_MAP_HEIGHT = \2_HEIGHT
|
||||
\1_MapAttributes::
|
||||
db \3
|
||||
db CURRENT_MAP_HEIGHT, CURRENT_MAP_WIDTH
|
||||
@ -17,7 +17,7 @@ CURRENT_MAP_HEIGHT = \2_HEIGHT
|
||||
ENDM
|
||||
|
||||
; Connections go in order: north, south, west, east
|
||||
connection: MACRO
|
||||
MACRO connection
|
||||
;\1: direction
|
||||
;\2: map name
|
||||
;\3: map id
|
||||
@ -30,55 +30,55 @@ if _NARG == 6
|
||||
else
|
||||
|
||||
; Calculate tile offsets for source (current) and target maps
|
||||
_src = 0
|
||||
_tgt = (\4) + 3
|
||||
DEF _src = 0
|
||||
DEF _tgt = (\4) + 3
|
||||
if _tgt < 0
|
||||
_src = -_tgt
|
||||
_tgt = 0
|
||||
DEF _src = -_tgt
|
||||
DEF _tgt = 0
|
||||
endc
|
||||
|
||||
if !STRCMP("\1", "north")
|
||||
_blk = \3_WIDTH * (\3_HEIGHT - 3) + _src
|
||||
_map = _tgt
|
||||
_win = (\3_WIDTH + 6) * \3_HEIGHT + 1
|
||||
_y = \3_HEIGHT * 2 - 1
|
||||
_x = (\4) * -2
|
||||
_len = CURRENT_MAP_WIDTH + 3 - (\4)
|
||||
DEF _blk = \3_WIDTH * (\3_HEIGHT - 3) + _src
|
||||
DEF _map = _tgt
|
||||
DEF _win = (\3_WIDTH + 6) * \3_HEIGHT + 1
|
||||
DEF _y = \3_HEIGHT * 2 - 1
|
||||
DEF _x = (\4) * -2
|
||||
DEF _len = CURRENT_MAP_WIDTH + 3 - (\4)
|
||||
if _len > \3_WIDTH
|
||||
_len = \3_WIDTH
|
||||
DEF _len = \3_WIDTH
|
||||
endc
|
||||
|
||||
elif !STRCMP("\1", "south")
|
||||
_blk = _src
|
||||
_map = (CURRENT_MAP_WIDTH + 6) * (CURRENT_MAP_HEIGHT + 3) + _tgt
|
||||
_win = \3_WIDTH + 7
|
||||
_y = 0
|
||||
_x = (\4) * -2
|
||||
_len = CURRENT_MAP_WIDTH + 3 - (\4)
|
||||
DEF _blk = _src
|
||||
DEF _map = (CURRENT_MAP_WIDTH + 6) * (CURRENT_MAP_HEIGHT + 3) + _tgt
|
||||
DEF _win = \3_WIDTH + 7
|
||||
DEF _y = 0
|
||||
DEF _x = (\4) * -2
|
||||
DEF _len = CURRENT_MAP_WIDTH + 3 - (\4)
|
||||
if _len > \3_WIDTH
|
||||
_len = \3_WIDTH
|
||||
DEF _len = \3_WIDTH
|
||||
endc
|
||||
|
||||
elif !STRCMP("\1", "west")
|
||||
_blk = (\3_WIDTH * _src) + \3_WIDTH - 3
|
||||
_map = (CURRENT_MAP_WIDTH + 6) * _tgt
|
||||
_win = (\3_WIDTH + 6) * 2 - 6
|
||||
_y = (\4) * -2
|
||||
_x = \3_WIDTH * 2 - 1
|
||||
_len = CURRENT_MAP_HEIGHT + 3 - (\4)
|
||||
DEF _blk = (\3_WIDTH * _src) + \3_WIDTH - 3
|
||||
DEF _map = (CURRENT_MAP_WIDTH + 6) * _tgt
|
||||
DEF _win = (\3_WIDTH + 6) * 2 - 6
|
||||
DEF _y = (\4) * -2
|
||||
DEF _x = \3_WIDTH * 2 - 1
|
||||
DEF _len = CURRENT_MAP_HEIGHT + 3 - (\4)
|
||||
if _len > \3_HEIGHT
|
||||
_len = \3_HEIGHT
|
||||
DEF _len = \3_HEIGHT
|
||||
endc
|
||||
|
||||
elif !STRCMP("\1", "east")
|
||||
_blk = (\3_WIDTH * _src)
|
||||
_map = (CURRENT_MAP_WIDTH + 6) * _tgt + CURRENT_MAP_WIDTH + 3
|
||||
_win = \3_WIDTH + 7
|
||||
_y = (\4) * -2
|
||||
_x = 0
|
||||
_len = CURRENT_MAP_HEIGHT + 3 - (\4)
|
||||
DEF _blk = (\3_WIDTH * _src)
|
||||
DEF _map = (CURRENT_MAP_WIDTH + 6) * _tgt + CURRENT_MAP_WIDTH + 3
|
||||
DEF _win = \3_WIDTH + 7
|
||||
DEF _y = (\4) * -2
|
||||
DEF _x = 0
|
||||
DEF _len = CURRENT_MAP_HEIGHT + 3 - (\4)
|
||||
if _len > \3_HEIGHT
|
||||
_len = \3_HEIGHT
|
||||
DEF _len = \3_HEIGHT
|
||||
endc
|
||||
|
||||
else
|
||||
@ -92,6 +92,7 @@ endc
|
||||
db \3_WIDTH
|
||||
db _y, _x
|
||||
dw wOverworldMapBlocks + _win
|
||||
|
||||
endc
|
||||
ENDM
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
landmark: MACRO
|
||||
MACRO landmark
|
||||
; x, y, name
|
||||
db \1 + 8, \2 + 16
|
||||
dw \3
|
||||
|
@ -1,4 +1,4 @@
|
||||
map: MACRO
|
||||
MACRO map
|
||||
;\1: map name: for the MapAttributes pointer (see data/maps/attributes.asm)
|
||||
;\2: tileset: a TILESET_* constant
|
||||
;\3: environment: TOWN, ROUTE, INDOOR, CAVE, ENVIRONMENT_5, GATE, or DUNGEON
|
||||
|
@ -5,7 +5,7 @@
|
||||
const ROOF_AZALEA ; 2
|
||||
const ROOF_OLIVINE ; 3
|
||||
const ROOF_GOLDENROD ; 4
|
||||
NUM_ROOFS EQU const_value
|
||||
DEF NUM_ROOFS EQU const_value
|
||||
|
||||
MapGroupRoofs:
|
||||
; entries correspond to MAPGROUP_* constants
|
||||
|
@ -1,4 +1,4 @@
|
||||
scene_var: MACRO
|
||||
MACRO scene_var
|
||||
; map, variable
|
||||
map_id \1
|
||||
dw \2
|
||||
|
@ -1,4 +1,4 @@
|
||||
add_mapsetup: MACRO
|
||||
MACRO add_mapsetup
|
||||
\1_MapSetupCmd:
|
||||
dba \1
|
||||
ENDM
|
||||
|
@ -16,7 +16,7 @@ MapSetupScripts:
|
||||
assert_table_length NUM_MAPSETUP_SCRIPTS
|
||||
|
||||
; valid commands are listed in MapSetupCommands (see data/maps/setup_script_pointers.asm)
|
||||
mapsetup: MACRO
|
||||
MACRO mapsetup
|
||||
db (\1_MapSetupCmd - MapSetupCommands) / 3
|
||||
ENDM
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
spawn: MACRO
|
||||
MACRO spawn
|
||||
; map, x, y
|
||||
map_id \1
|
||||
db \2, \3
|
||||
|
@ -7,7 +7,7 @@
|
||||
const MONMENUVALUE_MOVE ; 5
|
||||
const MONMENUVALUE_MAIL ; 6
|
||||
const MONMENUVALUE_ERROR ; 7
|
||||
NUM_MONMENUVALUES EQU const_value - 1
|
||||
DEF NUM_MONMENUVALUES EQU const_value - 1
|
||||
|
||||
MonMenuOptionStrings:
|
||||
; entries correspond to MONMENUVALUE_* constants
|
||||
|
@ -1,6 +1,6 @@
|
||||
; Characteristics of each move.
|
||||
|
||||
move: MACRO
|
||||
MACRO move
|
||||
db \1 ; animation
|
||||
db \2 ; effect
|
||||
db \3 ; power
|
||||
|
@ -18,7 +18,7 @@ endr
|
||||
assert_table_length NUM_TMS + NUM_HMS
|
||||
|
||||
; Move tutors
|
||||
n = 1
|
||||
DEF n = 1
|
||||
for n, 1, NUM_TUTORS + 1
|
||||
db MT{02d:n}_MOVE
|
||||
endr
|
||||
|
@ -10,7 +10,7 @@
|
||||
const PARTYMENUQUALITY_GENDER
|
||||
const PARTYMENUQUALITY_MOBILE_SELECTION
|
||||
|
||||
partymenuqualities: MACRO
|
||||
MACRO partymenuqualities
|
||||
rept _NARG
|
||||
db PARTYMENUQUALITY_\1
|
||||
shift
|
||||
|
@ -1,4 +1,4 @@
|
||||
phone: MACRO
|
||||
MACRO phone
|
||||
; trainer class, trainer id, map, callee time, callee script, caller time, caller script
|
||||
db \1, \2
|
||||
map_id \3
|
||||
|
@ -1,4 +1,4 @@
|
||||
specialcall: MACRO
|
||||
MACRO specialcall
|
||||
; condition, contact, script
|
||||
dw \1
|
||||
db \2
|
||||
|
@ -1,15 +1,15 @@
|
||||
; used in data/pokemon/base_stats/*.asm
|
||||
tmhm: MACRO
|
||||
MACRO tmhm
|
||||
; initialize bytes to 0
|
||||
for n, (NUM_TM_HM_TUTOR + 7) / 8
|
||||
_tm{d:n} = 0
|
||||
DEF _tm{d:n} = 0
|
||||
endr
|
||||
; set bits of bytes
|
||||
rept _NARG
|
||||
if DEF(\1_TMNUM)
|
||||
n = (\1_TMNUM - 1) / 8
|
||||
i = (\1_TMNUM - 1) % 8
|
||||
_tm{d:n} |= 1 << i
|
||||
DEF n = (\1_TMNUM - 1) / 8
|
||||
DEF i = (\1_TMNUM - 1) % 8
|
||||
DEF _tm{d:n} |= 1 << i
|
||||
else
|
||||
fail "\1 is not a TM, HM, or tutor move"
|
||||
endc
|
||||
|
@ -1,4 +1,4 @@
|
||||
mon_cry: MACRO
|
||||
MACRO mon_cry
|
||||
; index, pitch, length
|
||||
dw \1, \2, \3
|
||||
ENDM
|
||||
|
@ -1,4 +1,4 @@
|
||||
unownword: MACRO
|
||||
MACRO unownword
|
||||
for n, CHARLEN(\1)
|
||||
db CHARSUB(\1, n + 1) - "A" + FIRST_UNOWN_CHAR
|
||||
endr
|
||||
|
@ -1,7 +1,7 @@
|
||||
; Predef routines can be used with the "predef" and "predef_jump" macros.
|
||||
; This preserves registers bc, de, hl and f.
|
||||
|
||||
add_predef: MACRO
|
||||
MACRO add_predef
|
||||
\1Predef::
|
||||
dab \1
|
||||
ENDM
|
||||
|
@ -2,35 +2,35 @@
|
||||
; names taken from pandocs
|
||||
; http://gbdev.gg8.se/wiki/articles/SGB_Functions#SGB_Palette_Commands
|
||||
|
||||
sgb_pal_trn: MACRO
|
||||
MACRO sgb_pal_trn
|
||||
db (SGB_PAL_TRN << 3) + 1
|
||||
ds 15
|
||||
ENDM
|
||||
|
||||
sgb_mlt_req: MACRO
|
||||
MACRO sgb_mlt_req
|
||||
db (SGB_MLT_REQ << 3) + 1
|
||||
db \1 - 1
|
||||
ds 14
|
||||
ENDM
|
||||
|
||||
sgb_chr_trn: MACRO
|
||||
MACRO sgb_chr_trn
|
||||
db (SGB_CHR_TRN << 3) + 1
|
||||
db \1 + (\2 << 1)
|
||||
ds 14
|
||||
ENDM
|
||||
|
||||
sgb_pct_trn: MACRO
|
||||
MACRO sgb_pct_trn
|
||||
db (SGB_PCT_TRN << 3) + 1
|
||||
ds 15
|
||||
ENDM
|
||||
|
||||
sgb_mask_en: MACRO
|
||||
MACRO sgb_mask_en
|
||||
db (SGB_MASK_EN << 3) + 1
|
||||
db \1
|
||||
ds 14
|
||||
ENDM
|
||||
|
||||
sgb_data_snd: MACRO
|
||||
MACRO sgb_data_snd
|
||||
db (SGB_DATA_SND << 3) + 1
|
||||
dw \1 ; address
|
||||
db \2 ; bank
|
||||
|
@ -1,4 +1,4 @@
|
||||
sprite_anim_obj_gfx: MACRO
|
||||
MACRO sprite_anim_obj_gfx
|
||||
; # tiles, gfx pointer
|
||||
db \1
|
||||
dbw \2, \3
|
||||
|
@ -1,4 +1,4 @@
|
||||
emote: MACRO
|
||||
MACRO emote
|
||||
; graphics pointer, length, starting tile
|
||||
dw \1
|
||||
db \2 tiles, BANK(\1)
|
||||
|
@ -1,4 +1,4 @@
|
||||
overworld_sprite: MACRO
|
||||
MACRO overworld_sprite
|
||||
; pointer, length, type, palette
|
||||
dw \1
|
||||
db \2 tiles, BANK(\1), \3, \4
|
||||
|
@ -1,4 +1,4 @@
|
||||
tileset: MACRO
|
||||
MACRO tileset
|
||||
dba \1GFX, \1Meta, \1Coll
|
||||
dw \1Anim
|
||||
dw NULL
|
||||
|
@ -1,6 +1,6 @@
|
||||
time_group EQUS "0," ; use the nth TimeFishGroups entry
|
||||
DEF time_group EQUS "0," ; use the nth TimeFishGroups entry
|
||||
|
||||
fishgroup: MACRO
|
||||
MACRO fishgroup
|
||||
; chance, old rod, good rod, super rod
|
||||
db \1
|
||||
dw \2, \3, \4
|
||||
|
@ -1,4 +1,4 @@
|
||||
mon_prob: MACRO
|
||||
MACRO mon_prob
|
||||
; percent, index
|
||||
db \1, \2 * 2
|
||||
ENDM
|
||||
|
@ -1,7 +1,7 @@
|
||||
; Maps that roaming monsters can be on, and possible maps they can jump to.
|
||||
; Notably missing are Route 40 and Route 41, which are water routes.
|
||||
|
||||
roam_map: MACRO
|
||||
MACRO roam_map
|
||||
map_id \1
|
||||
db _NARG - 1
|
||||
rept _NARG - 1
|
||||
@ -9,7 +9,7 @@ rept _NARG - 1
|
||||
shift
|
||||
endr
|
||||
db 0
|
||||
list_index += 1
|
||||
DEF list_index += 1
|
||||
ENDM
|
||||
|
||||
RoamMaps:
|
||||
|
@ -1,4 +1,4 @@
|
||||
treemon_map: MACRO
|
||||
MACRO treemon_map
|
||||
map_id \1
|
||||
db \2 ; treemon set
|
||||
ENDM
|
||||
|
@ -1,4 +1,4 @@
|
||||
unown_set: MACRO
|
||||
MACRO unown_set
|
||||
rept _NARG
|
||||
db UNOWN_\1
|
||||
shift
|
||||
|
@ -20,7 +20,7 @@ These are parts of the code that do not work *incorrectly*, like [bugs and glitc
|
||||
[data/pokemon/pic_pointers.asm](https://github.com/pret/pokecrystal/blob/master/data/pokemon/pic_pointers.asm), [data/pokemon/unown_pic_pointers.asm](https://github.com/pret/pokecrystal/blob/master/data/pokemon/unown_pic_pointers.asm), and [data/trainers/pic_pointers.asm](https://github.com/pret/pokecrystal/blob/master/data/trainers/pic_pointers.asm) all have to use `dba_pic` instead of `dba`. This is a macro in [macros/data.asm](https://github.com/pret/pokecrystal/blob/master/macros/data.asm) that offsets banks by `PICS_FIX`:
|
||||
|
||||
```asm
|
||||
dba_pic: MACRO ; dbw bank, address
|
||||
MACRO dba_pic ; dbw bank, address
|
||||
db BANK(\1) - PICS_FIX
|
||||
dw \1
|
||||
ENDM
|
||||
@ -32,7 +32,7 @@ The offset is translated into a correct bank by `FixPicBank` in [engine/gfx/load
|
||||
FixPicBank:
|
||||
; This is a thing for some reason.
|
||||
|
||||
PICS_FIX EQU $36
|
||||
DEF PICS_FIX EQU $36
|
||||
GLOBAL PICS_FIX
|
||||
|
||||
push hl
|
||||
@ -148,8 +148,8 @@ In [gfx/footprints.asm](https://github.com/pret/pokecrystal/blob/master/gfx/foot
|
||||
; then a row of the bottom two tiles for those eight footprints.
|
||||
|
||||
; These macros help extract the first and the last two tiles, respectively.
|
||||
footprint_top EQUS "0, 2 * LEN_1BPP_TILE"
|
||||
footprint_bottom EQUS "2 * LEN_1BPP_TILE, 2 * LEN_1BPP_TILE"
|
||||
DEF footprint_top EQUS "0, 2 * LEN_1BPP_TILE"
|
||||
DEF footprint_bottom EQUS "2 * LEN_1BPP_TILE, 2 * LEN_1BPP_TILE"
|
||||
|
||||
; Entries correspond to Pokémon species, two apiece, 8 tops then 8 bottoms
|
||||
|
||||
@ -322,7 +322,7 @@ Edit `GetMapMusic`:
|
||||
add_tm PSYCHIC_M ; dd
|
||||
...
|
||||
add_tm NIGHTMARE ; f2
|
||||
NUM_TMS EQU const_value - TM01 - 2 ; discount ITEM_C3 and ITEM_DC
|
||||
DEF NUM_TMS EQU const_value - TM01 - 2 ; discount ITEM_C3 and ITEM_DC
|
||||
```
|
||||
|
||||
`GetTMHMNumber` and `GetNumberedTMHM` in [engine/items/items.asm](https://github.com/pret/pokecrystal/blob/master/engine/items/items.asm) have to compensate for this.
|
||||
@ -671,7 +671,7 @@ CelebiEvent_Cosine:
|
||||
They all rely on `calc_sine_wave` in [macros/code.asm](https://github.com/pret/pokecrystal/blob/master/macros/code.asm):
|
||||
|
||||
```asm
|
||||
calc_sine_wave: MACRO
|
||||
MACRO calc_sine_wave
|
||||
; input: a = a signed 6-bit value
|
||||
; output: a = d * sin(a * pi/32)
|
||||
and %111111
|
||||
@ -722,12 +722,12 @@ ENDM
|
||||
And on `sine_table` in [macros/data.asm](https://github.com/pret/pokecrystal/blob/master/macros/data.asm):
|
||||
|
||||
```asm
|
||||
sine_table: MACRO
|
||||
MACRO sine_table
|
||||
; \1 samples of sin(x) from x=0 to x<32768 (pi radians)
|
||||
x = 0
|
||||
DEF x = 0
|
||||
rept \1
|
||||
dw (sin(x) + (sin(x) & $ff)) >> 8 ; round up
|
||||
x += DIV(32768, \1) ; a circle has 65536 "degrees"
|
||||
DEF x += DIV(32768, \1) ; a circle has 65536 "degrees"
|
||||
endr
|
||||
ENDM
|
||||
```
|
||||
|
@ -1,13 +1,13 @@
|
||||
; BattleTransitionJumptable.Jumptable indexes
|
||||
BATTLETRANSITION_CAVE EQU $01
|
||||
BATTLETRANSITION_CAVE_STRONGER EQU $09
|
||||
BATTLETRANSITION_NO_CAVE EQU $10
|
||||
BATTLETRANSITION_NO_CAVE_STRONGER EQU $18
|
||||
BATTLETRANSITION_FINISH EQU $20
|
||||
BATTLETRANSITION_END EQU $80
|
||||
DEF BATTLETRANSITION_CAVE EQU $01
|
||||
DEF BATTLETRANSITION_CAVE_STRONGER EQU $09
|
||||
DEF BATTLETRANSITION_NO_CAVE EQU $10
|
||||
DEF BATTLETRANSITION_NO_CAVE_STRONGER EQU $18
|
||||
DEF BATTLETRANSITION_FINISH EQU $20
|
||||
DEF BATTLETRANSITION_END EQU $80
|
||||
|
||||
BATTLETRANSITION_SQUARE EQU "8" ; $fe
|
||||
BATTLETRANSITION_BLACK EQU "9" ; $ff
|
||||
DEF BATTLETRANSITION_SQUARE EQU "8" ; $fe
|
||||
DEF BATTLETRANSITION_BLACK EQU "9" ; $ff
|
||||
|
||||
DoBattleTransition:
|
||||
call .InitGFX
|
||||
@ -208,8 +208,8 @@ BattleTransitionJumptable:
|
||||
const TRANS_NO_CAVE_STRONGER
|
||||
|
||||
; transition animation bits
|
||||
TRANS_STRONGER_F EQU 0 ; bit set in TRANS_CAVE_STRONGER and TRANS_NO_CAVE_STRONGER
|
||||
TRANS_NO_CAVE_F EQU 1 ; bit set in TRANS_NO_CAVE and TRANS_NO_CAVE_STRONGER
|
||||
DEF TRANS_STRONGER_F EQU 0 ; bit set in TRANS_CAVE_STRONGER and TRANS_NO_CAVE_STRONGER
|
||||
DEF TRANS_NO_CAVE_F EQU 1 ; bit set in TRANS_NO_CAVE and TRANS_NO_CAVE_STRONGER
|
||||
|
||||
StartTrainerBattle_DetermineWhichAnimation:
|
||||
; The screen flashes a different number of times depending on the level of
|
||||
@ -422,11 +422,11 @@ endr
|
||||
const LOWER_RIGHT
|
||||
|
||||
; quadrant bits
|
||||
RIGHT_QUADRANT_F EQU 0 ; bit set in UPPER_RIGHT and LOWER_RIGHT
|
||||
LOWER_QUADRANT_F EQU 1 ; bit set in LOWER_LEFT and LOWER_RIGHT
|
||||
DEF RIGHT_QUADRANT_F EQU 0 ; bit set in UPPER_RIGHT and LOWER_RIGHT
|
||||
DEF LOWER_QUADRANT_F EQU 1 ; bit set in LOWER_LEFT and LOWER_RIGHT
|
||||
|
||||
.spin_quadrants:
|
||||
spin_quadrant: MACRO
|
||||
MACRO spin_quadrant
|
||||
db \1
|
||||
dw \2
|
||||
dwcoord \3, \4
|
||||
@ -799,7 +799,7 @@ StartTrainerBattle_ZoomToBlack:
|
||||
ret
|
||||
|
||||
.boxes
|
||||
zoombox: MACRO
|
||||
MACRO zoombox
|
||||
; width, height, start y, start x
|
||||
db \1, \2
|
||||
dwcoord \3, \4
|
||||
|
@ -3067,9 +3067,9 @@ BattleCommand_DamageCalc:
|
||||
call .CriticalMultiplier
|
||||
|
||||
; Update wCurDamage. Max 999 (capped at 997, then add 2).
|
||||
MAX_DAMAGE EQU 999
|
||||
MIN_DAMAGE EQU 2
|
||||
DAMAGE_CAP EQU MAX_DAMAGE - MIN_DAMAGE
|
||||
DEF MAX_DAMAGE EQU 999
|
||||
DEF MIN_DAMAGE EQU 2
|
||||
DEF DAMAGE_CAP EQU MAX_DAMAGE - MIN_DAMAGE
|
||||
|
||||
ld hl, wCurDamage
|
||||
ld b, [hl]
|
||||
|
@ -1,4 +1,4 @@
|
||||
MAX_ROLLOUT_COUNT EQU 5
|
||||
DEF MAX_ROLLOUT_COUNT EQU 5
|
||||
|
||||
BattleCommand_CheckCurl:
|
||||
; checkcurl
|
||||
|
@ -852,7 +852,7 @@ BattleBGEffect_RunPicResizeScript:
|
||||
dwcoord 14, 4
|
||||
|
||||
.BGSquares:
|
||||
bgsquare: MACRO
|
||||
MACRO bgsquare
|
||||
dn \1, \2
|
||||
dw \3
|
||||
ENDM
|
||||
|
@ -3,7 +3,7 @@
|
||||
const DEBUGROOMMENU_PAGE_1 ; 0
|
||||
const DEBUGROOMMENU_PAGE_2 ; 1
|
||||
const DEBUGROOMMENU_PAGE_3 ; 2
|
||||
DEBUGROOMMENU_NUM_PAGES EQU const_value
|
||||
DEF DEBUGROOMMENU_NUM_PAGES EQU const_value
|
||||
|
||||
; _DebugRoom.Strings and _DebugRoom.Jumptable indexes
|
||||
const_def
|
||||
@ -538,7 +538,7 @@ DebugRoomMenu_DecorateAll:
|
||||
call DebugRoom_SaveChecksum
|
||||
ret
|
||||
|
||||
paged_value: MACRO
|
||||
MACRO paged_value
|
||||
dw \1 ; value address
|
||||
db \2 ; min value
|
||||
db \3 ; max value
|
||||
@ -548,7 +548,7 @@ paged_value: MACRO
|
||||
db \7 ; is hex value?
|
||||
ENDM
|
||||
|
||||
PAGED_VALUE_SIZE EQU 10
|
||||
DEF PAGED_VALUE_SIZE EQU 10
|
||||
|
||||
DebugRoom_EditPagedValues:
|
||||
xor a
|
||||
|
@ -1,4 +1,4 @@
|
||||
SPECIALCELEBIEVENT_CELEBI EQU $84
|
||||
DEF SPECIALCELEBIEVENT_CELEBI EQU $84
|
||||
|
||||
UnusedForestTreeFrames: ; unreferenced
|
||||
INCBIN "gfx/tilesets/forest-tree/1.2bpp"
|
||||
|
@ -1,6 +1,6 @@
|
||||
FIELDMOVE_GRASS EQU $80
|
||||
FIELDMOVE_TREE EQU $84
|
||||
FIELDMOVE_FLY EQU $84
|
||||
DEF FIELDMOVE_GRASS EQU $80
|
||||
DEF FIELDMOVE_TREE EQU $84
|
||||
DEF FIELDMOVE_FLY EQU $84
|
||||
|
||||
PlayWhirlpoolSound:
|
||||
call WaitSFX
|
||||
|
@ -1,4 +1,4 @@
|
||||
HALLOFFAME_COLON EQU $63
|
||||
DEF HALLOFFAME_COLON EQU $63
|
||||
|
||||
HallOfFame::
|
||||
call HallOfFame_FadeOutMusic
|
||||
|
@ -59,7 +59,7 @@ HealMachineAnim:
|
||||
dw .ElmsLab
|
||||
dw .HallOfFame
|
||||
|
||||
healmachineanimseq: MACRO
|
||||
MACRO healmachineanimseq
|
||||
rept _NARG
|
||||
db HEALMACHINESTATE_\1
|
||||
shift
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user