Mothback/code/canvas.lua

50 lines
941 B
Lua

Canvas = {class = "Canvas"}
function Canvas:New(name)
local o = {}
o.name = name
o.width = game.width/game.scale
o.height = game.height/game.scale
o.canvas = love.graphics.newCanvas(o.width,o.height)
setmetatable(o, self)
self.__index = self
return o
end
function Canvas:Recreate()
self.canvas:release()
self.canvas = love.graphics.newCanvas(self.width,self.height)
end
function Canvas:Reset()
love.graphics.setCanvas(self.canvas)
love.graphics.setBlendMode("replace")
love.graphics.setColor(0,0,0,0)
love.graphics.rectangle(
"fill",
0,
0,
self.width,
self.height
)
love.graphics.setCanvas()
end
function Canvas:DrawingStart()
self:Reset()
love.graphics.setCanvas(self.canvas)
end
function Canvas:DrawingEnd()
love.graphics.setCanvas()
love.graphics.setBlendMode("alpha")
love.graphics.setColor(1,1,1,1)
end
function Canvas:Draw()
love.graphics.draw(self.canvas)
end
require "code/canvasses/darkness"