var gdjs;(function(i){const h=new i.Logger("RuntimeScene"),d=new i.Logger("RuntimeScene (setup warnings)");class c extends i.RuntimeInstanceContainer{constructor(t){super();this._eventsFunction=null;this._lastId=0;this._name="";this._gameStopRequested=!1;this._requestedScene="";this._asyncTasksManager=new i.AsyncTasksManager;this._isLoaded=!1;this._isJustResumed=!1;this._backgroundColor=0;this._clearCanvas=!0;this._profiler=null;this._onProfilerStopped=null;this.networkId=null;this._runtimeGame=t,this._variables=new i.VariablesContainer,this._variablesByExtensionName=new Map,this._timeManager=new i.TimeManager,this._onceTriggers=new i.OnceTriggers,this._requestedChange=l.CONTINUE,this._cachedGameResolutionWidth=t?t.getGameResolutionWidth():0,this._cachedGameResolutionHeight=t?t.getGameResolutionHeight():0,this._renderer=new i.RuntimeSceneRenderer(this,t?t.getRenderer():null),this._debuggerRenderer=new i.DebuggerRenderer(this),this.onGameResolutionResized()}addLayer(t){const e=new i.Layer(t,this);this._layers.put(t.name,e),this._orderedLayers.push(e)}onGameResolutionResized(){const t=this.getViewportOriginX(),e=this.getViewportOriginY();this._cachedGameResolutionWidth=this._runtimeGame?this._runtimeGame.getGameResolutionWidth():0,this._cachedGameResolutionHeight=this._runtimeGame?this._runtimeGame.getGameResolutionHeight():0;for(const a in this._layers.items)this._layers.items.hasOwnProperty(a)&&this._layers.items[a].onGameResolutionResized(t,e);this._renderer.onGameResolutionResized()}loadFromScene(t){if(!t){h.error("loadFromScene was called without a scene");return}const{sceneData:e,usedExtensionsWithVariablesData:a}=t;this._isLoaded&&this.unloadScene(),this._runtimeGame&&this._runtimeGame.getRenderer().setWindowTitle(e.title),this._name=e.name,this.setBackgroundColor(e.r,e.v,e.b);for(let r=0,s=e.layers.length;rs[2]||o.min[1]>s[3]||o.max[0]{const o=r.getNetworkSyncData(t);o&&(n[s]=o)}),e!==void 0&&e!==1&&(!this.networkId||a.length===0&&!Object.keys(n).length)?null:{var:a,extVar:n,id:this.getOrCreateNetworkId()}}updateFromNetworkSyncData(t){if(t.var&&this._variables.updateFromNetworkSyncData(t.var),t.extVar)for(const e in t.extVar){if(!t.extVar.hasOwnProperty(e))continue;const a=t.extVar[e],n=this._variablesByExtensionName.get(e);n&&n.updateFromNetworkSyncData(a)}}getOrCreateNetworkId(){if(!this.networkId){const t=i.makeUuid().substring(0,8);this.networkId=t}return this.networkId}}i.RuntimeScene=c;let l;(function(s){s[s.CONTINUE=0]="CONTINUE",s[s.PUSH_SCENE=1]="PUSH_SCENE",s[s.POP_SCENE=2]="POP_SCENE",s[s.REPLACE_SCENE=3]="REPLACE_SCENE",s[s.CLEAR_SCENES=4]="CLEAR_SCENES",s[s.STOP_GAME=5]="STOP_GAME"})(l=i.SceneChangeRequest||(i.SceneChangeRequest={}))})(gdjs||(gdjs={})); //# sourceMappingURL=runtimescene.js.map