ExperimentalGear/scripts/gameplay/song_panel.lua

66 lines
1.5 KiB
Lua

local desw = 1080;
local desh = 1920;
local bgLeftImage = gfx.CreateSkinImage("gameplay/song_panel/bg_left.png", 0);
local bgRightImage = gfx.CreateSkinImage("gameplay/song_panel/bg_right.png", 0);
local renderOutlinedText = function (x,y, text, outlineWidth)
gfx.BeginPath();
gfx.FillColor(0,0,0,255);
gfx.Text(text, x-outlineWidth, y+outlineWidth);
gfx.Text(text, x-outlineWidth, y-outlineWidth);
gfx.Text(text, x+outlineWidth, y+outlineWidth);
gfx.Text(text, x+outlineWidth, y-outlineWidth);
gfx.FillColor(255,255,255,255);
gfx.Text(text, x, y);
end
local tickTransitions = function (deltaTime)
end
local render = function (deltaTime, bpm, laneSpeed)
tickTransitions(deltaTime)
local y = 210;
gfx.BeginPath();
gfx.ImageRect(
0,
y,
884*0.85,
374*0.85,
bgLeftImage,
1,
0
);
gfx.BeginPath();
gfx.ImageRect(
200,
y,
1016*0.85,
122*0.85,
bgRightImage,
1,
0
);
gfx.FontSize(30);
gfx.TextAlign(gfx.TEXT_ALIGN_LEFT + gfx.TEXT_ALIGN_MIDDLE)
renderOutlinedText(25,y+247, "BPM", 2);
renderOutlinedText(25,y+281, "LANE-SPEED", 2);
local actualLaneSpeed = (bpm*laneSpeed)/100
gfx.TextAlign(gfx.TEXT_ALIGN_RIGHT + gfx.TEXT_ALIGN_MIDDLE);
renderOutlinedText(260,y+247, string.format("%.0f", bpm), 2);
renderOutlinedText(260,y+281, string.format("%.2f", actualLaneSpeed), 2);
end
return {
render=render
}