local commons = require "scenes.debug.commons.menu" local menu = {} menu.commons = commons menu.ExitWidget = commons.DebugWidget:extend() menu.ShowBackgroundWidget = commons.DebugWidget:extend() menu.SaveWidget = commons.DebugWidget:extend() menu.LoadWidget = commons.DebugWidget:extend() menu.LevelUpWidget = commons.DebugWidget:extend() menu.AddRemoveWidget = commons.DebugWidget:extend() menu.ChangeLeaderWidget = commons.DebugWidget:extend() menu.SubMenuWidget = commons.SubMenuWidget:extend() -- ExitWidget function menu.ExitWidget:new(scene, menuName) menu.ExitWidget.super.new(self, scene, menuName, "Exit") end function menu.ExitWidget:action() love.event.quit("000") end -- ShowBackground function menu.ShowBackgroundWidget:new(scene, menuName) menu.ShowBackgroundWidget.super.new(self, scene, menuName, "Show Background") end function menu.ShowBackgroundWidget:action() self.scene.menusystem:deactivate() end -- Save game function menu.SaveWidget:new(scene, menuName) menu.SaveWidget.super.new(self, scene, menuName, "Save game") end function menu.SaveWidget:action() game:write() end -- Save game function menu.LoadWidget:new(scene, menuName, slot) menu.LoadWidget.super.new(self, scene, menuName, "Load file " .. slot) self.slot = slot end function menu.LoadWidget:action() game:read(self.slot) end -- Submenu function menu.SubMenuWidget:new(scene, menu_name, newmenu, name, panel, panelArgument) menu.SubMenuWidget.super.new(self, scene, menu_name, newmenu, name) self.panel = panel self.panelArgument = panelArgument end function menu.SubMenuWidget:action() self.scene.menusystem:switchMenu(self.newmenu) self.scene.panel = self.panel(self.panelArgument) end -- Level Up function menu.LevelUpWidget:new(scene, menuName, character) menu.ShowBackgroundWidget.super.new(self, scene, menuName, "Level Up") self.character = character end function menu.LevelUpWidget:action() self.character:levelUp() end -- Add Remove Widget function menu.AddRemoveWidget:new(scene, menuName, character) menu.AddRemoveWidget.super.new(self, scene, menuName, "Add/Remove " .. character.name) self.character = character end function menu.AddRemoveWidget:action() game.characters:addOrRemoveToTeam(self.character.simplename) end --Change Team Leader function menu.ChangeLeaderWidget:new(scene, menuName) menu.ShowBackgroundWidget.super.new(self, scene, menuName, "Change active character") end function menu.ChangeLeaderWidget:action() game.characters:setActiveCharacter(1) end return menu