tscratch 0.7.0 → 0.7.2
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/client/index.cjs +1 -1
- package/dist/client/index.cjs.map +1 -1
- package/dist/client/index.d.cts +100 -18
- package/dist/client/index.d.ts +100 -18
- package/dist/client/index.js +1 -1
- package/dist/client/index.js.map +1 -1
- package/dist/server/index.cjs +1 -1
- package/dist/server/index.cjs.map +1 -1
- package/dist/server/index.d.cts +5 -5
- package/dist/server/index.d.ts +5 -5
- package/dist/server/index.js +1 -1
- package/dist/server/index.js.map +1 -1
- package/package.json +1 -1
package/dist/client/index.d.cts
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
type Vec2<T = number> = [T, T];
|
|
2
|
+
type Vec3<T = number> = [T, T, T];
|
|
3
|
+
type Vec4<T = number> = [T, T, T, T];
|
|
4
|
+
|
|
1
5
|
interface BoundingBox {
|
|
2
6
|
x: number;
|
|
3
7
|
y: number;
|
|
@@ -9,6 +13,7 @@ interface SpriteOptions {
|
|
|
9
13
|
y?: number;
|
|
10
14
|
dir?: number;
|
|
11
15
|
size?: number;
|
|
16
|
+
pivot?: Vec2;
|
|
12
17
|
scene?: string;
|
|
13
18
|
hidden?: boolean;
|
|
14
19
|
layer?: number;
|
|
@@ -18,6 +23,7 @@ declare abstract class Sprite {
|
|
|
18
23
|
y: number;
|
|
19
24
|
dir: number;
|
|
20
25
|
size: number;
|
|
26
|
+
pivot: Vec2;
|
|
21
27
|
scene: string;
|
|
22
28
|
hidden: boolean;
|
|
23
29
|
layer: number;
|
|
@@ -29,7 +35,7 @@ declare abstract class Sprite {
|
|
|
29
35
|
private static collisionCtx;
|
|
30
36
|
abstract getBoundingBox(): BoundingBox;
|
|
31
37
|
abstract getPath(): Path2D;
|
|
32
|
-
abstract draw(stamping?:
|
|
38
|
+
abstract draw(stamping?: true): void;
|
|
33
39
|
protected abstract create(options?: SpriteOptions): this;
|
|
34
40
|
protected refresh(): void;
|
|
35
41
|
protected invalidatePath(): void;
|
|
@@ -50,6 +56,7 @@ declare abstract class Sprite {
|
|
|
50
56
|
goTo(x: number, y: number): void;
|
|
51
57
|
changeX(dX: number): void;
|
|
52
58
|
changeY(dY: number): void;
|
|
59
|
+
setPivot(x: number, y: number): void;
|
|
53
60
|
show(): void;
|
|
54
61
|
hide(): void;
|
|
55
62
|
setSize(size: number): void;
|
|
@@ -58,10 +65,6 @@ declare abstract class Sprite {
|
|
|
58
65
|
changeLayer(dL: number): void;
|
|
59
66
|
}
|
|
60
67
|
|
|
61
|
-
type Vec2<T = number> = [T, T];
|
|
62
|
-
type Vec3<T = number> = [T, T, T];
|
|
63
|
-
type Vec4<T = number> = [T, T, T, T];
|
|
64
|
-
|
|
65
68
|
type GameLoop = (() => void) | (() => Promise<void>);
|
|
66
69
|
type SceneMap = Map<string, {
|
|
67
70
|
sprites: Sprite[];
|
|
@@ -86,13 +89,13 @@ declare class Engine {
|
|
|
86
89
|
sceneMap: SceneMap;
|
|
87
90
|
private variableMap;
|
|
88
91
|
static init(): Engine;
|
|
89
|
-
|
|
92
|
+
setScene(scene: string): void;
|
|
90
93
|
setLoop(scene: string, loop: GameLoop): void;
|
|
91
94
|
pauseLoop(): void;
|
|
92
95
|
resumeLoop(): void;
|
|
93
96
|
addSprite(sprite: Sprite): void;
|
|
94
97
|
removeSprite(sprite: Sprite): void;
|
|
95
|
-
|
|
98
|
+
setMaxFPS(maxFPS: number): Promise<void>;
|
|
96
99
|
refresh(): void;
|
|
97
100
|
wait(ms: number): Promise<void>;
|
|
98
101
|
waitUntil(conditionGetter: () => boolean): Promise<void>;
|
|
@@ -154,7 +157,7 @@ declare class Rectangle extends Sprite {
|
|
|
154
157
|
outlineWidth: number;
|
|
155
158
|
getBoundingBox(): BoundingBox;
|
|
156
159
|
getPath(): Path2D;
|
|
157
|
-
draw(stamping?:
|
|
160
|
+
draw(stamping?: true): void;
|
|
158
161
|
create(options?: RectangleOptions): this;
|
|
159
162
|
protected getCreateOptions(): {
|
|
160
163
|
width: number;
|
|
@@ -166,6 +169,7 @@ declare class Rectangle extends Sprite {
|
|
|
166
169
|
y?: number;
|
|
167
170
|
dir?: number;
|
|
168
171
|
size?: number;
|
|
172
|
+
pivot?: Vec2;
|
|
169
173
|
scene?: string;
|
|
170
174
|
hidden?: boolean;
|
|
171
175
|
layer?: number;
|
|
@@ -191,7 +195,7 @@ declare class Square extends Sprite {
|
|
|
191
195
|
outlineWidth: number;
|
|
192
196
|
getBoundingBox(): BoundingBox;
|
|
193
197
|
getPath(): Path2D;
|
|
194
|
-
draw(stamping?:
|
|
198
|
+
draw(stamping?: true): void;
|
|
195
199
|
create(options?: SquareOptions): this;
|
|
196
200
|
protected getCreateOptions(): {
|
|
197
201
|
sideLength: number;
|
|
@@ -202,6 +206,7 @@ declare class Square extends Sprite {
|
|
|
202
206
|
y?: number;
|
|
203
207
|
dir?: number;
|
|
204
208
|
size?: number;
|
|
209
|
+
pivot?: Vec2;
|
|
205
210
|
scene?: string;
|
|
206
211
|
hidden?: boolean;
|
|
207
212
|
layer?: number;
|
|
@@ -228,7 +233,7 @@ declare class Oval extends Sprite {
|
|
|
228
233
|
outlineWidth: number;
|
|
229
234
|
getBoundingBox(): BoundingBox;
|
|
230
235
|
getPath(): Path2D;
|
|
231
|
-
draw(stamping?:
|
|
236
|
+
draw(stamping?: true): void;
|
|
232
237
|
create(options?: OvalOptions): this;
|
|
233
238
|
protected getCreateOptions(): {
|
|
234
239
|
radX: number;
|
|
@@ -240,6 +245,7 @@ declare class Oval extends Sprite {
|
|
|
240
245
|
y?: number;
|
|
241
246
|
dir?: number;
|
|
242
247
|
size?: number;
|
|
248
|
+
pivot?: Vec2;
|
|
243
249
|
scene?: string;
|
|
244
250
|
hidden?: boolean;
|
|
245
251
|
layer?: number;
|
|
@@ -265,7 +271,7 @@ declare class Circle extends Sprite {
|
|
|
265
271
|
outlineWidth: number;
|
|
266
272
|
getBoundingBox(): BoundingBox;
|
|
267
273
|
getPath(): Path2D;
|
|
268
|
-
draw(stamping?:
|
|
274
|
+
draw(stamping?: true): void;
|
|
269
275
|
create(options?: CircleOptions): this;
|
|
270
276
|
protected getCreateOptions(): {
|
|
271
277
|
radius: number;
|
|
@@ -276,6 +282,7 @@ declare class Circle extends Sprite {
|
|
|
276
282
|
y?: number;
|
|
277
283
|
dir?: number;
|
|
278
284
|
size?: number;
|
|
285
|
+
pivot?: Vec2;
|
|
279
286
|
scene?: string;
|
|
280
287
|
hidden?: boolean;
|
|
281
288
|
layer?: number;
|
|
@@ -302,7 +309,7 @@ declare class Arc extends Sprite {
|
|
|
302
309
|
outlineWidth: number;
|
|
303
310
|
getBoundingBox(): BoundingBox;
|
|
304
311
|
getPath(): Path2D;
|
|
305
|
-
draw(stamping?:
|
|
312
|
+
draw(stamping?: true): void;
|
|
306
313
|
create(options?: ArcOptions): this;
|
|
307
314
|
protected getCreateOptions(): {
|
|
308
315
|
radius: number;
|
|
@@ -314,6 +321,7 @@ declare class Arc extends Sprite {
|
|
|
314
321
|
y?: number;
|
|
315
322
|
dir?: number;
|
|
316
323
|
size?: number;
|
|
324
|
+
pivot?: Vec2;
|
|
317
325
|
scene?: string;
|
|
318
326
|
hidden?: boolean;
|
|
319
327
|
layer?: number;
|
|
@@ -341,7 +349,7 @@ declare class RegularPolygon extends Sprite {
|
|
|
341
349
|
outlineWidth: number;
|
|
342
350
|
getBoundingBox(): BoundingBox;
|
|
343
351
|
getPath(): Path2D;
|
|
344
|
-
draw(stamping?:
|
|
352
|
+
draw(stamping?: true): void;
|
|
345
353
|
create(options?: RegularPolygonOptions): this;
|
|
346
354
|
protected getCreateOptions(): {
|
|
347
355
|
sides: number;
|
|
@@ -353,6 +361,7 @@ declare class RegularPolygon extends Sprite {
|
|
|
353
361
|
y?: number;
|
|
354
362
|
dir?: number;
|
|
355
363
|
size?: number;
|
|
364
|
+
pivot?: Vec2;
|
|
356
365
|
scene?: string;
|
|
357
366
|
hidden?: boolean;
|
|
358
367
|
layer?: number;
|
|
@@ -378,7 +387,7 @@ declare class CustomPolygon extends Sprite {
|
|
|
378
387
|
outlineWidth: number;
|
|
379
388
|
getBoundingBox(): BoundingBox;
|
|
380
389
|
getPath(): Path2D;
|
|
381
|
-
draw(stamping?:
|
|
390
|
+
draw(stamping?: true): void;
|
|
382
391
|
create(options?: CustomPolygonOptions): this;
|
|
383
392
|
protected getCreateOptions(): {
|
|
384
393
|
vertices: Vec2[];
|
|
@@ -389,6 +398,7 @@ declare class CustomPolygon extends Sprite {
|
|
|
389
398
|
y?: number;
|
|
390
399
|
dir?: number;
|
|
391
400
|
size?: number;
|
|
401
|
+
pivot?: Vec2;
|
|
392
402
|
scene?: string;
|
|
393
403
|
hidden?: boolean;
|
|
394
404
|
layer?: number;
|
|
@@ -421,6 +431,7 @@ declare class Pen extends Sprite {
|
|
|
421
431
|
y?: number;
|
|
422
432
|
dir?: number;
|
|
423
433
|
size?: number;
|
|
434
|
+
pivot?: Vec2;
|
|
424
435
|
scene?: string;
|
|
425
436
|
hidden?: boolean;
|
|
426
437
|
layer?: number;
|
|
@@ -430,6 +441,7 @@ declare class Pen extends Sprite {
|
|
|
430
441
|
stamp(sprite: Sprite): void;
|
|
431
442
|
eraseAll(): void;
|
|
432
443
|
dot(): void;
|
|
444
|
+
drawSprite(sprite: Sprite): void;
|
|
433
445
|
private drawLine;
|
|
434
446
|
move(steps: number): void;
|
|
435
447
|
setX(x: number): void;
|
|
@@ -460,7 +472,7 @@ declare class Text extends Sprite {
|
|
|
460
472
|
private font;
|
|
461
473
|
getBoundingBox(): BoundingBox;
|
|
462
474
|
getPath(): Path2D;
|
|
463
|
-
draw(stamping?:
|
|
475
|
+
draw(stamping?: true): void;
|
|
464
476
|
create(options?: TextOptions): this;
|
|
465
477
|
protected getCreateOptions(): {
|
|
466
478
|
content: string | number;
|
|
@@ -505,7 +517,7 @@ declare class Button extends Sprite {
|
|
|
505
517
|
outlineWidth: number;
|
|
506
518
|
getBoundingBox(): BoundingBox;
|
|
507
519
|
getPath(): Path2D;
|
|
508
|
-
draw(stamping?:
|
|
520
|
+
draw(stamping?: true): void;
|
|
509
521
|
create(options?: ButtonOptions): this;
|
|
510
522
|
protected getCreateOptions(): {
|
|
511
523
|
content: string | number;
|
|
@@ -521,6 +533,7 @@ declare class Button extends Sprite {
|
|
|
521
533
|
y?: number;
|
|
522
534
|
dir?: number;
|
|
523
535
|
size?: number;
|
|
536
|
+
pivot?: Vec2;
|
|
524
537
|
scene?: string;
|
|
525
538
|
hidden?: boolean;
|
|
526
539
|
layer?: number;
|
|
@@ -556,10 +569,11 @@ declare class ImageSprite extends Sprite {
|
|
|
556
569
|
height: number;
|
|
557
570
|
outlineColor: string;
|
|
558
571
|
outlineWidth: number;
|
|
572
|
+
private imgBitmap;
|
|
559
573
|
protected img: HTMLImageElement;
|
|
560
574
|
getBoundingBox(): BoundingBox;
|
|
561
575
|
getPath(): Path2D;
|
|
562
|
-
draw(stamping?:
|
|
576
|
+
draw(stamping?: true): void;
|
|
563
577
|
create(options?: ImageSpriteOptions): this;
|
|
564
578
|
protected getCreateOptions(): {
|
|
565
579
|
costumes: string[];
|
|
@@ -572,6 +586,7 @@ declare class ImageSprite extends Sprite {
|
|
|
572
586
|
y?: number;
|
|
573
587
|
dir?: number;
|
|
574
588
|
size?: number;
|
|
589
|
+
pivot?: Vec2;
|
|
575
590
|
scene?: string;
|
|
576
591
|
hidden?: boolean;
|
|
577
592
|
layer?: number;
|
|
@@ -606,6 +621,65 @@ declare class RigidCircle extends Circle implements RigidBodyOptions {
|
|
|
606
621
|
constructor(options?: RigidCircleOptions);
|
|
607
622
|
}
|
|
608
623
|
|
|
624
|
+
interface Object3DOptions {
|
|
625
|
+
vertices: Vec3[];
|
|
626
|
+
faces: [number, number, ...number[]][];
|
|
627
|
+
x?: number;
|
|
628
|
+
y?: number;
|
|
629
|
+
z?: number;
|
|
630
|
+
}
|
|
631
|
+
declare class Object3D {
|
|
632
|
+
x: number;
|
|
633
|
+
y: number;
|
|
634
|
+
z: number;
|
|
635
|
+
rotX: number;
|
|
636
|
+
rotY: number;
|
|
637
|
+
rotZ: number;
|
|
638
|
+
vertices: Vec3[];
|
|
639
|
+
faces: [number, number, ...number[]][];
|
|
640
|
+
constructor(options: Object3DOptions);
|
|
641
|
+
rotateX(deg: number): void;
|
|
642
|
+
rotateY(deg: number): void;
|
|
643
|
+
rotateZ(deg: number): void;
|
|
644
|
+
pointX(deg: number): void;
|
|
645
|
+
pointY(deg: number): void;
|
|
646
|
+
pointZ(deg: number): void;
|
|
647
|
+
}
|
|
648
|
+
|
|
649
|
+
interface WireframeRenderer3DOptions extends PenOptions {
|
|
650
|
+
objects: Object3D[];
|
|
651
|
+
}
|
|
652
|
+
declare class WireframeRenderer3D extends Pen {
|
|
653
|
+
FOV: number;
|
|
654
|
+
ASPECT: number;
|
|
655
|
+
Z_NEAR: number;
|
|
656
|
+
SPEED: number;
|
|
657
|
+
SENSITIVITY: number;
|
|
658
|
+
camX: number;
|
|
659
|
+
camY: number;
|
|
660
|
+
camZ: number;
|
|
661
|
+
camDirX: number;
|
|
662
|
+
camDirY: number;
|
|
663
|
+
camDirZ: number;
|
|
664
|
+
objects: Object3D[];
|
|
665
|
+
constructor(options: WireframeRenderer3DOptions);
|
|
666
|
+
registerControls(): void;
|
|
667
|
+
private project;
|
|
668
|
+
update(): void;
|
|
669
|
+
}
|
|
670
|
+
|
|
671
|
+
declare const cubeVertices: Vec3[];
|
|
672
|
+
|
|
673
|
+
declare const cubeFaces: [number, number, ...number[]][];
|
|
674
|
+
|
|
675
|
+
declare const tetrahedronVertices: Vec3[];
|
|
676
|
+
|
|
677
|
+
declare const tetrahedronFaces: [number, number, ...number[]][];
|
|
678
|
+
|
|
679
|
+
declare const octahedronVerticesVertices: Vec3[];
|
|
680
|
+
|
|
681
|
+
declare const octahedronFaces: [number, number, ...number[]][];
|
|
682
|
+
|
|
609
683
|
type Mat2<T = number> = [
|
|
610
684
|
[
|
|
611
685
|
T,
|
|
@@ -677,6 +751,14 @@ declare const TScratch: {
|
|
|
677
751
|
Watermark: typeof Watermark;
|
|
678
752
|
ImageSprite: typeof ImageSprite;
|
|
679
753
|
RigidCircle: typeof RigidCircle;
|
|
754
|
+
WireframeRenderer3D: typeof WireframeRenderer3D;
|
|
755
|
+
Object3D: typeof Object3D;
|
|
756
|
+
cubeVertices: Vec3[];
|
|
757
|
+
cubeFaces: [number, number, ...number[]][];
|
|
758
|
+
tetrahedronVertices: Vec3[];
|
|
759
|
+
tetrahedronFaces: [number, number, ...number[]][];
|
|
760
|
+
octahedronVertices: Vec3[];
|
|
761
|
+
octahedronFaces: [number, number, ...number[]][];
|
|
680
762
|
scale: number;
|
|
681
763
|
aspectRatio: number;
|
|
682
764
|
setScale: typeof setScale;
|
|
@@ -685,4 +767,4 @@ declare const TScratch: {
|
|
|
685
767
|
ctx: CanvasRenderingContext2D;
|
|
686
768
|
};
|
|
687
769
|
|
|
688
|
-
export { Arc, type ArcOptions, Button, type ButtonOptions, Circle, type CircleOptions, CustomPolygon, type CustomPolygonOptions, Engine, ImageSprite, type ImageSpriteOptions, type Mat2, type Mat3, type Mat4, Multiplayer, Oval, type OvalOptions, Pen, type PenOptions, Rectangle, type RectangleOptions, RegularPolygon, type RegularPolygonOptions, type RigidBodyOptions, RigidCircle, type RigidCircleOptions, Sprite, type SpriteOptions, Square, type SquareOptions, Text, type TextOptions, type Vec2, type Vec3, type Vec4, Watermark, type TextOptions as WatermarkOptions, aspectRatio, canvas, ctx, TScratch as default, scale, setAspectRatio, setScale };
|
|
770
|
+
export { Arc, type ArcOptions, Button, type ButtonOptions, Circle, type CircleOptions, CustomPolygon, type CustomPolygonOptions, Engine, ImageSprite, type ImageSpriteOptions, type Mat2, type Mat3, type Mat4, Multiplayer, Object3D, type Object3DOptions, Oval, type OvalOptions, Pen, type PenOptions, Rectangle, type RectangleOptions, RegularPolygon, type RegularPolygonOptions, type RigidBodyOptions, RigidCircle, type RigidCircleOptions, Sprite, type SpriteOptions, Square, type SquareOptions, Text, type TextOptions, type Vec2, type Vec3, type Vec4, Watermark, type TextOptions as WatermarkOptions, WireframeRenderer3D, type WireframeRenderer3DOptions, aspectRatio, canvas, ctx, cubeFaces, cubeVertices, TScratch as default, octahedronFaces, octahedronVerticesVertices as octahedronVertices, scale, setAspectRatio, setScale, tetrahedronFaces, tetrahedronVertices };
|
package/dist/client/index.d.ts
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
type Vec2<T = number> = [T, T];
|
|
2
|
+
type Vec3<T = number> = [T, T, T];
|
|
3
|
+
type Vec4<T = number> = [T, T, T, T];
|
|
4
|
+
|
|
1
5
|
interface BoundingBox {
|
|
2
6
|
x: number;
|
|
3
7
|
y: number;
|
|
@@ -9,6 +13,7 @@ interface SpriteOptions {
|
|
|
9
13
|
y?: number;
|
|
10
14
|
dir?: number;
|
|
11
15
|
size?: number;
|
|
16
|
+
pivot?: Vec2;
|
|
12
17
|
scene?: string;
|
|
13
18
|
hidden?: boolean;
|
|
14
19
|
layer?: number;
|
|
@@ -18,6 +23,7 @@ declare abstract class Sprite {
|
|
|
18
23
|
y: number;
|
|
19
24
|
dir: number;
|
|
20
25
|
size: number;
|
|
26
|
+
pivot: Vec2;
|
|
21
27
|
scene: string;
|
|
22
28
|
hidden: boolean;
|
|
23
29
|
layer: number;
|
|
@@ -29,7 +35,7 @@ declare abstract class Sprite {
|
|
|
29
35
|
private static collisionCtx;
|
|
30
36
|
abstract getBoundingBox(): BoundingBox;
|
|
31
37
|
abstract getPath(): Path2D;
|
|
32
|
-
abstract draw(stamping?:
|
|
38
|
+
abstract draw(stamping?: true): void;
|
|
33
39
|
protected abstract create(options?: SpriteOptions): this;
|
|
34
40
|
protected refresh(): void;
|
|
35
41
|
protected invalidatePath(): void;
|
|
@@ -50,6 +56,7 @@ declare abstract class Sprite {
|
|
|
50
56
|
goTo(x: number, y: number): void;
|
|
51
57
|
changeX(dX: number): void;
|
|
52
58
|
changeY(dY: number): void;
|
|
59
|
+
setPivot(x: number, y: number): void;
|
|
53
60
|
show(): void;
|
|
54
61
|
hide(): void;
|
|
55
62
|
setSize(size: number): void;
|
|
@@ -58,10 +65,6 @@ declare abstract class Sprite {
|
|
|
58
65
|
changeLayer(dL: number): void;
|
|
59
66
|
}
|
|
60
67
|
|
|
61
|
-
type Vec2<T = number> = [T, T];
|
|
62
|
-
type Vec3<T = number> = [T, T, T];
|
|
63
|
-
type Vec4<T = number> = [T, T, T, T];
|
|
64
|
-
|
|
65
68
|
type GameLoop = (() => void) | (() => Promise<void>);
|
|
66
69
|
type SceneMap = Map<string, {
|
|
67
70
|
sprites: Sprite[];
|
|
@@ -86,13 +89,13 @@ declare class Engine {
|
|
|
86
89
|
sceneMap: SceneMap;
|
|
87
90
|
private variableMap;
|
|
88
91
|
static init(): Engine;
|
|
89
|
-
|
|
92
|
+
setScene(scene: string): void;
|
|
90
93
|
setLoop(scene: string, loop: GameLoop): void;
|
|
91
94
|
pauseLoop(): void;
|
|
92
95
|
resumeLoop(): void;
|
|
93
96
|
addSprite(sprite: Sprite): void;
|
|
94
97
|
removeSprite(sprite: Sprite): void;
|
|
95
|
-
|
|
98
|
+
setMaxFPS(maxFPS: number): Promise<void>;
|
|
96
99
|
refresh(): void;
|
|
97
100
|
wait(ms: number): Promise<void>;
|
|
98
101
|
waitUntil(conditionGetter: () => boolean): Promise<void>;
|
|
@@ -154,7 +157,7 @@ declare class Rectangle extends Sprite {
|
|
|
154
157
|
outlineWidth: number;
|
|
155
158
|
getBoundingBox(): BoundingBox;
|
|
156
159
|
getPath(): Path2D;
|
|
157
|
-
draw(stamping?:
|
|
160
|
+
draw(stamping?: true): void;
|
|
158
161
|
create(options?: RectangleOptions): this;
|
|
159
162
|
protected getCreateOptions(): {
|
|
160
163
|
width: number;
|
|
@@ -166,6 +169,7 @@ declare class Rectangle extends Sprite {
|
|
|
166
169
|
y?: number;
|
|
167
170
|
dir?: number;
|
|
168
171
|
size?: number;
|
|
172
|
+
pivot?: Vec2;
|
|
169
173
|
scene?: string;
|
|
170
174
|
hidden?: boolean;
|
|
171
175
|
layer?: number;
|
|
@@ -191,7 +195,7 @@ declare class Square extends Sprite {
|
|
|
191
195
|
outlineWidth: number;
|
|
192
196
|
getBoundingBox(): BoundingBox;
|
|
193
197
|
getPath(): Path2D;
|
|
194
|
-
draw(stamping?:
|
|
198
|
+
draw(stamping?: true): void;
|
|
195
199
|
create(options?: SquareOptions): this;
|
|
196
200
|
protected getCreateOptions(): {
|
|
197
201
|
sideLength: number;
|
|
@@ -202,6 +206,7 @@ declare class Square extends Sprite {
|
|
|
202
206
|
y?: number;
|
|
203
207
|
dir?: number;
|
|
204
208
|
size?: number;
|
|
209
|
+
pivot?: Vec2;
|
|
205
210
|
scene?: string;
|
|
206
211
|
hidden?: boolean;
|
|
207
212
|
layer?: number;
|
|
@@ -228,7 +233,7 @@ declare class Oval extends Sprite {
|
|
|
228
233
|
outlineWidth: number;
|
|
229
234
|
getBoundingBox(): BoundingBox;
|
|
230
235
|
getPath(): Path2D;
|
|
231
|
-
draw(stamping?:
|
|
236
|
+
draw(stamping?: true): void;
|
|
232
237
|
create(options?: OvalOptions): this;
|
|
233
238
|
protected getCreateOptions(): {
|
|
234
239
|
radX: number;
|
|
@@ -240,6 +245,7 @@ declare class Oval extends Sprite {
|
|
|
240
245
|
y?: number;
|
|
241
246
|
dir?: number;
|
|
242
247
|
size?: number;
|
|
248
|
+
pivot?: Vec2;
|
|
243
249
|
scene?: string;
|
|
244
250
|
hidden?: boolean;
|
|
245
251
|
layer?: number;
|
|
@@ -265,7 +271,7 @@ declare class Circle extends Sprite {
|
|
|
265
271
|
outlineWidth: number;
|
|
266
272
|
getBoundingBox(): BoundingBox;
|
|
267
273
|
getPath(): Path2D;
|
|
268
|
-
draw(stamping?:
|
|
274
|
+
draw(stamping?: true): void;
|
|
269
275
|
create(options?: CircleOptions): this;
|
|
270
276
|
protected getCreateOptions(): {
|
|
271
277
|
radius: number;
|
|
@@ -276,6 +282,7 @@ declare class Circle extends Sprite {
|
|
|
276
282
|
y?: number;
|
|
277
283
|
dir?: number;
|
|
278
284
|
size?: number;
|
|
285
|
+
pivot?: Vec2;
|
|
279
286
|
scene?: string;
|
|
280
287
|
hidden?: boolean;
|
|
281
288
|
layer?: number;
|
|
@@ -302,7 +309,7 @@ declare class Arc extends Sprite {
|
|
|
302
309
|
outlineWidth: number;
|
|
303
310
|
getBoundingBox(): BoundingBox;
|
|
304
311
|
getPath(): Path2D;
|
|
305
|
-
draw(stamping?:
|
|
312
|
+
draw(stamping?: true): void;
|
|
306
313
|
create(options?: ArcOptions): this;
|
|
307
314
|
protected getCreateOptions(): {
|
|
308
315
|
radius: number;
|
|
@@ -314,6 +321,7 @@ declare class Arc extends Sprite {
|
|
|
314
321
|
y?: number;
|
|
315
322
|
dir?: number;
|
|
316
323
|
size?: number;
|
|
324
|
+
pivot?: Vec2;
|
|
317
325
|
scene?: string;
|
|
318
326
|
hidden?: boolean;
|
|
319
327
|
layer?: number;
|
|
@@ -341,7 +349,7 @@ declare class RegularPolygon extends Sprite {
|
|
|
341
349
|
outlineWidth: number;
|
|
342
350
|
getBoundingBox(): BoundingBox;
|
|
343
351
|
getPath(): Path2D;
|
|
344
|
-
draw(stamping?:
|
|
352
|
+
draw(stamping?: true): void;
|
|
345
353
|
create(options?: RegularPolygonOptions): this;
|
|
346
354
|
protected getCreateOptions(): {
|
|
347
355
|
sides: number;
|
|
@@ -353,6 +361,7 @@ declare class RegularPolygon extends Sprite {
|
|
|
353
361
|
y?: number;
|
|
354
362
|
dir?: number;
|
|
355
363
|
size?: number;
|
|
364
|
+
pivot?: Vec2;
|
|
356
365
|
scene?: string;
|
|
357
366
|
hidden?: boolean;
|
|
358
367
|
layer?: number;
|
|
@@ -378,7 +387,7 @@ declare class CustomPolygon extends Sprite {
|
|
|
378
387
|
outlineWidth: number;
|
|
379
388
|
getBoundingBox(): BoundingBox;
|
|
380
389
|
getPath(): Path2D;
|
|
381
|
-
draw(stamping?:
|
|
390
|
+
draw(stamping?: true): void;
|
|
382
391
|
create(options?: CustomPolygonOptions): this;
|
|
383
392
|
protected getCreateOptions(): {
|
|
384
393
|
vertices: Vec2[];
|
|
@@ -389,6 +398,7 @@ declare class CustomPolygon extends Sprite {
|
|
|
389
398
|
y?: number;
|
|
390
399
|
dir?: number;
|
|
391
400
|
size?: number;
|
|
401
|
+
pivot?: Vec2;
|
|
392
402
|
scene?: string;
|
|
393
403
|
hidden?: boolean;
|
|
394
404
|
layer?: number;
|
|
@@ -421,6 +431,7 @@ declare class Pen extends Sprite {
|
|
|
421
431
|
y?: number;
|
|
422
432
|
dir?: number;
|
|
423
433
|
size?: number;
|
|
434
|
+
pivot?: Vec2;
|
|
424
435
|
scene?: string;
|
|
425
436
|
hidden?: boolean;
|
|
426
437
|
layer?: number;
|
|
@@ -430,6 +441,7 @@ declare class Pen extends Sprite {
|
|
|
430
441
|
stamp(sprite: Sprite): void;
|
|
431
442
|
eraseAll(): void;
|
|
432
443
|
dot(): void;
|
|
444
|
+
drawSprite(sprite: Sprite): void;
|
|
433
445
|
private drawLine;
|
|
434
446
|
move(steps: number): void;
|
|
435
447
|
setX(x: number): void;
|
|
@@ -460,7 +472,7 @@ declare class Text extends Sprite {
|
|
|
460
472
|
private font;
|
|
461
473
|
getBoundingBox(): BoundingBox;
|
|
462
474
|
getPath(): Path2D;
|
|
463
|
-
draw(stamping?:
|
|
475
|
+
draw(stamping?: true): void;
|
|
464
476
|
create(options?: TextOptions): this;
|
|
465
477
|
protected getCreateOptions(): {
|
|
466
478
|
content: string | number;
|
|
@@ -505,7 +517,7 @@ declare class Button extends Sprite {
|
|
|
505
517
|
outlineWidth: number;
|
|
506
518
|
getBoundingBox(): BoundingBox;
|
|
507
519
|
getPath(): Path2D;
|
|
508
|
-
draw(stamping?:
|
|
520
|
+
draw(stamping?: true): void;
|
|
509
521
|
create(options?: ButtonOptions): this;
|
|
510
522
|
protected getCreateOptions(): {
|
|
511
523
|
content: string | number;
|
|
@@ -521,6 +533,7 @@ declare class Button extends Sprite {
|
|
|
521
533
|
y?: number;
|
|
522
534
|
dir?: number;
|
|
523
535
|
size?: number;
|
|
536
|
+
pivot?: Vec2;
|
|
524
537
|
scene?: string;
|
|
525
538
|
hidden?: boolean;
|
|
526
539
|
layer?: number;
|
|
@@ -556,10 +569,11 @@ declare class ImageSprite extends Sprite {
|
|
|
556
569
|
height: number;
|
|
557
570
|
outlineColor: string;
|
|
558
571
|
outlineWidth: number;
|
|
572
|
+
private imgBitmap;
|
|
559
573
|
protected img: HTMLImageElement;
|
|
560
574
|
getBoundingBox(): BoundingBox;
|
|
561
575
|
getPath(): Path2D;
|
|
562
|
-
draw(stamping?:
|
|
576
|
+
draw(stamping?: true): void;
|
|
563
577
|
create(options?: ImageSpriteOptions): this;
|
|
564
578
|
protected getCreateOptions(): {
|
|
565
579
|
costumes: string[];
|
|
@@ -572,6 +586,7 @@ declare class ImageSprite extends Sprite {
|
|
|
572
586
|
y?: number;
|
|
573
587
|
dir?: number;
|
|
574
588
|
size?: number;
|
|
589
|
+
pivot?: Vec2;
|
|
575
590
|
scene?: string;
|
|
576
591
|
hidden?: boolean;
|
|
577
592
|
layer?: number;
|
|
@@ -606,6 +621,65 @@ declare class RigidCircle extends Circle implements RigidBodyOptions {
|
|
|
606
621
|
constructor(options?: RigidCircleOptions);
|
|
607
622
|
}
|
|
608
623
|
|
|
624
|
+
interface Object3DOptions {
|
|
625
|
+
vertices: Vec3[];
|
|
626
|
+
faces: [number, number, ...number[]][];
|
|
627
|
+
x?: number;
|
|
628
|
+
y?: number;
|
|
629
|
+
z?: number;
|
|
630
|
+
}
|
|
631
|
+
declare class Object3D {
|
|
632
|
+
x: number;
|
|
633
|
+
y: number;
|
|
634
|
+
z: number;
|
|
635
|
+
rotX: number;
|
|
636
|
+
rotY: number;
|
|
637
|
+
rotZ: number;
|
|
638
|
+
vertices: Vec3[];
|
|
639
|
+
faces: [number, number, ...number[]][];
|
|
640
|
+
constructor(options: Object3DOptions);
|
|
641
|
+
rotateX(deg: number): void;
|
|
642
|
+
rotateY(deg: number): void;
|
|
643
|
+
rotateZ(deg: number): void;
|
|
644
|
+
pointX(deg: number): void;
|
|
645
|
+
pointY(deg: number): void;
|
|
646
|
+
pointZ(deg: number): void;
|
|
647
|
+
}
|
|
648
|
+
|
|
649
|
+
interface WireframeRenderer3DOptions extends PenOptions {
|
|
650
|
+
objects: Object3D[];
|
|
651
|
+
}
|
|
652
|
+
declare class WireframeRenderer3D extends Pen {
|
|
653
|
+
FOV: number;
|
|
654
|
+
ASPECT: number;
|
|
655
|
+
Z_NEAR: number;
|
|
656
|
+
SPEED: number;
|
|
657
|
+
SENSITIVITY: number;
|
|
658
|
+
camX: number;
|
|
659
|
+
camY: number;
|
|
660
|
+
camZ: number;
|
|
661
|
+
camDirX: number;
|
|
662
|
+
camDirY: number;
|
|
663
|
+
camDirZ: number;
|
|
664
|
+
objects: Object3D[];
|
|
665
|
+
constructor(options: WireframeRenderer3DOptions);
|
|
666
|
+
registerControls(): void;
|
|
667
|
+
private project;
|
|
668
|
+
update(): void;
|
|
669
|
+
}
|
|
670
|
+
|
|
671
|
+
declare const cubeVertices: Vec3[];
|
|
672
|
+
|
|
673
|
+
declare const cubeFaces: [number, number, ...number[]][];
|
|
674
|
+
|
|
675
|
+
declare const tetrahedronVertices: Vec3[];
|
|
676
|
+
|
|
677
|
+
declare const tetrahedronFaces: [number, number, ...number[]][];
|
|
678
|
+
|
|
679
|
+
declare const octahedronVerticesVertices: Vec3[];
|
|
680
|
+
|
|
681
|
+
declare const octahedronFaces: [number, number, ...number[]][];
|
|
682
|
+
|
|
609
683
|
type Mat2<T = number> = [
|
|
610
684
|
[
|
|
611
685
|
T,
|
|
@@ -677,6 +751,14 @@ declare const TScratch: {
|
|
|
677
751
|
Watermark: typeof Watermark;
|
|
678
752
|
ImageSprite: typeof ImageSprite;
|
|
679
753
|
RigidCircle: typeof RigidCircle;
|
|
754
|
+
WireframeRenderer3D: typeof WireframeRenderer3D;
|
|
755
|
+
Object3D: typeof Object3D;
|
|
756
|
+
cubeVertices: Vec3[];
|
|
757
|
+
cubeFaces: [number, number, ...number[]][];
|
|
758
|
+
tetrahedronVertices: Vec3[];
|
|
759
|
+
tetrahedronFaces: [number, number, ...number[]][];
|
|
760
|
+
octahedronVertices: Vec3[];
|
|
761
|
+
octahedronFaces: [number, number, ...number[]][];
|
|
680
762
|
scale: number;
|
|
681
763
|
aspectRatio: number;
|
|
682
764
|
setScale: typeof setScale;
|
|
@@ -685,4 +767,4 @@ declare const TScratch: {
|
|
|
685
767
|
ctx: CanvasRenderingContext2D;
|
|
686
768
|
};
|
|
687
769
|
|
|
688
|
-
export { Arc, type ArcOptions, Button, type ButtonOptions, Circle, type CircleOptions, CustomPolygon, type CustomPolygonOptions, Engine, ImageSprite, type ImageSpriteOptions, type Mat2, type Mat3, type Mat4, Multiplayer, Oval, type OvalOptions, Pen, type PenOptions, Rectangle, type RectangleOptions, RegularPolygon, type RegularPolygonOptions, type RigidBodyOptions, RigidCircle, type RigidCircleOptions, Sprite, type SpriteOptions, Square, type SquareOptions, Text, type TextOptions, type Vec2, type Vec3, type Vec4, Watermark, type TextOptions as WatermarkOptions, aspectRatio, canvas, ctx, TScratch as default, scale, setAspectRatio, setScale };
|
|
770
|
+
export { Arc, type ArcOptions, Button, type ButtonOptions, Circle, type CircleOptions, CustomPolygon, type CustomPolygonOptions, Engine, ImageSprite, type ImageSpriteOptions, type Mat2, type Mat3, type Mat4, Multiplayer, Object3D, type Object3DOptions, Oval, type OvalOptions, Pen, type PenOptions, Rectangle, type RectangleOptions, RegularPolygon, type RegularPolygonOptions, type RigidBodyOptions, RigidCircle, type RigidCircleOptions, Sprite, type SpriteOptions, Square, type SquareOptions, Text, type TextOptions, type Vec2, type Vec3, type Vec4, Watermark, type TextOptions as WatermarkOptions, WireframeRenderer3D, type WireframeRenderer3DOptions, aspectRatio, canvas, ctx, cubeFaces, cubeVertices, TScratch as default, octahedronFaces, octahedronVerticesVertices as octahedronVertices, scale, setAspectRatio, setScale, tetrahedronFaces, tetrahedronVertices };
|