scenes/level: use the new scene system

This commit is contained in:
Kazhnuz 2019-03-01 16:24:46 +01:00
parent 96df0382ad
commit 2fd94449ad
1 changed files with 11 additions and 7 deletions

View File

@ -5,8 +5,10 @@ require "scenes.levels.sprites"
require "scenes.levels.controller"
require "scenes.levels.entities"
-- On commence par générer la scene :
stateLevel = {}
-- On charge le module de scene et créer l'objet de scene des niveaux
local Scene = require "core.modules.scenes"
local LevelScene = Scene:extend()
local currentLevel = Level()
local previousMenu
@ -28,19 +30,19 @@ function levelLoad(levelID, missionID)
Gamestate.switch(stateLevel)
end
function stateLevel:enter(previous, levelID, missionID)
function LevelScene:new(levelID, missionID)
level_loadSounds()
loadSprites()
previousMenu = previous
currentLevel:loadMission(levelID, missionID)
end
function stateLevel:update(dt)
function LevelScene:update(dt)
lovebird.update()
currentLevel:update(dt)
end
function stateLevel:keypressed(key)
function LevelScene:keypressed(key)
if (currentLevel.pause == true) then
if key == "escape" then
exitLevel()
@ -53,13 +55,13 @@ function stateLevel:keypressed(key)
end
end
function stateLevel:draw(dt)
function LevelScene:draw(dt)
CScreen:apply()
currentLevel:draw(dt)
CScreen:cease()
end
function stateLevel:leave()
function LevelScene:exit()
currentLevel:reset()
end
@ -71,3 +73,5 @@ function exitLevel()
currentLevel:reset()
Gamestate.switch(stateDebugMenu)
end
return LevelScene