105 lines
2.8 KiB
Lua
105 lines
2.8 KiB
Lua
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()
|
|
menu.ItemWidget = commons.DebugWidget: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
|
|
|
|
-- ItemWidget
|
|
function menu.ItemWidget:new(scene, menuName, itemdata)
|
|
menu.ItemWidget.super.new(self, scene, menuName, itemdata.fullname)
|
|
self.category = menuName
|
|
self.itemName = itemdata.name
|
|
end
|
|
|
|
function menu.ItemWidget:action()
|
|
game.loot:addItem(self.category, self.itemName, 1)
|
|
end
|
|
|
|
|
|
|
|
return menu
|