mirror of
https://github.com/pret/pokegold-spaceworld.git
synced 2026-03-21 17:45:52 -05:00
Decompiling Pokedex and Sprite Animation objects (#114)
Some checks failed
CI / build (push) Has been cancelled
Some checks failed
CI / build (push) Has been cancelled
* Partially decompiled banks $10 and $23 * Couple minor tweaks * Decompiled mon menu icon-related functions --------- Co-authored-by: vulcandth <vulcandth@gmail.com>
This commit is contained in:
parent
9e05bc90a3
commit
05a77ef010
|
|
@ -15,6 +15,7 @@ INCLUDE "macros/queue.asm"
|
|||
INCLUDE "macros/maps.asm"
|
||||
|
||||
INCLUDE "macros/battle_commands.asm"
|
||||
INCLUDE "macros/oam_anims.asm"
|
||||
INCLUDE "macros/asserts.asm"
|
||||
|
||||
INCLUDE "constants/audio_constants.asm"
|
||||
|
|
|
|||
|
|
@ -17,9 +17,22 @@ const_def
|
|||
shift_const MORN ; 3
|
||||
DEF NUM_DAYTIMES EQU const_value
|
||||
|
||||
; FlagAction arguments (see home/flag.asm)
|
||||
const_def
|
||||
const RESET_FLAG
|
||||
const SET_FLAG
|
||||
const CHECK_FLAG
|
||||
|
||||
; RedrawRowOrColumn functions
|
||||
DEF REDRAW_COL EQU 1
|
||||
DEF REDRAW_ROW EQU 2
|
||||
|
||||
; significant money values
|
||||
DEF MAX_COINS EQU 9999
|
||||
|
||||
; LoadMenuMonIcon.Jumptable indexes (see engine/gfx/mon_icons.asm)
|
||||
const_def
|
||||
const MONICON_PARTYMENU
|
||||
const MONICON_NAMINGSCREEN
|
||||
const MONICON_MOVES
|
||||
const MONICON_TRADE
|
||||
|
|
|
|||
|
|
@ -192,6 +192,66 @@
|
|||
const MON_BELLSPROUT ; bc
|
||||
const MON_WEEPINBELL ; bd
|
||||
const MON_VICTREEBEL ; be
|
||||
const MON_HAPPA ; bf CHIKORITA
|
||||
const MON_HANAMOGURA ; c0 BAYLEEF
|
||||
const MON_HANARYU ; c1 MEGANIUM
|
||||
const MON_HONOGUMA ; c2
|
||||
const MON_VOLBEAR ; c3
|
||||
const MON_DYNABEAR ; c4
|
||||
const MON_KURUSU ; c5
|
||||
const MON_AQUA ; c6
|
||||
const MON_AQUARIA ; c7
|
||||
const MON_HOHO ; c8 HOOTHOOT
|
||||
const MON_BOBO ; c9 NOCTOWL
|
||||
const MON_PACHIMEE ; ca MAREEP
|
||||
const MON_MOKOKO ; cb FLAAFY
|
||||
const MON_DENRYU ; cc AMPHAROS
|
||||
const MON_MIKON ; cd (baby VULPIX)
|
||||
const MON_MONJA ; ce (baby TANGELA)
|
||||
const MON_JARANJA ; cf TANGROWTH (evolved TANGELA)
|
||||
const MON_HANEEI ; d0 MANTINE
|
||||
const MON_PUKU ; d1 QWILFISH
|
||||
const MON_SHIBIREFUGU ; d2 (evolved QWILFISH)
|
||||
const MON_PICHU ; d3
|
||||
const MON_PY ; d4 CLEFFA
|
||||
const MON_PUPURIN ; d5 IGGLYBUFF
|
||||
const MON_MIZUUO ; d6 QUAGSIRE
|
||||
const MON_NATY ; d7 NATU
|
||||
const MON_NATIO ; d8 XATU
|
||||
const MON_GYOPIN ; d9 (baby GOLDEEN)
|
||||
const MON_MARIL ; da MARILL
|
||||
const MON_MANBO1 ; db
|
||||
const MON_IKARI ; dc
|
||||
const MON_GROTESS ; dd
|
||||
const MON_EKSING ; de CROBAT
|
||||
const MON_PARA ; df (baby PARAS)
|
||||
const MON_KOKUMO ; e0 SPINARAK
|
||||
const MON_TWOHEAD ; e1 ARIADOS
|
||||
const MON_YOROIDORI ; e2 SKARMORY
|
||||
const MON_ANIMON ; e3 (evolved DITTO)
|
||||
const MON_HINAZU ; e4 (baby DODUO)
|
||||
const MON_SUNNY ; e5 SUNFLORA
|
||||
const MON_PAON ; e6 PHANPHY
|
||||
const MON_DONPHAN ; e7
|
||||
const MON_TWINZ ; e8 (baby GIRAFARIG)
|
||||
const MON_KIRINRIKI ; e9 GIRAFARIG
|
||||
const MON_PAINTER ; ea SMEARGLE
|
||||
const MON_KOUNYA ; eb (baby MEOWTH)
|
||||
const MON_RINRIN ; ec
|
||||
const MON_BERURUN ; ed
|
||||
const MON_NYOROTONO ; ee POLITOED
|
||||
const MON_YADOKING ; ef SLOWKING
|
||||
const MON_ANNON ; f0 UNOWN
|
||||
const MON_REDIBA ; f1 LEDYBA
|
||||
const MON_MITSUBOSHI ; f2 LEDIAN
|
||||
const MON_PUCHICORN ; f3 (baby PONYTA)
|
||||
const MON_EIFIE ; f4 ESPEON
|
||||
const MON_BLACKY ; f5 UMBREON
|
||||
const MON_TURBAN ; f6
|
||||
const MON_BETBABY ; f7 (baby GRIMER)
|
||||
const MON_TEPPOUO ; f8 REMORAID
|
||||
const MON_OKUTANK ; f9 OCTILLERY
|
||||
const MON_GONGU ; fa TYROGUE
|
||||
|
||||
; Unown forms
|
||||
const_def 1
|
||||
|
|
|
|||
|
|
@ -120,7 +120,7 @@ DEF NUM_HOF_TEAMS EQU 30
|
|||
|
||||
; wild data
|
||||
|
||||
DEF NUM_GRASSMON EQU 7 ; data/wild/*_grass.asm table size
|
||||
DEF NUM_GRASSMON EQU 6 ; data/wild/*_grass.asm table size
|
||||
DEF NUM_WATERMON EQU 3 ; data/wild/*_water.asm table size
|
||||
|
||||
DEF GRASS_WILDDATA_LENGTH EQU (NUM_GRASSMON * 2 + 1) * 3 + 2
|
||||
|
|
|
|||
|
|
@ -12,66 +12,307 @@
|
|||
const SPRITEANIMSTRUCT_DURATIONOFFSET ; 9
|
||||
const SPRITEANIMSTRUCT_FRAME ; a
|
||||
const SPRITEANIMSTRUCT_JUMPTABLE_INDEX ; b
|
||||
const SPRITEANIMSTRUCT_0C ; c
|
||||
const SPRITEANIMSTRUCT_0D ; d
|
||||
const SPRITEANIMSTRUCT_0E ; e
|
||||
const SPRITEANIMSTRUCT_0F ; f
|
||||
const SPRITEANIMSTRUCT_VAR1 ; c
|
||||
const SPRITEANIMSTRUCT_VAR2 ; d
|
||||
const SPRITEANIMSTRUCT_VAR3 ; e
|
||||
const SPRITEANIMSTRUCT_VAR4 ; f
|
||||
DEF SPRITEANIMSTRUCT_LENGTH EQU const_value
|
||||
DEF NUM_SPRITE_ANIM_STRUCTS EQU 10 ; see wSpriteAnimationStructs
|
||||
|
||||
; wSpriteAnimDict keys
|
||||
DEF SPRITE_ANIM_DICT_DEFAULT EQU $00
|
||||
DEF SPRITE_ANIM_DICT_10 EQU $10
|
||||
DEF SPRITE_ANIM_DICT_22 EQU $22
|
||||
DEF SPRITE_ANIM_DICT_25 EQU $25
|
||||
DEF SPRITE_ANIM_DICT_GS_SPLASH EQU $27
|
||||
DEF SPRITE_ANIM_DICT_29 EQU $29
|
||||
const_def
|
||||
const SPRITE_ANIM_DICT_NULL ; 00
|
||||
const SPRITE_ANIM_DICT_POLIWAG_ICON ; 01
|
||||
const SPRITE_ANIM_DICT_JIGGLYPUFF_ICON ; 02
|
||||
const SPRITE_ANIM_DICT_DIGLETT_ICON ; 03
|
||||
const SPRITE_ANIM_DICT_PIKACHU_ICON ; 04
|
||||
const SPRITE_ANIM_DICT_STARYU_ICON ; 05
|
||||
const SPRITE_ANIM_DICT_MAGIKARP_ICON ; 06
|
||||
const SPRITE_ANIM_DICT_PIDGEY_ICON ; 07
|
||||
const SPRITE_ANIM_DICT_RHYDON_ICON ; 08
|
||||
const SPRITE_ANIM_DICT_CLEFAIRY_ICON ; 09
|
||||
const SPRITE_ANIM_DICT_ODDISH_ICON ; 0a
|
||||
const SPRITE_ANIM_DICT_MUSHI_ICON ; 0b
|
||||
const SPRITE_ANIM_DICT_GENGAR_ICON ; 0c
|
||||
const SPRITE_ANIM_DICT_LAPRAS_ICON ; 0d
|
||||
const SPRITE_ANIM_DICT_MRMIME_ICON ; 0e
|
||||
const SPRITE_ANIM_DICT_LOKON_ICON ; 0f
|
||||
const SPRITE_ANIM_DICT_TAUROS_ICON ; 10
|
||||
const SPRITE_ANIM_DICT_SHELLDER_ICON ; 11
|
||||
const SPRITE_ANIM_DICT_DITTO_ICON ; 12
|
||||
const SPRITE_ANIM_DICT_ONIX_ICON ; 13
|
||||
const SPRITE_ANIM_DICT_VOLTORB_ICON ; 14
|
||||
const SPRITE_ANIM_DICT_SQUIRTLE_ICON ; 15
|
||||
const SPRITE_ANIM_DICT_BULBASAUR_ICON ; 16
|
||||
const SPRITE_ANIM_DICT_CHARMANDER_ICON ; 17
|
||||
const SPRITE_ANIM_DICT_WEEDLE_ICON ; 18
|
||||
const SPRITE_ANIM_DICT_ANNON_ICON ; 19
|
||||
const SPRITE_ANIM_DICT_GEODUDE_ICON ; 1a
|
||||
const SPRITE_ANIM_DICT_MACHOP_ICON ; 1b
|
||||
const SPRITE_ANIM_DICT_EGG_ICON ; 1c
|
||||
const SPRITE_ANIM_DICT_TENTACOOL_ICON ; 1d
|
||||
const SPRITE_ANIM_DICT_BUTTERFREE_ICON ; 1e
|
||||
const SPRITE_ANIM_DICT_ZUBAT_ICON ; 1f
|
||||
const SPRITE_ANIM_DICT_SNORLAX_ICON ; 20
|
||||
const SPRITE_ANIM_DICT_GS_INTRO ; 21
|
||||
const SPRITE_ANIM_DICT_GS_INTRO_2 ; 22
|
||||
const SPRITE_ANIM_DICT_GS_INTRO_3 ; 23
|
||||
const SPRITE_ANIM_DICT_TITLE_FLAME_NOTE ; 24
|
||||
const SPRITE_ANIM_DICT_MINIGAME_PICROSS ; 25
|
||||
const SPRITE_ANIM_DICT_TEXT_CURSOR ; 26
|
||||
const SPRITE_ANIM_DICT_GS_SPLASH ; 27
|
||||
const SPRITE_ANIM_DICT_SLOTS ; 28
|
||||
const SPRITE_ANIM_DICT_ARROW_CURSOR ; 29
|
||||
DEF NUM_SPRITE_ANIM_GFX EQU const_value
|
||||
|
||||
DEF SPRITE_ANIM_DICT_DEFAULT EQU $08
|
||||
|
||||
; wSpriteAnimDict size (see ram/wram.asm)
|
||||
DEF NUM_SPRITEANIMDICT_ENTRIES EQU 10
|
||||
|
||||
; SpriteAnimSeqData indexes
|
||||
DEF SPRITE_ANIM_INDEX_08 EQU $08
|
||||
const_def
|
||||
const SPRITE_ANIM_OBJ_00 ; 00
|
||||
const SPRITE_ANIM_OBJ_POLIWAG_ICON ; 01
|
||||
const SPRITE_ANIM_OBJ_JIGGLYPUFF_ICON ; 02
|
||||
const SPRITE_ANIM_OBJ_DIGLETT_ICON ; 03
|
||||
const SPRITE_ANIM_OBJ_PIKACHU_ICON ; 04
|
||||
const SPRITE_ANIM_OBJ_STARYU_ICON ; 05
|
||||
const SPRITE_ANIM_OBJ_MAGIKARP_ICON ; 06
|
||||
const SPRITE_ANIM_OBJ_PIDGEY_ICON ; 07
|
||||
const SPRITE_ANIM_OBJ_RHYDON_ICON ; 08
|
||||
const SPRITE_ANIM_OBJ_CLEFAIRY_ICON ; 09
|
||||
const SPRITE_ANIM_OBJ_ODDISH_ICON ; 0a
|
||||
const SPRITE_ANIM_OBJ_MUSHI_ICON ; 0b
|
||||
const SPRITE_ANIM_OBJ_GENGAR_ICON ; 0c
|
||||
const SPRITE_ANIM_OBJ_LAPRAS_ICON ; 0d
|
||||
const SPRITE_ANIM_OBJ_MRMIME_ICON ; 0e
|
||||
const SPRITE_ANIM_OBJ_LOKON_ICON ; 0f
|
||||
const SPRITE_ANIM_OBJ_TAUROS_ICON ; 10
|
||||
const SPRITE_ANIM_OBJ_SHELLDER_ICON ; 11
|
||||
const SPRITE_ANIM_OBJ_DITTO_ICON ; 12
|
||||
const SPRITE_ANIM_OBJ_ONIX_ICON ; 13
|
||||
const SPRITE_ANIM_OBJ_VOLTORB_ICON ; 14
|
||||
const SPRITE_ANIM_OBJ_SQUIRTLE_ICON ; 15
|
||||
const SPRITE_ANIM_OBJ_BULBASAUR_ICON ; 16
|
||||
const SPRITE_ANIM_OBJ_CHARMANDER_ICON ; 17
|
||||
const SPRITE_ANIM_OBJ_WEEDLE_ICON ; 18
|
||||
const SPRITE_ANIM_OBJ_ANNON_ICON ; 19
|
||||
const SPRITE_ANIM_OBJ_GEODUDE_ICON ; 1a
|
||||
const SPRITE_ANIM_OBJ_MACHOP_ICON ; 1b
|
||||
const SPRITE_ANIM_OBJ_EGG_ICON ; 1c
|
||||
const SPRITE_ANIM_OBJ_TENTACOOL_ICON ; 1d
|
||||
const SPRITE_ANIM_OBJ_BUTTERFREE_ICON ; 1e
|
||||
const SPRITE_ANIM_OBJ_ZUBAT_ICON ; 1f
|
||||
const SPRITE_ANIM_OBJ_SNORLAX_ICON ; 20
|
||||
const SPRITE_ANIM_OBJ_GS_INTRO_BUBBLE ; 21
|
||||
const SPRITE_ANIM_OBJ_GS_INTRO_OMANYTE ; 22
|
||||
const SPRITE_ANIM_OBJ_GS_INTRO_MAGIKARP ; 23
|
||||
const SPRITE_ANIM_OBJ_UNUSED_INTRO_AERODACTYL ; 24
|
||||
const SPRITE_ANIM_OBJ_GS_INTRO_LAPRAS ; 25
|
||||
const SPRITE_ANIM_OBJ_GS_INTRO_NOTE ; 26
|
||||
const SPRITE_ANIM_OBJ_GS_INTRO_SMALLER_NOTE ; 27
|
||||
const SPRITE_ANIM_OBJ_GS_INTRO_JIGGLYPUFF ; 28
|
||||
const SPRITE_ANIM_OBJ_GS_INTRO_PIKACHU ; 29
|
||||
const SPRITE_ANIM_OBJ_GS_INTRO_PIKACHU_TAIL ; 2a
|
||||
const SPRITE_ANIM_OBJ_GS_INTRO_FIREBALL ; 2b
|
||||
const SPRITE_ANIM_OBJ_GS_INTRO_BLASTOISE ; 2c
|
||||
const SPRITE_ANIM_OBJ_GS_INTRO_VENUSAUR ; 2d
|
||||
const SPRITE_ANIM_OBJ_GS_TITLE_FLAME_NOTE ; 2e
|
||||
const SPRITE_ANIM_OBJ_MINIGAME_PIKACHU ; 2f
|
||||
const SPRITE_ANIM_OBJ_MINIGAME_PIKACHU_TAIL ; 30
|
||||
const SPRITE_ANIM_OBJ_MINIGAME_NOTE ; 31
|
||||
const SPRITE_ANIM_OBJ_MINIGAME_JIGGLYPUFF ; 32
|
||||
const SPRITE_ANIM_OBJ_MINIGAME_PICROSS_CURSOR ; 33
|
||||
const SPRITE_ANIM_OBJ_MINIGAME_PICROSS_DUST ; 34
|
||||
const SPRITE_ANIM_OBJ_MINIGAME_PICROSS_GOLD ; 35
|
||||
const SPRITE_ANIM_OBJ_POKEDEX_HAND_CURSOR ; 36
|
||||
const SPRITE_ANIM_OBJ_POKEDEX_CURSOR ; 37
|
||||
const SPRITE_ANIM_OBJ_POKEDEX_SLOWPOKE ; 38
|
||||
const SPRITE_ANIM_OBJ_NAMING_SCREEN_CURSOR ; 39
|
||||
const SPRITE_ANIM_OBJ_GAMEFREAK_LOGO ; 3a
|
||||
const SPRITE_ANIM_OBJ_GS_INTRO_STAR ; 3b
|
||||
const SPRITE_ANIM_OBJ_GS_INTRO_SPARKLE ; 3c
|
||||
const SPRITE_ANIM_OBJ_SLOTS_GOLEM ; 3d
|
||||
const SPRITE_ANIM_OBJ_SLOTS_CHANSEY ; 3e
|
||||
const SPRITE_ANIM_OBJ_SLOTS_EGG ; 3f
|
||||
const SPRITE_ANIM_OBJ_MAIL_WRITING_CURSOR ; 40
|
||||
const SPRITE_ANIM_OBJ_MAP_CHARACTER_ICON ; 41
|
||||
const SPRITE_ANIM_OBJ_POKER_CURSOR ; 42
|
||||
const SPRITE_ANIM_OBJ_MEMORY_GAME_CURSOR ; 43
|
||||
const SPRITE_ANIM_OBJ_TRAINERGEAR_POINTER ; 44
|
||||
const SPRITE_ANIM_OBJ_TRADE_POKE_BALL ; 45
|
||||
const SPRITE_ANIM_OBJ_TRADE_POOF ; 46
|
||||
const SPRITE_ANIM_OBJ_TRADE_TUBE_BULGE ; 47
|
||||
const SPRITE_ANIM_OBJ_TRADEMON_ICON ; 48
|
||||
const SPRITE_ANIM_OBJ_TRADEMON_BUBBLE ; 49
|
||||
const SPRITE_ANIM_OBJ_4A ; 4a
|
||||
const SPRITE_ANIM_OBJ_RADIO_FREQUENCY_METER ; 4b
|
||||
DEF NUM_SPRITE_ANIM_OBJS EQU const_value
|
||||
|
||||
DEF SPRITE_ANIM_INDEX_20 EQU $20
|
||||
; DoSpriteAnimFrame.Jumptable indexes (see engine/sprite_anims/functions.asm)
|
||||
const_def
|
||||
const SPRITE_ANIM_FUNC_NULL ; 00
|
||||
const SPRITE_ANIM_FUNC_PARTY_MON ; 01
|
||||
const SPRITE_ANIM_FUNC_PARTY_MON_SWITCH ; 02
|
||||
const SPRITE_ANIM_FUNC_PARTY_MON_SELECTED ; 03
|
||||
const SPRITE_ANIM_FUNC_GS_INTRO_BUBBLE ; 04
|
||||
const SPRITE_ANIM_FUNC_GS_INTRO_OMANYTE ; 05
|
||||
const SPRITE_ANIM_FUNC_GS_INTRO_MAGIKARP ; 06
|
||||
const SPRITE_ANIM_FUNC_UNUSED_INTRO_AERODACTYL ; 07
|
||||
const SPRITE_ANIM_FUNC_GS_INTRO_LAPRAS ; 08
|
||||
const SPRITE_ANIM_FUNC_GS_INTRO_NOTE ; 09
|
||||
const SPRITE_ANIM_FUNC_GS_INTRO_JIGGLYPUFF ; 0a
|
||||
const SPRITE_ANIM_FUNC_GS_INTRO_PIKACHU ; 0b
|
||||
const SPRITE_ANIM_FUNC_GS_INTRO_PIKACHU_TAIL ; 0c
|
||||
const SPRITE_ANIM_FUNC_GS_INTRO_FIREBALL ; 0d
|
||||
const SPRITE_ANIM_FUNC_GS_INTRO_BLASTOISE ; 0e
|
||||
const SPRITE_ANIM_FUNC_GS_INTRO_VENUSAUR ; 0f
|
||||
const SPRITE_ANIM_FUNC_GS_TITLE_FLAME_NOTE ; 10
|
||||
const SPRITE_ANIM_FUNC_MINIGAME_PIKACHU ; 11
|
||||
const SPRITE_ANIM_FUNC_MINIGAME_PIKACHU_TAIL ; 12
|
||||
const SPRITE_ANIM_FUNC_MINIGAME_NOTE ; 13
|
||||
const SPRITE_ANIM_FUNC_MINIGAME_JIGGLYPUFF ; 14
|
||||
const SPRITE_ANIM_FUNC_MINIGAME_PICROSS_CURSOR ; 15
|
||||
const SPRITE_ANIM_FUNC_MINIGAME_PICROSS_DUST ; 16
|
||||
const SPRITE_ANIM_FUNC_POKEDEX_HAND_CURSOR ; 17
|
||||
const SPRITE_ANIM_FUNC_POKEDEX_CURSOR ; 18
|
||||
const SPRITE_ANIM_FUNC_POKEDEX_SLOWPOKE ; 19
|
||||
const SPRITE_ANIM_FUNC_NAMING_SCREEN_CURSOR ; 1a
|
||||
const SPRITE_ANIM_FUNC_GAMEFREAK_LOGO ; 1b
|
||||
const SPRITE_ANIM_FUNC_GS_GAMEFREAK_LOGO_STAR ; 1c
|
||||
const SPRITE_ANIM_FUNC_GS_GAMEFREAK_LOGO_SPARKLE ; 1d
|
||||
const SPRITE_ANIM_FUNC_SLOTS_GOLEM ; 1e
|
||||
const SPRITE_ANIM_FUNC_SLOTS_CHANSEY ; 1f
|
||||
const SPRITE_ANIM_FUNC_SLOTS_EGG ; 20
|
||||
const SPRITE_ANIM_FUNC_MAIL_CURSOR ; 21
|
||||
const SPRITE_ANIM_FUNC_POKER_CURSOR ; 22
|
||||
const SPRITE_ANIM_FUNC_MEMORY_GAME_CURSOR ; 23
|
||||
const SPRITE_ANIM_FUNC_TRAINERGEAR_POINTER ; 24
|
||||
const SPRITE_ANIM_FUNC_TRADE_POKE_BALL ; 25
|
||||
const SPRITE_ANIM_FUNC_TRADE_TUBE_BULGE ; 26
|
||||
const SPRITE_ANIM_FUNC_TRADEMON_IN_TUBE ; 27
|
||||
const SPRITE_ANIM_FUNC_UNKNOWN ; 28
|
||||
const SPRITE_ANIM_FUNC_RADIO_FREQUENCY_METER ; 29
|
||||
DEF NUM_SPRITE_ANIM_FUNCS EQU const_value
|
||||
|
||||
DEF SPRITE_ANIM_INDEX_GS_INTRO_BUBBLE EQU $21
|
||||
DEF SPRITE_ANIM_INDEX_GS_INTRO_OMANYTE EQU $22
|
||||
DEF SPRITE_ANIM_INDEX_GS_INTRO_MAGIKARP EQU $23
|
||||
DEF SPRITE_ANIM_INDEX_UNUSED_INTRO_AERODACTYL EQU $24
|
||||
DEF SPRITE_ANIM_INDEX_GS_INTRO_LAPRAS EQU $25
|
||||
DEF SPRITE_ANIM_INDEX_GS_INTRO_NOTE EQU $26
|
||||
DEF SPRITE_ANIM_INDEX_GS_INTRO_SMALLER_NOTE EQU $27
|
||||
DEF SPRITE_ANIM_INDEX_GS_INTRO_JIGGLYPUFF EQU $28
|
||||
DEF SPRITE_ANIM_INDEX_28 EQU $28
|
||||
DEF SPRITE_ANIM_INDEX_GS_INTRO_PIKACHU EQU $29
|
||||
DEF SPRITE_ANIM_INDEX_GS_INTRO_PIKACHU_TAIL EQU $2a
|
||||
DEF SPRITE_ANIM_INDEX_GS_INTRO_FIREBALL EQU $2b
|
||||
DEF SPRITE_ANIM_INDEX_GS_INTRO_BLASTOISE EQU $2c
|
||||
DEF SPRITE_ANIM_INDEX_GS_INTRO_VENUSAUR EQU $2d
|
||||
; SpriteAnimFrameData indexes (see data/sprite_anims/framesets.asm)
|
||||
const_def
|
||||
const SPRITE_ANIM_FRAMESET_00 ; 00
|
||||
const SPRITE_ANIM_FRAMESET_PARTY_MON ; 01
|
||||
const SPRITE_ANIM_FRAMESET_GS_INTRO_BUBBLE ; 02
|
||||
const SPRITE_ANIM_FRAMESET_GS_INTRO_OMANYTE ; 03
|
||||
const SPRITE_ANIM_FRAMESET_GS_INTRO_MAGIKARP ; 04
|
||||
const SPRITE_ANIM_FRAMESET_UNUSED_INTRO_AERODACTYL ; 05
|
||||
const SPRITE_ANIM_FRAMESET_GS_INTRO_LAPRAS ; 06
|
||||
const SPRITE_ANIM_FRAMESET_GS_INTRO_NOTE ; 07
|
||||
const SPRITE_ANIM_FRAMESET_GS_INTRO_SMALLER_NOTE ; 08
|
||||
const SPRITE_ANIM_FRAMESET_GS_INTRO_JIGGLYPUFF ; 09
|
||||
const SPRITE_ANIM_FRAMESET_GS_INTRO_PIKACHU ; 0a
|
||||
const SPRITE_ANIM_FRAMESET_GS_INTRO_PIKACHU_2 ; 0b
|
||||
const SPRITE_ANIM_FRAMESET_GS_INTRO_PIKACHU_TAIL ; 0c
|
||||
const SPRITE_ANIM_FRAMESET_GS_INTRO_PIKACHU_TAIL_2 ; 0d
|
||||
const SPRITE_ANIM_FRAMESET_GS_INTRO_FIREBALL ; 0e
|
||||
const SPRITE_ANIM_FRAMESET_GS_INTRO_BLASTOISE ; 0f
|
||||
const SPRITE_ANIM_FRAMESET_GS_INTRO_VENUSAUR ; 10
|
||||
const SPRITE_ANIM_FRAMESET_GS_TITLE_FLAME_NOTE ; 11
|
||||
const SPRITE_ANIM_FRAMESET_GS_MINIGAME_PIKACHU ; 12
|
||||
const SPRITE_ANIM_FRAMESET_GS_MINIGAME_PIKACHU_2 ; 13
|
||||
const SPRITE_ANIM_FRAMESET_GS_MINIGAME_PIKACHU_3 ; 14
|
||||
const SPRITE_ANIM_FRAMESET_MINIGAME_PICROSS_CURSOR ; 15
|
||||
const SPRITE_ANIM_FRAMESET_MINIGAME_PICROSS_DUST ; 16
|
||||
const SPRITE_ANIM_FRAMESET_MINIGAME_PICROSS_GOLD ; 17
|
||||
const SPRITE_ANIM_FRAMESET_MINIGAME_PICROSS_GOLD_2 ; 18
|
||||
const SPRITE_ANIM_FRAMESET_POKEDEX_CURSOR ; 19
|
||||
const SPRITE_ANIM_FRAMESET_POKEDEX_SLOWPOKE ; 1a
|
||||
const SPRITE_ANIM_FRAMESET_POKEDEX_SLOWPOKE_2 ; 1b
|
||||
const SPRITE_ANIM_FRAMESET_POKEDEX_SLOWPOKE_3 ; 1c
|
||||
const SPRITE_ANIM_FRAMESET_TEXT_ENTRY_CURSOR ; 1d
|
||||
const SPRITE_ANIM_FRAMESET_GAMEFREAK_LOGO ; 1e
|
||||
const SPRITE_ANIM_FRAMESET_GS_GAMEFREAK_LOGO_STAR ; 1f
|
||||
const SPRITE_ANIM_FRAMESET_GS_GAMEFREAK_LOGO_SPARKLE ; 20
|
||||
const SPRITE_ANIM_FRAMESET_SLOTS_GOLEM ; 21
|
||||
const SPRITE_ANIM_FRAMESET_SLOTS_CHANSEY ; 22
|
||||
const SPRITE_ANIM_FRAMESET_SLOTS_CHANSEY_2 ; 23
|
||||
const SPRITE_ANIM_FRAMESET_SLOTS_EGG ; 24
|
||||
const SPRITE_ANIM_FRAMESET_WALK ; 25
|
||||
const SPRITE_ANIM_FRAMESET_STILL_CURSOR ; 26
|
||||
const SPRITE_ANIM_FRAMESET_TRADE_POKE_BALL ; 27
|
||||
const SPRITE_ANIM_FRAMESET_TRADE_POKE_BALL_WOBBLE ; 28
|
||||
const SPRITE_ANIM_FRAMESET_TRADE_POOF ; 29
|
||||
const SPRITE_ANIM_FRAMESET_TRADE_TUBE_BULGE ; 2a
|
||||
const SPRITE_ANIM_FRAMESET_TRADEMON_ICON ; 2b
|
||||
const SPRITE_ANIM_FRAMESET_TRADEMON_BUBBLE ; 2c
|
||||
const SPRITE_ANIM_FRAMESET_UNKNOWN ; 2d
|
||||
const SPRITE_ANIM_FRAMESET_RADIO_FREQUENCY_METER ; 2e
|
||||
DEF NUM_SPRITE_ANIM_FRAMESETS EQU const_value
|
||||
|
||||
DEF SPRITE_ANIM_INDEX_GS_TITLE_FLAME_NOTE EQU $2e
|
||||
|
||||
DEF SPRITE_ANIM_INDEX_MINIGAME_PIKACHU EQU $2f
|
||||
DEF SPRITE_ANIM_INDEX_MINIGAME_PIKACHU_TAIL EQU $30
|
||||
DEF SPRITE_ANIM_INDEX_MINIGAME_NOTE EQU $31
|
||||
DEF SPRITE_ANIM_INDEX_MINIGAME_JIGGLYPUFF EQU $32
|
||||
|
||||
DEF SPRITE_ANIM_INDEX_MINIGAME_PICROSS_CURSOR EQU $33
|
||||
DEF SPRITE_ANIM_INDEX_MINIGAME_PICROSS_DUST EQU $34
|
||||
DEF SPRITE_ANIM_INDEX_MINIGAME_PICROSS_GOLD EQU $35
|
||||
|
||||
DEF SPRITE_ANIM_INDEX_39 EQU $39
|
||||
DEF SPRITE_ANIM_INDEX_GAMEFREAK_LOGO EQU $3a
|
||||
DEF SPRITE_ANIM_INDEX_GS_INTRO_STAR EQU $3b
|
||||
DEF SPRITE_ANIM_INDEX_GS_INTRO_SPARKLE EQU $3c
|
||||
DEF SPRITE_ANIM_INDEX_SLOTS_GOLEM EQU $3d
|
||||
DEF SPRITE_ANIM_INDEX_SLOTS_CHANSEY EQU $3e
|
||||
DEF SPRITE_ANIM_INDEX_SLOTS_EGG EQU $3f
|
||||
|
||||
DEF SPRITE_ANIM_INDEX_40 EQU $40
|
||||
DEF SPRITE_ANIM_INDEX_41 EQU $41
|
||||
DEF SPRITE_ANIM_INDEX_MEMORY_GAME_CURSOR EQU $43
|
||||
|
||||
DEF SPRITE_ANIM_INDEX_TRAINERGEAR_POINTER EQU $44
|
||||
DEF SPRITE_ANIM_INDEX_RADIO_TUNING_KNOB EQU $4b
|
||||
; SpriteAnimOAMData indexes (see data/sprite_anims/oam.asm)
|
||||
const_def
|
||||
const SPRITE_ANIM_OAMSET_WALK_1 ; 00
|
||||
const SPRITE_ANIM_OAMSET_WALK_2 ; 01
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_BUBBLE_1 ; 02
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_BUBBLE_2 ; 03
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_OMANYTE_1 ; 04
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_OMANYTE_2 ; 05
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_MAGIKARP_1 ; 06
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_MAGIKARP_2 ; 07
|
||||
const SPRITE_ANIM_OAMSET_UNUSED_INTRO_AERODACTYL ; 08
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_LAPRAS_1 ; 09
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_LAPRAS_2 ; 0a
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_LAPRAS_3 ; 0b
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_NOTE ; 0c
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_SMALLER_NOTE ; 0d
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_JIGGLYPUFF_1 ; 0e
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_JIGGLYPUFF_2 ; 0f
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_JIGGLYPUFF_3 ; 10
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_1 ; 11
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_2 ; 12
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_3 ; 13
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_4 ; 14
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_TAIL_1 ; 15
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_TAIL_2 ; 16
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_TAIL_3 ; 17
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_SMALL_FIREBALL ; 18
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_MED_FIREBALL ; 19
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_BIG_FIREBALL ; 1a
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_BLASTOISE ; 1b
|
||||
const SPRITE_ANIM_OAMSET_GS_INTRO_VENUSAUR ; 1c
|
||||
const SPRITE_ANIM_OAMSET_GS_TITLE_FLAME_NOTE_1 ; 1d
|
||||
const SPRITE_ANIM_OAMSET_GS_TITLE_FLAME_NOTE_2 ; 1e
|
||||
const SPRITE_ANIM_OAMSET_MINIGAME_PICROSS_CURSOR ; 1f
|
||||
const SPRITE_ANIM_OAMSET_MINIGAME_PICROSS_DUST_1 ; 20
|
||||
const SPRITE_ANIM_OAMSET_MINIGAME_PICROSS_DUST_2 ; 21
|
||||
const SPRITE_ANIM_OAMSET_POKEDEX_CURSOR ; 22
|
||||
const SPRITE_ANIM_OAMSET_POKEDEX_SLOWPOKE_1 ; 23
|
||||
const SPRITE_ANIM_OAMSET_POKEDEX_SLOWPOKE_2 ; 24
|
||||
const SPRITE_ANIM_OAMSET_POKEDEX_SLOWPOKE_3 ; 25
|
||||
const SPRITE_ANIM_OAMSET_POKEDEX_SLOWPOKE_4 ; 26
|
||||
const SPRITE_ANIM_OAMSET_POKEDEX_SLOWPOKE_5 ; 27
|
||||
const SPRITE_ANIM_OAMSET_TEXT_ENTRY_CURSOR ; 28
|
||||
const SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO ; 29
|
||||
const SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_STAR ; 2a
|
||||
const SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_1 ; 2b
|
||||
const SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_2 ; 2c
|
||||
const SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_3 ; 2d
|
||||
const SPRITE_ANIM_OAMSET_SLOTS_GOLEM_1 ; 2e
|
||||
const SPRITE_ANIM_OAMSET_SLOTS_GOLEM_2 ; 2f
|
||||
const SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_1 ; 30
|
||||
const SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_2 ; 31
|
||||
const SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_3 ; 32
|
||||
const SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_4 ; 33
|
||||
const SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_5 ; 34
|
||||
const SPRITE_ANIM_OAMSET_SLOTS_EGG ; 35
|
||||
const SPRITE_ANIM_OAMSET_STILL_CURSOR ; 36
|
||||
const SPRITE_ANIM_OAMSET_TRADE_POKE_BALL_1 ; 37
|
||||
const SPRITE_ANIM_OAMSET_TRADE_POKE_BALL_2 ; 38
|
||||
const SPRITE_ANIM_OAMSET_TRADE_POOF_1 ; 39
|
||||
const SPRITE_ANIM_OAMSET_TRADE_POOF_2 ; 3a
|
||||
const SPRITE_ANIM_OAMSET_TRADE_POOF_3 ; 3b
|
||||
const SPRITE_ANIM_OAMSET_TRADE_TUBE_BULGE_1 ; 3c
|
||||
const SPRITE_ANIM_OAMSET_TRADE_TUBE_BULGE_2 ; 3d
|
||||
const SPRITE_ANIM_OAMSET_TRADEMON_ICON_1 ; 3e
|
||||
const SPRITE_ANIM_OAMSET_TRADEMON_ICON_2 ; 3f
|
||||
const SPRITE_ANIM_OAMSET_TRADEMON_BUBBLE ; 40
|
||||
const SPRITE_ANIM_OAMSET_UNKNOWN_41 ; 41
|
||||
const SPRITE_ANIM_OAMSET_RADIO_FREQUENCY_METER ; 42
|
||||
|
|
|
|||
|
|
@ -37,3 +37,5 @@ DEF SPECIAL_TYPES EQU const_value ; 14
|
|||
DEF TYPES_END EQU const_value ; 1c
|
||||
|
||||
DEF NUM_TYPES EQU TYPES_END + UNUSED_TYPES - UNUSED_TYPES_END ; 12
|
||||
|
||||
DEF POKEDEX_TYPE_STRING_LENGTH EQU 5
|
||||
|
|
@ -82,6 +82,15 @@ DEF PLAYER_SURF_PIKA EQU 8
|
|||
const DEBUG_FIELD_F
|
||||
const CONTINUED_F
|
||||
|
||||
; wJumptableIndex::
|
||||
DEF JUMPTABLE_INDEX_MASK EQU %01111111
|
||||
const_def 7
|
||||
shift_const JUMPTABLE_EXIT
|
||||
|
||||
; wCurDexMode::
|
||||
const_def
|
||||
const DEXMODE_NUMBERED
|
||||
const DEXMODE_ABC
|
||||
|
||||
; wToolgearFlags::
|
||||
DEF SHOW_TOOLGEAR_F EQU 0
|
||||
|
|
@ -91,3 +100,6 @@ DEF HIDE_TOOLGEAR_F EQU 7
|
|||
; wd153::
|
||||
DEF TOOLGEAR_COORDS_F EQU 0
|
||||
DEF OVERWORLD_MINUTE_TIME_F EQU 7
|
||||
|
||||
; wTimeOfDayPalFlags::
|
||||
DEF CLEAR_PALSET_F EQU 7
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
INCLUDE "data/moves/effects_pointers.inc"
|
||||
;;;; Currently on: $10 ;;;;
|
||||
|
||||
NormalHit:
|
||||
checkobedience
|
||||
usedmovetext
|
||||
|
|
|
|||
|
|
@ -198,69 +198,69 @@ PokemonCries::
|
|||
mon_cry CRY_21, 85, 129 ; MON_BELLSPROUT
|
||||
mon_cry CRY_25, 68, 160 ; MON_WEEPINBELL
|
||||
mon_cry CRY_25, 102, 332 ; MON_VICTREEBEL
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256
|
||||
mon_cry CRY_00, 0, 256 ; MON_HAPPA
|
||||
mon_cry CRY_00, 0, 256 ; MON_HANAMOGURA
|
||||
mon_cry CRY_00, 0, 256 ; MON_HANARYU
|
||||
mon_cry CRY_00, 0, 256 ; MON_HONOGUMA
|
||||
mon_cry CRY_00, 0, 256 ; MON_VOLBEAR
|
||||
mon_cry CRY_00, 0, 256 ; MON_DYNABEAR
|
||||
mon_cry CRY_00, 0, 256 ; MON_KURUSU
|
||||
mon_cry CRY_00, 0, 256 ; MON_AQUA
|
||||
mon_cry CRY_00, 0, 256 ; MON_AQUARIA
|
||||
mon_cry CRY_00, 0, 256 ; MON_HOHO
|
||||
mon_cry CRY_00, 0, 256 ; MON_BOBO
|
||||
mon_cry CRY_00, 0, 256 ; MON_PACHIMEE
|
||||
mon_cry CRY_00, 0, 256 ; MON_MOKOKO
|
||||
mon_cry CRY_00, 0, 256 ; MON_DENRYU
|
||||
mon_cry CRY_00, 0, 256 ; MON_MIKON
|
||||
mon_cry CRY_00, 0, 256 ; MON_MONJA
|
||||
mon_cry CRY_00, 0, 256 ; MON_JARANJA
|
||||
mon_cry CRY_00, 0, 256 ; MON_HANEEI
|
||||
mon_cry CRY_00, 0, 256 ; MON_PUKU
|
||||
mon_cry CRY_00, 0, 256 ; MON_SHIBIREFUGU
|
||||
mon_cry CRY_00, 0, 256 ; MON_PICHU
|
||||
mon_cry CRY_00, 0, 256 ; MON_PY
|
||||
mon_cry CRY_00, 0, 256 ; MON_PUPURIN
|
||||
mon_cry CRY_00, 0, 256 ; MON_MIZUUO
|
||||
mon_cry CRY_00, 0, 256 ; MON_NATY
|
||||
mon_cry CRY_00, 0, 256 ; MON_NATIO
|
||||
mon_cry CRY_00, 0, 256 ; MON_GYOPIN
|
||||
mon_cry CRY_00, 0, 256 ; MON_MARIL
|
||||
mon_cry CRY_00, 0, 256 ; MON_MANBO1
|
||||
mon_cry CRY_00, 0, 256 ; MON_IKARI
|
||||
mon_cry CRY_00, 0, 256 ; MON_GROTESS
|
||||
mon_cry CRY_00, 0, 256 ; MON_EKSING
|
||||
mon_cry CRY_00, 0, 256 ; MON_PARA
|
||||
mon_cry CRY_00, 0, 256 ; MON_KOKUMO
|
||||
mon_cry CRY_00, 0, 256 ; MON_TWOHEAD
|
||||
mon_cry CRY_00, 0, 256 ; MON_YOROIDORI
|
||||
mon_cry CRY_00, 0, 256 ; MON_ANIMON
|
||||
mon_cry CRY_00, 0, 256 ; MON_HINAZU
|
||||
mon_cry CRY_00, 0, 256 ; MON_SUNNY
|
||||
mon_cry CRY_00, 0, 256 ; MON_PAON
|
||||
mon_cry CRY_00, 0, 256 ; MON_DONPHAN
|
||||
mon_cry CRY_00, 0, 256 ; MON_TWINZ
|
||||
mon_cry CRY_00, 0, 256 ; MON_KIRINRIKI
|
||||
mon_cry CRY_00, 0, 256 ; MON_PAINTER
|
||||
mon_cry CRY_00, 0, 256 ; MON_KOUNYA
|
||||
mon_cry CRY_00, 0, 256 ; MON_RINRIN
|
||||
mon_cry CRY_00, 0, 256 ; MON_BERURUN
|
||||
mon_cry CRY_00, 0, 256 ; MON_NYOROTONO
|
||||
mon_cry CRY_00, 0, 256 ; MON_YADOKING
|
||||
mon_cry CRY_00, 0, 256 ; MON_ANNON
|
||||
mon_cry CRY_00, 0, 256 ; MON_REDIBA
|
||||
mon_cry CRY_00, 0, 256 ; MON_MITSUBOSHI
|
||||
mon_cry CRY_00, 0, 256 ; MON_PUCHICORN
|
||||
mon_cry CRY_00, 0, 256 ; MON_EIFIE
|
||||
mon_cry CRY_00, 0, 256 ; MON_BLACKY
|
||||
mon_cry CRY_00, 0, 256 ; MON_TURBAN
|
||||
mon_cry CRY_00, 0, 256 ; MON_BETBABY
|
||||
mon_cry CRY_00, 0, 256 ; MON_TEPPOUO
|
||||
mon_cry CRY_00, 0, 256 ; MON_OKUTANK
|
||||
mon_cry CRY_00, 0, 256 ; MON_GONGU
|
||||
mon_cry CRY_00, 0, 256 ; fb
|
||||
mon_cry CRY_00, 0, 256 ; fc
|
||||
mon_cry CRY_00, 0, 256 ; fd
|
||||
mon_cry CRY_00, 0, 256 ; fe
|
||||
mon_cry CRY_00, 0, 256 ; ff
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,3 @@
|
|||
INCLUDE "constants.asm"
|
||||
|
||||
SECTION "data/pokemon/dex_order_alpha.asm", ROMX
|
||||
|
||||
; Every Pokémon sorted alphabetically by name (gojūon order).
|
||||
|
||||
AlphabeticalPokedexOrder:
|
||||
|
|
@ -1,6 +1,4 @@
|
|||
INCLUDE "constants.asm"
|
||||
|
||||
SECTION "data/pokemon/menu_icons.asm", ROMX
|
||||
; party menu icons
|
||||
|
||||
MonMenuIcons::
|
||||
db ICON_BULBASAUR ; 01 BULBASAUR
|
||||
|
|
@ -58,8 +58,8 @@ GiveItemPredef::
|
|||
add_predef Function41fa1
|
||||
add_predef Function28da4
|
||||
add_predef Function28d6e
|
||||
add_predef Function40ac7
|
||||
add_predef Function40000
|
||||
add_predef NewPokedexEntry
|
||||
add_predef Pokedex
|
||||
add_predef ConvertMon_1to2 ; 30
|
||||
add_predef CopyMonToTempMon
|
||||
add_predef ListMoves
|
||||
|
|
@ -89,7 +89,7 @@ GiveItemPredef::
|
|||
add_predef Function143e0
|
||||
add_predef CheckSGB
|
||||
add_predef LoadSGBLayout
|
||||
add_predef Function8786
|
||||
add_predef Pokedex_GetArea
|
||||
add_predef DoBattleTransition
|
||||
add_predef Function8c9c6
|
||||
add_predef Function8c940 ; 50
|
||||
|
|
|
|||
284
data/sprite_anims/framesets.inc
Normal file
284
data/sprite_anims/framesets.inc
Normal file
|
|
@ -0,0 +1,284 @@
|
|||
SpriteAnimFrameData:
|
||||
dw .Frameset_00 ; SPRITE_ANIM_FRAMESET_00
|
||||
dw .Frameset_PartyMon ; SPRITE_ANIM_FRAMESET_PARTY_MON
|
||||
dw .Frameset_GSIntroBubble ; SPRITE_ANIM_FRAMESET_GS_INTRO_BUBBLE
|
||||
dw .Frameset_GSIntroOmanyte ; SPRITE_ANIM_FRAMESET_GS_INTRO_OMANYTE
|
||||
dw .Frameset_GSIntroMagikarp ; SPRITE_ANIM_FRAMESET_GS_INTRO_MAGIKARP
|
||||
dw .Frameset_UnusedIntroAerodactyl ; SPRITE_ANIM_FRAMESET_UNUSED_INTRO_AERODACTYL
|
||||
dw .Frameset_GSIntroLapras ; SPRITE_ANIM_FRAMESET_GS_INTRO_LAPRAS
|
||||
dw .Frameset_GSIntroNote ; SPRITE_ANIM_FRAMESET_GS_INTRO_NOTE
|
||||
dw .Frameset_GSIntroSmallerNote ; SPRITE_ANIM_FRAMESET_GS_INTRO_SMALLER_NOTE
|
||||
dw .Frameset_GSIntroJigglypuff ; SPRITE_ANIM_FRAMESET_GS_INTRO_JIGGLYPUFF
|
||||
dw .Frameset_GSIntroPikachu ; SPRITE_ANIM_FRAMESET_GS_INTRO_PIKACHU
|
||||
dw .Frameset_GSIntroPikachu2 ; SPRITE_ANIM_FRAMESET_GS_INTRO_PIKACHU_2
|
||||
dw .Frameset_GSIntroPikachuTail ; SPRITE_ANIM_FRAMESET_GS_INTRO_PIKACHU_TAIL
|
||||
dw .Frameset_GSIntroPikachuTail2 ; SPRITE_ANIM_FRAMESET_GS_INTRO_PIKACHU_TAIL_2
|
||||
dw .Frameset_GSIntroFireball ; SPRITE_ANIM_FRAMESET_GS_INTRO_FIREBALL
|
||||
dw .Frameset_GSIntroBlastoise ; SPRITE_ANIM_FRAMESET_GS_INTRO_BLASTOISE
|
||||
dw .Frameset_GSIntroVenusaur ; SPRITE_ANIM_FRAMESET_GS_INTRO_VENUSAUR
|
||||
dw .Frameset_GSTitleFlameNote ; SPRITE_ANIM_FRAMESET_GS_TITLE_FLAME_NOTE
|
||||
dw .Frameset_GSIntroPikachu ; SPRITE_ANIM_FRAMESET_GS_MINIGAME_PIKACHU
|
||||
dw .Frameset_GSIntroPikachu2 ; SPRITE_ANIM_FRAMESET_GS_MINIGAME_PIKACHU_2
|
||||
dw .Frameset_GSIntroPikachu3 ; SPRITE_ANIM_FRAMESET_GS_MINIGAME_PIKACHU_3
|
||||
dw .Frameset_MinigamePicrossCursor ; SPRITE_ANIM_FRAMESET_MINIGAME_PICROSS_CURSOR
|
||||
dw .Frameset_MinigamePicrossDust ; SPRITE_ANIM_FRAMESET_MINIGAME_PICROSS_DUST
|
||||
dw .Frameset_MinigamePicrossGold1 ; SPRITE_ANIM_FRAMESET_MINIGAME_PICROSS_GOLD
|
||||
dw .Frameset_MinigamePicrossGold2 ; SPRITE_ANIM_FRAMESET_MINIGAME_PICROSS_GOLD_2
|
||||
dw .Frameset_PokedexCursor ; SPRITE_ANIM_FRAMESET_POKEDEX_CURSOR
|
||||
dw .Frameset_PokedexSlowpoke1 ; SPRITE_ANIM_FRAMESET_POKEDEX_SLOWPOKE
|
||||
dw .Frameset_PokedexSlowpoke2 ; SPRITE_ANIM_FRAMESET_POKEDEX_SLOWPOKE_2
|
||||
dw .Frameset_PokedexSlowpoke3 ; SPRITE_ANIM_FRAMESET_POKEDEX_SLOWPOKE_3
|
||||
dw .Frameset_TextEntryCursor ; SPRITE_ANIM_FRAMESET_TEXT_ENTRY_CURSOR
|
||||
dw .Frameset_GSGameFreakLogo ; SPRITE_ANIM_FRAMESET_GAMEFREAK_LOGO
|
||||
dw .Frameset_GSGameFreakLogoStar ; SPRITE_ANIM_FRAMESET_GS_GAMEFREAK_LOGO_STAR
|
||||
dw .Frameset_GSGameFreakLogoSparkle ; SPRITE_ANIM_FRAMESET_GS_GAMEFREAK_LOGO_SPARKLE
|
||||
dw .Frameset_SlotsGolem ; SPRITE_ANIM_FRAMESET_SLOTS_GOLEM
|
||||
dw .Frameset_SlotsChansey ; SPRITE_ANIM_FRAMESET_SLOTS_CHANSEY
|
||||
dw .Frameset_SlotsChansey2 ; SPRITE_ANIM_FRAMESET_SLOTS_CHANSEY_2
|
||||
dw .Frameset_SlotsEgg ; SPRITE_ANIM_FRAMESET_SLOTS_EGG
|
||||
dw .Frameset_Walk ; SPRITE_ANIM_FRAMESET_WALK
|
||||
dw .Frameset_StillCursor ; SPRITE_ANIM_FRAMESET_STILL_CURSOR
|
||||
dw .Frameset_TradePokeBall ; SPRITE_ANIM_FRAMESET_TRADE_POKE_BALL
|
||||
dw .Frameset_TradePokeBallWobble ; SPRITE_ANIM_FRAMESET_TRADE_POKE_BALL_WOBBLE
|
||||
dw .Frameset_TradePoof ; SPRITE_ANIM_FRAMESET_TRADE_POOF
|
||||
dw .Frameset_TradeTubeBulge ; SPRITE_ANIM_FRAMESET_TRADE_TUBE_BULGE
|
||||
dw .Frameset_TrademonIcon ; SPRITE_ANIM_FRAMESET_TRADEMON_ICON
|
||||
dw .Frameset_TrademonBubble ; SPRITE_ANIM_FRAMESET_TRADEMON_BUBBLE
|
||||
dw .Frameset_Unknown ; SPRITE_ANIM_FRAMESET_UNKNOWN
|
||||
dw .Frameset_RadioFrequencyMeter ; SPRITE_ANIM_FRAMESET_RADIO_FREQUENCY_METER
|
||||
|
||||
.Frameset_00:
|
||||
oamframe SPRITE_ANIM_OAMSET_WALK_1, 32
|
||||
oamend
|
||||
|
||||
.Frameset_PartyMon:
|
||||
oamframe SPRITE_ANIM_OAMSET_WALK_1, 8
|
||||
oamframe SPRITE_ANIM_OAMSET_WALK_2, 8
|
||||
oamrestart
|
||||
|
||||
.Frameset_Walk:
|
||||
oamframe SPRITE_ANIM_OAMSET_WALK_1, 8
|
||||
oamframe SPRITE_ANIM_OAMSET_WALK_2, 8
|
||||
oamframe SPRITE_ANIM_OAMSET_WALK_1, 8
|
||||
oamframe SPRITE_ANIM_OAMSET_WALK_2, 8, OAM_X_FLIP
|
||||
oamrestart
|
||||
|
||||
.Frameset_GSIntroBubble:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_BUBBLE_1, 8
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_BUBBLE_2, 8
|
||||
oamrestart
|
||||
|
||||
.Frameset_GSIntroOmanyte:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_OMANYTE_1, 8
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_OMANYTE_2, 8
|
||||
oamrestart
|
||||
|
||||
.Frameset_GSIntroMagikarp:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_MAGIKARP_1, 1, OAM_X_FLIP
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_MAGIKARP_2, 1, OAM_X_FLIP
|
||||
oamrestart
|
||||
|
||||
.Frameset_UnusedIntroAerodactyl:
|
||||
oamframe SPRITE_ANIM_OAMSET_UNUSED_INTRO_AERODACTYL, 7, OAM_X_FLIP
|
||||
oamend
|
||||
|
||||
.Frameset_GSIntroLapras:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_LAPRAS_1, 7
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_LAPRAS_2, 7
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_LAPRAS_3, 15
|
||||
oamrestart
|
||||
|
||||
.Frameset_GSIntroNote:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_NOTE, 8
|
||||
oamend
|
||||
|
||||
.Frameset_GSIntroSmallerNote:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_SMALLER_NOTE, 8
|
||||
oamend
|
||||
|
||||
.Frameset_GSIntroJigglypuff:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_JIGGLYPUFF_1, 23, OAM_X_FLIP
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_JIGGLYPUFF_2, 3, OAM_X_FLIP
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_JIGGLYPUFF_3, 7
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_JIGGLYPUFF_2, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_JIGGLYPUFF_1, 23
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_JIGGLYPUFF_2, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_JIGGLYPUFF_3, 7
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_JIGGLYPUFF_2, 3, OAM_X_FLIP
|
||||
oamrestart
|
||||
|
||||
.Frameset_GSIntroPikachu:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_1, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_2, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_3, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_4, 3
|
||||
oamrestart
|
||||
|
||||
.Frameset_GSIntroPikachu2:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_2, 8
|
||||
oamend
|
||||
|
||||
.Frameset_GSIntroPikachuTail:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_TAIL_1, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_TAIL_2, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_TAIL_3, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_TAIL_2, 3
|
||||
oamrestart
|
||||
|
||||
.Frameset_GSIntroPikachuTail2:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_TAIL_1, 31
|
||||
oamend
|
||||
|
||||
.Frameset_GSIntroFireball:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_SMALL_FIREBALL, 1
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_MED_FIREBALL, 1
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_BIG_FIREBALL, 1
|
||||
oamdelete
|
||||
|
||||
.Frameset_GSIntroBlastoise:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_BLASTOISE, 24
|
||||
oamdelete
|
||||
|
||||
.Frameset_GSIntroVenusaur:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_VENUSAUR, 24, OAM_X_FLIP
|
||||
oamdelete
|
||||
|
||||
.Frameset_GSTitleFlameNote:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_TITLE_FLAME_NOTE_1, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_TITLE_FLAME_NOTE_2, 3
|
||||
oamrestart
|
||||
|
||||
.Frameset_GSIntroPikachu3:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_2, 0
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_3, 15
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_4, 15
|
||||
oamend
|
||||
|
||||
.Frameset_MinigamePicrossCursor:
|
||||
oamframe SPRITE_ANIM_OAMSET_MINIGAME_PICROSS_CURSOR, 8
|
||||
oamwait 8
|
||||
oamrestart
|
||||
|
||||
.Frameset_MinigamePicrossDust:
|
||||
oamframe SPRITE_ANIM_OAMSET_MINIGAME_PICROSS_DUST_1, 1
|
||||
oamframe SPRITE_ANIM_OAMSET_MINIGAME_PICROSS_DUST_2, 1
|
||||
oamdelete
|
||||
|
||||
.Frameset_MinigamePicrossGold2:
|
||||
oamframe SPRITE_ANIM_OAMSET_WALK_2, 3, OAM_X_FLIP
|
||||
oamframe SPRITE_ANIM_OAMSET_WALK_1, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_WALK_2, 3, OAM_X_FLIP
|
||||
; fallthrough
|
||||
.Frameset_MinigamePicrossGold1:
|
||||
oamframe SPRITE_ANIM_OAMSET_WALK_1, 8
|
||||
oamend
|
||||
|
||||
.Frameset_PokedexCursor:
|
||||
oamframe SPRITE_ANIM_OAMSET_POKEDEX_CURSOR, 1
|
||||
oamwait 1
|
||||
oamrestart
|
||||
|
||||
.Frameset_PokedexSlowpoke1:
|
||||
oamframe SPRITE_ANIM_OAMSET_POKEDEX_SLOWPOKE_1, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_POKEDEX_SLOWPOKE_2, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_POKEDEX_SLOWPOKE_3, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_POKEDEX_SLOWPOKE_4, 3
|
||||
oamrestart
|
||||
|
||||
.Frameset_PokedexSlowpoke2:
|
||||
oamframe SPRITE_ANIM_OAMSET_POKEDEX_SLOWPOKE_5, 32
|
||||
oamdelete
|
||||
|
||||
.Frameset_PokedexSlowpoke3:
|
||||
oamframe SPRITE_ANIM_OAMSET_POKEDEX_SLOWPOKE_1, 32
|
||||
oamdelete
|
||||
|
||||
.Frameset_TextEntryCursor:
|
||||
oamframe SPRITE_ANIM_OAMSET_TEXT_ENTRY_CURSOR, 1
|
||||
oamwait 1
|
||||
oamrestart
|
||||
|
||||
.Frameset_GSGameFreakLogo:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO, 8
|
||||
oamend
|
||||
|
||||
.Frameset_GSGameFreakLogoStar:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_STAR, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_STAR, 3, OAM_Y_FLIP
|
||||
oamrestart
|
||||
|
||||
.Frameset_GSGameFreakLogoSparkle:
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_1, 2
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_2, 2
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_3, 2
|
||||
oamframe SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_2, 2
|
||||
oamrestart
|
||||
|
||||
.Frameset_SlotsGolem:
|
||||
oamframe SPRITE_ANIM_OAMSET_SLOTS_GOLEM_1, 7
|
||||
oamframe SPRITE_ANIM_OAMSET_SLOTS_GOLEM_2, 7
|
||||
oamframe SPRITE_ANIM_OAMSET_SLOTS_GOLEM_1, 7, OAM_Y_FLIP
|
||||
oamframe SPRITE_ANIM_OAMSET_SLOTS_GOLEM_2, 7, OAM_X_FLIP
|
||||
oamrestart
|
||||
|
||||
.Frameset_SlotsChansey:
|
||||
oamframe SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_1, 7
|
||||
oamframe SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_2, 7
|
||||
oamframe SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_1, 7
|
||||
oamframe SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_3, 7
|
||||
oamrestart
|
||||
|
||||
.Frameset_SlotsChansey2:
|
||||
oamframe SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_1, 7
|
||||
oamframe SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_4, 7
|
||||
oamframe SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_5, 7
|
||||
oamframe SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_4, 7
|
||||
oamframe SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_1, 7
|
||||
oamend
|
||||
|
||||
.Frameset_SlotsEgg:
|
||||
oamframe SPRITE_ANIM_OAMSET_SLOTS_EGG, 20
|
||||
oamend
|
||||
|
||||
.Frameset_StillCursor:
|
||||
oamframe SPRITE_ANIM_OAMSET_STILL_CURSOR, 32
|
||||
oamend
|
||||
|
||||
.Frameset_TradePokeBall:
|
||||
oamframe SPRITE_ANIM_OAMSET_TRADE_POKE_BALL_1, 32
|
||||
oamend
|
||||
|
||||
.Frameset_TradePokeBallWobble:
|
||||
oamframe SPRITE_ANIM_OAMSET_TRADE_POKE_BALL_1, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_TRADE_POKE_BALL_2, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_TRADE_POKE_BALL_1, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_TRADE_POKE_BALL_2, 3, OAM_X_FLIP
|
||||
oamrestart
|
||||
|
||||
.Frameset_TradePoof
|
||||
oamframe SPRITE_ANIM_OAMSET_TRADE_POOF_1, 4
|
||||
oamframe SPRITE_ANIM_OAMSET_TRADE_POOF_2, 4
|
||||
oamframe SPRITE_ANIM_OAMSET_TRADE_POOF_3, 4
|
||||
oamdelete
|
||||
|
||||
.Frameset_TradeTubeBulge:
|
||||
oamframe SPRITE_ANIM_OAMSET_TRADE_TUBE_BULGE_1, 3
|
||||
oamframe SPRITE_ANIM_OAMSET_TRADE_TUBE_BULGE_2, 3
|
||||
oamrestart
|
||||
|
||||
.Frameset_TrademonIcon:
|
||||
oamframe SPRITE_ANIM_OAMSET_TRADEMON_ICON_1, 7
|
||||
oamframe SPRITE_ANIM_OAMSET_TRADEMON_ICON_2, 7
|
||||
oamrestart
|
||||
|
||||
.Frameset_TrademonBubble:
|
||||
oamframe SPRITE_ANIM_OAMSET_TRADEMON_BUBBLE, 32
|
||||
oamend
|
||||
|
||||
.Frameset_Unknown:
|
||||
oamframe SPRITE_ANIM_OAMSET_UNKNOWN_41, 32
|
||||
oamend
|
||||
|
||||
.Frameset_RadioFrequencyMeter:
|
||||
oamframe SPRITE_ANIM_OAMSET_RADIO_FREQUENCY_METER, 32
|
||||
oamend
|
||||
61
data/sprite_anims/gfx.inc
Normal file
61
data/sprite_anims/gfx.inc
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
MACRO sprite_anim_obj_gfx
|
||||
; # tiles, gfx pointer
|
||||
db \1
|
||||
dbw \2, \3
|
||||
ENDM
|
||||
|
||||
; entries correspond to SPRITE_ANIM_DICT_* constants
|
||||
SpriteAnimGFX:
|
||||
; # tiles, gfx bank, gfx pointer
|
||||
; (good chunk of pointers were dummied out to either .DeletedGFX or MenuMonIconGFX)
|
||||
sprite_anim_obj_gfx 16, $31, MenuMonIconGFX
|
||||
sprite_anim_obj_gfx 8, BANK(PoliwagIcon), PoliwagIcon ; SPRITE_ANIM_DICT_POLIWAG_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(JigglypuffIcon), JigglypuffIcon ; SPRITE_ANIM_DICT_JIGGLYPUFF_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(DiglettIcon), DiglettIcon ; SPRITE_ANIM_DICT_DIGLETT_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(PikachuIcon), PikachuIcon ; SPRITE_ANIM_DICT_PIKACHU_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(StaryuIcon), StaryuIcon ; SPRITE_ANIM_DICT_STARYU_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(MagikarpIcon), MagikarpIcon ; SPRITE_ANIM_DICT_MAGIKARP_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(PidgeyIcon), PidgeyIcon ; SPRITE_ANIM_DICT_PIDGEY_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(RhydonIcon), RhydonIcon ; SPRITE_ANIM_DICT_RHYDON_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(ClefairyIcon), ClefairyIcon ; SPRITE_ANIM_DICT_CLEFAIRY_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(OddishIcon), OddishIcon ; SPRITE_ANIM_DICT_ODDISH_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(MushiIcon), MushiIcon ; SPRITE_ANIM_DICT_MUSHI_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(GengarIcon), GengarIcon ; SPRITE_ANIM_DICT_GENGAR_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(LaprasIcon), LaprasIcon ; SPRITE_ANIM_DICT_LAPRAS_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(MrMimeIcon), MrMimeIcon ; SPRITE_ANIM_DICT_MRMIME_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(LokonIcon), LokonIcon ; SPRITE_ANIM_DICT_LOKON_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(TaurosIcon), TaurosIcon ; SPRITE_ANIM_DICT_TAUROS_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(ShellderIcon), ShellderIcon ; SPRITE_ANIM_DICT_SHELLDER_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(DittoIcon), DittoIcon ; SPRITE_ANIM_DICT_DITTO_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(OnixIcon), OnixIcon ; SPRITE_ANIM_DICT_ONIX_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(VoltorbIcon), VoltorbIcon ; SPRITE_ANIM_DICT_VOLTORB_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(SquirtleIcon), SquirtleIcon ; SPRITE_ANIM_DICT_SQUIRTLE_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(BulbasaurIcon), BulbasaurIcon ; SPRITE_ANIM_DICT_BULBASAUR_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(CharmanderIcon), CharmanderIcon ; SPRITE_ANIM_DICT_CHARMANDER_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(WeedleIcon), WeedleIcon ; SPRITE_ANIM_DICT_WEEDLE_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(AnnonIcon), AnnonIcon ; SPRITE_ANIM_DICT_ANNON_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(GeodudeIcon), GeodudeIcon ; SPRITE_ANIM_DICT_GEODUDE_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(MachopIcon), MachopIcon ; SPRITE_ANIM_DICT_MACHOP_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(EggIcon), EggIcon ; SPRITE_ANIM_DICT_EGG_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(TentacoolIcon), TentacoolIcon ; SPRITE_ANIM_DICT_TENTACOOL_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(ButterfreeIcon), ButterfreeIcon ; SPRITE_ANIM_DICT_BUTTERFREE_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(ZubatIcon), ZubatIcon ; SPRITE_ANIM_DICT_ZUBAT_ICON
|
||||
sprite_anim_obj_gfx 8, BANK(SnorlaxIcon), SnorlaxIcon ; SPRITE_ANIM_DICT_SNORLAX_ICON
|
||||
sprite_anim_obj_gfx 128, $01, .DeletedGFX ; SPRITE_ANIM_DICT_GS_INTRO
|
||||
sprite_anim_obj_gfx 128, $01, .DeletedGFX ; SPRITE_ANIM_DICT_GS_INTRO_2
|
||||
sprite_anim_obj_gfx 128, $01, .DeletedGFX ; SPRITE_ANIM_DICT_GS_INTRO_3
|
||||
sprite_anim_obj_gfx 128, $01, .DeletedGFX ; SPRITE_ANIM_DICT_TITLE_FLAME_NOTE
|
||||
sprite_anim_obj_gfx 16, $37, .DeletedGFX ; SPRITE_ANIM_DICT_MINIGAME_PICROSS
|
||||
sprite_anim_obj_gfx 16, $11, .DeletedGFX ; SPRITE_ANIM_DICT_TEXT_CURSOR
|
||||
sprite_anim_obj_gfx 16, $39, .DeletedGFX ; SPRITE_ANIM_DICT_GS_SPLASH
|
||||
sprite_anim_obj_gfx 16, $24, .DeletedGFX ; SPRITE_ANIM_DICT_SLOTS
|
||||
sprite_anim_obj_gfx 16, $21, .DeletedGFX ; SPRITE_ANIM_DICT_ARROW_CURSOR
|
||||
|
||||
; Unused placeholders
|
||||
sprite_anim_obj_gfx 16, $31, MenuMonIconGFX
|
||||
sprite_anim_obj_gfx 16, $31, MenuMonIconGFX
|
||||
sprite_anim_obj_gfx 16, $31, MenuMonIconGFX
|
||||
sprite_anim_obj_gfx 16, $31, MenuMonIconGFX
|
||||
sprite_anim_obj_gfx 16, $31, MenuMonIconGFX
|
||||
|
||||
.DeletedGFX
|
||||
568
data/sprite_anims/oam.inc
Normal file
568
data/sprite_anims/oam.inc
Normal file
|
|
@ -0,0 +1,568 @@
|
|||
MACRO spriteanimoam
|
||||
; vtile offset, data pointer
|
||||
db \1
|
||||
dw \2
|
||||
ENDM
|
||||
|
||||
SpriteAnimOAMData:
|
||||
spriteanimoam $00, .OAMData_Walk ; SPRITE_ANIM_OAMSET_WALK_1
|
||||
spriteanimoam $04, .OAMData_Walk ; SPRITE_ANIM_OAMSET_WALK_2
|
||||
spriteanimoam $4c, .OAMData_1x1_Palette0 ; SPRITE_ANIM_OAMSET_GS_INTRO_BUBBLE_1
|
||||
spriteanimoam $5c, .OAMData_1x1_Palette0 ; SPRITE_ANIM_OAMSET_GS_INTRO_BUBBLE_2
|
||||
spriteanimoam $6c, .OAMData_GSIntroOmanyte ; SPRITE_ANIM_OAMSET_GS_INTRO_OMANYTE_1
|
||||
spriteanimoam $6e, .OAMData_GSIntroOmanyte ; SPRITE_ANIM_OAMSET_GS_INTRO_OMANYTE_2
|
||||
spriteanimoam $2d, .OAMData_GSIntroMagikarp ; SPRITE_ANIM_OAMSET_GS_INTRO_MAGIKARP_1
|
||||
spriteanimoam $4d, .OAMData_GSIntroMagikarp ; SPRITE_ANIM_OAMSET_GS_INTRO_MAGIKARP_2
|
||||
spriteanimoam $60, .OAMData_UnusedIntroAerodactyl ; SPRITE_ANIM_OAMSET_UNUSED_INTRO_AERODACTYL
|
||||
spriteanimoam $00, .OAMData_GSIntroLapras1 ; SPRITE_ANIM_OAMSET_GS_INTRO_LAPRAS_1
|
||||
spriteanimoam $00, .OAMData_GSIntroLapras2 ; SPRITE_ANIM_OAMSET_GS_INTRO_LAPRAS_2
|
||||
spriteanimoam $06, .OAMData_GSIntroLapras3 ; SPRITE_ANIM_OAMSET_GS_INTRO_LAPRAS_3
|
||||
spriteanimoam $0c, .OAMData_GSIntroNote ; SPRITE_ANIM_OAMSET_GS_INTRO_NOTE
|
||||
spriteanimoam $0d, .OAMData_1x1_Palette0 ; SPRITE_ANIM_OAMSET_GS_INTRO_SMALLER_NOTE
|
||||
spriteanimoam $00, .OAMData_GSIntroJigglypuffPikachu ; SPRITE_ANIM_OAMSET_GS_INTRO_JIGGLYPUFF_1
|
||||
spriteanimoam $04, .OAMData_GSIntroJigglypuffPikachu ; SPRITE_ANIM_OAMSET_GS_INTRO_JIGGLYPUFF_2
|
||||
spriteanimoam $08, .OAMData_GSIntroJigglypuffPikachu ; SPRITE_ANIM_OAMSET_GS_INTRO_JIGGLYPUFF_3
|
||||
spriteanimoam $40, .OAMData_GSIntroJigglypuffPikachu ; SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_1
|
||||
spriteanimoam $44, .OAMData_GSIntroJigglypuffPikachu ; SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_2
|
||||
spriteanimoam $48, .OAMData_GSIntroJigglypuffPikachu ; SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_3
|
||||
spriteanimoam $4c, .OAMData_GSIntroJigglypuffPikachu ; SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_4
|
||||
spriteanimoam $80, .OAMData_GSIntroPikachuTail ; SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_TAIL_1
|
||||
spriteanimoam $85, .OAMData_GSIntroPikachuTail ; SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_TAIL_2
|
||||
spriteanimoam $8a, .OAMData_GSIntroPikachuTail ; SPRITE_ANIM_OAMSET_GS_INTRO_PIKACHU_TAIL_3
|
||||
spriteanimoam $00, .OAMData_GSIntroSmallFireball ; SPRITE_ANIM_OAMSET_GS_INTRO_SMALL_FIREBALL
|
||||
spriteanimoam $01, .OAMData_TradePoofBubble ; SPRITE_ANIM_OAMSET_GS_INTRO_MED_FIREBALL
|
||||
spriteanimoam $09, .OAMData_GSIntroBigFireball ; SPRITE_ANIM_OAMSET_GS_INTRO_BIG_FIREBALL
|
||||
spriteanimoam $10, .OAMData_GSIntroVenusaurBlastoise ; SPRITE_ANIM_OAMSET_GS_INTRO_BLASTOISE
|
||||
spriteanimoam $40, .OAMData_GSIntroVenusaurBlastoise ; SPRITE_ANIM_OAMSET_GS_INTRO_VENUSAUR
|
||||
spriteanimoam $00, .OAMData_Walk ; SPRITE_ANIM_OAMSET_GS_TITLE_FLAME_NOTE_1
|
||||
spriteanimoam $04, .OAMData_Walk ; SPRITE_ANIM_OAMSET_GS_TITLE_FLAME_NOTE_2
|
||||
spriteanimoam $00, .OAMData_MinigamePicrossCursor ; SPRITE_ANIM_OAMSET_MINIGAME_PICROSS_CURSOR
|
||||
spriteanimoam $01, .OAMData_1x1_Palette0 ; SPRITE_ANIM_OAMSET_MINIGAME_PICROSS_DUST_1
|
||||
spriteanimoam $02, .OAMData_Walk ; SPRITE_ANIM_OAMSET_MINIGAME_PICROSS_DUST_1
|
||||
spriteanimoam $04, .OAMData_PokedexCursor ; SPRITE_ANIM_OAMSET_POKEDEX_CURSOR
|
||||
spriteanimoam $00, .OAMData_PokedexSlowpoke1 ; SPRITE_ANIM_OAMSET_POKEDEX_SLOWPOKE_1
|
||||
spriteanimoam $00, .OAMData_PokedexSlowpoke2 ; SPRITE_ANIM_OAMSET_POKEDEX_SLOWPOKE_2
|
||||
spriteanimoam $00, .OAMData_PokedexSlowpoke3 ; SPRITE_ANIM_OAMSET_POKEDEX_SLOWPOKE_3
|
||||
spriteanimoam $00, .OAMData_PokedexSlowpoke4 ; SPRITE_ANIM_OAMSET_POKEDEX_SLOWPOKE_4
|
||||
spriteanimoam $00, .OAMData_PokedexSlowpoke5 ; SPRITE_ANIM_OAMSET_POKEDEX_SLOWPOKE_5
|
||||
spriteanimoam $00, .OAMData_TextEntryCursor ; SPRITE_ANIM_OAMSET_TEXT_ENTRY_CURSOR
|
||||
spriteanimoam $00, .OAMData_GSGameFreakLogo ; SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO
|
||||
spriteanimoam $0f, .OAMData_GSGameFreakLogoStar ; SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_STAR
|
||||
spriteanimoam $11, .OAMData_1x1_Palette0 ; SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_1
|
||||
spriteanimoam $12, .OAMData_1x1_Palette0 ; SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_2
|
||||
spriteanimoam $13, .OAMData_1x1_Palette0 ; SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_3
|
||||
spriteanimoam $00, .OAMData_SlotsGolem ; SPRITE_ANIM_OAMSET_SLOTS_GOLEM_1
|
||||
spriteanimoam $08, .OAMData_SlotsGolem ; SPRITE_ANIM_OAMSET_SLOTS_GOLEM_2
|
||||
spriteanimoam $10, .OAMData_SlotsChansey1 ; SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_1
|
||||
spriteanimoam $10, .OAMData_SlotsChansey2 ; SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_2
|
||||
spriteanimoam $10, .OAMData_SlotsChansey3 ; SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_3
|
||||
spriteanimoam $10, .OAMData_SlotsChansey4 ; SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_4
|
||||
spriteanimoam $10, .OAMData_SlotsChansey5 ; SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_5
|
||||
spriteanimoam $3a, .OAMData_1x1_Palette0 ; SPRITE_ANIM_OAMSET_SLOTS_EGG
|
||||
spriteanimoam $00, .OAMData_Walk ; SPRITE_ANIM_OAMSET_STILL_CURSOR
|
||||
spriteanimoam $00, .OAMData_TradePokeBall1 ; SPRITE_ANIM_OAMSET_TRADE_POKE_BALL_1
|
||||
spriteanimoam $02, .OAMData_WalkPriority ; SPRITE_ANIM_OAMSET_TRADE_POKE_BALL_2
|
||||
spriteanimoam $06, .OAMData_TradePoofBubble ; SPRITE_ANIM_OAMSET_TRADE_POOF_1
|
||||
spriteanimoam $0a, .OAMData_TradePoofBubble ; SPRITE_ANIM_OAMSET_TRADE_POOF_2
|
||||
spriteanimoam $0e, .OAMData_TradePoofBubble ; SPRITE_ANIM_OAMSET_TRADE_POOF_3
|
||||
spriteanimoam $12, .OAMData_GSIntroSmallFireball ; SPRITE_ANIM_OAMSET_TRADE_TUBE_BULGE_1
|
||||
spriteanimoam $13, .OAMData_GSIntroSmallFireball ; SPRITE_ANIM_OAMSET_TRADE_TUBE_BULGE_2
|
||||
spriteanimoam $00, .OAMData_Walk ; SPRITE_ANIM_OAMSET_TRADEMON_ICON_1
|
||||
spriteanimoam $04, .OAMData_Walk ; SPRITE_ANIM_OAMSET_TRADEMON_ICON_2
|
||||
spriteanimoam $10, .OAMData_TradePoofBubble ; SPRITE_ANIM_OAMSET_TRADEMON_BUBBLE
|
||||
spriteanimoam $00, .OAMData_Unknown1 ; SPRITE_ANIM_OAMSET_UNKNOWN_41
|
||||
spriteanimoam $00, .OAMData_RadioFrequencyMeter ; SPRITE_ANIM_OAMSET_RADIO_FREQUENCY_METER
|
||||
|
||||
.OAMData_1x1_Palette0:
|
||||
db 1
|
||||
dbsprite -1, -1, 4, 4, $00, 0
|
||||
|
||||
.OAMData_GSIntroOmanyte:
|
||||
db 4
|
||||
dbsprite -1, -1, 0, 0, $00, 0
|
||||
dbsprite 0, -1, 0, 0, $01, 0
|
||||
dbsprite -1, 0, 0, 0, $10, 0
|
||||
dbsprite 0, 0, 0, 0, $11, 0
|
||||
|
||||
.OAMData_GSGameFreakLogoStar:
|
||||
db 4
|
||||
dbsprite -1, -1, 0, 0, $00, 0
|
||||
dbsprite 0, -1, 0, 0, $00, 0 | X_FLIP
|
||||
dbsprite -1, 0, 0, 0, $01, 0
|
||||
dbsprite 0, 0, 0, 0, $01, 0 | X_FLIP
|
||||
|
||||
.OAMData_TradePokeBall1:
|
||||
db 4
|
||||
dbsprite -1, -1, 0, 0, $00, 0 | PRIORITY
|
||||
dbsprite 0, -1, 0, 0, $00, 0 | X_FLIP | PRIORITY
|
||||
dbsprite -1, 0, 0, 0, $01, 0 | PRIORITY
|
||||
dbsprite 0, 0, 0, 0, $01, 0 | X_FLIP | PRIORITY
|
||||
|
||||
.OAMData_GSIntroSmallFireball:
|
||||
db 4
|
||||
dbsprite -1, -1, 0, 0, $00, 0
|
||||
dbsprite 0, -1, 0, 0, $00, 0 | X_FLIP
|
||||
dbsprite -1, 0, 0, 0, $00, 0 | Y_FLIP
|
||||
dbsprite 0, 0, 0, 0, $00, 0 | X_FLIP | Y_FLIP
|
||||
|
||||
; Unreferenced in pokegold
|
||||
.OAMData_Unknown1:
|
||||
db 4
|
||||
dbsprite -1, -1, 0, 0, $00, 0 | PRIORITY
|
||||
dbsprite 0, -1, 0, 0, $00, 0 | X_FLIP | PRIORITY
|
||||
dbsprite -1, 0, 0, 0, $00, 0 | Y_FLIP | PRIORITY
|
||||
dbsprite 0, 0, 0, 0, $00, 0 | X_FLIP | Y_FLIP | PRIORITY
|
||||
|
||||
.OAMData_TradePoofBubble:
|
||||
db 16
|
||||
dbsprite -2, -2, 0, 0, $00, 0
|
||||
dbsprite -1, -2, 0, 0, $01, 0
|
||||
dbsprite -2, -1, 0, 0, $02, 0
|
||||
dbsprite -1, -1, 0, 0, $03, 0
|
||||
dbsprite 0, -2, 0, 0, $01, 0 | X_FLIP
|
||||
dbsprite 1, -2, 0, 0, $00, 0 | X_FLIP
|
||||
dbsprite 0, -1, 0, 0, $03, 0 | X_FLIP
|
||||
dbsprite 1, -1, 0, 0, $02, 0 | X_FLIP
|
||||
dbsprite -2, 0, 0, 0, $02, 0 | Y_FLIP
|
||||
dbsprite -1, 0, 0, 0, $03, 0 | Y_FLIP
|
||||
dbsprite -2, 1, 0, 0, $00, 0 | Y_FLIP
|
||||
dbsprite -1, 1, 0, 0, $01, 0 | Y_FLIP
|
||||
dbsprite 0, 0, 0, 0, $03, 0 | X_FLIP | Y_FLIP
|
||||
dbsprite 1, 0, 0, 0, $02, 0 | X_FLIP | Y_FLIP
|
||||
dbsprite 0, 1, 0, 0, $01, 0 | X_FLIP | Y_FLIP
|
||||
dbsprite 1, 1, 0, 0, $00, 0 | X_FLIP | Y_FLIP
|
||||
|
||||
.OAMData_GSIntroBigFireball:
|
||||
db 36
|
||||
dbsprite -3, -3, 0, 0, $00, 0
|
||||
dbsprite -2, -3, 0, 0, $01, 0
|
||||
dbsprite -1, -3, 0, 0, $02, 0
|
||||
dbsprite -3, -2, 0, 0, $03, 0
|
||||
dbsprite -2, -2, 0, 0, $04, 0
|
||||
dbsprite -1, -2, 0, 0, $05, 0
|
||||
dbsprite -3, -1, 0, 0, $06, 0
|
||||
dbsprite -2, -1, 0, 0, $05, 0
|
||||
dbsprite -1, -1, 0, 0, $05, 0
|
||||
dbsprite 0, -3, 0, 0, $02, 0 | X_FLIP
|
||||
dbsprite 1, -3, 0, 0, $01, 0 | X_FLIP
|
||||
dbsprite 2, -3, 0, 0, $00, 0 | X_FLIP
|
||||
dbsprite 0, -2, 0, 0, $05, 0 | X_FLIP
|
||||
dbsprite 1, -2, 0, 0, $04, 0 | X_FLIP
|
||||
dbsprite 2, -2, 0, 0, $03, 0 | X_FLIP
|
||||
dbsprite 0, -1, 0, 0, $05, 0 | X_FLIP
|
||||
dbsprite 1, -1, 0, 0, $05, 0 | X_FLIP
|
||||
dbsprite 2, -1, 0, 0, $06, 0 | X_FLIP
|
||||
dbsprite -3, 0, 0, 0, $06, 0 | Y_FLIP
|
||||
dbsprite -2, 0, 0, 0, $05, 0 | Y_FLIP
|
||||
dbsprite -1, 0, 0, 0, $05, 0 | Y_FLIP
|
||||
dbsprite -3, 1, 0, 0, $03, 0 | Y_FLIP
|
||||
dbsprite -2, 1, 0, 0, $04, 0 | Y_FLIP
|
||||
dbsprite -1, 1, 0, 0, $05, 0 | Y_FLIP
|
||||
dbsprite -3, 2, 0, 0, $00, 0 | Y_FLIP
|
||||
dbsprite -2, 2, 0, 0, $01, 0 | Y_FLIP
|
||||
dbsprite -1, 2, 0, 0, $02, 0 | Y_FLIP
|
||||
dbsprite 0, 0, 0, 0, $05, 0 | X_FLIP | Y_FLIP
|
||||
dbsprite 1, 0, 0, 0, $05, 0 | X_FLIP | Y_FLIP
|
||||
dbsprite 2, 0, 0, 0, $06, 0 | X_FLIP | Y_FLIP
|
||||
dbsprite 0, 1, 0, 0, $05, 0 | X_FLIP | Y_FLIP
|
||||
dbsprite 1, 1, 0, 0, $04, 0 | X_FLIP | Y_FLIP
|
||||
dbsprite 2, 1, 0, 0, $03, 0 | X_FLIP | Y_FLIP
|
||||
dbsprite 0, 2, 0, 0, $02, 0 | X_FLIP | Y_FLIP
|
||||
dbsprite 1, 2, 0, 0, $01, 0 | X_FLIP | Y_FLIP
|
||||
dbsprite 2, 2, 0, 0, $00, 0 | X_FLIP | Y_FLIP
|
||||
|
||||
.OAMData_GSIntroJigglypuffPikachu:
|
||||
db 16
|
||||
dbsprite -2, -2, 0, 0, $00, 0
|
||||
dbsprite -1, -2, 0, 0, $01, 0
|
||||
dbsprite 0, -2, 0, 0, $02, 0
|
||||
dbsprite 1, -2, 0, 0, $03, 0
|
||||
dbsprite -2, -1, 0, 0, $10, 0
|
||||
dbsprite -1, -1, 0, 0, $11, 0
|
||||
dbsprite 0, -1, 0, 0, $12, 0
|
||||
dbsprite 1, -1, 0, 0, $13, 0
|
||||
dbsprite -2, 0, 0, 0, $20, 0
|
||||
dbsprite -1, 0, 0, 0, $21, 0
|
||||
dbsprite 0, 0, 0, 0, $22, 0
|
||||
dbsprite 1, 0, 0, 0, $23, 0
|
||||
dbsprite -2, 1, 0, 0, $30, 0
|
||||
dbsprite -1, 1, 0, 0, $31, 0
|
||||
dbsprite 0, 1, 0, 0, $32, 0
|
||||
dbsprite 1, 1, 0, 0, $33, 0
|
||||
|
||||
; Known as .OAMData_Unknown2 in pokegold
|
||||
.OAMData_GSIntroVenusaurBlastoise:
|
||||
db 36
|
||||
dbsprite -3, -3, 0, 0, $00, 0
|
||||
dbsprite -2, -3, 0, 0, $01, 0
|
||||
dbsprite -1, -3, 0, 0, $02, 0
|
||||
dbsprite 0, -3, 0, 0, $03, 0
|
||||
dbsprite 1, -3, 0, 0, $04, 0
|
||||
dbsprite 2, -3, 0, 0, $05, 0
|
||||
dbsprite -3, -2, 0, 0, $06, 0
|
||||
dbsprite -2, -2, 0, 0, $07, 0
|
||||
dbsprite -1, -2, 0, 0, $08, 0
|
||||
dbsprite 0, -2, 0, 0, $09, 0
|
||||
dbsprite 1, -2, 0, 0, $0a, 0
|
||||
dbsprite 2, -2, 0, 0, $0b, 0
|
||||
dbsprite -3, -1, 0, 0, $0c, 0
|
||||
dbsprite -2, -1, 0, 0, $0d, 0
|
||||
dbsprite -1, -1, 0, 0, $0e, 0
|
||||
dbsprite 0, -1, 0, 0, $0f, 0
|
||||
dbsprite 1, -1, 0, 0, $10, 0
|
||||
dbsprite 2, -1, 0, 0, $11, 0
|
||||
dbsprite -3, 0, 0, 0, $12, 0
|
||||
dbsprite -2, 0, 0, 0, $13, 0
|
||||
dbsprite -1, 0, 0, 0, $14, 0
|
||||
dbsprite 0, 0, 0, 0, $15, 0
|
||||
dbsprite 1, 0, 0, 0, $16, 0
|
||||
dbsprite 2, 0, 0, 0, $17, 0
|
||||
dbsprite -3, 1, 0, 0, $18, 0
|
||||
dbsprite -2, 1, 0, 0, $19, 0
|
||||
dbsprite -1, 1, 0, 0, $1a, 0
|
||||
dbsprite 0, 1, 0, 0, $1b, 0
|
||||
dbsprite 1, 1, 0, 0, $1c, 0
|
||||
dbsprite 2, 1, 0, 0, $1d, 0
|
||||
dbsprite -3, 2, 0, 0, $1e, 0
|
||||
dbsprite -2, 2, 0, 0, $1f, 0
|
||||
dbsprite -1, 2, 0, 0, $20, 0
|
||||
dbsprite 0, 2, 0, 0, $21, 0
|
||||
dbsprite 1, 2, 0, 0, $22, 0
|
||||
dbsprite 2, 2, 0, 0, $23, 0
|
||||
|
||||
.OAMData_Walk:
|
||||
db 4
|
||||
dbsprite -1, -1, 0, 0, $00, 0
|
||||
dbsprite 0, -1, 0, 0, $01, 0
|
||||
dbsprite -1, 0, 0, 0, $02, 0
|
||||
dbsprite 0, 0, 0, 0, $03, 0
|
||||
|
||||
.OAMData_WalkPriority:
|
||||
db 4
|
||||
dbsprite -1, -1, 0, 0, $00, 0 | PRIORITY
|
||||
dbsprite 0, -1, 0, 0, $01, 0 | PRIORITY
|
||||
dbsprite -1, 0, 0, 0, $02, 0 | PRIORITY
|
||||
dbsprite 0, 0, 0, 0, $03, 0 | PRIORITY
|
||||
|
||||
.OAMData_GSIntroMagikarp:
|
||||
db 6
|
||||
dbsprite -2, -1, 4, 0, $00, 0
|
||||
dbsprite -1, -1, 4, 0, $01, 0
|
||||
dbsprite 0, -1, 4, 0, $02, 0
|
||||
dbsprite -2, 0, 4, 0, $10, 0
|
||||
dbsprite -1, 0, 4, 0, $11, 0
|
||||
dbsprite 0, 0, 4, 0, $12, 0
|
||||
|
||||
.OAMData_UnusedIntroAerodactyl:
|
||||
db 10
|
||||
dbsprite -2, -2, 0, 4, $00, 0
|
||||
dbsprite -1, -2, 0, 4, $01, 0
|
||||
dbsprite 0, -2, 0, 4, $02, 0
|
||||
dbsprite 1, -2, 0, 4, $03, 0
|
||||
dbsprite -2, -1, 0, 4, $04, 0
|
||||
dbsprite -1, -1, 0, 4, $05, 0
|
||||
dbsprite 0, -1, 0, 4, $06, 0
|
||||
dbsprite -2, 0, 0, 4, $08, 0
|
||||
dbsprite -1, 0, 0, 4, $09, 0
|
||||
dbsprite 0, 0, 0, 4, $0a, 0
|
||||
|
||||
.OAMData_GSIntroLapras1:
|
||||
db 27
|
||||
dbsprite -3, -3, 0, 0, $00, 0 | PRIORITY
|
||||
dbsprite -2, -3, 0, 0, $01, 0 | PRIORITY
|
||||
dbsprite -1, -3, 0, 0, $02, 0 | PRIORITY
|
||||
dbsprite -3, -2, 0, 0, $10, 0 | PRIORITY
|
||||
dbsprite -2, -2, 0, 0, $11, 0 | PRIORITY
|
||||
dbsprite -1, -2, 0, 0, $12, 0 | PRIORITY
|
||||
dbsprite -3, -1, 0, 0, $20, 0 | PRIORITY
|
||||
dbsprite -2, -1, 0, 0, $21, 0 | PRIORITY
|
||||
dbsprite -1, -1, 0, 0, $22, 0 | PRIORITY
|
||||
dbsprite 0, -1, 0, 0, $23, 0 | PRIORITY
|
||||
dbsprite -3, 0, 0, 0, $30, 0 | PRIORITY
|
||||
dbsprite -2, 0, 0, 0, $31, 0 | PRIORITY
|
||||
dbsprite -1, 0, 0, 0, $32, 0 | PRIORITY
|
||||
dbsprite 0, 0, 0, 0, $33, 0 | PRIORITY
|
||||
dbsprite 1, 0, 0, 0, $34, 0 | PRIORITY
|
||||
dbsprite -3, 1, 0, 0, $40, 0 | PRIORITY
|
||||
dbsprite -2, 1, 0, 0, $41, 0 | PRIORITY
|
||||
dbsprite -1, 1, 0, 0, $42, 0 | PRIORITY
|
||||
dbsprite 0, 1, 0, 0, $43, 0 | PRIORITY
|
||||
dbsprite 1, 1, 0, 0, $44, 0 | PRIORITY
|
||||
dbsprite 2, 1, 0, 0, $45, 0 | PRIORITY
|
||||
dbsprite -3, 2, 0, 0, $50, 0 | PRIORITY
|
||||
dbsprite -2, 2, 0, 0, $51, 0 | PRIORITY
|
||||
dbsprite -1, 2, 0, 0, $52, 0 | PRIORITY
|
||||
dbsprite 0, 2, 0, 0, $53, 0 | PRIORITY
|
||||
dbsprite 1, 2, 0, 0, $54, 0 | PRIORITY
|
||||
dbsprite 2, 2, 0, 0, $55, 0 | PRIORITY
|
||||
|
||||
.OAMData_GSIntroLapras2:
|
||||
db 27
|
||||
dbsprite -3, -3, 0, 0, $0d, 0 | PRIORITY
|
||||
dbsprite -2, -3, 0, 0, $0e, 0 | PRIORITY
|
||||
dbsprite -1, -3, 0, 0, $0f, 0 | PRIORITY
|
||||
dbsprite -3, -2, 0, 0, $1d, 0 | PRIORITY
|
||||
dbsprite -2, -2, 0, 0, $1e, 0 | PRIORITY
|
||||
dbsprite -1, -2, 0, 0, $1f, 0 | PRIORITY
|
||||
dbsprite -3, -1, 0, 0, $20, 0 | PRIORITY
|
||||
dbsprite -2, -1, 0, 0, $21, 0 | PRIORITY
|
||||
dbsprite -1, -1, 0, 0, $22, 0 | PRIORITY
|
||||
dbsprite 0, -1, 0, 0, $23, 0 | PRIORITY
|
||||
dbsprite -3, 0, 0, 0, $30, 0 | PRIORITY
|
||||
dbsprite -2, 0, 0, 0, $31, 0 | PRIORITY
|
||||
dbsprite -1, 0, 0, 0, $32, 0 | PRIORITY
|
||||
dbsprite 0, 0, 0, 0, $33, 0 | PRIORITY
|
||||
dbsprite 1, 0, 0, 0, $34, 0 | PRIORITY
|
||||
dbsprite -3, 1, 0, 0, $40, 0 | PRIORITY
|
||||
dbsprite -2, 1, 0, 0, $41, 0 | PRIORITY
|
||||
dbsprite -1, 1, 0, 0, $42, 0 | PRIORITY
|
||||
dbsprite 0, 1, 0, 0, $43, 0 | PRIORITY
|
||||
dbsprite 1, 1, 0, 0, $44, 0 | PRIORITY
|
||||
dbsprite 2, 1, 0, 0, $45, 0 | PRIORITY
|
||||
dbsprite -3, 2, 0, 0, $50, 0 | PRIORITY
|
||||
dbsprite -2, 2, 0, 0, $51, 0 | PRIORITY
|
||||
dbsprite -1, 2, 0, 0, $52, 0 | PRIORITY
|
||||
dbsprite 0, 2, 0, 0, $53, 0 | PRIORITY
|
||||
dbsprite 1, 2, 0, 0, $54, 0 | PRIORITY
|
||||
dbsprite 2, 2, 0, 0, $55, 0 | PRIORITY
|
||||
|
||||
.OAMData_GSIntroLapras3:
|
||||
db 29
|
||||
dbsprite -3, -3, 0, 0, $00, 0 | PRIORITY
|
||||
dbsprite -2, -3, 0, 0, $01, 0 | PRIORITY
|
||||
dbsprite -1, -3, 0, 0, $02, 0 | PRIORITY
|
||||
dbsprite 0, -3, 0, 0, $03, 0 | PRIORITY
|
||||
dbsprite -3, -2, 0, 0, $10, 0 | PRIORITY
|
||||
dbsprite -2, -2, 0, 0, $11, 0 | PRIORITY
|
||||
dbsprite -1, -2, 0, 0, $12, 0 | PRIORITY
|
||||
dbsprite 0, -2, 0, 0, $13, 0 | PRIORITY
|
||||
dbsprite -3, -1, 0, 0, $20, 0 | PRIORITY
|
||||
dbsprite -2, -1, 0, 0, $21, 0 | PRIORITY
|
||||
dbsprite -1, -1, 0, 0, $22, 0 | PRIORITY
|
||||
dbsprite 0, -1, 0, 0, $23, 0 | PRIORITY
|
||||
dbsprite 1, -1, 0, 0, $24, 0 | PRIORITY
|
||||
dbsprite -3, 0, 0, 0, $30, 0 | PRIORITY
|
||||
dbsprite -2, 0, 0, 0, $31, 0 | PRIORITY
|
||||
dbsprite -1, 0, 0, 0, $32, 0 | PRIORITY
|
||||
dbsprite 0, 0, 0, 0, $33, 0 | PRIORITY
|
||||
dbsprite 1, 0, 0, 0, $34, 0 | PRIORITY
|
||||
dbsprite -3, 1, 0, 0, $40, 0 | PRIORITY
|
||||
dbsprite -2, 1, 0, 0, $41, 0 | PRIORITY
|
||||
dbsprite -1, 1, 0, 0, $42, 0 | PRIORITY
|
||||
dbsprite 0, 1, 0, 0, $43, 0 | PRIORITY
|
||||
dbsprite 1, 1, 0, 0, $44, 0 | PRIORITY
|
||||
dbsprite 2, 1, 0, 0, $45, 0 | PRIORITY
|
||||
dbsprite -2, 2, 0, 0, $51, 0 | PRIORITY
|
||||
dbsprite -1, 2, 0, 0, $52, 0 | PRIORITY
|
||||
dbsprite 0, 2, 0, 0, $53, 0 | PRIORITY
|
||||
dbsprite 1, 2, 0, 0, $54, 0 | PRIORITY
|
||||
dbsprite 2, 2, 0, 0, $55, 0 | PRIORITY
|
||||
|
||||
.OAMData_GSIntroNote:
|
||||
db 2
|
||||
dbsprite -1, -1, 4, 0, $00, 0
|
||||
dbsprite -1, 0, 4, 0, $10, 0
|
||||
|
||||
.OAMData_GSIntroPikachuTail:
|
||||
db 5
|
||||
dbsprite 3, -2, 0, 0, $00, 0
|
||||
dbsprite 4, -2, 0, 0, $01, 0
|
||||
dbsprite 2, -1, 0, 0, $02, 0
|
||||
dbsprite 3, -1, 0, 0, $03, 0
|
||||
dbsprite 2, 0, 0, 0, $04, 0
|
||||
|
||||
.OAMData_MinigamePicrossCursor:
|
||||
db 1
|
||||
dbsprite -1, -1, 7, 7, $00, 0
|
||||
|
||||
.OAMData_PokedexCursor:
|
||||
db 10
|
||||
dbsprite 0, -1, 0, 0, $00, 0
|
||||
dbsprite 1, -1, 0, 0, $01, 0
|
||||
dbsprite 2, -1, 0, 0, $01, 0
|
||||
dbsprite 3, -1, 0, 0, $01, 0
|
||||
dbsprite 4, -1, 0, 0, $00, 0 | X_FLIP
|
||||
dbsprite 0, 0, 0, 0, $00, 0 | Y_FLIP
|
||||
dbsprite 1, 0, 0, 0, $01, 0 | Y_FLIP
|
||||
dbsprite 2, 0, 0, 0, $01, 0 | Y_FLIP
|
||||
dbsprite 3, 0, 0, 0, $01, 0 | Y_FLIP
|
||||
dbsprite 4, 0, 0, 0, $00, 0 | X_FLIP | Y_FLIP
|
||||
|
||||
.OAMData_PokedexSlowpoke1:
|
||||
db 15
|
||||
dbsprite -2, -2, 4, 0, $06, 0
|
||||
dbsprite -1, -2, 4, 0, $07, 0
|
||||
dbsprite 0, -2, 4, 0, $08, 0
|
||||
dbsprite -2, -1, 4, 0, $09, 0
|
||||
dbsprite -1, -1, 4, 0, $0a, 0
|
||||
dbsprite 0, -1, 4, 0, $0b, 0
|
||||
dbsprite -2, 0, 4, 0, $0c, 0
|
||||
dbsprite -1, 0, 4, 0, $0d, 0
|
||||
dbsprite 0, 0, 4, 0, $0e, 0
|
||||
dbsprite -2, 1, 4, 0, $10, 0
|
||||
dbsprite -1, 1, 4, 0, $11, 0
|
||||
dbsprite 0, 1, 4, 0, $12, 0
|
||||
dbsprite 1, -2, 4, 0, $16, 0
|
||||
dbsprite 1, -1, 4, 0, $17, 0
|
||||
dbsprite 1, 0, 4, 0, $18, 0
|
||||
|
||||
.OAMData_PokedexSlowpoke2:
|
||||
db 15
|
||||
dbsprite -2, -2, 4, 0, $06, 0
|
||||
dbsprite -1, -2, 4, 0, $07, 0
|
||||
dbsprite 0, -2, 4, 0, $08, 0
|
||||
dbsprite -2, -1, 4, 0, $09, 0
|
||||
dbsprite -1, -1, 4, 0, $0a, 0
|
||||
dbsprite 0, -1, 4, 0, $0b, 0
|
||||
dbsprite -2, 0, 4, 0, $0c, 0
|
||||
dbsprite -1, 0, 4, 0, $0d, 0
|
||||
dbsprite 0, 0, 4, 0, $0e, 0
|
||||
dbsprite -2, 1, 4, 0, $13, 0
|
||||
dbsprite -1, 1, 4, 0, $14, 0
|
||||
dbsprite 0, 1, 4, 0, $15, 0
|
||||
dbsprite 1, -2, 4, 0, $16, 0
|
||||
dbsprite 1, -1, 4, 0, $17, 0
|
||||
dbsprite 1, 0, 4, 0, $18, 0
|
||||
|
||||
.OAMData_PokedexSlowpoke3:
|
||||
db 15
|
||||
dbsprite -2, -2, 4, 0, $08, 0 | X_FLIP
|
||||
dbsprite -1, -2, 4, 0, $07, 0 | X_FLIP
|
||||
dbsprite 0, -2, 4, 0, $06, 0 | X_FLIP
|
||||
dbsprite -2, -1, 4, 0, $09, 0
|
||||
dbsprite -1, -1, 4, 0, $0a, 0
|
||||
dbsprite 0, -1, 4, 0, $0b, 0
|
||||
dbsprite -2, 0, 4, 0, $0c, 0
|
||||
dbsprite -1, 0, 4, 0, $0d, 0
|
||||
dbsprite 0, 0, 4, 0, $0e, 0
|
||||
dbsprite -2, 1, 4, 0, $20, 0
|
||||
dbsprite -1, 1, 4, 0, $21, 0
|
||||
dbsprite 0, 1, 4, 0, $22, 0
|
||||
dbsprite 1, -2, 4, 0, $19, 0
|
||||
dbsprite 1, -1, 4, 0, $1a, 0
|
||||
dbsprite 1, 0, 4, 0, $18, 0
|
||||
|
||||
.OAMData_PokedexSlowpoke4:
|
||||
db 15
|
||||
dbsprite -2, -2, 4, 0, $08, 0 | X_FLIP
|
||||
dbsprite -1, -2, 4, 0, $07, 0 | X_FLIP
|
||||
dbsprite 0, -2, 4, 0, $06, 0 | X_FLIP
|
||||
dbsprite -2, -1, 4, 0, $09, 0
|
||||
dbsprite -1, -1, 4, 0, $0a, 0
|
||||
dbsprite 0, -1, 4, 0, $0b, 0
|
||||
dbsprite -2, 0, 4, 0, $0c, 0
|
||||
dbsprite -1, 0, 4, 0, $0d, 0
|
||||
dbsprite 0, 0, 4, 0, $0e, 0
|
||||
dbsprite -2, 1, 4, 0, $10, 0
|
||||
dbsprite -1, 1, 4, 0, $11, 0
|
||||
dbsprite 0, 1, 4, 0, $12, 0
|
||||
dbsprite 1, -2, 4, 0, $19, 0
|
||||
dbsprite 1, -1, 4, 0, $1a, 0
|
||||
dbsprite 1, 0, 4, 0, $18, 0
|
||||
|
||||
.OAMData_PokedexSlowpoke5:
|
||||
db 17
|
||||
dbsprite -2, -2, 4, 0, $08, 0 | X_FLIP
|
||||
dbsprite -1, -2, 4, 0, $07, 0 | X_FLIP
|
||||
dbsprite 0, -2, 4, 0, $06, 0 | X_FLIP
|
||||
dbsprite -2, -1, 4, 0, $09, 0
|
||||
dbsprite -1, -1, 4, 0, $0f, 0
|
||||
dbsprite 0, -1, 4, 0, $0b, 0
|
||||
dbsprite -2, 0, 4, 0, $0c, 0
|
||||
dbsprite -1, 0, 4, 0, $0d, 0
|
||||
dbsprite 0, 0, 4, 0, $0e, 0
|
||||
dbsprite -2, 1, 4, 0, $10, 0
|
||||
dbsprite -1, 1, 4, 0, $11, 0
|
||||
dbsprite 0, 1, 4, 0, $12, 0
|
||||
dbsprite 1, -2, 4, 0, $19, 0
|
||||
dbsprite 1, -1, 4, 0, $1a, 0
|
||||
dbsprite 1, 0, 4, 0, $18, 0
|
||||
; Light bulb
|
||||
dbsprite -1, -4, 4, 0, $23, 0
|
||||
dbsprite -1, -3, 4, 0, $24, 0
|
||||
|
||||
.OAMData_TextEntryCursor:
|
||||
db 4
|
||||
dbsprite -1, -1, 7, 7, $00, 0
|
||||
dbsprite 0, -1, 1, 7, $00, 0 | X_FLIP
|
||||
dbsprite -1, 0, 7, 1, $00, 0 | Y_FLIP
|
||||
dbsprite 0, 0, 1, 1, $00, 0 | X_FLIP | Y_FLIP
|
||||
|
||||
.OAMData_GSGameFreakLogo:
|
||||
db 15
|
||||
dbsprite -2, -3, 4, 4, $00, 0 | OBP_NUM
|
||||
dbsprite -1, -3, 4, 4, $01, 0 | OBP_NUM
|
||||
dbsprite 0, -3, 4, 4, $02, 0 | OBP_NUM
|
||||
dbsprite -2, -2, 4, 4, $03, 0 | OBP_NUM
|
||||
dbsprite -1, -2, 4, 4, $04, 0 | OBP_NUM
|
||||
dbsprite 0, -2, 4, 4, $05, 0 | OBP_NUM
|
||||
dbsprite -2, -1, 4, 4, $06, 0 | OBP_NUM
|
||||
dbsprite -1, -1, 4, 4, $07, 0 | OBP_NUM
|
||||
dbsprite 0, -1, 4, 4, $08, 0 | OBP_NUM
|
||||
dbsprite -2, 0, 4, 4, $09, 0 | OBP_NUM
|
||||
dbsprite -1, 0, 4, 4, $0a, 0 | OBP_NUM
|
||||
dbsprite 0, 0, 4, 4, $0b, 0 | OBP_NUM
|
||||
dbsprite -2, 1, 4, 4, $0c, 0 | OBP_NUM
|
||||
dbsprite -1, 1, 4, 4, $0d, 0 | OBP_NUM
|
||||
dbsprite 0, 1, 4, 4, $0e, 0 | OBP_NUM
|
||||
|
||||
.OAMData_SlotsGolem:
|
||||
db 6
|
||||
dbsprite -2, -2, 4, 4, $00, 0 | OBP_NUM
|
||||
dbsprite -1, -2, 4, 4, $02, 0 | OBP_NUM
|
||||
dbsprite 0, -2, 4, 4, $00, 0 | OBP_NUM | X_FLIP
|
||||
dbsprite -2, 0, 4, 4, $04, 0 | OBP_NUM
|
||||
dbsprite -1, 0, 4, 4, $06, 0 | OBP_NUM
|
||||
dbsprite 0, 0, 4, 4, $04, 0 | OBP_NUM | X_FLIP
|
||||
|
||||
.OAMData_SlotsChansey1:
|
||||
db 6
|
||||
dbsprite -2, -2, 4, 4, $00, 0 | OBP_NUM
|
||||
dbsprite -1, -2, 4, 4, $02, 0 | OBP_NUM
|
||||
dbsprite 0, -2, 4, 4, $04, 0 | OBP_NUM
|
||||
dbsprite -2, 0, 4, 4, $06, 0 | OBP_NUM
|
||||
dbsprite -1, 0, 4, 4, $08, 0 | OBP_NUM
|
||||
dbsprite 0, 0, 4, 4, $0a, 0 | OBP_NUM
|
||||
|
||||
.OAMData_SlotsChansey2:
|
||||
db 6
|
||||
dbsprite -2, -2, 4, 4, $00, 0 | OBP_NUM
|
||||
dbsprite -1, -2, 4, 4, $02, 0 | OBP_NUM
|
||||
dbsprite 0, -2, 4, 4, $04, 0 | OBP_NUM
|
||||
dbsprite -2, 0, 4, 4, $0c, 0 | OBP_NUM
|
||||
dbsprite -1, 0, 4, 4, $0e, 0 | OBP_NUM
|
||||
dbsprite 0, 0, 4, 4, $10, 0 | OBP_NUM
|
||||
|
||||
.OAMData_SlotsChansey3:
|
||||
db 6
|
||||
dbsprite -2, -2, 4, 4, $00, 0 | OBP_NUM
|
||||
dbsprite -1, -2, 4, 4, $02, 0 | OBP_NUM
|
||||
dbsprite 0, -2, 4, 4, $04, 0 | OBP_NUM
|
||||
dbsprite -2, 0, 4, 4, $12, 0 | OBP_NUM
|
||||
dbsprite -1, 0, 4, 4, $14, 0 | OBP_NUM
|
||||
dbsprite 0, 0, 4, 4, $16, 0 | OBP_NUM
|
||||
|
||||
.OAMData_SlotsChansey4:
|
||||
db 6
|
||||
dbsprite -2, -2, 4, 4, $00, 0 | OBP_NUM
|
||||
dbsprite -1, -2, 4, 4, $02, 0 | OBP_NUM
|
||||
dbsprite 0, -2, 4, 4, $04, 0 | OBP_NUM
|
||||
dbsprite -2, 0, 4, 4, $18, 0 | OBP_NUM
|
||||
dbsprite -1, 0, 4, 4, $1a, 0 | OBP_NUM
|
||||
dbsprite 0, 0, 4, 4, $1c, 0 | OBP_NUM
|
||||
|
||||
.OAMData_SlotsChansey5:
|
||||
db 6
|
||||
dbsprite -2, -2, 4, 4, $1e, 0 | OBP_NUM
|
||||
dbsprite -1, -2, 4, 4, $20, 0 | OBP_NUM
|
||||
dbsprite 0, -2, 4, 4, $22, 0 | OBP_NUM
|
||||
dbsprite -2, 0, 4, 4, $24, 0 | OBP_NUM
|
||||
dbsprite -1, 0, 4, 4, $26, 0 | OBP_NUM
|
||||
dbsprite 0, 0, 4, 4, $28, 0 | OBP_NUM
|
||||
|
||||
.OAMData_RadioFrequencyMeter:
|
||||
db 4
|
||||
dbsprite -1, -2, 4, 0, $00, 0 | OBP_NUM
|
||||
dbsprite -1, -1, 4, 0, $00, 0 | OBP_NUM
|
||||
dbsprite -1, 0, 4, 0, $00, 0 | OBP_NUM
|
||||
dbsprite -1, 1, 4, 0, $00, 0 | OBP_NUM
|
||||
155
data/sprite_anims/objects.inc
Normal file
155
data/sprite_anims/objects.inc
Normal file
|
|
@ -0,0 +1,155 @@
|
|||
; Entries correspond to SPRITE_ANIM_OBJ_* constants
|
||||
SpriteAnimObjects:
|
||||
; frameset, sequence, dict
|
||||
; SPRITE_ANIM_OBJ_00
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_DEFAULT
|
||||
; SPRITE_ANIM_OBJ_POLIWAG_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_POLIWAG_ICON
|
||||
; SPRITE_ANIM_OBJ_JIGGLYPUFF_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_JIGGLYPUFF_ICON
|
||||
; SPRITE_ANIM_OBJ_DIGLETT_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_DIGLETT_ICON
|
||||
; SPRITE_ANIM_OBJ_PIKACHU_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_PIKACHU_ICON
|
||||
; SPRITE_ANIM_OBJ_STARYU_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_STARYU_ICON
|
||||
; SPRITE_ANIM_OBJ_MAGIKARP_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_MAGIKARP_ICON
|
||||
; SPRITE_ANIM_OBJ_PIDGEY_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_PIDGEY_ICON
|
||||
; SPRITE_ANIM_OBJ_RHYDON_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_RHYDON_ICON
|
||||
; SPRITE_ANIM_OBJ_CLEFAIRY_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_CLEFAIRY_ICON
|
||||
; SPRITE_ANIM_OBJ_ODDISH_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_ODDISH_ICON
|
||||
; SPRITE_ANIM_OBJ_MUSHI_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_MUSHI_ICON
|
||||
; SPRITE_ANIM_OBJ_GENGAR_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_GENGAR_ICON
|
||||
; SPRITE_ANIM_OBJ_LAPRAS_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_LAPRAS_ICON
|
||||
; SPRITE_ANIM_OBJ_MRMIME_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_MRMIME_ICON
|
||||
; SPRITE_ANIM_OBJ_LOKON_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_LOKON_ICON
|
||||
; SPRITE_ANIM_OBJ_TAUROS_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_TAUROS_ICON
|
||||
; SPRITE_ANIM_OBJ_SHELLDER_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_SHELLDER_ICON
|
||||
; SPRITE_ANIM_OBJ_DITTO_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_DITTO_ICON
|
||||
; SPRITE_ANIM_OBJ_ONIX_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_ONIX_ICON
|
||||
; SPRITE_ANIM_OBJ_VOLTORB_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_VOLTORB_ICON
|
||||
; SPRITE_ANIM_OBJ_SQUIRTLE_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_SQUIRTLE_ICON
|
||||
; SPRITE_ANIM_OBJ_BULBASAUR_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_BULBASAUR_ICON
|
||||
;SPRITE_ANIM_OBJ_CHARMANDER_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_CHARMANDER_ICON
|
||||
; SPRITE_ANIM_OBJ_WEEDLE_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_WEEDLE_ICON
|
||||
; SPRITE_ANIM_OBJ_ANNON_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_ANNON_ICON
|
||||
; SPRITE_ANIM_OBJ_GEODUDE_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_GEODUDE_ICON
|
||||
; SPRITE_ANIM_OBJ_MACHOP_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_MACHOP_ICON
|
||||
; SPRITE_ANIM_OBJ_EGG_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_EGG_ICON
|
||||
; SPRITE_ANIM_OBJ_TENTACOOL_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_TENTACOOL_ICON
|
||||
; SPRITE_ANIM_OBJ_BUTTERFREE_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_BUTTERFREE_ICON
|
||||
; SPRITE_ANIM_OBJ_ZUBAT_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_ZUBAT_ICON
|
||||
; SPRITE_ANIM_OBJ_SNORLAX_ICON
|
||||
db SPRITE_ANIM_FRAMESET_PARTY_MON, SPRITE_ANIM_FUNC_PARTY_MON, SPRITE_ANIM_DICT_SNORLAX_ICON
|
||||
; SPRITE_ANIM_OBJ_GS_INTRO_BUBBLE
|
||||
db SPRITE_ANIM_FRAMESET_GS_INTRO_BUBBLE, SPRITE_ANIM_FUNC_GS_INTRO_BUBBLE, SPRITE_ANIM_DICT_GS_INTRO
|
||||
; SPRITE_ANIM_OBJ_GS_INTRO_OMANYTE
|
||||
db SPRITE_ANIM_FRAMESET_GS_INTRO_OMANYTE, SPRITE_ANIM_FUNC_GS_INTRO_OMANYTE, SPRITE_ANIM_DICT_GS_INTRO
|
||||
; SPRITE_ANIM_OBJ_GS_INTRO_MAGIKARP
|
||||
db SPRITE_ANIM_FRAMESET_GS_INTRO_MAGIKARP, SPRITE_ANIM_FUNC_GS_INTRO_MAGIKARP, SPRITE_ANIM_DICT_GS_INTRO
|
||||
; SPRITE_ANIM_OBJ_UNUSED_INTRO_AERODACTYL
|
||||
db SPRITE_ANIM_FRAMESET_UNUSED_INTRO_AERODACTYL, SPRITE_ANIM_FUNC_UNUSED_INTRO_AERODACTYL, SPRITE_ANIM_DICT_GS_INTRO
|
||||
; SPRITE_ANIM_OBJ_GS_INTRO_LAPRAS
|
||||
db SPRITE_ANIM_FRAMESET_GS_INTRO_LAPRAS, SPRITE_ANIM_FUNC_GS_INTRO_LAPRAS, SPRITE_ANIM_DICT_GS_INTRO
|
||||
; SPRITE_ANIM_OBJ_GS_INTRO_NOTE
|
||||
db SPRITE_ANIM_FRAMESET_GS_INTRO_NOTE, SPRITE_ANIM_FUNC_GS_INTRO_NOTE, SPRITE_ANIM_DICT_GS_INTRO_2
|
||||
; SPRITE_ANIM_OBJ_GS_INTRO_SMALLER_NOTE
|
||||
db SPRITE_ANIM_FRAMESET_GS_INTRO_SMALLER_NOTE, SPRITE_ANIM_FUNC_GS_INTRO_NOTE, SPRITE_ANIM_DICT_GS_INTRO_2
|
||||
; SPRITE_ANIM_OBJ_GS_INTRO_JIGGLYPUFF
|
||||
db SPRITE_ANIM_FRAMESET_GS_INTRO_JIGGLYPUFF, SPRITE_ANIM_FUNC_GS_INTRO_JIGGLYPUFF, SPRITE_ANIM_DICT_GS_INTRO_2
|
||||
; SPRITE_ANIM_OBJ_GS_INTRO_PIKACHU
|
||||
db SPRITE_ANIM_FRAMESET_GS_INTRO_PIKACHU, SPRITE_ANIM_FUNC_GS_INTRO_PIKACHU, SPRITE_ANIM_DICT_GS_INTRO_2
|
||||
; SPRITE_ANIM_OBJ_GS_INTRO_PIKACHU_TAIL
|
||||
db SPRITE_ANIM_FRAMESET_GS_INTRO_PIKACHU_TAIL, SPRITE_ANIM_FUNC_GS_INTRO_PIKACHU_TAIL, SPRITE_ANIM_DICT_GS_INTRO_2
|
||||
; SPRITE_ANIM_OBJ_GS_INTRO_FIREBALL
|
||||
db SPRITE_ANIM_FRAMESET_GS_INTRO_FIREBALL, SPRITE_ANIM_FUNC_GS_INTRO_FIREBALL, SPRITE_ANIM_DICT_GS_INTRO_3
|
||||
; SPRITE_ANIM_OBJ_GS_INTRO_BLASTOISE
|
||||
db SPRITE_ANIM_FRAMESET_GS_INTRO_BLASTOISE, SPRITE_ANIM_FUNC_GS_INTRO_BLASTOISE, SPRITE_ANIM_DICT_GS_INTRO_3
|
||||
; SPRITE_ANIM_OBJ_GS_INTRO_VENUSAUR
|
||||
db SPRITE_ANIM_FRAMESET_GS_INTRO_VENUSAUR, SPRITE_ANIM_FUNC_GS_INTRO_VENUSAUR, SPRITE_ANIM_DICT_GS_INTRO_3
|
||||
; SPRITE_ANIM_OBJ_GS_TITLE_FLAME_NOTE
|
||||
db SPRITE_ANIM_FRAMESET_GS_TITLE_FLAME_NOTE, SPRITE_ANIM_FUNC_GS_TITLE_FLAME_NOTE, SPRITE_ANIM_DICT_TITLE_FLAME_NOTE
|
||||
; SPRITE_ANIM_OBJ_MINIGAME_PIKACHU
|
||||
db SPRITE_ANIM_FRAMESET_GS_INTRO_PIKACHU, SPRITE_ANIM_FUNC_MINIGAME_PIKACHU, SPRITE_ANIM_DICT_GS_INTRO_2
|
||||
; SPRITE_ANIM_OBJ_MINIGAME_PIKACHU_TAIL
|
||||
db SPRITE_ANIM_FRAMESET_GS_INTRO_PIKACHU_TAIL, SPRITE_ANIM_FUNC_MINIGAME_PIKACHU_TAIL, SPRITE_ANIM_DICT_GS_INTRO_2
|
||||
; SPRITE_ANIM_OBJ_MINIGAME_NOTE
|
||||
db SPRITE_ANIM_FRAMESET_GS_INTRO_NOTE, SPRITE_ANIM_FUNC_MINIGAME_NOTE, SPRITE_ANIM_DICT_GS_INTRO_2
|
||||
; SPRITE_ANIM_OBJ_MINIGAME_JIGGLYPUFF
|
||||
db SPRITE_ANIM_FRAMESET_GS_INTRO_JIGGLYPUFF, SPRITE_ANIM_FUNC_MINIGAME_JIGGLYPUFF, SPRITE_ANIM_DICT_GS_INTRO_2
|
||||
; SPRITE_ANIM_OBJ_MINIGAME_PICROSS_CURSOR
|
||||
db SPRITE_ANIM_FRAMESET_MINIGAME_PICROSS_CURSOR, SPRITE_ANIM_FUNC_MINIGAME_PICROSS_CURSOR, SPRITE_ANIM_DICT_MINIGAME_PICROSS
|
||||
; SPRITE_ANIM_OBJ_MINIGAME_PICROSS_DUST
|
||||
db SPRITE_ANIM_FRAMESET_MINIGAME_PICROSS_DUST, SPRITE_ANIM_FUNC_NULL, SPRITE_ANIM_DICT_MINIGAME_PICROSS
|
||||
; SPRITE_ANIM_OBJ_MINIGAME_PICROSS_GOLD
|
||||
db SPRITE_ANIM_FRAMESET_MINIGAME_PICROSS_GOLD, SPRITE_ANIM_FUNC_MINIGAME_PICROSS_DUST, SPRITE_ANIM_DICT_GS_INTRO_2
|
||||
; SPRITE_ANIM_OBJ_POKEDEX_HAND_CURSOR
|
||||
db SPRITE_ANIM_FRAMESET_MINIGAME_PICROSS_GOLD, SPRITE_ANIM_FUNC_POKEDEX_HAND_CURSOR, SPRITE_ANIM_DICT_TEXT_CURSOR
|
||||
; SPRITE_ANIM_OBJ_POKEDEX_CURSOR
|
||||
db SPRITE_ANIM_FRAMESET_POKEDEX_CURSOR, SPRITE_ANIM_FUNC_POKEDEX_CURSOR, SPRITE_ANIM_DICT_TEXT_CURSOR
|
||||
; SPRITE_ANIM_OBJ_POKEDEX_SLOWPOKE
|
||||
db SPRITE_ANIM_FRAMESET_POKEDEX_SLOWPOKE, SPRITE_ANIM_FUNC_POKEDEX_SLOWPOKE, SPRITE_ANIM_DICT_TEXT_CURSOR
|
||||
; SPRITE_ANIM_OBJ_NAMING_SCREEN_CURSOR
|
||||
db SPRITE_ANIM_FRAMESET_TEXT_ENTRY_CURSOR, SPRITE_ANIM_FUNC_NAMING_SCREEN_CURSOR, SPRITE_ANIM_DICT_TEXT_CURSOR
|
||||
; SPRITE_ANIM_OBJ_GAMEFREAK_LOGO
|
||||
db SPRITE_ANIM_FRAMESET_GAMEFREAK_LOGO, SPRITE_ANIM_FUNC_GAMEFREAK_LOGO, SPRITE_ANIM_DICT_GS_SPLASH
|
||||
; SPRITE_ANIM_OBJ_GS_INTRO_STAR
|
||||
db SPRITE_ANIM_FRAMESET_GS_GAMEFREAK_LOGO_STAR, SPRITE_ANIM_FUNC_GS_GAMEFREAK_LOGO_STAR, SPRITE_ANIM_DICT_GS_SPLASH
|
||||
; SPRITE_ANIM_OBJ_GS_INTRO_SPARKLE
|
||||
db SPRITE_ANIM_FRAMESET_GS_GAMEFREAK_LOGO_SPARKLE, SPRITE_ANIM_FUNC_GS_GAMEFREAK_LOGO_SPARKLE, SPRITE_ANIM_DICT_GS_SPLASH
|
||||
; SPRITE_ANIM_OBJ_SLOTS_GOLEM
|
||||
db SPRITE_ANIM_FRAMESET_SLOTS_GOLEM, SPRITE_ANIM_FUNC_SLOTS_GOLEM, SPRITE_ANIM_DICT_SLOTS
|
||||
; SPRITE_ANIM_OBJ_SLOTS_CHANSEY
|
||||
db SPRITE_ANIM_FRAMESET_SLOTS_CHANSEY, SPRITE_ANIM_FUNC_SLOTS_CHANSEY, SPRITE_ANIM_DICT_SLOTS
|
||||
; SPRITE_ANIM_OBJ_SLOTS_EGG
|
||||
db SPRITE_ANIM_FRAMESET_SLOTS_EGG, SPRITE_ANIM_FUNC_SLOTS_EGG, SPRITE_ANIM_DICT_SLOTS
|
||||
; SPRITE_ANIM_OBJ_MAIL_WRITING_CURSOR
|
||||
db SPRITE_ANIM_FRAMESET_TEXT_ENTRY_CURSOR, SPRITE_ANIM_FUNC_MAIL_CURSOR, SPRITE_ANIM_DICT_TEXT_CURSOR
|
||||
; SPRITE_ANIM_OBJ_MAP_CHARACTER_ICON
|
||||
db SPRITE_ANIM_FRAMESET_WALK, SPRITE_ANIM_FUNC_NULL, SPRITE_ANIM_DICT_DEFAULT
|
||||
; SPRITE_ANIM_OBJ_POKER_CURSOR
|
||||
db SPRITE_ANIM_FRAMESET_STILL_CURSOR, SPRITE_ANIM_FUNC_POKER_CURSOR, SPRITE_ANIM_DICT_ARROW_CURSOR
|
||||
; SPRITE_ANIM_OBJ_MEMORY_GAME_CURSOR
|
||||
db SPRITE_ANIM_FRAMESET_STILL_CURSOR, SPRITE_ANIM_FUNC_MEMORY_GAME_CURSOR, SPRITE_ANIM_DICT_ARROW_CURSOR
|
||||
; SPRITE_ANIM_OBJ_TRAINERGEAR_POINTER
|
||||
db SPRITE_ANIM_FRAMESET_STILL_CURSOR, SPRITE_ANIM_FUNC_TRAINERGEAR_POINTER, SPRITE_ANIM_DICT_ARROW_CURSOR
|
||||
; SPRITE_ANIM_OBJ_TRADE_POKE_BALL
|
||||
db SPRITE_ANIM_FRAMESET_TRADE_POKE_BALL, SPRITE_ANIM_FUNC_TRADE_POKE_BALL, SPRITE_ANIM_DICT_DEFAULT
|
||||
; SPRITE_ANIM_OBJ_TRADE_POOF
|
||||
db SPRITE_ANIM_FRAMESET_TRADE_POOF, SPRITE_ANIM_FUNC_NULL, SPRITE_ANIM_DICT_DEFAULT
|
||||
; SPRITE_ANIM_OBJ_TRADE_TUBE_BULGE
|
||||
db SPRITE_ANIM_FRAMESET_TRADE_TUBE_BULGE, SPRITE_ANIM_FUNC_TRADE_TUBE_BULGE, SPRITE_ANIM_DICT_DEFAULT
|
||||
; SPRITE_ANIM_OBJ_TRADEMON_ICON
|
||||
db SPRITE_ANIM_FRAMESET_TRADEMON_ICON, SPRITE_ANIM_FUNC_TRADEMON_IN_TUBE, SPRITE_ANIM_DICT_DEFAULT
|
||||
; SPRITE_ANIM_OBJ_TRADEMON_BUBBLE
|
||||
db SPRITE_ANIM_FRAMESET_TRADEMON_BUBBLE, SPRITE_ANIM_FUNC_TRADEMON_IN_TUBE, SPRITE_ANIM_DICT_DEFAULT
|
||||
; SPRITE_ANIM_OBJ_4A
|
||||
db SPRITE_ANIM_FRAMESET_UNKNOWN, SPRITE_ANIM_FUNC_UNKNOWN, SPRITE_ANIM_DICT_DEFAULT
|
||||
; SPRITE_ANIM_OBJ_RADIO_FREQUENCY_METER
|
||||
db SPRITE_ANIM_FRAMESET_RADIO_FREQUENCY_METER, SPRITE_ANIM_FUNC_RADIO_FREQUENCY_METER, SPRITE_ANIM_DICT_DEFAULT
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
INCLUDE "constants.asm"
|
||||
;INCLUDE "constants.asm"
|
||||
|
||||
SECTION "data/types/search_strings.asm", ROMX
|
||||
;SECTION "data/types/search_strings.asm", ROMX
|
||||
|
||||
PokedexTypeSearchStrings::
|
||||
db "ノーマル@" ; NORMAL
|
||||
|
|
@ -1,7 +1,3 @@
|
|||
INCLUDE "constants.asm"
|
||||
|
||||
SECTION "data/types/search_types.asm", ROMX
|
||||
|
||||
PokedexTypeSearchConversionTable::
|
||||
db TYPE_NORMAL
|
||||
db TYPE_FIRE
|
||||
|
|
@ -917,9 +917,9 @@ Data8660:
|
|||
dw $19
|
||||
|
||||
Function86a0:
|
||||
call Function881e
|
||||
ld hl, InitEffectObject
|
||||
ld a, BANK(InitEffectObject)
|
||||
call InitTownMap
|
||||
ld hl, ClearSpriteAnims
|
||||
ld a, BANK(ClearSpriteAnims)
|
||||
call FarCall_hl
|
||||
call PlaceGoldInMap
|
||||
call WaitBGMap
|
||||
|
|
@ -927,8 +927,8 @@ Function86a0:
|
|||
.sub_86b4
|
||||
call DelayFrame
|
||||
call GetJoypadDebounced
|
||||
ld hl, EffectObjectJumpNoDelay
|
||||
ld a, BANK(EffectObjectJumpNoDelay)
|
||||
ld hl, PlaySpriteAnimations
|
||||
ld a, BANK(PlaySpriteAnimations)
|
||||
call FarCall_hl
|
||||
ld hl, hJoyDown
|
||||
ld a, [hl]
|
||||
|
|
@ -937,13 +937,13 @@ Function86a0:
|
|||
ret
|
||||
|
||||
FlyMap:
|
||||
ld hl, hJoyDebounceSrc
|
||||
ld hl, hInMenu
|
||||
ld a, [hl]
|
||||
push af
|
||||
ld [hl], $01
|
||||
call Function881e
|
||||
ld hl, InitEffectObject
|
||||
ld a, BANK(InitEffectObject)
|
||||
call InitTownMap
|
||||
ld hl, ClearSpriteAnims
|
||||
ld a, BANK(ClearSpriteAnims)
|
||||
call FarCall_hl
|
||||
call PlaceGoldInMap
|
||||
call Function88b3
|
||||
|
|
@ -962,7 +962,7 @@ FlyMap:
|
|||
call DelayFrame
|
||||
call GetJoypadDebounced
|
||||
|
||||
callfar EffectObjectJumpNoDelay
|
||||
callfar PlaySpriteAnimations
|
||||
|
||||
ld hl, hJoyDown
|
||||
ld a, [hl]
|
||||
|
|
@ -998,10 +998,11 @@ FlyMap:
|
|||
ld [wFlyDestination], a
|
||||
.sub_8743
|
||||
pop af
|
||||
ldh [hJoyDebounceSrc], a
|
||||
ldh [hInMenu], a
|
||||
ret
|
||||
|
||||
Function8747: ; Choose fly destination based on D-Pad input
|
||||
; Choose fly destination based on D-Pad input
|
||||
Function8747:
|
||||
ld a, [wFlyDestination]
|
||||
ld l, a
|
||||
ld h, $00
|
||||
|
|
@ -1036,61 +1037,66 @@ Function8747: ; Choose fly destination based on D-Pad input
|
|||
Text8776:
|
||||
db "とびさき を えらんでください@"
|
||||
|
||||
Function8786:
|
||||
ld a, [wFlyDestination]
|
||||
Pokedex_GetArea:
|
||||
ld a, [wNestIconBlinkCounter]
|
||||
push af
|
||||
xor a
|
||||
ld [wFlyDestination], a
|
||||
call Function881e
|
||||
ld [wNestIconBlinkCounter], a
|
||||
|
||||
call InitTownMap
|
||||
ld de, PokedexNestIconGFX
|
||||
ld hl, vChars0 + $7f0
|
||||
lb bc, BANK(PokedexNestIconGFX), $01
|
||||
ld hl, vChars0 + 127 tiles
|
||||
lb bc, BANK(PokedexNestIconGFX), 1
|
||||
call Request1bpp
|
||||
|
||||
call GetPokemonName
|
||||
coord hl, 4, 15
|
||||
hlcoord 4, 15
|
||||
call PlaceString
|
||||
coord hl, 9, 15
|
||||
ld de, Text87e4
|
||||
|
||||
hlcoord 9, 15
|
||||
ld de, .String_SNest
|
||||
call PlaceString
|
||||
|
||||
call WaitBGMap
|
||||
call SetPalettes
|
||||
xor a
|
||||
ldh [hBGMapMode], a
|
||||
ld hl, wTileMap
|
||||
ld bc, $0168
|
||||
ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
|
||||
xor a
|
||||
call ByteFill
|
||||
ld hl, Function3e9dc
|
||||
ld a, BANK(Function3e9dc)
|
||||
call FarCall_hl
|
||||
.sub_87ca
|
||||
call Function87ea
|
||||
callfar FindNest
|
||||
.loop
|
||||
call .PlaceNest
|
||||
call GetJoypadDebounced
|
||||
ldh a, [hJoyDown]
|
||||
and $03
|
||||
jr nz, .sub_87df
|
||||
ld hl, wFlyDestination
|
||||
and A_BUTTON | B_BUTTON
|
||||
jr nz, .done
|
||||
|
||||
ld hl, wNestIconBlinkCounter
|
||||
inc [hl]
|
||||
call DelayFrame
|
||||
jr .sub_87ca
|
||||
.sub_87df
|
||||
jr .loop
|
||||
.done
|
||||
pop af
|
||||
ld [wFlyDestination], a
|
||||
ld [wNestIconBlinkCounter], a
|
||||
ret
|
||||
|
||||
Text87e4:
|
||||
.String_SNest:
|
||||
db "の すみか@"
|
||||
|
||||
Function87ea:
|
||||
ld a, [wFlyDestination]
|
||||
.PlaceNest:
|
||||
ld a, [wNestIconBlinkCounter]
|
||||
and $10
|
||||
jr z, .sub_881a
|
||||
jr z, .done_nest
|
||||
|
||||
ld de, wTileMap
|
||||
ld hl, wShadowOAM
|
||||
.sub_87f7
|
||||
ld hl, wShadowOAMSprite00
|
||||
.nestloop
|
||||
ld a, [de]
|
||||
and a
|
||||
ret z
|
||||
|
||||
push de
|
||||
push hl
|
||||
ld e, a
|
||||
|
|
@ -1100,89 +1106,105 @@ Function87ea:
|
|||
add hl, de
|
||||
ld e, l
|
||||
ld d, h
|
||||
|
||||
; load into OAM
|
||||
pop hl
|
||||
; X position
|
||||
ld a, [de]
|
||||
inc de
|
||||
sub $04
|
||||
sub 4
|
||||
ld [hli], a
|
||||
; Y position
|
||||
ld a, [de]
|
||||
inc de
|
||||
sub $04
|
||||
sub 4
|
||||
ld [hli], a
|
||||
; Nest icon -> Tile ID
|
||||
ld a, $7f
|
||||
ld [hli], a
|
||||
; Blank out attributes
|
||||
xor a
|
||||
ld [hli], a
|
||||
|
||||
pop de
|
||||
inc de
|
||||
jr .sub_87f7
|
||||
.sub_881a
|
||||
jr .nestloop
|
||||
.done_nest
|
||||
call ClearSprites
|
||||
ret
|
||||
|
||||
Function881e:
|
||||
InitTownMap:
|
||||
call ClearBGPalettes
|
||||
call ClearTileMap
|
||||
call UpdateSprites
|
||||
call DisableLCD
|
||||
|
||||
ld hl, TownMapGFX
|
||||
ld de, vTilesetEnd
|
||||
ld bc, TownMapGFX.End - TownMapGFX
|
||||
ld a, BANK(TownMapGFX)
|
||||
call FarCopyData
|
||||
|
||||
ld hl, wTileMap
|
||||
call DecompTownMapTilemap
|
||||
coord hl, 0, 13
|
||||
ld b, $03
|
||||
ld c, $12
|
||||
hlcoord 0, 13
|
||||
ld b, 3
|
||||
ld c, 18
|
||||
call DrawTextBox
|
||||
ld a, $03
|
||||
|
||||
ld a, 3
|
||||
call UpdateSoundNTimes
|
||||
call EnableLCD
|
||||
ld b, $02
|
||||
ld b, SGB_TOWN_MAP
|
||||
call GetSGBLayout
|
||||
ret
|
||||
|
||||
DecompTownMapTilemap:
|
||||
ld de, TownMapTilemap
|
||||
.sub_8859
|
||||
.loop
|
||||
ld a, [de]
|
||||
and a
|
||||
ret z
|
||||
|
||||
ld b, a
|
||||
inc de
|
||||
ld a, [de]
|
||||
ld c, a
|
||||
ld a, b
|
||||
add $60
|
||||
.sub_8863
|
||||
.keep_placing_tile
|
||||
ld [hli], a
|
||||
dec c
|
||||
jr nz, .sub_8863
|
||||
jr nz, .keep_placing_tile
|
||||
inc de
|
||||
jr .sub_8859
|
||||
jr .loop
|
||||
|
||||
PlaceGoldInMap:
|
||||
ld de, GoldSpriteGFX
|
||||
ld hl, vChars0
|
||||
lb bc, BANK(GoldSpriteGFX), $04
|
||||
call Request2bpp
|
||||
ld de, GoldSpriteGFX + LEN_2BPP_TILE * 12 ; Gold's front-facing walking sprite
|
||||
|
||||
ld de, GoldSpriteGFX + 12 tiles
|
||||
ld hl, vChars0 + $40
|
||||
lb bc, BANK(GoldSpriteGFX), $04
|
||||
call Request2bpp
|
||||
|
||||
depixel 0, 0
|
||||
ld a, SPRITE_ANIM_INDEX_41
|
||||
ld a, SPRITE_ANIM_OBJ_MAP_CHARACTER_ICON
|
||||
call InitSpriteAnimStruct
|
||||
ld hl, $0003
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_TILE_ID
|
||||
add hl, bc
|
||||
ld [hl], $00
|
||||
|
||||
push bc
|
||||
ld a, [wMapGroup]
|
||||
ld b, a
|
||||
ld a, [wMapId]
|
||||
ld c, a
|
||||
call GetWorldMapLocation
|
||||
|
||||
ld e, a
|
||||
ld d, $00
|
||||
ld hl, LandmarkPositions
|
||||
|
|
@ -1192,29 +1214,32 @@ PlaceGoldInMap:
|
|||
inc hl
|
||||
ld e, [hl]
|
||||
pop bc
|
||||
ld hl, $0004
|
||||
ld hl, SPRITEANIMSTRUCT_XCOORD
|
||||
add hl, bc
|
||||
ld [hl], e
|
||||
ld hl, $0005
|
||||
ld hl, SPRITEANIMSTRUCT_YCOORD
|
||||
add hl, bc
|
||||
ld [hl], d
|
||||
ret
|
||||
|
||||
Function88b3:
|
||||
ld de, PidgeySpriteGFX
|
||||
ld hl, vChars0 + $80
|
||||
lb bc, BANK(PidgeySpriteGFX), $04
|
||||
ld hl, vChars0 + 8 tiles
|
||||
lb bc, BANK(PidgeySpriteGFX), 4
|
||||
call Request2bpp
|
||||
ld de, PidgeySpriteGFX + $c0
|
||||
ld hl, vChars0 + $c0
|
||||
lb bc, BANK(PidgeySpriteGFX), $04
|
||||
|
||||
ld de, PidgeySpriteGFX + 12 tiles
|
||||
ld hl, vChars0 + 12 tiles
|
||||
lb bc, BANK(PidgeySpriteGFX), 4
|
||||
call Request2bpp
|
||||
|
||||
depixel 0, 0
|
||||
ld a, SPRITE_ANIM_INDEX_41
|
||||
ld a, SPRITE_ANIM_OBJ_MAP_CHARACTER_ICON
|
||||
call InitSpriteAnimStruct
|
||||
ld hl, $0003
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_TILE_ID
|
||||
add hl, bc
|
||||
ld [hl], $08
|
||||
ld [hl], 8
|
||||
ret
|
||||
|
||||
TownMapTilemap:
|
||||
|
|
|
|||
|
|
@ -2088,7 +2088,7 @@ Function60a0:
|
|||
call ClearSprites
|
||||
ld a, [wCurPartySpecies]
|
||||
ld [wce37], a
|
||||
predef Function40ac7
|
||||
predef NewPokedexEntry
|
||||
call LoadTilesetGFX_LCDOff
|
||||
.sub_e10d
|
||||
ld hl, GotItText
|
||||
|
|
@ -2780,8 +2780,8 @@ Function6734:
|
|||
ld a, BANK(LoadPokeDexGraphics)
|
||||
call FarCall_hl
|
||||
call ClearTileMap
|
||||
ld hl, Function40b07
|
||||
ld a, BANK(Function40b07)
|
||||
ld hl, _NewPokedexEntry
|
||||
ld a, BANK(_NewPokedexEntry)
|
||||
call FarCall_hl
|
||||
call ClearBGPalettes
|
||||
ld hl, wVramState
|
||||
|
|
@ -3247,7 +3247,7 @@ PokeBallEffect:
|
|||
call ClearSprites
|
||||
ld a, [wEnemyMonSpecies]
|
||||
ld [wce37], a
|
||||
predef Function40ac7
|
||||
predef NewPokedexEntry
|
||||
.sub_eac7
|
||||
ld a, [wPartyCount]
|
||||
cp $06
|
||||
|
|
|
|||
|
|
@ -395,7 +395,7 @@ _InitScrollingMenu::
|
|||
ld [wMenuJoypad], a
|
||||
ldh [hBGMapMode], a
|
||||
inc a
|
||||
ldh [hJoyDebounceSrc], a
|
||||
ldh [hInMenu], a
|
||||
ld hl, wce5f
|
||||
set 4, [hl]
|
||||
call asm_243c3
|
||||
|
|
@ -415,7 +415,7 @@ _ScrollingMenu::
|
|||
.asm_24296
|
||||
ld [wMenuJoypad], a
|
||||
ld a, $00
|
||||
ldh [hJoyDebounceSrc], a
|
||||
ldh [hInMenu], a
|
||||
ld hl, wce5f
|
||||
res 4, [hl]
|
||||
ret
|
||||
|
|
@ -1910,13 +1910,13 @@ asm_24ca0:
|
|||
|
||||
asm_24ca2:
|
||||
call DelayFrame
|
||||
ldh a, [hJoyDebounceSrc]
|
||||
ldh a, [hInMenu]
|
||||
push af
|
||||
ld a, $01
|
||||
ldh [hJoyDebounceSrc], a
|
||||
ldh [hInMenu], a
|
||||
call GetJoypadDebounced
|
||||
pop af
|
||||
ldh [hJoyDebounceSrc], a
|
||||
ldh [hInMenu], a
|
||||
ldh a, [hJoyDown]
|
||||
bit 1, a
|
||||
jr nz, asm_24cd0
|
||||
|
|
|
|||
|
|
@ -21,10 +21,10 @@ INCLUDE "data/items/descriptions.inc"
|
|||
|
||||
Function2d2fc:
|
||||
ld a, $1
|
||||
ldh [hJoyDebounceSrc], a
|
||||
ldh [hInMenu], a
|
||||
call sub_2d436
|
||||
ld a, $0
|
||||
ldh [hJoyDebounceSrc], a
|
||||
ldh [hInMenu], a
|
||||
ret nc
|
||||
call PlaceHollowCursor
|
||||
call WaitBGMap
|
||||
|
|
|
|||
|
|
@ -2,6 +2,59 @@ INCLUDE "constants.asm"
|
|||
|
||||
SECTION "engine/dumps/bank0e.asm", ROMX
|
||||
|
||||
StageBallTilesData:
|
||||
ld a, [de]
|
||||
push af
|
||||
ld de, wBattleHUDTiles
|
||||
ld c, PARTY_LENGTH
|
||||
ld a, $34 ; empty slot
|
||||
.loop1
|
||||
ld [de], a
|
||||
inc de
|
||||
dec c
|
||||
jr nz, .loop1
|
||||
pop af
|
||||
|
||||
ld de, wBattleHUDTiles
|
||||
.loop2
|
||||
push af
|
||||
call .GetHUDTile
|
||||
inc de
|
||||
pop af
|
||||
dec a
|
||||
jr nz, .loop2
|
||||
ret
|
||||
|
||||
.GetHUDTile:
|
||||
ld a, [hli]
|
||||
and a
|
||||
jr nz, .got_hp
|
||||
ld a, [hl]
|
||||
and a
|
||||
ld b, $33 ; fainted
|
||||
jr z, .fainted
|
||||
.got_hp
|
||||
dec hl
|
||||
dec hl
|
||||
dec hl
|
||||
ld a, [hl]
|
||||
and a
|
||||
ld b, $32 ; statused
|
||||
jr nz, .load
|
||||
dec b
|
||||
jr .load
|
||||
|
||||
.fainted
|
||||
dec hl
|
||||
dec hl
|
||||
dec hl
|
||||
.load
|
||||
ld a, b
|
||||
ld [de], a
|
||||
ld bc, PARTYMON_STRUCT_LENGTH + MON_HP - MON_STATUS
|
||||
add hl, bc
|
||||
ret
|
||||
|
||||
DrawPlayerHUDBorder::
|
||||
ld hl, .tiles
|
||||
ld de, wTrainerHUDTiles
|
||||
|
|
@ -69,11 +122,11 @@ PlaceHUDBorderTiles::
|
|||
ld [hl], a
|
||||
ret
|
||||
|
||||
Function38431::
|
||||
call $4488
|
||||
LinkBattle_TrainerHuds::
|
||||
call LoadBallIconGFX
|
||||
ld hl, wPartyMon1HP
|
||||
ld de, wPartyCount
|
||||
call $4391
|
||||
call StageBallTilesData
|
||||
ld hl, wPlaceBallsX
|
||||
ld a, 10 * TILE_WIDTH
|
||||
ld [hli], a
|
||||
|
|
@ -81,11 +134,11 @@ Function38431::
|
|||
ld a, TILE_WIDTH
|
||||
ld [wPlaceBallsDirection], a
|
||||
ld hl, wShadowOAMSprite00
|
||||
call $4467
|
||||
call LoadTrainerHudOAM
|
||||
|
||||
ld hl, wOTPartyMon1HP
|
||||
ld de, wOTPartyCount
|
||||
call $4391
|
||||
call StageBallTilesData
|
||||
|
||||
ld hl, wPlaceBallsX
|
||||
ld a, 10 * TILE_WIDTH
|
||||
|
|
@ -115,3 +168,9 @@ LoadTrainerHudOAM:
|
|||
dec c
|
||||
jr nz, .loop
|
||||
ret
|
||||
|
||||
LoadBallIconGFX:
|
||||
ld de, PokeBallsGFX
|
||||
ld hl, vChars0 + 49 tiles
|
||||
lb bc, 14, 4
|
||||
jp Request2bpp
|
||||
|
|
|
|||
|
|
@ -5724,13 +5724,13 @@ asm_3e999:
|
|||
_LoadWildMons:
|
||||
xor a
|
||||
ld hl, wWildMons
|
||||
ld bc, $29
|
||||
ld bc, GRASS_WILDDATA_LENGTH
|
||||
call ByteFill
|
||||
ld a, [wMapGroup]
|
||||
ld d, a
|
||||
ld a, [wMapId]
|
||||
ld e, a
|
||||
ld bc, $29
|
||||
ld bc, GRASS_WILDDATA_LENGTH
|
||||
ld hl, GrassWildMons
|
||||
.find
|
||||
ld a, [hl]
|
||||
|
|
@ -5750,88 +5750,90 @@ _LoadWildMons:
|
|||
inc hl
|
||||
inc hl
|
||||
ld de, wWildMons
|
||||
ld bc, $27
|
||||
ld bc, GRASS_WILDDATA_LENGTH - 2
|
||||
jp CopyBytes
|
||||
|
||||
Function3e9dc:
|
||||
ld hl, wTileMap
|
||||
ld bc, $0168
|
||||
; Load nest landmarks into wTilemap[0,0]
|
||||
FindNest:
|
||||
hlcoord 0, 0
|
||||
ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
|
||||
xor a
|
||||
call ByteFill
|
||||
ld hl, GrassWildMons
|
||||
ld de, wTileMap
|
||||
decoord 0, 0
|
||||
|
||||
asm_3e9ec:
|
||||
.FindGrass:
|
||||
ld a, [hl]
|
||||
cp $ff
|
||||
jr z, asm_3ea0d
|
||||
cp -1
|
||||
jr z, .done
|
||||
|
||||
push hl
|
||||
ld b, a
|
||||
inc hl
|
||||
ld c, [hl]
|
||||
call sub_3ea0e
|
||||
jr nc, asm_3ea06
|
||||
call .SearchMapForMon
|
||||
jr nc, .next_grass
|
||||
|
||||
push de
|
||||
call GetWorldMapLocation
|
||||
call sub_3ea27
|
||||
call .AppendNest
|
||||
pop de
|
||||
jr c, asm_3ea06
|
||||
jr c, .next_grass
|
||||
ld [de], a
|
||||
inc de
|
||||
|
||||
asm_3ea06:
|
||||
.next_grass
|
||||
pop hl
|
||||
ld bc, $29
|
||||
ld bc, GRASS_WILDDATA_LENGTH
|
||||
add hl, bc
|
||||
jr asm_3e9ec
|
||||
jr .FindGrass
|
||||
|
||||
asm_3ea0d:
|
||||
.done:
|
||||
ret
|
||||
|
||||
sub_3ea0e:
|
||||
.SearchMapForMon:
|
||||
rept 5
|
||||
inc hl
|
||||
inc hl
|
||||
inc hl
|
||||
inc hl
|
||||
inc hl
|
||||
ld a, $12
|
||||
endr
|
||||
ld a, NUM_GRASSMON * 3
|
||||
|
||||
asm_3ea15:
|
||||
.ScanMapLoop:
|
||||
push af
|
||||
ld a, [wNumSetBits]
|
||||
ld a, [wNamedObjectIndexBuffer]
|
||||
cp [hl]
|
||||
jr z, asm_3ea24
|
||||
jr z, .found
|
||||
inc hl
|
||||
inc hl
|
||||
pop af
|
||||
dec a
|
||||
jr nz, asm_3ea15
|
||||
jr nz, .ScanMapLoop
|
||||
and a
|
||||
ret
|
||||
|
||||
asm_3ea24:
|
||||
.found
|
||||
pop af
|
||||
scf
|
||||
ret
|
||||
|
||||
sub_3ea27:
|
||||
.AppendNest:
|
||||
ld c, a
|
||||
ld hl, wTileMap
|
||||
ld de, $0168
|
||||
|
||||
asm_3ea2e:
|
||||
ld de, SCREEN_WIDTH * SCREEN_HEIGHT
|
||||
.AppendNestLoop:
|
||||
ld a, [hli]
|
||||
cp c
|
||||
jr z, asm_3ea3a
|
||||
jr z, .found_nest
|
||||
|
||||
dec de
|
||||
ld a, e
|
||||
or d
|
||||
jr nz, asm_3ea2e
|
||||
jr nz, .AppendNestLoop
|
||||
|
||||
ld a, c
|
||||
and a
|
||||
ret
|
||||
|
||||
asm_3ea3a:
|
||||
.found_nest
|
||||
scf
|
||||
ret
|
||||
|
||||
|
|
@ -6727,7 +6729,7 @@ sub_3f60c:
|
|||
ld a, $69
|
||||
ld [hli], a
|
||||
ld [hl], $6a
|
||||
callfar Function38431
|
||||
callfar LinkBattle_TrainerHuds
|
||||
ld c, 150
|
||||
jp DelayFrames
|
||||
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -499,7 +499,7 @@ Function50340::
|
|||
hlcoord 18, 1
|
||||
ld [hl], $41
|
||||
|
||||
ld hl, wccd9
|
||||
ld hl, wCurHPPal
|
||||
call SetHPPal
|
||||
ld b, SGB_STATS_SCREEN_HP_PALS
|
||||
call GetSGBLayout
|
||||
|
|
@ -1142,7 +1142,7 @@ Function5081f::
|
|||
ld a, [wPartyMenuActionText]
|
||||
cp PARTYMENUACTION_MOVE
|
||||
jp z, Function509dd
|
||||
callfar Function8f0cc
|
||||
callfar LoadOverworldMonIcon
|
||||
call Function50eca
|
||||
callfar Function95f8
|
||||
hlcoord 3, 1
|
||||
|
|
@ -1160,13 +1160,13 @@ Function5081f::
|
|||
call Function508c4
|
||||
pop de
|
||||
ld a, [wCurPartyMon]
|
||||
ldh [hEventID], a
|
||||
ldh [hObjectStructIndex], a
|
||||
push hl
|
||||
push de
|
||||
|
||||
ld hl, Function8f0e3
|
||||
ld a, BANK(Function8f0e3) ; ...What macro do I use here?
|
||||
ld e, 0
|
||||
ld hl, LoadMenuMonIcon
|
||||
ld a, BANK(LoadMenuMonIcon) ; ...What macro do I use here?
|
||||
ld e, MONICON_PARTYMENU
|
||||
call FarCall_hl
|
||||
|
||||
pop de
|
||||
|
|
@ -1540,7 +1540,7 @@ Text_50b4e: ; leveled up
|
|||
db "@"
|
||||
|
||||
Function50b66::
|
||||
ld hl, wccd3
|
||||
ld hl, wHPPals
|
||||
ld a, [wcce1]
|
||||
ld c, a
|
||||
ld b, $00
|
||||
|
|
|
|||
|
|
@ -27,3 +27,47 @@ AnimateTilesetImpl:
|
|||
ld h, [hl]
|
||||
ld l, a
|
||||
jp hl
|
||||
|
||||
SECTION "engine/dumps/bank23.asm@RestoreOverworldMapTiles", ROMX
|
||||
|
||||
RestoreOverworldMapTiles::
|
||||
xor a
|
||||
call OpenSRAM
|
||||
ld hl, wTileMap
|
||||
ld de, sScratch
|
||||
ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
|
||||
call CopyBytes
|
||||
call CloseSRAM
|
||||
farcall ReanchorBGMap_NoOAMUpdate
|
||||
|
||||
xor a
|
||||
call OpenSRAM
|
||||
ld hl, sScratch
|
||||
ld de, wTileMap
|
||||
ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
|
||||
.loop
|
||||
ld a, [hl]
|
||||
cp $61
|
||||
jr c, .next
|
||||
ld [de], a
|
||||
.next
|
||||
inc hl
|
||||
inc de
|
||||
dec bc
|
||||
ld a, c
|
||||
or b
|
||||
jr nz, .loop
|
||||
|
||||
call CloseSRAM
|
||||
call UpdateSprites
|
||||
call WaitBGMap
|
||||
ld a, 144
|
||||
ldh [hWY], a
|
||||
call DelayFrame
|
||||
|
||||
xor a
|
||||
ldh [hBGMapMode], a
|
||||
call InitToolgearBuffer
|
||||
ld b, SGB_MAP_PALS
|
||||
call GetSGBLayout
|
||||
ret
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ MemoryMinigame:
|
|||
call DisableLCD
|
||||
ld b, SGB_DIPLOMA
|
||||
call GetSGBLayout
|
||||
callfar InitEffectObject
|
||||
callfar ClearSpriteAnims
|
||||
|
||||
ld hl, MemoryGameGFX
|
||||
ld de, vChars2
|
||||
|
|
@ -49,7 +49,7 @@ MemoryMinigame:
|
|||
ld a, BANK(PointerGFX)
|
||||
call FarCopyData
|
||||
|
||||
ld a, SPRITE_ANIM_DICT_29
|
||||
ld a, SPRITE_ANIM_DICT_ARROW_CURSOR
|
||||
ld hl, wSpriteAnimDict
|
||||
ld [hli], a
|
||||
ld [hl], 0
|
||||
|
|
@ -79,7 +79,7 @@ MemoryMinigame:
|
|||
bit MEMORYGAME_END_LOOP_F, a
|
||||
jr nz, .quit
|
||||
call .ExecuteJumptable
|
||||
callfar EffectObjectJumpNoDelay
|
||||
callfar PlaySpriteAnimations
|
||||
call DelayFrame
|
||||
and a
|
||||
ret
|
||||
|
|
@ -142,7 +142,7 @@ endr
|
|||
|
||||
.spawn_object
|
||||
depixel 6, 3, 4, 4
|
||||
ld a, SPRITE_ANIM_INDEX_MEMORY_GAME_CURSOR
|
||||
ld a, SPRITE_ANIM_OBJ_MEMORY_GAME_CURSOR
|
||||
call InitSpriteAnimStruct
|
||||
ld a, 5
|
||||
ld [wMemoryGameNumberTriesRemaining], a
|
||||
|
|
@ -531,7 +531,8 @@ MemoryGame_Card2Coord:
|
|||
add hl, de
|
||||
ret
|
||||
|
||||
MemoryGame_AnimateCursor: ; Called from sprite animation routine?
|
||||
; Called from sprite animation routine?
|
||||
MemoryGame_AnimateCursor:
|
||||
ld a, [wJumptableIndex]
|
||||
cp MEMORYGAME_REVEAL_ALL
|
||||
jr nc, .quit
|
||||
|
|
@ -561,7 +562,7 @@ MemoryGame_AnimateCursor: ; Called from sprite animation routine?
|
|||
ret
|
||||
|
||||
.pressed_a
|
||||
ld hl, SPRITEANIMSTRUCT_0C
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
inc a
|
||||
|
|
@ -576,7 +577,7 @@ MemoryGame_AnimateCursor: ; Called from sprite animation routine?
|
|||
ret z
|
||||
sub 1 tiles
|
||||
ld [hl], a
|
||||
ld hl, SPRITEANIMSTRUCT_0C
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
dec [hl]
|
||||
ret
|
||||
|
|
@ -589,7 +590,7 @@ MemoryGame_AnimateCursor: ; Called from sprite animation routine?
|
|||
ret z
|
||||
add 1 tiles
|
||||
ld [hl], a
|
||||
ld hl, SPRITEANIMSTRUCT_0C
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
inc [hl]
|
||||
ret
|
||||
|
|
@ -602,7 +603,7 @@ MemoryGame_AnimateCursor: ; Called from sprite animation routine?
|
|||
ret z
|
||||
sub 1 tiles
|
||||
ld [hl], a
|
||||
ld hl, SPRITEANIMSTRUCT_0C
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
sub 9
|
||||
|
|
@ -617,7 +618,7 @@ MemoryGame_AnimateCursor: ; Called from sprite animation routine?
|
|||
ret z
|
||||
add a, $10
|
||||
ld [hl], a
|
||||
ld hl, SPRITEANIMSTRUCT_0C
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
add a, 9
|
||||
|
|
|
|||
|
|
@ -43,13 +43,13 @@ PicrossMinigame:
|
|||
|
||||
.Init:
|
||||
call DisableLCD
|
||||
farcall InitEffectObject
|
||||
farcall ClearSpriteAnims
|
||||
call .InitGFX
|
||||
call .PlacePlayerBG
|
||||
call .InitRAM
|
||||
|
||||
depixel 8, 8, 0, 0
|
||||
ld a, SPRITE_ANIM_INDEX_MINIGAME_PICROSS_CURSOR
|
||||
ld a, SPRITE_ANIM_OBJ_MINIGAME_PICROSS_CURSOR
|
||||
call InitSpriteAnimStruct
|
||||
|
||||
ld a, c
|
||||
|
|
@ -58,7 +58,7 @@ PicrossMinigame:
|
|||
ld [wPicrossCursorSpritePointer+1], a
|
||||
|
||||
depixel 5, 4, 4, 4
|
||||
ld a, SPRITE_ANIM_INDEX_MINIGAME_PICROSS_GOLD
|
||||
ld a, SPRITE_ANIM_OBJ_MINIGAME_PICROSS_GOLD
|
||||
call InitSpriteAnimStruct
|
||||
|
||||
ld a, -1
|
||||
|
|
@ -214,14 +214,14 @@ PicrossMinigame:
|
|||
ld a, BANK(GoldSpriteGFX)
|
||||
call FarCopyData
|
||||
|
||||
ld a, SPRITE_ANIM_DICT_25
|
||||
ld a, SPRITE_ANIM_DICT_MINIGAME_PICROSS
|
||||
ld hl, wSpriteAnimDict
|
||||
ld [hli], a
|
||||
ld [hl], SPRITE_ANIM_DICT_DEFAULT
|
||||
ld [hl], SPRITE_ANIM_DICT_NULL
|
||||
inc hl
|
||||
ld a, SPRITE_ANIM_DICT_22
|
||||
ld a, SPRITE_ANIM_DICT_GS_INTRO_2
|
||||
ld [hli], a
|
||||
ld [hl], SPRITE_ANIM_DICT_10
|
||||
ld [hl], SPRITE_ANIM_DICT_TAUROS_ICON
|
||||
ret
|
||||
|
||||
.PlacePlayerBG:
|
||||
|
|
@ -265,7 +265,7 @@ PicrossMinigame:
|
|||
jr nz, .quit
|
||||
|
||||
call .ExecuteJumptable
|
||||
farcall EffectObjectJumpNoDelay
|
||||
farcall PlaySpriteAnimations
|
||||
call DelayFrame
|
||||
and a
|
||||
ret
|
||||
|
|
@ -277,14 +277,14 @@ PicrossMinigame:
|
|||
.GetJoypadState:
|
||||
call GetJoypadDebounced
|
||||
ldh a, [hJoyState]
|
||||
ld [wc606], a
|
||||
ld hl, wc607
|
||||
ld [wPicrossJoyStateBuffer], a
|
||||
ld hl, wPicrossCursorMovementDelay
|
||||
ld a, [hl]
|
||||
and a
|
||||
ret z
|
||||
dec [hl]
|
||||
xor a
|
||||
ld [wc606], a
|
||||
ld [wPicrossJoyStateBuffer], a
|
||||
ret
|
||||
|
||||
.ExecuteJumptable:
|
||||
|
|
@ -555,7 +555,7 @@ Picross_ProcessJoypad:
|
|||
.mark_cell
|
||||
ld [wPicrossJoypadAction], a
|
||||
ld a, 1
|
||||
ld [wca59], a
|
||||
ld [wPicrossAnimateDust], a
|
||||
call Picross_DetermineGridCoord
|
||||
call Picross_MarkCell
|
||||
call Picross_InitDustObject
|
||||
|
|
@ -582,7 +582,7 @@ Picross_InitDustObject:
|
|||
ret nz
|
||||
|
||||
; Make dust object only if we are marking a cell
|
||||
ld a, SPRITE_ANIM_INDEX_MINIGAME_PICROSS_DUST
|
||||
ld a, SPRITE_ANIM_OBJ_MINIGAME_PICROSS_DUST
|
||||
call InitSpriteAnimStruct
|
||||
ret
|
||||
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ PikachuMiniGame::
|
|||
call DisableLCD
|
||||
ld b, SGB_PIKACHU_MINIGAME
|
||||
call GetSGBLayout
|
||||
callfar InitEffectObject
|
||||
callfar ClearSpriteAnims
|
||||
call PikachuMiniGame_ClearBothTilemaps
|
||||
|
||||
ld hl, IntroForestGFX
|
||||
|
|
@ -75,9 +75,9 @@ PikachuMiniGame::
|
|||
call PikachuMiniGame_DrawBackground
|
||||
|
||||
ld hl, wSpriteAnimDict
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_OMANYTE
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_OMANYTE
|
||||
ld [hli], a
|
||||
ld a, SPRITE_ANIM_DICT_DEFAULT
|
||||
ld a, SPRITE_ANIM_DICT_NULL
|
||||
ld [hli], a
|
||||
call PikachuMiniGame_LoadFont
|
||||
|
||||
|
|
@ -136,7 +136,7 @@ PikachuMiniGame::
|
|||
|
||||
.load_pikachu
|
||||
depixel 14, 11
|
||||
ld a, SPRITE_ANIM_INDEX_MINIGAME_PIKACHU
|
||||
ld a, SPRITE_ANIM_OBJ_MINIGAME_PIKACHU
|
||||
call InitSpriteAnimStruct
|
||||
|
||||
; Save pointer to the newly initialized Pikachu object
|
||||
|
|
@ -147,7 +147,7 @@ PikachuMiniGame::
|
|||
|
||||
; load Pikachu's tail object
|
||||
depixel 14, 11
|
||||
ld a, SPRITE_ANIM_INDEX_MINIGAME_PIKACHU_TAIL
|
||||
ld a, SPRITE_ANIM_OBJ_MINIGAME_PIKACHU_TAIL
|
||||
call InitSpriteAnimStruct
|
||||
|
||||
ld a, c
|
||||
|
|
@ -362,7 +362,7 @@ PikachuMiniGame_RunFrame:
|
|||
|
||||
.skip_playing_sfx
|
||||
call PikachuMiniGame_PerformGameFunction
|
||||
farcall EffectObjectJumpNoDelay
|
||||
farcall PlaySpriteAnimations
|
||||
|
||||
ld a, 1
|
||||
ldh [hBGMapMode], a
|
||||
|
|
@ -382,7 +382,7 @@ PikachuMiniGame_RunFrame:
|
|||
ret
|
||||
|
||||
.Done:
|
||||
callfar InitEffectObject
|
||||
callfar ClearSpriteAnims
|
||||
|
||||
ld hl, wShadowOAM
|
||||
ld c, SPRITEOAMSTRUCT_LENGTH * NUM_SPRITE_OAM_STRUCTS
|
||||
|
|
@ -584,7 +584,7 @@ PikachuMiniGame_WaitAndGotoNextScene:
|
|||
|
||||
PikachuMiniGame_ShowJigglypuff:
|
||||
depixel 14, 24
|
||||
ld a, SPRITE_ANIM_INDEX_MINIGAME_JIGGLYPUFF
|
||||
ld a, SPRITE_ANIM_OBJ_MINIGAME_JIGGLYPUFF
|
||||
call InitSpriteAnimStruct
|
||||
|
||||
xor a
|
||||
|
|
@ -687,7 +687,7 @@ PikachuMiniGame_NoteSpawner:
|
|||
ld a, 3
|
||||
ld [wSpriteAnimCount], a
|
||||
|
||||
ld a, SPRITE_ANIM_INDEX_MINIGAME_NOTE
|
||||
ld a, SPRITE_ANIM_OBJ_MINIGAME_NOTE
|
||||
call InitSpriteAnimStruct
|
||||
|
||||
; add one to the note counter
|
||||
|
|
|
|||
|
|
@ -111,7 +111,7 @@ SlotMachineGame_Init:
|
|||
call DisableLCD
|
||||
ld b, SGB_SLOT_MACHINE
|
||||
call GetSGBLayout
|
||||
callfar InitEffectObject
|
||||
callfar ClearSpriteAnims
|
||||
ld hl, wSlots
|
||||
ld bc, wSlotsDataEnd - wSlots
|
||||
xor a
|
||||
|
|
@ -174,10 +174,10 @@ SlotMachineGame_Init:
|
|||
ld a, %11000000
|
||||
ldh [rOBP1], a
|
||||
|
||||
ld a, SPRITE_ANIM_INDEX_28
|
||||
ld a, SPRITE_ANIM_DICT_SLOTS
|
||||
ld hl, wSpriteAnimDict
|
||||
ld [hli], a
|
||||
ld [hl], SPRITE_ANIM_INDEX_20
|
||||
ld [hl], $20
|
||||
|
||||
xor a
|
||||
ld [wJumptableIndex], a
|
||||
|
|
@ -192,7 +192,7 @@ SlotsLoop:
|
|||
call SlotsJumptable
|
||||
call Slots_SpinReels
|
||||
ld a, $60
|
||||
ld [wc4bd], a
|
||||
ld [wCurSpriteOAMAddr], a
|
||||
callfar DoNextFrameForFirst16Sprites
|
||||
call Slots_PrintCoinsAndPayout
|
||||
call Slots_FlashPaletteOnMatchingSevens
|
||||
|
|
@ -1228,9 +1228,9 @@ ReelAction_InitGolem:
|
|||
push bc
|
||||
push af
|
||||
depixel 12, 13
|
||||
ld a, SPRITE_ANIM_INDEX_SLOTS_GOLEM
|
||||
ld a, SPRITE_ANIM_OBJ_SLOTS_GOLEM
|
||||
call InitSpriteAnimStruct
|
||||
ld hl, SPRITEANIMSTRUCT_0E
|
||||
ld hl, SPRITEANIMSTRUCT_VAR3
|
||||
add hl, bc
|
||||
pop af
|
||||
ld [hl], a
|
||||
|
|
@ -1282,7 +1282,7 @@ ReelAction_InitChansey:
|
|||
ld [hl], 0
|
||||
push bc
|
||||
depixel 12, 0
|
||||
ld a, SPRITE_ANIM_INDEX_SLOTS_CHANSEY
|
||||
ld a, SPRITE_ANIM_OBJ_SLOTS_CHANSEY
|
||||
call InitSpriteAnimStruct
|
||||
pop bc
|
||||
xor a
|
||||
|
|
@ -1997,7 +1997,7 @@ Slots_AnimateGolem:
|
|||
dw .roll
|
||||
|
||||
.init
|
||||
ld hl, SPRITEANIMSTRUCT_0E
|
||||
ld hl, SPRITEANIMSTRUCT_VAR3
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
and a
|
||||
|
|
@ -2014,7 +2014,7 @@ Slots_AnimateGolem:
|
|||
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
|
||||
add hl, bc
|
||||
inc [hl]
|
||||
ld hl, SPRITEANIMSTRUCT_0C
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld [hl], $30
|
||||
ld hl, SPRITEANIMSTRUCT_XOFFSET
|
||||
|
|
@ -2022,7 +2022,7 @@ Slots_AnimateGolem:
|
|||
ld [hl], 0
|
||||
|
||||
.fall
|
||||
ld hl, SPRITEANIMSTRUCT_0C
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
cp $20
|
||||
|
|
@ -2041,7 +2041,7 @@ Slots_AnimateGolem:
|
|||
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
|
||||
add hl, bc
|
||||
inc [hl]
|
||||
ld hl, SPRITEANIMSTRUCT_0D
|
||||
ld hl, SPRITEANIMSTRUCT_VAR2
|
||||
add hl, bc
|
||||
ld [hl], 2
|
||||
ld a, 1
|
||||
|
|
@ -2058,7 +2058,7 @@ Slots_AnimateGolem:
|
|||
jr nc, .restart
|
||||
and 3
|
||||
ret nz
|
||||
ld hl, SPRITEANIMSTRUCT_0D
|
||||
ld hl, SPRITEANIMSTRUCT_VAR2
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
xor $ff
|
||||
|
|
@ -2121,12 +2121,12 @@ Slots_AnimateChansey:
|
|||
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
|
||||
add hl, bc
|
||||
inc [hl]
|
||||
ld hl, SPRITEANIMSTRUCT_0C
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld [hl], 8
|
||||
|
||||
.two
|
||||
ld hl, SPRITEANIMSTRUCT_0C
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
and a
|
||||
|
|
@ -2140,7 +2140,7 @@ Slots_AnimateChansey:
|
|||
dec [hl]
|
||||
push bc
|
||||
depixel 12, 13, 0, 4
|
||||
ld a, SPRITE_ANIM_INDEX_SLOTS_EGG
|
||||
ld a, SPRITE_ANIM_OBJ_SLOTS_EGG
|
||||
call InitSpriteAnimStruct
|
||||
pop bc
|
||||
ret
|
||||
|
|
|
|||
272
engine/gfx/mon_icons.asm
Normal file
272
engine/gfx/mon_icons.asm
Normal file
|
|
@ -0,0 +1,272 @@
|
|||
INCLUDE "constants.asm"
|
||||
|
||||
SECTION "engine/gfx/mon_icons.asm", ROMX
|
||||
|
||||
LoadOverworldMonIcon::
|
||||
push hl
|
||||
push de
|
||||
push bc
|
||||
push af
|
||||
ld hl, wSpriteAnimDict
|
||||
ld bc, wSpriteAnimDataEnd - wSpriteAnimData
|
||||
.loop
|
||||
ld [hl], $00
|
||||
inc hl
|
||||
dec bc
|
||||
ld a, c
|
||||
or b
|
||||
jr nz, .loop
|
||||
|
||||
pop af
|
||||
pop bc
|
||||
pop de
|
||||
pop hl
|
||||
ret
|
||||
|
||||
LoadMenuMonIcon::
|
||||
push hl
|
||||
push de
|
||||
push bc
|
||||
call .LoadIcon
|
||||
pop bc
|
||||
pop de
|
||||
pop hl
|
||||
ret
|
||||
|
||||
.LoadIcon:
|
||||
ld d, 0
|
||||
ld hl, .Jumptable
|
||||
add hl, de
|
||||
add hl, de
|
||||
ld a, [hli]
|
||||
ld h, [hl]
|
||||
ld l, a
|
||||
jp hl
|
||||
|
||||
.Jumptable
|
||||
; entries correspond to MONICON_* constants
|
||||
dw PartyMenu_InitAnimatedMonIcon ; MONICON_PARTYMENU
|
||||
dw NamingScreen_InitAnimatedMonIcon ; MONICON_NAMINGSCREEN
|
||||
dw MoveList_InitAnimatedMonIcon ; MONICON_MOVES
|
||||
dw Trade_LoadMonIconGFX ; MONICON_TRADE
|
||||
|
||||
PartyMenu_InitAnimatedMonIcon:
|
||||
ldh a, [hObjectStructIndex]
|
||||
ld hl, wPartySpecies
|
||||
ld e, a
|
||||
ld d, 0
|
||||
add hl, de
|
||||
ld a, [hl]
|
||||
call ReadMonMenuIcon
|
||||
ld [wCurIcon], a
|
||||
call GetMemIconGFX
|
||||
|
||||
; y coord (hObjectStructIndex * 4 + 26)
|
||||
ldh a, [hObjectStructIndex]
|
||||
rept 4
|
||||
add a
|
||||
endr
|
||||
add 3 * TILE_WIDTH + 2
|
||||
ld d, a
|
||||
; x coord
|
||||
ld e, 2 * TILE_WIDTH
|
||||
|
||||
ld a, [wCurIcon]
|
||||
call _InitSpriteAnimStruct
|
||||
|
||||
; Get the party mon icon's animation speed
|
||||
ld hl, wHPPals
|
||||
ld d, $00
|
||||
ldh a, [hObjectStructIndex]
|
||||
ld e, a
|
||||
add hl, de
|
||||
ld e, [hl]
|
||||
ld hl, .speeds
|
||||
add hl, de
|
||||
ld a, [hl]
|
||||
ld hl, SPRITEANIMSTRUCT_DURATIONOFFSET
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
.speeds
|
||||
db 0 ; HP_GREEN
|
||||
db 16 ; HP_YELLOW
|
||||
db 32 ; HP_RED
|
||||
|
||||
NamingScreen_InitAnimatedMonIcon:
|
||||
ld a, [wTempIconSpecies]
|
||||
call ReadMonMenuIcon
|
||||
ld [wCurIcon], a
|
||||
call GetMemIconGFX
|
||||
lb de, 36, 32
|
||||
ld a, [wCurIcon]
|
||||
call _InitSpriteAnimStruct
|
||||
ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID
|
||||
add hl, bc
|
||||
ld [hl], SPRITE_ANIM_FUNC_NULL
|
||||
ret
|
||||
|
||||
MoveList_InitAnimatedMonIcon:
|
||||
ld a, [wTempIconSpecies]
|
||||
call ReadMonMenuIcon
|
||||
ld [wCurIcon], a
|
||||
call GetMemIconGFX
|
||||
ld d, 3 * TILE_WIDTH + 2 ; depixel 3, 3, 2, 0
|
||||
ld e, 3 * TILE_WIDTH
|
||||
ld a, [wCurIcon]
|
||||
call _InitSpriteAnimStruct
|
||||
ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID
|
||||
add hl, bc
|
||||
ld [hl], SPRITE_ANIM_FUNC_NULL
|
||||
ret
|
||||
|
||||
Trade_LoadMonIconGFX:
|
||||
ld a, [wTempIconSpecies]
|
||||
call ReadMonMenuIcon
|
||||
ld [wCurIcon], a
|
||||
ld a, $62
|
||||
ld [wCurIconTile], a
|
||||
call GetMemIconGFX
|
||||
ret
|
||||
|
||||
GetMemIconGFX:
|
||||
call .CheckSpriteAnimDict
|
||||
ret c
|
||||
|
||||
ld [hli], a
|
||||
ld a, [wCurIconTile]
|
||||
ld [hli], a
|
||||
ld l, a
|
||||
ld h, $00
|
||||
rept 4
|
||||
add hl, hl
|
||||
endr
|
||||
ld de, vChars0
|
||||
add hl, de
|
||||
ld a, [wCurIcon]
|
||||
call LoadSpriteAnimGFX
|
||||
|
||||
ld a, [wCurIconTile]
|
||||
add c
|
||||
ld [wCurIconTile], a
|
||||
ret
|
||||
|
||||
; Scroll through SpriteAnimDict for empty slots to put the requested icon in.
|
||||
; If sprite space is full, or tile requested is too high, returns carry flag.
|
||||
.CheckSpriteAnimDict:
|
||||
push af
|
||||
ld d, a
|
||||
ld hl, wSpriteAnimDict
|
||||
ld e, NUM_SPRITEANIMDICT_ENTRIES
|
||||
.loop
|
||||
ld a, [hl]
|
||||
cp d
|
||||
jr z, .set_carry_flag
|
||||
|
||||
and a
|
||||
jr z, .slot_available
|
||||
|
||||
inc hl
|
||||
inc hl
|
||||
dec e
|
||||
jr z, .set_carry_flag
|
||||
|
||||
jr .loop
|
||||
|
||||
.slot_available
|
||||
; If icon's tile infringes on vChars1, don't get the graphics
|
||||
ld a, [wCurIconTile]
|
||||
cp $80
|
||||
jr nc, .set_carry_flag
|
||||
|
||||
pop af
|
||||
and a
|
||||
ret
|
||||
|
||||
.set_carry_flag
|
||||
pop af
|
||||
scf
|
||||
ret
|
||||
|
||||
FreezeMonIcons:
|
||||
ld hl, wSpriteAnimationStructs
|
||||
ld e, PARTY_LENGTH
|
||||
ld a, [wMenuCursorY]
|
||||
ld d, a
|
||||
.loop
|
||||
ld a, [hl]
|
||||
and a
|
||||
jr z, .next
|
||||
cp d
|
||||
jr z, .loadwithtwo
|
||||
ld a, SPRITE_ANIM_FUNC_NULL
|
||||
jr .ok
|
||||
|
||||
.loadwithtwo
|
||||
ld a, SPRITE_ANIM_FUNC_PARTY_MON_SWITCH
|
||||
|
||||
.ok
|
||||
push hl
|
||||
ld c, l
|
||||
ld b, h
|
||||
ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
pop hl
|
||||
|
||||
.next
|
||||
ld bc, wSpriteAnim2 - wSpriteAnim1
|
||||
add hl, bc
|
||||
dec e
|
||||
jr nz, .loop
|
||||
ret
|
||||
|
||||
UnfreezeMonIcons:
|
||||
ld hl, wSpriteAnimationStructs
|
||||
ld e, PARTY_LENGTH
|
||||
ld a, [wSelectedSwapPosition]
|
||||
ld d, a
|
||||
.loop
|
||||
ld a, [hl]
|
||||
and a
|
||||
jr z, .next
|
||||
cp d
|
||||
jr z, .loadwithtwo
|
||||
|
||||
ld a, SPRITE_ANIM_FUNC_PARTY_MON_SELECTED
|
||||
jr .ok
|
||||
|
||||
.loadwithtwo
|
||||
ld a, SPRITE_ANIM_FUNC_PARTY_MON_SWITCH
|
||||
.ok
|
||||
push hl
|
||||
ld c, l
|
||||
ld b, h
|
||||
ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
pop hl
|
||||
.next:
|
||||
ld bc, wSpriteAnim2 - wSpriteAnim1
|
||||
add hl, bc
|
||||
dec e
|
||||
jr nz, .loop
|
||||
ret
|
||||
|
||||
ReadMonMenuIcon:
|
||||
cp DEX_EGG
|
||||
jr z, .egg
|
||||
dec a
|
||||
ld hl, MonMenuIcons
|
||||
ld e, a
|
||||
ld d, 0
|
||||
add hl, de
|
||||
ld a, [hl]
|
||||
ret
|
||||
.egg
|
||||
; Even though a proper egg icon exists (ID $1c), the function uses a zeroed-out value as a placeholder
|
||||
ld a, $00
|
||||
ret
|
||||
|
||||
INCLUDE "data/pokemon/menu_icons.inc"
|
||||
|
|
@ -39,7 +39,7 @@ LoadSGBLayout:
|
|||
dw SGB_TrainerCard
|
||||
dw SGB_MoveList
|
||||
dw SGB_PikachuMinigame
|
||||
dw SGB_PokedexSelection
|
||||
dw SGB_Pokedex_WaitBGMap
|
||||
dw SGB_Poker
|
||||
dw SGB12
|
||||
dw SGB_TrainerGear
|
||||
|
|
@ -125,7 +125,7 @@ SGB_StatsScreenHPPals:
|
|||
call Function957e
|
||||
push af
|
||||
ld hl, wcce2
|
||||
ld a, [wccd9]
|
||||
ld a, [wCurHPPal]
|
||||
add $23
|
||||
ld [hli], a
|
||||
inc hl
|
||||
|
|
@ -153,7 +153,7 @@ SGB_Pokedex:
|
|||
ld de, BlkPacket_Pokedex
|
||||
ret
|
||||
|
||||
SGB_PokedexSelection:
|
||||
SGB_Pokedex_WaitBGMap:
|
||||
ld hl, PalPacket_GSIntroCharizard
|
||||
ld de, BlkPacket_986c
|
||||
ret
|
||||
|
|
@ -540,7 +540,7 @@ Function95f8:
|
|||
jp CopyBytes
|
||||
|
||||
SGB_ApplyPartyMenuHPPals:
|
||||
ld hl, wccd3
|
||||
ld hl, wHPPals
|
||||
ld a, [wcce1]
|
||||
ld e, a
|
||||
ld d, $00
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ CanLearnTMHMMove:
|
|||
|
||||
.jump
|
||||
pop hl
|
||||
ld b, 2 ;CHECK_FLAG
|
||||
ld b, CHECK_FLAG
|
||||
push de
|
||||
ld d, 0
|
||||
predef SmallFarFlagAction
|
||||
|
|
|
|||
|
|
@ -236,7 +236,7 @@ _TrainerCard:
|
|||
|
||||
StartMenu_Pokedex:
|
||||
call LoadStandardMenuHeader
|
||||
predef Function40000
|
||||
predef Pokedex
|
||||
call ClearPalettes
|
||||
call Function360b
|
||||
call ReloadFontAndTileset
|
||||
|
|
@ -908,7 +908,7 @@ PartyPrompt:
|
|||
ld a, [wCurPartyMon]
|
||||
inc a
|
||||
ld [wSelectedSwapPosition], a
|
||||
callfar Function8f1f2
|
||||
callfar UnfreezeMonIcons
|
||||
ld a, PARTYMENUACTION_MOVE
|
||||
ld [wPartyMenuActionText], a
|
||||
predef PartyMenuInBattle
|
||||
|
|
@ -1472,17 +1472,17 @@ PokeSummary:
|
|||
xor a
|
||||
ldh [hBGMapMode], a
|
||||
callfar LoadOnlyPokemonStatsGraphics
|
||||
callfar Function8f0cc
|
||||
callfar LoadOverworldMonIcon
|
||||
ld a, [wCurPartyMon]
|
||||
ld e, a
|
||||
ld d, 0
|
||||
ld hl, wPartySpecies
|
||||
add hl, de
|
||||
ld a, [hl]
|
||||
ld [wce37], a
|
||||
ld hl, Function8f0e3
|
||||
ld a, BANK(Function8f0e3)
|
||||
ld e, 2
|
||||
ld [wTempIconSpecies], a
|
||||
ld hl, LoadMenuMonIcon
|
||||
ld a, BANK(LoadMenuMonIcon)
|
||||
ld e, MONICON_MOVES
|
||||
call FarCall_hl
|
||||
hlcoord 0, 1
|
||||
ld b, 8
|
||||
|
|
|
|||
|
|
@ -21,10 +21,10 @@ NamingScreen:
|
|||
push af
|
||||
xor a
|
||||
ldh [hMapAnims], a
|
||||
ldh a, [hJoyDebounceSrc]
|
||||
ldh a, [hInMenu]
|
||||
push af
|
||||
ld a, $01
|
||||
ldh [hJoyDebounceSrc], a
|
||||
ldh [hInMenu], a
|
||||
call .SetUpNamingScreen
|
||||
call DelayFrame
|
||||
.loop
|
||||
|
|
@ -32,7 +32,7 @@ NamingScreen:
|
|||
jr nc, .loop
|
||||
|
||||
pop af
|
||||
ldh [hJoyDebounceSrc], a
|
||||
ldh [hInMenu], a
|
||||
pop af
|
||||
ldh [hMapAnims], a
|
||||
pop af
|
||||
|
|
@ -84,9 +84,9 @@ GetNamingScreenSetup:
|
|||
dw .Pokemon
|
||||
|
||||
.Pokemon:
|
||||
ld hl, Function8f0e3
|
||||
ld a, BANK(Function8f0e3)
|
||||
ld e, 1
|
||||
ld hl, LoadMenuMonIcon
|
||||
ld a, BANK(LoadMenuMonIcon)
|
||||
ld e, MONICON_NAMINGSCREEN
|
||||
call FarCall_hl
|
||||
call GetPokemonName
|
||||
hlcoord 5, 2
|
||||
|
|
@ -148,7 +148,7 @@ GetNamingScreenSetup:
|
|||
ld [hl+], a
|
||||
ld [hl], $00
|
||||
depixel 4, 4, 4, 0
|
||||
ld a, SPRITE_ANIM_INDEX_41
|
||||
ld a, SPRITE_ANIM_OBJ_MAP_CHARACTER_ICON
|
||||
call InitSpriteAnimStruct
|
||||
ld hl, $0001
|
||||
add hl, bc
|
||||
|
|
@ -181,7 +181,7 @@ GetNamingScreenSetup:
|
|||
ld [hli], a
|
||||
ld [hl], $00
|
||||
depixel 4, 4, 4, 0
|
||||
ld a, SPRITE_ANIM_INDEX_41
|
||||
ld a, SPRITE_ANIM_OBJ_MAP_CHARACTER_ICON
|
||||
call InitSpriteAnimStruct
|
||||
ret
|
||||
|
||||
|
|
@ -255,7 +255,7 @@ NamingScreenJoypadLoop:
|
|||
|
||||
.leap
|
||||
; kills sprites and resets screen position
|
||||
callfar InitEffectObject
|
||||
callfar ClearSpriteAnims
|
||||
call ClearSprites
|
||||
xor a
|
||||
ldh [hSCX], a
|
||||
|
|
@ -302,7 +302,7 @@ NamingScreenJoypadLoop:
|
|||
|
||||
.InitCursor:
|
||||
depixel 11, 3, 0, 0
|
||||
ld a, SPRITE_ANIM_INDEX_39
|
||||
ld a, SPRITE_ANIM_OBJ_NAMING_SCREEN_CURSOR
|
||||
call InitSpriteAnimStruct
|
||||
ld a, c
|
||||
ld [wNamingScreenCursorObjectPointer], a
|
||||
|
|
@ -347,7 +347,7 @@ NamingScreenJoypadLoop:
|
|||
set 7, [hl]
|
||||
ret
|
||||
|
||||
.GetDPad:
|
||||
NamingScreen_AnimateCursor:
|
||||
ld hl, hJoySum
|
||||
ld a, [hl]
|
||||
and D_UP
|
||||
|
|
@ -620,7 +620,7 @@ NamingScreenGetLastCharacter:
|
|||
|
||||
LoadNamingScreenGFX:
|
||||
call ClearSprites
|
||||
callfar InitEffectObject
|
||||
callfar ClearSpriteAnims
|
||||
call LoadFont
|
||||
|
||||
ld de, TextScreenGFX_End
|
||||
|
|
@ -656,9 +656,9 @@ LoadNamingScreenGFX:
|
|||
ld [hl], $7F
|
||||
xor a
|
||||
ldh [hSCY], a
|
||||
ld [wc4c7], a
|
||||
ld [wGlobalAnimYOffset], a
|
||||
ldh [hSCX], a
|
||||
ld [wc4c8], a
|
||||
ld [wGlobalAnimXOffset], a
|
||||
ld [wJumptableIndex], a
|
||||
ldh [hBGMapMode], a
|
||||
ld [wNamingScreenCurNameLength], a
|
||||
|
|
@ -678,10 +678,10 @@ ComposeMailMessage:
|
|||
push af
|
||||
xor a
|
||||
ldh [hMapAnims], a
|
||||
ldh a, [hJoyDebounceSrc]
|
||||
ldh a, [hInMenu]
|
||||
push af
|
||||
ld a, 1
|
||||
ldh [hJoyDebounceSrc], a
|
||||
ldh [hInMenu], a
|
||||
xor a
|
||||
ld [wFlyDestination], a
|
||||
.outerloop
|
||||
|
|
@ -696,7 +696,7 @@ ComposeMailMessage:
|
|||
jr nz, .outerloop
|
||||
|
||||
pop af
|
||||
ldh [hJoyDebounceSrc], a
|
||||
ldh [hInMenu], a
|
||||
pop af
|
||||
ldh [hMapAnims], a
|
||||
ret
|
||||
|
|
@ -729,20 +729,20 @@ ComposeMailMessage:
|
|||
ld [hli], a
|
||||
ld [hl], 0
|
||||
depixel 4, 4, 4, 0
|
||||
ld a, SPRITE_ANIM_INDEX_08
|
||||
ld a, SPRITE_ANIM_OBJ_RHYDON_ICON
|
||||
call InitSpriteAnimStruct
|
||||
ld hl, $0002
|
||||
add hl, bc
|
||||
ld [hl], 0
|
||||
depixel 11, 3, 0, 0
|
||||
ld a, SPRITE_ANIM_INDEX_39
|
||||
ld a, SPRITE_ANIM_OBJ_NAMING_SCREEN_CURSOR
|
||||
call InitSpriteAnimStruct
|
||||
ld a, c
|
||||
ld [wNamingScreenCursorObjectPointer], a
|
||||
ld a, b
|
||||
ld [wNamingScreenCursorObjectPointer + 1], a
|
||||
call InitCharSet
|
||||
ld a, $E3
|
||||
ld a, LCDC_DEFAULT
|
||||
ldh [rLCDC], a
|
||||
call InitMailText
|
||||
call WaitBGMap
|
||||
|
|
@ -818,7 +818,7 @@ DoMailEntry:
|
|||
ret
|
||||
|
||||
.exit_mail
|
||||
callfar InitEffectObject
|
||||
callfar ClearSpriteAnims
|
||||
call ClearSprites
|
||||
xor a
|
||||
ldh [hSCX], a
|
||||
|
|
@ -946,20 +946,20 @@ SetupMail:
|
|||
ld [hli], a
|
||||
ld [hl], 0
|
||||
depixel 4, 4, 4, 0
|
||||
ld a, SPRITE_ANIM_INDEX_08
|
||||
ld a, SPRITE_ANIM_OBJ_RHYDON_ICON
|
||||
call InitSpriteAnimStruct
|
||||
ld hl, $0002
|
||||
ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID
|
||||
add hl, bc
|
||||
ld [hl], 0
|
||||
depixel 12, 3, 0, 0
|
||||
ld a, SPRITE_ANIM_INDEX_40
|
||||
ld a, SPRITE_ANIM_OBJ_MAIL_WRITING_CURSOR
|
||||
call InitSpriteAnimStruct
|
||||
ld a, c
|
||||
ld [wNamingScreenCursorObjectPointer], a
|
||||
ld a, b
|
||||
ld [wNamingScreenCursorObjectPointer + 1], a
|
||||
call DrawMail
|
||||
ld a, $E3
|
||||
ld a, LCDC_DEFAULT
|
||||
ldh [rLCDC], a
|
||||
call DrawMailLoadedText
|
||||
call WaitBGMap
|
||||
|
|
@ -1047,3 +1047,95 @@ DrawMailTextExtra:
|
|||
|
||||
MailTextExtra:
|
||||
db "?!12345 67890ー円"
|
||||
|
||||
ComposeMail_AnimateCursor:
|
||||
ld hl, hJoySum
|
||||
ld a, [hl]
|
||||
and D_UP
|
||||
jr nz, .upJump
|
||||
ld a, [hl]
|
||||
and D_DOWN
|
||||
jr nz, .downJump
|
||||
ld a, [hl]
|
||||
and D_LEFT
|
||||
jr nz, .leftJump
|
||||
ld a, [hl]
|
||||
and D_RIGHT
|
||||
jr nz, .rightJump
|
||||
ret
|
||||
|
||||
.rightJump
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
cp 13
|
||||
jr nc, .skip
|
||||
inc [hl]
|
||||
jr .UpdatePositionOffset
|
||||
.skip
|
||||
ld [hl], 0
|
||||
jr .UpdatePositionOffset
|
||||
.leftJump
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
and a
|
||||
jr z, .skip2
|
||||
dec [hl]
|
||||
jr .UpdatePositionOffset
|
||||
.skip2
|
||||
ld [hl], 13
|
||||
jr .UpdatePositionOffset
|
||||
.downJump
|
||||
ld hl, SPRITEANIMSTRUCT_VAR2
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
cp 4
|
||||
jr nc, .skip3
|
||||
inc [hl]
|
||||
jr .UpdatePositionOffset
|
||||
.skip3
|
||||
ld [hl], 00
|
||||
jr .UpdatePositionOffset
|
||||
.upJump
|
||||
ld hl, SPRITEANIMSTRUCT_VAR2
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
and a
|
||||
jr z, .skip4
|
||||
dec [hl]
|
||||
jr .UpdatePositionOffset
|
||||
.skip4
|
||||
ld [hl], 4
|
||||
jr .UpdatePositionOffset
|
||||
|
||||
.UpdatePositionOffset
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld e, [hl]
|
||||
ld d, 0
|
||||
ld hl, .XOffsets
|
||||
add hl, de
|
||||
ld a, [hl]
|
||||
ld hl, SPRITEANIMSTRUCT_XOFFSET
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_VAR2
|
||||
add hl, bc
|
||||
ld e, [hl]
|
||||
ld d, 0
|
||||
ld hl, .YOffsets
|
||||
add hl, de
|
||||
ld a, [hl]
|
||||
ld hl, SPRITEANIMSTRUCT_YOFFSET
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
.XOffsets:
|
||||
db $00, $08, $10, $18, $20, $28, $30, $48, $50, $58, $60, $68, $70, $78
|
||||
|
||||
.YOffsets:
|
||||
db $00, $08, $18, $20, $30
|
||||
|
||||
|
|
|
|||
|
|
@ -77,7 +77,7 @@ GameFreakIntro::
|
|||
ld a, BANK(GameFreakLogoSparkleGFX)
|
||||
call FarCopyData
|
||||
|
||||
farcall InitEffectObject
|
||||
farcall ClearSpriteAnims
|
||||
|
||||
ld hl, wSpriteAnimDict
|
||||
ld a, SPRITE_ANIM_DICT_GS_SPLASH
|
||||
|
|
@ -119,7 +119,7 @@ GameFreakIntro::
|
|||
bit 7, a
|
||||
jr nz, .Finished
|
||||
|
||||
farcall EffectObjectJumpNoDelay
|
||||
farcall PlaySpriteAnimations
|
||||
|
||||
call GameFreakPresentsScene
|
||||
call DelayFrame
|
||||
|
|
@ -131,7 +131,7 @@ GameFreakIntro::
|
|||
set 6, [hl]
|
||||
|
||||
.Finished:
|
||||
callfar InitEffectObject
|
||||
callfar ClearSpriteAnims
|
||||
call ClearTileMap
|
||||
call ClearSprites
|
||||
|
||||
|
|
@ -169,10 +169,10 @@ GameFreakPresents_Star:
|
|||
xor a
|
||||
ld [wIntroSceneFrameCounter], a
|
||||
depixel 10, 11, 4, 0
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_STAR
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_STAR
|
||||
call InitSpriteAnimStruct
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_0C
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld [hl], $a0 ; star path radius
|
||||
|
||||
|
|
@ -187,7 +187,7 @@ GameFreakPresents_PlaceLogo:
|
|||
ret z
|
||||
|
||||
depixel 10, 11, 4, 0
|
||||
ld a, SPRITE_ANIM_INDEX_GAMEFREAK_LOGO
|
||||
ld a, SPRITE_ANIM_OBJ_GAMEFREAK_LOGO
|
||||
call InitSpriteAnimStruct
|
||||
call GameFreakPresents_NextScene
|
||||
|
||||
|
|
@ -293,7 +293,7 @@ GameFreakPresents_Sparkle:
|
|||
; set up a new sparkle sprite
|
||||
push af
|
||||
depixel 11, 11
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_SPARKLE
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_SPARKLE
|
||||
call InitSpriteAnimStruct
|
||||
pop af
|
||||
|
||||
|
|
@ -314,10 +314,10 @@ GameFreakPresents_Sparkle:
|
|||
ld a, [de]
|
||||
ld [hl], a ; angle
|
||||
inc de
|
||||
ld hl, SPRITEANIMSTRUCT_0C
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld [hl], 0
|
||||
inc hl ; SPRITEANIMSTRUCT_0D
|
||||
inc hl ; SPRITEANIMSTRUCT_VAR2
|
||||
ld a, [de]
|
||||
ld [hl], a ; distance
|
||||
ret
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ OpeningCutscene::
|
|||
ret
|
||||
|
||||
.Init:
|
||||
farcall InitEffectObject
|
||||
farcall ClearSpriteAnims
|
||||
xor a
|
||||
ld [wIntroJumptableIndex], a
|
||||
ldh [hBGMapMode], a
|
||||
|
|
@ -27,14 +27,14 @@ OpeningCutscene::
|
|||
bit 7, a
|
||||
jr nz, .Finish
|
||||
|
||||
farcall EffectObjectJumpNoDelay
|
||||
farcall PlaySpriteAnimations
|
||||
call IntroSceneJumper
|
||||
call DelayFrame
|
||||
and a
|
||||
ret
|
||||
|
||||
.Finish:
|
||||
callfar InitEffectObject
|
||||
callfar ClearSpriteAnims
|
||||
call ClearSprites
|
||||
call DelayFrame
|
||||
xor a
|
||||
|
|
@ -80,7 +80,7 @@ IntroScene1:
|
|||
ld c, 0
|
||||
call GetSGBLayout
|
||||
|
||||
callfar InitEffectObject
|
||||
callfar ClearSpriteAnims
|
||||
|
||||
call Intro_ResetLYOverrides
|
||||
|
||||
|
|
@ -123,9 +123,9 @@ IntroScene1:
|
|||
jr nz, .draw_gfx
|
||||
|
||||
ld hl, wSpriteAnimDict
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_BUBBLE
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_BUBBLE
|
||||
ld [hli], a
|
||||
ld a, SPRITE_ANIM_DICT_DEFAULT
|
||||
ld a, SPRITE_ANIM_DICT_NULL
|
||||
ld [hli], a
|
||||
|
||||
xor a
|
||||
|
|
@ -359,7 +359,7 @@ Intro_InitBubble:
|
|||
ld e, [hl]
|
||||
inc hl
|
||||
ld d, [hl]
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_BUBBLE
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_BUBBLE
|
||||
call InitSpriteAnimStruct
|
||||
ret
|
||||
|
||||
|
|
@ -409,7 +409,7 @@ Intro_InitMagikarps:
|
|||
ret
|
||||
|
||||
.PlaceMagikarp:
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_MAGIKARP
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_MAGIKARP
|
||||
call InitSpriteAnimStruct
|
||||
ret
|
||||
|
||||
|
|
@ -422,7 +422,7 @@ Intro_InitOmanyte:
|
|||
; fallthrough
|
||||
|
||||
.PlaceOmanyte:
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_OMANYTE
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_OMANYTE
|
||||
call InitSpriteAnimStruct
|
||||
ret
|
||||
|
||||
|
|
@ -431,13 +431,13 @@ Intro_InitLapras:
|
|||
and %00011111
|
||||
ret nz
|
||||
depixel 16, 24
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_LAPRAS
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_LAPRAS
|
||||
call InitSpriteAnimStruct
|
||||
ret
|
||||
|
||||
Intro_UnusedInitAerodactyl: ; unreferenced
|
||||
depixel 2, 0
|
||||
ld a, SPRITE_ANIM_INDEX_UNUSED_INTRO_AERODACTYL
|
||||
ld a, SPRITE_ANIM_OBJ_UNUSED_INTRO_AERODACTYL
|
||||
call InitSpriteAnimStruct
|
||||
ret
|
||||
|
||||
|
|
@ -602,7 +602,7 @@ IntroScene6:
|
|||
ld b, SGB_GS_INTRO
|
||||
ld c, 1
|
||||
call GetSGBLayout
|
||||
callfar InitEffectObject
|
||||
callfar ClearSpriteAnims
|
||||
call Intro_ResetLYOverrides
|
||||
ld hl, vChars2
|
||||
ld de, IntroForestGFX
|
||||
|
|
@ -636,9 +636,9 @@ IntroScene6:
|
|||
jr nz, .load
|
||||
|
||||
ld hl, wSpriteAnimDict
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_OMANYTE
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_OMANYTE
|
||||
ld [hli], a
|
||||
ld a, SPRITE_ANIM_DICT_DEFAULT
|
||||
ld a, SPRITE_ANIM_DICT_NULL
|
||||
ld [hli], a
|
||||
xor a
|
||||
ldh [hSCY], a
|
||||
|
|
@ -759,28 +759,28 @@ Intro_InitNote:
|
|||
jr z, .SmallerNote
|
||||
|
||||
depixel 11, 6, 4, 0
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_NOTE
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_NOTE
|
||||
call InitSpriteAnimStruct
|
||||
ret
|
||||
|
||||
.SmallerNote:
|
||||
depixel 10, 6, 4, 0
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_SMALLER_NOTE
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_SMALLER_NOTE
|
||||
call InitSpriteAnimStruct
|
||||
ret
|
||||
|
||||
Intro_InitJigglypuff:
|
||||
depixel 14, 6
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_JIGGLYPUFF
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_JIGGLYPUFF
|
||||
call InitSpriteAnimStruct
|
||||
ret
|
||||
|
||||
Intro_InitPikachu:
|
||||
depixel 14, 24
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_PIKACHU
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_PIKACHU
|
||||
call InitSpriteAnimStruct
|
||||
depixel 14, 24
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_PIKACHU_TAIL
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_PIKACHU_TAIL
|
||||
call InitSpriteAnimStruct
|
||||
ret
|
||||
|
||||
|
|
@ -791,7 +791,7 @@ IntroScene10:
|
|||
ld b, SGB_GS_INTRO
|
||||
ld c, 2
|
||||
call GetSGBLayout
|
||||
callfar InitEffectObject
|
||||
callfar ClearSpriteAnims
|
||||
call Intro_ResetLYOverrides
|
||||
call Intro_BlankTilemapAndBGMap
|
||||
|
||||
|
|
@ -811,9 +811,9 @@ IntroScene10:
|
|||
call Request2bpp
|
||||
|
||||
ld hl, wSpriteAnimDict
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_OMANYTE
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_OMANYTE
|
||||
ld [hli], a
|
||||
ld a, SPRITE_ANIM_DICT_DEFAULT
|
||||
ld a, SPRITE_ANIM_DICT_NULL
|
||||
ld [hli], a
|
||||
|
||||
ld a, 0
|
||||
|
|
@ -1134,7 +1134,7 @@ Intro_AnimateFireball:
|
|||
and 3
|
||||
ret nz
|
||||
depixel 12, 10, 4, 4
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_FIREBALL
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_FIREBALL
|
||||
call InitSpriteAnimStruct
|
||||
ld hl, hSCX
|
||||
dec [hl]
|
||||
|
|
@ -1144,13 +1144,13 @@ Intro_AnimateFireball:
|
|||
|
||||
Intro_LoadBlastoiseObject:
|
||||
depixel 22, 1
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_BLASTOISE
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_BLASTOISE
|
||||
call InitSpriteAnimStruct
|
||||
ret
|
||||
|
||||
Intro_LoadVenusaurObject:
|
||||
depixel 22, 20
|
||||
ld a, SPRITE_ANIM_INDEX_GS_INTRO_VENUSAUR
|
||||
ld a, SPRITE_ANIM_OBJ_GS_INTRO_VENUSAUR
|
||||
call InitSpriteAnimStruct
|
||||
ret
|
||||
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@ TitleSequenceInit::
|
|||
call DisableLCD
|
||||
call ClearSprites
|
||||
|
||||
farcall InitEffectObject
|
||||
farcall ClearSpriteAnims
|
||||
ld hl, vChars0
|
||||
ld bc, vBGMap0 - vChars0
|
||||
|
||||
|
|
@ -152,7 +152,7 @@ TitleSequenceInit::
|
|||
ld d, [hl]
|
||||
inc hl
|
||||
push hl
|
||||
ld a, SPRITE_ANIM_INDEX_GS_TITLE_FLAME_NOTE
|
||||
ld a, SPRITE_ANIM_OBJ_GS_TITLE_FLAME_NOTE
|
||||
call InitSpriteAnimStruct
|
||||
pop hl
|
||||
pop bc
|
||||
|
|
@ -176,7 +176,7 @@ TitleScreenMain::
|
|||
bit 7, a
|
||||
jr nz, .exit
|
||||
call TitleScreenSequence
|
||||
farcall EffectObjectJumpNoDelay
|
||||
farcall PlaySpriteAnimations
|
||||
call DelayFrame
|
||||
and a
|
||||
ret
|
||||
|
|
|
|||
|
|
@ -1,6 +1,60 @@
|
|||
INCLUDE "constants.asm"
|
||||
|
||||
SECTION "engine/palettes.asm@Overworld fade", ROMX
|
||||
SECTION "engine/palettes.asm", ROMX
|
||||
|
||||
UpdateTimeOfDayPal:
|
||||
call UpdateTime
|
||||
call GetTimePalette
|
||||
ret
|
||||
|
||||
_TimeOfDayPals:
|
||||
ld hl, wTimeOfDayPalFlags
|
||||
bit CLEAR_PALSET_F, [hl]
|
||||
ret nz
|
||||
|
||||
ld a, [wTimeOfDay]
|
||||
ld hl, wCurTimeOfDay
|
||||
cp [hl]
|
||||
ret z
|
||||
|
||||
call OverworldFadeOut
|
||||
call GetTimePalette
|
||||
call RestoreOverworldMapTiles
|
||||
call OverworldFadeIn
|
||||
ret
|
||||
|
||||
_LABEL_8C2FE_:
|
||||
ld hl, wTimeOfDayPalFlags
|
||||
res CLEAR_PALSET_F, [hl]
|
||||
call OverworldFadeOut
|
||||
call UpdateTime
|
||||
call GetTimePalette
|
||||
call RestoreOverworldMapTiles
|
||||
call OverworldFadeIn
|
||||
ret
|
||||
|
||||
_LABEL_8C313_:
|
||||
ld hl, wTimeOfDayPalFlags
|
||||
set CLEAR_PALSET_F, [hl]
|
||||
call OverworldFadeOut
|
||||
call GetTimePalette
|
||||
call RestoreOverworldMapTiles
|
||||
call OverworldFadeIn
|
||||
ret
|
||||
|
||||
Function8c325:
|
||||
call OverworldFadeOut
|
||||
call UpdateTime
|
||||
call GetTimePalette
|
||||
call RestoreOverworldMapTiles
|
||||
call OverworldFadeIn
|
||||
ret
|
||||
|
||||
_UpdateTimePals:
|
||||
ld c, $09
|
||||
call GetFadeStep
|
||||
call ApplyPalettesAtHL
|
||||
ret
|
||||
|
||||
OverworldFadeIn::
|
||||
ld c, 0
|
||||
|
|
@ -16,9 +70,91 @@ OverworldFadeOut::
|
|||
call FadeTowardsBlack
|
||||
ret
|
||||
|
||||
ReplaceTimeOfDayPals::
|
||||
ld hl, TimeOfDayPalsets
|
||||
ld a, [wMapPermissions] ; wMapPermissions = $D661
|
||||
cp TOWN
|
||||
jr z, .get_palset
|
||||
|
||||
; TODO: merge this
|
||||
SECTION "engine/palettes.asm@Palette fading, part 2?", ROMX
|
||||
cp ROUTE
|
||||
jr z, .get_palset
|
||||
|
||||
inc hl
|
||||
cp CAVE
|
||||
jr z, .get_palset
|
||||
|
||||
; INDOOR, ENVIRONMENT_5, GATE, DUNGEON
|
||||
inc hl
|
||||
.get_palset
|
||||
ld a, [hl]
|
||||
ld [wTimeOfDayPalset], a
|
||||
ret
|
||||
|
||||
TimeOfDayPalsets:
|
||||
db %11100100, %11100100, %01100000
|
||||
|
||||
GetTimePalette::
|
||||
ld hl, wTimeOfDayPalFlags
|
||||
bit CLEAR_PALSET_F, [hl]
|
||||
jr nz, .ClearPalset
|
||||
|
||||
ld a, [wTimeOfDay]
|
||||
ld [wCurTimeOfDay], a
|
||||
ld e, a
|
||||
ld d, $00
|
||||
ld hl, .Jumptable
|
||||
add hl, de
|
||||
add hl, de
|
||||
ld a, [hli]
|
||||
ld h, [hl]
|
||||
ld l, a
|
||||
jp hl
|
||||
|
||||
.Jumptable:
|
||||
dw .Day, .Night, .Darkness, .Morning
|
||||
|
||||
.Day:
|
||||
xor a
|
||||
ldh [hOverworldFlashlightEffect], a
|
||||
ld a, [wTimeOfDayPalset]
|
||||
and %00000011
|
||||
ld [wTimeOfDayPal], a
|
||||
ret
|
||||
|
||||
.Night:
|
||||
xor a
|
||||
ldh [hOverworldFlashlightEffect], a
|
||||
ld a, [wTimeOfDayPalset]
|
||||
and %00001100
|
||||
srl a
|
||||
srl a
|
||||
ld [wTimeOfDayPal], a
|
||||
ret
|
||||
|
||||
.Darkness:
|
||||
ld a, $03
|
||||
ldh [hOverworldFlashlightEffect], a
|
||||
ld a, [wTimeOfDayPalset]
|
||||
and %00110000
|
||||
swap a
|
||||
ld [wTimeOfDayPal], a
|
||||
ret
|
||||
|
||||
.Morning:
|
||||
xor a
|
||||
ldh [hOverworldFlashlightEffect], a
|
||||
ld a, [wTimeOfDayPalset]
|
||||
and %11000000
|
||||
rlca
|
||||
rlca
|
||||
ld [wTimeOfDayPal], a
|
||||
ret
|
||||
|
||||
.ClearPalset:
|
||||
xor a
|
||||
ldh [hOverworldFlashlightEffect], a
|
||||
ld [wTimeOfDayPal], a
|
||||
ret
|
||||
|
||||
ApplyPalettesAtHL::
|
||||
push hl
|
||||
|
|
|
|||
492
engine/sprite_anims/core.asm
Normal file
492
engine/sprite_anims/core.asm
Normal file
|
|
@ -0,0 +1,492 @@
|
|||
INCLUDE "constants.asm"
|
||||
|
||||
SECTION "engine/dumps/bank23.asm@ClearSpriteAnims", ROMX
|
||||
|
||||
ClearSpriteAnims::
|
||||
ld hl, wSpriteAnimData
|
||||
ld bc, wSpriteAnimDataEnd - wSpriteAnimData
|
||||
.loop
|
||||
ld [hl], 0
|
||||
inc hl
|
||||
dec bc
|
||||
ld a, c
|
||||
or b
|
||||
jr nz, .loop
|
||||
ret
|
||||
|
||||
PlaySpriteAnimationsAndDelayFrame::
|
||||
call PlaySpriteAnimations
|
||||
call DelayFrame
|
||||
ret
|
||||
|
||||
PlaySpriteAnimations::
|
||||
push hl
|
||||
push de
|
||||
push bc
|
||||
push af
|
||||
|
||||
ld a, LOW(wShadowOAM)
|
||||
ld [wCurSpriteOAMAddr], a
|
||||
call DoNextFrameForFirst16Sprites
|
||||
|
||||
pop af
|
||||
pop bc
|
||||
pop de
|
||||
pop hl
|
||||
ret
|
||||
|
||||
DoNextFrameForFirst16Sprites::
|
||||
ld hl, wSpriteAnimationStructs
|
||||
ld e, NUM_SPRITE_ANIM_STRUCTS
|
||||
|
||||
.loop
|
||||
ld a, [hl]
|
||||
and a
|
||||
jr z, .next
|
||||
ld c, l
|
||||
ld b, h
|
||||
push hl
|
||||
push de
|
||||
call DoSpriteAnimFrame ; Uses a massive dw
|
||||
call UpdateAnimFrame
|
||||
pop de
|
||||
pop hl
|
||||
jr c, .done
|
||||
|
||||
.next
|
||||
ld bc, SPRITEANIMSTRUCT_LENGTH
|
||||
add hl, bc
|
||||
dec e
|
||||
jr nz, .loop
|
||||
ld a, [wCurSpriteOAMAddr]
|
||||
ld l, a
|
||||
ld h, HIGH(wShadowOAM)
|
||||
|
||||
; Clear (wShadowOAM + [wCurSpriteOAMAddr] --> Sprites + $40)
|
||||
.loop2
|
||||
ld a, l
|
||||
cp LOW(wShadowOAMEnd)
|
||||
jr nc, .done
|
||||
xor a
|
||||
ld [hli], a
|
||||
jr .loop2
|
||||
|
||||
.done:
|
||||
ret
|
||||
|
||||
; Initialize animation a at pixel x=e, y=d
|
||||
_InitSpriteAnimStruct::
|
||||
; Find if there's any room in the wSpriteAnimationStructs array, which is 10x16
|
||||
push de
|
||||
push af
|
||||
ld hl, wSpriteAnimationStructs
|
||||
ld e, NUM_SPRITE_ANIM_STRUCTS
|
||||
|
||||
.loop
|
||||
ld a, [hl]
|
||||
and a
|
||||
jr z, .found
|
||||
ld bc, SPRITEANIMSTRUCT_LENGTH
|
||||
add hl, bc
|
||||
dec e
|
||||
jr nz, .loop
|
||||
pop af
|
||||
pop de
|
||||
; We've reached the end. There is no more room here.
|
||||
; Return carry.
|
||||
scf
|
||||
ret
|
||||
|
||||
.found
|
||||
; Back up the structure address to bc.
|
||||
pop af
|
||||
ld c, l
|
||||
ld b, h
|
||||
|
||||
; Get row a of SpriteAnimObjects, copy the pointer into de
|
||||
ld hl, wSpriteAnimCount
|
||||
inc [hl]
|
||||
ld e, a
|
||||
ld d, $00
|
||||
ld hl, SpriteAnimObjects
|
||||
add hl, de
|
||||
add hl, de
|
||||
add hl, de
|
||||
ld e, l
|
||||
ld d, h
|
||||
|
||||
; Set hl to the first field (field 0) in the current structure.
|
||||
ld hl, SPRITEANIMSTRUCT_INDEX
|
||||
add hl, bc
|
||||
; Load the index.
|
||||
ld a, [wSpriteAnimCount]
|
||||
ld [hlI], a
|
||||
; Copy the table entry to the next two fields.
|
||||
ld a, [de]
|
||||
ld [hli], a ; SPRITEANIMSTRUCT_FRAMESET_ID
|
||||
inc de
|
||||
ld a, [de]
|
||||
ld [hli], a ; SPRITEANIMSTRUCT_ANIM_SEQ_ID
|
||||
inc de
|
||||
; Look up the third field in the wSpriteAnimDict mapping.
|
||||
; Take the mapped value and load it in.
|
||||
ld a, [de]
|
||||
call GetSpriteAnimVTile
|
||||
ld [hli], a ; SPRITEANIMSTRUCT_TILE_ID
|
||||
pop de
|
||||
; Set hl to field 4 (X coordinate). Kinda pointless, because we're presumably already here.
|
||||
ld hl, SPRITEANIMSTRUCT_XCOORD
|
||||
add hl, bc
|
||||
; Load the original value of de into here.
|
||||
ld a, e
|
||||
ld [hli], a ; SPRITEANIMSTRUCT_XCOORD
|
||||
ld a, d
|
||||
ld [hli], a ; SPRITEANIMSTRUCT_YCOORD
|
||||
; load 0 into the next four fields
|
||||
xor a
|
||||
ld [hli], a ; SPRITEANIMSTRUCT_XOFFSET
|
||||
ld [hli], a ; SPRITEANIMSTRUCT_YOFFSET
|
||||
xor a
|
||||
ld [hli], a ; SPRITEANIMSTRUCT_DURATION
|
||||
ld [hli], a ; SPRITEANIMSTRUCT_DURATIONOFFSET
|
||||
; load -1 into the next field
|
||||
dec a
|
||||
ld [hli], a ; SPRITEANIMSTRUCT_FRAME
|
||||
; load 0 into the last five fields
|
||||
xor a
|
||||
ld [hli], a ; SPRITEANIMSTRUCT_JUMPTABLE_INDEX
|
||||
ld [hli], a ; SPRITEANIMSTRUCT_VAR1
|
||||
ld [hli], a ; SPRITEANIMSTRUCT_VAR2
|
||||
ld [hli], a ; SPRITEANIMSTRUCT_VAR3
|
||||
ld [hl], a ; SPRITEANIMSTRUCT_VAR4
|
||||
; back up the address of the first field to wSpriteAnimAddrBackup
|
||||
ld a, c
|
||||
ld [wSpriteAnimAddrBackup], a
|
||||
ld a, b
|
||||
ld [wSpriteAnimAddrBackup + 1], a
|
||||
ret
|
||||
|
||||
; Clear the index field of the struct in bc.
|
||||
DeinitializeSprite::
|
||||
ld hl, SPRITEANIMSTRUCT_INDEX
|
||||
add hl, bc
|
||||
ld [hl], $00
|
||||
ret
|
||||
|
||||
UpdateAnimFrame::
|
||||
; Init RAM and read from memory array
|
||||
call InitSpriteAnimBuffer
|
||||
call GetSpriteAnimFrame
|
||||
cp oamwait_command
|
||||
jr z, .done
|
||||
cp oamdelete_command
|
||||
jr z, .delete
|
||||
call GetFrameOAMPointer
|
||||
; Add byte to [wCurAnimVTile]
|
||||
ld a, [wCurAnimVTile]
|
||||
add [hl]
|
||||
ld [wCurAnimVTile], a
|
||||
inc hl
|
||||
; Load pointer into hl
|
||||
ld a, [hli]
|
||||
ld h, [hl]
|
||||
ld l, a
|
||||
push bc
|
||||
ld a, [wCurSpriteOAMAddr] ; wCurSpriteOAMAddr = $C4BD
|
||||
ld e, a
|
||||
ld d, HIGH(wShadowOAM)
|
||||
ld a, [hli]
|
||||
ld c, a ; number of objects
|
||||
.loop
|
||||
; first byte: y (px)
|
||||
; [de] = [wCurAnimYCoord] + [wCurAnimYOffset] + [wGlobalAnimYOffset] + AddOrSubtractY([hl])
|
||||
ld a, [wCurAnimYCoord]
|
||||
ld b, a
|
||||
ld a, [wCurAnimYOffset]
|
||||
add b
|
||||
ld b, a
|
||||
ld a, [wGlobalAnimYOffset]
|
||||
add b
|
||||
ld b, a
|
||||
call AddOrSubtractY
|
||||
add b
|
||||
ld [de], a
|
||||
inc hl
|
||||
inc de
|
||||
; second byte: x (px)
|
||||
; [de] = [wCurAnimXCoord] + [wCurAnimXOffset] + [wGlobalAnimXOffset] + AddOrSubtractX([hl])
|
||||
ld a, [wCurAnimXCoord]
|
||||
ld b, a
|
||||
ld a, [wCurAnimXOffset]
|
||||
add b
|
||||
ld b, a
|
||||
ld a, [wGlobalAnimXOffset]
|
||||
add b
|
||||
ld b, a
|
||||
call AddOrSubtractX
|
||||
add b
|
||||
ld [de], a
|
||||
inc hl
|
||||
inc de
|
||||
; third byte: vtile
|
||||
; [de] = [wCurAnimVTile] + [hl]
|
||||
ld a, [wCurAnimVTile]
|
||||
add [hl]
|
||||
ld [de], a
|
||||
inc hl
|
||||
inc de
|
||||
; fourth byte: attributes
|
||||
; [de] = GetSpriteOAMAttr([hl])
|
||||
call GetSpriteOAMAttr
|
||||
ld [de], a
|
||||
inc hl
|
||||
inc de
|
||||
ld a, e
|
||||
ld [wCurSpriteOAMAddr], a
|
||||
cp LOW(wShadowOAMEnd)
|
||||
jr nc, .reached_the_end
|
||||
dec c
|
||||
jr nz, .loop
|
||||
pop bc
|
||||
jr .done
|
||||
|
||||
.delete
|
||||
; Removes the object from the screen, as opposed to `oamend` which just stops all motion
|
||||
call DeinitializeSprite
|
||||
.done
|
||||
and a
|
||||
ret
|
||||
|
||||
.reached_the_end
|
||||
pop bc
|
||||
scf
|
||||
ret
|
||||
|
||||
AddOrSubtractY:
|
||||
push hl
|
||||
ld a, [hl]
|
||||
ld hl, wCurSpriteOAMFlags
|
||||
bit OAM_Y_FLIP, [hl]
|
||||
jr z, .ok
|
||||
; -8 - a
|
||||
add 8
|
||||
xor $ff
|
||||
inc a
|
||||
.ok
|
||||
pop hl
|
||||
ret
|
||||
|
||||
AddOrSubtractX:
|
||||
push hl
|
||||
ld a, [hl]
|
||||
ld hl, wCurSpriteOAMFlags
|
||||
bit OAM_X_FLIP, [hl]
|
||||
jr z, .ok
|
||||
; -8 - a
|
||||
add 8
|
||||
xor $ff
|
||||
inc a
|
||||
.ok:
|
||||
pop hl
|
||||
ret
|
||||
|
||||
GetSpriteOAMAttr:
|
||||
ld a, [wSpriteAnimAddrBackup] ; wSpriteAnimAddrBackup = $C4C0
|
||||
ld b, a
|
||||
ld a, [hl]
|
||||
xor b
|
||||
and PRIORITY | Y_FLIP | X_FLIP
|
||||
ld b, a
|
||||
ld a, [hl]
|
||||
and OBP_NUM
|
||||
or b
|
||||
ret
|
||||
|
||||
InitSpriteAnimBuffer::
|
||||
xor a
|
||||
ld [wSpriteAnimAddrBackup], a
|
||||
ld hl, SPRITEANIMSTRUCT_TILE_ID
|
||||
add hl, bc
|
||||
ld a, [hli]
|
||||
ld [wCurAnimVTile], a
|
||||
ld a, [hli]
|
||||
ld [wCurAnimXCoord], a
|
||||
ld a, [hli]
|
||||
ld [wCurAnimYCoord], a
|
||||
ld a, [hli]
|
||||
ld [wCurAnimXOffset], a
|
||||
ld a, [hli]
|
||||
ld [wCurAnimYOffset], a
|
||||
ret
|
||||
|
||||
; a = wSpriteAnimDict[a] if a in wSpriteAnimDict else vtile offset $00
|
||||
GetSpriteAnimVTile::
|
||||
push hl
|
||||
push bc
|
||||
ld hl, wTileMapBackup
|
||||
ld b, a
|
||||
ld c, NUM_SPRITEANIMDICT_ENTRIES
|
||||
.loop
|
||||
ld a, [hli]
|
||||
cp b
|
||||
jr z, .ok
|
||||
inc hl
|
||||
dec c
|
||||
jr nz, .loop
|
||||
xor a
|
||||
jr .done
|
||||
|
||||
.ok
|
||||
ld a, [hl]
|
||||
|
||||
.done
|
||||
pop bc
|
||||
pop hl
|
||||
ret
|
||||
|
||||
; Unreferenced
|
||||
ld a, [wSpriteAnimAddrBackup]
|
||||
|
||||
_ReinitSpriteAnimFrame::
|
||||
ld hl, SPRITEANIMSTRUCT_FRAMESET_ID
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ld hl, SPRITEANIMSTRUCT_DURATION
|
||||
add hl, bc
|
||||
ld [hl], 0
|
||||
ld hl, SPRITEANIMSTRUCT_FRAME
|
||||
add hl, bc
|
||||
ld [hl], -1
|
||||
ret
|
||||
|
||||
GetSpriteAnimFrame::
|
||||
.loop
|
||||
ld hl, SPRITEANIMSTRUCT_DURATION
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
and a
|
||||
jr z, .next_frame
|
||||
dec [hl]
|
||||
call .GetPointer
|
||||
ld a, [hli]
|
||||
push af
|
||||
jr .okay
|
||||
|
||||
.next_frame
|
||||
ld hl, SPRITEANIMSTRUCT_FRAME
|
||||
add hl, bc
|
||||
inc [hl]
|
||||
call .GetPointer
|
||||
ld a, [hli]
|
||||
cp oamrestart_command
|
||||
jr z, .restart
|
||||
cp oamend_command
|
||||
jr z, .repeat_last
|
||||
|
||||
push af
|
||||
ld a, [hl]
|
||||
push hl
|
||||
and ~(Y_FLIP << 1 | X_FLIP << 1)
|
||||
ld hl, SPRITEANIMSTRUCT_DURATIONOFFSET
|
||||
add hl, bc
|
||||
add [hl]
|
||||
ld hl, SPRITEANIMSTRUCT_DURATION
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
pop hl
|
||||
.okay
|
||||
; The << 1 is compensated in the "oamframe" macro
|
||||
ld a, [hl]
|
||||
and Y_FLIP << 1 | X_FLIP << 1
|
||||
srl a
|
||||
ld [wCurSpriteOAMFlags], a
|
||||
pop af
|
||||
ret
|
||||
|
||||
.repeat_last
|
||||
xor a
|
||||
ld hl, SPRITEANIMSTRUCT_DURATION
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_FRAME
|
||||
add hl, bc
|
||||
dec [hl]
|
||||
dec [hl]
|
||||
jr GetSpriteAnimFrame
|
||||
|
||||
.restart
|
||||
xor a
|
||||
ld hl, SPRITEANIMSTRUCT_DURATION
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
|
||||
dec a
|
||||
ld hl, SPRITEANIMSTRUCT_FRAME
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
jr GetSpriteAnimFrame
|
||||
|
||||
.GetPointer
|
||||
ld hl, SPRITEANIMSTRUCT_FRAMESET_ID
|
||||
add hl, bc
|
||||
ld e, [hl]
|
||||
ld d, $00
|
||||
ld hl, SpriteAnimFrameData
|
||||
add hl, de
|
||||
add hl, de
|
||||
ld e, [hl]
|
||||
inc hl
|
||||
ld d, [hl]
|
||||
ld hl, SPRITEANIMSTRUCT_FRAME
|
||||
add hl, bc
|
||||
ld l, [hl]
|
||||
ld h, $00
|
||||
add hl, hl
|
||||
add hl, de
|
||||
ret
|
||||
|
||||
GetFrameOAMPointer:
|
||||
ld e, a
|
||||
ld d, $00
|
||||
ld hl, SpriteAnimOAMData
|
||||
add hl, de
|
||||
add hl, de
|
||||
add hl, de
|
||||
ret
|
||||
|
||||
; Unreferenced in final game
|
||||
LoadSpriteAnimGFX::
|
||||
push hl
|
||||
ld l, a
|
||||
ld h, $00
|
||||
add hl, hl
|
||||
add hl, hl
|
||||
ld de, SpriteAnimGFX
|
||||
add hl, de
|
||||
ld c, [hl]
|
||||
inc hl
|
||||
ld b, [hl]
|
||||
inc hl
|
||||
ld e, [hl]
|
||||
inc hl
|
||||
ld d, [hl]
|
||||
pop hl
|
||||
push bc
|
||||
call Request2bpp
|
||||
pop bc
|
||||
ret
|
||||
|
||||
INCLUDE "data/sprite_anims/objects.inc"
|
||||
INCLUDE "engine/sprite_anims/functions.inc"
|
||||
INCLUDE "data/sprite_anims/framesets.inc"
|
||||
INCLUDE "data/sprite_anims/oam.inc"
|
||||
INCLUDE "data/sprite_anims/gfx.inc"
|
||||
|
||||
Sprites_Cosine:
|
||||
; a = d * cos(a * pi/32)
|
||||
add %010000 ; cos(x) = sin(x + pi/2)
|
||||
; fallthrough
|
||||
Sprites_Sine:
|
||||
; a = d * sin(a * pi/32)
|
||||
calc_sine_wave
|
||||
1355
engine/sprite_anims/functions.inc
Normal file
1355
engine/sprite_anims/functions.inc
Normal file
File diff suppressed because it is too large
Load Diff
|
|
@ -169,13 +169,13 @@ TrainerGear_Loop:
|
|||
bit TRAINERGEAR_END_LOOP_F, a
|
||||
jr nz, .done
|
||||
call TrainerGear_Jumptable
|
||||
farcall EffectObjectJumpNoDelay
|
||||
farcall PlaySpriteAnimations
|
||||
call TrainerGear_UpdateTime
|
||||
call DelayFrame
|
||||
and a
|
||||
ret
|
||||
.done
|
||||
callfar InitEffectObject
|
||||
callfar ClearSpriteAnims
|
||||
call ClearSprites
|
||||
xor a
|
||||
ldh [hSCX], a
|
||||
|
|
@ -224,17 +224,17 @@ TrainerGear_Next:
|
|||
ret
|
||||
|
||||
TrainerGear_InitPointerSprite:
|
||||
callfar InitEffectObject
|
||||
callfar ClearSpriteAnims
|
||||
ld de, PointerGFX
|
||||
ld hl, vChars0 tile TRAINERGEAR_GFX_POINTER
|
||||
lb bc, BANK(PointerGFX), 4
|
||||
call Request2bpp
|
||||
ld a, SPRITE_ANIM_DICT_29
|
||||
ld a, SPRITE_ANIM_DICT_ARROW_CURSOR
|
||||
ld hl, wSpriteAnimDict
|
||||
ld [hli], a
|
||||
ld [hl], TRAINERGEAR_GFX_POINTER
|
||||
depixel 4, 3, 4, 4
|
||||
ld a, SPRITE_ANIM_INDEX_TRAINERGEAR_POINTER
|
||||
ld a, SPRITE_ANIM_OBJ_TRAINERGEAR_POINTER
|
||||
call InitSpriteAnimStruct
|
||||
call TrainerGear_Next
|
||||
ret
|
||||
|
|
@ -373,7 +373,7 @@ TrainerGear_Radio:
|
|||
call WaitBGMap
|
||||
|
||||
depixel 9, 4, 4, 3
|
||||
ld a, SPRITE_ANIM_INDEX_TRAINERGEAR_POINTER
|
||||
ld a, SPRITE_ANIM_OBJ_TRAINERGEAR_POINTER
|
||||
call InitSpriteAnimStruct
|
||||
ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID
|
||||
add hl, bc
|
||||
|
|
@ -382,7 +382,7 @@ TrainerGear_Radio:
|
|||
add hl, bc
|
||||
ld [hl], TRAINERGEAR_GFX_POINTER
|
||||
depixel 8, 6
|
||||
ld a, SPRITE_ANIM_INDEX_RADIO_TUNING_KNOB
|
||||
ld a, SPRITE_ANIM_OBJ_RADIO_FREQUENCY_METER
|
||||
call InitSpriteAnimStruct
|
||||
ld hl, SPRITEANIMSTRUCT_TILE_ID
|
||||
add hl, bc
|
||||
|
|
@ -428,7 +428,7 @@ TrainerGear_RadioJumptable:
|
|||
ret
|
||||
|
||||
.AdvanceDial:
|
||||
ld hl, SPRITEANIMSTRUCT_0C
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
and a
|
||||
|
|
@ -457,7 +457,7 @@ TrainerGear_RadioJumptable:
|
|||
ret
|
||||
|
||||
.TurnBackDial:
|
||||
ld hl, SPRITEANIMSTRUCT_0C
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
and a
|
||||
|
|
@ -487,14 +487,14 @@ TrainerGear_RadioJumptable:
|
|||
ld hl, SPRITEANIMSTRUCT_XOFFSET
|
||||
add hl, bc
|
||||
ld d, [hl]
|
||||
ld hl, SPRITEANIMSTRUCT_0C
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld e, [hl]
|
||||
pop hl
|
||||
add hl, de
|
||||
ld e, l
|
||||
ld d, h
|
||||
ld hl, SPRITEANIMSTRUCT_0C
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld [hl], e
|
||||
ld hl, SPRITEANIMSTRUCT_XOFFSET
|
||||
|
|
@ -623,7 +623,7 @@ TrainerGear_PhoneJoypad:
|
|||
ret
|
||||
|
||||
TrainerGear_ClearView:
|
||||
callfar InitEffectObject
|
||||
callfar ClearSpriteAnims
|
||||
call ClearSprites
|
||||
call WaitForAutoBgMapTransfer
|
||||
coord hl, 0, 3
|
||||
|
|
|
|||
|
|
@ -1,92 +0,0 @@
|
|||
INCLUDE "constants.asm"
|
||||
|
||||
SECTION "engine/unknown11d32.asm", ROMX
|
||||
|
||||
Unknown11d32:
|
||||
ld hl, hJoySum
|
||||
ld a, [hl]
|
||||
and D_UP
|
||||
jr nz, .upJump
|
||||
ld a, [hl]
|
||||
and D_DOWN
|
||||
jr nz, .downJump
|
||||
ld a, [hl]
|
||||
and D_LEFT
|
||||
jr nz, .leftJump
|
||||
ld a, [hl]
|
||||
and D_RIGHT
|
||||
jr nz, .rightJump
|
||||
ret
|
||||
|
||||
.rightJump
|
||||
ld hl, $000C
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
cp $0D
|
||||
jr nc, .skip
|
||||
inc [hl]
|
||||
jr .escape
|
||||
.skip
|
||||
ld [hl], 0
|
||||
jr .escape
|
||||
.leftJump
|
||||
ld hl, $000C
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
and a
|
||||
jr z, .skip2
|
||||
dec [hl]
|
||||
jr .escape
|
||||
.skip2
|
||||
ld [hl], $0D
|
||||
jr .escape
|
||||
.downJump
|
||||
ld hl, $000D
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
cp 4
|
||||
jr nc, .skip3
|
||||
inc [hl]
|
||||
jr .escape
|
||||
.skip3
|
||||
ld [hl], 00
|
||||
jr .escape
|
||||
.upJump
|
||||
ld hl, $000D
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
and a
|
||||
jr z, .skip4
|
||||
dec [hl]
|
||||
jr .escape
|
||||
.skip4
|
||||
ld [hl], 4
|
||||
jr .escape
|
||||
.escape
|
||||
ld hl, $000C
|
||||
add hl, bc
|
||||
ld e, [hl]
|
||||
ld d, 0
|
||||
ld hl, .Offsets1
|
||||
add hl, de
|
||||
ld a, [hl]
|
||||
ld hl, $0006
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ld hl, $000D
|
||||
add hl, bc
|
||||
ld e, [hl]
|
||||
ld d, 0
|
||||
ld hl, .Offsets2
|
||||
add hl, de
|
||||
ld a, [hl]
|
||||
ld hl, $0007
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
.Offsets1:
|
||||
db $00, $08, $10, $18, $20, $28, $30, $48, $50, $58, $60, $68, $70, $78
|
||||
|
||||
.Offsets2:
|
||||
db $00, $08, $18, $20, $30
|
||||
|
|
@ -379,6 +379,7 @@ INCBIN "gfx/battle_anims/pointer.2bpp"
|
|||
INCBIN "gfx/battle_anims/attack_animations_2.2bpp"
|
||||
|
||||
SECTION "gfx.asm@Pokemon Party Sprites", ROMX
|
||||
MenuMonIconGFX::
|
||||
PoliwagIcon:: INCBIN "gfx/icons/poliwag.2bpp"
|
||||
JigglypuffIcon:: INCBIN "gfx/icons/jigglypuff.2bpp"
|
||||
DiglettIcon:: INCBIN "gfx/icons/diglett.2bpp"
|
||||
|
|
|
|||
|
|
@ -136,12 +136,12 @@ JoyTitleScreenInput::
|
|||
|
||||
GetJoypadDebounced::
|
||||
; Update hJoySum joypad input from either hJoyDown or
|
||||
; hJoyState depending on hJoyDebounceSrc.
|
||||
; hJoyState depending on hInMenu.
|
||||
; hJoyState is only updated every 5 frames and
|
||||
; the update is delayed by 15 frames after any button
|
||||
; press.
|
||||
call GetJoypad
|
||||
ldh a, [hJoyDebounceSrc]
|
||||
ldh a, [hInMenu]
|
||||
and a
|
||||
ldh a, [hJoyDown]
|
||||
jr z, .joyDownSrc
|
||||
|
|
|
|||
|
|
@ -76,12 +76,12 @@ GetBattleAnimByte::
|
|||
ret
|
||||
|
||||
InitSpriteAnimStruct::
|
||||
ld [wSpriteAnimIDBuffer], a
|
||||
ld [wSpriteAnimAddrBackup], a
|
||||
ldh a, [hROMBank]
|
||||
push af
|
||||
ld a, BANK(_InitSpriteAnimStruct)
|
||||
call Bankswitch
|
||||
ld a, [wSpriteAnimIDBuffer]
|
||||
ld a, [wSpriteAnimAddrBackup]
|
||||
call _InitSpriteAnimStruct
|
||||
pop af
|
||||
call Bankswitch
|
||||
|
|
|
|||
26
layout.link
26
layout.link
|
|
@ -174,7 +174,6 @@ ROMX $04
|
|||
"engine/menu/text_entry.asm@mail"
|
||||
"gfx.asm@Mail Icon GFX"
|
||||
"engine/menu/text_entry.asm@mail2"
|
||||
"engine/unknown11d32.asm"
|
||||
"engine/menu/start_menu.asm"
|
||||
"gfx.asm@Trainer Card GFX"
|
||||
|
||||
|
|
@ -257,7 +256,7 @@ ROMX $0d
|
|||
|
||||
ROMX $0e
|
||||
org $4000
|
||||
org $43cd
|
||||
org $4391
|
||||
"engine/dumps/bank0e.asm"
|
||||
org $4494
|
||||
"gfx.asm@PokeBalls GFX"
|
||||
|
|
@ -276,14 +275,7 @@ ROMX $0f
|
|||
|
||||
ROMX $10
|
||||
org $4000
|
||||
org $4943
|
||||
"data/pokemon/dex_order_alpha.asm"
|
||||
org $4b45
|
||||
"engine/dumps/bank10.asm@ConvertMon_2to1"
|
||||
org $4ecc
|
||||
"data/types/search_strings.asm"
|
||||
org $5068
|
||||
"data/types/search_types.asm"
|
||||
"engine/dumps/bank10.asm"
|
||||
org $52a1
|
||||
"data/moves/names.asm"
|
||||
org $58b6
|
||||
|
|
@ -379,16 +371,18 @@ ROMX $21
|
|||
ROMX $23
|
||||
org $4000
|
||||
"engine/dumps/bank23.asm@AnimateTilesetImpl"
|
||||
org $433e
|
||||
"engine/palettes.asm@Overworld fade"
|
||||
org $43d1
|
||||
"engine/palettes.asm@Palette fading, part 2?"
|
||||
org $42dc
|
||||
"engine/palettes.asm"
|
||||
org $446d
|
||||
"engine/dumps/bank23.asm@RestoreOverworldMapTiles"
|
||||
org $44be
|
||||
"engine/battle/battle_transitions.asm"
|
||||
org $4cfd
|
||||
"engine/dumps/bank23.asm@ClearSpriteAnims"
|
||||
org $60cc
|
||||
"gfx.asm@Pokemon Party Sprites"
|
||||
org $722a
|
||||
"data/pokemon/menu_icons.asm"
|
||||
org $70cc
|
||||
"engine/gfx/mon_icons.asm"
|
||||
|
||||
ROMX $24
|
||||
org $4000
|
||||
|
|
|
|||
|
|
@ -15,3 +15,8 @@ DEF color EQUS "+ PAL_COLOR_SIZE *"
|
|||
|
||||
DEF tiles EQUS "* LEN_2BPP_TILE"
|
||||
DEF tile EQUS "+ LEN_2BPP_TILE *"
|
||||
|
||||
MACRO dbsprite
|
||||
; x tile, y tile, x pixel, y pixel, vtile offset, attributes
|
||||
db (\2 * TILE_WIDTH) % $100 + \4, (\1 * TILE_WIDTH) % $100 + \3, \5, \6
|
||||
ENDM
|
||||
38
macros/oam_anims.asm
Normal file
38
macros/oam_anims.asm
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
; Battle and sprite OAM animations
|
||||
|
||||
MACRO oamframe
|
||||
db \1 ; duration
|
||||
DEF x = \2
|
||||
assert !(x & (1 << (OAM_X_FLIP + 1) | 1 << (OAM_Y_FLIP + 1))), \
|
||||
"oamframe duration overflows into X/Y flip bits"
|
||||
if _NARG > 2
|
||||
rept _NARG - 2
|
||||
DEF x |= 1 << (\3 + 1)
|
||||
shift
|
||||
endr
|
||||
endc
|
||||
db x ; flags
|
||||
ENDM
|
||||
|
||||
const_def -1, -1
|
||||
|
||||
const oamend_command ; $ff
|
||||
MACRO oamend
|
||||
db oamend_command
|
||||
ENDM
|
||||
|
||||
const oamrestart_command ; $fe
|
||||
MACRO oamrestart
|
||||
db oamrestart_command
|
||||
ENDM
|
||||
|
||||
const oamwait_command ; $fd
|
||||
MACRO oamwait
|
||||
db oamwait_command
|
||||
db \1 ; frames
|
||||
ENDM
|
||||
|
||||
const oamdelete_command ; $fc
|
||||
MACRO oamdelete
|
||||
db oamdelete_command
|
||||
ENDM
|
||||
|
|
@ -52,7 +52,7 @@ hJoyDown:: db
|
|||
hJoyState:: db
|
||||
hJoySum:: db
|
||||
|
||||
hJoyDebounceSrc:: db
|
||||
hInMenu:: db
|
||||
; hJoySum will be updated from
|
||||
; 00 - hJoyDown
|
||||
; <> - hJoyState
|
||||
|
|
|
|||
|
|
@ -2,9 +2,13 @@ INCLUDE "constants.asm"
|
|||
|
||||
SECTION "Sprite Buffers", SRAM
|
||||
|
||||
UNION
|
||||
sScratch:: ds SCREEN_WIDTH * SCREEN_HEIGHT
|
||||
NEXTU
|
||||
sSpriteBuffer0:: ds SPRITEBUFFERSIZE
|
||||
sSpriteBuffer1:: ds SPRITEBUFFERSIZE
|
||||
sSpriteBuffer2:: ds SPRITEBUFFERSIZE
|
||||
ENDU
|
||||
|
||||
SECTION "Unknown, bank 0", SRAM
|
||||
|
||||
|
|
|
|||
95
ram/wram.asm
95
ram/wram.asm
|
|
@ -109,8 +109,12 @@ wc408:: db
|
|||
wc409:: db
|
||||
|
||||
NEXTU
|
||||
|
||||
wSpriteAnimDict:: ds NUM_SPRITEANIMDICT_ENTRIES * 2
|
||||
wSpriteAnimData::
|
||||
; wSpriteAnimDict pairs keys with values
|
||||
; keys: SPRITE_ANIM_DICT_* indexes (taken from SpriteAnimObjects)
|
||||
; values: vTiles0 offsets
|
||||
wSpriteAnimDict::
|
||||
ds NUM_SPRITEANIMDICT_ENTRIES * 2
|
||||
|
||||
wSpriteAnimationStructs::
|
||||
; field 0: index
|
||||
|
|
@ -157,17 +161,31 @@ wHourBuffer:: db
|
|||
wMinuteBuffer:: db
|
||||
ds 150
|
||||
|
||||
wc4bd:: db
|
||||
ds 2
|
||||
wSpriteAnimIDBuffer:: db
|
||||
UNION
|
||||
wCurSpriteOAMAddr:: dw
|
||||
NEXTU
|
||||
ds 1
|
||||
wCurIcon:: db
|
||||
ENDU
|
||||
wCurIconTile:: db
|
||||
|
||||
ds 6
|
||||
UNION
|
||||
wCurSpriteOAMFlags:: db
|
||||
NEXTU
|
||||
wSpriteAnimAddrBackup:: dw
|
||||
ENDU
|
||||
|
||||
wGlobalAnimYOffset::
|
||||
wc4c7:: db
|
||||
wCurAnimVTile:: db
|
||||
|
||||
wGlobalAnimXOffset::
|
||||
wc4c8:: db
|
||||
wCurAnimXCoord:: db
|
||||
wCurAnimYCoord:: db
|
||||
wCurAnimXOffset:: db
|
||||
wCurAnimYOffset:: db
|
||||
|
||||
wGlobalAnimYOffset:: db
|
||||
wGlobalAnimXOffset:: db
|
||||
|
||||
wSpriteAnimDataEnd::
|
||||
|
||||
ds 7
|
||||
|
||||
|
|
@ -224,8 +242,45 @@ wMemoryGameLastMatches:: ds 5
|
|||
wMemoryGameCounter:: db
|
||||
wMemoryGameNumCardsMatched:: db
|
||||
|
||||
ENDU
|
||||
NEXTU
|
||||
|
||||
ds 200
|
||||
|
||||
wPokedexOrder:: ds $100
|
||||
wPokedexOrderEnd::
|
||||
|
||||
wDexListingScrollOffset:: db
|
||||
wPokedexHandCursorPosIndex:: db
|
||||
wCurDexMode:: db
|
||||
wPokedexInputFlags:: db
|
||||
wPokedexHandCursorStructAddress:: dw
|
||||
|
||||
wPokedexCursorStructAddress:: dw
|
||||
wPokedexSlowpokeAnimStructAddress:: dw
|
||||
|
||||
wDexListingEnd:: db
|
||||
wDexTempCursorY:: db
|
||||
wDexTempListingScrollOffset:: db
|
||||
wDexListingCursor:: db
|
||||
|
||||
wDexUnownCount::
|
||||
wDexSearchMonType1:: db
|
||||
|
||||
wDexUnownModeListLength::
|
||||
wDexSearchMonType2:: db
|
||||
wDexArrowCursorPosIndex:: db
|
||||
|
||||
wDexCurUnownIndex::
|
||||
wDexConvertedMonType:: db
|
||||
|
||||
wDexSearchResultCount:: db
|
||||
wc5e3:: db
|
||||
wc5e4:: db
|
||||
wc5e5:: db
|
||||
wc5e6:: db
|
||||
wDexPlaySlowpokeAnimation:: db
|
||||
|
||||
ENDU
|
||||
|
||||
SECTION "Map Buffer", WRAM0
|
||||
|
||||
|
|
@ -311,8 +366,9 @@ wPicrossCurrentGridNumber:: ds 1
|
|||
wPicrossCurrentCellNumber:: ds 1
|
||||
wPicrossCurrentCellType:: ds 1
|
||||
wPicrossJoypadAction:: ds 1
|
||||
ds 1
|
||||
wc607:: ds 1
|
||||
wPicrossJoyStateBuffer:: ds 1
|
||||
|
||||
wPicrossCursorMovementDelay:: ds 1
|
||||
wPicrossMarkedCells:: ds 4*4*4*4
|
||||
ds 1
|
||||
wPicrossLayoutBuffer:: ds $20
|
||||
|
|
@ -466,7 +522,7 @@ wEnemyDamageTaken:: dw
|
|||
UNION
|
||||
wBattleReward:: ds 3
|
||||
NEXTU
|
||||
wca59:: ds 1
|
||||
wPicrossAnimateDust:: ds 1
|
||||
ENDU
|
||||
|
||||
wBattleAnimParam::
|
||||
|
|
@ -645,6 +701,8 @@ wMemoryGameCardChoice::
|
|||
wFlyDestination::
|
||||
wIntroSceneFrameCounter::
|
||||
wTrainerGearPointerPosition::
|
||||
wPokedexSlowpokeNumSearchEntries::
|
||||
wNestIconBlinkCounter::
|
||||
wBattleTransitionCounter:: db
|
||||
|
||||
wBattleTransitionSineWaveOffset::
|
||||
|
|
@ -856,13 +914,12 @@ SECTION "CCD0", WRAM0[$CCD0]
|
|||
wccd0:: ds 1
|
||||
wPlayerHPPal:: ds 1
|
||||
wEnemyHPPal:: ds 1
|
||||
wccd3:: ds 1
|
||||
|
||||
ds 5
|
||||
wHPPals:: ds PARTY_LENGTH
|
||||
wCurHPPal:: db
|
||||
|
||||
wccd9:: ds 1
|
||||
ds 7
|
||||
|
||||
SECTION "CCE1", WRAM0[$CCE1]
|
||||
; Todo: Replace instances of wcce1-f4 with "wSGBPals + #"
|
||||
wSGBPals:: ; ds PALPACKET_LENGTH * 3
|
||||
wcce1:: ds 1
|
||||
|
|
@ -1189,6 +1246,8 @@ wBattleHasJustStarted:: db
|
|||
wNamedObjectIndexBuffer::
|
||||
wNumSetBits::
|
||||
wTextDecimalByte::
|
||||
wTempIconSpecies::
|
||||
wTempSpecies::
|
||||
wMoveGrammar::
|
||||
wTypeMatchup::
|
||||
wCurType::
|
||||
|
|
|
|||
30
shim.sym
30
shim.sym
|
|
@ -28,6 +28,7 @@
|
|||
0A:4C98 LinkTextboxAtHL
|
||||
0A:4D6E Function28d6e
|
||||
0A:4DA4 Function28da4
|
||||
0A:533B TradeAnim_AnimateTrademonInTube
|
||||
0A:5A1F Function29a1f ; prints text
|
||||
0A:5ABF Function29abf ; prints text
|
||||
|
||||
|
|
@ -42,43 +43,23 @@
|
|||
;0E:43CD DrawPlayerHUDBorder
|
||||
;0E:43FD DrawEnemyHUDBorder
|
||||
;0E:4415 PlaceHUDBorderTiles
|
||||
;0E:4431 Function38431
|
||||
;0E:4431 LinkBattle_TrainerHuds
|
||||
0E:44D4 Function384d4
|
||||
0E:4F45 Function38f45
|
||||
0E:50E9 Battle_GetTrainerName
|
||||
|
||||
10:4000 Function40000
|
||||
10:40A6 ShowPokedexMenu
|
||||
10:4AC7 Function40ac7
|
||||
10:4B07 Function40b07
|
||||
;10:4B45 ConvertMon_2to1
|
||||
;10:4B5C ConvertMon_1to2
|
||||
10:5F93 Function4af93
|
||||
10:5FA1 Function41fa1
|
||||
10:61F8 Function421f8
|
||||
10:6252 FillMoves
|
||||
10:58B8 Data418b8
|
||||
|
||||
11:4000 _DisplayDexEntry
|
||||
|
||||
14:7274 Unknown53274
|
||||
|
||||
23:4325 Function8c325
|
||||
23:42DC UpdateTimeOfDayPal
|
||||
23:42E3 _TimeOfDayPals
|
||||
23:4335 _UpdateTimePals
|
||||
23:4354 ReplaceTimeOfDayPals
|
||||
23:4370 GetTimePalette
|
||||
23:4940 Function8c940
|
||||
23:49C6 Function8c9c6
|
||||
23:4CFD InitEffectObject
|
||||
23:4D0C PlaySpriteAnimationsAndDelayFrame
|
||||
23:4d13 EffectObjectJumpNoDelay
|
||||
23:4D24 DoNextFrameForFirst16Sprites
|
||||
23:4d52 _InitSpriteAnimStruct
|
||||
23:60cc MenuMonIconGfx
|
||||
23:70CC Function8f0cc
|
||||
23:70E3 Function8f0e3
|
||||
23:71CB FreezeMonIcons
|
||||
23:71F2 Function8f1f2
|
||||
|
||||
32:76FF Functioncb6ff
|
||||
32:7710 Functioncb710
|
||||
|
|
@ -100,6 +81,9 @@
|
|||
38:4E5F Cursor_AnimateCursor
|
||||
38:4EA8 Cursor_InterpretJoypad
|
||||
|
||||
; Poker Cursor AnimSeq Function
|
||||
38:5054 Functione1054
|
||||
|
||||
|
||||
; Cry header shims
|
||||
3C:57C5 CryHeader_f17c5
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user