mirror of
https://github.com/hedge-dev/UnleashedRecomp
synced 2026-06-03 18:37:00 -04:00
Implement vertical marquee fade. (#261)
This commit is contained in:
@@ -197,7 +197,7 @@ static void DrawAchievement(int rowIndex, float yOffset, Achievement& achievemen
|
||||
ImVec2 marqueeMin = { textMarqueeX, min.y };
|
||||
ImVec2 marqueeMax = { max.x - Scale(10) /* timestamp margin X */, max.y };
|
||||
|
||||
SetMarqueeFade(marqueeMin, marqueeMax, Scale(32));
|
||||
SetHorizontalMarqueeFade(marqueeMin, marqueeMax, Scale(32));
|
||||
|
||||
if (isSelected && textX + textSize.x >= max.x - Scale(10))
|
||||
{
|
||||
|
||||
@@ -80,7 +80,7 @@ void ResetTextSkew()
|
||||
SetScale({ 1.0f, 1.0f });
|
||||
}
|
||||
|
||||
void SetMarqueeFade(ImVec2 min, ImVec2 max, float fadeScale)
|
||||
void SetHorizontalMarqueeFade(ImVec2 min, ImVec2 max, float fadeScale)
|
||||
{
|
||||
auto callbackData = AddImGuiCallback(ImGuiCallback::SetMarqueeFade);
|
||||
callbackData->setMarqueeFade.boundsMin[0] = min.x;
|
||||
@@ -88,10 +88,22 @@ void SetMarqueeFade(ImVec2 min, ImVec2 max, float fadeScale)
|
||||
callbackData->setMarqueeFade.boundsMax[0] = max.x;
|
||||
callbackData->setMarqueeFade.boundsMax[1] = max.y;
|
||||
|
||||
SetShaderModifier(IMGUI_SHADER_MODIFIER_MARQUEE_FADE);
|
||||
SetShaderModifier(IMGUI_SHADER_MODIFIER_HORIZONTAL_MARQUEE_FADE);
|
||||
SetScale({ fadeScale, 1.0f });
|
||||
}
|
||||
|
||||
void SetVerticalMarqueeFade(ImVec2 min, ImVec2 max, float fadeScale)
|
||||
{
|
||||
auto callbackData = AddImGuiCallback(ImGuiCallback::SetMarqueeFade);
|
||||
callbackData->setMarqueeFade.boundsMin[0] = min.x;
|
||||
callbackData->setMarqueeFade.boundsMin[1] = min.y;
|
||||
callbackData->setMarqueeFade.boundsMax[0] = max.x;
|
||||
callbackData->setMarqueeFade.boundsMax[1] = max.y;
|
||||
|
||||
SetShaderModifier(IMGUI_SHADER_MODIFIER_VERTICAL_MARQUEE_FADE);
|
||||
SetScale({ 1.0f, fadeScale });
|
||||
}
|
||||
|
||||
void ResetMarqueeFade()
|
||||
{
|
||||
ResetGradient();
|
||||
|
||||
@@ -42,7 +42,8 @@ void SetOrigin(ImVec2 origin);
|
||||
void SetScale(ImVec2 scale);
|
||||
void SetTextSkew(float yCenter, float skewScale);
|
||||
void ResetTextSkew();
|
||||
void SetMarqueeFade(ImVec2 min, ImVec2 max, float fadeScale);
|
||||
void SetHorizontalMarqueeFade(ImVec2 min, ImVec2 max, float fadeScale);
|
||||
void SetVerticalMarqueeFade(ImVec2 min, ImVec2 max, float fadeScale);
|
||||
void ResetMarqueeFade();
|
||||
void SetOutline(float outline);
|
||||
void ResetOutline();
|
||||
|
||||
@@ -797,7 +797,7 @@ static void DrawDescriptionContainer()
|
||||
ImVec2 textMin = { g_aspectRatioOffsetX + Scale(CONTAINER_X), textPos.y };
|
||||
ImVec2 textMax = { g_aspectRatioOffsetX + Scale(CONTAINER_X) + Scale(CONTAINER_WIDTH), g_aspectRatioOffsetY + Scale(CONTAINER_Y) + Scale(CONTAINER_HEIGHT) };
|
||||
|
||||
SetMarqueeFade(textMin, textMax, Scale(32));
|
||||
SetHorizontalMarqueeFade(textMin, textMax, Scale(32));
|
||||
DrawTextWithMarquee(g_seuratFont, fontSize, textPos, textMin, textMax, colWhite, g_creditsStr.c_str(), g_installerEndTime, 0.9, Scale(200));
|
||||
ResetMarqueeFade();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user