feat: initial gui version of gameover
This commit is contained in:
parent
83a89dc69b
commit
e0ebc4969c
1 changed files with 44 additions and 0 deletions
44
sonic-radiance.love/game/modules/gui/gameover.lua
Normal file
44
sonic-radiance.love/game/modules/gui/gameover.lua
Normal file
|
@ -0,0 +1,44 @@
|
|||
local Screen = require "birb.modules.gui.screen"
|
||||
local GameOverScreen = Screen:extend()
|
||||
|
||||
local TextElement = require "birb.modules.gui.elements.text"
|
||||
local ConfirmDialog = require "game.modules.confirmdialog"
|
||||
|
||||
local defTransitions = require "birb.modules.transitions"
|
||||
|
||||
local HEIGHT = 40
|
||||
|
||||
local show = {
|
||||
{"gameText", "movement", 0.9, 0.4, 424/2 - 4, HEIGHT, "inExpo"},
|
||||
{"overText", "movement", 0.9, 0.4, 424/2 + 4, HEIGHT, "inExpo"}
|
||||
}
|
||||
|
||||
function GameOverScreen:new()
|
||||
GameOverScreen.super.new(self, "titleScreen")
|
||||
self:addTransform("show", show)
|
||||
self.scene:showOverlay(true)
|
||||
self:show()
|
||||
end
|
||||
|
||||
function GameOverScreen:createElements()
|
||||
return {
|
||||
{TextElement("gameText", "SA2font", "GAME", 0, HEIGHT, "right"), 0, 1},
|
||||
{TextElement("overText", "SA2font", "OVER", 424, HEIGHT, "left"), 0, 1},
|
||||
{ConfirmDialog(self.scene, "Do you want to return to title ? \nYou can also reload your latest save.",
|
||||
function() self:returnToTitle() end, "Return to title",
|
||||
function() self:loadLastSave() end, "Reload last save"),
|
||||
1.8, 0}
|
||||
}
|
||||
end
|
||||
|
||||
function GameOverScreen:returnToTitle()
|
||||
core.screen:startTransition(defTransitions.default, defTransitions.circle, function() scenes.menus.title(true) end, 424/2, 240/2)
|
||||
end
|
||||
|
||||
function GameOverScreen:loadLastSave()
|
||||
self.scene.tweens:newTween(0, 0.3, {borderPosition=0}, "inOutQuad")
|
||||
core.screen:startTransition(defTransitions.default, defTransitions.default, function() game:reload() scenes.overworld() end, 424/2, 240/2)
|
||||
end
|
||||
|
||||
|
||||
return GameOverScreen
|
Loading…
Reference in a new issue