mirror of
https://github.com/gunner47/GyverLamp.git
synced 2025-08-08 01:20:31 +03:00
71 lines
2.0 KiB
C++
71 lines
2.0 KiB
C++
uint32_t effTimer;
|
|
|
|
void effectsTick()
|
|
{
|
|
if (!dawnFlag)
|
|
{
|
|
if (ONflag && (millis() - effTimer >= ((currentMode < 5 || currentMode > 13) ? modes[currentMode].Speed : 50)))
|
|
{
|
|
effTimer = millis();
|
|
switch (currentMode)
|
|
{
|
|
case 0: sparklesRoutine(); break;
|
|
case 1: fireRoutine(); break;
|
|
case 2: rainbowVertical(); break;
|
|
case 3: rainbowHorizontal(); break;
|
|
case 4: colorsRoutine(); break;
|
|
case 5: madnessNoise(); break;
|
|
case 6: cloudNoise(); break;
|
|
case 7: lavaNoise(); break;
|
|
case 8: plasmaNoise(); break;
|
|
case 9: rainbowNoise(); break;
|
|
case 10: rainbowStripeNoise(); break;
|
|
case 11: zebraNoise(); break;
|
|
case 12: forestNoise(); break;
|
|
case 13: oceanNoise(); break;
|
|
case 14: colorRoutine(); break;
|
|
case 15: snowRoutine(); break;
|
|
case 16: matrixRoutine(); break;
|
|
case 17: lightersRoutine(); break;
|
|
case 18: lightBalls(); break;
|
|
case 19: whiteColor(); break;
|
|
default: break;
|
|
}
|
|
FastLED.show();
|
|
}
|
|
}
|
|
}
|
|
|
|
void changePower()
|
|
{
|
|
if (ONflag)
|
|
{
|
|
effectsTick();
|
|
for (uint8_t i = 0; i < modes[currentMode].Brightness; i = constrain(i + 8, 0, modes[currentMode].Brightness))
|
|
{
|
|
FastLED.setBrightness(i);
|
|
delay(1);
|
|
FastLED.show();
|
|
}
|
|
FastLED.setBrightness(modes[currentMode].Brightness);
|
|
delay(2);
|
|
FastLED.show();
|
|
}
|
|
else
|
|
{
|
|
effectsTick();
|
|
for (uint8_t i = modes[currentMode].Brightness; i > 0; i = constrain(i - 8, 0, modes[currentMode].Brightness))
|
|
{
|
|
FastLED.setBrightness(i);
|
|
delay(1);
|
|
FastLED.show();
|
|
}
|
|
FastLED.clear();
|
|
delay(2);
|
|
FastLED.show();
|
|
}
|
|
TimerManager::TimerRunning = false;
|
|
TimerManager::TimerHasFired = false;
|
|
TimerManager::TimeToFire = 0ULL;
|
|
}
|