fix ui scaling

This commit is contained in:
RandomityGuy 2022-12-22 23:56:56 +05:30
parent 41677fccc3
commit 5cb0abcd80
3 changed files with 17 additions and 12 deletions

View file

@ -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;
}
}

View file

@ -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);
}
}

View file

@ -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() {