From 06e8a5af419fcd45610f9a260e0c1e6f298c4cd4 Mon Sep 17 00:00:00 2001 From: aMannus Date: Tue, 4 Oct 2022 02:50:05 +0200 Subject: Fix navi colors in cosmetics editor (#1684) * Fix navi colors in cosmetics editor * Fix navi description for props --- soh/src/code/z_actor.c | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) (limited to 'soh/src/code') diff --git a/soh/src/code/z_actor.c b/soh/src/code/z_actor.c index 1c87ed859..d3dbf9216 100644 --- a/soh/src/code/z_actor.c +++ b/soh/src/code/z_actor.c @@ -335,8 +335,10 @@ void func_8002BE98(TargetContext* targetCtx, s32 actorCategory, GlobalContext* g void func_8002BF60(TargetContext* targetCtx, Actor* actor, s32 actorCategory, GlobalContext* globalCtx) { NaviColor* naviColor = &sNaviColorList[actorCategory]; + Color_RGB8 customInnerNaviColor; + Color_RGB8 customOuterNaviColor; - if (CVar_GetS32("gUseNaviCol",0) != 1 ) { + if (!CVar_GetS32("gUseNaviCol",0)) { if (actorCategory == ACTORCAT_PLAYER) { naviColor->inner.r = 255; naviColor->inner.g = 255; naviColor->inner.b = 255; naviColor->outer.r = 0; naviColor->outer.g = 0; naviColor->outer.b = 255; @@ -355,21 +357,27 @@ void func_8002BF60(TargetContext* targetCtx, Actor* actor, s32 actorCategory, Gl } } else { if (actorCategory == ACTORCAT_PLAYER) { - naviColor->inner = CVar_GetRGBA("gNavi_Idle_Inner", naviColor->inner); - naviColor->outer = CVar_GetRGBA("gNavi_Idle_Outer", naviColor->outer); + customInnerNaviColor = CVar_GetRGB("gNavi_Idle_Inner", (Color_RGB8){ 0, 0, 0 }); + customOuterNaviColor = CVar_GetRGB("gNavi_Idle_Outer", (Color_RGB8){ 0, 0, 0 }); } if (actorCategory == ACTORCAT_NPC) { - naviColor->inner = CVar_GetRGBA("gNavi_NPC_Inner", naviColor->inner); - naviColor->outer = CVar_GetRGBA("gNavi_NPC_Outer", naviColor->outer); + customInnerNaviColor = CVar_GetRGB("gNavi_NPC_Inner", (Color_RGB8){ 0, 0, 0 }); + customOuterNaviColor = CVar_GetRGB("gNavi_NPC_Outer", (Color_RGB8){ 0, 0, 0 }); } if (actorCategory == ACTORCAT_BOSS || actorCategory == ACTORCAT_ENEMY) { - naviColor->inner = CVar_GetRGBA("gNavi_Enemy_Inner", naviColor->inner); - naviColor->outer = CVar_GetRGBA("gNavi_Enemy_Outer", naviColor->outer); + customInnerNaviColor = CVar_GetRGB("gNavi_Enemy_Inner", (Color_RGB8){ 0, 0, 0 }); + customOuterNaviColor = CVar_GetRGB("gNavi_Enemy_Outer", (Color_RGB8){ 0, 0, 0 }); } if (actorCategory == ACTORCAT_PROP) { - naviColor->inner = CVar_GetRGBA("gNavi_Prop_Inner", naviColor->inner); - naviColor->outer = CVar_GetRGBA("gNavi_Prop_Outer", naviColor->outer); + customInnerNaviColor = CVar_GetRGB("gNavi_Prop_Inner", (Color_RGB8){ 0, 0, 0 }); + customOuterNaviColor = CVar_GetRGB("gNavi_Prop_Outer", (Color_RGB8){ 0, 0, 0 }); } + naviColor->inner.r = customInnerNaviColor.r; + naviColor->inner.g = customInnerNaviColor.g; + naviColor->inner.b = customInnerNaviColor.b; + naviColor->outer.r = customOuterNaviColor.r; + naviColor->outer.g = customOuterNaviColor.g; + naviColor->outer.b = customOuterNaviColor.b; } targetCtx->naviRefPos.x = actor->focus.pos.x; -- cgit v1.2.3