diff options
| author | Leon Krause | 2018-03-27 11:25:03 +0200 |
|---|---|---|
| committer | Hein-Pieter van Braam | 2018-04-28 19:54:29 +0200 |
| commit | d3ffc8ad0c12e5c31d9443f566ec185d95773dd9 (patch) | |
| tree | d7322d1ce6222c02f002d1389467eb4fda1060ab /platform/javascript/engine.js | |
| parent | 393e1ef4ee4d5522ab28378eb88fef76a6eef8a0 (diff) | |
| download | godot-d3ffc8ad0c12e5c31d9443f566ec185d95773dd9.tar.gz godot-d3ffc8ad0c12e5c31d9443f566ec185d95773dd9.tar.zst godot-d3ffc8ad0c12e5c31d9443f566ec185d95773dd9.zip | |
Diffstat (limited to 'platform/javascript/engine.js')
| -rw-r--r-- | platform/javascript/engine.js | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/platform/javascript/engine.js b/platform/javascript/engine.js index dab7104af..06ff96bc3 100644 --- a/platform/javascript/engine.js +++ b/platform/javascript/engine.js @@ -14,6 +14,13 @@ var loadingFiles = {}; + function getPathLeaf(path) { + + while (path.endsWith('/')) + path = path.slice(0, -1); + return path.slice(path.lastIndexOf('/') + 1); + } + function getBasePath(path) { if (path.endsWith('/')) @@ -25,8 +32,7 @@ function getBaseName(path) { - path = getBasePath(path); - return path.slice(path.lastIndexOf('/') + 1); + return getPathLeaf(getBasePath(path)); } Engine = function Engine() { @@ -123,7 +129,12 @@ this.startGame = function(mainPack) { executableName = getBaseName(mainPack); - return Promise.all([this.init(getBasePath(mainPack)), this.preloadFile(mainPack)]).then( + return Promise.all([ + // Load from directory, + this.init(getBasePath(mainPack)), + // ...but write to root where the engine expects it. + this.preloadFile(mainPack, getPathLeaf(mainPack)) + ]).then( Function.prototype.apply.bind(synchronousStart, this, []) ); }; |
