local love = love local draw = love.draw local update = love.update local mousepressed = love.mousepressed local keypressed = love.keypressed local mousemoved = love.mousemoved local function Restore() love.mousemoved = mousemoved love.keypressed = keypressed love.mousepressed = mousepressed love.update = update love.draw = draw end local options = options local optionList = {} options.isHighContrast = false options.keyBinds = {} local font = love.graphics.newFont( 32 ) local keyBindCallback = function(self, code) self.value = code options.keyBinds[self.name] = code end options.optionValues = { { name = "options", value = "back", callback = function(self) return Restore() end }, { name = "high contrast", value = false, callback = function(self) self.value = true end }, { name = "volume", value = 1.0, callback = function(self, isIncreasing) self.value = math.max( 0, math.min( 1, self.value + (isIncreasing and 0.05 or -0.05 ))) end }, { name = "left", value = "a", callback = keyBindCallback }, { name = "right", value = "d", callback = keyBindCallback }, { name = "up", value = "w", callback = keyBindCallback }, { name = "down", value = "s", callback = keyBindCallback } } local function SetKeyBind( dir, code ) end local optionIdx local function Draw() love.graphics.setColor( 1,1,1,1 ) for i, option in ipairs( options.optionValues ) do love.graphics.printf( option.name, font, 100, i * 50, 1000, "left") love.graphics.printf( tostring( option.value ), font, -100, i * 50, love.graphics.getWidth(), "right") end end local function Update() end local function ToggleSelectedOption() end local function MousePress() end local function KeyPress(key, code, isRepeat) print( code ) if code == "backspace" then return Restore() end if code == "down" then return SelectNextOption() end if code == "up" then return SelectPreviousOption() end if code == "left" then return ShrinkOptionValue() end if code == "right" then return GrowOptionValue() end end love.draw = Draw love.keypressed = KeyPress --[[function love.draw() love.graphics.print( "a" ) end function love.update() end]] --[[love.mousepressed = function() end love.draw = function() end love.update = function() end love.keypressed = function() end love.mousemoved = function() end]]