From 290f6f4bc680e3da5ad2c67b988a0db657050689 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sun, 11 Jun 2023 01:03:01 -0400 Subject: [PATCH] sb: more or less have logic in reasonable state --- games/sb/TODO | 6 +----- games/sb/asplode.s | 9 ++++++++- games/sb/asplode_head.s | 3 +++ 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/games/sb/TODO b/games/sb/TODO index 534e85f6..74fbb4c5 100644 --- a/games/sb/TODO +++ b/games/sb/TODO @@ -1,14 +1,10 @@ Strongbadzone: + Implement rest of audio -+ Ball movement logic. Is actually just 2D - -> Collision detect with head. Decrement count, play sound - -> Collision detect with player -+ Do the color mask (different blacks) + Animate side walls -> This is going to involve fancy memory management + Faster hgr copy? + Optimize sprite size -+ Allow lowercase keyboard (see duck code) ++ Can't continually hold shield up Duck: + Implement throwing diff --git a/games/sb/asplode.s b/games/sb/asplode.s index 8f09a81b..cd8f99ed 100644 --- a/games/sb/asplode.s +++ b/games/sb/asplode.s @@ -601,17 +601,24 @@ no_more_right: jmp main_loop shield_left: + lda SHIELD_POSITION + bne done_adjust_shield lda #SHIELD_UP_LEFT bne adjust_shield shield_center: + lda SHIELD_POSITION + bne done_adjust_shield lda #SHIELD_UP_CENTER bne adjust_shield shield_right: + lda SHIELD_POSITION + bne done_adjust_shield lda #SHIELD_UP_RIGHT adjust_shield: sta SHIELD_POSITION - lda #5 + lda #4 sta SHIELD_COUNT +done_adjust_shield: jmp main_loop asplode_asplode: diff --git a/games/sb/asplode_head.s b/games/sb/asplode_head.s index b4088f89..4134000a 100644 --- a/games/sb/asplode_head.s +++ b/games/sb/asplode_head.s @@ -173,10 +173,13 @@ done_asplode_head: lda #0 sta SHIELD_POSITION sta BULLET_Y + sta SHIELD_COUNT lda #1 sta BULLET_YDIR + bit KEYRESET ; clear any keypresses during asplode + rts