var gdjs;(function(o){const u=class{constructor(r){this._variablesArray=[];this._variables=new Hashtable,r!==void 0&&this.initFrom(r)}initFrom(r,e){e===void 0&&(e=!1),e||(u._deletedVars=u._deletedVars||[],this._variables.keys(u._deletedVars));const a=this;let i=0;for(let t=0;t=this._variablesArray.length){let e=new o.Variable;return this._variables.put("",e),e}else{let e=this._variablesArray[r];return e.isUndefinedInContainer()&&e.reinitialize(),e}}has(r){const e=this._variables.get(r);return!!e&&!e.isUndefinedInContainer()}hasVariable(r){const e=this._variablesArray.find(a=>a===r);return!!e&&!e.isUndefinedInContainer()}getVariableNameInContainerByLoopingThroughAllVariables(r){const e=this._variables.items;for(const a in e)if(e.hasOwnProperty(a)&&e[a]===r)return a;return null}getNetworkSyncData(r){const e=r.playerNumber,a=r.isHost,i=[],t=[];return this._variables.keys(t),t.forEach(n=>{const l=this._variables.get(n),s=l.getPlayerOwnership();if(l.isUndefinedInContainer()||s===null||e!==void 0&&s===0&&!a||s!==0&&e!==s)return;const c=l.getType(),b=c==="structure"||c==="array"?"":l.getValue();i.push({name:n,value:b,type:c,children:this.getStructureNetworkSyncData(l),owner:s})}),i}getStructureNetworkSyncData(r){if(r.getType()==="array"){const e=[];return r.getAllChildrenArray().forEach(a=>{const i=a.getType(),t=i==="structure"||i==="array"?"":a.getValue(),n=a.getPlayerOwnership();a.isUndefinedInContainer()||n===null||e.push({name:"",value:t,type:i,children:this.getStructureNetworkSyncData(a),owner:n})}),e}if(r.getType()==="structure"){const e=r.getAllChildren();if(!e)return;const a=[];return Object.entries(e).forEach(([i,t])=>{const n=t.getType(),l=n==="structure"||n==="array"?"":t.getValue(),s=t.getPlayerOwnership();t.isUndefinedInContainer()||s===null||a.push({name:i,value:l,type:n,children:this.getStructureNetworkSyncData(t),owner:s})}),a}}updateFromNetworkSyncData(r){const e=this;for(let a=0;athis._getVariableDataFromNetworkSyncData(e)):void 0}}};let d=u;d._deletedVars=[],d.badVariablesContainer={_variables:new Hashtable,_variablesArray:[],has:function(){return!1},getFromIndex:function(){return u.badVariable},get:function(){return u.badVariable},remove:function(){},add:function(){},_declare:function(){},initFrom:function(){},getNetworkSyncData:function(){return[]},updateFromNetworkSyncData:function(){},getStructureNetworkSyncData:function(){},_getVariableDataFromNetworkSyncData:function(){return{}},hasVariable:function(){return!1},getVariableNameInContainerByLoopingThroughAllVariables:function(){return""},rebuildIndexFrom:function(){}},d.badVariable={_type:"number",_bool:!1,_children:{},_childrenArray:[],_str:"",_undefinedInContainer:!0,_value:0,_playerNumber:0,fromJSON:()=>o.VariablesContainer.badVariable,toJSObject:()=>0,fromJSObject:()=>o.VariablesContainer.badVariable,reinitialize:()=>{},addChild:()=>o.VariablesContainer.badVariable,castTo:()=>{},clearChildren:()=>{},clone:()=>o.VariablesContainer.badVariable,getChildrenCount:()=>0,replaceChildren:()=>{},replaceChildrenArray:()=>{},getType:function(){return"number"},isPrimitive:function(){return!0},setValue:()=>{},toggle:()=>{},getValue:()=>0,getChild:()=>o.VariablesContainer.badVariable,getChildAt:()=>o.VariablesContainer.badVariable,getChildNamed:()=>o.VariablesContainer.badVariable,hasChild:function(){return!1},isStructure:function(){return!1},isNumber:function(){return!0},removeChild:function(){},setNumber:function(){},setString:function(){},setBoolean:function(){},getAsString:function(){return"0"},getAsNumber:function(){return 0},getAsNumberOrString:function(){return 0},getAsBoolean:function(){return!1},getAllChildren:function(){return{}},getAllChildrenArray:function(){return[]},pushVariableCopy:()=>{},_pushVariable:()=>{},pushValue:()=>{},removeAtIndex:function(){},add:function(){},sub:function(){},mul:function(){},div:function(){},concatenate:function(){},concatenateString:function(){},setUndefinedInContainer:function(){},isUndefinedInContainer:function(){return!0},getPlayerOwnership:function(){return 0},setPlayerOwnership:function(){},disableSynchronization:function(){}},o.VariablesContainer=d})(gdjs||(gdjs={})); //# sourceMappingURL=variablescontainer.js.map