blob: 3a752e6ddd3938e73ad9a13e398a7897ec9d1200 [file] [log] [blame]
var ImagePreloader = (function(){
function imageLoaded(){
this.loadedAssets += 1;
if(this.loadedAssets === this.totalImages){
}
}
function getAssetsPath(assetData){
var path = '';
if(this.assetsPath){
var imagePath = assetData.p;
if(imagePath.indexOf('images/') !== -1){
imagePath = imagePath.split('/')[1];
}
path = this.assetsPath + imagePath;
} else {
path = this.path;
path += assetData.u ? assetData.u : '';
path += assetData.p;
}
return path;
}
function loadImage(path){
var img = document.createElement('img');
img.addEventListener('load', imageLoaded.bind(this), false);
img.addEventListener('error', imageLoaded.bind(this), false);
img.src = path;
}
function loadAssets(assets){
this.totalAssets = assets.length;
var i;
for(i=0;i<this.totalAssets;i+=1){
if(!assets[i].layers){
loadImage.bind(this)(getAssetsPath.bind(this)(assets[i]));
this.totalImages += 1;
}
}
}
function setPath(path){
this.path = path || '';
}
function setAssetsPath(path){
this.assetsPath = path || '';
}
return function ImagePreloader(){
this.loadAssets = loadAssets;
this.setAssetsPath = setAssetsPath;
this.setPath = setPath;
this.assetsPath = '';
this.path = '';
this.totalAssets = 0;
this.totalImages = 0;
this.loadedAssets = 0;
}
}());