2016-02-07 19:36:12 +00:00
var Module ;
if ( typeof Module === 'undefined' ) Module = eval ( '(function() { try { return Module || {} } catch(e) { return {} } })()' ) ;
if ( ! Module . expectedDataFileDownloads ) {
Module . expectedDataFileDownloads = 0 ;
Module . finishedDataFileDownloads = 0 ;
}
Module . expectedDataFileDownloads ++ ;
( function ( ) {
var loadPackage = function ( metadata ) {
var PACKAGE _PATH ;
if ( typeof window === 'object' ) {
PACKAGE _PATH = window [ 'encodeURIComponent' ] ( window . location . pathname . toString ( ) . substring ( 0 , window . location . pathname . toString ( ) . lastIndexOf ( '/' ) ) + '/' ) ;
} else if ( typeof location !== 'undefined' ) {
// worker
PACKAGE _PATH = encodeURIComponent ( location . pathname . toString ( ) . substring ( 0 , location . pathname . toString ( ) . lastIndexOf ( '/' ) ) + '/' ) ;
} else {
throw 'using preloaded data can only be done on a web page or in a web worker' ;
}
var PACKAGE _NAME = 'game.data' ;
var REMOTE _PACKAGE _BASE = 'game.data' ;
if ( typeof Module [ 'locateFilePackage' ] === 'function' && ! Module [ 'locateFile' ] ) {
Module [ 'locateFile' ] = Module [ 'locateFilePackage' ] ;
Module . printErr ( 'warning: you defined Module.locateFilePackage, that has been renamed to Module.locateFile (using your locateFilePackage for now)' ) ;
}
var REMOTE _PACKAGE _NAME = typeof Module [ 'locateFile' ] === 'function' ?
Module [ 'locateFile' ] ( REMOTE _PACKAGE _BASE ) :
( ( Module [ 'filePackagePrefixURL' ] || '' ) + REMOTE _PACKAGE _BASE ) ;
var REMOTE _PACKAGE _SIZE = metadata . remote _package _size ;
var PACKAGE _UUID = metadata . package _uuid ;
function fetchRemotePackage ( packageName , packageSize , callback , errback ) {
var xhr = new XMLHttpRequest ( ) ;
xhr . open ( 'GET' , packageName , true ) ;
xhr . responseType = 'arraybuffer' ;
xhr . onprogress = function ( event ) {
var url = packageName ;
var size = packageSize ;
if ( event . total ) size = event . total ;
if ( event . loaded ) {
if ( ! xhr . addedTotal ) {
xhr . addedTotal = true ;
if ( ! Module . dataFileDownloads ) Module . dataFileDownloads = { } ;
Module . dataFileDownloads [ url ] = {
loaded : event . loaded ,
total : size
} ;
} else {
Module . dataFileDownloads [ url ] . loaded = event . loaded ;
}
var total = 0 ;
var loaded = 0 ;
var num = 0 ;
for ( var download in Module . dataFileDownloads ) {
var data = Module . dataFileDownloads [ download ] ;
total += data . total ;
loaded += data . loaded ;
num ++ ;
}
total = Math . ceil ( total * Module . expectedDataFileDownloads / num ) ;
if ( Module [ 'setStatus' ] ) Module [ 'setStatus' ] ( 'Downloading data... (' + loaded + '/' + total + ')' ) ;
} else if ( ! Module . dataFileDownloads ) {
if ( Module [ 'setStatus' ] ) Module [ 'setStatus' ] ( 'Downloading data...' ) ;
}
} ;
xhr . onload = function ( event ) {
var packageData = xhr . response ;
callback ( packageData ) ;
} ;
xhr . send ( null ) ;
} ;
function handleError ( error ) {
console . error ( 'package error:' , error ) ;
} ;
var fetched = null , fetchedCallback = null ;
fetchRemotePackage ( REMOTE _PACKAGE _NAME , REMOTE _PACKAGE _SIZE , function ( data ) {
if ( fetchedCallback ) {
fetchedCallback ( data ) ;
fetchedCallback = null ;
} else {
fetched = data ;
}
} , handleError ) ;
function runWithFS ( ) {
function assert ( check , msg ) {
if ( ! check ) throw msg + new Error ( ) . stack ;
}
2016-03-14 10:02:09 +00:00
Module [ 'FS_createPath' ] ( '/' , 'Graphoon' , true , true ) ;
2016-02-07 19:36:12 +00:00
function DataRequest ( start , end , crunched , audio ) {
this . start = start ;
this . end = end ;
this . crunched = crunched ;
this . audio = audio ;
}
DataRequest . prototype = {
requests : { } ,
open : function ( mode , name ) {
this . name = name ;
this . requests [ name ] = this ;
Module [ 'addRunDependency' ] ( 'fp ' + this . name ) ;
} ,
send : function ( ) { } ,
onload : function ( ) {
var byteArray = this . byteArray . subarray ( this . start , this . end ) ;
this . finish ( byteArray ) ;
} ,
finish : function ( byteArray ) {
var that = this ;
Module [ 'FS_createDataFile' ] ( this . name , null , byteArray , true , true , true ) ; // canOwn this data in the filesystem, it is a slide into the heap that will never change
Module [ 'removeRunDependency' ] ( 'fp ' + that . name ) ;
this . requests [ this . name ] = null ;
} ,
} ;
var files = metadata . files ;
for ( i = 0 ; i < files . length ; ++ i ) {
new DataRequest ( files [ i ] . start , files [ i ] . end , files [ i ] . crunched , files [ i ] . audio ) . open ( 'GET' , files [ i ] . filename ) ;
}
function processPackageData ( arrayBuffer ) {
Module . finishedDataFileDownloads ++ ;
assert ( arrayBuffer , 'Loading data file failed.' ) ;
assert ( arrayBuffer instanceof ArrayBuffer , 'bad input to processPackageData' ) ;
var byteArray = new Uint8Array ( arrayBuffer ) ;
var curr ;
// copy the entire loaded file into a spot in the heap. Files will refer to slices in that. They cannot be freed though
// (we may be allocating before malloc is ready, during startup).
if ( Module [ 'SPLIT_MEMORY' ] ) Module . printErr ( 'warning: you should run the file packager with --no-heap-copy when SPLIT_MEMORY is used, otherwise copying into the heap may fail due to the splitting' ) ;
var ptr = Module [ 'getMemory' ] ( byteArray . length ) ;
Module [ 'HEAPU8' ] . set ( byteArray , ptr ) ;
DataRequest . prototype . byteArray = Module [ 'HEAPU8' ] . subarray ( ptr , ptr + byteArray . length ) ;
var files = metadata . files ;
for ( i = 0 ; i < files . length ; ++ i ) {
DataRequest . prototype . requests [ files [ i ] . filename ] . onload ( ) ;
}
Module [ 'removeRunDependency' ] ( 'datafile_game.data' ) ;
} ;
Module [ 'addRunDependency' ] ( 'datafile_game.data' ) ;
if ( ! Module . preloadResults ) Module . preloadResults = { } ;
Module . preloadResults [ PACKAGE _NAME ] = { fromCache : false } ;
if ( fetched ) {
processPackageData ( fetched ) ;
fetched = null ;
} else {
fetchedCallback = processPackageData ;
}
}
if ( Module [ 'calledRun' ] ) {
runWithFS ( ) ;
} else {
if ( ! Module [ 'preRun' ] ) Module [ 'preRun' ] = [ ] ;
Module [ "preRun" ] . push ( runWithFS ) ; // FS is not initialized yet, wait for it
}
}
2016-03-14 10:02:09 +00:00
loadPackage ( { "files" : [ { "audio" : 0 , "start" : 0 , "crunched" : 0 , "end" : 3510 , "filename" : "/Camera.lua" } , { "audio" : 0 , "start" : 3510 , "crunched" : 0 , "end" : 3714 , "filename" : "/CHANGELOG.md" } , { "audio" : 0 , "start" : 3714 , "crunched" : 0 , "end" : 7051 , "filename" : "/conf.lua" } , { "audio" : 0 , "start" : 7051 , "crunched" : 0 , "end" : 25092 , "filename" : "/file.png" } , { "audio" : 0 , "start" : 25092 , "crunched" : 0 , "end" : 25128 , "filename" : "/Graphoon.lua" } , { "audio" : 0 , "start" : 25128 , "crunched" : 0 , "end" : 26193 , "filename" : "/LICENSE.md" } , { "audio" : 0 , "start" : 26193 , "crunched" : 0 , "end" : 33917 , "filename" : "/main.lua" } , { "audio" : 0 , "start" : 33917 , "crunched" : 0 , "end" : 37023 , "filename" : "/README.md" } , { "audio" : 0 , "start" : 37023 , "crunched" : 0 , "end" : 37255 , "filename" : "/Graphoon/Edge.lua" } , { "audio" : 0 , "start" : 37255 , "crunched" : 0 , "end" : 45348 , "filename" : "/Graphoon/Graph.lua" } , { "audio" : 0 , "start" : 45348 , "crunched" : 0 , "end" : 46874 , "filename" : "/Graphoon/init.lua" } , { "audio" : 0 , "start" : 46874 , "crunched" : 0 , "end" : 50783 , "filename" : "/Graphoon/Node.lua" } ] , "remote_package_size" : 50783 , "package_uuid" : "0c1ad511-6a1f-4bff-a08e-9d5e15e5131d" } ) ;
2016-02-07 19:36:12 +00:00
} ) ( ) ;