summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--config/menus/pause.lua24
-rw-r--r--not/World.lua5
2 files changed, 25 insertions, 4 deletions
diff --git a/config/menus/pause.lua b/config/menus/pause.lua
index 74dd043..60aa2fc 100644
--- a/config/menus/pause.lua
+++ b/config/menus/pause.lua
@@ -1,19 +1,35 @@
local menu = ...
local Button = require "not.Button"
+local Element = require "not.Element"
local width, height = love.graphics.getWidth()/getScale(), love.graphics.getHeight()/getScale()
local bx = width/2-29
return {
+ Element(menu)
+ :set("draw", function (self, scale)
+ love.graphics.setColor(0, 0, 0, 110)
+ local width, height = love.graphics.getWidth(), love.graphics.getHeight()
+ love.graphics.rectangle("fill", 0, 0, width, height)
+ end)
+ ,
Button(menu)
:setText("Unpause")
- :setPosition(bx, height - 36)
- :set("active", function () end)
+ :setPosition(bx, height - 38)
+ :set("active", function (self)
+ sceneManager:removeTopScene()
+ local scene = sceneManager:getAllScenes()[1]
+ scene:setSleeping(false)
+ scene:setInputDisabled(false)
+ end)
,
Button(menu)
:setText("Exit")
- :setPosition(bx, height - 20)
- :set("active", function () end)
+ :setPosition(bx, height - 22)
+ :set("active", function (self)
+ sceneManager:removeTopScene()
+ sceneManager:changeScene(Menu("main"))
+ end)
,
}
diff --git a/not/World.lua b/not/World.lua
index 29c46cc..c6b74a3 100644
--- a/not/World.lua
+++ b/not/World.lua
@@ -371,6 +371,11 @@ function World:controlpressed (set, action, key)
local new = World(map, nauts)
sceneManager:changeScene(new)
end
+ if key == "escape" then
+ sceneManager:addScene(Menu("pause"))
+ self:setInputDisabled(true)
+ self:setSleeping(true)
+ end
for k,naut in pairs(self:getNautsAll()) do
naut:controlpressed(set, action, key)
end