local triggerSplashScreen = false local rootMenu = { { label = 'IDOLS', children = { {label = 'GRACEv6'}, {label = 'NEARNOAHv6'}, {label = 'IDKv6'} } }, { label = 'LASER COLORS', children = { { label = 'LEFT LASER', children = { {label='BLUE', color={0,128,255}}, {label='PINK', color={255,0,255}}, {label='GREEN', color={0,255,0}}, {label='YELLOW', color={255,255,0}}, } }, { label = 'RIGHT LASER', children = { {label='BLUE'}, {label='PINK'}, {label='GREEN'}, {label='YELLOW'}, } } } }, { label = 'MORE OPTIONS', children = {{label = 'TEST'}} }, { label = 'OH YOU SUSSY BAKA', children = {{label = 'TEST'}} }, {label = "BACK TO TITLE SCREEN", type="back", handler = function() triggerSplashScreen = true; end} } local menu = rootMenu local index = 1; render = function(deltaTime) gfx.BeginPath(); gfx.FillColor(0, 0, 0, 255); gfx.Rect(0, 0, 1080, 1920); gfx.Fill(); gfx.LoadSkinFont("dfmarugoth.ttf") gfx.FillColor(255, 255, 255, 255); gfx.TextAlign(gfx.TEXT_ALIGN_CENTER + gfx.TEXT_ALIGN_MIDDLE) gfx.FontSize(24); gfx.BeginPath(); gfx.Text('SERIVCE MENU', 1080 / 2, 128); gfx.Text('BT-A/BT-B = GO UP/DOWN', 1080 / 2, 1920 - 256 - 28); gfx.Text('START = SELECT', 1080 / 2, 1920 - 256); gfx.TextAlign(gfx.TEXT_ALIGN_LEFT + gfx.TEXT_ALIGN_MIDDLE) local yOffset = 256; for i, menuItem in ipairs(menu) do if menuItem.type == 'back' then yOffset = yOffset + 28 * 2; else yOffset = yOffset + 28; end if (i == index) then if menuItem.color then gfx.FillColor( menuItem.color[1], menuItem.color[2], menuItem.color[3] ) else gfx.FillColor(0, 255, 0, 255); end -- gfx.FillColor(0,128,255,255); else gfx.FillColor(255, 255, 255, 255); end gfx.BeginPath(); gfx.Text(menuItem.label, 100, yOffset); end if (triggerSplashScreen) then triggerSplashScreen = false; return {eventType = 'switch', toScreen = 'splash'} end end local onButtonPressed = function(button) if button == game.BUTTON_STA then if (menu[index].handler) then menu[index].handler() elseif menu[index].children ~= nil then menu = menu[index].children index=1; -- If the back button does not exist, add it. if (menu[#menu].type ~= 'back') then menu[#menu+1] = { type="back", label = "BACK TO MAIN MENU", handler = function() index=1; menu = rootMenu end } end end elseif button == game.BUTTON_BTA then index = index - 1; if (index == 0) then index = #menu end elseif button == game.BUTTON_BTB then index = index + 1; if (index == #menu+1) then index = 1 end end end return {render = render, onButtonPressed = onButtonPressed}