update wolfos AI movement

This commit is contained in:
scawful
2024-05-27 22:34:50 -04:00
parent 27ae1796ad
commit 9b62e05f08

View File

@@ -69,6 +69,7 @@ macro Wolfos_Move()
JSL Sprite_DamageFlash_Long JSL Sprite_DamageFlash_Long
JSL Sprite_CheckDamageFromPlayerLong JSL Sprite_CheckDamageFromPlayerLong
JSL Sprite_PlayerCantPassThrough JSL Sprite_PlayerCantPassThrough
JSL Sprite_BounceFromTileCollision
JSL Sprite_Move JSL Sprite_Move
JSR Wolfos_Move JSR Wolfos_Move
@@ -76,26 +77,22 @@ endmacro
Wolfos_Move: Wolfos_Move:
{ {
LDA SprTimerA, X : BNE + JSL Sprite_ApplySpeedTowardsPlayer
JSL Sprite_IsToRightOfPlayer : TYA : BEQ .right JSL Sprite_IsToRightOfPlayer : TYA : BEQ .right
LDA.b #$20 : STA.w SprTimerA, X
%GotoAction(3) ; Walk Left %GotoAction(3) ; Walk Left
RTS RTS
.right .right
LDA.b #$20 : STA.w SprTimerA, X
%GotoAction(2) ; Walk Right %GotoAction(2) ; Walk Right
+ RTS
JSL Sprite_IsBelowPlayer : TYA : BEQ .above_player JSL Sprite_IsBelowPlayer : TYA : BEQ .above_player
LDA.b #$40 : STA.w SprTimerA, X
%GotoAction(1) ; Attack Back %GotoAction(1) ; Attack Back
RTS RTS
.above_player .above_player
LDA.b #$40 : STA.w SprTimerA, X
%GotoAction(0) ; Attack Forward %GotoAction(0) ; Attack Forward
RTS RTS
} }
!NormalSpeed = $06 !NormalSpeed = $06
@@ -119,7 +116,6 @@ Sprite_Wolfos_Main:
%Wolfos_Move() %Wolfos_Move()
LDA #!NormalSpeed : STA.w SprYSpeed, X LDA #!NormalSpeed : STA.w SprYSpeed, X
STZ.w SprXSpeed, X
RTS RTS
} }
@@ -130,7 +126,6 @@ Sprite_Wolfos_Main:
%Wolfos_Move() %Wolfos_Move()
LDA #-!NormalSpeed : STA.w SprYSpeed, X LDA #-!NormalSpeed : STA.w SprYSpeed, X
STZ.w SprXSpeed, X
RTS RTS
} }
@@ -139,9 +134,14 @@ Sprite_Wolfos_Main:
{ {
%PlayAnimation(6, 8, 10) %PlayAnimation(6, 8, 10)
%Wolfos_Move() %Wolfos_Move()
JSL Sprite_IsBelowPlayer : TYA : BEQ .above_player
%GotoAction(1) ; Attack Back
RTS
.above_player
%GotoAction(0) ; Attack Forward
RTS
LDA #!NormalSpeed : STA.w SprXSpeed, X LDA #!NormalSpeed : STA.w SprXSpeed, X
STZ.w SprYSpeed, X
JSL GetRandomInt : AND.b #$3F : BNE + JSL GetRandomInt : AND.b #$3F : BNE +
%GotoAction(4) %GotoAction(4)
@@ -155,8 +155,15 @@ Sprite_Wolfos_Main:
%PlayAnimation(9, 11, 10) %PlayAnimation(9, 11, 10)
%Wolfos_Move() %Wolfos_Move()
JSL Sprite_IsBelowPlayer : TYA : BEQ .above_player
%GotoAction(1) ; Attack Back
RTS
.above_player
%GotoAction(0) ; Attack Forward
RTS
LDA #-!NormalSpeed : STA.w SprXSpeed, X LDA #-!NormalSpeed : STA.w SprXSpeed, X
STZ.w SprYSpeed, X
JSL GetRandomInt : AND.b #$3F : BNE + JSL GetRandomInt : AND.b #$3F : BNE +
%GotoAction(5) %GotoAction(5)
@@ -170,9 +177,7 @@ Sprite_Wolfos_Main:
%PlayAnimation(12, 13, 10) %PlayAnimation(12, 13, 10)
%Wolfos_Move() %Wolfos_Move()
LDA #!AttackSpeed : STA.w SprXSpeed, X LDA #!AttackSpeed : STA.w SprXSpeed, X
STZ.w SprYSpeed, X
RTS RTS
} }
@@ -183,7 +188,6 @@ Sprite_Wolfos_Main:
%Wolfos_Move() %Wolfos_Move()
LDA #-!AttackSpeed : STA.w SprXSpeed, X LDA #-!AttackSpeed : STA.w SprXSpeed, X
STZ.w SprYSpeed, X
RTS RTS
} }