aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMiquel Sabaté Solà <mssola@mssola.com>2026-04-02 14:40:12 +0200
committerMiquel Sabaté Solà <mssola@mssola.com>2026-04-02 14:40:12 +0200
commitcb1111055f7b03989daac63675d27bfd156a4e21 (patch)
treea3038f24c830b053dc7b63e7935f63e0bd50f7b3 /src
parentba2711cb490c26e05c1b8f6cd3e1d081309d15fd (diff)
downloadjetpac.nes-cb1111055f7b03989daac63675d27bfd156a4e21.tar.gz
jetpac.nes-cb1111055f7b03989daac63675d27bfd156a4e21.zip
Cycle the kind of shuttle to be used
In preparation to having multiple kinds of shuttles as in the original game, introduce the 'Globals::zp_shuttle_kind' variable, which is just a helper value by masking out the 'Globals::zp_level' variable. This in turn will be the index for selecting which tile IDs for each shuttle part. Signed-off-by: Miquel Sabaté Solà <mssola@mssola.com>
Diffstat (limited to 'src')
-rw-r--r--src/driver.s5
-rw-r--r--src/jetpac.s6
2 files changed, 11 insertions, 0 deletions
diff --git a/src/driver.s b/src/driver.s
index b367c63..9d31604 100644
--- a/src/driver.s
+++ b/src/driver.s
@@ -885,6 +885,11 @@
lda Globals::zp_level
and #%00000111
sta Globals::zp_level_kind
+ lda Globals::zp_level
+ and #%00001100
+ lsr
+ lsr
+ sta Globals::zp_shuttle_kind
;; Just like we did in Drivers::switch(), we re-initialize some things
;; like timers and the items. Note that re-setting the timers will force
diff --git a/src/jetpac.s b/src/jetpac.s
index 5716be8..b9e6311 100644
--- a/src/jetpac.s
+++ b/src/jetpac.s
@@ -153,9 +153,15 @@
sta Globals::zp_level
and #%00000111
sta Globals::zp_level_kind
+ lda #LEVEL
+ and #%00001100
+ lsr
+ lsr
+ sta Globals::zp_shuttle_kind
.else
sta Globals::zp_level
sta Globals::zp_level_kind
+ sta Globals::zp_shuttle_kind
.endif
;; Initialize the assets for the game. If the first sprite is not