mirror of
https://github.com/qmk/qmk_firmware
synced 2024-11-17 17:35:30 +00:00
Add customizable snake and knight animation increments (#16337)
This commit is contained in:
parent
4d67fe66a3
commit
5b6faa173b
2 changed files with 12 additions and 4 deletions
|
@ -1273,19 +1273,19 @@ void rgblight_effect_snake(animation_status_t *anim) {
|
||||||
}
|
}
|
||||||
rgblight_set();
|
rgblight_set();
|
||||||
if (increment == 1) {
|
if (increment == 1) {
|
||||||
if (pos - 1 < 0) {
|
if (pos - RGBLIGHT_EFFECT_SNAKE_INCREMENT < 0) {
|
||||||
pos = rgblight_ranges.effect_num_leds - 1;
|
pos = rgblight_ranges.effect_num_leds - 1;
|
||||||
# if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC)
|
# if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC)
|
||||||
anim->pos = 0;
|
anim->pos = 0;
|
||||||
# endif
|
# endif
|
||||||
} else {
|
} else {
|
||||||
pos -= 1;
|
pos -= RGBLIGHT_EFFECT_SNAKE_INCREMENT;
|
||||||
# if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC)
|
# if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC)
|
||||||
anim->pos = 1;
|
anim->pos = 1;
|
||||||
# endif
|
# endif
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
pos = (pos + 1) % rgblight_ranges.effect_num_leds;
|
pos = (pos + RGBLIGHT_EFFECT_SNAKE_INCREMENT) % rgblight_ranges.effect_num_leds;
|
||||||
# if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC)
|
# if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC)
|
||||||
anim->pos = pos;
|
anim->pos = pos;
|
||||||
# endif
|
# endif
|
||||||
|
@ -1299,7 +1299,7 @@ __attribute__((weak)) const uint8_t RGBLED_KNIGHT_INTERVALS[] PROGMEM = {127, 63
|
||||||
void rgblight_effect_knight(animation_status_t *anim) {
|
void rgblight_effect_knight(animation_status_t *anim) {
|
||||||
static int8_t low_bound = 0;
|
static int8_t low_bound = 0;
|
||||||
static int8_t high_bound = RGBLIGHT_EFFECT_KNIGHT_LENGTH - 1;
|
static int8_t high_bound = RGBLIGHT_EFFECT_KNIGHT_LENGTH - 1;
|
||||||
static int8_t increment = 1;
|
static int8_t increment = RGBLIGHT_EFFECT_KNIGHT_INCREMENT;
|
||||||
uint8_t i, cur;
|
uint8_t i, cur;
|
||||||
|
|
||||||
# if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC)
|
# if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC)
|
||||||
|
|
|
@ -126,10 +126,18 @@ enum RGBLIGHT_EFFECT_MODE {
|
||||||
# define RGBLIGHT_EFFECT_SNAKE_LENGTH 4
|
# define RGBLIGHT_EFFECT_SNAKE_LENGTH 4
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef RGBLIGHT_EFFECT_SNAKE_INCREMENT
|
||||||
|
# define RGBLIGHT_EFFECT_SNAKE_INCREMENT 1
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef RGBLIGHT_EFFECT_KNIGHT_LENGTH
|
#ifndef RGBLIGHT_EFFECT_KNIGHT_LENGTH
|
||||||
# define RGBLIGHT_EFFECT_KNIGHT_LENGTH 3
|
# define RGBLIGHT_EFFECT_KNIGHT_LENGTH 3
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef RGBLIGHT_EFFECT_KNIGHT_INCREMENT
|
||||||
|
# define RGBLIGHT_EFFECT_KNIGHT_INCREMENT 1
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef RGBLIGHT_EFFECT_KNIGHT_OFFSET
|
#ifndef RGBLIGHT_EFFECT_KNIGHT_OFFSET
|
||||||
# define RGBLIGHT_EFFECT_KNIGHT_OFFSET 0
|
# define RGBLIGHT_EFFECT_KNIGHT_OFFSET 0
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue