Effect parameters are now mostly defined from within config.h
This commit is contained in:
parent
49494a3cc3
commit
a1efacdc0a
@ -27,4 +27,14 @@ uint8_t config_brightness = 20; // Can be overwritten via MQTT_TOPIC_BRIGHTNESS
|
||||
|
||||
#define FPS 50
|
||||
#define SHOW_TEXT_DELAY 100
|
||||
|
||||
// Effect config
|
||||
uint16_t config_effect_cycle_time = 300; // Time in seconds between cycling effects.
|
||||
|
||||
uint16_t config_effect_matrix_length_min = 4;
|
||||
uint16_t config_effect_matrix_length_max = 20;
|
||||
uint16_t config_effect_matrix_speed_min = 50;
|
||||
uint16_t config_effect_matrix_speed_max = 135;
|
||||
|
||||
uint16_t config_effect_single_dynamic_loop_time = 200;
|
||||
uint16_t config_effect_multi_dynamic_loop_time = 1400;
|
||||
|
13
effects.h
13
effects.h
@ -272,7 +272,7 @@ class SingleDynamic : public Effect {
|
||||
protected:
|
||||
static const int factor = 2;
|
||||
static const int tile_count = LED_WIDTH/factor * LED_HEIGHT/factor;
|
||||
virtual int getLoopTime() { return 200; }
|
||||
virtual int getLoopTime() { return config_effect_single_dynamic_loop_time; }
|
||||
CRGB tiles[tile_count];
|
||||
CRGB old_tiles[tile_count];
|
||||
uint8_t blend = 0;
|
||||
@ -281,7 +281,7 @@ class SingleDynamic : public Effect {
|
||||
for (int i=0; i<tile_count; i++) tiles[i] = CHSV(random8(), 180, 255);
|
||||
}
|
||||
virtual void update() {
|
||||
tiles[random8() % tile_count] = CHSV(random8(), 180, 255);
|
||||
tiles[random8(tile_count)] = CHSV(random8(), 180, 255);
|
||||
}
|
||||
boolean can_be_shown_with_clock() { return true; }
|
||||
virtual void loop() {
|
||||
@ -301,7 +301,7 @@ class SingleDynamic : public Effect {
|
||||
|
||||
class MultiDynamic : public SingleDynamic {
|
||||
protected:
|
||||
virtual int getLoopTime() { return 1400; }
|
||||
int getLoopTime() { return config_effect_multi_dynamic_loop_time; }
|
||||
public:
|
||||
void update() {
|
||||
for (int i=0; i<tile_count; i++) tiles[i] = CHSV(random8(), 180, 255);
|
||||
@ -321,14 +321,15 @@ class MatrixColumn {
|
||||
MatrixColumn(Window* win, int xPos) {
|
||||
window = win;
|
||||
x = xPos;
|
||||
running = false;
|
||||
start();
|
||||
y = random8(0, win->h);
|
||||
}
|
||||
|
||||
void start() {
|
||||
y=-1;
|
||||
length = random8()%16+4;
|
||||
length = random8(config_effect_matrix_length_min, config_effect_matrix_length_max);
|
||||
running = true;
|
||||
speed = random8()/3 + 50;
|
||||
speed = random8(config_effect_matrix_speed_min, config_effect_matrix_speed_max);
|
||||
}
|
||||
|
||||
void advance() {
|
||||
|
Loading…
Reference in New Issue
Block a user