@rezless/vm 0.4.0 → 0.5.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/builtins/base64.d.ts.map +1 -1
- package/dist/builtins/base64.js +29 -2
- package/dist/builtins/base64.js.map +1 -1
- package/dist/builtins/chat.d.ts +7 -1
- package/dist/builtins/chat.d.ts.map +1 -1
- package/dist/builtins/chat.js +26 -29
- package/dist/builtins/chat.js.map +1 -1
- package/dist/builtins/dataserver.d.ts +2 -1
- package/dist/builtins/dataserver.d.ts.map +1 -1
- package/dist/builtins/dataserver.js +5 -4
- package/dist/builtins/dataserver.js.map +1 -1
- package/dist/builtins/debug.d.ts +4 -0
- package/dist/builtins/debug.d.ts.map +1 -0
- package/dist/builtins/debug.js +7 -0
- package/dist/builtins/debug.js.map +1 -0
- package/dist/builtins/http.d.ts +8 -1
- package/dist/builtins/http.d.ts.map +1 -1
- package/dist/builtins/http.js +87 -9
- package/dist/builtins/http.js.map +1 -1
- package/dist/builtins/identity.d.ts +2 -0
- package/dist/builtins/identity.d.ts.map +1 -1
- package/dist/builtins/identity.js +9 -1
- package/dist/builtins/identity.js.map +1 -1
- package/dist/builtins/index.d.ts.map +1 -1
- package/dist/builtins/index.js +29 -7
- package/dist/builtins/index.js.map +1 -1
- package/dist/builtins/inventory.d.ts +13 -2
- package/dist/builtins/inventory.d.ts.map +1 -1
- package/dist/builtins/inventory.js +82 -43
- package/dist/builtins/inventory.js.map +1 -1
- package/dist/builtins/json.d.ts.map +1 -1
- package/dist/builtins/json.js +11 -36
- package/dist/builtins/json.js.map +1 -1
- package/dist/builtins/link-info.d.ts +1 -1
- package/dist/builtins/link-info.d.ts.map +1 -1
- package/dist/builtins/link-info.js +2 -2
- package/dist/builtins/link-info.js.map +1 -1
- package/dist/builtins/linksetdata.d.ts.map +1 -1
- package/dist/builtins/linksetdata.js +298 -31
- package/dist/builtins/linksetdata.js.map +1 -1
- package/dist/builtins/listen.d.ts +3 -1
- package/dist/builtins/listen.d.ts.map +1 -1
- package/dist/builtins/listen.js +9 -1
- package/dist/builtins/listen.js.map +1 -1
- package/dist/builtins/lists.d.ts +21 -0
- package/dist/builtins/lists.d.ts.map +1 -1
- package/dist/builtins/lists.js +82 -38
- package/dist/builtins/lists.js.map +1 -1
- package/dist/builtins/math.d.ts +27 -4
- package/dist/builtins/math.d.ts.map +1 -1
- package/dist/builtins/math.js +118 -41
- package/dist/builtins/math.js.map +1 -1
- package/dist/builtins/permissions.d.ts +18 -0
- package/dist/builtins/permissions.d.ts.map +1 -0
- package/dist/builtins/permissions.js +17 -0
- package/dist/builtins/permissions.js.map +1 -0
- package/dist/builtins/prim-accessors.d.ts +1 -0
- package/dist/builtins/prim-accessors.d.ts.map +1 -1
- package/dist/builtins/prim-accessors.js +44 -42
- package/dist/builtins/prim-accessors.js.map +1 -1
- package/dist/builtins/prim-params.d.ts +1 -1
- package/dist/builtins/prim-params.d.ts.map +1 -1
- package/dist/builtins/prim-params.js +19 -11
- package/dist/builtins/prim-params.js.map +1 -1
- package/dist/builtins/strings.d.ts.map +1 -1
- package/dist/builtins/strings.js +37 -33
- package/dist/builtins/strings.js.map +1 -1
- package/dist/builtins/time.d.ts +2 -0
- package/dist/builtins/time.d.ts.map +1 -1
- package/dist/builtins/time.js +2 -0
- package/dist/builtins/time.js.map +1 -1
- package/dist/clock.d.ts +23 -9
- package/dist/clock.d.ts.map +1 -1
- package/dist/clock.js +40 -13
- package/dist/clock.js.map +1 -1
- package/dist/dispatch.d.ts.map +1 -1
- package/dist/dispatch.js +10 -3
- package/dist/dispatch.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/interpreter.js +2 -2
- package/dist/interpreter.js.map +1 -1
- package/dist/inventory.d.ts +2 -0
- package/dist/inventory.d.ts.map +1 -1
- package/dist/inventory.js +4 -0
- package/dist/inventory.js.map +1 -1
- package/dist/keys.d.ts +6 -0
- package/dist/keys.d.ts.map +1 -0
- package/dist/keys.js +20 -0
- package/dist/keys.js.map +1 -0
- package/dist/linkset.d.ts +28 -3
- package/dist/linkset.d.ts.map +1 -1
- package/dist/linkset.js +66 -7
- package/dist/linkset.js.map +1 -1
- package/dist/prim-params.d.ts +5 -0
- package/dist/prim-params.d.ts.map +1 -1
- package/dist/prim-params.js +187 -107
- package/dist/prim-params.js.map +1 -1
- package/dist/prim.d.ts +6 -1
- package/dist/prim.d.ts.map +1 -1
- package/dist/prim.js +23 -3
- package/dist/prim.js.map +1 -1
- package/dist/runtime.d.ts +11 -1
- package/dist/runtime.d.ts.map +1 -1
- package/dist/script.d.ts +27 -2
- package/dist/script.d.ts.map +1 -1
- package/dist/script.js +89 -27
- package/dist/script.js.map +1 -1
- package/dist/values/coerce.d.ts +11 -0
- package/dist/values/coerce.d.ts.map +1 -1
- package/dist/values/coerce.js +65 -38
- package/dist/values/coerce.js.map +1 -1
- package/dist/values/format.d.ts +24 -16
- package/dist/values/format.d.ts.map +1 -1
- package/dist/values/format.js +42 -25
- package/dist/values/format.js.map +1 -1
- package/dist/values/ops.d.ts +2 -1
- package/dist/values/ops.d.ts.map +1 -1
- package/dist/values/ops.js +13 -5
- package/dist/values/ops.js.map +1 -1
- package/dist/values/utf8.d.ts +3 -0
- package/dist/values/utf8.d.ts.map +1 -0
- package/dist/values/utf8.js +14 -0
- package/dist/values/utf8.js.map +1 -0
- package/dist/world.d.ts +29 -0
- package/dist/world.d.ts.map +1 -0
- package/dist/world.js +29 -0
- package/dist/world.js.map +1 -0
- package/package.json +2 -2
package/dist/values/format.js
CHANGED
|
@@ -1,47 +1,64 @@
|
|
|
1
1
|
import { isVector, isRotation } from './types.js';
|
|
2
|
+
import { listElementType } from './list-types.js';
|
|
2
3
|
/**
|
|
3
|
-
* Format a float the way LSL prints it
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* (string)
|
|
7
|
-
* (string)
|
|
8
|
-
* (string)1e30 → "1.000000000000000e+30" (very large/small fall back)
|
|
9
|
-
*
|
|
10
|
-
* For now we approximate with toFixed(6); switch-to-scientific cutoff lives
|
|
11
|
-
* in Phase 4 polish.
|
|
4
|
+
* Format a float the way LSL prints it: rounded to 7 significant digits,
|
|
5
|
+
* then written in fixed notation with `decimals` places, e.g.
|
|
6
|
+
* (string)1.5 → "1.500000"
|
|
7
|
+
* (string)123456789.0 → "123456800.000000"
|
|
8
|
+
* (string)1e30 → "1000000000000000000000000000000.000000"
|
|
12
9
|
*/
|
|
13
|
-
export function formatFloat(n) {
|
|
10
|
+
export function formatFloat(n, decimals = 6) {
|
|
11
|
+
if (Number.isNaN(n))
|
|
12
|
+
return 'NaN';
|
|
13
|
+
if (!Number.isFinite(n))
|
|
14
|
+
return n > 0 ? 'Infinity' : '-Infinity';
|
|
15
|
+
const [mantissa, exp] = n.toExponential(6).split('e');
|
|
16
|
+
if (Number(exp) < 21)
|
|
17
|
+
return Number(n.toPrecision(7)).toFixed(decimals);
|
|
18
|
+
const digits = mantissa.replace('.', '');
|
|
19
|
+
return `${digits}${'0'.repeat(Number(exp) - 6)}.${'0'.repeat(decimals)}`;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Format a float like C `%f`: the exact digits of the 32-bit value, as
|
|
23
|
+
* llList2CSV and llList2Json print it, e.g. 1e30 →
|
|
24
|
+
* "1000000015047466219876688855040.000000".
|
|
25
|
+
*/
|
|
26
|
+
export function formatFloatExact(n, decimals = 6) {
|
|
14
27
|
if (Number.isNaN(n))
|
|
15
28
|
return 'nan';
|
|
16
29
|
if (!Number.isFinite(n))
|
|
17
30
|
return n > 0 ? 'inf' : '-inf';
|
|
18
|
-
|
|
31
|
+
if (Math.abs(n) < 1e21)
|
|
32
|
+
return n.toFixed(decimals);
|
|
33
|
+
return `${BigInt(n)}.${'0'.repeat(decimals)}`;
|
|
19
34
|
}
|
|
20
|
-
export function formatVector(v) {
|
|
21
|
-
return `<${
|
|
35
|
+
export function formatVector(v, decimals = 5, fmt = formatFloat) {
|
|
36
|
+
return `<${fmt(v.x, decimals)}, ${fmt(v.y, decimals)}, ${fmt(v.z, decimals)}>`;
|
|
22
37
|
}
|
|
23
|
-
export function formatRotation(r) {
|
|
24
|
-
return `<${
|
|
38
|
+
export function formatRotation(r, decimals = 5, fmt = formatFloat) {
|
|
39
|
+
return `<${fmt(r.x, decimals)}, ${fmt(r.y, decimals)}, ${fmt(r.z, decimals)}, ${fmt(r.s, decimals)}>`;
|
|
25
40
|
}
|
|
26
|
-
/**
|
|
27
|
-
*
|
|
28
|
-
|
|
41
|
+
/**
|
|
42
|
+
* Format a list element the way `(string)list`, llList2String and
|
|
43
|
+
* llDumpList2String do (llList2CSV passes `formatFloatExact`): vectors and
|
|
44
|
+
* rotations get 6 decimals. Without a recorded type, a whole number reads as
|
|
45
|
+
* an integer.
|
|
46
|
+
*/
|
|
47
|
+
export function formatListElement(v, type, fmt = formatFloat) {
|
|
29
48
|
if (typeof v === 'number') {
|
|
30
|
-
|
|
31
|
-
// We can't tell from a raw JS number — assume float-ish if it has a fractional part.
|
|
32
|
-
return Number.isInteger(v) ? String(v | 0) : formatFloat(v);
|
|
49
|
+
return type !== 'float' && Number.isInteger(v) ? String(v | 0) : fmt(v, 6);
|
|
33
50
|
}
|
|
34
51
|
if (typeof v === 'string')
|
|
35
52
|
return v;
|
|
36
53
|
if (isVector(v))
|
|
37
|
-
return formatVector(v);
|
|
54
|
+
return formatVector(v, 6, fmt);
|
|
38
55
|
if (isRotation(v))
|
|
39
|
-
return formatRotation(v);
|
|
56
|
+
return formatRotation(v, 6, fmt);
|
|
40
57
|
if (Array.isArray(v))
|
|
41
|
-
return v
|
|
58
|
+
return formatList(v);
|
|
42
59
|
return String(v);
|
|
43
60
|
}
|
|
44
61
|
export function formatList(list) {
|
|
45
|
-
return list.map(formatListElement).join('');
|
|
62
|
+
return list.map((v, i) => formatListElement(v, listElementType(list, i))).join('');
|
|
46
63
|
}
|
|
47
64
|
//# sourceMappingURL=format.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/values/format.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAEjD
|
|
1
|
+
{"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/values/format.ts"],"names":[],"mappings":"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"}
|
package/dist/values/ops.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { EvalResult } from './types.js';
|
|
1
|
+
import type { EvalResult, Vector, Rotation } from './types.js';
|
|
2
2
|
import { coerce, stringify } from './coerce.js';
|
|
3
3
|
/**
|
|
4
4
|
* Implementations of LSL binary and unary operators with the language's
|
|
@@ -13,6 +13,7 @@ import { coerce, stringify } from './coerce.js';
|
|
|
13
13
|
export declare function applyUnary(op: '-' | '!' | '~', arg: EvalResult): EvalResult;
|
|
14
14
|
export declare function truthy(r: EvalResult): boolean;
|
|
15
15
|
export declare function applyBinary(op: '+' | '-' | '*' | '/' | '%' | '<<' | '>>' | '<' | '>' | '<=' | '>=' | '==' | '!=' | '&' | '^' | '|' | '&&' | '||', left: EvalResult, right: EvalResult): EvalResult;
|
|
16
|
+
export declare function rotateVector(v: Vector, q: Rotation): Vector;
|
|
16
17
|
/** For interpreter compound-assignment helpers. */
|
|
17
18
|
export declare function reduceCompound(op: '+=' | '-=' | '*=' | '/=' | '%=', left: EvalResult, right: EvalResult): EvalResult;
|
|
18
19
|
export { coerce, stringify };
|
package/dist/values/ops.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ops.d.ts","sourceRoot":"","sources":["../../src/values/ops.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"ops.d.ts","sourceRoot":"","sources":["../../src/values/ops.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAqB,MAAM,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAEjF,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAG/C;;;;;;;;;GASG;AAEH,wBAAgB,UAAU,CAAC,EAAE,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,UAAU,GAAG,UAAU,CAyB3E;AAED,wBAAgB,MAAM,CAAC,CAAC,EAAE,UAAU,GAAG,OAAO,CAsB7C;AAeD,wBAAgB,WAAW,CACzB,EAAE,EACE,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,IAAI,GACJ,IAAI,GACJ,GAAG,GACH,GAAG,GACH,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,GAAG,GACH,GAAG,GACH,GAAG,GACH,IAAI,GACJ,IAAI,EACR,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,UAAU,GAChB,UAAU,CAwCZ;AAkQD,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,GAAG,MAAM,CAK3D;AAED,mDAAmD;AACnD,wBAAgB,cAAc,CAC5B,EAAE,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,EACpC,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,UAAU,GAChB,UAAU,CAKZ;AAED,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA"}
|
package/dist/values/ops.js
CHANGED
|
@@ -105,9 +105,15 @@ export function applyBinary(op, left, right) {
|
|
|
105
105
|
case '==':
|
|
106
106
|
return { type: 'integer', value: lslEquals(left, right) ? 1 : 0 };
|
|
107
107
|
case '!=':
|
|
108
|
+
if (left.type === 'list' && right.type === 'list') {
|
|
109
|
+
return { type: 'integer', value: toInt32(listLength(left) - listLength(right)) };
|
|
110
|
+
}
|
|
108
111
|
return { type: 'integer', value: lslEquals(left, right) ? 0 : 1 };
|
|
109
112
|
}
|
|
110
113
|
}
|
|
114
|
+
function listLength(r) {
|
|
115
|
+
return r.value.length;
|
|
116
|
+
}
|
|
111
117
|
function intBinary(left, right, fn) {
|
|
112
118
|
const a = coerce(left, 'integer').value;
|
|
113
119
|
const b = coerce(right, 'integer').value;
|
|
@@ -165,8 +171,7 @@ function lslEquals(a, b) {
|
|
|
165
171
|
}
|
|
166
172
|
if (a.type === 'list' && b.type === 'list') {
|
|
167
173
|
// LSL: list == list compares LENGTHS, not contents.
|
|
168
|
-
return (a
|
|
169
|
-
b.value.length);
|
|
174
|
+
return listLength(a) === listLength(b);
|
|
170
175
|
}
|
|
171
176
|
return false;
|
|
172
177
|
}
|
|
@@ -318,17 +323,20 @@ function opMod(a, b) {
|
|
|
318
323
|
throw new Error(`cannot modulo ${a.type} and ${b.type}`);
|
|
319
324
|
}
|
|
320
325
|
// ---- Quaternion math ----
|
|
326
|
+
/** LSL `a * b`: rotate by a, then by b. */
|
|
321
327
|
function mulRotation(a, b) {
|
|
322
|
-
|
|
328
|
+
return hamilton(b, a);
|
|
329
|
+
}
|
|
330
|
+
function hamilton(a, b) {
|
|
323
331
|
return rot(a.s * b.x + a.x * b.s + a.y * b.z - a.z * b.y, a.s * b.y - a.x * b.z + a.y * b.s + a.z * b.x, a.s * b.z + a.x * b.y - a.y * b.x + a.z * b.s, a.s * b.s - a.x * b.x - a.y * b.y - a.z * b.z);
|
|
324
332
|
}
|
|
325
333
|
function conjugate(q) {
|
|
326
334
|
return rot(-q.x, -q.y, -q.z, q.s);
|
|
327
335
|
}
|
|
328
|
-
function rotateVector(v, q) {
|
|
336
|
+
export function rotateVector(v, q) {
|
|
329
337
|
// v' = q * v * q⁻¹
|
|
330
338
|
const qv = rot(v.x, v.y, v.z, 0);
|
|
331
|
-
const r =
|
|
339
|
+
const r = hamilton(hamilton(q, qv), conjugate(q));
|
|
332
340
|
return vec(r.x, r.y, r.z);
|
|
333
341
|
}
|
|
334
342
|
/** For interpreter compound-assignment helpers. */
|
package/dist/values/ops.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ops.js","sourceRoot":"","sources":["../../src/values/ops.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ops.js","sourceRoot":"","sources":["../../src/values/ops.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utf8.d.ts","sourceRoot":"","sources":["../../src/values/utf8.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAU9D"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** Cut `text` to at most `max` UTF-8 bytes without splitting a character. */
|
|
2
|
+
export function truncateUtf8(text, max) {
|
|
3
|
+
let bytes = 0;
|
|
4
|
+
let end = 0;
|
|
5
|
+
for (const ch of text) {
|
|
6
|
+
const cp = ch.codePointAt(0);
|
|
7
|
+
bytes += cp < 0x80 ? 1 : cp < 0x800 ? 2 : cp < 0x10000 ? 3 : 4;
|
|
8
|
+
if (bytes > max)
|
|
9
|
+
break;
|
|
10
|
+
end += ch.length;
|
|
11
|
+
}
|
|
12
|
+
return text.slice(0, end);
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=utf8.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utf8.js","sourceRoot":"","sources":["../../src/values/utf8.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,GAAW;IACpD,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,IAAI,GAAG,GAAG,CAAC,CAAA;IACX,KAAK,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;QACtB,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAE,CAAA;QAC7B,KAAK,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9D,IAAI,KAAK,GAAG,GAAG;YAAE,MAAK;QACtB,GAAG,IAAI,EAAE,CAAC,MAAM,CAAA;IAClB,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;AAC3B,CAAC"}
|
package/dist/world.d.ts
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { LinksetClock } from './clock.js';
|
|
2
|
+
import type { Linkset } from './linkset.js';
|
|
3
|
+
import type { Script } from './script.js';
|
|
4
|
+
export interface WorldOptions {
|
|
5
|
+
/** Unix time in seconds at virtual time 0, read by llGetUnixTime and friends. Default 0. */
|
|
6
|
+
readonly startUnixTime?: number;
|
|
7
|
+
}
|
|
8
|
+
/** Global position of a region's south-west corner, in metres. Regions are 256 m squares. */
|
|
9
|
+
export interface RegionCorner {
|
|
10
|
+
readonly x: number;
|
|
11
|
+
readonly y: number;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Named regions holding several linksets. Every linkset in a world shares the
|
|
15
|
+
* world's clock, and chat reaches prims in other linksets by the in-world
|
|
16
|
+
* range rules. A linkset joins by passing `world` and `region` to its
|
|
17
|
+
* constructor.
|
|
18
|
+
*/
|
|
19
|
+
export declare class World {
|
|
20
|
+
readonly clock: LinksetClock;
|
|
21
|
+
readonly linksets: Linkset[];
|
|
22
|
+
private readonly regions;
|
|
23
|
+
constructor(opts?: WorldOptions);
|
|
24
|
+
addRegion(name: string, corner: RegionCorner): void;
|
|
25
|
+
/** The corner of region `name`; throws for a region this world does not have. */
|
|
26
|
+
corner(name: string | undefined): RegionCorner;
|
|
27
|
+
allScripts(): Script[];
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=world.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"world.d.ts","sourceRoot":"","sources":["../src/world.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,MAAM,WAAW,YAAY;IAC3B,4FAA4F;IAC5F,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAChC;AAED,6FAA6F;AAC7F,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;CACnB;AAED;;;;;GAKG;AACH,qBAAa,KAAK;IAChB,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAA;IAC5B,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAK;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAE1D,YAAY,IAAI,GAAE,YAAiB,EAElC;IAED,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI,CAElD;IAED,iFAAiF;IACjF,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,YAAY,CAI7C;IAED,UAAU,IAAI,MAAM,EAAE,CAErB;CACF"}
|
package/dist/world.js
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { LinksetClock } from './clock.js';
|
|
2
|
+
/**
|
|
3
|
+
* Named regions holding several linksets. Every linkset in a world shares the
|
|
4
|
+
* world's clock, and chat reaches prims in other linksets by the in-world
|
|
5
|
+
* range rules. A linkset joins by passing `world` and `region` to its
|
|
6
|
+
* constructor.
|
|
7
|
+
*/
|
|
8
|
+
export class World {
|
|
9
|
+
clock;
|
|
10
|
+
linksets = [];
|
|
11
|
+
regions = new Map();
|
|
12
|
+
constructor(opts = {}) {
|
|
13
|
+
this.clock = new LinksetClock(opts.startUnixTime);
|
|
14
|
+
}
|
|
15
|
+
addRegion(name, corner) {
|
|
16
|
+
this.regions.set(name, corner);
|
|
17
|
+
}
|
|
18
|
+
/** The corner of region `name`; throws for a region this world does not have. */
|
|
19
|
+
corner(name) {
|
|
20
|
+
const corner = name === undefined ? undefined : this.regions.get(name);
|
|
21
|
+
if (!corner)
|
|
22
|
+
throw new Error(`World: no region named '${name}'`);
|
|
23
|
+
return corner;
|
|
24
|
+
}
|
|
25
|
+
allScripts() {
|
|
26
|
+
return this.linksets.flatMap((l) => l.allScripts());
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=world.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"world.js","sourceRoot":"","sources":["../src/world.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAezC;;;;;GAKG;AACH,MAAM,OAAO,KAAK;IACP,KAAK,CAAc;IACnB,QAAQ,GAAc,EAAE,CAAA;IAChB,OAAO,GAAG,IAAI,GAAG,EAAwB,CAAA;IAE1D,YAAY,IAAI,GAAiB,EAAE;QACjC,IAAI,CAAC,KAAK,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IACnD,CAAC;IAED,SAAS,CAAC,IAAY,EAAE,MAAoB;QAC1C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAChC,CAAC;IAED,iFAAiF;IACjF,MAAM,CAAC,IAAwB;QAC7B,MAAM,MAAM,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACtE,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,GAAG,CAAC,CAAA;QAChE,OAAO,MAAM,CAAA;IACf,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAA;IACrD,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rezless/vm",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"description": "Tree-walking interpreter and virtual clock for the Linden Scripting Language (LSL).",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "i-doll",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"access": "public"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@rezless/parser": "0.
|
|
43
|
+
"@rezless/parser": "0.5.0"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"typescript": "^7.0.2"
|