{
  "version": 3,
  "sources": ["/cdn/shop/t/2/assets/gllf-sim-play3d.js?nc=1792676926"],
  "sourcesContent": ["/* gllf-sim-play3d v752 \u00B7 phones stay sharp: the smoothness helper never draws below one pixel per point */\n/* Lavender Farm Simulator \u2014 v650 \u00B7 the 3D farm, smoother and with somewhere to go.\n   1. Phones run cooler: with Display set to Auto, a phone's 3D farm runs at a steady 30 frames a second, and if it still\n      can't keep up, the picture gets a little softer step by step (and sharper again when it can). A small note says so once.\n   2. First steps in 3D: three short goals for new players (step inside the farmhouse, take a ride on the farm truck to\n      town, and visit the Processing Barn), with the compass pointing the way and a reward for each.\n   3. Story places: chapters of the weekly story point the compass at a real place on your 3D farm.\n   4. The Herbarium hangs in the barn: inside any building on your farm, a Herbarium button opens your framed specimens.\n   Reads the 3D farm through a few small helpers in gllf-sim-farm3d.js (aim650, places650, pos650). */\n(function () {\n  'use strict';\n  if (window.GLLFPlay3D) return;\n  function V() { try { return window.GLLF3D && GLLF3D._view && GLLF3D._view(); } catch (e) { return null; } }\n  function T() { return window.__gllfTel3d || {}; }\n  function open3d() { return !!T().open; }\n  function probe() { try { return T().probe ? T().probe() : {}; } catch (e) { return {}; } }\n  function hit(ev, arg) { try { window.GLLFTel && GLLFTel.hit && GLLFTel.hit(ev, arg); } catch (e) {} }\n  function g3d() { return document.querySelector('.g3d__card') || document.querySelector('.g3d'); }\n  function ls(k, v) { try { if (v === undefined) return localStorage.getItem(k); localStorage.setItem(k, v); } catch (e) { return null; } }\n  function phone() { try { var m = Math.min(screen.width, screen.height); return ((navigator.maxTouchPoints || 0) > 0 || 'ontouchstart' in window) && m < 600; } catch (e) { return false; } }\n  function note(html, ms) {\n    var c = g3d(); if (!c) return; var n = document.createElement('div'); n.className = 'g65-3dnote'; n.setAttribute('role', 'status'); n.innerHTML = html; c.appendChild(n);\n    setTimeout(function () { if (n.parentNode) n.parentNode.removeChild(n); }, ms || 5000);\n  }\n\n  /* ---------------- 1. cooler phones ---------------- */\n  var Q = { samples: [], last: -1, lvl: 0, at: 0, mine: false, opened: 0 }, LV = [0, 1.5, 1.25, 1];\n  try { var saved = JSON.parse(ls('g650gfx') || 'null'); if (saved && saved.lvl) { Q.old = saved.lvl; } } catch (e) {}\n  function gfx() { try { return window.GLLFGfx && GLLFGfx.get(); } catch (e) { return null; } }\n  function autoOk() { var g = gfx(); if (!g || g.preset !== 'auto') return false; return g.res === 'auto' || Q.mine; }\n  function setLevel(l) {\n    var dpr = window.devicePixelRatio || 1; Q.lvl = l; Q.at = Date.now(); Q.samples = [];\n    try { GLLFGfx.set('res', l ? String(Math.min(100, Math.max(34, Math.round(LV[l] / dpr * 100)))) : 'auto'); } catch (e) {}\n    Q.mine = !!l; ls('g650gfx', JSON.stringify({ lvl: l }));\n  }\n  function cool() {\n    if (!phone()) return;\n    var t = T(); if (!t.open) { Q.last = -1; Q.opened = 0; if (window.__gllf650cap) { window.__gllf650cap = 0; if (window.__gllfFpsCap === 30) window.__gllfFpsCap = 0; } return; }\n    if (Q.old) { var g0 = gfx(), d0 = window.devicePixelRatio || 1; if (g0) { if (g0.res !== 'auto' && String(g0.res) === String(Math.max(17, Math.round([0, 0.8, 0.65, 0.5][Q.old] / d0 * 100)))) GLLFGfx.set('res', 'auto'); Q.old = 0; ls('g650gfx', JSON.stringify({ lvl: 0 })); } }\n    if (!Q.opened) Q.opened = Date.now();\n    if (!autoOk()) return;\n    if (!window.__gllfFpsCap) { window.__gllfFpsCap = 30; window.__gllf650cap = 1; }\n    if (Q.lvl && (gfx() || {}).res === 'auto') setLevel(Q.lvl);\n    var f = +t.f || 0; if (Q.last < 0) { Q.last = f; return; }\n    var fps = f - Q.last; Q.last = f; if (Date.now() - Q.opened < 4000 || Date.now() - Q.at < 6000 || document.hidden) return;\n    Q.samples.push(fps); if (Q.samples.length > 20) Q.samples.shift();\n    var last5 = Q.samples.slice(-5), avg5 = last5.reduce(function (a, b) { return a + b; }, 0) / Math.max(1, last5.length);\n    if (last5.length >= 5 && avg5 < 22 && Q.lvl < 3) {\n      setLevel(Q.lvl + 1); hit('gfx_auto', 'down');\n      if (!ls('g650gfxNote')) { ls('g650gfxNote', '1'); note('\uD83C\uDF3F <b>Smoother 3D:</b> we softened the picture a little so your phone runs cooler. You can change this in Display settings.', 7000); }\n    } else if (Q.samples.length >= 20 && Q.lvl > 0 && Q.samples.every(function (x) { return x >= 27; })) { setLevel(Q.lvl - 1); hit('gfx_auto', 'up'); }\n  }\n\n  /* ---------------- compass helpers ---------------- */\n  function place(re) { var v = V(); if (!v || !v.places650) return null; var L = v.places650(); for (var i = 0; i < L.length; i++) if (re.test(L[i].id) || re.test(L[i].name)) return L[i]; return null; }\n  function aim(p) { var v = V(); if (v && v.aim650) v.aim650(p ? { x: p.x, z: p.z, r: p.r || 1.4, name: p.name, ic: p.ic } : null); }\n  function where() { try { var w = window.GLLF3D && GLLF3D.where && GLLF3D.where(); if (w && isFinite(w.x)) return w; } catch (e) {} var v = V(); return v && v.pos650 ? v.pos650() : null; }\n  function helpers() { var v = V(); return !!(v && v.places650 && v.aim650); }\n  function near(p) { var me = where(); if (!me || !p || p.x == null) return false; return Math.hypot(me.x - p.x, me.z - p.z) < (p.r || 1.4) + 2.2; }\n  /* without the 3D helpers: buildings count when you step inside one with a matching name, other places after a short walk */\n  function insideMatch(re) { var w = where(), k = w && w.inside; return !!k && re.test(String(k)); }\n  var seeking = null;\n  function seek(re, cb) {\n    seeking = { re: re, cb: cb, t0: Date.now() };\n    try { if (!open3d() && window.GLLF3D) GLLF3D.open(); } catch (e) {}\n  }\n  function seekTick() {\n    if (!seeking || !open3d()) return;\n    if (!helpers()) {\n      if (!seeking.mapped) { seeking.mapped = 1; seeking.walk = 0; try { GLLF3D.map && GLLF3D.map(); } catch (e) {} note('\\uD83E\\uDDED Find it on the farm map, then walk there.', 7000); }\n      if (V() && V().walking && V().walking()) seeking.walk++;\n      if (insideMatch(seeking.re) || seeking.walk > 25) { var cb0 = seeking.cb; seeking = null; try { cb0 && cb0({}); } catch (e) {} }\n      return;\n    }\n    var p = place(seeking.re); if (!p) { if (Date.now() - seeking.t0 > 20000) { note('Look around your farm for it. The compass couldn\u2019t find it on this map.', 6000); seeking = null; } return; }\n    if (!seeking.aimed) { aim(p); seeking.aimed = 1; note('\uD83E\uDDED The compass points to <b>' + p.name + '</b>. Walk over to it.', 6000); }\n    if (near(p)) { var cb = seeking.cb; seeking = null; aim(null); try { cb && cb(p); } catch (e) {} }\n  }\n\n  /* ---------------- 2. first steps in 3D ---------------- */\n  var KEY = 'g650q3d', S = { step: 0, closed: 0 };\n  try { S = Object.assign(S, JSON.parse(ls(KEY) || '{}')); } catch (e) {}\n  function keep() { ls(KEY, JSON.stringify(S)); }\n  var STEPS = [\n    { id: 'inside', t: 'Step inside the farmhouse', h: 'Walk up to the Farmhouse door and go in.', re: /house/i, xp: 20, c: 60, done: function () { var p = probe(); return !!p.room && !p.town; } },\n    { id: 'town', t: 'Drive the farm truck to town', h: 'Hop in the Farm Truck and take the road to town.', re: /truck/i, xp: 30, c: 90, done: function () { return !!probe().town || hayTown; } },\n    { id: 'barn', t: 'Visit the Processing Barn', h: 'Back home, find the Processing Barn, where the lavender gets dried and distilled.', re: /processing|sp:barn/i, xp: 25, c: 80, near: true }\n  ];\n  var hayTown = false;\n  (function listen() { var G = window.GLLFTel; if (!G || !G.hit) return setTimeout(listen, 1000); if (G.__p3d) return; G.__p3d = 1; var o = G.hit;\n    G.hit = function (ev) { try { if (ev === 'trip') hayTown = true; } catch (e) {} return o.apply(this, arguments); }; })();\n  var card = null, aimedStep = -1;\n  function reward(st) {\n    try { var r = document.getElementById('lfg-simulator-root'), g = r && r._lfg, s = g && g.state(); if (s) { var eco = r._lfgEconomy, ok = false;\n      try { if (eco && eco.post) { var o = eco.post({ id: 'g650-q3d-' + st.id, amount: st.c, kind: 'income', label: '3D first steps: ' + st.t, category: 'gifts', source: 'farm' }); ok = !!(o && (o.ok || o.duplicate)); } } catch (e) {}\n      if (!ok) s.coins = (+s.coins || 0) + st.c; g.addXp(st.xp); g.save(); } } catch (e) {}\n  }\n  function questTick() {\n    if (S.step >= STEPS.length || !open3d()) { if (card && card.parentNode && !open3d()) { card.parentNode.removeChild(card); card = null; } return; }\n    var st = STEPS[S.step], ok = st.near ? (function () { if (insideMatch(/barn|process/i)) return true; var p = place(st.re); return p && near(p); })() : st.done();\n    if (ok) { reward(st); hit('quest_step', 'q3d-' + st.id); S.step++; keep(); aimedStep = -1; note('\u2B50 <b>' + st.t + '</b>: done! +' + st.c + ' coins.', 5000); if (S.step >= STEPS.length) { hit('quest_step', 'q3d-done'); note('\uD83C\uDF89 You know your way around the farm now. Enjoy exploring!', 6000); } }\n    if (S.step >= STEPS.length) { if (card && card.parentNode) card.parentNode.removeChild(card); card = null; return; }\n    st = STEPS[S.step];\n    if (!seeking && aimedStep !== S.step && !S.closed) { var p = place(st.re); if (p) { aim(p); aimedStep = S.step; } }\n    var host = g3d(); if (!host) return;\n    if (!card || !card.isConnected) { card = document.createElement('div'); card.className = 'g65-q3d'; host.appendChild(card);\n      card.addEventListener('click', function (e) { if (e.target.closest('[data-q=\"x\"]')) { S.closed = 1; keep(); aim(null); render(); } else if (e.target.closest('[data-q=\"o\"]')) { S.closed = 0; keep(); aimedStep = -1; render(); } }); }\n    render();\n  }\n  function busy3d() { var o = document.querySelectorAll('.g3d .gst, .g3d .g3d-shed, .g3d [role=\"dialog\"], .g3d [aria-modal=\"true\"]'); for (var i = 0; i < o.length; i++) { var e = o[i]; if (e.closest('.g65-q3d')) continue; var r = e.getBoundingClientRect(); if (r.width > 2 && r.height > 2 && getComputedStyle(e).visibility !== 'hidden') return true; } return false; }\n  function render() {\n    if (!card) return; var st = STEPS[S.step]; if (!st) return;\n    var hide = busy3d(); if (card.hidden !== hide) card.hidden = hide;\n    var html = S.closed ? '<button type=\"button\" class=\"g65-q3d__pill\" data-q=\"o\">\u2B50 First steps ' + (S.step + 1) + '/' + STEPS.length + '</button>'\n      : '<div class=\"g65-q3d__box\"><b>\u2B50 First steps \u00B7 ' + (S.step + 1) + ' of ' + STEPS.length + '</b><p><b>' + st.t + '</b></p><p>' + st.h + ' The compass shows the way.</p><small>Reward: ' + st.c + ' coins</small><button type=\"button\" class=\"g65-q3d__x\" data-q=\"x\" aria-label=\"Hide\">\u2715</button></div>';\n    if (card.__h !== html) { card.innerHTML = html; card.__h = html; }\n  }\n\n  /* ---------------- 4. the Herbarium button inside buildings ---------------- */\n  function herbTick() {\n    var bar = document.querySelector('.g3d .g3d__tools'), p = probe(), on = open3d() && !!p.room && !p.town && !!window.GLLFSeason650;\n    var b = bar && bar.querySelector(':scope > .g65-herbbtn');\n    if (!on) { if (b) b.remove(); return; }\n    if (!bar || b) return;\n    b = document.createElement('button'); b.type = 'button'; b.className = 'g65-herbbtn'; b.setAttribute('data-short', 'Herbarium'); b.setAttribute('aria-label', 'Herbarium: your framed specimens'); b.textContent = '\uD83D\uDDBC\uFE0F';\n    b.addEventListener('click', function () { try { GLLFSeason650.open('herb'); } catch (e) {} }); bar.appendChild(b);\n  }\n\n  /* ---------------- the Herbarium hangs on the Processing Barn wall (v652) ---------------- */\n  var KC = { english: '#5b2f91', lavandin: '#6c5bd0', spike: '#7a8a50', spanish: '#9b3f8a', bloom: '#c4579a', friend: '#d0643a', ledger: '#8a6a3a', partner: '#2f7a7a', gold: '#c99a1a', own: '#3a6fc4' };\n  function sprigCanvas(sp) {\n    var c = document.createElement('canvas'); c.width = 192; c.height = 256; var x = c.getContext('2d');\n    x.fillStyle = '#f6efe0'; x.fillRect(0, 0, 192, 256); x.strokeStyle = '#c8b48c'; x.lineWidth = 4; x.strokeRect(8, 8, 176, 240);\n    if (!sp) { x.fillStyle = '#b9a684'; x.font = '900 64px Georgia, serif'; x.textAlign = 'center'; x.fillText('?', 96, 140); return c; }\n    var col = KC[sp.kind] || '#5b2f91'; x.strokeStyle = '#6b7d4a'; x.lineWidth = 4; x.beginPath(); x.moveTo(96, 210); x.quadraticCurveTo(90, 130, 96, 40); x.stroke();\n    x.beginPath(); x.moveTo(96, 170); x.quadraticCurveTo(70, 160, 62, 140); x.moveTo(96, 182); x.quadraticCurveTo(122, 172, 130, 152); x.stroke();\n    x.fillStyle = col; for (var i = 0; i < 10; i++) { var y = 44 + i * 10, w = 9 - i * 0.4; x.globalAlpha = 0.95 - i * 0.04; x.beginPath(); x.ellipse(96 - w, y, 6 - i * 0.2, 8, 0, 0, 7); x.fill(); x.beginPath(); x.ellipse(96 + w, y + 4, 6 - i * 0.2, 8, 0, 0, 7); x.fill(); }\n    x.globalAlpha = 1; x.fillStyle = '#3b2a14'; x.font = '700 17px Georgia, serif'; x.textAlign = 'center';\n    var t = String(sp.t || ''), words = t.split(' '), line = '', ly = 232, lines = [];\n    words.forEach(function (w2) { var tr = line ? line + ' ' + w2 : w2; if (x.measureText(tr).width > 160 && line) { lines.push(line); line = w2; } else line = tr; }); if (line) lines.push(line);\n    lines.slice(-2).forEach(function (l, k, arr) { x.fillText(l, 96, ly - (arr.length - 1 - k) * 18); });\n    return c;\n  }\n  var wallKey = '';\n  function wallTick() {\n    var v = V(); if (!v || !v.room650 || !v.three650) return; var R = v.room650(), T = v.three650();\n    if (!R || !T || !/barn|process/i.test(R.kind) || !R.g) return;\n    var S6 = window.GLLFSeason650, d = S6 && S6._d && S6._d(); if (!d) return;\n    var keys = Object.keys(d.press || {}).sort(function (a, b) { return (d.press[a].at || 0) - (d.press[b].at || 0); }), key = keys.join('|') + '#' + R.g.uuid;\n    if (key === wallKey && R.g.getObjectByName('g650herb')) return; wallKey = key;\n    var old = R.g.getObjectByName('g650herb'); if (old) R.g.remove(old);\n    var grp = new T.Group(); grp.name = 'g650herb';\n    var W = R.W || 12, Dp = R.D || 9, list = keys.map(function (k) { return d.press[k]; }); while (list.length < 3) list.push(null);\n    var back = Math.min(list.length, Math.max(3, Math.floor((W - 2) / 0.85))), side = list.slice(back, back + Math.max(0, Math.floor((Dp - 3) / 0.85)));\n    function frame(sp, x, y, z, ry) {\n      var g = new T.Group(), tex = new T.CanvasTexture(sprigCanvas(sp)); try { tex.colorSpace = T.SRGBColorSpace; } catch (e) {}\n      var face = new T.Mesh(new T.PlaneGeometry(0.5, 0.66), new T.MeshBasicMaterial({ map: tex, toneMapped: false }));\n      var wood = new T.Mesh(new T.PlaneGeometry(0.62, 0.8), new T.MeshBasicMaterial({ color: 0x5a4128, toneMapped: false })); wood.position.z = -0.006;\n      g.add(wood); g.add(face); g.position.set(x, y, z); g.rotation.y = ry || 0; grp.add(g);\n    }\n    list.slice(0, back).forEach(function (sp, i) { var x0 = (i - (back - 1) / 2) * 0.85; frame(sp, x0, 1.72, -Dp / 2 + 0.13, 0); });\n    side.forEach(function (sp, i) { frame(sp, -W / 2 + 0.13, 1.72, (i - (side.length - 1) / 2) * 0.85, Math.PI / 2); });\n    R.g.add(grp); try { v.dirty650 && v.dirty650(); } catch (e) {}\n    if (!ls('g652herbNote')) { ls('g652herbNote', '1'); note('\uD83D\uDDBC\uFE0F Your Herbarium hangs on the back wall of the barn.', 6000); }\n  }\n\n  setInterval(function () { try { cool(); } catch (e) {} try { seekTick(); } catch (e) {} try { questTick(); } catch (e) {} try { herbTick(); } catch (e) {} try { wallTick(); } catch (e) {} }, 1000);\n  window.GLLFPlay3D = { seek: seek, aim: aim, place: place, level: function () { return Q.lvl; } };\n})();\n"],
  "mappings": "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",
  "names": ["p", "T"]
}
