From 5cb0abcd80e648b64be4ed4157cca6c7df7631bb Mon Sep 17 00:00:00 2001 From: RandomityGuy <31925790+RandomityGuy@users.noreply.github.com> Date: Thu, 22 Dec 2022 23:56:56 +0530 Subject: [PATCH] fix ui scaling --- src/gui/GuiControl.hx | 4 ++-- src/gui/GuiSlider.hx | 4 +++- src/gui/PlayGui.hx | 21 ++++++++++++--------- 3 files changed, 17 insertions(+), 12 deletions(-) diff --git a/src/gui/GuiControl.hx b/src/gui/GuiControl.hx index 20bad208..ef41aeee 100644 --- a/src/gui/GuiControl.hx +++ b/src/gui/GuiControl.hx @@ -163,13 +163,13 @@ class GuiControl { } if (this.horizSizing == HorizSizing.Left) { if (this.parent != null) { - rect.position.x = parentRect.position.x + parentRect.extent.x - (parent.extent.x - this.position.x * uiScaleFactor); + rect.position.x = parentRect.position.x + parentRect.extent.x - (parent.extent.x - this.position.x) * uiScaleFactor; rect.extent.x *= uiScaleFactor; } } if (this.vertSizing == VertSizing.Top) { if (this.parent != null) { - rect.position.y = parentRect.position.y + parentRect.extent.y - (parent.extent.y - this.position.y * uiScaleFactor); + rect.position.y = parentRect.position.y + parentRect.extent.y - (parent.extent.y - this.position.y) * uiScaleFactor; rect.extent.y *= uiScaleFactor; } } diff --git a/src/gui/GuiSlider.hx b/src/gui/GuiSlider.hx index 46580b0d..b656f0e5 100644 --- a/src/gui/GuiSlider.hx +++ b/src/gui/GuiSlider.hx @@ -5,6 +5,7 @@ import hxd.res.Sound; import hxd.Key; import gui.GuiControl.MouseState; import src.Util; +import src.Settings; class GuiSlider extends GuiImage { public var sliderValue:Float = 0; @@ -29,6 +30,7 @@ class GuiSlider extends GuiImage { super.update(dt, mouseState); this.bmp.x = renderRect.position.x + renderRect.extent.x * sliderValue; this.bmp.x = Util.clamp(this.bmp.x, renderRect.position.x, renderRect.position.x + renderRect.extent.x - bmp.width / 2); - this.bmp.width = this.bmp.tile.width; + this.bmp.width = this.bmp.tile.width * Settings.uiScale; + super.update(dt, mouseState); } } diff --git a/src/gui/PlayGui.hx b/src/gui/PlayGui.hx index 2aa9a1ef..1473b8eb 100644 --- a/src/gui/PlayGui.hx +++ b/src/gui/PlayGui.hx @@ -195,8 +195,9 @@ class PlayGui { } public function initCenterText() { - RSGOCenterText.x = scene2d.width / 2 - RSGOCenterText.frames[0].width / 2; + RSGOCenterText.x = scene2d.width / 2 - RSGOCenterText.frames[0].width * Settings.uiScale / 2; RSGOCenterText.y = scene2d.height * 0.3; // - RSGOCenterText.frames[0].height / 2; + RSGOCenterText.setScale(Settings.uiScale); } public function setCenterText(identifier:String) { @@ -205,19 +206,19 @@ class PlayGui { } else if (identifier == 'ready') { this.RSGOCenterText.visible = true; this.RSGOCenterText.currentFrame = 0; - RSGOCenterText.x = scene2d.width / 2 - RSGOCenterText.frames[0].width / 2; + RSGOCenterText.x = scene2d.width / 2 - RSGOCenterText.frames[0].width * Settings.uiScale / 2; } else if (identifier == 'set') { this.RSGOCenterText.visible = true; this.RSGOCenterText.currentFrame = 1; - RSGOCenterText.x = scene2d.width / 2 - RSGOCenterText.frames[1].width / 2; + RSGOCenterText.x = scene2d.width / 2 - RSGOCenterText.frames[1].width * Settings.uiScale / 2; } else if (identifier == 'go') { this.RSGOCenterText.visible = true; this.RSGOCenterText.currentFrame = 2; - RSGOCenterText.x = scene2d.width / 2 - RSGOCenterText.frames[2].width / 2; + RSGOCenterText.x = scene2d.width / 2 - RSGOCenterText.frames[2].width * Settings.uiScale / 2; } else if (identifier == 'outofbounds') { this.RSGOCenterText.visible = true; this.RSGOCenterText.currentFrame = 3; - RSGOCenterText.x = scene2d.width / 2 - RSGOCenterText.frames[3].width / 2; + RSGOCenterText.x = scene2d.width / 2 - RSGOCenterText.frames[3].width * Settings.uiScale / 2; } } @@ -252,8 +253,9 @@ class PlayGui { gemImageSceneTarget.depthBuffer = new DepthBuffer(60, 60); gemImageSceneTargetBitmap = new Bitmap(Tile.fromTexture(gemImageSceneTarget), scene2d); - gemImageSceneTargetBitmap.x = -8; - gemImageSceneTargetBitmap.y = -8; + gemImageSceneTargetBitmap.x = -8 * Settings.uiScale; + gemImageSceneTargetBitmap.y = -8 * Settings.uiScale; + gemImageSceneTargetBitmap.setScale(Settings.uiScale); // gemImageSceneTargetBitmap.blendMode = None; // gemImageSceneTargetBitmap.addShader(new ColorKey()); @@ -297,8 +299,9 @@ class PlayGui { powerupImageSceneTarget.depthBuffer = new DepthBuffer(68, 67); powerupImageSceneTargetBitmap = new Bitmap(Tile.fromTexture(powerupImageSceneTarget), scene2d); - powerupImageSceneTargetBitmap.x = scene2d.width - 88; - powerupImageSceneTargetBitmap.y = 18; + powerupImageSceneTargetBitmap.x = scene2d.width - 88 * Settings.uiScale; + powerupImageSceneTargetBitmap.y = 18 * Settings.uiScale; + powerupImageSceneTargetBitmap.setScale(Settings.uiScale); } function initTexts() {