scenes/levels: make the controller a local object

This commit is contained in:
Kazhnuz 2019-03-03 16:17:41 +01:00
parent 5f68f2a550
commit 0ca2dae4bf
2 changed files with 9 additions and 27 deletions

View File

@ -1,4 +1,4 @@
Level = Object:extend() -- On créer la classe des entitées, c'est la classe de base
local Level = Object:extend() -- On créer la classe des entitées, c'est la classe de base
local World = require "scenes.levels.controller.world"
local Camera = require "scenes.levels.controller.camera"
@ -90,3 +90,5 @@ function Level:draw(dt)
self.playermanager:drawHUD()
end
end
return Level

View File

@ -2,16 +2,12 @@
require "scenes.levels.sounds"
require "scenes.levels.sprites"
require "scenes.levels.controller"
require "scenes.levels.entities"
local Level = require "scenes.levels.controller"
-- 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
-- On initialise les variables
--local map -- la carte
@ -22,27 +18,20 @@ local previousMenu
-- Cela permet de réduire la présence de la variable d'état à se fichier, et de communiquer
-- uniquement avec cette fonction
function levelLoad(levelID, missionID)
level_loadSounds()
loadSprites()
currentLevel:loadMission(levelID, missionID)
Gamestate.switch(stateLevel)
end
function LevelScene:new(levelID, missionID)
self.controller = Level()
LevelScene.super.new(self)
level_loadSounds()
loadSprites()
previousMenu = previous
currentLevel:loadMission(levelID, missionID)
self.controller:loadMission(levelID, missionID)
self:register()
end
function LevelScene:update(dt)
lovebird.update()
currentLevel:update(dt)
self.controller:update(dt)
end
function LevelScene:keypressed(key)
@ -59,20 +48,11 @@ function LevelScene:keypressed(key)
end
function LevelScene:draw(dt)
currentLevel:draw(dt)
self.controller:draw(dt)
end
function LevelScene:exit()
currentLevel:reset()
end
function love.resize(w, h)
currentLevel.map:resize(w, h)
end
function exitLevel()
currentLevel:reset()
Gamestate.switch(stateDebugMenu)
self.controller:reset()
end
return LevelScene