Skip to content

Commit

Permalink
Adds option to lock a cosmetic from being randomized (HarbourMasters#…
Browse files Browse the repository at this point in the history
  • Loading branch information
lilacLunatic authored and th-2021 committed Nov 28, 2022
1 parent 2027107 commit 1bbe0a5
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 1 deletion.
6 changes: 5 additions & 1 deletion soh/soh/Enhancements/cosmetics/CosmeticsEditor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,10 @@ void GetRandomColorRGB(CosmeticsColorSection* ColorSection, int SectionSize){
ImVec4 colors = Element->ModifiedColor;
Color_RGBA8 NewColors = { 0, 0, 0, 255 };
std::string cvarName = Element->CvarName;
std::string cvarLock = cvarName + "Lock";
if(CVar_GetS32(cvarLock.c_str(), 0)) {
continue;
}
std::string Cvar_RBM = cvarName + "RBM";
colors = RANDOMIZE_32(255);
NewColors.r = fmin(fmax(colors.x * 255, 0), 255);
Expand Down Expand Up @@ -893,7 +897,7 @@ void Draw_Placements(){
}
}
void Draw_HUDButtons(){
if (CVar_GetS32("gHudColors",0) ==2 ){
if (CVar_GetS32("gHudColors",0) == 2){
DrawRandomizeResetButton("every buttons", Buttons_section, SECTION_SIZE(Buttons_section));
if (ImGui::CollapsingHeader("A Button colors & A Cursors")) {
if (ImGui::BeginTable("tableBTN_A", 1, FlagsTable)) {
Expand Down
10 changes: 10 additions & 0 deletions soh/soh/UIWidgets.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -474,6 +474,15 @@ namespace UIWidgets {
return changed;
}

void DrawLockColorCheckbox(const char* cvarName) {
std::string Cvar_Lock = cvarName;
Cvar_Lock += "Lock";
s32 lock = CVar_GetS32(Cvar_Lock.c_str(), 0);
std::string FullName = "Lock##" + Cvar_Lock;
EnhancementCheckbox(FullName.c_str(), Cvar_Lock.c_str());
Tooltip("Prevents this color from being changed upon selecting \"Randomize all\"");
}

void RainbowColor(const char* cvarName, ImVec4* colors) {
std::string Cvar_RBM = cvarName;
Cvar_RBM += "RBM";
Expand Down Expand Up @@ -546,6 +555,7 @@ namespace UIWidgets {
}
RainbowColor(cvarName, &ColorRGBA);
}
DrawLockColorCheckbox(cvarName);
ImGui::NewLine();
ImGui::PopItemWidth();

Expand Down

0 comments on commit 1bbe0a5

Please sign in to comment.