2019-02-28 18:44:56 +01:00
|
|
|
local menu = {}
|
2019-03-09 17:58:07 +01:00
|
|
|
local ListBox = require "core.modules.menusystem.listbox"
|
|
|
|
local MenuObject = ListBox:extend()
|
|
|
|
|
|
|
|
function MenuObject:new(scene, name)
|
|
|
|
local screenwidth, screenheight = core.screen:getDimensions()
|
|
|
|
local height, width, x, y
|
|
|
|
height = screenheight - (88 + 24)
|
|
|
|
width = 240
|
|
|
|
x = screenwidth/2 - width/2
|
2019-03-09 22:08:54 +01:00
|
|
|
y = screenheight/2 - height/2 + 8
|
2019-03-09 17:58:07 +01:00
|
|
|
|
|
|
|
MenuObject.super.new(self, scene.menusystem, name, x, y, width, height, 5)
|
|
|
|
self.scene = scene
|
|
|
|
|
|
|
|
self.isActive = false
|
|
|
|
self.isVisible = false
|
2019-03-09 18:06:53 +01:00
|
|
|
self.textbox = game.gui.newTextBox("assets/sprites/gui/textbox/bluebox.png", width, height)
|
2019-06-17 16:39:11 +02:00
|
|
|
|
|
|
|
self.depth = -10
|
2019-03-09 17:58:07 +01:00
|
|
|
end
|
|
|
|
|
|
|
|
function MenuObject:draw()
|
2019-03-09 18:06:53 +01:00
|
|
|
love.graphics.draw(self.textbox, self.x, self.y)
|
2019-03-09 17:58:07 +01:00
|
|
|
MenuObject.super.draw(self)
|
|
|
|
end
|
|
|
|
|
|
|
|
menu.Main = MenuObject:extend()
|
|
|
|
menu.Debug = MenuObject:extend()
|
|
|
|
menu.Levels = MenuObject:extend()
|
|
|
|
menu.Bonus = MenuObject:extend()
|
|
|
|
menu.Pigs = MenuObject:extend()
|
|
|
|
menu.Options = MenuObject:extend()
|
2019-03-09 21:56:03 +01:00
|
|
|
menu.newMain = require "scenes.debugmenu.mainmenu"
|
2019-02-28 18:44:56 +01:00
|
|
|
|
|
|
|
local widgets = require "scenes.debugmenu.widgets"
|
|
|
|
|
2019-02-28 19:28:47 +01:00
|
|
|
local leveldata = require "datas.levels"
|
|
|
|
|
2019-02-28 18:44:56 +01:00
|
|
|
function menu.Main:new(scene)
|
2019-02-28 19:15:18 +01:00
|
|
|
menu.Main.super.new(self, scene, "mainmenu")
|
2019-02-28 21:19:38 +01:00
|
|
|
widgets.Menu(self,"Level Select", "levels")
|
|
|
|
widgets.Menu(self,"Debug Mode", "debug")
|
2019-02-28 18:44:56 +01:00
|
|
|
widgets.Menu(self,"Options", "mainmenu")
|
|
|
|
widgets.Menu(self,"Bonus", "mainmenu")
|
2019-03-09 22:01:37 +01:00
|
|
|
widgets.Menu(self,"Back", "main")
|
2019-02-28 18:47:52 +01:00
|
|
|
self:getFocus()
|
2019-02-28 18:44:56 +01:00
|
|
|
end
|
|
|
|
|
|
|
|
function menu.Debug:new(scene)
|
2019-02-28 19:15:18 +01:00
|
|
|
menu.Debug.super.new(self, scene, "debug")
|
2019-02-28 18:44:56 +01:00
|
|
|
widgets.Menu(self,"Manage Pigs", "debugpigs")
|
|
|
|
widgets.Menu(self,"Manage Inventory", "debugitems")
|
|
|
|
widgets.Menu(self,"Back", "mainmenu")
|
2019-02-28 19:20:16 +01:00
|
|
|
self:setCancelWidget()
|
2019-02-28 18:44:56 +01:00
|
|
|
end
|
|
|
|
|
|
|
|
function menu.Levels:new(scene)
|
2019-02-28 19:15:18 +01:00
|
|
|
menu.Levels.super.new(self, scene, "levels")
|
2019-03-10 10:20:40 +01:00
|
|
|
for i,v in ipairs(leveldata) do
|
|
|
|
widgets.Mission(self,v, 1, i)
|
2019-02-28 18:44:56 +01:00
|
|
|
end
|
|
|
|
widgets.Menu(self,"Back", "mainmenu")
|
2019-02-28 19:20:16 +01:00
|
|
|
self:setCancelWidget()
|
2019-02-28 18:44:56 +01:00
|
|
|
end
|
|
|
|
|
|
|
|
function menu.Pigs:new(scene)
|
2019-02-28 21:19:38 +01:00
|
|
|
menu.Pigs.super.new(self, scene, "debugpigs")
|
2019-02-28 18:44:56 +01:00
|
|
|
widgets.AddPig(self)
|
2019-02-28 19:34:00 +01:00
|
|
|
for i,v in ipairs(game.pigmanager.data) do
|
2019-02-28 18:44:56 +01:00
|
|
|
widgets.Menu(self,i .. "- " .. v.name .. " the " .. v.race, 1, i)
|
|
|
|
end
|
|
|
|
widgets.Menu(self,"Back", "debug")
|
2019-02-28 19:20:16 +01:00
|
|
|
self:setCancelWidget()
|
2019-02-28 18:44:56 +01:00
|
|
|
end
|
|
|
|
|
|
|
|
function menu.Options:new(scene)
|
2019-06-17 16:39:11 +02:00
|
|
|
menu.Options.super.new(self, scene, "options", -1)
|
2019-02-28 18:44:56 +01:00
|
|
|
widgets.Save(self)
|
|
|
|
widgets.Load(self)
|
|
|
|
widgets.Menu(self,"Back", "mainmenu")
|
2019-02-28 19:20:16 +01:00
|
|
|
self:setCancelWidget()
|
2019-02-28 18:44:56 +01:00
|
|
|
end
|
|
|
|
|
2019-02-28 18:51:09 +01:00
|
|
|
function menu.Create(scene)
|
2019-03-09 21:56:03 +01:00
|
|
|
menu.newMain(scene)
|
2019-02-28 18:51:09 +01:00
|
|
|
menu.Main(scene)
|
|
|
|
menu.Debug(scene)
|
|
|
|
menu.Levels(scene)
|
|
|
|
menu.Pigs(scene)
|
|
|
|
menu.Options(scene)
|
|
|
|
end
|
|
|
|
|
2019-02-28 18:44:56 +01:00
|
|
|
return menu
|