Deploying to built from  @ 262a2254b6 🚀
				
					
				
			This commit is contained in:
		
							parent
							
								
									bc2a204499
								
							
						
					
					
						commit
						454786b22f
					
				
					 3 changed files with 575 additions and 569 deletions
				
			
		
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							| 
						 | 
				
			
			@ -1101,8 +1101,8 @@ var mappingArray = [
 | 
			
		|||
["graphics/transitions/020-flat01", "Graphics/Transitions/020-Flat01.png?h=94dd9f75005cdc7236a0b400b71920fd"],
 | 
			
		||||
["graphics/windowskins", "Graphics/Windowskins?h="],
 | 
			
		||||
["graphics/windowskins/windowskin_kn", "Graphics/Windowskins/Windowskin_kn.png?h=6ad592d1b718424e634dda8f7b96aac2"],
 | 
			
		||||
["bitmap-map", "bitmap-map.js?h=aa57757c4398e0bd546f80ef63386cbe"],
 | 
			
		||||
["mapping", "mapping.js?h=c713fd63fd66b4be258f9cf94559cd55"],
 | 
			
		||||
["bitmap-map", "bitmap-map.js?h=1abc5d6cb7fca45042dab38ab7632504"],
 | 
			
		||||
["mapping", "mapping.js?h=bb851a310612778fb5cce683b0df55fa"],
 | 
			
		||||
["rgss", "rgss.rb?h=e4f6ce1cd6617eedd6e4704cfd0d263b"],
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										56
									
								
								js/drive.js
									
										
									
									
									
								
							
							
						
						
									
										56
									
								
								js/drive.js
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -172,11 +172,15 @@ function preloadList(jsonArray) {
 | 
			
		|||
        const filename = mappingValue.substring(mappingValue.lastIndexOf("/") + 1).split("?")[0];
 | 
			
		||||
 | 
			
		||||
        // Preload the asset
 | 
			
		||||
        FS.createPreloadedFile(path, filename, "gameasync/" + mappingValue, true, true, function() {
 | 
			
		||||
            window.fileAsyncCache[mappingKey] = 1;
 | 
			
		||||
        }, console.error, false, false, () => {
 | 
			
		||||
            try { FS.unlink(path + "/" + filename); } catch (err) {}
 | 
			
		||||
        });
 | 
			
		||||
        getLazyAsset("gameasync/" + mappingValue, filename, (data) => {
 | 
			
		||||
            if (!data) return;
 | 
			
		||||
 | 
			
		||||
            FS.createPreloadedFile(path, filename, new Uint8Array(data), true, true, function() {
 | 
			
		||||
                window.fileAsyncCache[mappingKey] = 1;
 | 
			
		||||
            }, console.error, false, false, () => {
 | 
			
		||||
                try { FS.unlink(path + "/" + filename); } catch (err) {}
 | 
			
		||||
            });
 | 
			
		||||
        }, true);
 | 
			
		||||
    });
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -196,28 +200,36 @@ window.fileLoadedAsync = function(file) {
 | 
			
		|||
        });
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
var hideTimer = 0;
 | 
			
		||||
function getLazyAsset(url, filename, callback) {
 | 
			
		||||
var activeStreams = [];
 | 
			
		||||
function getLazyAsset(url, filename, callback, noretry) {
 | 
			
		||||
    const xhr = new XMLHttpRequest();
 | 
			
		||||
    xhr.responseType = "arraybuffer";
 | 
			
		||||
    const pdiv = document.getElementById("progress");
 | 
			
		||||
    let showTimer = 0;
 | 
			
		||||
    let abortTimer = 0;
 | 
			
		||||
 | 
			
		||||
    const end = (message) => {
 | 
			
		||||
        pdiv.innerHTML = `${filename} - ${message}`;
 | 
			
		||||
        activeStreams.splice(activeStreams.indexOf(filename), 1);
 | 
			
		||||
        if (activeStreams.length === 0) {
 | 
			
		||||
            pdiv.style.opacity = '0';
 | 
			
		||||
        }
 | 
			
		||||
        clearTimeout(abortTimer);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    const retry = () => {
 | 
			
		||||
        xhr.abort();
 | 
			
		||||
        getLazyAsset(url, filename, callback);
 | 
			
		||||
 | 
			
		||||
        if (noretry) {
 | 
			
		||||
            end('skip'); callback(null);
 | 
			
		||||
        } else {
 | 
			
		||||
            activeStreams.splice(activeStreams.indexOf(filename), 1);
 | 
			
		||||
            getLazyAsset(url, filename, callback);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    xhr.onreadystatechange = function() {
 | 
			
		||||
        if (xhr.readyState == XMLHttpRequest.DONE && xhr.status >= 200 && xhr.status < 400) {
 | 
			
		||||
            pdiv.innerHTML = `${filename} - done`;
 | 
			
		||||
            hideTimer = setTimeout(() => {
 | 
			
		||||
                pdiv.style.opacity = '0';
 | 
			
		||||
                hideTimer = 0;
 | 
			
		||||
            }, 500);
 | 
			
		||||
            clearTimeout(showTimer);
 | 
			
		||||
            clearTimeout(abortTimer);
 | 
			
		||||
            end('done');
 | 
			
		||||
            callback(xhr.response);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			@ -232,16 +244,10 @@ function getLazyAsset(url, filename, callback) {
 | 
			
		|||
    xhr.open('GET', url);
 | 
			
		||||
    xhr.send();
 | 
			
		||||
 | 
			
		||||
    pdiv.innerHTML = `${filename} - starting`;
 | 
			
		||||
    pdiv.innerHTML = `${filename} - start`;
 | 
			
		||||
    pdiv.style.opacity = '0.5';
 | 
			
		||||
 | 
			
		||||
    showTimer = setTimeout(() => {
 | 
			
		||||
        pdiv.style.opacity = '0.5';
 | 
			
		||||
    }, 100);
 | 
			
		||||
    activeStreams.push(filename);
 | 
			
		||||
 | 
			
		||||
    abortTimer = setTimeout(retry, 10000);
 | 
			
		||||
 | 
			
		||||
    if (hideTimer) {
 | 
			
		||||
        clearTimeout(hideTimer);
 | 
			
		||||
        hideTimer = 0;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue