Better feedback (lights and sounds) for reentry (#4)
At Mike's request, I added better feedback (lights and sounds) for reentry after being tagged out. The UX now mimics the countdown at the beginning of the game (with the accompanying boop-boop-boop-boop-boop-BEEP sounds), which should help new players understand what is going on. Co-authored-by: Joe Kearney <joe@clubk.club> Reviewed-on: #4
This commit is contained in:
parent
9431dc4534
commit
7aa827563a
2 changed files with 93 additions and 5 deletions
|
@ -23,7 +23,10 @@
|
|||
|
||||
static color_t All_On_Color = COLOR_WHITE;
|
||||
static DisplayStyle_T All_On_Style = DISPLAY_STYLE_DEFAULT;
|
||||
static uint32_t Time_in_Animation_in_ms = 0;
|
||||
static uint8_t Heartbeat_Phase = 0;
|
||||
static const uint8_t MIN_HEARTBEAT_BRIGHTNESS = 50;
|
||||
|
||||
static uint16_t Time_in_Animation_in_ms = 0;
|
||||
|
||||
static void Reset(void *Data)
|
||||
{
|
||||
|
@ -93,6 +96,29 @@ static AnimationStepResult_T NextStep(void)
|
|||
#endif // CONFIG_KTAG_N_NEOPIXEL_CHANNELS
|
||||
}
|
||||
}
|
||||
else if (All_On_Style == DISPLAY_STYLE_BLINK)
|
||||
{
|
||||
if ((Time_in_Animation_in_ms % 200) < 100)
|
||||
{
|
||||
NeoPixels_Set_Color_Range_On_All_Channels(0, CONFIG_KTAG_MAX_NEOPIXELS_PER_CHANNEL - 1, All_On_Color);
|
||||
}
|
||||
else
|
||||
{
|
||||
NeoPixels_Set_Color_Range_On_All_Channels(0, CONFIG_KTAG_MAX_NEOPIXELS_PER_CHANNEL - 1, COLOR_BLACK);
|
||||
}
|
||||
}
|
||||
else if (All_On_Style == DISPLAY_STYLE_HEARTBEAT)
|
||||
{
|
||||
uint8_t Brightness = Sine8[Heartbeat_Phase];
|
||||
Heartbeat_Phase += 2;
|
||||
|
||||
if (Brightness < MIN_HEARTBEAT_BRIGHTNESS)
|
||||
{
|
||||
Brightness = MIN_HEARTBEAT_BRIGHTNESS;
|
||||
}
|
||||
|
||||
NeoPixels_Set_Color_Range_On_All_Channels(0, CONFIG_KTAG_MAX_NEOPIXELS_PER_CHANNEL - 1, ApplyMask(All_On_Color, Brightness));
|
||||
}
|
||||
else
|
||||
{
|
||||
NeoPixels_Set_Color_Range_On_All_Channels(0, CONFIG_KTAG_MAX_NEOPIXELS_PER_CHANNEL - 1, All_On_Color);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue