From 9f964f63d3292c498a9de2371c2fe81ea7c4c620 Mon Sep 17 00:00:00 2001 From: C0d3v Date: Mon, 19 Jan 2026 13:21:42 +0100 Subject: [PATCH] Add easy mode based on reset pulse duration --- terminal/puzzle_leftRight/src/main.cpp | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/terminal/puzzle_leftRight/src/main.cpp b/terminal/puzzle_leftRight/src/main.cpp index 21af13c..79960a8 100644 --- a/terminal/puzzle_leftRight/src/main.cpp +++ b/terminal/puzzle_leftRight/src/main.cpp @@ -36,9 +36,15 @@ int ledIndex(int logical) { return (NUM_LEDS - 1) - logical; } -void generateNewSequence() { +void generateNewSequence(bool easy) { for (int i = 0; i < NUM_LEDS; i++) { - sequence[i] = random(0, 2); + if (easy) + { + sequence[i] = 0; + } + else { + sequence[i] = random(0, 2); + } } } @@ -110,10 +116,12 @@ void setup() { strip.show(); randomSeed(millis()); - generateNewSequence(); + generateNewSequence(false); resetGame(); } + +bool reset = false; void loop() { //Detecting turn-off if (powerOnState && digitalRead(POWER_PIN) == LOW) { @@ -129,10 +137,16 @@ void loop() { return; } // Master-D2 HIGH → neue Sequenz - if (digitalRead(randomizer_master_pin) == HIGH) { - generateNewSequence(); + if (digitalRead(randomizer_master_pin) == HIGH) + { + unsigned long resetTimer = millis(); + while (digitalRead(randomizer_master_pin) == HIGH) + { + delay(10); + } + generateNewSequence(millis() - resetTimer > 150); resetGame(); - delay(50); // Puls kurz blockieren + } int currentButton1State = digitalRead(BUTTON1_PIN);