fix deku mask hover speed and control

This commit is contained in:
scawful
2024-07-06 18:49:33 -04:00
parent 28b736b963
commit f0f89a1fb7
3 changed files with 28 additions and 17 deletions

View File

@@ -172,3 +172,9 @@ LinkState_UsingQuake:
}
warnpc $07A779
; LinkHop_FindArbitraryLandingSpot
; Allow LinkState 0x0A to use velocity
; Previously would skip velocity for LinkState 0x0A
org $07E38B
LDA.b $5D : CMP.b #$09

View File

@@ -348,19 +348,19 @@ pullpc
PrepareMagicBubble:
{
#_07A049: LDA.b $20
#_07A049: LDA.b LinkY
#_07A04B: STA.b $72
#_07A04D: LDA.b $21
#_07A04D: LDA.b LinkYH
#_07A04F: STA.b $73
#_07A051: LDA.b $22
#_07A051: LDA.b LinkX
#_07A053: STA.b $74
#_07A055: LDA.b $23
#_07A055: LDA.b LinkXH
#_07A057: STA.b $75
#_07A059: LDX.b $2F
#_07A059: LDX.b LinkFaceDir
#_07A05B: LDY.b #$02
#_07A05D: LDA.b #$09 ; ANCILLA 09
@@ -395,8 +395,8 @@ InitCamera:
{
LDA.b $22 : STA.b $3F
LDA.b $23 : STA.b $41
LDA.b $20 : STA.b $3E
LDA.b $21 : STA.b $40
LDA.b LinkY : STA.b $3E
LDA.b LinkYH : STA.b $40
RTS
}
@@ -410,7 +410,7 @@ HandleMovement:
LDA.w .drag_y_high, Y : ADC.w $0B7F : STA.w $0B7F
LDA #$01 : STA $031C
LDA #$05 : STA $3D
STZ $2F
STZ.w LinkFaceDir
.not_up
LDA $F0 : AND #$04 : BEQ .not_down
@@ -419,7 +419,7 @@ HandleMovement:
LDA.w .drag_y_high, Y : ADC.w $0B7F : STA.w $0B7F
LDA #$02 : STA $031C
LDA #$05 : STA $3D
LDA #$02 : STA $2F
LDA #$02 : STA LinkFaceDir
.not_down
LDA $F0 : AND #$02 : BEQ .not_left
@@ -428,7 +428,7 @@ HandleMovement:
LDA.w .drag_x_high, Y : ADC.w DragYH : STA DragYH
LDA #$03 : STA $031C
LDA #$05 : STA $3D
LDA #$04 : STA $2F
LDA #$04 : STA LinkFaceDir
.not_left
LDA $F0 : AND #$01 : BEQ .not_right
@@ -437,7 +437,7 @@ HandleMovement:
LDA.w .drag_x_high, Y : ADC.w DragYH : STA DragYH
LDA #$04 : STA $031C
LDA #$05 : STA $3D
LDA #$06 : STA $2F
LDA #$06 : STA LinkFaceDir
.not_right
RTS
@@ -479,8 +479,8 @@ DekuLink_HoverBasedOnInput:
JSL Link_CancelDash
; Pos - Cache Pos = difference
LDA $22 : SEC : SBC $3F : STA $31
LDA $20 : SEC : SBC $3E : STA $30
LDA LinkX : SEC : SBC $3F : STA $31
LDA LinkY : SEC : SBC $3E : STA $30
LDA $5C : AND #$1F : BNE .continue_me
DEC $24
@@ -506,7 +506,6 @@ DekuLink_HoverBasedOnInput:
STZ.w $0FC1
STZ.w $011A : STZ.w $011B : STZ.w $011C : STZ.w $011D
.no_turtle_rock_trigger
LDY.b #$00
LDA.b $3C : BEQ .no_sword_charge
@@ -514,7 +513,7 @@ DekuLink_HoverBasedOnInput:
.no_sword_charge
STY.b $3A
STZ.b $5E : STZ.w $0325
STZ.b $5E
; Set height at end of hover
; This makes it so the landing animation timer looks correct
; Floating for a bit, then slowly landing on the ground

View File

@@ -516,6 +516,12 @@ LinkXH = $23 ; High position X of link
; Direction link is pushing against
LinkPushDir = $26
; Link's subpixel velocity
; when this value overflows, Link's main velocity gains an extra pixel
; reset on direction change, so not really a positional subpixel
LinkSubVelY = $2A
LinkSubVelX = $2B
; Direction link is facing
; 00:Up, 02:Down, 04:Left, 06:Right
LinkFaceDir = $2F
@@ -658,7 +664,7 @@ ApplyLinksMovementToCamera = $07E9D3
HandleIndoorCameraAndDoors = $07F42F
Link_HandleVelocityAndSandDrag = $07E3E0
Link_HandleVelocityAndSandDrag = $07E3DD
Link_HandleMovingAnimation_FullLongEntry = $07E6A6
Link_HandleMovingAnimation_General = $07E765