From f9683a2280449428532c55b09cdc4e64b55907bf Mon Sep 17 00:00:00 2001 From: scawful Date: Sun, 1 Dec 2024 10:14:40 -0500 Subject: [PATCH] Cleanup Leever --- Sprites/Enemies/leever.asm | 138 +++++++++++++++++-------------------- 1 file changed, 64 insertions(+), 74 deletions(-) diff --git a/Sprites/Enemies/leever.asm b/Sprites/Enemies/leever.asm index 83e2b56..b106da6 100644 --- a/Sprites/Enemies/leever.asm +++ b/Sprites/Enemies/leever.asm @@ -36,14 +36,6 @@ Sprite_Leever_Long: RTL } -Sprite_Leever_Prep: -{ - PHB : PHK : PLB - LDA.b #$40 : STA.w SprTimerA, X - PLB - RTL -} - Sprite_Leever_Move: { JSL Sprite_ApplySpeedTowardsPlayer @@ -117,93 +109,91 @@ Sprite_Leever_Main: JSR Sprite_Leever_Move RTS } - - } Sprite_Leever_Draw: { -JSL Sprite_PrepOamCoord -JSL Sprite_OAM_AllocateDeferToPlayer + JSL Sprite_PrepOamCoord + JSL Sprite_OAM_AllocateDeferToPlayer -LDA $0DC0, X : CLC : ADC $0D90, X : TAY;Animation Frame -LDA .start_index, Y : STA $06 + LDA $0DC0, X : CLC : ADC $0D90, X : TAY;Animation Frame + LDA .start_index, Y : STA $06 -PHX -LDX .nbr_of_tiles, Y ;amount of tiles -1 -LDY.b #$00 -.nextTile + PHX + LDX .nbr_of_tiles, Y ;amount of tiles -1 + LDY.b #$00 + .nextTile -PHX ; Save current Tile Index? + PHX ; Save current Tile Index? -TXA : CLC : ADC $06 ; Add Animation Index Offset + TXA : CLC : ADC $06 ; Add Animation Index Offset -PHA ; Keep the value with animation index offset? + PHA ; Keep the value with animation index offset? -ASL A : TAX + ASL A : TAX -REP #$20 + REP #$20 -LDA $00 : CLC : ADC .x_offsets, X : STA ($90), Y -AND.w #$0100 : STA $0E -INY -LDA $02 : CLC : ADC .y_offsets, X : STA ($90), Y -CLC : ADC #$0010 : CMP.w #$0100 -SEP #$20 -BCC .on_screen_y + LDA $00 : CLC : ADC .x_offsets, X : STA ($90), Y + AND.w #$0100 : STA $0E + INY + LDA $02 : CLC : ADC .y_offsets, X : STA ($90), Y + CLC : ADC #$0010 : CMP.w #$0100 + SEP #$20 + BCC .on_screen_y -LDA.b #$F0 : STA ($90), Y ;Put the sprite out of the way -STA $0E -.on_screen_y + LDA.b #$F0 : STA ($90), Y ;Put the sprite out of the way + STA $0E + .on_screen_y -PLX ; Pullback Animation Index Offset (without the *2 not 16bit anymore) -INY -LDA .chr, X : STA ($90), Y -INY -LDA .properties, X : STA ($90), Y + PLX ; Pullback Animation Index Offset (without the *2 not 16bit anymore) + INY + LDA .chr, X : STA ($90), Y + INY + LDA .properties, X : STA ($90), Y -PHY + PHY -TYA : LSR #2 : TAY + TYA : LSR #2 : TAY -LDA .sizes, X : ORA $0F : STA ($92), Y ; store size in oam buffer + LDA .sizes, X : ORA $0F : STA ($92), Y ; store size in oam buffer -PLY : INY + PLY : INY -PLX : DEX : BPL .nextTile + PLX : DEX : BPL .nextTile -PLX + PLX -RTS + RTS -.start_index -db $00, $01, $02, $03 -.nbr_of_tiles -db 0, 0, 0, 0 -.x_offsets -dw 0 -dw 0 -dw 0 -dw 0 -.y_offsets -dw 0 -dw 0 -dw 0 -dw 0 -.chr -db $E0 -db $E2 -db $C2 -db $C0 -.properties -db $33 -db $33 -db $33 -db $33 -.sizes -db $02 -db $02 -db $02 -db $02 + .start_index + db $00, $01, $02, $03 + .nbr_of_tiles + db 0, 0, 0, 0 + .x_offsets + dw 0 + dw 0 + dw 0 + dw 0 + .y_offsets + dw 0 + dw 0 + dw 0 + dw 0 + .chr + db $E0 + db $E2 + db $C2 + db $C0 + .properties + db $33 + db $33 + db $33 + db $33 + .sizes + db $02 + db $02 + db $02 + db $02 }