@needle-tools/engine 4.9.0 → 4.9.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.
Files changed (37) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/{needle-engine.bundle-B1gr_nQ0.min.js → needle-engine.bundle-DwspSk2O.min.js} +95 -95
  3. package/dist/{needle-engine.bundle-DrlDKOar.umd.cjs → needle-engine.bundle-WLYWw5OF.umd.cjs} +89 -89
  4. package/dist/{needle-engine.bundle-BikYBC35.js → needle-engine.bundle-XBRfMDwo.js} +1992 -1952
  5. package/dist/needle-engine.js +2 -2
  6. package/dist/needle-engine.min.js +1 -1
  7. package/dist/needle-engine.umd.cjs +1 -1
  8. package/dist/{vendor-8le8g4MS.umd.cjs → vendor-BtJpSuCj.umd.cjs} +1 -1
  9. package/dist/{vendor-yDFiCnCw.min.js → vendor-XJ9xiwrv.min.js} +1 -1
  10. package/dist/{vendor-Msb9AgYE.js → vendor-k9i6CeGi.js} +871 -870
  11. package/lib/engine/engine_gameobject.d.ts +7 -7
  12. package/lib/engine/engine_gameobject.js +88 -27
  13. package/lib/engine/engine_gameobject.js.map +1 -1
  14. package/lib/engine/engine_networking_instantiate.js +23 -6
  15. package/lib/engine/engine_networking_instantiate.js.map +1 -1
  16. package/lib/engine/engine_serialization_core.d.ts +2 -2
  17. package/lib/engine/engine_serialization_core.js +7 -7
  18. package/lib/engine/engine_serialization_core.js.map +1 -1
  19. package/lib/engine/engine_serialization_decorator.js +2 -1
  20. package/lib/engine/engine_serialization_decorator.js.map +1 -1
  21. package/lib/engine-components/Animation.js +1 -1
  22. package/lib/engine-components/Animation.js.map +1 -1
  23. package/lib/engine-components/Renderer.d.ts +7 -6
  24. package/lib/engine-components/Renderer.js +3 -0
  25. package/lib/engine-components/Renderer.js.map +1 -1
  26. package/lib/engine-components/web/ScrollFollow.d.ts +19 -1
  27. package/lib/engine-components/web/ScrollFollow.js +20 -1
  28. package/lib/engine-components/web/ScrollFollow.js.map +1 -1
  29. package/package.json +2 -2
  30. package/plugins/vite/build.js +3 -0
  31. package/src/engine/engine_gameobject.ts +105 -38
  32. package/src/engine/engine_networking_instantiate.ts +21 -6
  33. package/src/engine/engine_serialization_core.ts +9 -9
  34. package/src/engine/engine_serialization_decorator.ts +2 -1
  35. package/src/engine-components/Animation.ts +1 -1
  36. package/src/engine-components/Renderer.ts +16 -10
  37. package/src/engine-components/web/ScrollFollow.ts +20 -1
@@ -1,4 +1,4 @@
1
- import { Object3D, Quaternion, Vector3 } from "three";
1
+ import { Euler, Object3D, Quaternion, Vector3 } from "three";
2
2
  import { type AssetReference } from "./engine_addressables.js";
3
3
  import { Context } from "./engine_setup.js";
4
4
  import { type Constructor, type IComponent as Component, type IComponent, type IGameObject as GameObject, type UIDProvider } from "./engine_types.js";
