Christmas mode now works with even RGBED_NUM
Added Christmas mode steps to reduce red and green colors blending into each other Added Christmas mode interval Increased green hue to 120
This commit is contained in:
parent
246d2583ff
commit
0e548f8b5d
2 changed files with 12 additions and 4 deletions
|
@ -237,7 +237,7 @@ void rgblight_mode(uint8_t mode) {
|
||||||
#ifdef RGBLIGHT_ANIMATIONS
|
#ifdef RGBLIGHT_ANIMATIONS
|
||||||
rgblight_timer_disable();
|
rgblight_timer_disable();
|
||||||
#endif
|
#endif
|
||||||
} else if (rgblight_config.mode >= 2 && rgblight_config.mode <= 23) {
|
} else if (rgblight_config.mode >= 2 && rgblight_config.mode <= 24) {
|
||||||
// MODE 2-5, breathing
|
// MODE 2-5, breathing
|
||||||
// MODE 6-8, rainbow mood
|
// MODE 6-8, rainbow mood
|
||||||
// MODE 9-14, rainbow swirl
|
// MODE 9-14, rainbow swirl
|
||||||
|
@ -450,7 +450,7 @@ void rgblight_task(void) {
|
||||||
} else if (rgblight_config.mode >= 21 && rgblight_config.mode <= 23) {
|
} else if (rgblight_config.mode >= 21 && rgblight_config.mode <= 23) {
|
||||||
// mode = 21 to 23, knight mode
|
// mode = 21 to 23, knight mode
|
||||||
rgblight_effect_knight(rgblight_config.mode - 21);
|
rgblight_effect_knight(rgblight_config.mode - 21);
|
||||||
} else {
|
} else if (rgblight_config.mode == 24) {
|
||||||
// mode = 24, christmas mode
|
// mode = 24, christmas mode
|
||||||
rgblight_effect_christmas();
|
rgblight_effect_christmas();
|
||||||
}
|
}
|
||||||
|
@ -604,13 +604,13 @@ void rgblight_effect_christmas(void) {
|
||||||
static uint16_t last_timer = 0;
|
static uint16_t last_timer = 0;
|
||||||
uint16_t hue;
|
uint16_t hue;
|
||||||
uint8_t i;
|
uint8_t i;
|
||||||
if (timer_elapsed(last_timer) < 1000) {
|
if (timer_elapsed(last_timer) < RGBLIGHT_EFFECT_CHRISTMAS_INTERVAL) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
last_timer = timer_read();
|
last_timer = timer_read();
|
||||||
current_offset = (current_offset + 1) % 2;
|
current_offset = (current_offset + 1) % 2;
|
||||||
for (i = 0; i < RGBLED_NUM; i++) {
|
for (i = 0; i < RGBLED_NUM; i++) {
|
||||||
hue = 0 + ((RGBLED_NUM * (i + current_offset)) % 2) * 80;
|
hue = 0 + ((i/RGBLIGHT_EFFECT_CHRISTMAS_STEP + current_offset) % 2) * 120;
|
||||||
sethsv(hue, rgblight_config.sat, rgblight_config.val, (LED_TYPE *)&led[i]);
|
sethsv(hue, rgblight_config.sat, rgblight_config.val, (LED_TYPE *)&led[i]);
|
||||||
}
|
}
|
||||||
rgblight_set();
|
rgblight_set();
|
||||||
|
|
|
@ -22,6 +22,14 @@
|
||||||
#define RGBLIGHT_EFFECT_DUALKNIGHT_LENGTH 4
|
#define RGBLIGHT_EFFECT_DUALKNIGHT_LENGTH 4
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef RGBLIGHT_EFFECT_CHRISTMAS_INTERVAL
|
||||||
|
#define RGBLIGHT_EFFECT_CHRISTMAS_INTERVAL 1000
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef RGBLIGHT_EFFECT_CHRISTMAS_STEP
|
||||||
|
#define RGBLIGHT_EFFECT_CHRISTMAS_STEP 2
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef RGBLIGHT_HUE_STEP
|
#ifndef RGBLIGHT_HUE_STEP
|
||||||
#define RGBLIGHT_HUE_STEP 10
|
#define RGBLIGHT_HUE_STEP 10
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue