Refactor LED Breathing effect with runner (#24540)

This commit is contained in:
フィルターペーパー
2024-10-29 01:56:54 +08:00
committed by GitHub
parent 95406717e7
commit 06b7dce565

View File

@ -2,17 +2,12 @@
LED_MATRIX_EFFECT(BREATHING) LED_MATRIX_EFFECT(BREATHING)
# ifdef LED_MATRIX_CUSTOM_EFFECT_IMPLS # ifdef LED_MATRIX_CUSTOM_EFFECT_IMPLS
bool BREATHING(effect_params_t* params) { static uint8_t BREATHING_math(uint8_t val, uint8_t i, uint8_t time) {
LED_MATRIX_USE_LIMITS(led_min, led_max); return scale8(abs8(sin8(time / 2) - 128) * 2, val);
}
uint8_t val = led_matrix_eeconfig.val; bool BREATHING(effect_params_t* params) {
uint16_t time = scale16by8(g_led_timer, led_matrix_eeconfig.speed / 8); return effect_runner_i(params, &BREATHING_math);
val = scale8(abs8(sin8(time) - 128) * 2, val);
for (uint8_t i = led_min; i < led_max; i++) {
LED_MATRIX_TEST_LED_FLAGS();
led_matrix_set_value(i, val);
}
return led_matrix_check_finished_leds(led_max);
} }
# endif // LED_MATRIX_CUSTOM_EFFECT_IMPLS # endif // LED_MATRIX_CUSTOM_EFFECT_IMPLS