mirror of
https://github.com/thornAvery/kep-hack.git
synced 2026-02-06 15:45:24 +13:00
Merge branch 'master' of https://github.com/pret/pokered
This commit is contained in:
commit
e8dd755e18
3702 changed files with 163333 additions and 159040 deletions
67
constants/audio_constants.asm
Normal file
67
constants/audio_constants.asm
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
; pitch
|
||||
; Audio[1|2|3]_Pitches indexes (see audio/notes.asm)
|
||||
; const_def
|
||||
; const C_ ; 0
|
||||
; const C# ; 1
|
||||
; const D_ ; 2
|
||||
; const D# ; 3
|
||||
; const E_ ; 4
|
||||
; const F_ ; 5
|
||||
; const F# ; 6
|
||||
; const G_ ; 7
|
||||
; const G# ; 8
|
||||
; const A_ ; 9
|
||||
; const A# ; A
|
||||
; const B_ ; B
|
||||
|
||||
; channel
|
||||
; Audio[1|2|3]_HWChannelBaseAddresses, Audio[1|2|3]_HWChannelDisableMasks,
|
||||
; and Audio[1|2|3]_HWChannelEnableMasks indexes (see audio/engine_[1|2|3].asm)
|
||||
const_def
|
||||
const Ch1 ; 0
|
||||
const Ch2 ; 1
|
||||
const Ch3 ; 2
|
||||
const Ch4 ; 3
|
||||
;NUM_MUSIC_CHANS EQU const_value
|
||||
const Ch5 ; 4
|
||||
const Ch6 ; 5
|
||||
const Ch7 ; 6
|
||||
const Ch8 ; 7
|
||||
;NUM_NOISE_CHANS EQU const_value - NUM_MUSIC_CHANS
|
||||
;NUM_CHANNELS EQU const_value
|
||||
|
||||
; HW sound channel register base addresses
|
||||
HW_CH1_BASE EQU LOW(rNR10)
|
||||
HW_CH2_BASE EQU LOW(rNR21) - 1
|
||||
HW_CH3_BASE EQU LOW(rNR30)
|
||||
HW_CH4_BASE EQU LOW(rNR41) - 1
|
||||
|
||||
; HW sound channel enable bit masks
|
||||
HW_CH1_ENABLE_MASK EQU %00010001
|
||||
HW_CH2_ENABLE_MASK EQU %00100010
|
||||
HW_CH3_ENABLE_MASK EQU %01000100
|
||||
HW_CH4_ENABLE_MASK EQU %10001000
|
||||
|
||||
; HW sound channel disable bit masks
|
||||
HW_CH1_DISABLE_MASK EQU (~HW_CH1_ENABLE_MASK & $ff)
|
||||
HW_CH2_DISABLE_MASK EQU (~HW_CH2_ENABLE_MASK & $ff)
|
||||
HW_CH3_DISABLE_MASK EQU (~HW_CH3_ENABLE_MASK & $ff)
|
||||
HW_CH4_DISABLE_MASK EQU (~HW_CH4_ENABLE_MASK & $ff)
|
||||
|
||||
const_def 1
|
||||
const REG_DUTY_SOUND_LEN ; 1
|
||||
const REG_VOLUME_ENVELOPE ; 2
|
||||
const REG_FREQUENCY_LO ; 3
|
||||
|
||||
; wChannelFlags1 constants
|
||||
const_def
|
||||
const BIT_PERFECT_PITCH ; 0 ; controlled by toggle_perfect_pitch command
|
||||
const BIT_SOUND_CALL ; 1 ; if in sound call
|
||||
const BIT_NOISE_OR_SFX ; 2 ; if channel is the music noise channel or an SFX channel
|
||||
const BIT_VIBRATO_DIRECTION ; 3 ; if the pitch is above or below normal (cycles)
|
||||
const BIT_PITCH_SLIDE_ON ; 4 ; if pitch slide is active
|
||||
const BIT_PITCH_SLIDE_DECREASING ; 5 ; if the pitch slide frequency is decreasing (instead of increasing)
|
||||
const BIT_ROTATE_DUTY_CYCLE ; 6 ; if rotating duty cycle
|
||||
|
||||
; wChannelFlags2 constant (only has one flag)
|
||||
BIT_EXECUTE_MUSIC EQU 0 ; if in execute music
|
||||
73
constants/battle_constants.asm
Normal file
73
constants/battle_constants.asm
Normal file
|
|
@ -0,0 +1,73 @@
|
|||
MAX_LEVEL EQU 100
|
||||
|
||||
NUM_MOVES EQU 4
|
||||
NUM_STATS EQU 5
|
||||
NUM_STAT_MODS EQU 8
|
||||
NUM_DVS EQU 2
|
||||
|
||||
; D733 flags
|
||||
BIT_TEST_BATTLE EQU 0
|
||||
|
||||
; battle type constants (wBattleType values)
|
||||
const_def
|
||||
const BATTLE_TYPE_NORMAL ; 0
|
||||
const BATTLE_TYPE_OLD_MAN ; 1
|
||||
const BATTLE_TYPE_SAFARI ; 2
|
||||
|
||||
; damage limits before type effectiveness
|
||||
MIN_NEUTRAL_DAMAGE EQU 2
|
||||
MAX_NEUTRAL_DAMAGE EQU 999
|
||||
|
||||
; fixed damage constants
|
||||
SONICBOOM_DAMAGE EQU 20
|
||||
DRAGON_RAGE_DAMAGE EQU 40
|
||||
|
||||
; 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
|
||||
|
||||
; non-volatile statuses
|
||||
SLP EQU %111 ; sleep counter
|
||||
const_def 3
|
||||
const PSN ; 3
|
||||
const BRN ; 4
|
||||
const FRZ ; 5
|
||||
const PAR ; 6
|
||||
|
||||
MAX_STAT_VALUE EQU 999
|
||||
|
||||
; trainer dvs
|
||||
ATKDEFDV_TRAINER EQU $98
|
||||
SPDSPCDV_TRAINER EQU $88
|
||||
|
||||
; wPlayerBattleStatus1 or wEnemyBattleStatus1 bit flags
|
||||
const_def
|
||||
const STORING_ENERGY ; 0 ; Bide
|
||||
const THRASHING_ABOUT ; 1 ; e.g. Thrash
|
||||
const ATTACKING_MULTIPLE_TIMES ; 2 ; e.g. Double Kick, Fury Attack
|
||||
const FLINCHED ; 3
|
||||
const CHARGING_UP ; 4 ; e.g. Solar Beam, Fly
|
||||
const USING_TRAPPING_MOVE ; 5 ; e.g. Wrap
|
||||
const INVULNERABLE ; 6 ; charging up Fly/Dig
|
||||
const CONFUSED ; 7
|
||||
|
||||
; wPlayerBattleStatus2 or wEnemyBattleStatus2 bit flags
|
||||
const_def
|
||||
const USING_X_ACCURACY ; 0
|
||||
const PROTECTED_BY_MIST ; 1
|
||||
const GETTING_PUMPED ; 2 ; Focus Energy
|
||||
const_skip ; 3 ; unused
|
||||
const HAS_SUBSTITUTE_UP ; 4
|
||||
const NEEDS_TO_RECHARGE ; 5 ; Hyper Beam
|
||||
const USING_RAGE ; 6
|
||||
const SEEDED ; 7
|
||||
|
||||
; wPlayerBattleStatus3 or wEnemyBattleStatus3 bit flags
|
||||
const_def
|
||||
const BADLY_POISONED ; 0
|
||||
const HAS_LIGHT_SCREEN_UP ; 1
|
||||
const HAS_REFLECT_UP ; 2
|
||||
const TRANSFORMED ; 3
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
; width of east/west connections
|
||||
; height of north/south connections
|
||||
MAP_BORDER EQU 3
|
||||
|
||||
; connection directions
|
||||
EAST EQU 1
|
||||
WEST EQU 2
|
||||
SOUTH EQU 4
|
||||
NORTH EQU 8
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
const_value = 0
|
||||
|
||||
; CreditsTextPointers indexes (see data/credits/credits_text.asm)
|
||||
const_def
|
||||
const CRED_VERSION ; $00
|
||||
const CRED_TAJIRI ; $01
|
||||
const CRED_TA_OOTA ; $02
|
||||
|
|
@ -65,3 +65,10 @@ const_value = 0
|
|||
const CRED_CLUB ; $3E
|
||||
const CRED_PAAD ; $3F
|
||||
|
||||
const_def -1, -1
|
||||
const CRED_TEXT_FADE_MON ; $FF
|
||||
const CRED_TEXT_MON ; $FE
|
||||
const CRED_TEXT_FADE ; $FD
|
||||
const CRED_TEXT ; $FC
|
||||
const CRED_COPYRIGHT ; $FB
|
||||
const CRED_THE_END ; $FA
|
||||
|
|
|
|||
3335
constants/event_constants.asm
Executable file → Normal file
3335
constants/event_constants.asm
Executable file → Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -1,9 +0,0 @@
|
|||
; See data/evos_moves.asm
|
||||
|
||||
; Evolution types
|
||||
EV_LEVEL EQU 1
|
||||
EV_ITEM EQU 2
|
||||
EV_TRADE EQU 3
|
||||
|
||||
MAX_EVOLUTIONS EQU 3
|
||||
EVOLUTION_SIZE EQU 4
|
||||
39
constants/gfx_constants.asm
Normal file
39
constants/gfx_constants.asm
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
TILE_WIDTH EQU 8 ; pixels
|
||||
LEN_1BPP_TILE EQU 1 * TILE_WIDTH ; bytes
|
||||
LEN_2BPP_TILE EQU 2 * TILE_WIDTH ; bytes
|
||||
|
||||
SCREEN_WIDTH EQU 20
|
||||
SCREEN_HEIGHT EQU 18
|
||||
SCREEN_WIDTH_PX EQU SCREEN_WIDTH * TILE_WIDTH ; pixels
|
||||
SCREEN_HEIGHT_PX EQU SCREEN_HEIGHT * TILE_WIDTH ; pixels
|
||||
|
||||
BG_MAP_WIDTH EQU 32 ; tiles
|
||||
BG_MAP_HEIGHT EQU 32 ; tiles
|
||||
|
||||
SPRITEBUFFERSIZE EQU 7 * 7 * LEN_1BPP_TILE
|
||||
|
||||
; HP bar
|
||||
HP_BAR_GREEN EQU 0
|
||||
HP_BAR_YELLOW EQU 1
|
||||
HP_BAR_RED EQU 2
|
||||
|
||||
; hAutoBGTransferEnabled
|
||||
TRANSFERTOP EQU 0
|
||||
TRANSFERMIDDLE EQU 1
|
||||
TRANSFERBOTTOM EQU 2
|
||||
|
||||
; hRedrawRowOrColumnMode
|
||||
REDRAW_COL EQU 1
|
||||
REDRAW_ROW EQU 2
|
||||
|
||||
; tile list ids
|
||||
; TileIDListPointerTable indexes (see data/tilemaps.asm)
|
||||
const_def
|
||||
const TILEMAP_MON_PIC
|
||||
const TILEMAP_SLIDE_DOWN_MON_PIC_7X5
|
||||
const TILEMAP_SLIDE_DOWN_MON_PIC_7X3
|
||||
const TILEMAP_GENGAR_INTRO_1
|
||||
const TILEMAP_GENGAR_INTRO_2
|
||||
const TILEMAP_GENGAR_INTRO_3
|
||||
const TILEMAP_GAME_BOY
|
||||
const TILEMAP_LINK_CABLE
|
||||
|
|
@ -2,6 +2,19 @@
|
|||
|
||||
GBC EQU $11
|
||||
|
||||
; 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
|
||||
; hardware registers $ff00-$ff80 (see below)
|
||||
HRAM_Begin EQU $ff80
|
||||
HRAM_End EQU $ffff
|
||||
|
||||
; MBC1
|
||||
MBC1SRamEnable EQU $0000
|
||||
MBC1RomBank EQU $2000
|
||||
|
|
|
|||
9
constants/hide_show_constants.asm
Executable file → Normal file
9
constants/hide_show_constants.asm
Executable file → Normal file
|
|
@ -1,11 +1,14 @@
|
|||
HIDE EQU $11
|
||||
SHOW EQU $15
|
||||
|
||||
; MissableObjects indexes (see data/maps/hide_show_data.asm)
|
||||
; this is a list of the sprites that can be enabled/disabled during the game
|
||||
; sprites marked with an X are constants that are never used
|
||||
; because those sprites are not (de)activated in a map's script
|
||||
; (they are either items or sprites that deactivate after battle
|
||||
; and are detected in wMissableObjectList)
|
||||
|
||||
const_value = 0
|
||||
|
||||
const_def
|
||||
const HS_PALLET_TOWN_OAK ; 00
|
||||
const HS_LYING_OLD_MAN ; 01
|
||||
const HS_OLD_MAN ; 02
|
||||
|
|
@ -14,7 +17,7 @@ const_value = 0
|
|||
const HS_CERULEAN_RIVAL ; 05
|
||||
const HS_CERULEAN_ROCKET ; 06
|
||||
const HS_CERULEAN_GUARD_1 ; 07
|
||||
const HS_UNKNOWN_DUNGEON_GUY ; 08
|
||||
const HS_CERULEAN_CAVE_GUY ; 08
|
||||
const HS_CERULEAN_GUARD_2 ; 09
|
||||
const HS_SAFFRON_CITY_1 ; 0A
|
||||
const HS_SAFFRON_CITY_2 ; 0B
|
||||
|
|
|
|||
17
constants/icon_constants.asm
Normal file
17
constants/icon_constants.asm
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
; party menu icons
|
||||
; used in MonPartySpritePointers (see data/icon_pointers.asm)
|
||||
const_def
|
||||
const ICON_MON ; $0
|
||||
const ICON_BALL ; $1
|
||||
const ICON_HELIX ; $2
|
||||
const ICON_FAIRY ; $3
|
||||
const ICON_BIRD ; $4
|
||||
const ICON_WATER ; $5
|
||||
const ICON_BUG ; $6
|
||||
const ICON_GRASS ; $7
|
||||
const ICON_SNAKE ; $8
|
||||
const ICON_QUADRUPED ; $9
|
||||
|
||||
ICON_TRADEBUBBLE EQU $e
|
||||
|
||||
ICONOFFSET EQU $40 ; difference between alternating icon frames' tile IDs
|
||||
20
constants/input_constants.asm
Normal file
20
constants/input_constants.asm
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
; joypad buttons
|
||||
const_def
|
||||
const BIT_A_BUTTON
|
||||
const BIT_B_BUTTON
|
||||
const BIT_SELECT
|
||||
const BIT_START
|
||||
const BIT_D_RIGHT
|
||||
const BIT_D_LEFT
|
||||
const BIT_D_UP
|
||||
const BIT_D_DOWN
|
||||
|
||||
NO_INPUT EQU 0
|
||||
A_BUTTON EQU 1 << BIT_A_BUTTON
|
||||
B_BUTTON EQU 1 << BIT_B_BUTTON
|
||||
SELECT EQU 1 << BIT_SELECT
|
||||
START EQU 1 << BIT_START
|
||||
D_RIGHT EQU 1 << BIT_D_RIGHT
|
||||
D_LEFT EQU 1 << BIT_D_LEFT
|
||||
D_UP EQU 1 << BIT_D_UP
|
||||
D_DOWN EQU 1 << BIT_D_DOWN
|
||||
184
constants/item_constants.asm
Executable file → Normal file
184
constants/item_constants.asm
Executable file → Normal file
|
|
@ -1,5 +1,12 @@
|
|||
const_value = 1
|
||||
|
||||
; item ids
|
||||
; indexes for:
|
||||
; - ItemNames (see data/items/names.asm)
|
||||
; - ItemPrices (see data/items/prices.asm)
|
||||
; - TechnicalMachinePrices (see data/items/tm_prices.asm)
|
||||
; - KeyItemBitfield (see data/items/key_items.asm)
|
||||
; - ItemUsePtrTable (see engine/items/item_effects.asm)
|
||||
const_def
|
||||
const NO_ITEM ; $00
|
||||
const MASTER_BALL ; $01
|
||||
const ULTRA_BALL ; $02
|
||||
const GREAT_BALL ; $03
|
||||
|
|
@ -100,60 +107,121 @@ SAFARI_ROCK EQU $16 ; overload
|
|||
const FLOOR_11F ; $60
|
||||
const FLOOR_B4F ; $61
|
||||
|
||||
const_value = $C4
|
||||
const_next $C4
|
||||
|
||||
const HM_01 ; $C4
|
||||
const HM_02 ; $C5
|
||||
const HM_03 ; $C6
|
||||
const HM_04 ; $C7
|
||||
const HM_05 ; $C8
|
||||
const TM_01 ; $C9
|
||||
const TM_02 ; $CA
|
||||
const TM_03 ; $CB
|
||||
const TM_04 ; $CC
|
||||
const TM_05 ; $CD
|
||||
const TM_06 ; $CE
|
||||
const TM_07 ; $CF
|
||||
const TM_08 ; $D0
|
||||
const TM_09 ; $D1
|
||||
const TM_10 ; $D2
|
||||
const TM_11 ; $D3
|
||||
const TM_12 ; $D4
|
||||
const TM_13 ; $D5
|
||||
const TM_14 ; $D6
|
||||
const TM_15 ; $D7
|
||||
const TM_16 ; $D8
|
||||
const TM_17 ; $D9
|
||||
const TM_18 ; $DA
|
||||
const TM_19 ; $DB
|
||||
const TM_20 ; $DC
|
||||
const TM_21 ; $DD
|
||||
const TM_22 ; $DE
|
||||
const TM_23 ; $DF
|
||||
const TM_24 ; $E0
|
||||
const TM_25 ; $E1
|
||||
const TM_26 ; $E2
|
||||
const TM_27 ; $E3
|
||||
const TM_28 ; $E4
|
||||
const TM_29 ; $E5
|
||||
const TM_30 ; $E6
|
||||
const TM_31 ; $E7
|
||||
const TM_32 ; $E8
|
||||
const TM_33 ; $E9
|
||||
const TM_34 ; $EA
|
||||
const TM_35 ; $EB
|
||||
const TM_36 ; $EC
|
||||
const TM_37 ; $ED
|
||||
const TM_38 ; $EE
|
||||
const TM_39 ; $EF
|
||||
const TM_40 ; $F0
|
||||
const TM_41 ; $F1
|
||||
const TM_42 ; $F2
|
||||
const TM_43 ; $F3
|
||||
const TM_44 ; $F4
|
||||
const TM_45 ; $F5
|
||||
const TM_46 ; $F6
|
||||
const TM_47 ; $F7
|
||||
const TM_48 ; $F8
|
||||
const TM_49 ; $F9
|
||||
const TM_50 ; $FA
|
||||
; HMs are defined before TMs, so the actual number of TM definitions
|
||||
; is not yet available. The TM quantity is hard-coded here and must
|
||||
; match the actual number below.
|
||||
NUM_TMS EQU 50
|
||||
|
||||
add_hm: MACRO
|
||||
; Defines three constants:
|
||||
; - HM_\1: the item id, starting at $C4
|
||||
; - \1_TMNUM: the learnable TM/HM flag, starting at 51
|
||||
; - HM##_MOVE: alias for the move id, equal to the value of \1
|
||||
; The first usage also defines HM01 as the first HM item id.
|
||||
IF !DEF(HM01)
|
||||
HM01 EQU const_value
|
||||
__tmhm_value__ = NUM_TMS + 1
|
||||
ENDC
|
||||
HM_VALUE EQU __tmhm_value__ - NUM_TMS
|
||||
IF HM_VALUE < 10
|
||||
MOVE_FOR_HM EQUS "HM0{d:HM_VALUE}_MOVE"
|
||||
ELSE
|
||||
MOVE_FOR_HM EQUS "HM{d:HM_VALUE}_MOVE"
|
||||
ENDC
|
||||
MOVE_FOR_HM = \1
|
||||
PURGE MOVE_FOR_HM
|
||||
PURGE HM_VALUE
|
||||
const HM_\1
|
||||
\1_TMNUM EQU __tmhm_value__
|
||||
__tmhm_value__ = __tmhm_value__ + 1
|
||||
ENDM
|
||||
|
||||
add_hm CUT ; $C4
|
||||
add_hm FLY ; $C5
|
||||
add_hm SURF ; $C6
|
||||
add_hm STRENGTH ; $C7
|
||||
add_hm FLASH ; $C8
|
||||
NUM_HMS EQU const_value - HM01
|
||||
|
||||
add_tm: MACRO
|
||||
; Defines three constants:
|
||||
; - TM_\1: the item id, starting at $C9
|
||||
; - \1_TMNUM: the learnable TM/HM flag, starting at 1
|
||||
; - TM##_MOVE: alias for the move id, equal to the value of \1
|
||||
; The first usage also defines TM01 as the first TM item id.
|
||||
IF !DEF(TM01)
|
||||
TM01 EQU const_value
|
||||
__tmhm_value__ = 1
|
||||
ENDC
|
||||
IF __tmhm_value__ < 10
|
||||
MOVE_FOR_TM EQUS "TM0{d:__tmhm_value__}_MOVE"
|
||||
ELSE
|
||||
MOVE_FOR_TM EQUS "TM{d:__tmhm_value__}_MOVE"
|
||||
ENDC
|
||||
MOVE_FOR_TM = \1
|
||||
PURGE MOVE_FOR_TM
|
||||
const TM_\1
|
||||
\1_TMNUM EQU __tmhm_value__
|
||||
__tmhm_value__ = __tmhm_value__ + 1
|
||||
ENDM
|
||||
|
||||
add_tm MEGA_PUNCH ; $C9
|
||||
add_tm RAZOR_WIND ; $CA
|
||||
add_tm SWORDS_DANCE ; $CB
|
||||
add_tm WHIRLWIND ; $CC
|
||||
add_tm MEGA_KICK ; $CD
|
||||
add_tm TOXIC ; $CE
|
||||
add_tm HORN_DRILL ; $CF
|
||||
add_tm BODY_SLAM ; $D0
|
||||
add_tm TAKE_DOWN ; $D1
|
||||
add_tm DOUBLE_EDGE ; $D2
|
||||
add_tm BUBBLEBEAM ; $D3
|
||||
add_tm WATER_GUN ; $D4
|
||||
add_tm ICE_BEAM ; $D5
|
||||
add_tm BLIZZARD ; $D6
|
||||
add_tm HYPER_BEAM ; $D7
|
||||
add_tm PAY_DAY ; $D8
|
||||
add_tm SUBMISSION ; $D9
|
||||
add_tm COUNTER ; $DA
|
||||
add_tm SEISMIC_TOSS ; $DB
|
||||
add_tm RAGE ; $DC
|
||||
add_tm MEGA_DRAIN ; $DD
|
||||
add_tm SOLARBEAM ; $DE
|
||||
add_tm DRAGON_RAGE ; $DF
|
||||
add_tm THUNDERBOLT ; $E0
|
||||
add_tm THUNDER ; $E1
|
||||
add_tm EARTHQUAKE ; $E2
|
||||
add_tm FISSURE ; $E3
|
||||
add_tm DIG ; $E4
|
||||
add_tm PSYCHIC_M ; $E5
|
||||
add_tm TELEPORT ; $E6
|
||||
add_tm MIMIC ; $E7
|
||||
add_tm DOUBLE_TEAM ; $E8
|
||||
add_tm REFLECT ; $E9
|
||||
add_tm BIDE ; $EA
|
||||
add_tm METRONOME ; $EB
|
||||
add_tm SELFDESTRUCT ; $EC
|
||||
add_tm EGG_BOMB ; $ED
|
||||
add_tm FIRE_BLAST ; $EE
|
||||
add_tm SWIFT ; $EF
|
||||
add_tm SKULL_BASH ; $F0
|
||||
add_tm SOFTBOILED ; $F1
|
||||
add_tm DREAM_EATER ; $F2
|
||||
add_tm SKY_ATTACK ; $F3
|
||||
add_tm REST ; $F4
|
||||
add_tm THUNDER_WAVE ; $F5
|
||||
add_tm PSYWAVE ; $F6
|
||||
add_tm EXPLOSION ; $F7
|
||||
add_tm ROCK_SLIDE ; $F8
|
||||
add_tm TRI_ATTACK ; $F9
|
||||
add_tm SUBSTITUTE ; $FA
|
||||
assert NUM_TMS == const_value - TM01, "NUM_TMS ({d:NUM_TMS}) does not match the number of add_tm definitions"
|
||||
|
||||
NUM_TM_HM EQU NUM_TMS + NUM_HMS
|
||||
|
||||
; 50 TMs + 5 HMs = 55 learnable TM/HM flags per Pokémon.
|
||||
; These fit in 7 bytes, with one unused bit left over.
|
||||
__tmhm_value__ = NUM_TM_HM + 1
|
||||
UNUSED_TMNUM EQU __tmhm_value__
|
||||
|
|
|
|||
40
constants/list_constants.asm
Executable file → Normal file
40
constants/list_constants.asm
Executable file → Normal file
|
|
@ -1,20 +1,24 @@
|
|||
; list menu ID's
|
||||
PCPOKEMONLISTMENU EQU $00 ; PC pokemon withdraw/deposit lists
|
||||
MOVESLISTMENU EQU $01 ; XXX where is this used?
|
||||
PRICEDITEMLISTMENU EQU $02 ; Pokemart buy menu / Pokemart buy/sell choose quantity menu
|
||||
ITEMLISTMENU EQU $03 ; Start menu Item menu / Pokemart sell menu
|
||||
SPECIALLISTMENU EQU $04 ; list of special "items" e.g. floor list in elevators / list of badges
|
||||
; list menu IDs
|
||||
const_def
|
||||
const PCPOKEMONLISTMENU ; $00 ; PC pokemon withdraw/deposit lists
|
||||
const MOVESLISTMENU ; $01 ; XXX where is this used?
|
||||
const PRICEDITEMLISTMENU ; $02 ; Pokemart buy menu / Pokemart buy/sell choose quantity menu
|
||||
const ITEMLISTMENU ; $03 ; Start menu Item menu / Pokemart sell menu
|
||||
const SPECIALLISTMENU ; $04 ; list of special "items" e.g. floor list in elevators / list of badges
|
||||
|
||||
MONSTER_NAME EQU 1
|
||||
MOVE_NAME EQU 2
|
||||
; ???_NAME EQU 3
|
||||
ITEM_NAME EQU 4
|
||||
PLAYEROT_NAME EQU 5
|
||||
ENEMYOT_NAME EQU 6
|
||||
TRAINER_NAME EQU 7
|
||||
; NamePointers indexes (see home/names2.asm)
|
||||
const_def 1
|
||||
const MONSTER_NAME ; 1
|
||||
const MOVE_NAME ; 2
|
||||
const UNUSED_NAME ; 3
|
||||
const ITEM_NAME ; 4
|
||||
const PLAYEROT_NAME ; 5
|
||||
const ENEMYOT_NAME ; 6
|
||||
const TRAINER_NAME ; 7
|
||||
|
||||
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
|
||||
const_def 1
|
||||
const INIT_ENEMYOT_LIST ; 1
|
||||
const INIT_BAG_ITEM_LIST ; 2
|
||||
const INIT_OTHER_ITEM_LIST ; 3
|
||||
const INIT_PLAYEROT_LIST ; 4
|
||||
const INIT_MON_LIST ; 5
|
||||
|
|
|
|||
|
|
@ -4,6 +4,16 @@ mapconst: MACRO
|
|||
\1_WIDTH EQU \3
|
||||
ENDM
|
||||
|
||||
; map ids
|
||||
; indexes for:
|
||||
; - MapHeaderBanks (see data/maps/map_header_banks.asm)
|
||||
; - MapHeaderPointers (see data/maps/map_header_pointers.asm)
|
||||
; - MapSongBanks (see data/maps/songs.asm)
|
||||
; - MapHSPointers (see data/maps/hide_show_data.asm)
|
||||
; - MapSpriteSets (see data/maps/sprite_sets.asm)
|
||||
; - ExternalMapEntries (see data/maps/town_map_entries.asm)
|
||||
; Each map also has associated data in maps.asm.
|
||||
; Order: towns/cities, then routes, then indoor/dungeon maps
|
||||
const_def
|
||||
mapconst PALLET_TOWN, 9, 10 ; $00
|
||||
mapconst VIRIDIAN_CITY, 18, 20 ; $01
|
||||
|
|
@ -16,7 +26,9 @@ ENDM
|
|||
mapconst CINNABAR_ISLAND, 9, 10 ; $08
|
||||
mapconst INDIGO_PLATEAU, 9, 10 ; $09
|
||||
mapconst SAFFRON_CITY, 18, 20 ; $0A
|
||||
NUM_CITY_MAPS EQU const_value
|
||||
mapconst UNUSED_MAP_0B, 0, 0 ; $0B
|
||||
FIRST_ROUTE_MAP EQU const_value
|
||||
mapconst ROUTE_1, 18, 10 ; $0C
|
||||
mapconst ROUTE_2, 36, 10 ; $0D
|
||||
mapconst ROUTE_3, 9, 35 ; $0E
|
||||
|
|
@ -42,6 +54,7 @@ ENDM
|
|||
mapconst ROUTE_23, 72, 10 ; $22
|
||||
mapconst ROUTE_24, 18, 10 ; $23
|
||||
mapconst ROUTE_25, 9, 30 ; $24
|
||||
FIRST_INDOOR_MAP EQU const_value
|
||||
mapconst REDS_HOUSE_1F, 4, 4 ; $25
|
||||
mapconst REDS_HOUSE_2F, 4, 4 ; $26
|
||||
mapconst BLUES_HOUSE, 4, 4 ; $27
|
||||
|
|
@ -253,3 +266,7 @@ ENDM
|
|||
mapconst LORELEIS_ROOM, 6, 5 ; $F5
|
||||
mapconst BRUNOS_ROOM, 6, 5 ; $F6
|
||||
mapconst AGATHAS_ROOM, 6, 5 ; $F7
|
||||
|
||||
; Indoor maps, such as houses, use this as the Map ID in their exit warps
|
||||
; This map ID takes the player back to the last outdoor map they were on, stored in wLastMap
|
||||
LAST_MAP EQU -1
|
||||
|
|
|
|||
16
constants/map_data_constants.asm
Normal file
16
constants/map_data_constants.asm
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
; width of east/west connections
|
||||
; height of north/south connections
|
||||
MAP_BORDER EQU 3
|
||||
|
||||
; connection directions
|
||||
const_def
|
||||
shift_const EAST ; 1
|
||||
shift_const WEST ; 2
|
||||
shift_const SOUTH ; 4
|
||||
shift_const NORTH ; 8
|
||||
|
||||
; flower and water tile animations
|
||||
const_def
|
||||
const TILEANIM_NONE ; 0
|
||||
const TILEANIM_WATER ; 1
|
||||
const TILEANIM_WATER_FLOWER ; 2
|
||||
57
constants/map_object_constants.asm
Normal file
57
constants/map_object_constants.asm
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
; spritestatedata1 struct members (see macros/wram.asm)
|
||||
const_def
|
||||
const SPRITESTATEDATA1_PICTUREID ; 0
|
||||
const SPRITESTATEDATA1_MOVEMENTSTATUS ; 1
|
||||
const SPRITESTATEDATA1_IMAGEINDEX ; 2
|
||||
const SPRITESTATEDATA1_YSTEPVECTOR ; 3
|
||||
const SPRITESTATEDATA1_YPIXELS ; 4
|
||||
const SPRITESTATEDATA1_XSTEPVECTOR ; 5
|
||||
const SPRITESTATEDATA1_XPIXELS ; 6
|
||||
const SPRITESTATEDATA1_INTRAANIMFRAMECOUNTER ; 7
|
||||
const SPRITESTATEDATA1_ANIMFRAMECOUNTER ; 8
|
||||
const SPRITESTATEDATA1_FACINGDIRECTION ; 9
|
||||
const SPRITESTATEDATA1_YADJUSTED ; a
|
||||
const SPRITESTATEDATA1_XADJUSTED ; b
|
||||
const SPRITESTATEDATA1_COLLISIONDATA ; c
|
||||
const SPRITESTATEDATA1_0D ; d
|
||||
const SPRITESTATEDATA1_0E ; e
|
||||
const SPRITESTATEDATA1_0F ; f
|
||||
SPRITESTATEDATA1_LENGTH EQU const_value
|
||||
|
||||
; spritestatedata2 struct members (see macros/wram.asm)
|
||||
const_def
|
||||
const SPRITESTATEDATA2_WALKANIMATIONCOUNTER ; 0
|
||||
const SPRITESTATEDATA2_01 ; 1
|
||||
const SPRITESTATEDATA2_YDISPLACEMENT ; 2
|
||||
const SPRITESTATEDATA2_XDISPLACEMENT ; 3
|
||||
const SPRITESTATEDATA2_MAPY ; 4
|
||||
const SPRITESTATEDATA2_MAPX ; 5
|
||||
const SPRITESTATEDATA2_MOVEMENTBYTE1 ; 6
|
||||
const SPRITESTATEDATA2_GRASSPRIORITY ; 7
|
||||
const SPRITESTATEDATA2_MOVEMENTDELAY ; 8
|
||||
const SPRITESTATEDATA2_ORIGFACINGDIRECTION ; 9
|
||||
const SPRITESTATEDATA2_0A ; a
|
||||
const SPRITESTATEDATA2_0B ; b
|
||||
const SPRITESTATEDATA2_0C ; c
|
||||
const SPRITESTATEDATA2_PICTUREID ; d
|
||||
const SPRITESTATEDATA2_IMAGEBASEOFFSET ; e
|
||||
const SPRITESTATEDATA2_0F ; f
|
||||
SPRITESTATEDATA2_LENGTH EQU const_value
|
||||
|
||||
; different kinds of people events
|
||||
ITEM EQU $80
|
||||
TRAINER EQU $40
|
||||
|
||||
WALK EQU $FE
|
||||
STAY EQU $FF
|
||||
|
||||
ANY_DIR EQU $00
|
||||
UP_DOWN EQU $01
|
||||
LEFT_RIGHT EQU $02
|
||||
DOWN EQU $D0
|
||||
UP EQU $D1
|
||||
LEFT EQU $D2
|
||||
RIGHT EQU $D3
|
||||
NONE EQU $FF
|
||||
|
||||
BOULDER_MOVEMENT_BYTE_2 EQU $10
|
||||
88
constants/menu_constants.asm
Normal file
88
constants/menu_constants.asm
Normal file
|
|
@ -0,0 +1,88 @@
|
|||
BAG_ITEM_CAPACITY EQU 20
|
||||
PC_ITEM_CAPACITY EQU 50
|
||||
|
||||
; text box IDs
|
||||
const_def 1
|
||||
const MESSAGE_BOX ; $01
|
||||
const_skip ; $02
|
||||
const MENU_TEMPLATE_03 ; $03 unused
|
||||
const FIELD_MOVE_MON_MENU ; $04
|
||||
const JP_MOCHIMONO_MENU_TEMPLATE ; $05
|
||||
const USE_TOSS_MENU_TEMPLATE ; $06
|
||||
const MENU_TEMPLATE_07 ; $07 unused
|
||||
const JP_SAVE_MESSAGE_MENU_TEMPLATE ; $08
|
||||
const JP_SPEED_OPTIONS_MENU_TEMPLATE ; $09
|
||||
const_skip ; $0a
|
||||
const BATTLE_MENU_TEMPLATE ; $0b
|
||||
const SWITCH_STATS_CANCEL_MENU_TEMPLATE ; $0c
|
||||
const LIST_MENU_BOX ; $0d
|
||||
const BUY_SELL_QUIT_MENU_TEMPLATE ; $0e
|
||||
const MONEY_BOX_TEMPLATE ; $0f
|
||||
const MENU_TEMPLATE_10 ; $10 unused
|
||||
const MON_SPRITE_POPUP ; $11
|
||||
const JP_AH_MENU_TEMPLATE ; $12
|
||||
const MONEY_BOX ; $13
|
||||
const TWO_OPTION_MENU ; $14
|
||||
const BUY_SELL_QUIT_MENU ; $15
|
||||
const_skip ; $16
|
||||
const_skip ; $17
|
||||
const_skip ; $18
|
||||
const_skip ; $19
|
||||
const JP_POKEDEX_MENU_TEMPLATE ; $1a
|
||||
const SAFARI_BATTLE_MENU_TEMPLATE ; $1b
|
||||
|
||||
; two option menu constants
|
||||
; TwoOptionMenuStrings indexes (see data/yes_no_menu_strings.asm)
|
||||
const_def
|
||||
const YES_NO_MENU ; 0
|
||||
const NORTH_WEST_MENU ; 1
|
||||
const SOUTH_EAST_MENU ; 2
|
||||
const WIDE_YES_NO_MENU ; 3
|
||||
const NORTH_EAST_MENU ; 4
|
||||
const TRADE_CANCEL_MENU ; 5
|
||||
const HEAL_CANCEL_MENU ; 6
|
||||
const NO_YES_MENU ; 7
|
||||
|
||||
; menu exit method constants for list menus and the buy/sell/quit menu
|
||||
CHOSE_MENU_ITEM EQU 1 ; pressed A
|
||||
CANCELLED_MENU EQU 2 ; pressed B
|
||||
|
||||
; menu exit method constants for two-option menus
|
||||
CHOSE_FIRST_ITEM EQU 1
|
||||
CHOSE_SECOND_ITEM EQU 2
|
||||
|
||||
; move mon constants
|
||||
const_def
|
||||
const BOX_TO_PARTY ; 0
|
||||
const PARTY_TO_BOX ; 1
|
||||
const DAYCARE_TO_PARTY ; 2
|
||||
const PARTY_TO_DAYCARE ; 3
|
||||
|
||||
; party menu types
|
||||
; PartyMenuMessagePointers indexes (see engine/menus/party_menu.asm)
|
||||
const_def
|
||||
const NORMAL_PARTY_MENU ; $00
|
||||
const USE_ITEM_PARTY_MENU ; $01
|
||||
const BATTLE_PARTY_MENU ; $02
|
||||
const TMHM_PARTY_MENU ; $03
|
||||
const SWAP_MONS_PARTY_MENU ; $04
|
||||
const EVO_STONE_PARTY_MENU ; $05
|
||||
; party menu message IDs
|
||||
; PartyMenuItemUseMessagePointers indexes (see engine/menus/party_menu.asm)
|
||||
const_next $F0
|
||||
FIRST_PARTY_MENU_TEXT_ID EQU const_value
|
||||
const ANTIDOTE_MSG ; $F0
|
||||
const BURN_HEAL_MSG ; $F1
|
||||
const ICE_HEAL_MSG ; $F2
|
||||
const AWAKENING_MSG ; $F3
|
||||
const PARALYZ_HEAL_MSG ; $F4
|
||||
const POTION_MSG ; $F5
|
||||
const FULL_HEAL_MSG ; $F6
|
||||
const REVIVE_MSG ; $F7
|
||||
const RARE_CANDY_MSG ; $F8
|
||||
|
||||
; naming screen types
|
||||
const_def
|
||||
const NAME_PLAYER_SCREEN ; 0
|
||||
const NAME_RIVAL_SCREEN ; 1
|
||||
const NAME_MON_SCREEN ; 2
|
||||
|
|
@ -1,208 +1,9 @@
|
|||
MAX_LEVEL EQU 100
|
||||
|
||||
NUM_MOVES EQU 4
|
||||
NUM_STATS EQU 5
|
||||
NUM_STAT_MODS EQU 8
|
||||
NUM_DVS EQU 2
|
||||
|
||||
PARTY_LENGTH EQU 6
|
||||
|
||||
MONS_PER_BOX EQU 20
|
||||
NUM_BOXES EQU 12
|
||||
|
||||
BAG_ITEM_CAPACITY EQU 20
|
||||
PC_ITEM_CAPACITY EQU 50
|
||||
|
||||
HOF_MON EQU $10
|
||||
HOF_TEAM EQU PARTY_LENGTH * HOF_MON
|
||||
HOF_TEAM_CAPACITY EQU 50
|
||||
|
||||
NAME_LENGTH EQU 11
|
||||
ITEM_NAME_LENGTH EQU 13
|
||||
|
||||
A_BUTTON EQU %00000001
|
||||
B_BUTTON EQU %00000010
|
||||
SELECT EQU %00000100
|
||||
START EQU %00001000
|
||||
D_RIGHT EQU %00010000
|
||||
D_LEFT EQU %00100000
|
||||
D_UP EQU %01000000
|
||||
D_DOWN EQU %10000000
|
||||
|
||||
const_value set 0
|
||||
const BIT_A_BUTTON
|
||||
const BIT_B_BUTTON
|
||||
const BIT_SELECT
|
||||
const BIT_START
|
||||
const BIT_D_RIGHT
|
||||
const BIT_D_LEFT
|
||||
const BIT_D_UP
|
||||
const BIT_D_DOWN
|
||||
|
||||
SCREEN_WIDTH EQU 20
|
||||
SCREEN_HEIGHT EQU 18
|
||||
|
||||
SCREEN_WIDTH_PIXELS EQU SCREEN_WIDTH * 8
|
||||
SCREEN_HEIGHT_PIXELS EQU SCREEN_HEIGHT * 8
|
||||
|
||||
BYTES_PER_TILE EQU 16
|
||||
|
||||
BG_MAP_WIDTH EQU 32
|
||||
BG_MAP_HEIGHT EQU 32
|
||||
|
||||
SPRITEBUFFERSIZE EQU 7*7 * 8 ; 7 * 7 (tiles) * 8 (bytes per tile)
|
||||
|
||||
NPC_MOVEMENT_DOWN EQU $00
|
||||
NPC_MOVEMENT_UP EQU $40
|
||||
NPC_MOVEMENT_LEFT EQU $80
|
||||
NPC_MOVEMENT_RIGHT EQU $C0
|
||||
|
||||
; text box IDs
|
||||
MESSAGE_BOX EQU $01
|
||||
FIELD_MOVE_MON_MENU EQU $04
|
||||
JP_MOCHIMONO_MENU_TEMPLATE EQU $05
|
||||
USE_TOSS_MENU_TEMPLATE EQU $06
|
||||
JP_SAVE_MESSAGE_MENU_TEMPLATE EQU $08
|
||||
JP_SPEED_OPTIONS_MENU_TEMPLATE EQU $09
|
||||
BATTLE_MENU_TEMPLATE EQU $0b
|
||||
SWITCH_STATS_CANCEL_MENU_TEMPLATE EQU $0c
|
||||
LIST_MENU_BOX EQU $0d
|
||||
BUY_SELL_QUIT_MENU_TEMPLATE EQU $0e
|
||||
MONEY_BOX_TEMPLATE EQU $0f
|
||||
MON_SPRITE_POPUP EQU $11
|
||||
JP_AH_MENU_TEMPLATE EQU $12
|
||||
MONEY_BOX EQU $13
|
||||
TWO_OPTION_MENU EQU $14
|
||||
BUY_SELL_QUIT_MENU EQU $15
|
||||
JP_POKEDEX_MENU_TEMPLATE EQU $1a
|
||||
SAFARI_BATTLE_MENU_TEMPLATE EQU $1b
|
||||
|
||||
; two option menu constants
|
||||
YES_NO_MENU EQU 0
|
||||
NORTH_WEST_MENU EQU 1
|
||||
SOUTH_EAST_MENU EQU 2
|
||||
WIDE_YES_NO_MENU EQU 3
|
||||
NORTH_EAST_MENU EQU 4
|
||||
TRADE_CANCEL_MENU EQU 5
|
||||
HEAL_CANCEL_MENU EQU 6
|
||||
NO_YES_MENU EQU 7
|
||||
|
||||
; menu exit method constants for list menus and the buy/sell/quit menu
|
||||
CHOSE_MENU_ITEM EQU 1 ; pressed A
|
||||
CANCELLED_MENU EQU 2 ; pressed B
|
||||
|
||||
; menu exit method constants for two-option menus
|
||||
CHOSE_FIRST_ITEM EQU 1
|
||||
CHOSE_SECOND_ITEM EQU 2
|
||||
|
||||
; move mon constants
|
||||
BOX_TO_PARTY EQU 0
|
||||
PARTY_TO_BOX EQU 1
|
||||
DAYCARE_TO_PARTY EQU 2
|
||||
PARTY_TO_DAYCARE EQU 3
|
||||
|
||||
; emotion bubbles
|
||||
EXCLAMATION_BUBBLE EQU 0
|
||||
QUESTION_BUBBLE EQU 1
|
||||
SMILE_BUBBLE EQU 2
|
||||
|
||||
; slot symbols
|
||||
SLOTS7 EQU $0200
|
||||
SLOTSBAR EQU $0604
|
||||
SLOTSCHERRY EQU $0A08
|
||||
SLOTSFISH EQU $0E0C
|
||||
SLOTSBIRD EQU $1210
|
||||
SLOTSMOUSE EQU $1614
|
||||
|
||||
; party menu types
|
||||
NORMAL_PARTY_MENU EQU 0
|
||||
USE_ITEM_PARTY_MENU EQU 1
|
||||
BATTLE_PARTY_MENU EQU 2
|
||||
TMHM_PARTY_MENU EQU 3
|
||||
SWAP_MONS_PARTY_MENU EQU 4
|
||||
EVO_STONE_PARTY_MENU EQU 5
|
||||
|
||||
; party menu message IDs
|
||||
ANTIDOTE_MSG EQU $F0
|
||||
BURN_HEAL_MSG EQU $F1
|
||||
ICE_HEAL_MSG EQU $F2
|
||||
AWAKENING_MSG EQU $F3
|
||||
PARALYZ_HEAL_MSG EQU $F4
|
||||
POTION_MSG EQU $F5
|
||||
FULL_HEAL_MSG EQU $F6
|
||||
REVIVE_MSG EQU $F7
|
||||
RARE_CANDY_MSG EQU $F8
|
||||
|
||||
; naming screen types
|
||||
NAME_PLAYER_SCREEN EQU 0
|
||||
NAME_RIVAL_SCREEN EQU 1
|
||||
NAME_MON_SCREEN EQU 2
|
||||
|
||||
; mon data locations
|
||||
; Note that some values are not supported by all functions that use these values.
|
||||
PLAYER_PARTY_DATA EQU 0
|
||||
ENEMY_PARTY_DATA EQU 1
|
||||
BOX_DATA EQU 2
|
||||
DAYCARE_DATA EQU 3
|
||||
BATTLE_MON_DATA EQU 4
|
||||
|
||||
; player direction constants
|
||||
|
||||
PLAYER_DIR_BIT_RIGHT EQU 0
|
||||
PLAYER_DIR_BIT_LEFT EQU 1
|
||||
PLAYER_DIR_BIT_DOWN EQU 2
|
||||
PLAYER_DIR_BIT_UP EQU 3
|
||||
|
||||
PLAYER_DIR_RIGHT EQU (1 << PLAYER_DIR_BIT_RIGHT)
|
||||
PLAYER_DIR_LEFT EQU (1 << PLAYER_DIR_BIT_LEFT)
|
||||
PLAYER_DIR_DOWN EQU (1 << PLAYER_DIR_BIT_DOWN)
|
||||
PLAYER_DIR_UP EQU (1 << PLAYER_DIR_BIT_UP)
|
||||
; Boolean checks
|
||||
FALSE EQU 0
|
||||
TRUE EQU 1
|
||||
|
||||
; flag operations
|
||||
|
||||
FLAG_RESET EQU 0
|
||||
FLAG_SET EQU 1
|
||||
FLAG_TEST EQU 2
|
||||
|
||||
; HP bar
|
||||
HP_BAR_GREEN EQU 0
|
||||
HP_BAR_YELLOW EQU 1
|
||||
HP_BAR_RED EQU 2
|
||||
|
||||
; D733 flags
|
||||
BIT_TEST_BATTLE EQU 0
|
||||
|
||||
; battle type constants
|
||||
BATTLE_TYPE_NORMAL EQU 0
|
||||
BATTLE_TYPE_OLD_MAN EQU 1
|
||||
BATTLE_TYPE_SAFARI EQU 2
|
||||
|
||||
; serial
|
||||
|
||||
ESTABLISH_CONNECTION_WITH_INTERNAL_CLOCK EQU $01
|
||||
ESTABLISH_CONNECTION_WITH_EXTERNAL_CLOCK EQU $02
|
||||
|
||||
USING_EXTERNAL_CLOCK EQU $01
|
||||
USING_INTERNAL_CLOCK EQU $02
|
||||
CONNECTION_NOT_ESTABLISHED EQU $ff
|
||||
|
||||
; signals the start of an array of bytes transferred over the link cable
|
||||
SERIAL_PREAMBLE_BYTE EQU $FD
|
||||
|
||||
; this byte is used when there is no data to send
|
||||
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
|
||||
|
||||
LINK_STATE_NONE EQU $00 ; not using link
|
||||
LINK_STATE_IN_CABLE_CLUB EQU $01 ; in a cable club room (Colosseum or Trade Centre)
|
||||
LINK_STATE_START_TRADE EQU $02 ; pre-trade selection screen initialisation
|
||||
LINK_STATE_START_BATTLE EQU $03 ; pre-battle initialisation
|
||||
LINK_STATE_BATTLING EQU $04 ; in a link battle
|
||||
LINK_STATE_RESET EQU $05 ; reset game (unused)
|
||||
LINK_STATE_TRADING EQU $32 ; in a link trade
|
||||
|
||||
LINKBATTLE_RUN EQU $F
|
||||
LINKBATTLE_STRUGGLE EQU $E
|
||||
LINKBATTLE_NO_ACTION EQU $D
|
||||
const_def
|
||||
const FLAG_RESET ; 0
|
||||
const FLAG_SET ; 1
|
||||
const FLAG_TEST ; 2
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
; subanimations
|
||||
|
||||
const_value = $D8
|
||||
|
||||
; special effects, prefaced with "SE" for "Special Effect"
|
||||
; special effects that are part of move animations
|
||||
; SpecialEffectPointers associates them with effect routines (see data/battle_anims/special_effect_pointers.asm)
|
||||
const_def $C0
|
||||
FIRST_SE_ID EQU const_value
|
||||
const_skip $18
|
||||
const SE_WAVY_SCREEN ; $D8 used in Psywave/Night Shade/Psychic etc.
|
||||
const SE_SUBSTITUTE_MON ; $D9 used in Substitute (turns the pokemon into a mini sprite)
|
||||
const SE_SHAKE_BACK_AND_FORTH ; $DA used in Double Team
|
||||
|
|
@ -42,3 +42,417 @@ const_value = $D8
|
|||
const SE_RESET_SCREEN_PALETTE ; $FC used in Leer/Thunderpunch/etc.
|
||||
const SE_DARK_SCREEN_PALETTE ; $FD used in Hyper Beam/Thunderpunch/etc.
|
||||
const SE_DARK_SCREEN_FLASH ; $FE used in Cut/Take Down/etc.
|
||||
|
||||
; subanimations that are part of move animations
|
||||
; SubanimationPointers indexes (see data/battle_anims/subanimations.asm)
|
||||
const_def
|
||||
const SUBANIM_00
|
||||
const SUBANIM_01
|
||||
const SUBANIM_02
|
||||
const SUBANIM_03
|
||||
const SUBANIM_04
|
||||
const SUBANIM_05
|
||||
const SUBANIM_06
|
||||
const SUBANIM_07
|
||||
const SUBANIM_08
|
||||
const SUBANIM_09
|
||||
const SUBANIM_0A
|
||||
const SUBANIM_0B
|
||||
const SUBANIM_0C
|
||||
const SUBANIM_0D
|
||||
const SUBANIM_0E
|
||||
const SUBANIM_0F
|
||||
const SUBANIM_10
|
||||
const SUBANIM_11
|
||||
const SUBANIM_12
|
||||
const SUBANIM_13
|
||||
const SUBANIM_14
|
||||
const SUBANIM_15
|
||||
const SUBANIM_16
|
||||
const SUBANIM_17
|
||||
const SUBANIM_18
|
||||
const SUBANIM_19
|
||||
const SUBANIM_1A
|
||||
const SUBANIM_1B
|
||||
const SUBANIM_1C
|
||||
const SUBANIM_1D
|
||||
const SUBANIM_1E
|
||||
const SUBANIM_1F
|
||||
const SUBANIM_20
|
||||
const SUBANIM_21
|
||||
const SUBANIM_22
|
||||
const SUBANIM_23
|
||||
const SUBANIM_24
|
||||
const SUBANIM_25
|
||||
const SUBANIM_26
|
||||
const SUBANIM_27
|
||||
const SUBANIM_28
|
||||
const SUBANIM_29
|
||||
const SUBANIM_2A
|
||||
const SUBANIM_2B
|
||||
const SUBANIM_2C
|
||||
const SUBANIM_2D
|
||||
const SUBANIM_2E
|
||||
const SUBANIM_2F
|
||||
const SUBANIM_30
|
||||
const SUBANIM_31
|
||||
const SUBANIM_32
|
||||
const SUBANIM_33
|
||||
const SUBANIM_34
|
||||
const SUBANIM_35
|
||||
const SUBANIM_36
|
||||
const SUBANIM_37
|
||||
const SUBANIM_38
|
||||
const SUBANIM_39
|
||||
const SUBANIM_3A
|
||||
const SUBANIM_3B
|
||||
const SUBANIM_3C
|
||||
const SUBANIM_3D
|
||||
const SUBANIM_3E
|
||||
const SUBANIM_3F
|
||||
const SUBANIM_40
|
||||
const SUBANIM_41
|
||||
const SUBANIM_42
|
||||
const SUBANIM_43
|
||||
const SUBANIM_44
|
||||
const SUBANIM_45
|
||||
const SUBANIM_46
|
||||
const SUBANIM_47
|
||||
const SUBANIM_48
|
||||
const SUBANIM_49
|
||||
const SUBANIM_4A
|
||||
const SUBANIM_4B
|
||||
const SUBANIM_4C
|
||||
const SUBANIM_4D
|
||||
const SUBANIM_4E
|
||||
const SUBANIM_4F
|
||||
const SUBANIM_50
|
||||
const SUBANIM_51
|
||||
const SUBANIM_52
|
||||
const SUBANIM_53
|
||||
const SUBANIM_54
|
||||
const SUBANIM_55
|
||||
|
||||
; types of subanimations
|
||||
const_def
|
||||
const SUBANIMTYPE_NORMAL
|
||||
const SUBANIMTYPE_HVFLIP
|
||||
const SUBANIMTYPE_HFLIP
|
||||
const SUBANIMTYPE_COORDFLIP
|
||||
const SUBANIMTYPE_REVERSE
|
||||
const SUBANIMTYPE_ENEMY
|
||||
|
||||
; frame blocks that are part of subanimations
|
||||
; FrameBlockPointers indexes (see data/battle_anims/frame_blocks.asm)
|
||||
const_def
|
||||
const FRAMEBLOCK_00
|
||||
const FRAMEBLOCK_01
|
||||
const FRAMEBLOCK_02
|
||||
const FRAMEBLOCK_03
|
||||
const FRAMEBLOCK_04
|
||||
const FRAMEBLOCK_05
|
||||
const FRAMEBLOCK_06
|
||||
const FRAMEBLOCK_07
|
||||
const FRAMEBLOCK_08
|
||||
const FRAMEBLOCK_09
|
||||
const FRAMEBLOCK_0A
|
||||
const FRAMEBLOCK_0B
|
||||
const FRAMEBLOCK_0C
|
||||
const FRAMEBLOCK_0D
|
||||
const FRAMEBLOCK_0E
|
||||
const FRAMEBLOCK_0F
|
||||
const FRAMEBLOCK_10
|
||||
const FRAMEBLOCK_11
|
||||
const FRAMEBLOCK_12
|
||||
const FRAMEBLOCK_13
|
||||
const FRAMEBLOCK_14
|
||||
const FRAMEBLOCK_15
|
||||
const FRAMEBLOCK_16
|
||||
const FRAMEBLOCK_17
|
||||
const FRAMEBLOCK_18
|
||||
const FRAMEBLOCK_19
|
||||
const FRAMEBLOCK_1A
|
||||
const FRAMEBLOCK_1B
|
||||
const FRAMEBLOCK_1C
|
||||
const FRAMEBLOCK_1D
|
||||
const FRAMEBLOCK_1E
|
||||
const FRAMEBLOCK_1F
|
||||
const FRAMEBLOCK_20
|
||||
const FRAMEBLOCK_21
|
||||
const FRAMEBLOCK_22
|
||||
const FRAMEBLOCK_23
|
||||
const FRAMEBLOCK_24
|
||||
const FRAMEBLOCK_25
|
||||
const FRAMEBLOCK_26
|
||||
const FRAMEBLOCK_27
|
||||
const FRAMEBLOCK_28
|
||||
const FRAMEBLOCK_29
|
||||
const FRAMEBLOCK_2A
|
||||
const FRAMEBLOCK_2B
|
||||
const FRAMEBLOCK_2C
|
||||
const FRAMEBLOCK_2D
|
||||
const FRAMEBLOCK_2E
|
||||
const FRAMEBLOCK_2F
|
||||
const FRAMEBLOCK_30
|
||||
const FRAMEBLOCK_31
|
||||
const FRAMEBLOCK_32
|
||||
const FRAMEBLOCK_33
|
||||
const FRAMEBLOCK_34
|
||||
const FRAMEBLOCK_35
|
||||
const FRAMEBLOCK_36
|
||||
const FRAMEBLOCK_37
|
||||
const FRAMEBLOCK_38
|
||||
const FRAMEBLOCK_39
|
||||
const FRAMEBLOCK_3A
|
||||
const FRAMEBLOCK_3B
|
||||
const FRAMEBLOCK_3C
|
||||
const FRAMEBLOCK_3D
|
||||
const FRAMEBLOCK_3E
|
||||
const FRAMEBLOCK_3F
|
||||
const FRAMEBLOCK_40
|
||||
const FRAMEBLOCK_41
|
||||
const FRAMEBLOCK_42
|
||||
const FRAMEBLOCK_43
|
||||
const FRAMEBLOCK_44
|
||||
const FRAMEBLOCK_45
|
||||
const FRAMEBLOCK_46
|
||||
const FRAMEBLOCK_47
|
||||
const FRAMEBLOCK_SMALL_BLACK_CIRCLE
|
||||
const FRAMEBLOCK_LARGE_BLACK_CIRCLE
|
||||
const FRAMEBLOCK_4A
|
||||
const FRAMEBLOCK_4B
|
||||
const FRAMEBLOCK_4C
|
||||
const FRAMEBLOCK_4D
|
||||
const FRAMEBLOCK_4E
|
||||
const FRAMEBLOCK_4F
|
||||
const FRAMEBLOCK_50
|
||||
const FRAMEBLOCK_51
|
||||
const FRAMEBLOCK_52
|
||||
const FRAMEBLOCK_53
|
||||
const FRAMEBLOCK_54
|
||||
const FRAMEBLOCK_55
|
||||
const FRAMEBLOCK_56
|
||||
const FRAMEBLOCK_57
|
||||
const FRAMEBLOCK_58
|
||||
const FRAMEBLOCK_59
|
||||
const FRAMEBLOCK_5A
|
||||
const FRAMEBLOCK_5B
|
||||
const FRAMEBLOCK_5C
|
||||
const FRAMEBLOCK_5D
|
||||
const FRAMEBLOCK_5E
|
||||
const FRAMEBLOCK_5F
|
||||
const FRAMEBLOCK_60
|
||||
const FRAMEBLOCK_61
|
||||
const FRAMEBLOCK_62
|
||||
const FRAMEBLOCK_63
|
||||
const FRAMEBLOCK_64
|
||||
const FRAMEBLOCK_65
|
||||
const FRAMEBLOCK_66
|
||||
const FRAMEBLOCK_67
|
||||
const FRAMEBLOCK_68
|
||||
const FRAMEBLOCK_69
|
||||
const FRAMEBLOCK_6A
|
||||
const FRAMEBLOCK_6B
|
||||
const FRAMEBLOCK_6C
|
||||
const FRAMEBLOCK_6D
|
||||
const FRAMEBLOCK_6E
|
||||
const FRAMEBLOCK_6F
|
||||
const FRAMEBLOCK_70
|
||||
const FRAMEBLOCK_71
|
||||
const FRAMEBLOCK_72
|
||||
const FRAMEBLOCK_73
|
||||
const FRAMEBLOCK_74
|
||||
const FRAMEBLOCK_75
|
||||
const FRAMEBLOCK_76
|
||||
const FRAMEBLOCK_77
|
||||
const FRAMEBLOCK_78
|
||||
const FRAMEBLOCK_79
|
||||
|
||||
; base coordinates that are part of subanimations
|
||||
; FrameBlockBaseCoords indexes (see data/battle_anims/base_coords.asm)
|
||||
const_def
|
||||
const BASECOORD_00
|
||||
const BASECOORD_01
|
||||
const BASECOORD_02
|
||||
const BASECOORD_03
|
||||
const BASECOORD_04
|
||||
const BASECOORD_05
|
||||
const BASECOORD_06
|
||||
const BASECOORD_07
|
||||
const BASECOORD_08
|
||||
const BASECOORD_09
|
||||
const BASECOORD_0A
|
||||
const BASECOORD_0B
|
||||
const BASECOORD_0C
|
||||
const BASECOORD_0D
|
||||
const BASECOORD_0E
|
||||
const BASECOORD_0F
|
||||
const BASECOORD_10
|
||||
const BASECOORD_11
|
||||
const BASECOORD_12
|
||||
const BASECOORD_13
|
||||
const BASECOORD_14
|
||||
const BASECOORD_15
|
||||
const BASECOORD_16
|
||||
const BASECOORD_17
|
||||
const BASECOORD_18
|
||||
const BASECOORD_19
|
||||
const BASECOORD_1A
|
||||
const BASECOORD_1B
|
||||
const BASECOORD_1C
|
||||
const BASECOORD_1D
|
||||
const BASECOORD_1E
|
||||
const BASECOORD_1F
|
||||
const BASECOORD_20
|
||||
const BASECOORD_21
|
||||
const BASECOORD_22
|
||||
const BASECOORD_23
|
||||
const BASECOORD_24
|
||||
const BASECOORD_25
|
||||
const BASECOORD_26
|
||||
const BASECOORD_27
|
||||
const BASECOORD_28
|
||||
const BASECOORD_29
|
||||
const BASECOORD_2A
|
||||
const BASECOORD_2B
|
||||
const BASECOORD_2C
|
||||
const BASECOORD_2D
|
||||
const BASECOORD_2E
|
||||
const BASECOORD_2F
|
||||
const BASECOORD_30
|
||||
const BASECOORD_31
|
||||
const BASECOORD_32
|
||||
const BASECOORD_33
|
||||
const BASECOORD_34
|
||||
const BASECOORD_35
|
||||
const BASECOORD_36
|
||||
const BASECOORD_37
|
||||
const BASECOORD_38
|
||||
const BASECOORD_39
|
||||
const BASECOORD_3A
|
||||
const BASECOORD_3B
|
||||
const BASECOORD_3C
|
||||
const BASECOORD_3D
|
||||
const BASECOORD_3E
|
||||
const BASECOORD_3F
|
||||
const BASECOORD_40
|
||||
const BASECOORD_41
|
||||
const BASECOORD_42
|
||||
const BASECOORD_43
|
||||
const BASECOORD_44
|
||||
const BASECOORD_45
|
||||
const BASECOORD_46
|
||||
const BASECOORD_47
|
||||
const BASECOORD_48
|
||||
const BASECOORD_49
|
||||
const BASECOORD_4A
|
||||
const BASECOORD_4B
|
||||
const BASECOORD_4C
|
||||
const BASECOORD_4D
|
||||
const BASECOORD_4E
|
||||
const BASECOORD_4F
|
||||
const BASECOORD_50
|
||||
const BASECOORD_51
|
||||
const BASECOORD_52
|
||||
const BASECOORD_53
|
||||
const BASECOORD_54
|
||||
const BASECOORD_55
|
||||
const BASECOORD_56
|
||||
const BASECOORD_57
|
||||
const BASECOORD_58
|
||||
const BASECOORD_59
|
||||
const BASECOORD_5A
|
||||
const BASECOORD_5B
|
||||
const BASECOORD_5C
|
||||
const BASECOORD_5D
|
||||
const BASECOORD_5E
|
||||
const BASECOORD_5F
|
||||
const BASECOORD_60
|
||||
const BASECOORD_61
|
||||
const BASECOORD_62
|
||||
const BASECOORD_63
|
||||
const BASECOORD_64
|
||||
const BASECOORD_65
|
||||
const BASECOORD_66
|
||||
const BASECOORD_67
|
||||
const BASECOORD_68
|
||||
const BASECOORD_69
|
||||
const BASECOORD_6A
|
||||
const BASECOORD_6B
|
||||
const BASECOORD_6C
|
||||
const BASECOORD_6D
|
||||
const BASECOORD_6E
|
||||
const BASECOORD_6F
|
||||
const BASECOORD_70
|
||||
const BASECOORD_71
|
||||
const BASECOORD_72
|
||||
const BASECOORD_73
|
||||
const BASECOORD_74
|
||||
const BASECOORD_75
|
||||
const BASECOORD_76
|
||||
const BASECOORD_77
|
||||
const BASECOORD_78
|
||||
const BASECOORD_79
|
||||
const BASECOORD_7A
|
||||
const BASECOORD_7B
|
||||
const BASECOORD_7C
|
||||
const BASECOORD_7D
|
||||
const BASECOORD_7E
|
||||
const BASECOORD_7F
|
||||
const BASECOORD_80
|
||||
const BASECOORD_81
|
||||
const BASECOORD_82
|
||||
const BASECOORD_83
|
||||
const BASECOORD_84
|
||||
const BASECOORD_85
|
||||
const BASECOORD_86
|
||||
const BASECOORD_87
|
||||
const BASECOORD_88
|
||||
const BASECOORD_89
|
||||
const BASECOORD_8A
|
||||
const BASECOORD_8B
|
||||
const BASECOORD_8C
|
||||
const BASECOORD_8D
|
||||
const BASECOORD_8E
|
||||
const BASECOORD_8F
|
||||
const BASECOORD_90
|
||||
const BASECOORD_91
|
||||
const BASECOORD_92
|
||||
const BASECOORD_93
|
||||
const BASECOORD_94
|
||||
const BASECOORD_95
|
||||
const BASECOORD_96
|
||||
const BASECOORD_97
|
||||
const BASECOORD_98
|
||||
const BASECOORD_99
|
||||
const BASECOORD_9A
|
||||
const BASECOORD_9B
|
||||
const BASECOORD_9C
|
||||
const BASECOORD_9D
|
||||
const BASECOORD_9E
|
||||
const BASECOORD_9F
|
||||
const BASECOORD_A0
|
||||
const BASECOORD_A1
|
||||
const BASECOORD_A2
|
||||
const BASECOORD_A3
|
||||
const BASECOORD_A4
|
||||
const BASECOORD_A5
|
||||
const BASECOORD_A6
|
||||
const BASECOORD_A7
|
||||
const BASECOORD_A8
|
||||
const BASECOORD_A9
|
||||
const BASECOORD_AA
|
||||
const BASECOORD_AB
|
||||
const BASECOORD_AC
|
||||
const BASECOORD_AD
|
||||
const BASECOORD_AE
|
||||
const BASECOORD_AF
|
||||
const BASECOORD_B0
|
||||
|
||||
; frame block modes that are part of subanimations
|
||||
const_def
|
||||
const FRAMEBLOCKMODE_00
|
||||
const FRAMEBLOCKMODE_01
|
||||
const FRAMEBLOCKMODE_02
|
||||
const FRAMEBLOCKMODE_03
|
||||
const FRAMEBLOCKMODE_04
|
||||
|
|
|
|||
|
|
@ -1,5 +1,11 @@
|
|||
const_value = 1
|
||||
|
||||
; move ids
|
||||
; indexes for:
|
||||
; - Moves (see data/moves/moves.asm)
|
||||
; - MoveNames (see data/moves/names.asm)
|
||||
; - AttackAnimationPointers (see data/moves/animations.asm)
|
||||
; - MoveSoundTable (see data/moves/sfx.asm)
|
||||
const_def
|
||||
const NO_MOVE ; 00
|
||||
const POUND ; 01
|
||||
const KARATE_CHOP ; 02
|
||||
const DOUBLESLAP ; 03
|
||||
|
|
@ -165,9 +171,9 @@ const_value = 1
|
|||
const SLASH ; a3
|
||||
const SUBSTITUTE ; a4
|
||||
|
||||
NUM_ATTACKS EQU const_value + -1
|
||||
NUM_ATTACKS EQU const_value - 1
|
||||
|
||||
const STRUGGLE
|
||||
const STRUGGLE ; a5
|
||||
|
||||
; Moves do double duty as animation identifiers.
|
||||
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
; tentative move effect constants
|
||||
; {stat}_(UP|DOWN)(1|2) means that the move raises the user's (or lowers the target's) corresponding stat modifier by 1 (or 2) stages
|
||||
; {status condition}_side_effect means that the move has a side chance of causing that condition
|
||||
; {status condition}_effect means that the move causes the status condition every time it hits the target
|
||||
const_value = 0
|
||||
; {status condition}_SIDE_EFFECT means that the move has a side chance of causing that condition
|
||||
; {status condition}_EFFECT means that the move causes the status condition every time it hits the target
|
||||
|
||||
; MoveEffectPointerTable indexes (see data/moves/effects_pointers.asm)
|
||||
const_def
|
||||
const NO_ADDITIONAL_EFFECT ; $00
|
||||
const UNUSED_EFFECT_01 ; $01
|
||||
const EFFECT_01 ; $01 unused
|
||||
const POISON_SIDE_EFFECT1 ; $02
|
||||
const DRAIN_HP_EFFECT ; $03
|
||||
const BURN_SIDE_EFFECT1 ; $04
|
||||
|
|
@ -34,12 +34,12 @@ const_value = 0
|
|||
const THRASH_PETAL_DANCE_EFFECT ; $1B
|
||||
const SWITCH_AND_TELEPORT_EFFECT ; $1C
|
||||
const TWO_TO_FIVE_ATTACKS_EFFECT ; $1D
|
||||
const UNUSED_EFFECT_1E ; $1E
|
||||
const EFFECT_1E ; $1E unused
|
||||
const FLINCH_SIDE_EFFECT1 ; $1F
|
||||
const SLEEP_EFFECT ; $20
|
||||
const POISON_SIDE_EFFECT2 ; $21
|
||||
const BURN_SIDE_EFFECT2 ; $22
|
||||
const UNUSED_EFFECT_23 ; $23
|
||||
const_skip ; $23
|
||||
const PARALYZE_SIDE_EFFECT2 ; $24
|
||||
const FLINCH_SIDE_EFFECT2 ; $25
|
||||
const OHKO_EFFECT ; $26 moves like Horn Drill
|
||||
|
|
@ -76,13 +76,13 @@ const_value = 0
|
|||
const DEFENSE_DOWN_SIDE_EFFECT ; $45
|
||||
const SPEED_DOWN_SIDE_EFFECT ; $46
|
||||
const SPECIAL_DOWN_SIDE_EFFECT ; $47
|
||||
const UNUSED_EFFECT_48 ; $48
|
||||
const UNUSED_EFFECT_49 ; $49
|
||||
const UNUSED_EFFECT_4A ; $4A
|
||||
const UNUSED_EFFECT_4B ; $4B
|
||||
const_skip ; $48
|
||||
const_skip ; $49
|
||||
const_skip ; $4A
|
||||
const_skip ; $4B
|
||||
const CONFUSION_SIDE_EFFECT ; $4C
|
||||
const TWINEEDLE_EFFECT ; $4D
|
||||
const UNUSED_EFFECT_4E ; $4E
|
||||
const_skip ; $4E
|
||||
const SUBSTITUTE_EFFECT ; $4F
|
||||
const HYPER_BEAM_EFFECT ; $50
|
||||
const RAGE_EFFECT ; $51
|
||||
|
|
@ -91,7 +91,3 @@ const_value = 0
|
|||
const LEECH_SEED_EFFECT ; $54
|
||||
const SPLASH_EFFECT ; $55
|
||||
const DISABLE_EFFECT ; $56
|
||||
|
||||
; fixed damage constants
|
||||
SONICBOOM_DAMAGE EQU 20
|
||||
DRAGON_RAGE_DAMAGE EQU 40
|
||||
|
|
|
|||
|
|
@ -1,43 +1,5 @@
|
|||
; HW sound channel register base addresses
|
||||
HW_CH1_BASE EQU (rNR10 % $100)
|
||||
HW_CH2_BASE EQU ((rNR21 % $100) - 1)
|
||||
HW_CH3_BASE EQU (rNR30 % $100)
|
||||
HW_CH4_BASE EQU ((rNR41 % $100) - 1)
|
||||
|
||||
; HW sound channel enable bit masks
|
||||
HW_CH1_ENABLE_MASK EQU %00010001
|
||||
HW_CH2_ENABLE_MASK EQU %00100010
|
||||
HW_CH3_ENABLE_MASK EQU %01000100
|
||||
HW_CH4_ENABLE_MASK EQU %10001000
|
||||
|
||||
; HW sound channel disable bit masks
|
||||
HW_CH1_DISABLE_MASK EQU (~HW_CH1_ENABLE_MASK & $ff)
|
||||
HW_CH2_DISABLE_MASK EQU (~HW_CH2_ENABLE_MASK & $ff)
|
||||
HW_CH3_DISABLE_MASK EQU (~HW_CH3_ENABLE_MASK & $ff)
|
||||
HW_CH4_DISABLE_MASK EQU (~HW_CH4_ENABLE_MASK & $ff)
|
||||
|
||||
REG_DUTY_SOUND_LEN EQU 1
|
||||
REG_VOLUME_ENVELOPE EQU 2
|
||||
REG_FREQUENCY_LO EQU 3
|
||||
|
||||
MAX_SFX_ID EQU $B9
|
||||
|
||||
CRY_SFX_START EQU $14
|
||||
CRY_SFX_END EQU $86
|
||||
|
||||
; wChannelFlags1 constants
|
||||
BIT_PERFECT_PITCH EQU 0 ; controlled by toggleperfectpitch command
|
||||
BIT_CHANNEL_CALL EQU 1 ; if in channel call
|
||||
BIT_NOISE_OR_SFX EQU 2 ; if channel is the music noise channel or an SFX channel
|
||||
BIT_VIBRATO_DIRECTION EQU 3 ; if the pitch is above or below normal (cycles)
|
||||
BIT_PITCH_BEND_ON EQU 4 ; if pitch bend is active
|
||||
BIT_PITCH_BEND_DECREASING EQU 5 ; if the pitch bend frequency is decreasing (instead of increasing)
|
||||
BIT_ROTATE_DUTY EQU 6 ; if rotating duty
|
||||
|
||||
; wChannelFlags2 constant (only has one flag)
|
||||
BIT_EXECUTE_MUSIC EQU 0 ; if in execute music
|
||||
|
||||
; Song ids are calculated by address to save space.
|
||||
; SFX_Headers_(1|2|3) indexes (see audio/headers/*.asm)
|
||||
|
||||
;music_const: MACRO
|
||||
;\1 EQUS "RB(\2)"
|
||||
|
|
@ -94,6 +56,45 @@ const_value = 1
|
|||
|
||||
const NUM_SONGS
|
||||
|
||||
const_def
|
||||
const SFX_CRY_00
|
||||
const SFX_CRY_01
|
||||
const SFX_CRY_02
|
||||
const SFX_CRY_03
|
||||
const SFX_CRY_04
|
||||
const SFX_CRY_05
|
||||
const SFX_CRY_06
|
||||
const SFX_CRY_07
|
||||
const SFX_CRY_08
|
||||
const SFX_CRY_09
|
||||
const SFX_CRY_0A
|
||||
const SFX_CRY_0B
|
||||
const SFX_CRY_0C
|
||||
const SFX_CRY_0D
|
||||
const SFX_CRY_0E
|
||||
const SFX_CRY_0F
|
||||
const SFX_CRY_10
|
||||
const SFX_CRY_11
|
||||
const SFX_CRY_12
|
||||
const SFX_CRY_13
|
||||
const SFX_CRY_14
|
||||
const SFX_CRY_15
|
||||
const SFX_CRY_16
|
||||
const SFX_CRY_17
|
||||
const SFX_CRY_18
|
||||
const SFX_CRY_19
|
||||
const SFX_CRY_1A
|
||||
const SFX_CRY_1B
|
||||
const SFX_CRY_1C
|
||||
const SFX_CRY_1D
|
||||
const SFX_CRY_1E
|
||||
const SFX_CRY_1F
|
||||
const SFX_CRY_20
|
||||
const SFX_CRY_21
|
||||
const SFX_CRY_22
|
||||
const SFX_CRY_23
|
||||
const SFX_CRY_24
|
||||
const SFX_CRY_25
|
||||
|
||||
const_value = 1
|
||||
; AUDIO_1 AUDIO_3
|
||||
|
|
@ -216,3 +217,5 @@ const_value = 1
|
|||
const GSSFX_NOT_VERY_EFFECTIVE
|
||||
const GSSFX_DAMAGE
|
||||
const GSSFX_SUPER_EFFECTIVE
|
||||
|
||||
SFX_STOP_ALL_MUSIC EQU $ff
|
||||
|
|
|
|||
7
constants/oam_constants.asm
Executable file → Normal file
7
constants/oam_constants.asm
Executable file → Normal file
|
|
@ -1,8 +1,6 @@
|
|||
; OAM flags used by this game
|
||||
OAMFLAG_ENDOFDATA EQU %00000001 ; pseudo OAM flag, only used by game logic
|
||||
OAMFLAG_CANBEMASKED EQU %00000010 ; pseudo OAM flag, only used by game logic
|
||||
OAMFLAG_VFLIPPED EQU %00100000 ; OAM flag flips the sprite vertically.
|
||||
; Used for making left facing sprites face right and to alternate between left and right foot animation when walking up or down
|
||||
|
||||
; OAM attribute flags
|
||||
OAM_PALETTE EQU %111
|
||||
|
|
@ -13,6 +11,7 @@ OAM_Y_FLIP EQU 6
|
|||
OAM_PRIORITY EQU 7 ; 0: OBJ above BG, 1: OBJ behind BG (colors 1-3)
|
||||
|
||||
; OAM attribute masks
|
||||
OAM_HFLIP EQU 1 << OAM_X_FLIP ; horizontal flip
|
||||
OAM_VFLIP EQU 1 << OAM_Y_FLIP ; vertical flip
|
||||
OAM_OBP1 EQU 1 << OAM_OBP_NUM ; OBJ palette 1
|
||||
OAM_HFLIP EQU 1 << OAM_X_FLIP ; horizontal flip
|
||||
OAM_VFLIP EQU 1 << OAM_Y_FLIP ; vertical flip
|
||||
OAM_BEHIND_BG EQU 1 << OAM_PRIORITY ; behind bg (except color 0)
|
||||
|
|
|
|||
51
constants/palette_constants.asm
Executable file → Normal file
51
constants/palette_constants.asm
Executable file → Normal file
|
|
@ -1,29 +1,38 @@
|
|||
; monochrome palette color ids
|
||||
const_def
|
||||
const WHITE
|
||||
const LIGHT_GRAY
|
||||
const DARK_GRAY
|
||||
const BLACK
|
||||
const SHADE_WHITE ; %00
|
||||
const SHADE_LIGHT ; %01
|
||||
const SHADE_DARK ; %10
|
||||
const SHADE_BLACK ; %11
|
||||
NUM_PAL_COLORS EQU const_value
|
||||
|
||||
SET_PAL_BATTLE_BLACK EQU $00
|
||||
SET_PAL_BATTLE EQU $01
|
||||
SET_PAL_TOWN_MAP EQU $02
|
||||
SET_PAL_STATUS_SCREEN EQU $03
|
||||
SET_PAL_POKEDEX EQU $04
|
||||
SET_PAL_SLOTS EQU $05
|
||||
SET_PAL_TITLE_SCREEN EQU $06
|
||||
SET_PAL_NIDORINO_INTRO EQU $07
|
||||
SET_PAL_GENERIC EQU $08
|
||||
SET_PAL_OVERWORLD EQU $09
|
||||
SET_PAL_PARTY_MENU EQU $0A
|
||||
SET_PAL_POKEMON_WHOLE_SCREEN EQU $0B
|
||||
SET_PAL_GAME_FREAK_INTRO EQU $0C
|
||||
SET_PAL_TRAINER_CARD EQU $0D
|
||||
UPDATE_PARTY_MENU_BLK_PACKET EQU $FC
|
||||
PAL_COLOR_SIZE EQU 2
|
||||
PALETTE_SIZE EQU NUM_PAL_COLORS * PAL_COLOR_SIZE
|
||||
|
||||
; super game boy palettes
|
||||
const_value = 0
|
||||
; pal/blk packets
|
||||
; SetPalFunctions indexes (see engine/gfx/palettes.asm)
|
||||
const_def
|
||||
const SET_PAL_BATTLE_BLACK ; $00
|
||||
const SET_PAL_BATTLE ; $01
|
||||
const SET_PAL_TOWN_MAP ; $02
|
||||
const SET_PAL_STATUS_SCREEN ; $03
|
||||
const SET_PAL_POKEDEX ; $04
|
||||
const SET_PAL_SLOTS ; $05
|
||||
const SET_PAL_TITLE_SCREEN ; $06
|
||||
const SET_PAL_NIDORINO_INTRO ; $07
|
||||
const SET_PAL_GENERIC ; $08
|
||||
const SET_PAL_OVERWORLD ; $09
|
||||
const SET_PAL_PARTY_MENU ; $0A
|
||||
const SET_PAL_POKEMON_WHOLE_SCREEN ; $0B
|
||||
const SET_PAL_GAME_FREAK_INTRO ; $0C
|
||||
const SET_PAL_TRAINER_CARD ; $0D
|
||||
|
||||
SET_PAL_PARTY_MENU_HP_BARS EQU $fc
|
||||
SET_PAL_DEFAULT EQU $ff
|
||||
|
||||
; sgb palettes
|
||||
; SuperPalettes indexes (see data/sgb/sgb_palettes.asm)
|
||||
const_def
|
||||
const PAL_ROUTE ; $00
|
||||
const PAL_PALLET ; $01
|
||||
const PAL_VIRIDIAN ; $02
|
||||
|
|
|
|||
|
|
@ -1,5 +1,9 @@
|
|||
const_value = 1
|
||||
|
||||
; pokedex ids
|
||||
; indexes for:
|
||||
; - BaseStats (see data/pokemon/base_stats.asm)
|
||||
; - MonPartyData (see data/pokemon/menu_icons.asm)
|
||||
; - MonsterPalettes (see data/pokemon/palettes.asm)
|
||||
const_def 1
|
||||
const DEX_BULBASAUR ; 1
|
||||
const DEX_IVYSAUR ; 2
|
||||
const DEX_VENUSAUR ; 3
|
||||
|
|
@ -152,4 +156,4 @@ const_value = 1
|
|||
const DEX_MEWTWO ; 150
|
||||
const DEX_MEW ; 151
|
||||
|
||||
NUM_POKEMON EQU 151
|
||||
NUM_POKEMON EQU const_value - 1
|
||||
|
|
|
|||
|
|
@ -1,192 +1,209 @@
|
|||
const_value = 1
|
||||
; pokemon ids
|
||||
; indexes for:
|
||||
; - MonsterNames (see data/pokemon/names.asm)
|
||||
; - EvosMovesPointerTable (see data/pokemon/evos_moves.asm)
|
||||
; - CryData (see data/pokemon/cries.asm)
|
||||
; - PokedexOrder (see data/pokemon/dex_order.asm)
|
||||
; - PokedexEntryPointers (see data/pokemon/dex_entries.asm)
|
||||
const_def
|
||||
const NO_MON ; $00
|
||||
const RHYDON ; $01
|
||||
const KANGASKHAN ; $02
|
||||
const NIDORAN_M ; $03
|
||||
const CLEFAIRY ; $04
|
||||
const SPEAROW ; $05
|
||||
const VOLTORB ; $06
|
||||
const NIDOKING ; $07
|
||||
const SLOWBRO ; $08
|
||||
const IVYSAUR ; $09
|
||||
const EXEGGUTOR ; $0A
|
||||
const LICKITUNG ; $0B
|
||||
const EXEGGCUTE ; $0C
|
||||
const GRIMER ; $0D
|
||||
const GENGAR ; $0E
|
||||
const NIDORAN_F ; $0F
|
||||
const NIDOQUEEN ; $10
|
||||
const CUBONE ; $11
|
||||
const RHYHORN ; $12
|
||||
const LAPRAS ; $13
|
||||
const ARCANINE ; $14
|
||||
const MEW ; $15
|
||||
const GYARADOS ; $16
|
||||
const SHELLDER ; $17
|
||||
const TENTACOOL ; $18
|
||||
const GASTLY ; $19
|
||||
const SCYTHER ; $1A
|
||||
const STARYU ; $1B
|
||||
const BLASTOISE ; $1C
|
||||
const PINSIR ; $1D
|
||||
const TANGELA ; $1E
|
||||
const_skip ; $1F
|
||||
const_skip ; $20
|
||||
const GROWLITHE ; $21
|
||||
const ONIX ; $22
|
||||
const FEAROW ; $23
|
||||
const PIDGEY ; $24
|
||||
const SLOWPOKE ; $25
|
||||
const KADABRA ; $26
|
||||
const GRAVELER ; $27
|
||||
const CHANSEY ; $28
|
||||
const MACHOKE ; $29
|
||||
const MR_MIME ; $2A
|
||||
const HITMONLEE ; $2B
|
||||
const HITMONCHAN ; $2C
|
||||
const ARBOK ; $2D
|
||||
const PARASECT ; $2E
|
||||
const PSYDUCK ; $2F
|
||||
const DROWZEE ; $30
|
||||
const GOLEM ; $31
|
||||
const_skip ; $32
|
||||
const MAGMAR ; $33
|
||||
const_skip ; $34
|
||||
const ELECTABUZZ ; $35
|
||||
const MAGNETON ; $36
|
||||
const KOFFING ; $37
|
||||
const_skip ; $38
|
||||
const MANKEY ; $39
|
||||
const SEEL ; $3A
|
||||
const DIGLETT ; $3B
|
||||
const TAUROS ; $3C
|
||||
const_skip ; $3D
|
||||
const_skip ; $3E
|
||||
const_skip ; $3F
|
||||
const FARFETCHD ; $40
|
||||
const VENONAT ; $41
|
||||
const DRAGONITE ; $42
|
||||
const_skip ; $43
|
||||
const_skip ; $44
|
||||
const_skip ; $45
|
||||
const DODUO ; $46
|
||||
const POLIWAG ; $47
|
||||
const JYNX ; $48
|
||||
const MOLTRES ; $49
|
||||
const ARTICUNO ; $4A
|
||||
const ZAPDOS ; $4B
|
||||
const DITTO ; $4C
|
||||
const MEOWTH ; $4D
|
||||
const KRABBY ; $4E
|
||||
const_skip ; $4F
|
||||
const_skip ; $50
|
||||
const_skip ; $51
|
||||
const VULPIX ; $52
|
||||
const NINETALES ; $53
|
||||
const PIKACHU ; $54
|
||||
const RAICHU ; $55
|
||||
const_skip ; $56
|
||||
const_skip ; $57
|
||||
const DRATINI ; $58
|
||||
const DRAGONAIR ; $59
|
||||
const KABUTO ; $5A
|
||||
const KABUTOPS ; $5B
|
||||
const HORSEA ; $5C
|
||||
const SEADRA ; $5D
|
||||
const_skip ; $5E
|
||||
const_skip ; $5F
|
||||
const SANDSHREW ; $60
|
||||
const SANDSLASH ; $61
|
||||
const OMANYTE ; $62
|
||||
const OMASTAR ; $63
|
||||
const JIGGLYPUFF ; $64
|
||||
const WIGGLYTUFF ; $65
|
||||
const EEVEE ; $66
|
||||
const FLAREON ; $67
|
||||
const JOLTEON ; $68
|
||||
const VAPOREON ; $69
|
||||
const MACHOP ; $6A
|
||||
const ZUBAT ; $6B
|
||||
const EKANS ; $6C
|
||||
const PARAS ; $6D
|
||||
const POLIWHIRL ; $6E
|
||||
const POLIWRATH ; $6F
|
||||
const WEEDLE ; $70
|
||||
const KAKUNA ; $71
|
||||
const BEEDRILL ; $72
|
||||
const_skip ; $73
|
||||
const DODRIO ; $74
|
||||
const PRIMEAPE ; $75
|
||||
const DUGTRIO ; $76
|
||||
const VENOMOTH ; $77
|
||||
const DEWGONG ; $78
|
||||
const_skip ; $79
|
||||
const_skip ; $7A
|
||||
const CATERPIE ; $7B
|
||||
const METAPOD ; $7C
|
||||
const BUTTERFREE ; $7D
|
||||
const MACHAMP ; $7E
|
||||
const_skip ; $7F
|
||||
const GOLDUCK ; $80
|
||||
const HYPNO ; $81
|
||||
const GOLBAT ; $82
|
||||
const MEWTWO ; $83
|
||||
const SNORLAX ; $84
|
||||
const MAGIKARP ; $85
|
||||
const_skip ; $86
|
||||
const_skip ; $87
|
||||
const MUK ; $88
|
||||
const_skip ; $89
|
||||
const KINGLER ; $8A
|
||||
const CLOYSTER ; $8B
|
||||
const_skip ; $8C
|
||||
const ELECTRODE ; $8D
|
||||
const CLEFABLE ; $8E
|
||||
const WEEZING ; $8F
|
||||
const PERSIAN ; $90
|
||||
const MAROWAK ; $91
|
||||
const_skip ; $92
|
||||
const HAUNTER ; $93
|
||||
const ABRA ; $94
|
||||
const ALAKAZAM ; $95
|
||||
const PIDGEOTTO ; $96
|
||||
const PIDGEOT ; $97
|
||||
const STARMIE ; $98
|
||||
const BULBASAUR ; $99
|
||||
const VENUSAUR ; $9A
|
||||
const TENTACRUEL ; $9B
|
||||
const_skip ; $9C
|
||||
const GOLDEEN ; $9D
|
||||
const SEAKING ; $9E
|
||||
const_skip ; $9F
|
||||
const_skip ; $A0
|
||||
const_skip ; $A1
|
||||
const_skip ; $A2
|
||||
const PONYTA ; $A3
|
||||
const RAPIDASH ; $A4
|
||||
const RATTATA ; $A5
|
||||
const RATICATE ; $A6
|
||||
const NIDORINO ; $A7
|
||||
const NIDORINA ; $A8
|
||||
const GEODUDE ; $A9
|
||||
const PORYGON ; $AA
|
||||
const AERODACTYL ; $AB
|
||||
const_skip ; $AC
|
||||
const MAGNEMITE ; $AD
|
||||
const_skip ; $AE
|
||||
const_skip ; $AF
|
||||
const CHARMANDER ; $B0
|
||||
const SQUIRTLE ; $B1
|
||||
const CHARMELEON ; $B2
|
||||
const WARTORTLE ; $B3
|
||||
const CHARIZARD ; $B4
|
||||
const_skip ; $B5
|
||||
const FOSSIL_KABUTOPS ; $B6
|
||||
const FOSSIL_AERODACTYL ; $B7
|
||||
const MON_GHOST ; $B8
|
||||
const ODDISH ; $B9
|
||||
const GLOOM ; $BA
|
||||
const VILEPLUME ; $BB
|
||||
const BELLSPROUT ; $BC
|
||||
const WEEPINBELL ; $BD
|
||||
const VICTREEBEL ; $BE
|
||||
|
||||
const RHYDON ; $01
|
||||
const KANGASKHAN ; $02
|
||||
const NIDORAN_M ; $03
|
||||
const CLEFAIRY ; $04
|
||||
const SPEAROW ; $05
|
||||
const VOLTORB ; $06
|
||||
const NIDOKING ; $07
|
||||
const SLOWBRO ; $08
|
||||
const IVYSAUR ; $09
|
||||
const EXEGGUTOR ; $0A
|
||||
const LICKITUNG ; $0B
|
||||
const EXEGGCUTE ; $0C
|
||||
const GRIMER ; $0D
|
||||
const GENGAR ; $0E
|
||||
const NIDORAN_F ; $0F
|
||||
const NIDOQUEEN ; $10
|
||||
const CUBONE ; $11
|
||||
const RHYHORN ; $12
|
||||
const LAPRAS ; $13
|
||||
const ARCANINE ; $14
|
||||
const MEW ; $15
|
||||
const GYARADOS ; $16
|
||||
const SHELLDER ; $17
|
||||
const TENTACOOL ; $18
|
||||
const GASTLY ; $19
|
||||
const SCYTHER ; $1A
|
||||
const STARYU ; $1B
|
||||
const BLASTOISE ; $1C
|
||||
const PINSIR ; $1D
|
||||
const TANGELA ; $1E
|
||||
const MISSINGNO_1F ; $1F
|
||||
const MISSINGNO_20 ; $20
|
||||
const GROWLITHE ; $21
|
||||
const ONIX ; $22
|
||||
const FEAROW ; $23
|
||||
const PIDGEY ; $24
|
||||
const SLOWPOKE ; $25
|
||||
const KADABRA ; $26
|
||||
const GRAVELER ; $27
|
||||
const CHANSEY ; $28
|
||||
const MACHOKE ; $29
|
||||
const MR_MIME ; $2A
|
||||
const HITMONLEE ; $2B
|
||||
const HITMONCHAN ; $2C
|
||||
const ARBOK ; $2D
|
||||
const PARASECT ; $2E
|
||||
const PSYDUCK ; $2F
|
||||
const DROWZEE ; $30
|
||||
const GOLEM ; $31
|
||||
const MISSINGNO_32 ; $32
|
||||
const MAGMAR ; $33
|
||||
const MISSINGNO_34 ; $34
|
||||
const ELECTABUZZ ; $35
|
||||
const MAGNETON ; $36
|
||||
const KOFFING ; $37
|
||||
const MISSINGNO_38 ; $38
|
||||
const MANKEY ; $39
|
||||
const SEEL ; $3A
|
||||
const DIGLETT ; $3B
|
||||
const TAUROS ; $3C
|
||||
const MISSINGNO_3D ; $3D
|
||||
const MISSINGNO_3E ; $3E
|
||||
const MISSINGNO_3F ; $3F
|
||||
const FARFETCHD ; $40
|
||||
const VENONAT ; $41
|
||||
const DRAGONITE ; $42
|
||||
const MISSINGNO_43 ; $43
|
||||
const MISSINGNO_44 ; $44
|
||||
const MISSINGNO_45 ; $45
|
||||
const DODUO ; $46
|
||||
const POLIWAG ; $47
|
||||
const JYNX ; $48
|
||||
const MOLTRES ; $49
|
||||
const ARTICUNO ; $4A
|
||||
const ZAPDOS ; $4B
|
||||
const DITTO ; $4C
|
||||
const MEOWTH ; $4D
|
||||
const KRABBY ; $4E
|
||||
const MISSINGNO_4F ; $4F
|
||||
const MISSINGNO_50 ; $50
|
||||
const MISSINGNO_51 ; $51
|
||||
const VULPIX ; $52
|
||||
const NINETALES ; $53
|
||||
const PIKACHU ; $54
|
||||
const RAICHU ; $55
|
||||
const MISSINGNO_56 ; $56
|
||||
const MISSINGNO_57 ; $57
|
||||
const DRATINI ; $58
|
||||
const DRAGONAIR ; $59
|
||||
const KABUTO ; $5A
|
||||
const KABUTOPS ; $5B
|
||||
const HORSEA ; $5C
|
||||
const SEADRA ; $5D
|
||||
const MISSINGNO_5E ; $5E
|
||||
const MISSINGNO_5F ; $5F
|
||||
const SANDSHREW ; $60
|
||||
const SANDSLASH ; $61
|
||||
const OMANYTE ; $62
|
||||
const OMASTAR ; $63
|
||||
const JIGGLYPUFF ; $64
|
||||
const WIGGLYTUFF ; $65
|
||||
const EEVEE ; $66
|
||||
const FLAREON ; $67
|
||||
const JOLTEON ; $68
|
||||
const VAPOREON ; $69
|
||||
const MACHOP ; $6A
|
||||
const ZUBAT ; $6B
|
||||
const EKANS ; $6C
|
||||
const PARAS ; $6D
|
||||
const POLIWHIRL ; $6E
|
||||
const POLIWRATH ; $6F
|
||||
const WEEDLE ; $70
|
||||
const KAKUNA ; $71
|
||||
const BEEDRILL ; $72
|
||||
const MISSINGNO_73 ; $73
|
||||
const DODRIO ; $74
|
||||
const PRIMEAPE ; $75
|
||||
const DUGTRIO ; $76
|
||||
const VENOMOTH ; $77
|
||||
const DEWGONG ; $78
|
||||
const MISSINGNO_79 ; $79
|
||||
const MISSINGNO_7A ; $7A
|
||||
const CATERPIE ; $7B
|
||||
const METAPOD ; $7C
|
||||
const BUTTERFREE ; $7D
|
||||
const MACHAMP ; $7E
|
||||
const MISSINGNO_7F ; $7F
|
||||
const GOLDUCK ; $80
|
||||
const HYPNO ; $81
|
||||
const GOLBAT ; $82
|
||||
const MEWTWO ; $83
|
||||
const SNORLAX ; $84
|
||||
const MAGIKARP ; $85
|
||||
const MISSINGNO_86 ; $86
|
||||
const MISSINGNO_87 ; $87
|
||||
const MUK ; $88
|
||||
const MISSINGNO_89 ; $89
|
||||
const KINGLER ; $8A
|
||||
const CLOYSTER ; $8B
|
||||
const MISSINGNO_8C ; $8C
|
||||
const ELECTRODE ; $8D
|
||||
const CLEFABLE ; $8E
|
||||
const WEEZING ; $8F
|
||||
const PERSIAN ; $90
|
||||
const MAROWAK ; $91
|
||||
const MISSINGNO_92 ; $92
|
||||
const HAUNTER ; $93
|
||||
const ABRA ; $94
|
||||
const ALAKAZAM ; $95
|
||||
const PIDGEOTTO ; $96
|
||||
const PIDGEOT ; $97
|
||||
const STARMIE ; $98
|
||||
const BULBASAUR ; $99
|
||||
const VENUSAUR ; $9A
|
||||
const TENTACRUEL ; $9B
|
||||
const MISSINGNO_9C ; $9C
|
||||
const GOLDEEN ; $9D
|
||||
const SEAKING ; $9E
|
||||
const MISSINGNO_9F ; $9F
|
||||
const MISSINGNO_A0 ; $A0
|
||||
const MISSINGNO_A1 ; $A1
|
||||
const MISSINGNO_A2 ; $A2
|
||||
const PONYTA ; $A3
|
||||
const RAPIDASH ; $A4
|
||||
const RATTATA ; $A5
|
||||
const RATICATE ; $A6
|
||||
const NIDORINO ; $A7
|
||||
const NIDORINA ; $A8
|
||||
const GEODUDE ; $A9
|
||||
const PORYGON ; $AA
|
||||
const AERODACTYL ; $AB
|
||||
const MISSINGNO_AC ; $AC
|
||||
const MAGNEMITE ; $AD
|
||||
const MISSINGNO_AE ; $AE
|
||||
const MISSINGNO_AF ; $AF
|
||||
const CHARMANDER ; $B0
|
||||
const SQUIRTLE ; $B1
|
||||
const CHARMELEON ; $B2
|
||||
const WARTORTLE ; $B3
|
||||
const CHARIZARD ; $B4
|
||||
const MISSINGNO_B5 ; $B5
|
||||
const FOSSIL_KABUTOPS ; $B6
|
||||
const FOSSIL_AERODACTYL ; $B7
|
||||
const MON_GHOST ; $B8
|
||||
const ODDISH ; $B9
|
||||
const GLOOM ; $BA
|
||||
const VILEPLUME ; $BB
|
||||
const BELLSPROUT ; $BC
|
||||
const WEEPINBELL ; $BD
|
||||
const VICTREEBEL ; $BE
|
||||
NUM_POKEMON_INDEXES EQU const_value - 1
|
||||
|
||||
; starters
|
||||
STARTER1 EQU CHARMANDER
|
||||
STARTER2 EQU SQUIRTLE
|
||||
STARTER3 EQU BULBASAUR
|
||||
|
||||
; ghost Marowak in Pokémon Tower
|
||||
RESTLESS_SOUL EQU MAROWAK
|
||||
|
|
|
|||
41
constants/pokemon_data_constants.asm
Normal file
41
constants/pokemon_data_constants.asm
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
PARTY_LENGTH EQU 6
|
||||
|
||||
MONS_PER_BOX EQU 20
|
||||
NUM_BOXES EQU 12
|
||||
|
||||
HOF_MON EQU $10
|
||||
HOF_TEAM EQU PARTY_LENGTH * HOF_MON
|
||||
HOF_TEAM_CAPACITY EQU 50
|
||||
|
||||
|
||||
; mon data locations
|
||||
; Note that some values are not supported by all functions that use these values.
|
||||
const_def
|
||||
const PLAYER_PARTY_DATA ; 0
|
||||
const ENEMY_PARTY_DATA ; 1
|
||||
const BOX_DATA ; 2
|
||||
const DAYCARE_DATA ; 3
|
||||
const BATTLE_MON_DATA ; 4
|
||||
|
||||
|
||||
; See data/pokemon/evos_moves.asm
|
||||
|
||||
; Evolution types
|
||||
const_def 1
|
||||
const EV_LEVEL ; 1
|
||||
const EV_ITEM ; 2
|
||||
const EV_TRADE ; 3
|
||||
|
||||
MAX_EVOLUTIONS EQU 3
|
||||
EVOLUTION_SIZE EQU 4
|
||||
|
||||
|
||||
; wMonHGrowthRate values
|
||||
; GrowthRateTable indexes (see data/growth_rates.asm)
|
||||
const_def
|
||||
const GROWTH_MEDIUM_FAST
|
||||
const GROWTH_SLIGHTLY_FAST
|
||||
const GROWTH_SLIGHTLY_SLOW
|
||||
const GROWTH_MEDIUM_SLOW
|
||||
const GROWTH_FAST
|
||||
const GROWTH_SLOW
|
||||
58
constants/script_constants.asm
Normal file
58
constants/script_constants.asm
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
; EmotionBubblesPointerTable indexes (see engine/overworld/emotion_bubbles.asm)
|
||||
const_def
|
||||
const EXCLAMATION_BUBBLE ; 0
|
||||
const QUESTION_BUBBLE ; 1
|
||||
const SMILE_BUBBLE ; 2
|
||||
|
||||
; slot symbols
|
||||
SLOTS7 EQU $0200
|
||||
SLOTSBAR EQU $0604
|
||||
SLOTSCHERRY EQU $0A08
|
||||
SLOTSFISH EQU $0E0C
|
||||
SLOTSBIRD EQU $1210
|
||||
SLOTSMOUSE EQU $1614
|
||||
|
||||
; StartSlotMachine dialogs
|
||||
SLOTS_OUTOFORDER EQU $fd
|
||||
SLOTS_OUTTOLUNCH EQU $fe
|
||||
SLOTS_SOMEONESKEYS EQU $ff
|
||||
|
||||
; in game trades
|
||||
; TradeMons indexes (see data/events/trades.asm)
|
||||
const_def
|
||||
const TRADE_FOR_TERRY
|
||||
const TRADE_FOR_MARCEL
|
||||
const TRADE_FOR_CHIKUCHIKU
|
||||
const TRADE_FOR_SAILOR
|
||||
const TRADE_FOR_DUX
|
||||
const TRADE_FOR_MARC
|
||||
const TRADE_FOR_LOLA
|
||||
const TRADE_FOR_DORIS
|
||||
const TRADE_FOR_CRINKLES
|
||||
const TRADE_FOR_SPOT
|
||||
|
||||
; in game trade dialog sets
|
||||
; InGameTradeTextPointers indexes (see engine/events/in_game_trades.asm)
|
||||
const_def
|
||||
const TRADE_DIALOGSET_CASUAL
|
||||
const TRADE_DIALOGSET_POLITE
|
||||
const TRADE_DIALOGSET_HAPPY
|
||||
|
||||
; badges
|
||||
; wObtainedBadges and wBeatGymFlags bits
|
||||
const_def
|
||||
const BIT_BOULDERBADGE ; 0
|
||||
const BIT_CASCADEBADGE ; 1
|
||||
const BIT_THUNDERBADGE ; 2
|
||||
const BIT_RAINBOWBADGE ; 3
|
||||
const BIT_SOULBADGE ; 4
|
||||
const BIT_MARSHBADGE ; 5
|
||||
const BIT_VOLCANOBADGE ; 6
|
||||
const BIT_EARTHBADGE ; 7
|
||||
NUM_BADGES EQU const_value
|
||||
|
||||
; OaksAideScript results
|
||||
OAKS_AIDE_BAG_FULL EQU $00
|
||||
OAKS_AIDE_GOT_ITEM EQU $01
|
||||
OAKS_AIDE_NOT_ENOUGH_MONS EQU $80
|
||||
OAKS_AIDE_REFUSED EQU $ff
|
||||
27
constants/serial_constants.asm
Normal file
27
constants/serial_constants.asm
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
ESTABLISH_CONNECTION_WITH_INTERNAL_CLOCK EQU $01
|
||||
ESTABLISH_CONNECTION_WITH_EXTERNAL_CLOCK EQU $02
|
||||
|
||||
USING_EXTERNAL_CLOCK EQU $01
|
||||
USING_INTERNAL_CLOCK EQU $02
|
||||
CONNECTION_NOT_ESTABLISHED EQU $ff
|
||||
|
||||
; signals the start of an array of bytes transferred over the link cable
|
||||
SERIAL_PREAMBLE_BYTE EQU $FD
|
||||
|
||||
; this byte is used when there is no data to send
|
||||
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
|
||||
|
||||
LINK_STATE_NONE EQU $00 ; not using link
|
||||
LINK_STATE_IN_CABLE_CLUB EQU $01 ; in a cable club room (Colosseum or Trade Centre)
|
||||
LINK_STATE_START_TRADE EQU $02 ; pre-trade selection screen initialisation
|
||||
LINK_STATE_START_BATTLE EQU $03 ; pre-battle initialisation
|
||||
LINK_STATE_BATTLING EQU $04 ; in a link battle
|
||||
LINK_STATE_RESET EQU $05 ; reset game (unused)
|
||||
LINK_STATE_TRADING EQU $32 ; in a link trade
|
||||
|
||||
LINKBATTLE_RUN EQU $F
|
||||
LINKBATTLE_STRUGGLE EQU $E
|
||||
LINKBATTLE_NO_ACTION EQU $D
|
||||
176
constants/sprite_constants.asm
Executable file → Normal file
176
constants/sprite_constants.asm
Executable file → Normal file
|
|
@ -1,101 +1,77 @@
|
|||
; pokemon's overworld sprites
|
||||
const_value = 0
|
||||
|
||||
const SPRITE_MON ; $0
|
||||
const SPRITE_BALL_M ; $1
|
||||
const SPRITE_HELIX ; $2
|
||||
const SPRITE_FAIRY ; $3
|
||||
const SPRITE_BIRD_M ; $4
|
||||
const SPRITE_WATER ; $5
|
||||
const SPRITE_BUG ; $6
|
||||
const SPRITE_GRASS ; $7
|
||||
const SPRITE_SNAKE ; $8
|
||||
const SPRITE_QUADRUPED ; $9
|
||||
|
||||
; overworld sprites
|
||||
const_value = 1
|
||||
|
||||
const SPRITE_RED ; $01
|
||||
const SPRITE_BLUE ; $02
|
||||
const SPRITE_OAK ; $03
|
||||
const SPRITE_BUG_CATCHER ; $04
|
||||
const SPRITE_SLOWBRO ; $05
|
||||
const SPRITE_LASS ; $06
|
||||
const SPRITE_BLACK_HAIR_BOY_1 ; $07
|
||||
const SPRITE_LITTLE_GIRL ; $08
|
||||
const SPRITE_BIRD ; $09
|
||||
const SPRITE_FAT_BALD_GUY ; $0a
|
||||
const SPRITE_GAMBLER ; $0b
|
||||
const SPRITE_BLACK_HAIR_BOY_2 ; $0c
|
||||
const SPRITE_GIRL ; $0d
|
||||
const SPRITE_HIKER ; $0e
|
||||
const SPRITE_FOULARD_WOMAN ; $0f
|
||||
const SPRITE_GENTLEMAN ; $10
|
||||
const SPRITE_DAISY ; $11
|
||||
const SPRITE_BIKER ; $12
|
||||
const SPRITE_SAILOR ; $13
|
||||
const SPRITE_COOK ; $14
|
||||
const SPRITE_BIKE_SHOP_GUY ; $15
|
||||
const SPRITE_MR_FUJI ; $16
|
||||
const SPRITE_GIOVANNI ; $17
|
||||
const SPRITE_ROCKET ; $18
|
||||
const SPRITE_MEDIUM ; $19
|
||||
const SPRITE_WAITER ; $1a
|
||||
const SPRITE_ERIKA ; $1b
|
||||
const SPRITE_MOM_GEISHA ; $1c
|
||||
const SPRITE_BRUNETTE_GIRL ; $1d
|
||||
const SPRITE_LANCE ; $1e
|
||||
const SPRITE_OAK_SCIENTIST_AIDE ; $1f
|
||||
const SPRITE_OAK_AIDE ; $20
|
||||
const SPRITE_ROCKER ; $21
|
||||
const SPRITE_SWIMMER ; $22
|
||||
const SPRITE_WHITE_PLAYER ; $23
|
||||
const SPRITE_GYM_HELPER ; $24
|
||||
const SPRITE_OLD_PERSON ; $25
|
||||
const SPRITE_MART_GUY ; $26
|
||||
const SPRITE_FISHER ; $27
|
||||
const SPRITE_OLD_MEDIUM_WOMAN ; $28
|
||||
const SPRITE_NURSE ; $29
|
||||
const SPRITE_CABLE_CLUB_WOMAN ; $2a
|
||||
const SPRITE_MR_MASTERBALL ; $2b
|
||||
const SPRITE_LAPRAS_GIVER ; $2c
|
||||
const SPRITE_WARDEN ; $2d
|
||||
const SPRITE_SS_CAPTAIN ; $2e
|
||||
const SPRITE_FISHER2 ; $2f
|
||||
const SPRITE_BLACKBELT ; $30
|
||||
const SPRITE_GUARD ; $31
|
||||
const SPRITE_COP_GUARD ; $32
|
||||
const SPRITE_MOM ; $33
|
||||
const SPRITE_BALDING_GUY ; $34
|
||||
const SPRITE_YOUNG_BOY ; $35
|
||||
const SPRITE_GAMEBOY_KID ; $36
|
||||
const SPRITE_GAMEBOY_KID_COPY ; $37
|
||||
const SPRITE_CLEFAIRY ; $38
|
||||
const SPRITE_AGATHA ; $39
|
||||
const SPRITE_BRUNO ; $3a
|
||||
const SPRITE_LORELEI ; $3b
|
||||
const SPRITE_SEEL ; $3c
|
||||
const SPRITE_BALL ; $3d
|
||||
const SPRITE_OMANYTE ; $3e
|
||||
const SPRITE_BOULDER ; $3f
|
||||
const SPRITE_PAPER_SHEET ; $40
|
||||
const SPRITE_BOOK_MAP_DEX ; $41
|
||||
const SPRITE_CLIPBOARD ; $42
|
||||
const SPRITE_SNORLAX ; $43
|
||||
const SPRITE_OLD_AMBER_COPY ; $44
|
||||
const SPRITE_OLD_AMBER ; $45
|
||||
const SPRITE_LYING_OLD_MAN_UNUSED_1 ; $46
|
||||
const SPRITE_LYING_OLD_MAN_UNUSED_2 ; $47
|
||||
const SPRITE_LYING_OLD_MAN ; $48
|
||||
|
||||
; different kinds of people events
|
||||
ITEM EQU $80
|
||||
TRAINER EQU $40
|
||||
|
||||
BOULDER_MOVEMENT_BYTE_2 EQU $10
|
||||
|
||||
; sprite facing directions
|
||||
SPRITE_FACING_DOWN EQU $00
|
||||
SPRITE_FACING_UP EQU $04
|
||||
SPRITE_FACING_LEFT EQU $08
|
||||
SPRITE_FACING_RIGHT EQU $0C
|
||||
; SpriteSheetPointerTable indexes (see data/sprites/sprites.asm)
|
||||
const_def
|
||||
const SPRITE_NONE ; $00
|
||||
const SPRITE_RED ; $01
|
||||
const SPRITE_BLUE ; $02
|
||||
const SPRITE_OAK ; $03
|
||||
const SPRITE_YOUNGSTER ; $04
|
||||
const SPRITE_MONSTER ; $05
|
||||
const SPRITE_COOLTRAINER_F ; $06
|
||||
const SPRITE_COOLTRAINER_M ; $07
|
||||
const SPRITE_LITTLE_GIRL ; $08
|
||||
const SPRITE_BIRD ; $09
|
||||
const SPRITE_MIDDLE_AGED_MAN ; $0a
|
||||
const SPRITE_GAMBLER ; $0b
|
||||
const SPRITE_SUPER_NERD ; $0c
|
||||
const SPRITE_GIRL ; $0d
|
||||
const SPRITE_HIKER ; $0e
|
||||
const SPRITE_BEAUTY ; $0f
|
||||
const SPRITE_GENTLEMAN ; $10
|
||||
const SPRITE_DAISY ; $11
|
||||
const SPRITE_BIKER ; $12
|
||||
const SPRITE_SAILOR ; $13
|
||||
const SPRITE_COOK ; $14
|
||||
const SPRITE_BIKE_SHOP_CLERK ; $15
|
||||
const SPRITE_MR_FUJI ; $16
|
||||
const SPRITE_GIOVANNI ; $17
|
||||
const SPRITE_ROCKET ; $18
|
||||
const SPRITE_CHANNELER ; $19
|
||||
const SPRITE_WAITER ; $1a
|
||||
const SPRITE_ERIKA ; $1b
|
||||
const SPRITE_MIDDLE_AGED_WOMAN ; $1c
|
||||
const SPRITE_BRUNETTE_GIRL ; $1d
|
||||
const SPRITE_LANCE ; $1e
|
||||
const SPRITE_UNUSED_SCIENTIST ; $1f
|
||||
const SPRITE_SCIENTIST ; $20
|
||||
const SPRITE_ROCKER ; $21
|
||||
const SPRITE_SWIMMER ; $22
|
||||
const SPRITE_SAFARI_ZONE_WORKER ; $23
|
||||
const SPRITE_GYM_GUIDE ; $24
|
||||
const SPRITE_GRAMPS ; $25
|
||||
const SPRITE_CLERK ; $26
|
||||
const SPRITE_FISHING_GURU ; $27
|
||||
const SPRITE_GRANNY ; $28
|
||||
const SPRITE_NURSE ; $29
|
||||
const SPRITE_LINK_RECEPTIONIST ; $2a
|
||||
const SPRITE_SILPH_PRESIDENT ; $2b
|
||||
const SPRITE_SILPH_WORKER ; $2c
|
||||
const SPRITE_WARDEN ; $2d
|
||||
const SPRITE_CAPTAIN ; $2e
|
||||
const SPRITE_FISHER ; $2f
|
||||
const SPRITE_KOGA ; $30
|
||||
const SPRITE_GUARD ; $31
|
||||
const SPRITE_UNUSED_GUARD ; $32
|
||||
const SPRITE_MOM ; $33
|
||||
const SPRITE_BALDING_GUY ; $34
|
||||
const SPRITE_LITTLE_BOY ; $35
|
||||
const SPRITE_UNUSED_GAMEBOY_KID ; $36
|
||||
const SPRITE_GAMEBOY_KID ; $37
|
||||
const SPRITE_FAIRY ; $38
|
||||
const SPRITE_AGATHA ; $39
|
||||
const SPRITE_BRUNO ; $3a
|
||||
const SPRITE_LORELEI ; $3b
|
||||
const SPRITE_SEEL ; $3c
|
||||
FIRST_STILL_SPRITE EQU const_value
|
||||
const SPRITE_POKE_BALL ; $3d
|
||||
const SPRITE_FOSSIL ; $3e
|
||||
const SPRITE_BOULDER ; $3f
|
||||
const SPRITE_PAPER ; $40
|
||||
const SPRITE_POKEDEX ; $41
|
||||
const SPRITE_CLIPBOARD ; $42
|
||||
const SPRITE_SNORLAX ; $43
|
||||
const SPRITE_UNUSED_OLD_AMBER ; $44
|
||||
const SPRITE_OLD_AMBER ; $45
|
||||
const SPRITE_UNUSED_GAMBLER_ASLEEP_1 ; $46
|
||||
const SPRITE_UNUSED_GAMBLER_ASLEEP_2 ; $47
|
||||
const SPRITE_GAMBLER_ASLEEP ; $48
|
||||
|
|
|
|||
26
constants/sprite_data_constants.asm
Normal file
26
constants/sprite_data_constants.asm
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
; sprite facing directions
|
||||
const_def 0, $04
|
||||
const SPRITE_FACING_DOWN ; $00
|
||||
const SPRITE_FACING_UP ; $04
|
||||
const SPRITE_FACING_LEFT ; $08
|
||||
const SPRITE_FACING_RIGHT ; $0C
|
||||
|
||||
const_def 0, $40
|
||||
const NPC_MOVEMENT_DOWN ; $00
|
||||
const NPC_MOVEMENT_UP ; $40
|
||||
const NPC_MOVEMENT_LEFT ; $80
|
||||
const NPC_MOVEMENT_RIGHT ; $C0
|
||||
|
||||
NPC_CHANGE_FACING EQU $E0
|
||||
|
||||
; player direction constants
|
||||
const_def
|
||||
const PLAYER_DIR_BIT_RIGHT ; 0
|
||||
const PLAYER_DIR_BIT_LEFT ; 1
|
||||
const PLAYER_DIR_BIT_DOWN ; 2
|
||||
const PLAYER_DIR_BIT_UP ; 3
|
||||
|
||||
PLAYER_DIR_RIGHT EQU 1 << PLAYER_DIR_BIT_RIGHT
|
||||
PLAYER_DIR_LEFT EQU 1 << PLAYER_DIR_BIT_LEFT
|
||||
PLAYER_DIR_DOWN EQU 1 << PLAYER_DIR_BIT_DOWN
|
||||
PLAYER_DIR_UP EQU 1 << PLAYER_DIR_BIT_UP
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
STARTER1 EQU CHARMANDER
|
||||
STARTER2 EQU SQUIRTLE
|
||||
STARTER3 EQU BULBASAUR
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
; non-volatile statuses
|
||||
SLP EQU %111 ; sleep counter
|
||||
PSN EQU 3
|
||||
BRN EQU 4
|
||||
FRZ EQU 5
|
||||
PAR EQU 6
|
||||
|
||||
; volatile statuses 1
|
||||
STORING_ENERGY EQU 0 ; Bide
|
||||
THRASHING_ABOUT EQU 1 ; e.g. Thrash
|
||||
ATTACKING_MULTIPLE_TIMES EQU 2 ; e.g. Double Kick, Fury Attack
|
||||
FLINCHED EQU 3
|
||||
CHARGING_UP EQU 4 ; e.g. Solar Beam, Fly
|
||||
USING_TRAPPING_MOVE EQU 5 ; e.g. Wrap
|
||||
INVULNERABLE EQU 6 ; charging up Fly/Dig
|
||||
CONFUSED EQU 7
|
||||
|
||||
; volatile statuses 2
|
||||
USING_X_ACCURACY EQU 0
|
||||
PROTECTED_BY_MIST EQU 1
|
||||
GETTING_PUMPED EQU 2 ; Focus Energy
|
||||
; EQU 3 ; unused
|
||||
HAS_SUBSTITUTE_UP EQU 4
|
||||
NEEDS_TO_RECHARGE EQU 5 ; Hyper Beam
|
||||
USING_RAGE EQU 6
|
||||
SEEDED EQU 7
|
||||
|
||||
; volatile statuses 3
|
||||
BADLY_POISONED EQU 0
|
||||
HAS_LIGHT_SCREEN_UP EQU 1
|
||||
HAS_REFLECT_UP EQU 2
|
||||
TRANSFORMED EQU 3
|
||||
|
|
@ -1,14 +1,21 @@
|
|||
; special text IDs
|
||||
TEXT_MON_FAINTED EQU $d0
|
||||
TEXT_BLACKED_OUT EQU $d1
|
||||
TEXT_REPEL_WORE_OFF EQU $d2
|
||||
TEXT_SAFARI_GAME_OVER EQU $d3
|
||||
NAME_LENGTH EQU 11
|
||||
ITEM_NAME_LENGTH EQU 13
|
||||
|
||||
; PrintNumber
|
||||
BIT_MONEY_SIGN EQU 5
|
||||
BIT_LEFT_ALIGN EQU 6
|
||||
BIT_LEADING_ZEROES EQU 7
|
||||
const_def 5
|
||||
const BIT_MONEY_SIGN ; 5
|
||||
const BIT_LEFT_ALIGN ; 6
|
||||
const BIT_LEADING_ZEROES ; 7
|
||||
|
||||
MONEY_SIGN EQU (1 << BIT_MONEY_SIGN)
|
||||
LEFT_ALIGN EQU (1 << BIT_LEFT_ALIGN)
|
||||
LEADING_ZEROES EQU (1 << BIT_LEADING_ZEROES)
|
||||
|
||||
; special text IDs (see home/text_script.asm)
|
||||
const_def $d0
|
||||
const TEXT_MON_FAINTED ; $d0
|
||||
const TEXT_BLACKED_OUT ; $d1
|
||||
const TEXT_REPEL_WORE_OFF ; $d2
|
||||
const TEXT_SAFARI_GAME_OVER ; $d3
|
||||
|
||||
TEXT_START_MENU EQU $00
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
const_value = 0
|
||||
|
||||
; tileset ids
|
||||
; Tilesets indexes (see data/tilesets/tileset_headers.asm)
|
||||
const_def
|
||||
const OVERWORLD ; 0
|
||||
const REDS_HOUSE_1 ; 1
|
||||
const MART ; 2
|
||||
113
constants/trainer_constants.asm
Executable file → Normal file
113
constants/trainer_constants.asm
Executable file → Normal file
|
|
@ -1,55 +1,64 @@
|
|||
OPP_ID_OFFSET EQU 200
|
||||
|
||||
trainer_const: MACRO
|
||||
\1 EQU const_value
|
||||
OPP_\1 EQU const_value + 200
|
||||
const_value = const_value + 1
|
||||
const \1
|
||||
OPP_\1 EQU OPP_ID_OFFSET + \1
|
||||
ENDM
|
||||
|
||||
const_value = 1
|
||||
|
||||
trainer_const YOUNGSTER ; $01
|
||||
trainer_const BUG_CATCHER ; $02
|
||||
trainer_const LASS ; $03
|
||||
trainer_const SAILOR ; $04
|
||||
trainer_const JR_TRAINER_M ; $05
|
||||
trainer_const JR_TRAINER_F ; $06
|
||||
trainer_const POKEMANIAC ; $07
|
||||
trainer_const SUPER_NERD ; $08
|
||||
trainer_const HIKER ; $09
|
||||
trainer_const BIKER ; $0A
|
||||
trainer_const BURGLAR ; $0B
|
||||
trainer_const ENGINEER ; $0C
|
||||
trainer_const JUGGLER_X ; $0D
|
||||
trainer_const FISHER ; $0E
|
||||
trainer_const SWIMMER ; $0F
|
||||
trainer_const CUE_BALL ; $10
|
||||
trainer_const GAMBLER ; $11
|
||||
trainer_const BEAUTY ; $12
|
||||
trainer_const PSYCHIC_TR ; $13
|
||||
trainer_const ROCKER ; $14
|
||||
trainer_const JUGGLER ; $15
|
||||
trainer_const TAMER ; $16
|
||||
trainer_const BIRD_KEEPER ; $17
|
||||
trainer_const BLACKBELT ; $18
|
||||
trainer_const SONY1 ; $19
|
||||
trainer_const PROF_OAK ; $1A
|
||||
trainer_const CHIEF ; $1B
|
||||
trainer_const SCIENTIST ; $1C
|
||||
trainer_const GIOVANNI ; $1D
|
||||
trainer_const ROCKET ; $1E
|
||||
trainer_const COOLTRAINER_M ; $1F
|
||||
trainer_const COOLTRAINER_F ; $20
|
||||
trainer_const BRUNO ; $21
|
||||
trainer_const BROCK ; $22
|
||||
trainer_const MISTY ; $23
|
||||
trainer_const LT_SURGE ; $24
|
||||
trainer_const ERIKA ; $25
|
||||
trainer_const KOGA ; $26
|
||||
trainer_const BLAINE ; $27
|
||||
trainer_const SABRINA ; $28
|
||||
trainer_const GENTLEMAN ; $29
|
||||
trainer_const SONY2 ; $2A
|
||||
trainer_const SONY3 ; $2B
|
||||
trainer_const LORELEI ; $2C
|
||||
trainer_const CHANNELER ; $2D
|
||||
trainer_const AGATHA ; $2E
|
||||
trainer_const LANCE ; $2F
|
||||
; trainer class ids
|
||||
; indexes for:
|
||||
; - TrainerNames (see data/trainers/names.asm)
|
||||
; - TrainerNamePointers (see data/trainers/name_pointers.asm)
|
||||
; - TrainerDataPointers (see data/trainers/parties.asm)
|
||||
; - TrainerPicAndMoneyPointers (see data/trainers/pic_pointers_money.asm)
|
||||
; - TrainerAIPointers (see data/trainers/ai_pointers.asm)
|
||||
; - TrainerClassMoveChoiceModifications (see data/trainers/move_choices.asm)
|
||||
const_def
|
||||
trainer_const NOBODY ; $00
|
||||
trainer_const YOUNGSTER ; $01
|
||||
trainer_const BUG_CATCHER ; $02
|
||||
trainer_const LASS ; $03
|
||||
trainer_const SAILOR ; $04
|
||||
trainer_const JR_TRAINER_M ; $05
|
||||
trainer_const JR_TRAINER_F ; $06
|
||||
trainer_const POKEMANIAC ; $07
|
||||
trainer_const SUPER_NERD ; $08
|
||||
trainer_const HIKER ; $09
|
||||
trainer_const BIKER ; $0A
|
||||
trainer_const BURGLAR ; $0B
|
||||
trainer_const ENGINEER ; $0C
|
||||
trainer_const UNUSED_JUGGLER ; $0D
|
||||
trainer_const FISHER ; $0E
|
||||
trainer_const SWIMMER ; $0F
|
||||
trainer_const CUE_BALL ; $10
|
||||
trainer_const GAMBLER ; $11
|
||||
trainer_const BEAUTY ; $12
|
||||
trainer_const PSYCHIC_TR ; $13
|
||||
trainer_const ROCKER ; $14
|
||||
trainer_const JUGGLER ; $15
|
||||
trainer_const TAMER ; $16
|
||||
trainer_const BIRD_KEEPER ; $17
|
||||
trainer_const BLACKBELT ; $18
|
||||
trainer_const RIVAL1 ; $19
|
||||
trainer_const PROF_OAK ; $1A
|
||||
trainer_const CHIEF ; $1B
|
||||
trainer_const SCIENTIST ; $1C
|
||||
trainer_const GIOVANNI ; $1D
|
||||
trainer_const ROCKET ; $1E
|
||||
trainer_const COOLTRAINER_M ; $1F
|
||||
trainer_const COOLTRAINER_F ; $20
|
||||
trainer_const BRUNO ; $21
|
||||
trainer_const BROCK ; $22
|
||||
trainer_const MISTY ; $23
|
||||
trainer_const LT_SURGE ; $24
|
||||
trainer_const ERIKA ; $25
|
||||
trainer_const KOGA ; $26
|
||||
trainer_const BLAINE ; $27
|
||||
trainer_const SABRINA ; $28
|
||||
trainer_const GENTLEMAN ; $29
|
||||
trainer_const RIVAL2 ; $2A
|
||||
trainer_const RIVAL3 ; $2B
|
||||
trainer_const LORELEI ; $2C
|
||||
trainer_const CHANNELER ; $2D
|
||||
trainer_const AGATHA ; $2E
|
||||
trainer_const LANCE ; $2F
|
||||
|
|
|
|||
40
constants/type_constants.asm
Executable file → Normal file
40
constants/type_constants.asm
Executable file → Normal file
|
|
@ -1,16 +1,24 @@
|
|||
; Elemental types
|
||||
NORMAL EQU $00
|
||||
FIGHTING EQU $01
|
||||
FLYING EQU $02
|
||||
POISON EQU $03
|
||||
GROUND EQU $04
|
||||
ROCK EQU $05
|
||||
BUG EQU $07
|
||||
GHOST EQU $08
|
||||
FIRE EQU $14
|
||||
WATER EQU $15
|
||||
GRASS EQU $16
|
||||
ELECTRIC EQU $17
|
||||
PSYCHIC EQU $18
|
||||
ICE EQU $19
|
||||
DRAGON EQU $1A
|
||||
; TypeNames indexes (see data/types/names.asm)
|
||||
const_def
|
||||
|
||||
PHYSICAL EQU const_value
|
||||
const NORMAL ; $00
|
||||
const FIGHTING ; $01
|
||||
const FLYING ; $02
|
||||
const POISON ; $03
|
||||
const GROUND ; $04
|
||||
const ROCK ; $05
|
||||
const BIRD ; $06
|
||||
const BUG ; $07
|
||||
const GHOST ; $08
|
||||
|
||||
const_next 20
|
||||
|
||||
SPECIAL EQU const_value
|
||||
const FIRE ; $14
|
||||
const WATER ; $15
|
||||
const GRASS ; $16
|
||||
const ELECTRIC ; $17
|
||||
const PSYCHIC_TYPE ; $18
|
||||
const ICE ; $19
|
||||
const DRAGON ; $1A
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue