diff --git a/inc/init/init.context.lua b/inc/init/init.context.lua index 6c095ae..9579296 100644 --- a/inc/init/init.context.lua +++ b/inc/init/init.context.lua @@ -99,15 +99,15 @@ function Context.new_game() MysteriousManScreen.start({ text = [[ Norman was never a bad - + simulation engineer, - + but - + we need to be careful - + letting him improve. - + We need to distract him. ]], on_text_complete = function() diff --git a/inc/system/system.ui.lua b/inc/system/system.ui.lua index 9626b52..87f70c3 100644 --- a/inc/system/system.ui.lua +++ b/inc/system/system.ui.lua @@ -90,45 +90,45 @@ end --- @param[opt] bg_color number The background fill color (default: Config.colors.dark_grey).
--- @param[opt] border_color number The border color (default: Config.colors.white).
--- @param[opt] center_text boolean Whether to center each line inside the box. Defaults to false.
-local function draw_rounded_rect_fill(x, y, w, h, radius, color) - local inner_w = w - radius * 2 - local inner_h = h - radius * 2 +local function draw_rounded_rect_fill(x, y, w, h, corner_radius, color) + local inner_w = w - corner_radius * 2 + local inner_h = h - corner_radius * 2 if inner_w > 0 and inner_h > 0 then - rect(x + radius, y + radius, inner_w, inner_h, color) + rect(x + corner_radius, y + corner_radius, inner_w, inner_h, color) end - if inner_w > 0 and radius > 0 then - rect(x + radius, y, inner_w, radius, color) - rect(x + radius, y + h - radius, inner_w, radius, color) + if inner_w > 0 and corner_radius > 0 then + rect(x + corner_radius, y, inner_w, corner_radius, color) + rect(x + corner_radius, y + h - corner_radius, inner_w, corner_radius, color) end - if radius > 0 and inner_h > 0 then - rect(x, y + radius, radius, inner_h, color) - rect(x + w - radius, y + radius, radius, inner_h, color) + if corner_radius > 0 and inner_h > 0 then + rect(x, y + corner_radius, corner_radius, inner_h, color) + rect(x + w - corner_radius, y + corner_radius, corner_radius, inner_h, color) end - for row = 0, radius - 1 do - for col = 0, radius - 1 do - if col + row >= radius - 1 then - pix(x + radius - 1 - col, y + radius - 1 - row, color) - pix(x + w - radius + col, y + radius - 1 - row, color) - pix(x + radius - 1 - col, y + h - radius + row, color) - pix(x + w - radius + col, y + h - radius + row, color) + for row = 0, corner_radius - 1 do + for col = 0, corner_radius - 1 do + if col + row >= corner_radius - 1 then + pix(x + corner_radius - 1 - col, y + corner_radius - 1 - row, color) + pix(x + w - corner_radius + col, y + corner_radius - 1 - row, color) + pix(x + corner_radius - 1 - col, y + h - corner_radius + row, color) + pix(x + w - corner_radius + col, y + h - corner_radius + row, color) end end end end -local function draw_rounded_rect_border(x, y, w, h, radius, color) - line(x + radius, y, x + w - radius - 1, y, color) - line(x + radius, y + h - 1, x + w - radius - 1, y + h - 1, color) - line(x, y + radius, x, y + h - radius - 1, color) - line(x + w - 1, y + radius, x + w - 1, y + h - radius - 1, color) - pix(x + radius - 1, y + 1, color) - pix(x + 1, y + radius - 1, color) - pix(x + w - radius, y + 1, color) - pix(x + w - 2, y + radius - 1, color) - pix(x + radius - 1, y + h - 2, color) - pix(x + 1, y + h - radius, color) - pix(x + w - radius, y + h - 2, color) - pix(x + w - 2, y + h - radius, color) +local function draw_rounded_rect_border(x, y, w, h, corner_radius, color) + line(x + corner_radius, y, x + w - corner_radius - 1, y, color) + line(x + corner_radius, y + h - 1, x + w - corner_radius - 1, y + h - 1, color) + line(x, y + corner_radius, x, y + h - corner_radius - 1, color) + line(x + w - 1, y + corner_radius, x + w - 1, y + h - corner_radius - 1, color) + pix(x + corner_radius - 1, y + 1, color) + pix(x + 1, y + corner_radius - 1, color) + pix(x + w - corner_radius, y + 1, color) + pix(x + w - 2, y + corner_radius - 1, color) + pix(x + corner_radius - 1, y + h - 2, color) + pix(x + 1, y + h - corner_radius, color) + pix(x + w - corner_radius, y + h - 2, color) + pix(x + w - 2, y + h - corner_radius, color) end function UI.draw_textbox(text, box_x, box_y, box_w, box_h, scroll_y, color, bg_color, border_color, center_text) diff --git a/inc/window/window.minigame.ddr.lua b/inc/window/window.minigame.ddr.lua index fdb9cff..6a0167c 100644 --- a/inc/window/window.minigame.ddr.lua +++ b/inc/window/window.minigame.ddr.lua @@ -306,19 +306,19 @@ local arrow_rotations = { down = 0, right = 1, up = 2, left = 3 } local function draw_arrow(x, y, direction, color) local size = 14 local half = size / 2 - local center_x, center_y = x + half, y + half + local pivot_x, pivot_y = x + half, y + half local steps = arrow_rotations[direction] or 0 - local head_left_x, head_left_y = rotate(x, y + half, center_x, center_y, steps) - local head_tip_x, head_tip_y = rotate(x + half, y + size, center_x, center_y, steps) - local head_right_x, head_right_y = rotate(x + size, y + half, center_x, center_y, steps) + local head_left_x, head_left_y = rotate(x, y + half, pivot_x, pivot_y, steps) + local head_tip_x, head_tip_y = rotate(x + half, y + size, pivot_x, pivot_y, steps) + local head_right_x, head_right_y = rotate(x + size, y + half, pivot_x, pivot_y, steps) tri(head_left_x, head_left_y, head_tip_x, head_tip_y, head_right_x, head_right_y, color) - local stem_top_x, stem_top_y = rotate(x + half - 3, y, center_x, center_y, steps) - local stem_bot_x, stem_bot_y = rotate(x + half + 3, y + half, center_x, center_y, steps) + local stem_top_x, stem_top_y = rotate(x + half - 3, y, pivot_x, pivot_y, steps) + local stem_bot_x, stem_bot_y = rotate(x + half + 3, y + half, pivot_x, pivot_y, steps) local stem_x = math.min(stem_top_x, stem_bot_x) local stem_y = math.min(stem_top_y, stem_bot_y) local stem_w = math.abs(stem_bot_x - stem_top_x)