Add ThunderGhost attack act as barrier, inflict recoil

This commit is contained in:
scawful
2024-11-21 21:28:12 -05:00
parent 6def732e80
commit 454f84382e

View File

@@ -36,34 +36,28 @@
Sprite_ThunderGhost_Long: Sprite_ThunderGhost_Long:
{ {
PHB : PHK : PLB PHB : PHK : PLB
JSR Sprite_ThunderGhost_Draw
JSR Sprite_ThunderGhost_Draw ; Call the draw code
JSL Sprite_DrawShadow JSL Sprite_DrawShadow
JSL Sprite_CheckActive ; Check if game is not paused JSL Sprite_CheckActive : BCC .SpriteIsNotActive
BCC .SpriteIsNotActive ; Skip Main code is sprite is innactive JSR Sprite_ThunderGhost_Main
JSR Sprite_ThunderGhost_Main ; Call the main sprite code
.SpriteIsNotActive .SpriteIsNotActive
PLB ; Get back the databank we stored previously PLB
RTL ; Go back to original code RTL
} }
Sprite_ThunderGhost_Prep: Sprite_ThunderGhost_Prep:
{ {
PHB : PHK : PLB PHB : PHK : PLB
LDA.l SWORD : DEC A : TAY LDA.l SWORD : DEC A : TAY
LDA.w .health, Y : STA.w SprHealth, X LDA.w .health, Y : STA.w SprHealth, X
LDA.b #$08 : STA.w SprTimerB, X LDA.b #$08 : STA.w SprTimerB, X
LDA.b #$08 : STA.w SprTimerA, X LDA.b #$08 : STA.w SprTimerA, X
PLB PLB
RTL RTL
.health .health
db $08, $10, $20, $C0 db $06, $0A, $0C, $10
} }
; ========================================================= ; =========================================================
@@ -79,12 +73,10 @@ Sprite_ThunderGhost_Main:
dw CastThunderLeft dw CastThunderLeft
dw CastThunderRight dw CastThunderRight
ThunderGhostFaceForward: ThunderGhostFaceForward:
{ {
%PlayAnimation(0, 1, 16) %PlayAnimation(0, 1, 16)
JSR Sprite_ThunderGhost_Move JSR Sprite_ThunderGhost_Move
RTS RTS
} }
@@ -106,6 +98,7 @@ Sprite_ThunderGhost_Main:
{ {
%StartOnFrame(6) %StartOnFrame(6)
%PlayAnimation(6, 6, 16) %PlayAnimation(6, 6, 16)
JSL Sprite_PlayerCantPassThrough
JSL Sprite_CheckDamageToPlayerSameLayer JSL Sprite_CheckDamageToPlayerSameLayer
JSL Sprite_Move JSL Sprite_Move
LDA.w SprTimerA, X : BNE + LDA.w SprTimerA, X : BNE +
@@ -118,6 +111,7 @@ Sprite_ThunderGhost_Main:
{ {
%StartOnFrame(6) %StartOnFrame(6)
%PlayAnimation(7, 7, 16) %PlayAnimation(7, 7, 16)
JSL Sprite_PlayerCantPassThrough
JSL Sprite_CheckDamageToPlayerSameLayer JSL Sprite_CheckDamageToPlayerSameLayer
JSL Sprite_Move JSL Sprite_Move
LDA.w SprTimerA, X : BNE + LDA.w SprTimerA, X : BNE +