39 lines
784 KiB
JavaScript
39 lines
784 KiB
JavaScript
|
/* empty css */import"./vue.e305c975.js";import{Z as u,l as ll,aa as Di,t as di,ay as Tn,ar as bn,aE as N,a0 as S,aK as Yl,a1 as Y,O as w,aG as Un,A as Il,C as d,_ as Hi,a8 as I,b6 as Pi,b8 as II,aq as In,bu as gn,a7 as a,bs,bb as sI,T as ot,j as ct,bv as Pn,u as tI,q as un,b1 as zl,G as Fe,aC as us,w as Wl,b2 as nl,ao as Zt,I as Le,aN as Re,$ as Ii,z as Gl,al as _n,aL as Sl,H as bt,aJ as MI,J as de,k as ut,aH as Al,aF as Bl,bn as rt,br as yt,be as Vt}from"./@vue.359f7754.js";import{c as rs}from"./nanoevents.1080beb7.js";import{L as en}from"./lz-string.f2f3b7cf.js";import{i as pt}from"./is-plain-object.906d88e8.js";import{Y as Wt}from"./vue-next-select.0b2b1d01.js";import{s as jt,u as ys}from"./vue-toastification.d643abb2.js";import{e as Jt,T as ht,B as Ct,A as mn,a as vt,G as AI,C as cI,S as fn}from"./@pixi.45135ab2.js";import{D as wt}from"./vuedraggable.96a532dc.js";import{p as Ot}from"./vue-textarea-autosize.35804eaf.js";import"./earcut.7c12e2a9.js";import"./eventemitter3.dc5195d7.js";import"./url.5a27916e.js";import"./querystring.b35d81f8.js";import"./sortablejs.a0419146.js";const Mt=function(){const l=document.createElement("link").relList;if(l&&l.supports&&l.supports("modulepreload"))return;for(const t of document.querySelectorAll('link[rel="modulepreload"]'))s(t);new MutationObserver(t=>{for(const o of t)if(o.type==="childList")for(const c of o.addedNodes)c.tagName==="LINK"&&c.rel==="modulepreload"&&s(c)}).observe(document,{childList:!0,subtree:!0});function n(t){const o={};return t.integrity&&(o.integrity=t.integrity),t.referrerpolicy&&(o.referrerPolicy=t.referrerpolicy),t.crossorigin==="use-credentials"?o.credentials="include":t.crossorigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function s(t){if(t.ep)return;t.ep=!0;const o=n(t);fetch(t.href,o)}};Mt();const Nt="modulepreload",BI={},Yt="./",Fn=function(l,n){return!n||n.length===0?l():Promise.all(n.map(s=>{if(s=`${Yt}${s}`,s in BI)return;BI[s]=!0;const t=s.endsWith(".css"),o=t?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${s}"]${o}`))return;const c=document.createElement("link");if(c.rel=t?"stylesheet":Nt,t||(c.as="script",c.crossOrigin=""),c.href=s,document.head.appendChild(c),t)return new Promise((Z,b)=>{c.addEventListener("load",Z),c.addEventListener("error",()=>b(new Error(`Unable to preload CSS for ${s}`)))})})).then(()=>l())},ft="./projInfo-schema.json",Xt="Advent Incremental",zt="An incremental game you play a day at a time, leading up to Christmas!",Gt="advent-incremental",xt="thepaperpilot and friends",gt="",Ft="",Rt="0.5",kt="Initial Commit",St=!0,Tt=!1,Lt=2,Qt=!0,Ht=null,Ut="",Dt=["main"],Et=3600,At=0,Bt=!0,Pt="base64";var fe={$schema:ft,title:Xt,description:zt,id:Gt,author:xt,discordName:gt,discordLink:Ft,versionNumber:Rt,versionTitle:kt,allowGoBack:St,defaultShowSmall:Tt,defaultDecimalsShown:Lt,useHeader:Qt,banner:Ht,logo:Ut,initialTabs:Dt,maxTickLength:Et,offlineLimit:At,enablePausing:Bt,exportEncoding:Pt};const ZI=17,_t=9e15,qt=Math.log10(9e15),$t=1/9e15,Kt=308,ia=-324,PI=5,ea=function(){const i=[];for(let n=ia+1;n<=Kt;n++)i.push(Number("1e"+n));const l=323;return function(n){return i[n+l]}}(),dn=[2,Math.E,3,4,5,6,7,8,9,10],la=[[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.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.1592259407876
|
||
|
`).slice(3,5).map(n=>n.trim()).join(`
|
||
|
`))!=null?l:""}function m(i){const l=ll(i)?i:di(i);l[fI]=l,l[nn]=ll(i)?i.value:i,l[Kn]=fa(),l[Ms]=!1;const n=u({get(){return l.value},set(s){l.value=s}});return n[nn]=l[nn],l[kn]=n,l[xn]=void 0,Ml.length===0?console.warn("Creating a persistent ref outside of a layer. This is not officially supported",l,`
|
||
|
Created at:
|
||
|
`+l[Kn]):wn[Ml[Ml.length-1]].add(l),l}function Ns(i){return i!=null&&typeof i=="object"&&fI in i}function B(i){return i[kn]}Xe.on("addLayer",(i,l)=>{const n=[],s=(t,o=[])=>{let c=!1;return Object.keys(t).forEach(Z=>{let b=t[Z];if(b!=null&&typeof b=="object")if($e in b&&(b=b[$e]),Ns(b)){if(c=!0,b[Ms]){console.warn("Deleted persistent ref present in returned object. Ignoring...",b,`
|
||
|
Created at:
|
||
|
`+b[Kn]);return}wn[i.id].delete(b);const r=[i.id,...o,Z];b[xn]!=null&&JSON.stringify(r)!==JSON.stringify(b[xn])&&console.error(`Persistent ref is being saved to \`${r.join(".")}\` when it's already present at \`${b[xn].join(".")}\`. This can cause unexpected behavior when loading saves between updates.`,b),b[xn]=r;const C=o.reduce((h,J)=>(J in h||(h[J]={}),h[J]),l),W=C[Z];C[Z]=b[fI],ct(C)?W!=null?C[Z]=W:C[Z]=b[nn]:W!=null?C[Z].value=W:C[Z].value=b[nn]}else!(b instanceof e)&&!ll(b)&&!n.includes(b)&&(typeof b.type=="symbol"&&n.push(b),s(b,[...o,Z])&&(Pn(b)&&!Pn(t)?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.",$e in t?t[$e]:t,Z):c=!0))}),c};s(i[$e]),wn[i.id].forEach(t=>{console.error(`Created persistent ref in ${i.id} without registering it to the layer! Make sure to include everything persistent in the returned object`,t,`
|
||
|
Created at:
|
||
|
`+t[Kn])}),wn[i.id].clear()});var el=window.state=tI({lastTenTicks:[],hasNaN:!1,NaNPath:[]});const Ys=un({id:"",devSpeed:null,name:"",tabs:[],time:-1,autosave:!0,offlineProd:!0,offlineTime:null,timePlayed:0,keepGoing:!1,modID:"",modVersion:"",layers:{},autoPause:!0});function fs(i){return JSON.stringify(i,(l,n)=>d(n))}const Xs={get(i,l){var s;if(l===$e||l===vn)return i[l];const n=i[$e][l];if(l!=="value"&&(pt(n)||Array.isArray(n))){if(n!==((s=i[l])==null?void 0:s[$e])){const t=[...i[vn],l];i[l]=new Proxy({[$e]:n,[vn]:t},Xs)}return i[l]}return n},set(i,l,n,s){if(!el.hasNaN&&(typeof n=="number"&&isNaN(n)||n instanceof e&&(isNaN(n.sign)||isNaN(n.layer)||isNaN(n.mag)))){const t=i[$e][l];if(!(typeof t=="number"&&isNaN(t)||t instanceof e&&(isNaN(t.sign)||isNaN(t.layer)||isNaN(t.mag))))throw Ys.autosave=!1,el.hasNaN=!0,el.NaNPath=[...i[vn],l],el.NaNReceiver=s,console.error("Attempted to set NaN value",[...i[vn],l],i[$e]),"Attempted to set NaN value. See above for details"}return i[$e][l]=n,!0},ownKeys(i){return Reflect.ownKeys(i[$e])},has(i,l){return Reflect.has(i[$e],l)},getOwnPropertyDescriptor(i,l){return Object.getOwnPropertyDescriptor(i[$e],l)}};var Ti=window.player=new Proxy({[$e]:Ys,[vn]:["player"]},Xs);const XI=Symbol("RegisterNode"),zI=Symbol("UnregisterNode"),GI=Symbol("Nodes"),xI=Symbol("Bounds"),he=tI({});window.layers=he;const wn={},Ml=[];function ml(i,l){return cl(()=>{const n={},s=n.emitter=rs();if(n.on=s.on.bind(s),n.emit=s.emit.bind(s),n.nodes=di({}),n.id=i,Ml.push(i),wn[i]=new Set,n.minimized=m(!1),Object.assign(n,l.call(n)),Ml[Ml.length-1]==null||Ml[Ml.length-1]!==i)throw`Adding layers stack in invalid state. This should not happen
|
||
|
Stack: ${Ml}
|
||
|
Trying to pop ${n.id}`;return Ml.pop(),wi(n,"color"),wi(n,"display"),wi(n,"name"),al(n,"name",n.id),wi(n,"minWidth"),al(n,"minWidth",600),wi(n,"minimizable"),al(n,"minimizable",!0),wi(n,"minimizedDisplay"),n})}function zs(i,l){if(console.info("Adding layer",i.id),he[i.id]){console.error("Attempted to add layer with same ID as existing layer",i.id,he[i.id]);return}al(l,"layers",{}),l.layers[i.id]==null&&(l.layers[i.id]={}),he[i.id]=i,Xe.emit("addLayer",i,l.layers[i.id])}function Xa(i){return he[i]}function Gs(i){console.info("Removing layer",i.id),Xe.emit("removeLayer",i),he[i.id]=void 0}function za(i){Gs(i),zs(i,Ti)}function Ga(i){const l=di(!1);return{openModal:()=>l.value=!0,modal:v(()=>I(Ae,{modelValue:l.value,"onUpdate:modelValue":n=>l.value=n},{header:()=>I("h2",null,[d(i.name)]),body:d(i.display)}))}}Xe.on("update",function(l){Object.values(he).forEach(n=>{n==null||n.emit("preUpdate",l)}),Object.values(he).forEach(n=>{n==null||n.emit("update",l)}),Object.values(he).forEach(n=>{n==null||n.emit("postUpdate",l)})});var xa=Object.freeze(Object.defineProperty({__proto__:null,RegisterNodeInjectionKey:XI,UnregisterNodeInjectionKey:zI,NodesInjectionKey:GI,BoundsInjectionKey:xI,layers:he,persistentRefs:wn,addingLayers:Ml,createLayer:ml,addLayer:zs,getLayer:Xa,removeLayer:Gs,reloadLayer:za,setupLayerModal:Ga},Symbol.toStringTag,{value:"Module"}));function xs(i={}){return Object.assign({id:`${fe.id}-0`,name:"Default Save",tabs:fe.initialTabs.slice(),time:Date.now(),autosave:!0,offlineProd:!0,offlineTime:0,timePlayed:0,keepGoing:!1,modID:fe.id,modVersion:fe.versionNumber,layers:{}},i)}function yl(i){const l=en.compressToUTF16(fs(i!=null?i:Ti[$e]));return localStorage.setItem((i!=null?i:Ti[$e]).id,l),l}async function ga(){Ra();try{let i=localStorage.getItem(Te.active);if(i==null){await Zn(On());return}if(i[0]!=="{")if(i[0]==="e")i=decodeURIComponent(escape(atob(i)));else if(i[0]==="\u1BE1")i=en.decompressFromUTF16(i);else throw"Unable to determine save encoding";const l=JSON.parse(i);if(l.modID!==fe.id){await Zn(On());return}l.id=Te.active,await Zn(l)}catch(i){console.error(`Failed to load save. Falling back to new save.
|
||
|
`,i),await Zn(On())}}function On(){const i=An(),l=xs({id:i});return yl(l),Te.saves.push(i),l}function An(){let i,l=0;do i=`${fe.id}-${l++}`;while(localStorage.getItem(i)!=null);return i}const gI=di(!1);async function Zn(i){console.info("Loading save",i),gI.value=!0;const{layers:l,removeLayer:n,addLayer:s}=await Fn(()=>Promise.resolve().then(function(){return xa}),void 0),{fixOldSave:t,getInitialLayers:o}=await Fn(()=>Promise.resolve().then(function(){return bo}),void 0);for(const c in l){const Z=l[c];Z&&n(Z)}o(i).forEach(c=>s(c,i)),i=xs(i),i.offlineProd&&i.time!=null&&i.time&&i.devSpeed!==0&&(i.offlineTime==null&&(i.offlineTime=0),i.offlineTime+=Math.min(i.offlineTime+(Date.now()-i.time)/1e3,fe.offlineLimit*3600)),i.time=Date.now(),i.modVersion!==fe.versionNumber&&(t(i.modVersion,i),i.modVersion=fe.versionNumber),Object.assign(Ti,i),Te.active=Ti.id,Xe.emit("onLoad")}setInterval(()=>{Ti.autosave&&he.main.days[he.main.day.value-1].opened.value&&yl()},1e3);window.onbeforeunload=()=>{Ti.autosave&&(he.main.days[he.main.day.value-1].opened.value||!1)&&yl()};window.save=yl;const Fa=window.hardReset=async()=>{await Zn(On())},Sn=un({active:"",saves:[],showTPS:!0,theme:YI.Nordic,unthrottled:!1,usingLog:!1,alignUnits:!1});zl(Sn,i=>{const l=en.compressToUTF16(JSON.stringify(i));localStorage.setItem(fe.id,l)},{deep:!0});var Te=window.settings=Sn;window.hardResetSettings=()=>{const i={active:"",saves:[],showTPS:!0,theme:YI.Nordic,usingLog:!1,alignUnits:!1};Xe.emit("loadSettings",i),Object.assign(Sn,i),Fa()};function Ra(){try{let i=localStorage.getItem(fe.id);if(i!=null&&i!==""){if(i[0]!=="{")if(i[0]==="e")i=decodeURIComponent(escape(atob(i)));else if(i[0]==="\u1BE1")i=en.decompressFromUTF16(i);else{console.warn("Unable to determine settings encoding",i);return}const l=JSON.parse(i);typeof l=="object"&&Object.assign(Sn,l)}Xe.emit("loadSettings",Sn)}catch{}}const gs=un([]);function ka(i){gs.push(i)}const Fs=un([]);function Sa(i){Fs.push(i)}const Ta=un([]),La={class:"table"},Vl=Di({__name:"Column",setup(i){const l=u(()=>Vn[Te.theme].mergeAdjacent);return(n,s)=>(N(),S("div",La,[Y("div",{class:Fe(["col",{mergeAdjacent:d(l)}])},[Yl(n.$slots,"default")],2)]))}}),Qa={class:"table"},rn=Di({__name:"Row",setup(i){const l=u(()=>Vn[Te.theme].mergeAdjacent);return(n,s)=>(N(),S("div",Qa,[Y("div",{class:Fe(["row",{mergeAdjacent:d(l)}])},[Yl(n.$slots,"default")],2)]))}});function FI(i){return typeof i=="function"||Object.prototype.toString.call(i)==="[object Object]"&&!Zt(i)}function We(i,l="span"){return typeof i=="function"?Di({render:i}):typeof i=="string"?i.length>0?(i=i.trim(),i.charAt(0)!=="<"&&(i=`<${l}>${i}</${l}>`),Di({template:i})):Di({render:()=>({})}):i}function Ni(i){if(wl(i))return typeof i=="function"?i():We(i);const l=i[xl];return I(l,i[Tl](),null)}function Ce(...i){let l;return I(rn,null,FI(l=i.map(Ni))?l:{default:()=>[l]})}function vl(...i){let l;return I(Vl,null,FI(l=i.map(Ni))?l:{default:()=>[l]})}function fl(...i){return I("div",{class:"table-grid"},[i.map(l=>I("div",{class:{["row-grid"]:!0,mergeAdjacent:Vn[Te.theme].mergeAdjacent}},[l.map(Ni)]))])}function Xl(i){if(wl(i))return typeof i=="function"?i():typeof i=="string"?I(w,null,[i]):I(i,null,null);const l=i[xl];return I(l,i[Tl](),null)}function Ha(...i){let l;return I(Vl,null,FI(l=i.map(Xl))?l:{default:()=>[l]})}function wl(i){return typeof i=="string"?!0:typeof i=="object"?i==null?!1:"render"in i||"component"in i:typeof i=="function"&&i[Rn]===!0}function Rs(i,l,n){const s=di(null),t=di(void 0);function o(b){s.value||(s.value=setInterval(Z,250)),t.value=b,n&&(n.value=!0)}function c(){s.value&&(clearInterval(s.value),s.value=null),n&&(n.value=!1)}function Z(){l&&l.value?l.value():i&&i.value&&i.value(t.value)}return us(c),{start:o,stop:c,handleHolding:Z}}function Ua(i,l){const n=u(()=>i.filter(s=>d(s.visibility)===Ne.Visible&&l(s)));return{firstFeature:u(()=>n.value[0]),collapsedContent:v(()=>vl(...n.value.slice(1))),hasCollapsedContent:u(()=>n.value.length>1)}}function Nn(i,l="div"){const n=Wl();return nl(()=>{n.value=We(_e(i),l)}),n}function El(i,l="div"){const n=Wl(null);retu
|
||
|
x${mi(d(t.christmas1))} to wood production
|
||
|
`)}]}),rainbow:n({name:"Rainbow Wrapping Paper",id:"rainbow",ratio:{red:{base:Ll,exponent:Hl+.2},green:{base:Ql,exponent:Ul+.1},blue:{base:Ll,exponent:Hl+.2},yellow:{base:Ll,exponent:Hl+.2},purple:{base:Ql,exponent:Ul+.1},orange:{base:Ql,exponent:Ul+.1}},background:"linear-gradient(135deg, rgba(255,0,0,1) 0%, rgba(255,0,0,1) 2%, rgba(255,155,0,1) 14%, rgba(255,155,0,1) 18%, rgba(255,254,0,1) 31%, rgba(255,254,0,1) 35%, rgba(100,244,61,1) 48%, rgba(100,244,61,1) 52%, rgba(70,218,234,1) 64%, rgba(70,218,234,1) 68%, rgba(205,0,210,1) 81%, rgba(205,0,210,1) 85%, rgba(255,0,0,1) 98%, rgba(255,0,0,1) 100%)",listedBoosts:[{desc:u(()=>`
|
||
|
/${mi(d(t.rainbow1))} to coal buyable cost
|
||
|
`)}]}),jazzy:n({name:"Jazzy Wrapping Paper",id:"jazzy",ratio:{purple:{base:Ql*3,exponent:Ul},orange:{base:Ql*3,exponent:Ul}},background:"linear-gradient(90deg, rgba(255,177,0,1) 10.8%, rgba(189,69,255,1) 11.1%, rgba(189,69,255,1) 21.9%, rgba(255,177,0,1) 22.2%, rgba(255,177,0,1) 33.0%, rgba(189,69,255,1) 33.3%, rgba(189,69,255,1) 44.1%, rgba(255,177,0,1) 44.4%, rgba(255,177,0,1) 55.2%, rgba(189,69,255,1) 55.5%, rgba(189,69,255,1) 66.3%, rgba(255,177,0,1) 66.6%, rgba(255,177,0,1) 77.4%, rgba(189,69,255,1) 77.7%, rgba(189,69,255,1) 88.5%, rgba(255,177,0,1) 88.8%)",listedBoosts:[{desc:u(()=>`
|
||
|
x${mi(d(t.jazzy1))} to auto-smelting speed
|
||
|
`)}]}),sunshine:n({name:"Sunshine Wrapping Paper",id:"sunshine",ratio:{red:{base:Ll*2,exponent:Hl+.1},yellow:{base:Ll*2,exponent:Hl+.1},orange:{base:Ql*2,exponent:Ul+.05}},background:"radial-gradient(circle, rgba(238,250,0,1) 16%, rgba(250,157,0,1) 50%, rgba(255,76,76,1) 83%)",listedBoosts:[{desc:u(()=>`
|
||
|
x${mi(d(t.sunshine1))} to paper production
|
||
|
`)}]}),ocean:n({name:"Ocean Wrapping Paper",id:"ocean",ratio:{blue:{base:Ll*2,exponent:Hl+.1},green:{base:Ql*2,exponent:Ul+.05},purple:{base:Ql*2,exponent:Ul+.05}},background:"linear-gradient(20deg, rgba(0,183,250,0.6) 8%, rgba(0,223,62,0.6) 12%, rgba(0,183,250,0.6) 17%, rgba(0,183,250,0.6) 27%, rgba(124,109,230,0.6) 38%, rgba(0,183,250,0.6) 46%, rgba(0,183,250,0.6) 50%, rgba(0,223,62,0.6) 53%, rgba(0,183,250,0.6) 60%, rgba(124,109,230,0.6) 67%, rgba(0,183,250,0.6) 73%, rgba(0,183,250,0.6) 84%, rgba(0,223,62,0.6) 88%, rgba(0,183,250,0.6) 91%), linear-gradient(340deg, rgba(0,183,250,0.6) 8%, rgba(0,223,62,0.6) 12%, rgba(0,183,250,0.6) 17%, rgba(0,183,250,0.6) 27%, rgba(124,109,230,0.6) 38%, rgba(0,183,250,0.6) 46%, rgba(0,183,250,0.6) 50%, rgba(0,223,62,0.6) 53%, rgba(0,183,250,0.6) 60%, rgba(124,109,230,0.6) 67%, rgba(0,183,250,0.6) 73%, rgba(0,183,250,0.6) 84%, rgba(0,223,62,0.6) 88%, rgba(0,183,250,0.6) 91%)",listedBoosts:[{desc:u(()=>`
|
||
|
/${mi(d(t.ocean1))} to box buyable cost
|
||
|
`)}]}),beach:n({name:"Beach Wrapping Paper",id:"beach",ratio:{yellow:{base:Ll*3,exponent:Hl},blue:{base:Ll*3,exponent:Hl}},background:"radial-gradient(circle at 80% 10%, rgba(255,255,76,1) 8%, rgba(0,0,0,0) 21%), linear-gradient(180deg, rgba(0,255,246,1) 60%, rgba(0,255,246,0) 61%), linear-gradient(215deg, rgba(0,93,255,0) 0%, rgba(0,93,255,0) 66%, rgba(255,255,76,1) 68%), linear-gradient(180deg, rgba(0,0,0,0) 68%, rgba(0,93,255,1) 70%), linear-gradient(205deg, rgba(0,255,246,1) 0%, rgba(0,255,246,1) 100%)",listedBoosts:[{desc:u(()=>`
|
||
|
/${mi(d(t.beach1))} to workshop cost
|
||
|
`)}]})},t={christmas1:u(()=>p.isMastery.value?1:e.add(s.christmas.buyable.amount.value,1)),rainbow1:u(()=>p.isMastery.value?1:e.pow(2,s.rainbow.buyable.amount.value)),jazzy1:u(()=>p.isMastery.value?1:e.add(s.jazzy.buyable.amount.value,1)),sunshine1:u(()=>p.isMastery.value?1:e.add(s.sunshine.buyable.amount.value,1)),ocean1:u(()=>p.isMastery.value?1:e.pow(1.5,s.ocean.buyable.amount.value)),beach1:u(()=>p.isMastery.value?1:e.add(s.beach.buyable.amount.value,1).log10().add(1).pow(be.milestones.milestone3.earned.value?1.6:1))},o=ze(u(()=>Object.values(s).map(C=>C.buyable.amount.value).reduce(e.add,0)),"Total Wrapping Paper"),c=g(()=>({display:{requirement:"80 Total Wrapping Paper",effectDisplay:"Unlock a new elf to help with dyes"},shouldEarn:()=>e.gte(o.value,80),onComplete(){p.days[3].recentlyUpdated.value=!0}})),Z=u(()=>e.add(p.masteredDays.value,1).times(20).add(140).ceil()),b=tl(()=>({display:()=>{var C;return{title:`${p.isMastery.value?"Stop Decorating":"Begin Decorating"} ${(C=Object.values(he).find(W=>{var h;return d(W.mastered)===!1&&!["Elves","Management"].includes(d((h=W==null?void 0:W.name)!=null?h:""))}))==null?void 0:C.name}`,description:v(()=>I(w,null,[I("br",null,null),a("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."),I("br",null,null),a("You can safely start and stop decorating without losing progress"),p.isMastery.value?null:I(w,null,[I("br",null,null),I("br",null,null),a("Requires "),ri(Z.value),a(" total wrapping paper")])]))}},visibility:()=>V(p.day.value===pn),canClick(){return p.isMastery.value||e.gte(o.value,Z.value)},onClick(){var W,h;if(!d(b.canClick))return;p.toggleMastery();const C=(h=(W=p.currentlyMastering.value)==null?void 0:W.id)!=null?h:"trees";Ti.tabs.includes(C)||p.openDay(C),C==="paper"&&(Xi.elves.cuttersElf.bought.value=!0,Xi.elves.plantersElf.bought.value=!0,Xi.elves.expandersElf.bought.value=!0,Xi.elves.heatedCuttersElf.bought.value=!0,Xi.elves.heatedPlantersElf.bought.value=!0,Xi.elves.fertilizerElf.bought.value=!0)},style:{width:"300px",minHeight:"160px"}})),r=dl(()=>({direction:hi.Right,width:600,height:25,fillStyle:"animation: 15s wrapping-paper-bar linear infinite",textStyle:"color: var(--feature-foreground)",progress:()=>p.day.value===pn?e.div(p.masteredDays.value,6):1,display:v(()=>p.day.value===pn?I(w,null,[p.masteredDays.value,a("/6 days decorated")]):"")}));return nl(()=>{p.day.value===pn&&e.gte(p.masteredDays.value,6)&&p.showLoreModal.value===!1&&p.completeDay()}),{name:i,day:pn,color:l,display:v(()=>I("div",{style:"width: 620px"},[I("div",null,[p.day.value===pn?"Decorate 6 previous days to complete the day":`${i} Complete!`]),Ni(r),I(Vi,null,null),I(Ee,{resource:o},null),Ce(s.christmas.display,s.rainbow.display,s.jazzy.display),Ce(s.christmas.buyable,s.rainbow.buyable,s.jazzy.buyable),I(Vi,null,null),Ce(s.sunshine.display,s.ocean.display,s.beach.display),Ce(s.sunshine.buyable,s.ocean.buyable,s.beach.buyable),I(Vi,null,null),Ni(b),I(Vi,null,null),Ni(c)])),wrappingPaper:s,boosts:t,unlockDyeElfMilestone:c,minWidth:700}}),td="workshop",Wn=2,re=ml(td,function(){const i="Workshop",l="#D66B02",n="#D66B02",s=ze(0,"foundation progress"),t=xm(()=>({scaling:gm(es(es(RI(250,1.5),5423,1/1e10),1e20,3e8),u(()=>be.row1Upgrades[2].bought.value?1200:O.elfTraining.expandersElfTraining.milestones[2].earned.value?1e3:100)),baseResource:Ri.logs,gainResource:B(s),roundUpCost:!0,spend(E,zi){oi.value||(Ri.logs.value=e.sub(Ri.logs.value,zi))},costModifier:vi(()=>[y(()=>({multiplier:Ke.boosts.beach1,description:"Beach Wrapping Paper",enabled:u(()=>e.gt(Ke.boosts.beach1.value,1))})),pl(()=>({exponent:1/.99,description:"Holly Level 5",enabled:O.elfTraining.cutterElfTraining.milestones[4].earned})),pl(()=>({exponent:.1,description:"Scaling Jump at 1000%",enabled:u(()=>e.gte(s.value,1e3))})),y(()=>({multiplier:6969,description:"Scaling Jump at 1000%",enabled:u(()=>e.gte(s.value,1e3))}))])})),o=tl(()=>({display:v((
|
||
|
<br/>
|
||
|
<br/>
|
||
|
Cost: 50 ${n.displayName}<br/>${le(1e11)} ${ti.coal.displayName}`}})),_=q(()=>({resource:B(n),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:()=>V(Mi.depthMilestones[4].earned.value)})),F=_i(()=>({resource:B(n),cost(){let ni=new e(this.amount.value);ni=e.pow(.95,k.books.metalBook.totalAmount.value).times(ni);let $=e.pow(1.15,ni).times(10);return O.elfTraining.metalElfTraining.milestones[4].earned.value&&($=e.div($,e.add(Mi.depth.value,1).sqrt())),O.elfTraining.metalElfTraining.milestones[3].earned.value&&($=e.div($,10)),$},inverseCost(ni){O.elfTraining.metalElfTraining.milestones[3].earned.value&&(ni=e.mul(ni,10)),O.elfTraining.metalElfTraining.milestones[4].earned.value&&(ni=e.mul(ni,e.add(Mi.depth.value,1).sqrt()));let $=e.div(ni,10).log(1.15);return $=$.div(e.pow(.95,k.books.metalBook.totalAmount.value)),e.isNaN($)?e.dZero:$.floor().max(0)},display:{title:"Metal Drill",description:"An automated machine to help you mine more ore, faster",effectDisplay:v(()=>I(w,null,[a("Mine 2.5x faster. Increase ore mining amount by")," ",ie(F.amount.value),a(" ore per operation")]))},visibility:()=>V(e.gte(F.amount.value,1)||e.div(o.value,r.value).plus(s.value).gte(10)),style:{width:"200px"}})),ii=_i(()=>({resource:B(n),cost(){let ni=new e(this.amount.value);ni=e.pow(.95,k.books.metalBook.totalAmount.value).times(ni);let $=e.pow(1.15,e.times(ni,10)).times(10);return O.elfTraining.metalElfTraining.milestones[4].earned.value&&($=e.div($,e.add(Mi.depth.value,1).sqrt())),O.elfTraining.metalElfTraining.milestones[3].earned.value&&($=e.div($,10)),$},inverseCost(ni){O.elfTraining.metalElfTraining.milestones[3].earned.value&&(ni=e.mul(ni,10)),O.elfTraining.metalElfTraining.milestones[4].earned.value&&(ni=e.mul(ni,e.add(Mi.depth.value,1).sqrt()));let $=e.div(ni,10).log(1.15).div(10);return $=$.div(e.pow(.95,k.books.metalBook.totalAmount.value)),e.isNaN($)?e.dZero:$.floor().max(0)},display:{title:"Industrial Crucible",description:"A giant automated crucible furnace, letting you smelt ore faster",effectDisplay:v(()=>I(w,null,[a("Automatically smelts")," ",ie(e.times(ii.amount.value,10)),a(" ore per second")]))},visibility:()=>V(e.gte(ii.amount.value,1)||e.gte(F.amount.value,4)||e.gte(o.value,50)),style:{width:"200px"}})),Ci=m(!0),$i=_i(()=>({resource:ti.coal,cost(){let ni=new e(this.amount.value);ni=e.pow(.95,k.books.metalBook.totalAmount.value).times(ni);let $=e.pow(10,ni).times(1e12);return O.elfTraining.metalElfTraining.milestones[4].earned.value&&($=e.div($,e.add(Mi.depth.value,1).sqrt())),O.elfTraining.metalElfTraining.milestones[3].earned.value&&($=e.div($,10)),$},inverseCost(ni){O.elfTraining.metalElfTraining.milestones[3].earned.value&&(ni=e.mul(ni,10)),O.elfTraining.metalElfTraining.milestones[4].earned.value&&(ni=e.mul(ni,e.add(Mi.depth.value,1).sqrt()));let $=e.div(ni,1e12).log(10);return $=$.div(e.pow(.95,k.books.metalBook.totalAmount.value)),e.isNaN($)?e.dZero:$.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:v(()=>I(w,null,[a("Gain "),ie(e.times(we.value,100)),a("% more metal per ore")]))},visibility:()=>V(e.gte($i.amount.value,1)||yi.bought.value),style:{width:"200px"}})),we=u(()=>e.times($i.amount.value,.25));Xe.on("update",ni=>{var ue;if(e.lt(p.day.value,VI)||p.isMastery.value&&!xe.value&&((ue=p.currentlyMastering.value)==null?void 0:ue.name)!==i)return;const $=e.sub(e.times(Yi.value,z.value),e.sub(Z.value,c.value).max(0)),te=e.sub(W.value,e.sub(c.value,Z.value).max(0));c.value=e.isNaN($)?0:$,Z.value=e.isNaN(te)?0:te,L.value=e.times(ni,Yi.value).plus(L.value);const Si=L.value.trunc();L.value=L.value.minus(Si),t.value=e.add(t.value,e.times(Si,z.value)),Ci.value&&x(e.min(f.value,e.times(W.value,ni)),J.value)});const[Qi,Ei]=bl(()=>[{title:"Auto Smelt Speed",modifier:C,base:0,unit:"/s",visible(){return e.gt(ii.amount.value,0)||fi.value}},{title:"Auto Smelt Multiplier",modifier:h,base:1
|
||
|
margin: 10px 0;"/>${E}<hr style="
|
||
|
margin: 10px 0;"/>${zi}`:`${oi}<hr style="
|
||
|
margin: 10px 0;"/>${E}`:oi,n.value=!0},onOpenLayer(){if(Fi.value=!1,window.matchMedia("(min-width: 1468px)").matches)if(Ti.tabs.includes(U!=null?U:"trees")){const F=Ti.tabs.lastIndexOf(U!=null?U:"trees");Ti.tabs.splice(F,1)}else Ti.tabs.push(U!=null?U:"trees"),p.minimized.value=!0;else Ti.tabs.splice(1,1/0,U!=null?U:"trees");he[U!=null?U:"trees"].minimized.value=!1},onUnlockLayer(){U!=null&&(Gi.value=!0,setTimeout(()=>{var F,ii;s.value=-1,t.value=d((ii=(F=he[U!=null?U:"trees"])==null?void 0:F.name)!=null?ii:""),o.value=oi,Ti.autoPause&&(Ti.devSpeed=null),n.value=!0},1e3))}}}}})}const X=[J(()=>({day:1,shouldNotify:!1,layer:"trees",symbol:it,story:"Oh no! Santa forgot about Christmas and it's only 25 days away! He's asked for your help due to your history getting large quantities of things in short amounts of time. Unfortunately you're really starting from scratch here - let's start with getting wood, which you'll need for everything from building workshops to wrapping paper to many of the toys themselves!",completedStory:"Santa looks at all the wood you've gathered and tells you you've done well! He says you should take the rest of the day off so you're refreshed for tomorrow's work. Good Job!",masteredStory:"As you repeat the basic actions again, you feel like you've learned something that you didn't know the first time around. Santa is impressed at your new knowledge and inspires you to attempt this with more jobs. Great Job!"})),J(()=>({day:2,shouldNotify:!1,layer:"workshop",symbol:Ks,story:"Santa looked over your tree farm and was impressed with how much you could accomplish in just one day. Today's goal is to get a workshop built up for the elves to work in - and apparently, they need quite a lot of space to work!",completedStory:"The workshop complete, Santa once again dismisses you for the day. With a strong foundation, this workshop should suffice for supporting future work toward this impossible mission. Good Job!",masteredStory:"As you attempt to build the workshop again with your newfound experiences and resources, you realize you could have built the workshop a little bit better. As you keep building and building, you realize that you could've built it without wasting any resources. Great Job!"})),J(()=>({day:3,shouldNotify:!1,layer:"coal",symbol:Ds,story:"Santa tells you that unfortunately there are quite a few naughty children out there this year, and he's going to need you to gather as much coal as you can for him to give out.",completedStory:"Santa looks at all the coal you've gathered and tells you you've done well! He says you should take the rest of the day off so you're refreshed for tomorrow's work. Good Job!",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's a lot more efficent than your old buildings designs. You thank the elf, and resume your work. Great Job!"})),J(()=>({day:4,shouldNotify:!1,layer:"elves",symbol:Es,story:"Alright, it seems you finally have enough things set up to start bringing in the elves! Unfortunately, it seems they'll need to be retrained on how to help, since they've stopped practicing for 11 months!",completedStory:"The workshop now hums with the bustling elves working on everything. They can take it from here - you deserve a break after such a long day! Good Job!",masteredStory:"This place feels a lot more better, with less naughty elves who are more excited than ever before to do something! As you collapse into a chair thinking of all of your hard work, Santa comes by yet again to congratulate you on your hard work. You feel a pang of jealousy as Santa is taking all the credit for your work, but you decide that saving Christmas is worth it. Great Job!"})),J(()=>({day:5,shouldNotify:!1,layer:"paper",symbol:qs,story:"With the elves trained, we're almost ready to start working on these presents! Just a couple more pre-reqs first, starting with
|
||
|
`,"./../../saves/Day 08 Complete.txt":"eyJpZCI6ImFkdmVudC1pbmNyZW1lbnRhbC0yIiwiZGV2U3BlZWQiOjAsIm5hbWUiOiJEZWZhdWx0IFNhdmUiLCJ0YWJzIjpbIm1haW4iLCJjbG90aCJdLCJ0aW1lIjoxNjcwOTY2MDM5MjIwLCJhdXRvc2F2ZSI6dHJ1ZSwib2ZmbGluZVByb2QiOnRydWUsIm9mZmxpbmVUaW1lIjowLCJ0aW1lUGxheWVkIjoxNDQ4MS43NzkwMDAwMDAxMzMsImtlZXBHb2luZyI6ZmFsc2UsIm1vZElEIjoiYWR2ZW50LWluY3JlbWVudGFsIiwibW9kVmVyc2lvbiI6IjAuNSIsImxheWVycyI6eyJtYWluIjp7Im1pbmltaXplZCI6ZmFsc2UsImRheXMiOnsiMCI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMyI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI0Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjUiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiNiI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI3Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjgiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjkiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEwIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTIiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEzIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTUiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE2Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTgiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE5Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMjEiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIyIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfX0sImRheSI6OX0sInRyZWVzIjp7Im1pbmltaXplZCI6ZmFsc2UsImxvZ3MiOiI0ODgzNDc2OTk4ODg1ODc3IiwidG90YWxMb2dzIjoiOS41NjEyMjI0Njc5Nzk0NTNlMTUiLCJzYXBsaW5ncyI6IjI0OTIzODIuNzIiLCJyb3cxVXBncmFkZXMiOnsiMCI6eyJib3VnaHQiOnRydWV9LCIxIjp7ImJvdWdodCI6dHJ1ZX0sIjIiOnsiYm91Z2h0Ijp0cnVlfSwiMyI6eyJib3VnaHQiOnRydWV9LCI0Ijp7ImJvdWdodCI6dHJ1ZX19LCJyb3cyVXBncmFkZXMiOnsiMCI6eyJib3VnaHQiOnRydWV9LCIxIjp7ImJvdWdodCI6dHJ1ZX0sIjIiOnsiYm91Z2h0Ijp0cnVlfSwiMyI6eyJib3VnaHQiOnRydWV9LCI0Ijp7ImJvdWdodCI6dHJ1ZX19LCJyb3cxQnV5YWJsZXMiOnsiMCI6eyJhbW91bnQiOiI4ODI2In0sIjEiOnsiYW1vdW50IjoiODgyNiJ9LCIyIjp7ImFtb3VudCI6IjI4ODA4In19LCJtYW51YWxDdXRQcm9ncmVzcyI6IjAuMDAwOTc2NTYyNDk5OTk5OTk4OCIsIm1hbnVhbFBsYW50UHJvZ3Jlc3MiOiIwLjAwMDk3NjU2MjQ5OTk5OTk5ODgiLCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sIndvcmtzaG9wIjp7Im1pbmltaXplZCI6ZmFsc2UsImZvdW5kYXRpb25Qcm9ncmVzcyI6MTAwLCJtaWxlc3RvbmVzIjp7ImxvZ0dhaW5NaWxlc3RvbmUxIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9DdXRNaWxlc3RvbmUxIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9QbGFudE1pbGVzdG9uZTEiOnsiZWFybmVkIjp0cnVlfSwiYXV0b0N1dE1pbGVzdG9uZTIiOnsiZWFybmVkIjp0cnVlfSwiYXV0b1BsYW50TWlsZXN0b25lMiI6eyJlYXJuZWQiOnRydWV9LCJsb2dHYWluTWlsZXN0b25lMiI6eyJlYXJuZWQiOnRydWV9LCJtb3JlUGxhbnRzTWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJsb2dHYWluTWlsZXN0b25lMyI6eyJlYXJuZWQiOnRydWV9LCJleHRyYUV4cGFuc2lvbk1pbGVzdG9uZTEiOnsiZWFybmVkIjpmYWxzZX0sImV4dHJhRXhwYW5zaW9uTWlsZXN0b25lMiI6eyJlYXJuZWQiOmZhbHNlfSwiZXh0cmFFeHBhbnNpb25NaWxlc3RvbmUzIjp7ImVhcm5lZCI6ZmFsc2V9LCJleHRyYUV4cGFuc2lvbk1pbGVzdG9uZTQiOnsiZWFybmVkIjpmYWxzZX0sImV4dHJhRXhwYW5zaW9uTWlsZXN0b25lNSI6eyJlYXJuZWQiOmZhbHNlfX0sImNvbGxhcHNlTWlsZXN0b25lcyI6dHJ1ZX0sImNvYWwiOnsibWluaW1pemVkIjpmYWxzZSwiY29hbCI6IjkuOTk3NzQ2MDU0MTkwNjMyZTE2IiwidG90YWxDb2FsIjoiMS4wMTA5ODA0NjcwMjIxMDY1ZTE3IiwiYXNoIjoiMjQyMjgyNzQ3NjAuMTEzOTk1IiwiYWN0aXZlRmlyZXMiOiIwLjg2NzA0MzA3MDcwNjE5NzEiLCJidWlsZEZpcmUiOnsiYW1vdW50IjoiMC44NjcwNDMwNzA3MDYxOTcxIn0sImFjdGl2ZUJvbmZpcmVzIjoiMTQ4MiIsImJ1aWxkQm9uZmlyZSI6eyJhbW91bnQiOiIxNDgyIn0sImFjdGl2ZUtpbG5zIjoiMTc4IiwiYnVpbGRLaWxuIjp7ImFtb3VudCI6IjE3OCJ9LCJhY3RpdmVEcmlsbHMiOiIzNyIsImJ1aWxkRHJpbGwiOnsiYW1vdW50IjoiMzcifSwid2FybWVyQ3V0dGVycyI6eyJib3VnaHQiOnRydWV9LCJ3YXJtZXJQbGFudGVycyI6eyJib3VnaHQiOnRydWV9LCJiYXNpY0ZlcnRpbGl6ZXIiOnsiYm91Z2h0Ijp0cnVlfSwidW5sb2NrQm9uZmlyZSI6eyJib3VnaHQiOnRydWV9LCJk
|
||
|
`,"./../../saves/Day 11 Complete.txt":"eyJpZCI6ImFkdmVudC1pbmNyZW1lbnRhbC0xIiwiZGV2U3BlZWQiOjAsIm5hbWUiOiJEZWZhdWx0IFNhdmUiLCJ0YWJzIjpbIm1haW4iLCJjb2FsIiwibWV0YWwiLCJvaWwiLCJkeWVzIiwiZWx2ZXMiLCJ0cmVlcyIsImJveGVzIiwicGFwZXIiXSwidGltZSI6MTY3MDg4ODc1Mzk5MywiYXV0b3NhdmUiOnRydWUsIm9mZmxpbmVQcm9kIjpmYWxzZSwib2ZmbGluZVRpbWUiOm51bGwsInRpbWVQbGF5ZWQiOjYzMzg4LjE2NjUxOTM0MjE4LCJrZWVwR29pbmciOmZhbHNlLCJtb2RJRCI6ImFkdmVudC1pbmNyZW1lbnRhbCIsIm1vZFZlcnNpb24iOiIwLjAiLCJsYXllcnMiOnsibWFpbiI6eyJtaW5pbWl6ZWQiOnRydWUsImRheXMiOnsiMCI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMyI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI0Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjUiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiNiI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI3Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjgiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiOSI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMCI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTIiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEzIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTUiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE2Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTgiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE5Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMjEiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIyIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfX0sImRheSI6MTJ9LCJ0cmVlcyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJsb2dzIjoiMS41NDM4MDY5MDQxMjI1ODA2ZTE5IiwidG90YWxMb2dzIjoiMS44MDIxODcyNjAwNzAxOThlMjIiLCJ0cmVlcyI6IjEwIiwic2FwbGluZ3MiOiIwIiwicm93MVVwZ3JhZGVzIjp7IjAiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJib3VnaHQiOnRydWV9LCIxIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfSwiMiI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImJvdWdodCI6dHJ1ZX0sIjMiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJib3VnaHQiOnRydWV9LCI0Ijp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfX0sInJvdzJVcGdyYWRlcyI6eyIwIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfSwiMSI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImJvdWdodCI6dHJ1ZX0sIjIiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJib3VnaHQiOnRydWV9LCIzIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfSwiNCI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImJvdWdodCI6dHJ1ZX19LCJyb3cxQnV5YWJsZXMiOnsiMCI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImFtb3VudCI6IjUyNzk3In0sIjEiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJhbW91bnQiOiI1Mjc5NyJ9LCIyIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYW1vdW50IjoiMzQ3MjMzIn19LCJtYW51YWxDdXRQcm9ncmVzcyI6IjAuMDAwMTIyMDcwMzEyNTAwMDAwMyIsIm1hbnVhbFBsYW50UHJvZ3Jlc3MiOiIwLjAwMDEyMjA3MDMxMjUwMDAwMDMiLCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sIndvcmtzaG9wIjp7Im1pbmltaXplZCI6ZmFsc2UsImZvdW5kYXRpb25Qcm9ncmVzcyI6MTAwLCJmb3VuZGF0aW9uQ29udmVyc2lvbiI6eyJiYXNlUmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJnYWluUmVzb3VyY2UiOiIxMDAifSwibWlsZXN0b25lcyI6eyJsb2dHYWluTWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJhdXRvQ3V0TWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJhdXRvUGxhbnRNaWxlc3RvbmUxIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9DdXRNaWxlc3RvbmUyIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9QbGFudE1pbGVzdG9uZTIiOnsiZWFybmVkIjp0cnVlfSwibG9nR2Fpbk1pbGVzdG9uZTIiOnsiZWFybmVkIjp0cnVlfSwibW9yZVBsYW50c01pbGVzdG9uZTEiOnsiZWFybmVkIjp0cnVlfSwibG9nR2Fpbk1pbGVzdG9uZTMiOnsiZWFybmVkIjp0cnVlfX0sImNvbGxhcHNlTWlsZXN0b25lcyI6dHJ1ZX0sImNvYWwiOnsibWluaW1pemVkIjpmYWxzZSwiY29hbCI6IjEuMTk4OTU3MzM0NjIxNDA0NmUzMiIsInRvdGFsQ29hbCI6IjEuMjUxNTEwMDAxODAxODUzNWUzMyIsImFzaCI6IjcuMDYxODA2ODk2OTU1NDQ3NWUxNiIsImFjdGl2ZUZpcmVzIjoiMCIsImJ1
|
||
|
`,"./../../saves/Day 17 Complete.txt":`eyJpZCI6ImFkdmVudC1pbmNyZW1lbnRhbC0xIiwiZGV2U3BlZWQiOjAsIm5hbWUiOiJEZWZhdWx0IFNhdmUiLCJ0YWJzIjpbIm1haW4iLCJ3cmFwcGluZ1BhcGVyIiwiZHllcyIsInRveXMiLCJ0cmVlcyIsIndvcmtzaG9wIiwicGxhc3RpYyJdLCJ0aW1lIjoxNjcxNTgyMTY4Mzk2LCJhdXRvc2F2ZSI6dHJ1ZSwib2ZmbGluZVByb2QiOmZhbHNlLCJvZmZsaW5lVGltZSI6bnVsbCwidGltZVBsYXllZCI6ODgzOTQuMjA1NTE5MzQ0NzMsImtlZXBHb2luZyI6ZmFsc2UsIm1vZElEIjoiYWR2ZW50LWluY3JlbWVudGFsIiwibW9kVmVyc2lvbiI6IjAuNSIsImxheWVycyI6eyJtYWluIjp7Im1pbmltaXplZCI6dHJ1ZSwiZGF5cyI6eyIwIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMiI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIzIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjQiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiNSI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI2Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjciOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiOCI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI5Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEwIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjExIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEyIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEzIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE0Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE1Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE2Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE3Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxOCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTkiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIwIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMjIiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIzIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9fSwiZGF5IjoxOCwiaXNNYXN0ZXJ5IjpmYWxzZX0sInRyZWVzIjp7Im1pbmltaXplZCI6ZmFsc2UsImxvZ3MiOiI3LjAyNTE3NTYwOTUyMDg3NTVlNzEiLCJ0b3RhbExvZ3MiOiIxLjI2NTg3ODgxODYxMjgzMTZlNzMiLCJ0cmVlcyI6IjEwIiwic2FwbGluZ3MiOiIzLjA5NDk0ODY3Mzg4MTc2NDZlMjgiLCJyb3cxVXBncmFkZXMiOnsiMCI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImJvdWdodCI6dHJ1ZX0sIjEiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJib3VnaHQiOnRydWV9LCIyIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfSwiMyI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImJvdWdodCI6dHJ1ZX0sIjQiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJib3VnaHQiOnRydWV9fSwicm93MlVwZ3JhZGVzIjp7IjAiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJib3VnaHQiOnRydWV9LCIxIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfSwiMiI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImJvdWdodCI6dHJ1ZX0sIjMiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJib3VnaHQiOnRydWV9LCI0Ijp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfX0sInJvdzFCdXlhYmxlcyI6eyIwIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYW1vdW50IjoiMzU2OTg0NyJ9LCIxIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYW1vdW50IjoiMzY3NDA4OCJ9LCIyIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYW1vdW50IjoiNzcxNTIyOSJ9fSwibWFudWFsQ3V0UHJvZ3Jlc3MiOiIwLjAwMDAwMTkwNzM0ODYzMjgxMjQ5OTQiLCJtYW51YWxQbGFudFByb2dyZXNzIjoiMC4wMDAwMDE5MDczNDg2MzI4MTI0OTk0IiwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sImNyZWF0ZWRTYXBsaW5ncyI6IjMuMzEzNjc3MzM1NDgzNzE5N2UyOCIsIm1hc3RlcnkiOnsibG9ncyI6IjQuODcyMTUyNjU1NTIxNDA4ZTIzIiwidG90YWxMb2dzIjoiNC45MjgzMzg4NDA0MDEzMmUyMyIsInNhcGxpbmdzIjoiNjUzNzUwNTI3NDgzNjguODMiLCJyb3cxVXBncmFkZXMiOnsiMCI6eyJib3VnaHQiOnRydWV9LCIxIjp7ImJvdWdodCI6dHJ1ZX0sIjIiOnsiYm91Z2h0Ijp0cnVlfSwiMyI6eyJib3VnaHQiOnRydWV9LCI0Ijp7ImJvdWdodCI6dHJ1ZX19LCJyb3cyVXBncmFkZXMiOnsiMCI6eyJib3VnaHQiOnRydWV9LCIxIjp7ImJvdWdodCI6dHJ1ZX0sIjIiOnsiYm91Z2h0Ijp0cnVlfSwiMyI6eyJib3VnaHQiOnRydWV9LCI0Ijp7ImJvdWdodCI6dHJ1ZX19LCJyb3cxQnV5YWJsZXMiOnsiMCI6eyJhbW91bnQiOiIxMTMyOTUifSwiMSI6eyJhbW91bnQiOiIxMTMyOTUifSwiMiI6eyJhbW91bnQiOiIzMzU4MjcifX0sImNyZWF0ZWRTYXBsaW5ncyI6IjY1Mzc1ODM1MDc3MjAxLjUxNiJ9LCJtYXN0ZXJlZCI6dHJ1ZX0sIndvcmtzaG9wIjp7Im1pbmltaXplZCI6ZmFsc2UsImZvdW5kYXRpb25Qcm9ncmVz
|
||
|
`,"./../../saves/Day 18 Complete.txt":`eyJpZCI6ImFkdmVudC1pbmNyZW1lbnRhbC0zIiwiZGV2U3BlZWQiOjAsIm5hbWUiOiJEZWZhdWx0IFNhdmUiLCJ0YWJzIjpbIm1haW4iLCJmYWN0b3J5IiwidG95cyIsImNvYWwiLCJtYW5hZ2VtZW50Iiwid3JhcHBpbmdQYXBlciJdLCJ0aW1lIjoxNjcxNzM0NzU2NzExLCJhdXRvc2F2ZSI6dHJ1ZSwib2ZmbGluZVByb2QiOmZhbHNlLCJvZmZsaW5lVGltZSI6bnVsbCwidGltZVBsYXllZCI6OTAwMTMuMTUyNTE5MzY1MDUsImtlZXBHb2luZyI6ZmFsc2UsIm1vZElEIjoiYWR2ZW50LWluY3JlbWVudGFsIiwibW9kVmVyc2lvbiI6IjAuNSIsImxheWVycyI6eyJtYWluIjp7Im1pbmltaXplZCI6ZmFsc2UsImRheXMiOnsiMCI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMyI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI0Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjUiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiNiI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI3Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjgiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiOSI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMCI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMSI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMiI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMyI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNCI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNSI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNiI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNyI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxOCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTkiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIwIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMjIiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIzIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9fSwiZGF5IjoxOSwiaXNNYXN0ZXJ5IjpmYWxzZX0sInRyZWVzIjp7Im1pbmltaXplZCI6ZmFsc2UsImxvZ3MiOiI3LjAzMjM2ODgyMzEyMDcyNmU3MSIsInRvdGFsTG9ncyI6IjEuMzM2MjIyNDg2MDA0OTQ1ZTczIiwidHJlZXMiOiIxMCIsInNhcGxpbmdzIjoiMy4wOTUwMjA4MTQ0OTc1Mzc3ZTI4Iiwicm93MVVwZ3JhZGVzIjp7IjAiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJib3VnaHQiOnRydWV9LCIxIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfSwiMiI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImJvdWdodCI6dHJ1ZX0sIjMiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJib3VnaHQiOnRydWV9LCI0Ijp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfX0sInJvdzJVcGdyYWRlcyI6eyIwIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfSwiMSI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImJvdWdodCI6dHJ1ZX0sIjIiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJib3VnaHQiOnRydWV9LCIzIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfSwiNCI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImJvdWdodCI6dHJ1ZX19LCJyb3cxQnV5YWJsZXMiOnsiMCI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImFtb3VudCI6IjM1Njk4NDcifSwiMSI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImFtb3VudCI6IjM2NzQwODgifSwiMiI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImFtb3VudCI6Ijc3MTUyMjkifX0sIm1hbnVhbEN1dFByb2dyZXNzIjoiMC4wMDAwMDE5MDczNDg2MzI4MTI0OTk0IiwibWFudWFsUGxhbnRQcm9ncmVzcyI6IjAuMDAwMDAxOTA3MzQ4NjMyODEyNDk5NCIsImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9LCJjcmVhdGVkU2FwbGluZ3MiOiIzLjMxMzc0OTQ3NjA5NTY1NjdlMjgiLCJtYXN0ZXJ5Ijp7ImxvZ3MiOiI0Ljg3MjE1MjY1NTUyMTQwOGUyMyIsInRvdGFsTG9ncyI6IjQuOTI4MzM4ODQwNDAxMzJlMjMiLCJzYXBsaW5ncyI6IjY1Mzc1MDUyNzQ4MzY4LjgzIiwicm93MVVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0Ijp0cnVlfSwiMSI6eyJib3VnaHQiOnRydWV9LCIyIjp7ImJvdWdodCI6dHJ1ZX0sIjMiOnsiYm91Z2h0Ijp0cnVlfSwiNCI6eyJib3VnaHQiOnRydWV9fSwicm93MlVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0Ijp0cnVlfSwiMSI6eyJib3VnaHQiOnRydWV9LCIyIjp7ImJvdWdodCI6dHJ1ZX0sIjMiOnsiYm91Z2h0Ijp0cnVlfSwiNCI6eyJib3VnaHQiOnRydWV9fSwicm93MUJ1eWFibGVzIjp7IjAiOnsiYW1vdW50IjoiMTEzMjk1In0sIjEiOnsiYW1vdW50IjoiMTEzMjk1In0sIjIiOnsiYW1vdW50IjoiMzM1ODI3In19LCJjcmVhdGVkU2FwbGluZ3MiOiI2NTM3NTgzNTA3NzIwMS41MTYifSwibWFzdGVyZWQiOnRydWV9LCJ3b3Jrc2hvcCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJmb3VuZGF0aW9uUHJvZ3Jlc3MiOiIxMjAw
|
||
|
`},b=di(Object.keys(Z).reduce((j,z)=>(j.push({label:z.split("/").slice(-1)[0].slice(0,-4),value:Z[z]}),j),[]));const r=tI({});function C(j){if(r[j]==null){let z=localStorage.getItem(j);if(z==null)r[j]={error:"Save doesn't exist in localStorage",id:j};else if(z==="dW5kZWZpbmVk")r[j]={error:"Save is undefined",id:j};else try{if(z[0]!=="{")if(z[0]==="e")z=decodeURIComponent(escape(atob(z)));else if(z[0]==="\u1BE1")z=en.decompressFromUTF16(z);else return console.warn("Unable to determine preset encoding",z),t.value=!0,r[j]={error:"Unable to determine preset encoding",id:j},r[j];r[j]={...JSON.parse(z),id:j}}catch(A){r[j]={error:A,id:j},console.warn(`SavesManager: Failed to load info about save with id ${j}:
|
||
|
${A}
|
||
|
${z}`)}}return r[j]}zl(n,j=>{j&&Object.keys(r).forEach(z=>delete r[z])});const W=u(()=>Te.saves.reduce((j,z)=>(j[z]=C(z),j),{}));function h(j){let z;switch(Ti.id===j?z=fs(Ti[$e]):z=JSON.stringify(W.value[j]),fe.exportEncoding){default:console.warn(`Unknown save encoding: ${fe.exportEncoding}. Defaulting to lz`);case"lz":z=en.compressToUTF16(z);break;case"base64":z=btoa(unescape(encodeURIComponent(z)));break;case"plain":break}const A=document.createElement("textarea");A.value=z,document.body.appendChild(A),A.select(),A.setSelectionRange(0,99999),document.execCommand("copy"),document.body.removeChild(A)}function J(j){Ti.id===j&&yl();const z={...W.value[j],id:An()};yl(z),Te.saves.push(z.id)}function X(j){Te.saves=Te.saves.filter(z=>z!==j),localStorage.removeItem(j),r[j]=void 0}function f(j){W.value[Ti.id].time=Ti.time,yl(),r[Ti.id]=void 0,Zn(W.value[j]),r[j]=void 0}function Q(j){if(c.value=j,bn(()=>{c.value=null}),j[0]!=="{")if(j[0]==="e")j=decodeURIComponent(escape(atob(j)));else if(j[0]==="\u1BE1")j=en.decompressFromUTF16(j);else{console.warn("Unable to determine preset encoding",j);return}const z=JSON.parse(j);z.id=An(),yl(z),Te.saves.push(z.id),f(z.id)}function x(j,z){const A=W.value[j];A!=null&&(A.name=z,Ti.id===j?(Ti.name=z,yl()):(yl(A),r[j]=void 0))}return(j,z)=>(N(),Hi(Ae,{modelValue:n.value,"onUpdate:modelValue":z[4]||(z[4]=A=>n.value=A),ref_key:"modal",ref:s},{header:Pi(()=>[Dc]),body:Pi(({shown:A})=>[A?(N(),Hi(d(wt),{key:0,list:d(Te).saves,handle:".handle",itemKey:Yi=>Yi},{item:Pi(({element:Yi})=>[I(Uc,{save:d(W)[Yi],onOpen:L=>f(Yi),onExport:L=>h(Yi),onEditName:L=>x(Yi,L),onDuplicate:L=>J(Yi),onDelete:L=>X(Yi)},null,8,["save","onOpen","onExport","onEditName","onDuplicate","onDelete"])]),_:1},8,["list","itemKey"])):Ii("",!0)]),footer:Pi(()=>[Y("div",Ec,[I(It,{modelValue:o.value,"onUpdate:modelValue":z[0]||(z[0]=A=>o.value=A),title:"Import Save",placeholder:"Paste your save here!",class:Fe({importingFailed:t.value})},null,8,["modelValue","class"]),Y("div",Ac,[Bc,Y("div",Pc,[Y("button",{class:"button",onClick:z[1]||(z[1]=A=>f(d(On)().id))},"New Game"),Object.keys(d(b)).length>0?(N(),Hi(SI,{key:0,options:d(b),modelValue:c.value,"onUpdate:modelValue":z[2]||(z[2]=A=>Q(A)),closeOnSelect:"",placeholder:"Select preset",class:"presets"},null,8,["options","modelValue"])):Ii("",!0)])]),Y("div",_c,[qc,Y("button",{class:"button modal-default-button",onClick:z[3]||(z[3]=A=>n.value=!1)}," Close ")])])]),_:1},8,["modelValue"]))}});var st=Ve($c,[["__scopeId","data-v-5229ff3f"]]);const Jl=i=>(Al("data-v-8495e562"),i=i(),Bl(),i),Kc=["src","alt"],iZ={key:1,class:"title"},eZ=Jl(()=>Y("div",{style:{"flex-grow":"1",cursor:"unset"}},null,-1)),lZ={class:"discord"},nZ={class:"discord-links"},IZ={key:0},sZ=["href"],tZ=Jl(()=>Y("li",null,[Y("a",{href:"https://discord.gg/WzejVAx",target:"_blank"},"The Paper Pilot Community")],-1)),aZ=Jl(()=>Y("li",null,[Y("a",{href:"https://discord.gg/F3xveHV",target:"_blank"},"The Modding Tree")],-1)),mZ={href:"https://forums.moddingtree.com/",target:"_blank"},dZ=Jl(()=>Y("span",{class:"material-icons"},"forum",-1)),oZ=Jl(()=>Y("span",{class:"material-icons"},"info",-1)),cZ=Jl(()=>Y("span",{class:"material-icons"},"library_books",-1)),ZZ=Jl(()=>Y("span",{class:"material-icons"},"settings",-1)),bZ=Jl(()=>Y("span",{class:"material-icons"},"library_books",-1)),uZ=Jl(()=>Y("span",{class:"material-icons"},"settings",-1)),rZ=Jl(()=>Y("span",{class:"material-icons"},"info",-1)),yZ={href:"https://forums.moddingtree.com/",target:"_blank"},VZ=Jl(()=>Y("span",{class:"material-icons"},"forum",-1)),pZ={class:"discord"},WZ={class:"discord-links"},jZ={key:0},JZ=["href"],hZ=Jl(()=>Y("li",null,[Y("a",{href:"https://discord.gg/WzejVAx",target:"_blank"},"The Paper Pilot Community")],-1)),CZ=Jl(()=>Y("li",null,[Y("a",{href:"https://discord.gg/F3xveHV",target:"_blank"},"The Modding Tree")],-1)),vZ=Di({__name:"Nav",setup(i){const l=di(null),n=di(null),s=di(null),t=di(null),{useHeader:o,banner:c,title:Z,discordName:b,discordLink:r,versionNumber:C}=fe;function W(){window.open(r,"mywindow")}return(h,J)=>(N(),S(w,null,[d(o)?(N(),S("
|
||
|
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 ga();const{globalBus:i}=await Fn(()=>Promise.resolve().then(function(){return Ja}),void 0),{startGameLoop:l}=await Fn(()=>import("./gameLoop.0776661e.js"),["assets/gameLoop.0776661e.js","assets/@fontsource.c175eac8.css","assets/vue.e305c975.js","assets/earcut.7c12e2a9.js","assets/@vue.359f7754.js","assets/nanoevents.1080beb7.js","assets/lz-string.f2f3b7cf.js","assets/is-plain-object.906d88e8.js","assets/vue-next-select.0b2b1d01.js","assets/vue-next-select.9e6f4164.css","assets/vue-toastification.d643abb2.js","assets/vue-toastification.4b5f8ac8.css","assets/@pixi.45135ab2.js","assets/eventemitter3.dc5195d7.js","assets/url.5a27916e.js","assets/querystring.b35d81f8.js","assets/vuedraggable.96a532dc.js","assets/sortablejs.a0419146.js","assets/vue-textarea-autosize.35804eaf.js"]),n=window.vue=Vt(Ib);i.emit("setupVue",n),n.mount("#app"),bn(()=>{const s=ys(),{updateServiceWorker:t}=tb({onNeedRefresh(){s.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(){t()}})},onOfflineReady(){s.info("App ready to work offline")},onRegisterError:console.warn,onRegistered(o){o&&setInterval(()=>o.update(),60*60*1e3)}})}),l()});export{e as D,Fn as _,el as a,fe as b,bo as c,Xe as g,gI as l,Ti as p,Te as s};
|