summaryrefslogtreecommitdiff
path: root/main_menu.lua
diff options
context:
space:
mode:
authorLizzy Fleckenstein <lizzy@vlhl.dev>2026-06-03 01:15:29 +0200
committerLizzy Fleckenstein <lizzy@vlhl.dev>2026-06-03 01:15:29 +0200
commitf08683a3775989e749237cd001a8eaf3193d1684 (patch)
treefbda564309b9f0f7c66c0bd68a2e8c5f08ff27f3 /main_menu.lua
parentcc5b2f31a7abe46147284de869368a0a2c4bcff4 (diff)
downloadr6p-f08683a3775989e749237cd001a8eaf3193d1684.tar.xz
add main menu
Diffstat (limited to 'main_menu.lua')
-rw-r--r--main_menu.lua48
1 files changed, 48 insertions, 0 deletions
diff --git a/main_menu.lua b/main_menu.lua
new file mode 100644
index 0000000..73ba7b1
--- /dev/null
+++ b/main_menu.lua
@@ -0,0 +1,48 @@
+local ui = require("ui")
+local color = ui.color
+
+local function menubox(title, elem)
+ local box_title = ui.text(title, 30, color(0x000000))
+ return { box_title = box_title, fill = color(0xa0a0a0), ui.pad_x(20, ui.stack_y(
+ ui.pad_y(15, ui.center_x(box_title)),
+ elem,
+ ui.pad_y(20)
+ )) }
+end
+
+local function mm_create(actions)
+ local host_game = menubox("Host Game", ui.pad_x(10,
+ ui.flex(1, ui.button("Create Save")),
+ ui.flex(1, ui.button("Load Save"))
+ ))
+
+ local invite_code = ui.input("Invite Code")
+ local join_game = menubox("Join Game", ui.pad_x(10,
+ ui.flex(3, invite_code),
+ ui.flex(1, ui.button("Join", function()
+ if invite_code.input_value ~= "" then
+ actions.join_game(invite_code.input_value)
+ end
+ end))
+ ))
+
+ local edit_map = menubox("Edit Map", ui.button("Open Editor"))
+
+ return ui.new(ui.stack_y(
+ ui.pad_y(50, ui.center_x(ui.text("RAINBOW SIX: PANOPTICON", 50, color(0x000000)))),
+ ui.stack_x(
+ ui.flex(1),
+ ui.flex(4, ui.pad_y(20,
+ host_game,
+ join_game,
+ edit_map
+ )),
+ ui.flex(1)
+ )
+ ))
+end
+
+return {
+ box = menubox,
+ create = mm_create,
+}