From 04745c8705bf784c7cff8b9e3c4ee33ce361b957 Mon Sep 17 00:00:00 2001 From: zohassadar Date: Sat, 19 Oct 2024 02:03:11 +0000 Subject: [PATCH] A held increments/decrements level by 10 --- src/gamemode/levelmenu.asm | 20 ++++++++++++++++++-- src/util/menuthrottle.asm | 8 ++++---- 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/src/gamemode/levelmenu.asm b/src/gamemode/levelmenu.asm index ae3fa08b..d531bd28 100644 --- a/src/gamemode/levelmenu.asm +++ b/src/gamemode/levelmenu.asm @@ -241,6 +241,7 @@ highScoreClearUpOrLeave: @ret: rts +levelModifier := generalCounter levelControlCustomLevel: jsr handleReadyInput @@ -256,6 +257,14 @@ levelControlCustomLevel: jsr loadSpriteIntoOamStaging @indicatorEnd: +; A pressed means a jump of 10 instead of 1 + ldx #$01 + lda heldButtons_player1 + and #BUTTON_A + beq @aNotPressed + ldx #$0A +@aNotPressed: + stx levelModifier ; lda #BUTTON_RIGHT ; jsr menuThrottle ; beq @checkUpPressed @@ -268,13 +277,20 @@ levelControlCustomLevel: lda #BUTTON_UP jsr menuThrottle beq @checkDownPressed - inc customLevel + lda customLevel + clc + adc levelModifier + sta customLevel +@skipIncrement: jsr @changeLevel @checkDownPressed: lda #BUTTON_DOWN jsr menuThrottle beq @checkLeftPressed - dec customLevel + lda customLevel + sec + sbc levelModifier + sta customLevel jsr @changeLevel @checkLeftPressed: diff --git a/src/util/menuthrottle.asm b/src/util/menuthrottle.asm index 99ab0737..97ef6f6e 100644 --- a/src/util/menuthrottle.asm +++ b/src/util/menuthrottle.asm @@ -1,11 +1,11 @@ menuThrottle: ; add DAS-like movement to the menu sta menuThrottleTmp lda newlyPressedButtons_player1 - cmp menuThrottleTmp - beq menuThrottleNew + and menuThrottleTmp + bne menuThrottleNew lda heldButtons_player1 - cmp menuThrottleTmp - bne @endThrottle + and menuThrottleTmp + beq @endThrottle dec menuMoveThrottle beq menuThrottleContinue @endThrottle: