15 lines
143 KiB
JavaScript
15 lines
143 KiB
JavaScript
/* empty css */import"./vue.f6263579.js";import{Z as V,C as c,q as ut,u as zt,j as za,l as Ce,bv as kt,t as w,a8 as l,aa as F,ay as Bt,ar as Qe,aE as h,a0 as B,aK as be,a1 as d,O as j,aG as dt,A as he,_ as O,b6 as M,b8 as Ot,bs as Oa,aq as He,bu as it,bb as oa,T as Fa,a7 as f,b1 as Ne,G as $,w as ve,b2 as Et,aN as ie,I as Be,$ as T,aL as Mt,aJ as la,J as G,aH as ke,aF as Me,z as Te,br as xa,au as Ga,al as Wt,aC as Ua,bc as gt,ao as La,bn as Ja,be as Ya}from"./@vue.4ce677c2.js";import{c as Aa}from"./nanoevents.1080beb7.js";import{L as Se}from"./lz-string.f2f3b7cf.js";import{s as Wa,u as ua}from"./vue-toastification.b7cd620e.js";import{D as Xa}from"./vuedraggable.c3acdf62.js";import{Y as ja}from"./vue-next-select.0dc4e443.js";import{p as Ka}from"./vue-textarea-autosize.35804eaf.js";import{A as ca,T as Ha,R as Za,B as $a,u as en,E as Xt}from"./@pixi.1eac1889.js";import{s as tn}from"./semver.83ff78cf.js";import{l as an}from"./socket.io-client.79ce0df5.js";import{v as nn,n as sn}from"./workbox-window.8d14e8b7.js";import"./earcut.b6f90e68.js";import"./sortablejs.cbae5b2d.js";import"./ismobilejs.5c6954b9.js";import"./eventemitter3.dc5195d7.js";import"./url.e51cb87b.js";import"./querystring.23ae9a54.js";import"./lru-cache.9a21e90b.js";import"./yallist.fd762fe7.js";import"./engine.io-client.58517560.js";import"./engine.io-parser.3f360695.js";import"./@socket.io.aec831e2.js";import"./socket.io-parser.544e37d1.js";const rn=function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))n(s);new MutationObserver(s=>{for(const i of s)if(i.type==="childList")for(const r of i.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&n(r)}).observe(document,{childList:!0,subtree:!0});function a(s){const i={};return s.integrity&&(i.integrity=s.integrity),s.referrerpolicy&&(i.referrerPolicy=s.referrerpolicy),s.crossorigin==="use-credentials"?i.credentials="include":s.crossorigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function n(s){if(s.ep)return;s.ep=!0;const i=a(s);fetch(s.href,i)}};rn();const on="modulepreload",jt={},ln="./",pt=function(t,a){return!a||a.length===0?t():Promise.all(a.map(n=>{if(n=`${ln}${n}`,n in jt)return;jt[n]=!0;const s=n.endsWith(".css"),i=s?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${n}"]${i}`))return;const r=document.createElement("link");if(r.rel=s?"stylesheet":on,s||(r.as="script",r.crossOrigin=""),r.href=n,document.head.appendChild(r),s)return new Promise((o,u)=>{r.addEventListener("load",o),r.addEventListener("error",()=>u(new Error(`Unable to preload CSS for ${n}`)))})})).then(()=>t())},An="./projInfo-schema.json",un="Super Auto Coots",cn="A project made in Profectus",dn="superautocoots",gn="thepaperpilot and crea",mn="",fn="",hn="0.0.0",vn="Initial Commit",pn=!1,yn=!1,bn=2,Cn=!0,Nn=null,Bn="",En=["main"],wn=3600,_n=1,In=!0,Sn="base64";var U={$schema:An,title:un,description:cn,id:dn,author:gn,discordName:mn,discordLink:fn,versionNumber:hn,versionTitle:vn,allowGoBack:pn,defaultShowSmall:yn,defaultDecimalsShown:bn,useHeader:Cn,banner:Nn,logo:Bn,initialTabs:En,maxTickLength:wn,offlineLimit:_n,enablePausing:In,exportEncoding:Sn};class Qn{constructor(t){this.map=new Map,this.first=void 0,this.last=void 0,this.maxSize=t}get size(){return this.map.size}get(t){const a=this.map.get(t);if(a!==void 0)return a!==this.first&&(a===this.last?(this.last=a.prev,this.last.next=void 0):(a.prev.next=a.next,a.next.prev=a.prev),a.next=this.first,this.first.prev=a,this.first=a),a.value}set(t,a){if(this.maxSize<1)return;if(this.map.has(t))throw new Error("Cannot update existing keys in the cache");const n=new Tn(t,a);for(this.first===void 0?(this.first=n,this.last=n):(n.next=this.first,this.first.prev=n,this.first=n),this.map.set(t,n);this.map.size>this.maxSize;){const s=this.last;this.map.delete(s.key),this.last=s.prev,this.last.next=void 0}}}class Tn{constructor(t,a){this.next=void 0,this.prev=void 0,this.key=t,this.value=a}}const Qt=17,kn=9e15,Mn=Math.log10(9e15),Dn=1/9e15,Rn=308,Vn=-324,Kt=5,Pn=(1<<10)-1,qn=function(){const e=[];for(let a=Vn+1;a<=Rn;a++)e.push(Number("1e"+a));const t=323;return function(a){return e[a+t]}}(),Ve=[2,Math.E,3,4,5,6,7,8,9,10],zn=[[1,1.0891180521811203,1.1789767925673957,1.2701455431742086,1.3632090180450092,1.4587818160364217,1.5575237916251419,1.6601571006859253,1.767485818836978,1.8804192098842727,2],[1,1.1121114330934079,1.231038924931609,1.3583836963111375,1.4960519303993531,1.6463542337511945,1.8121385357018724,1.996971324618307,2.2053895545527546,2.4432574483385254,Math.E],[1,1.1187738849693603,1.2464963939368214,1.38527004705667,1.5376664685821402,1.7068895236551784,1.897001227148399,2.1132403089001035,2.362480153784171,2.6539010333870774,3],[1,1.1367350847096405,1.2889510672956703,1.4606478703324786,1.6570295196661111,1.8850062585672889,2.1539465047453485,2.476829779693097,2.872061932789197,3.3664204535587183,4],[1,1.1494592900767588,1.319708228183931,1.5166291280087583,1.748171114438024,2.0253263297298045,2.3636668498288547,2.7858359149579424,3.3257226212448145,4.035730287722532,5],[1,1.159225940787673,1.343712473580932,1.5611293155111927,1.8221199554561318,2.14183924486326,2.542468319282638,3.0574682501653316,3.7390572020926873,4.6719550537360774,6],[1,1.1670905356972596,1.3632807444991446,1.5979222279405536,1.8842640123816674,2.2416069644878687,2.69893426559423,3.3012632110403577,4.121250340630164,5.281493033448316,7],[1,1.1736630594087796,1.379783782386201,1.6292821855668218,1.9378971836180754,2.3289975651071977,2.8384347394720835,3.5232708454565906,4.478242031114584,5.868592169644505,8],[1,1.1793017514670474,1.394054150657457,1.65664127441059,1.985170999970283,2.4069682290577457,2.9647310119960752,3.7278665320924946,4.814462547283592,6.436522247411611,9],[1,1.1840100246247336,1.4061375836156955,1.6802272208863964,2.026757028388619,2.4770056063449646,3.080525271755482,3.9191964192627284,5.135152840833187,6.989961179534715,10]],On=[[-1,-.9194161097107025,-.8335625019330468,-.7425599821143978,-.6466611521029437,-.5462617907227869,-.4419033816638769,-.3342645487554494,-.224140440909962,-.11241087890006762,0],[-1,-.90603157029014,-.80786507256596,-.7064666939634,-.60294836853664,-.49849837513117,-.39430303318768,-.29147201034755,-.19097820800866,-.09361896280296,0],[-1,-.9021579584316141,-.8005762598234203,-.6964780623319391,-.5911906810998454,-.486050182576545,-.3823089430815083,-.28106046722897615,-.1831906535795894,-.08935809204418144,0],[-1,-.8917227442365535,-.781258746326964,-.6705130326902455,-.5612813129406509,-.4551067709033134,-.35319256652135966,-.2563741554088552,-.1651412821106526,-.0796919581982668,0],[-1,-.8843387974366064,-.7678744063886243,-.6529563724510552,-.5415870994657841,-.4352842206588936,-.33504449124791424,-.24138853420685147,-.15445285440944467,-.07409659641336663,0],[-1,-.8786709358426346,-.7577735191184886,-.6399546189952064,-.527284921869926,-.4211627631006314,-.3223479611761232,-.23107655627789858,-.1472057700818259,-.07035171210706326,0],[-1,-.8740862815291583,-.7497032990976209,-.6297119746181752,-.5161838335958787,-.41036238255751956,-.31277212146489963,-.2233976621705518,-.1418697367979619,-.06762117662323441,0],[-1,-.8702632331800649,-.7430366914122081,-.6213373075161548,-.5072025698095242,-.40171437727184167,-.30517930701410456,-.21736343968190863,-.137710238299109,-.06550774483471955,0],[-1,-.8670016295947213,-.7373984232432306,-.6143173985094293,-.49973884395492807,-.394584953527678,-.2989649949848695,-.21245647317021688,-.13434688362382652,-.0638072667348083,0],[-1,-.8641642839543857,-.732534623168535,-.6083127477059322,-.4934049257184696,-.3885773075899922,-.29376029055315767,-.2083678561173622,-.13155653399373268,-.062401588652553186,0]];let g=function(t){return E.fromValue_noAlloc(t)},k=function(e,t,a){return E.fromComponents(e,t,a)},R=function(t,a,n){return E.fromComponents_noNormalize(t,a,n)};const _e=function(t,a){const n=a+1,s=Math.ceil(Math.log10(Math.abs(t))),i=Math.round(t*Math.pow(10,n-s))*Math.pow(10,s-n);return parseFloat(i.toFixed(Math.max(n-s,0)))},Tt=function(e){return Math.sign(e)*Math.log10(Math.abs(e))},Fn=function(e){if(!isFinite(e))return e;if(e<-50)return e===Math.trunc(e)?Number.NEGATIVE_INFINITY:0;let t=1;for(;e<10;)t=t*e,++e;e-=1;let a=.9189385332046727;a=a+(e+.5)*Math.log(e),a=a-e;const n=e*e;let s=e;return a=a+1/(12*s),s=s*n,a=a+1/(360*s),s=s*n,a=a+1/(1260*s),s=s*n,a=a+1/(1680*s),s=s*n,a=a+1/(1188*s),s=s*n,a=a+691/(360360*s),s=s*n,a=a+7/(1092*s),s=s*n,a=a+3617/(122400*s),Math.exp(a)/t},da=.5671432904097838,Ht=function(e,t=1e-10){let a,n;if(!Number.isFinite(e)||e===0)return e;if(e===1)return da;e<10?a=0:a=Math.log(e)-Math.log(Math.log(e));for(let s=0;s<100;++s){if(n=(e*Math.exp(-a)+a*a)/(a+1),Math.abs(n-a)<t*Math.abs(n))return n;a=n}throw Error(`Iteration failed to converge: ${e.toString()}`)};function Zt(e,t=1e-10){let a,n,s,i;if(!Number.isFinite(e.mag)||e.eq(E.dZero))return e;if(e.eq(E.dOne))return E.fromNumber(da);a=E.ln(e);for(let r=0;r<100;++r){if(n=a.neg().exp(),s=a.sub(e.mul(n)),i=a.sub(s.div(a.add(1).sub(a.add(2).mul(s).div(E.mul(2,a).add(2))))),E.abs(i.sub(a)).lt(E.abs(i).mul(t)))return i;a=i}throw Error(`Iteration failed to converge: ${e.toString()}`)}const A=class{constructor(e){this.sign=0,this.mag=0,this.layer=0,e instanceof A?this.fromDecimal(e):typeof e=="number"?this.fromNumber(e):typeof e=="string"&&this.fromString(e)}get m(){if(this.sign===0)return 0;if(this.layer===0){const e=Math.floor(Math.log10(this.mag));let t;return this.mag===5e-324?t=5:t=this.mag/qn(e),this.sign*t}else if(this.layer===1){const e=this.mag-Math.floor(this.mag);return this.sign*Math.pow(10,e)}else return this.sign}set m(e){this.layer<=2?this.fromMantissaExponent(e,this.e):(this.sign=Math.sign(e),this.sign===0&&(this.layer=0,this.exponent=0))}get e(){return this.sign===0?0:this.layer===0?Math.floor(Math.log10(this.mag)):this.layer===1?Math.floor(this.mag):this.layer===2?Math.floor(Math.sign(this.mag)*Math.pow(10,Math.abs(this.mag))):this.mag*Number.POSITIVE_INFINITY}set e(e){this.fromMantissaExponent(this.m,e)}get s(){return this.sign}set s(e){e===0?(this.sign=0,this.layer=0,this.mag=0):this.sign=e}get mantissa(){return this.m}set mantissa(e){this.m=e}get exponent(){return this.e}set exponent(e){this.e=e}static fromComponents(e,t,a){return new A().fromComponents(e,t,a)}static fromComponents_noNormalize(e,t,a){return new A().fromComponents_noNormalize(e,t,a)}static fromMantissaExponent(e,t){return new A().fromMantissaExponent(e,t)}static fromMantissaExponent_noNormalize(e,t){return new A().fromMantissaExponent_noNormalize(e,t)}static fromDecimal(e){return new A().fromDecimal(e)}static fromNumber(e){return new A().fromNumber(e)}static fromString(e){return new A().fromString(e)}static fromValue(e){return new A().fromValue(e)}static fromValue_noAlloc(e){if(e instanceof A)return e;if(typeof e=="string"){const t=A.fromStringCache.get(e);return t!==void 0?t:A.fromString(e)}else return typeof e=="number"?A.fromNumber(e):A.dZero}static abs(e){return g(e).abs()}static neg(e){return g(e).neg()}static negate(e){return g(e).neg()}static negated(e){return g(e).neg()}static sign(e){return g(e).sign}static sgn(e){return g(e).sign}static round(e){return g(e).round()}static floor(e){return g(e).floor()}static ceil(e){return g(e).ceil()}static trunc(e){return g(e).trunc()}static add(e,t){return g(e).add(t)}static plus(e,t){return g(e).add(t)}static sub(e,t){return g(e).sub(t)}static subtract(e,t){return g(e).sub(t)}static minus(e,t){return g(e).sub(t)}static mul(e,t){return g(e).mul(t)}static multiply(e,t){return g(e).mul(t)}static times(e,t){return g(e).mul(t)}static div(e,t){return g(e).div(t)}static divide(e,t){return g(e).div(t)}static recip(e){return g(e).recip()}static reciprocal(e){return g(e).recip()}static reciprocate(e){return g(e).reciprocate()}static cmp(e,t){return g(e).cmp(t)}static cmpabs(e,t){return g(e).cmpabs(t)}static compare(e,t){return g(e).cmp(t)}static isNaN(e){return e=g(e),isNaN(e.sign)||isNaN(e.layer)||isNaN(e.mag)}static isFinite(e){return e=g(e),isFinite(e.sign)&&isFinite(e.layer)&&isFinite(e.mag)}static eq(e,t){return g(e).eq(t)}static equals(e,t){return g(e).eq(t)}static neq(e,t){return g(e).neq(t)}static notEquals(e,t){return g(e).notEquals(t)}static lt(e,t){return g(e).lt(t)}static lte(e,t){return g(e).lte(t)}static gt(e,t){return g(e).gt(t)}static gte(e,t){return g(e).gte(t)}static max(e,t){return g(e).max(t)}static min(e,t){return g(e).min(t)}static minabs(e,t){return g(e).minabs(t)}static maxabs(e,t){return g(e).maxabs(t)}static clamp(e,t,a){return g(e).clamp(t,a)}static clampMin(e,t){return g(e).clampMin(t)}static clampMax(e,t){return g(e).clampMax(t)}static cmp_tolerance(e,t,a){return g(e).cmp_tolerance(t,a)}static compare_tolerance(e,t,a){return g(e).cmp_tolerance(t,a)}static eq_tolerance(e,t,a){return g(e).eq_tolerance(t,a)}static equals_tolerance(e,t,a){return g(e).eq_tolerance(t,a)}static neq_tolerance(e,t,a){return g(e).neq_tolerance(t,a)}static notEquals_tolerance(e,t,a){return g(e).notEquals_tolerance(t,a)}static lt_tolerance(e,t,a){return g(e).lt_tolerance(t,a)}static lte_tolerance(e,t,a){return g(e).lte_tolerance(t,a)}static gt_tolerance(e,t,a){return g(e).gt_tolerance(t,a)}static gte_tolerance(e,t,a){return g(e).gte_tolerance(t,a)}static pLog10(e){return g(e).pLog10()}static absLog10(e){return g(e).absLog10()}static log10(e){return g(e).log10()}static log(e,t){return g(e).log(t)}static log2(e){return g(e).log2()}static ln(e){return g(e).ln()}static logarithm(e,t){return g(e).logarithm(t)}static pow(e,t){return g(e).pow(t)}static pow10(e){return g(e).pow10()}static pow_base(e,t){return g(e).pow_base(t)}static root(e,t){return g(e).root(t)}static factorial(e,t){return g(e).factorial()}static gamma(e,t){return g(e).gamma()}static lngamma(e,t){return g(e).lngamma()}static exp(e){return g(e).exp()}static sqr(e){return g(e).sqr()}static sqrt(e){return g(e).sqrt()}static cube(e){return g(e).cube()}static cbrt(e){return g(e).cbrt()}static tetrate(e,t=2,a=R(1,0,1)){return g(e).tetrate(t,a)}static iteratedexp(e,t=2,a=R(1,0,1)){return g(e).iteratedexp(t,a)}static iteratedlog(e,t=10,a=1){return g(e).iteratedlog(t,a)}static layeradd10(e,t){return g(e).layeradd10(t)}static layeradd(e,t,a=10){return g(e).layeradd(t,a)}static slog(e,t=10){return g(e).slog(t)}static lambertw(e){return g(e).lambertw()}static ssqrt(e){return g(e).ssqrt()}static pentate(e,t=2,a=R(1,0,1)){return g(e).pentate(t,a)}static sin(e){return g(e).sin()}static cos(e){return g(e).cos()}static tan(e){return g(e).tan()}static asin(e){return g(e).asin()}static acos(e){return g(e).acos()}static atan(e){return g(e).atan()}static sinh(e){return g(e).sinh()}static cosh(e){return g(e).cosh()}static tanh(e){return g(e).tanh()}static asinh(e){return g(e).asinh()}static acosh(e){return g(e).acosh()}static atanh(e){return g(e).atanh()}static affordGeometricSeries(e,t,a,n){return this.affordGeometricSeries_core(g(e),g(t),g(a),n)}static sumGeometricSeries(e,t,a,n){return this.sumGeometricSeries_core(e,g(t),g(a),n)}static affordArithmeticSeries(e,t,a,n){return this.affordArithmeticSeries_core(g(e),g(t),g(a),g(n))}static sumArithmeticSeries(e,t,a,n){return this.sumArithmeticSeries_core(g(e),g(t),g(a),g(n))}static efficiencyOfPurchase(e,t,a){return this.efficiencyOfPurchase_core(g(e),g(t),g(a))}static randomDecimalForTesting(e){if(Math.random()*20<1)return R(0,0,0);const t=Math.random()>.5?1:-1;if(Math.random()*20<1)return R(t,0,1);const a=Math.floor(Math.random()*(e+1));let n=a===0?Math.random()*616-308:Math.random()*16;Math.random()>.9&&(n=Math.trunc(n));let s=Math.pow(10,n);return Math.random()>.9&&(s=Math.trunc(s)),k(t,a,s)}static affordGeometricSeries_core(e,t,a,n){const s=t.mul(a.pow(n));return A.floor(e.div(s).mul(a.sub(1)).add(1).log10().div(a.log10()))}static sumGeometricSeries_core(e,t,a,n){return t.mul(a.pow(n)).mul(A.sub(1,a.pow(e))).div(A.sub(1,a))}static affordArithmeticSeries_core(e,t,a,n){const i=t.add(n.mul(a)).sub(a.div(2)),r=i.pow(2);return i.neg().add(r.add(a.mul(e).mul(2)).sqrt()).div(a).floor()}static sumArithmeticSeries_core(e,t,a,n){const s=t.add(n.mul(a));return e.div(2).mul(s.mul(2).plus(e.sub(1).mul(a)))}static efficiencyOfPurchase_core(e,t,a){return e.div(t).add(e.div(a))}normalize(){if(this.sign===0||this.mag===0&&this.layer===0)return this.sign=0,this.mag=0,this.layer=0,this;if(this.layer===0&&this.mag<0&&(this.mag=-this.mag,this.sign=-this.sign),this.layer===0&&this.mag<Dn)return this.layer+=1,this.mag=Math.log10(this.mag),this;let e=Math.abs(this.mag),t=Math.sign(this.mag);if(e>=kn)return this.layer+=1,this.mag=t*Math.log10(e),this;for(;e<Mn&&this.layer>0;)this.layer-=1,this.layer===0?this.mag=Math.pow(10,this.mag):(this.mag=t*Math.pow(10,e),e=Math.abs(this.mag),t=Math.sign(this.mag));return this.layer===0&&(this.mag<0?(this.mag=-this.mag,this.sign=-this.sign):this.mag===0&&(this.sign=0)),this}fromComponents(e,t,a){return this.sign=e,this.layer=t,this.mag=a,this.normalize(),this}fromComponents_noNormalize(e,t,a){return this.sign=e,this.layer=t,this.mag=a,this}fromMantissaExponent(e,t){return this.layer=1,this.sign=Math.sign(e),e=Math.abs(e),this.mag=t+Math.log10(e),this.normalize(),this}fromMantissaExponent_noNormalize(e,t){return this.fromMantissaExponent(e,t),this}fromDecimal(e){return this.sign=e.sign,this.layer=e.layer,this.mag=e.mag,this}fromNumber(e){return this.mag=Math.abs(e),this.sign=Math.sign(e),this.layer=0,this.normalize(),this}fromString(e){const t=e,a=A.fromStringCache.get(t);if(a!==void 0)return this.fromDecimal(a);e=e.replace(",","");const n=e.split("^^^");if(n.length===2){const _=parseFloat(n[0]),S=parseFloat(n[1]),Q=n[1].split(";");let ee=1;if(Q.length===2&&(ee=parseFloat(Q[1]),isFinite(ee)||(ee=1)),isFinite(_)&&isFinite(S)){const N=A.pentate(_,S,ee);return this.sign=N.sign,this.layer=N.layer,this.mag=N.mag,A.fromStringCache.maxSize>=1&&A.fromStringCache.set(t,A.fromDecimal(this)),this}}const s=e.split("^^");if(s.length===2){const _=parseFloat(s[0]),S=parseFloat(s[1]),Q=s[1].split(";");let ee=1;if(Q.length===2&&(ee=parseFloat(Q[1]),isFinite(ee)||(ee=1)),isFinite(_)&&isFinite(S)){const N=A.tetrate(_,S,ee);return this.sign=N.sign,this.layer=N.layer,this.mag=N.mag,A.fromStringCache.maxSize>=1&&A.fromStringCache.set(t,A.fromDecimal(this)),this}}const i=e.split("^");if(i.length===2){const _=parseFloat(i[0]),S=parseFloat(i[1]);if(isFinite(_)&&isFinite(S)){const Q=A.pow(_,S);return this.sign=Q.sign,this.layer=Q.layer,this.mag=Q.mag,A.fromStringCache.maxSize>=1&&A.fromStringCache.set(t,A.fromDecimal(this)),this}}e=e.trim().toLowerCase();let r,o,u=e.split("pt");if(u.length===2){r=10,o=parseFloat(u[0]),u[1]=u[1].replace("(",""),u[1]=u[1].replace(")","");let _=parseFloat(u[1]);if(isFinite(_)||(_=1),isFinite(r)&&isFinite(o)){const S=A.tetrate(r,o,_);return this.sign=S.sign,this.layer=S.layer,this.mag=S.mag,A.fromStringCache.maxSize>=1&&A.fromStringCache.set(t,A.fromDecimal(this)),this}}if(u=e.split("p"),u.length===2){r=10,o=parseFloat(u[0]),u[1]=u[1].replace("(",""),u[1]=u[1].replace(")","");let _=parseFloat(u[1]);if(isFinite(_)||(_=1),isFinite(r)&&isFinite(o)){const S=A.tetrate(r,o,_);return this.sign=S.sign,this.layer=S.layer,this.mag=S.mag,A.fromStringCache.maxSize>=1&&A.fromStringCache.set(t,A.fromDecimal(this)),this}}const m=e.split("e"),y=m.length-1;if(y===0){const _=parseFloat(e);if(isFinite(_))return this.fromNumber(_),A.fromStringCache.size>=1&&A.fromStringCache.set(t,A.fromDecimal(this)),this}else if(y===1){const _=parseFloat(e);if(isFinite(_)&&_!==0)return this.fromNumber(_),A.fromStringCache.maxSize>=1&&A.fromStringCache.set(t,A.fromDecimal(this)),this}const p=e.split("e^");if(p.length===2){this.sign=1,p[0].charAt(0)=="-"&&(this.sign=-1);let _="";for(let S=0;S<p[1].length;++S){const Q=p[1].charCodeAt(S);if(Q>=43&&Q<=57||Q===101)_+=p[1].charAt(S);else return this.layer=parseFloat(_),this.mag=parseFloat(p[1].substr(S+1)),this.normalize(),A.fromStringCache.maxSize>=1&&A.fromStringCache.set(t,A.fromDecimal(this)),this}}if(y<1)return this.sign=0,this.layer=0,this.mag=0,A.fromStringCache.maxSize>=1&&A.fromStringCache.set(t,A.fromDecimal(this)),this;const C=parseFloat(m[0]);if(C===0)return this.sign=0,this.layer=0,this.mag=0,A.fromStringCache.maxSize>=1&&A.fromStringCache.set(t,A.fromDecimal(this)),this;let b=parseFloat(m[m.length-1]);if(y>=2){const _=parseFloat(m[m.length-2]);isFinite(_)&&(b*=Math.sign(_),b+=Tt(_))}if(!isFinite(C))this.sign=m[0]==="-"?-1:1,this.layer=y,this.mag=b;else if(y===1)this.sign=Math.sign(C),this.layer=1,this.mag=b+Math.log10(Math.abs(C));else if(this.sign=Math.sign(C),this.layer=y,y===2){const _=A.mul(k(1,2,b),g(C));return this.sign=_.sign,this.layer=_.layer,this.mag=_.mag,A.fromStringCache.maxSize>=1&&A.fromStringCache.set(t,A.fromDecimal(this)),this}else this.mag=b;return this.normalize(),A.fromStringCache.maxSize>=1&&A.fromStringCache.set(t,A.fromDecimal(this)),this}fromValue(e){return e instanceof A?this.fromDecimal(e):typeof e=="number"?this.fromNumber(e):typeof e=="string"?this.fromString(e):(this.sign=0,this.layer=0,this.mag=0,this)}toNumber(){return Number.isFinite(this.layer)?this.layer===0?this.sign*this.mag:this.layer===1?this.sign*Math.pow(10,this.mag):this.mag>0?this.sign>0?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:0:Number.NaN}mantissaWithDecimalPlaces(e){return isNaN(this.m)?Number.NaN:this.m===0?0:_e(this.m,e)}magnitudeWithDecimalPlaces(e){return isNaN(this.mag)?Number.NaN:this.mag===0?0:_e(this.mag,e)}toString(){return isNaN(this.layer)||isNaN(this.sign)||isNaN(this.mag)?"NaN":this.mag===Number.POSITIVE_INFINITY||this.layer===Number.POSITIVE_INFINITY?this.sign===1?"Infinity":"-Infinity":this.layer===0?this.mag<1e21&&this.mag>1e-7||this.mag===0?(this.sign*this.mag).toString():this.m+"e"+this.e:this.layer===1?this.m+"e"+this.e:this.layer<=Kt?(this.sign===-1?"-":"")+"e".repeat(this.layer)+this.mag:(this.sign===-1?"-":"")+"(e^"+this.layer+")"+this.mag}toExponential(e){return this.layer===0?(this.sign*this.mag).toExponential(e):this.toStringWithDecimalPlaces(e)}toFixed(e){return this.layer===0?(this.sign*this.mag).toFixed(e):this.toStringWithDecimalPlaces(e)}toPrecision(e){return this.e<=-7?this.toExponential(e-1):e>this.e?this.toFixed(e-this.exponent-1):this.toExponential(e-1)}valueOf(){return this.toString()}toJSON(){return this.toString()}toStringWithDecimalPlaces(e){return this.layer===0?this.mag<1e21&&this.mag>1e-7||this.mag===0?(this.sign*this.mag).toFixed(e):_e(this.m,e)+"e"+_e(this.e,e):this.layer===1?_e(this.m,e)+"e"+_e(this.e,e):this.layer<=Kt?(this.sign===-1?"-":"")+"e".repeat(this.layer)+_e(this.mag,e):(this.sign===-1?"-":"")+"(e^"+this.layer+")"+_e(this.mag,e)}abs(){return R(this.sign===0?0:1,this.layer,this.mag)}neg(){return R(-this.sign,this.layer,this.mag)}negate(){return this.neg()}negated(){return this.neg()}sgn(){return this.sign}round(){return this.mag<0?A.dZero:this.layer===0?k(this.sign,0,Math.round(this.mag)):this}floor(){return this.mag<0?A.dZero:this.layer===0?k(this.sign,0,Math.floor(this.mag)):this}ceil(){return this.mag<0?A.dZero:this.layer===0?k(this.sign,0,Math.ceil(this.mag)):this}trunc(){return this.mag<0?A.dZero:this.layer===0?k(this.sign,0,Math.trunc(this.mag)):this}add(e){const t=g(e);if(!Number.isFinite(this.layer))return this;if(!Number.isFinite(t.layer)||this.sign===0)return t;if(t.sign===0)return this;if(this.sign===-t.sign&&this.layer===t.layer&&this.mag===t.mag)return R(0,0,0);let a,n;if(this.layer>=2||t.layer>=2)return this.maxabs(t);if(A.cmpabs(this,t)>0?(a=this,n=t):(a=t,n=this),a.layer===0&&n.layer===0)return A.fromNumber(a.sign*a.mag+n.sign*n.mag);const s=a.layer*Math.sign(a.mag),i=n.layer*Math.sign(n.mag);if(s-i>=2)return a;if(s===0&&i===-1){if(Math.abs(n.mag-Math.log10(a.mag))>Qt)return a;{const r=Math.pow(10,Math.log10(a.mag)-n.mag),o=n.sign+a.sign*r;return k(Math.sign(o),1,n.mag+Math.log10(Math.abs(o)))}}if(s===1&&i===0){if(Math.abs(a.mag-Math.log10(n.mag))>Qt)return a;{const r=Math.pow(10,a.mag-Math.log10(n.mag)),o=n.sign+a.sign*r;return k(Math.sign(o),1,Math.log10(n.mag)+Math.log10(Math.abs(o)))}}if(Math.abs(a.mag-n.mag)>Qt)return a;{const r=Math.pow(10,a.mag-n.mag),o=n.sign+a.sign*r;return k(Math.sign(o),1,n.mag+Math.log10(Math.abs(o)))}}plus(e){return this.add(e)}sub(e){return this.add(g(e).neg())}subtract(e){return this.sub(e)}minus(e){return this.sub(e)}mul(e){const t=g(e);if(!Number.isFinite(this.layer))return this;if(!Number.isFinite(t.layer))return t;if(this.sign===0||t.sign===0)return R(0,0,0);if(this.layer===t.layer&&this.mag===-t.mag)return R(this.sign*t.sign,0,1);let a,n;if(this.layer>t.layer||this.layer==t.layer&&Math.abs(this.mag)>Math.abs(t.mag)?(a=this,n=t):(a=t,n=this),a.layer===0&&n.layer===0)return A.fromNumber(a.sign*n.sign*a.mag*n.mag);if(a.layer>=3||a.layer-n.layer>=2)return k(a.sign*n.sign,a.layer,a.mag);if(a.layer===1&&n.layer===0)return k(a.sign*n.sign,1,a.mag+Math.log10(n.mag));if(a.layer===1&&n.layer===1)return k(a.sign*n.sign,1,a.mag+n.mag);if(a.layer===2&&n.layer===1){const s=k(Math.sign(a.mag),a.layer-1,Math.abs(a.mag)).add(k(Math.sign(n.mag),n.layer-1,Math.abs(n.mag)));return k(a.sign*n.sign,s.layer+1,s.sign*s.mag)}if(a.layer===2&&n.layer===2){const s=k(Math.sign(a.mag),a.layer-1,Math.abs(a.mag)).add(k(Math.sign(n.mag),n.layer-1,Math.abs(n.mag)));return k(a.sign*n.sign,s.layer+1,s.sign*s.mag)}throw Error("Bad arguments to mul: "+this+", "+e)}multiply(e){return this.mul(e)}times(e){return this.mul(e)}div(e){const t=g(e);return this.mul(t.recip())}divide(e){return this.div(e)}divideBy(e){return this.div(e)}dividedBy(e){return this.div(e)}recip(){return this.mag===0?A.dNaN:this.layer===0?k(this.sign,0,1/this.mag):k(this.sign,this.layer,-this.mag)}reciprocal(){return this.recip()}reciprocate(){return this.recip()}cmp(e){const t=g(e);return this.sign>t.sign?1:this.sign<t.sign?-1:this.sign*this.cmpabs(e)}cmpabs(e){const t=g(e),a=this.mag>0?this.layer:-this.layer,n=t.mag>0?t.layer:-t.layer;return a>n?1:a<n?-1:this.mag>t.mag?1:this.mag<t.mag?-1:0}compare(e){return this.cmp(e)}isNan(){return isNaN(this.sign)||isNaN(this.layer)||isNaN(this.mag)}isFinite(){return isFinite(this.sign)&&isFinite(this.layer)&&isFinite(this.mag)}eq(e){const t=g(e);return this.sign===t.sign&&this.layer===t.layer&&this.mag===t.mag}equals(e){return this.eq(e)}neq(e){return!this.eq(e)}notEquals(e){return this.neq(e)}lt(e){return this.cmp(e)===-1}lte(e){return!this.gt(e)}gt(e){return this.cmp(e)===1}gte(e){return!this.lt(e)}max(e){const t=g(e);return this.lt(t)?t:this}min(e){const t=g(e);return this.gt(t)?t:this}maxabs(e){const t=g(e);return this.cmpabs(t)<0?t:this}minabs(e){const t=g(e);return this.cmpabs(t)>0?t:this}clamp(e,t){return this.max(e).min(t)}clampMin(e){return this.max(e)}clampMax(e){return this.min(e)}cmp_tolerance(e,t){const a=g(e);return this.eq_tolerance(a,t)?0:this.cmp(a)}compare_tolerance(e,t){return this.cmp_tolerance(e,t)}eq_tolerance(e,t){const a=g(e);if(t==null&&(t=1e-7),this.sign!==a.sign||Math.abs(this.layer-a.layer)>1)return!1;let n=this.mag,s=a.mag;return this.layer>a.layer&&(s=Tt(s)),this.layer<a.layer&&(n=Tt(n)),Math.abs(n-s)<=t*Math.max(Math.abs(n),Math.abs(s))}equals_tolerance(e,t){return this.eq_tolerance(e,t)}neq_tolerance(e,t){return!this.eq_tolerance(e,t)}notEquals_tolerance(e,t){return this.neq_tolerance(e,t)}lt_tolerance(e,t){const a=g(e);return!this.eq_tolerance(a,t)&&this.lt(a)}lte_tolerance(e,t){const a=g(e);return this.eq_tolerance(a,t)||this.lt(a)}gt_tolerance(e,t){const a=g(e);return!this.eq_tolerance(a,t)&&this.gt(a)}gte_tolerance(e,t){const a=g(e);return this.eq_tolerance(a,t)||this.gt(a)}pLog10(){return this.lt(A.dZero)?A.dZero:this.log10()}absLog10(){return this.sign===0?A.dNaN:this.layer>0?k(Math.sign(this.mag),this.layer-1,Math.abs(this.mag)):k(1,0,Math.log10(this.mag))}log10(){return this.sign<=0?A.dNaN:this.layer>0?k(Math.sign(this.mag),this.layer-1,Math.abs(this.mag)):k(this.sign,0,Math.log10(this.mag))}log(e){return e=g(e),this.sign<=0||e.sign<=0||e.sign===1&&e.layer===0&&e.mag===1?A.dNaN:this.layer===0&&e.layer===0?k(this.sign,0,Math.log(this.mag)/Math.log(e.mag)):A.div(this.log10(),e.log10())}log2(){return this.sign<=0?A.dNaN:this.layer===0?k(this.sign,0,Math.log2(this.mag)):this.layer===1?k(Math.sign(this.mag),0,Math.abs(this.mag)*3.321928094887362):this.layer===2?k(Math.sign(this.mag),1,Math.abs(this.mag)+.5213902276543247):k(Math.sign(this.mag),this.layer-1,Math.abs(this.mag))}ln(){return this.sign<=0?A.dNaN:this.layer===0?k(this.sign,0,Math.log(this.mag)):this.layer===1?k(Math.sign(this.mag),0,Math.abs(this.mag)*2.302585092994046):this.layer===2?k(Math.sign(this.mag),1,Math.abs(this.mag)+.36221568869946325):k(Math.sign(this.mag),this.layer-1,Math.abs(this.mag))}logarithm(e){return this.log(e)}pow(e){const t=g(e),a=this,n=t;if(a.sign===0)return n.eq(0)?R(1,0,1):a;if(a.sign===1&&a.layer===0&&a.mag===1)return a;if(n.sign===0)return R(1,0,1);if(n.sign===1&&n.layer===0&&n.mag===1)return a;const s=a.absLog10().mul(n).pow10();return this.sign===-1?Math.abs(n.toNumber()%2)%2===1?s.neg():Math.abs(n.toNumber()%2)%2===0?s:A.dNaN:s}pow10(){if(!Number.isFinite(this.layer)||!Number.isFinite(this.mag))return A.dNaN;let e=this;if(e.layer===0){const t=Math.pow(10,e.sign*e.mag);if(Number.isFinite(t)&&Math.abs(t)>=.1)return k(1,0,t);if(e.sign===0)return A.dOne;e=R(e.sign,e.layer+1,Math.log10(e.mag))}return e.sign>0&&e.mag>=0?k(e.sign,e.layer+1,e.mag):e.sign<0&&e.mag>=0?k(-e.sign,e.layer+1,-e.mag):A.dOne}pow_base(e){return g(e).pow(this)}root(e){const t=g(e);return this.pow(t.recip())}factorial(){return this.mag<0?this.add(1).gamma():this.layer===0?this.add(1).gamma():this.layer===1?A.exp(A.mul(this,A.ln(this).sub(1))):A.exp(this)}gamma(){if(this.mag<0)return this.recip();if(this.layer===0){if(this.lt(R(1,0,24)))return A.fromNumber(Fn(this.sign*this.mag));const e=this.mag-1;let t=.9189385332046727;t=t+(e+.5)*Math.log(e),t=t-e;const a=e*e;let n=e,s=12*n,i=1/s,r=t+i;if(r===t||(t=r,n=n*a,s=360*n,i=1/s,r=t-i,r===t))return A.exp(t);t=r,n=n*a,s=1260*n;let o=1/s;return t=t+o,n=n*a,s=1680*n,o=1/s,t=t-o,A.exp(t)}else return this.layer===1?A.exp(A.mul(this,A.ln(this).sub(1))):A.exp(this)}lngamma(){return this.gamma().ln()}exp(){return this.mag<0?A.dOne:this.layer===0&&this.mag<=709.7?A.fromNumber(Math.exp(this.sign*this.mag)):this.layer===0?k(1,1,this.sign*Math.log10(Math.E)*this.mag):this.layer===1?k(1,2,this.sign*(Math.log10(.4342944819032518)+this.mag)):k(1,this.layer+1,this.sign*this.mag)}sqr(){return this.pow(2)}sqrt(){if(this.layer===0)return A.fromNumber(Math.sqrt(this.sign*this.mag));if(this.layer===1)return k(1,2,Math.log10(this.mag)-.3010299956639812);{const e=A.div(R(this.sign,this.layer-1,this.mag),R(1,0,2));return e.layer+=1,e.normalize(),e}}cube(){return this.pow(3)}cbrt(){return this.pow(1/3)}tetrate(e=2,t=R(1,0,1)){if(e===1)return A.pow(this,t);if(e===0)return new A(t);if(this.eq(A.dOne))return A.dOne;if(this.eq(-1))return A.pow(this,t);if(e===Number.POSITIVE_INFINITY){const s=this.toNumber();if(s<=1.444667861009766&&s>=.06598803584531254){if(s>1.444667861009099)return A.fromNumber(Math.E);const i=A.ln(this).neg();return i.lambertw().div(i)}else return s>1.444667861009766?A.fromNumber(Number.POSITIVE_INFINITY):A.dNaN}if(this.eq(A.dZero)){let s=Math.abs((e+1)%2);return s>1&&(s=2-s),A.fromNumber(s)}if(e<0)return A.iteratedlog(t,this,-e);t=g(t);const a=e;e=Math.trunc(e);const n=a-e;if(this.gt(A.dZero)&&this.lte(1.444667861009766)){e=Math.min(1e4,e);for(let s=0;s<e;++s){const i=t;if(t=this.pow(t),i.eq(t))return t}if(n!=0){const s=this.pow(t);return t.mul(1-n).add(s.mul(n))}return t}n!==0&&(t.eq(A.dOne)?this.gt(10)?t=this.pow(n):(t=A.fromNumber(A.tetrate_critical(this.toNumber(),n)),this.lt(2)&&(t=t.sub(1).mul(this.minus(1)).plus(1))):this.eq(10)?t=t.layeradd10(n):t=t.layeradd(n,this));for(let s=0;s<e;++s){if(t=this.pow(t),!isFinite(t.layer)||!isFinite(t.mag))return t.normalize();if(t.layer-this.layer>3)return R(t.sign,t.layer+(e-s-1),t.mag);if(s>1e4)return t}return t}iteratedexp(e=2,t=R(1,0,1)){return this.tetrate(e,t)}iteratedlog(e=10,t=1){if(t<0)return A.tetrate(e,-t,this);e=g(e);let a=A.fromDecimal(this);const n=t;t=Math.trunc(t);const s=n-t;if(a.layer-e.layer>3){const i=Math.min(t,a.layer-e.layer-3);t-=i,a.layer-=i}for(let i=0;i<t;++i){if(a=a.log(e),!isFinite(a.layer)||!isFinite(a.mag))return a.normalize();if(i>1e4)return a}return s>0&&s<1&&(e.eq(10)?a=a.layeradd10(-s):a=a.layeradd(-s,e)),a}slog(e=10,t=100){let a=.001,n=!1,s=!1,i=this.slog_internal(e).toNumber();for(let r=1;r<t;++r){const u=new A(e).tetrate(i).gt(this);if(r>1&&s!=u&&(n=!0),s=u,n?a/=2:a*=2,a=Math.abs(a)*(u?-1:1),i+=a,a===0)break}return A.fromNumber(i)}slog_internal(e=10){if(e=g(e),e.lte(A.dZero)||e.eq(A.dOne))return A.dNaN;if(e.lt(A.dOne))return this.eq(A.dOne)?A.dZero:this.eq(A.dZero)?A.dNegOne:A.dNaN;if(this.mag<0||this.eq(A.dZero))return A.dNegOne;let t=0,a=A.fromDecimal(this);if(a.layer-e.layer>3){const n=a.layer-e.layer-3;t+=n,a.layer-=n}for(let n=0;n<100;++n)if(a.lt(A.dZero))a=A.pow(e,a),t-=1;else{if(a.lte(A.dOne))return A.fromNumber(t+A.slog_critical(e.toNumber(),a.toNumber()));t+=1,a=A.log(a,e)}return A.fromNumber(t)}static slog_critical(e,t){return e>10?t-1:A.critical_section(e,t,On)}static tetrate_critical(e,t){return A.critical_section(e,t,zn)}static critical_section(e,t,a){t*=10,t<0&&(t=0),t>10&&(t=10),e<2&&(e=2),e>10&&(e=10);let n=0,s=0;for(let r=0;r<Ve.length;++r)if(Ve[r]==e){n=a[r][Math.floor(t)],s=a[r][Math.ceil(t)];break}else if(Ve[r]<e&&Ve[r+1]>e){const o=(e-Ve[r])/(Ve[r+1]-Ve[r]);n=a[r][Math.floor(t)]*(1-o)+a[r+1][Math.floor(t)]*o,s=a[r][Math.ceil(t)]*(1-o)+a[r+1][Math.ceil(t)]*o;break}const i=t-Math.floor(t);return n<=0||s<=0?n*(1-i)+s*i:Math.pow(e,Math.log(n)/Math.log(e)*(1-i)+Math.log(s)/Math.log(e)*i)}layeradd10(e){e=A.fromValue_noAlloc(e).toNumber();const t=A.fromDecimal(this);if(e>=1){t.mag<0&&t.layer>0?(t.sign=0,t.mag=0,t.layer=0):t.sign===-1&&t.layer==0&&(t.sign=1,t.mag=-t.mag);const a=Math.trunc(e);e-=a,t.layer+=a}if(e<=-1){const a=Math.trunc(e);if(e-=a,t.layer+=a,t.layer<0)for(let n=0;n<100;++n){if(t.layer++,t.mag=Math.log10(t.mag),!isFinite(t.mag))return t.sign===0&&(t.sign=1),t.layer<0&&(t.layer=0),t.normalize();if(t.layer>=0)break}}for(;t.layer<0;)t.layer++,t.mag=Math.log10(t.mag);return t.sign===0&&(t.sign=1,t.mag===0&&t.layer>=1&&(t.layer-=1,t.mag=1)),t.normalize(),e!==0?t.layeradd(e,10):t}layeradd(e,t){const n=this.slog(t).toNumber()+e;return n>=0?A.tetrate(t,n):Number.isFinite(n)?n>=-1?A.log(A.tetrate(t,n+1),t):A.log(A.log(A.tetrate(t,n+2),t),t):A.dNaN}lambertw(){if(this.lt(-.3678794411710499))throw Error("lambertw is unimplemented for results less than -1, sorry!");if(this.mag<0)return A.fromNumber(Ht(this.toNumber()));if(this.layer===0)return A.fromNumber(Ht(this.sign*this.mag));if(this.layer===1)return Zt(this);if(this.layer===2)return Zt(this);if(this.layer>=3)return R(this.sign,this.layer-1,this.mag);throw"Unhandled behavior in lambertw()"}ssqrt(){if(this.sign==1&&this.layer>=3)return R(this.sign,this.layer-1,this.mag);const e=this.ln();return e.div(e.lambertw())}pentate(e=2,t=R(1,0,1)){t=g(t);const a=e;e=Math.trunc(e);const n=a-e;n!==0&&(t.eq(A.dOne)?(++e,t=A.fromNumber(n)):this.eq(10)?t=t.layeradd10(n):t=t.layeradd(n,this));for(let s=0;s<e;++s){if(t=this.tetrate(t.toNumber()),!isFinite(t.layer)||!isFinite(t.mag))return t.normalize();if(s>10)return t}return t}sin(){return this.mag<0?this:this.layer===0?A.fromNumber(Math.sin(this.sign*this.mag)):R(0,0,0)}cos(){return this.mag<0?A.dOne:this.layer===0?A.fromNumber(Math.cos(this.sign*this.mag)):R(0,0,0)}tan(){return this.mag<0?this:this.layer===0?A.fromNumber(Math.tan(this.sign*this.mag)):R(0,0,0)}asin(){return this.mag<0?this:this.layer===0?A.fromNumber(Math.asin(this.sign*this.mag)):R(Number.NaN,Number.NaN,Number.NaN)}acos(){return this.mag<0?A.fromNumber(Math.acos(this.toNumber())):this.layer===0?A.fromNumber(Math.acos(this.sign*this.mag)):R(Number.NaN,Number.NaN,Number.NaN)}atan(){return this.mag<0?this:this.layer===0?A.fromNumber(Math.atan(this.sign*this.mag)):A.fromNumber(Math.atan(this.sign*(1/0)))}sinh(){return this.exp().sub(this.negate().exp()).div(2)}cosh(){return this.exp().add(this.negate().exp()).div(2)}tanh(){return this.sinh().div(this.cosh())}asinh(){return A.ln(this.add(this.sqr().add(1).sqrt()))}acosh(){return A.ln(this.add(this.sqr().sub(1).sqrt()))}atanh(){return this.abs().gte(1)?R(Number.NaN,Number.NaN,Number.NaN):A.ln(this.add(1).div(A.fromNumber(1).sub(this))).div(2)}ascensionPenalty(e){return e===0?this:this.root(A.pow(10,e))}egg(){return this.add(9)}lessThanOrEqualTo(e){return this.cmp(e)<1}lessThan(e){return this.cmp(e)<0}greaterThanOrEqualTo(e){return this.cmp(e)>-1}greaterThan(e){return this.cmp(e)>0}};let E=A;E.fromStringCache=new Qn(Pn);E.dZero=R(0,0,0);E.dOne=R(1,0,1);E.dNegOne=R(-1,0,1);E.dTwo=R(1,0,2);E.dTen=R(1,0,10);E.dNaN=R(Number.NaN,Number.NaN,Number.NaN);E.dInf=R(1,Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY);E.dNegInf=R(-1,Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY);E.dNumberMax=k(1,0,Number.MAX_VALUE);E.dNumberMin=k(1,0,Number.MIN_VALUE);g=E.fromValue_noAlloc;k=E.fromComponents;R=E.fromComponents_noNormalize;E.fromMantissaExponent;E.fromMantissaExponent_noNormalize;const xn=new E(1);function nt(e,t,a=!0){let n=E.log10(e).floor(),s=E.div(e,E.pow(10,n));s.toStringWithDecimalPlaces(t)==="10"&&(s=xn,n=n.add(1));const i=n.gte(1e9)?Ae(n,Math.max(Math.max(t,3),U.defaultDecimalsShown)):n.gte(1e4)?yt(n,0):n.toStringWithDecimalPlaces(0);return a?s.toStringWithDecimalPlaces(t)+"e"+i:"e"+i}function yt(e,t){if(e==null)return"NaN";if(e=new E(e),e.mag<.001)return 0 .toFixed(t);const n=e.toStringWithDecimalPlaces(t).split(".");return n[0]=n[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g,"$1,"),n.length==1?n[0]:n[0]+"."+n[1]}function ga(e,t){return e==null?"NaN":(e=new E(e),e.mag<1e-4?0 .toFixed(t):(e.mag<.1&&t!==0&&(t=Math.max(Math.max(t,e.log10().negate().ceil().toNumber()),U.defaultDecimalsShown)),e.toStringWithDecimalPlaces(t)))}const Gn=new E("eeee1000"),Un=new E("e100000"),$t=new E("e1000"),ma=new E(1e9),Ln=new E(1e6),Jn=new E(1e3),Yn=new E(.98),Wn=new E(.001),fa=new E(0);function Ae(e,t,a){if(t==null&&(t=U.defaultDecimalsShown),a=a!=null?a:U.defaultShowSmall,e=new E(e),isNaN(e.sign)||isNaN(e.layer)||isNaN(e.mag))return"NaN";if(e.sign<0)return"-"+Ae(e.neg(),t);if(e.mag===Number.POSITIVE_INFINITY)return"Infinity";if(e.gte(Gn)){const n=e.slog();return n.gte(Ln)?"F"+Ae(n.floor()):E.pow(10,n.sub(n.floor())).toStringWithDecimalPlaces(3)+"F"+yt(n.floor(),0)}else{if(e.gte(Un))return nt(e,0,!1);if(e.gte($t))return nt(e,0);if(e.gte(ma))return nt(e,t);if(e.gte(Jn))return yt(e,0);if(e.gte(Wn)||!a)return ga(e,t);if(e.eq(fa))return 0 .toFixed(t)}return e=va(e),e.lt($t)?nt(e,t).replace(/([^(?:e|F)]*)$/,"-$1"):Ae(e,t)+"\u207B\xB9"}function oe(e){return e=new E(e),e.sign<0?"-"+oe(e.neg()):e.gte(ma)||e.lte(Yn)&&!e.eq(fa)?Ae(e):Ae(e,0)}function ha(e){return E.lt(e,0)?"-"+ha(E.neg(e)):E.gt(e,2**51)?Ae(E.div(e,31536e3))+"y":(e=new E(e).toNumber(),e<60?Ae(e)+"s":e<3600?oe(Math.floor(e/60))+"m "+Ae(e%60)+"s":e<86400?oe(Math.floor(e/3600))+"h "+oe(Math.floor(e/60)%60)+"m "+oe(e%60)+"s":e<31536e3?oe(Math.floor(e/84600)%365)+"d "+oe(Math.floor(e/3600)%24)+"h "+oe(Math.floor(e/60)%60)+"m":oe(Math.floor(e/31536e3))+"y "+oe(Math.floor(e/84600)%365)+"d "+oe(Math.floor(e/3600)%24)+"h")}function Xn(e,t,a){e=new E(e);let n=e.toStringWithDecimalPlaces(t);return new E(n).gte(a)&&(n=E.sub(a,Math.pow(.1,t)).toStringWithDecimalPlaces(t)),n}function jn(e,t){return Ae(e,t,!0)}function va(e){let t=E.log10(e).ceil();const a=E.div(e,E.pow(10,t));return t=t.neg(),e=new E(10).pow(t).times(a),e}var Kn=Object.freeze(Object.defineProperty({__proto__:null,default:E,exponentialFormat:nt,commaFormat:yt,regularFormat:ga,format:Ae,formatWhole:oe,formatTime:ha,toPlaces:Xn,formatSmall:jn,invertOOM:va},Symbol.toStringTag,{value:"Module"}));const{exponentialFormat:Hn,commaFormat:Zn,regularFormat:$n,format:pa,formatWhole:Dt,formatTime:Ft,toPlaces:es,formatSmall:ts,invertOOM:as}=Kn;window.Decimal=E;window.exponentialFormat=Hn;window.commaFormat=Zn;window.regularFormat=$n;window.format=pa;window.formatWhole=Dt;window.formatTime=Ft;window.toPlaces=es;window.formatSmall=ts;window.invertOOM=as;function ns(e){let t=e.replace(/([A-Z])/g," $1");return t=t.charAt(0).toUpperCase()+t.slice(1),t}function ea(e){return typeof e=="function"}var X=(e=>(e.Up="Up",e.Down="Down",e.Left="Left",e.Right="Right",e.Default="Up",e))(X||{});const bt=Symbol("DoNotCache");function K(e,t){const a=e[t];ea(a)&&a.length===0&&!a[bt]?e[t]=V(a.bind(e)):ea(a)&&(e[t]=a.bind(e),e[t][bt]=!0)}const rt=Symbol("Component"),wt=Symbol("GatherProps");let ss=0;function xt(e="feature-"){return e+ss++}var ot=(e=>(e[e.Visible=0]="Visible",e[e.Hidden=1]="Hidden",e[e.None=2]="None",e))(ot||{});function Ct(e){const t=c(e);return t!==2&&t!==!1}function ya(e){return c(e)===1}function L(e){return e[bt]=!0,e}function Ge(e,t,a){e[t]===void 0&&a!=null&&(e[t]=a)}const ae=Aa();"fonts"in document&&(document.fonts.onloadingdone=()=>ae.emit("fontsLoaded"));var is=Object.freeze(Object.defineProperty({__proto__:null,globalBus:ae},Symbol.toStringTag,{value:"Module"}));const Oe=Symbol("ProxyState");function _t(e,t={}){const a=t;let n=!1;function s(){return n||(Object.assign(a,e(a)),n=!0),a}return new Proxy(a,{get(i,r){if(r===Oe)return s();const o=s()[r];return o!=null&&typeof o=="object"&&Vt in o?o[Vt]:o},set(i,r,o){return s()[r]=o,!0},has(i,r){return r===Oe?!0:Reflect.has(s(),r)},ownKeys(){return Reflect.ownKeys(s())},getOwnPropertyDescriptor(i,r){return n||(Object.assign(a,e(a)),n=!0),Object.getOwnPropertyDescriptor(i,r)}})}const rs=ut({id:"",devSpeed:null,name:"",tabs:[],time:-1,autosave:!0,offlineProd:!0,offlineTime:null,timePlayed:0,keepGoing:!1,modID:"",modVersion:"",layers:{}});var q=window.player=rs;function ba(e){return JSON.stringify(e,(t,a)=>c(a))}var te=window.state=zt({lastTenTicks:[],hasNaN:!1,NaNPath:[]});const Ye=Symbol("PersistentState"),Ze=Symbol("DefaultValue"),Nt=Symbol("StackTrace"),Rt=Symbol("Deleted"),Vt=Symbol("NonPersistent"),Fe=Symbol("SaveDataPath");function os(){var e,t;return(t=(e=new Error().stack)==null?void 0:e.split(`
|
|
`).slice(3,5).map(a=>a.trim()).join(`
|
|
`))!=null?t:""}function ta(e,t){var a;if(E.isNaN(t))throw te.hasNaN||(q.autosave=!1,te.hasNaN=!0,te.NaNPath=e[Fe],te.NaNPersistent=e),console.error("Attempted to save NaN value to",(a=e[Fe])==null?void 0:a.join("."),e),"Attempted to set NaN value. See above for details";e[Ye].value=t}function Ca(e,t=!0){const a=Ce(e)?e:w(e);Ce(e)&&(e=e.value);const n=V({get(){return a.value},set(i){t?ta(s,i):s[Ye].value=i}});n[Ze]=e;const s={get value(){return a.value},set value(i){t?ta(s,i):s[Ye].value=i},__v_isRef:!0,[Ye]:a,[Ze]:e,[Nt]:os(),[Rt]:!1,[Vt]:n,[Fe]:void 0};return me.length===0?console.warn("Creating a persistent ref outside of a layer. This is not officially supported",s,`
|
|
Created at:
|
|
`+s[Nt]):We[me[me.length-1]].add(s),s}function ls(e){return e!=null&&typeof e=="object"&&Ye in e}ae.on("addLayer",(e,t)=>{const a=[],n=(s,i=[])=>{let r=!1;return Object.keys(s).forEach(o=>{let u=s[o];if(u!=null&&typeof u=="object")if(Oe in u&&(u=u[Oe]),ls(u)){if(r=!0,u[Rt]){console.warn("Deleted persistent ref present in returned object. Ignoring...",u,`
|
|
Created at:
|
|
`+u[Nt]);return}We[e.id].delete(u);const m=[e.id,...i,o];u[Fe]!=null&&JSON.stringify(m)!==JSON.stringify(u[Fe])&&console.error(`Persistent ref is being saved to \`${m.join(".")}\` when it's already present at \`${u[Fe].join(".")}\`. This can cause unexpected behavior when loading saves between updates.`,u),u[Fe]=m;const y=i.reduce((C,b)=>(b in C||(C[b]={}),C[b]),t),p=y[o];y[o]=u[Ye],za(y)?p!=null?y[o]=p:y[o]=u[Ze]:p!=null?y[o].value=p:y[o].value=u[Ze]}else!(u instanceof E)&&!Ce(u)&&!a.includes(u)&&(typeof u.type=="symbol"&&a.push(u),n(u,[...i,o])&&(kt(u)&&!kt(s)?console.warn("Found array that contains persistent values when adding layer. Keep in mind changing the order of elements in the array will mess with existing player saves.",Oe in s?s[Oe]:s,o):r=!0))}),r};n(e[Oe]),We[e.id].forEach(s=>{s[Rt]||console.error(`Created persistent ref in ${e.id} without registering it to the layer! Make sure to include everything persistent in the returned object`,s,`
|
|
Created at:
|
|
`+s[Nt])}),We[e.id].clear()});const Gt=Symbol("RegisterNode"),Ut=Symbol("UnregisterNode"),Na=Symbol("Nodes"),Ba=Symbol("Bounds"),ne=zt({});window.layers=ne;const We={},me=[];function Ea(e,t){return _t(()=>{const a={},n=a.emitter=Aa();if(a.on=n.on.bind(n),a.emit=n.emit.bind(n),a.nodes=w({}),a.id=e,me.push(e),We[e]=new Set,a.minimized=Ca(!1,!1),Object.assign(a,t.call(a)),me[me.length-1]==null||me[me.length-1]!==e)throw`Adding layers stack in invalid state. This should not happen
|
|
Stack: ${me}
|
|
Trying to pop ${a.id}`;me.pop(),K(a,"color"),K(a,"display"),K(a,"classes"),K(a,"style"),K(a,"name"),Ge(a,"name",a.id),K(a,"minWidth"),Ge(a,"minWidth",600),K(a,"minimizable"),Ge(a,"minimizable",!0),K(a,"minimizedDisplay");const s=a.style;return a.style=V(()=>{var r,o;let i=c(a.minWidth);return(typeof i=="number"||!Number.isNaN(parseInt(i)))&&(i=i+"px"),[(r=c(s))!=null?r:"",(o=a.minimized)!=null&&o.value?{flexGrow:"0",flexShrink:"0",width:"60px",minWidth:"",flexBasis:"",margin:"0"}:{flexGrow:"",flexShrink:"",width:"",minWidth:i,flexBasis:i,margin:""}]}),a})}function wa(e,t){if(console.info("Adding layer",e.id),ne[e.id]){console.error("Attempted to add layer with same ID as existing layer",e.id,ne[e.id]);return}Ge(t,"layers",{}),t.layers[e.id]==null&&(t.layers[e.id]={}),ne[e.id]=e,ae.emit("addLayer",e,t.layers[e.id])}function As(e){return ne[e]}function _a(e){console.info("Removing layer",e.id),ae.emit("removeLayer",e),ne[e.id]=void 0}function us(e){_a(e),wa(e,q)}function cs(e){const t=w(!1);return{openModal:()=>t.value=!0,modal:L(()=>l(De,{modelValue:t.value,"onUpdate:modelValue":a=>t.value=a},{header:()=>l("h2",null,[c(e.name)]),body:c(e.display)}))}}ae.on("update",function(t){Object.values(ne).forEach(a=>{a==null||a.emit("preUpdate",t)}),Object.values(ne).forEach(a=>{a==null||a.emit("update",t)}),Object.values(ne).forEach(a=>{a==null||a.emit("postUpdate",t)})});var ds=Object.freeze(Object.defineProperty({__proto__:null,RegisterNodeInjectionKey:Gt,UnregisterNodeInjectionKey:Ut,NodesInjectionKey:Na,BoundsInjectionKey:Ba,layers:ne,persistentRefs:We,addingLayers:me,createLayer:Ea,addLayer:wa,getLayer:As,removeLayer:_a,reloadLayer:us,setupLayerModal:cs},Symbol.toStringTag,{value:"Module"}));var W=(e,t)=>{const a=e.__vccOpts||e;for(const[n,s]of t)a[n]=s;return a};const gs=F({__name:"Context",emits:["updateNodes"],setup(e,{emit:t}){var y;const a=w({}),n=new ResizeObserver(o),s=w(null);Bt(()=>{const p=s.value;p!=null&&n.observe(p)});let i=!0,r=w((y=s.value)==null?void 0:y.getBoundingClientRect());function o(){i&&(i=!1,Qe(()=>{var p;r.value=(p=s.value)==null?void 0:p.getBoundingClientRect(),Object.values(a.value).filter(C=>C).forEach(C=>C.rect=C.element.getBoundingClientRect()),t("updateNodes",a.value),i=!0}))}ae.on("fontsLoaded",o);const u={attributes:!1,childList:!0,subtree:!1};dt(Gt,(p,C)=>{const b=new MutationObserver(()=>m(p));b.observe(C,u),a.value[p]={element:C,observer:b,rect:C.getBoundingClientRect()},o()}),dt(Ut,p=>{var C;(C=a.value[p])==null||C.observer.disconnect(),a.value[p]=void 0,o()}),dt(Na,a),dt(Ba,r);function m(p){const C=a.value[p];C!=null&&(C.rect=C.element.getBoundingClientRect(),t("updateNodes",a.value))}return(p,C)=>(h(),B(j,null,[be(p.$slots,"default",{},void 0,!0),d("div",{ref_key:"resizeListener",ref:s,class:"resize-listener"},null,512)],64))}});var Ia=W(gs,[["__scopeId","data-v-2b1dc1bc"]]);const ms=["onPointerdown"],fs={class:"modal-wrapper"},hs={class:"modal-container"},vs={class:"modal-header"},ps=f(" default header "),ys={class:"modal-body"},bs=f(" default body "),Cs={class:"modal-footer"},Ns=d("div",{class:"modal-default-flex-grow"},null,-1),De=F({__name:"Modal",props:{modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{expose:t,emit:a}){const s=he(e),i=V(()=>c(s.modelValue)||o.value);function r(){a("update:modelValue",!1)}const o=w(!1),u=w(null),m=V(()=>{var y,p;return(p=(y=u.value)==null?void 0:y.nodes)!=null?p:null});return t({isOpen:i,nodes:m}),(y,p)=>(h(),O(Fa,{to:"#modal-root"},[l(oa,{name:"modal",onBeforeEnter:p[0]||(p[0]=C=>o.value=!0),onAfterLeave:p[1]||(p[1]=C=>o.value=!1)},{default:M(()=>[Ot(d("div",He({class:"modal-mask",onPointerdown:it(r,["self"])},y.$attrs),[d("div",fs,[d("div",hs,[d("div",vs,[be(y.$slots,"header",{shown:c(i)},()=>[ps])]),d("div",ys,[l(Ia,{ref_key:"contextRef",ref:u},{default:M(()=>[be(y.$slots,"body",{shown:c(i)},()=>[bs])]),_:3},512)]),d("div",Cs,[be(y.$slots,"footer",{shown:c(i)},()=>[d("div",{class:"modal-default-footer"},[Ns,d("button",{class:"button modal-default-button",onClick:r}," Close ")])])])])])],16,ms),[[Oa,e.modelValue]])]),_:3})]))}});const Pe={variables:{"--foreground":"#dfdfdf","--background":"#0f0f0f","--feature-foreground":"#0f0f0f","--tooltip-background":"rgba(0, 0, 0, 0.75)","--raised-background":"#0f0f0f","--points":"#ffffff","--locked":"#bf8f8f","--highlighted":"#333","--bought":"#77bf5f","--danger":"rgb(220, 53, 69)","--link":"#02f2f2","--outline":"#dfdfdf","--accent1":"#627a82","--accent2":"#658262","--accent3":"#7c6282","--border-radius":"15px","--modal-border":"solid 2px var(--color)","--feature-margin":"0px"},floatingTabs:!0,mergeAdjacent:!0,showPin:!0};var Lt=(e=>(e.Classic="classic",e.Paper="paper",e.Nordic="nordic",e.Aqua="aqua",e))(Lt||{}),$e={classic:Pe,paper:{...Pe,variables:{...Pe.variables,"--background":"#2a323d","--feature-foreground":"#000","--raised-background":"#333c4a","--locked":"#3a3e45","--bought":"#5C8A58","--outline":"#333c4a","--border-radius":"4px","--modal-border":"","--feature-margin":"5px"},floatingTabs:!1},nordic:{...Pe,variables:{...Pe.variables,"--foreground":"#45283c","--background":"#bbc3e8","--feature-foreground":"#fff7f6","--raised-background":"#fff7f6","--points":"#45283c","--locked":"#fff7f6","--highlighted":"#434c5e","--bought":"#fff7f6","--danger":"#D08770","--link":"#412323","--outline":"#551842","--accent1":"#dc7d71","--accent2":"#8423a9","--accent3":"#47f2ca","--border-radius":"4px","--modal-border":"solid 2px #3B4252","--feature-margin":"5px"},floatingTabs:!1},aqua:{...Pe,variables:{...Pe.variables,"--foreground":"#bfdfff","--background":"#001f3f","--tooltip-background":"rgba(0, 15, 31, 0.75)","--raised-background":"#001f3f","--points":"#dfefff","--locked":"#c4a7b3","--outline":"#bfdfff"}}};function Sa(e={}){return Object.assign({id:`${U.id}-0`,name:"Default Save",tabs:U.initialTabs.slice(),time:Date.now(),autosave:!0,offlineProd:!0,offlineTime:0,timePlayed:0,keepGoing:!1,modID:U.id,modVersion:U.versionNumber,layers:{}},e)}function le(e){const t=Se.compressToUTF16(ba(e!=null?e:q));return localStorage.setItem((e!=null?e:q).id,t),t}async function Bs(){_s();try{let e=localStorage.getItem(P.active);if(e==null){await xe(Xe());return}if(e[0]!=="{")if(e[0]==="e")e=decodeURIComponent(escape(atob(e)));else if(e[0]==="\u1BE1")e=Se.decompressFromUTF16(e);else throw"Unable to determine save encoding";const t=JSON.parse(e);if(t.modID!==U.id){await xe(Xe());return}t.id=P.active,await xe(t)}catch(e){console.error(`Failed to load save. Falling back to new save.
|
|
`,e),await xe(Xe())}}function Xe(){const e=vt(),t=Sa({id:e});return le(t),P.saves.push(e),t}function vt(){let e,t=0;do e=`${U.id}-${t++}`;while(localStorage.getItem(e)!=null);return e}const Es=w(!1);async function xe(e){console.info("Loading save",e),Es.value=!0;const{layers:t,removeLayer:a,addLayer:n}=await pt(()=>Promise.resolve().then(function(){return ds}),void 0),{fixOldSave:s,getInitialLayers:i}=await pt(()=>Promise.resolve().then(function(){return nl}),void 0);for(const r in t){const o=t[r];o&&a(o)}i(e).forEach(r=>n(r,e)),e=Sa(e),e.offlineProd&&e.time!=null&&e.time&&e.devSpeed!==0&&(e.offlineTime==null&&(e.offlineTime=0),e.offlineTime+=Math.min(e.offlineTime+(Date.now()-e.time)/1e3,U.offlineLimit*3600)),e.time=Date.now(),e.modVersion!==U.versionNumber&&(s(e.modVersion,e),e.modVersion=U.versionNumber),Object.assign(q,e),P.active=q.id,ae.emit("onLoad")}setInterval(()=>{q.autosave&&le()},1e3);window.onbeforeunload=()=>{q.autosave&&le()};window.save=le;const ws=window.hardReset=async()=>{await xe(Xe())};window.deleteLowerSaves=()=>{const e=Object.values(P.saves).indexOf(q.id)+1;Object.values(P.saves).slice(e).forEach(t=>localStorage.removeItem(t)),P.saves=P.saves.slice(0,e)};const lt=ut({active:"",saves:[],showTPS:!0,theme:Lt.Nordic,unthrottled:!1,alignUnits:!1,autoplay:!1,fast:!1,showTutorial:!0});Ne(lt,e=>{const t=Se.compressToUTF16(JSON.stringify(e));localStorage.setItem(U.id,t)},{deep:!0});var P=window.settings=lt;window.hardResetSettings=()=>{const e={active:"",saves:[],showTPS:!0,theme:Lt.Nordic,alignUnits:!1,autoplay:!1,fast:!1};ae.emit("loadSettings",e),Object.assign(lt,e),ws()};function _s(){try{let e=localStorage.getItem(U.id);if(e!=null&&e!==""){if(e[0]!=="{")if(e[0]==="e")e=decodeURIComponent(escape(atob(e)));else if(e[0]==="\u1BE1")e=Se.decompressFromUTF16(e);else{console.warn("Unable to determine settings encoding",e);return}const t=JSON.parse(e);typeof t=="object"&&Object.assign(lt,t)}ae.emit("loadSettings",lt)}catch{}}const Qa=ut([]);function Is(e){Qa.push(e)}const Ss=ut([]),Qs=ut([]),Ts={class:"table"},aa=F({__name:"Column",setup(e){const t=V(()=>$e[P.theme].mergeAdjacent);return(a,n)=>(h(),B("div",Ts,[d("div",{class:$(["col",{mergeAdjacent:c(t)}])},[be(a.$slots,"default")],2)]))}}),ks={class:"table"},qe=F({__name:"Row",setup(e){const t=V(()=>$e[P.theme].mergeAdjacent);return(a,n)=>(h(),B("div",ks,[d("div",{class:$(["row",{mergeAdjacent:c(t)}])},[be(a.$slots,"default")],2)]))}});function ue(e,t="span"){return typeof e=="function"?F({render:e}):typeof e=="string"?e.length>0?(e=e.trim(),e.charAt(0)!=="<"&&(e=`<${t}>${e}</${t}>`),F({template:e})):F({render:()=>({})}):e}function je(e){if(st(e))return typeof e=="function"?e():ue(e);const t=e[rt];return l(t,e[wt](),null)}function Ta(e){if(st(e))return typeof e=="function"?e():typeof e=="string"?l(j,null,[e]):l(e,null,null);const t=e[rt];return l(t,e[wt](),null)}function st(e){return typeof e=="string"?!0:typeof e=="object"?e==null?!1:"render"in e||"component"in e:typeof e=="function"&&e[bt]===!0}function ka(e,t="div"){const a=ve();return Et(()=>{a.value=ue(fe(e),t)}),a}function It(e,t="div"){const a=ve(null);return Et(()=>{const n=fe(e);a.value=n==""||n==null?null:ue(n,t)}),a}function fe(e){return c(c(e))}function J(...e){return e.includes(Object)||e.push(Object),e}ae.on("setupVue",e=>e.use(Wa));function Ms(e="white",t="8px"){return{transform:"scale(1.05, 1.05)",borderColor:"rgba(0, 0, 0, 0.125)",boxShadow:`-4px -4px 4px rgba(0, 0, 0, 0.25) inset, 0 0 ${t} ${e}`,zIndex:1}}const Ds=F({props:{visibility:{type:J(Number,Boolean),required:!0},display:{type:J(Object,String,Function),required:!0},style:J(String,Object,Array),classes:J(Object),glowColor:J(String),active:Boolean,floating:Boolean},emits:["selectTab"],setup(e,{emit:t}){const{display:a,glowColor:n,floating:s}=he(e),i=ka(a),r=V(()=>{const u=fe(n);return u==null||u===""?{}:c(s)?Ms(u):{boxShadow:`0px 9px 5px -6px ${u}`}});function o(){t("selectTab")}return{selectTab:o,component:i,glowColorStyle:r,unref:c,Visibility:ot,isVisible:Ct,isHidden:ya}}});function Rs(e,t,a,n,s,i){var r;return e.isVisible(e.visibility)?(h(),B("button",{key:0,onClick:t[0]||(t[0]=(...o)=>e.selectTab&&e.selectTab(...o)),class:$(["tabButton",{active:e.active,...e.unref(e.classes)}]),style:Be([{visibility:e.isHidden(e.visibility)?"hidden":void 0},e.glowColorStyle,(r=e.unref(e.style))!=null?r:{}])},[(h(),O(ie(e.component)))],6)):T("",!0)}var Ma=W(Ds,[["render",Rs],["__scopeId","data-v-485cbefe"]]);const Vs=F({__name:"Sticky",setup(e){const t=w("0"),a=new ResizeObserver(s),n=ve(null);function s(){let i=n.value;if(i==null)return;let r=0;for(;i.previousSibling;){const o=i.previousSibling;o.dataset&&"vSticky"in o.dataset&&(r+=o.offsetHeight),i=o}t.value=r+"px"}return Qe(s),document.fonts.ready.then(s),Bt(()=>{var r;const i=(r=n.value)==null?void 0:r.parentElement;i&&a.observe(i)}),(i,r)=>(h(),B("div",{class:"sticky",style:Be({top:t.value}),ref_key:"element",ref:n,"data-v-sticky":""},[be(i.$slots,"default",{},void 0,!0)],4))}});var Ps=W(Vs,[["__scopeId","data-v-cccac690"]]);const qs=F({props:{visibility:{type:J(Number,Boolean),required:!0},activeTab:{type:J(Object),required:!0},selected:{type:Object,required:!0},tabs:{type:J(Object),required:!0},style:J(String,Object,Array),classes:J(Object),buttonContainerStyle:J(String,Object,Array),buttonContainerClasses:J(Object)},components:{Sticky:Ps,TabButton:Ma},setup(e){const{activeTab:t}=he(e),a=V(()=>$e[P.theme].floatingTabs),n=ve("");Et(()=>{const o=fe(t);if(o==null){n.value="";return}if(st(o)){n.value=ue(o);return}n.value=ue(c(o.display))});const s=V(()=>{const o=fe(t);return st(o)||!o?void 0:c(o.classes)}),i=V(()=>{const o=fe(t);return st(o)||!o?void 0:c(o.style)});function r(o){const{display:u,style:m,classes:y,glowColor:p,visibility:C}=o;return{display:u,style:c(m),classes:y,glowColor:p,visibility:C}}return{floating:a,tabClasses:s,tabStyle:i,Visibility:ot,component:n,gatherButtonProps:r,unref:c,isVisible:Ct,isHidden:ya}}});function zs(e,t,a,n,s,i){var u,m;const r=Mt("TabButton"),o=Mt("Sticky");return e.isVisible(e.visibility)?(h(),B("div",{key:0,class:$(["tab-family-container",{...e.unref(e.classes),...e.tabClasses}]),style:Be([{visibility:e.isHidden(e.visibility)?"hidden":void 0},(u=e.unref(e.style))!=null?u:[],(m=e.tabStyle)!=null?m:[]])},[l(o,{class:$(["tab-buttons-container",e.unref(e.buttonContainerClasses)]),style:Be(e.unref(e.buttonContainerStyle))},{default:M(()=>[d("div",{class:$(["tab-buttons",{floating:e.floating}])},[(h(!0),B(j,null,la(e.unref(e.tabs),(y,p)=>(h(),O(r,He({onSelectTab:C=>e.selected.value=p,floating:e.floating,key:p,active:e.unref(y.tab)===e.unref(e.activeTab)},e.gatherButtonProps(y)),null,16,["onSelectTab","floating","active"]))),128))],2)]),_:1},8,["class","style"]),e.unref(e.activeTab)?(h(),O(ie(e.unref(e.component)),{key:0})):T("",!0)],6)):T("",!0)}var Os=W(qs,[["render",zs],["__scopeId","data-v-58dbf83a"]]);const Fs=Symbol("TabButton"),xs=Symbol("TabFamily");function Gs(e,t){if(Object.keys(e).length===0)throw console.warn("Cannot create tab family with 0 tabs"),"Cannot create tab family with 0 tabs";const a=Ca(Object.keys(e)[0],!1);return _t(()=>{var i;const n=(i=t==null?void 0:t())!=null?i:{};n.id=xt("tabFamily-"),n.type=xs,n[rt]=Os,n.tabs=Object.keys(e).reduce((r,o)=>{const u=e[o]();return u.type=Fs,u[rt]=Ma,K(u,"visibility"),Ge(u,"visibility",ot.Visible),K(u,"tab"),K(u,"display"),K(u,"classes"),K(u,"style"),K(u,"glowColor"),r[o]=u,r},{}),n.selected=a,n.activeTab=V(()=>{const r=c(s.tabs);if(a.value in r&&Ct(r[a.value].visibility))return c(r[a.value].tab);const o=Object.values(r).find(u=>Ct(u.visibility));return o?c(o.tab):null}),K(n,"visibility"),Ge(n,"visibility",ot.Visible),K(n,"classes"),K(n,"style"),K(n,"buttonContainerClasses"),K(n,"buttonContainerStyle"),n[wt]=function(){const{visibility:r,activeTab:o,selected:u,tabs:m,style:y,classes:p,buttonContainerClasses:C,buttonContainerStyle:b}=this;return{visibility:r,activeTab:o,selected:u,tabs:m,style:c(y),classes:p,buttonContainerClasses:C,buttonContainerStyle:b}};const s=n;return s})}var na="./assets/heart_small.5a26b7f7.png",Us="./assets/presence_small.bbe534cd.png",Ls="./assets/wins_small.a33d849a.png",mt="./assets/money_small.16f3e324.png";const Js=F({components:{Context:Ia},props:{index:{type:Number,required:!0},display:{type:J(Object,String,Function),required:!0},minimizedDisplay:J(Object,String,Function),minimized:{type:Object,required:!0},name:{type:J(String),required:!0},color:J(String),minimizable:J(Boolean),nodes:{type:Object,required:!0}},emits:["setMinimized"],setup(e){const{display:t,index:a,minimized:n,minimizedDisplay:s}=he(e),i=ka(t),r=It(s),o=V(()=>U.allowGoBack&&a.value>0&&!fe(n));function u(){q.tabs.splice(c(e.index),1/0)}function m(y){e.nodes.value=y}return{component:i,minimizedComponent:r,showGoBack:o,updateNodes:m,unref:c,goBack:u}}}),Ys={key:1};function Ws(e,t,a,n,s,i){const r=Mt("Context");return h(),B("div",{class:"layer-container",style:Be({"--layer-color":e.unref(e.color)})},[e.showGoBack?(h(),B("button",{key:0,class:"goBack",onClick:t[0]||(t[0]=(...o)=>e.goBack&&e.goBack(...o))},"\u274C")):T("",!0),e.unref(e.minimized)?(h(),B("button",{key:1,class:"layer-tab minimized",onClick:t[1]||(t[1]=o=>e.$emit("setMinimized",!1))},[e.minimizedComponent?(h(),O(ie(e.minimizedComponent),{key:0})):(h(),B("div",Ys,G(e.unref(e.name)),1))])):(h(),B("div",{key:2,class:$(["layer-tab",{showGoBack:e.showGoBack}])},[l(r,{onUpdateNodes:e.updateNodes},{default:M(()=>[(h(),O(ie(e.component)))]),_:1},8,["onUpdateNodes"])],2)),e.unref(e.minimizable)?(h(),B("button",{key:3,class:"minimize",onClick:t[2]||(t[2]=o=>e.$emit("setMinimized",!0))}," \u25BC ")):T("",!0)],4)}var Xs=W(Js,[["render",Ws],["__scopeId","data-v-a592996e"]]);const Da=e=>(ke("data-v-4b4bda40"),e=e(),Me(),e),js=Da(()=>d("h2",null,"Changelog",-1)),Ks=Da(()=>d("details",{open:""},[d("summary",null,[f("v0.0 Initial Commit - "),d("time",null,"2021-09-04")]),f(" This is the first release :D "),d("ul",null,[d("li",{class:"feature"},"Did everything"),d("li",{class:"fix"},"Had some fun"),d("li",{class:"breaking"},"Removed everything"),d("li",{class:"balancing"},"Created some bugs to fix later")])],-1)),Hs=F({__name:"Changelog",setup(e,{expose:t}){const a=w(!1);return t({open(){a.value=!0}}),(n,s)=>(h(),O(De,{modelValue:a.value,"onUpdate:modelValue":s[0]||(s[0]=i=>a.value=i)},{header:M(()=>[js]),body:M(()=>[Ks]),_:1},8,["modelValue"]))}});var Zs=W(Hs,[["__scopeId","data-v-4b4bda40"]]),$s=F({props:{element:Object,display:{type:J(Object,String,Function),required:!0},style:J(Object,String,Array),classes:J(Object),direction:J(String),xoffset:J(String),yoffset:J(String),pinned:Object},setup(e){const{element:t,display:a,pinned:n}=he(e),s=w(!1),i=V(()=>(fe(n)||s.value)&&r.value),r=It(a),o=ve(ue(L(()=>{const y=fe(t);return y==null?"":Ta(y)})));function u(y){const p=n;y.shiftKey&&p&&(p.value=!p.value,y.stopPropagation(),y.preventDefault())}const m=V(()=>fe(n)&&$e[P.theme].showPin);return{Direction:X,isHovered:s,isShown:i,comp:r,elementComp:o,unref:c,togglePinned:u,showPin:m}}});const ei={key:0,class:"material-icons pinned"};function ti(e,t,a,n,s,i){return h(),B("div",{class:$(["tooltip-container",{shown:e.isShown}]),onMouseenter:t[0]||(t[0]=r=>e.isHovered=!0),onMouseleave:t[1]||(t[1]=r=>e.isHovered=!1),onClickCapture:t[2]||(t[2]=(...r)=>e.togglePinned&&e.togglePinned(...r))},[be(e.$slots,"default",{},void 0,!0),e.elementComp?(h(),O(ie(e.elementComp),{key:0})):T("",!0),l(oa,{name:"fade",css:!!e.comp},{default:M(()=>{var r;return[e.isShown?(h(),B("div",{key:0,class:$(["tooltip",{top:e.unref(e.direction)===e.Direction.Up,left:e.unref(e.direction)===e.Direction.Left,right:e.unref(e.direction)===e.Direction.Right,bottom:e.unref(e.direction)===e.Direction.Down,...e.unref(e.classes)}]),style:Be([{"--xoffset":e.unref(e.xoffset)||"0px","--yoffset":e.unref(e.yoffset)||"0px"},(r=e.unref(e.style))!=null?r:{}])},[e.showPin?(h(),B("span",ei,"push_pin")):T("",!0),e.comp?(h(),O(ie(e.comp),{key:1})):T("",!0)],6)):T("",!0)]}),_:1},8,["css"])],34)}var Z=W($s,[["render",ti],["__scopeId","data-v-7a579aa7"]]);const Ue=e=>(ke("data-v-5d3cb6f4"),e=e(),Me(),e),ai={class:"info-modal-header"},ni=["src","alt"],si={class:"info-modal-title"},ii={key:0},ri={key:0},oi={key:0},li=Ue(()=>d("div",null," Made in Profectus, by thepaperpilot with inspiration from Acameada and Jacorb ",-1)),Ai=Ue(()=>d("br",null,null,-1)),ui=Ue(()=>d("br",null,null,-1)),ci=["href"],di=Ue(()=>d("span",{class:"material-icons info-modal-discord"},"discord",-1)),gi=Ue(()=>d("div",null,[d("a",{href:"https://discord.gg/WzejVAx",class:"info-modal-discord-link",target:"_blank"},[d("span",{class:"material-icons info-modal-discord"},"discord"),f(" The Paper Pilot Community ")])],-1)),mi=Ue(()=>d("div",null,[d("a",{href:"https://discord.gg/F3xveHV",class:"info-modal-discord-link",target:"_blank"},[d("span",{class:"material-icons info-modal-discord"},"discord"),f(" The Modding Tree ")])],-1)),fi=Ue(()=>d("br",null,null,-1));var hi=F({__name:"Info",props:{changelog:null},setup(e,{expose:t}){const a=e,{title:n,logo:s,author:i,discordName:r,discordLink:o,versionNumber:u,versionTitle:m}=U,y=he(a),p=w(!1),C=V(()=>Ft(q.timePlayed)),b=V(()=>ue(L(()=>l(j,null,[Ss.map(je)]))));t({open(){p.value=!0}});function _(){var S;(S=c(y.changelog))==null||S.open()}return(S,Q)=>(h(),O(De,{modelValue:p.value,"onUpdate:modelValue":Q[0]||(Q[0]=ee=>p.value=ee)},{header:M(()=>[d("div",ai,[c(s)?(h(),B("img",{key:0,class:"info-modal-logo",src:c(s),alt:c(n)},null,8,ni)):T("",!0),d("div",si,[d("h2",null,G(c(n)),1),d("h4",null,[f(" v"+G(c(u)),1),c(m)?(h(),B("span",ii,": "+G(c(m)),1)):T("",!0)])])])]),body:M(({shown:ee})=>[ee?(h(),B("div",ri,[c(i)?(h(),B("div",oi,"By "+G(c(i)),1)):T("",!0),li,Ai,d("div",{class:"link",onClick:_},"Changelog"),ui,d("div",null,[c(o)?(h(),B("a",{key:0,href:c(o),class:"info-modal-discord-link",target:"_blank"},[di,f(" "+G(c(r)),1)],8,ci)):T("",!0)]),gi,mi,fi,d("div",null,"Time Played: "+G(c(C)),1),(h(),O(ie(c(b))))])):T("",!0)]),_:1},8,["modelValue"]))}});var vi=W(hi,[["__scopeId","data-v-5d3cb6f4"]]);const pi=d("h2",null,"Settings",-1);var yi=F({__name:"Options",setup(e,{expose:t}){const a=w(!1),n=w("behaviour");function s(o){return o==n.value}function i(o){n.value=o}t({isTab:s,setTab:i,save:le,open(){a.value=!0}}),Object.keys($e).map(o=>({label:ns(o),value:o}));const r=V(()=>ue(L(()=>l(j,null,[Qa.map(je)]))));return he(P),he(q),V({get(){return q.devSpeed===0},set(o){q.devSpeed=o?0:null}}),L(()=>l("span",{class:"option-title"},[f("Unthrottled"),l("desc",null,[f("Allow the game to run as fast as possible. Not battery friendly.")])])),L(()=>l("span",{class:"option-title"},[f("Offline Production"),l(Z,{display:"Save-specific",direction:X.Right},{default:()=>[f("*")]}),l("desc",null,[f("Simulate production that occurs while the game is closed.")])])),L(()=>l("span",{class:"option-title"},[f("Autosave"),l(Z,{display:"Save-specific",direction:X.Right},{default:()=>[f("*")]}),l("desc",null,[f("Automatically save the game every second or when the game is closed.")])])),L(()=>l("span",{class:"option-title"},[f("Pause game"),l(Z,{display:"Save-specific",direction:X.Right},{default:()=>[f("*")]}),l("desc",null,[f("Stop everything from moving.")])])),L(()=>l("span",{class:"option-title"},[f("Theme"),l("desc",null,[f("How the game looks.")])])),L(()=>l("span",{class:"option-title"},[f("Show TPS"),l("desc",null,[f("Show TPS meter at the bottom-left corner of the page.")])])),L(()=>l("span",{class:"option-title"},[f("Align modifier units"),l("desc",null,[f("Align numbers to the beginning of the unit in modifier view.")])])),(o,u)=>(h(),O(De,{modelValue:a.value,"onUpdate:modelValue":u[0]||(u[0]=m=>a.value=m)},{header:M(()=>[pi]),body:M(()=>[(h(),O(ie(c(r))))]),_:1},8,["modelValue"]))}});const bi={class:"field"},Ci={key:0,class:"field-title"},Ni=F({__name:"Select",props:{title:null,modelValue:null,options:null,placeholder:null,closeOnSelect:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){var r;const a=e,n=It(Te(a,"title"),"span"),s=w((r=a.options.find(o=>o.value===a.modelValue))!=null?r:null);Ne(Te(a,"modelValue"),o=>{var u;fe(s)!==o&&(s.value=(u=a.options.find(m=>m.value===o))!=null?u:null)});function i(o){t("update:modelValue",o.value)}return(o,u)=>(h(),B("div",bi,[c(n)?(h(),B("span",Ci,[(h(),O(ie(c(n))))])):T("",!0),l(c(ja),{options:e.options,modelValue:s.value,"onUpdate:modelValue":[u[0]||(u[0]=m=>s.value=m),i],min:1,"label-by":"label",placeholder:e.placeholder,"close-on-select":e.closeOnSelect},null,8,["options","modelValue","placeholder","close-on-select"])]))}});const Bi=["onSubmit"],Ei={class:"field"},wi={key:0,class:"field-title"},_i=["placeholder"],Ii=F({__name:"Text",props:{title:null,modelValue:null,textArea:{type:Boolean},placeholder:null,maxHeight:null,submitOnBlur:{type:Boolean}},emits:["update:modelValue","submit","cancel"],setup(e,{emit:t}){const a=e,n=It(Te(a,"title"),"span"),s=ve(null);Bt(()=>{var u;(u=s.value)==null||u.focus()});const i=V({get(){var u;return(u=c(a.modelValue))!=null?u:""},set(u){t("update:modelValue",u)}});function r(){t("submit")}function o(){a.submitOnBlur!==!1?t("submit"):t("cancel")}return(u,m)=>(h(),B("form",{onSubmit:it(r,["prevent"])},[d("div",Ei,[c(n)?(h(),B("span",wi,[(h(),O(ie(c(n))))])):T("",!0),e.textArea?(h(),O(c(Ka),{key:1,modelValue:c(i),"onUpdate:modelValue":m[0]||(m[0]=y=>Ce(i)?i.value=y:null),placeholder:e.placeholder,maxHeight:e.maxHeight,onBlur:o,ref_key:"field",ref:s},null,8,["modelValue","placeholder","maxHeight"])):Ot((h(),B("input",{key:2,type:"text","onUpdate:modelValue":m[1]||(m[1]=y=>Ce(i)?i.value=y:null),placeholder:e.placeholder,class:$({fullWidth:!e.title}),onBlur:o,ref_key:"field",ref:s},null,42,_i)),[[xa,c(i)]])])],40,Bi))}});var Jt=W(Ii,[["__scopeId","data-v-90bd4994"]]);const Si={key:0},Qi=["onClick","disabled"],Ti={key:0},ki=["onClick"],Mi=F({__name:"DangerButton",props:{disabled:{type:Boolean},skipConfirm:{type:Boolean}},emits:["click","confirmingChanged"],setup(e,{emit:t}){const n=he(e),s=w(!1);Ne(s,o=>{t("confirmingChanged",o)});function i(){if(c(n.skipConfirm)){t("click");return}s.value&&t("click"),s.value=!s.value}function r(){s.value=!1}return(o,u)=>(h(),B("span",{class:$(["container",{confirming:s.value}])},[s.value?(h(),B("span",Si,"Are you sure?")):T("",!0),d("button",{onClick:it(i,["stop"]),class:"button danger",disabled:e.disabled},[s.value?(h(),B("span",Ti,"Yes")):be(o.$slots,"default",{key:1},void 0,!0)],8,Qi),s.value?(h(),B("button",{key:1,class:"button",onClick:it(r,["stop"])},"No",8,ki)):T("",!0)],2))}});var Di=W(Mi,[["__scopeId","data-v-2f8ef34c"]]);const Ri=["onClick"],Vi=F({__name:"FeedbackButton",props:{left:{type:Boolean}},emits:["click"],setup(e,{emit:t}){const a=w(!1),n=w(null);function s(){t("click"),n.value&&clearTimeout(n.value),a.value=!1,Qe(()=>{a.value=!0,n.value=setTimeout(()=>a.value=!1,500)})}return(i,r)=>(h(),B("button",{onClick:it(s,["stop"]),class:$(["feedback",{activated:a.value,left:e.left}])},[be(i.$slots,"default",{},void 0,!0)],10,Ri))}});var Pi=W(Vi,[["__scopeId","data-v-01a1b95c"]]);const we=e=>(ke("data-v-c3447434"),e=e(),Me(),e),qi=we(()=>d("div",{class:"handle material-icons"},"drag_handle",-1)),zi={key:0,class:"actions"},Oi=we(()=>d("span",{class:"material-icons"},"content_paste",-1)),Fi=we(()=>d("span",{class:"material-icons"},"content_copy",-1)),xi=we(()=>d("span",{class:"material-icons"},"edit",-1)),Gi=we(()=>d("span",{class:"material-icons",style:{margin:"-2px"}},"delete",-1)),Ui={key:1,class:"actions"},Li=we(()=>d("span",{class:"material-icons"},"check",-1)),Ji=we(()=>d("span",{class:"material-icons"},"close",-1)),Yi={key:2,class:"details"},Wi={class:"save-version"},Xi=we(()=>d("br",null,null,-1)),ji={key:0},Ki={key:3,class:"details"},Hi={key:4,class:"details error"},Zi=we(()=>d("br",null,null,-1)),$i=F({__name:"Save",props:{save:null},emits:["export","open","duplicate","delete","editName"],setup(e,{emit:t}){const a=e,{save:n}=he(a),s=new Intl.DateTimeFormat("en-US",{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"}),i=w(!1),r=w(!1),o=w("");Ne(i,()=>{var p;return o.value=(p=n.value.name)!=null?p:""});const u=V(()=>n.value!=null&&n.value.id===q.id),m=V(()=>{var p;return u.value?q.time:(p=n.value!=null&&n.value.time)!=null?p:0});function y(){t("editName",o.value),i.value=!1}return(p,C)=>(h(),B("div",{class:$(["save",{active:c(u)}])},[qi,i.value?(h(),B("div",Ui,[d("button",{onClick:y,class:"button"},[l(Z,{display:"Save",direction:c(X).Left,class:"info"},{default:M(()=>[Li]),_:1},8,["direction"])]),d("button",{onClick:C[5]||(C[5]=b=>i.value=!i.value),class:"button"},[l(Z,{display:"Cancel",direction:c(X).Left,class:"info"},{default:M(()=>[Ji]),_:1},8,["direction"])])])):(h(),B("div",zi,[c(n).error==null&&!r.value?(h(),O(Pi,{key:0,onClick:C[0]||(C[0]=b=>t("export")),class:"button",left:""},{default:M(()=>[l(Z,{display:"Export",direction:c(X).Left,class:"info"},{default:M(()=>[Oi]),_:1},8,["direction"])]),_:1})):T("",!0),c(n).error==null&&!r.value?(h(),B("button",{key:1,onClick:C[1]||(C[1]=b=>t("duplicate")),class:"button"},[l(Z,{display:"Duplicate",direction:c(X).Left,class:"info"},{default:M(()=>[Fi]),_:1},8,["direction"])])):T("",!0),c(n).error==null&&!r.value?(h(),B("button",{key:2,onClick:C[2]||(C[2]=b=>i.value=!i.value),class:"button"},[l(Z,{display:"Edit Name",direction:c(X).Left,class:"info"},{default:M(()=>[xi]),_:1},8,["direction"])])):T("",!0),l(Di,{disabled:c(u),onClick:C[3]||(C[3]=b=>t("delete")),onConfirmingChanged:C[4]||(C[4]=b=>r.value=b)},{default:M(()=>[l(Z,{display:"Delete",direction:c(X).Left,class:"info"},{default:M(()=>[Gi]),_:1},8,["direction"])]),_:1},8,["disabled"])])),c(n).error==null&&!i.value?(h(),B("div",Yi,[d("button",{class:"button open",onClick:C[6]||(C[6]=b=>t("open"))},[d("h3",null,G(c(n).name),1)]),d("span",Wi,"v"+G(c(n).modVersion),1),Xi,c(m)?(h(),B("div",ji,"Last played "+G(c(s).format(c(m))),1)):T("",!0)])):c(n).error==null&&i.value?(h(),B("div",Ki,[l(Jt,{modelValue:o.value,"onUpdate:modelValue":C[7]||(C[7]=b=>o.value=b),class:"editname",onSubmit:y},null,8,["modelValue"])])):(h(),B("div",Hi,[f(" Error: Failed to load save with id "+G(c(n).id),1),Zi,f(G(c(n).error),1)]))],2))}});var er=W($i,[["__scopeId","data-v-c3447434"]]);const Yt=e=>(ke("data-v-5b5b1604"),e=e(),Me(),e),tr=Yt(()=>d("h2",null,"Saves Manager",-1)),ar={class:"modal-footer"},nr={class:"field"},sr=Yt(()=>d("span",{class:"field-title"},"Create Save",-1)),ir={class:"field-buttons"},rr={class:"footer"},or=Yt(()=>d("div",{style:{"flex-grow":"1"}},null,-1)),lr=F({__name:"SavesManager",setup(e,{expose:t}){const a=w(!1),n=w(null);t({open(){a.value=!0}});const s=w(!1),i=w(""),r=w(null);Ne(i,N=>{N?Qe(()=>{try{if(N[0]!=="{")if(N[0]==="e")N=decodeURIComponent(escape(atob(N)));else if(N[0]==="\u1BE1")N=Se.decompressFromUTF16(N);else{console.warn("Unable to determine preset encoding",N),s.value=!0;return}const I=JSON.parse(N);if(typeof I!="object"){s.value=!0;return}const z=vt();I.id=z,le(I),i.value="",s.value=!1,P.saves.push(z)}catch{s.value=!0}}):s.value=!1});let o={},u=w(Object.keys(o).reduce((N,I)=>(N.push({label:I.split("/").slice(-1)[0].slice(0,-4),value:o[I]}),N),[]));const m=zt({});function y(N){if(m[N]==null){let I=localStorage.getItem(N);if(I==null)m[N]={error:"Save doesn't exist in localStorage",id:N};else if(I==="dW5kZWZpbmVk")m[N]={error:"Save is undefined",id:N};else try{if(I[0]!=="{")if(I[0]==="e")I=decodeURIComponent(escape(atob(I)));else if(I[0]==="\u1BE1")I=Se.decompressFromUTF16(I);else return console.warn("Unable to determine preset encoding",I),s.value=!0,m[N]={error:"Unable to determine preset encoding",id:N},m[N];m[N]={...JSON.parse(I),id:N}}catch(z){m[N]={error:z,id:N},console.warn(`SavesManager: Failed to load info about save with id ${N}:
|
|
${z}
|
|
${I}`)}}return m[N]}Ne(a,N=>{N&&Object.keys(m).forEach(I=>delete m[I])});const p=V(()=>P.saves.reduce((N,I)=>(N[I]=y(I),N),{}));function C(N){let I;switch(q.id===N?I=ba(q):I=JSON.stringify(p.value[N]),U.exportEncoding){default:console.warn(`Unknown save encoding: ${U.exportEncoding}. Defaulting to lz`);case"lz":I=Se.compressToUTF16(I);break;case"base64":I=btoa(unescape(encodeURIComponent(I)));break;case"plain":break}const z=document.createElement("textarea");z.value=I,document.body.appendChild(z),z.select(),z.setSelectionRange(0,99999),document.execCommand("copy"),document.body.removeChild(z)}function b(N){q.id===N&&le();const I={...p.value[N],id:vt()};le(I),P.saves.push(I.id)}function _(N){P.saves=P.saves.filter(I=>I!==N),localStorage.removeItem(N),m[N]=void 0}function S(N){p.value[q.id].time=q.time,le(),m[q.id]=void 0,xe(p.value[N]),m[N]=void 0}function Q(N){if(r.value=N,Qe(()=>{r.value=null}),N[0]!=="{")if(N[0]==="e")N=decodeURIComponent(escape(atob(N)));else if(N[0]==="\u1BE1")N=Se.decompressFromUTF16(N);else{console.warn("Unable to determine preset encoding",N);return}const I=JSON.parse(N);I.id=vt(),le(I),P.saves.push(I.id),S(I.id)}function ee(N,I){const z=p.value[N];z!=null&&(z.name=I,q.id===N?(q.name=I,le()):(le(z),m[N]=void 0))}return(N,I)=>(h(),O(De,{modelValue:a.value,"onUpdate:modelValue":I[4]||(I[4]=z=>a.value=z),ref_key:"modal",ref:n},{header:M(()=>[tr]),body:M(({shown:z})=>[z?(h(),O(c(Xa),{key:0,list:c(P).saves,handle:".handle",itemKey:se=>se},{item:M(({element:se})=>[l(er,{save:c(p)[se],onOpen:pe=>S(se),onExport:pe=>C(se),onEditName:pe=>ee(se,pe),onDuplicate:pe=>b(se),onDelete:pe=>_(se)},null,8,["save","onOpen","onExport","onEditName","onDuplicate","onDelete"])]),_:1},8,["list","itemKey"])):T("",!0)]),footer:M(()=>[d("div",ar,[l(Jt,{modelValue:i.value,"onUpdate:modelValue":I[0]||(I[0]=z=>i.value=z),title:"Import Save",placeholder:"Paste your save here!",class:$({importingFailed:s.value})},null,8,["modelValue","class"]),d("div",nr,[sr,d("div",ir,[d("button",{class:"button",onClick:I[1]||(I[1]=z=>S(c(Xe)().id))},"New Game"),Object.keys(c(u)).length>0?(h(),O(Ni,{key:0,options:c(u),modelValue:r.value,"onUpdate:modelValue":I[2]||(I[2]=z=>Q(z)),closeOnSelect:"",placeholder:"Select preset",class:"presets"},null,8,["options","modelValue"])):T("",!0)])]),d("div",rr,[or,d("button",{class:"button modal-default-button",onClick:I[3]||(I[3]=z=>a.value=!1)}," Close ")])])]),_:1},8,["modelValue"]))}});var Ra=W(lr,[["__scopeId","data-v-5b5b1604"]]);const ce=e=>(ke("data-v-d43b25a6"),e=e(),Me(),e),Ar=["src","alt"],ur={key:1,class:"title"},cr=ce(()=>d("div",{style:{"flex-grow":"1",cursor:"unset"}},null,-1)),dr={class:"discord"},gr={class:"discord-links"},mr={key:0},fr=["href"],hr=ce(()=>d("li",null,[d("a",{href:"https://discord.gg/WzejVAx",target:"_blank"},"The Paper Pilot Community")],-1)),vr=ce(()=>d("li",null,[d("a",{href:"https://discord.gg/F3xveHV",target:"_blank"},"The Modding Tree")],-1)),pr={href:"https://forums.moddingtree.com/",target:"_blank"},yr=ce(()=>d("span",{class:"material-icons"},"forum",-1)),br=ce(()=>d("span",{class:"material-icons"},"info",-1)),Cr=ce(()=>d("span",{class:"material-icons"},"help",-1)),Nr=ce(()=>d("span",{class:"material-icons"},"settings",-1)),Br=ce(()=>d("span",{class:"material-icons"},"settings",-1)),Er=ce(()=>d("span",{class:"material-icons"},"info",-1)),wr={href:"https://forums.moddingtree.com/",target:"_blank"},_r=ce(()=>d("span",{class:"material-icons"},"forum",-1)),Ir={class:"discord"},Sr={class:"discord-links"},Qr={key:0},Tr=["href"],kr=ce(()=>d("li",null,[d("a",{href:"https://discord.gg/WzejVAx",target:"_blank"},"The Paper Pilot Community")],-1)),Mr=ce(()=>d("li",null,[d("a",{href:"https://discord.gg/F3xveHV",target:"_blank"},"The Modding Tree")],-1)),Dr=F({__name:"Nav",setup(e){const t=w(null),a=w(null),n=w(null),s=w(null),{useHeader:i,banner:r,title:o,discordName:u,discordLink:m,versionNumber:y}=U;function p(){window.open(m,"mywindow")}return(C,b)=>(h(),B(j,null,[c(i)?(h(),B("div",He({key:0,class:"nav"},C.$attrs),[c(r)?(h(),B("img",{key:0,src:c(r),class:"banner",alt:c(o)},null,8,Ar)):(h(),B("div",ur,G(c(o)),1)),d("div",{onClick:b[0]||(b[0]=_=>{var S;return(S=s.value)==null?void 0:S.open()}),class:"version-container"},[l(Z,{display:"Changelog",direction:c(X).Down,class:"version"},{default:M(()=>[d("span",null,"v"+G(c(y)),1)]),_:1},8,["direction"])]),cr,d("div",dr,[d("span",{onClick:p,class:"material-icons"},"discord"),d("ul",gr,[c(m)?(h(),B("li",mr,[d("a",{href:c(m),target:"_blank"},G(c(u)),9,fr)])):T("",!0),hr,vr])]),d("div",null,[d("a",pr,[l(Z,{display:"Forums",direction:c(X).Down,yoffset:"5px"},{default:M(()=>[yr]),_:1},8,["direction"])])]),d("div",{onClick:b[1]||(b[1]=_=>{var S;return(S=t.value)==null?void 0:S.open()})},[l(Z,{display:"Info",direction:c(X).Down,class:"info"},{default:M(()=>[br]),_:1},8,["direction"])]),d("div",{onClick:b[2]||(b[2]=()=>c(P).showTutorial=!0)},[l(Z,{display:"Help",direction:c(X).Down,class:"info"},{default:M(()=>[Cr]),_:1},8,["direction"])]),d("div",{onClick:b[3]||(b[3]=_=>{var S;return(S=n.value)==null?void 0:S.open()})},[l(Z,{display:"Settings",direction:c(X).Down,xoffset:"-66px"},{default:M(()=>[Nr]),_:1},8,["direction"])])],16)):(h(),B("div",He({key:1,class:"overlay-nav"},C.$attrs),[d("div",{onClick:b[4]||(b[4]=_=>{var S;return(S=s.value)==null?void 0:S.open()}),class:"version-container"},[l(Z,{display:"Changelog",direction:c(X).Right,xoffset:"25%",class:"version"},{default:M(()=>[d("span",null,"v"+G(c(y)),1)]),_:1},8,["direction"])]),d("div",{onClick:b[5]||(b[5]=_=>{var S;return(S=n.value)==null?void 0:S.open()})},[l(Z,{display:"Settings",direction:c(X).Right},{default:M(()=>[Br]),_:1},8,["direction"])]),d("div",{onClick:b[6]||(b[6]=_=>{var S;return(S=t.value)==null?void 0:S.open()})},[l(Z,{display:"Info",direction:c(X).Right},{default:M(()=>[Er]),_:1},8,["direction"])]),d("div",null,[d("a",wr,[l(Z,{display:"Forums",direction:c(X).Right,xoffset:"7px"},{default:M(()=>[_r]),_:1},8,["direction"])])]),d("div",Ir,[d("span",{onClick:p,class:"material-icons"},"discord"),d("ul",Sr,[c(m)?(h(),B("li",Qr,[d("a",{href:c(m),target:"_blank"},G(c(u)),9,Tr)])):T("",!0),kr,Mr])])],16)),l(vi,{ref_key:"info",ref:t,changelog:s.value},null,8,["changelog"]),l(Ra,{ref_key:"savesManager",ref:a},null,512),l(yi,{ref_key:"options",ref:n},null,512),l(Zs,{ref_key:"changelog",ref:s},null,512)],64))}});var Va=W(Dr,[["__scopeId","data-v-d43b25a6"]]);const Rr={class:"inner-tab"},Vr=F({__name:"Game",setup(e){const t=Te(q,"tabs"),a=V(()=>Object.keys(ne)),n=U.useHeader;function s(i){const{display:r,minimized:o,name:u,color:m,minimizable:y,nodes:p,minimizedDisplay:C}=i;return{display:r,minimized:o,name:u,color:m,minimizable:y,nodes:p,minimizedDisplay:C}}return(i,r)=>(h(),B("div",{class:$(["tabs-container",{useHeader:c(n)}])},[(h(!0),B(j,null,la(c(t),(o,u)=>{var m,y;return h(),B("div",{key:u,class:$(["tab",c((m=c(ne)[o])==null?void 0:m.classes)]),style:Be(c((y=c(ne)[o])==null?void 0:y.style))},[u===0&&!c(n)?(h(),O(Va,{key:0})):T("",!0),d("div",Rr,[c(a).includes(o)?(h(),O(Xs,He({key:0},s(c(ne)[o]),{index:u,onSetMinimized:p=>c(ne)[o].minimized.value=p}),null,16,["index","onSetMinimized"])):(h(),O(ie(o),{key:1,index:u},null,8,["index"]))])],6)}),128))],2))}});var Pr=W(Vr,[["__scopeId","data-v-3e0f1aab"]]);ca.registerPlugin(Ha);Za.registerPlugin("batch",$a);var qr=F({props:{style:J(String,Object,Array),classes:J(Object),onInit:{type:Function,required:!0},id:{type:String,required:!0},onContainerResized:Function,onHotReload:Function},setup(e){const t=ve(null),a=new ResizeObserver(i),n=ve(null);Bt(()=>{var o,u;const r=n.value;r!=null&&(a.observe(r),t.value=new ca({resizeTo:r,backgroundAlpha:0}),(o=n.value)==null||o.appendChild(t.value.view),(u=e.onInit)==null||u.call(e,t.value)),i(),e.onHotReload&&Qe(e.onHotReload)}),Ga(()=>{var r;(r=t.value)==null||r.destroy()});let s=!0;function i(){s&&(s=!1,Qe(()=>{var r;n.value!=null&&((r=e.onContainerResized)==null||r.call(e,n.value.getBoundingClientRect())),s=!0}))}return ae.on("fontsLoaded",i),{unref:c,resizeListener:n}}});function zr(e,t,a,n,s,i){return h(),B("div",{ref:"resizeListener",class:$(["resize-listener",e.unref(e.classes)]),style:Be(e.unref(e.style))},null,6)}var Or=W(qr,[["render",zr],["__scopeId","data-v-0b99a6fc"]]);const Fr=Symbol("Particles");function xr(e){return _t(()=>{var s,i;const t=(s=e==null?void 0:e())!=null?s:{};t.id=xt("particles-"),t.type=Fr,t[rt]=Or,t.app=ve(null),t.addEmitter=r=>{const o=t;return o.app.value?Promise.resolve(new Xt(o.app.value.stage,r)):new Promise(u=>{a.push({resolve:u,config:r})})};let a=[];function n(r){const o=t;o.app.value=r,a.forEach(({resolve:u,config:m})=>u(new Xt(r.stage,m))),a=[]}return t.onContainerResized=(i=t.onContainerResized)==null?void 0:i.bind(t),t[wt]=function(){const{id:r,style:o,classes:u,onContainerResized:m,onHotReload:y}=this;return{id:r,style:c(o),classes:u,onContainerResized:m,onHotReload:y,onInit:n}},t})}window.upgradeConfig=en;const Gr=Symbol("Reset");function Ur(e){return _t(()=>{const t=e();return t.id=xt("reset-"),t.type=Gr,t.reset=function(){var s;const a=i=>{if(i!=null&&typeof i=="object")if(Ze in i){const r=i;r.value=r[Ze]}else!(i instanceof E)&&!Ce(i)&&Object.values(i).forEach(r=>a(r))},n=c(t.thingsToReset);kt(n)?n.forEach(a):a(n),ae.emit("reset",t),(s=t.onReset)==null||s.call(t)},K(t,"thingsToReset"),t})}const ft={};ae.on("removeLayer",e=>{var t;(t=ft[e.id])==null||t.call(ft),ft[e.id]=void 0});var Lr="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMAAAADACAYAAABS3GwHAAAAAXNSR0IArs4c6QAABT5JREFUeJzt3UGrVVUYBuBj2ERSikSKRmXixDBoEl6kBpVSEBUGgRbUyF9QTYQLd6KDaBoNykqhSKpJoBBBmNakgeRErGahiUGkOAps4nB9t1btc8/Z532e4Xf3XXt55WWxP9ZeezIBAAAAAAAAAAAAAAAAYBzWzXoC8+7mzas3Zz2H/2Pdus3+j1dx26wnALMkAEQTAKIJANEEgGjrZz2Btdbb1Vna9Mq0prImev+9aV0jKwDRBIBoAkA0ASCaABBtYbtAVfejt6tz5sqJQeYzK0ub9nVdX/3dFrU7ZAUgmgAQTQCIJgBEEwCijebJfqg9PGPv6kzb0pZ21+jMnx8262PvDlkBiCYARBMAogkA0QSAaHO3F2ioPTxDuX7hXLN+x/adazyT1Y1lnvPGCkA0ASCaABBNAIgmAESb2T6O3m7PqdOHmvWqy1Htaan0jj8WVXdoz+6VZn1R9/xUrABEEwCiCQDRBIBoAkC0udsLVOntxlRvflXdod7xv3nq8Wb9pR/ON+uXfr/aNX6ve+/e3Kx//MiO4jfa16exAhBNAIgmAEQTAKIJANFG0wXqVXV7jr79dLN+8fh7zfq2/a816499/W2zvrL1/n8xu+GtbL6rWa/mefSDd5v1ai/Wop4abQUgmgAQTQCIJgBEEwCiLewbYZXy9OPOU6NvfPZps77hhRe7xqn89f3ZZn39o7u6xqnm+eTBT5p1b4RBEAEgmgAQTQCIJgBEm7sn+3k7L2js3xRL++ZXLysA0QSAaAJANAEgmgAQbWHfCKtORa5cPvJ8s151Ub784mDX+HfueqLr+sofZ79q1p957p1mXbdndVYAogkA0QSAaAJANAEg2sJ2gapvYP3y8oPN+oZinKo7NFRXp1d138tHfmvW08756WUFIJoAEE0AiCYARBMAoi1sF2jatr5/vFn/+dX9Ux2/V7nHSXdoMplYAQgnAEQTAKIJANEEgGhz92Tfey5QZeOvy13Xn3vzWLO+YcdDXePMyo3zPzbr1fy3HWifm3TtvuVmfVHfLLMCEE0AiCYARBMAogkA0ewFumXn4QPNetUdqq6vXDzWPqeo6sb0jtM7/8mkfd+0vUNWAKIJANEEgGgCQDQBIJou0D+Ydnfo5IVtXddvnfSdel3p7koV9bF3h6wARBMAogkA0QSAaAJAtIXtAg2196Zy6a3DzXp1nk91372Ti1333bZ9mPn3Onn7jmZ9aY3nMTQrANEEgGgCQDQBIJoAEG3uukDVXpGhzguqukOVoU57Hkpvd+uBj35q1i8faZ8XVHV7FpUVgGgCQDQBIJoAEE0AiDZ3XaDKUN2h889u7rrv3qK7Mu29RtN2zxuft38wZ12vabMCEE0AiCYARBMAogkA0UbTBarMqjs0q27PUPetvvm1tGnfIOPM2/k/FSsA0QSAaAJANAEgmgAQbRRP6v/FUG+QjV1vl6b6u1XG0u2pWAGIJgBEEwCiCQDRBIBoo98LNJQzV050Xb+0pb1npuq6lOMUXalTpw91jbNn90rX9ZWxd3V6WQGIJgBEEwCiCQDRBIBoAkA0ASCaABBNAIgmAEQTAKLZC3TL9Qvt056/e/j1Zn25GKfa29O7R6gy1HyqN7/sBYIgAkA0ASCaABBNAIi2sE/8vecCLV+7NtX5LG/c2Hf9jOYz9tOee1kBiCYARBMAogkA0QSAaAv5ZL+aWZ0aPdR5QUNJ6/ZUrABEEwCiCQDRBIBoAkC0qCf+1fR+G6tXb3dl3uazqKwARBMAogkA0QSAaAIAAAAAAAAAAADA6P0N+l5GUGAc/VMAAAAASUVORK5CYII=",Jr="data:image/png;base64,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",Yr="data:image/png;base64,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",Wr="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMAAAADACAYAAABS3GwHAAAAAXNSR0IArs4c6QAABV5JREFUeJzt3c+LVlUcBvAxjKBNG7Ef0oCIZEQ/XIwQtYgwWmhl5J8grRSCIoJqFUEIQaAFUhG0NsrKIJJoE0JuKgokCaHQSty0CSLBFrY839Ez3Xfue+f5fJaH8b7HGR4O78M55y4sAAAAAAAAAAAAAAAAADAN68aewLy7fPni5bHn8H+sW7fB33gZ1409ARiTABBNAIgmAEQTAKKtH3sCq6231Vna9OSsprIqev+/aa2RFYBoAkA0ASCaABBNAIi2Zlugqv3obXVO/fz5IPMZy9KmR7t+vvq9rdV2yApANAEgmgAQTQCIJgBEm/w3+962Z+qtzqwtbWm3RqfOfdgcn3o7ZAUgmgAQTQCIJgBEEwCirdm9QEO5cPZMc3zj5q2rPJPlTWWe88YKQDQBIJoAEE0AiCYARJv0Po7l9O4ROn7icHN86i1K1Q7t2rl/kOdPfY+QFYBoAkA0ASCaABBNAIg2+b1AQ73D6+PXDjbHXzj2aXP84u+/DfGxpQ233Nocf+2J3c3xfUfebo73tlgHX9/X9fNVqzaV+4WsAEQTAKIJANEEgGgCQLTJtEBDvdvrjUMHmuMPPL6nOX7upwd7PnYwB+68ozm+79332v/g0qXm8NeftVus6vfwzIFDzfHedmgqrABEEwCiCQDRBIBoAkC0udqXsbAw4Lu9ipNK1XOOHXmuOX7bzke6PvfP779rjt90z71dz6mcP/FFc7x3ntUt0FXb8/yz7zTHnQiDCRMAogkA0QSAaAJAtNG+qfe2PSdP/931/Pu33dA/qYapv1Ost+2paIFgDRIAogkA0QSAaAJAtJmfCBuq7Tl7tH1PTuXk6fa9PVU7VLUiVYvywdFXmuOL23dcw+yubvfdfS3NH3/92hzX9izPCkA0ASCaABBNAIgmAESb+Tf4sVqgzXv7WqDKw9sea47/+Mu3Xc/pddfifV0//+XpTwb53LXa9lSsAEQTAKIJANEEgGgCQLS5a4F6T2Bd+ueh5vj5H9rv/HrzpW+6nj91VTuU1vZUrABEEwCiCQDRBIBoAkC0mZ8Iq1qFuh1qn8Cq2qH113/VHF/cXs1onBbo1Y+ONsdf3LN3pp978423N8d73/BemXprZAUgmgAQTQCIJgBEEwCijfam+KHaoep+nrFUbU91om2odqja81O1QL3tUKX6e02lHbICEE0AiCYARBMAogkA0UZrgXpPilW3HD+19+Wuz63aj1699/bMm7fef3qQ5/TuKZq3dsgKQDQBIJoAEE0AiCYARButBRrKUO/Aqtqh3ran2sMz1omw6t1hXGEFIJoAEE0AiCYARBMAos3VvoyFheH2CM267RlL9W6yqu2pboHuPflVmfot01YAogkA0QSAaAJANAEg2tztBeq/L2iYNmPe9LY9var2ptdU2p6KFYBoAkA0ASCaABBNAIg2dy1QZah2qLoPZ3H7jpVObSaWtrRvwz5+4nBzfNfO/V3Pn3p7MxQrANEEgGgCQDQBIJoAEG3NNgG97VD1JvpeVXvTq2p7elXt0NRPcg3FCkA0ASCaABBNAIgmAESbzF6geVO1PUOdtKraqqHaIa6wAhBNAIgmAEQTAKIJANG0QCtU7R1a2tTXDg110k07tDJWAKIJANEEgGgCQDQBINqabYH625W+e3g2bt660qld43y0PavBCkA0ASCaABBNAIgmAERbsy3QrF04e6Y5XrU05X1ExR6hod7w7v6f5VkBiCYARBMAogkA0QSAaJqA/8z6TfRDtTHVPCvanuVZAYgmAEQTAKIJANEEgGgagqvobV0q2pj5ZAUgmgAQTQCIJgBEEwAAAAAAAAAAAAAm71+GfXJS6hdsVQAAAABJRU5ErkJggg==",Xr="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMAAAADACAYAAABS3GwHAAAAAXNSR0IArs4c6QAABHZJREFUeJzt3TFrJVUYx+Eb2UqWoBgESxHZRtjCRjYsWqgL2ogoCIKF1X4Jq3wAW7GQVRAURWwsBBHEzWJjIdiIH0BYVhARKyEWSXne6KuTe2fm/zzlIQ6TlR+HvJyZ2WwAAAAAAAAAAAAAAAAAWIa9Xd/A3J2c3DvZ9T38H3t7B/4fn+O+Xd8A7JIAiCYAogmAaAIg2qVd38C2dac6h/tvXNStbEX3902bGtkBiCYAogmAaAIgmgCIttopUDX96E51ju9+Osn97Mrh/iutn6/+3dY6HbIDEE0ARBMA0QRANAEQbTF/2U91hmfpU52LdvjweGp0/PsHw/WlT4fsAEQTANEEQDQBEE0ARJvdWaCpzvBM5Y+ffhiuX75ydct3cr6l3Ofc2AGIJgCiCYBoAiCaAIi2s3Mc3WnPl9++NVyvphzVmZZK9/pLUU2Hblw/Gq6v9cxPxQ5ANAEQTQBEEwDRBEC02Z0FqnSnMdWTX9V0qHv9b55/Zrj+2vc/Dtd/+fVe6/pdjzx0MFz/6Mkniv9i/PNp7ABEEwDRBEA0ARBNAERbzBSoq5r23Hr7heH6zx++N1x//PU3h+tPf317uH702KP/4u6md3Tw4HC9us9b7787XK/OYq31rdF2AKIJgGgCIJoAiCYAoq32ibBK+fbj5luj//zsk+H6/S+/2rpO5a/v7gzXLz11rXWd6j6fu/nxcN0TYRBEAEQTANEEQDQBEG12f9nP7X1BS/+mWNo3v7rsAEQTANEEQDQBEE0ARFvtE2HVW5Er1VTkcH88Rfni85ut6z9w7dnWz1d+u/PVcP3Fl94Zrpv2nM8OQDQBEE0ARBMA0QRAtNVOgbqqs0ZzOwtUTZOO747XqynWWt/z02UHIJoAiCYAogmAaAIgminQmerJsq6p3jtUqc44VU/Ald9KMx3abDZ2AMIJgGgCIJoAiCYAoq12CnTj+tFwfW5vme6a6vcyHTplByCaAIgmAKIJgGgCINpqp0Cc6p4dSmMHIJoAiCYAogmAaAIgminQwpRneIqzSVM96bZWdgCiCYBoAiCaAIgmAKKtdgpUTT+6T1SxbnYAogmAaAIgmgCIJgCiLeadLtV7aapve3WnOtV0qDK3b4dVT361f6+wL8vbAYgmAKIJgGgCIJoAiLaYs0DVFKI7HarMbapTqaY9XWnTnoodgGgCIJoAiCYAogmAaIuZAlUuejrUNdWUpqs682Pacz47ANEEQDQBEE0ARBMA0RY/BZqb7hNY7JYdgGgCIJoAiCYAogmAaKZA/1H1Ta7q7E15nR2914hTdgCiCYBoAiCaAIgmAKIJgGgCIJoAiCYAogmAaAIgmrNAZ6r3+Vy+cnXLd8I22QGIJgCiCYBoAiCaAIhmCvQPqulQ9cRW9YRX90mxru79VG/PTntrtB2AaAIgmgCIJgCiCYBoUX/xbzYX/+2w7je55nY/aewARBMA0QRANAEQTQBEMwk4U01juqaarsztftbKDkA0ARBNAEQTANEEAAAAAAAAAAAAwOL9DQsGFzoD+UY/AAAAAElFTkSuQmCC",jr="data:image/png;base64,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",Kr="./assets/shop.3860773a.gif",Hr="data:image/png;base64,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",Zr="data:image/png;base64,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",$r="./assets/start stream.dd66a6ec.png",eo="data:image/png;base64,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";const to=F({__name:"Node",props:{id:null},setup(e){const a=he(e),n=Wt(Gt,()=>{}),s=Wt(Ut,()=>{}),i=ve(null),r=V(()=>i.value&&i.value.parentElement);return Ne([r,a.id],([o,u],[m,y])=>{m&&s(c(y)),o&&n(u,o)}),Ua(()=>s(c(a.id))),(o,u)=>(h(),B("div",{class:"node",ref_key:"node",ref:i},null,512))}});var ao=W(to,[["__scopeId","data-v-a48cb382"]]),no="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMAAAADACAYAAABS3GwHAAAAAXNSR0IArs4c6QAAAqhJREFUeJzt3LFqFFEYBeBdERGJCaKgESUWCsZCTG0dbSyCZTp9B0ufxMJu38EHsA5YCDaiKGihiCxYuhZp7x254e6O6/m+8me4M1k4/HCYzGQCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkGg69gOs2mLxbbHM86fTS8XfdKz7MuzU2A8AYxIAogkA0QSAaAJAtNNjP8Cy1FqX+zceRt1XOzTMBiCaABBNAIgmAEQTAKKtfQvU2rrsb10tzu9t/i7O9y5sF+dHP74U5w92D4rzZ9evNJ1fU7tv7e/VDg2zAYgmAEQTAKIJANEEgGhr3wL10tr21Ly4dbvLObXrq63Rp69N53PMBiCaABBNAIgmAEQTAKLFtUCff30vzl9+LF//ZKdPO1TT2vb0ui/HbACiCQDRBIBoAkA0ASBaXAt07dzF4rzWDk0ml4vTXi1N6zneBerLBiCaABBNAIgmAEQTAKL9t9+G6fW9oFo79Hz3TnHe692e2vWHb46K89cfXhXnvv8zzAYgmgAQTQCIJgBEEwCixTUE69IOaXtWwwYgmgAQTQCIJgBEEwCixTUHGxubxfl8/n6Udujpu7fF+eOzZ4rz2c95ca4dOhkbgGgCQDQBIJoAEE0AiKYh+IvWd4da1dqb2vmHW+eLc+3QydgARBMAogkA0QSAaAJAtLivQ7eqtSW1dmjZHu3cLM5nlf8gY5gNQDQBIJoAEE0AiCYARPM+yIq0vlM0u7tXnPteUF82ANEEgGgCQDQBIJoAEE1DMLLWdkjb05cNQDQBIJoAEE0AiCYARNMc/KNq7ZC2py8bgGgCQDQBIJoAEE0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACDOH2CUp5gTyjFIAAAAAElFTkSuQmCC",so="./assets/presence_v2.d5ab8334.png",io="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMAAAADACAYAAABS3GwHAAAAAXNSR0IArs4c6QAAAs9JREFUeJzt3TGOGjEYhmGIUlGnyxm2oIhoU9CjnIWeggvlCKRFEaLYM6TLHUiRYptxIkvjtYfveUprNWshvbL2l4ddrQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4Dmte29gdI/H78ccz1mvP/msB/Sh9wagJwEQTQBEEwDRBEC0j703MIraac/Ly9emzzc1eh9OAKIJgGgCIJoAiCYAopkC/UfttGe321U95/X1x+T6XHeQSkyZ/nICEE0ARBMA0QRANAEQbbhJQK83sOa6C1SaAm02m8n1y+VS82urlaZMc1n6NMkJQDQBEE0ARBMA0QRAtG53geaautTepSlNLUrrc02lStOe8/k8x+OLau8ylcz1OY/GCUA0ARBNAEQTANEEQLTh3ggrTS1K05LR3rS6Xq+T66X93263lttZHQ6HWZ7TegrXixOAaAIgmgCIJgCiCYBow02BSkrTktrpUGu9pj21jsfj5Pp+v59cL02TaqdDo3ECEE0ARBMA0QRANAEQbbgpUGl6UDvVaf2m1el0mlwfbdrDvzkBiCYAogmAaAIgmgCI1u3tnNIbQ6Vpz3a7bbmdavf7fXJ9tH22VvocStM8b4TBQARANAEQTQBEEwDRmv9FXjvtWYq57iwtXe2bX6ZAMBABEE0ARBMA0QRAtOHuApGp13TICUA0ARBNAEQTANEEQLSh7mXwpjQl+/L52+TP//z1vel+atXu0xQIOhAA0QRANAEQTQBEG+7boVmW0rRnKZwARBMA0QRANAEQTQBEMwV6crV3cmp/vvY5o3ECEE0ARBMA0QRANAEQTQBEEwDRBEA0ARBNAEQTANHcBXoSre/8LOX7iGo5AYgmAKIJgGgCIJoAiObboQeV9j/UfDs0dCAAogmAaAIgmgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgHfyB6WcpxI0OM3TAAAAAElFTkSuQmCC",ro="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMAAAADACAYAAABS3GwHAAAAAXNSR0IArs4c6QAAAvxJREFUeJzt3TGKU0Ecx/GNWKWwEDsbL7BICklj4arYBvEQ1iJeIAcQLD2FpF/J9hIW2drCws7KC8TCwmZGGXjJm5ff51MOy9vHwpchfyazZ2cAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHCaZmO/QO/2+5/7IZ4zm93zt+7QrbFfAMYkAKIJgGgCIJoAiHZ77BfoReu05/z8yUGfb2p0HHYAogmAaAIgmgCIJgCimQL9R+u0Z7lcNj3n5uaquD7UGaQaU6Y/7ABEEwDRBEA0ARBNAETrbhIw1jewhjoLVJsCzefz4vp2u235tc1qU6ahTH2aZAcgmgCIJgCiCYBoAiDaaGeBWqcuj+6/LK5/+fGp6fm1qUVtfaipVG3as16vh3h8VetZpprWM0tTmQ7ZAYgmAKIJgGgCIJoAiDbaJ/Xa9KA27bncPiyuP7/4WlyvTYeG0jpdqU17drvdAG9zeJvNprjeetaot+mQHYBoAiCaAIgmAKIJgGiTuRfo2/vPxfXL7bPiem2aNJi75eWpTHvevntTXH/64qK4vlqtiuut9x31xg5ANAEQTQBEEwDRBEC07qZAtTM8tanOx7O26dBQHr+6Kq73Nu3h3+wARBMA0QRANAEQTQBEm8w3wl4/+H7Q92n14ded4vpisTjym4zr+vq6uF47C+QbYdARARBNAEQTANEEQLSDfyJvnfZMRe3M0lC3MU+Fe4FgwgRANAEQTQBEEwDRujsLRKaxpkN2AKIJgGgCIJoAiCYAonV1LoO/Ws9QHfp/orVqfU9TIBiBAIgmAKIJgGgCIFp3t0MzLVP/Zp8dgGgCIJoAiCYAogmAaKZAJ671TE7rz7c+pzd2AKIJgGgCIJoAiCYAogmAaAIgmgCIJgCiCYBoAiCas0An4tBnfqZyH1ErOwDRBEA0ARBNAEQTANHcDt2ptP+h5nZoGIEAiCYAogmAaAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAI7kN5kzpEO/lLtEAAAAAElFTkSuQmCC",oo="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMAAAADACAYAAABS3GwHAAAAAXNSR0IArs4c6QAAAwpJREFUeJzt3aFOHUEYBWBoqtB1fQAMCEQTZAWGVPVZEHgcT1NVX0loUMWAr+s7UNEmNfsn/cksO9zzfXJyMzvc5GTCyczevT0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANhN+1svYHZPT7+eRsyzv//Odz2hN1svALYkAEQTAKIJANEEgGhvt17ALLptz+npp1Xn1xq9DDsA0QSAaAJANAEgmgAQTdPwV9XSVG3P0dFRa/77+/vF8Zubr615RtEy/WEHIJoAEE0AiCYARBMAok3XBGx1A2vUWaCqHTo4OFgcv7297Ty2be2W6bW3SXYAogkA0QSAaAJANAEg2mY3wrqty/Hxx8XxHz++teavWotqfFQr1W17Li8vRzy2fXOtUrVJ3e95NnYAogkA0QSAaAJANAEg2nTvBaranqurq9bnu+3QKNXNr6rVub6+Xhy/u7sbsp6zs7Mh81Rt0mtvh+wARBMAogkA0QSAaAJAtOlaoErVinTboUrVGlXtR/eszqhWZ5SLi4vF8ao1Oj8/XxzvtkOzsQMQTQCIJgBEEwCiCQDRpmuBqjam2+pU7VCl2/bM1urwPHYAogkA0QSAaAJANAEg2ma3c6obQ1Xbc3JysuZy9h4fHxfHDw8PV33uw8PDJs8dpVp/dRbIjTCYiAAQTQCIJgBEEwCirf4febft2Ur3RtgoVVuy9nNH6d780gLBRASAaAJANAEgmgAQbbqzQPA/RrVJdgCiCQDRBIBoAkA0ASDaVOcy+KdqyT68/7z4+e8/v6y6nq5qnV3dv6vbDtkBiCYARBMAogkA0QSAaNO9HZrdMKqVWrv1sgMQTQCIJgBEEwCiCQDRtEA7rtuijGpdtjoL1GUHIJoAEE0AiCYARBMAommBeFGz3VyzAxBNAIgmAEQTAKIJANG0QDti7TM/u3pGyA5ANAEgmgAQTQCIJgBE83boSfkNtefxdmhoEACiCQDRBIBoAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJDfDeK+HrbwkBcAAAAASUVORK5CYII=",lo="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMAAAADACAYAAABS3GwHAAAAAXNSR0IArs4c6QAAAyJJREFUeJzt3aFuFFEYBeCWoKoxBIOrqW1SgUAsCQXFUyARiH2GJlgc74CipisRzTZ1DUklAscrkEVAgpmb8Dcznbt7vk/+aWamm5zc7Mm9s3t7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwm/bnfoDebTY/N2NcZ3//kc+6Qw/mfgCYkwAQTQCIJgBEEwCiPZz7AXpRbXtOTl5Pen2t0f2wAhBNAIgmAEQTAKIJANE0DX+1WppW23N0dFS6/s3NzeD88vJL6Tpj0TL9YQUgmgAQTQCIJgBEEwCiddcEzHUCa6y9QK126ODgYHC+Xq8rty2bumXa9jbJCkA0ASCaABBNAIgmAESb7URYtXU5fvJmcH7143Pp+q3WojUfq5Wqtj3L5XKM25ZPrrW02qTq59wbKwDRBIBoAkA0ASCaABBttm/qrfag1facXxwPzl+9uBqct9qhsVTblVarc3Z2NjhfLBblZ5rSarUanFf3GvXWDlkBiCYARBMAogkA0QSAaFvzduhvH78Ozs8vng3OW21SS6s1arU91b0619fXpb+f2vvlu8H54vnLwfnp6engvPX5zPW+oyorANEEgGgCQDQBIJoAEK27FqjVxrRanQ97tXaopdr29NbqcDdWAKIJANEEgGgCQDQBINrWnAh7+/T7pM/z6dfjwfnh4eGk9729vZ3lvmNpPX9rL5ATYdARASCaABBNAIgmAESb/Bt5te2ZS/VE2FhabcnU9x2L9wLBFhMAogkA0QSAaAJAtO72AsH/GKtNsgIQTQCIJgBEEwCiCQDRutqXwT/VPVRT/yZa1Vh7var/V7UdsgIQTQCIJgBEEwCiCQDRuns7NLthrFZq6tbLCkA0ASCaABBNAIgmAETTAu24aosyVusy116gKisA0QSAaAJANAEgmgAQTQvEvert5JoVgGgCQDQBIJoAEE0AiKYF2hFT7/nZ1T1CVgCiCQDRBIBoAkA0ASCat0N3ym+o3Y23Q0OBABBNAIgmAEQTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgnvwGuO25ySoKWXMAAAAASUVORK5CYII=",Ao="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMAAAADACAYAAABS3GwHAAAAAXNSR0IArs4c6QAAAyJJREFUeJzt3bFqFUEYhuET9QKE2IiIdscbCKQQLIxFFAsLb8DGzkqIrZWNraDgPVglTVIqBNIL6bSw00uQWFjYzKAjs9k553uecoTdNfAy5Gd2s1gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMB62pj7AUZ3dvb9rMd1Njau+FkP6MLcDwBzEgDRBEA0ARBNAES7NPcDjKJ12rN17dGk1zc1Oh92AKIJgGgCIJoAiCYAopkC/UVt2nPxcdsUqHadk28fiuu9ziDVmDL9ZgcgmgCIJgCiCYBoAiDacJOAud7A6nUWqDYd+rF5q7i+uf+y5bbNjo/3J73+qk+T7ABEEwDRBEA0ARBNAESb7SxQr6lL61ma2tSitt5rKnX57avyP1wvL+/t7fW47WJ7+0GX69SmSa0/59HYAYgmAKIJgGgCIJoAiDbbb+q16UFt2nNwuFVcv3/vpLhemw710vpdoNrzP3zyqbi+s7PT/ExTOjo6Kq63njUabTpkByCaAIgmAKIJgGgCINrKfBfo85uPxfWDw9vF9dYpTW1q1DqVqqk9/1yDuOcvnhXX797ZLa7v7pbXa2eNpn4TrRc7ANEEQDQBEE0ARBMA0YabArVOY14v2qZDNa3TnvpUh1ViByCaAIgmAKIJgGgCINrKvBH29ObXSZ/n3Zcbs9z3/c+rxfXlcjnpfXs5PT0trtfOAnkjDAYiAKIJgGgCIJoAiDb5b+St0565tJ5Bmvq+vb7qPDXfBYIVJgCiCYBoAiCaAIg23Fkg+Be9pkl2AKIJgGgCIJoAiCYAog11LoM/Ws9QTf030Vr1OkPV+v9qnQ7ZAYgmAKIJgGgCIJoAiDbc16FZD72mUlNPvewARBMA0QRANAEQTQBEMwVac61TlF5Tl7nOArWyAxBNAEQTANEEQDQBEM0UiHM12ptrdgCiCYBoAiCaAIgmAKKZAq2Jqc/8rOsZITsA0QRANAEQTQBEEwDRfB16UP6G2v/xdWhoIACiCYBoAiCaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAc/ILto62yXKfIuMAAAAASUVORK5CYII=",uo="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMAAAADACAYAAABS3GwHAAAAAXNSR0IArs4c6QAAAvNJREFUeJzt3TGKFEEYBeAZ8QSykQYKYiwIHkA03cDQxMBkT+EVzATnDAYGGq7sAYw8gKCB2QZGpmNgYNKl/lC1XTPv+8Ji6C4GHsU8/u7ZbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4Dht197A7Pb7y32P62y3J77rCV1bewOwJgEgmgAQTQCIJgBEu772BmZRbXse3no69Ppao6vhBCCaABBNAIgmAEQTAKJpgf6h1fb8fPa8y3U+fX+3uN5rBqlFy/SbE4BoAkA0ASCaABBNAIg2XROw1hNYvWaBWu3Qjxv3Ftdvvn5ZuW1Zq2Xq5dDbJCcA0QSAaAJANAEgmgAQbbVZoF6tS3WWptVatNZ7tVLVtuf84n6P25afXGvp9T3PxglANAEgmgAQTQCIJgBEW+2Xeqs9aLUWrVbkyaPPi+ujZ2Cq7Up1/7vTy/KeRjp7f7K4Xv2eZ2uHnABEEwCiCQDRBIBoAkC0g3kv0JdXHxfXzy8eL65XW5pWm1FtpVpa+99sltuV0e6++bC4/uDF8pNrb0+Xr1Od0ZqNE4BoAkA0ASCaABBNAIg2XQtUbWN2m1o71FJte9qtDofECUA0ASCaABBNAIgmAEQ7mCfCzu58G7qf3dfbUfftpbX/VpvniTCYiAAQTQCIJgBEEwCiDf9FXm171lKdQTr0+/bivUBwwASAaAJANAEgmgAQbbpZIPgfvdokJwDRBIBoAkA0ASCaABBtqrkM/qjOUM32NubR/1DfUm2HnABEEwCiCQDRBIBoAkC06d4OzXHo1UqNbr2cAEQTAKIJANEEgGgCQDQt0JGrtiijW5fqjNDoGScnANEEgGgCQDQBIJoAEE0LxJWqtjpmgWAgASCaABBNAIgmAETTAh2J0TM/vT5fZRYIBhIAogkA0QSAaAJANG+HnpT/UPs7/xEGHQgA0QSAaAJANAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK7ILzj6vECOPLAcAAAAAElFTkSuQmCC";const Pa=e=>(ke("data-v-3f6edf7e"),e=e(),Me(),e),co=["ondragend","ondragenter","ondragleave","ondragover","ondrop"],go={key:0,class:"move-indicator"},mo=Pa(()=>d("span",{class:"material-icons"},"straight",-1)),fo=[mo],ho={key:1,class:"move-indicator"},vo=Pa(()=>d("span",{class:"material-icons"},"merge",-1)),po=[vo],yo={key:2,class:"character-display"},bo=["src"],Co={key:3,class:"relevancy-display"},No=["src"],Bo={key:4,class:"presence-display"},Eo=["src"],wo={key:5,class:"level-display"},_o=["src"],Io=["src"],So=["src"],Qo=["src"],To=["src"],ko=["src"],Mo={key:6,class:"frozen"};var Do=F({__name:"CharacterSlot",props:{id:null,character:null,isSelected:{type:Boolean},isShop:{type:Boolean},isDragging:{type:Boolean},selected:null,shake:{type:Boolean},frozen:{type:Boolean}},emits:["dragstart","dragend","drop"],setup(e,{emit:t}){const a=e,n=w(!1),s=w(!1),i=w(void 0);function r(u){var m;n.value=!0,(m=u.dataTransfer)==null||m.setDragImage(i.value,0,0)}Ne(n,u=>{t(u?"dragstart":"dragend")});const o=ve("");return Et(()=>{if(a.character==null||a.selected!=null||n.value){o.value="";return}const u=ue(H[a.character.type].abilityDescription(a.character));o.value=L(()=>l(j,null,[l("b",null,[H[a.character.type].nickname]),l("br",null,null),l(u,null,null)]))}),(u,m)=>(h(),O(Z,{display:c(o),direction:c(X).Up},{default:M(()=>{var y,p,C;return[d("div",{class:$(["character",{selected:e.isSelected,empty:e.character==null&&e.selected==null,dragging:n.value,isDragging:e.isDragging,draggingOver:s.value,shake:e.shake}]),draggable:"true",ondragstart:r,ondragend:()=>n.value=!1,ondragenter:()=>s.value=!0,ondragleave:()=>s.value=!1,ondragover:b=>{var _;e.selected!=null&&!e.isShop&&(((_=e.character)==null?void 0:_.type)!==e.selected.type||e.isSelected)&&b.preventDefault(),e.character!=null&&e.selected!=null&&!e.isSelected&&e.character.type===e.selected.type&&e.character.exp<6&&b.preventDefault()},ondrop:()=>{s.value=!1,t("drop")}},[e.selected!=null&&!e.isShop&&(((y=e.character)==null?void 0:y.type)!==e.selected.type||e.isSelected)&&n.value===!1?(h(),B("span",go,fo)):T("",!0),e.character!=null&&e.selected!=null&&!e.isSelected&&e.character.type===e.selected.type&&e.character.exp<6?(h(),B("span",ho,po)):T("",!0),e.character!=null?(h(),B("span",yo,[d("img",{ref_key:"imageElement",ref:i,src:c(H)[e.character.type].display},null,8,bo)])):T("",!0),e.character!=null?(h(),B("span",Co,[d("img",{src:c(no)},null,8,No),d("span",null,G((p=e.character)==null?void 0:p.relevancy),1)])):T("",!0),e.character!=null?(h(),B("span",Bo,[d("img",{src:c(so)},null,8,Eo),d("span",null,G((C=e.character)==null?void 0:C.presence),1)])):T("",!0),e.character!=null?(h(),B("span",wo,[e.character.exp===1?(h(),B("img",{key:0,src:c(io)},null,8,_o)):T("",!0),e.character.exp===2?(h(),B("img",{key:1,src:c(ro)},null,8,Io)):T("",!0),e.character.exp===3?(h(),B("img",{key:2,src:c(oo)},null,8,So)):T("",!0),e.character.exp===4?(h(),B("img",{key:3,src:c(lo)},null,8,Qo)):T("",!0),e.character.exp===5?(h(),B("img",{key:4,src:c(Ao)},null,8,To)):T("",!0),e.character.exp===6?(h(),B("img",{key:5,src:c(uo)},null,8,ko)):T("",!0)])):T("",!0),e.frozen?(h(),B("div",Mo)):T("",!0),e.id?(h(),O(ao,{key:7,id:e.id},null,8,["id"])):T("",!0)],10,co)]}),_:1},8,["display","direction"]))}});var Ie=W(Do,[["__scopeId","data-v-3f6edf7e"]]);const Ro={min:.25,max:.5},Vo=[{s:0,cp:.329,e:.548},{s:.548,cp:.767,e:.876},{s:.876,cp:.985,e:1}],Po=.01,qo=.1,zo=100,Oo=!0,Fo={x:0,y:0},xo=!1,Go=[{type:"alpha",config:{alpha:{list:[{time:0,value:.74},{time:1,value:0}]}}},{type:"moveSpeed",config:{speed:{list:[{time:0,value:100},{time:1,value:0}]},minMult:1}},{type:"scale",config:{scale:{list:[{time:0,value:2},{time:1,value:.5}]},minMult:1}},{type:"color",config:{color:{list:[{time:0,value:"#FFC000"},{time:1,value:"#FFDF00"}]}}},{type:"rotation",config:{accel:0,minSpeed:0,maxSpeed:200,minStart:0,maxStart:360}},{type:"textureRandom",config:{textures:["particle.png"]}},{type:"spawnShape",config:{type:"torus",data:{radius:100,x:0,y:0}}}];var Uo={lifetime:Ro,ease:Vo,frequency:Po,emitterLifetime:qo,maxParticles:zo,addAtBack:Oo,pos:Fo,emit:xo,behaviors:Go};const At=w(!1),Pt=w(""),sa=ua(),Je=w(),Ke=w("");function ye(e,...t){var a;!At.value||(a=Je.value)==null||a.emit(e,...t)}ae.on("loadSettings",e=>{Ge(e,"server","https://Super-Auto-Coots.thepaperpilot.repl.co"),Ne(()=>e.server,t=>{Je.value&&Je.value.close(),Je.value=an(t),Lo(Je.value),At.value=!1,Ke.value="",Je.value.connect()},{immediate:!0}),Is(L(()=>l(j,null,[l(Jt,{title:"Server URL","onUpdate:modelValue":t=>e.server=t,modelValue:e.server},null),l("div",{style:"font-style: italic; font-size: small; margin-top: -10px;"},[At.value?l("span",null,[f("Connected!")]):Ke.value?l("span",{style:"color: red"},[Ke.value]):l("span",null,[f("Connecting...")])])])))});function Ee(e){var n;const t=v.particles.boundingRect.value;if(!t)return;const a=(n=v.nodes.value[e])==null?void 0:n.rect;a&&v.particles.addEmitter(Uo).then(s=>{s.updateOwnerPos(a.x+a.width/2-t.x,a.y+a.height/2-t.y),s.playOnceAndDestroy()})}function Lo(e){e.on("connect",()=>{Ke.value="",At.value=!0,v.reset.reset()}),e.on("connect_error",t=>{Ke.value=`${t.name}: ${t.message}`}),e.on("disconnect",(t,a)=>{var n;Ke.value=a instanceof Error?`${a.name}: ${a.message}`:(n=a==null?void 0:a.description)!=null?n:t,At.value=!1}),e.on("server version",t=>{tn(U.versionNumber,t)||(sa.info("Server only accepts game versions in range: "+t),e.disconnect())}),e.on("info",t=>{sa.info(t),t==="Failed to start streaming"&&(v.findingMatch.value=!1)}),e.on("nickname",t=>{Pt.value=t}),e.on("newTurn",t=>{v.gold.value=10,v.turn.value++,v.battle.value=null,v.shop.value=t.map(a=>({type:a,relevancy:H[a].initialRelevancy,presence:H[a].initialPresence,exp:1})),v.frozen.value=v.frozen.value.map((a,n)=>n),setTimeout(()=>{t.forEach((a,n)=>Ee(`shop-char-${n}`))},0),v.showRefreshAnim.value=!0,setTimeout(()=>v.showRefreshAnim.value=!1,500)}),e.on("reroll",t=>{v.gold.value--,v.shop.value=t.map(a=>({type:a,relevancy:H[a].initialRelevancy,presence:H[a].initialPresence,exp:1})),v.frozen.value=v.frozen.value.map((a,n)=>n),setTimeout(()=>{t.forEach((a,n)=>Ee(`shop-char-${n}`))},0),v.showRefreshAnim.value=!0,setTimeout(()=>v.showRefreshAnim.value=!1,500)}),e.on("buy",(t,a,n)=>{v.team.value[a]=n,v.shop.value[t]=null,v.gold.value-=3,Ee(`shop-char-${t}`),Ee(`team-char-${a}`),v.frozen.value.includes(t)&&(v.frozen.value=v.frozen.value.filter(s=>s!==t))}),e.on("move",(t,a)=>{const n=v.team.value[t];v.team.value[t]=v.team.value[a],v.team.value[a]=n,Ee(`team-char-${t}`),Ee(`team-char-${a}`)}),e.on("merge",(t,a,n)=>{var o,u;const s=(u=(o=v.team.value[a])==null?void 0:o.exp)!=null?u:0,i=s>=6?3:s>=3?2:1,r=n.exp>=6?3:n.exp>=3?2:1;v.team.value[t]=null,v.team.value[a]=n,Ee(`team-char-${t}`),Ee(`team-char-${a}`),H[n.type].abilityType==="LevelUp"&&i!==r&&setTimeout(()=>H[n.type].performAbility(n),1250)}),e.on("stream",(t,a)=>{let n=!1;v.team.value.forEach(s=>{s!=null&&H[s.type].abilityType==="StreamStarted"&&(n=!0,H[s.type].performAbility(s))}),n?setTimeout(()=>ia(t,a)):ia(t,a)}),e.on("sell",t=>{const a=v.team.value[t];let n;a.exp>=6?n=3:a.exp>=3?n=2:n=1,v.gold.value+=n,v.team.value[t]=null,Ee(`team-char-${t}`),H[a.type].abilityType==="Sold"&&setTimeout(()=>H[a.type].performAbility(a),500)}),e.on("freeze",t=>{v.frozen.value.includes(t)?v.frozen.value=v.frozen.value.filter(a=>a!==t):v.frozen.value.push(t)})}function ia(e,t){v.findingMatch.value=!1,v.battle.value={team:JSON.parse(JSON.stringify(v.team.value.filter(a=>a!=null))),streamers:[],enemyTeam:e.team,enemyStreamers:[],enemyNickname:e.nickname,enemyLives:e.lives,enemyWins:e.wins,enemyTurn:e.turn,ranLivestreamEnded:!1},v.outcome.value=t,v.showingOutcome.value=!1,v.playClicked.value=!1,setTimeout(v.prepareMove,1e3)}const Jo={min:1.5,max:2.5},Yo=[{s:0,cp:.329,e:.548},{s:.548,cp:.767,e:.876},{s:.876,cp:.985,e:1}],Wo=.001,Xo=.1,jo=100,Ko=!0,Ho={x:0,y:0},Zo=!1,$o=[{type:"alpha",config:{alpha:{list:[{time:0,value:.74},{time:1,value:0}]}}},{type:"moveAcceleration",config:{accel:{x:0,y:2e3},minStart:600,maxStart:600,rotate:!0}},{type:"scale",config:{scale:{list:[{time:0,value:.5},{time:1,value:.25}]},minMult:1}},{type:"color",config:{color:{list:[{time:0,value:"#962121"},{time:.5,value:"#214a96"},{time:1,value:"#4c2196"}]}}},{type:"rotation",config:{accel:0,minSpeed:0,maxSpeed:200,minStart:0,maxStart:360}},{type:"textureRandom",config:{textures:["particle.png"]}},{type:"spawnShape",config:{type:"torus",data:{radius:100,x:0,y:0}}}];var el={lifetime:Jo,ease:Yo,frequency:Wo,emitterLifetime:Xo,maxParticles:jo,addAtBack:Ko,pos:Ho,emit:Zo,behaviors:$o};function ze(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!La(e)}const H={coots:{nickname:"Coots",initialRelevancy:3,initialPresence:1,display:Xr,abilityType:"LivestreamJoined",abilityDescription:e=>L(()=>l(j,null,[l("i",null,[f("Livestream joined")]),f(": Deal "),e.exp>=6?6:e.exp>=3?4:2," ",f("relevancy damage to every character on a stream")])),performAbility(e){if(v.battle.value==null)return;const t=e.exp>=6?6:e.exp>=3?4:2;v.battle.value.streamers.forEach(a=>a.relevancy-=t),v.battle.value.enemyStreamers.forEach(a=>a.relevancy-=t)}},ludwig:{nickname:"Ludwig Coots",initialRelevancy:2,initialPresence:1,display:Lr,abilityType:"LivestreamJoined",abilityDescription:e=>L(()=>l(j,null,[l("i",null,[f("Livestream joined")]),f(": Gain "),e.exp>=6?3:e.exp>=3?2:1," ",f("presence for every character on that livestream")])),performAbility(e){if(v.battle.value==null)return;const t=e.exp>=6?3:e.exp>=3?2:1;v.battle.value.streamers.includes(e)?e.presence+=t*v.battle.value.streamers.length:e.presence+=t*v.battle.value.enemyStreamers.length}},qt:{nickname:"Qt Coots",initialRelevancy:1,initialPresence:2,display:jr,abilityType:"Sold",abilityDescription:e=>L(()=>l(j,null,[l("i",null,[f("Sold")]),f(": Gain "),e.exp>=6?3:e.exp>=3?2:1,f(" mogul"),e.exp>=3?"s":""])),performAbility(e){const t=e.exp>=6?3:e.exp>=3?2:1;v.gold.value+=t}},maid:{nickname:"Maid Coots",initialRelevancy:2,initialPresence:2,display:Jr,abilityType:"LevelUp",abilityDescription:e=>L(()=>l(j,null,[l("i",null,[f("Level up")]),f(": Every character gains "),e.exp>=3?2:1,f(" relevancy and presence")])),performAbility(e){const t=e.exp>=6?2:1;v.team.value.forEach(a=>{a&&(a.relevancy+=t,a.presence+=t)})}},mail:{nickname:"Mogul Mail Coots",initialRelevancy:1,initialPresence:1,display:Yr,abilityType:"LivestreamJoined",abilityDescription:e=>L(()=>l(j,null,[l("i",null,[f("Livestream joined")]),f(": Summon a lv")," ",e.exp>=6?3:e.exp>=3?2:1,f(" Ludwig Coots with this character's stats.")])),performAbility(e){if(v.battle.value==null)return;const t=e.exp>=6?3:e.exp>=3?2:1,a={type:"ludwig",exp:t===3?6:t===2?3:1,presence:e.presence,relevancy:e.relevancy};v.queue.value.push({action:"LivestreamJoined",target:a}),v.battle.value.streamers.includes(e)?v.battle.value.streamers.push(a):v.battle.value.enemyStreamers.push(a)}},stanz:{nickname:"Stanz Coots",initialRelevancy:1,initialPresence:1,display:Zr,abilityType:"LivestreamEnded",abilityDescription:e=>L(()=>l(j,null,[l("i",null,[f("Livestream ended")]),f(": Gain "),e.exp>=6?3:e.exp>=3?2:1," ",f("relevancy for every character on either livestream with more relevancy.")])),performAbility(e){if(v.battle.value==null)return;const t=e.exp>=6?3:e.exp>=3?2:1;e.relevancy+=t*(v.battle.value.streamers.filter(a=>a.relevancy<e.relevancy).length+v.battle.value.enemyStreamers.filter(a=>a.relevancy<e.relevancy).length)}},money:{nickname:"Mogul Money Coots",initialRelevancy:1,initialPresence:1,display:Wr,abilityType:"StreamStarted",abilityDescription:e=>L(()=>l(j,null,[l("i",null,[f("Stream started")]),f(": Permanently gain")," ",e.exp>=6?3:e.exp>=3?2:1,f(" presence if you have 2 or more moguls.")])),performAbility(e){if(v.gold.value>=2){const t=e.exp>=6?3:e.exp>=3?2:1;e.presence+=t}}},vespa:{nickname:"Vespa Coots",initialRelevancy:1,initialPresence:1,display:eo,abilityType:"LivestreamJoined",abilityDescription:()=>L(()=>l(j,null,[l("i",null,[f("Livestream joined")]),f(": Set the character that most recently joined the enemy livestream's presence to 0. This effect does not improve on level up.")])),performAbility(e){v.battle.value!=null&&(v.battle.value.streamers.includes(e)?v.battle.value.enemyStreamers.length>0&&(v.battle.value.enemyStreamers[v.battle.value.enemyStreamers.length-1].presence=0):v.battle.value.streamers.length>0&&(v.battle.value.streamers[v.battle.value.streamers.length-1].presence=0))}}},v=Ea("main",function(){const e=w(3),t=w(0),a=w(0),n=w(0),s=w([null,null,null]),i=w([]),r=w(null),o=w(null),u=w(!1),m=w(""),y=w(!1),p=w(!1),C=w(!1),b=w([]),_=w([]),S=w(!1),Q=w(null),ee=V(()=>Q.value==null?0:Q.value.streamers.reduce((re,x)=>re+Math.max(0,x.presence)*Math.max(0,x.relevancy),0)*100),N=V(()=>Q.value==null?0:Q.value.enemyStreamers.reduce((re,x)=>re+Math.max(0,x.presence)*Math.max(0,x.relevancy),0)*100),I=Ur(()=>({onReset(){e.value=3,t.value=0,a.value=0,n.value=0,s.value=[null,null,null],i.value=[],r.value=null,o.value=null,u.value=!1,Q.value=null,m.value="",y.value=!1,C.value=!1,b.value=[],_.value=[]}})),z=w(!1);function se(){var re,x;if(Q.value==null)throw"Preparing move while not in battle";if(b.value.length===0&&Q.value.team.length===0&&Q.value.enemyTeam.length===0){if(Q.value.ranLivestreamEnded===!1){Q.value.streamers.forEach(D=>{H[D.type].abilityType==="LivestreamEnded"&&b.value.push({action:"LivestreamEnded",target:D})}),Q.value.enemyStreamers.forEach(D=>{H[D.type].abilityType==="LivestreamEnded"&&b.value.push({action:"LivestreamEnded",target:D})}),Q.value.ranLivestreamEnded=!0,se();return}m.value==="Victory"?t.value++:m.value==="Defeat"&&e.value--,y.value=!0;return}if(b.value.length===0?b.value.push({action:"join"}):b.value.length>1&&(b.value=b.value.sort((D,Y)=>D.action!==Y.action?1:D.target!=null&&Y.target!=null?Y.target.relevancy-D.target.relevancy:0)),P.autoplay===!1&&C.value===!1)p.value=!0;else{p.value=!1;const D=b.value.shift();switch(D.action){case"join":if(((re=Q.value.team.length)!=null?re:0)>0){const Y=Q.value.team.pop();Q.value.streamers.push(Y),H[Y.type].abilityType==="LivestreamJoined"&&b.value.unshift({action:"LivestreamJoined",target:Y})}if(((x=Q.value.enemyTeam.length)!=null?x:0)>0){const Y=Q.value.enemyTeam.pop();Q.value.enemyStreamers.push(Y),H[Y.type].abilityType==="LivestreamJoined"&&b.value.unshift({action:"LivestreamJoined",target:Y})}break;default:if(D.target==null){console.error("Invalid action",D);break}H[D.target.type].performAbility(D.target);break}C.value=!1,setTimeout(se,P.fast?750:1250)}}const pe=xr(()=>({fullscreen:!1,zIndex:10,boundingRect:w(null),onContainerResized(re){this.boundingRect.value=re}}));return{name:"Game",minimizable:!1,display:L(()=>{let re;if(t.value>=5){let x;return l("div",{class:"total-outcome-container"},[l("span",{class:"total-outcome"},[f("You Won!")]),l("span",{class:"smiley"},[f("\u{1F603}")]),l(qe,null,ze(x=new Array(3).fill(0).map((D,Y)=>l(Ie,{character:s.value[Y]},null)))?x:{default:()=>[x]}),l("button",{class:"button",onClick:()=>location.reload()},[f("Play again")]),je(pe)])}if(e.value<=0){let x;return l("div",{class:"total-outcome-container"},[l("span",{class:"total-outcome"},[f("You ran out of lives!")]),l("span",{class:"smiley"},[f("\u{1F630}")]),l(qe,null,ze(x=new Array(3).fill(0).map((D,Y)=>l(Ie,{character:s.value[Y]},null)))?x:{default:()=>[x]}),l("button",{class:"button",onClick:()=>location.reload()},[f("Play again")]),je(pe)])}if(Q.value!=null){let x,D,Y,Le;return l("div",{class:{["battle-container"]:!0,fast:P.fast}},[l("div",{class:"battle-controls"},[l("button",{class:"button",onClick:()=>{C.value=!0,se()}},[l("span",{class:"material-icons"},[f("play_arrow")]),l("span",null,[f("Play")])]),l("button",{class:{button:!0,active:P.autoplay},onClick:()=>{P.autoplay=!P.autoplay,p.value&&se()}},[l("span",{class:"material-icons"},[f("all_inclusive")]),l("span",null,[f("Autoplay")])]),l("button",{class:{button:!0,active:P.fast},onClick:()=>P.fast=!P.fast},[l("span",{class:"material-icons"},[f("fast_forward")]),l("span",null,[f("Fast")])])]),l("div",{class:"teams-container",style:y.value?"pointer-events: none;":""},[l("div",{class:"team-container"},[l("div",{class:"stream-container"},[l("div",{class:"stream-details",style:"left: 1vmin"},[l("span",null,[Pt.value,f(" (YOU)")]),l("div",{class:"stats"},[l("div",{class:"resource-box lives"},[e.value]),l("div",{class:"resource-box wins"},[t.value,f("/5")]),l("div",{class:"view-counter"},[Dt(ee.value),f(" Views")])])]),l(qe,{class:"streamers-container"},{default:()=>[l(gt,{name:"character-transition"},ze(x=Q.value.streamers.slice().reverse().map((de,Re)=>{var ge;return l(Ie,{key:Q.value.streamers.length-Re,character:de,shake:p.value&&((ge=b.value[0])==null?void 0:ge.target)===de},null)}))?x:{default:()=>[x]})]})]),l(aa,{class:"members-container"},{default:()=>[l(gt,{name:"character-transition"},ze(D=Q.value.team.map((de,Re)=>{var ge,et,tt,at;return l(Ie,{character:de,key:Re,shake:p.value&&((ge=b.value[0])==null?void 0:ge.action)==="join"&&de===((at=Q.value)==null?void 0:at.team[((tt=(et=Q.value)==null?void 0:et.team.length)!=null?tt:0)-1])},null)}))?D:{default:()=>[D]})]})]),l("div",{class:"team-container"},[l("div",{class:"stream-container"},[l("div",{class:"stream-details",style:"right: 1vmin"},[l("span",null,[Q.value.enemyNickname]),l("div",{class:"stats",style:"margin-right: 0"},[l("div",{class:"resource-box lives"},[Q.value.enemyLives]),l("div",{class:"resource-box wins"},[Q.value.enemyWins,f("/5")]),l("div",{class:"view-counter"},[Dt(N.value),f(" Views")])])]),l(qe,{class:"streamers-container"},{default:()=>[l(gt,{name:"character-transition"},ze(Y=Q.value.enemyStreamers.map((de,Re)=>{var ge;return l(Ie,{key:Re,character:de,shake:p.value&&((ge=b.value[0])==null?void 0:ge.target)===de},null)}))?Y:{default:()=>[Y]})]})]),l(aa,{class:"members-container"},{default:()=>[l(gt,{name:"character-transition"},ze(Le=Q.value.enemyTeam.map((de,Re)=>{var ge,et,tt,at;return l(Ie,{character:de,key:Q.value.enemyStreamers.length+Re,shake:p.value&&((ge=b.value[0])==null?void 0:ge.action)==="join"&&de===((at=Q.value)==null?void 0:at.enemyTeam[((tt=(et=Q.value)==null?void 0:et.enemyTeam.length)!=null?tt:0)-1])},null)}))?Le:{default:()=>[Le]})]})])]),y.value?l("div",{class:"outcome",onClick:()=>ye("newTurn")},[l("span",null,[m.value]),l("span",{style:"font-size: 2vmin"},[f("Next Turn")])]):null])}return l("div",{class:"game-container",style:u.value?"pointer-events: none":"",onClick:()=>{r.value=null,o.value=null}},[l("h2",{class:"team-nickname"},[Pt.value]),l(qe,{class:"manager-header"},{default:()=>[l("div",{class:"resource-box moguls"},[n.value]),l("div",{class:"resource-box lives"},[e.value]),l("div",{class:"resource-box wins"},[t.value,f("/5")]),l("div",{style:"flex-grow: 1"},null),u.value?l("div",{class:"waiting"},[f("Finding opposing team...")]):l(j,null,[r.value==null?null:l("button",{class:"button",onDragover:x=>x.preventDefault(),onClick:()=>ye("sell",r.value),onDrop:()=>ye("sell",r.value)},[f("Sell")]),o.value==null?null:l("button",{class:"button",onDragover:x=>x.preventDefault(),onClick:()=>ye("freeze",o.value),onDrop:()=>ye("freeze",o.value)},[f("Freeze")]),l("img",{class:"startStream",draggable:"false",onClick:()=>{ye("stream"),u.value=!0},src:$r},null)])]}),l("div",{style:"flex-grow: 1"},null),l(qe,{style:"margin-top: 10vh"},ze(re=new Array(3).fill(0).map((x,D)=>{var Y,Le;return l(Ie,{id:`team-char-${D}`,character:s.value[D],isSelected:r.value===D,selected:r.value==null?o.value==null||s.value[D]!=null&&((Y=i.value[o.value])==null?void 0:Y.type)!==((Le=s.value[D])==null?void 0:Le.type)||n.value<3?null:i.value[o.value]:s.value[r.value],isDragging:z.value,onClick:ra(D),onDragstart:()=>{z.value=!0,r.value=D,o.value=null},onDragend:()=>{z.value=!1,r.value=null,o.value=null},onDrop:()=>ra(D)()},null)}))?re:{default:()=>[re]}),l(qe,{class:"shop"},{default:()=>[l("div",{class:"reroll",style:n.value>0?"":"color: var(--locked); cursor: not-allowed",onClick:()=>{n.value>0&&ye("reroll")}},[l("img",{src:S.value?Kr:Hr},null)]),i.value.map((x,D)=>l(Ie,{id:`shop-char-${D}`,frozen:_.value.includes(D),character:x==null?void 0:x,isSelected:o.value===D,isShop:!0,isDragging:z.value,onClick:Y=>{x!=null&&(o.value=o.value===D?null:D,r.value=null,Y.stopPropagation())},onDragstart:()=>{z.value=!0,r.value=null,o.value=D},onDragend:()=>{z.value=!1,r.value=null,o.value=null}},null))]}),je(pe)])}),lives:e,wins:t,turn:a,gold:n,team:s,shop:i,selectedCharacter:r,selectedShopItem:o,findingMatch:u,showingOutcome:y,outcome:m,reset:I,battle:Q,frozen:_,playClicked:C,prepareMove:se,particles:pe,queue:b,showRefreshAnim:S}});let ht=0;ae.on("update",e=>{if(v.wins.value>=5){if(ht+=e,ht>=1){ht=0;const t=v.particles.boundingRect.value;if(!t)return;v.particles.addEmitter(el).then(a=>{a.updateOwnerPos(Math.random()*t.width,Math.random()*t.height),console.log(a),a.playOnceAndDestroy()})}}else ht=0});function ra(e){return t=>{var a,n,s,i,r,o,u;v.selectedCharacter.value!=null&&v.selectedCharacter.value!==e?((a=v.team.value[v.selectedCharacter.value])==null?void 0:a.type)===((n=v.team.value[e])==null?void 0:n.type)&&((i=(s=v.team.value[v.selectedCharacter.value])==null?void 0:s.exp)!=null?i:0)<6&&((o=(r=v.team.value[e])==null?void 0:r.exp)!=null?o:0)<6?(ye("merge",v.selectedCharacter.value,e),v.selectedCharacter.value=null):(ye("move",v.selectedCharacter.value,e),v.selectedCharacter.value=null):v.selectedCharacter.value===e?v.selectedCharacter.value=null:v.selectedShopItem.value!==null?((v.team.value[e]==null||v.team.value[e].type===((u=v.shop.value[v.selectedShopItem.value])==null?void 0:u.type)&&v.team.value[e].exp<6)&&v.gold.value>=3&&ye("buy",v.selectedShopItem.value,e),v.selectedShopItem.value=null):v.selectedCharacter.value=e,t==null||t.stopPropagation()}}const tl=e=>[v],qa=V(()=>!1);function al(e,t){}var nl=Object.freeze(Object.defineProperty({__proto__:null,characters:H,main:v,getInitialLayers:tl,hasWon:qa,fixOldSave:al},Symbol.toStringTag,{value:"Module"}));const sl={class:"field"},il=F({__name:"Toggle",props:{title:null,modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){const a=e,n=V(()=>{var i;return ue((i=c(a.title))!=null?i:"<span></span>","span")}),s=V({get(){return!!a.modelValue},set(i){t("update:modelValue",i)}});return(i,r)=>(h(),B("label",sl,[Ot(d("input",{type:"checkbox",class:"toggle","onUpdate:modelValue":r[0]||(r[0]=o=>Ce(s)?s.value=o:null)},null,512),[[Ja,c(s)]]),(h(),O(ie(c(n))))]))}});var qt=W(il,[["__scopeId","data-v-11046116"]]);const ct=e=>(ke("data-v-4a50ce42"),e=e(),Me(),e),rl={class:"game-over-modal-header"},ol=["src","alt"],ll={class:"game-over-modal-title"},Al=ct(()=>d("h2",null,"Congratulations!",-1)),ul={key:0},cl=ct(()=>d("br",null,null,-1)),dl=ct(()=>d("div",null," Please check the Discord to discuss the game or to check for new content updates! ",-1)),gl=ct(()=>d("br",null,null,-1)),ml=["href"],fl=ct(()=>d("span",{class:"material-icons game-over-modal-discord"},"discord",-1)),hl=F({__name:"GameOverScreen",setup(e){const{title:t,logo:a,discordName:n,discordLink:s,versionNumber:i,versionTitle:r}=U,o=V(()=>Ft(q.timePlayed)),u=V(()=>qa.value&&!q.keepGoing),m=Te(q,"autosave");function y(){q.keepGoing=!0}function p(){xe(Xe())}return(C,b)=>(h(),O(De,{"model-value":c(u)},{header:M(()=>[d("div",rl,[c(a)?(h(),B("img",{key:0,class:"game-over-modal-logo",src:c(a),alt:c(t)},null,8,ol)):T("",!0),d("div",ll,[Al,d("h4",null,"You've beaten "+G(c(t))+" v"+G(c(i))+": "+G(c(r)),1)])])]),body:M(({shown:_})=>[_?(h(),B("div",ul,[d("div",null,"It took you "+G(c(o))+" to beat the game.",1),cl,dl,gl,d("div",null,[d("a",{href:c(s),class:"game-over-modal-discord-link"},[fl,f(" "+G(c(n)),1)],8,ml)]),l(qt,{title:"Autosave",modelValue:c(m),"onUpdate:modelValue":b[0]||(b[0]=S=>Ce(m)?m.value=S:null)},null,8,["modelValue"])])):T("",!0)]),footer:M(()=>[d("div",{class:"game-over-footer"},[d("button",{onClick:y,class:"button"},"Keep Going"),d("button",{onClick:p,class:"button danger"},"Play Again")])]),_:1},8,["model-value"]))}});var vl=W(hl,[["__scopeId","data-v-4a50ce42"]]);const St=e=>(ke("data-v-336bf74f"),e=e(),Me(),e),pl=St(()=>d("div",{class:"nan-modal-header"},[d("h2",null,"NaN value detected!")],-1)),yl={key:0},bl=St(()=>d("br",null,null,-1)),Cl=["href"],Nl=St(()=>d("span",{class:"material-icons nan-modal-discord"},"discord",-1)),Bl=St(()=>d("br",null,null,-1)),El={class:"nan-footer"},wl=F({__name:"NaNScreen",setup(e){const{discordName:t,discordLink:a}=U,n=w(!0),s=w(!0),i=Te(te,"hasNaN"),r=w(null);Ne(i,C=>{C?(n.value=q.autosave,s.value=q.devSpeed===0):(q.autosave=n.value,q.devSpeed=s.value?0:null)});const o=V(()=>{var C;return(C=te.NaNPath)==null?void 0:C.join(".")}),u=V(()=>te.NaNPersistent!=null?te.NaNPersistent.value:null);function m(){te.NaNPersistent!=null&&(te.NaNPersistent.value=new E(0),te.hasNaN=!1)}function y(){te.NaNPersistent&&(te.NaNPersistent.value=new E(1),te.hasNaN=!1)}function p(){te.NaNPersistent&&(te.NaNPersistent.value=new E(NaN),te.hasNaN=!1)}return(C,b)=>(h(),B(j,null,[l(De,He({modelValue:c(i),"onUpdate:modelValue":b[4]||(b[4]=_=>Ce(i)?i.value=_:null)},C.$attrs),{header:M(()=>[pl]),body:M(()=>[d("div",null,[f(' Attempted to assign "'+G(c(o))+'" to NaN',1),c(u)?(h(),B("span",yl,G(" ")+"(previously "+G(c(pa)(c(u)))+")",1)):T("",!0),f(". Auto-saving has been "+G(n.value?"enabled":"disabled")+". Check the console for more details, and consider sharing it with the developers on discord. ",1)]),bl,d("div",null,[d("a",{href:c(a)||"https://discord.gg/WzejVAx",class:"nan-modal-discord-link"},[Nl,f(" "+G(c(t)||"The Paper Pilot Community"),1)],8,Cl)]),Bl,l(qt,{title:"Autosave",modelValue:n.value,"onUpdate:modelValue":b[0]||(b[0]=_=>n.value=_)},null,8,["modelValue"]),c(U).enablePausing?(h(),O(qt,{key:0,title:"Pause game",modelValue:s.value,"onUpdate:modelValue":b[1]||(b[1]=_=>s.value=_)},null,8,["modelValue"])):T("",!0)]),footer:M(()=>[d("div",El,[d("button",{onClick:b[2]||(b[2]=_=>{var S;return(S=r.value)==null?void 0:S.open()}),class:"button"},"Open Saves Manager"),d("button",{onClick:m,class:"button"},"Set to 0"),d("button",{onClick:y,class:"button"},"Set to 1"),c(u)&&c(E).neq(c(u),0)&&c(E).neq(c(u),1)?(h(),B("button",{key:0,onClick:b[3]||(b[3]=_=>i.value=!1),class:"button"}," Set to previous ")):T("",!0),d("button",{onClick:p,class:"button danger"},"Ignore")])]),_:1},16,["modelValue"]),l(Ra,{ref_key:"savesManager",ref:r},null,512)],64))}});var _l=W(wl,[["__scopeId","data-v-336bf74f"]]);const Il=f("Information");var Sl=F({__name:"App",setup(e){const t=U.useHeader,a=V(()=>$e[P.theme].variables);Te(P,"showTPS");const n=Te(P,"showTutorial"),s=V(()=>ue(L(()=>l(j,null,[Qs.map(je)])))),i=Gs({general:()=>({display:"General",glowColor(){return i.activeTab.value===this.tab?"var(--foreground)":""},tab:L(()=>l("div",null,[f("Have you ever played Super Auto Pets? Great, then you already know the basics! I'd suggest checking out the Livestream tab because it's quite different!"),l("br",null,null),l("br",null,null),f("For those unfamiliar with SAP, this is a game in which you'll manage a team of Coots that have a livestream battle with another player's team of Coots. You win the game by winning 5 "),l("img",{src:Ls},null),l("span",{style:"color: cadetblue"},[f("trophies")]),f(" before losing all 3 "),l("img",{src:na},null),l("span",{style:"color: red"},[f("lives")]),f(".")]))}),managing:()=>({display:"Managing",glowColor(){return i.activeTab.value===this.tab?"var(--foreground)":""},tab:L(()=>l("div",null,[f("Before each battle you get the opportunity to prepare. You have 3 slots for Coots, and you can buy more using the shop at the bottom of the screen. Purchasing Coots costs "),l("img",{src:mt},null),l("span",{style:"color: yellow"},[f("moguls")]),f(", which is a currency you receive 10 of during the management phase. Any unspent "),l("img",{src:mt},null),l("span",{style:"color: yellow"},[f("moguls")]),f(" are lost. Each Coots costs 3 "),l("img",{src:mt},null),l("span",{style:"color: yellow"},[f("moguls")]),f(", and you can reroll the shop for 1 "),l("img",{src:mt},null),l("span",{style:"color: yellow"},[f("mogul")]),f("."),l("br",null,null),l("br",null,null),f("You can also merge your Coots to increase their stats and level them up. Coots have an ability that grows stronger as they level up.")]))}),livestream:()=>({display:"Livestream",glowColor(){return i.activeTab.value===this.tab?"var(--foreground)":""},tab:L(()=>l("div",null,[f("In a livestream battle, your goal is to get more views than your opponent. Each team will add their Coots to their livestreams together, one at a time. Abilities will also activate throughout the stream as appropriate."),l("br",null,null),l("br",null,null),f("Each Coots has two stats- "),l("img",{src:na},null),l("span",{style:"color: red"},[f("Relevancy")]),f(" and "),l("img",{src:Us},null),l("span",{style:"color: gold"},[f("Presence")]),f(". The view count is based on the product of those two stats, and then summed between each Coots on the stream. Be careful if either stat becomes 0 or lower, that streamer won't contribute to your view count."),l("br",null,null),l("br",null,null),f("You can press play to perform a single action and see what the next will be, or select autoplay to automatically perform the whole match. If this is your first time playing, I'd suggest leaving autoplay off.")]))}),multiplayer:()=>({display:"Multiplayer",glowColor(){return i.activeTab.value===this.tab?"var(--foreground)":""},tab:L(()=>l("div",null,[f("By default you are going to be playing in a shared lobby with all other players. If you'd like to play with a specific group of friends, there's an option to join a room in the settings."),l("br",null,null),l("br",null,null),f("Also, be warned that the game has no account system and if you lose your connection to the server you'll automatically start a new game. Sorry!")]))})},()=>({classes:{tutorial:!0}})),r=ue(L(()=>Ta(i)));return(o,u)=>(h(),B(j,null,[d("div",{id:"modal-root",style:Be(c(a))},null,4),d("div",{class:$(["app",{useHeader:c(t)}]),style:Be(c(a))},[c(t)?(h(),O(Va,{key:0})):T("",!0),l(Pr),l(vl),l(_l),(h(),O(ie(c(s)))),l(De,{modelValue:c(n),"onUpdate:modelValue":u[0]||(u[0]=m=>Ce(n)?n.value=m:null)},{header:M(()=>[Il]),body:M(()=>[(h(),O(ie(c(r))))]),_:1},8,["modelValue"])],6)],64))}});var Ql=W(Sl,[["__scopeId","data-v-03fc746c"]]);function Tl(e={}){const{immediate:t=!1,onNeedRefresh:a,onOfflineReady:n,onRegistered:s,onRegisterError:i}=e;let r,o;const u=async(m=!0)=>{m&&(r==null||r.addEventListener("controlling",y=>{y.isUpdate&&window.location.reload()})),o&&o.waiting&&await sn(o.waiting,{type:"SKIP_WAITING"})};if("serviceWorker"in navigator){r=new nn("./sw.js",{scope:"./",type:"classic"}),r.addEventListener("activated",m=>{m.isUpdate||n==null||n()});{const m=()=>{a==null||a()};r.addEventListener("waiting",m),r.addEventListener("externalwaiting",m)}r.register({immediate:t}).then(m=>{o=m,s==null||s(m)}).catch(m=>{i==null||i(m)})}return u}function kl(e={}){const{immediate:t=!0,onNeedRefresh:a,onOfflineReady:n,onRegistered:s,onRegisterError:i}=e,r=w(!1),o=w(!1);return{updateServiceWorker:Tl({immediate:t,onNeedRefresh(){r.value=!0,a==null||a()},onOfflineReady(){o.value=!0,n==null||n()},onRegistered:s,onRegisterError:i}),offlineReady:o,needRefresh:r}}document.title=U.title;window.projInfo=U;if(U.id==="")throw"Project ID is empty! Please select a unique ID for this project in /src/data/projInfo.json";requestAnimationFrame(async()=>{console.log(`%cMade in Profectus%c
|
|
Learn more at www.moddingtree.com`,"font-weight: bold; font-size: 24px; color: #A3BE8C; background: #2E3440; padding: 4px 8px; border-radius: 8px;","padding: 4px;"),await Bs();const{globalBus:e}=await pt(()=>Promise.resolve().then(function(){return is}),void 0),{startGameLoop:t}=await pt(()=>import("./gameLoop.476751a8.js"),["assets/gameLoop.476751a8.js","assets/@fontsource.f66d05e7.css","assets/vue.f6263579.js","assets/earcut.b6f90e68.js","assets/@vue.4ce677c2.js","assets/nanoevents.1080beb7.js","assets/lz-string.f2f3b7cf.js","assets/vue-toastification.b7cd620e.js","assets/vue-toastification.4b5f8ac8.css","assets/vuedraggable.c3acdf62.js","assets/sortablejs.cbae5b2d.js","assets/vue-next-select.0dc4e443.js","assets/vue-next-select.9e6f4164.css","assets/vue-textarea-autosize.35804eaf.js","assets/@pixi.1eac1889.js","assets/ismobilejs.5c6954b9.js","assets/eventemitter3.dc5195d7.js","assets/url.e51cb87b.js","assets/querystring.23ae9a54.js","assets/semver.83ff78cf.js","assets/lru-cache.9a21e90b.js","assets/yallist.fd762fe7.js","assets/socket.io-client.79ce0df5.js","assets/engine.io-client.58517560.js","assets/engine.io-parser.3f360695.js","assets/@socket.io.aec831e2.js","assets/socket.io-parser.544e37d1.js","assets/workbox-window.8d14e8b7.js"]),a=window.vue=Ya(Ql);e.emit("setupVue",a),a.mount("#app"),Qe(()=>{const n=ua(),{updateServiceWorker:s}=kl({onNeedRefresh(){n.info("New content available, click here to update.",{timeout:!1,closeOnClick:!1,draggable:!1,icon:{iconClass:"material-icons",iconChildren:"refresh",iconTag:"i"},rtl:!1,onClick(){s()}})},onOfflineReady(){n.info("App ready to work offline")},onRegisterError:console.warn,onRegistered(i){i&&setInterval(()=>i.update(),60*60*1e3)}})}),t()});export{E as D,pt as _,te as a,U as b,nl as c,ae as g,Es as l,q as p,P as s};
|