summaryrefslogtreecommitdiff
path: root/src/menu/settings.moon
diff options
context:
space:
mode:
Diffstat (limited to 'src/menu/settings.moon')
-rw-r--r--src/menu/settings.moon58
1 files changed, 58 insertions, 0 deletions
diff --git a/src/menu/settings.moon b/src/menu/settings.moon
new file mode 100644
index 0000000..1f21cc3
--- /dev/null
+++ b/src/menu/settings.moon
@@ -0,0 +1,58 @@
+ui = require("ui")
+router = require("router")
+world = require("world")
+settings = require("settings")
+menu = {}
+
+buttons = {}
+buttons_data = {
+ {
+ text: "Streamer"
+ on: (depressed) =>
+ --error("depressed:" .. depressed)
+ settings.streamer = depressed and 0 or 1
+ print("streamer is now:", settings.streamer)
+ type: "boolean"
+ }
+ {
+ text: "Volume"
+ on: (e) =>
+ --require("worldgen")
+ --require("menu.join").initalize!
+ settings.volume = tonumber(@text.text)
+ type: "slider"
+
+ }
+ {
+ text: "Done"
+ on: () =>
+ menu.destroy!
+ require("menu.main").initalize!
+ type: "button"
+ }
+}
+menu.initalize = () ->
+ starty = -200
+ for i = starty, ((#buttons_data-1) * (64 + 32)) + starty, 64 + 32
+ button_data = buttons_data[#buttons + 1]
+ if button_data.type == "boolean"
+ buttons[#buttons + 1] = ui.checkbox(-200,i,400,64,button_data.text)
+ buttons[#buttons].on = button_data.on
+ elseif button_data.type == "slider"
+ buttons[#buttons + 1] = ui.textbox(-200,i,400,64,settings.volume)
+ buttons[#buttons].on = button_data.on
+ elseif button_data.type == "button"
+ buttons[#buttons + 1] = ui.button(-200,i,400,64,button_data.text)
+ buttons[#buttons].on = button_data.on
+ else
+ error("Unknown button type:" .. button_data.type)
+ print("making button", #buttons + 1)
+
+ print("intalize")
+
+menu.destroy = () ->
+ for button in *buttons
+ ui.delete(button)
+ buttons = {}
+
+menu