add Sprite_FloatAwayFromPlayer

This commit is contained in:
scawful
2024-06-21 19:26:14 -04:00
parent 26a668d147
commit 25d6905148
2 changed files with 28 additions and 14 deletions

View File

@@ -1,6 +1,5 @@
;==========================================================
; =========================================================
;Long function, return Carry Set if Active
;==========================================================
Sprite_CheckActive:
{
@@ -24,9 +23,9 @@ Sprite_CheckActive:
RTL
}
; =========================================================
; make the sprite move X axis
;==========================================================
Sprite_MoveHoriz:
{
LDA.w $0D50, X : BEQ .no_velocity
@@ -48,10 +47,8 @@ Sprite_MoveHoriz:
RTL
}
;==========================================================
; =========================================================
; make the sprite move both directions (also height)
;==========================================================
Sprite_MoveXyz:
JSL Sprite_MoveAltitude
@@ -59,9 +56,8 @@ Sprite_Move:
JSL Sprite_MoveHoriz
; no RTL, just continue into Sprite_MoveVert
;==========================================================
; =========================================================
; make the sprite move Y axis
;==========================================================
Sprite_MoveVert:
{
@@ -84,9 +80,8 @@ Sprite_MoveVert:
RTL
}
;==========================================================
; =========================================================
; make the sprite move Z axis (height)
;==========================================================
Sprite_MoveZ:
Sprite_MoveAltitude:
@@ -107,11 +102,11 @@ Sprite_MoveAltitude:
}
;==========================================================
; =========================================================
; make the sprite bounce toward player (like vitreous)
; Movement, Collision are handled by this function (height:20 = vitreous)
; $09 = speed, $08 = max height
;==========================================================
Sprite_BounceTowardPlayer:
{
@@ -130,7 +125,7 @@ Sprite_BounceTowardPlayer:
JSL Sprite_ApplySpeedTowardsPlayer
LDA.b #$21 : JSL Sound_SetSfx2PanLong
; LDA.b #$21 : JSL Sound_SetSfx2PanLong
.aloft
LDA.w $0F70, X : BEQ .dontmove
@@ -163,6 +158,16 @@ Sprite_FloatTowardPlayer:
RTL
}
Sprite_FloatAwayFromPlayer:
{
LDA $0D50, X : EOR.b #$FF : INC : STA $0D50, X
LDA $0D40, X : EOR.b #$FF : INC : STA $0D40, X
JSL Sprite_MoveAltitude
RTL
}
Sprite_BounceFromTileCollision:
{
JSL Sprite_CheckTileCollision : AND.b #$03 : BEQ ++