From d57646ab5fab64ba3315c24f1217bc80c930d014 Mon Sep 17 00:00:00 2001 From: MysterD Date: Mon, 24 Apr 2023 13:12:12 -0700 Subject: [PATCH] Reset hud color if it was altered --- src/pc/djui/djui.c | 1 + src/pc/djui/djui_hud_utils.c | 9 +++++++++ src/pc/djui/djui_hud_utils.h | 1 + 3 files changed, 11 insertions(+) diff --git a/src/pc/djui/djui.c b/src/pc/djui/djui.c index 0c0ea1c67..fa13b55f1 100644 --- a/src/pc/djui/djui.c +++ b/src/pc/djui/djui.c @@ -95,6 +95,7 @@ static void djui_reset_hud_params(void) { djui_hud_set_resolution(RESOLUTION_DJUI); djui_hud_set_font(FONT_NORMAL); djui_hud_set_rotation(0, 0, 0); + djui_hud_reset_color(); } void djui_render(void) { diff --git a/src/pc/djui/djui_hud_utils.c b/src/pc/djui/djui_hud_utils.c index 13c1b9145..98df95464 100644 --- a/src/pc/djui/djui_hud_utils.c +++ b/src/pc/djui/djui_hud_utils.c @@ -97,6 +97,7 @@ struct InterpHud { }; static struct InterpHud sInterpHuds[MAX_INTERP_HUD] = { 0 }; static u16 sInterpHudCount = 0; +static u8 sColorAltered = FALSE; void patch_djui_hud_before(void) { sInterpHudCount = 0; @@ -151,6 +152,14 @@ void djui_hud_set_font(enum DjuiFontType fontType) { void djui_hud_set_color(u8 r, u8 g, u8 b, u8 a) { gDPSetEnvColor(gDisplayListHead++, r, g, b, a); + sColorAltered = TRUE; +} + +void djui_hud_reset_color(void) { + if (sColorAltered) { + sColorAltered = FALSE; + gDPSetEnvColor(gDisplayListHead++, 255, 255, 255, 255); + } } void djui_hud_set_rotation(s16 rotation, f32 pivotX, f32 pivotY) { diff --git a/src/pc/djui/djui_hud_utils.h b/src/pc/djui/djui_hud_utils.h index fcb8bd078..377a91ca5 100644 --- a/src/pc/djui/djui_hud_utils.h +++ b/src/pc/djui/djui_hud_utils.h @@ -39,6 +39,7 @@ extern u8 gDjuiHudLockMouse; void djui_hud_set_resolution(enum HudUtilsResolution resolutionType); void djui_hud_set_font(enum DjuiFontType fontType); void djui_hud_set_color(u8 r, u8 g, u8 b, u8 a); +void djui_hud_reset_color(void); void djui_hud_set_rotation(s16 rotation, f32 pivotX, f32 pivotY); u32 djui_hud_get_screen_width(void);