screeps-client 0.6.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/embedded/_client/CodePanel-CVrM6x4v.js +1 -0
- package/dist/embedded/_client/MapViewer-COMbpdgT.js +1 -0
- package/dist/embedded/_client/decompress-DIM550rx.js +1 -0
- package/dist/embedded/_client/index-DDx5QnXZ.js +19 -0
- package/dist/embedded/_client/rolldown-runtime-QTnfLwEv.js +1 -0
- package/dist/embedded/_client/terrain.worker-BgNTQAMk.js +1 -0
- package/dist/embedded/_client/vendor-codemirror-B_kaIH0M.js +34 -0
- package/dist/embedded/_client/vendor-pixi-DseA5gVO.js +1274 -0
- package/dist/embedded/index.html +12 -3
- package/dist/standalone/_client/CodePanel-CwVNxrB0.js +1 -0
- package/dist/standalone/_client/MapViewer-B3Ow_Bmv.js +1 -0
- package/dist/standalone/_client/decompress-DIM550rx.js +1 -0
- package/dist/standalone/_client/index-q2IQJ_hs.js +19 -0
- package/dist/standalone/_client/rolldown-runtime-QTnfLwEv.js +1 -0
- package/dist/standalone/_client/terrain.worker-BgNTQAMk.js +1 -0
- package/dist/standalone/_client/vendor-codemirror-B_kaIH0M.js +34 -0
- package/dist/standalone/_client/vendor-pixi-_F6CfCZH.js +1274 -0
- package/dist/standalone/index.html +12 -3
- package/dist/xxscreeps-mod/_client/CodePanel-D6kl0sq1.js +1 -0
- package/dist/xxscreeps-mod/_client/MapViewer-B2pRqyZI.js +1 -0
- package/dist/xxscreeps-mod/_client/decompress-DIM550rx.js +1 -0
- package/dist/xxscreeps-mod/_client/index-DGByyYWv.js +19 -0
- package/dist/xxscreeps-mod/_client/rolldown-runtime-QTnfLwEv.js +1 -0
- package/dist/xxscreeps-mod/_client/terrain.worker-BgNTQAMk.js +1 -0
- package/dist/xxscreeps-mod/_client/vendor-codemirror-B_kaIH0M.js +34 -0
- package/dist/xxscreeps-mod/_client/vendor-pixi-DoK_ycfH.js +1274 -0
- package/dist/xxscreeps-mod/index.html +12 -3
- package/package.json +1 -1
- package/dist/embedded/_client/CodePanel-KBQ78175.js +0 -1
- package/dist/embedded/_client/MapViewer-BL7mzGWw.js +0 -1
- package/dist/embedded/_client/index-KFumkHjd.js +0 -24
- package/dist/embedded/_client/terrain.worker-D9zNeJfz.js +0 -1
- package/dist/embedded/_client/vendor-codemirror-D3PB7yT8.js +0 -24
- package/dist/embedded/_client/vendor-pixi-CWBnI4gg.js +0 -1280
- package/dist/standalone/_client/CodePanel-sM0UkfOw.js +0 -1
- package/dist/standalone/_client/MapViewer-B-eI44Qx.js +0 -1
- package/dist/standalone/_client/index-CHCJvDO3.js +0 -24
- package/dist/standalone/_client/terrain.worker-D9zNeJfz.js +0 -1
- package/dist/standalone/_client/vendor-codemirror-D3PB7yT8.js +0 -24
- package/dist/standalone/_client/vendor-pixi-DrpfKiIN.js +0 -1280
- package/dist/xxscreeps-mod/_client/CodePanel-Bfi6k72H.js +0 -1
- package/dist/xxscreeps-mod/_client/MapViewer-CKPZHZAs.js +0 -1
- package/dist/xxscreeps-mod/_client/index-04hhqfkD.js +0 -24
- package/dist/xxscreeps-mod/_client/terrain.worker-D9zNeJfz.js +0 -1
- package/dist/xxscreeps-mod/_client/vendor-codemirror-D3PB7yT8.js +0 -24
- package/dist/xxscreeps-mod/_client/vendor-pixi-CerEzm_8.js +0 -1280
package/dist/embedded/index.html
CHANGED
|
@@ -18,10 +18,19 @@
|
|
|
18
18
|
color: #c9d1d9;
|
|
19
19
|
font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
|
20
20
|
}
|
|
21
|
+
@keyframes spin {
|
|
22
|
+
to { transform: rotate(360deg); }
|
|
23
|
+
}
|
|
24
|
+
@keyframes motd-in {
|
|
25
|
+
from { opacity: 0; transform: translate(-50%, calc(-50% + 8px)); }
|
|
26
|
+
to { opacity: 1; transform: translate(-50%, -50%); }
|
|
27
|
+
}
|
|
21
28
|
</style>
|
|
22
|
-
<script type="module" crossorigin src="/client/_client/index-
|
|
23
|
-
<link rel="modulepreload" crossorigin href="/client/_client/
|
|
24
|
-
<link rel="modulepreload" crossorigin href="/client/_client/vendor-pixi-
|
|
29
|
+
<script type="module" crossorigin src="/client/_client/index-DDx5QnXZ.js"></script>
|
|
30
|
+
<link rel="modulepreload" crossorigin href="/client/_client/rolldown-runtime-QTnfLwEv.js">
|
|
31
|
+
<link rel="modulepreload" crossorigin href="/client/_client/vendor-pixi-DseA5gVO.js">
|
|
32
|
+
<link rel="modulepreload" crossorigin href="/client/_client/vendor-codemirror-B_kaIH0M.js">
|
|
33
|
+
<link rel="modulepreload" crossorigin href="/client/_client/decompress-DIM550rx.js">
|
|
25
34
|
</head>
|
|
26
35
|
<body>
|
|
27
36
|
<div id="root"></div>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_ as e,a as t,d as n,f as r,h as i,i as a,m as o,n as s,o as c,r as l,t as u,y as d}from"./vendor-codemirror-B_kaIH0M.js";import{S as f,_ as p,b as m,f as h,g,v as _,x as v,y}from"./index-q2IQJ_hs.js";var b=v(`<span style=font-size:11px;color:#e3b341>Unsaved changes`),x=v(`<div style="padding:12px 10px;font-size:12px;color:#484f58;font-style:italic">Loading…`),S=v(`<div style=flex:1;display:flex;align-items:center;justify-content:center;color:#484f58;font-size:13px;font-style:italic>`),C=v(`<div style=position:absolute;inset:0px;background:#0d1117;z-index:100;display:flex;flex-direction:column;overflow:hidden><div style="display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid #30363d;flex-shrink:0"><span style=font-size:15px;font-weight:600;color:#c9d1d9>Code</span><select style="background:#010409;color:#c9d1d9;border:1px solid #30363d;border-radius:4px;padding:4px 8px;font-size:12px;cursor:pointer"></select><div style=flex:1></div><button style="padding:5px 14px;border-radius:4px;border:1px solid #238636;font-size:12px;font-weight:600"></button><button style="background:transparent;border:none;color:#8b949e;font-size:18px;cursor:pointer;line-height:1;padding:2px 6px">✕</button></div><div style=flex:1;display:flex;overflow:hidden><div style="width:180px;flex-shrink:0;border-right:1px solid #21262d;display:flex;flex-direction:column;overflow:hidden"><div style="padding:6px 10px;font-size:10px;font-weight:700;color:#8b949e;text-transform:uppercase;letter-spacing:0.06em;border-bottom:1px solid #21262d;flex-shrink:0">Modules</div><div style=flex:1;overflow:auto></div></div><div style=flex:1;display:flex;flex-direction:column;overflow:hidden><div style="padding:5px 14px;font-size:12px;color:#8b949e;border-bottom:1px solid #21262d;flex-shrink:0;font-family:monospace;background:#0d1117">.js</div><div style=flex:1;overflow:hidden;flex-direction:column>`),w=v(`<option>`),T=v(`<div style="padding:7px 12px;font-size:12px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis">`),{error:E}=g(`code`),D=c.theme({"&":{height:`100%`},".cm-scroller":{"font-family":`'JetBrains Mono', 'Fira Code', 'Cascadia Code', monospace`,"font-size":`13px`,"line-height":`1.6`,overflow:`auto`},".cm-gutters":{background:`#0d1117`,"border-right":`1px solid #21262d`},".cm-lineNumbers .cm-gutterElement":{color:`#484f58`,"min-width":`3em`},".cm-activeLineGutter":{background:`#161b22`},".cm-activeLine":{background:`#161b22`}}),O=[l,s(),u,D];function k(s){let[c,l]=d([]),[u,g]=d(``),[_,v]=d({}),[D,k]=d(``),[A,j]=d(!1),[M,N]=d(!1),[P,F]=d(!1),I=()=>Object.keys(_()),{editorView:L,ref:R,createExtension:z}=t({onValueChange:e=>{let t=D();!t||_()[t]===e||(v(n=>({...n,[t]:e})),F(!0))}});a(L,()=>_()[D()]??``),z(O),i(()=>{let e=h();e&&e.http.user.branches().then(e=>{l(e.list);let t=e.list.find(e=>e.activeWorld)??e.list[0];t&&g(t.branch)}).catch(e=>{E(`branches failed:`,e),p(`Failed to load branches`,`error`)})}),i(()=>{let e=u(),t=h();!e||!t||(j(!0),v({}),k(``),F(!1),t.http.user.code.get(e).then(e=>{let t=e.modules??{};v(t),k(Object.keys(t)[0]??``)}).catch(e=>{E(`get failed:`,e),p(`Failed to load code`,`error`)}).finally(()=>j(!1)))});let B=()=>{let e=h(),t=u();!e||!t||(N(!0),e.http.user.code.set(t,_()).then(()=>{p(`Code saved`,`success`),F(!1)}).catch(e=>{E(`set failed:`,e),p(`Failed to save code`,`error`)}).finally(()=>N(!1)))};return(()=>{var t=C(),i=t.firstChild,a=i.firstChild.nextSibling,l=a.nextSibling.nextSibling,d=l.nextSibling,p=i.nextSibling.firstChild,h=p.firstChild.nextSibling,_=p.nextSibling,v=_.firstChild,E=v.firstChild,O=v.nextSibling;return a.addEventListener(`change`,e=>g(e.currentTarget.value)),y(a,o(n,{get each(){return c()},children:t=>(()=>{var n=w();return y(n,()=>t.branch,null),y(n,()=>t.activeWorld?` ★`:``,null),e(()=>n.value=t.branch),n})()})),y(i,o(r,{get when(){return P()},get children(){return b()}}),l),l.$$click=B,y(l,()=>M()?`Saving…`:`Save`),d.$$click=()=>s.onClose(),y(h,o(r,{get when(){return A()},get children(){return x()}}),null),y(h,o(n,{get each(){return I()},children:t=>(()=>{var n=T();return n.$$click=()=>k(t),y(n,t),e(e=>{var r=D()===t?`#1f3158`:`transparent`,i=D()===t?`#58a6ff`:`#c9d1d9`,a=`2px solid ${D()===t?`#388bfd`:`transparent`}`;return r!==e.e&&m(n,`background`,e.e=r),i!==e.t&&m(n,`color`,e.t=i),a!==e.a&&m(n,`border-left`,e.a=a),e},{e:void 0,t:void 0,a:void 0}),n})()}),null),y(v,D,E),f(R,O),y(_,o(r,{get when(){return!D()},get children(){var e=S();return y(e,()=>A()?`Loading code…`:`Select a module`),e}}),null),e(e=>{var t=M()||A()||!P(),n=M()||!P()?`#161b22`:`#1a3a2a`,r=M()||!P()?`#484f58`:`#3fb950`,i=M()||!P()?`default`:`pointer`,a=D()?`block`:`none`,o=D()?`flex`:`none`;return t!==e.e&&(l.disabled=e.e=t),n!==e.t&&m(l,`background`,e.t=n),r!==e.a&&m(l,`color`,e.a=r),i!==e.o&&m(l,`cursor`,e.o=i),a!==e.i&&m(v,`display`,e.i=a),o!==e.n&&m(O,`display`,e.n=o),e},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0}),e(()=>a.value=u()),t})()}_([`click`]);export{k as CodePanel};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{T as e,h as t,w as n,y as r}from"./vendor-codemirror-B_kaIH0M.js";import{S as i,a,c as o,d as s,f as c,g as l,h as u,i as d,l as f,m as p,n as m,o as h,p as g,r as _,s as v,t as y,u as b,x}from"./index-q2IQJ_hs.js";var S=x(`<div style=width:100%;height:100%;position:relative><canvas style=display:block>`),{log:C,error:w}=l(`map`);function T(l){let x,T=null,[E,D]=r([]),[O,k]=r(1),[A,j]=r(l.originRoom??null),M=null,N=null,P=new Map,F=new Map,I=new Map,L=new Map,R=e=>{let t=u();if(!t)return!0;let n=o(e);return!!n&&v(n.x,n.y,t)},z=e=>{let t=F.get(e);return{room:e,owner:t?.username??(t?.own?.user?`user:${t.own.user}`:null),mineral:t?.mineral??null,density:t?.density??null}},B=[],V=null,H=()=>{V=null;let e=c();if(!e||!T)return;let t=new Set(E());if(B=B.filter(e=>t.has(e)&&!T.hasRoom(e)),B.length===0)return;let n=B.splice(0,200);e.stores.room.terrainBulk(n,l.shard).then(e=>{for(let[t,n]of e){T?.setRoomTerrain(t,n);let e=I.get(t);e!==void 0&&T?.setRoomOwned(t,e)}for(let t of n)e.has(t)||T?.markRoomFetched(t)}).catch(e=>w(`terrain fetch failed:`,e)).finally(()=>{B.length>0&&(V=setTimeout(H,0))})};return t(()=>{c(),l.shard,F.clear(),I.clear()}),e(()=>{x&&(async()=>{if(T=new y({onRoomHover:e=>{l.onHoveredRoomChanged?.(e?z(e):null)},onRoomClick:e=>{A()===e?R(e)&&setTimeout(()=>l.onNavigateToRoom(e),0):(j(e),T?.setSelectedRoom(e),l.onSelectedRoomChanged?.(z(e)))},onVisibleRoomsChanged:e=>{let t=e.length===0;N!==t&&(N=t,C(t?`zoom out — too many rooms visible, terrain loading paused`:`zoom in — terrain loading active, ${e.length} rooms visible`)),D(e)},onZoomChanged:e=>{k(e),l.onZoomChanged?.(e)}}),await T.init(x),!T)return;l.initialZoom!==void 0&&l.initialZoom>0&&T.setZoom(l.initialZoom),l.onZoomChanged?.(T.zoom);let e=u();if(e&&T.setBounds(e.minX,e.maxX,e.minY,e.maxY),l.originRoom){let e=o(l.originRoom);e&&T.centerOn(e.x,e.y),T.setSelectedRoom(l.originRoom),l.onSelectedRoomChanged?.(z(l.originRoom))}else{let e=c();if(e)try{let t=await e.http.user.worldStartRoom(l.shard??`shard0`);if(!T)return;let n=Array.isArray(t?.room)?t.room[0]:t?.room;if(typeof n==`string`){let e=o(n);e&&T.centerOn(e.x,e.y)}}catch(e){w(`worldStartRoom failed:`,e)}}})()}),n(()=>{V!==null&&(clearTimeout(V),V=null),B=[];for(let e of P.values())e.dispose();P.clear(),T?.destroy(),T=null}),t(()=>{_({currentRoom:A,worldBounds:u,onMove:(e,t)=>{let n=d(e,t);j(n),T?.setSelectedRoom(n),T?.centerOn(e,t,!0),l.onSelectedRoomChanged?.(z(n)),l.onHoveredRoomChanged?.(z(n))}});let e=e=>{let t=e.target?.tagName??``,n=e.target?.isContentEditable??!1;if(!(t===`INPUT`||t===`TEXTAREA`||n)&&e.key===`m`){let e=A();e&&R(e)&&l.onNavigateToRoom(e)}};window.addEventListener(`keydown`,e),n(()=>window.removeEventListener(`keydown`,e))}),t(()=>{let e=c(),t=E(),n=l.shard;if(!e||t.length===0)return;let r=new Set(t),i=t.filter(e=>!T?.hasRoom(e));if(i.length>0){let e=t.reduce((e,t)=>e+(o(t)?.x??0),0)/t.length,n=t.reduce((e,t)=>e+(o(t)?.y??0),0)/t.length;B=i.slice().sort((t,r)=>{let i=o(t),a=o(r);return(i?Math.abs(i.x-e)+Math.abs(i.y-n):999)-(a?Math.abs(a.x-e)+Math.abs(a.y-n):999)}),V===null&&(V=setTimeout(H,0))}e.stores.mapStats.request(t,`owner0`,n??void 0);let a=O()>=.4;if(a!==M&&(M=a,l.onSubscriptionStateChanged?.(a),a||T?.clearAllMap2()),a){let r=new Set(t.map(e=>`${e}/${n}`));for(let[e,t]of P)r.has(e)||(t.dispose(),P.delete(e),T?.clearRoomMap2(e.split(`/`)[0]));for(let r of t){let t=`${r}/${n}`;P.has(t)||P.set(t,e.stores.map.subscribeMap2(r,n))}}else{for(let[,e]of P)e.dispose();P.clear()}T?.clearInvisibleRooms(r)}),t(()=>{T?.setShowRoomNames(f()),T&&(T.currentShard=l.shard??`shard0`)}),t(()=>{T?.setUnclaimableOverlayVisible(s())}),t(()=>{T?.setMapVisualVisible(b())}),t(()=>{T?.setOverlayMode(m())}),t(()=>{let e=c(),t=l.shard;e&&e.stores.server.worldInfo(t??void 0).then(e=>{C(`worldInfo(shard=${t??`none`}) — x: [${e.minX}, ${e.maxX}] y: [${e.minY}, ${e.maxY}]`),g(e)}).catch(e=>{C(`worldInfo(shard=${t??`none`}) failed:`,e)})}),t(()=>{T?.setCurrentUser(p()?._id??null)}),t(()=>{let e=u();e?(T?.setBounds(e.minX,e.maxX,e.minY,e.maxY),C(`worldBounds applied — shard: ${l.shard??`none`} x: [${e.minX}, ${e.maxX}] y: [${e.minY}, ${e.maxY}] (fetched for shard: ${e.shard??`none`})`)):(T?.clearBounds(),C(`worldBounds — none (shard: ${l.shard??`none`})`))}),t(()=>{let e=c();if(!e)return;let t=e.stores.user.subscribeMapVisual(l.shard),r=e.stores.user.on(`user:mapVisual`,({shard:e,data:t})=>{e===l.shard&&(t?T?.setMapVisual(t):T?.clearMapVisual())});n(()=>{t.dispose(),r.dispose()})}),t(()=>{let e=c();if(!e)return;let t=e.stores.map.on(`room:map2update`,({room:e,shard:t,data:n,source:r})=>{t===l.shard&&T?.setRoomMap2(e,n,r)});n(()=>t.dispose())}),t(()=>{let e=c();if(!e)return;let t=p()?._id,r=new Set(E()),i=e.stores.mapStats.on(`mapStats:room`,({room:e,stat:n})=>{F.set(e,n);let i=o(e),s=i?a(i.x,i.y)||h(i.x,i.y):!1,c=n.status===`out of borders`,u=!!(n.own&&n.own.user===t),d=!!(n.own&&n.own.user!==t),f=u?`own`:s||c||d?`other`:`none`;I.set(e,f),r.has(e)&&(T?.setRoomOwned(e,f),T?.setRoomSafeMode(e,!!n.safeMode)),T?.setRoomMineral(e,n.mineral,n.density);let p=n.badge?JSON.stringify(n.badge):``;L.get(e)!==p&&(L.set(e,p),T?.setRoomBadge(e,n.badge,n.own?.level)),A()===e&&l.onSelectedRoomChanged?.(z(e))});n(()=>i.dispose())}),(()=>{var e=S(),t=e.firstChild;return i(e=>x=e,t),e})()}export{T as MapViewer};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e}from"./rolldown-runtime-QTnfLwEv.js";var t=e({decompressGzip:()=>r,decompressZlib:()=>i});async function n(e,t){let n=e.slice(3),r=Uint8Array.from(atob(n),e=>e.charCodeAt(0)),i=new Blob([r]).stream().pipeThrough(new DecompressionStream(t)),a=await new Response(i).text();try{return JSON.parse(a)}catch{return a}}function r(e){return n(e,`gzip`)}function i(e){return n(e,`deflate`)}export{i as n,t as r,r as t};
|