CycleEffect can now be configured to show the effects sequentially or randomly.
This commit is contained in:
parent
a2b0f7106f
commit
f7230b54a2
@ -2,13 +2,18 @@
|
|||||||
|
|
||||||
void CycleEffect::changeEffect() {
|
void CycleEffect::changeEffect() {
|
||||||
int new_id;
|
int new_id;
|
||||||
|
if (EFFECT_CYCLE_RANDOM) {
|
||||||
do {
|
do {
|
||||||
new_id = random8(cycle_effects->size());
|
new_id = random8(cycle_effects->size());
|
||||||
} while (new_id == effect_id);
|
} while (new_id == effect_id);
|
||||||
LOG("CycleEffect * Changing effect to #"); LOGln(new_id);
|
} else {
|
||||||
|
new_id = (effect_id + 1) % cycle_effects->size();
|
||||||
|
}
|
||||||
|
LOG("CycleEffect * Changing effect from #"); LOG(effect_id); LOG(" to #"); LOGln(new_id);
|
||||||
if (effect) effect->stop();
|
if (effect) effect->stop();
|
||||||
effect = cycle_effects->get(new_id);
|
effect = cycle_effects->get(new_id);
|
||||||
effect->start();
|
effect->start();
|
||||||
|
effect_id = new_id;
|
||||||
effectSince = millis();
|
effectSince = millis();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user