summaryrefslogtreecommitdiff
path: root/soh/src/code/z_map_exp.c
diff options
context:
space:
mode:
Diffstat (limited to 'soh/src/code/z_map_exp.c')
-rw-r--r--soh/src/code/z_map_exp.c44
1 files changed, 17 insertions, 27 deletions
diff --git a/soh/src/code/z_map_exp.c b/soh/src/code/z_map_exp.c
index a2d7b8e2a..33c89fe47 100644
--- a/soh/src/code/z_map_exp.c
+++ b/soh/src/code/z_map_exp.c
@@ -601,8 +601,14 @@ void Minimap_DrawCompassIcons(PlayState* play) {
s32 pad;
Player* player = GET_PLAYER(play);
s16 tempX, tempZ;
- const Color_RGB8 LastEntrance_arrow = { 200, 0, 0 };
- const Color_RGB8 CurrentPosition_arrow = { 200, 255, 0 };
+ Color_RGB8 lastEntranceColor = { 200, 0, 0 };
+ if (CVar_GetS32("gCosmetics.Hud_MinimapEntrance.Changed", 0)) {
+ lastEntranceColor = CVar_GetRGB("gCosmetics.Hud_MinimapEntrance.Value", lastEntranceColor);
+ }
+ Color_RGB8 currentPositionColor = { 200, 255, 0 };
+ if (CVar_GetS32("gCosmetics.Hud_MinimapPosition.Changed", 0)) {
+ currentPositionColor = CVar_GetRGB("gCosmetics.Hud_MinimapPosition.Value", currentPositionColor);
+ }
s16 X_Margins_Minimap;
s16 Y_Margins_Minimap;
if (CVar_GetS32("gMinimapUseMargins", 0) != 0) {
@@ -659,11 +665,7 @@ void Minimap_DrawCompassIcons(PlayState* play) {
gSPMatrix(OVERLAY_DISP++, MATRIX_NEWMTX(play->state.gfxCtx),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
- if (CVar_GetS32("gHudColors", 1) == 2) {
- gDPSetPrimColor(OVERLAY_DISP++, 0, 0xFF, CVar_GetRGB("gCCMinimapCPPrim", CurrentPosition_arrow).r, CVar_GetRGB("gCCMinimapCPPrim", CurrentPosition_arrow).g, CVar_GetRGB("gCCMinimapCPPrim", CurrentPosition_arrow).b, 255);
- } else {
- gDPSetPrimColor(OVERLAY_DISP++, 0, 0xFF, CurrentPosition_arrow.r, CurrentPosition_arrow.g, CurrentPosition_arrow.b, 255);
- }
+ gDPSetPrimColor(OVERLAY_DISP++, 0, 0xFF, currentPositionColor.r, currentPositionColor.g, currentPositionColor.b, 255);
gSPDisplayList(OVERLAY_DISP++, gCompassArrowDL);
//Player map entry (red arrow)
@@ -700,11 +702,7 @@ void Minimap_DrawCompassIcons(PlayState* play) {
gSPMatrix(OVERLAY_DISP++, MATRIX_NEWMTX(play->state.gfxCtx),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
- if (CVar_GetS32("gHudColors", 1) == 2) {
- gDPSetPrimColor(OVERLAY_DISP++, 0, 0xFF, CVar_GetRGB("gCCMinimapLEPrim", LastEntrance_arrow).r,CVar_GetRGB("gCCMinimapLEPrim", LastEntrance_arrow).g,CVar_GetRGB("gCCMinimapLEPrim", LastEntrance_arrow).b, 255);
- } else {
- gDPSetPrimColor(OVERLAY_DISP++, 0, 0xFF, LastEntrance_arrow.r, LastEntrance_arrow.g, LastEntrance_arrow.b, 255);
- }
+ gDPSetPrimColor(OVERLAY_DISP++, 0, 0xFF, lastEntranceColor.r, lastEntranceColor.g, lastEntranceColor.b, 255);
gSPDisplayList(OVERLAY_DISP++, gCompassArrowDL);
}
@@ -715,8 +713,10 @@ void Minimap_Draw(PlayState* play) {
s32 pad[2];
InterfaceContext* interfaceCtx = &play->interfaceCtx;
s32 mapIndex = gSaveContext.mapIndex;
- const Color_RGB8 Dungeon_minimap = {100, 255, 255};
- const Color_RGB8 Overworld_minimap = {R_MINIMAP_COLOR(0), R_MINIMAP_COLOR(1), R_MINIMAP_COLOR(2)};
+ Color_RGB8 minimapColor = {0, 255, 255};
+ if (CVar_GetS32("gCosmetics.Hud_Minimap.Changed", 0)) {
+ minimapColor = CVar_GetRGB("gCosmetics.Hud_Minimap.Value", minimapColor);
+ }
OPEN_DISPS(play->state.gfxCtx);
@@ -754,11 +754,7 @@ void Minimap_Draw(PlayState* play) {
TEXEL0, 0, PRIMITIVE, 0);
if (CHECK_DUNGEON_ITEM(DUNGEON_MAP, mapIndex)) {
- if (CVar_GetS32("gHudColors", 1) == 2) { //Dungeon minimap
- gDPSetPrimColor(OVERLAY_DISP++, 0, 0, CVar_GetRGB("gCCMinimapDGNPrim", Dungeon_minimap).r,CVar_GetRGB("gCCMinimapDGNPrim", Dungeon_minimap).g,CVar_GetRGB("gCCMinimapDGNPrim", Dungeon_minimap).b, interfaceCtx->minimapAlpha);
- } else {
- gDPSetPrimColor(OVERLAY_DISP++, 0, 0, Dungeon_minimap.r, Dungeon_minimap.g, Dungeon_minimap.b, interfaceCtx->minimapAlpha);
- }
+ gDPSetPrimColor(OVERLAY_DISP++, 0, 0, minimapColor.r, minimapColor.g, minimapColor.b, interfaceCtx->minimapAlpha);
gSPInvalidateTexCache(OVERLAY_DISP++, interfaceCtx->mapSegment);
gDPLoadTextureBlock_4b(OVERLAY_DISP++, interfaceCtx->mapSegment, G_IM_FMT_I, 96, 85, 0,
@@ -829,11 +825,7 @@ void Minimap_Draw(PlayState* play) {
Gfx_SetupDL_39Overlay(play->state.gfxCtx);
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
- if (CVar_GetS32("gHudColors", 1) == 2) {//Overworld minimap
- gDPSetPrimColor(OVERLAY_DISP++, 0, 0, CVar_GetRGB("gCCMinimapPrim", Overworld_minimap).r,CVar_GetRGB("gCCMinimapPrim", Overworld_minimap).g,CVar_GetRGB("gCCMinimapPrim", Overworld_minimap).b, interfaceCtx->minimapAlpha);
- } else {
- gDPSetPrimColor(OVERLAY_DISP++, 0, 0, Overworld_minimap.r, Overworld_minimap.g, Overworld_minimap.b, interfaceCtx->minimapAlpha);
- }
+ gDPSetPrimColor(OVERLAY_DISP++, 0, 0, minimapColor.r, minimapColor.g, minimapColor.b, interfaceCtx->minimapAlpha);
gDPLoadTextureBlock_4b(OVERLAY_DISP++, interfaceCtx->mapSegment, G_IM_FMT_IA,
gMapData->owMinimapWidth[mapIndex], gMapData->owMinimapHeight[mapIndex], 0,
@@ -861,9 +853,7 @@ void Minimap_Draw(PlayState* play) {
(oWMiniMapY + gMapData->owMinimapHeight[mapIndex]) << 2, G_TX_RENDERTILE, 0,
0, 1 << 10, 1 << 10);
- if (CVar_GetS32("gHudColors", 1) != 2) {//This need to be added else it will color dungeon entrance icon too. (it re-init prim color to default color)
- gDPSetPrimColor(OVERLAY_DISP++, 0, 0, Overworld_minimap.r, Overworld_minimap.g, Overworld_minimap.b, interfaceCtx->minimapAlpha);
- }
+ gDPSetPrimColor(OVERLAY_DISP++, 0, 0, minimapColor.r, minimapColor.g, minimapColor.b, interfaceCtx->minimapAlpha);
if (((play->sceneNum != SCENE_SPOT01) && (play->sceneNum != SCENE_SPOT04) &&
(play->sceneNum != SCENE_SPOT08)) ||