diff --git a/assets/js/serverselector.js b/assets/js/serverselector.js index d4c5778..f6bf45a 100644 --- a/assets/js/serverselector.js +++ b/assets/js/serverselector.js @@ -95,7 +95,37 @@ function loadServerList() { function setGameInfo(serverUUID) { var result = serverarray.filter(function(obj) {return (obj.uuid === serverUUID);})[0]; var gameversion = versionarray.filter(function(obj) {return (obj.name === result.version);})[0]; - window.asseturl = gameversion.url // gameclient.js needs to access this + + // Cache folder renaming + var cachedir = userdir + '\\..\\..\\LocalLow\\Unity\\Web Player\\Cache'; + var curversion = cachedir + '\\Fusionfall'; + var newversion = cachedir + '\\' + gameversion.name; + var record = userdir + '\\.lastver'; + + if (remotefs.existsSync(curversion)) { + // cache already exists + // find out what version it belongs to + if (remotefs.existsSync(record)) { + var lastversion = remotefs.readFileSync(record); + remotefs.renameSync(curversion, cachedir + '\\' + lastversion); + console.log('Cached version ' + lastversion); + } else { + console.log( + "Couldn't find last version record; cache may get overwritten" + ); + } + } + + if (remotefs.existsSync(newversion)) { + // rename saved cache to FusionFall + remotefs.renameSync(newversion, curversion); + console.log('Loaded cached ' + gameversion.name); + } + + // make note of what version we are launching for next launch + remotefs.writeFileSync(record, gameversion.name); + + window.asseturl = gameversion.url; // gameclient.js needs to access this remotefs.writeFileSync(__dirname+"\\assetInfo.php", asseturl); remotefs.writeFileSync(__dirname+"\\loginInfo.php", result.ip);