summaryrefslogtreecommitdiff
path: root/quantum/rgb_matrix/animations/cycle_out_in_dual_anim.h
diff options
context:
space:
mode:
Diffstat (limited to 'quantum/rgb_matrix/animations/cycle_out_in_dual_anim.h')
-rw-r--r--quantum/rgb_matrix/animations/cycle_out_in_dual_anim.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/quantum/rgb_matrix/animations/cycle_out_in_dual_anim.h b/quantum/rgb_matrix/animations/cycle_out_in_dual_anim.h
new file mode 100644
index 0000000000..fe8396140f
--- /dev/null
+++ b/quantum/rgb_matrix/animations/cycle_out_in_dual_anim.h
@@ -0,0 +1,15 @@
+#ifndef DISABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
+RGB_MATRIX_EFFECT(CYCLE_OUT_IN_DUAL)
+# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS
+
+static HSV CYCLE_OUT_IN_DUAL_math(HSV hsv, int16_t dx, int16_t dy, uint8_t time) {
+ dx = (k_rgb_matrix_center.x / 2) - abs8(dx);
+ uint8_t dist = sqrt16(dx * dx + dy * dy);
+ hsv.h = 3 * dist + time;
+ return hsv;
+}
+
+bool CYCLE_OUT_IN_DUAL(effect_params_t* params) { return effect_runner_dx_dy(params, &CYCLE_OUT_IN_DUAL_math); }
+
+# endif // RGB_MATRIX_CUSTOM_EFFECT_IMPLS
+#endif // DISABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL