Răsfoiți Sursa

CLeanup assets folder. (#424)

Kharkunov Eugene 1 an în urmă
părinte
comite
a42adbb537
100 a modificat fișierele cu 0 adăugiri și 1737 ștergeri
  1. 0 1
      docs/assets/15-puzzle/archive_files.json
  2. BIN
      docs/assets/15-puzzle/game.arcd0
  3. BIN
      docs/assets/15-puzzle/game.arci0
  4. BIN
      docs/assets/15-puzzle/game.dmanifest0
  5. 0 20
      docs/assets/15-puzzle/game.projectc0
  6. BIN
      docs/assets/15-puzzle/game.public.der0
  7. BIN
      docs/assets/15-puzzle/preview.jpg
  8. 0 1
      docs/assets/car/archive_files.json
  9. BIN
      docs/assets/car/game.arcd0
  10. BIN
      docs/assets/car/game.arci0
  11. BIN
      docs/assets/car/game.dmanifest0
  12. 0 20
      docs/assets/car/game.projectc0
  13. BIN
      docs/assets/car/game.public.der0
  14. BIN
      docs/assets/car/preview.jpg
  15. BIN
      docs/assets/defold_sound.swf
  16. 0 0
      docs/assets/dmengine.js
  17. 0 0
      docs/assets/dmengine_1_2_103.js
  18. 0 0
      docs/assets/dmengine_1_2_106.js
  19. 0 0
      docs/assets/dmengine_1_2_107.js
  20. 0 0
      docs/assets/dmengine_1_2_112.js
  21. 0 0
      docs/assets/dmengine_1_2_119.js
  22. 0 692
      docs/assets/dmloader.js
  23. 0 1
      docs/assets/easier/archive/archive_files.json
  24. BIN
      docs/assets/easier/archive/game.arcd0
  25. BIN
      docs/assets/easier/archive/game.arci0
  26. BIN
      docs/assets/easier/archive/game.dmanifest0
  27. 0 144
      docs/assets/easier/archive/game.projectc0
  28. BIN
      docs/assets/easier/archive/game.public.der0
  29. BIN
      docs/assets/easier/defold_sound.swf
  30. 0 652
      docs/assets/easier/dmloader.js
  31. BIN
      docs/assets/easier/easier.wasm
  32. 0 0
      docs/assets/easier/easier_asmjs.js
  33. 0 0
      docs/assets/easier/easier_wasm.js
  34. BIN
      docs/assets/easier/preview.jpg
  35. BIN
      docs/assets/examples-project.zip
  36. 0 1
      docs/assets/examples/archive_files.json
  37. BIN
      docs/assets/examples/game.darc0
  38. BIN
      docs/assets/examples/game.darc1
  39. 0 31
      docs/assets/examples/game.projectc0
  40. BIN
      docs/assets/magic-link-assets.zip
  41. 0 1
      docs/assets/magic-link/archive_files.json
  42. BIN
      docs/assets/magic-link/game.arcd0
  43. BIN
      docs/assets/magic-link/game.arcd1
  44. BIN
      docs/assets/magic-link/game.arci0
  45. BIN
      docs/assets/magic-link/game.dmanifest0
  46. 0 36
      docs/assets/magic-link/game.projectc0
  47. BIN
      docs/assets/magic-link/game.public.der0
  48. BIN
      docs/assets/magic-link/preview.jpg
  49. 0 1
      docs/assets/platformer/archive_files.json
  50. BIN
      docs/assets/platformer/game.arcd0
  51. BIN
      docs/assets/platformer/game.arcd1
  52. BIN
      docs/assets/platformer/game.arcd2
  53. BIN
      docs/assets/platformer/game.arcd3
  54. BIN
      docs/assets/platformer/game.arcd4
  55. BIN
      docs/assets/platformer/game.arcd5
  56. BIN
      docs/assets/platformer/game.arcd6
  57. BIN
      docs/assets/platformer/game.arci0
  58. BIN
      docs/assets/platformer/game.dmanifest0
  59. 0 24
      docs/assets/platformer/game.projectc0
  60. BIN
      docs/assets/platformer/game.public.der0
  61. BIN
      docs/assets/platformer/preview.jpg
  62. BIN
      docs/assets/quad.dae.zip
  63. BIN
      docs/assets/runner-assets.zip
  64. 0 1
      docs/assets/runner/archive_files.json
  65. BIN
      docs/assets/runner/game.arcd0
  66. BIN
      docs/assets/runner/game.arcd1
  67. BIN
      docs/assets/runner/game.arci0
  68. BIN
      docs/assets/runner/game.dmanifest0
  69. 0 28
      docs/assets/runner/game.projectc0
  70. BIN
      docs/assets/runner/game.public.der0
  71. BIN
      docs/assets/runner/preview.jpg
  72. 0 1
      docs/assets/shadertoy/archive_files.json
  73. BIN
      docs/assets/shadertoy/game.arcd0
  74. BIN
      docs/assets/shadertoy/game.arci0
  75. BIN
      docs/assets/shadertoy/game.dmanifest0
  76. 0 20
      docs/assets/shadertoy/game.projectc0
  77. BIN
      docs/assets/shadertoy/game.public.der0
  78. BIN
      docs/assets/shadertoy/preview.jpg
  79. 0 1
      docs/assets/side-scroller/archive_files.json
  80. BIN
      docs/assets/side-scroller/game.arcd0
  81. BIN
      docs/assets/side-scroller/game.arci0
  82. BIN
      docs/assets/side-scroller/game.dmanifest0
  83. 0 19
      docs/assets/side-scroller/game.projectc0
  84. BIN
      docs/assets/side-scroller/game.public.der0
  85. BIN
      docs/assets/side-scroller/preview.jpg
  86. 0 1
      docs/assets/snake/archive_files.json
  87. BIN
      docs/assets/snake/game.arcd0
  88. BIN
      docs/assets/snake/game.arci0
  89. BIN
      docs/assets/snake/game.dmanifest0
  90. 0 20
      docs/assets/snake/game.projectc0
  91. BIN
      docs/assets/snake/game.public.der0
  92. BIN
      docs/assets/snake/preview.jpg
  93. BIN
      docs/assets/war-battles-assets.zip
  94. 0 1
      docs/assets/war-battles/archive_files.json
  95. BIN
      docs/assets/war-battles/game.arcd0
  96. BIN
      docs/assets/war-battles/game.arci0
  97. BIN
      docs/assets/war-battles/game.dmanifest0
  98. 0 20
      docs/assets/war-battles/game.projectc0
  99. BIN
      docs/assets/war-battles/game.public.der0
  100. BIN
      docs/assets/war-battles/preview.jpg

+ 0 - 1
docs/assets/15-puzzle/archive_files.json

@@ -1 +0,0 @@
-{"content":[{"name":"game.projectc","size":235,"pieces":[{"name":"game.projectc0","offset":0}]},{"name":"game.arci","size":688,"pieces":[{"name":"game.arci0","offset":0}]},{"name":"game.arcd","size":1221333,"pieces":[{"name":"game.arcd0","offset":0}]},{"name":"game.dmanifest","size":1101,"pieces":[{"name":"game.dmanifest0","offset":0}]},{"name":"game.public.der","size":162,"pieces":[{"name":"game.public.der0","offset":0}]}]}

BIN
docs/assets/15-puzzle/game.arcd0


BIN
docs/assets/15-puzzle/game.arci0


BIN
docs/assets/15-puzzle/game.dmanifest0


+ 0 - 20
docs/assets/15-puzzle/game.projectc0

@@ -1,20 +0,0 @@
-[project]
-title = 15 puzzle
-version = 0.1
-
-[bootstrap]
-main_collection = /main/main.collectionc
-
-[input]
-game_binding = /input/game.input_bindingc
-
-[display]
-width = 512
-height = 512
-
-[physics]
-scale = 0.02
-
-[script]
-shared_state = 1
-

BIN
docs/assets/15-puzzle/game.public.der0


BIN
docs/assets/15-puzzle/preview.jpg


+ 0 - 1
docs/assets/car/archive_files.json

@@ -1 +0,0 @@
-{"content":[{"name":"game.projectc","size":244,"pieces":[{"name":"game.projectc0","offset":0}]},{"name":"game.arci","size":928,"pieces":[{"name":"game.arci0","offset":0}]},{"name":"game.arcd","size":20960,"pieces":[{"name":"game.arcd0","offset":0}]},{"name":"game.dmanifest","size":1553,"pieces":[{"name":"game.dmanifest0","offset":0}]},{"name":"game.public.der","size":162,"pieces":[{"name":"game.public.der0","offset":0}]}]}

BIN
docs/assets/car/game.arcd0


BIN
docs/assets/car/game.arci0


BIN
docs/assets/car/game.dmanifest0


+ 0 - 20
docs/assets/car/game.projectc0

@@ -1,20 +0,0 @@
-[project]
-title = Getting started
-dependencies = 
-
-[bootstrap]
-main_collection = /main/main.collectionc
-
-[input]
-game_binding = /input/game.input_bindingc
-
-[display]
-width = 1280
-height = 720
-
-[physics]
-scale = 0.02
-
-[script]
-shared_state = 1
-

BIN
docs/assets/car/game.public.der0


BIN
docs/assets/car/preview.jpg


BIN
docs/assets/defold_sound.swf


Fișier diff suprimat deoarece este prea mare
+ 0 - 0
docs/assets/dmengine.js


Fișier diff suprimat deoarece este prea mare
+ 0 - 0
docs/assets/dmengine_1_2_103.js


Fișier diff suprimat deoarece este prea mare
+ 0 - 0
docs/assets/dmengine_1_2_106.js


Fișier diff suprimat deoarece este prea mare
+ 0 - 0
docs/assets/dmengine_1_2_107.js


Fișier diff suprimat deoarece este prea mare
+ 0 - 0
docs/assets/dmengine_1_2_112.js


Fișier diff suprimat deoarece este prea mare
+ 0 - 0
docs/assets/dmengine_1_2_119.js


+ 0 - 692
docs/assets/dmloader.js

@@ -1,692 +0,0 @@
-/* ********************************************************************* */
-/* Load and combine data that is split into archives                     */
-/* ********************************************************************* */
-
-var Combine = {
-    _targets: [],
-    _targetIndex: 0,
-    // target: build target
-    //  name: intended filepath of built object
-    //  size: expected size of built object.
-    //  data: combined data
-    //  downloaded: total amount of data downloaded
-    //  pieces: array of name, offset and data objects
-    //  numExpectedFiles: total number of files expected in description
-    //  lastRequestedPiece: index of last data file requested (strictly ascending)
-    //  totalLoadedPieces: counts the number of data files received
-
-    //MAX_CONCURRENT_XHR: 6,    // remove comment if throttling of XHR is desired.
-
-    isCompleted: false,       // status of process
-
-    _onCombineCompleted: [],    // signature: name, data.
-    _onAllTargetsBuilt:[],      // signature: void
-    _onDownloadProgress: [],    // signature: downloaded, total
-
-    _totalDownloadBytes: 0,
-    _archiveLocationFilter: function(path) { return "split" + path; },
-
-    addProgressListener: function(callback) {
-        if (typeof callback !== 'function') {
-            throw "Invalid callback registration";
-        }
-        this._onDownloadProgress.push(callback);
-    },
-
-    addCombineCompletedListener: function(callback) {
-        if (typeof callback !== 'function') {
-            throw "Invalid callback registration";
-        }
-        this._onCombineCompleted.push(callback);
-    },
-
-    addAllTargetsBuiltListener: function(callback) {
-        if (typeof callback !== 'function') {
-            throw "Invalid callback registration";
-        }
-        this._onAllTargetsBuilt.push(callback);
-    },
-
-    // descriptUrl: location of text file describing files to be preloaded
-    process: function(descriptUrl) {
-        var xhr = new XMLHttpRequest();
-        xhr.open('GET', descriptUrl);
-        xhr.responseType = 'text';
-        xhr.onload = function(evt) {
-            Combine.onReceiveDescription(xhr);
-        };
-        xhr.send(null);
-    },
-
-    cleanUp: function() {
-        this._targets =  [];
-        this._targetIndex = 0;
-        this.isCompleted = false;
-        this._onCombineCompleted = [];
-        this._onAllTargetsBuilt = [];
-        this._onDownloadProgress = [];
-
-        this._totalDownloadBytes = 0;
-    },
-
-    onReceiveDescription: function(xhr) {
-        var json = JSON.parse(xhr.responseText);
-        this._targets = json.content;
-        this._totalDownloadBytes = 0;
-
-        var targets = this._targets;
-        for(var i=0; i<targets.length; ++i) {
-            this._totalDownloadBytes += targets[i].size;
-        }
-        this.requestContent();
-    },
-
-    requestContent: function() {
-        var target = this._targets[this._targetIndex];
-        if (1 < target.pieces.length) {
-            target.data = new Uint8Array(target.size);
-        }
-        var limit = target.pieces.length;
-        if (typeof this.MAX_CONCURRENT_XHR !== 'undefined') {
-            limit = Math.min(limit, this.MAX_CONCURRENT_XHR);
-        }
-        for (var i=0; i<limit; ++i) {
-            this.requestPiece(target, i);
-        }
-    },
-
-    requestPiece: function(target, index) {
-        if (index <  target.lastRequestedPiece) {
-            throw "Request out of order";
-        }
-
-        target.lastRequestedPiece = index;
-        target.progress = {};
-
-        var item = target.pieces[index];
-        var xhr = new XMLHttpRequest();
-        xhr.open('GET', this._archiveLocationFilter('/' + item.name), true);
-        xhr.responseType = 'arraybuffer';
-        xhr.onprogress = function(evt) {
-           target.progress[item.name] = {total: 0, downloaded: 0};
-            if (evt.total && evt.lengthComputable) {
-                target.progress[item.name].total = evt.total;
-            }
-            if (evt.loaded && evt.lengthComputable) {
-                target.progress[item.name].downloaded = evt.loaded;
-                Combine.updateProgress(target);
-            }
-        };
-        xhr.onload = function(evt) {
-            item.data = new Uint8Array(xhr.response);
-            item.dataLength = item.data.length;
-            target.progress[item.name].total = item.dataLength;
-            target.progress[item.name].downloaded = item.dataLength;
-            Combine.copyData(target, item);
-            Combine.onPieceLoaded(target, item);
-            Combine.updateProgress(target);
-            item.data = undefined;
-        };
-        xhr.send(null);
-    },
-
-    updateProgress: function(target) {
-        var total_downloaded = 0;
-        for (var p in target.progress) {
-            total_downloaded += target.progress[p].downloaded;
-        }
-        for(i = 0; i<this._onDownloadProgress.length; ++i) {
-            this._onDownloadProgress[i](total_downloaded, this._totalDownloadBytes);
-        }
-    },
-
-    copyData: function(target, item) {
-        if (1 == target.pieces.length) {
-            target.data = item.data;
-        } else {
-            var start = item.offset;
-            var end = start + item.data.length;
-            if (0 > start) {
-                throw "Buffer underflow";
-            }
-            if (end > target.data.length) {
-                throw "Buffer overflow";
-            }
-            target.data.set(item.data, item.offset);
-        }
-    },
-
-    onPieceLoaded: function(target, item) {
-        if (typeof target.totalLoadedPieces === 'undefined') {
-            target.totalLoadedPieces = 0;
-        }
-        ++target.totalLoadedPieces;
-        if (target.totalLoadedPieces == target.pieces.length) {
-            this.finalizeTarget(target);
-            ++this._targetIndex;
-            for (var i=0; i<this._onCombineCompleted.length; ++i) {
-                this._onCombineCompleted[i](target.name, target.data);
-            }
-            if (this._targetIndex < this._targets.length) {
-                this.requestContent();
-            } else {
-                this.isCompleted = true;
-                for (i=0; i<this._onAllTargetsBuilt.length; ++i) {
-                    this._onAllTargetsBuilt[i]();
-                }
-            }
-        } else {
-            var next = target.lastRequestedPiece + 1;
-            if (next < target.pieces.length) {
-                this.requestPiece(target, next);
-            }
-        }
-    },
-
-    finalizeTarget: function(target) {
-        var actualSize = 0;
-        for (var i=0;i<target.pieces.length; ++i) {
-            actualSize += target.pieces[i].dataLength;
-        }
-        if (actualSize != target.size) {
-            throw "Unexpected data size";
-        }
-
-        if (1 < target.pieces.length) {
-            var output = target.data;
-            var pieces = target.pieces;
-            for (i=0; i<pieces.length; ++i) {
-                var item = pieces[i];
-                // Bounds check
-                var start = item.offset;
-                var end = start + item.dataLength;
-                if (0 < i) {
-                    var previous = pieces[i - 1];
-                    if (previous.offset + previous.dataLength > start) {
-                        throw "Segment underflow";
-                    }
-                }
-                if (pieces.length - 2 > i) {
-                    var next = pieces[i + 1];
-                    if (end > next.offset) {
-                        throw "Segment overflow";
-                    }
-                }
-            }
-        }
-    }
-};
-
-/* ********************************************************************* */
-/* Default splash and progress visualisation                             */
-/* ********************************************************************* */
-
-var DefaultProgress = {
-    progress_id: "_defold-progress",
-    bar_id: "_defold-progress-bar",
-    status_id: "_defold-status",
-
-    start : function (canvas) {
-        /* Insert default progress bar and status */
-        var div = '<div id="' + DefaultProgress.progress_id + '">' +
-                    '<div id="' + DefaultProgress.bar_id + '">' +
-                    '</div></div>' +
-                    '<div id="' + DefaultProgress.status_id + '"></div>';
-
-        canvas.insertAdjacentHTML('afterend', div);
-        var status = document.getElementById(DefaultProgress.status_id);
-        var bar = document.getElementById(DefaultProgress.bar_id);
-        var progress = document.getElementById(DefaultProgress.progress_id);
-
-        status.style.display = 'none';
-        status.style.position = 'absolute';
-        status.style.textAlign = 'center';
-        status.style.fontWeight = '600';
-        status.style.bottom = '0';
-        status.style.left = '50%';
-        status.style.transform = 'translateX(-50%)';
-        status.style.backgroundColor = 'hsla(0, 0%, 100%, .75)';
-        status.style.boxShadow = '-0.035px 2px 5px 0px rgba(46, 37, 22, 0.25)';
-        status.style.padding = '6px 12px';
-
-        progress.style.width = '100%';
-        progress.style.position = 'absolute';
-        progress.style.bottom = '0';
-        bar.style.width = '50%';
-        bar.style.height = '4px';
-        bar.style.backgroundColor = '#3F7BBB';
-        DefaultProgress.status = status;
-        DefaultProgress.bar = bar;
-        DefaultProgress.progress = progress;
-     },
-
-    progress: function (bytes_loaded, bytes_total, status) {
-        var percentage = bytes_loaded / bytes_total * 100;
-        DefaultProgress.bar.style.width = percentage + "%";
-        if(status) {
-            DefaultProgress.status.innerText = status;
-            DefaultProgress.status.style.display = 'block';
-        } else {
-            DefaultProgress.status.innerText = '';
-            DefaultProgress.status.style.display = 'none';
-        }
-    },
-
-    done: function () {
-        DefaultProgress.status.innerText = "Starting...";
-        DefaultProgress.status.style.display = 'block';
-    },
-
-    end: function () {
-        DefaultProgress.progress.parentElement.removeChild(DefaultProgress.progress);
-        DefaultProgress.status.parentElement.removeChild(DefaultProgress.status);
-    }
-};
-
-/* ********************************************************************* */
-/* Default input override                                                */
-/* ********************************************************************* */
-
-var CanvasInput = {
-    arrowKeysHandler : function(e) {
-        switch(e.keyCode) {
-            case 37: case 38: case 39:  case 40: // Arrow keys
-            case 32: e.preventDefault(); e.stopPropagation(); // Space
-            default: break; // do not block other keys
-        }
-    },
-
-    onFocusIn : function(e) {
-        window.addEventListener("keydown", CanvasInput.arrowKeysHandler, false);
-    },
-
-    onFocusOut: function(e) {
-        window.removeEventListener("keydown", CanvasInput.arrowKeysHandler, false);
-    },
-
-    addToCanvas : function(canvas) {
-        canvas.addEventListener("focus", CanvasInput.onFocusIn, false);
-        canvas.addEventListener("blur", CanvasInput.onFocusOut, false);
-        canvas.focus();
-        CanvasInput.onFocusIn();
-    }
-};
-
-/* ********************************************************************* */
-/* Module is Emscripten namespace                                        */
-/* ********************************************************************* */
-
-var Module = {
-    noInitialRun: true,
-
-    _filesToPreload: [],
-    _archiveLoaded: false,
-    _preLoadDone: false,
-    _waitingForArchive: false,
-
-    // Persistent storage
-    persistentStorage: true,
-    _syncInProgress: false,
-    _syncNeeded: false,
-    _syncInitial: false,
-    _syncMaxTries: 3,
-    _syncTries: 0,
-
-    print: function(text) { console.log(text); },
-    printErr: function(text) { console.error(text); },
-
-    setStatus: function(text) { console.log(text); },
-
-    prepareErrorObject: function (err, url, line, column, errObj) {
-        line = typeof line == "undefined" ? 0 : line;
-        column = typeof column == "undefined" ? 0 : column;
-        url = typeof url == "undefined" ? "" : url;
-        var errorLine = url + ":" + line + ":" + column;
-
-        var error = errObj || (typeof window.event != "undefined" ? window.event.error : "" ) || err || "Undefined Error";
-        var message = "";
-        var stack = "";
-        var backtrace = "";
-
-        if (typeof error == "object" && typeof error.stack != "undefined" && typeof error.message != "undefined") {
-            stack = String(error.stack);
-            message = String(error.message);
-        } else {
-            stack = String(error).split("\n");
-            message = stack.shift();
-            stack = stack.join("\n");
-        }
-        stack = stack || errorLine;
-
-        var callLine = /at (\S+:\d*$)/.exec(message);
-        if (callLine) {
-            message = message.replace(/(at \S+:\d*$)/, "");
-            stack = callLine[1] + "\n" + stack;
-        }
-
-        message = message.replace(/(abort\(.+\)) at .+/, "$1");
-        stack = stack.replace(/\?{1}\S+(:\d+:\d+)/g, "$1");
-        stack = stack.replace(/ *at (\S+)$/gm, "@$1");
-        stack = stack.replace(/ *at (\S+)(?: \[as \S+\])? +\((.+)\)/g, "$1@$2");
-        stack = stack.replace(/^((?:Object|Array)\.)/gm, "");
-        stack = stack.split("\n");
-
-        return { stack:stack, message:message };
-    },
-
-    hasWebGLSupport: function() {
-        var webgl_support = false;
-        try {
-            var canvas = document.createElement("canvas");
-            var gl = canvas.getContext("webgl") || canvas.getContext("experimental-webgl");
-            if (gl && gl instanceof WebGLRenderingContext) {
-                webgl_support = true;
-            }
-        } catch (error) {
-            console.log("An error occurred while detecting WebGL support: " + error);
-            webgl_support = false;
-        }
-
-        return webgl_support;
-    },
-
-    /**
-    * Module.runApp - Starts the application given a canvas element id
-    *
-    * 'extra_params' is an optional object that can have the following fields:
-    *
-    *     'archive_location_filter':
-    *         Filter function that will run for each archive path.
-    *
-    *     'unsupported_webgl_callback':
-    *         Function that is called if WebGL is not supported.
-    *
-    *     'engine_arguments':
-    *         List of arguments (strings) that will be passed to the engine.
-    *
-    *     'persistent_storage':
-    *         Boolean toggling the usage of persistent storage.
-    *
-    *     'custom_heap_size':
-    *         Number of bytes specifying the memory heap size.
-    *
-    *     'load_start':
-    *         Function to call when download starts.
-    *         function(canvas) { }
-    *
-    *     'load_progress':
-    *         Function to call on download progress.
-    *         function(bytes_downloaded, bytes_total, status)
-    *
-    *     'load_done':
-    *         Function to call when download is done.
-    *         function()
-    *
-    *     'load_end':
-    *         Function to call when game is loaded and ready to start.
-    *         function()
-    *
-    *     'game_start':
-    *         Function to call right before game starts.
-    *         function()
-    *
-    **/
-    setParams: function(extra_params) {
-        var params = {
-            splash_image: undefined,
-            archive_location_filter: function(path) { return 'split' + path; },
-            unsupported_webgl_callback: undefined,
-            engine_arguments: [],
-            persistent_storage: true,
-            custom_heap_size: undefined,
-            load_start: DefaultProgress.start,
-            load_progress: DefaultProgress.progress,
-            load_done: DefaultProgress.done,
-            load_end: DefaultProgress.end,
-            game_start: function() {},
-        };
-
-        for (var k in extra_params) {
-            if (extra_params.hasOwnProperty(k)) {
-                params[k] = extra_params[k];
-            }
-        }
-
-        Module.archive_location_filter = params["archive_location_filter"];
-        Module.arguments = params["engine_arguments"];
-        Module.persistentStorage = params["persistent_storage"];
-        Module["TOTAL_MEMORY"] = params["custom_heap_size"];
-        Module.load_start = params["load_start"];
-        Module.load_progress = params["load_progress"];
-        Module.load_done = params["load_done"];
-        Module.load_end = params["load_end"];
-        Module.game_start = params["game_start"];
-    },
-
-    runApp: function(app_canvas_id, extra_params) {
-        app_canvas_id = (typeof app_canvas_id === 'undefined') ?  'canvas' : app_canvas_id;
-        Module.canvas = document.getElementById(app_canvas_id);
-
-        Module.setParams(extra_params);
-
-        if (Module.hasWebGLSupport()) {
-            // Override game keys
-            CanvasInput.addToCanvas(Module.canvas);
-
-            // Load Facebook API
-            var fb = document.createElement('script');
-            fb.type = 'text/javascript';
-            fb.src = '//connect.facebook.net/en_US/sdk.js';
-            document.head.appendChild(fb);
-
-            // Add progress
-            Module.load_start(Module.canvas);
-
-            // Load and assemble archive
-            Combine.addCombineCompletedListener(Module.onArchiveFileLoaded);
-            Combine.addAllTargetsBuiltListener(Module.onArchiveLoaded);
-            Combine.addProgressListener(Module.onArchiveLoadProgress);
-            Combine._archiveLocationFilter = Module.archive_location_filter;
-            Combine.process(Combine._archiveLocationFilter('/archive_files.json'));
-        } else {
-            Module.load_start(Module.canvas);
-            Module.load_progress(0, 0, "Unable to start game, WebGL not supported");
-            Module.setStatus = function(text) {
-                if (text) Module.printErr('[missing WebGL] ' + text);
-            };
-
-            if (typeof params["unsupported_webgl_callback"] === "function") {
-                params["unsupported_webgl_callback"]();
-            }
-        }
-    },
-    /* Simulate app loading etc for frontend testing */
-    testApp: function(app_canvas_id, extra_params) {
-        app_canvas_id = (typeof app_canvas_id === 'undefined') ?  'canvas' : app_canvas_id;
-        Module.canvas = document.getElementById(app_canvas_id);
-
-        Module.setParams(extra_params);
-
-        // Test progress
-        Module._test_inc = 1;
-        Module._test_bytes = 0;
-        Module._test_total_bytes = 1000;
-        Module.load_start(Module.canvas);
-        Module._testintervall = setInterval(Module.testUpdate, 10);
-    },
-
-    testUpdate: function() {
-        Module._test_bytes += Module._test_inc;
-        var msg = undefined;
-        var rat = Module._test_bytes / Module._test_total_bytes;
-        if (rat > 0.3 && rat < 0.9) {
-            msg = "Looking good so far";
-            if (rat > 0.5) {
-                msg = "If something bad happens, this is how it's presented.";
-            }
-        }
-        if (Module._test_bytes < Module._test_total_bytes) {
-            Module.load_progress(Module._test_bytes, Module._test_total_bytes, msg);
-        } else {
-            Module.load_done();
-            clearInterval(Module._testintervall);
-            setTimeout(Module.load_end, 2000);
-            setTimeout(Module.game_start, 3000);
-        }
-    },
-
-    onArchiveLoadProgress: function(downloaded, total) {
-        Module.load_progress(downloaded, total);
-    },
-
-    onArchiveFileLoaded: function(name, data) {
-        Module._filesToPreload.push({path: name, data: data});
-    },
-
-    onArchiveLoaded: function() {
-        Combine.cleanUp();
-        Module._archiveLoaded = true;
-
-        Module.load_done();
-
-        if (Module._waitingForArchive) {
-            Module._preloadAndCallMain();
-        }
-    },
-
-    toggleFullscreen: function() {
-        if (GLFW.isFullscreen) {
-            GLFW.cancelFullScreen();
-        } else {
-            GLFW.requestFullScreen();
-        }
-    },
-
-    preSync: function(done) {
-        // Initial persistent sync before main is called
-        FS.syncfs(true, function(err) {
-            if(err) {
-                Module._syncTries += 1;
-                console.error("FS syncfs error: " + err);
-                if (Module._syncMaxTries > Module._syncTries) {
-                    Module.preSync(done);
-                } else {
-                    Module._syncInitial = true;
-                    done();
-                }
-            } else {
-                Module._syncInitial = true;
-                if (done !== undefined) {
-                    done();
-                }
-            }
-        });
-    },
-
-    preloadAll: function() {
-        if (Module._preLoadDone) {
-            return;
-        }
-        for (var i = 0; i < Module._filesToPreload.length; ++i) {
-            var item = Module._filesToPreload[i];
-            FS.createPreloadedFile("", item.path, item.data, true, true);
-        }
-        Module._preLoadDone = true;
-    },
-
-    // Tries to do a MEM->IDB sync
-    // It will flag that another one is needed if there is already one sync running.
-    persistentSync: function() {
-
-        // Need to wait for the initial sync to finish since it
-        // will call close on all its file streams which will trigger
-        // new persistentSync for each.
-        if (Module._syncInitial) {
-            if (Module._syncInProgress) {
-                Module._syncNeeded = true;
-            } else {
-                Module._startSyncFS();
-            }
-        }
-    },
-
-    preInit: [function() {
-        /* Mount filesystem on preinit */
-        var dir = DMSYS.GetUserPersistentDataRoot();
-        FS.mkdir(dir);
-
-        // If IndexedDB is supported we mount the persistent data root as IDBFS,
-        // then try to do a IDB->MEM sync before we start the engine to get
-        // previously saved data before boot.
-        window.indexedDB = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB;
-        if (Module.persistentStorage && window.indexedDB) {
-            FS.mount(IDBFS, {}, dir);
-
-            // Patch FS.close so it will try to sync MEM->IDB
-            var _close = FS.close; FS.close = function(stream) { var r = _close(stream); Module.persistentSync(); return r; }
-
-            // Sync IDB->MEM before calling main()
-            Module.preSync(function() {
-                Module._preloadAndCallMain();
-            });
-        } else {
-            Module._preloadAndCallMain();
-        }
-    }],
-
-    preRun: [function() {
-        /* If archive is loaded, preload all its files */
-        if(Module._archiveLoaded) {
-            Module.preloadAll();
-        }
-    }],
-
-    _preloadAndCallMain: function() {
-        // If the archive isn't loaded,
-        // we will have to wait with calling main.
-        if (!Module._archiveLoaded) {
-            Module._waitingForArchive = true;
-        } else {
-
-            // Need to set heap size before calling main
-            TOTAL_MEMORY = Module["TOTAL_MEMORY"] || TOTAL_MEMORY;
-
-            Module.preloadAll();
-            Module.load_end();
-            Module.game_start();
-            Module.callMain(Module.arguments);
-        }
-    },
-
-    // Wrap IDBFS syncfs call with logic to avoid multiple syncs
-    // running at the same time.
-    _startSyncFS: function() {
-        Module._syncInProgress = true;
-
-        if (Module._syncMaxTries > Module._syncTries) {
-            FS.syncfs(false, function(err) {
-                Module._syncInProgress = false;
-
-                if (err) {
-                    console.error("Module._startSyncFS error: " + err);
-                    Module._syncTries += 1;
-                }
-
-                if (Module._syncNeeded) {
-                    Module._syncNeeded = false;
-                    Module._startSyncFS();
-                }
-
-            });
-        }
-    },
-};
-
-window.onerror = function(err, url, line, column, errObj) {
-    var errorObject = Module.prepareErrorObject(err, url, line, column, errObj);
-    Module.ccall('JSWriteDump', 'null', ['string'], [JSON.stringify(errorObject.stack)]);
-    Module.setStatus('Exception thrown, see JavaScript console');
-    Module.setStatus = function(text) {
-        if (text) Module.printErr('[post-exception status] ' + text);
-    };
-};

+ 0 - 1
docs/assets/easier/archive/archive_files.json

@@ -1 +0,0 @@
-{"content":[{"name":"game.projectc","size":2310,"pieces":[{"name":"game.projectc0","offset":0}]},{"name":"game.arci","size":3088,"pieces":[{"name":"game.arci0","offset":0}]},{"name":"game.arcd","size":113454,"pieces":[{"name":"game.arcd0","offset":0}]},{"name":"game.dmanifest","size":5772,"pieces":[{"name":"game.dmanifest0","offset":0}]},{"name":"game.public.der","size":162,"pieces":[{"name":"game.public.der0","offset":0}]}]}

BIN
docs/assets/easier/archive/game.arcd0


BIN
docs/assets/easier/archive/game.arci0


BIN
docs/assets/easier/archive/game.dmanifest0


+ 0 - 144
docs/assets/easier/archive/game.projectc0

@@ -1,144 +0,0 @@
-[project]
-title = easier
-version = 1.0
-write_log = 0
-compress_archive = 1
-
-[display]
-width = 640
-height = 512
-high_dpi = 0
-samples = 0
-fullscreen = 0
-update_frequency = 0
-vsync = 1
-display_profiles = /builtins/render/default.display_profilesc
-dynamic_orientation = 0
-
-[physics]
-type = 2D
-gravity_y = -10
-debug = 0
-debug_alpha = 0.9
-world_count = 4
-gravity_x = 0
-gravity_z = 0
-scale = 1
-debug_scale = 30
-max_collisions = 64
-max_contacts = 128
-contact_impulse_limit = 0
-ray_cast_limit_2d = 64
-ray_cast_limit_3d = 128
-trigger_overlap_capacity = 16
-
-[bootstrap]
-main_collection = /main/main.collectionc
-render = /builtins/render/default.renderc
-
-[graphics]
-default_texture_min_filter = linear
-default_texture_mag_filter = linear
-max_draw_calls = 1024
-max_characters = 8192
-max_debug_vertices = 10000
-texture_profiles = /builtins/graphics/default.texture_profiles
-
-[sound]
-gain = 1
-max_sound_data = 128
-max_sound_buffers = 32
-max_sound_sources = 16
-max_sound_instances = 256
-
-[resource]
-http_cache = 0
-max_resources = 1024
-
-[input]
-repeat_delay = 0.5
-repeat_interval = 0.2
-gamepads = /builtins/input/default.gamepadsc
-game_binding = /input/game.input_bindingc
-use_accelerometer = 1
-
-[sprite]
-max_count = 128
-subpixels = 1
-
-[spine]
-max_count = 128
-
-[model]
-max_count = 128
-
-[gui]
-max_count = 64
-max_particlefx_count = 64
-max_particle_count = 1024
-
-[collection]
-max_instances = 1024
-
-[collection_proxy]
-max_count = 8
-
-[collectionfactory]
-max_count = 128
-
-[factory]
-max_count = 128
-
-[ios]
-pre_renderered_icons = 0
-bundle_identifier = example.unnamed
-infoplist = /builtins/manifests/ios/Info.plist
-
-[android]
-version_code = 1
-package = com.example.todo
-manifest = /builtins/manifests/android/AndroidManifest.xml
-iap_provider = GooglePlay
-input_method = KeyEvent
-immersive_mode = 0
-debuggable = 0
-
-[osx]
-infoplist = /builtins/manifests/osx/Info.plist
-bundle_identifier = example.unnamed
-
-[windows]
-
-[html5]
-custom_heap_size = 0
-include_dev_tool = 0
-htmlfile = /builtins/manifests/web/engine_template.html
-archive_location_prefix = archive
-
-[particle_fx]
-max_count = 64
-max_particle_count = 1024
-
-[iap]
-auto_finish_transactions = 1
-
-[network]
-http_timeout = 0
-
-[library]
-
-[script]
-shared_state = 1
-
-[tracking]
-
-[label]
-max_count = 64
-subpixels = 1
-
-[profiler]
-track_cpu = 0
-
-[liveupdate]
-settings = /liveupdate.settings
-

BIN
docs/assets/easier/archive/game.public.der0


BIN
docs/assets/easier/defold_sound.swf


+ 0 - 652
docs/assets/easier/dmloader.js

@@ -1,652 +0,0 @@
-/* ********************************************************************* */
-/* Load and combine data that is split into archives                     */
-/* ********************************************************************* */
-
-var Combine = {
-    _targets: [],
-    _targetIndex: 0,
-    // target: build target
-    //  name: intended filepath of built object
-    //  size: expected size of built object.
-    //  data: combined data
-    //  downloaded: total amount of data downloaded
-    //  pieces: array of name, offset and data objects
-    //  numExpectedFiles: total number of files expected in description
-    //  lastRequestedPiece: index of last data file requested (strictly ascending)
-    //  totalLoadedPieces: counts the number of data files received
-
-    //MAX_CONCURRENT_XHR: 6,    // remove comment if throttling of XHR is desired.
-
-    isCompleted: false,       // status of process
-
-    _onCombineCompleted: [],    // signature: name, data.
-    _onAllTargetsBuilt:[],      // signature: void
-    _onDownloadProgress: [],    // signature: downloaded, total
-
-    _totalDownloadBytes: 0,
-    _archiveLocationFilter: function(path) { return "split" + path; },
-
-    addProgressListener: function(callback) {
-        if (typeof callback !== 'function') {
-            throw "Invalid callback registration";
-        }
-        this._onDownloadProgress.push(callback);
-    },
-
-    addCombineCompletedListener: function(callback) {
-        if (typeof callback !== 'function') {
-            throw "Invalid callback registration";
-        }
-        this._onCombineCompleted.push(callback);
-    },
-
-    addAllTargetsBuiltListener: function(callback) {
-        if (typeof callback !== 'function') {
-            throw "Invalid callback registration";
-        }
-        this._onAllTargetsBuilt.push(callback);
-    },
-
-    // descriptUrl: location of text file describing files to be preloaded
-    process: function(descriptUrl) {
-        var xhr = new XMLHttpRequest();
-        xhr.open('GET', descriptUrl);
-        xhr.responseType = 'text';
-        xhr.onload = function(evt) {
-            Combine.onReceiveDescription(xhr);
-        };
-        xhr.send(null);
-    },
-
-    cleanUp: function() {
-        this._targets =  [];
-        this._targetIndex = 0;
-        this.isCompleted = false;
-        this._onCombineCompleted = [];
-        this._onAllTargetsBuilt = [];
-        this._onDownloadProgress = [];
-
-        this._totalDownloadBytes = 0;
-    },
-
-    onReceiveDescription: function(xhr) {
-        var json = JSON.parse(xhr.responseText);
-        this._targets = json.content;
-        this._totalDownloadBytes = 0;
-
-        var targets = this._targets;
-        for(var i=0; i<targets.length; ++i) {
-            this._totalDownloadBytes += targets[i].size;
-        }
-        this.requestContent();
-    },
-
-    requestContent: function() {
-        var target = this._targets[this._targetIndex];
-        if (1 < target.pieces.length) {
-            target.data = new Uint8Array(target.size);
-        }
-        var limit = target.pieces.length;
-        if (typeof this.MAX_CONCURRENT_XHR !== 'undefined') {
-            limit = Math.min(limit, this.MAX_CONCURRENT_XHR);
-        }
-        for (var i=0; i<limit; ++i) {
-            this.requestPiece(target, i);
-        }
-    },
-
-    requestPiece: function(target, index) {
-        if (index <  target.lastRequestedPiece) {
-            throw "Request out of order";
-        }
-
-        target.lastRequestedPiece = index;
-        target.progress = {};
-
-        var item = target.pieces[index];
-        var xhr = new XMLHttpRequest();
-        xhr.open('GET', this._archiveLocationFilter('/' + item.name), true);
-        xhr.responseType = 'arraybuffer';
-        xhr.onprogress = function(evt) {
-           target.progress[item.name] = {total: 0, downloaded: 0};
-            if (evt.total && evt.lengthComputable) {
-                target.progress[item.name].total = evt.total;
-            }
-            if (evt.loaded && evt.lengthComputable) {
-                target.progress[item.name].downloaded = evt.loaded;
-                Combine.updateProgress(target);
-            }
-        };
-        xhr.onload = function(evt) {
-            item.data = new Uint8Array(xhr.response);
-            item.dataLength = item.data.length;
-            target.progress[item.name].total = item.dataLength;
-            target.progress[item.name].downloaded = item.dataLength;
-            Combine.copyData(target, item);
-            Combine.onPieceLoaded(target, item);
-            Combine.updateProgress(target);
-            item.data = undefined;
-        };
-        xhr.send(null);
-    },
-
-    updateProgress: function(target) {
-        var total_downloaded = 0;
-        for (var p in target.progress) {
-            total_downloaded += target.progress[p].downloaded;
-        }
-        for(i = 0; i<this._onDownloadProgress.length; ++i) {
-            this._onDownloadProgress[i](total_downloaded, this._totalDownloadBytes);
-        }
-    },
-
-    copyData: function(target, item) {
-        if (1 == target.pieces.length) {
-            target.data = item.data;
-        } else {
-            var start = item.offset;
-            var end = start + item.data.length;
-            if (0 > start) {
-                throw "Buffer underflow";
-            }
-            if (end > target.data.length) {
-                throw "Buffer overflow";
-            }
-            target.data.set(item.data, item.offset);
-        }
-    },
-
-    onPieceLoaded: function(target, item) {
-        if (typeof target.totalLoadedPieces === 'undefined') {
-            target.totalLoadedPieces = 0;
-        }
-        ++target.totalLoadedPieces;
-        if (target.totalLoadedPieces == target.pieces.length) {
-            this.finalizeTarget(target);
-            ++this._targetIndex;
-            for (var i=0; i<this._onCombineCompleted.length; ++i) {
-                this._onCombineCompleted[i](target.name, target.data);
-            }
-            if (this._targetIndex < this._targets.length) {
-                this.requestContent();
-            } else {
-                this.isCompleted = true;
-                for (i=0; i<this._onAllTargetsBuilt.length; ++i) {
-                    this._onAllTargetsBuilt[i]();
-                }
-            }
-        } else {
-            var next = target.lastRequestedPiece + 1;
-            if (next < target.pieces.length) {
-                this.requestPiece(target, next);
-            }
-        }
-    },
-
-    finalizeTarget: function(target) {
-        var actualSize = 0;
-        for (var i=0;i<target.pieces.length; ++i) {
-            actualSize += target.pieces[i].dataLength;
-        }
-        if (actualSize != target.size) {
-            throw "Unexpected data size";
-        }
-
-        if (1 < target.pieces.length) {
-            var output = target.data;
-            var pieces = target.pieces;
-            for (i=0; i<pieces.length; ++i) {
-                var item = pieces[i];
-                // Bounds check
-                var start = item.offset;
-                var end = start + item.dataLength;
-                if (0 < i) {
-                    var previous = pieces[i - 1];
-                    if (previous.offset + previous.dataLength > start) {
-                        throw "Segment underflow";
-                    }
-                }
-                if (pieces.length - 2 > i) {
-                    var next = pieces[i + 1];
-                    if (end > next.offset) {
-                        throw "Segment overflow";
-                    }
-                }
-            }
-        }
-    }
-};
-
-/* ********************************************************************* */
-/* Default splash and progress visualisation                             */
-/* ********************************************************************* */
-
-var Progress = {
-    progress_id: "defold-progress",
-    bar_id: "defold-progress-bar",
-
-    addProgress : function (canvas) {
-        /* Insert default progress bar below canvas */
-        canvas.insertAdjacentHTML('afterend', '<div id="' + Progress.progress_id + '" class="canvas-app-progress"><div id="' + Progress.bar_id + '" class="canvas-app-progress-bar" style="width: 0%;">0%</div></div>');
-        Progress.bar = document.getElementById(Progress.bar_id);
-        Progress.progress = document.getElementById(Progress.progress_id);
-    },
-
-    updateProgress: function (percentage, text) {
-        Progress.bar.style.width = percentage + "%";
-
-        text = (typeof text === 'undefined') ? Math.round(percentage) + "%" : text;
-        Progress.bar.innerText = text;
-    },
-
-    removeProgress: function () {
-        if (Progress.progress.parentElement !== null) {
-            Progress.progress.parentElement.removeChild(Progress.progress);
-
-            // Remove any background/splash image that was set in runApp().
-            // Workaround for Safari bug DEF-3061.
-            Module.canvas.style.background = "";
-            Module["on_game_start"]();
-        }
-    }
-};
-
-/* ********************************************************************* */
-/* Default input override                                                */
-/* ********************************************************************* */
-
-var CanvasInput = {
-    arrowKeysHandler : function(e) {
-        switch(e.keyCode) {
-            case 37: case 38: case 39:  case 40: // Arrow keys
-            case 32: e.preventDefault(); e.stopPropagation(); // Space
-            default: break; // do not block other keys
-        }
-    },
-
-    onFocusIn : function(e) {
-        window.addEventListener("keydown", CanvasInput.arrowKeysHandler, false);
-    },
-
-    onFocusOut: function(e) {
-        window.removeEventListener("keydown", CanvasInput.arrowKeysHandler, false);
-    },
-
-    addToCanvas : function(canvas) {
-        canvas.addEventListener("focus", CanvasInput.onFocusIn, false);
-        canvas.addEventListener("blur", CanvasInput.onFocusOut, false);
-        canvas.focus();
-        CanvasInput.onFocusIn();
-    }
-};
-
-/* ********************************************************************* */
-/* Module is Emscripten namespace                                        */
-/* ********************************************************************* */
-
-var Module = {
-    noInitialRun: true,
-
-    _filesToPreload: [],
-    _archiveLoaded: false,
-    _preLoadDone: false,
-    _waitingForArchive: false,
-
-    // Persistent storage
-    persistentStorage: true,
-    _syncInProgress: false,
-    _syncNeeded: false,
-    _syncInitial: false,
-    _syncMaxTries: 3,
-    _syncTries: 0,
-
-    print: function(text) { console.log(text); },
-    printErr: function(text) { console.error(text); },
-
-    setStatus: function(text) { console.log(text); },
-
-    isWASMSupported: (function() {
-        try {
-            if (typeof WebAssembly === "object"
-                && typeof WebAssembly.instantiate === "function") {
-                const module = new WebAssembly.Module(Uint8Array.of(0x0, 0x61, 0x73, 0x6d, 0x01, 0x00, 0x00, 0x00));
-                if (module instanceof WebAssembly.Module)
-                    return new WebAssembly.Instance(module) instanceof WebAssembly.Instance;
-            }
-        } catch (e) {
-        }
-        return false;
-    })(),
-
-    prepareErrorObject: function (err, url, line, column, errObj) {
-        line = typeof line == "undefined" ? 0 : line;
-        column = typeof column == "undefined" ? 0 : column;
-        url = typeof url == "undefined" ? "" : url;
-        var errorLine = url + ":" + line + ":" + column;
-
-        var error = errObj || (typeof window.event != "undefined" ? window.event.error : "" ) || err || "Undefined Error";
-        var message = "";
-        var stack = "";
-        var backtrace = "";
-
-        if (typeof error == "object" && typeof error.stack != "undefined" && typeof error.message != "undefined") {
-            stack = String(error.stack);
-            message = String(error.message);
-        } else {
-            stack = String(error).split("\n");
-            message = stack.shift();
-            stack = stack.join("\n");
-        }
-        stack = stack || errorLine;
-
-        var callLine = /at (\S+:\d*$)/.exec(message);
-        if (callLine) {
-            message = message.replace(/(at \S+:\d*$)/, "");
-            stack = callLine[1] + "\n" + stack;
-        }
-
-        message = message.replace(/(abort\(.+\)) at .+/, "$1");
-        stack = stack.replace(/\?{1}\S+(:\d+:\d+)/g, "$1");
-        stack = stack.replace(/ *at (\S+)$/gm, "@$1");
-        stack = stack.replace(/ *at (\S+)(?: \[as \S+\])? +\((.+)\)/g, "$1@$2");
-        stack = stack.replace(/^((?:Object|Array)\.)/gm, "");
-        stack = stack.split("\n");
-
-        return { stack:stack, message:message };
-    },
-
-    hasWebGLSupport: function() {
-        var webgl_support = false;
-        try {
-            var canvas = document.createElement("canvas");
-            var gl = canvas.getContext("webgl") || canvas.getContext("experimental-webgl");
-            if (gl && gl instanceof WebGLRenderingContext) {
-                webgl_support = true;
-            }
-        } catch (error) {
-            console.log("An error occurred while detecting WebGL support: " + error);
-            webgl_support = false;
-        }
-
-        return webgl_support;
-    },
-
-    handleVisibilityChange: function () {
-        GLFW.onFocusChanged(document[Module.hiddenProperty] ? 0 : 1);
-    },
-
-    getHiddenProperty: function () {
-        if ('hidden' in document) return 'hidden';
-        var prefixes = ['webkit','moz','ms','o'];
-        for (var i = 0; i < prefixes.length; i++){
-            if ((prefixes[i] + 'Hidden') in document)
-                return prefixes[i] + 'Hidden';
-        }
-        return null;
-    },
-
-    setupVisibilityChangeListener: function() {
-        Module.hiddenProperty = Module.getHiddenProperty();
-        if( Module.hiddenProperty ) {
-            var eventName = Module.hiddenProperty.replace(/[H|h]idden/,'') + 'visibilitychange';
-            document.addEventListener(eventName, Module.handleVisibilityChange, false);
-        } else {
-            console.log("No document.hidden property found. The focus events won't be enabled.")
-        }
-    },
-
-    /**
-    * Module.runApp - Starts the application given a canvas element id
-    *
-    * 'extra_params' is an optional object that can have the following fields:
-    *
-    *     'splash_image':
-    *         Path to an image that should be used as a background image for
-    *         the canvas element.
-    *
-    *     'archive_location_filter':
-    *         Filter function that will run for each archive path.
-    *
-    *     'unsupported_webgl_callback':
-    *         Function that is called if WebGL is not supported.
-    *
-    *     'engine_arguments':
-    *         List of arguments (strings) that will be passed to the engine.
-    *
-    *     'persistent_storage':
-    *         Boolean toggling the usage of persistent storage.
-    *
-    *     'custom_heap_size':
-    *         Number of bytes specifying the memory heap size.
-    *
-    *     'disable_context_menu':
-    *         Disables the right-click context menu on the canvas element if true.
-    *
-    **/
-    runApp: function(app_canvas_id, extra_params) {
-        app_canvas_id = (typeof app_canvas_id === 'undefined') ?  'canvas' : app_canvas_id;
-
-        var params = {
-            splash_image: undefined,
-            archive_location_filter: function(path) { return 'split' + path; },
-            unsupported_webgl_callback: undefined,
-            engine_arguments: [],
-            persistent_storage: true,
-            custom_heap_size: undefined,
-            disable_context_menu: true
-        };
-
-        for (var k in extra_params) {
-            if (extra_params.hasOwnProperty(k)) {
-                params[k] = extra_params[k];
-            }
-        }
-
-        Module.canvas = document.getElementById(app_canvas_id);
-        if (typeof params["splash_image"] !== 'undefined') {
-            Module.canvas.style.background = 'no-repeat center url("' + params["splash_image"] + '")';
-        }
-        Module.arguments = params["engine_arguments"];
-        Module.persistentStorage = params["persistent_storage"];
-        Module["TOTAL_MEMORY"] = params["custom_heap_size"];
-        Module["on_game_start"] = params["game_start"];
-
-        if (Module.hasWebGLSupport()) {
-            // Override game keys
-            CanvasInput.addToCanvas(Module.canvas);
-
-            Module.setupVisibilityChangeListener();
-
-            // Add progress visuals
-            Progress.addProgress(Module.canvas);
-
-            // Add context menu hide-handler if requested
-            if (params["disable_context_menu"])
-            {
-                Module.canvas.oncontextmenu = function(e) {
-                    e.preventDefault();
-                };
-            }
-
-            // Load and assemble archive
-            Combine.addCombineCompletedListener(Module.onArchiveFileLoaded);
-            Combine.addAllTargetsBuiltListener(Module.onArchiveLoaded);
-            Combine.addProgressListener(Module.onArchiveLoadProgress);
-            Combine._archiveLocationFilter = params["archive_location_filter"];
-            Combine.process(Combine._archiveLocationFilter('/archive_files.json'));
-        } else {
-            Progress.addProgress(Module.canvas);
-            Progress.updateProgress(100, "Unable to start game, WebGL not supported");
-            Module.setStatus = function(text) {
-                if (text) Module.printErr('[missing WebGL] ' + text);
-            };
-
-            if (typeof params["unsupported_webgl_callback"] === "function") {
-                params["unsupported_webgl_callback"]();
-            }
-        }
-    },
-
-    onArchiveLoadProgress: function(downloaded, total) {
-        Progress.updateProgress(downloaded / total * 100);
-    },
-
-    onArchiveFileLoaded: function(name, data) {
-        Module._filesToPreload.push({path: name, data: data});
-    },
-
-    onArchiveLoaded: function() {
-        Combine.cleanUp();
-        Module._archiveLoaded = true;
-        Progress.updateProgress(100, "Starting...");
-
-        if (Module._waitingForArchive) {
-            Module._preloadAndCallMain();
-        }
-    },
-
-    toggleFullscreen: function() {
-        if (GLFW.isFullscreen) {
-            GLFW.cancelFullScreen();
-        } else {
-            GLFW.requestFullScreen();
-        }
-    },
-
-    preSync: function(done) {
-        // Initial persistent sync before main is called
-        FS.syncfs(true, function(err) {
-            if(err) {
-                Module._syncTries += 1;
-                console.error("FS syncfs error: " + err);
-                if (Module._syncMaxTries > Module._syncTries) {
-                    Module.preSync(done);
-                } else {
-                    Module._syncInitial = true;
-                    done();
-                }
-            } else {
-                Module._syncInitial = true;
-                if (done !== undefined) {
-                    done();
-                }
-            }
-        });
-    },
-
-    preloadAll: function() {
-        if (Module._preLoadDone) {
-            return;
-        }
-        Module._preLoadDone = true;
-        for (var i = 0; i < Module._filesToPreload.length; ++i) {
-            var item = Module._filesToPreload[i];
-            FS.createPreloadedFile("", item.path, item.data, true, true);
-        }
-    },
-
-    // Tries to do a MEM->IDB sync
-    // It will flag that another one is needed if there is already one sync running.
-    persistentSync: function() {
-
-        // Need to wait for the initial sync to finish since it
-        // will call close on all its file streams which will trigger
-        // new persistentSync for each.
-        if (Module._syncInitial) {
-            if (Module._syncInProgress) {
-                Module._syncNeeded = true;
-            } else {
-                Module._startSyncFS();
-            }
-        }
-    },
-
-    preInit: [function() {
-        /* Mount filesystem on preinit */
-        var dir = DMSYS.GetUserPersistentDataRoot();
-        FS.mkdir(dir);
-
-        // If IndexedDB is supported we mount the persistent data root as IDBFS,
-        // then try to do a IDB->MEM sync before we start the engine to get
-        // previously saved data before boot.
-        window.indexedDB = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB;
-        if (Module.persistentStorage && window.indexedDB) {
-            FS.mount(IDBFS, {}, dir);
-
-            // Patch FS.close so it will try to sync MEM->IDB
-            var _close = FS.close; FS.close = function(stream) { var r = _close(stream); Module.persistentSync(); return r; }
-
-            // Sync IDB->MEM before calling main()
-            Module.preSync(function() {
-                Module._preloadAndCallMain();
-            });
-        } else {
-            Module._preloadAndCallMain();
-        }
-    }],
-
-    preRun: [function() {
-        /* If archive is loaded, preload all its files */
-        if(Module._archiveLoaded) {
-            Module.preloadAll();
-        }
-    }],
-
-    postRun: [function() {
-        if(Module._archiveLoaded) {
-            Progress.removeProgress();
-        }
-    }],
-
-    _preloadAndCallMain: function() {
-        // If the archive isn't loaded,
-        // we will have to wait with calling main.
-        if (!Module._archiveLoaded) {
-            Module._waitingForArchive = true;
-        } else {
-
-            // Need to set heap size before calling main
-            TOTAL_MEMORY = Module["TOTAL_MEMORY"] || TOTAL_MEMORY;
-
-            Module.preloadAll();
-            Progress.removeProgress();
-            if (Module.callMain === undefined) {
-                Module.noInitialRun = false;
-            } else {
-                Module.callMain(Module.arguments);
-            }
-        }
-    },
-
-    // Wrap IDBFS syncfs call with logic to avoid multiple syncs
-    // running at the same time.
-    _startSyncFS: function() {
-        Module._syncInProgress = true;
-
-        if (Module._syncMaxTries > Module._syncTries) {
-            FS.syncfs(false, function(err) {
-                Module._syncInProgress = false;
-
-                if (err) {
-                    console.error("Module._startSyncFS error: " + err);
-                    Module._syncTries += 1;
-                }
-
-                if (Module._syncNeeded) {
-                    Module._syncNeeded = false;
-                    Module._startSyncFS();
-                }
-
-            });
-        }
-    },
-};
-
-window.onerror = function(err, url, line, column, errObj) {
-    var errorObject = Module.prepareErrorObject(err, url, line, column, errObj);
-    Module.ccall('JSWriteDump', 'null', ['string'], [JSON.stringify(errorObject.stack)]);
-    Module.setStatus('Exception thrown, see JavaScript console');
-    Module.setStatus = function(text) {
-        if (text) Module.printErr('[post-exception status] ' + text);
-    };
-};

BIN
docs/assets/easier/easier.wasm


Fișier diff suprimat deoarece este prea mare
+ 0 - 0
docs/assets/easier/easier_asmjs.js


Fișier diff suprimat deoarece este prea mare
+ 0 - 0
docs/assets/easier/easier_wasm.js


BIN
docs/assets/easier/preview.jpg


BIN
docs/assets/examples-project.zip


+ 0 - 1
docs/assets/examples/archive_files.json

@@ -1 +0,0 @@
-{"content":[{"name":"game.projectc","size":399,"pieces":[{"name":"game.projectc0","offset":0}]},{"name":"game.darc","size":2382616,"pieces":[{"name":"game.darc0","offset":0},{"name":"game.darc1","offset":2097152}]}]}

BIN
docs/assets/examples/game.darc0


BIN
docs/assets/examples/game.darc1


+ 0 - 31
docs/assets/examples/game.projectc0

@@ -1,31 +0,0 @@
-[project]
-title = Defold examples
-version = 0.1
-
-[bootstrap]
-main_collection = /main/main.collectionc
-render = /render/example.renderc
-
-[input]
-game_binding = /input/game.input_bindingc
-
-[display]
-width = 1024
-height = 768
-
-[physics]
-scale = 0.02
-debug = 0
-gravity_y = -100
-max_collisions = 1024
-max_contacts = 8192
-
-[script]
-shared_state = 1
-
-[factory]
-max_count = 1024
-
-[sprite]
-max_count = 1024
-

BIN
docs/assets/magic-link-assets.zip


+ 0 - 1
docs/assets/magic-link/archive_files.json

@@ -1 +0,0 @@
-{"content":[{"name":"game.projectc","size":455,"pieces":[{"name":"game.projectc0","offset":0}]},{"name":"game.arci","size":3888,"pieces":[{"name":"game.arci0","offset":0}]},{"name":"game.arcd","size":3079673,"pieces":[{"name":"game.arcd0","offset":0},{"name":"game.arcd1","offset":2097152}]},{"name":"game.dmanifest","size":9288,"pieces":[{"name":"game.dmanifest0","offset":0}]},{"name":"game.public.der","size":162,"pieces":[{"name":"game.public.der0","offset":0}]}]}

BIN
docs/assets/magic-link/game.arcd0


BIN
docs/assets/magic-link/game.arcd1


BIN
docs/assets/magic-link/game.arci0


BIN
docs/assets/magic-link/game.dmanifest0


+ 0 - 36
docs/assets/magic-link/game.projectc0

@@ -1,36 +0,0 @@
-[project]
-title = Magic Link
-
-[bootstrap]
-main_collection = /main/main.collectionc
-
-[input]
-game_binding = /input/game.input_bindingc
-
-[display]
-width = 640
-height = 960
-
-[physics]
-scale = 0.02
-debug = 0
-
-[graphics]
-default_texture_min_filter = linear
-default_texture_mag_filter = linear
-
-[script]
-shared_state = 1
-
-[ios]
-launch_image_640x1136 = 
-
-[sprite]
-max_count = 512
-
-[android]
-package = com.example.linker
-
-[library]
-include_dirs = def-magic-link
-

BIN
docs/assets/magic-link/game.public.der0


BIN
docs/assets/magic-link/preview.jpg


+ 0 - 1
docs/assets/platformer/archive_files.json

@@ -1 +0,0 @@
-{"content":[{"name":"game.projectc","size":317,"pieces":[{"name":"game.projectc0","offset":0}]},{"name":"game.arci","size":5248,"pieces":[{"name":"game.arci0","offset":0}]},{"name":"game.arcd","size":14497420,"pieces":[{"name":"game.arcd0","offset":0},{"name":"game.arcd1","offset":2097152},{"name":"game.arcd2","offset":4194304},{"name":"game.arcd3","offset":6291456},{"name":"game.arcd4","offset":8388608},{"name":"game.arcd5","offset":10485760},{"name":"game.arcd6","offset":12582912}]},{"name":"game.dmanifest","size":9345,"pieces":[{"name":"game.dmanifest0","offset":0}]},{"name":"game.public.der","size":162,"pieces":[{"name":"game.public.der0","offset":0}]}]}

BIN
docs/assets/platformer/game.arcd0


BIN
docs/assets/platformer/game.arcd1


BIN
docs/assets/platformer/game.arcd2


BIN
docs/assets/platformer/game.arcd3


BIN
docs/assets/platformer/game.arcd4


BIN
docs/assets/platformer/game.arcd5


BIN
docs/assets/platformer/game.arcd6


BIN
docs/assets/platformer/game.arci0


BIN
docs/assets/platformer/game.dmanifest0


+ 0 - 24
docs/assets/platformer/game.projectc0

@@ -1,24 +0,0 @@
-[project]
-title = platformer
-
-[bootstrap]
-main_collection = /main/main.collectionc
-
-[input]
-game_binding = /input/game.input_bindingc
-
-[display]
-width = 1024
-height = 768
-
-[physics]
-scale = 0.02
-debug = 0
-
-[graphics]
-default_texture_min_filter = linear
-default_texture_mag_filter = linear
-
-[script]
-shared_state = 1
-

BIN
docs/assets/platformer/game.public.der0


BIN
docs/assets/platformer/preview.jpg


BIN
docs/assets/quad.dae.zip


BIN
docs/assets/runner-assets.zip


+ 0 - 1
docs/assets/runner/archive_files.json

@@ -1 +0,0 @@
-{"content":[{"name":"game.projectc","size":378,"pieces":[{"name":"game.projectc0","offset":0}]},{"name":"game.arci","size":6448,"pieces":[{"name":"game.arci0","offset":0}]},{"name":"game.arcd","size":2144408,"pieces":[{"name":"game.arcd0","offset":0},{"name":"game.arcd1","offset":2097152}]},{"name":"game.dmanifest","size":14545,"pieces":[{"name":"game.dmanifest0","offset":0}]},{"name":"game.public.der","size":162,"pieces":[{"name":"game.public.der0","offset":0}]}]}

BIN
docs/assets/runner/game.arcd0


BIN
docs/assets/runner/game.arcd1


BIN
docs/assets/runner/game.arci0


BIN
docs/assets/runner/game.dmanifest0


+ 0 - 28
docs/assets/runner/game.projectc0

@@ -1,28 +0,0 @@
-[project]
-title = platformer
-
-[bootstrap]
-main_collection = /level/level1.collectionc
-
-[input]
-game_binding = /input/game.input_bindingc
-
-[display]
-width = 1280
-height = 720
-
-[physics]
-scale = 0.02
-debug = 0
-
-[graphics]
-default_texture_min_filter = linear
-default_texture_mag_filter = linear
-
-[script]
-shared_state = 1
-
-[particle_fx]
-max_count = 1024
-max_particle_count = 2048
-

BIN
docs/assets/runner/game.public.der0


BIN
docs/assets/runner/preview.jpg


+ 0 - 1
docs/assets/shadertoy/archive_files.json

@@ -1 +0,0 @@
-{"content":[{"name":"game.projectc","size":236,"pieces":[{"name":"game.projectc0","offset":0}]},{"name":"game.arci","size":848,"pieces":[{"name":"game.arci0","offset":0}]},{"name":"game.arcd","size":2296,"pieces":[{"name":"game.arcd0","offset":0}]},{"name":"game.dmanifest","size":1438,"pieces":[{"name":"game.dmanifest0","offset":0}]},{"name":"game.public.der","size":162,"pieces":[{"name":"game.public.der0","offset":0}]}]}

BIN
docs/assets/shadertoy/game.arcd0


BIN
docs/assets/shadertoy/game.arci0


BIN
docs/assets/shadertoy/game.dmanifest0


+ 0 - 20
docs/assets/shadertoy/game.projectc0

@@ -1,20 +0,0 @@
-[project]
-title = Shadertoy
-version = 0.1
-
-[bootstrap]
-main_collection = /main/main.collectionc
-
-[input]
-game_binding = /input/game.input_bindingc
-
-[display]
-width = 1280
-height = 720
-
-[physics]
-scale = 0.02
-
-[script]
-shared_state = 1
-

BIN
docs/assets/shadertoy/game.public.der0


BIN
docs/assets/shadertoy/preview.jpg


+ 0 - 1
docs/assets/side-scroller/archive_files.json

@@ -1 +0,0 @@
-{"content":[{"name":"game.projectc","size":226,"pieces":[{"name":"game.projectc0","offset":0}]},{"name":"game.arci","size":3168,"pieces":[{"name":"game.arci0","offset":0}]},{"name":"game.arcd","size":1519171,"pieces":[{"name":"game.arcd0","offset":0}]},{"name":"game.dmanifest","size":5779,"pieces":[{"name":"game.dmanifest0","offset":0}]},{"name":"game.public.der","size":162,"pieces":[{"name":"game.public.der0","offset":0}]}]}

BIN
docs/assets/side-scroller/game.arcd0


BIN
docs/assets/side-scroller/game.arci0


BIN
docs/assets/side-scroller/game.dmanifest0


+ 0 - 19
docs/assets/side-scroller/game.projectc0

@@ -1,19 +0,0 @@
-[project]
-title = Side-scroller
-
-[bootstrap]
-main_collection = /main/main.collectionc
-
-[input]
-game_binding = /input/game.input_bindingc
-
-[display]
-width = 1280
-height = 720
-
-[physics]
-scale = 0.02
-
-[script]
-shared_state = 1
-

BIN
docs/assets/side-scroller/game.public.der0


BIN
docs/assets/side-scroller/preview.jpg


+ 0 - 1
docs/assets/snake/archive_files.json

@@ -1 +0,0 @@
-{"content":[{"name":"game.projectc","size":231,"pieces":[{"name":"game.projectc0","offset":0}]},{"name":"game.arci","size":1888,"pieces":[{"name":"game.arci0","offset":0}]},{"name":"game.arcd","size":17964,"pieces":[{"name":"game.arcd0","offset":0}]},{"name":"game.dmanifest","size":3157,"pieces":[{"name":"game.dmanifest0","offset":0}]},{"name":"game.public.der","size":162,"pieces":[{"name":"game.public.der0","offset":0}]}]}

BIN
docs/assets/snake/game.arcd0


BIN
docs/assets/snake/game.arci0


BIN
docs/assets/snake/game.dmanifest0


+ 0 - 20
docs/assets/snake/game.projectc0

@@ -1,20 +0,0 @@
-[project]
-title = Snake
-version = 0.1
-
-[bootstrap]
-main_collection = /main/main.collectionc
-
-[input]
-game_binding = /input/game.input_bindingc
-
-[display]
-width = 768
-height = 768
-
-[physics]
-scale = 0.02
-
-[script]
-shared_state = 1
-

BIN
docs/assets/snake/game.public.der0


BIN
docs/assets/snake/preview.jpg


BIN
docs/assets/war-battles-assets.zip


+ 0 - 1
docs/assets/war-battles/archive_files.json

@@ -1 +0,0 @@
-{"content":[{"name":"game.projectc","size":236,"pieces":[{"name":"game.projectc0","offset":0}]},{"name":"game.arci","size":1888,"pieces":[{"name":"game.arci0","offset":0}]},{"name":"game.arcd","size":143174,"pieces":[{"name":"game.arcd0","offset":0}]},{"name":"game.dmanifest","size":3184,"pieces":[{"name":"game.dmanifest0","offset":0}]},{"name":"game.public.der","size":162,"pieces":[{"name":"game.public.der0","offset":0}]}]}

BIN
docs/assets/war-battles/game.arcd0


BIN
docs/assets/war-battles/game.arci0


BIN
docs/assets/war-battles/game.dmanifest0


+ 0 - 20
docs/assets/war-battles/game.projectc0

@@ -1,20 +0,0 @@
-[project]
-title = My project
-version = 0.1
-
-[bootstrap]
-main_collection = /main/main.collectionc
-
-[input]
-game_binding = /input/game.input_bindingc
-
-[display]
-width = 720
-height = 720
-
-[physics]
-scale = 0.02
-
-[script]
-shared_state = 1
-

BIN
docs/assets/war-battles/game.public.der0


BIN
docs/assets/war-battles/preview.jpg


Unele fișiere nu au fost afișate deoarece prea multe fișiere au fost modificate în acest diff