-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- // Enable Dynamic Macros.
- if (!process_record_dynamic_macro(keycode, record)) {
- return false;
+uint32_t layer_state_set_user(uint32_t state) {
+ switch (biton32(state)) {
+ case _BL:
+ custom_backlight_level(0);
+ rgblight_sethsv_noeeprom(180,100,255);
+ break;
+ case _WL:
+ custom_backlight_level(1);
+ rgblight_sethsv_noeeprom(180,95,240);
+ break;
+ case _NL:
+ custom_backlight_level(1);
+ rgblight_sethsv_noeeprom(180,90,225);
+ break;
+ case _DL:
+ custom_backlight_level(1);
+ rgblight_sethsv_noeeprom(180,85,210);
+ break;
+ case _CL:
+ custom_backlight_level(1);
+ rgblight_sethsv_noeeprom(180,80,195);
+ break;
+ case _FL:
+ custom_backlight_level(2);
+ rgblight_sethsv_noeeprom(230,255,255);
+ break;
+ case _AL:
+ custom_backlight_level(3);
+ rgblight_sethsv_noeeprom(250,255,255);
+ break;
+ default:
+ custom_backlight_level(0);
+ rgblight_sethsv_noeeprom(180,100,100);
+ break;