Replace invalid ddeleteOriginalAssets with deleteOriginalAssets: false so vite-plugin-compression2 keeps uncompressed JS/CSS alongside .gz files. Without this, index.html referenced missing chunks and the scene failed to load. Rebuild MenuScene and SampleScene production bundles. Made-with: Cursor
1 line
56 KiB
JavaScript
1 line
56 KiB
JavaScript
import{Ar as e,Bt as t,Qt as n,Xt as r,Zt as i,d as a,fn as o,kr as s,qt as c,tt as l,vn as u,wn as d,yr as f}from"./three@0.169.19.js";import{$a as p,Jr as m,Ka as h,Ua as g,Xi as _,Zn as v,_a as ee,ba as te,co as ne,ct as re,dn as y,ot as b,pa as x,ra as S,un as C,va as ie}from"./needle-engine-ui.B3WhUziG.js";import{n as ae}from"./gltf-progressive.U_EoiMHF.js";import{yt as oe}from"./needle-engine-webxr.XIy9opUR.js";import{a as se,c as ce,i as le,n as ue,o as de,r as w,s as fe,t as pe}from"./three-quarks.DALdLWPD.js";var me=Math.sqrt(3),he=Math.sqrt(5);.5*(me-1),(3-me)/6;var ge=(he-1)/4,T=(5-he)/20,_e=e=>Math.floor(e)|0,ve=new Float64Array([0,1,1,1,0,1,1,-1,0,1,-1,1,0,1,-1,-1,0,-1,1,1,0,-1,1,-1,0,-1,-1,1,0,-1,-1,-1,1,0,1,1,1,0,1,-1,1,0,-1,1,1,0,-1,-1,-1,0,1,1,-1,0,1,-1,-1,0,-1,1,-1,0,-1,-1,1,1,0,1,1,1,0,-1,1,-1,0,1,1,-1,0,-1,-1,1,0,1,-1,1,0,-1,-1,-1,0,1,-1,-1,0,-1,1,1,1,0,1,1,-1,0,1,-1,1,0,1,-1,-1,0,-1,1,1,0,-1,1,-1,0,-1,-1,1,0,-1,-1,-1,0]);function ye(e=Math.random){let t=be(e),n=new Float64Array(t).map(e=>ve[e%32*4]),r=new Float64Array(t).map(e=>ve[e%32*4+1]),i=new Float64Array(t).map(e=>ve[e%32*4+2]),a=new Float64Array(t).map(e=>ve[e%32*4+3]);return function(e,o,s,c){let l,u,d,f,p,m=(e+o+s+c)*ge,h=_e(e+m),g=_e(o+m),_=_e(s+m),v=_e(c+m),ee=(h+g+_+v)*T,te=h-ee,ne=g-ee,re=_-ee,y=v-ee,b=e-te,x=o-ne,S=s-re,C=c-y,ie=0,ae=0,oe=0,se=0;b>x?ie++:ae++,b>S?ie++:oe++,b>C?ie++:se++,x>S?ae++:oe++,x>C?ae++:se++,S>C?oe++:se++;let ce=+(ie>=3),le=+(ae>=3),ue=+(oe>=3),de=+(se>=3),w=+(ie>=2),fe=+(ae>=2),pe=+(oe>=2),me=+(se>=2),he=+(ie>=1),ve=+(ae>=1),ye=+(oe>=1),be=+(se>=1),E=b-ce+T,D=x-le+T,xe=S-ue+T,O=C-de+T,Se=b-w+2*T,k=x-fe+2*T,A=S-pe+2*T,j=C-me+2*T,M=b-he+3*T,N=x-ve+3*T,P=S-ye+3*T,F=C-be+3*T,I=b-1+4*T,L=x-1+4*T,Ce=S-1+4*T,R=C-1+4*T,we=h&255,z=g&255,Te=_&255,B=v&255,V=.6-b*b-x*x-S*S-C*C;if(V<0)l=0;else{let e=we+t[z+t[Te+t[B]]];V*=V,l=V*V*(n[e]*b+r[e]*x+i[e]*S+a[e]*C)}let H=.6-E*E-D*D-xe*xe-O*O;if(H<0)u=0;else{let e=we+ce+t[z+le+t[Te+ue+t[B+de]]];H*=H,u=H*H*(n[e]*E+r[e]*D+i[e]*xe+a[e]*O)}let U=.6-Se*Se-k*k-A*A-j*j;if(U<0)d=0;else{let e=we+w+t[z+fe+t[Te+pe+t[B+me]]];U*=U,d=U*U*(n[e]*Se+r[e]*k+i[e]*A+a[e]*j)}let Ee=.6-M*M-N*N-P*P-F*F;if(Ee<0)f=0;else{let e=we+he+t[z+ve+t[Te+ye+t[B+be]]];Ee*=Ee,f=Ee*Ee*(n[e]*M+r[e]*N+i[e]*P+a[e]*F)}let De=.6-I*I-L*L-Ce*Ce-R*R;if(De<0)p=0;else{let e=we+1+t[z+1+t[Te+1+t[B+1]]];De*=De,p=De*De*(n[e]*I+r[e]*L+i[e]*Ce+a[e]*R)}return 27*(l+u+d+f+p)}}function be(e){let t=new Uint8Array(512);for(let e=0;e<512/2;e++)t[e]=e;for(let n=0;n<512/2-1;n++){let r=n+~~(e()*(256-n)),i=t[n];t[n]=t[r],t[r]=i}for(let e=256;e<512;e++)t[e]=t[e-256];return t}var E=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},D=class{time=0;value=0;inTangent=1/0;inWeight;outTangent=1/0;outWeight;weightedMode;constructor(e=0,t=0){this.time=e,this.value=t}};E([_()],D.prototype,`time`,void 0),E([_()],D.prototype,`value`,void 0),E([_()],D.prototype,`inTangent`,void 0),E([_()],D.prototype,`inWeight`,void 0),E([_()],D.prototype,`outTangent`,void 0),E([_()],D.prototype,`outWeight`,void 0),E([_()],D.prototype,`weightedMode`,void 0);var xe=class e{static linearFromTo(t,n,r){let i=new e,a=new D;a.time=0,a.value=t;let o=new D;return o.time=r,o.value=n,i.keys.push(a,o),i}static constant(t){let n=new e,r=new D;return r.time=0,r.value=t,n.keys.push(r),n}keys=[];clone(){let t=new e;return t.keys=this.keys?.map(e=>{let t=new D;return t.time=e.time,t.value=e.value,t.inTangent=e.inTangent,t.inWeight=e.inWeight,t.outTangent=e.outTangent,t.outWeight=e.outWeight,t.weightedMode=e.weightedMode,t})||[],t}get duration(){return!this.keys||this.keys.length==0?0:this.keys[this.keys.length-1].time}evaluate(t){if(!this.keys||this.keys.length==0)return 0;if(this.keys.length===1||this.keys[0].time>=t)return this.keys[0].value;for(let n=0;n<this.keys.length;n++){let r=this.keys[n];if(r.time<=t)if(n+1<this.keys.length){let i=this.keys[n+1];if(i.time<t)continue;return!isFinite(r.outTangent)||!isFinite(i.inTangent)?r.value:e.interpolateValue(t,r,i)}else return r.value}return this.keys[this.keys.length-1].value}static interpolateValue(e,t,n){let r=t.time,i=t.value,a=t.outTangent,o=n.time,s=n.value,c=n.inTangent,l=o-r,u=l*l,d=u*l,f=((a+c)*l-2*(s-i))/d,p=(3*(s-i)-(c+2*a)*l)/u,m=a,h=i,g=e-r,_=g*g;return _*g*f+p*_+m*g+h}};E([_(D)],xe.prototype,`keys`,void 0);var O=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Se=ne(`debugparticles`),k;(function(e){e[e.Billboard=0]=`Billboard`,e[e.Stretch=1]=`Stretch`,e[e.HorizontalBillboard=2]=`HorizontalBillboard`,e[e.VerticalBillboard=3]=`VerticalBillboard`,e[e.Mesh=4]=`Mesh`})(k||={});var A=class{alphaKeys=[];colorKeys=[];get duration(){return 1}evaluate(e,t){let n,r=0,i=null,a=0;for(let t=0;t<this.alphaKeys.length;t++){let i=this.alphaKeys[t];(i.time<e||!n)&&(n=i,r=t)}for(let t=0;t<this.colorKeys.length;t++){let n=this.colorKeys[t];(n.time<e||!i)&&(i=n,a=t)}if(i)if(a+1<this.colorKeys.length){let n=this.colorKeys[a+1],r=g.remap(e,i.time,n.time,0,1);t.r=g.lerp(i.color.r,n.color.r,r),t.g=g.lerp(i.color.g,n.color.g,r),t.b=g.lerp(i.color.b,n.color.b,r)}else t.r=i.color.r,t.g=i.color.g,t.b=i.color.b;if(n)if(r+1<this.alphaKeys.length){let i=this.alphaKeys[r+1],a=g.remap(e,n.time,i.time,0,1);t.alpha=g.lerp(n.alpha,i.alpha,a)}else t.alpha=n.alpha;return t}};O([_()],A.prototype,`alphaKeys`,void 0),O([_()],A.prototype,`colorKeys`,void 0);var j;(function(e){e[e.Constant=0]=`Constant`,e[e.Curve=1]=`Curve`,e[e.TwoCurves=2]=`TwoCurves`,e[e.TwoConstants=3]=`TwoConstants`})(j||={});var M;(function(e){e[e.Color=0]=`Color`,e[e.Gradient=1]=`Gradient`,e[e.TwoColors=2]=`TwoColors`,e[e.TwoGradients=3]=`TwoGradients`,e[e.RandomColor=4]=`RandomColor`})(M||={});var N;(function(e){e[e.Local=0]=`Local`,e[e.World=1]=`World`,e[e.Custom=2]=`Custom`})(N||={});var P;(function(e){e[e.Sphere=0]=`Sphere`,e[e.SphereShell=1]=`SphereShell`,e[e.Hemisphere=2]=`Hemisphere`,e[e.HemisphereShell=3]=`HemisphereShell`,e[e.Cone=4]=`Cone`,e[e.Box=5]=`Box`,e[e.Mesh=6]=`Mesh`,e[e.ConeShell=7]=`ConeShell`,e[e.ConeVolume=8]=`ConeVolume`,e[e.ConeVolumeShell=9]=`ConeVolumeShell`,e[e.Circle=10]=`Circle`,e[e.CircleEdge=11]=`CircleEdge`,e[e.SingleSidedEdge=12]=`SingleSidedEdge`,e[e.MeshRenderer=13]=`MeshRenderer`,e[e.SkinnedMeshRenderer=14]=`SkinnedMeshRenderer`,e[e.BoxShell=15]=`BoxShell`,e[e.BoxEdge=16]=`BoxEdge`,e[e.Donut=17]=`Donut`,e[e.Rectangle=18]=`Rectangle`,e[e.Sprite=19]=`Sprite`,e[e.SpriteRenderer=20]=`SpriteRenderer`})(P||={});var F;(function(e){e[e.Random=0]=`Random`,e[e.Loop=1]=`Loop`,e[e.PingPong=2]=`PingPong`,e[e.BurstSpread=3]=`BurstSpread`})(F||={});var I=class e{static constant(t){let n=new e;return n.setConstant(t),n}static betweenTwoConstants(t,n){let r=new e;return r.setMinMaxConstant(t,n),r}static curve(t,n=1){let r=new e;return r.setCurve(t,n),r}setConstant(e){this.mode=j.Constant,this.constant=e}setMinMaxConstant(e,t){this.mode=j.TwoConstants,this.constantMin=e,this.constantMax=t}setCurve(e,t=1){this.mode=j.Curve,this.curve=e,this.curveMultiplier=t}mode=`Constant`;constant;constantMin;constantMax;curve;curveMin;curveMax;curveMultiplier;clone(){let t=new e;return t.mode=this.mode,t.constant=this.constant,t.constantMin=this.constantMin,t.constantMax=this.constantMax,t.curve=this.curve?.clone(),t.curveMin=this.curveMin?.clone(),t.curveMax=this.curveMax?.clone(),t.curveMultiplier=this.curveMultiplier,t}evaluate(e,t){let n=t===void 0?Math.random():t;switch(this.mode){case j.Constant:case`Constant`:return this.constant;case j.Curve:case`Curve`:return e=g.clamp01(e),this.curve.evaluate(e)*this.curveMultiplier;case j.TwoCurves:case`TwoCurves`:let t=e*this.curveMin.duration,r=e*this.curveMax.duration;return g.lerp(this.curveMin.evaluate(t),this.curveMax.evaluate(r),n%1)*this.curveMultiplier;case j.TwoConstants:case`TwoConstants`:return g.lerp(this.constantMin,this.constantMax,n%1);default:this.curveMax.evaluate(e)*this.curveMultiplier;break}return 0}getMax(){switch(this.mode){case j.Constant:case`Constant`:return this.constant;case j.Curve:case`Curve`:return this.getMaxFromCurve(this.curve)*this.curveMultiplier;case j.TwoCurves:case`TwoCurves`:return Math.max(this.getMaxFromCurve(this.curveMin),this.getMaxFromCurve(this.curveMax))*this.curveMultiplier;case j.TwoConstants:case`TwoConstants`:return Math.max(this.constantMin,this.constantMax);default:return 0}}getMaxFromCurve(e){if(!e)return 0;let t=Number.MIN_VALUE;for(let n=0;n<e.keys.length;n++){let r=e.keys[n];r.value>t&&(t=r.value)}return t}};O([_()],I.prototype,`mode`,void 0),O([_()],I.prototype,`constant`,void 0),O([_()],I.prototype,`constantMin`,void 0),O([_()],I.prototype,`constantMax`,void 0),O([_(xe)],I.prototype,`curve`,void 0),O([_(xe)],I.prototype,`curveMin`,void 0),O([_(xe)],I.prototype,`curveMax`,void 0),O([_()],I.prototype,`curveMultiplier`,void 0);var L=class e{static constant(t){let n=new e;return n.constant(t),n}static betweenTwoColors(t,n){let r=new e;return r.betweenTwoColors(t,n),r}constant(e){return this.mode=M.Color,this.color=e,this}betweenTwoColors(e,t){return this.mode=M.TwoColors,this.colorMin=e,this.colorMax=t,this}mode=M.Color;color;colorMin;colorMax;gradient;gradientMin;gradientMax;static _temp=new y(0,0,0,1);static _temp2=new y(0,0,0,1);evaluate(t,n){let r=n===void 0?Math.random():n;switch(this.mode){case M.Color:case`Color`:return this.color;case M.Gradient:case`Gradient`:return this.gradient.evaluate(t,e._temp),e._temp;case M.TwoColors:case`TwoColors`:return e._temp.lerpColors(this.colorMin,this.colorMax,r);case M.TwoGradients:case`TwoGradients`:return this.gradientMin.evaluate(t,e._temp),this.gradientMax.evaluate(t,e._temp2),e._temp.lerp(e._temp2,r);case M.RandomColor:case`RandomColor`:let n=Math.random();return this.gradientMin.evaluate(t,e._temp),this.gradientMax.evaluate(t,e._temp2),e._temp.lerp(e._temp2,n)}return e._temp.set(16777215),e._temp.alpha=1,e._temp}};O([_()],L.prototype,`mode`,void 0),O([_(y)],L.prototype,`color`,void 0),O([_(y)],L.prototype,`colorMin`,void 0),O([_(y)],L.prototype,`colorMax`,void 0),O([_(A)],L.prototype,`gradient`,void 0),O([_(A)],L.prototype,`gradientMin`,void 0),O([_(A)],L.prototype,`gradientMax`,void 0);var Ce;(function(e){e[e.Hierarchy=0]=`Hierarchy`,e[e.Local=1]=`Local`,e[e.Shape=2]=`Shape`})(Ce||={});var R=class{cullingMode;duration;emitterVelocityMode;flipRotation;gravityModifier;gravityModifierMultiplier;loop;maxParticles;playOnAwake;prewarm;ringBufferLoopRange;ringBufferMode;scalingMode;simulationSpace;simulationSpeed;startColor;startDelay;startDelayMultiplier;startLifetime;startLifetimeMultiplier;startRotation;startRotationMultiplier;startRotation3D;startRotationX;startRotationXMultiplier;startRotationY;startRotationYMultiplier;startRotationZ;startRotationZMultiplier;startSize;startSize3D;startSizeMultiplier;startSizeX;startSizeXMultiplier;startSizeY;startSizeYMultiplier;startSizeZ;startSizeZMultiplier;startSpeed;startSpeedMultiplier;stopAction;useUnscaledTime};O([_(I)],R.prototype,`gravityModifier`,void 0),O([_(L)],R.prototype,`startColor`,void 0),O([_(I)],R.prototype,`startDelay`,void 0),O([_(I)],R.prototype,`startLifetime`,void 0),O([_(I)],R.prototype,`startRotation`,void 0),O([_(I)],R.prototype,`startRotationX`,void 0),O([_(I)],R.prototype,`startRotationY`,void 0),O([_(I)],R.prototype,`startRotationZ`,void 0),O([_(I)],R.prototype,`startSize`,void 0),O([_(I)],R.prototype,`startSizeX`,void 0),O([_(I)],R.prototype,`startSizeY`,void 0),O([_(I)],R.prototype,`startSizeZ`,void 0),O([_(I)],R.prototype,`startSpeed`,void 0);var we=class{cycleCount;maxCount;minCount;probability;repeatInterval;time;count;_performed=0;reset(){this._performed=0}run(e){if(e<=this.time)return 0;let t=0;if((this.cycleCount===0||this._performed<this.cycleCount)&&e>=this.time+this.repeatInterval*this._performed&&(this._performed+=1,Math.random()<this.probability))switch(this.count.mode){case j.Constant:t=this.count.constant;break;case j.TwoConstants:t=g.lerp(this.count.constantMin,this.count.constantMax,Math.random());break;case j.Curve:t=this.count.curve.evaluate(Math.random());break;case j.TwoCurves:let e=Math.random();t=g.lerp(this.count.curveMin.evaluate(e),this.count.curveMax.evaluate(e),Math.random());break}return t}},z=class{enabled;get burstCount(){return this.bursts?.length??0}bursts;rateOverTime;rateOverTimeMultiplier;rateOverDistance;rateOverDistanceMultiplier;system;reset(){this.bursts?.forEach(e=>e.reset())}getBurst(){let e=0;if(this.burstCount>0)for(let t=0;t<this.burstCount;t++){let n=this.bursts[t];this.system.main.loop&&n.time>=this.system.time&&n.reset(),e+=Math.round(n.run(this.system.time))}return e}};O([_()],z.prototype,`enabled`,void 0),O([_()],z.prototype,`bursts`,void 0),O([_(I)],z.prototype,`rateOverTime`,void 0),O([_()],z.prototype,`rateOverTimeMultiplier`,void 0),O([_(I)],z.prototype,`rateOverDistance`,void 0),O([_()],z.prototype,`rateOverDistanceMultiplier`,void 0);var Te=class{enabled;color};O([_(L)],Te.prototype,`color`,void 0);var B=class{enabled;separateAxes;size;sizeMultiplier;x;xMultiplier;y;yMultiplier;z;zMultiplier;_time=0;_temp=new e;evaluate(e,t,n){if(t||=this._temp,!this.enabled)return t.x=t.y=t.z=1,t;if(this.separateAxes)t.x=this.x.evaluate(e,n)*this.xMultiplier,t.y=this.y.evaluate(e,n)*this.yMultiplier,t.z=this.z.evaluate(e,n)*this.zMultiplier;else{let r=this.size.evaluate(e,n)*this.sizeMultiplier;t.x=r}return t}};O([_(I)],B.prototype,`size`,void 0),O([_(I)],B.prototype,`x`,void 0),O([_(I)],B.prototype,`y`,void 0),O([_(I)],B.prototype,`z`,void 0);var V;(function(e){e[e.Vertex=0]=`Vertex`,e[e.Edge=1]=`Edge`,e[e.Triangle=2]=`Triangle`})(V||={});var H=class t{get type(){return P[this.shapeType]}initialize(e){this.onInitialize(e),e.position.x=this._vector.x,e.position.y=this._vector.y,e.position.z=this._vector.z}toJSON(){return this}clone(){return new t}shapeType=P.Box;enabled=!0;alignToDirection=!1;angle=0;arc=360;arcSpread;arcSpeedMultiplier;arcMode;boxThickness;position;rotation;_rotation=new l;scale;radius;radiusThickness;sphericalDirectionAmount;randomDirectionAmount;randomPositionAmount;meshShapeType;meshRenderer;_meshObj;_meshGeometry;setMesh(e){this.meshRenderer=e,e?(this._meshObj=e.sharedMeshes[Math.floor(Math.random()*e.sharedMeshes.length)],this._meshGeometry=this._meshObj.geometry):(this._meshObj=void 0,this._meshGeometry=void 0)}system;_space;_worldSpaceMatrix=new r;_worldSpaceMatrixInverse=new r;constructor(){Se&&console.log(this)}update(e,t){}onUpdate(e,t,n,r){this.system=e,this._space=n,n===N.World&&(this._worldSpaceMatrix.copy(r.matrixWorld),this._worldSpaceMatrix.elements[0]=1,this._worldSpaceMatrix.elements[5]=1,this._worldSpaceMatrix.elements[10]=1,this._worldSpaceMatrixInverse.copy(this._worldSpaceMatrix).invert())}applyRotation(e){let t=this.rotation.x!==0||this.rotation.y!==0||this.rotation.z!==0;return t&&(this._rotation.x=g.toRadians(this.rotation.x),this._rotation.y=g.toRadians(this.rotation.y),this._rotation.z=g.toRadians(this.rotation.z),this._rotation.order=`ZYX`,e.applyEuler(this._rotation)),t}_vector=new e(0,0,0);_temp=new e(0,0,0);_triangle=new f;onInitialize(e){this._vector.set(0,0,0),e.mesh=void 0,e.mesh_geometry=void 0;let t=this._temp.copy(this.position),n=this._space===N.World;n&&t.applyQuaternion(this.system.worldQuaternion);let r=this.radius;if(n&&(r*=this.system.worldScale.x),this.enabled){switch(this.shapeType){case P.Box:Se&&C.DrawWireBox(this.position,this.scale,14540253,1),this._vector.x=Math.random()*this.scale.x-this.scale.x/2,this._vector.y=Math.random()*this.scale.y-this.scale.y/2,this._vector.z=Math.random()*this.scale.z-this.scale.z/2,this._vector.add(t);break;case P.Cone:this.randomConePoint(this.position,this.angle,r,this.radiusThickness,this.arc,this.arcMode,this._vector);break;case P.Sphere:this.randomSpherePoint(this.position,r,this.radiusThickness,this.arc,this._vector);break;case P.Circle:this.randomCirclePoint(this.position,r,this.radiusThickness,this.arc,this._vector);break;case P.MeshRenderer:let n=this.meshRenderer;n?.destroyed==0&&this.setMesh(n);let i=e.mesh=this._meshObj,a=e.mesh_geometry=this._meshGeometry;if(i&&a)switch(this.meshShapeType){case V.Vertex:{let t=a.getAttribute(`position`),n=Math.floor(Math.random()*t.count);this._vector.fromBufferAttribute(t,n),this._vector.applyMatrix4(i.matrixWorld),e.mesh_normal=n}break;case V.Edge:break;case V.Triangle:{let t=a.index;if(t){let n=Math.random(),r=Math.random();n+r>1&&(n=1-n,r=1-r);let o=Math.floor(Math.random()*(t.count/3)),s=o*3,c=o*3+1,l=o*3+2;s=t.getX(s),c=t.getX(c),l=t.getX(l);let u=a.getAttribute(`position`);this._triangle.a.fromBufferAttribute(u,s),this._triangle.b.fromBufferAttribute(u,c),this._triangle.c.fromBufferAttribute(u,l),this._vector.set(0,0,0).addScaledVector(this._triangle.a,n).addScaledVector(this._triangle.b,r).addScaledVector(this._triangle.c,1-(n+r)),this._vector.applyMatrix4(i.matrixWorld),e.mesh_normal=o}}break}break;default:this._vector.set(0,0,0),h()&&!globalThis.__particlesystem_shapetype_unsupported&&(console.warn(`ParticleSystem ShapeType is not supported:`,P[this.shapeType]),globalThis.__particlesystem_shapetype_unsupported=!0);break}this.randomizePosition(this._vector,this.randomPositionAmount)}this.applyRotation(this._vector),n&&(this._vector.applyQuaternion(this.system.worldQuaternion),this._vector.add(this.system.worldPos)),Se&&C.DrawSphere(this._vector,.03,16711680,.5,!0)}_dir=new e;getDirection(e,t){if(!this.enabled)return this._dir.set(0,0,1),this._dir;switch(this.shapeType){case P.Box:this._dir.set(0,0,1);break;case P.Cone:this._dir.set(0,0,1);break;case P.Circle:case P.Sphere:let n=t.x,r=t.y,i=t.z;this._dir.set(n,r,i),this.system?.worldspace?this._dir.sub(this.system.worldPos):this._dir.sub(this.position);break;case P.MeshRenderer:let a=e.mesh,o=e.mesh_geometry;if(a&&o)switch(this.meshShapeType){case V.Vertex:{let t=o.getAttribute(`normal`),n=e.mesh_normal;this._dir.fromBufferAttribute(t,n)}break;case V.Edge:break;case V.Triangle:{let t=o.index;if(t){let n=e.mesh_normal,r=t.getX(n*3),i=t.getX(n*3+1),s=t.getX(n*3+2),c=o.getAttribute(`position`),l=x(),u=x(),d=x();l.fromBufferAttribute(c,r),u.fromBufferAttribute(c,i),d.fromBufferAttribute(c,s),l.sub(u),d.sub(u),l.cross(d),this._dir.copy(l).multiplyScalar(-1);let f=ie(a);this._dir.applyQuaternion(f)}}break}break;default:this._dir.set(0,0,1);break}return this._space===N.World&&this._dir.applyQuaternion(this.system.worldQuaternion),this.applyRotation(this._dir),this._dir.normalize(),this.spherizeDirection(this._dir,this.sphericalDirectionAmount),this.randomizeDirection(this._dir,this.randomDirectionAmount),Se&&(C.DrawSphere(t,.01,8925952,.5,!0),C.DrawDirection(t,this._dir,8925952,.5,!0)),this._dir}static _randomQuat=new d;static _tempVec=new e;randomizePosition(e,n){if(n<=0)return;let r=t._tempVec;r.set(Math.random()*2-1,Math.random()*2-1,Math.random()*2-1),r.x*=n*this.scale.x,r.y*=n*this.scale.y,r.z*=n*this.scale.z,e.add(r)}randomizeDirection(e,n){if(n===0)return;let r=t._randomQuat,i=t._tempVec;i.set(Math.random()-.5,Math.random()-.5,Math.random()-.5).normalize(),r.setFromAxisAngle(i,n*Math.random()*Math.PI),e.applyQuaternion(r)}spherizeDirection(t,n){if(n===0)return;let r=Math.random()*Math.PI*2,i=Math.acos(1-Math.random()*2),a=new e(Math.sin(i)*Math.cos(r),Math.sin(i)*Math.sin(r),Math.cos(i));t.lerp(a,n)}randomSpherePoint(e,t,n,r,i){let a=Math.random(),o=Math.random(),s=2*Math.PI*a*(r/360),c=Math.acos(2*o-1),l=g.lerp(1,1-(1-Math.random())**Math.PI,n)*t,u=e.x+this.scale.x*(-l*Math.sin(c)*Math.cos(s)),d=e.y+this.scale.y*(l*Math.sin(c)*Math.sin(s)),f=e.z+this.scale.z*(l*Math.cos(c));i.x=u,i.y=d,i.z=f}randomCirclePoint(e,t,n,r,i){let a=Math.random(),o=2*Math.PI*a*(r/360),s=g.lerp(1,1-(1-Math.random())**Math.PI,n)*t,c=e.x+this.scale.x*s*Math.cos(o),l=e.y+this.scale.y*s*Math.sin(o),u=e.z;i.x=c,i.y=l,i.z=u}_loopTime=0;_loopDirection=1;randomConePoint(e,t,n,r,i,a,o){let s=0,c=0;switch(a){case F.Random:s=Math.random(),c=Math.random();break;case F.PingPong:this._loopTime>1&&(this._loopDirection=-1),this._loopTime<0&&(this._loopDirection=1);case F.Loop:s=.5,c=Math.random(),this._loopTime+=this.system.deltaTime*this._loopDirection;break}let l=2*Math.PI*s*(i/360);switch(a){case F.PingPong:case F.Loop:l+=Math.PI+.5,l+=this._loopTime*Math.PI*2,l%=g.toRadians(i);break}let u=Math.acos(2*c-1),d=g.lerp(1,1-(1-Math.random())**Math.PI,r)*n,f=e.x+-d*Math.sin(u)*Math.cos(l),p=e.y+d*Math.sin(u)*Math.sin(l),m=e.z;o.x=f*this.scale.x,o.y=p*this.scale.y,o.z=m*this.scale.z}};O([_()],H.prototype,`shapeType`,void 0),O([_()],H.prototype,`enabled`,void 0),O([_()],H.prototype,`alignToDirection`,void 0),O([_()],H.prototype,`angle`,void 0),O([_()],H.prototype,`arc`,void 0),O([_()],H.prototype,`arcSpread`,void 0),O([_()],H.prototype,`arcSpeedMultiplier`,void 0),O([_()],H.prototype,`arcMode`,void 0),O([_(e)],H.prototype,`boxThickness`,void 0),O([_(e)],H.prototype,`position`,void 0),O([_(e)],H.prototype,`rotation`,void 0),O([_(e)],H.prototype,`scale`,void 0),O([_()],H.prototype,`radius`,void 0),O([_()],H.prototype,`radiusThickness`,void 0),O([_()],H.prototype,`sphericalDirectionAmount`,void 0),O([_()],H.prototype,`randomDirectionAmount`,void 0),O([_()],H.prototype,`randomPositionAmount`,void 0),O([_()],H.prototype,`meshShapeType`,void 0),O([_(oe)],H.prototype,`meshRenderer`,void 0);var U=class{damping;enabled;frequency;octaveCount;octaveMultiplier;octaveScale;positionAmount;quality;remap;remapEnabled;remapMultiplier;remapX;remapXMultiplier;remapY;remapYMultiplier;remapZ;remapZMultiplier;scrollSpeedMultiplier;separateAxes;strengthMultiplier;strengthX;strengthXMultiplier;strengthY;strengthYMultiplier;strengthZ;strengthZMultiplier;_noise;_time=0;update(e){this._time+=e.time.deltaTime*this.scrollSpeedMultiplier}_temp=new e;apply(e,t,n,r,i,a){if(!this.enabled)return;this._noise||=ye(()=>0);let o=this._temp.set(t.x,t.y,t.z).multiplyScalar(this.frequency),s=this._noise(o.x,o.y,o.z,this._time),c=this._noise(o.x,o.y,o.z,this._time+1e3*this.frequency),l=this._noise(o.x,o.y,o.z,this._time+2e3*this.frequency);this._temp.set(s,c,l).normalize();let u=i/a,d=this.positionAmount.evaluate(u);this.separateAxes?(this._temp.x*=d*this.strengthXMultiplier,this._temp.y*=d*this.strengthYMultiplier,this._temp.z*=d*this.strengthZMultiplier):(this.strengthX&&(d*=this.strengthX.evaluate(u)*1.5),this._temp.multiplyScalar(d)),n.x+=this._temp.x,n.y+=this._temp.y,n.z+=this._temp.z}};O([_()],U.prototype,`damping`,void 0),O([_()],U.prototype,`enabled`,void 0),O([_()],U.prototype,`frequency`,void 0),O([_()],U.prototype,`octaveCount`,void 0),O([_()],U.prototype,`octaveMultiplier`,void 0),O([_()],U.prototype,`octaveScale`,void 0),O([_(I)],U.prototype,`positionAmount`,void 0),O([_()],U.prototype,`quality`,void 0),O([_(I)],U.prototype,`remap`,void 0),O([_()],U.prototype,`remapEnabled`,void 0),O([_()],U.prototype,`remapMultiplier`,void 0),O([_(I)],U.prototype,`remapX`,void 0),O([_()],U.prototype,`remapXMultiplier`,void 0),O([_(I)],U.prototype,`remapY`,void 0),O([_()],U.prototype,`remapYMultiplier`,void 0),O([_(I)],U.prototype,`remapZ`,void 0),O([_()],U.prototype,`remapZMultiplier`,void 0),O([_()],U.prototype,`scrollSpeedMultiplier`,void 0),O([_()],U.prototype,`separateAxes`,void 0),O([_()],U.prototype,`strengthMultiplier`,void 0),O([_(I)],U.prototype,`strengthX`,void 0),O([_()],U.prototype,`strengthXMultiplier`,void 0),O([_(I)],U.prototype,`strengthY`,void 0),O([_()],U.prototype,`strengthYMultiplier`,void 0),O([_(I)],U.prototype,`strengthZ`,void 0),O([_()],U.prototype,`strengthZMultiplier`,void 0);var Ee;(function(e){e[e.PerParticle=0]=`PerParticle`,e[e.Ribbon=1]=`Ribbon`})(Ee||={});var De;(function(e){e[e.Stretch=0]=`Stretch`,e[e.Tile=1]=`Tile`,e[e.DistributePerSegment=2]=`DistributePerSegment`,e[e.RepeatPerSegment=3]=`RepeatPerSegment`})(De||={});var W=class{enabled;attachRibbonToTransform=!1;colorOverLifetime;colorOverTrail;dieWithParticles=!0;inheritParticleColor=!0;lifetime;lifetimeMultiplier;minVertexDistance=.2;mode=Ee.PerParticle;ratio=1;ribbonCount=1;shadowBias=0;sizeAffectsLifetime=!1;sizeAffectsWidth=!1;splitSubEmitterRibbons=!1;textureMode=De.Stretch;widthOverTrail;widthOverTrailMultiplier;worldSpace=!1;getWidth(e,t,n,r){let i=this.widthOverTrail.evaluate(n,r);return e*=i,e}getColor(e,t,n){let r=this.colorOverTrail.evaluate(n),i=this.colorOverLifetime.evaluate(t);e.x*=r.r*i.r,e.y*=r.g*i.g,e.z*=r.b*i.b,`alpha`in r&&`alpha`in i&&(e.w*=r.alpha*i.alpha)}};O([_()],W.prototype,`enabled`,void 0),O([_()],W.prototype,`attachRibbonToTransform`,void 0),O([_(L)],W.prototype,`colorOverLifetime`,void 0),O([_(L)],W.prototype,`colorOverTrail`,void 0),O([_()],W.prototype,`dieWithParticles`,void 0),O([_()],W.prototype,`inheritParticleColor`,void 0),O([_(I)],W.prototype,`lifetime`,void 0),O([_()],W.prototype,`lifetimeMultiplier`,void 0),O([_()],W.prototype,`minVertexDistance`,void 0),O([_()],W.prototype,`mode`,void 0),O([_()],W.prototype,`ratio`,void 0),O([_()],W.prototype,`ribbonCount`,void 0),O([_()],W.prototype,`shadowBias`,void 0),O([_()],W.prototype,`sizeAffectsLifetime`,void 0),O([_()],W.prototype,`sizeAffectsWidth`,void 0),O([_()],W.prototype,`splitSubEmitterRibbons`,void 0),O([_()],W.prototype,`textureMode`,void 0),O([_(I)],W.prototype,`widthOverTrail`,void 0),O([_()],W.prototype,`widthOverTrailMultiplier`,void 0),O([_()],W.prototype,`worldSpace`,void 0);var G=class{enabled;space=N.Local;orbitalX;orbitalY;orbitalZ;orbitalXMultiplier;orbitalYMultiplier;orbitalZMultiplier;orbitalOffsetX;orbitalOffsetY;orbitalOffsetZ;speedModifier;speedModifierMultiplier;x;xMultiplier;y;yMultiplier;z;zMultiplier;_system;update(e){this._system=e}_temp=new e;_temp2=new e;_temp3=new e;_hasOrbital=!1;_index=0;_orbitalMatrix=new r;init(e){this._index==0&&(e.debug=!0),this._index+=1,e.orbitx=this.orbitalX.evaluate(Math.random()),e.orbity=this.orbitalY.evaluate(Math.random()),e.orbitz=this.orbitalZ.evaluate(Math.random()),this._hasOrbital=e.orbitx!=0||e.orbity!=0||e.orbitz!=0}apply(e,t,n,r,i,a,o){if(!this.enabled)return;let s=a/o,c=this.speedModifier.evaluate(s)*this.speedModifierMultiplier,l=this.x.evaluate(s),u=this.y.evaluate(s),d=this.z.evaluate(s);if(this._temp.set(-l,u,d),this._system&&this._system.main.simulationSpace===N.World&&this._temp.applyQuaternion(this._system.worldQuaternion),this._hasOrbital&&this._system?.worldPos){let e=this._temp2.set(n.x,n.y,n.z),t=this.orbitalXMultiplier,a=this.orbitalYMultiplier,o=this.orbitalZMultiplier,s=c*Math.PI*2*10,l=Math.cos(s*t),u=Math.sin(s*t),d=Math.cos(s*a),f=Math.sin(s*a),p=Math.cos(s*o),m=Math.sin(s*o),h=e.x*(d*p)+e.y*(d*m)+e.z*-f,g=e.x*(u*f*p-l*m)+e.y*(u*f*m+l*p)+e.z*(u*d),_=e.x*(l*f*p+u*m)+e.y*(l*f*m-u*p)+e.z*(l*d),v=this._temp3.set(e.x-h,e.y-g,e.z-_);v.normalize(),v.multiplyScalar(.2/i*Math.max(this.orbitalXMultiplier,this.orbitalYMultiplier,this.orbitalZMultiplier)),r.x+=v.x,r.y+=v.y,r.z+=v.z}r.x+=this._temp.x,r.y+=this._temp.y,r.z+=this._temp.z,r.x*=c,r.y*=c,r.z*=c}};O([_()],G.prototype,`enabled`,void 0),O([_()],G.prototype,`space`,void 0),O([_(I)],G.prototype,`orbitalX`,void 0),O([_(I)],G.prototype,`orbitalY`,void 0),O([_(I)],G.prototype,`orbitalZ`,void 0),O([_()],G.prototype,`orbitalXMultiplier`,void 0),O([_()],G.prototype,`orbitalYMultiplier`,void 0),O([_()],G.prototype,`orbitalZMultiplier`,void 0),O([_()],G.prototype,`orbitalOffsetX`,void 0),O([_()],G.prototype,`orbitalOffsetY`,void 0),O([_()],G.prototype,`orbitalOffsetZ`,void 0),O([_(I)],G.prototype,`speedModifier`,void 0),O([_()],G.prototype,`speedModifierMultiplier`,void 0),O([_(I)],G.prototype,`x`,void 0),O([_()],G.prototype,`xMultiplier`,void 0),O([_(I)],G.prototype,`y`,void 0),O([_()],G.prototype,`yMultiplier`,void 0),O([_(I)],G.prototype,`z`,void 0),O([_()],G.prototype,`zMultiplier`,void 0);var Oe;(function(e){e[e.Lifetime=0]=`Lifetime`,e[e.Speed=1]=`Speed`,e[e.FPS=2]=`FPS`})(Oe||={});var ke;(function(e){e[e.Grid=0]=`Grid`,e[e.Sprites=1]=`Sprites`})(ke||={});var Ae;(function(e){e[e.Custom=0]=`Custom`,e[e.Random=1]=`Random`,e[e.MeshIndex=2]=`MeshIndex`})(Ae||={});var je;(function(e){e[e.WholeSheet=0]=`WholeSheet`,e[e.SingleRow=1]=`SingleRow`})(je||={});var K=class{animation;enabled;cycleCount;frameOverTime;frameOverTimeMultiplier;numTilesX;numTilesY;startFrame;startFrameMultiplier;rowMode;rowIndex;spriteCount;timeMode;sampleOnceAtStart(){if(this.timeMode===Oe.Lifetime)switch(this.frameOverTime.mode){case j.Constant:case j.TwoConstants:case j.TwoCurves:case j.Curve:return!0}return!1}getStartIndex(){return this.sampleOnceAtStart()?Math.random()*(this.numTilesX*this.numTilesY):0}evaluate(e){if(!this.sampleOnceAtStart())return this.getIndex(e)}getIndex(e){let t=this.numTilesX*this.numTilesY;e*=this.cycleCount;let n=this.frameOverTime.evaluate(e%1);return n*=this.frameOverTimeMultiplier,n*=t,n%=t,n=Math.floor(n),n}};O([_()],K.prototype,`animation`,void 0),O([_()],K.prototype,`enabled`,void 0),O([_()],K.prototype,`cycleCount`,void 0),O([_(I)],K.prototype,`frameOverTime`,void 0),O([_()],K.prototype,`frameOverTimeMultiplier`,void 0),O([_()],K.prototype,`numTilesX`,void 0),O([_()],K.prototype,`numTilesY`,void 0),O([_(I)],K.prototype,`startFrame`,void 0),O([_()],K.prototype,`startFrameMultiplier`,void 0),O([_()],K.prototype,`rowMode`,void 0),O([_()],K.prototype,`rowIndex`,void 0),O([_()],K.prototype,`spriteCount`,void 0),O([_()],K.prototype,`timeMode`,void 0);var q=class{enabled;separateAxes;x;xMultiplier;y;yMultiplier;z;zMultiplier;evaluate(e,t){return this.enabled?this.separateAxes?0:this.z.evaluate(e,t)*-1:0}};O([_()],q.prototype,`enabled`,void 0),O([_()],q.prototype,`separateAxes`,void 0),O([_(I)],q.prototype,`x`,void 0),O([_()],q.prototype,`xMultiplier`,void 0),O([_(I)],q.prototype,`y`,void 0),O([_()],q.prototype,`yMultiplier`,void 0),O([_(I)],q.prototype,`z`,void 0),O([_()],q.prototype,`zMultiplier`,void 0);var J=class{enabled;range;separateAxes;x;xMultiplier;y;yMultiplier;z;zMultiplier;evaluate(e,t){if(!this.enabled)return 0;if(!this.separateAxes){let e=g.lerp(this.range.x,this.range.y,t);return this.z.evaluate(e)*-1}return 0}};O([_()],J.prototype,`enabled`,void 0),O([_()],J.prototype,`range`,void 0),O([_()],J.prototype,`separateAxes`,void 0),O([_(I)],J.prototype,`x`,void 0),O([_()],J.prototype,`xMultiplier`,void 0),O([_(I)],J.prototype,`y`,void 0),O([_()],J.prototype,`yMultiplier`,void 0),O([_(I)],J.prototype,`z`,void 0),O([_()],J.prototype,`zMultiplier`,void 0);var Y=class{enabled;dampen;drag;dragMultiplier;limit;limitMultiplier;separateAxes;limitX;limitXMultiplier;limitY;limitYMultiplier;limitZ;limitZMultiplier;multiplyDragByParticleSize=!1;multiplyDragByParticleVelocity=!1;space;_temp=new e;_temp2=new e;apply(e,t,n,r,i,a,o){if(this.enabled){let e=this.limit.evaluate(i)*this.limitMultiplier;if(t.length()>e){this._temp.copy(t).normalize().multiplyScalar(e);let r=this.dampen*.5;t.x=g.lerp(t.x,this._temp.x,r),t.y=g.lerp(t.y,this._temp.y,r),t.z=g.lerp(t.z,this._temp.z,r),n.x=g.lerp(n.x,this._temp.x,r),n.y=g.lerp(n.y,this._temp.y,r),n.z=g.lerp(n.z,this._temp.z,r)}}}};O([_()],Y.prototype,`enabled`,void 0),O([_()],Y.prototype,`dampen`,void 0),O([_(I)],Y.prototype,`drag`,void 0),O([_()],Y.prototype,`dragMultiplier`,void 0),O([_(I)],Y.prototype,`limit`,void 0),O([_()],Y.prototype,`limitMultiplier`,void 0),O([_()],Y.prototype,`separateAxes`,void 0),O([_(I)],Y.prototype,`limitX`,void 0),O([_()],Y.prototype,`limitXMultiplier`,void 0),O([_(I)],Y.prototype,`limitY`,void 0),O([_()],Y.prototype,`limitYMultiplier`,void 0),O([_(I)],Y.prototype,`limitZ`,void 0),O([_()],Y.prototype,`limitZMultiplier`,void 0),O([_()],Y.prototype,`multiplyDragByParticleSize`,void 0),O([_()],Y.prototype,`multiplyDragByParticleVelocity`,void 0),O([_()],Y.prototype,`space`,void 0);var Me;(function(e){e[e.Initial=0]=`Initial`,e[e.Current=1]=`Current`})(Me||={});var Ne=class t{enabled;curve;curveMultiplier;mode;clone(){let e=new t;return e.enabled=this.enabled,e.curve=this.curve?.clone(),e.curveMultiplier=this.curveMultiplier,e.mode=this.mode,e}system;get _lastWorldPosition(){return this.system._iv_lastWorldPosition||(this.system._iv_lastWorldPosition=new e),this.system._iv_lastWorldPosition}get _velocity(){return this.system._iv_velocity||(this.system._iv_velocity=new e),this.system._iv_velocity}_temp=new e;_firstUpdate=!0;awake(e){this.system=e,this.reset()}reset(){this._firstUpdate=!0}update(e){this.enabled&&this.system.worldspace!==!1&&(this._firstUpdate?(this._firstUpdate=!1,this._velocity.set(0,0,0),this._lastWorldPosition.copy(this.system.worldPos)):this._lastWorldPosition&&(this._velocity.copy(this.system.worldPos).sub(this._lastWorldPosition).multiplyScalar(1/this.system.deltaTime),this._lastWorldPosition.copy(this.system.worldPos)))}applyInitial(e){if(this.enabled&&this.system.worldspace!==!1&&this.mode===Me.Initial){let t=this.curve.evaluate(Math.random(),Math.random());this._temp.copy(this._velocity).multiplyScalar(t),e.x+=this._temp.x,e.y+=this._temp.y,e.z+=this._temp.z}}_frames=0;applyCurrent(e,t,n){if(this.enabled&&this.system&&this.system.worldspace!==!1&&this.mode===Me.Current){let r=this.curve.evaluate(t,n);this._temp.copy(this._velocity).multiplyScalar(r),e.x+=this._temp.x,e.y+=this._temp.y,e.z+=this._temp.z}}};O([_()],Ne.prototype,`enabled`,void 0),O([_(I)],Ne.prototype,`curve`,void 0),O([_()],Ne.prototype,`curveMultiplier`,void 0),O([_()],Ne.prototype,`mode`,void 0);var X=class{enabled;range;separateAxes;size;sizeMultiplier;x;xMultiplier;y;yMultiplier;z;zMultiplier;evaluate(e,t,n,r){let i=e.length(),a=g.remap(i,this.range.x,this.range.y,0,1),o=this.size.evaluate(a,n);return r.x*=o,r.y*=o,r.z*=o,r}};O([_()],X.prototype,`enabled`,void 0),O([_(s)],X.prototype,`range`,void 0),O([_()],X.prototype,`separateAxes`,void 0),O([_(I)],X.prototype,`size`,void 0),O([_()],X.prototype,`sizeMultiplier`,void 0),O([_(I)],X.prototype,`x`,void 0),O([_()],X.prototype,`xMultiplier`,void 0),O([_(I)],X.prototype,`y`,void 0),O([_()],X.prototype,`yMultiplier`,void 0),O([_(I)],X.prototype,`z`,void 0),O([_()],X.prototype,`zMultiplier`,void 0);var Pe=class{enabled;range;color;evaluate(e,t,n){let r=e.length(),i=g.remap(r,this.range.x,this.range.y,0,1),a=this.color.evaluate(i,t);n.x*=a.r,n.y*=a.g,n.z*=a.b,`alpha`in a&&(n.w*=a.alpha)}};O([_()],Pe.prototype,`enabled`,void 0),O([_(s)],Pe.prototype,`range`,void 0),O([_(L)],Pe.prototype,`color`,void 0),new e(1,1,1),new e(0,0,1);var Fe=class{system;particleSystem;subSystem;subParticleSystem;type=`NeedleParticleSubEmitter`;emitterType;emitterProbability;q_=new d;v_=new e;v2_=new e;_emitterMatrix=new de;_circularBuffer;constructor(e,t,n,r){this.system=e,this.particleSystem=t,this.subSystem=n,this.subParticleSystem=r,this.subParticleSystem&&this.subParticleSystem&&(this.subParticleSystem.onlyUsedByOther=!0),this._circularBuffer=new p(()=>new de,1e3)}clone(){throw Error(`Method not implemented.`)}initialize(e){e.emissionState={burstIndex:0,burstWaveIndex:0,time:0,waitEmiting:0},this._emitterMatrix.copy(this.subSystem.matrixWorld).invert().premultiply(this.system.matrixWorld),this._emitterMatrix.setPosition(0,0,0),this.emitterType===ze.Birth&&this.run(e)}update(e,t){this.run(e)}frameUpdate(e){}toJSON(){}reset(){}run(e){if(this.subSystem.currentParticles>=this.subSystem.main.maxParticles||!this.subParticleSystem||!e.emissionState||this.emitterProbability&&Math.random()>this.emitterProbability)return;let t=this.system.deltaTime;if(this.emitterType===ze.Death){let n=e.life;if(e[Qe]!==void 0&&(n=e[Qe]),!(e.age+t*1.2>=n))return;let r=this.subSystem.main.maxParticles-this.subSystem.currentParticles;e.emissionState.waitEmiting=r}let n=new de;n.set(1,0,0,e.position.x,0,1,0,e.position.y,0,0,1,e.position.z,0,0,0,1),this.particleSystem.worldSpace||n.multiplyMatrices(this._emitterMatrix,n),this.subParticleSystem.emit(t,e.emissionState,n)}},Z=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Ie=ne(`debugparticles`),Le=ne(`noprogressive`),Re=ne(`debugprogressive`),ze;(function(e){e[e.Birth=0]=`Birth`,e[e.Collision=1]=`Collision`,e[e.Death=2]=`Death`,e[e.Trigger=3]=`Trigger`,e[e.Manual=4]=`Manual`})(ze||={});var Q=class extends b{renderMode;particleMaterial;trailMaterial;particleMesh;maxParticleSize;minParticleSize;velocityScale;cameraVelocityScale;lengthScale;start(){if(this.maxParticleSize!==.5&&this.minParticleSize!==0&&h()){let e=`ParticleSystem \"${this.name}\" has non-default min/max particle size. This may not render correctly. Please set min size to 0 and the max size to 0.5 and use the \"StartSize\" setting instead`;console.warn(e)}}get transparent(){return this.particleMaterial?.transparent??!1}getMaterial(e=!1){let r=e===!0&&this.trailMaterial?this.trailMaterial:this.particleMaterial;if(r){if(r.type===`MeshStandardMaterial`){Ie&&console.debug(`ParticleSystemRenderer.getMaterial: MeshStandardMaterial detected, converting to MeshBasicMaterial. See https://github.com/Alchemist0823/three.quarks/issues/101`),`map`in r&&r.map&&(r.map.colorSpace=t,r.map.premultiplyAlpha=!1);let i=new n;i.copy(r),e?this.trailMaterial=i:this.particleMaterial=i}r.map&&(r.map.colorSpace=t,r.map.premultiplyAlpha=!1),e&&r.side===0&&(r=r.clone(),r.side=1,e?this.trailMaterial=r:this.particleMaterial=r)}return r&&!Le&&r._didRequestTextureLOD===void 0&&(r._didRequestTextureLOD=0,Re&&console.log(`Load material LOD`,r.name),ae.assignTextureLOD(r,0)),r}getMesh(e){let t=null;if(!t&&(this.particleMesh instanceof i&&(t=this.particleMesh.geometry),t===null)){t=new u(1,1);let e=t.attributes.uv;for(let t=0;t<e.count;t++)e.setX(t,1-e.getX(t))}return new i(t,this.getMaterial())}};Z([_()],Q.prototype,`renderMode`,void 0),Z([_(c)],Q.prototype,`particleMaterial`,void 0),Z([_(c)],Q.prototype,`trailMaterial`,void 0),Z([_()],Q.prototype,`maxParticleSize`,void 0),Z([_()],Q.prototype,`minParticleSize`,void 0),Z([_()],Q.prototype,`velocityScale`,void 0),Z([_()],Q.prototype,`cameraVelocityScale`,void 0),Z([_()],Q.prototype,`lengthScale`,void 0);var Be=class{_curve;_factor;constructor(e,t=1){this._curve=e,this._factor=t}type=`function`;startGen(e){}genValue(e,t){return this._curve.evaluate(t,Math.random())*this._factor}toJSON(){throw Error(`Method not implemented.`)}clone(){throw Error(`Method not implemented.`)}},Ve=class{type=`value`;toJSON(){throw Error(`Method not implemented.`)}clone(){throw Error(`Method not implemented.`)}startGen(e){}system;constructor(e){this.system=e}},He=class extends Ve{genValue(){return this.system.textureSheetAnimation.getStartIndex()}},Ue=class extends Ve{_lastPosition=new e;_lastDistance=0;update(){let e=ee(this.system.gameObject);this._lastDistance=this._lastPosition.distanceTo(e),this._lastPosition.copy(e)}genValue(){if(!this.system.isPlaying||!this.system.emission.enabled||this.system.currentParticles>=this.system.maxParticles)return 0;let e=this.system.emission.rateOverTime.evaluate(this.system.time/this.system.duration,Math.random());if(this.system.deltaTime>0){let t=this.system.emission.rateOverDistance.evaluate(this.system.time/this.system.duration,Math.random()),n=this._lastDistance/this.system.deltaTime*t;Number.isFinite(n)||(n=0),e+=n}let t=this.system.emission.getBurst();t>0&&(e+=t/this.system.deltaTime);let n=this.system.maxParticles-this.system.currentParticles;return g.clamp(e,0,n/this.system.deltaTime)}},We=class extends Ve{genValue(){return this.system.isPlaying,0}},Ge=class{system;get context(){return this.system.context}constructor(e){this.type=Object.getPrototypeOf(this).constructor.name||`ParticleSystemBaseBehaviour`,e&&(this.system=e)}type;initialize(e){}update(e,t){}frameUpdate(e){}toJSON(){throw Error(`Method not implemented.`)}clone(){throw Error(`Method not implemented.`)}reset(){}},Ke=class extends Ge{type=`NeedleTextureSheet`;update(e,t){let n=this.system.textureSheetAnimation;if(n.enabled){let t=e.age/e.life,r=n.evaluate(t);r!==void 0&&(e.uvTile=r)}}},qe=Symbol(`particleRotation`),Je=class extends Ge{type=`NeedleRotation`;initialize(e){e[qe]=Math.random()}update(e,t){if(e.rotation===void 0)return;let n=e.age/e.life;if(typeof e.rotation==`number`&&(this.system.rotationOverLifetime.enabled?e.rotation+=this.system.rotationOverLifetime.evaluate(n,e[qe])*t:this.system.renderer.renderMode===k.Billboard&&(e.rotation=Math.PI),this.system.rotationBySpeed.enabled)){let r=e.velocity.length();e.rotation+=this.system.rotationBySpeed.evaluate(n,r)*t}}},Ye=Symbol(`sizeLerpFactor`),Xe=new e,Ze=class extends Ge{type=`NeedleSize`;_minSize=0;_maxSize=1;initialize(e){e[Ye]=Math.random(),this._minSize=this.system.renderer.minParticleSize,this._maxSize=this.system.renderer.maxParticleSize}update(e,t){let n=e.age/e.life,r=1;this.system.sizeOverLifetime.enabled&&(r*=this.system.sizeOverLifetime.evaluate(n,void 0,e[Ye]).x);let i=1;this.system.renderer.renderMode!==k.Mesh&&(i=this.system.worldScale.x/this.system.cameraScale);let a=x(e.startSize).multiplyScalar(r*i);if(e.size.set(a.x,a.y,a.z),this.system.localspace){let t=gt(this.system,Xe);e.size.x*=t.x,e.size.y*=t.y,e.size.z*=t.z}}},Qe=Symbol(`particleLife`),$e=Symbol(`trailLifetime`),et=Symbol(`trailStartLength`),tt=Symbol(`trailWidthRandom`),nt=class extends Ge{type=`NeedleTrail`;initialize(e){e instanceof fe&&(e[Qe]=e.life,this.system.trails.enabled&&this.system.trails.dieWithParticles===!1&&(e[$e]=this.system.trails.lifetime.evaluate(Math.random(),Math.random()),e.life+=e[$e]),e[et]=e.length,e[tt]=Math.random())}update(e){if(this.system.trails?.enabled&&e instanceof fe){let t=e,n=e.age/e[Qe],r=e.previous.values(),i=e.previous.length;for(let a=0;a<i;a++){let o=r.next().value,s=1-a/(i-1),c=e.size;if(c.x<=0&&!this.system.trails.sizeAffectsWidth){let e=20*this.system.trails.widthOverTrail.evaluate(.5,t[tt]);c.x=e,c.y=e,c.z=e}o.size=this.system.trails.getWidth(c.x,n,s,t[tt]),o.color.copy(e.color),this.system.trails.getColor(o.color,n,s)}if(e.age>e[Qe]){e.velocity.set(0,0,0);let n=(e.age-e[Qe])/e[$e];t.length=g.lerp(e[et],0,n)}}}},rt=Symbol(`startVelocity`),it=Symbol(`gravityModifier`),at=Symbol(`gravitySpeed`),ot=Symbol(`velocity lerp factor`),st=new e;new d;var ct=class extends Ge{type=`NeedleVelocity`;_gravityDirection=new e;initialize(e){let t=this.system.main.simulationSpeed;e.startSpeed=this.system.main.startSpeed.evaluate(Math.random(),Math.random());let n=this.system.shape.getDirection(e,e.position);e.velocity.x=n.x*e.startSpeed,e.velocity.y=n.y*e.startSpeed,e.velocity.z=n.z*e.startSpeed,this.system.inheritVelocity?.enabled&&this.system.inheritVelocity.applyInitial(e.velocity),e[rt]?e[rt].copy(e.velocity):e[rt]=e.velocity.clone();let r=this.system.main.gravityModifier.evaluate(Math.random(),Math.random());e[it]=r*t,e[at]=r*t*.5,e[ot]=Math.random(),this.system.velocityOverLifetime?.init(e),this._gravityDirection.set(0,-1,0),this.system.main.simulationSpace===N.Local&&this._gravityDirection.applyQuaternion(this.system.worldQuaternionInverted).normalize()}update(e,t){let n=e[rt],r=e[it];if(r!==0){let i=r*e[at];st.copy(this._gravityDirection).multiplyScalar(i),e[at]+=t*.05,n.add(st)}e.velocity.copy(n);let i=e.age/e.life;this.system.inheritVelocity?.enabled&&this.system.inheritVelocity.applyCurrent(e.velocity,i,e[ot]);let a=this.system.noise;a.enabled&&a.apply(0,e.position,e.velocity,t,e.age,e.life);let o=this.system.sizeBySpeed;o?.enabled&&(e.size=o.evaluate(e.velocity,i,e[ot],e.size));let s=this.system.colorBySpeed;s?.enabled&&s.evaluate(e.velocity,e[ot],e.color);let c=this.system.velocityOverLifetime;c.enabled&&c.apply(e,0,e.position,e.velocity,t,e.age,e.life);let l=this.system.limitVelocityOverLifetime;if(l.enabled&&l.apply(e.position,n,e.velocity,e.size,i,t,1),this.system.worldspace){let t=this.system.worldScale;e.velocity.x*=t.x,e.velocity.y*=t.y,e.velocity.z*=t.z}}},lt=Symbol(`colorLerpFactor`),ut=new y(1,1,1,1),dt=new y(1,1,1,1),ft=class extends Ge{type=`NeedleColor`;initialize(e){}_init(e){let t=this.system.renderer.particleMaterial;dt.copy(this.system.main.startColor.evaluate(Math.random())),t?.color&&(ut.copy(t.color),dt.multiply(ut)),dt.convertLinearToSRGB(),e.startColor.set(dt.r,dt.g,dt.b,dt.alpha),e.color.copy(e.startColor),e[lt]=Math.random()}update(e,t){if(e.age===0&&this._init(e),this.system.colorOverLifetime.enabled){let t=e.age/e.life,n=this.system.colorOverLifetime.color.evaluate(t,e[lt]);e.color.set(n.r,n.g,n.b,`alpha`in n?n.alpha:1).multiply(e.startColor)}else e.color.copy(e.startColor)}},pt=class{system;emission;get anim(){return this.system.textureSheetAnimation}constructor(e){this.system=e,this.emission=new Ue(this.system)}get prewarm(){return!1}get material(){return this.system.renderer.getMaterial(this.system.trails.enabled)}get layers(){return this.system.gameObject.layers}update(){this.emission.update()}autoDestroy;get looping(){return this.system.main.loop}get duration(){return this.system.duration}get shape(){return this.system.shape}get startLife(){return new Be(this.system.main.startLifetime)}get startSpeed(){return new Be(this.system.main.startSpeed)}get startRotation(){return new Be(this.system.main.startRotation)}get startSize(){return new Be(this.system.main.startSize)}startLength;get startColor(){return new le(new ce(1,1,1,1))}get emissionOverTime(){return this.emission}get emissionOverDistance(){return new We(this.system)}emissionBursts;onlyUsedByOther;behaviors=[];get instancingGeometry(){return this.system.renderer.getMesh(this.system.renderer.renderMode).geometry}get renderMode(){if(this.system.trails.enabled===!0)return w.Trail;switch(this.system.renderer.renderMode){case k.Billboard:return w.BillBoard;case k.Stretch:return w.StretchedBillBoard;case k.HorizontalBillboard:return w.HorizontalBillBoard;case k.VerticalBillboard:return w.VerticalBillBoard;case k.Mesh:return w.Mesh}return w.BillBoard}rendererEmitterSettings={startLength:new se(220),followLocalOrigin:!1};get speedFactor(){let e=this.system.main.simulationSpeed;return this.system.renderer?.renderMode===k.Stretch&&(e*=this.system.renderer.velocityScale??1),e}flatWhiteTexture;clonedTexture={original:void 0,clone:void 0};get texture(){let e=this.material;if(e&&e.map){let n=e.map;if(this.clonedTexture.original!==n||!this.clonedTexture.clone){let e=n.clone();e.premultiplyAlpha=!1,e.colorSpace=t,this.clonedTexture.original=n,this.clonedTexture.clone=e}return this.clonedTexture.clone}return this.flatWhiteTexture||=v(new y(1,1,1,1),1),this.flatWhiteTexture}get startTileIndex(){return new He(this.system)}get uTileCount(){return this.anim.enabled?this.anim?.numTilesX:void 0}get vTileCount(){return this.anim.enabled?this.anim?.numTilesY:void 0}get renderOrder(){return 1}get blending(){return this.system.renderer.particleMaterial?.blending??1}get transparent(){return this.system.renderer.transparent}get worldSpace(){return this.system.main.simulationSpace===N.World}},mt=class{burstParticleIndex=0;burstParticleCount=0;isBursting=!1;travelDistance=0;previousWorldPos;burstIndex=0;burstWaveIndex=0;time=0;waitEmiting=0},$=class t extends b{play(e=!1){e&&re.foreachComponent(this.gameObject,e=>{e instanceof t&&e!==this&&e.play(!1)},!0),this._isPlaying=!0,this._particleSystem&&(this._particleSystem.emissionState.time=0,this._particleSystem.emitEnded=!1),this.emission?.reset()}pause(e=!0){e&&re.foreachComponent(this.gameObject,e=>{e instanceof t&&e!==this&&e.pause(!1)},!0),this._isPlaying=!1}stop(e=!0,n=!1){e&&re.foreachComponent(this.gameObject,e=>{e instanceof t&&e!==this&&e.stop(!1,n)},!0),this._isPlaying=!1,this._time=0,n&&this.reset()}reset(){this._time=0,this._particleSystem&&(this._particleSystem.particleNum=0,this._particleSystem.emissionState.time=0,this._particleSystem.emitEnded=!1,this.emission?.reset())}_state;emit(e){if(this._particleSystem){this.onUpdate(),e=Math.min(e,this.maxParticles-this.currentParticles),this._state||=new mt,this._state.waitEmiting=e,this._state.time=0;let t=this._particleSystem.emitEnded;this._particleSystem.emitEnded=!1,this._particleSystem.emit(this.deltaTime,this._state,this._particleSystem.emitter.matrixWorld),this._particleSystem.emitEnded=t}}get playOnAwake(){return this.main.playOnAwake}set playOnAwake(e){this.main.playOnAwake=e}colorOverLifetime;main;emission;sizeOverLifetime;shape;noise;trails;velocityOverLifetime;limitVelocityOverLifetime;inheritVelocity;colorBySpeed;textureSheetAnimation;rotationOverLifetime;rotationBySpeed;sizeBySpeed;get renderer(){return this._renderer}get isPlaying(){return this._isPlaying}get currentParticles(){return this._particleSystem?.particleNum??0}get maxParticles(){return this.main.maxParticles}get time(){return this._time}get duration(){return this.main.duration}get deltaTime(){return this.context.time.deltaTime*this.main.simulationSpeed}get scale(){return this.gameObject.scale.x}get cameraScale(){return this._cameraScale}_cameraScale=1;get container(){return this._container}get worldspace(){return this.main.simulationSpace===N.World}get localspace(){return this.main.simulationSpace===N.Local}__worldQuaternion=new d;get worldQuaternion(){return this.__worldQuaternion}_worldQuaternionInverted=new d;get worldQuaternionInverted(){return this._worldQuaternionInverted}_worldScale=new e;get worldScale(){return this._worldScale}_worldPositionFrame=-1;_worldPos=new e;get worldPos(){return this._worldPositionFrame!==this.context.time.frame&&(this._worldPositionFrame=this.context.time.frame,ee(this.gameObject,this._worldPos)),this._worldPos}get matrixWorld(){return this._container.matrixWorld}get isSubsystem(){return this._isUsedAsSubsystem}addBehaviour(e){return this._particleSystem?(e instanceof Ge&&(e.system=this),Ie&&console.debug(`Add custom ParticleSystem Behaviour`,e),this._particleSystem.addBehavior(e),!0):!1}removeBehaviour(e){if(!this._particleSystem)return!1;let t=this._particleSystem.behaviors,n=t.indexOf(e);return n===-1?!0:((h()||Ie)&&console.debug(`Remove custom ParticleSystem Behaviour`,n,e),t.splice(n,1),!0)}removeAllBehaviours(){return this._particleSystem?(this._particleSystem.behaviors.length=0,!0):!1}get behaviours(){return this._particleSystem?this._particleSystem.behaviors:null}get particleSystem(){return this._particleSystem??null}_renderer;_batchSystem;_particleSystem;_interface;_container;_time=0;_isPlaying=!0;_isUsedAsSubsystem=!1;_didPreWarm=!1;set bursts(e){for(let t=0;t<e.length;t++){let n=e[t];if(!(n instanceof we)){let r=new we;m(r,n),e[t]=r}}this._bursts=e}_bursts;set subEmitterSystems(e){for(let t=0;t<e.length;t++){let n=e[t];if(!(n instanceof ht)){let r=new ht;m(r,n),e[t]=r}}Ie&&e.length>0&&console.log(`SubEmitters: `,e,this),this._subEmitterSystems=e}_subEmitterSystems;onAfterDeserialize(e){if(this._subEmitterSystems&&Array.isArray(this._subEmitterSystems))for(let e of this._subEmitterSystems)e._deserialize(this.context,this.gameObject)}awake(){if(this._worldPositionFrame=-1,this._renderer=this.gameObject.getComponent(Q),!this.main)throw Error(`Not Supported: ParticleSystem needs a serialized MainModule. Creating new particle systems at runtime is currently not supported.`);this._container=new o,this._container.matrixAutoUpdate=!1,this.context.scene.add(this._container),this._batchSystem=new pe,this._batchSystem.name=this.gameObject.name,this._container.add(this._batchSystem),this._interface=new pt(this),this._particleSystem=new ue(this._interface),this._particleSystem.addBehavior(new Ze(this)),this._particleSystem.addBehavior(new ft(this)),this._particleSystem.addBehavior(new Ke(this)),this._particleSystem.addBehavior(new Je(this)),this._particleSystem.addBehavior(new ct(this)),this._particleSystem.addBehavior(new nt(this)),this._batchSystem.addSystem(this._particleSystem);let e=this._particleSystem.emitter;this.context.scene.add(e),this.inheritVelocity.system&&this.inheritVelocity.system!==this&&(this.inheritVelocity=this.inheritVelocity.clone()),this.inheritVelocity.awake(this),Ie&&(console.log(this),this.gameObject.add(new a(1)))}start(){this.addSubParticleSystems(),this.updateLayers(),this.renderer.particleMesh instanceof i&&this._interface.renderMode==w.Mesh&&ae.assignMeshLOD(this.renderer.particleMesh,0).then(e=>{e&&this.particleSystem&&this._interface.renderMode==w.Mesh&&(this.particleSystem.instancingGeometry=e)})}onDestroy(){this._container?.removeFromParent(),this._batchSystem?.removeFromParent(),this._particleSystem?.emitter.removeFromParent(),this._particleSystem?.dispose()}onEnable(){this.main&&(this.inheritVelocity&&(this.inheritVelocity.system=this),this._batchSystem&&(this._batchSystem.visible=!0),this.playOnAwake&&this.play(),this._isPlaying=this.playOnAwake)}onDisable(){this._batchSystem&&(this._batchSystem.visible=!1)}onBeforeRender(){this.main&&(this._didPreWarm===!1&&this.main?.prewarm===!0&&(this._didPreWarm=!0,this.preWarm()),this.onUpdate(),this.onSimulate(this.deltaTime))}preWarm(){if(!this.emission?.enabled||this.emission.rateOverTime.getMax()<=0)return;let e=1/60,t=this.main.duration,n=this.main.startLifetime.getMax(),r=Math.min(Math.max(t,n)/Math.max(.01,this.main.simulationSpeed),1e3),i=Math.ceil(r/e),a=Date.now();Ie&&console.log(`Particles ${this.name} - Prewarm for ${i} frames (${r} sec). Duration: ${t}, Lifetime: ${n}`);for(let t=0;t<i&&!(this.currentParticles>=this.maxParticles);t++){let t=Date.now()-a;if(t>2e3){console.warn(`Particles ${this.name} - Prewarm took too long. Aborting: ${t}`);break}this.onUpdate(),this.onSimulate(e)}}_lastBatchesCount=-1;onSimulate(e){if(this._batchSystem){let t=this.context.time.frameCount%60==0;this._lastBatchesCount!==this._batchSystem.batches.length&&(this._lastBatchesCount=this._batchSystem.batches.length,t=!0),t&&this.updateLayers(),this._batchSystem.update(e)}this._time+=e,this._time>this.duration&&(this._time=0)}updateLayers(){if(this._batchSystem)for(let e=0;e<this._batchSystem.batches.length;e++){let t=this._batchSystem.batches[e];t.layers.disableAll();let n=this.layer;t.layers.mask=1<<n}}onUpdate(){if(this._bursts&&(this.emission.bursts=this._bursts,delete this._bursts),!this._isPlaying)return;let e=this.context.mainCamera;e&&(this._cameraScale=te(e).x);let t=!this.worldspace,n=this.gameObject;if(ie(n,this.__worldQuaternion),this._worldQuaternionInverted.copy(this.__worldQuaternion).invert(),te(this.gameObject,this._worldScale),t&&this._container&&this.gameObject?.parent){let e=gt(this,st);this._container.matrix.makeScale(e.x,e.y,e.z),this._container.matrix.makeRotationFromQuaternion(this.__worldQuaternion),this._container.matrix.setPosition(this.worldPos),this._container.matrix.scale(this.gameObject.scale)}this.emission.system=this,this._interface.update(),this.shape.onUpdate(this,this.context,this.main.simulationSpace,this.gameObject),this.noise.update(this.context),this.inheritVelocity?.update(this.context),this.velocityOverLifetime.update(this)}addSubParticleSystems(){if(this._subEmitterSystems&&this._particleSystem)for(let e of this._subEmitterSystems){e.particleSystem&&(e.particleSystem.__internalAwake?e.particleSystem.__internalAwake():h()&&console.warn(`SubParticleSystem serialization issue(?)`,e.particleSystem,e));let t=e.particleSystem?._particleSystem;if(t){e.particleSystem._isUsedAsSubsystem=!0;let n=new Fe(this,this._particleSystem,e.particleSystem,t);n.emitterType=e.type,n.emitterProbability=e.emitProbability,this._particleSystem.addBehavior(n)}else Ie&&console.warn(`Could not add SubParticleSystem`,e,this)}}};Z([_(Te)],$.prototype,`colorOverLifetime`,void 0),Z([_(R)],$.prototype,`main`,void 0),Z([_(z)],$.prototype,`emission`,void 0),Z([_(B)],$.prototype,`sizeOverLifetime`,void 0),Z([_(H)],$.prototype,`shape`,void 0),Z([_(U)],$.prototype,`noise`,void 0),Z([_(W)],$.prototype,`trails`,void 0),Z([_(G)],$.prototype,`velocityOverLifetime`,void 0),Z([_(Y)],$.prototype,`limitVelocityOverLifetime`,void 0),Z([_(Ne)],$.prototype,`inheritVelocity`,void 0),Z([_(Pe)],$.prototype,`colorBySpeed`,void 0),Z([_(K)],$.prototype,`textureSheetAnimation`,void 0),Z([_(q)],$.prototype,`rotationOverLifetime`,void 0),Z([_(J)],$.prototype,`rotationBySpeed`,void 0),Z([_(X)],$.prototype,`sizeBySpeed`,void 0);var ht=class{particleSystem;emitProbability=1;properties;type;_deserialize(e,t){let n=this.particleSystem;if(n instanceof $)return;let r=``;n&&typeof n.guid==`string`&&(r=n.guid,this.particleSystem=re.findByGuid(r,t)),Ie&&!(this.particleSystem instanceof $)&&console.warn(`Could not find particle system for sub emitter`,r,t,this)}};function gt(e,t){if(t.set(1,1,1),e.gameObject.parent&&e.localspace)switch(e.main.scalingMode){case Ce.Local:t=te(e.gameObject.parent,t),t.x=1/t.x,t.y=1/t.y,t.z=1/t.z;break;default:if(!e.unsupported_scaling_mode){e.unsupported_scaling_mode=!0;let t=`ParticleSystem scale mode `+Ce[e.main.scalingMode]+` is not supported`;h()&&S(t),console.warn(t,e.name,e)}t=te(e.gameObject,t);break}return t}export{K as C,D,xe as E,B as S,G as T,P as _,Fe as a,H as b,z as c,Y as d,R as f,we as g,U as h,ht as i,A as l,L as m,Ge as n,Pe as o,I as p,Q as r,Te as s,$ as t,Ne as u,J as v,W as w,X as x,q as y}; |