aboutsummaryrefslogtreecommitdiff
path: root/src/jetpac.s
diff options
context:
space:
mode:
authorMiquel Sabaté Solà <mssola@mssola.com>2026-03-20 21:52:36 +0100
committerMiquel Sabaté Solà <mssola@mssola.com>2026-03-22 15:17:24 +0100
commitfb23cf51040f06bfcfbaf318d7b452d76ffbedfb (patch)
treec65bd96d3789cb8dd60e1f6baf7942a68528a84a /src/jetpac.s
parentb7ec9a63ebf0895f9c1940772a5735f905cccfb8 (diff)
downloadjetpac.nes-fb23cf51040f06bfcfbaf318d7b452d76ffbedfb.tar.gz
jetpac.nes-fb23cf51040f06bfcfbaf318d7b452d76ffbedfb.zip
Try to initialize enemies on unique Y coordinates
That is, our PRNG algorithm is so stupid that sometimes it cycles into the same value multiple times. While play testing, sometimes we were so unlucky that we got all enemies on the same Y screen coordinate. As funny as these situations can be, this shouldn't happen, so I have introduced an (awesomely named) function that makes a harder effort at finding a unique random number. Signed-off-by: Miquel Sabaté Solà <mssola@mssola.com>
Diffstat (limited to 'src/jetpac.s')
-rw-r--r--src/jetpac.s1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/jetpac.s b/src/jetpac.s
index f99c8b0..3cf8f0a 100644
--- a/src/jetpac.s
+++ b/src/jetpac.s
@@ -130,6 +130,7 @@
sta Joypad::zp_prev
sta Player::zp_state
sta Items::zp_state
+ sta Prng::zp_last_rand
;; Initialize the level. We allow the build system to pass its own value for
;; this in `LEVEL`, just in case we want to debug the enemy of a specific