scenes/levels: make more readable data table

This commit is contained in:
Kazhnuz 2019-03-03 15:50:59 +01:00
parent 5d27343e29
commit 2ba1d5cdaa
1 changed files with 22 additions and 25 deletions

View File

@ -4,6 +4,8 @@ local World = require "scenes.levels.controller.world"
local Camera = require "scenes.levels.controller.camera"
local PlayerManager = require "scenes.levels.controller.players"
local leveldatas = require "datas.levels"
-- INIT FUNCTIONS
-- Initialize and launch the level
@ -12,16 +14,7 @@ function Level:new()
end
function Level:reset()
self.levelRealm = ""
self.levelName = ""
self.missionName = ""
self.missionDesc = ""
self.mapfile = "level1"
self.gravity = 0
self.autorun = 1
self.objectiveID = 0
self.startx = 32
self.starty = 420/2
self.datas = {}
self.pause = false
self.map = nil
@ -30,23 +23,27 @@ function Level:reset()
end
function Level:loadMission(levelID, missionID)
local leveldatas, missiondatas
leveldatas = datas.levels[levelID]
missiondatas = leveldatas.missions[missionID]
self.levelRealm = leveldatas.realm
self.levelName = leveldatas.name
self.missionName = missiondatas.missionName
self.missionDesc = missiondatas.description
self.mapfile = missiondatas.mapfile
self.gravity = missiondatas.gravity
self.autorun = missiondatas.autorun
self.objectiveID = missiondatas.objectiveID
self.startx = missiondatas.startx
self.starty = missiondatas.starty
local datas, missiondatas
self.datas = {}
datas = leveldatas[levelID]
self.datas.realm = datas.realm
self.datas.level = datas.name
self.world = World(self, self.mapfile)
missiondatas = datas.missions[missionID]
self.datas.missions = {}
self.datas.missions.name = missiondatas.missionName
self.datas.missions.desc = missiondatas.description
self.datas.missions.map = missiondatas.mapfile
self.datas.missions.gravity = missiondatas.gravity
self.datas.missions.autorun = missiondatas.autorun
self.datas.missions.objectiveID = missiondatas.objectiveID
self.datas.missions.startx = missiondatas.startx
self.datas.missions.starty = missiondatas.starty
self.datas.missions.music = missiondatas.music
self.world = World(self, self.datas.missions.map)
self.world:load()
assets:setMusic(missiondatas.music)
assets:setMusic(self.datas.missions.music)
self:launchMission()
end