44 lines
1.1 KiB
Lua
44 lines
1.1 KiB
Lua
|
local VictoryScreen = Object:extend()
|
||
|
|
||
|
local TweenManager = require "game.modules.tweenmanager"
|
||
|
|
||
|
local BATTLECOMPLETE_START = 2
|
||
|
local BATTLECOMPLETE_STOP = 4
|
||
|
|
||
|
function VictoryScreen:new(scene)
|
||
|
self.scene = scene
|
||
|
self.assets = scene.assets
|
||
|
|
||
|
self.tweens = TweenManager(self)
|
||
|
|
||
|
self.vignetteOpacity = 0
|
||
|
self.labelOpacity = 0
|
||
|
|
||
|
local _, height = core.screen:getDimensions()
|
||
|
self.labelY = height/2
|
||
|
|
||
|
self.tweens:newTween(0, 0.6, {vignetteOpacity=0.75}, 'inExpo')
|
||
|
self.tweens:newTween(0, 0.6, {labelOpacity=1}, 'inExpo')
|
||
|
self.tweens:newTween(0.9, 0.4, {labelY=32}, 'inExpo')
|
||
|
|
||
|
end
|
||
|
|
||
|
function VictoryScreen:update(dt)
|
||
|
self.tweens:update(dt)
|
||
|
end
|
||
|
|
||
|
function VictoryScreen:draw()
|
||
|
love.graphics.setColor(0, 0, 0, self.vignetteOpacity)
|
||
|
|
||
|
local width, height = core.screen:getDimensions()
|
||
|
love.graphics.rectangle("fill", 0, 0, width, height)
|
||
|
love.graphics.setColor(1, 1, 1, self.labelOpacity)
|
||
|
|
||
|
|
||
|
local w, h = self.assets.images["battlecompleted"]:getDimensions()
|
||
|
self.assets.images["battlecompleted"]:draw(width/2, self.labelY, 0, 1, 1, w/2, h/2)
|
||
|
utils.graphics.resetColor()
|
||
|
end
|
||
|
|
||
|
return VictoryScreen
|