diff options
author | dannye <33dannye@gmail.com> | 2021-06-12 17:55:56 -0500 |
---|---|---|
committer | dannye <33dannye@gmail.com> | 2021-06-12 17:55:56 -0500 |
commit | c533527ff02ac86a33d6e98399e571db1112bc41 (patch) | |
tree | 29d3888dc54df1f6dea213ad8d249e625d010d99 | |
parent | 55f51e98b419a926861a326cfee77eaabca77695 (diff) |
Add sprite animation constants
and rename more misc wram labels
-rw-r--r-- | src/constants/animation_constants.asm | 220 | ||||
-rw-r--r-- | src/constants/misc_constants.asm | 5 | ||||
-rw-r--r-- | src/data/duel_animations.asm | 190 | ||||
-rw-r--r-- | src/data/map_headers.asm | 71 | ||||
-rw-r--r-- | src/data/npcs.asm | 460 | ||||
-rw-r--r-- | src/engine/ai/attacks.asm | 4 | ||||
-rw-r--r-- | src/engine/ai/init.asm | 2 | ||||
-rw-r--r-- | src/engine/ai/retreat.asm | 4 | ||||
-rw-r--r-- | src/engine/ai/trainer_cards.asm | 4 | ||||
-rw-r--r-- | src/engine/bank02.asm | 14 | ||||
-rw-r--r-- | src/engine/bank03.asm | 183 | ||||
-rw-r--r-- | src/engine/bank04.asm | 80 | ||||
-rw-r--r-- | src/engine/bank06.asm | 14 | ||||
-rw-r--r-- | src/engine/bank07.asm | 31 | ||||
-rw-r--r-- | src/engine/bank1c.asm | 6 | ||||
-rw-r--r-- | src/engine/bank20.asm | 558 | ||||
-rw-r--r-- | src/engine/home.asm | 30 | ||||
-rw-r--r-- | src/engine/sequences/opening_sequence_commands.asm | 70 | ||||
-rw-r--r-- | src/macros/scripts.asm | 2 | ||||
-rw-r--r-- | src/sram.asm | 2 | ||||
-rw-r--r-- | src/wram.asm | 56 |
21 files changed, 1116 insertions, 890 deletions
diff --git a/src/constants/animation_constants.asm b/src/constants/animation_constants.asm index 16f534f..a5499e1 100644 --- a/src/constants/animation_constants.asm +++ b/src/constants/animation_constants.asm @@ -7,6 +7,226 @@ const ANIM_SOUND_FX_ID const ANIM_HANDLER_FUNCTION +; Sprite animation IDs + const_def + const SPRITE_ANIM_LIGHT_NPC_UP ; $00 + const SPRITE_ANIM_LIGHT_NPC_RIGHT ; $01 + const SPRITE_ANIM_LIGHT_NPC_DOWN ; $02 + const SPRITE_ANIM_LIGHT_NPC_LEFT ; $03 + const SPRITE_ANIM_DARK_NPC_UP ; $04 + const SPRITE_ANIM_DARK_NPC_RIGHT ; $05 + const SPRITE_ANIM_DARK_NPC_DOWN ; $06 + const SPRITE_ANIM_DARK_NPC_LEFT ; $07 + const SPRITE_ANIM_SGB_AMY_LAYING ; $08 + const SPRITE_ANIM_SGB_AMY_STAND ; $09 + const SPRITE_ANIM_SGB_CLERK_NPC_UP ; $0a + const SPRITE_ANIM_SGB_CLERK_NPC_RIGHT ; $0b + const SPRITE_ANIM_SGB_CLERK_NPC_DOWN ; $0c + const SPRITE_ANIM_SGB_CLERK_NPC_LEFT ; $0d + const SPRITE_ANIM_BLUE_NPC_UP ; $0e + const SPRITE_ANIM_BLUE_NPC_RIGHT ; $0f + const SPRITE_ANIM_BLUE_NPC_DOWN ; $10 + const SPRITE_ANIM_BLUE_NPC_LEFT ; $11 + const SPRITE_ANIM_PINK_NPC_UP ; $12 + const SPRITE_ANIM_PINK_NPC_RIGHT ; $13 + const SPRITE_ANIM_PINK_NPC_DOWN ; $14 + const SPRITE_ANIM_PINK_NPC_LEFT ; $15 + const SPRITE_ANIM_YELLOW_NPC_UP ; $16 + const SPRITE_ANIM_YELLOW_NPC_RIGHT ; $17 + const SPRITE_ANIM_YELLOW_NPC_DOWN ; $18 + const SPRITE_ANIM_YELLOW_NPC_LEFT ; $19 + const SPRITE_ANIM_GREEN_NPC_UP ; $1a + const SPRITE_ANIM_GREEN_NPC_RIGHT ; $1b + const SPRITE_ANIM_GREEN_NPC_DOWN ; $1c + const SPRITE_ANIM_GREEN_NPC_LEFT ; $1d + const SPRITE_ANIM_RED_NPC_UP ; $1e + const SPRITE_ANIM_RED_NPC_RIGHT ; $1f + const SPRITE_ANIM_RED_NPC_DOWN ; $20 + const SPRITE_ANIM_RED_NPC_LEFT ; $21 + const SPRITE_ANIM_PURPLE_NPC_UP ; $22 + const SPRITE_ANIM_PURPLE_NPC_RIGHT ; $23 + const SPRITE_ANIM_PURPLE_NPC_DOWN ; $24 + const SPRITE_ANIM_PURPLE_NPC_LEFT ; $25 + const SPRITE_ANIM_WHITE_NPC_UP ; $26 + const SPRITE_ANIM_WHITE_NPC_RIGHT ; $27 + const SPRITE_ANIM_WHITE_NPC_DOWN ; $28 + const SPRITE_ANIM_WHITE_NPC_LEFT ; $29 + const SPRITE_ANIM_INDIGO_NPC_UP ; $2a + const SPRITE_ANIM_INDIGO_NPC_RIGHT ; $2b + const SPRITE_ANIM_INDIGO_NPC_DOWN ; $2c + const SPRITE_ANIM_INDIGO_NPC_LEFT ; $2d + const SPRITE_ANIM_CGB_AMY_LAYING ; $2e + const SPRITE_ANIM_CGB_AMY_STAND ; $2f + const SPRITE_ANIM_CGB_CLERK_NPC_UP ; $30 + const SPRITE_ANIM_CGB_CLERK_NPC_RIGHT ; $31 + const SPRITE_ANIM_CGB_CLERK_NPC_DOWN ; $32 + const SPRITE_ANIM_CGB_CLERK_NPC_LEFT ; $33 + const SPRITE_ANIM_SGB_VOLCANO_SMOKE ; $34 + const SPRITE_ANIM_SGB_OWMAP_CURSOR ; $35 + const SPRITE_ANIM_SGB_OWMAP_CURSOR_FAST ; $36 + const SPRITE_ANIM_CGB_VOLCANO_SMOKE ; $37 + const SPRITE_ANIM_CGB_OWMAP_CURSOR ; $38 + const SPRITE_ANIM_CGB_OWMAP_CURSOR_FAST ; $39 + const SPRITE_ANIM_TORCH ; $3a + const SPRITE_ANIM_SGB_CARD_TOP_LEFT ; $3b + const SPRITE_ANIM_SGB_CARD_TOP_RIGHT ; $3c + const SPRITE_ANIM_SGB_CARD_LEFT_SPARK ; $3d + const SPRITE_ANIM_SGB_CARD_BOTTOM_LEFT ; $3e + const SPRITE_ANIM_SGB_CARD_BOTTOM_RIGHT ; $3f + const SPRITE_ANIM_SGB_CARD_RIGHT_SPARK ; $40 + const SPRITE_ANIM_CGB_CARD_TOP_LEFT ; $41 + const SPRITE_ANIM_CGB_CARD_TOP_RIGHT ; $42 + const SPRITE_ANIM_CGB_CARD_LEFT_SPARK ; $43 + const SPRITE_ANIM_CGB_CARD_BOTTOM_LEFT ; $44 + const SPRITE_ANIM_CGB_CARD_BOTTOM_RIGHT ; $45 + const SPRITE_ANIM_CGB_CARD_RIGHT_SPARK ; $46 + const SPRITE_ANIM_71 ; $47 + const SPRITE_ANIM_72 ; $48 + const SPRITE_ANIM_73 ; $49 + const SPRITE_ANIM_74 ; $4a + const SPRITE_ANIM_75 ; $4b + const SPRITE_ANIM_76 ; $4c + const SPRITE_ANIM_77 ; $4d + const SPRITE_ANIM_78 ; $4e + const SPRITE_ANIM_79 ; $4f + const SPRITE_ANIM_80 ; $50 + const SPRITE_ANIM_81 ; $51 + const SPRITE_ANIM_82 ; $52 + const SPRITE_ANIM_83 ; $53 + const SPRITE_ANIM_84 ; $54 + const SPRITE_ANIM_85 ; $55 + const SPRITE_ANIM_86 ; $56 + const SPRITE_ANIM_87 ; $57 + const SPRITE_ANIM_88 ; $58 + const SPRITE_ANIM_89 ; $59 + const SPRITE_ANIM_90 ; $5a + const SPRITE_ANIM_91 ; $5b + const SPRITE_ANIM_92 ; $5c + const SPRITE_ANIM_93 ; $5d + const SPRITE_ANIM_94 ; $5e + const SPRITE_ANIM_95 ; $5f + const SPRITE_ANIM_96 ; $60 + const SPRITE_ANIM_97 ; $61 + const SPRITE_ANIM_98 ; $62 + const SPRITE_ANIM_99 ; $63 + const SPRITE_ANIM_100 ; $64 + const SPRITE_ANIM_101 ; $65 + const SPRITE_ANIM_102 ; $66 + const SPRITE_ANIM_103 ; $67 + const SPRITE_ANIM_104 ; $68 + const SPRITE_ANIM_105 ; $69 + const SPRITE_ANIM_106 ; $6a + const SPRITE_ANIM_107 ; $6b + const SPRITE_ANIM_108 ; $6c + const SPRITE_ANIM_109 ; $6d + const SPRITE_ANIM_110 ; $6e + const SPRITE_ANIM_111 ; $6f + const SPRITE_ANIM_112 ; $70 + const SPRITE_ANIM_113 ; $71 + const SPRITE_ANIM_114 ; $72 + const SPRITE_ANIM_115 ; $73 + const SPRITE_ANIM_116 ; $74 + const SPRITE_ANIM_117 ; $75 + const SPRITE_ANIM_118 ; $76 + const SPRITE_ANIM_119 ; $77 + const SPRITE_ANIM_120 ; $78 + const SPRITE_ANIM_121 ; $79 + const SPRITE_ANIM_122 ; $7a + const SPRITE_ANIM_123 ; $7b + const SPRITE_ANIM_124 ; $7c + const SPRITE_ANIM_125 ; $7d + const SPRITE_ANIM_126 ; $7e + const SPRITE_ANIM_127 ; $7f + const SPRITE_ANIM_128 ; $80 + const SPRITE_ANIM_129 ; $81 + const SPRITE_ANIM_130 ; $82 + const SPRITE_ANIM_131 ; $83 + const SPRITE_ANIM_132 ; $84 + const SPRITE_ANIM_133 ; $85 + const SPRITE_ANIM_134 ; $86 + const SPRITE_ANIM_135 ; $87 + const SPRITE_ANIM_136 ; $88 + const SPRITE_ANIM_137 ; $89 + const SPRITE_ANIM_138 ; $8a + const SPRITE_ANIM_139 ; $8b + const SPRITE_ANIM_140 ; $8c + const SPRITE_ANIM_141 ; $8d + const SPRITE_ANIM_142 ; $8e + const SPRITE_ANIM_143 ; $8f + const SPRITE_ANIM_144 ; $90 + const SPRITE_ANIM_145 ; $91 + const SPRITE_ANIM_146 ; $92 + const SPRITE_ANIM_147 ; $93 + const SPRITE_ANIM_148 ; $94 + const SPRITE_ANIM_149 ; $95 + const SPRITE_ANIM_150 ; $96 + const SPRITE_ANIM_151 ; $97 + const SPRITE_ANIM_152 ; $98 + const SPRITE_ANIM_153 ; $99 + const SPRITE_ANIM_154 ; $9a + const SPRITE_ANIM_155 ; $9b + const SPRITE_ANIM_156 ; $9c + const SPRITE_ANIM_157 ; $9d + const SPRITE_ANIM_158 ; $9e + const SPRITE_ANIM_159 ; $9f + const SPRITE_ANIM_160 ; $a0 + const SPRITE_ANIM_161 ; $a1 + const SPRITE_ANIM_162 ; $a2 + const SPRITE_ANIM_163 ; $a3 + const SPRITE_ANIM_164 ; $a4 + const SPRITE_ANIM_165 ; $a5 + const SPRITE_ANIM_166 ; $a6 + const SPRITE_ANIM_167 ; $a7 + const SPRITE_ANIM_168 ; $a8 + const SPRITE_ANIM_169 ; $a9 + const SPRITE_ANIM_170 ; $aa + const SPRITE_ANIM_171 ; $ab + const SPRITE_ANIM_172 ; $ac + const SPRITE_ANIM_173 ; $ad + const SPRITE_ANIM_174 ; $ae + const SPRITE_ANIM_175 ; $af + const SPRITE_ANIM_176 ; $b0 + const SPRITE_ANIM_177 ; $b1 + const SPRITE_ANIM_178 ; $b2 + const SPRITE_ANIM_179 ; $b3 + const SPRITE_ANIM_180 ; $b4 + const SPRITE_ANIM_181 ; $b5 + const SPRITE_ANIM_182 ; $b6 + const SPRITE_ANIM_183 ; $b7 + const SPRITE_ANIM_184 ; $b8 + const SPRITE_ANIM_185 ; $b9 + const SPRITE_ANIM_186 ; $ba + const SPRITE_ANIM_187 ; $bb + const SPRITE_ANIM_188 ; $bc + const SPRITE_ANIM_189 ; $bd + const SPRITE_ANIM_190 ; $be + const SPRITE_ANIM_191 ; $bf + const SPRITE_ANIM_192 ; $c0 + const SPRITE_ANIM_193 ; $c1 + const SPRITE_ANIM_194 ; $c2 + const SPRITE_ANIM_195 ; $c3 + const SPRITE_ANIM_196 ; $c4 + const SPRITE_ANIM_197 ; $c5 + const SPRITE_ANIM_198 ; $c6 + const SPRITE_ANIM_199 ; $c7 + const SPRITE_ANIM_200 ; $c8 + const SPRITE_ANIM_201 ; $c9 + const SPRITE_ANIM_202 ; $ca + const SPRITE_ANIM_203 ; $cb + const SPRITE_ANIM_204 ; $cc + const SPRITE_ANIM_205 ; $cd + const SPRITE_ANIM_206 ; $ce + const SPRITE_ANIM_207 ; $cf + const SPRITE_ANIM_208 ; $d0 + const SPRITE_ANIM_209 ; $d1 + const SPRITE_ANIM_210 ; $d2 + const SPRITE_ANIM_211 ; $d3 + const SPRITE_ANIM_212 ; $d4 + const SPRITE_ANIM_213 ; $d5 + const SPRITE_ANIM_214 ; $d6 + const SPRITE_ANIM_215 ; $d7 + const SPRITE_ANIM_216 ; $d8 + ; Animation duel screen constants (see wDuelAnimationScreen) const_def const DUEL_ANIM_SCREEN_MAIN_SCENE diff --git a/src/constants/misc_constants.asm b/src/constants/misc_constants.asm index 4147b1d..7660dde 100644 --- a/src/constants/misc_constants.asm +++ b/src/constants/misc_constants.asm @@ -50,6 +50,11 @@ OWMODE_MOVE EQU 1 OWMODE_START_SCRIPT EQU 2 OWMODE_SCRIPT EQU 3 +; overworld NPC flag constants (see wOverworldNPCFlags) +AUTO_CLOSE_TEXTBOX EQU 0 +RESTORE_FACING_DIRECTION EQU 1 +HIDE_ALL_NPC_SPRITES EQU 7 + ; max number of player names that ; can be written to sCardPopNameList CARDPOP_NAME_LIST_MAX_ELEMS EQU 16 diff --git a/src/data/duel_animations.asm b/src/data/duel_animations.asm index 5447b98..ba1e0f9 100644 --- a/src/data/duel_animations.asm +++ b/src/data/duel_animations.asm @@ -11,7 +11,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_GLOW db SPRITE_DUEL_GLOW ; sprite ID db PALETTE_31 ; palette ID - db $47 ; anim ID + db SPRITE_ANIM_71 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags db SFX_11 ; sound FX ID db $00 ; handler function @@ -19,7 +19,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_PARALYSIS db SPRITE_DUEL_1 ; sprite ID db PALETTE_32 ; palette ID - db $48 ; anim ID + db SPRITE_ANIM_72 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags db SFX_12 ; sound FX ID db $00 ; handler function @@ -27,7 +27,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_SLEEP db SPRITE_DUEL_2 ; sprite ID db PALETTE_33 ; palette ID - db $49 ; anim ID + db SPRITE_ANIM_73 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags db SFX_13 ; sound FX ID db $00 ; handler function @@ -35,7 +35,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_CONFUSION db SPRITE_DUEL_55 ; sprite ID db PALETTE_34 ; palette ID - db $4a ; anim ID + db SPRITE_ANIM_74 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags db SFX_14 ; sound FX ID db $00 ; handler function @@ -43,7 +43,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_POISON db SPRITE_DUEL_58 ; sprite ID db PALETTE_35 ; palette ID - db $4b ; anim ID + db SPRITE_ANIM_75 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags db SFX_15 ; sound FX ID db $00 ; handler function @@ -51,7 +51,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_6 db SPRITE_DUEL_3 ; sprite ID db PALETTE_36 ; palette ID - db $4c ; anim ID + db SPRITE_ANIM_76 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags db SFX_16 ; sound FX ID db $00 ; handler function @@ -59,7 +59,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_HIT db SPRITE_DUEL_3 ; sprite ID db PALETTE_36 ; palette ID - db $4d ; anim ID + db SPRITE_ANIM_77 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags db SFX_16 ; sound FX ID db $00 ; handler function @@ -67,7 +67,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_BIG_HIT db SPRITE_DUEL_3 ; sprite ID db PALETTE_36 ; palette ID - db $4e ; anim ID + db SPRITE_ANIM_78 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags db SFX_17 ; sound FX ID db $00 ; handler function @@ -83,7 +83,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_THUNDER_SHOCK db SPRITE_DUEL_5 ; sprite ID db PALETTE_38 ; palette ID - db $5c ; anim ID + db SPRITE_ANIM_92 ; anim ID db $00 ; anim flags db SFX_18 ; sound FX ID db $00 ; handler function @@ -91,7 +91,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_LIGHTNING db SPRITE_DUEL_6 ; sprite ID db PALETTE_39 ; palette ID - db $5e ; anim ID + db SPRITE_ANIM_94 ; anim ID db $00 ; anim flags db SFX_19 ; sound FX ID db $00 ; handler function @@ -99,7 +99,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_BORDER_SPARK db SPRITE_DUEL_59 ; sprite ID db PALETTE_40 ; palette ID - db $5f ; anim ID + db SPRITE_ANIM_95 ; anim ID db $00 ; anim flags db SFX_1A ; sound FX ID db $00 ; handler function @@ -107,7 +107,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_BIG_LIGHTNING db SPRITE_DUEL_7 ; sprite ID db PALETTE_41 ; palette ID - db $60 ; anim ID + db SPRITE_ANIM_96 ; anim ID db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_1B ; sound FX ID db $00 ; handler function @@ -115,7 +115,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_SMALL_FLAME db SPRITE_DUEL_8 ; sprite ID db PALETTE_42 ; palette ID - db $61 ; anim ID + db SPRITE_ANIM_97 ; anim ID db $00 ; anim flags db SFX_1C ; sound FX ID db $00 ; handler function @@ -123,7 +123,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_BIG_FLAME db SPRITE_DUEL_8 ; sprite ID db PALETTE_42 ; palette ID - db $62 ; anim ID + db SPRITE_ANIM_98 ; anim ID db $00 ; anim flags db SFX_1D ; sound FX ID db $00 ; handler function @@ -131,7 +131,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_FIRE_SPIN db SPRITE_DUEL_9 ; sprite ID db PALETTE_43 ; palette ID - db $63 ; anim ID + db SPRITE_ANIM_99 ; anim ID db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_1E ; sound FX ID db $00 ; handler function @@ -139,7 +139,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_DIVE_BOMB db SPRITE_DUEL_10 ; sprite ID db PALETTE_44 ; palette ID - db $64 ; anim ID + db SPRITE_ANIM_100 ; anim ID db $00 ; anim flags db SFX_1F ; sound FX ID db $00 ; handler function @@ -147,7 +147,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_WATER_JETS db SPRITE_DUEL_61 ; sprite ID db PALETTE_45 ; palette ID - db $69 ; anim ID + db SPRITE_ANIM_105 ; anim ID db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_20 ; sound FX ID db $00 ; handler function @@ -155,7 +155,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_WATER_GUN db SPRITE_DUEL_11 ; sprite ID db PALETTE_46 ; palette ID - db $6a ; anim ID + db SPRITE_ANIM_106 ; anim ID db $00 ; anim flags db SFX_21 ; sound FX ID db $00 ; handler function @@ -163,7 +163,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_WHIRLPOOL db SPRITE_DUEL_12 ; sprite ID db PALETTE_47 ; palette ID - db $6b ; anim ID + db SPRITE_ANIM_107 ; anim ID db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_22 ; sound FX ID db $00 ; handler function @@ -171,7 +171,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_HYDRO_PUMP db SPRITE_DUEL_13 ; sprite ID db PALETTE_48 ; palette ID - db $6c ; anim ID + db SPRITE_ANIM_108 ; anim ID db $00 ; anim flags db SFX_23 ; sound FX ID db $00 ; handler function @@ -179,7 +179,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_BLIZZARD db SPRITE_DUEL_62 ; sprite ID db PALETTE_49 ; palette ID - db $6d ; anim ID + db SPRITE_ANIM_109 ; anim ID db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_24 ; sound FX ID db $00 ; handler function @@ -187,7 +187,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_PSYCHIC db SPRITE_DUEL_14 ; sprite ID db PALETTE_50 ; palette ID - db $6e ; anim ID + db SPRITE_ANIM_110 ; anim ID db $00 ; anim flags db SFX_25 ; sound FX ID db $00 ; handler function @@ -195,7 +195,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_GLARE db SPRITE_DUEL_15 ; sprite ID db PALETTE_51 ; palette ID - db $6f ; anim ID + db SPRITE_ANIM_111 ; anim ID db $00 ; anim flags db SFX_26 ; sound FX ID db $00 ; handler function @@ -203,7 +203,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_BEAM db SPRITE_DUEL_16 ; sprite ID db PALETTE_52 ; palette ID - db $70 ; anim ID + db SPRITE_ANIM_112 ; anim ID db (1 << SPRITE_ANIM_FLAG_6) | (1 << SPRITE_ANIM_FLAG_Y_SUBTRACT) ; anim flags db SFX_27 ; sound FX ID db $00 ; handler function @@ -211,7 +211,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_HYPER_BEAM db SPRITE_DUEL_17 ; sprite ID db PALETTE_53 ; palette ID - db $71 ; anim ID + db SPRITE_ANIM_113 ; anim ID db (1 << SPRITE_ANIM_FLAG_6) | (1 << SPRITE_ANIM_FLAG_Y_SUBTRACT) ; anim flags db SFX_28 ; sound FX ID db $00 ; handler function @@ -219,7 +219,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_ROCK_THROW db SPRITE_DUEL_18 ; sprite ID db PALETTE_54 ; palette ID - db $72 ; anim ID + db SPRITE_ANIM_114 ; anim ID db $00 ; anim flags db SFX_29 ; sound FX ID db $00 ; handler function @@ -227,7 +227,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_STONE_BARRAGE db SPRITE_DUEL_18 ; sprite ID db PALETTE_54 ; palette ID - db $73 ; anim ID + db SPRITE_ANIM_115 ; anim ID db $00 ; anim flags db SFX_2A ; sound FX ID db $00 ; handler function @@ -235,7 +235,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_PUNCH db SPRITE_DUEL_19 ; sprite ID db PALETTE_55 ; palette ID - db $74 ; anim ID + db SPRITE_ANIM_116 ; anim ID db $00 ; anim flags db SFX_2B ; sound FX ID db $00 ; handler function @@ -243,7 +243,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_THUNDERPUNCH db SPRITE_DUEL_19 ; sprite ID db PALETTE_55 ; palette ID - db $75 ; anim ID + db SPRITE_ANIM_117 ; anim ID db $00 ; anim flags db SFX_52 ; sound FX ID db $00 ; handler function @@ -251,7 +251,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_FIRE_PUNCH db SPRITE_DUEL_19 ; sprite ID db PALETTE_55 ; palette ID - db $76 ; anim ID + db SPRITE_ANIM_118 ; anim ID db $00 ; anim flags db SFX_53 ; sound FX ID db $00 ; handler function @@ -259,7 +259,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_STRETCH_KICK db SPRITE_DUEL_20 ; sprite ID db PALETTE_56 ; palette ID - db $77 ; anim ID + db SPRITE_ANIM_119 ; anim ID db (1 << SPRITE_ANIM_FLAG_5) | (1 << SPRITE_ANIM_FLAG_X_SUBTRACT) ; anim flags db SFX_2C ; sound FX ID db $00 ; handler function @@ -267,7 +267,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_SLASH db SPRITE_DUEL_21 ; sprite ID db PALETTE_57 ; palette ID - db $78 ; anim ID + db SPRITE_ANIM_120 ; anim ID db $00 ; anim flags db SFX_2D ; sound FX ID db $00 ; handler function @@ -275,7 +275,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_WHIP db SPRITE_DUEL_22 ; sprite ID db PALETTE_58 ; palette ID - db $7a ; anim ID + db SPRITE_ANIM_122 ; anim ID db $00 ; anim flags db SFX_2D ; sound FX ID db $00 ; handler function @@ -283,7 +283,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_TEAR db SPRITE_DUEL_23 ; sprite ID db PALETTE_59 ; palette ID - db $7b ; anim ID + db SPRITE_ANIM_123 ; anim ID db $00 ; anim flags db SFX_2E ; sound FX ID db $00 ; handler function @@ -291,7 +291,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_FURY_SWIPES db SPRITE_DUEL_21 ; sprite ID db PALETTE_57 ; palette ID - db $79 ; anim ID + db SPRITE_ANIM_121 ; anim ID db $00 ; anim flags db SFX_2F ; sound FX ID db $00 ; handler function @@ -299,7 +299,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_DRILL db SPRITE_DUEL_24 ; sprite ID db PALETTE_60 ; palette ID - db $7c ; anim ID + db SPRITE_ANIM_124 ; anim ID db (1 << SPRITE_ANIM_FLAG_5) | (1 << SPRITE_ANIM_FLAG_X_SUBTRACT) ; anim flags db SFX_30 ; sound FX ID db $00 ; handler function @@ -307,7 +307,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_POT_SMASH db SPRITE_DUEL_25 ; sprite ID db PALETTE_61 ; palette ID - db $7d ; anim ID + db SPRITE_ANIM_125 ; anim ID db $00 ; anim flags db SFX_31 ; sound FX ID db $00 ; handler function @@ -315,7 +315,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_BONEMERANG db SPRITE_DUEL_26 ; sprite ID db PALETTE_62 ; palette ID - db $7e ; anim ID + db SPRITE_ANIM_126 ; anim ID db $00 ; anim flags db SFX_32 ; sound FX ID db $00 ; handler function @@ -323,7 +323,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_SEISMIC_TOSS db SPRITE_DUEL_27 ; sprite ID db PALETTE_63 ; palette ID - db $7f ; anim ID + db SPRITE_ANIM_127 ; anim ID db $00 ; anim flags db SFX_33 ; sound FX ID db $00 ; handler function @@ -331,7 +331,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_NEEDLES db SPRITE_DUEL_28 ; sprite ID db PALETTE_64 ; palette ID - db $80 ; anim ID + db SPRITE_ANIM_128 ; anim ID db $00 ; anim flags db SFX_34 ; sound FX ID db $00 ; handler function @@ -339,7 +339,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_WHITE_GAS db SPRITE_DUEL_29 ; sprite ID db PALETTE_65 ; palette ID - db $81 ; anim ID + db SPRITE_ANIM_129 ; anim ID db $00 ; anim flags db SFX_35 ; sound FX ID db $00 ; handler function @@ -347,7 +347,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_POWDER db SPRITE_DUEL_56 ; sprite ID db PALETTE_66 ; palette ID - db $82 ; anim ID + db SPRITE_ANIM_130 ; anim ID db $00 ; anim flags db SFX_36 ; sound FX ID db $00 ; handler function @@ -355,7 +355,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_GOO db SPRITE_DUEL_30 ; sprite ID db PALETTE_67 ; palette ID - db $83 ; anim ID + db SPRITE_ANIM_131 ; anim ID db $00 ; anim flags db SFX_37 ; sound FX ID db $00 ; handler function @@ -363,7 +363,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_BUBBLES db SPRITE_DUEL_31 ; sprite ID db PALETTE_68 ; palette ID - db $84 ; anim ID + db SPRITE_ANIM_132 ; anim ID db $00 ; anim flags db SFX_38 ; sound FX ID db $00 ; handler function @@ -371,7 +371,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_STRING_SHOT db SPRITE_DUEL_32 ; sprite ID db PALETTE_69 ; palette ID - db $85 ; anim ID + db SPRITE_ANIM_133 ; anim ID db $00 ; anim flags db SFX_39 ; sound FX ID db $00 ; handler function @@ -379,7 +379,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_BOYFRIENDS db SPRITE_DUEL_33 ; sprite ID db PALETTE_70 ; palette ID - db $86 ; anim ID + db SPRITE_ANIM_134 ; anim ID db $00 ; anim flags db SFX_3A ; sound FX ID db $00 ; handler function @@ -387,7 +387,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_LURE db SPRITE_DUEL_34 ; sprite ID db PALETTE_71 ; palette ID - db $87 ; anim ID + db SPRITE_ANIM_135 ; anim ID db (1 << SPRITE_ANIM_FLAG_5) | (1 << SPRITE_ANIM_FLAG_X_SUBTRACT) ; anim flags db SFX_3B ; sound FX ID db $00 ; handler function @@ -395,7 +395,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_TOXIC db SPRITE_DUEL_35 ; sprite ID db PALETTE_72 ; palette ID - db $88 ; anim ID + db SPRITE_ANIM_136 ; anim ID db $00 ; anim flags db SFX_3C ; sound FX ID db $00 ; handler function @@ -403,7 +403,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_CONFUSE_RAY db SPRITE_DUEL_66 ; sprite ID db PALETTE_73 ; palette ID - db $89 ; anim ID + db SPRITE_ANIM_137 ; anim ID db $00 ; anim flags db SFX_3D ; sound FX ID db $00 ; handler function @@ -411,7 +411,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_SING db SPRITE_DUEL_36 ; sprite ID db PALETTE_74 ; palette ID - db $8a ; anim ID + db SPRITE_ANIM_138 ; anim ID db $00 ; anim flags db SFX_3E ; sound FX ID db $00 ; handler function @@ -419,7 +419,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_SUPERSONIC db SPRITE_DUEL_37 ; sprite ID db PALETTE_75 ; palette ID - db $8b ; anim ID + db SPRITE_ANIM_139 ; anim ID db $00 ; anim flags db SFX_3F ; sound FX ID db $00 ; handler function @@ -427,7 +427,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_PETAL_DANCE db SPRITE_DUEL_57 ; sprite ID db PALETTE_76 ; palette ID - db $8c ; anim ID + db SPRITE_ANIM_140 ; anim ID db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_40 ; sound FX ID db $00 ; handler function @@ -435,7 +435,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_PROTECT db SPRITE_DUEL_38 ; sprite ID db PALETTE_77 ; palette ID - db $8d ; anim ID + db SPRITE_ANIM_141 ; anim ID db $00 ; anim flags db SFX_41 ; sound FX ID db $00 ; handler function @@ -443,7 +443,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_BARRIER db SPRITE_DUEL_39 ; sprite ID db PALETTE_78 ; palette ID - db $8e ; anim ID + db SPRITE_ANIM_142 ; anim ID db $00 ; anim flags db SFX_42 ; sound FX ID db $00 ; handler function @@ -451,7 +451,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_QUICK_ATTACK db SPRITE_DUEL_40 ; sprite ID db PALETTE_79 ; palette ID - db $8f ; anim ID + db SPRITE_ANIM_143 ; anim ID db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_43 ; sound FX ID db $00 ; handler function @@ -459,7 +459,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_WHIRLWIND db SPRITE_DUEL_41 ; sprite ID db PALETTE_80 ; palette ID - db $90 ; anim ID + db SPRITE_ANIM_144 ; anim ID db $00 ; anim flags db SFX_44 ; sound FX ID db $00 ; handler function @@ -467,7 +467,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_CRY db SPRITE_DUEL_42 ; sprite ID db PALETTE_81 ; palette ID - db $92 ; anim ID + db SPRITE_ANIM_146 ; anim ID db $00 ; anim flags db SFX_45 ; sound FX ID db $00 ; handler function @@ -475,7 +475,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_QUESTION_MARK db SPRITE_DUEL_43 ; sprite ID db PALETTE_82 ; palette ID - db $93 ; anim ID + db SPRITE_ANIM_147 ; anim ID db $00 ; anim flags db SFX_46 ; sound FX ID db $00 ; handler function @@ -483,7 +483,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_SELFDESTRUCT db SPRITE_DUEL_44 ; sprite ID db PALETTE_83 ; palette ID - db $94 ; anim ID + db SPRITE_ANIM_148 ; anim ID db $00 ; anim flags db SFX_47 ; sound FX ID db $00 ; handler function @@ -491,7 +491,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_BIG_SELFDESTRUCT_1 db SPRITE_DUEL_44 ; sprite ID db PALETTE_83 ; palette ID - db $95 ; anim ID + db SPRITE_ANIM_149 ; anim ID db $00 ; anim flags db SFX_48 ; sound FX ID db $00 ; handler function @@ -499,7 +499,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_HEAL db SPRITE_DUEL_60 ; sprite ID db PALETTE_84 ; palette ID - db $97 ; anim ID + db SPRITE_ANIM_151 ; anim ID db $00 ; anim flags db SFX_49 ; sound FX ID db $00 ; handler function @@ -507,7 +507,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_DRAIN db SPRITE_DUEL_64 ; sprite ID db PALETTE_85 ; palette ID - db $99 ; anim ID + db SPRITE_ANIM_153 ; anim ID db $00 ; anim flags db SFX_4A ; sound FX ID db $00 ; handler function @@ -515,7 +515,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_DARK_GAS db SPRITE_DUEL_29 ; sprite ID db PALETTE_86 ; palette ID - db $81 ; anim ID + db SPRITE_ANIM_129 ; anim ID db $00 ; anim flags db SFX_4B ; sound FX ID db $00 ; handler function @@ -523,7 +523,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_BIG_SELFDESTRUCT_2 db SPRITE_DUEL_44 ; sprite ID db PALETTE_83 ; palette ID - db $96 ; anim ID + db SPRITE_ANIM_150 ; anim ID db $00 ; anim flags db SFX_47 ; sound FX ID db $00 ; handler function @@ -531,7 +531,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_66 db SPRITE_DUEL_3 ; sprite ID db PALETTE_36 ; palette ID - db $4d ; anim ID + db SPRITE_ANIM_77 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags db SFX_16 ; sound FX ID db $00 ; handler function @@ -539,7 +539,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_67 db SPRITE_DUEL_3 ; sprite ID db PALETTE_36 ; palette ID - db $4e ; anim ID + db SPRITE_ANIM_78 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags db SFX_17 ; sound FX ID db $00 ; handler function @@ -547,7 +547,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_68 db SPRITE_DUEL_5 ; sprite ID db PALETTE_38 ; palette ID - db $5c ; anim ID + db SPRITE_ANIM_92 ; anim ID db $00 ; anim flags db SFX_18 ; sound FX ID db $00 ; handler function @@ -555,7 +555,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_69 db SPRITE_DUEL_62 ; sprite ID db PALETTE_49 ; palette ID - db $6d ; anim ID + db SPRITE_ANIM_109 ; anim ID db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_24 ; sound FX ID db $00 ; handler function @@ -563,7 +563,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_70 db SPRITE_DUEL_45 ; sprite ID db PALETTE_87 ; palette ID - db $9a ; anim ID + db SPRITE_ANIM_154 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags db SFX_11 ; sound FX ID db $00 ; handler function @@ -571,7 +571,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_71 db SPRITE_DUEL_10 ; sprite ID db PALETTE_44 ; palette ID - db $65 ; anim ID + db SPRITE_ANIM_101 ; anim ID db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_5C ; sound FX ID db $00 ; handler function @@ -579,7 +579,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_72 db SPRITE_DUEL_10 ; sprite ID db PALETTE_44 ; palette ID - db $66 ; anim ID + db SPRITE_ANIM_102 ; anim ID db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_STOP ; sound FX ID db $00 ; handler function @@ -587,7 +587,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_73 db SPRITE_DUEL_60 ; sprite ID db PALETTE_84 ; palette ID - db $98 ; anim ID + db SPRITE_ANIM_152 ; anim ID db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_4C ; sound FX ID db $00 ; handler function @@ -595,7 +595,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_74 db SPRITE_DUEL_41 ; sprite ID db PALETTE_80 ; palette ID - db $91 ; anim ID + db SPRITE_ANIM_145 ; anim ID db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_4D ; sound FX ID db $00 ; handler function @@ -603,7 +603,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_EXPAND db SPRITE_DUEL_46 ; sprite ID db PALETTE_88 ; palette ID - db $9b ; anim ID + db SPRITE_ANIM_155 ; anim ID db $00 ; anim flags db SFX_4E ; sound FX ID db $00 ; handler function @@ -611,7 +611,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_76 db SPRITE_DUEL_47 ; sprite ID db PALETTE_89 ; palette ID - db $9c ; anim ID + db SPRITE_ANIM_156 ; anim ID db $00 ; anim flags db SFX_4F ; sound FX ID db $00 ; handler function @@ -619,7 +619,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_THUNDER_WAVE db SPRITE_DUEL_48 ; sprite ID db PALETTE_90 ; palette ID - db $9d ; anim ID + db SPRITE_ANIM_157 ; anim ID db $00 ; anim flags db SFX_50 ; sound FX ID db $00 ; handler function @@ -627,7 +627,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_78 db SPRITE_DUEL_10 ; sprite ID db PALETTE_44 ; palette ID - db $67 ; anim ID + db SPRITE_ANIM_103 ; anim ID db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_51 ; sound FX ID db $00 ; handler function @@ -635,7 +635,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_79 db SPRITE_DUEL_10 ; sprite ID db PALETTE_44 ; palette ID - db $68 ; anim ID + db SPRITE_ANIM_104 ; anim ID db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_51 ; sound FX ID db $00 ; handler function @@ -643,7 +643,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_80 db SPRITE_DUEL_49 ; sprite ID db PALETTE_91 ; palette ID - db $9e ; anim ID + db SPRITE_ANIM_158 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_STOP ; sound FX ID db $00 ; handler function @@ -651,7 +651,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_PLAYER_SHUFFLE db SPRITE_DUEL_49 ; sprite ID db PALETTE_91 ; palette ID - db $9f ; anim ID + db SPRITE_ANIM_159 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_07 ; sound FX ID db $00 ; handler function @@ -659,7 +659,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_OPP_SHUFFLE db SPRITE_DUEL_49 ; sprite ID db PALETTE_91 ; palette ID - db $a0 ; anim ID + db SPRITE_ANIM_160 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_07 ; sound FX ID db $00 ; handler function @@ -667,7 +667,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_BOTH_SHUFFLE db SPRITE_DUEL_49 ; sprite ID db PALETTE_91 ; palette ID - db $a1 ; anim ID + db SPRITE_ANIM_161 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_07 ; sound FX ID db $00 ; handler function @@ -675,7 +675,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_84 db SPRITE_DUEL_49 ; sprite ID db PALETTE_91 ; palette ID - db $a2 ; anim ID + db SPRITE_ANIM_162 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_STOP ; sound FX ID db $00 ; handler function @@ -683,7 +683,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_BOTH_DRAW db SPRITE_DUEL_49 ; sprite ID db PALETTE_91 ; palette ID - db $a3 ; anim ID + db SPRITE_ANIM_163 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_STOP ; sound FX ID db $00 ; handler function @@ -691,7 +691,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_PLAYER_DRAW db SPRITE_DUEL_49 ; sprite ID db PALETTE_91 ; palette ID - db $a4 ; anim ID + db SPRITE_ANIM_164 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_STOP ; sound FX ID db $00 ; handler function @@ -699,7 +699,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_OPP_DRAW db SPRITE_DUEL_49 ; sprite ID db PALETTE_91 ; palette ID - db $a5 ; anim ID + db SPRITE_ANIM_165 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_STOP ; sound FX ID db $00 ; handler function @@ -707,7 +707,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_COIN_SPIN db SPRITE_DUEL_50 ; sprite ID db PALETTE_92 ; palette ID - db $a7 ; anim ID + db SPRITE_ANIM_167 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_STOP ; sound FX ID db $00 ; handler function @@ -715,7 +715,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_COIN_TOSS1 db SPRITE_DUEL_50 ; sprite ID db PALETTE_92 ; palette ID - db $a8 ; anim ID + db SPRITE_ANIM_168 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_0B ; sound FX ID db $00 ; handler function @@ -723,7 +723,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_COIN_TOSS2 db SPRITE_DUEL_50 ; sprite ID db PALETTE_92 ; palette ID - db $a9 ; anim ID + db SPRITE_ANIM_169 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_0B ; sound FX ID db $00 ; handler function @@ -731,7 +731,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_COIN_TAILS db SPRITE_DUEL_50 ; sprite ID db PALETTE_92 ; palette ID - db $aa ; anim ID + db SPRITE_ANIM_170 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_STOP ; sound FX ID db $00 ; handler function @@ -739,7 +739,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_COIN_HEADS db SPRITE_DUEL_50 ; sprite ID db PALETTE_92 ; palette ID - db $ab ; anim ID + db SPRITE_ANIM_171 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_STOP ; sound FX ID db $00 ; handler function @@ -747,7 +747,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_DUEL_WIN db SPRITE_DUEL_WON_LOST_DRAW ; sprite ID db PALETTE_93 ; palette ID - db $ac ; anim ID + db SPRITE_ANIM_172 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_STOP ; sound FX ID db $00 ; handler function @@ -755,7 +755,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_DUEL_LOSS db SPRITE_DUEL_WON_LOST_DRAW ; sprite ID db PALETTE_93 ; palette ID - db $ad ; anim ID + db SPRITE_ANIM_173 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_STOP ; sound FX ID db $00 ; handler function @@ -763,7 +763,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_DUEL_DRAW db SPRITE_DUEL_WON_LOST_DRAW ; sprite ID db PALETTE_93 ; palette ID - db $ae ; anim ID + db SPRITE_ANIM_174 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_STOP ; sound FX ID db $00 ; handler function @@ -771,7 +771,7 @@ Animations: ; 1ce32 (7:4e32) ; DUEL_ANIM_96 db SPRITE_DUEL_49 ; sprite ID db PALETTE_91 ; palette ID - db $a6 ; anim ID + db SPRITE_ANIM_166 ; anim ID db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags db SFX_STOP ; sound FX ID db $00 ; handler function diff --git a/src/data/map_headers.asm b/src/data/map_headers.asm index 01b67c8..ca53160 100644 --- a/src/data/map_headers.asm +++ b/src/data/map_headers.asm @@ -1,37 +1,36 @@ -; TODO: figure out the rest of the data for each map -; related to the table at 20:4e5d MapHeaders: ; 1c374 (7:4374) - db TILEMAP_OVERWORLD_MAP, TILEMAP_OVERWORLD_MAP_CGB, $00, MAP_SGB_PALS_1, $01, MUSIC_OVERWORLD ; OVERWORLD_MAP - db TILEMAP_MASON_LABORATORY, TILEMAP_MASON_LABORATORY_CGB, $00, MAP_SGB_PALS_2, $02, MUSIC_OVERWORLD ; MASON_LABORATORY - db TILEMAP_DECK_MACHINE_ROOM, TILEMAP_DECK_MACHINE_ROOM_CGB, $00, MAP_SGB_PALS_2, $02, MUSIC_OVERWORLD ; DECK_MACHINE_ROOM - db TILEMAP_ISHIHARA, TILEMAP_ISHIHARA_CGB, $00, MAP_SGB_PALS_3, $03, MUSIC_OVERWORLD ; ISHIHARAS_HOUSE - db TILEMAP_FIGHTING_CLUB_ENTRANCE, TILEMAP_FIGHTING_CLUB_ENTRANCE_CGB, $00, MAP_SGB_PALS_3, $04, MUSIC_OVERWORLD ; FIGHTING_CLUB_ENTRANCE - db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, $00, MAP_SGB_PALS_3, $0c, MUSIC_OVERWORLD ; FIGHTING_CLUB_LOBBY - db TILEMAP_FIGHTING_CLUB, TILEMAP_FIGHTING_CLUB_CGB, $00, MAP_SGB_PALS_4, $0d, MUSIC_CLUB_3 ; FIGHTING_CLUB - db TILEMAP_ROCK_CLUB_ENTRANCE, TILEMAP_ROCK_CLUB_ENTRANCE_CGB, $00, MAP_SGB_PALS_3, $05, MUSIC_OVERWORLD ; ROCK_CLUB_ENTRANCE - db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, $00, MAP_SGB_PALS_3, $0c, MUSIC_OVERWORLD ; ROCK_CLUB_LOBBY - db TILEMAP_ROCK_CLUB, TILEMAP_ROCK_CLUB_CGB, $00, MAP_SGB_PALS_4, $0e, MUSIC_CLUB_2 ; ROCK_CLUB - db TILEMAP_WATER_CLUB_ENTRANCE, TILEMAP_WATER_CLUB_ENTRANCE_CGB, $00, MAP_SGB_PALS_3, $06, MUSIC_OVERWORLD ; WATER_CLUB_ENTRANCE - db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, $00, MAP_SGB_PALS_3, $0c, MUSIC_OVERWORLD ; WATER_CLUB_LOBBY - db TILEMAP_WATER_CLUB, TILEMAP_WATER_CLUB_CGB, $00, MAP_SGB_PALS_2, $0f, MUSIC_CLUB_2 ; WATER_CLUB - db TILEMAP_LIGHTNING_CLUB_ENTRANCE, TILEMAP_LIGHTNING_CLUB_ENTRANCE_CGB, $00, MAP_SGB_PALS_3, $07, MUSIC_OVERWORLD ; LIGHTNING_CLUB_ENTRANCE - db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, $00, MAP_SGB_PALS_3, $0c, MUSIC_OVERWORLD ; LIGHTNING_CLUB_LOBBY - db TILEMAP_LIGHTNING_CLUB, TILEMAP_LIGHTNING_CLUB_CGB, $00, MAP_SGB_PALS_5, $10, MUSIC_CLUB_1 ; LIGHTNING_CLUB - db TILEMAP_GRASS_CLUB_ENTRANCE, TILEMAP_GRASS_CLUB_ENTRANCE_CGB, $00, MAP_SGB_PALS_3, $08, MUSIC_OVERWORLD ; GRASS_CLUB_ENTRANCE - db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, $00, MAP_SGB_PALS_3, $0c, MUSIC_OVERWORLD ; GRASS_CLUB_LOBBY - db TILEMAP_GRASS_CLUB, TILEMAP_GRASS_CLUB_CGB, $00, MAP_SGB_PALS_6, $11, MUSIC_CLUB_1 ; GRASS_CLUB - db TILEMAP_PSYCHIC_CLUB_ENTRANCE, TILEMAP_PSYCHIC_CLUB_ENTRANCE_CGB, $00, MAP_SGB_PALS_3, $09, MUSIC_OVERWORLD ; PSYCHIC_CLUB_ENTRANCE - db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, $00, MAP_SGB_PALS_3, $0c, MUSIC_OVERWORLD ; PSYCHIC_CLUB_LOBBY - db TILEMAP_PSYCHIC_CLUB, TILEMAP_PSYCHIC_CLUB_CGB, $00, MAP_SGB_PALS_7, $12, MUSIC_CLUB_2 ; PSYCHIC_CLUB - db TILEMAP_SCIENCE_CLUB_ENTRANCE, TILEMAP_SCIENCE_CLUB_ENTRANCE_CGB, $00, MAP_SGB_PALS_3, $0a, MUSIC_OVERWORLD ; SCIENCE_CLUB_ENTRANCE - db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, $00, MAP_SGB_PALS_3, $0c, MUSIC_OVERWORLD ; SCIENCE_CLUB_LOBBY - db TILEMAP_SCIENCE_CLUB, TILEMAP_SCIENCE_CLUB_CGB, $00, MAP_SGB_PALS_6, $13, MUSIC_CLUB_3 ; SCIENCE_CLUB - db TILEMAP_FIRE_CLUB_ENTRANCE, TILEMAP_FIRE_CLUB_ENTRANCE_CGB, $00, MAP_SGB_PALS_3, $0b, MUSIC_OVERWORLD ; FIRE_CLUB_ENTRANCE - db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, $00, MAP_SGB_PALS_3, $0c, MUSIC_OVERWORLD ; FIRE_CLUB_LOBBY - db TILEMAP_FIRE_CLUB, TILEMAP_FIRE_CLUB_CGB, $00, MAP_SGB_PALS_8, $14, MUSIC_CLUB_3 ; FIRE_CLUB - db TILEMAP_CHALLENGE_HALL_ENTRANCE, TILEMAP_CHALLENGE_HALL_ENTRANCE_CGB, $00, MAP_SGB_PALS_3, $04, MUSIC_OVERWORLD ; CHALLENGE_HALL_ENTRANCE - db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, $00, MAP_SGB_PALS_3, $0c, MUSIC_OVERWORLD ; CHALLENGE_HALL_LOBBY - db TILEMAP_CHALLENGE_HALL, TILEMAP_CHALLENGE_HALL_CGB, $00, MAP_SGB_PALS_9, $15, MUSIC_OVERWORLD ; CHALLENGE_HALL - db TILEMAP_POKEMON_DOME_ENTRANCE, TILEMAP_POKEMON_DOME_ENTRANCE_CGB, $00, MAP_SGB_PALS_10, $16, MUSIC_OVERWORLD ; POKEMON_DOME_ENTRANCE - db TILEMAP_POKEMON_DOME, TILEMAP_POKEMON_DOME_CGB, $00, MAP_SGB_PALS_10, $17, MUSIC_POKEMON_DOME ; POKEMON_DOME - db TILEMAP_HALL_OF_HONOR, TILEMAP_HALL_OF_HONOR_CGB, $00, MAP_SGB_PALS_10, $18, MUSIC_HALL_OF_HONOR ; HALL_OF_HONOR +; sgb tilemap, cgb tilemap, initial cgb palette (always 0), sgb palette, final cgb palette, song + db TILEMAP_OVERWORLD_MAP, TILEMAP_OVERWORLD_MAP_CGB, PALETTE_0, MAP_SGB_PALS_1, PALETTE_1, MUSIC_OVERWORLD ; OVERWORLD_MAP + db TILEMAP_MASON_LABORATORY, TILEMAP_MASON_LABORATORY_CGB, PALETTE_0, MAP_SGB_PALS_2, PALETTE_2, MUSIC_OVERWORLD ; MASON_LABORATORY + db TILEMAP_DECK_MACHINE_ROOM, TILEMAP_DECK_MACHINE_ROOM_CGB, PALETTE_0, MAP_SGB_PALS_2, PALETTE_2, MUSIC_OVERWORLD ; DECK_MACHINE_ROOM + db TILEMAP_ISHIHARA, TILEMAP_ISHIHARA_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_3, MUSIC_OVERWORLD ; ISHIHARAS_HOUSE + db TILEMAP_FIGHTING_CLUB_ENTRANCE, TILEMAP_FIGHTING_CLUB_ENTRANCE_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_4, MUSIC_OVERWORLD ; FIGHTING_CLUB_ENTRANCE + db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_12, MUSIC_OVERWORLD ; FIGHTING_CLUB_LOBBY + db TILEMAP_FIGHTING_CLUB, TILEMAP_FIGHTING_CLUB_CGB, PALETTE_0, MAP_SGB_PALS_4, PALETTE_13, MUSIC_CLUB_3 ; FIGHTING_CLUB + db TILEMAP_ROCK_CLUB_ENTRANCE, TILEMAP_ROCK_CLUB_ENTRANCE_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_5, MUSIC_OVERWORLD ; ROCK_CLUB_ENTRANCE + db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_12, MUSIC_OVERWORLD ; ROCK_CLUB_LOBBY + db TILEMAP_ROCK_CLUB, TILEMAP_ROCK_CLUB_CGB, PALETTE_0, MAP_SGB_PALS_4, PALETTE_14, MUSIC_CLUB_2 ; ROCK_CLUB + db TILEMAP_WATER_CLUB_ENTRANCE, TILEMAP_WATER_CLUB_ENTRANCE_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_6, MUSIC_OVERWORLD ; WATER_CLUB_ENTRANCE + db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_12, MUSIC_OVERWORLD ; WATER_CLUB_LOBBY + db TILEMAP_WATER_CLUB, TILEMAP_WATER_CLUB_CGB, PALETTE_0, MAP_SGB_PALS_2, PALETTE_15, MUSIC_CLUB_2 ; WATER_CLUB + db TILEMAP_LIGHTNING_CLUB_ENTRANCE, TILEMAP_LIGHTNING_CLUB_ENTRANCE_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_7, MUSIC_OVERWORLD ; LIGHTNING_CLUB_ENTRANCE + db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_12, MUSIC_OVERWORLD ; LIGHTNING_CLUB_LOBBY + db TILEMAP_LIGHTNING_CLUB, TILEMAP_LIGHTNING_CLUB_CGB, PALETTE_0, MAP_SGB_PALS_5, PALETTE_16, MUSIC_CLUB_1 ; LIGHTNING_CLUB + db TILEMAP_GRASS_CLUB_ENTRANCE, TILEMAP_GRASS_CLUB_ENTRANCE_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_8, MUSIC_OVERWORLD ; GRASS_CLUB_ENTRANCE + db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_12, MUSIC_OVERWORLD ; GRASS_CLUB_LOBBY + db TILEMAP_GRASS_CLUB, TILEMAP_GRASS_CLUB_CGB, PALETTE_0, MAP_SGB_PALS_6, PALETTE_17, MUSIC_CLUB_1 ; GRASS_CLUB + db TILEMAP_PSYCHIC_CLUB_ENTRANCE, TILEMAP_PSYCHIC_CLUB_ENTRANCE_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_9, MUSIC_OVERWORLD ; PSYCHIC_CLUB_ENTRANCE + db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_12, MUSIC_OVERWORLD ; PSYCHIC_CLUB_LOBBY + db TILEMAP_PSYCHIC_CLUB, TILEMAP_PSYCHIC_CLUB_CGB, PALETTE_0, MAP_SGB_PALS_7, PALETTE_18, MUSIC_CLUB_2 ; PSYCHIC_CLUB + db TILEMAP_SCIENCE_CLUB_ENTRANCE, TILEMAP_SCIENCE_CLUB_ENTRANCE_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_10, MUSIC_OVERWORLD ; SCIENCE_CLUB_ENTRANCE + db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_12, MUSIC_OVERWORLD ; SCIENCE_CLUB_LOBBY + db TILEMAP_SCIENCE_CLUB, TILEMAP_SCIENCE_CLUB_CGB, PALETTE_0, MAP_SGB_PALS_6, PALETTE_19, MUSIC_CLUB_3 ; SCIENCE_CLUB + db TILEMAP_FIRE_CLUB_ENTRANCE, TILEMAP_FIRE_CLUB_ENTRANCE_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_11, MUSIC_OVERWORLD ; FIRE_CLUB_ENTRANCE + db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_12, MUSIC_OVERWORLD ; FIRE_CLUB_LOBBY + db TILEMAP_FIRE_CLUB, TILEMAP_FIRE_CLUB_CGB, PALETTE_0, MAP_SGB_PALS_8, PALETTE_20, MUSIC_CLUB_3 ; FIRE_CLUB + db TILEMAP_CHALLENGE_HALL_ENTRANCE, TILEMAP_CHALLENGE_HALL_ENTRANCE_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_4, MUSIC_OVERWORLD ; CHALLENGE_HALL_ENTRANCE + db TILEMAP_CLUB_LOBBY, TILEMAP_CLUB_LOBBY_CGB, PALETTE_0, MAP_SGB_PALS_3, PALETTE_12, MUSIC_OVERWORLD ; CHALLENGE_HALL_LOBBY + db TILEMAP_CHALLENGE_HALL, TILEMAP_CHALLENGE_HALL_CGB, PALETTE_0, MAP_SGB_PALS_9, PALETTE_21, MUSIC_OVERWORLD ; CHALLENGE_HALL + db TILEMAP_POKEMON_DOME_ENTRANCE, TILEMAP_POKEMON_DOME_ENTRANCE_CGB, PALETTE_0, MAP_SGB_PALS_10, PALETTE_22, MUSIC_OVERWORLD ; POKEMON_DOME_ENTRANCE + db TILEMAP_POKEMON_DOME, TILEMAP_POKEMON_DOME_CGB, PALETTE_0, MAP_SGB_PALS_10, PALETTE_23, MUSIC_POKEMON_DOME ; POKEMON_DOME + db TILEMAP_HALL_OF_HONOR, TILEMAP_HALL_OF_HONOR_CGB, PALETTE_0, MAP_SGB_PALS_10, PALETTE_24, MUSIC_HALL_OF_HONOR ; HALL_OF_HONOR diff --git a/src/data/npcs.asm b/src/data/npcs.asm index d03147f..57b9c76 100644 --- a/src/data/npcs.asm +++ b/src/data/npcs.asm @@ -122,8 +122,8 @@ NPCHeaderPointers: DrMasonNPCHeader: db NPC_DRMASON db SPRITE_OW_DRMASON - db $00 - db $26 ; palette and animation + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_WHITE_NPC_UP db $00 dw Script_DrMason tx DrMasonNPCName @@ -135,8 +135,8 @@ DrMasonNPCHeader: Ronald1NPCHeader: db NPC_RONALD1 db SPRITE_OW_RONALD - db $04 - db $0e + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Ronald tx RonaldNPCName @@ -148,8 +148,8 @@ Ronald1NPCHeader: Ronald2NPCHeader: db NPC_RONALD2 db SPRITE_OW_RONALD - db $04 - db $0e + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Ronald tx RonaldNPCName @@ -161,8 +161,8 @@ Ronald2NPCHeader: Ronald3NPCHeader: db NPC_RONALD3 db SPRITE_OW_RONALD - db $04 - db $0e + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Ronald tx RonaldNPCName @@ -174,8 +174,8 @@ Ronald3NPCHeader: IshiharaNPCHeader: db NPC_ISHIHARA db SPRITE_OW_ISHIHARA - db $04 - db $22 + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_PURPLE_NPC_UP db $00 dw Script_Ishihara tx IshiharaNPCName @@ -187,8 +187,8 @@ IshiharaNPCHeader: ImakuniNPCHeader: db NPC_IMAKUNI db SPRITE_OW_IMAKUNI - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Imakuni tx ImakuniNPCName @@ -200,8 +200,8 @@ ImakuniNPCHeader: SamNPCHeader: db NPC_SAM db SPRITE_OW_TECH - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Sam tx SamNPCName @@ -213,8 +213,8 @@ SamNPCHeader: Tech1NPCHeader: db NPC_TECH1 db SPRITE_OW_TECH - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Tech1 tx TechNPCName @@ -226,8 +226,8 @@ Tech1NPCHeader: Tech2NPCHeader: db NPC_TECH2 db SPRITE_OW_TECH - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Tech2 tx TechNPCName @@ -239,8 +239,8 @@ Tech2NPCHeader: Tech3NPCHeader: db NPC_TECH3 db SPRITE_OW_TECH - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Tech3 tx TechNPCName @@ -252,8 +252,8 @@ Tech3NPCHeader: Tech4NPCHeader: db NPC_TECH4 db SPRITE_OW_TECH - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Tech4 tx TechNPCName @@ -265,8 +265,8 @@ Tech4NPCHeader: Tech5NPCHeader: db NPC_TECH5 db SPRITE_OW_TECH - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Tech5 tx TechNPCName @@ -278,8 +278,8 @@ Tech5NPCHeader: Tech6NPCHeader: db NPC_TECH6 db SPRITE_OW_TECH - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Tech6 tx TechNPCName @@ -291,8 +291,8 @@ Tech6NPCHeader: Clerk1NPCHeader: db NPC_CLERK1 db SPRITE_OW_CLERK - db $0a - db $30 + db SPRITE_ANIM_SGB_CLERK_NPC_UP + db SPRITE_ANIM_CGB_CLERK_NPC_UP db $00 dw Script_Clerk1 tx ClerkNPCName2 @@ -304,8 +304,8 @@ Clerk1NPCHeader: Clerk2NPCHeader: db NPC_CLERK2 db SPRITE_OW_CLERK - db $0a - db $30 + db SPRITE_ANIM_SGB_CLERK_NPC_UP + db SPRITE_ANIM_CGB_CLERK_NPC_UP db $00 dw Script_Clerk2 tx ClerkNPCName2 @@ -317,8 +317,8 @@ Clerk2NPCHeader: Clerk3NPCHeader: db NPC_CLERK3 db SPRITE_OW_CLERK - db $0a - db $30 + db SPRITE_ANIM_SGB_CLERK_NPC_UP + db SPRITE_ANIM_CGB_CLERK_NPC_UP db $00 dw Script_Clerk3 tx ClerkNPCName2 @@ -330,8 +330,8 @@ Clerk3NPCHeader: Clerk4NPCHeader: db NPC_CLERK4 db SPRITE_OW_CLERK - db $0a - db $30 + db SPRITE_ANIM_SGB_CLERK_NPC_UP + db SPRITE_ANIM_CGB_CLERK_NPC_UP db $00 dw Script_Clerk4 tx ClerkNPCName2 @@ -343,8 +343,8 @@ Clerk4NPCHeader: Clerk5NPCHeader: db NPC_CLERK5 db SPRITE_OW_CLERK - db $0a - db $30 + db SPRITE_ANIM_SGB_CLERK_NPC_UP + db SPRITE_ANIM_CGB_CLERK_NPC_UP db $00 dw Script_Clerk5 tx ClerkNPCName2 @@ -356,8 +356,8 @@ Clerk5NPCHeader: Clerk6NPCHeader: db NPC_CLERK6 db SPRITE_OW_CLERK - db $0a - db $30 + db SPRITE_ANIM_SGB_CLERK_NPC_UP + db SPRITE_ANIM_CGB_CLERK_NPC_UP db $00 dw Script_Clerk6 tx ClerkNPCName2 @@ -369,8 +369,8 @@ Clerk6NPCHeader: Clerk7NPCHeader: db NPC_CLERK7 db SPRITE_OW_CLERK - db $0a - db $30 + db SPRITE_ANIM_SGB_CLERK_NPC_UP + db SPRITE_ANIM_CGB_CLERK_NPC_UP db $00 dw Script_Clerk7 tx ClerkNPCName2 @@ -382,8 +382,8 @@ Clerk7NPCHeader: Clerk8NPCHeader: db NPC_CLERK8 db SPRITE_OW_CLERK - db $0a - db $30 + db SPRITE_ANIM_SGB_CLERK_NPC_UP + db SPRITE_ANIM_CGB_CLERK_NPC_UP db $00 dw Script_Clerk8 tx ClerkNPCName2 @@ -395,8 +395,8 @@ Clerk8NPCHeader: Clerk9NPCHeader: db NPC_CLERK9 db SPRITE_OW_CLERK - db $0a - db $30 + db SPRITE_ANIM_SGB_CLERK_NPC_UP + db SPRITE_ANIM_CGB_CLERK_NPC_UP db $00 dw Script_Clerk9 tx ClerkNPCName2 @@ -408,8 +408,8 @@ Clerk9NPCHeader: ChrisNPCHeader: db NPC_CHRIS db SPRITE_OW_MANIA - db $00 - db $26 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_WHITE_NPC_UP db $00 dw Script_Chris tx ChrisNPCName @@ -421,8 +421,8 @@ ChrisNPCHeader: MichaelNPCHeader: db NPC_MICHAEL db SPRITE_OW_MANIA - db $00 - db $26 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_WHITE_NPC_UP db $00 dw Script_Michael tx MichaelNPCName @@ -434,8 +434,8 @@ MichaelNPCHeader: JessicaNPCHeader: db NPC_JESSICA db SPRITE_OW_LASS3 - db $04 - db $1a + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_GREEN_NPC_UP db $00 dw Script_Jessica tx JessicaNPCName @@ -447,8 +447,8 @@ JessicaNPCHeader: MitchNPCHeader: db NPC_MITCH db SPRITE_OW_MITCH - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Mitch tx MitchNPCName @@ -460,8 +460,8 @@ MitchNPCHeader: MatthewNPCHeader: db NPC_MATTHEW db SPRITE_OW_MANIA - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Matthew tx MatthewNPCName @@ -473,8 +473,8 @@ MatthewNPCHeader: RyanNPCHeader: db NPC_RYAN db SPRITE_OW_BOY - db $00 - db $26 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_WHITE_NPC_UP db $00 dw Script_Ryan tx RyanNPCName @@ -486,8 +486,8 @@ RyanNPCHeader: AndrewNPCHeader: db NPC_ANDREW db SPRITE_OW_MAN - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Andrew tx AndrewNPCName @@ -499,8 +499,8 @@ AndrewNPCHeader: GeneNPCHeader: db NPC_GENE db SPRITE_OW_GENE - db $04 - db $1e + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_RED_NPC_UP db $00 dw Script_Gene tx GeneNPCName @@ -512,8 +512,8 @@ GeneNPCHeader: SaraNPCHeader: db NPC_SARA db SPRITE_OW_SWIMMER - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Sara tx SaraNPCName @@ -525,8 +525,8 @@ SaraNPCHeader: AmandaNPCHeader: db NPC_AMANDA db SPRITE_OW_SWIMMER - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Amanda tx AmandaNPCName @@ -538,8 +538,8 @@ AmandaNPCHeader: JoshuaNPCHeader: db NPC_JOSHUA db SPRITE_OW_JOSHUA - db $00 - db $26 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_WHITE_NPC_UP db $00 dw Script_Joshua tx JoshuaNPCName @@ -551,8 +551,8 @@ JoshuaNPCHeader: AmyNPCHeader: db NPC_AMY db SPRITE_OW_AMY - db $08 - db $2e + db SPRITE_ANIM_SGB_AMY_LAYING + db SPRITE_ANIM_CGB_AMY_LAYING db NPC_FLAG_DIRECTIONLESS dw Script_Amy tx AmyNPCName @@ -564,8 +564,8 @@ AmyNPCHeader: JenniferNPCHeader: db NPC_JENNIFER db SPRITE_OW_GIRL - db $04 - db $0e + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Jennifer tx JenniferNPCName @@ -577,8 +577,8 @@ JenniferNPCHeader: NicholasNPCHeader: db NPC_NICHOLAS db SPRITE_OW_HOOD - db $04 - db $1e + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_RED_NPC_UP db $00 dw Script_Nicholas tx NicholasNPCName @@ -590,8 +590,8 @@ NicholasNPCHeader: BrandonNPCHeader: db NPC_BRANDON db SPRITE_OW_HOOD - db $04 - db $1e + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_RED_NPC_UP db $00 dw Script_Brandon tx BrandonNPCName @@ -603,8 +603,8 @@ BrandonNPCHeader: IsaacNPCHeader: db NPC_ISAAC db SPRITE_OW_ISAAC - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Isaac tx IsaacNPCName @@ -616,8 +616,8 @@ IsaacNPCHeader: BrittanyNPCHeader: db NPC_BRITTANY db SPRITE_OW_GIRL - db $04 - db $0e + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Brittany tx BrittanyNPCName @@ -629,8 +629,8 @@ BrittanyNPCHeader: KristinNPCHeader: db NPC_KRISTIN db SPRITE_OW_LASS2 - db $00 - db $1e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_RED_NPC_UP db $00 dw Script_Kristin tx KristinNPCName @@ -642,8 +642,8 @@ KristinNPCHeader: HeatherNPCHeader: db NPC_HEATHER db SPRITE_OW_LASS1 - db $04 - db $22 + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_PURPLE_NPC_UP db $00 dw Script_Heather tx HeatherNPCName @@ -655,8 +655,8 @@ HeatherNPCHeader: NikkiNPCHeader: db NPC_NIKKI db SPRITE_OW_NIKKI - db $00 - db $1a + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_GREEN_NPC_UP db $00 dw Script_Nikki tx NikkiNPCName @@ -668,8 +668,8 @@ NikkiNPCHeader: RobertNPCHeader: db NPC_ROBERT db SPRITE_OW_BOY - db $04 - db $16 + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Robert tx RobertNPCName @@ -681,8 +681,8 @@ RobertNPCHeader: DanielNPCHeader: db NPC_DANIEL db SPRITE_OW_LAD - db $04 - db $1a + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_GREEN_NPC_UP db $00 dw Script_Daniel tx DanielNPCName @@ -694,8 +694,8 @@ DanielNPCHeader: StephanieNPCHeader: db NPC_STEPHANIE db SPRITE_OW_GIRL - db $04 - db $0e + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Stephanie tx StephanieNPCName @@ -707,8 +707,8 @@ StephanieNPCHeader: Murray1NPCHeader: db NPC_MURRAY1 db SPRITE_OW_MURRAY - db $00 - db $12 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_PINK_NPC_UP db $00 dw Script_Murray tx MurrayNPCName @@ -720,8 +720,8 @@ Murray1NPCHeader: Murray2NPCHeader: db NPC_MURRAY2 db SPRITE_OW_MURRAY - db $03 - db $15 + db SPRITE_ANIM_LIGHT_NPC_LEFT + db SPRITE_ANIM_PINK_NPC_LEFT db NPC_FLAG_DIRECTIONLESS dw Script_Murray tx MurrayNPCName @@ -733,8 +733,8 @@ Murray2NPCHeader: JosephNPCHeader: db NPC_JOSEPH db SPRITE_OW_TECH - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Joseph tx JosephNPCName @@ -746,8 +746,8 @@ JosephNPCHeader: DavidNPCHeader: db NPC_DAVID db SPRITE_OW_TECH - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_David tx DavidNPCName @@ -759,8 +759,8 @@ DavidNPCHeader: ErikNPCHeader: db NPC_ERIK db SPRITE_OW_TECH - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Erik tx ErikNPCName @@ -772,8 +772,8 @@ ErikNPCHeader: RickNPCHeader: db NPC_RICK db SPRITE_OW_RICK - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Rick tx RickNPCName @@ -785,8 +785,8 @@ RickNPCHeader: JohnNPCHeader: db NPC_JOHN db SPRITE_OW_LAD - db $04 - db $1a + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_GREEN_NPC_UP db $00 dw Script_John tx JohnNPCName @@ -798,8 +798,8 @@ JohnNPCHeader: AdamNPCHeader: db NPC_ADAM db SPRITE_OW_SPECS - db $00 - db $22 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_PURPLE_NPC_UP db $00 dw Script_Adam tx AdamNPCName @@ -811,8 +811,8 @@ AdamNPCHeader: JonathanNPCHeader: db NPC_JONATHAN db SPRITE_OW_BOY - db $04 - db $16 + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Jonathan tx JonathanNPCName @@ -824,8 +824,8 @@ JonathanNPCHeader: KenNPCHeader: db NPC_KEN db SPRITE_OW_KEN - db $04 - db $1e + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_RED_NPC_UP db $00 dw Script_Ken tx KenNPCName @@ -837,8 +837,8 @@ KenNPCHeader: CourtneyNPCHeader: db NPC_COURTNEY db SPRITE_OW_COURTNEY - db $00 - db $12 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_PINK_NPC_UP db $00 dw Script_Courtney tx CourtneyNPCName @@ -850,8 +850,8 @@ CourtneyNPCHeader: SteveNPCHeader: db NPC_STEVE db SPRITE_OW_STEVE - db $00 - db $2a + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_INDIGO_NPC_UP db $00 dw Script_Steve tx SteveNPCName @@ -863,8 +863,8 @@ SteveNPCHeader: JackNPCHeader: db NPC_JACK db SPRITE_OW_JACK - db $00 - db $26 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_WHITE_NPC_UP db $00 dw Script_Jack tx JackNPCName @@ -876,8 +876,8 @@ JackNPCHeader: RodNPCHeader: db NPC_ROD db SPRITE_OW_ROD - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Rod tx RodNPCName @@ -889,8 +889,8 @@ RodNPCHeader: Clerk10NPCHeader: db NPC_CLERK10 db SPRITE_OW_CLERK - db $0a - db $30 + db SPRITE_ANIM_SGB_CLERK_NPC_UP + db SPRITE_ANIM_CGB_CLERK_NPC_UP db $00 dw Script_Clerk10 tx ClerkNPCName @@ -902,8 +902,8 @@ Clerk10NPCHeader: GiftCenterClerkNPCHeader: db NPC_GIFT_CENTER_CLERK db SPRITE_OW_CLERK - db $0a - db $30 + db SPRITE_ANIM_SGB_CLERK_NPC_UP + db SPRITE_ANIM_CGB_CLERK_NPC_UP db $00 dw Script_GiftCenterClerk tx ClerkNPCName @@ -915,8 +915,8 @@ GiftCenterClerkNPCHeader: Man1NPCHeader: db NPC_MAN1 db SPRITE_OW_MAN - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Man1 tx ManNPCName @@ -928,8 +928,8 @@ Man1NPCHeader: Woman1NPCHeader: db NPC_WOMAN1 db SPRITE_OW_WOMAN - db $04 - db $1e + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_RED_NPC_UP db $00 dw Script_Woman1 tx WomanNPCName @@ -941,8 +941,8 @@ Woman1NPCHeader: Chap1NPCHeader: db NPC_CHAP1 db SPRITE_OW_CHAP - db $00 - db $1a + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_GREEN_NPC_UP db $00 dw Script_Chap1 tx ChapNPCName @@ -954,8 +954,8 @@ Chap1NPCHeader: Gal1NPCHeader: db NPC_GAL1 db SPRITE_OW_GAL - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Gal1 tx GalNPCName @@ -967,8 +967,8 @@ Gal1NPCHeader: Lass1NPCHeader: db NPC_LASS1 db SPRITE_OW_LASS2 - db $00 - db $1e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_RED_NPC_UP db $00 dw Script_Lass1 tx LassNPCName @@ -980,8 +980,8 @@ Lass1NPCHeader: Chap2NPCHeader: db NPC_CHAP2 db SPRITE_OW_CHAP - db $00 - db $1a + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_GREEN_NPC_UP db $00 dw Script_Chap2 tx ChapNPCName @@ -993,8 +993,8 @@ Chap2NPCHeader: Lass2NPCHeader: db NPC_LASS2 db SPRITE_OW_LASS2 - db $00 - db $1e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_RED_NPC_UP db $00 dw Script_Lass2 tx LassNPCName @@ -1006,8 +1006,8 @@ Lass2NPCHeader: Pappy1NPCHeader: db NPC_PAPPY1 db SPRITE_OW_PAPPY - db $00 - db $22 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_PURPLE_NPC_UP db $00 dw Script_Pappy1 tx PappyNPCName @@ -1019,8 +1019,8 @@ Pappy1NPCHeader: Lad1NPCHeader: db NPC_LAD1 db SPRITE_OW_LAD - db $04 - db $1a + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_GREEN_NPC_UP db $00 dw Script_Lad1 tx LadNPCName @@ -1032,8 +1032,8 @@ Lad1NPCHeader: Lad2NPCHeader: db NPC_LAD2 db SPRITE_OW_BOY - db $04 - db $16 + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Lad2 tx LadNPCName @@ -1045,8 +1045,8 @@ Lad2NPCHeader: Chap3NPCHeader: db NPC_CHAP3 db SPRITE_OW_CHAP - db $00 - db $1a + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_GREEN_NPC_UP db $00 dw Script_Chap3 tx ChapNPCName @@ -1058,8 +1058,8 @@ Chap3NPCHeader: Clerk12NPCHeader: db NPC_CLERK12 db SPRITE_OW_GAL - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Clerk12 tx ClerkNPCName2 @@ -1071,8 +1071,8 @@ Clerk12NPCHeader: Clerk13NPCHeader: db NPC_CLERK13 db SPRITE_OW_GAL - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Clerk13 tx ClerkNPCName2 @@ -1084,8 +1084,8 @@ Clerk13NPCHeader: HostNPCHeader: db NPC_HOST db SPRITE_OW_GAL - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Host tx HostNPCName @@ -1097,8 +1097,8 @@ HostNPCHeader: Specs1NPCHeader: db NPC_SPECS1 db SPRITE_OW_SPECS - db $00 - db $22 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_PURPLE_NPC_UP db $00 dw Script_Specs1 tx SpecsNPCName @@ -1110,8 +1110,8 @@ Specs1NPCHeader: ButchNPCHeader: db NPC_BUTCH db SPRITE_OW_BUTCH - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Butch tx ButchNPCName @@ -1123,8 +1123,8 @@ ButchNPCHeader: Granny1NPCHeader: db NPC_GRANNY1 db SPRITE_OW_GRANNY - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Granny1 tx GrannyNPCName @@ -1136,8 +1136,8 @@ Granny1NPCHeader: Lass3NPCHeader: db NPC_LASS3 db SPRITE_OW_LASS1 - db $04 - db $22 + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_PURPLE_NPC_UP db $00 dw Script_Lass3 tx LassNPCName @@ -1149,8 +1149,8 @@ Lass3NPCHeader: Man2NPCHeader: db NPC_MAN2 db SPRITE_OW_MAN - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Man2 tx ManNPCName @@ -1162,8 +1162,8 @@ Man2NPCHeader: Pappy2NPCHeader: db NPC_PAPPY2 db SPRITE_OW_PAPPY - db $00 - db $22 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_PURPLE_NPC_UP db $00 dw Script_Pappy2 tx PappyNPCName @@ -1175,8 +1175,8 @@ Pappy2NPCHeader: Lass4NPCHeader: db NPC_LASS4 db SPRITE_OW_LASS1 - db $04 - db $22 + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_PURPLE_NPC_UP db $00 dw Script_Lass4 tx LassNPCName @@ -1188,8 +1188,8 @@ Lass4NPCHeader: Hood1NPCHeader: db NPC_HOOD1 db SPRITE_OW_HOOD - db $04 - db $1e + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_RED_NPC_UP db $00 dw Script_Hood1 tx HoodNPCName @@ -1201,8 +1201,8 @@ Hood1NPCHeader: Granny2NPCHeader: db NPC_GRANNY2 db SPRITE_OW_GRANNY - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Granny2 tx GrannyNPCName @@ -1214,8 +1214,8 @@ Granny2NPCHeader: Gal2NPCHeader: db NPC_GAL2 db SPRITE_OW_GAL - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Gal2 tx GalNPCName @@ -1227,8 +1227,8 @@ Gal2NPCHeader: Lad3NPCHeader: db NPC_LAD3 db SPRITE_OW_LAD - db $04 - db $1a + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_GREEN_NPC_UP db $00 dw Script_Lad3 tx LadNPCName @@ -1240,8 +1240,8 @@ Lad3NPCHeader: Gal3NPCHeader: db NPC_GAL3 db SPRITE_OW_GAL - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Gal3 tx GalNPCName @@ -1253,8 +1253,8 @@ Gal3NPCHeader: Chap4NPCHeader: db NPC_CHAP4 db SPRITE_OW_CHAP - db $00 - db $1a + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_GREEN_NPC_UP db $00 dw Script_Chap4 tx ChapNPCName @@ -1266,8 +1266,8 @@ Chap4NPCHeader: Man3NPCHeader: db NPC_MAN3 db SPRITE_OW_MAN - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Man3 tx ManNPCName @@ -1279,8 +1279,8 @@ Man3NPCHeader: Specs2NPCHeader: db NPC_SPECS2 db SPRITE_OW_TECH - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Specs2 tx SpecsNPCName @@ -1292,8 +1292,8 @@ Specs2NPCHeader: Specs3NPCHeader: db NPC_SPECS3 db SPRITE_OW_SPECS - db $00 - db $22 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_PURPLE_NPC_UP db $00 dw Script_Specs3 tx SpecsNPCName @@ -1305,8 +1305,8 @@ Specs3NPCHeader: Woman2NPCHeader: db NPC_WOMAN2 db SPRITE_OW_WOMAN - db $04 - db $1e + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_RED_NPC_UP db $00 dw Script_Woman2 tx WomanNPCName @@ -1318,8 +1318,8 @@ Woman2NPCHeader: ManiaNPCHeader: db NPC_MANIA db SPRITE_OW_MANIA - db $00 - db $26 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_WHITE_NPC_UP db $00 dw Script_Mania tx ManiaNPCName @@ -1331,8 +1331,8 @@ ManiaNPCHeader: Pappy3NPCHeader: db NPC_PAPPY3 db SPRITE_OW_PAPPY - db $00 - db $22 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_PURPLE_NPC_UP db $00 dw Script_Pappy3 tx PappyNPCName @@ -1344,8 +1344,8 @@ Pappy3NPCHeader: Gal4NPCHeader: db NPC_GAL4 db SPRITE_OW_GAL - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Gal4 tx GalNPCName @@ -1357,8 +1357,8 @@ Gal4NPCHeader: ChampNPCHeader: db NPC_CHAMP db SPRITE_OW_MANIA - db $00 - db $26 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_WHITE_NPC_UP db $00 dw Script_Champ tx ChampNPCName @@ -1370,8 +1370,8 @@ ChampNPCHeader: Hood2NPCHeader: db NPC_HOOD2 db SPRITE_OW_HOOD - db $04 - db $1e + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_RED_NPC_UP db $00 dw Script_Hood2 tx HoodNPCName @@ -1383,8 +1383,8 @@ Hood2NPCHeader: Lass5NPCHeader: db NPC_LASS5 db SPRITE_OW_LASS3 - db $04 - db $1a + db SPRITE_ANIM_DARK_NPC_UP + db SPRITE_ANIM_GREEN_NPC_UP db $00 dw Script_Lass5 tx LassNPCName @@ -1396,8 +1396,8 @@ Lass5NPCHeader: Chap5NPCHeader: db NPC_CHAP5 db SPRITE_OW_CHAP - db $00 - db $1a + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_GREEN_NPC_UP db $00 dw Script_Chap5 tx ChapNPCName @@ -1409,8 +1409,8 @@ Chap5NPCHeader: AaronNPCHeader: db NPC_AARON db SPRITE_OW_TECH - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Aaron tx AaronNPCName @@ -1422,8 +1422,8 @@ AaronNPCHeader: GuideNPCHeader: db NPC_GUIDE db SPRITE_OW_MAN - db $00 - db $16 + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_YELLOW_NPC_UP db $00 dw Script_Guide tx GuideNPCName @@ -1435,8 +1435,8 @@ GuideNPCHeader: Tech7NPCHeader: db NPC_TECH7 db SPRITE_OW_TECH - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Tech7 tx TechNPCName @@ -1448,8 +1448,8 @@ Tech7NPCHeader: Tech8NPCHeader: db NPC_TECH8 db SPRITE_OW_TECH - db $00 - db $0e + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_BLUE_NPC_UP db $00 dw Script_Tech8 tx TechNPCName @@ -1460,63 +1460,63 @@ Tech8NPCHeader: TorchNPCHeader: db NPC_TORCH - db $26 - db $3a - db $3a + db SPRITE_DUEL_0 + db SPRITE_ANIM_TORCH + db SPRITE_ANIM_TORCH db NPC_FLAG_DIRECTIONLESS dw Script_Torch LegendaryCardTopLeftNPCHeader: db NPC_LEGENDARY_CARD_TOP_LEFT - db $27 - db $3b - db $41 + db SPRITE_DUEL_63 + db SPRITE_ANIM_SGB_CARD_TOP_LEFT + db SPRITE_ANIM_CGB_CARD_TOP_LEFT db NPC_FLAG_DIRECTIONLESS | NPC_FLAG_UNKNOWN dw Script_LegendaryCardTopLeft LegendaryCardTopRightNPCHeader: db NPC_LEGENDARY_CARD_TOP_RIGHT - db $27 - db $3c - db $42 + db SPRITE_DUEL_63 + db SPRITE_ANIM_SGB_CARD_TOP_RIGHT + db SPRITE_ANIM_CGB_CARD_TOP_RIGHT db NPC_FLAG_DIRECTIONLESS | NPC_FLAG_UNKNOWN dw Script_LegendaryCardTopRight LegendaryCardLeftSparkNPCHeader: db NPC_LEGENDARY_CARD_LEFT_SPARK - db $27 - db $3d - db $43 + db SPRITE_DUEL_63 + db SPRITE_ANIM_SGB_CARD_LEFT_SPARK + db SPRITE_ANIM_CGB_CARD_LEFT_SPARK db NPC_FLAG_DIRECTIONLESS | NPC_FLAG_UNKNOWN dw Script_LegendaryCardLeftSpark LegendaryCardBottomLeftNPCHeader: db NPC_LEGENDARY_CARD_BOTTOM_LEFT - db $27 - db $3e - db $44 + db SPRITE_DUEL_63 + db SPRITE_ANIM_SGB_CARD_BOTTOM_LEFT + db SPRITE_ANIM_CGB_CARD_BOTTOM_LEFT db NPC_FLAG_DIRECTIONLESS | NPC_FLAG_UNKNOWN dw Script_LegendaryCardBottomLeft LegendaryCardBottomRightNPCHeader: db NPC_LEGENDARY_CARD_BOTTOM_RIGHT - db $27 - db $3f - db $45 + db SPRITE_DUEL_63 + db SPRITE_ANIM_SGB_CARD_BOTTOM_RIGHT + db SPRITE_ANIM_CGB_CARD_BOTTOM_RIGHT db NPC_FLAG_DIRECTIONLESS | NPC_FLAG_UNKNOWN dw Script_LegendaryCardBottomRight LegendaryCardRightSparkNPCHeader: db NPC_LEGENDARY_CARD_RIGHT_SPARK - db $27 - db $40 - db $46 + db SPRITE_DUEL_63 + db SPRITE_ANIM_SGB_CARD_RIGHT_SPARK + db SPRITE_ANIM_CGB_CARD_RIGHT_SPARK db NPC_FLAG_DIRECTIONLESS | NPC_FLAG_UNKNOWN dw Script_LegendaryCardRightSpark DummyNPCHeader: db $00 - db $00 - db $00 - db $1e + db SPRITE_OW_PLAYER + db SPRITE_ANIM_LIGHT_NPC_UP + db SPRITE_ANIM_RED_NPC_UP db $00 diff --git a/src/engine/ai/attacks.asm b/src/engine/ai/attacks.asm index 3b331a6..69ae2e1 100644 --- a/src/engine/ai/attacks.asm +++ b/src/engine/ai/attacks.asm @@ -147,8 +147,8 @@ AIProcessAttacks: ; 169fc (5:69fc) ; return carry if attack is chosen ; and AI tries to use it. .use_attack - ld a, $01 - ld [wcddb], a + ld a, TRUE + ld [wAITriedAttack], a call AITryUseAttack scf ret diff --git a/src/engine/ai/init.asm b/src/engine/ai/init.asm index 9f252d6..406d7d9 100644 --- a/src/engine/ai/init.asm +++ b/src/engine/ai/init.asm @@ -19,7 +19,7 @@ InitAITurnVars: ; 15649 (5:5649) xor a ld [wPreviousAIFlags], a - ld [wcddb], a + ld [wAITriedAttack], a ld [wcddc], a ld [wAIRetreatedThisTurn], a diff --git a/src/engine/ai/retreat.asm b/src/engine/ai/retreat.asm index 04fc415..768a48b 100644 --- a/src/engine/ai/retreat.asm +++ b/src/engine/ai/retreat.asm @@ -434,7 +434,7 @@ AIDecideWhetherToRetreat: ; 158b2 (5:58b2) jr .set_carry ; if player's turn and loaded attack is not a Pokémon Power OR -; if opponent's turn and wcddb == 0 +; if opponent's turn and wAITriedAttack == 0 ; set wcdda's bit 7 flag Func_15b54: ; 15b54 (5:5b54) xor a @@ -450,7 +450,7 @@ Func_15b54: ; 15b54 (5:5b54) jr .set_flag .opponent - ld a, [wcddb] + ld a, [wAITriedAttack] or a ret nz diff --git a/src/engine/ai/trainer_cards.asm b/src/engine/ai/trainer_cards.asm index e85b022..6c1f3a2 100644 --- a/src/engine/ai/trainer_cards.asm +++ b/src/engine/ai/trainer_cards.asm @@ -1,7 +1,7 @@ INCLUDE "data/ai_trainer_card_logic.asm" _AIProcessHandTrainerCards: ; 200e5 (8:40e5) - ld [wce18], a + ld [wAITrainerCardPhase], a ; create hand list in wDuelTempList and wTempHandCardList. call CreateHandCardList ld hl, wDuelTempList @@ -16,7 +16,7 @@ _AIProcessHandTrainerCards: ; 200e5 (8:40e5) ret z push hl - ld a, [wce18] + ld a, [wAITrainerCardPhase] ld d, a ld hl, AITrainerCardLogic .loop_data diff --git a/src/engine/bank02.asm b/src/engine/bank02.asm index 1911dd4..0b1f6f7 100644 --- a/src/engine/bank02.asm +++ b/src/engine/bank02.asm @@ -1376,7 +1376,7 @@ DisplayCheckMenuCursor_YourOrOppPlayArea: ; 8760 (2:4760) _HandlePeekSelection: ; 8764 (2:4764) call Set_OBJ_8x8 call LoadCursorTile -; reset ce5c and wIsSwapTurnPending +; reset wce5c and wIsSwapTurnPending xor a ld [wce5c], a ld [wIsSwapTurnPending], a @@ -1530,7 +1530,7 @@ endr ; input: ; a = deck index of card to be loaded ; output: -; a = ce5c +; a = wce5c ; with upper bit set if turn was swapped .ShowSelectedCard ; 8855 (2:4855) ld b, a @@ -3485,10 +3485,10 @@ HandleDeckConfigurationMenu: ; 9480 (2:5480) ConfirmDeckConfiguration: ; 94d3 (2:54d3) ld hl, wCardListVisibleOffset ld a, [hl] - ld hl, wced8 + ld hl, wCardListVisibleOffsetBackup ld [hl], a call HandleDeckConfirmationMenu - ld hl, wced8 + ld hl, wCardListVisibleOffsetBackup ld a, [hl] ld hl, wCardListVisibleOffset ld [hl], a @@ -7714,10 +7714,10 @@ HandlePrinterMenu: ; ad51 (2:6d51) ldh a, [hCurMenuItem] cp $ff call z, PrinterMenu_QuitPrint - ld [wcfe4], a + ld [wSelectedPrinterMenuItem], a ld hl, PrinterMenuFunctionTable call JumpToFunctionInTable - ld a, [wcfe4] + ld a, [wSelectedPrinterMenuItem] jr .loop PrinterMenu_QuitPrint: ; ad9a (2:6d9a) @@ -7761,7 +7761,7 @@ PrinterMenu_PrintQuality: ; adb5 (2:6db5) call DisableSRAM .asm_ade2 add sp, $2 ; exit menu - ld a, [wcfe4] + ld a, [wSelectedPrinterMenuItem] ld hl, PrinterMenuParameters call InitializeMenuParameters ldtx hl, WhatWouldYouLikeToPrintText diff --git a/src/engine/bank03.asm b/src/engine/bank03.asm index c103ba2..3c83056 100644 --- a/src/engine/bank03.asm +++ b/src/engine/bank03.asm @@ -6,8 +6,8 @@ LoadMap: ; c000 (3:4000) ld a, GAME_EVENT_OVERWORLD ld [wGameEvent], a xor a - ld [wd10f], a - ld [wd110], a + ld [wReloadOverworldCallbackPtr], a + ld [wReloadOverworldCallbackPtr + 1], a ld [wMatchStartTheme], a farcall Func_10a9b call WhiteOutDMGPals @@ -46,7 +46,7 @@ LoadMap: ; c000 (3:4000) call SetOverworldDoFrameFunction xor a ld [wOverworldTransition], a - ld [wd0c1], a + ld [wOverworldNPCFlags], a call PlayDefaultSong farcall Func_10af9 call Func_c141 @@ -128,19 +128,19 @@ EnterScript: ; c10a (3:410a) ; closes dialogue window. seems to be for other things as well. CloseAdvancedDialogueBox: ; c111 (3:4111) - ld a, [wd0c1] - bit 0, a + ld a, [wOverworldNPCFlags] + bit AUTO_CLOSE_TEXTBOX, a call nz, CloseTextBox - ld a, [wd0c1] - bit 1, a - jr z, .asm_c12a + ld a, [wOverworldNPCFlags] + bit RESTORE_FACING_DIRECTION, a + jr z, .skip ld a, [wScriptNPC] ld [wLoadedNPCTempIndex], a farcall Func_1c5e9 -.asm_c12a +.skip xor a - ld [wd0c1], a - ld a, [wd0c0] + ld [wOverworldNPCFlags], a + ld a, [wOverworldModeBackup] ld [wOverworldMode], a ret @@ -148,32 +148,32 @@ CloseAdvancedDialogueBox: ; c111 (3:4111) CloseTextBox: ; c135 (3:4135) push hl farcall ReloadMapAfterTextClose - ld hl, wd0c1 - res 0, [hl] + ld hl, wOverworldNPCFlags + res AUTO_CLOSE_TEXTBOX, [hl] pop hl ret Func_c141: ; c141 (3:4141) - ld hl, wd0c2 + ld hl, wActiveGameEvent ld a, [hl] or a ret z push af xor a - ld [hl], a + ld [hl], a ; clear game event pop af dec a ld hl, PointerTable_c152 jp JumpToFunctionInTable PointerTable_c152: ; c152 (3:4152) - dw Func_c9bc - dw Func_fc2b - dw Func_fcad + dw Func_c9bc ; GAME_EVENT_DUEL + dw Func_fc2b ; GAME_EVENT_BATTLE_CENTER + dw Func_fcad ; GAME_EVENT_GIFT_CENTER Func_c158: ; c158 (3:4158) - ld a, [wd0c2] - cp $1 + ld a, [wActiveGameEvent] + cp GAME_EVENT_DUEL ret nz ld a, [wNPCDuelist] ld [wTempNPC], a @@ -205,7 +205,7 @@ Func_c184: ; c184 (3:4184) .not_map ld a, c ld [wOverworldMode], a - ld [wd0c0], a + ld [wOverworldModeBackup], a pop bc ret @@ -263,9 +263,9 @@ Func_c1f8: ; c1f8 (3:41f8) ld [wSelectedPCMenuItem], a ld [wSelectedGiftCenterMenuItem], a ld [wConfigCursorYPos], a - ld [wd0c2], a + ld [wActiveGameEvent], a ld [wDefaultSong], a - ld [wd112], a + ld [wSongOverride], a ld [wRonaldIsInMap], a call EnableSRAM ld a, [sAnimationsDisabled] @@ -352,9 +352,9 @@ Func_c280: ; c280 (3:4280) farcall Func_12871 ret -Func_c29b: ; c29b (3:429b) +SetOverworldNPCFlags: ; c29b (3:429b) push hl - ld hl, wd0c1 + ld hl, wOverworldNPCFlags or [hl] ld [hl], a pop hl @@ -364,10 +364,10 @@ Func_c2a3: ; c2a3 (3:42a3) push hl push bc push de - call Func_c335 + call BackupObjectPalettes farcall Func_10ab4 - ld a, $80 - call Func_c29b + ld a, 1 << HIDE_ALL_NPC_SPRITES + call SetOverworldNPCFlags lb de, $30, $7f call SetupText farcall Func_12ba7 @@ -383,12 +383,13 @@ Func_c2a3: ; c2a3 (3:42a3) pop hl ret -Func_c2d4: ; c2d4 (3:42d4) +ReturnToOverworldNoCallback: ; c2d4 (3:42d4) xor a - ld [wd10f], a - ld [wd110], a + ld [wReloadOverworldCallbackPtr], a + ld [wReloadOverworldCallbackPtr + 1], a +; fallthrough -Func_c2db: ; c2db (3:42db) +ReturnToOverworld: ; c2db (3:42db) push hl push bc push de @@ -405,52 +406,52 @@ Func_c2db: ; c2db (3:42db) farcall LoadMapGfxAndPermissions pop af ld [wDefaultSong], a - ld hl, wd0c1 - res 0, [hl] - call Func_c34e + ld hl, wOverworldNPCFlags + res AUTO_CLOSE_TEXTBOX, [hl] + call RestoreObjectPalettes farcall Func_12c5e farcall SetAllNPCTilePermissions - ld hl, wd0c1 - res 7, [hl] - ld hl, wd10f + ld hl, wOverworldNPCFlags + res HIDE_ALL_NPC_SPRITES, [hl] + ld hl, wReloadOverworldCallbackPtr ld a, [hli] or [hl] - jr z, .asm_c323 + jr z, .no_callback ld a, [hld] ld l, [hl] ld h, a call CallHL2 -.asm_c323 +.no_callback farcall Func_10af9 pop de pop bc pop hl ret -Func_c32b: ; c32b (3:432b) +ReturnToOverworldWithCallback: ; c32b (3:432b) ld a, l - ld [wd10f], a + ld [wReloadOverworldCallbackPtr], a ld a, h - ld [wd110], a - jr Func_c2db + ld [wReloadOverworldCallbackPtr + 1], a + jr ReturnToOverworld -Func_c335: ; c335 (3:4335) +BackupObjectPalettes: ; c335 (3:4335) ld a, [wOBP0] - ld [wd10c], a + ld [wOBP0Backup], a ld a, [wOBP1] - ld [wd10d], a + ld [wOBP1Backup], a ld hl, wObjectPalettesCGB - ld de, wd0cc + ld de, wObjectPalettesCGBBackup ld bc, 8 palettes call CopyDataHLtoDE_SaveRegisters ret -Func_c34e: ; c34e (3:434e) - ld a, [wd10c] +RestoreObjectPalettes: ; c34e (3:434e) + ld a, [wOBP0Backup] ld [wOBP0], a - ld a, [wd10d] + ld a, [wOBP1Backup] ld [wOBP1], a - ld hl, wd0cc + ld hl, wObjectPalettesCGBBackup ld de, wObjectPalettesCGB ld bc, 8 palettes call CopyDataHLtoDE_SaveRegisters @@ -585,10 +586,10 @@ Func_c3ee: ; c3ee (3:43ee) Func_c3ff: ; c3ff (3:43ff) ld a, [wBGMapWidth] - sub $14 + sub SCREEN_WIDTH ld [wd237], a ld a, [wBGMapHeight] - sub $12 + sub SCREEN_HEIGHT ld [wd238], a call Func_c41c call Func_c469 @@ -700,14 +701,14 @@ Func_c4b9: ; c4b9 (3:44b9) ld [wd4cb], a ld a, PALETTE_29 farcall LoadPaletteData - ld b, $0 + ld b, SPRITE_ANIM_LIGHT_NPC_UP ld a, [wConsole] cp CONSOLE_CGB jr nz, .not_cgb - ld b, $1e + ld b, SPRITE_ANIM_RED_NPC_UP .not_cgb ld a, b - ld [wd337], a + ld [wPlayerSpriteBaseAnimation], a ; load Player's sprite for overworld ld a, SPRITE_OW_PLAYER @@ -877,7 +878,7 @@ UpdatePlayerSprite: ; c5e9 (3:45e9) push bc ld a, [wPlayerSpriteIndex] ld [wWhichSprite], a - ld a, [wd337] + ld a, [wPlayerSpriteBaseAnimation] ld b, a ld a, [wPlayerDirection] add b @@ -1119,10 +1120,10 @@ PauseMenu: ; c75a (3:475a) call PauseSong ld a, MUSIC_PAUSE_MENU call PlaySong - call Func_c797 + call DisplayPauseMenu .loop - ld a, $1 - call Func_c29b + ld a, 1 << AUTO_CLOSE_TEXTBOX + call SetOverworldNPCFlags .wait_input call DoFrameIfLCDEnabled call HandleMenuInput @@ -1138,14 +1139,14 @@ PauseMenu: ; c75a (3:475a) ld a, [wSelectedPauseMenuItem] ld hl, PauseMenuPointerTable call JumpToFunctionInTable - ld hl, Func_c797 - call Func_c32b + ld hl, DisplayPauseMenu + call ReturnToOverworldWithCallback jr .loop .exit call ResumeSong ret -Func_c797: ; c797 (3:4797) +DisplayPauseMenu: ; c797 (3:4797) ld a, [wSelectedPauseMenuItem] ld hl, Unknown_10d98 farcall InitAndPrintPauseMenu @@ -1203,10 +1204,10 @@ PCMenu: ; c7ea (3:47ea) call DoFrameIfLCDEnabled ldtx hl, TurnedPCOnText call PrintScrollableText_NoTextBoxLabel - call Func_c84e + call DisplayPCMenu .loop - ld a, $1 - call Func_c29b + ld a, 1 << AUTO_CLOSE_TEXTBOX + call SetOverworldNPCFlags .wait_input call DoFrameIfLCDEnabled call HandleMenuInput @@ -1222,8 +1223,8 @@ PCMenu: ; c7ea (3:47ea) ld a, [wSelectedPCMenuItem] ld hl, PointerTable_c846 call JumpToFunctionInTable - ld hl, Func_c84e - call Func_c32b + ld hl, DisplayPCMenu + call ReturnToOverworldWithCallback jr .loop .exit call CloseTextBox @@ -1232,7 +1233,7 @@ PCMenu: ; c7ea (3:47ea) call Func_c891 call CloseAdvancedDialogueBox xor a - ld [wd112], a + ld [wSongOverride], a call PlayDefaultSong ret @@ -1242,7 +1243,7 @@ PointerTable_c846: ; c846 (3:4846) dw PCMenu_Glossary dw PCMenu_Print -Func_c84e: ; c84e (3:484e) +DisplayPCMenu: ; c84e (3:484e) ld a, [wSelectedPCMenuItem] ld hl, Unknown_10da9 farcall InitAndPrintPauseMenu @@ -1280,8 +1281,8 @@ PCMenu_Print: ; c877 (3:4877) Func_c891: ; c891 (3:4891) push hl - ld a, [wd0c1] - bit 0, a + ld a, [wOverworldNPCFlags] + bit AUTO_CLOSE_TEXTBOX, a jr z, .asm_c8a1 ld hl, wd3b9 ld a, [hli] @@ -1294,8 +1295,8 @@ Func_c891: ; c891 (3:4891) ld [hli], a ld [hl], a pop hl - ld a, $1 - call Func_c29b + ld a, 1 << AUTO_CLOSE_TEXTBOX + call SetOverworldNPCFlags call Func_c241 call Func_c915 call DoFrameIfLCDEnabled @@ -1307,8 +1308,8 @@ Func_c8ba: ; c8ba (3:48ba) or d jr z, Func_c891 push hl - ld a, [wd0c1] - bit 0, a + ld a, [wOverworldNPCFlags] + bit AUTO_CLOSE_TEXTBOX, a jr z, .asm_c8d4 ld hl, wd3b9 ld a, [hli] @@ -1327,8 +1328,8 @@ Func_c8ba: ; c8ba (3:48ba) inc hl ld [hl], d pop hl - ld a, $1 - call Func_c29b + ld a, 1 << AUTO_CLOSE_TEXTBOX + call SetOverworldNPCFlags call Func_c241 call Func_c915 call DoFrameIfLCDEnabled @@ -1340,8 +1341,8 @@ Func_c8ed: ; c8ed (3:48ed) push bc push de push hl - ld a, $1 - call Func_c29b + ld a, 1 << AUTO_CLOSE_TEXTBOX + call SetOverworldNPCFlags call Func_c915 call DoFrameIfLCDEnabled pop hl @@ -2332,7 +2333,7 @@ ScriptCommand_GiveBoosterPacks: ; ce8a (3:4e8a) jr z, .done farcall GiveBoosterPack .done - call Func_c2d4 + call ReturnToOverworldNoCallback jp IncreaseScriptPointerBy4 ScriptCommand_GiveOneOfEachTrainerBooster: ; ceba (3:4eba) @@ -2352,7 +2353,7 @@ ScriptCommand_GiveOneOfEachTrainerBooster: ; ceba (3:4eba) inc hl jr .loop .done - call Func_c2d4 + call ReturnToOverworldNoCallback jp IncreaseScriptPointerBy1 .booster_type_table @@ -2381,7 +2382,7 @@ ScriptCommand_ShowCardReceivedScreen: ; cee2 (3:4ee2) bank1call Func_7594 call WhiteOutDMGPals call DoFrameIfLCDEnabled - call Func_c2d4 + call ReturnToOverworldNoCallback jp IncreaseScriptPointerBy2 .legendary_card @@ -2740,8 +2741,8 @@ ScriptCommand_ShowMedalReceivedScreen: ; d125 (3:5125) push af call Func_c2a3 pop af - farcall Medal_1029e - call Func_c2d4 + farcall ShowMedalReceivedScreen + call ReturnToOverworldNoCallback jp IncreaseScriptPointerBy2 ScriptCommand_LoadCurrentMapNameIntoTxRamSlot: ; d135 (3:5135) @@ -3016,8 +3017,8 @@ ShowMultichoiceTextbox: ; d28c (3:528c) jr z, .no_text call Func_c8ba .no_text - ld a, $1 - call Func_c29b + ld a, 1 << AUTO_CLOSE_TEXTBOX + call SetOverworldNPCFlags pop hl inc hl ld a, [hli] @@ -3131,7 +3132,7 @@ ScriptCommand_OpenDeckMachine: ; d336 (3:5336) farcall HandleDeckSaveMachineMenu .asm_d364 call ResumeSong - call Func_c2d4 + call ReturnToOverworldNoCallback jp IncreaseScriptPointerBy2 ; args: unused, room, new player x, new player y, new player direction @@ -3219,7 +3220,7 @@ ScriptCommand_WalkPlayerToMasonLaboratory: ; d3e0 (3:53e0) ScriptCommand_OverrideSong: ; d3fe (3:53fe) ld a, c - ld [wd112], a + ld [wSongOverride], a call PlaySong jp IncreaseScriptPointerBy2 @@ -5497,7 +5498,7 @@ NPCMovement_e2ab: ; e2ab (3:62ab) Preload_Amy: ; e2ad (3:62ad) xor a ld [wd3d0], a - ld a, [wd0c2] + ld a, [wActiveGameEvent] or a jr z, .asm_e2cf ld a, [wPlayerXCoord] diff --git a/src/engine/bank04.asm b/src/engine/bank04.asm index 81e45d3..6a48c3b 100644 --- a/src/engine/bank04.asm +++ b/src/engine/bank04.asm @@ -152,7 +152,7 @@ LoadCollectedMedalTilemaps: ; 1010c (4:410c) call InitTextPrinting ldtx hl, PlayerStatusMedalsTitleText call PrintTextNoDelay - ld hl, Unknown_1017f + ld hl, MedalCoordsAndTilemaps ld a, EVENT_MEDAL_FLAGS farcall GetEventValue or a @@ -196,7 +196,7 @@ LoadCollectedMedalTilemaps: ; 1010c (4:410c) .asm_1017e ret -Unknown_1017f: ; 1017f (4:417f) +MedalCoordsAndTilemaps: ; 1017f (4:417f) ; x, y, tilemap db 1, 10, TILEMAP_GRASS_MEDAL db 6, 10, TILEMAP_SCIENCE_MEDAL @@ -207,11 +207,11 @@ Unknown_1017f: ; 1017f (4:417f) db 11, 14, TILEMAP_ROCK_MEDAL db 16, 14, TILEMAP_FIGHTING_MEDAL -Func_10197: ; 10197 (4:4197) +FlashReceivedMedal: ; 10197 (4:4197) xor a ld [wd291], a - ld hl, Unknown_1017f - ld a, [wd115] + ld hl, MedalCoordsAndTilemaps + ld a, [wWhichMedal] ld c, a add a add c @@ -223,9 +223,10 @@ Func_10197: ; 10197 (4:4197) ld a, [wMedalScreenYOffset] add [hl] ld c, a - ld a, [wd116] + ld a, [wMedalDisplayTimer] bit 4, a - jr z, .asm_101c3 + jr z, .show +; hide xor a ld e, c ld d, b @@ -233,7 +234,8 @@ Func_10197: ; 10197 (4:4197) lb hl, 0, 0 call FillRectangle ret -.asm_101c3 + +.show inc hl ld a, [hl] ld [wCurTilemap], a @@ -366,10 +368,10 @@ Func_1029a: ; 1029a (4:429a) call DrawPlayerPortrait ret -Medal_1029e: ; 1029e (4:429e) +ShowMedalReceivedScreen: ; 1029e (4:429e) sub $8 ld c, a - ld [wd115], a + ld [wWhichMedal], a ld a, [wd291] push af push bc @@ -397,18 +399,18 @@ Medal_1029e: ; 1029e (4:429e) ld a, MUSIC_MEDAL call PlaySong ld a, $ff - ld [wd116], a -.asm_102e2 + ld [wMedalDisplayTimer], a +.flash_loop call DoFrameIfLCDEnabled - ld a, [wd116] + ld a, [wMedalDisplayTimer] inc a - ld [wd116], a + ld [wMedalDisplayTimer], a and $f - jr nz, .asm_102e2 - call Func_10197 - ld a, [wd116] + jr nz, .flash_loop + call FlashReceivedMedal + ld a, [wMedalDisplayTimer] cp $e0 - jr nz, .asm_102e2 + jr nz, .flash_loop ldtx hl, WonTheMedalText call PrintScrollableText_NoTextBoxLabel call WaitForSongToFinish @@ -2212,8 +2214,8 @@ Unknown_10da9: ; 10da9 (4:4da9) dw NULL ; function pointer if non-0 Func_10dba: ; 10dba (4:4dba) - ld a, $1 - farcall Func_c29b + ld a, 1 << AUTO_CLOSE_TEXTBOX + farcall SetOverworldNPCFlags ld a, [wSelectedGiftCenterMenuItem] ld hl, Unknown_10e17 farcall InitAndPrintPauseMenu @@ -2587,11 +2589,11 @@ OverworldMap_InitVolcanoSprite: ; 10fbc (4:4fbc) ld [hli], a ; x ld a, $10 ld [hl], a ; y - ld b, $34 ; non-cgb volcano smoke + ld b, SPRITE_ANIM_SGB_VOLCANO_SMOKE ld a, [wConsole] cp CONSOLE_CGB jr nz, .not_cgb - ld b, $37 ; cgb volcano smoke + ld b, SPRITE_ANIM_CGB_VOLCANO_SMOKE .not_cgb ld a, b farcall StartNewSpriteAnimation @@ -2606,11 +2608,11 @@ OverworldMap_InitCursorSprite: ; 10fde (4:4fde) call CreateSpriteAndAnimBufferEntry ld a, [wWhichSprite] ld [wOverworldMapCursorSprite], a - ld b, $35 ; non-cgb overworld map cursor + ld b, SPRITE_ANIM_SGB_OWMAP_CURSOR ld a, [wConsole] cp CONSOLE_CGB jr nz, .not_cgb - ld b, $38 ; cgb overworld map cursor + ld b, SPRITE_ANIM_CGB_OWMAP_CURSOR .not_cgb ld a, b ld [wOverworldMapCursorAnimation], a @@ -2625,8 +2627,8 @@ OverworldMap_InitCursorSprite: ; 10fde (4:4fde) .visited_lab ret -; play animation $36 (non-cgb) or $39 (cgb) to make the cursor blink faster -; after a selection is made +; play animation SPRITE_ANIM_SGB_OWMAP_CURSOR_FAST (non-cgb) or SPRITE_ANIM_CGB_OWMAP_CURSOR_FAST (cgb) +; to make the cursor blink faster after a selection is made OverworldMap_UpdateCursorAnimation: ; 11016 (4:5016) ld a, [wOverworldMapCursorSprite] ld [wWhichSprite], a @@ -3484,7 +3486,7 @@ WRAMToSRAMMapper: ; 11498 (4:5498) wram_sram_map wTempPlayerXCoord, 1, $00, $ff ; sTempPlayerXCoord wram_sram_map wTempPlayerYCoord, 1, $00, $ff ; sTempPlayerYCoord wram_sram_map wTempPlayerDirection, 1, $00, $ff ; sTempPlayerDirection - wram_sram_map wd0c2, 1, $00, $ff ; sb814 + wram_sram_map wActiveGameEvent, 1, $00, $ff ; sActiveGameEvent wram_sram_map wDuelResult, 1, $00, $ff ; sDuelResult wram_sram_map wNPCDuelist, 1, $00, $ff ; sNPCDuelist wram_sram_map wChallengeHallNPC, 1, $00, $ff ; sChallengeHallNPC @@ -5798,7 +5800,7 @@ LoadSpriteAnimPointers: ; 12ae2 (4:6ae2) add hl, bc ld [hli], a push hl - ld l, 6 ; 4th entry in MapDataPointers + ld l, 6 ; SpriteAnimations farcall GetMapDataPointer farcall LoadGraphicsPointerFromHL pop hl ; hl is animation bank @@ -6318,7 +6320,7 @@ Scene_ColosseumBooster: ; 12dbf (4:6dbf) db TILEMAP_COLOSSEUM, TILEMAP_COLOSSEUM_CGB, $80, $00 db SPRITE_BOOSTER_PACK_OAM db PALETTE_117, PALETTE_117, $00 - db $ff, $bd, $00, $00 + db $ff, SPRITE_ANIM_189, $00, $00 dw $00 Scene_EvolutionBooster: ; 12dd4 (4:6dd4) @@ -6328,7 +6330,7 @@ Scene_EvolutionBooster: ; 12dd4 (4:6dd4) db TILEMAP_EVOLUTION, TILEMAP_EVOLUTION_CGB, $80, $00 db SPRITE_BOOSTER_PACK_OAM db PALETTE_117, PALETTE_117, $00 - db $ff, $bd, $00, $00 + db $ff, SPRITE_ANIM_189, $00, $00 dw $00 Scene_MysteryBooster: ; 12de9 (4:6de9) @@ -6338,7 +6340,7 @@ Scene_MysteryBooster: ; 12de9 (4:6de9) db TILEMAP_MYSTERY, TILEMAP_MYSTERY_CGB, $80, $00 db SPRITE_BOOSTER_PACK_OAM db PALETTE_117, PALETTE_117, $00 - db $ff, $bd, $00, $00 + db $ff, SPRITE_ANIM_189, $00, $00 dw $00 Scene_LaboratoryBooster: ; 12dfe (4:6dfe) @@ -6348,7 +6350,7 @@ Scene_LaboratoryBooster: ; 12dfe (4:6dfe) db TILEMAP_LABORATORY, TILEMAP_LABORATORY_CGB, $80, $00 db SPRITE_BOOSTER_PACK_OAM db PALETTE_117, PALETTE_117, $00 - db $ff, $bd, $00, $00 + db $ff, SPRITE_ANIM_189, $00, $00 dw $00 Scene_CharizardIntro: ; 12e13 (4:6e13) @@ -6435,7 +6437,7 @@ Scene_GameBoyLinkTransmitting: ; 12e97 (4:6e97) db TILEMAP_GAMEBOY_LINK, TILEMAP_GAMEBOY_LINK_CGB, $90, $00 db SPRITE_DUEL_52 db PALETTE_114, PALETTE_114, $00 - db $b3, $b0, $50, $50 + db SPRITE_ANIM_179, SPRITE_ANIM_176, $50, $50 dw $00 Scene_GameBoyLinkNotConnected: ; 12eac (4:6eac) @@ -6445,7 +6447,7 @@ Scene_GameBoyLinkNotConnected: ; 12eac (4:6eac) db TILEMAP_GAMEBOY_LINK, TILEMAP_GAMEBOY_LINK_CGB, $90, $00 db SPRITE_DUEL_52 db PALETTE_114, PALETTE_114, $00 - db $b4, $b1, $50, $50 + db SPRITE_ANIM_180, SPRITE_ANIM_177, $50, $50 dw $00 Scene_GameBoyPrinterTransmitting: ; 12ec1 (4:6ec1) @@ -6455,7 +6457,7 @@ Scene_GameBoyPrinterTransmitting: ; 12ec1 (4:6ec1) db TILEMAP_GAMEBOY_PRINTER, TILEMAP_GAMEBOY_PRINTER_CGB, $90, $00 db SPRITE_DUEL_53 db PALETTE_115, PALETTE_115, $00 - db $b7, $b5, $50, $30 + db SPRITE_ANIM_183, SPRITE_ANIM_181, $50, $30 dw $00 Scene_GameBoyPrinterNotConnected: ; 12ed6 (4:6ed6) @@ -6465,7 +6467,7 @@ Scene_GameBoyPrinterNotConnected: ; 12ed6 (4:6ed6) db TILEMAP_GAMEBOY_PRINTER, TILEMAP_GAMEBOY_PRINTER_CGB, $90, $00 db SPRITE_DUEL_53 db PALETTE_115, PALETTE_115, $00 - db $b8, $b6, $50, $30 + db SPRITE_ANIM_184, SPRITE_ANIM_182, $50, $30 dw $00 Scene_CardPop: ; 12eeb (4:6eeb) @@ -6475,7 +6477,7 @@ Scene_CardPop: ; 12eeb (4:6eeb) db TILEMAP_CARD_POP, TILEMAP_CARD_POP_CGB, $80, $00 db SPRITE_DUEL_54 db PALETTE_116, PALETTE_116, $00 - db $bb, $b9, $50, $40 + db SPRITE_ANIM_187, SPRITE_ANIM_185, $50, $40 dw $00 Scene_CardPopError: ; 12f00 (4:6f00) @@ -6485,7 +6487,7 @@ Scene_CardPopError: ; 12f00 (4:6f00) db TILEMAP_CARD_POP, TILEMAP_CARD_POP_CGB, $80, $00 db SPRITE_DUEL_54 db PALETTE_116, PALETTE_116, $00 - db $bc, $ba, $50, $40 + db SPRITE_ANIM_188, SPRITE_ANIM_186, $50, $40 dw $00 Scene_Nintendo: ; 12f15 (4:6f15) @@ -7073,7 +7075,7 @@ ChallengeMachine_Duel: ; 13320 (4:7320) call PlaySong call WaitForSongToFinish xor a - ld [wd112], a + ld [wSongOverride], a call SaveGeneralSaveData bank1call StartDuel_VSAIOpp ret diff --git a/src/engine/bank06.asm b/src/engine/bank06.asm index 6ee69a3..3e517d6 100644 --- a/src/engine/bank06.asm +++ b/src/engine/bank06.asm @@ -3,7 +3,7 @@ _CopyCardNameAndLevel: ; 18000 (6:4000) push bc push de - ld [wcd9b], a + ld [wCardNameLength], a ld hl, wLoadedCard1Name ld a, [hli] ld h, [hl] @@ -18,7 +18,7 @@ _CopyCardNameAndLevel: ; 18000 (6:4000) ; the name doesn't start with TX_HALFWIDTH ; this doesn't appear to be ever the case (unless caller manipulates wLoadedCard1Name) - ld a, [wcd9b] + ld a, [wCardNameLength] ld c, a ld a, [wLoadedCard1Type] cp TYPE_ENERGY @@ -91,7 +91,7 @@ _CopyCardNameAndLevel: ; 18000 (6:4000) ; the name starts with TX_HALFWIDTH _CopyCardNameAndLevel_HalfwidthText: ; 18086 (6:4086) - ld a, [wcd9b] + ld a, [wCardNameLength] inc a add a ld b, a @@ -4433,7 +4433,7 @@ InputPlayerName: ; 1a7a3 (6:67a3) ld [wNamingScreenCursorX], a ld [wNamingScreenCursorY], a ld a, $09 - ld [wd005], a + ld [wNamingScreenNumColumns], a ld a, $06 ld [wNamingScreenKeyboardHeight], a ld a, $0f @@ -4651,7 +4651,7 @@ NamingScreen_CheckButtonState: ; 1a908 (6:6908) xor a jr .asm_69a7 .asm_6937 - ld a, [wd005] + ld a, [wNamingScreenNumColumns] ld c, a ld a, h bit D_LEFT_F, b @@ -5297,7 +5297,7 @@ InputDeckName: ; 1ad89 (6:6d89) ld [wNamingScreenCursorY], a ld a, $09 - ld [wd005], a + ld [wNamingScreenNumColumns], a ld a, $07 ld [wNamingScreenKeyboardHeight], a ld a, $0f @@ -5523,7 +5523,7 @@ Func_1aefb: ; 1aefb (6:6efb) .asm_6f2a cp $06 jr z, .asm_6f73 - ld a, [wd005] + ld a, [wNamingScreenNumColumns] ld c, a ld a, h bit 5, b diff --git a/src/engine/bank07.asm b/src/engine/bank07.asm index f5a2826..7114b9e 100644 --- a/src/engine/bank07.asm +++ b/src/engine/bank07.asm @@ -118,11 +118,11 @@ LoadMapHeader: ; 1c33b (7:433b) ld a, [hli] ld c, a ; CGB tilemap variant ld a, [hli] - ld [wd28f], a + ld [wCurMapInitialPalette], a ; always 0? ld a, [hli] - ld [wd132], a + ld [wCurMapSGBPals], a ld a, [hli] - ld [wd290], a + ld [wCurMapPalette], a ld a, [hli] ld [wDefaultSong], a @@ -751,8 +751,8 @@ SetNewScriptNPC: ; 1c768 (7:4768) xor $02 ld [hl], a call UpdateNPCAnimation - ld a, $02 - farcall Func_c29b + ld a, 1 << RESTORE_FACING_DIRECTION + farcall SetOverworldNPCFlags ld a, [wLoadedNPCTempIndex] call GetLoadedNPCID ld a, [hl] @@ -1569,9 +1569,9 @@ Func_1cbcc: ; 1cbcc (7:4bcc) call GetAnimCoordsAndFlags ld a, [wd4b7] - add -3 + add LOW(Unknown_1cbfd) ld e, a - ld a, $4b + ld a, HIGH(Unknown_1cbfd) adc 0 ld d, a ld a, [de] @@ -1586,9 +1586,8 @@ Func_1cbcc: ; 1cbcc (7:4bcc) farcall Func_12ac9 ret -; unreferenced data? Unknown_1cbfd: ; 1cbfd (7:4bfd) - db $f0, $f8, $00, $08, $f8, $f0 + db -$10, -$8, $0, $8, -$8, -$10 Func_1cc03: ; 1cc03 (7:4c03) ld a, [wDuelAnimDamage] @@ -1640,7 +1639,7 @@ Func_1cc3e: ; 1cc3e (7:4c3e) ld a, $03 ld [wd4b7], a ld de, wAnimationQueue + 4 - ld a, $5b + ld a, SPRITE_ANIM_91 call Func_1cbcc pop hl ret @@ -1650,7 +1649,7 @@ Func_1cc4e: ; 1cc4e (7:4c4e) ld a, $04 ld [wd4b7], a ld de, wAnimationQueue + 5 - ld a, $5a + ld a, SPRITE_ANIM_90 call Func_1cbcc ld a, [wd4b8] add $12 @@ -1663,7 +1662,7 @@ Func_1cc66: ; 1cc66 (7:4c66) ld a, $05 ld [wd4b7], a ld de, wAnimationQueue + 6 - ld a, $59 + ld a, SPRITE_ANIM_89 call Func_1cbcc pop hl ret @@ -2438,11 +2437,11 @@ PlayOpeningSequence: ; 1d335 (7:5335) ld [hli], a ; x ld a, 112 ld [hl], a ; y - ld c, $be + ld c, SPRITE_ANIM_190 ld a, [wConsole] cp CONSOLE_CGB jr nz, .asm_1d3c5 - ld c, $bf + ld c, SPRITE_ANIM_191 .asm_1d3c5 ld a, c ld bc, 60 @@ -2532,9 +2531,9 @@ AnimateRandomTitleScreenOrb: ; 1d614 (7:5614) ld [hl], a ; SPRITE_ANIM_COORD_Y ld a, [wConsole] cp CONSOLE_CGB - ld a, $d7 + ld a, SPRITE_ANIM_215 jr nz, .start_anim - ld a, $d8 + ld a, SPRITE_ANIM_216 .start_anim farcall StartSpriteAnimation ret diff --git a/src/engine/bank1c.asm b/src/engine/bank1c.asm index 1ad86fc..d32928a 100644 --- a/src/engine/bank1c.asm +++ b/src/engine/bank1c.asm @@ -461,20 +461,20 @@ ENDM border_medal_tile v0Tiles1 + $53a, $73, $10 border_medal_tile v0Tiles1 + $53c, $74, $10 -; decompresses palette data depending on wd132 +; decompresses palette data depending on wCurMapSGBPals ; then sends it as SGB packet SetSGB2AndSGB3MapPalette: ; 7036a (1c:436a) ld a, [wConsole] cp CONSOLE_SGB ret nz ; return if not SGB - ld a, [wd132] + ld a, [wCurMapSGBPals] or a ret z ; not valid push hl push bc push de - ld a, [wd132] + ld a, [wCurMapSGBPals] add a ld c, a ld b, $0 diff --git a/src/engine/bank20.asm b/src/engine/bank20.asm index cf18ca9..a8c03cc 100644 --- a/src/engine/bank20.asm +++ b/src/engine/bank20.asm @@ -45,11 +45,11 @@ LoadMapTilesAndPals: ; 8003d (20:403d) ld [wVRAMTileOffset], a ld a, [wd291] ld [wd4cb], a - ld a, [wd28f] + ld a, [wCurMapInitialPalette] call SetBGPAndLoadedPal ld a, [wd291] ld [wd4cb], a - ld a, [wd290] + ld a, [wCurMapPalette] or a jr z, .asm_80076 call SetBGPAndLoadedPal @@ -143,7 +143,7 @@ LoadTilemap: ; 80082 (20:4082) ; since one "width" length goes to VRAM0 ; and the other "width" length goes to VRAM1 push hl - ld hl, wd28e + ld hl, wDecompressionRowWidth ld a, [wBGMapWidth] ld [hl], a ld a, [wBGMapCGBMode] @@ -168,7 +168,7 @@ LoadTilemap: ; 80082 (20:4082) push bc push de ld b, $00 - ld a, [wd28e] + ld a, [wDecompressionRowWidth] ld c, a ld de, wDecompressionBuffer call DecompressDataFromBank @@ -402,7 +402,7 @@ LoadGraphicsPointerFromHL: ; 80229 (20:4229) ; unreferenced? Func_80238: ; 80238 (20:4238) push hl - ld l, $2 + ld l, $2 ; Tilesets ld a, [wCurTileset] call GetMapDataPointer call LoadGraphicsPointerFromHL @@ -425,7 +425,7 @@ Func_80238: ; 80238 (20:4238) ; a = number of tiles in sprite Func_8025b: ; 8025b (20:425b) push hl - ld l, $4 + ld l, $4 ; Sprites call GetMapDataPointer call LoadGraphicsPointerFromHL ld a, [hl] ; sprite number of tiles @@ -518,7 +518,7 @@ GetTileOffsetPointerAndSwitchVRAM_Tiles0ToTiles2: ; 802bb (20:42bb) ; loads tileset gfx to VRAM corresponding to wCurTileset LoadTilesetGfx: ; 802d4 (20:42d4) push hl - ld l, $02 + ld l, $02 ; Tilesets ld a, [wCurTileset] call GetMapDataPointer call LoadGraphicsPointerFromHL @@ -680,7 +680,7 @@ LoadTilesetGfx: ; 802d4 (20:42d4) ; gets pointer to BG map with ID from wCurTilemap Func_803b9: ; 803b9 (20:43b9) - ld l, $00 + ld l, $00 ; Tilemaps ld a, [wCurTilemap] call GetMapDataPointer call LoadGraphicsPointerFromHL @@ -828,7 +828,7 @@ LoadPaletteDataToBuffer: ; 80456 (20:4456) push hl push bc push de - ld l, $08 + ld l, $08 ; Palettes call GetMapDataPointer call LoadGraphicsPointerFromHL @@ -1512,50 +1512,50 @@ Func_80cd7: ; 80cd7 (20:4cd7) ret .NPCSpriteAnimData - db SPRITE_OW_PLAYER, $00, $1e ; $01 - db $ff, $00, $00 ; $02 - db SPRITE_OW_RONALD, $04, $0e ; $03 - db $ff, $00, $00 ; $04 - db SPRITE_OW_DRMASON, $00, $26 ; $05 - db SPRITE_OW_ISHIHARA, $04, $22 ; $06 - db SPRITE_OW_IMAKUNI, $00, $0e ; $07 - db SPRITE_OW_NIKKI, $00, $1a ; $08 - db SPRITE_OW_RICK, $00, $0e ; $09 - db SPRITE_OW_KEN, $04, $1e ; $0a - db SPRITE_OW_AMY, $04, $0e ; $0b - db SPRITE_OW_ISAAC, $00, $16 ; $0c - db SPRITE_OW_MITCH, $00, $0e ; $0d - db SPRITE_OW_GENE, $04, $22 ; $0e - db SPRITE_OW_MURRAY, $00, $12 ; $0f - db SPRITE_OW_COURTNEY, $00, $12 ; $10 - db $ff, $00, $00 ; $11 - db SPRITE_OW_STEVE, $00, $2a ; $12 - db $ff, $00, $00 ; $13 - db SPRITE_OW_JACK, $00, $26 ; $14 - db $ff, $00, $00 ; $15 - db SPRITE_OW_ROD, $00, $0e ; $16 - db $ff, $00, $00 ; $17 - db SPRITE_OW_BOY, $04, $16 ; $18 - db SPRITE_OW_LAD, $04, $1a ; $19 - db SPRITE_OW_SPECS, $00, $22 ; $1a - db SPRITE_OW_BUTCH, $00, $16 ; $1b - db SPRITE_OW_MANIA, $00, $26 ; $1c - db SPRITE_OW_JOSHUA, $00, $26 ; $1d - db SPRITE_OW_HOOD, $04, $1e ; $1e - db SPRITE_OW_TECH, $00, $0e ; $1f - db SPRITE_OW_CHAP, $00, $1a ; $20 - db SPRITE_OW_MAN, $00, $16 ; $21 - db SPRITE_OW_PAPPY, $00, $22 ; $22 - db SPRITE_OW_GIRL, $04, $0e ; $23 - db SPRITE_OW_LASS1, $04, $22 ; $24 - db SPRITE_OW_LASS2, $00, $1e ; $25 - db SPRITE_OW_LASS3, $04, $1a ; $26 - db SPRITE_OW_SWIMMER, $00, $16 ; $27 - db SPRITE_OW_CLERK, $0a, $30 ; $28 - db SPRITE_OW_GAL, $00, $16 ; $29 - db SPRITE_OW_WOMAN, $04, $1e ; $2a - db SPRITE_OW_GRANNY, $00, $16 ; $2b - db SPRITE_OW_AMY, $08, $2e ; $2c + db SPRITE_OW_PLAYER, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_RED_NPC_UP ; $01 + db $ff, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_LIGHT_NPC_UP ; $02 + db SPRITE_OW_RONALD, SPRITE_ANIM_DARK_NPC_UP, SPRITE_ANIM_BLUE_NPC_UP ; $03 + db $ff, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_LIGHT_NPC_UP ; $04 + db SPRITE_OW_DRMASON, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_WHITE_NPC_UP ; $05 + db SPRITE_OW_ISHIHARA, SPRITE_ANIM_DARK_NPC_UP, SPRITE_ANIM_PURPLE_NPC_UP ; $06 + db SPRITE_OW_IMAKUNI, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_BLUE_NPC_UP ; $07 + db SPRITE_OW_NIKKI, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_GREEN_NPC_UP ; $08 + db SPRITE_OW_RICK, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_BLUE_NPC_UP ; $09 + db SPRITE_OW_KEN, SPRITE_ANIM_DARK_NPC_UP, SPRITE_ANIM_RED_NPC_UP ; $0a + db SPRITE_OW_AMY, SPRITE_ANIM_DARK_NPC_UP, SPRITE_ANIM_BLUE_NPC_UP ; $0b + db SPRITE_OW_ISAAC, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_YELLOW_NPC_UP ; $0c + db SPRITE_OW_MITCH, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_BLUE_NPC_UP ; $0d + db SPRITE_OW_GENE, SPRITE_ANIM_DARK_NPC_UP, SPRITE_ANIM_PURPLE_NPC_UP ; $0e + db SPRITE_OW_MURRAY, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_PINK_NPC_UP ; $0f + db SPRITE_OW_COURTNEY, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_PINK_NPC_UP ; $10 + db $ff, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_LIGHT_NPC_UP ; $11 + db SPRITE_OW_STEVE, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_INDIGO_NPC_UP ; $12 + db $ff, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_LIGHT_NPC_UP ; $13 + db SPRITE_OW_JACK, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_WHITE_NPC_UP ; $14 + db $ff, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_LIGHT_NPC_UP ; $15 + db SPRITE_OW_ROD, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_BLUE_NPC_UP ; $16 + db $ff, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_LIGHT_NPC_UP ; $17 + db SPRITE_OW_BOY, SPRITE_ANIM_DARK_NPC_UP, SPRITE_ANIM_YELLOW_NPC_UP ; $18 + db SPRITE_OW_LAD, SPRITE_ANIM_DARK_NPC_UP, SPRITE_ANIM_GREEN_NPC_UP ; $19 + db SPRITE_OW_SPECS, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_PURPLE_NPC_UP ; $1a + db SPRITE_OW_BUTCH, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_YELLOW_NPC_UP ; $1b + db SPRITE_OW_MANIA, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_WHITE_NPC_UP ; $1c + db SPRITE_OW_JOSHUA, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_WHITE_NPC_UP ; $1d + db SPRITE_OW_HOOD, SPRITE_ANIM_DARK_NPC_UP, SPRITE_ANIM_RED_NPC_UP ; $1e + db SPRITE_OW_TECH, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_BLUE_NPC_UP ; $1f + db SPRITE_OW_CHAP, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_GREEN_NPC_UP ; $20 + db SPRITE_OW_MAN, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_YELLOW_NPC_UP ; $21 + db SPRITE_OW_PAPPY, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_PURPLE_NPC_UP ; $22 + db SPRITE_OW_GIRL, SPRITE_ANIM_DARK_NPC_UP, SPRITE_ANIM_BLUE_NPC_UP ; $23 + db SPRITE_OW_LASS1, SPRITE_ANIM_DARK_NPC_UP, SPRITE_ANIM_PURPLE_NPC_UP ; $24 + db SPRITE_OW_LASS2, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_RED_NPC_UP ; $25 + db SPRITE_OW_LASS3, SPRITE_ANIM_DARK_NPC_UP, SPRITE_ANIM_GREEN_NPC_UP ; $26 + db SPRITE_OW_SWIMMER, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_YELLOW_NPC_UP ; $27 + db SPRITE_OW_CLERK, SPRITE_ANIM_SGB_CLERK_NPC_UP, SPRITE_ANIM_CGB_CLERK_NPC_UP ; $28 + db SPRITE_OW_GAL, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_YELLOW_NPC_UP ; $29 + db SPRITE_OW_WOMAN, SPRITE_ANIM_DARK_NPC_UP, SPRITE_ANIM_RED_NPC_UP ; $2a + db SPRITE_OW_GRANNY, SPRITE_ANIM_LIGHT_NPC_UP, SPRITE_ANIM_YELLOW_NPC_UP ; $2b + db SPRITE_OW_AMY, SPRITE_ANIM_SGB_AMY_LAYING, SPRITE_ANIM_CGB_AMY_LAYING ; $2c SpriteNullAnimationPointer: ; 80e5a (20:4e5a) dw SpriteNullAnimationFrame @@ -1567,9 +1567,9 @@ SpriteNullAnimationFrame: MapDataPointers: ; 80e5d (20:4e5d) dw Tilemaps dw Tilesets - dw MapDataPointers_8116b - dw SpriteAnimationPointers - dw MapDataPointers_81697 + dw Sprites + dw SpriteAnimations + dw Palettes ; \1 = pointer ; \2 = tileset @@ -1785,11 +1785,11 @@ Tilesets: ; 8100f (20:500f) ; \1 = gfx pointer ; \2 = number of tiles gfx_pointer: MACRO - dwb \1, BANK(\1) - BANK(MapDataPointers_8116b) + dwb \1, BANK(\1) - BANK(Sprites) db \2 ENDM -MapDataPointers_8116b: ; 8116b (20:516b) +Sprites: ; 8116b (20:516b) gfx_pointer OWPlayerGfx, $14 ; SPRITE_OW_PLAYER gfx_pointer OWRonaldGfx, $14 ; SPRITE_OW_RONALD gfx_pointer OWDrMasonGfx, $14 ; SPRITE_OW_DRMASON @@ -1907,238 +1907,238 @@ MapDataPointers_8116b: ; 8116b (20:516b) ; \1 = anim data pointer anim_data_pointer: MACRO - dwb \1, BANK(\1) - BANK(SpriteAnimationPointers) + dwb \1, BANK(\1) - BANK(SpriteAnimations) db $00 ; unused (padding?) ENDM -SpriteAnimationPointers: ; 81333 (20:5333) - anim_data_pointer AnimData0 ; $00 - anim_data_pointer AnimData1 ; $01 - anim_data_pointer AnimData2 ; $02 - anim_data_pointer AnimData3 ; $03 - anim_data_pointer AnimData4 ; $04 - anim_data_pointer AnimData5 ; $05 - anim_data_pointer AnimData6 ; $06 - anim_data_pointer AnimData7 ; $07 - anim_data_pointer AnimData8 ; $08 - anim_data_pointer AnimData9 ; $09 - anim_data_pointer AnimData10 ; $0a - anim_data_pointer AnimData11 ; $0b - anim_data_pointer AnimData12 ; $0c - anim_data_pointer AnimData13 ; $0d - anim_data_pointer AnimData14 ; $0e - anim_data_pointer AnimData15 ; $0f - anim_data_pointer AnimData16 ; $10 - anim_data_pointer AnimData17 ; $11 - anim_data_pointer AnimData18 ; $12 - anim_data_pointer AnimData19 ; $13 - anim_data_pointer AnimData20 ; $14 - anim_data_pointer AnimData21 ; $15 - anim_data_pointer AnimData22 ; $16 - anim_data_pointer AnimData23 ; $17 - anim_data_pointer AnimData24 ; $18 - anim_data_pointer AnimData25 ; $19 - anim_data_pointer AnimData26 ; $1a - anim_data_pointer AnimData27 ; $1b - anim_data_pointer AnimData28 ; $1c - anim_data_pointer AnimData29 ; $1d - anim_data_pointer AnimData30 ; $1e - anim_data_pointer AnimData31 ; $1f - anim_data_pointer AnimData32 ; $20 - anim_data_pointer AnimData33 ; $21 - anim_data_pointer AnimData34 ; $22 - anim_data_pointer AnimData35 ; $23 - anim_data_pointer AnimData36 ; $24 - anim_data_pointer AnimData37 ; $25 - anim_data_pointer AnimData38 ; $26 - anim_data_pointer AnimData39 ; $27 - anim_data_pointer AnimData40 ; $28 - anim_data_pointer AnimData41 ; $29 - anim_data_pointer AnimData42 ; $2a - anim_data_pointer AnimData43 ; $2b - anim_data_pointer AnimData44 ; $2c - anim_data_pointer AnimData45 ; $2d - anim_data_pointer AnimData46 ; $2e - anim_data_pointer AnimData47 ; $2f - anim_data_pointer AnimData48 ; $30 - anim_data_pointer AnimData49 ; $31 - anim_data_pointer AnimData50 ; $32 - anim_data_pointer AnimData51 ; $33 - anim_data_pointer AnimData52 ; $34 - anim_data_pointer AnimData53 ; $35 - anim_data_pointer AnimData54 ; $36 - anim_data_pointer AnimData55 ; $37 - anim_data_pointer AnimData56 ; $38 - anim_data_pointer AnimData57 ; $39 - anim_data_pointer AnimData58 ; $3a - anim_data_pointer AnimData59 ; $3b - anim_data_pointer AnimData60 ; $3c - anim_data_pointer AnimData61 ; $3d - anim_data_pointer AnimData62 ; $3e - anim_data_pointer AnimData63 ; $3f - anim_data_pointer AnimData64 ; $40 - anim_data_pointer AnimData65 ; $41 - anim_data_pointer AnimData66 ; $42 - anim_data_pointer AnimData67 ; $43 - anim_data_pointer AnimData68 ; $44 - anim_data_pointer AnimData69 ; $45 - anim_data_pointer AnimData70 ; $46 - anim_data_pointer AnimData71 ; $47 - anim_data_pointer AnimData72 ; $48 - anim_data_pointer AnimData73 ; $49 - anim_data_pointer AnimData74 ; $4a - anim_data_pointer AnimData75 ; $4b - anim_data_pointer AnimData76 ; $4c - anim_data_pointer AnimData77 ; $4d - anim_data_pointer AnimData78 ; $4e - anim_data_pointer AnimData79 ; $4f - anim_data_pointer AnimData80 ; $50 - anim_data_pointer AnimData81 ; $51 - anim_data_pointer AnimData82 ; $52 - anim_data_pointer AnimData83 ; $53 - anim_data_pointer AnimData84 ; $54 - anim_data_pointer AnimData85 ; $55 - anim_data_pointer AnimData86 ; $56 - anim_data_pointer AnimData87 ; $57 - anim_data_pointer AnimData88 ; $58 - anim_data_pointer AnimData89 ; $59 - anim_data_pointer AnimData90 ; $5a - anim_data_pointer AnimData91 ; $5b - anim_data_pointer AnimData92 ; $5c - anim_data_pointer AnimData93 ; $5d - anim_data_pointer AnimData94 ; $5e - anim_data_pointer AnimData95 ; $5f - anim_data_pointer AnimData96 ; $60 - anim_data_pointer AnimData97 ; $61 - anim_data_pointer AnimData98 ; $62 - anim_data_pointer AnimData99 ; $63 - anim_data_pointer AnimData100 ; $64 - anim_data_pointer AnimData101 ; $65 - anim_data_pointer AnimData102 ; $66 - anim_data_pointer AnimData103 ; $67 - anim_data_pointer AnimData104 ; $68 - anim_data_pointer AnimData105 ; $69 - anim_data_pointer AnimData106 ; $6a - anim_data_pointer AnimData107 ; $6b - anim_data_pointer AnimData108 ; $6c - anim_data_pointer AnimData109 ; $6d - anim_data_pointer AnimData110 ; $6e - anim_data_pointer AnimData111 ; $6f - anim_data_pointer AnimData112 ; $70 - anim_data_pointer AnimData113 ; $71 - anim_data_pointer AnimData114 ; $72 - anim_data_pointer AnimData115 ; $73 - anim_data_pointer AnimData116 ; $74 - anim_data_pointer AnimData117 ; $75 - anim_data_pointer AnimData118 ; $76 - anim_data_pointer AnimData119 ; $77 - anim_data_pointer AnimData120 ; $78 - anim_data_pointer AnimData121 ; $79 - anim_data_pointer AnimData122 ; $7a - anim_data_pointer AnimData123 ; $7b - anim_data_pointer AnimData124 ; $7c - anim_data_pointer AnimData125 ; $7d - anim_data_pointer AnimData126 ; $7e - anim_data_pointer AnimData127 ; $7f - anim_data_pointer AnimData128 ; $80 - anim_data_pointer AnimData129 ; $81 - anim_data_pointer AnimData130 ; $82 - anim_data_pointer AnimData131 ; $83 - anim_data_pointer AnimData132 ; $84 - anim_data_pointer AnimData133 ; $85 - anim_data_pointer AnimData134 ; $86 - anim_data_pointer AnimData135 ; $87 - anim_data_pointer AnimData136 ; $88 - anim_data_pointer AnimData137 ; $89 - anim_data_pointer AnimData138 ; $8a - anim_data_pointer AnimData139 ; $8b - anim_data_pointer AnimData140 ; $8c - anim_data_pointer AnimData141 ; $8d - anim_data_pointer AnimData142 ; $8e - anim_data_pointer AnimData143 ; $8f - anim_data_pointer AnimData144 ; $90 - anim_data_pointer AnimData145 ; $91 - anim_data_pointer AnimData146 ; $92 - anim_data_pointer AnimData147 ; $93 - anim_data_pointer AnimData148 ; $94 - anim_data_pointer AnimData149 ; $95 - anim_data_pointer AnimData150 ; $96 - anim_data_pointer AnimData151 ; $97 - anim_data_pointer AnimData152 ; $98 - anim_data_pointer AnimData153 ; $99 - anim_data_pointer AnimData154 ; $9a - anim_data_pointer AnimData155 ; $9b - anim_data_pointer AnimData156 ; $9c - anim_data_pointer AnimData157 ; $9d - anim_data_pointer AnimData158 ; $9e - anim_data_pointer AnimData159 ; $9f - anim_data_pointer AnimData160 ; $a0 - anim_data_pointer AnimData161 ; $a1 - anim_data_pointer AnimData162 ; $a2 - anim_data_pointer AnimData163 ; $a3 - anim_data_pointer AnimData164 ; $a4 - anim_data_pointer AnimData165 ; $a5 - anim_data_pointer AnimData166 ; $a6 - anim_data_pointer AnimData167 ; $a7 - anim_data_pointer AnimData168 ; $a8 - anim_data_pointer AnimData169 ; $a9 - anim_data_pointer AnimData170 ; $aa - anim_data_pointer AnimData171 ; $ab - anim_data_pointer AnimData172 ; $ac - anim_data_pointer AnimData173 ; $ad - anim_data_pointer AnimData174 ; $ae - anim_data_pointer AnimData175 ; $af - anim_data_pointer AnimData176 ; $b0 - anim_data_pointer AnimData177 ; $b1 - anim_data_pointer AnimData178 ; $b2 - anim_data_pointer AnimData179 ; $b3 - anim_data_pointer AnimData180 ; $b4 - anim_data_pointer AnimData181 ; $b5 - anim_data_pointer AnimData182 ; $b6 - anim_data_pointer AnimData183 ; $b7 - anim_data_pointer AnimData184 ; $b8 - anim_data_pointer AnimData185 ; $b9 - anim_data_pointer AnimData186 ; $ba - anim_data_pointer AnimData187 ; $bb - anim_data_pointer AnimData188 ; $bc - anim_data_pointer AnimData189 ; $bd - anim_data_pointer AnimData190 ; $be - anim_data_pointer AnimData191 ; $bf - anim_data_pointer AnimData192 ; $c0 - anim_data_pointer AnimData193 ; $c1 - anim_data_pointer AnimData194 ; $c2 - anim_data_pointer AnimData195 ; $c3 - anim_data_pointer AnimData196 ; $c4 - anim_data_pointer AnimData197 ; $c5 - anim_data_pointer AnimData198 ; $c6 - anim_data_pointer AnimData199 ; $c7 - anim_data_pointer AnimData200 ; $c8 - anim_data_pointer AnimData201 ; $c9 - anim_data_pointer AnimData202 ; $ca - anim_data_pointer AnimData203 ; $cb - anim_data_pointer AnimData204 ; $cc - anim_data_pointer AnimData205 ; $cd - anim_data_pointer AnimData206 ; $ce - anim_data_pointer AnimData207 ; $cf - anim_data_pointer AnimData208 ; $d0 - anim_data_pointer AnimData209 ; $d1 - anim_data_pointer AnimData210 ; $d2 - anim_data_pointer AnimData211 ; $d3 - anim_data_pointer AnimData212 ; $d4 - anim_data_pointer AnimData213 ; $d5 - anim_data_pointer AnimData214 ; $d6 - anim_data_pointer AnimData215 ; $d7 - anim_data_pointer AnimData216 ; $d8 +SpriteAnimations: ; 81333 (20:5333) + anim_data_pointer AnimData0 ; SPRITE_ANIM_LIGHT_NPC_UP + anim_data_pointer AnimData1 ; SPRITE_ANIM_LIGHT_NPC_RIGHT + anim_data_pointer AnimData2 ; SPRITE_ANIM_LIGHT_NPC_DOWN + anim_data_pointer AnimData3 ; SPRITE_ANIM_LIGHT_NPC_LEFT + anim_data_pointer AnimData4 ; SPRITE_ANIM_DARK_NPC_UP + anim_data_pointer AnimData5 ; SPRITE_ANIM_DARK_NPC_RIGHT + anim_data_pointer AnimData6 ; SPRITE_ANIM_DARK_NPC_DOWN + anim_data_pointer AnimData7 ; SPRITE_ANIM_DARK_NPC_LEFT + anim_data_pointer AnimData8 ; SPRITE_ANIM_SGB_AMY_LAYING + anim_data_pointer AnimData9 ; SPRITE_ANIM_SGB_AMY_STAND + anim_data_pointer AnimData10 ; SPRITE_ANIM_SGB_CLERK_NPC_UP + anim_data_pointer AnimData11 ; SPRITE_ANIM_SGB_CLERK_NPC_RIGHT + anim_data_pointer AnimData12 ; SPRITE_ANIM_SGB_CLERK_NPC_DOWN + anim_data_pointer AnimData13 ; SPRITE_ANIM_SGB_CLERK_NPC_LEFT + anim_data_pointer AnimData14 ; SPRITE_ANIM_BLUE_NPC_UP + anim_data_pointer AnimData15 ; SPRITE_ANIM_BLUE_NPC_RIGHT + anim_data_pointer AnimData16 ; SPRITE_ANIM_BLUE_NPC_DOWN + anim_data_pointer AnimData17 ; SPRITE_ANIM_BLUE_NPC_LEFT + anim_data_pointer AnimData18 ; SPRITE_ANIM_PINK_NPC_UP + anim_data_pointer AnimData19 ; SPRITE_ANIM_PINK_NPC_RIGHT + anim_data_pointer AnimData20 ; SPRITE_ANIM_PINK_NPC_DOWN + anim_data_pointer AnimData21 ; SPRITE_ANIM_PINK_NPC_LEFT + anim_data_pointer AnimData22 ; SPRITE_ANIM_YELLOW_NPC_UP + anim_data_pointer AnimData23 ; SPRITE_ANIM_YELLOW_NPC_RIGHT + anim_data_pointer AnimData24 ; SPRITE_ANIM_YELLOW_NPC_DOWN + anim_data_pointer AnimData25 ; SPRITE_ANIM_YELLOW_NPC_LEFT + anim_data_pointer AnimData26 ; SPRITE_ANIM_GREEN_NPC_UP + anim_data_pointer AnimData27 ; SPRITE_ANIM_GREEN_NPC_RIGHT + anim_data_pointer AnimData28 ; SPRITE_ANIM_GREEN_NPC_DOWN + anim_data_pointer AnimData29 ; SPRITE_ANIM_GREEN_NPC_LEFT + anim_data_pointer AnimData30 ; SPRITE_ANIM_RED_NPC_UP + anim_data_pointer AnimData31 ; SPRITE_ANIM_RED_NPC_RIGHT + anim_data_pointer AnimData32 ; SPRITE_ANIM_RED_NPC_DOWN + anim_data_pointer AnimData33 ; SPRITE_ANIM_RED_NPC_LEFT + anim_data_pointer AnimData34 ; SPRITE_ANIM_PURPLE_NPC_UP + anim_data_pointer AnimData35 ; SPRITE_ANIM_PURPLE_NPC_RIGHT + anim_data_pointer AnimData36 ; SPRITE_ANIM_PURPLE_NPC_DOWN + anim_data_pointer AnimData37 ; SPRITE_ANIM_PURPLE_NPC_LEFT + anim_data_pointer AnimData38 ; SPRITE_ANIM_WHITE_NPC_UP + anim_data_pointer AnimData39 ; SPRITE_ANIM_WHITE_NPC_RIGHT + anim_data_pointer AnimData40 ; SPRITE_ANIM_WHITE_NPC_DOWN + anim_data_pointer AnimData41 ; SPRITE_ANIM_WHITE_NPC_LEFT + anim_data_pointer AnimData42 ; SPRITE_ANIM_INDIGO_NPC_UP + anim_data_pointer AnimData43 ; SPRITE_ANIM_INDIGO_NPC_RIGHT + anim_data_pointer AnimData44 ; SPRITE_ANIM_INDIGO_NPC_DOWN + anim_data_pointer AnimData45 ; SPRITE_ANIM_INDIGO_NPC_LEFT + anim_data_pointer AnimData46 ; SPRITE_ANIM_CGB_AMY_LAYING + anim_data_pointer AnimData47 ; SPRITE_ANIM_CGB_AMY_STAND + anim_data_pointer AnimData48 ; SPRITE_ANIM_CGB_CLERK_NPC_UP + anim_data_pointer AnimData49 ; SPRITE_ANIM_CGB_CLERK_NPC_RIGHT + anim_data_pointer AnimData50 ; SPRITE_ANIM_CGB_CLERK_NPC_DOWN + anim_data_pointer AnimData51 ; SPRITE_ANIM_CGB_CLERK_NPC_LEFT + anim_data_pointer AnimData52 ; SPRITE_ANIM_SGB_VOLCANO_SMOKE + anim_data_pointer AnimData53 ; SPRITE_ANIM_SGB_OWMAP_CURSOR + anim_data_pointer AnimData54 ; SPRITE_ANIM_SGB_OWMAP_CURSOR_FAST + anim_data_pointer AnimData55 ; SPRITE_ANIM_CGB_VOLCANO_SMOKE + anim_data_pointer AnimData56 ; SPRITE_ANIM_CGB_OWMAP_CURSOR + anim_data_pointer AnimData57 ; SPRITE_ANIM_CGB_OWMAP_CURSOR_FAST + anim_data_pointer AnimData58 ; SPRITE_ANIM_TORCH + anim_data_pointer AnimData59 ; SPRITE_ANIM_SGB_CARD_TOP_LEFT + anim_data_pointer AnimData60 ; SPRITE_ANIM_SGB_CARD_TOP_RIGHT + anim_data_pointer AnimData61 ; SPRITE_ANIM_SGB_CARD_LEFT_SPARK + anim_data_pointer AnimData62 ; SPRITE_ANIM_SGB_CARD_BOTTOM_LEFT + anim_data_pointer AnimData63 ; SPRITE_ANIM_SGB_CARD_BOTTOM_RIGHT + anim_data_pointer AnimData64 ; SPRITE_ANIM_SGB_CARD_RIGHT_SPARK + anim_data_pointer AnimData65 ; SPRITE_ANIM_CGB_CARD_TOP_LEFT + anim_data_pointer AnimData66 ; SPRITE_ANIM_CGB_CARD_TOP_RIGHT + anim_data_pointer AnimData67 ; SPRITE_ANIM_CGB_CARD_LEFT_SPARK + anim_data_pointer AnimData68 ; SPRITE_ANIM_CGB_CARD_BOTTOM_LEFT + anim_data_pointer AnimData69 ; SPRITE_ANIM_CGB_CARD_BOTTOM_RIGHT + anim_data_pointer AnimData70 ; SPRITE_ANIM_CGB_CARD_RIGHT_SPARK + anim_data_pointer AnimData71 ; SPRITE_ANIM_71 + anim_data_pointer AnimData72 ; SPRITE_ANIM_72 + anim_data_pointer AnimData73 ; SPRITE_ANIM_73 + anim_data_pointer AnimData74 ; SPRITE_ANIM_74 + anim_data_pointer AnimData75 ; SPRITE_ANIM_75 + anim_data_pointer AnimData76 ; SPRITE_ANIM_76 + anim_data_pointer AnimData77 ; SPRITE_ANIM_77 + anim_data_pointer AnimData78 ; SPRITE_ANIM_78 + anim_data_pointer AnimData79 ; SPRITE_ANIM_79 + anim_data_pointer AnimData80 ; SPRITE_ANIM_80 + anim_data_pointer AnimData81 ; SPRITE_ANIM_81 + anim_data_pointer AnimData82 ; SPRITE_ANIM_82 + anim_data_pointer AnimData83 ; SPRITE_ANIM_83 + anim_data_pointer AnimData84 ; SPRITE_ANIM_84 + anim_data_pointer AnimData85 ; SPRITE_ANIM_85 + anim_data_pointer AnimData86 ; SPRITE_ANIM_86 + anim_data_pointer AnimData87 ; SPRITE_ANIM_87 + anim_data_pointer AnimData88 ; SPRITE_ANIM_88 + anim_data_pointer AnimData89 ; SPRITE_ANIM_89 + anim_data_pointer AnimData90 ; SPRITE_ANIM_90 + anim_data_pointer AnimData91 ; SPRITE_ANIM_91 + anim_data_pointer AnimData92 ; SPRITE_ANIM_92 + anim_data_pointer AnimData93 ; SPRITE_ANIM_93 + anim_data_pointer AnimData94 ; SPRITE_ANIM_94 + anim_data_pointer AnimData95 ; SPRITE_ANIM_95 + anim_data_pointer AnimData96 ; SPRITE_ANIM_96 + anim_data_pointer AnimData97 ; SPRITE_ANIM_97 + anim_data_pointer AnimData98 ; SPRITE_ANIM_98 + anim_data_pointer AnimData99 ; SPRITE_ANIM_99 + anim_data_pointer AnimData100 ; SPRITE_ANIM_100 + anim_data_pointer AnimData101 ; SPRITE_ANIM_101 + anim_data_pointer AnimData102 ; SPRITE_ANIM_102 + anim_data_pointer AnimData103 ; SPRITE_ANIM_103 + anim_data_pointer AnimData104 ; SPRITE_ANIM_104 + anim_data_pointer AnimData105 ; SPRITE_ANIM_105 + anim_data_pointer AnimData106 ; SPRITE_ANIM_106 + anim_data_pointer AnimData107 ; SPRITE_ANIM_107 + anim_data_pointer AnimData108 ; SPRITE_ANIM_108 + anim_data_pointer AnimData109 ; SPRITE_ANIM_109 + anim_data_pointer AnimData110 ; SPRITE_ANIM_110 + anim_data_pointer AnimData111 ; SPRITE_ANIM_111 + anim_data_pointer AnimData112 ; SPRITE_ANIM_112 + anim_data_pointer AnimData113 ; SPRITE_ANIM_113 + anim_data_pointer AnimData114 ; SPRITE_ANIM_114 + anim_data_pointer AnimData115 ; SPRITE_ANIM_115 + anim_data_pointer AnimData116 ; SPRITE_ANIM_116 + anim_data_pointer AnimData117 ; SPRITE_ANIM_117 + anim_data_pointer AnimData118 ; SPRITE_ANIM_118 + anim_data_pointer AnimData119 ; SPRITE_ANIM_119 + anim_data_pointer AnimData120 ; SPRITE_ANIM_120 + anim_data_pointer AnimData121 ; SPRITE_ANIM_121 + anim_data_pointer AnimData122 ; SPRITE_ANIM_122 + anim_data_pointer AnimData123 ; SPRITE_ANIM_123 + anim_data_pointer AnimData124 ; SPRITE_ANIM_124 + anim_data_pointer AnimData125 ; SPRITE_ANIM_125 + anim_data_pointer AnimData126 ; SPRITE_ANIM_126 + anim_data_pointer AnimData127 ; SPRITE_ANIM_127 + anim_data_pointer AnimData128 ; SPRITE_ANIM_128 + anim_data_pointer AnimData129 ; SPRITE_ANIM_129 + anim_data_pointer AnimData130 ; SPRITE_ANIM_130 + anim_data_pointer AnimData131 ; SPRITE_ANIM_131 + anim_data_pointer AnimData132 ; SPRITE_ANIM_132 + anim_data_pointer AnimData133 ; SPRITE_ANIM_133 + anim_data_pointer AnimData134 ; SPRITE_ANIM_134 + anim_data_pointer AnimData135 ; SPRITE_ANIM_135 + anim_data_pointer AnimData136 ; SPRITE_ANIM_136 + anim_data_pointer AnimData137 ; SPRITE_ANIM_137 + anim_data_pointer AnimData138 ; SPRITE_ANIM_138 + anim_data_pointer AnimData139 ; SPRITE_ANIM_139 + anim_data_pointer AnimData140 ; SPRITE_ANIM_140 + anim_data_pointer AnimData141 ; SPRITE_ANIM_141 + anim_data_pointer AnimData142 ; SPRITE_ANIM_142 + anim_data_pointer AnimData143 ; SPRITE_ANIM_143 + anim_data_pointer AnimData144 ; SPRITE_ANIM_144 + anim_data_pointer AnimData145 ; SPRITE_ANIM_145 + anim_data_pointer AnimData146 ; SPRITE_ANIM_146 + anim_data_pointer AnimData147 ; SPRITE_ANIM_147 + anim_data_pointer AnimData148 ; SPRITE_ANIM_148 + anim_data_pointer AnimData149 ; SPRITE_ANIM_149 + anim_data_pointer AnimData150 ; SPRITE_ANIM_150 + anim_data_pointer AnimData151 ; SPRITE_ANIM_151 + anim_data_pointer AnimData152 ; SPRITE_ANIM_152 + anim_data_pointer AnimData153 ; SPRITE_ANIM_153 + anim_data_pointer AnimData154 ; SPRITE_ANIM_154 + anim_data_pointer AnimData155 ; SPRITE_ANIM_155 + anim_data_pointer AnimData156 ; SPRITE_ANIM_156 + anim_data_pointer AnimData157 ; SPRITE_ANIM_157 + anim_data_pointer AnimData158 ; SPRITE_ANIM_158 + anim_data_pointer AnimData159 ; SPRITE_ANIM_159 + anim_data_pointer AnimData160 ; SPRITE_ANIM_160 + anim_data_pointer AnimData161 ; SPRITE_ANIM_161 + anim_data_pointer AnimData162 ; SPRITE_ANIM_162 + anim_data_pointer AnimData163 ; SPRITE_ANIM_163 + anim_data_pointer AnimData164 ; SPRITE_ANIM_164 + anim_data_pointer AnimData165 ; SPRITE_ANIM_165 + anim_data_pointer AnimData166 ; SPRITE_ANIM_166 + anim_data_pointer AnimData167 ; SPRITE_ANIM_167 + anim_data_pointer AnimData168 ; SPRITE_ANIM_168 + anim_data_pointer AnimData169 ; SPRITE_ANIM_169 + anim_data_pointer AnimData170 ; SPRITE_ANIM_170 + anim_data_pointer AnimData171 ; SPRITE_ANIM_171 + anim_data_pointer AnimData172 ; SPRITE_ANIM_172 + anim_data_pointer AnimData173 ; SPRITE_ANIM_173 + anim_data_pointer AnimData174 ; SPRITE_ANIM_174 + anim_data_pointer AnimData175 ; SPRITE_ANIM_175 + anim_data_pointer AnimData176 ; SPRITE_ANIM_176 + anim_data_pointer AnimData177 ; SPRITE_ANIM_177 + anim_data_pointer AnimData178 ; SPRITE_ANIM_178 + anim_data_pointer AnimData179 ; SPRITE_ANIM_179 + anim_data_pointer AnimData180 ; SPRITE_ANIM_180 + anim_data_pointer AnimData181 ; SPRITE_ANIM_181 + anim_data_pointer AnimData182 ; SPRITE_ANIM_182 + anim_data_pointer AnimData183 ; SPRITE_ANIM_183 + anim_data_pointer AnimData184 ; SPRITE_ANIM_184 + anim_data_pointer AnimData185 ; SPRITE_ANIM_185 + anim_data_pointer AnimData186 ; SPRITE_ANIM_186 + anim_data_pointer AnimData187 ; SPRITE_ANIM_187 + anim_data_pointer AnimData188 ; SPRITE_ANIM_188 + anim_data_pointer AnimData189 ; SPRITE_ANIM_189 + anim_data_pointer AnimData190 ; SPRITE_ANIM_190 + anim_data_pointer AnimData191 ; SPRITE_ANIM_191 + anim_data_pointer AnimData192 ; SPRITE_ANIM_192 + anim_data_pointer AnimData193 ; SPRITE_ANIM_193 + anim_data_pointer AnimData194 ; SPRITE_ANIM_194 + anim_data_pointer AnimData195 ; SPRITE_ANIM_195 + anim_data_pointer AnimData196 ; SPRITE_ANIM_196 + anim_data_pointer AnimData197 ; SPRITE_ANIM_197 + anim_data_pointer AnimData198 ; SPRITE_ANIM_198 + anim_data_pointer AnimData199 ; SPRITE_ANIM_199 + anim_data_pointer AnimData200 ; SPRITE_ANIM_200 + anim_data_pointer AnimData201 ; SPRITE_ANIM_201 + anim_data_pointer AnimData202 ; SPRITE_ANIM_202 + anim_data_pointer AnimData203 ; SPRITE_ANIM_203 + anim_data_pointer AnimData204 ; SPRITE_ANIM_204 + anim_data_pointer AnimData205 ; SPRITE_ANIM_205 + anim_data_pointer AnimData206 ; SPRITE_ANIM_206 + anim_data_pointer AnimData207 ; SPRITE_ANIM_207 + anim_data_pointer AnimData208 ; SPRITE_ANIM_208 + anim_data_pointer AnimData209 ; SPRITE_ANIM_209 + anim_data_pointer AnimData210 ; SPRITE_ANIM_210 + anim_data_pointer AnimData211 ; SPRITE_ANIM_211 + anim_data_pointer AnimData212 ; SPRITE_ANIM_212 + anim_data_pointer AnimData213 ; SPRITE_ANIM_213 + anim_data_pointer AnimData214 ; SPRITE_ANIM_214 + anim_data_pointer AnimData215 ; SPRITE_ANIM_215 + anim_data_pointer AnimData216 ; SPRITE_ANIM_216 ; \1 = palette pointer ; \2 = number of palettes ; \3 = number of OBJ colors palette_pointer: MACRO - dwb \1, BANK(\1) - BANK(MapDataPointers_81697) + dwb \1, BANK(\1) - BANK(Palettes) db (\2 << 4) + \3 ENDM -MapDataPointers_81697: ; 81697 (20:5697) +Palettes: ; 81697 (20:5697) palette_pointer Palette0, 8, 1 ; PALETTE_0 palette_pointer Palette1, 8, 0 ; PALETTE_1 palette_pointer Palette2, 8, 0 ; PALETTE_2 diff --git a/src/engine/home.asm b/src/engine/home.asm index cb77945..a79cd14 100644 --- a/src/engine/home.asm +++ b/src/engine/home.asm @@ -9082,10 +9082,10 @@ TryExecuteEffectCommandFunction: ; 2fd9 (0:2fd9) ret .execute_function - ; execute the function at [wce22]:hl + ; execute the function at [wEffectFunctionsBank]:hl ldh a, [hBankROM] push af - ld a, [wce22] + ld a, [wEffectFunctionsBank] call BankswitchROM or a call CallHL @@ -9116,9 +9116,9 @@ CheckMatchingCommand: ; 2ffe (0:2ffe) push af ld a, BANK(EffectCommands) call BankswitchROM - ; store the bank number of command functions ($b) in wce22 - ld a, $b - ld [wce22], a + ; store the bank number of command functions ($b) in wEffectFunctionsBank + ld a, BANK("Effect Functions") + ld [wEffectFunctionsBank], a .check_command_loop ld a, [hli] or a @@ -10601,8 +10601,8 @@ Func_37c5: ; 37c5 (0:37c5) ret OverworldDoFrameFunction: ; 380e (0:380e) - ld a, [wd0c1] - bit 7, a + ld a, [wOverworldNPCFlags] + bit HIDE_ALL_NPC_SPRITES, a ret nz ldh a, [hBankROM] push af @@ -10670,7 +10670,7 @@ GameEvent_GiftCenter: ; 3876 (0:3876) ld a, MUSIC_CARD_POP call PlaySong ld a, GAME_EVENT_GIFT_CENTER - ld [wd0c2], a + ld [wActiveGameEvent], a ld a, [wd10e] or $10 ld [wd10e], a @@ -10686,9 +10686,9 @@ GameEvent_GiftCenter: ; 3876 (0:3876) GameEvent_BattleCenter: ; 38a3 (0:38a3) ld a, GAME_EVENT_BATTLE_CENTER - ld [wd0c2], a + ld [wActiveGameEvent], a xor a - ld [wd112], a + ld [wSongOverride], a ld a, -1 ld [wDuelResult], a ld a, MUSIC_DUEL_THEME_1 @@ -10701,9 +10701,9 @@ GameEvent_BattleCenter: ; 38a3 (0:38a3) GameEvent_Duel: ; 38c0 (0:38c0) ld a, GAME_EVENT_DUEL - ld [wd0c2], a + ld [wActiveGameEvent], a xor a - ld [wd112], a + ld [wSongOverride], a call EnableSRAM xor a ld [sPlayerInChallengeMachine], a @@ -10731,7 +10731,7 @@ GameEvent_ChallengeMachine: ; 38db (0:38db) GameEvent_ContinueDuel: ; 38fb (0:38fb) xor a - ld [wd112], a + ld [wSongOverride], a bank1call TryContinueDuel call EnableSRAM ld a, [sPlayerInChallengeMachine] @@ -10942,14 +10942,14 @@ PlayDefaultSong: ; 39fc (0:39fc) pop af jr z, .asm_3a11 ld a, c - ld hl, wd112 + ld hl, wSongOverride cp [hl] jr z, .asm_3a1c .asm_3a11 ld a, c cp NUM_SONGS jr nc, .asm_3a1c - ld [wd112], a + ld [wSongOverride], a call PlaySong .asm_3a1c pop bc diff --git a/src/engine/sequences/opening_sequence_commands.asm b/src/engine/sequences/opening_sequence_commands.asm index 6697b11..446daa2 100644 --- a/src/engine/sequences/opening_sequence_commands.asm +++ b/src/engine/sequences/opening_sequence_commands.asm @@ -136,13 +136,13 @@ OpeningSequenceCmd_SetOrbsCoordinates: ; 1d486 (7:5486) ret OpeningOrbAnimations_CharizardScene: ; 1d4b0 (7:54b0) - db $c0 ; GRASS - db $c1 ; FIRE - db $c1 ; WATER - db $c0 ; COLORLESS - db $c1 ; LIGHTNING - db $c0 ; PSYCHIC - db $c1 ; FIGHTING + db SPRITE_ANIM_192 ; GRASS + db SPRITE_ANIM_193 ; FIRE + db SPRITE_ANIM_193 ; WATER + db SPRITE_ANIM_192 ; COLORLESS + db SPRITE_ANIM_193 ; LIGHTNING + db SPRITE_ANIM_192 ; PSYCHIC + db SPRITE_ANIM_193 ; FIGHTING OpeningOrbCoordinates_CharizardScene: ; 1d4b7 (7:54b7) ; x coord, y coord @@ -155,13 +155,13 @@ OpeningOrbCoordinates_CharizardScene: ; 1d4b7 (7:54b7) db 160, 44 ; FIGHTING OpeningOrbAnimations_ScytherScene: ; 1d4c5 (7:54c5) - db $c1 ; GRASS - db $c0 ; FIRE - db $c0 ; WATER - db $c1 ; COLORLESS - db $c0 ; LIGHTNING - db $c1 ; PSYCHIC - db $c0 ; FIGHTING + db SPRITE_ANIM_193 ; GRASS + db SPRITE_ANIM_192 ; FIRE + db SPRITE_ANIM_192 ; WATER + db SPRITE_ANIM_193 ; COLORLESS + db SPRITE_ANIM_192 ; LIGHTNING + db SPRITE_ANIM_193 ; PSYCHIC + db SPRITE_ANIM_192 ; FIGHTING OpeningOrbCoordinates_ScytherScene: ; 1d4cc (7:54cc) ; x coord, y coord @@ -174,13 +174,13 @@ OpeningOrbCoordinates_ScytherScene: ; 1d4cc (7:54cc) db 240, 44 ; FIGHTING OpeningOrbAnimations_AerodactylScene: ; 1d4da (7:54da) - db $c2 ; GRASS - db $c5 ; FIRE - db $c8 ; WATER - db $cb ; COLORLESS - db $ce ; LIGHTNING - db $d1 ; PSYCHIC - db $d4 ; FIGHTING + db SPRITE_ANIM_194 ; GRASS + db SPRITE_ANIM_197 ; FIRE + db SPRITE_ANIM_200 ; WATER + db SPRITE_ANIM_203 ; COLORLESS + db SPRITE_ANIM_206 ; LIGHTNING + db SPRITE_ANIM_209 ; PSYCHIC + db SPRITE_ANIM_212 ; FIGHTING OpeningOrbCoordinates_AerodactylScene: ; 1d4e1 (7:54e1) ; x coord, y coord @@ -193,13 +193,13 @@ OpeningOrbCoordinates_AerodactylScene: ; 1d4e1 (7:54e1) db 160, 48 ; FIGHTING OpeningOrbAnimations_InitialTitleScreen: ; 1d4ef (7:54ef) - db $c3 ; GRASS - db $c6 ; FIRE - db $c9 ; WATER - db $cc ; COLORLESS - db $cf ; LIGHTNING - db $d2 ; PSYCHIC - db $d5 ; FIGHTING + db SPRITE_ANIM_195 ; GRASS + db SPRITE_ANIM_198 ; FIRE + db SPRITE_ANIM_201 ; WATER + db SPRITE_ANIM_204 ; COLORLESS + db SPRITE_ANIM_207 ; LIGHTNING + db SPRITE_ANIM_210 ; PSYCHIC + db SPRITE_ANIM_213 ; FIGHTING OpeningOrbCoordinates_InitialTitleScreen: ; 1d4f6 (7:54f6) ; x coord, y coord @@ -212,13 +212,13 @@ OpeningOrbCoordinates_InitialTitleScreen: ; 1d4f6 (7:54f6) db 72, 144 ; FIGHTING OpeningOrbAnimations_InTitleScreen: ; 1d504 (7:5504) - db $c4 ; GRASS - db $c7 ; FIRE - db $ca ; WATER - db $cd ; COLORLESS - db $d0 ; LIGHTNING - db $d3 ; PSYCHIC - db $d6 ; FIGHTING + db SPRITE_ANIM_196 ; GRASS + db SPRITE_ANIM_199 ; FIRE + db SPRITE_ANIM_202 ; WATER + db SPRITE_ANIM_205 ; COLORLESS + db SPRITE_ANIM_208 ; LIGHTNING + db SPRITE_ANIM_211 ; PSYCHIC + db SPRITE_ANIM_214 ; FIGHTING OpeningOrbCoordinates_InTitleScreen: ; 1d50b (7:550b) ; x coord, y coord diff --git a/src/macros/scripts.asm b/src/macros/scripts.asm index b8976fe..71eabdc 100644 --- a/src/macros/scripts.asm +++ b/src/macros/scripts.asm @@ -558,7 +558,7 @@ walk_player_to_mason_lab: MACRO run_command ScriptCommand_WalkPlayerToMasonLaboratory ENDM -; Plays a song and saves it to wd112 +; Plays a song and saves it to wSongOverride override_song: MACRO run_command ScriptCommand_OverrideSong db \1 ; Song ID (ex MUSIC_BOOSTER_PACK) diff --git a/src/sram.asm b/src/sram.asm index 498d9f8..6aa8234 100644 --- a/src/sram.asm +++ b/src/sram.asm @@ -175,7 +175,7 @@ sTempPlayerYCoord:: ; b812 sTempPlayerDirection:: ; b813 ds $1 -sb814:: ; b814 +sActiveGameEvent:: ; b814 ds $1 sDuelResult:: ; b815 diff --git a/src/wram.asm b/src/wram.asm index 49e3844..292e473 100644 --- a/src/wram.asm +++ b/src/wram.asm @@ -1306,7 +1306,7 @@ wDefaultYesOrNo:: ; cd9a ds $1 ; used in _CopyCardNameAndLevel to keep track of the remaining space to copy the text -wcd9b:: ; cd9b +wCardNameLength:: ; cd9b ds $1 ; stores the total number of coins to flip @@ -1489,7 +1489,7 @@ wAIExecuteProcessedAttack:: ; cdd9 wcdda:: ; cdda ds $1 -wcddb:: ; cddb +wAITriedAttack:: ; cddb ds $1 wcddc:: ; cddc @@ -1598,7 +1598,7 @@ wAITrainerCardToPlay:: ; ce16 wce17:: ; ce17 ds $1 -wce18:: ; ce18 +wAITrainerCardPhase:: ; ce18 ds $1 ; parameters output by AI Trainer card logic routines @@ -1635,7 +1635,7 @@ wCurrentAIFlags:: ; ce21 ; $b is the bank where the functions associated to card or effect commands are. ; Its only purpose seems to be store this value to be read by TryExecuteEffectCommandFunction. ; possibly used in other contexts too -wce22:: ; ce22 +wEffectFunctionsBank:: ; ce22 ds $1 ; LoadCardGfx loads the card's palette here @@ -2089,7 +2089,7 @@ wced6:: ; ced6 wced7:: ; ced7 ds $1 -wced8:: ; ced8 +wCardListVisibleOffsetBackup:: ; ced8 ds $1 ; stores how many different cards there are in a deck @@ -2102,8 +2102,6 @@ wFilteredCardList:: ; ceda ; stores AI temporary hand card list wHandTempList:: ; ceda - -wceda:: ; ceda ds DECK_SIZE ; terminator for wceda @@ -2202,7 +2200,7 @@ wOwnedPhantomCardFlags:: ; cfe2 wPlaysSfx:: ; cfe3 ds $1 -wcfe4:: ; cfe4 +wSelectedPrinterMenuItem:: ; cfe4 ds $1 ; collection index of the first owned card @@ -2232,7 +2230,7 @@ wNamingScreenQuestionPointer:: ; d002 wNamingScreenBufferMaxLength:: ; d004 ds $1 -wd005:: ; d005 +wNamingScreenNumColumns:: ; d005 ds $1 wNamingScreenCursorX:: ; d006 @@ -2342,13 +2340,18 @@ wTempPlayerDirection:: ; d0be wOverworldMode:: ; d0bf ds $1 -wd0c0:: ; d0c0 +wOverworldModeBackup:: ; d0c0 ds $1 -wd0c1:: ; d0c1 +; overworld npc flag options +; bit 0; auto-close textbox when finished talking to npc +; bit 1; restore npc facing direction when finished talking to npc +; bit 7; hide all npc sprites (for screens like pause menu, opening boosters, entering deck machine, etc.) +wOverworldNPCFlags:: ; d0c1 ds $1 -wd0c2:: ; d0c2 +; only used with GAME_EVENT_DUEL, GAME_EVENT_BATTLE_CENTER, and GAME_EVENT_GIFT_CENTER +wActiveGameEvent:: ; d0c2 ds $1 ; stores the player's result in a duel (0: win, 1: loss, 2: ???, -1: transmission error?) @@ -2372,28 +2375,25 @@ wCurrentNPCNameTx:: ; d0c8 wDefaultObjectText:: ; d0ca ds $2 -wd0cc:: ; d0cc +wObjectPalettesCGBBackup:: ; d0cc ds 8 palettes -wd10c:: ; d10c +wOBP0Backup:: ; d10c ds $1 -wd10d:: ; d10d +wOBP1Backup:: ; d10d ds $1 wd10e:: ; d10e ds $1 -wd10f:: ; d10f - ds $1 - -wd110:: ; d110 - ds $1 +wReloadOverworldCallbackPtr:: ; d10f + ds $2 wDefaultSong:: ; d111 ds $1 -wd112:: ; d112 +wSongOverride:: ; d112 ds $1 wMatchStartTheme:: ; d113 @@ -2402,10 +2402,10 @@ wMatchStartTheme:: ; d113 wMedalScreenYOffset:: ; d114 ds $1 -wd115:: ; d115 +wWhichMedal:: ; d115 ds $1 -wd116:: ; d116 +wMedalDisplayTimer:: ; d116 ds $1 ; if FALSE, first booster being given @@ -2454,7 +2454,7 @@ wBGMapHeight:: ; d130 wCurTilemap:: ; d131 ds $1 -wd132:: ; d132 +wCurMapSGBPals:: ; d132 ds $1 UNION @@ -2526,13 +2526,13 @@ wDecompressionBuffer:: ; d23e ENDU -wd28e:: ; d28e +wDecompressionRowWidth:: ; d28e ds $1 -wd28f:: ; d28f +wCurMapInitialPalette:: ; d28f ds $1 -wd290:: ; d290 +wCurMapPalette:: ; d290 ds $1 wd291:: ; d291 @@ -2628,7 +2628,7 @@ wPlayerCurrentlyMoving:: ; d335 wPlayerSpriteIndex:: ; d336 ds $1 -wd337:: ; d337 +wPlayerSpriteBaseAnimation:: ; d337 ds $1 wd338:: ; d338 |