mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-11-22 01:12:19 -05:00
Cosmetics editor - Feature requested (#841)
* Precise positionning, reset margin and pos * Fix big hearts issues * add + and - to the editor * add const to the char* * Fix labels issues
This commit is contained in:
parent
c7c16c39b0
commit
df756b2ce0
@ -1,6 +1,7 @@
|
||||
#include "CosmeticsEditor.h"
|
||||
#include "../../util.h"
|
||||
#include "../libultraship/ImGuiImpl.h"
|
||||
#include "GameSettings.h"
|
||||
|
||||
#include <array>
|
||||
#include <bit>
|
||||
@ -97,6 +98,50 @@ const char* RainbowColorCvarList[] = {
|
||||
"gCCFileChoosePrim", "gCCFileChooseTextPrim", "gCCEquipmentsPrim", "gCCItemsPrim",
|
||||
"gCCMapsPrim", "gCCQuestsPrim", "gCCSavePrim", "gCCGameoverPrim",
|
||||
};
|
||||
const char* MarginCvarList[] {
|
||||
"gHearts", "gMagicBar", "gVSOA", "gBBtn", "gABtn", "gStartBtn",
|
||||
"gCBtnU", "gCBtnD", "gCBtnL", "gCBtnR", "gDPad", "gMinimap",
|
||||
"gSKC", "gRC", "gCarrots", "gTimers", "gAS", "gTCM", "gTCB"
|
||||
};
|
||||
|
||||
void SetMarginAll(const char* ButtonName, bool SetActivated) {
|
||||
if (ImGui::Button(ButtonName)) {
|
||||
u8 arrayLength = sizeof(MarginCvarList) / sizeof(*MarginCvarList);
|
||||
//MarginCvarNonAnchor is an array that list every element that has No anchor by default, because if that the case this function will not touch it with pose type 0.
|
||||
const char* MarginCvarNonAnchor[] { "gCarrots", "gTimers", "gAS", "gTCM","gTCB" };
|
||||
u8 arrayLengthNonMargin = sizeof(MarginCvarNonAnchor) / sizeof(*MarginCvarNonAnchor);
|
||||
for (u8 s = 0; s < arrayLength; s++) {
|
||||
std::string cvarName = MarginCvarList[s];
|
||||
std::string cvarPosType = cvarName+"PosType";
|
||||
std::string cvarNameMargins = cvarName+"UseMargins";
|
||||
if (CVar_GetS32(cvarPosType.c_str(),0) <= 2 && SetActivated) { //Our element is not Hidden or Non anchor
|
||||
for(int i = 0; i < arrayLengthNonMargin; i++){
|
||||
if(MarginCvarNonAnchor[i] == cvarName && CVar_GetS32(cvarPosType.c_str(),0) == 0){ //Our element is both in original position and do not have anchor by default so we skip it.
|
||||
CVar_SetS32(cvarNameMargins.c_str(), false); //force set off
|
||||
} else if(MarginCvarNonAnchor[i] == cvarName && CVar_GetS32(cvarPosType.c_str(),0) != 0){ //Our element is not in original position regarless it has no anchor by default since player made it anchored we can toggle margins
|
||||
CVar_SetS32(cvarNameMargins.c_str(), SetActivated);
|
||||
} else if(MarginCvarNonAnchor[i] != cvarName){ //Our elements has an anchor by default so regarless of it's position right now that okay to toggle margins.
|
||||
CVar_SetS32(cvarNameMargins.c_str(), SetActivated);
|
||||
}
|
||||
}
|
||||
} else { //Since the user requested to turn all margin off no need to do any check there.
|
||||
CVar_SetS32(cvarNameMargins.c_str(), SetActivated);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
void ResetPositionAll() {
|
||||
if (ImGui::Button("Reset all positions")) {
|
||||
u8 arrayLength = sizeof(MarginCvarList) / sizeof(*MarginCvarList);
|
||||
for (u8 s = 0; s < arrayLength; s++) {
|
||||
std::string cvarName = MarginCvarList[s];
|
||||
std::string cvarPosType = cvarName+"PosType";
|
||||
std::string cvarNameMargins = cvarName+"UseMargins";
|
||||
CVar_SetS32(cvarPosType.c_str(), 0);
|
||||
CVar_SetS32(cvarNameMargins.c_str(), false); //Turn margin off to everythings as that original position.
|
||||
}
|
||||
}
|
||||
}
|
||||
void LoadRainbowColor(bool& open) {
|
||||
u8 arrayLength = sizeof(RainbowColorCvarList) / sizeof(*RainbowColorCvarList);
|
||||
for (u8 s = 0; s < arrayLength; s++) {
|
||||
@ -140,6 +185,7 @@ void LoadRainbowColor(bool& open) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Table_InitHeader(bool has_header = true) {
|
||||
if (has_header) {
|
||||
ImGui::TableHeadersRow();
|
||||
@ -147,6 +193,7 @@ void Table_InitHeader(bool has_header = true) {
|
||||
ImGui::TableNextRow();
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::AlignTextToFramePadding(); //This is to adjust Vertical pos of item in a cell to be normlized.
|
||||
ImGui::SetCursorPosX(ImGui::GetCursorPosX() - 2);
|
||||
ImGui::PushItemWidth(ImGui::GetContentRegionAvail().x);
|
||||
}
|
||||
void Table_NextCol() {
|
||||
@ -160,8 +207,10 @@ void Table_NextLine() {
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::PushItemWidth(ImGui::GetContentRegionAvail().x);
|
||||
}
|
||||
|
||||
void Draw_HelpIcon(const std::string& helptext, bool sameline = true, int Pos = 0) {
|
||||
// place the ? button to the most of the right side of the cell it is using.
|
||||
ImGui::PushItemWidth(ImGui::GetContentRegionAvail().x-60);
|
||||
ImGui::SetCursorPosX(ImGui::GetCursorPosX() + ImGui::GetContentRegionAvail().x - 15);
|
||||
ImGui::SmallButton("?");
|
||||
SohImGui::Tooltip(helptext.c_str());
|
||||
@ -169,6 +218,7 @@ void Draw_HelpIcon(const std::string& helptext, bool sameline = true, int Pos =
|
||||
//I do not use ImGui::SameLine(); because it make some element vanish.
|
||||
ImGui::SetCursorPosY(ImGui::GetCursorPosY() - 22);
|
||||
}
|
||||
ImGui::PushItemWidth(ImGui::GetContentRegionAvail().x);
|
||||
}
|
||||
void Draw_Npcs(){
|
||||
SohImGui::EnhancementCheckbox("Custom colors for Navi", "gUseNaviCol");
|
||||
@ -376,10 +426,18 @@ void Draw_Placements(){
|
||||
if (ImGui::BeginTable("tableMargins", 1, ImGuiTableFlags_BordersH | ImGuiTableFlags_BordersV)) {
|
||||
ImGui::TableSetupColumn("General margins settings", ImGuiTableColumnFlags_WidthStretch | ImGuiTableColumnFlags_IndentEnable | ImGuiTableColumnFlags_NoSort, TablesCellsWidth);
|
||||
Table_InitHeader();
|
||||
SohImGui::EnhancementSliderInt("Top : %dx", "##UIMARGINT", "gHUDMargin_T", (ImGui::GetWindowViewport()->Size.y/2)*-1, 25, "");
|
||||
SohImGui::EnhancementSliderInt("Left: %dx", "##UIMARGINL", "gHUDMargin_L", -25, ImGui::GetWindowViewport()->Size.x, "");
|
||||
SohImGui::EnhancementSliderInt("Right: %dx", "##UIMARGINR", "gHUDMargin_R", (ImGui::GetWindowViewport()->Size.x)*-1, 25, "");
|
||||
SohImGui::EnhancementSliderInt("Bottom: %dx", "##UIMARGINB", "gHUDMargin_B", (ImGui::GetWindowViewport()->Size.y/2)*-1, 25, "");
|
||||
SohImGui::EnhancementSliderInt("Top : %dx", "##UIMARGINT", "gHUDMargin_T", (ImGui::GetWindowViewport()->Size.y/2)*-1, 25, "", 0, true);
|
||||
SohImGui::EnhancementSliderInt("Left: %dx", "##UIMARGINL", "gHUDMargin_L", -25, ImGui::GetWindowViewport()->Size.x, "", 0, true);
|
||||
SohImGui::EnhancementSliderInt("Right: %dx", "##UIMARGINR", "gHUDMargin_R", (ImGui::GetWindowViewport()->Size.x)*-1, 25, "", 0, true);
|
||||
SohImGui::EnhancementSliderInt("Bottom: %dx", "##UIMARGINB", "gHUDMargin_B", (ImGui::GetWindowViewport()->Size.y/2)*-1, 25, "", 0, true);
|
||||
SetMarginAll("All margins on",true);
|
||||
SohImGui::Tooltip("Set most of the element to use margin\nSome elements with default position will not be affected\nElements without Archor or Hidden will not be turned on");
|
||||
ImGui::SameLine();
|
||||
SetMarginAll("All margins off",false);
|
||||
SohImGui::Tooltip("Set all of the element to not use margin");
|
||||
ImGui::SameLine();
|
||||
ResetPositionAll();
|
||||
SohImGui::Tooltip("Revert every element to use their original position and no margins");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
}
|
||||
@ -399,9 +457,9 @@ void Draw_Placements(){
|
||||
SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gHeartsCountPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##HeartCountPosY", "gHeartsPosY", -22, ImGui::GetWindowViewport()->Size.y, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##HeartCountPosY", "gHeartsPosY", -22, ImGui::GetWindowViewport()->Size.y, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##HeartCountPosX", "gHeartsPosX", -25, ImGui::GetWindowViewport()->Size.x, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##HeartCountPosX", "gHeartsPosX", -25, ImGui::GetWindowViewport()->Size.x, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -423,9 +481,9 @@ void Draw_Placements(){
|
||||
SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gMagicBarPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##MagicBarPosY", "gMagicBarPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##MagicBarPosY", "gMagicBarPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##MagicBarPosX", "gMagicBarPosX", -5, ImGui::GetWindowViewport()->Size.x/2, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##MagicBarPosX", "gMagicBarPosX", -5, ImGui::GetWindowViewport()->Size.x/2, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -447,7 +505,7 @@ void Draw_Placements(){
|
||||
SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gVSOAPosType", 4); //in case you want only SFX
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##VSOAPosY", "gVSOAPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##VSOAPosY", "gVSOAPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
s16 Min_X_Dpad = 0;
|
||||
s16 Max_X_Dpad = ImGui::GetWindowViewport()->Size.x/2;
|
||||
@ -456,7 +514,7 @@ void Draw_Placements(){
|
||||
} else if(CVar_GetS32("gVSOAPosType",0) == 4){
|
||||
Min_X_Dpad = (ImGui::GetWindowViewport()->Size.x/2)*-1;
|
||||
}
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##VSOAPosX", "gVSOAPosX", Min_X_Dpad, Max_X_Dpad, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##VSOAPosX", "gVSOAPosX", Min_X_Dpad, Max_X_Dpad, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -478,9 +536,9 @@ void Draw_Placements(){
|
||||
SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gBBtnPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##BBtnPosY", "gBBtnPosY", 0, ImGui::GetWindowViewport()->Size.y/4+50, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##BBtnPosY", "gBBtnPosY", 0, ImGui::GetWindowViewport()->Size.y/4+50, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##BBtnPosX", "gBBtnPosX", -1, ImGui::GetWindowViewport()->Size.x-50, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##BBtnPosX", "gBBtnPosX", -1, ImGui::GetWindowViewport()->Size.x-50, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -502,9 +560,9 @@ void Draw_Placements(){
|
||||
SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gABtnPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##ABtnPosY", "gABtnPosY", -10, ImGui::GetWindowViewport()->Size.y/4+50, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##ABtnPosY", "gABtnPosY", -10, ImGui::GetWindowViewport()->Size.y/4+50, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##ABtnPosX", "gABtnPosX", -20, ImGui::GetWindowViewport()->Size.x-50, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##ABtnPosX", "gABtnPosX", -20, ImGui::GetWindowViewport()->Size.x-50, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -526,9 +584,9 @@ void Draw_Placements(){
|
||||
SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gStartBtnPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##StartBtnPosY", "gStartBtnPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##StartBtnPosY", "gStartBtnPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##StartBtnPosX", "gStartBtnPosX", 0, ImGui::GetWindowViewport()->Size.x/2+70, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##StartBtnPosX", "gStartBtnPosX", 0, ImGui::GetWindowViewport()->Size.x/2+70, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -550,7 +608,7 @@ void Draw_Placements(){
|
||||
SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gCBtnUPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##CBtnUPosY", "gCBtnUPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##CBtnUPosY", "gCBtnUPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
s16 Min_X_CU = 0;
|
||||
s16 Max_X_CU = ImGui::GetWindowViewport()->Size.x/2;
|
||||
@ -561,7 +619,7 @@ void Draw_Placements(){
|
||||
} else if(CVar_GetS32("gCBtnUPosType",0) == 4){
|
||||
Min_X_CU = (ImGui::GetWindowViewport()->Size.x/2)*-1;
|
||||
}
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##CBtnUPosX", "gCBtnUPosX", Min_X_CU, Max_X_CU, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##CBtnUPosX", "gCBtnUPosX", Min_X_CU, Max_X_CU, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -583,7 +641,7 @@ void Draw_Placements(){
|
||||
SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gCBtnDPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##CBtnDPosY", "gCBtnDPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##CBtnDPosY", "gCBtnDPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
s16 Min_X_CD = 0;
|
||||
s16 Max_X_CD = ImGui::GetWindowViewport()->Size.x/2;
|
||||
@ -594,7 +652,7 @@ void Draw_Placements(){
|
||||
} else if(CVar_GetS32("gCBtnDPosType",0) == 4){
|
||||
Min_X_CD = (ImGui::GetWindowViewport()->Size.x/2)*-1;
|
||||
}
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##CBtnDPosX", "gCBtnDPosX", Min_X_CD, Max_X_CD, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##CBtnDPosX", "gCBtnDPosX", Min_X_CD, Max_X_CD, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -616,7 +674,7 @@ void Draw_Placements(){
|
||||
SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gCBtnLPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##CBtnLPosY", "gCBtnLPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##CBtnLPosY", "gCBtnLPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
s16 Min_X_CL = 0;
|
||||
s16 Max_X_CL = ImGui::GetWindowViewport()->Size.x/2;
|
||||
@ -627,7 +685,7 @@ void Draw_Placements(){
|
||||
} else if(CVar_GetS32("gCBtnDPosType",0) == 4){
|
||||
Min_X_CL = (ImGui::GetWindowViewport()->Size.x/2)*-1;
|
||||
}
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##CBtnLPosX", "gCBtnLPosX", Min_X_CL, Max_X_CL, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##CBtnLPosX", "gCBtnLPosX", Min_X_CL, Max_X_CL, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -649,7 +707,7 @@ void Draw_Placements(){
|
||||
SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gCBtnRPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##CBtnRPosY", "gCBtnRPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##CBtnRPosY", "gCBtnRPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
s16 Min_X_CR = 0;
|
||||
s16 Max_X_CR = ImGui::GetWindowViewport()->Size.x/2;
|
||||
@ -660,7 +718,7 @@ void Draw_Placements(){
|
||||
} else if(CVar_GetS32("gCBtnRPosType",0) == 4){
|
||||
Min_X_CR = (ImGui::GetWindowViewport()->Size.x/2)*-1;
|
||||
}
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##CBtnRPosX", "gCBtnRPosX", Min_X_CR, Max_X_CR, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##CBtnRPosX", "gCBtnRPosX", Min_X_CR, Max_X_CR, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -682,7 +740,7 @@ void Draw_Placements(){
|
||||
SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gDPadPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##DPadPosY", "gDPadPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##DPadPosY", "gDPadPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
s16 Min_X_Dpad = 0;
|
||||
s16 Max_X_Dpad = ImGui::GetWindowViewport()->Size.x/2;
|
||||
@ -691,7 +749,7 @@ void Draw_Placements(){
|
||||
} else if(CVar_GetS32("gDPadPosType",0) == 4){
|
||||
Min_X_Dpad = (ImGui::GetWindowViewport()->Size.x/2)*-1;
|
||||
}
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##DPadPosX", "gDPadPosX", Min_X_Dpad, Max_X_Dpad, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##DPadPosX", "gDPadPosX", Min_X_Dpad, Max_X_Dpad, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -713,9 +771,9 @@ void Draw_Placements(){
|
||||
//SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gMinimapPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##MinimapPosY", "gMinimapPosY", (ImGui::GetWindowViewport()->Size.y/3)*-1, ImGui::GetWindowViewport()->Size.y/3, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##MinimapPosY", "gMinimapPosY", (ImGui::GetWindowViewport()->Size.y/3)*-1, ImGui::GetWindowViewport()->Size.y/3, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##MinimapPosX", "gMinimapPosX", ImGui::GetWindowViewport()->Size.x*-1, ImGui::GetWindowViewport()->Size.x/2, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##MinimapPosX", "gMinimapPosX", ImGui::GetWindowViewport()->Size.x*-1, ImGui::GetWindowViewport()->Size.x/2, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -737,9 +795,9 @@ void Draw_Placements(){
|
||||
SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gSKCPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##SKCPosY", "gSKCPosY", 0, ImGui::GetWindowViewport()->Size.y/3, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##SKCPosY", "gSKCPosY", 0, ImGui::GetWindowViewport()->Size.y/3, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##SKCPosX", "gSKCPosX", -1, ImGui::GetWindowViewport()->Size.x/2, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##SKCPosX", "gSKCPosX", -1, ImGui::GetWindowViewport()->Size.x/2, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -761,9 +819,9 @@ void Draw_Placements(){
|
||||
SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gRCPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##RCPosY", "gRCPosY", -2, ImGui::GetWindowViewport()->Size.y/3, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##RCPosY", "gRCPosY", -2, ImGui::GetWindowViewport()->Size.y/3, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##RCPosX", "gRCPosX", -3, ImGui::GetWindowViewport()->Size.x/2, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##RCPosX", "gRCPosX", -3, ImGui::GetWindowViewport()->Size.x/2, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -785,9 +843,9 @@ void Draw_Placements(){
|
||||
SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gCarrotsPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##CarrotsPosY", "gCarrotsPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##CarrotsPosY", "gCarrotsPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##CarrotsPosX", "gCarrotsPosX", -50, ImGui::GetWindowViewport()->Size.x/2+25, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##CarrotsPosX", "gCarrotsPosX", -50, ImGui::GetWindowViewport()->Size.x/2+25, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -809,9 +867,9 @@ void Draw_Placements(){
|
||||
SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gTimersPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##TimersPosY", "gTimersPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##TimersPosY", "gTimersPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##TimersPosX", "gTimersPosX", -50, ImGui::GetWindowViewport()->Size.x/2-50, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##TimersPosX", "gTimersPosX", -50, ImGui::GetWindowViewport()->Size.x/2-50, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -833,9 +891,9 @@ void Draw_Placements(){
|
||||
//SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gASPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##ASPosY", "gASPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##ASPosY", "gASPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##ASPosX", "gASPosX", -50, ImGui::GetWindowViewport()->Size.x/2-50, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##ASPosX", "gASPosX", -50, ImGui::GetWindowViewport()->Size.x/2-50, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -857,9 +915,9 @@ void Draw_Placements(){
|
||||
SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gTCMPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##TCMPosY", "gTCMPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##TCMPosY", "gTCMPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##TCMPosX", "gTCMPosX", -50, ImGui::GetWindowViewport()->Size.x/2+10, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##TCMPosX", "gTCMPosX", -50, ImGui::GetWindowViewport()->Size.x/2+10, ""), true;
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
@ -881,9 +939,9 @@ void Draw_Placements(){
|
||||
SohImGui::Tooltip("This will make your elements to not follow any side\nBetter used for center elements.");
|
||||
SohImGui::EnhancementRadioButton("Hidden", "gTCBPosType", 4);
|
||||
SohImGui::Tooltip("This will make your elements hidden");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##TCBPosY", "gTCBPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "");
|
||||
SohImGui::EnhancementSliderInt("Up <-> Down : %d", "##TCBPosY", "gTCBPosY", 0, ImGui::GetWindowViewport()->Size.y/2, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Up and Down your elements.");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##TCBPosX", "gTCBPosX", -50, ImGui::GetWindowViewport()->Size.x/2+10, "");
|
||||
SohImGui::EnhancementSliderInt("Left <-> Right : %d", "##TCBPosX", "gTCBPosX", -50, ImGui::GetWindowViewport()->Size.x/2+10, "", 0, true);
|
||||
SohImGui::Tooltip("This slider is used to move Left and Right your elements.");
|
||||
ImGui::NewLine();
|
||||
ImGui::EndTable();
|
||||
|
@ -1,4 +1,5 @@
|
||||
#pragma once
|
||||
|
||||
void InitCosmeticsEditor();//Init the menu itself
|
||||
void LoadRainbowColor();
|
||||
void LoadRainbowColor();
|
||||
void NewSliderInt(const char* text, const char* id, const char* cvarName, int min, int max, const char* format, int defaultValue = 0);
|
@ -1035,15 +1035,9 @@ void EnItem00_Draw(Actor* thisx, GlobalContext* globalCtx) {
|
||||
Matrix_Scale(mtxScale, mtxScale, mtxScale, MTXMODE_APPLY);
|
||||
break;
|
||||
} else {
|
||||
this->actor.home.rot.z = Rand_CenteredFloat(65535.0f);
|
||||
this->actor.shape.yOffset = 430.0f;
|
||||
this->actor.shape.shadowScale = 0.03f;
|
||||
Actor_SetScale(&this->actor, 0.02f);
|
||||
this->scale = 0.02f;
|
||||
if (this->unk_15A < 0) {
|
||||
if (this->unk_15A == -1) {
|
||||
s8 bankIndex = Object_GetIndex(&globalCtx->objectCtx, OBJECT_GI_HEART);
|
||||
|
||||
if (Object_IsLoaded(&globalCtx->objectCtx, bankIndex)) {
|
||||
this->actor.objBankIndex = bankIndex;
|
||||
Actor_SetObjectDependency(globalCtx, &this->actor);
|
||||
@ -1056,7 +1050,16 @@ void EnItem00_Draw(Actor* thisx, GlobalContext* globalCtx) {
|
||||
}
|
||||
break;
|
||||
}
|
||||
//Big hearts workaround
|
||||
this->actor.home.rot.z = Rand_CenteredFloat(65535.0f);
|
||||
this->actor.shape.yOffset = 430.0f;
|
||||
this->actor.shape.shadowScale = 6.0f;
|
||||
Actor_SetScale(&this->actor, 0.02f);
|
||||
this->scale = 0.02f;
|
||||
EnItem00_DrawCollectible(this, globalCtx);
|
||||
break;
|
||||
}
|
||||
|
||||
case ITEM00_BOMBS_A:
|
||||
if (CVar_GetS32("gNewDrops", 0)) {
|
||||
Actor_SetScale(&this->actor, 0.2f);
|
||||
|
@ -520,12 +520,12 @@ void Message_DrawTextboxIcon(GlobalContext* globalCtx, Gfx** p, s16 x, s16 y) {
|
||||
sIconEnvColors[1][1] = 255;
|
||||
sIconEnvColors[1][2] = 130;
|
||||
} else if (CVar_GetS32("gHudColors", 1) == 2) {
|
||||
sIconPrimColors[0][0] = (CVar_GetS32("gCCABtnPrimR", 50)/255)*95;
|
||||
sIconPrimColors[0][1] = (CVar_GetS32("gCCABtnPrimG", 255)/255)*95;
|
||||
sIconPrimColors[0][2] = (CVar_GetS32("gCCABtnPrimB", 130)/255)*95;
|
||||
sIconPrimColors[1][0] = CVar_GetS32("gCCABtnPrimR", 50);
|
||||
sIconPrimColors[1][1] = CVar_GetS32("gCCABtnPrimG", 255);
|
||||
sIconPrimColors[1][2] = CVar_GetS32("gCCABtnPrimB", 130);
|
||||
sIconPrimColors[0][0] = (CVar_GetS32("gCCABtnPrimR", 0)/255)*95;
|
||||
sIconPrimColors[0][1] = (CVar_GetS32("gCCABtnPrimG", 200)/255)*95;
|
||||
sIconPrimColors[0][2] = (CVar_GetS32("gCCABtnPrimB", 80)/255)*95;
|
||||
sIconPrimColors[1][0] = CVar_GetS32("gCCABtnPrimR", 0);
|
||||
sIconPrimColors[1][1] = CVar_GetS32("gCCABtnPrimG", 200);
|
||||
sIconPrimColors[1][2] = CVar_GetS32("gCCABtnPrimB", 80);
|
||||
sIconEnvColors[0][0] = 0;
|
||||
sIconEnvColors[0][1] = 0;
|
||||
sIconEnvColors[0][2] = 0;
|
||||
|
@ -4796,10 +4796,11 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||
PosY_BtnA = CVar_GetS32("gABtnPosY", 0)+Y_Margins_BtnA;
|
||||
rAIconY = 98.0f - PosY_BtnA;
|
||||
if (CVar_GetS32("gABtnPosType", 0) == 1) {//Anchor Left
|
||||
if (CVar_GetS32("gABtnUseMargins", 0) != 0) {X_Margins_BtnA = Left_HUD_Margin;};
|
||||
PosX_BtnA = OTRGetDimensionFromLeftEdge(CVar_GetS32("gABtnPosX", 0)+X_Margins_BtnA);
|
||||
rAIconX = OTRGetDimensionFromLeftEdge(CVar_GetS32("gABtnPosX", 0)+X_Margins_BtnA);
|
||||
} else if (CVar_GetS32("gABtnPosType", 0) == 2) {//Anchor Right
|
||||
X_Margins_BtnA = Right_HUD_Margin;
|
||||
if (CVar_GetS32("gABtnUseMargins", 0) != 0) {X_Margins_BtnA = Right_HUD_Margin;};
|
||||
PosX_BtnA = OTRGetDimensionFromRightEdge(CVar_GetS32("gABtnPosX", 0)+X_Margins_BtnA);
|
||||
rAIconX= OTRGetDimensionFromRightEdge(CVar_GetS32("gABtnPosX", 0)+X_Margins_BtnA);
|
||||
} else if (CVar_GetS32("gABtnPosType", 0) == 3) {//Anchor None
|
||||
|
Loading…
Reference in New Issue
Block a user