refactor(levels): load assets from an asset file

This commit is contained in:
Kazhnuz 2019-06-16 18:01:03 +02:00
parent 7557a1da19
commit 65a7ffd437
3 changed files with 35 additions and 33 deletions

View File

@ -17,6 +17,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
- **levels:** use the right drawing method for debris' texture
### Changed
- **levels:** assets are now loaded from an asset file
### Removed
- **main:** All functions already provided by gamecore have been removed.

View File

@ -0,0 +1,30 @@
local pigfolder = "assets/sprites/pigs/"
return {
["imagefonts"] = {
{"small", "assets/fonts/small"},
{"medium", "assets/fonts/medium"},
},
["sfx"] = {
{"jump", "assets/sfx/jump.wav"},
{"break", "assets/sfx/break.wav"},
{"collectcoin", "assets/sfx/collectcoin.wav"},
},
["sprites"] = {
{"coin", "assets/sprites/items/coin"},
{"coin5", "assets/sprites/items/coin5"},
{"coin10", "assets/sprites/items/coin10"},
{"cochon", pigfolder .. "cochon"},
{"bling-bling", pigfolder .. "bling-bling"},
{"sparkle", "assets/sprites/gfx/sparkle"},
{"poof", "assets/sprites/gfx/poof"},
},
["tilesets"] = {
{"weapon", "assets/sprites/weapon"},
{"block", "assets/sprites/items/block"},
{"lifeicons", "assets/sprites/pigs/lifeicons"},
},
["images"] = {
{"debris", "assets/sprites/debris.png"},
}
}

View File

@ -15,8 +15,7 @@ local leveldatas = require "datas.levels"
function Level:new(levelID, missionID)
self:reset()
Level.super.new(self)
self:loadSounds()
self:loadSprites()
self.assets:batchImport("scenes.levels.assets")
previousMenu = previous
self:loadMission(levelID, missionID)
@ -43,37 +42,6 @@ function Level:loadMission(levelID, missionID)
self:launchMission()
end
function Level:loadSounds()
self.assets:newSFX("jump", "assets/sfx/jump.wav")
self.assets:newSFX("break", "assets/sfx/break.wav")
self.assets:newSFX("collectcoin", "assets/sfx/collectcoin.wav")
end
function Level:loadSprites()
self.assets:addSprite("coin", "assets/sprites/items/coin")
self.assets:addSprite("coin5", "assets/sprites/items/coin5")
self.assets:addSprite("coin10", "assets/sprites/items/coin10")
self.assets:addTileset("weapon", "assets/sprites/weapon")
self.assets:addSprite("sparkle", "assets/sprites/gfx/sparkle")
self.assets:addSprite("poof", "assets/sprites/gfx/poof")
local pigfolder = "assets/sprites/pigs/"
self.assets:addSprite("cochon", pigfolder .. "cochon")
self.assets:addSprite("bling-bling", pigfolder .. "bling-bling")
self.assets:addTileset("weapon", "assets/sprites/weapon")
self.assets:addTileset("block", "assets/sprites/items/block")
self.assets:addImage("debris", "assets/sprites/debris.png")
self.assets:addTileset("lifeicons", "assets/sprites/pigs/lifeicons")
self.assets:addImageFont("small", "assets/fonts/small", 1)
self.assets:addImageFont("medium", "assets/fonts/medium", 1)
end
function Level:launchMission()
self.playermanager = PlayerManager(self)
--self:resetSpawnAndEntities()