diff options
-rw-r--r-- | audio/engine.asm | 50 | ||||
-rwxr-xr-x | constants/audio_constants.asm | 8 | ||||
-rw-r--r-- | constants/sprite_constants.asm | 83 | ||||
-rwxr-xr-x | data/map_objects.asm | 78 | ||||
-rw-r--r-- | engine/facings.asm | 128 | ||||
-rwxr-xr-x | engine/map_object_action.asm | 118 | ||||
-rw-r--r-- | engine/map_objects.asm | 12 | ||||
-rw-r--r-- | engine/movement.asm | 2 |
8 files changed, 241 insertions, 238 deletions
diff --git a/audio/engine.asm b/audio/engine.asm index 48571fdf4..2cc921bd0 100644 --- a/audio/engine.asm +++ b/audio/engine.asm @@ -258,21 +258,21 @@ UpdateChannels: ; e8125 .asm_e8159 bit NOTE_REST, [hl] ; rest jr nz, .ch1rest - bit NOTE_UNKN_4, [hl] + bit NOTE_NOISE_SAMPLING, [hl] jr nz, .asm_e81a2 - bit NOTE_UNKN_1, [hl] - jr nz, .asm_e816b - bit NOTE_UNKN_6, [hl] + bit NOTE_FREQ_OVERRIDE, [hl] + jr nz, .frequency_override + bit NOTE_VIBRATO_OVERRIDE, [hl] jr nz, .asm_e8184 - jr .asm_e8175 + jr .check_duty_override -.asm_e816b +.frequency_override ld a, [wCurTrackFrequency] ld [rNR13], a ld a, [wCurTrackFrequency + 1] ld [rNR14], a -.asm_e8175 - bit NOTE_UNKN_0, [hl] +.check_duty_override + bit NOTE_DUTY_OVERRIDE, [hl] ret z ld a, [wCurTrackDuty] ld d, a @@ -321,11 +321,11 @@ UpdateChannels: ; e8125 add hl, bc bit NOTE_REST, [hl] ; rest jr nz, .ch2rest - bit NOTE_UNKN_4, [hl] + bit NOTE_NOISE_SAMPLING, [hl] jr nz, .asm_e8204 - bit NOTE_UNKN_6, [hl] + bit NOTE_VIBRATO_OVERRIDE, [hl] jr nz, .asm_e81e6 - bit NOTE_UNKN_0, [hl] + bit NOTE_DUTY_OVERRIDE, [hl] ret z ld a, [wCurTrackDuty] ld d, a @@ -381,9 +381,9 @@ UpdateChannels: ; e8125 add hl, bc bit NOTE_REST, [hl] ; rest jr nz, .ch3rest - bit NOTE_UNKN_4, [hl] + bit NOTE_NOISE_SAMPLING, [hl] jr nz, .asm_e824d - bit NOTE_UNKN_6, [hl] + bit NOTE_VIBRATO_OVERRIDE, [hl] jr nz, .asm_e823a ret @@ -482,7 +482,7 @@ endr add hl, bc bit NOTE_REST, [hl] ; rest jr nz, .ch4rest - bit NOTE_UNKN_4, [hl] + bit NOTE_NOISE_SAMPLING, [hl] jr nz, .asm_e82d4 ret @@ -853,7 +853,7 @@ HandleTrackVibrato: ; e8466 ld [wCurTrackDuty], a ld hl, Channel1NoteFlags - Channel1 add hl, bc - set NOTE_UNKN_0, [hl] + set NOTE_DUTY_OVERRIDE, [hl] .next ld hl, Channel1Flags2 - Channel1 add hl, bc @@ -930,9 +930,9 @@ HandleTrackVibrato: ; e8466 ld d, a ld a, e sub d - jr nc, .asm_e84ef + jr nc, .no_carry ld a, 0 - jr .asm_e84ef + jr .no_carry .down ; vibrato up @@ -943,14 +943,14 @@ HandleTrackVibrato: ; e8466 swap a ; move it to lo ; add e - jr nc, .asm_e84ef + jr nc, .no_carry ld a, $ff -.asm_e84ef +.no_carry ld [wCurTrackFrequency], a ; ld hl, Channel1NoteFlags - Channel1 add hl, bc - set NOTE_UNKN_6, [hl] + set NOTE_VIBRATO_OVERRIDE, [hl] .quit ret @@ -1067,8 +1067,8 @@ ApplyPitchWheel: ; e84f9 ld [hl], d ld hl, Channel1NoteFlags - Channel1 add hl, bc - set NOTE_UNKN_1, [hl] - set NOTE_UNKN_0, [hl] + set NOTE_FREQ_OVERRIDE, [hl] + set NOTE_DUTY_OVERRIDE, [hl] ret ; e858c @@ -1145,7 +1145,7 @@ ReadNoiseSample: ; e85af ld hl, Channel1NoteFlags - Channel1 add hl, bc - set NOTE_UNKN_4, [hl] + set NOTE_NOISE_SAMPLING, [hl] ret .quit @@ -1206,7 +1206,7 @@ ParseMusic: ; e85e1 ; ???? ld hl, Channel1NoteFlags - Channel1 add hl, bc - set NOTE_UNKN_4, [hl] + set NOTE_NOISE_SAMPLING, [hl] jp LoadNote .rest @@ -1288,7 +1288,7 @@ ParseSFXOrRest: ; e8698 ; turn noise sampling on ld hl, Channel1NoteFlags - Channel1 add hl, bc - set NOTE_UNKN_4, [hl] ; noise sample + set NOTE_NOISE_SAMPLING, [hl] ; noise sample ; update note duration ld a, [CurMusicByte] call SetNoteDuration ; top nybble doesnt matter? diff --git a/constants/audio_constants.asm b/constants/audio_constants.asm index b34ffe67d..bc50e3db2 100755 --- a/constants/audio_constants.asm +++ b/constants/audio_constants.asm @@ -55,9 +55,9 @@ SOUND_VIBRATO_DIR EQU 0 SOUND_PITCH_WHEEL_DIR EQU 1 ; NoteFlags -NOTE_UNKN_0 EQU 0 -NOTE_UNKN_1 EQU 1 +NOTE_DUTY_OVERRIDE EQU 0 +NOTE_FREQ_OVERRIDE EQU 1 NOTE_UNKN_3 EQU 3 -NOTE_UNKN_4 EQU 4 +NOTE_NOISE_SAMPLING EQU 4 NOTE_REST EQU 5 -NOTE_UNKN_6 EQU 6 +NOTE_VIBRATO_OVERRIDE EQU 6 diff --git a/constants/sprite_constants.asm b/constants/sprite_constants.asm index 541934b83..7ac9d10ee 100644 --- a/constants/sprite_constants.asm +++ b/constants/sprite_constants.asm @@ -230,8 +230,7 @@ NUM_SPRITEHEADER_FIELDS EQU const_value const SPRITEMOVEDATA_BOULDERDUST ; 22 const SPRITEMOVEDATA_GRASS ; 23 const SPRITEMOVEDATA_LAPRAS ; 24 - const SPRITEMOVEDATA_25 ; 25 -NUM_SPRITEMOVEDATA EQU const_value +- 1 +NUM_SPRITEMOVEDATA EQU const_value SPRITEMOVEDATA_FIELDS EQU 6 ; sprite movement functions @@ -303,50 +302,50 @@ MAX_OUTDOOR_SPRITES EQU 23 const PERSON_ACTION_SPIN const PERSON_ACTION_SPIN_FLICKER const PERSON_ACTION_FISHING - const PERSON_ACTION_07 + const PERSON_ACTION_SHADOW const PERSON_ACTION_EMOTE - const PERSON_ACTION_09 - const PERSON_ACTION_0A - const PERSON_ACTION_0B - const PERSON_ACTION_0C - const PERSON_ACTION_0D - const PERSON_ACTION_0E - const PERSON_ACTION_0F - const PERSON_ACTION_10 + const PERSON_ACTION_BIG_SNORLAX + const PERSON_ACTION_BOUNCE + const PERSON_ACTION_WEIRD_TREE + const PERSON_ACTION_BIG_LAPRAS + const PERSON_ACTION_BIG_DOLL + const PERSON_ACTION_BOULDER_DUST + const PERSON_ACTION_GRASS_SHAKE + const PERSON_ACTION_SKYFALL const_def - const FACING_00 - const FACING_01 - const FACING_02 - const FACING_03 - const FACING_04 - const FACING_05 - const FACING_06 - const FACING_07 - const FACING_08 - const FACING_09 - const FACING_0A - const FACING_0B - const FACING_0C - const FACING_0D - const FACING_0E - const FACING_0F - const FACING_10 - const FACING_11 - const FACING_12 - const FACING_13 + const FACING_STEP_DOWN_0 + const FACING_STEP_DOWN_1 + const FACING_STEP_DOWN_2 + const FACING_STEP_DOWN_3 + const FACING_STEP_UP_0 + const FACING_STEP_UP_1 + const FACING_STEP_UP_2 + const FACING_STEP_UP_3 + const FACING_STEP_LEFT_0 + const FACING_STEP_LEFT_1 + const FACING_STEP_LEFT_2 + const FACING_STEP_LEFT_3 + const FACING_STEP_RIGHT_0 + const FACING_STEP_RIGHT_1 + const FACING_STEP_RIGHT_2 + const FACING_STEP_RIGHT_3 + const FACING_FISH_DOWN + const FACING_FISH_UP + const FACING_FISH_LEFT + const FACING_FISH_RIGHT const FACING_EMOTE - const FACING_15 - const FACING_16 - const FACING_17 - const FACING_18 - const FACING_19 - const FACING_1A - const FACING_1B - const FACING_1C - const FACING_1D - const FACING_1E - const FACING_1F + const FACING_SHADOW + const FACING_BIG_DOLL_ASYM + const FACING_BIG_DOLL_SYM + const FACING_WEIRD_TREE_0 + const FACING_WEIRD_TREE_1 + const FACING_WEIRD_TREE_2 + const FACING_WEIRD_TREE_3 + const FACING_BOULDER_DUST_1 + const FACING_BOULDER_DUST_2 + const FACING_GRASS_1 + const FACING_GRASS_2 const_def const SPRITEANIMSTRUCT_INDEX ; 0 diff --git a/data/map_objects.asm b/data/map_objects.asm index e940d8118..ec4a859b3 100755 --- a/data/map_objects.asm +++ b/data/map_objects.asm @@ -3,42 +3,42 @@ sprite_movement_data: macro dn \6, 0 endm - ; function, facing, action, flags1, flags2, palette flags - sprite_movement_data SPRITEMOVEFN_00, DOWN, PERSON_ACTION_STAND, $02, $00, %0000 ; 00 - sprite_movement_data SPRITEMOVEFN_STANDING, DOWN, PERSON_ACTION_STAND, $0c, $00, %0000 ; 01 - sprite_movement_data SPRITEMOVEFN_RANDOM_WALK_XY, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 02 - sprite_movement_data SPRITEMOVEFN_SLOW_RANDOM_SPIN, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 03 - sprite_movement_data SPRITEMOVEFN_RANDOM_WALK_Y, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 04 - sprite_movement_data SPRITEMOVEFN_RANDOM_WALK_X, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 05 - sprite_movement_data SPRITEMOVEFN_STANDING, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 06 - sprite_movement_data SPRITEMOVEFN_STANDING, UP, PERSON_ACTION_STAND, $00, $00, %0000 ; 07 - sprite_movement_data SPRITEMOVEFN_STANDING, LEFT, PERSON_ACTION_STAND, $00, $00, %0000 ; 08 - sprite_movement_data SPRITEMOVEFN_STANDING, RIGHT, PERSON_ACTION_STAND, $00, $00, %0000 ; 09 - sprite_movement_data SPRITEMOVEFN_FAST_RANDOM_SPIN, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 0a - sprite_movement_data SPRITEMOVEFN_OBEY_DPAD, DOWN, PERSON_ACTION_STAND, $02, $00, %0000 ; 0b - sprite_movement_data SPRITEMOVEFN_08, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 0c - sprite_movement_data SPRITEMOVEFN_09, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 0d - sprite_movement_data SPRITEMOVEFN_0A, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 0e - sprite_movement_data SPRITEMOVEFN_0B, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 0f - sprite_movement_data SPRITEMOVEFN_0C, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 10 - sprite_movement_data SPRITEMOVEFN_0D, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 11 - sprite_movement_data SPRITEMOVEFN_0E, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 12 - sprite_movement_data SPRITEMOVEFN_FOLLOW, DOWN, PERSON_ACTION_STAND, $02, $00, %0000 ; 13 - sprite_movement_data SPRITEMOVEFN_SCRIPTED, DOWN, PERSON_ACTION_STAND, $02, $00, %0000 ; 14 - sprite_movement_data SPRITEMOVEFN_BIG_SNORLAX, DOWN, PERSON_ACTION_09, $2e, $01, %1100 ; 15 - sprite_movement_data SPRITEMOVEFN_BOUNCE, DOWN, PERSON_ACTION_0A, $2e, $00, %0000 ; 16 - sprite_movement_data SPRITEMOVEFN_STANDING, DOWN, PERSON_ACTION_STAND, $0c, $00, %0000 ; 17 - sprite_movement_data SPRITEMOVEFN_STANDING, DOWN, PERSON_ACTION_STAND, $2e, $10, %0000 ; 18 - sprite_movement_data SPRITEMOVEFN_STRENGTH, DOWN, PERSON_ACTION_STAND, $2e, $00, %0100 ; 19 - sprite_movement_data SPRITEMOVEFN_FOLLOWNOTEXACT, DOWN, PERSON_ACTION_STAND, $02, $00, %0000 ; 1a - sprite_movement_data SPRITEMOVEFN_SHADOW, DOWN, PERSON_ACTION_00, $8e, $01, %0000 ; 1b - sprite_movement_data SPRITEMOVEFN_EMOTE, DOWN, PERSON_ACTION_EMOTE, $8e, $02, %0000 ; 1c - sprite_movement_data SPRITEMOVEFN_SCREENSHAKE, DOWN, PERSON_ACTION_00, $82, $00, %0000 ; 1d - sprite_movement_data SPRITEMOVEFN_SPIN_COUNTERCLOCKWISE, LEFT, PERSON_ACTION_STAND, $00, $00, %0000 ; 1e - sprite_movement_data SPRITEMOVEFN_SPIN_CLOCKWISE, RIGHT, PERSON_ACTION_STAND, $00, $00, %0000 ; 1f - sprite_movement_data SPRITEMOVEFN_STRENGTH, DOWN, PERSON_ACTION_0C, $2e, $01, %1100 ; 20 - sprite_movement_data SPRITEMOVEFN_STRENGTH, DOWN, PERSON_ACTION_0D, $2e, $01, %1100 ; 21 - sprite_movement_data SPRITEMOVEFN_BOULDERDUST, DOWN, PERSON_ACTION_0E, $8e, $01, %0000 ; 22 - sprite_movement_data SPRITEMOVEFN_GRASS, DOWN, PERSON_ACTION_0F, $8e, $02, %0000 ; 23 - sprite_movement_data SPRITEMOVEFN_RANDOM_WALK_XY, DOWN, PERSON_ACTION_STAND, $00, $00, %0010 ; 24 - sprite_movement_data SPRITEMOVEFN_00, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 25
\ No newline at end of file + ; function, facing, action, flags1, flags2, palette flags + sprite_movement_data SPRITEMOVEFN_00, DOWN, PERSON_ACTION_STAND, $02, $00, %0000 ; 00 + sprite_movement_data SPRITEMOVEFN_STANDING, DOWN, PERSON_ACTION_STAND, $0c, $00, %0000 ; 01 + sprite_movement_data SPRITEMOVEFN_RANDOM_WALK_XY, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 02 + sprite_movement_data SPRITEMOVEFN_SLOW_RANDOM_SPIN, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 03 + sprite_movement_data SPRITEMOVEFN_RANDOM_WALK_Y, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 04 + sprite_movement_data SPRITEMOVEFN_RANDOM_WALK_X, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 05 + sprite_movement_data SPRITEMOVEFN_STANDING, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 06 + sprite_movement_data SPRITEMOVEFN_STANDING, UP, PERSON_ACTION_STAND, $00, $00, %0000 ; 07 + sprite_movement_data SPRITEMOVEFN_STANDING, LEFT, PERSON_ACTION_STAND, $00, $00, %0000 ; 08 + sprite_movement_data SPRITEMOVEFN_STANDING, RIGHT, PERSON_ACTION_STAND, $00, $00, %0000 ; 09 + sprite_movement_data SPRITEMOVEFN_FAST_RANDOM_SPIN, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 0a + sprite_movement_data SPRITEMOVEFN_OBEY_DPAD, DOWN, PERSON_ACTION_STAND, $02, $00, %0000 ; 0b + sprite_movement_data SPRITEMOVEFN_08, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 0c + sprite_movement_data SPRITEMOVEFN_09, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 0d + sprite_movement_data SPRITEMOVEFN_0A, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 0e + sprite_movement_data SPRITEMOVEFN_0B, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 0f + sprite_movement_data SPRITEMOVEFN_0C, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 10 + sprite_movement_data SPRITEMOVEFN_0D, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 11 + sprite_movement_data SPRITEMOVEFN_0E, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 12 + sprite_movement_data SPRITEMOVEFN_FOLLOW, DOWN, PERSON_ACTION_STAND, $02, $00, %0000 ; 13 + sprite_movement_data SPRITEMOVEFN_SCRIPTED, DOWN, PERSON_ACTION_STAND, $02, $00, %0000 ; 14 + sprite_movement_data SPRITEMOVEFN_BIG_SNORLAX, DOWN, PERSON_ACTION_BIG_SNORLAX, $2e, $01, %1100 ; 15 + sprite_movement_data SPRITEMOVEFN_BOUNCE, DOWN, PERSON_ACTION_BOUNCE, $2e, $00, %0000 ; 16 + sprite_movement_data SPRITEMOVEFN_STANDING, DOWN, PERSON_ACTION_STAND, $0c, $00, %0000 ; 17 + sprite_movement_data SPRITEMOVEFN_STANDING, DOWN, PERSON_ACTION_STAND, $2e, $10, %0000 ; 18 + sprite_movement_data SPRITEMOVEFN_STRENGTH, DOWN, PERSON_ACTION_STAND, $2e, $00, %0100 ; 19 + sprite_movement_data SPRITEMOVEFN_FOLLOWNOTEXACT, DOWN, PERSON_ACTION_STAND, $02, $00, %0000 ; 1a + sprite_movement_data SPRITEMOVEFN_SHADOW, DOWN, PERSON_ACTION_00, $8e, $01, %0000 ; 1b + sprite_movement_data SPRITEMOVEFN_EMOTE, DOWN, PERSON_ACTION_EMOTE, $8e, $02, %0000 ; 1c + sprite_movement_data SPRITEMOVEFN_SCREENSHAKE, DOWN, PERSON_ACTION_00, $82, $00, %0000 ; 1d + sprite_movement_data SPRITEMOVEFN_SPIN_COUNTERCLOCKWISE, LEFT, PERSON_ACTION_STAND, $00, $00, %0000 ; 1e + sprite_movement_data SPRITEMOVEFN_SPIN_CLOCKWISE, RIGHT, PERSON_ACTION_STAND, $00, $00, %0000 ; 1f + sprite_movement_data SPRITEMOVEFN_STRENGTH, DOWN, PERSON_ACTION_BIG_LAPRAS, $2e, $01, %1100 ; 20 + sprite_movement_data SPRITEMOVEFN_STRENGTH, DOWN, PERSON_ACTION_BIG_DOLL, $2e, $01, %1100 ; 21 + sprite_movement_data SPRITEMOVEFN_BOULDERDUST, DOWN, PERSON_ACTION_BOULDER_DUST, $8e, $01, %0000 ; 22 + sprite_movement_data SPRITEMOVEFN_GRASS, DOWN, PERSON_ACTION_GRASS_SHAKE, $8e, $02, %0000 ; 23 + sprite_movement_data SPRITEMOVEFN_RANDOM_WALK_XY, DOWN, PERSON_ACTION_STAND, $00, $00, %0010 ; 24 + sprite_movement_data SPRITEMOVEFN_00, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 25 diff --git a/engine/facings.asm b/engine/facings.asm index f807e77f8..ee9efec3f 100644 --- a/engine/facings.asm +++ b/engine/facings.asm @@ -1,36 +1,36 @@ Facings: ; 4049 - dw Facing00 - dw Facing01 - dw Facing02 - dw Facing03 - dw Facing04 - dw Facing05 - dw Facing06 - dw Facing07 - dw Facing08 - dw Facing09 - dw Facing10 - dw Facing11 - dw Facing12 - dw Facing13 - dw Facing14 - dw Facing15 - dw Facing16 - dw Facing17 - dw Facing18 - dw Facing19 - dw Facing20 - dw Facing21 - dw Facing22 - dw Facing23 - dw Facing24 - dw Facing25 - dw Facing26 - dw Facing27 - dw Facing28 - dw Facing29 - dw Facing30 - dw Facing31 + dw FacingStepDown0 + dw FacingStepDown1 + dw FacingStepDown2 + dw FacingStepDown3 + dw FacingStepUp0 + dw FacingStepUp1 + dw FacingStepUp2 + dw FacingStepUp3 + dw FacingStepLeft0 + dw FacingStepLeft1 + dw FacingStepLeft2 + dw FacingStepLeft3 + dw FacingStepRight0 + dw FacingStepRight1 + dw FacingStepRight2 + dw FacingStepRight3 + dw FacingFishDown + dw FacingFishUp + dw FacingFishLeft + dw FacingFishRight + dw FacingEmote + dw FacingShadow + dw FacingBigDollAsymmetric + dw FacingBigDollSymmetric + dw FacingWeirdTree0 + dw FacingWeirdTree1 + dw FacingWeirdTree2 + dw FacingWeirdTree3 + dw FacingBoulderDust1 + dw FacingBoulderDust2 + dw FacingGrass1 + dw FacingGrass2 FacingsEnd: dw 0 NUM_FACINGS EQU (FacingsEnd - Facings) / 2 @@ -47,10 +47,10 @@ Y_FLIP EQU 1 << OAM_Y_FLIP BEHIND_BG EQU 1 << OAM_PRIORITY -Facing00: -Facing02: -Facing24: -Facing26: ; standing down +FacingStepDown0: +FacingStepDown2: +FacingWeirdTree0: +FacingWeirdTree2: ; standing down db 4 ; # db 0, 0, 0, $00 db 0, 8, 0, $01 @@ -58,7 +58,7 @@ Facing26: ; standing down db 8, 8, 2, $03 ; 409c -Facing01: ; walking down 1 +FacingStepDown1: ; walking down 1 db 4 ; # db 0, 0, 0, $80 db 0, 8, 0, $81 @@ -66,7 +66,7 @@ Facing01: ; walking down 1 db 8, 8, 2, $83 ; 40ad -Facing03: ; walking down 2 +FacingStepDown3: ; walking down 2 db 4 ; # db 0, 8, X_FLIP, $80 db 0, 0, X_FLIP, $81 @@ -74,8 +74,8 @@ Facing03: ; walking down 2 db 8, 0, 2 | X_FLIP, $83 ; 40be -Facing04: -Facing06: ; standing up +FacingStepUp0: +FacingStepUp2: ; standing up db 4 ; # db 0, 0, 0, $04 db 0, 8, 0, $05 @@ -83,7 +83,7 @@ Facing06: ; standing up db 8, 8, 2, $07 ; 40cf -Facing05: ; walking up 1 +FacingStepUp1: ; walking up 1 db 4 ; # db 0, 0, 0, $84 db 0, 8, 0, $85 @@ -91,7 +91,7 @@ Facing05: ; walking up 1 db 8, 8, 2, $87 ; 40e0 -Facing07: ; walking up 2 +FacingStepUp3: ; walking up 2 db 4 ; # db 0, 8, X_FLIP, $84 db 0, 0, X_FLIP, $85 @@ -99,8 +99,8 @@ Facing07: ; walking up 2 db 8, 0, 2 | X_FLIP, $87 ; 40f1 -Facing08: -Facing10: ; standing left +FacingStepLeft0: +FacingStepLeft2: ; standing left db 4 ; # db 0, 0, 0, $08 db 0, 8, 0, $09 @@ -108,8 +108,8 @@ Facing10: ; standing left db 8, 8, 2, $0b ; 4102 -Facing12: -Facing14: ; standing right +FacingStepRight0: +FacingStepRight2: ; standing right db 4 ; # db 0, 8, X_FLIP, $08 db 0, 0, X_FLIP, $09 @@ -117,8 +117,8 @@ Facing14: ; standing right db 8, 0, 2 | X_FLIP, $0b ; 4113 -Facing09: -Facing11: ; walking left +FacingStepLeft1: +FacingStepLeft3: ; walking left db 4 ; # db 0, 0, 0, $88 db 0, 8, 0, $89 @@ -126,8 +126,8 @@ Facing11: ; walking left db 8, 8, 2, $8b ; 4124 -Facing13: -Facing15: ; walking right +FacingStepRight1: +FacingStepRight3: ; walking right db 4 ; # db 0, 8, X_FLIP, $88 db 0, 0, X_FLIP, $89 @@ -135,7 +135,7 @@ Facing15: ; walking right db 8, 0, 2 | X_FLIP, $8b ; 4135 -Facing16: ; fishing down +FacingFishDown: ; fishing down db 5 ; # db 0, 0, 0, $00 db 0, 8, 0, $01 @@ -144,7 +144,7 @@ Facing16: ; fishing down db 16, 0, 4, $fc ; 414a -Facing17: ; fishing up +FacingFishUp: ; fishing up db 5 ; # db 0, 0, 0, $04 db 0, 8, 0, $05 @@ -153,7 +153,7 @@ Facing17: ; fishing up db -8, 0, 4, $fc ; 415f -Facing18: ; fishing left +FacingFishLeft: ; fishing left db 5 ; # db 0, 0, 0, $08 db 0, 8, 0, $09 @@ -162,7 +162,7 @@ Facing18: ; fishing left db 5, -8, 4 | X_FLIP, $fd ; 4174 -Facing19: ; fishing right +FacingFishRight: ; fishing right db 5 ; # db 0, 8, X_FLIP, $08 db 0, 0, X_FLIP, $09 @@ -171,7 +171,7 @@ Facing19: ; fishing right db 5, 16, 4, $fd ; 4189 -Facing20: ; emote +FacingEmote: ; emote db 4 ; # db 0, 0, 4, $f8 db 0, 8, 4, $f9 @@ -179,13 +179,13 @@ Facing20: ; emote db 8, 8, 4, $fb ; 419a -Facing21: ; shadow +FacingShadow: ; shadow db 2 ; # db 0, 0, 4, $fc db 0, 8, 4 | X_FLIP, $fc ; 41a3 -Facing23: ; big snorlax or lapras doll +FacingBigDollSymmetric: ; big snorlax or lapras doll db 16 ; # db 0, 0, 0, $00 db 0, 8, 0, $01 @@ -205,7 +205,7 @@ Facing23: ; big snorlax or lapras doll db 24, 16, X_FLIP, $07 ; 41e4 -Facing25: ; 41e4 +FacingWeirdTree1: ; 41e4 db 4 ; # db 0, 0, 0, $04 db 0, 8, 0, $05 @@ -213,7 +213,7 @@ Facing25: ; 41e4 db 8, 8, 0, $07 ; 41f5 -Facing27: ; 41f5 +FacingWeirdTree3: ; 41f5 db 4 ; # db 0, 8, X_FLIP, $04 db 0, 0, X_FLIP, $05 @@ -221,7 +221,7 @@ Facing27: ; 41f5 db 8, 0, X_FLIP, $07 ; 4206 -Facing22: ; big doll other than snorlax or lapras +FacingBigDollAsymmetric: ; big doll other than snorlax or lapras db 14 ; # db 0, 0, 0, $00 db 0, 8, 0, $01 @@ -239,7 +239,7 @@ Facing22: ; big doll other than snorlax or lapras db 24, 16, 0, $0b ; 423f -Facing28: ; boulder dust 1 +FacingBoulderDust1: ; boulder dust 1 db 4 ; # db 0, 0, 4, $fe db 0, 8, 4, $fe @@ -247,7 +247,7 @@ Facing28: ; boulder dust 1 db 8, 8, 4, $fe ; 4250 -Facing29: ; boulder dust 2 +FacingBoulderDust2: ; boulder dust 2 db 4 ; # db 0, 0, 4, $ff db 0, 8, 4, $ff @@ -255,13 +255,13 @@ Facing29: ; boulder dust 2 db 8, 8, 4, $ff ; 4261 -Facing30: ; 4261 +FacingGrass1: ; 4261 db 2 ; # db 8, 0, 4, $fe db 8, 8, 4 | X_FLIP, $fe ; 426a -Facing31: ; 426a +FacingGrass2: ; 426a db 2 ; # db 9, -1, 4, $fe db 9, 9, 4 | X_FLIP, $fe diff --git a/engine/map_object_action.asm b/engine/map_object_action.asm index 59e0ef7de..a7ab87200 100755 --- a/engine/map_object_action.asm +++ b/engine/map_object_action.asm @@ -14,23 +14,23 @@ ; 445f Pointers445f: ; 445f - dw SetFacingStanding, SetFacingStanding ; 00 - dw Function44b5, SetFacingCurrent ; 01 standing? - dw Function44c1, SetFacingCurrent ; 02 walking? - dw Function4508, SetFacingCurrent ; 03 bumping? - dw Function4529, SetFacingCurrent ; 04 - dw Function4539, SetFacingStanding ; 05 - dw Function456e, Function456e ; 06 - dw Function457b, SetFacingStanding ; 07 - dw Function4582, Function4582 ; 08 - dw Function4589, Function4589 ; 09 - dw Function4590, Function45a4 ; 0a - dw Function45ab, SetFacingCurrent ; 0c - dw Function45be, Function45be ; 0b - dw Function45c5, Function45c5 ; 0d - dw Function45da, SetFacingStanding ; 0e - dw Function45ed, SetFacingStanding ; 0f - dw Function44e4, SetFacingCurrent ; 10 + dw SetFacingStanding, SetFacingStanding ; 00 + dw SetFacingStandAction, SetFacingCurrent ; 01 standing? + dw SetFacingStepAction, SetFacingCurrent ; 02 walking? + dw SetFacingBumpAction, SetFacingCurrent ; 03 bumping? + dw SetFacingCounterclockwiseSpin, SetFacingCurrent ; 04 + dw SetFacingCounterclockwiseSpin2, SetFacingStanding ; 05 + dw SetFacingFish, SetFacingFish ; 06 + dw SetFacingShadow, SetFacingStanding ; 07 + dw SetFacingEmote, SetFacingEmote ; 08 + dw SetFacingBigDollSym, SetFacingBigDollSym ; 09 + dw SetFacingBounce, SetFacingFreezeBounce ; 0a + dw SetFacingWeirdTree, SetFacingCurrent ; 0b + dw SetFacingBigDollAsym, SetFacingBigDollAsym ; 0c + dw SetFacingBigDoll, SetFacingBigDoll ; 0d + dw SetFacingBoulderDust, SetFacingStanding ; 0e + dw SetFacingGrassShake, SetFacingStanding ; 0f + dw SetFacingSkyfall, SetFacingCurrent ; 10 ; 44a3 SetFacingStanding: ; 44a3 @@ -42,23 +42,23 @@ SetFacingStanding: ; 44a3 SetFacingCurrent: ; 44aa call GetSpriteDirection - or 0 ; useless + or FACING_STEP_DOWN_0 ; useless ld hl, OBJECT_FACING_STEP add hl, bc ld [hl], a ret ; 44b5 -Function44b5: ; 44b5 +SetFacingStandAction: ; 44b5 ld hl, OBJECT_FACING_STEP add hl, bc ld a, [hl] and 1 - jr nz, Function44c1 + jr nz, SetFacingStepAction jp SetFacingCurrent ; 44c1 -Function44c1: ; 44c1 +SetFacingStepAction: ; 44c1 ld hl, OBJECT_FLAGS1 add hl, bc bit SLIDING, [hl] @@ -77,7 +77,7 @@ Function44c1: ; 44c1 ld d, a call GetSpriteDirection - or 0 ; useless + or FACING_STEP_DOWN_0 ; useless or d ld hl, OBJECT_FACING_STEP add hl, bc @@ -85,7 +85,7 @@ Function44c1: ; 44c1 ret ; 44e4 -Function44e4: ; 44e4 +SetFacingSkyfall: ; 44e4 ld hl, OBJECT_FLAGS1 add hl, bc bit SLIDING, [hl] @@ -104,7 +104,7 @@ Function44e4: ; 44e4 ld d, a call GetSpriteDirection - or 0 ; useless + or FACING_STEP_DOWN_0 ; useless or d ld hl, OBJECT_FACING_STEP add hl, bc @@ -112,7 +112,7 @@ Function44e4: ; 44e4 ret ; 4508 -Function4508: ; 4508 +SetFacingBumpAction: ; 4508 ld hl, OBJECT_FLAGS1 add hl, bc bit SLIDING, [hl] @@ -130,7 +130,7 @@ Function4508: ; 4508 ld d, a call GetSpriteDirection - or 0 ; useless + or FACING_STEP_DOWN_0 ; useless or d ld hl, OBJECT_FACING_STEP add hl, bc @@ -138,24 +138,28 @@ Function4508: ; 4508 ret ; 4529 -Function4529: ; 4529 - call Function453f +SetFacingCounterclockwiseSpin: ; 4529 + call CounterclockwiseSpinAction ld hl, OBJECT_FACING add hl, bc ld a, [hl] - or 0 ; useless + or FACING_STEP_DOWN_0 ; useless ld hl, OBJECT_FACING_STEP add hl, bc ld [hl], a ret ; 4539 -Function4539: ; 4539 - call Function453f +SetFacingCounterclockwiseSpin2: ; 4539 + call CounterclockwiseSpinAction jp SetFacingStanding ; 453f -Function453f: ; 453f +CounterclockwiseSpinAction: ; 453f +; Here, OBJECT_STEP_FRAME consists of two 2-bit components, +; using only bits 0,1 and 4,5. +; bits 0,1 is a timer (4 overworld frames) +; bits 4,5 determines the facing - the direction is counterclockwise. ld hl, OBJECT_STEP_FRAME add hl, bc ld a, [hl] @@ -195,39 +199,39 @@ Function453f: ; 453f db OW_DOWN, OW_RIGHT, OW_UP, OW_LEFT ; 456e -Function456e: ; 456e +SetFacingFish: ; 456e call GetSpriteDirection rrca rrca - add $10 + add FACING_FISH_DOWN ld hl, OBJECT_FACING_STEP add hl, bc ld [hl], a ret ; 457b -Function457b: ; 457b +SetFacingShadow: ; 457b ld hl, OBJECT_FACING_STEP add hl, bc - ld [hl], FACING_15 + ld [hl], FACING_SHADOW ret ; 4582 -Function4582: ; 4582 emote +SetFacingEmote: ; 4582 emote ld hl, OBJECT_FACING_STEP add hl, bc ld [hl], FACING_EMOTE ret ; 4589 -Function4589: ; 4589 +SetFacingBigDollSym: ; 4589 ld hl, OBJECT_FACING_STEP add hl, bc - ld [hl], FACING_17 + ld [hl], FACING_BIG_DOLL_SYM ret ; 4590 -Function4590: ; 4590 +SetFacingBounce: ; 4590 ld hl, OBJECT_STEP_FRAME add hl, bc ld a, [hl] @@ -235,21 +239,21 @@ Function4590: ; 4590 and %00001111 ld [hl], a and %00001000 - jr z, Function45a4 + jr z, SetFacingFreezeBounce ld hl, OBJECT_FACING_STEP add hl, bc - ld [hl], FACING_04 + ld [hl], FACING_STEP_UP_0 ret ; 45a4 -Function45a4: ; 45a4 +SetFacingFreezeBounce: ; 45a4 ld hl, OBJECT_FACING_STEP add hl, bc - ld [hl], 0 + ld [hl], FACING_STEP_DOWN_0 ret ; 45ab -Function45ab: ; 45ab +SetFacingWeirdTree: ; 45ab ld hl, OBJECT_STEP_FRAME add hl, bc ld a, [hl] @@ -258,28 +262,28 @@ Function45ab: ; 45ab and %00001100 rrca rrca - add $18 + add FACING_WEIRD_TREE_0 ld hl, OBJECT_FACING_STEP add hl, bc ld [hl], a ret ; 45be -Function45be: ; 45be +SetFacingBigDollAsym: ; 45be ld hl, OBJECT_FACING_STEP add hl, bc - ld [hl], FACING_16 + ld [hl], FACING_BIG_DOLL_ASYM ret ; 45c5 -Function45c5: ; 45c5 +SetFacingBigDoll: ; 45c5 ld a, [VariableSprites + SPRITE_BIG_DOLL - SPRITE_VARS] - ld d, FACING_17 ; symmetric + ld d, FACING_BIG_DOLL_SYM ; symmetric cp SPRITE_BIG_SNORLAX jr z, .ok cp SPRITE_BIG_LAPRAS jr z, .ok - ld d, FACING_16 ; asymmetric + ld d, FACING_BIG_DOLL_ASYM ; asymmetric .ok ld hl, OBJECT_FACING_STEP @@ -288,7 +292,7 @@ Function45c5: ; 45c5 ret ; 45da -Function45da: ; 45da +SetFacingBoulderDust: ; 45da ld hl, OBJECT_STEP_FRAME add hl, bc inc [hl] @@ -297,15 +301,15 @@ Function45da: ; 45da ld hl, OBJECT_FACING_STEP add hl, bc and 2 - ld a, FACING_1C + ld a, FACING_BOULDER_DUST_1 jr z, .ok - inc a ; FACING_1D + inc a ; FACING_BOULDER_DUST_2 .ok ld [hl], a ret ; 45ed -Function45ed: ; 45ed +SetFacingGrassShake: ; 45ed ld hl, OBJECT_STEP_FRAME add hl, bc inc [hl] @@ -313,9 +317,9 @@ Function45ed: ; 45ed ld hl, OBJECT_FACING_STEP add hl, bc and 4 - ld a, FACING_1E + ld a, FACING_GRASS_1 jr z, .ok - inc a ; FACING_1F + inc a ; FACING_GRASS_2 .ok ld [hl], a diff --git a/engine/map_objects.asm b/engine/map_objects.asm index 58c30c8fb..3f63030ec 100644 --- a/engine/map_objects.asm +++ b/engine/map_objects.asm @@ -776,7 +776,7 @@ MapObjectMovementPattern: ; 47dd ld [hl], STANDING ld hl, OBJECT_ACTION add hl, bc - ld [hl], PERSON_ACTION_09 + ld [hl], PERSON_ACTION_BIG_SNORLAX ld hl, OBJECT_STEP_TYPE add hl, bc ld [hl], STEP_TYPE_04 @@ -789,7 +789,7 @@ MapObjectMovementPattern: ; 47dd ld [hl], STANDING ld hl, OBJECT_ACTION add hl, bc - ld [hl], PERSON_ACTION_0A + ld [hl], PERSON_ACTION_BOUNCE ld hl, OBJECT_STEP_TYPE add hl, bc ld [hl], STEP_TYPE_04 @@ -864,7 +864,7 @@ MapObjectMovementPattern: ; 47dd call ._MovementShadow_Grass_Emote_BoulderDust ld hl, OBJECT_ACTION add hl, bc - ld [hl], PERSON_ACTION_07 + ld [hl], PERSON_ACTION_SHADOW ld hl, OBJECT_STEP_DURATION add hl, de ld a, [hl] @@ -921,7 +921,7 @@ MapObjectMovementPattern: ; 47dd call ._MovementShadow_Grass_Emote_BoulderDust ld hl, OBJECT_ACTION add hl, bc - ld [hl], PERSON_ACTION_0E + ld [hl], PERSON_ACTION_BOULDER_DUST ld hl, OBJECT_STEP_DURATION add hl, de ld a, [hl] @@ -965,7 +965,7 @@ MapObjectMovementPattern: ; 47dd call ._MovementShadow_Grass_Emote_BoulderDust ld hl, OBJECT_ACTION add hl, bc - ld [hl], PERSON_ACTION_0F + ld [hl], PERSON_ACTION_GRASS_SHAKE ld hl, OBJECT_STEP_DURATION add hl, de ld a, [hl] @@ -1804,7 +1804,7 @@ SkyfallTop: ; 4f83 .Init: ld hl, OBJECT_ACTION add hl, bc - ld [hl], PERSON_ACTION_10 + ld [hl], PERSON_ACTION_SKYFALL ld hl, OBJECT_STEP_DURATION add hl, bc ld [hl], 16 diff --git a/engine/movement.asm b/engine/movement.asm index 3cc2796db..7b58e4023 100644 --- a/engine/movement.asm +++ b/engine/movement.asm @@ -365,7 +365,7 @@ Movement_tree_shake: ; 5279 ld hl, OBJECT_ACTION add hl, bc - ld [hl], PERSON_ACTION_0B + ld [hl], PERSON_ACTION_WEIRD_TREE ld hl, OBJECT_DIRECTION_WALKING add hl, bc |