@trioforge/crucible 0.2.0 → 0.3.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/maths/spline/package.json +4 -0
- package/out/internal/boot.luau +5 -0
- package/out/internal/network/claims.luau +1 -9
- package/out/internal/network/client-session.luau +3 -1
- package/out/internal/network/server-session.luau +3 -1
- package/out/maths/spline/curve.d.ts +35 -0
- package/out/maths/spline/curve.luau +1122 -0
- package/out/maths/spline/index.d.ts +2 -0
- package/out/maths/spline/init.luau +8 -0
- package/out/server/index.d.ts +1 -0
- package/out/server/init.luau +9 -1
- package/out/testing/index.d.ts +38 -0
- package/out/testing/init.luau +189 -0
- package/out/util/random/index.d.ts +24 -0
- package/out/util/random/init.luau +301 -0
- package/package.json +16 -1
- package/testing/package.json +4 -0
- package/transformer/index.js +50 -12
- package/util/random/package.json +4 -0
package/out/internal/boot.luau
CHANGED
|
@@ -34,6 +34,8 @@ local endInterval = TS.import(script, script.Parent, "reactive", "ownership").en
|
|
|
34
34
|
local _declarations = TS.import(script, script.Parent, "sync", "declarations")
|
|
35
35
|
local rollbackDeclarations = _declarations.rollbackDeclarations
|
|
36
36
|
local sealDeclarations = _declarations.sealDeclarations
|
|
37
|
+
local Logging = TS.import(script, script.Parent.Parent, "logging").Logging
|
|
38
|
+
local log = Logging:getLogger("Crucible.Boot")
|
|
37
39
|
--* @internal
|
|
38
40
|
local BOOT_CLASSES = { Subsystem, CrucibleBehaviour }
|
|
39
41
|
--* @internal
|
|
@@ -542,6 +544,9 @@ local function boot(side, options)
|
|
|
542
544
|
ignite(robloxPort(), side, options)
|
|
543
545
|
end)
|
|
544
546
|
if ok then
|
|
547
|
+
log:debug("Crucible booted on the {side}", {
|
|
548
|
+
side = side.name,
|
|
549
|
+
})
|
|
545
550
|
return nil
|
|
546
551
|
end
|
|
547
552
|
side.network:close()
|
|
@@ -52,15 +52,7 @@ local function claim(owner, field, target, callback)
|
|
|
52
52
|
if frozen then
|
|
53
53
|
error(`{label}: receive() after the network commit`)
|
|
54
54
|
end
|
|
55
|
-
local
|
|
56
|
-
if _result ~= nil then
|
|
57
|
-
_result = _result.side
|
|
58
|
-
end
|
|
59
|
-
local _condition = _result
|
|
60
|
-
if _condition == nil then
|
|
61
|
-
_condition = error(`{label}: receive() before the network session opened`)
|
|
62
|
-
end
|
|
63
|
-
local side = _condition
|
|
55
|
+
local side = (session or error(`{label}: receive() before the network session opened`)).side()
|
|
64
56
|
local _callback = callback
|
|
65
57
|
if not (type(_callback) == "function") then
|
|
66
58
|
error(`{label}: receive() needs a callback`)
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
export type CurveVector = Vector2 | Vector3;
|
|
2
|
+
export interface CurveFrame<V extends CurveVector> {
|
|
3
|
+
readonly point: V;
|
|
4
|
+
readonly tangent: V;
|
|
5
|
+
readonly normal: V;
|
|
6
|
+
}
|
|
7
|
+
export interface CurveProjection<V extends CurveVector> {
|
|
8
|
+
readonly parameter: number;
|
|
9
|
+
readonly point: V;
|
|
10
|
+
readonly distance: number;
|
|
11
|
+
readonly separation: number;
|
|
12
|
+
}
|
|
13
|
+
export interface CurveOptions<V extends CurveVector> {
|
|
14
|
+
readonly closed?: boolean;
|
|
15
|
+
readonly initialNormal?: V extends Vector3 ? Vector3 : never;
|
|
16
|
+
}
|
|
17
|
+
export interface CatmullRomOptions<V extends CurveVector> extends CurveOptions<V> {
|
|
18
|
+
readonly alpha?: number;
|
|
19
|
+
}
|
|
20
|
+
export interface Curve<V extends CurveVector> {
|
|
21
|
+
readonly pointAt: (parameter: number) => V;
|
|
22
|
+
readonly tangentAt: (parameter: number) => V | undefined;
|
|
23
|
+
readonly frameAt: (parameter: number) => CurveFrame<V> | undefined;
|
|
24
|
+
readonly length: () => number;
|
|
25
|
+
readonly parameterAtDistance: (distance: number) => number;
|
|
26
|
+
readonly distanceAtParameter: (parameter: number) => number;
|
|
27
|
+
readonly closest: (query: V) => CurveProjection<V>;
|
|
28
|
+
readonly prepare: () => void;
|
|
29
|
+
}
|
|
30
|
+
export declare function catmullRom(points: readonly Vector2[], options?: CatmullRomOptions<Vector2>): Curve<Vector2>;
|
|
31
|
+
export declare function catmullRom(points: readonly Vector3[], options?: CatmullRomOptions<Vector3>): Curve<Vector3>;
|
|
32
|
+
export declare function cubicBezier(points: readonly Vector2[], options?: CurveOptions<Vector2>): Curve<Vector2>;
|
|
33
|
+
export declare function cubicBezier(points: readonly Vector3[], options?: CurveOptions<Vector3>): Curve<Vector3>;
|
|
34
|
+
export declare function uniformBSpline(points: readonly Vector2[], options?: CurveOptions<Vector2>): Curve<Vector2>;
|
|
35
|
+
export declare function uniformBSpline(points: readonly Vector3[], options?: CurveOptions<Vector3>): Curve<Vector3>;
|