mirror of
https://github.com/thornAvery/kep-hack.git
synced 2025-09-17 02:40:50 +12:00
Identify SPRITESTATEDATA2_ORIGFACINGDIRECTION
This commit is contained in:
parent
4a7d1513f3
commit
51ac538c25
|
@ -29,7 +29,7 @@ SPRITESTATEDATA1_LENGTH EQU const_value
|
||||||
const SPRITESTATEDATA2_MOVEMENTBYTE1 ; 6
|
const SPRITESTATEDATA2_MOVEMENTBYTE1 ; 6
|
||||||
const SPRITESTATEDATA2_GRASSPRIORITY ; 7
|
const SPRITESTATEDATA2_GRASSPRIORITY ; 7
|
||||||
const SPRITESTATEDATA2_MOVEMENTDELAY ; 8
|
const SPRITESTATEDATA2_MOVEMENTDELAY ; 8
|
||||||
const SPRITESTATEDATA2_09 ; 9
|
const SPRITESTATEDATA2_ORIGFACINGDIRECTION ; 9
|
||||||
const SPRITESTATEDATA2_0A ; a
|
const SPRITESTATEDATA2_0A ; a
|
||||||
const SPRITESTATEDATA2_0B ; b
|
const SPRITESTATEDATA2_0B ; b
|
||||||
const SPRITESTATEDATA2_0C ; c
|
const SPRITESTATEDATA2_0C ; c
|
||||||
|
|
|
@ -38,17 +38,17 @@ DisplayTextIDInit::
|
||||||
jr nz, .skipMovingSprites
|
jr nz, .skipMovingSprites
|
||||||
call UpdateSprites
|
call UpdateSprites
|
||||||
.skipMovingSprites
|
.skipMovingSprites
|
||||||
; loop to copy [x#SPRITESTATEDATA1_FACINGDIRECTION] to [x#SPRITESTATEDATA2_09]
|
; loop to copy [x#SPRITESTATEDATA1_FACINGDIRECTION] to
|
||||||
; for each sprite from x=01 to x=15
|
; [x#SPRITESTATEDATA2_ORIGFACINGDIRECTION] for each non-player sprite
|
||||||
; this is done because when you talk to an NPC, they turn to look your way
|
; this is done because when you talk to an NPC, they turn to look your way
|
||||||
; the original direction they were facing must be restored after the dialogue is over
|
; the original direction they were facing must be restored after the dialogue is over
|
||||||
ld hl, wSprite01StateData1FacingDirection
|
ld hl, wSprite01StateData1FacingDirection
|
||||||
ld c, $0f
|
ld c, $0f
|
||||||
ld de, $10
|
ld de, $10
|
||||||
.spriteFacingDirectionCopyLoop
|
.spriteFacingDirectionCopyLoop
|
||||||
ld a, [hl]
|
ld a, [hl] ; x#SPRITESTATEDATA1_FACINGDIRECTION
|
||||||
inc h
|
inc h
|
||||||
ld [hl], a
|
ld [hl], a ; [x#SPRITESTATEDATA2_ORIGFACINGDIRECTION]
|
||||||
dec h
|
dec h
|
||||||
add hl, de
|
add hl, de
|
||||||
dec c
|
dec c
|
||||||
|
|
|
@ -111,13 +111,13 @@ CloseTextDisplay::
|
||||||
xor a
|
xor a
|
||||||
ldh [hAutoBGTransferEnabled], a ; disable continuous WRAM to VRAM transfer each V-blank
|
ldh [hAutoBGTransferEnabled], a ; disable continuous WRAM to VRAM transfer each V-blank
|
||||||
; loop to make sprites face the directions they originally faced before the dialogue
|
; loop to make sprites face the directions they originally faced before the dialogue
|
||||||
ld hl, wSprite01StateData2 + 9 ; should be wSprite01StateData1FacingDirection?
|
ld hl, wSprite01StateData2OrigFacingDirection
|
||||||
ld c, $0f
|
ld c, $0f
|
||||||
ld de, $10
|
ld de, $10
|
||||||
.restoreSpriteFacingDirectionLoop
|
.restoreSpriteFacingDirectionLoop
|
||||||
ld a, [hl]
|
ld a, [hl] ; x#SPRITESTATEDATA2_ORIGFACINGDIRECTION
|
||||||
dec h
|
dec h
|
||||||
ld [hl], a
|
ld [hl], a ; [x#SPRITESTATEDATA1_FACINGDIRECTION]
|
||||||
inc h
|
inc h
|
||||||
add hl, de
|
add hl, de
|
||||||
dec c
|
dec c
|
||||||
|
|
|
@ -88,7 +88,8 @@ spritestatedata2: MACRO
|
||||||
\1MovementByte1:: db
|
\1MovementByte1:: db
|
||||||
\1GrassPriority:: db
|
\1GrassPriority:: db
|
||||||
\1MovementDelay:: db
|
\1MovementDelay:: db
|
||||||
ds 4
|
\1OrigFacingDirection:: db
|
||||||
|
ds 3
|
||||||
\1PictureID:: db
|
\1PictureID:: db
|
||||||
\1ImageBaseOffset:: db
|
\1ImageBaseOffset:: db
|
||||||
ds 1
|
ds 1
|
||||||
|
|
2
wram.asm
2
wram.asm
|
@ -206,7 +206,7 @@ wSpriteStateData2::
|
||||||
; - 6: movement byte 1 (determines whether a sprite can move, $ff:not moving, $fe:random movements, others unknown)
|
; - 6: movement byte 1 (determines whether a sprite can move, $ff:not moving, $fe:random movements, others unknown)
|
||||||
; - 7: (?) (set to $80 when in grass, else $0; may be used to draw grass above the sprite)
|
; - 7: (?) (set to $80 when in grass, else $0; may be used to draw grass above the sprite)
|
||||||
; - 8: delay until next movement (counted downwards, movement status is set to ready if reached 0)
|
; - 8: delay until next movement (counted downwards, movement status is set to ready if reached 0)
|
||||||
; - 9
|
; - 9: original facing direction (backed up by DisplayTextIDInit, restored by CloseTextDisplay)
|
||||||
; - A
|
; - A
|
||||||
; - B
|
; - B
|
||||||
; - C
|
; - C
|
||||||
|
|
Loading…
Reference in a new issue