/* empty css */import"./vue.dd1d82d0.js";import{Zasb,lasdl,aaasiI,tasJi,ayasbs,arasDe,aEash,a0asS,aKasie,a1asX,OasM,aGasDs,Aascl,Casc,_aseI,a8ass,b6asBi,b8aszs,aqasNe,buasas,a7asd,bsaswn,bbasAe,Tasjd,jasud,bvasts,uasen,qasxe,b1asoe,GasLI,aCasom,wasRl,b2asAI,aoasVd,IasBI,auasJd,aNasqI,$asoi,zasse,alasUs,aLasbe,HasWd,aJasZs,kasNn,JaspI,aHasCe,aFashe,bnaspd,bcasTn,brasMd,beasrd}from"./@vue.359f7754.js";import{casbm}from"./nanoevents.1080beb7.js";import{LasGe}from"./lz-string.f2f3b7cf.js";import{iaswd}from"./is-plain-object.906d88e8.js";import{easNd,TasOd,BasCd,Aasym,uashd,EasFn,aasTe,Gaskn,Cascn,SasJs}from"./@pixi.051d1bd4.js";import{sasYd,uasjm}from"./vue-toastification.7ec3a26c.js";import{Yasvd}from"./vue-next-select.d15705a0.js";import{PasXd}from"./vue-panzoom.f6869ea5.js";import{Daszd}from"./vuedraggable.179e27ef.js";import{pasRd}from"./vue-textarea-autosize.35804eaf.js";import"./amator.8216e0d2.js";import"./bezier-easing.a990b400.js";import"./eventemitter3.dc5195d7.js";import"./earcut.03899505.js";import"./url.1821b64b.js";import"./querystring.b35d81f8.js";import"./panzoom.9e1878dd.js";import"./wheel.f03080ac.js";import"./ngraph.events.083734c6.js";import"./sortablejs.e4e9a931.js";constGd=function(){constl=document.createElement("link").relList;if(l&&l.supports&&l.supports("modulepreload"))return;for(constmofdocument.querySelectorAll('link[rel="modulepreload"]'))n(m);newMutationObserver(m=>{for(constaofm)if(a.type==="childList")for(constZofa.addedNodes)Z.tagName==="LINK"&&Z.rel==="modulepreload"&&n(Z)}).observe(document,{childList:!0,subtree:!0});functione(m){consta={};returnm.integrity&&(a.integrity=m.integrity),m.referrerpolicy&&(a.referrerPolicy=m.referrerpolicy),m.crossorigin==="use-credentials"?a.credentials="include":m.crossorigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}functionn(m){if(m.ep)return;m.ep=!0;consta=e(m);fetch(m.href,a)}};Gd();constfd="modulepreload",gn={},xd="./",Os=function(l,e){return!e||e.length===0?l():Promise.all(e.map(n=>{if(n=`${xd}${n}`,ningn)return;gn[n]=!0;constm=n.endsWith(".css"),a=m?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${n}"]${a}`))return;constZ=document.createElement("link");if(Z.rel=m?"stylesheet":fd,m||(Z.as="script",Z.crossOrigin=""),Z.href=n,document.head.appendChild(Z),m)returnnewPromise((o,y)=>{Z.addEventListener("load",o),Z.addEventListener("error",()=>y(newError(`Unable to preload CSS for ${n}`)))})})).then(()=>l())},Dd="./projInfo-schema.json",Sd="Advent Incremental",Ld="An incremental game you play a day at a time, leading up to Christmas!",Td="advent-incremental",Fd="thepaperpilot and friends",kd="",gd="",Qd="1.0.4",Ud="Initial Commit",Hd=!0,Ad=!1,Ed=2,Bd=!0,Pd=null,_d="",qd=["main"],$d=3600,Kd=0,ic=!0,Ic="base64";varQI={$schema:Dd,title:Sd,description:Ld,id:Td,author:Fd,discordName:kd,discordLink:gd,versionNumber:Qd,versionTitle:Ud,allowGoBack:Hd,defaultShowSmall:Ad,defaultDecimalsShown:Ed,useHeader:Bd,banner:Pd,logo:_d,initialTabs:qd,maxTickLength:$d,offlineLimit:Kd,enablePausing:ic,exportEncoding:Ic};constan=17,lc=9e15,ec=Math.log10(9e15),sc=1/9e15,nc=308,mc=-324,Qn=5,dc=function(){consti=[];for(lete=mc+1;e<=nc;e++)i.push(Number("1e"+e));constl=323;returnfunction(e){returni[e+l]}}(),Fe=[2,Math.E,3,4,5,6,7,8,9,10],cc=[[1,1.0891168053867777,1.1789745164521264,1.2701428397304229,1.3632066654400328,1.4587804913784246,1.557523817412741,1.660158301473385,1.767487542936873,1.8804205225512542,2],[1,1.1121114330934,1.23103892493161,1.35838369631113,1.49605193039935,1.64635423375119,1.81213853570186,1.99697132461829,2.20538955455724,2.44325744833852,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.
`))!=null?l:""}function t(i){const l=dl(i)?i:Ji(i);l[Yn]=l,l[we]=dl(i)?i.value:i,l[Bs]=Sc(),l[Ps]=!1;const e=b({get(){return l.value},set(n){l.value=n}});return e[we]=l[we],l[hs]=e,l[ws]=void 0,Tl.length===0?console.warn("Creating a persistent ref outside of a layer. This is not officially supported",l,`
`+l[Bs]):Ee[Tl[Tl.length-1]].add(l),l}function Om(i){return i!=null&&typeof i=="object"&&Yn in i}function $(i){return i[hs]}function Lc(i){Tl.length===0?console.warn("Deleting a persistent ref outside of a layer. Ignoring...",i):Ee[Tl[Tl.length-1]].delete(i),i[Ps]=!0}NI.on("addLayer",(i,l)=>{const e=[],n=(m,a=[])=>{let Z=!1;return Object.keys(m).forEach(o=>{let y=m[o];if(y!=null&&typeof y=="object")if(yl in y&&(y=y[yl]),Om(y)){if(Z=!0,y[Ps]){console.warn("Deleted persistent ref present in returned object. Ignoring...",y,`
`+y[Bs]);return}Ee[i.id].delete(y);const u=[i.id,...a,o];y[ws]!=null&&JSON.stringify(u)!==JSON.stringify(y[ws])&&console.error(`Persistentrefisbeingsavedto\`${u.join(".")}\` when it's already present at \`${y[ws].join(".")}\`. This can cause unexpected behavior when loading saves between updates.`,y),y[ws]=u;constw=a.reduce((N,p)=>(pinN||(N[p]={}),N[p]),l),W=w[o];w[o]=y[Yn],ud(w)?W!=null?w[o]=W:w[o]=y[we]:W!=null?w[o].value=W:w[o].value=y[we]}else!(yinstanceofI)&&!dl(y)&&!e.includes(y)&&(typeofy.type=="symbol"&&e.push(y),n(y,[...a,o])&&(ts(y)&&!ts(m)?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.",ylinm?m[yl]:m,o):Z=!0))}),Z};n(i[yl]),Ee[i.id].forEach(m=>{m[Ps]||console.error(`Created persistent ref in ${i.id} without registering it to the layer! Make sure to include everything persistent in the returned object`,m,`
`)}]})},m=b(()=>gI.packingMilestones.wrappingPaperBoost.earned.value?2:1),a={christmas1:b(()=>V.isMastery.value?1:I.add(n.christmas.buyable.amount.value,1).mul(m.value)),rainbow1:b(()=>V.isMastery.value?1:I.pow(2,n.rainbow.buyable.amount.value).mul(m.value)),jazzy1:b(()=>V.isMastery.value?1:I.add(n.jazzy.buyable.amount.value,1).mul(m.value)),sunshine1:b(()=>V.isMastery.value?1:I.add(n.sunshine.buyable.amount.value,1).mul(m.value)),ocean1:b(()=>V.isMastery.value?1:I.pow(1.5,n.ocean.buyable.amount.value).mul(m.value)),beach1:b(()=>V.isMastery.value?1:I.add(n.beach.buyable.amount.value,1).log10().add(1).mul(m.value).pow(lI.milestones.milestone3.earned.value?1.6:1))},Z=vI(b(()=>Object.values(n).map(W=>W.buyable.amount.value).reduce(I.add,0)),"Total Wrapping Paper"),o=z(()=>({display:{requirement:"80 Total Wrapping Paper",effectDisplay:"Unlock a new elf to help with dyes"},shouldEarn:()=>I.gte(Z.value,80),onComplete(){V.days[3].recentlyUpdated.value=!0}})),y=b(()=>I.add(V.masteredDays.value,1).times(20).add(140).ceil()),u=il(()=>({display:()=>{var W;return{title:`${V.isMastery.value?"Stop Decorating":"Begin Decorating"}${(W=Object.values(CI).find(N=>{varp;returnc(N.mastered)===!1&&!["Elves","Management"].includes(c((p=N==null?void0:N.name)!=null?p:""))}))==null?void0:W.name}`,description:r(()=>s(M,null,[s("br",null,null),d("Decorating brings you to a separate version of each day that only allows layers that are decorated or being decorated to work. These days will have a new decoration effect that applies outside of decorating as well."),s("br",null,null),d("You can safely start and stop decorating without losing progress"),V.isMastery.value?null:s(M,null,[s("br",null,null),s("br",null,null),d("Requires "),_(y.value),d(" total wrapping paper")])]))}},visibility:()=>j(V.day.value===is),canClick(){return V.isMastery.value||I.gte(Z.value,y.value)},onClick(){var N,p;if(!c(u.canClick))return;V.toggleMastery();const W=(p=(N=V.currentlyMastering.value)==null?void 0:N.id)!=null?p:"trees";Qi.tabs.includes(W)||V.openDay(W),W==="paper"&&(Fi.elves.cuttersElf.bought.value=!0,Fi.elves.plantersElf.bought.value=!0,Fi.elves.expandersElf.bought.value=!0,Fi.elves.heatedCuttersElf.bought.value=!0,Fi.elves.heatedPlantersElf.bought.value=!0,Fi.elves.fertilizerElf.bought.value=!0)},style:{width:"300px",minHeight:"160px"}})),w=HI(()=>({direction:Yi.Right,width:600,height:25,fillStyle:"animation: 15s wrapping-paper-bar linear infinite",textStyle:"color: var(--feature-foreground)",progress:()=>V.day.value===is?I.div(V.masteredDays.value,6):1,display:r(()=>V.day.value===is?s(M,null,[V.masteredDays.value,d("/6 days decorated")]):"")}));return AI(()=>{V.day.value===is&&I.gte(V.masteredDays.value,6)&&V.showLoreModal.value===!1&&V.completeDay()}),{name:i,day:is,color:l,display:r(()=>s("div",{style:"width: 620px"},[s("div",null,[V.day.value===is?"Decorate 6 previous days to complete the day":`${i}Complete!`]),hi(w),s(ti,null,null),s(sl,{resource:Z},null),zI(n.christmas.display,n.rainbow.display,n.jazzy.display),zI(n.christmas.buyable,n.rainbow.buyable,n.jazzy.buyable),s(ti,null,null),zI(n.sunshine.display,n.ocean.display,n.beach.display),zI(n.sunshine.buyable,n.ocean.buyable,n.beach.buyable),s(ti,null,null),hi(u),s(ti,null,null),hi(o)])),wrappingPaper:n,boosts:a,unlockDyeElfMilestone:o,minWidth:700}}),mZ="workshop",Is=2,XI=al(mZ,function(){const i="Workshop",l="#D66B02",e="#D66B02",n=vI(0,"foundation progress"),m=Ci(()=>[Si(()=>({addend:900,description:"Hope Level 3",enabled:Y.elfTraining.expandersElfTraining.milestones[2].earned})),Si(()=>({addend:200,description:"Build wooden towers",enabled:lI.row1Upgrades[2].bought})),Si(()=>({addend:()=>I.times(Gl.factoryBuyables.expandFactory.amount.value,100),description:"Expand Factory",enabled:()=>I.gt(Gl.factoryBuyables.expandFactory.amount.value,0)}))]),a=b(()=>m.apply(100)),Z=Ea(()=>({scaling:Ba(Bn(Bn(fn(250,1.5),5423,1/1e10),1e20,3e8),a),baseResource:ki.logs,gainResource:$(n),roundUpCost:!0,spend(Wi,E){q.value||(ki.logs.value=I.sub(ki.logs.value,E))},costModifier:Ci(()=>[J(()=>({m
Cost:50${e.displayName}<br/>${WI(1e11)}${Oi.coal.displayName}`}})),si=U(()=>({resource:$(e),cost:1e5,display:{title:"Efficient Drills",description:"Use metal and a bunch of R&D to make drilling stuff faster. Double coal and ore mining speed."},visibility:()=>j(xi.depthMilestones[4].earned.value)})),q=Ai(()=>({resource:$(e),cost(){let P=new I(this.amount.value);P=I.pow(.95,g.books.metalBook.totalAmount.value).times(P);let ri=I.pow(1.15,P).times(10);return Y.elfTraining.metalElfTraining.milestones[4].earned.value&&(ri=I.div(ri,I.add(xi.depth.value,1).sqrt())),Y.elfTraining.metalElfTraining.milestones[3].earned.value&&(ri=I.div(ri,10)),ri},inverseCost(P){Y.elfTraining.metalElfTraining.milestones[3].earned.value&&(P=I.mul(P,10)),Y.elfTraining.metalElfTraining.milestones[4].earned.value&&(P=I.mul(P,I.add(xi.depth.value,1).sqrt()));let ri=I.div(P,10).log(1.15);return ri=ri.div(I.pow(.95,g.books.metalBook.totalAmount.value)),I.isNaN(ri)?I.dZero:ri.floor().max(0)},display:{title:"Metal Drill",description:"An automated machine to help you mine more ore, faster",effectDisplay:r(()=>s(M,null,[d("Mine 2.5x faster. Increase ore mining amount by")," ",yI(q.amount.value),d(" ore per operation")]))},visibility:()=>j(I.gte(q.amount.value,1)||I.div(a.value,u.value).plus(n.value).gte(10)),style:{width:"200px"}})),Wi=Ai(()=>({resource:$(e),cost(){let P=new I(this.amount.value);P=I.pow(.95,g.books.metalBook.totalAmount.value).times(P);let ri=I.pow(1.15,I.times(P,10)).times(10);return Y.elfTraining.metalElfTraining.milestones[4].earned.value&&(ri=I.div(ri,I.add(xi.depth.value,1).sqrt())),Y.elfTraining.metalElfTraining.milestones[3].earned.value&&(ri=I.div(ri,10)),ri},inverseCost(P){Y.elfTraining.metalElfTraining.milestones[3].earned.value&&(P=I.mul(P,10)),Y.elfTraining.metalElfTraining.milestones[4].earned.value&&(P=I.mul(P,I.add(xi.depth.value,1).sqrt()));let ri=I.div(P,10).log(1.15).div(10);return ri=ri.div(I.pow(.95,g.books.metalBook.totalAmount.value)),I.isNaN(ri)?I.dZero:ri.floor().max(0)},display:{title:"Industrial Crucible",description:"A giant automated crucible furnace, letting you smelt ore faster",effectDisplay:r(()=>s(M,null,[d("Automatically smelts")," ",yI(I.times(Wi.amount.value,10)),d(" ore per second")]))},visibility:()=>j(I.gte(Wi.amount.value,1)||I.gte(q.amount.value,4)||I.gte(a.value,50)),style:{width:"200px"}})),E=t(!0),ji=Ai(()=>({resource:Oi.coal,cost(){let P=new I(this.amount.value);P=I.pow(.95,g.books.metalBook.totalAmount.value).times(P);let ri=I.pow(10,P).times(1e12);return Y.elfTraining.metalElfTraining.milestones[4].earned.value&&(ri=I.div(ri,I.add(xi.depth.value,1).sqrt())),Y.elfTraining.metalElfTraining.milestones[3].earned.value&&(ri=I.div(ri,10)),ri},inverseCost(P){Y.elfTraining.metalElfTraining.milestones[3].earned.value&&(P=I.mul(P,10)),Y.elfTraining.metalElfTraining.milestones[4].earned.value&&(P=I.mul(P,I.add(xi.depth.value,1).sqrt()));let ri=I.div(P,1e12).log(10);return ri=ri.div(I.pow(.95,g.books.metalBook.totalAmount.value)),I.isNaN(ri)?I.dZero:ri.floor().max(0)},display:{title:"Hotter Forges",description:"More coal makes the fires burn hotter, getting just a little more metal out of each bit of ore",effectDisplay:r(()=>s(M,null,[d("Gain "),yI(I.times(vi.value,100)),d("% more metal per ore")]))},visibility:()=>j(I.gte(ji.amount.value,1)||zi.bought.value),style:{width:"200px"}})),vi=b(()=>I.times(ji.amount.value,.25));NI.on("update",P=>{var Gi;if(I.lt(V.day.value,yn)||V.isMastery.value&&!Ei.value&&((Gi=V.currentlyMastering.value)==null?void 0:Gi.name)!==i)return;const ri=I.sub(I.times(mi.value,v.value),I.sub(o.value,Z.value).max(0)),gi=I.sub(W.value,I.sub(Z.value,o.value).max(0));Z.value=I.isNaN(ri)?0:ri,o.value=I.isNaN(gi)?0:gi,G.value=I.times(P,mi.value).plus(G.value);const mI=G.value.trunc();G.value=G.value.minus(mI),m.value=I.add(m.value,I.times(mI,v.value)),E.value&&L(I.min(C.value,I.times(W.value,P)),p.value)});const[uI,Pi]=vl(()=>[{title:"Auto Smelt Speed",modifier:w,base:0,unit:"/s",visible(){return I.gt(Wi.amount.value,0)||$i.value}},{title:"Auto Smelt Multiplier",modifier:N,base
margin:10px0;"/>${si}`:zi,n.value=!0},onOpenLayer(){if(li!=25){if(Wi.value=!1,window.matchMedia("(min-width:1468px)").matches)if(Qi.tabs.includes(A!=null?A:"trees")){const Pi=Qi.tabs.lastIndexOf(A!=null?A:"trees");Qi.tabs.splice(Pi,1)}else Qi.tabs.push(A!=null?A:"trees"),V.minimized.value=!0;else Qi.tabs.splice(1,1/0,A!=null?A:"trees");CI[A!=null?A:"trees"].minimized.value=!1}},onUnlockLayer(){(A!=null||li==25)&&(Mi.value=!0,setTimeout(()=>{var Pi,II;m.value=-1,a.value=li==25?"TheEnd!":c((II=(Pi=CI[A!=null?A:"trees"])==null?void 0:Pi.name)!=null?II:""),Z.value=zi,Qi.autoPause&&(Qi.devSpeed=null),n.value=!0},1e3))}}}}})}const v=[O(()=>({day:1,shouldNotify:!1,layer:"trees",symbol:nd,story:"Ohno!SantaforgotaboutChristmasandit's only 25 days away! He'saskedforyourhelpduetoyourhistorygettinglargequantitiesofthingsinshortamountsoftime.Unfortunatelyyou're really starting from scratch here - let'sstartwithgettingwood,whichyou'll need for everything from building workshops to wrapping paper to many of the toys themselves!",completedStory:"Santa looks at all the wood you'vegatheredandtellsyouyou've done well! He says you should take the rest of the day off so you'rerefreshedfortomorrow's work. Good Job!",masteredStory:"As you repeat the basic actions again, you feel like you'velearnedsomethingthatyoudidn't know the first time around. Santa is impressed at your new knowledge and inspires you to attempt this with more jobs. Great Job!"})),O(()=>({day:2,shouldNotify:!1,layer:"workshop",symbol:ed,story:"Santa looked over your tree farm and was impressed with how much you could accomplish in just one day. Today'sgoalistogetaworkshopbuiltupfortheelvestoworkin-andapparently,theyneedquitealotofspacetowork!",completedStory:"Theworkshopcomplete,Santaonceagaindismissesyoufortheday.Withastrongfoundation,thisworkshopshouldsufficeforsupportingfutureworktowardthisimpossiblemission.GoodJob!",masteredStory:"Asyouattempttobuildtheworkshopagainwithyournewfoundexperiencesandresources,yourealizeyoucouldhavebuilttheworkshopalittlebitbetter.Asyoukeepbuildingandbuilding,yourealizethatyoucould've built it without wasting any resources. Great Job!"})),O(()=>({day:3,shouldNotify:!1,layer:"coal",symbol:Hm,story:"Santa tells you that unfortunately there are quite a few naughty children out there this year, and he'sgoingtoneedyoutogatherasmuchcoalasyoucanforhimtogiveout.",completedStory:"Santalooksatallthecoalyou've gathered and tells you you'vedonewell!Hesaysyoushouldtaketherestofthedayoffsoyou're refreshed for tomorrow'swork.GoodJob!",masteredStory:"It's another typical day, attempting to redo your work again, but this time for coal. While doing this tedious task, an elf comes up to you. It gives you a improved blueprint on how to make small fires. You try it, and you realize that it'salotmoreefficentthanyouroldbuildingsdesigns.Youthanktheelf,andresumeyourwork.GreatJob!"})),O(()=>({day:4,shouldNotify:!1,layer:"elves",symbol:Am,story:"Alright,itseemsyoufinallyhaveenoughthingssetuptostartbringingintheelves!Unfortunately,itseemsthey'll need to be retrained on how to help, since they'vestoppedpracticingfor11months!",completedStory:"Theworkshopnowhumswiththebustlingelvesworkingoneverything.Theycantakeitfromhere-youdeserveabreakaftersuchalongday!GoodJob!",masteredStory:"Thisplacefeelsalotmorebetter,withlessnaughtyelveswhoaremoreexcitedthaneverbeforetodosomething!Asyoucollapseintoachairthinkingofallofyourhardwork,Santacomesbyyetagaintocongratulateyouonyourhardwork.YoufeelapangofjealousyasSantaistakingallthecreditforyourwork,butyoudecidethatsavingChristmasisworthit.GreatJob!"})),O(()=>({day:5,shouldNotify:!1,layer:"paper",symbol:$m,story:"Withtheelvestrained,we'realmostreadytostartworkingonthesepresents!Jus
Learnmoreatwww.moddingtree.com`,"font-weight: bold; font-size: 24px; color: #A3BE8C; background: #2E3440; padding: 4px 8px; border-radius: 8px;","padding: 4px;"),await Qc();const{globalBus:i}=await Os(()=>Promise.resolve().then(function(){return Yc}),void 0),{startGameLoop:l}=await Os(()=>import("./gameLoop.ca22df8f.js"),["assets/gameLoop.ca22df8f.js","assets/@fontsource.c175eac8.css","assets/vue.dd1d82d0.js","assets/amator.8216e0d2.js","assets/bezier-easing.a990b400.js","assets/@vue.359f7754.js","assets/nanoevents.1080beb7.js","assets/lz-string.f2f3b7cf.js","assets/is-plain-object.906d88e8.js","assets/@pixi.051d1bd4.js","assets/eventemitter3.dc5195d7.js","assets/earcut.03899505.js","assets/url.1821b64b.js","assets/querystring.b35d81f8.js","assets/vue-toastification.7ec3a26c.js","assets/vue-toastification.4b5f8ac8.css","assets/vue-next-select.d15705a0.js","assets/vue-next-select.9e6f4164.css","assets/vue-panzoom.f6869ea5.js","assets/panzoom.9e1878dd.js","assets/wheel.f03080ac.js","assets/ngraph.events.083734c6.js","assets/vuedraggable.179e27ef.js","assets/sortablejs.e4e9a931.js","assets/vue-textarea-autosize.35804eaf.js"]),e=window.vue=rd(wj);i.emit("setupVue",e),e.mount("#app"),De(()=>{const n=jm(),{updateServiceWorker:m}=Oj({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(){m()}})},onOfflineReady(){n.info("App ready to work offline")},onRegisterError:console.warn,onRegistered(a){a&&setInterval(()=>a.update(),60*60*1e3)}})}),l()});export{I as D,Os as _,rl as a,QI as b,wo as c,NI as g,sn as l,Qi as p,UI as s};