@@ -6,12 +6,12 @@ export type IInstantiateOptions = {
6
6
  idProvider?: UIDProvider;
7
7
  parent?: string | Object3D;
8
8
  /** position in local space. Set `keepWorldPosition` to true if this is world space */
9
- position?: Vector3;
9
+ position?: Vector3 | [number, number, number];
10
10
  /** for duplicatable parenting */
11
11
  keepWorldPosition?: boolean;
12
12
  /** rotation in local space. Set `keepWorldPosition` to true if this is world space */
13
- rotation?: Quaternion;
14
- scale?: Vector3;
13
+ rotation?: Quaternion | Euler | [number, number, number];
14
+ scale?: Vector3 | [number, number, number];
15
15
  /** if the instantiated object should be visible */
16
16
  visible?: boolean;
17
17
  context?: Context;
@@ -27,9 +27,9 @@ export declare class InstantiateOptions implements IInstantiateOptions {
27
27
  idProvider?: UIDProvider | undefined;
28
28
  parent?: string | undefined | Object3D;
29
29
  keepWorldPosition?: boolean;
30
- position?: Vector3 | undefined;
31
- rotation?: Quaternion | undefined;
32
- scale?: Vector3 | undefined;
30
+ position?: Vector3 | [number, number, number] | undefined;
31
+ rotation?: Quaternion | Euler | [number, number, number] | undefined;
32
+ scale?: Vector3 | [number, number, number] | undefined;
33
33
  visible?: boolean | undefined;
34
34
  context?: Context | undefined;
35
35
  components?: boolean | undefined;
@@ -1,3 +1,4 @@
1
+ import { Euler, Quaternion, Vector3 } from "three";
1
2
  import { $shadowDomOwner } from "../engine-components/ui/Symbols.js";
2
3
  import { __internalNotifyObjectDestroyed as __internalRemoveReferences, disposeObjectResources } from "./engine_assetdatabase.js";
3
4
  import { ComponentLifecycleEvents } from "./engine_components_internal.js";
@@ -8,7 +9,7 @@ import { processNewScripts } from "./engine_mainloop_utils.js";
8
9
  import { InstantiateIdProvider } from "./engine_networking_instantiate.js";
9
10
  import { assign } from "./engine_serialization_core.js";
10
11
  import { Context, registerComponent } from "./engine_setup.js";
11
- import { logHierarchy, setWorldPosition, setWorldQuaternion } from "./engine_three_utils.js";
12
+ import { getTempQuaternion, logHierarchy } from "./engine_three_utils.js";
12
13
  import { getParam, tryFindObject } from "./engine_utils.js";
13
14
  import { apply } from "./js-extensions/index.js";
14
15
  const debug = getParam("debuggetcomponent");
@@ -31,9 +32,9 @@ export class InstantiateOptions {
31
32
  clone.idProvider = this.idProvider;
32
33
  clone.parent = this.parent;
33
34
  clone.keepWorldPosition = this.keepWorldPosition;
34
- clone.position = this.position?.clone();
35
- clone.rotation = this.rotation?.clone();
36
- clone.scale = this.scale?.clone();
35
+ clone.position = Array.isArray(this.position) ? [...this.position] : this.position?.clone();
36
+ clone.rotation = Array.isArray(this.rotation) ? [...this.rotation] : this.rotation?.clone();
37
+ clone.scale = Array.isArray(this.scale) ? [...this.scale] : this.scale?.clone();
37
38
  clone.visible = this.visible;
38
39
  clone.context = this.context;
39
40
  clone.components = this.components;
@@ -44,9 +45,9 @@ export class InstantiateOptions {
44
45
  this.idProvider = other.idProvider;
45
46
  this.parent = other.parent;
46
47
  this.keepWorldPosition = other.keepWorldPosition;
47
- this.position = other.position?.clone();
48
- this.rotation = other.rotation?.clone();
49
- this.scale = other.scale?.clone();
48
+ this.position = Array.isArray(other.position) ? [...other.position] : other.position?.clone();
49
+ this.rotation = Array.isArray(other.rotation) ? [...other.rotation] : other.rotation?.clone();
50
+ this.scale = Array.isArray(other.scale) ? [...other.scale] : other.scale?.clone();
50
51
  this.visible = other.visible;
51
52
  this.context = other.context;
52
53
  this.components = other.components;
@@ -257,12 +258,12 @@ export function instantiate(instance, opts) {
257
258
  options.idProvider = new InstantiateIdProvider(Date.now());
258
259
  }
259
260
  const components = [];
260
- const goMapping = {}; // used to resolve references on components to components on other gameobjects to their new counterpart
261
+ const referencemap = {}; // used to resolve references on components to components on other gameobjects to their new counterpart
261
262
  const skinnedMeshes = {}; // used to resolve skinned mesh bones
262
- const clone = internalInstantiate(context, instance, options, components, goMapping, skinnedMeshes);
263
+ const clone = internalInstantiate(context, instance, options, components, referencemap, skinnedMeshes);
263
264
  if (clone) {
264
- resolveReferences(goMapping);
265
- resolveAndBindSkinnedMeshBones(skinnedMeshes, goMapping);
265
+ resolveReferences(clone, referencemap);
266
+ resolveAndBindSkinnedMeshBones(skinnedMeshes, referencemap);
266
267
  }
267
268
  if (debug) {
268
269
  logHierarchy(instance, true);
@@ -340,21 +341,45 @@ function internalInstantiate(context, instance, opts, componentsList, objectsMap
340
341
  if (parent) {
341
342
  parent.add(clone);
342
343
  }
343
- // apply transform
344
+ // POSITION
344
345
  if (opts?.position) {
345
- setWorldPosition(clone, opts.position);
346
+ if (Array.isArray(opts.position)) {
347
+ const vec = new Vector3();
348
+ vec.fromArray(opts.position);
349
+ clone.worldPosition = vec;
350
+ }
351
+ else {
352
+ clone.worldPosition = opts.position;
353
+ }
346
354
  }
347
355
  else
348
356
  clone.position.copy(instance.position);
357
+ // ROTATION
349
358
  if (opts?.rotation) {
350
- setWorldQuaternion(clone, opts.rotation);
359
+ if (opts.rotation instanceof Quaternion)
360
+ clone.worldQuaternion = opts.rotation;
361
+ else if (opts.rotation instanceof Euler)
362
+ clone.worldQuaternion = getTempQuaternion().setFromEuler(opts.rotation);
363
+ else if (Array.isArray(opts.rotation)) {
364
+ const euler = new Euler();
365
+ euler.fromArray(opts.rotation);
366
+ clone.worldQuaternion = getTempQuaternion().setFromEuler(euler);
367
+ }
351
368
  }
352
369
  else
353
370
  clone.quaternion.copy(instance.quaternion);
371
+ // SCALE
354
372
  if (opts?.scale) {
355
- clone.scale.copy(opts.scale);
356
373
  // TODO MAJOR: replace with worldscale
357
374
  // clone.worldScale = opts.scale;
375
+ if (Array.isArray(opts.scale)) {
376
+ const vec = new Vector3();
377
+ vec.fromArray(opts.scale);
378
+ opts.scale = vec;
379
+ }
380
+ else {
381
+ clone.scale.copy(opts.scale);
382
+ }
358
383
  }
359
384
  else
360
385
  clone.scale.copy(instance.scale);
@@ -388,17 +413,7 @@ function internalInstantiate(context, instance, opts, componentsList, objectsMap
388
413
  for (let i = 0; i < components.length; i++) {
389
414
  const comp = components[i];
390
415
  const copy = new comp.constructor();
391
- assign(copy, comp, undefined, {
392
- // onAssign: (source, key, value) => {
393
- // if (typeof value === "object") {
394
- // const serializable = source as ISerializable;
395
- // if (serializable?.$serializedTypes?.[key]) {
396
- // console.debug("TODO CLONE", key, value);
397
- // }
398
- // }
399
- // return value;
400
- // }
401
- });
416
+ onAssignComponent(comp, copy, objectsMap);
402
417
  // make sure the original guid stays intact
403
418
  if (comp[editorGuidKeyName] !== undefined)
404
419
  copy[editorGuidKeyName] = comp[editorGuidKeyName];
@@ -428,6 +443,51 @@ function internalInstantiate(context, instance, opts, componentsList, objectsMap
428
443
  }
429
444
  return clone;
430
445
  }
446
+ function onAssignComponent(source, target, _newObjectsMap) {
447
+ assign(target, source, undefined, {
448
+ // onAssigned: (target, key, _oldValue, value) => {
449
+ // if (value !== null && typeof value === "object") {
450
+ // const serializable = target as ISerializable;
451
+ // if (serializable?.$serializedTypes?.[key]) {
452
+ // if (!(value instanceof Object3D)) {
453
+ // // let clone = null;
454
+ // // if ("clone" in value) {
455
+ // // if (canClone(value)) clone = (value as any).clone();
456
+ // // }
457
+ // // else {
458
+ // // clone = Object.assign(Object.create(Object.getPrototypeOf(value)), value);
459
+ // // }
460
+ // // if (clone) {
461
+ // // console.debug(key, { target, value, clone })
462
+ // // target[key] = clone;
463
+ // // findNestedReferences(clone, objectsMap);
464
+ // // }
465
+ // // else console.debug("Could not clone value for key", key, value);
466
+ // }
467
+ // else {
468
+ // console.log("ASSIGNED", value)
469
+ // }
470
+ // recursiveAssign(target, target[key], newObjectsMap);
471
+ // }
472
+ // }
473
+ // }
474
+ });
475
+ }
476
+ // function findNestedReferences(object: object, map: InstantiateReferenceMap) {
477
+ // const keys = Object.keys(object);
478
+ // for (const key of keys) {
479
+ // const val = (object as any)[key];
480
+ // if (val instanceof Object3D) {
481
+ // if ("guid" in val && val.guid) {
482
+ // console.log("FOUND ", val.guid, val)
483
+ // map[val.guid] = { original: val, clone: null };
484
+ // }
485
+ // }
486
+ // else if (typeof val === "object" && val !== null) {
487
+ // findNestedReferences(val, map);
488
+ // }
489
+ // }
490
+ // }
431
491
  function resolveAndBindSkinnedMeshBones(skinnedMeshes, newObjectsMap) {
432
492
  for (const key in skinnedMeshes) {
433
493
  const val = skinnedMeshes[key];
@@ -501,7 +561,7 @@ function resolveAndBindSkinnedMeshBones(skinnedMeshes, newObjectsMap) {
501
561
  // });
502
562
  // return clone;
503
563
  // }
504
- function resolveReferences(newObjectsMap) {
564
+ function resolveReferences(_newInstance, newObjectsMap) {
505
565
  // for every object that is newly created we want to update references to their newly created counterparts
506
566
  // e.g. a collider instance referencing a rigidbody instance should be updated so that
507
567
  // the cloned collider does not reference the cloned rigidbody (instead of the original rigidbody)
@@ -613,4 +673,5 @@ function postProcessNewInstance(copy, key, value, newObjectsMap) {
613
673
  }
614
674
  }
615
675
  }
676
+ // const canClone = (value: any) => value.isVector4 || value.isVector3 || value.isVector2 || value.isQuaternion || value.isEuler || value.isColor === true;
616
677
  //# sourceMappingURL=engine_gameobject.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"engine_gameobject.js","sourceRoot":"","sources":["../../src/engine/engine_gameobject.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_gameobject.js","sourceRoot":"","sources":["../../src/engine/engine_gameobject.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Quaternion, Vector3 } from "three";
1
+ import { Euler, Quaternion, Vector3 } from "three";
2
2
  // https://github.com/uuidjs/uuid
3
3
  // v5 takes string and namespace
4
4
  import { v5 } from 'uuid';
@@ -196,12 +196,29 @@ export function syncInstantiate(object, opts, hostData, save) {
196
196
  if (opts.deleteOnDisconnect === true)
197
197
  model.deleteStateOnDisconnect = true;
198
198
  if (originalOpts) {
199
- if (originalOpts.position)
200
- model.position = { x: originalOpts.position.x, y: originalOpts.position.y, z: originalOpts.position.z };
201
- if (originalOpts.rotation)
199
+ if (originalOpts.position) {
200
+ if (Array.isArray(originalOpts.position)) {
201
+ model.position = { x: originalOpts.position[0], y: originalOpts.position[1], z: originalOpts.position[2] };
202
+ }
203
+ else
204
+ model.position = { x: originalOpts.position.x, y: originalOpts.position.y, z: originalOpts.position.z };
205
+ }
206
+ if (originalOpts.rotation) {
207
+ if (originalOpts.rotation instanceof Euler) {
208
+ originalOpts.rotation = new Quaternion().setFromEuler(originalOpts.rotation);
209
+ }
210
+ else if (originalOpts.rotation instanceof Array) {
211
+ originalOpts.rotation = new Quaternion().fromArray(originalOpts.rotation);
212
+ }
202
213
  model.rotation = { x: originalOpts.rotation.x, y: originalOpts.rotation.y, z: originalOpts.rotation.z, w: originalOpts.rotation.w };
203
- if (originalOpts.scale)
204
- model.scale = { x: originalOpts.scale.x, y: originalOpts.scale.y, z: originalOpts.scale.z };
214
+ }
215
+ if (originalOpts.scale) {
216
+ if (Array.isArray(originalOpts.scale)) {
217
+ model.scale = { x: originalOpts.scale[0], y: originalOpts.scale[1], z: originalOpts.scale[2] };
218
+ }
219
+ else
220
+ model.scale = { x: originalOpts.scale.x, y: originalOpts.scale.y, z: originalOpts.scale.z };
221
+ }
205
222
  }
206
223
  if (!model.position)
207
224
  model.position = { x: go.position.x, y: go.position.y, z: go.position.z };
@@ -1 +1 @@
1
- {"version":3,"file":"engine_networking_instantiate.js","sourceRoot":"","sources":["../../src/engine/engine_networking_instantiate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_networking_instantiate.js","sourceRoot":"","sources":["../../src/engine/engine_networking_instantiate.ts"],"names":[],"mappings":"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"}
@@ -86,9 +86,9 @@ export declare const $isAssigningProperties: unique symbol;
86
86
  * @param key the key that is being assigned
87
87
  * @param value the value that is being assigned
88
88
  */
89
- type OnAssign = (source: object, key: string, value: any) => any;
89
+ type AssignedCallback = (source: object, key: string, oldValue: any, newValue: any) => any;
90
90
  /** Object.assign behaviour but check if property is writeable (e.g. getter only properties are skipped) */
91
91
  export declare function assign(target: any, source: any, info?: ImplementationInformation, opts?: {
92
- onAssign?: OnAssign;
92
+ onAssigned?: AssignedCallback;
93
93
  }): void;
94
94
  export {};
@@ -586,13 +586,13 @@ export function assign(target, source, info, opts) {
586
586
  // arrow functions are defined as properties on the object
587
587
  continue;
588
588
  }
589
- if (!desc || desc.writable === true) {
590
- const value = opts?.onAssign ? opts.onAssign(source, key, source[key]) : source[key];
591
- target[key] = value;
592
- }
593
- else if (desc?.set !== undefined) {
594
- const value = opts?.onAssign ? opts.onAssign(source, key, source[key]) : source[key];
595
- target[key] = value;
589
+ if (!desc || desc.writable === true || desc.set !== undefined) {
590
+ const newValue = source[key];
591
+ const oldValue = target[key];
592
+ target[key] = newValue;
593
+ if (opts?.onAssigned) {
594
+ opts.onAssigned(target, key, oldValue, newValue);
595
+ }
596
596
  }
597
597
  }
598
598
  delete target[$isAssigningProperties];
@@ -1 +1 @@
1
- {"version":3,"file":"engine_serialization_core.js","sourceRoot":"","sources":["../../src/engine/engine_serialization_core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_serialization_core.js","sourceRoot":"","sources":["../../src/engine/engine_serialization_core.ts"],"names":[],"mappings":"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"}
@@ -22,7 +22,8 @@ export const serializable = function (type) {
22
22
  }
23
23
  return function (_target, _propertyKey) {
24
24
  if (!_target) {
25
- console.error("Found @serializable decorator without a target");
25
+ const propertyName = typeof _propertyKey === 'string' ? _propertyKey : _propertyKey.name;
26
+ console.warn(`@serializable without a target at '${propertyName}'.`);
26
27
  return;
27
28
  }
28
29
  // The _propertyKey parameter is a string in TS4 with experimentalDecorators
@@ -1 +1 @@
1
- {"version":3,"file":"engine_serialization_decorator.js","sourceRoot":"","sources":["../../src/engine/engine_serialization_decorator.ts"],"names":[],"mappings":"AAIA,uGAAuG;AACvG,MAAM,CAAC,MAAM,aAAa,GAAG,UAAa,IAA0F;IAChI,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;AAC7B,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,UAAa,IAA0F;IAC/H,IAAI,IAAI,KAAK,SAAS;QAAE,IAAI,GAAG,IAAI,CAAC;IACpC,sGAAsG;IACtG,wFAAwF;IACxF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACtB,IAAI,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;KACzC;SACI;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAClC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,CAAC,CAAC,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;SAC7C;KACJ;IAED,OAAO,UAAU,OAAY,EAAE,YAAuC;QAClE,IAAI,CAAC,OAAO,EAAE;YACV,OAAO,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;YAChE,OAAO;SACV;QACD,4EAA4E;QAC5E,mDAAmD;QACnD,8FAA8F;QAC9F,uGAAuG;QACvG,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;YAClC,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC;SACpC;QAED,qFAAqF;QACrF,oGAAoG;QACpG,qDAAqD;QACrD,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,OAAO,EAAE,kBAAkB,CAAC;YAC7D,OAAO,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC;QAErC,MAAM,KAAK,GAAG,OAAO,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAA;QAC7E,KAAK,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;IAC/B,CAAC,CAAA;AACL,CAAC,CAAA;AAED,SAAS,wBAAwB,CAAC,IAAI;IAClC,QAAQ,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE;QACxC,KAAK,QAAQ,CAAC;QACd,KAAK,QAAQ,CAAC;QACd,KAAK,SAAS;YACV,OAAO,IAAI,CAAC;KACnB;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAGD,gBAAgB;AAChB,MAAM,CAAC,MAAM,qBAAqB,GAAG,0BAA0B,CAAC;AAGhE,6CAA6C;AAC7C,MAAM,UAAU,aAAa,CAAC,WAAqB;IAC/C,WAAW,CAAC,qBAAqB,CAAC,GAAG,IAAI,CAAC;AAC9C,CAAC;AAGD;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,kBAAkB,CAAC;AAEhD,oCAAoC;AACpC,MAAM,UAAU,MAAM,CAAC,WAAqB;IACxC,WAAW,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC;AACtC,CAAC"}
1
+ {"version":3,"file":"engine_serialization_decorator.js","sourceRoot":"","sources":["../../src/engine/engine_serialization_decorator.ts"],"names":[],"mappings":"AAIA,uGAAuG;AACvG,MAAM,CAAC,MAAM,aAAa,GAAG,UAAa,IAA0F;IAChI,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;AAC7B,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,UAAa,IAA0F;IAC/H,IAAI,IAAI,KAAK,SAAS;QAAE,IAAI,GAAG,IAAI,CAAC;IACpC,sGAAsG;IACtG,wFAAwF;IACxF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACtB,IAAI,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;KACzC;SACI;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAClC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,CAAC,CAAC,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;SAC7C;KACJ;IAED,OAAO,UAAU,OAAY,EAAE,YAAuC;QAClE,IAAI,CAAC,OAAO,EAAE;YACV,MAAM,YAAY,GAAG,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC;YACzF,OAAO,CAAC,IAAI,CAAC,sCAAsC,YAAY,IAAI,CAAC,CAAC;YACrE,OAAO;SACV;QACD,4EAA4E;QAC5E,mDAAmD;QACnD,8FAA8F;QAC9F,uGAAuG;QACvG,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;YAClC,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC;SACpC;QAED,qFAAqF;QACrF,oGAAoG;QACpG,qDAAqD;QACrD,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,OAAO,EAAE,kBAAkB,CAAC;YAC7D,OAAO,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC;QAErC,MAAM,KAAK,GAAG,OAAO,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAA;QAC7E,KAAK,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;IAC/B,CAAC,CAAA;AACL,CAAC,CAAA;AAED,SAAS,wBAAwB,CAAC,IAAI;IAClC,QAAQ,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE;QACxC,KAAK,QAAQ,CAAC;QACd,KAAK,QAAQ,CAAC;QACd,KAAK,SAAS;YACV,OAAO,IAAI,CAAC;KACnB;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAGD,gBAAgB;AAChB,MAAM,CAAC,MAAM,qBAAqB,GAAG,0BAA0B,CAAC;AAGhE,6CAA6C;AAC7C,MAAM,UAAU,aAAa,CAAC,WAAqB;IAC/C,WAAW,CAAC,qBAAqB,CAAC,GAAG,IAAI,CAAC;AAC9C,CAAC;AAGD;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,kBAAkB,CAAC;AAEhD,oCAAoC;AACpC,MAAM,UAAU,MAAM,CAAC,WAAqB;IACxC,WAAW,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC;AACtC,CAAC"}
@@ -128,7 +128,7 @@ export class Animation extends Behaviour {
128
128
  }
129
129
  }
130
130
  get animations() {
131
- return this.gameObject.animations || this._tempAnimationsArray || [];
131
+ return this.gameObject?.animations || this._tempAnimationsArray || [];
132
132
  }
133
133
  mixer = undefined;
134
134
  /**