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..8ebc4a708 100644 --- a/constants/sprite_constants.asm +++ b/constants/sprite_constants.asm @@ -311,30 +311,30 @@ MAX_OUTDOOR_SPRITES EQU 23 const PERSON_ACTION_0C const PERSON_ACTION_0D const PERSON_ACTION_0E - const PERSON_ACTION_0F + const PERSON_ACTION_GRASS_SHAKE const PERSON_ACTION_10 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 @@ -345,8 +345,8 @@ MAX_OUTDOOR_SPRITES EQU 23 const FACING_1B const FACING_1C const FACING_1D - const FACING_1E - const FACING_1F + 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..7468b18e3 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_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_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..68a1e1f23 100644 --- a/engine/facings.asm +++ b/engine/facings.asm @@ -1,25 +1,25 @@ 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 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 Facing21 dw Facing22 dw Facing23 @@ -29,8 +29,8 @@ Facings: ; 4049 dw Facing27 dw Facing28 dw Facing29 - dw Facing30 - dw Facing31 + dw FacingGrass1 + dw FacingGrass2 FacingsEnd: dw 0 NUM_FACINGS EQU (FacingsEnd - Facings) / 2 @@ -47,8 +47,8 @@ Y_FLIP EQU 1 << OAM_Y_FLIP BEHIND_BG EQU 1 << OAM_PRIORITY -Facing00: -Facing02: +FacingStepDown0: +FacingStepDown2: Facing24: Facing26: ; standing down db 4 ; # @@ -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 @@ -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..4795151ae 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 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 SetFacingGrassShake, SetFacingStanding ; 0f + dw Function44e4, SetFacingCurrent ; 10 ; 44a3 SetFacingStanding: ; 44a3 @@ -49,16 +49,16 @@ SetFacingCurrent: ; 44aa 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] @@ -112,7 +112,7 @@ Function44e4: ; 44e4 ret ; 4508 -Function4508: ; 4508 +SetFacingBumpAction: ; 4508 ld hl, OBJECT_FLAGS1 add hl, bc bit SLIDING, [hl] @@ -138,8 +138,8 @@ Function4508: ; 4508 ret ; 4529 -Function4529: ; 4529 - call Function453f +SetFacingCounterclockwiseSpin: ; 4529 + call CounterclockwiseSpinAction ld hl, OBJECT_FACING add hl, bc ld a, [hl] @@ -150,12 +150,16 @@ Function4529: ; 4529 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,11 +199,11 @@ 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 @@ -238,7 +242,7 @@ Function4590: ; 4590 jr z, Function45a4 ld hl, OBJECT_FACING_STEP add hl, bc - ld [hl], FACING_04 + ld [hl], FACING_STEP_UP_0 ret ; 45a4 @@ -305,7 +309,7 @@ Function45da: ; 45da 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..949eab968 100644 --- a/engine/map_objects.asm +++ b/engine/map_objects.asm @@ -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] diff --git a/gfx/credits/ditto.png b/gfx/credits/ditto.png index 17a1191b0..6f5b8ed57 100644 Binary files a/gfx/credits/ditto.png and b/gfx/credits/ditto.png differ diff --git a/gfx/credits/igglybuff.png b/gfx/credits/igglybuff.png index 3a6d00194..03776bac3 100644 Binary files a/gfx/credits/igglybuff.png and b/gfx/credits/igglybuff.png differ diff --git a/gfx/credits/smoochum.png b/gfx/credits/smoochum.png index 415bac268..ac6d85ad7 100644 Binary files a/gfx/credits/smoochum.png and b/gfx/credits/smoochum.png differ diff --git a/gfx/misc/badges.png b/gfx/misc/badges.png index 4e5820da8..e3a8da4eb 100644 Binary files a/gfx/misc/badges.png and b/gfx/misc/badges.png differ diff --git a/gfx/misc/font.png b/gfx/misc/font.png index 7119c0691..cce5fd36f 100644 Binary files a/gfx/misc/font.png and b/gfx/misc/font.png differ diff --git a/gfx/misc/font_inversed.png b/gfx/misc/font_inversed.png index 519339f39..d34c58d16 100644 Binary files a/gfx/misc/font_inversed.png and b/gfx/misc/font_inversed.png differ diff --git a/gfx/misc/footprints.png b/gfx/misc/footprints.png index b1e350436..814eb352c 100644 Binary files a/gfx/misc/footprints.png and b/gfx/misc/footprints.png differ diff --git a/gfx/misc/pack_f.png b/gfx/misc/pack_f.png index fbe120bd1..35171fbbe 100644 Binary files a/gfx/misc/pack_f.png and b/gfx/misc/pack_f.png differ