summaryrefslogtreecommitdiff
path: root/engine
diff options
context:
space:
mode:
Diffstat (limited to 'engine')
-rw-r--r--engine/facings.asm92
-rwxr-xr-xengine/map_object_action.asm68
-rw-r--r--engine/map_objects.asm2
3 files changed, 83 insertions, 79 deletions
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]