@dcl/ecs 7.20.4 → 7.20.5-22631826546.commit-7c189f5

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 (87) hide show
  1. package/dist/components/extended/AudioAnalysis.d.ts +55 -0
  2. package/dist/components/extended/AudioAnalysis.js +66 -0
  3. package/dist/components/extended/Tween.d.ts +90 -0
  4. package/dist/components/extended/Tween.js +152 -0
  5. package/dist/components/generated/AudioAnalysis.gen.d.ts +1 -0
  6. package/dist/components/generated/AudioAnalysis.gen.js +25 -0
  7. package/dist/components/generated/AvatarLocomotionSettings.gen.d.ts +1 -0
  8. package/dist/components/generated/AvatarLocomotionSettings.gen.js +25 -0
  9. package/dist/components/generated/PhysicsCombinedForce.gen.d.ts +1 -0
  10. package/dist/components/generated/PhysicsCombinedForce.gen.js +25 -0
  11. package/dist/components/generated/PhysicsCombinedImpulse.gen.d.ts +1 -0
  12. package/dist/components/generated/PhysicsCombinedImpulse.gen.js +25 -0
  13. package/dist/components/generated/component-names.gen.js +4 -0
  14. package/dist/components/generated/global.gen.d.ts +8 -0
  15. package/dist/components/generated/global.gen.js +4 -0
  16. package/dist/components/generated/index.gen.d.ts +16 -0
  17. package/dist/components/generated/index.gen.js +20 -0
  18. package/dist/components/generated/pb/decentraland/sdk/components/audio_analysis.gen.d.ts +37 -0
  19. package/dist/components/generated/pb/decentraland/sdk/components/audio_analysis.gen.js +161 -0
  20. package/dist/components/generated/pb/decentraland/sdk/components/avatar_locomotion_settings.gen.d.ts +35 -0
  21. package/dist/components/generated/pb/decentraland/sdk/components/avatar_locomotion_settings.gen.js +123 -0
  22. package/dist/components/generated/pb/decentraland/sdk/components/common/input_action.gen.d.ts +12 -2
  23. package/dist/components/generated/pb/decentraland/sdk/components/common/input_action.gen.js +11 -0
  24. package/dist/components/generated/pb/decentraland/sdk/components/input_modifier.gen.d.ts +2 -0
  25. package/dist/components/generated/pb/decentraland/sdk/components/input_modifier.gen.js +20 -0
  26. package/dist/components/generated/pb/decentraland/sdk/components/physics_combined_force.gen.d.ts +25 -0
  27. package/dist/components/generated/pb/decentraland/sdk/components/physics_combined_force.gen.js +42 -0
  28. package/dist/components/generated/pb/decentraland/sdk/components/physics_combined_impulse.gen.d.ts +28 -0
  29. package/dist/components/generated/pb/decentraland/sdk/components/physics_combined_impulse.gen.js +51 -0
  30. package/dist/components/generated/pb/decentraland/sdk/components/pointer_events.gen.d.ts +5 -1
  31. package/dist/components/generated/pb/decentraland/sdk/components/pointer_events.gen.js +20 -1
  32. package/dist/components/generated/pb/decentraland/sdk/components/tween.gen.d.ts +40 -0
  33. package/dist/components/generated/pb/decentraland/sdk/components/tween.gen.js +176 -0
  34. package/dist/components/generated/pb/decentraland/sdk/components/virtual_camera.gen.d.ts +3 -0
  35. package/dist/components/generated/pb/decentraland/sdk/components/virtual_camera.gen.js +10 -1
  36. package/dist/components/index.d.ts +4 -0
  37. package/dist/components/index.js +3 -0
  38. package/dist/components/types.d.ts +2 -1
  39. package/dist/engine/entity.js +2 -4
  40. package/dist/index.d.ts +2 -1
  41. package/dist/index.js +1 -0
  42. package/dist/systems/events.d.ts +65 -0
  43. package/dist/systems/events.js +70 -8
  44. package/dist-cjs/components/extended/AudioAnalysis.d.ts +55 -0
  45. package/dist-cjs/components/extended/AudioAnalysis.js +70 -0
  46. package/dist-cjs/components/extended/Tween.d.ts +90 -0
  47. package/dist-cjs/components/extended/Tween.js +152 -0
  48. package/dist-cjs/components/generated/AudioAnalysis.gen.d.ts +1 -0
  49. package/dist-cjs/components/generated/AudioAnalysis.gen.js +28 -0
  50. package/dist-cjs/components/generated/AvatarLocomotionSettings.gen.d.ts +1 -0
  51. package/dist-cjs/components/generated/AvatarLocomotionSettings.gen.js +28 -0
  52. package/dist-cjs/components/generated/PhysicsCombinedForce.gen.d.ts +1 -0
  53. package/dist-cjs/components/generated/PhysicsCombinedForce.gen.js +28 -0
  54. package/dist-cjs/components/generated/PhysicsCombinedImpulse.gen.d.ts +1 -0
  55. package/dist-cjs/components/generated/PhysicsCombinedImpulse.gen.js +28 -0
  56. package/dist-cjs/components/generated/component-names.gen.js +4 -0
  57. package/dist-cjs/components/generated/global.gen.d.ts +8 -0
  58. package/dist-cjs/components/generated/global.gen.js +6 -1
  59. package/dist-cjs/components/generated/index.gen.d.ts +16 -0
  60. package/dist-cjs/components/generated/index.gen.js +26 -2
  61. package/dist-cjs/components/generated/pb/decentraland/sdk/components/audio_analysis.gen.d.ts +37 -0
  62. package/dist-cjs/components/generated/pb/decentraland/sdk/components/audio_analysis.gen.js +167 -0
  63. package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_locomotion_settings.gen.d.ts +35 -0
  64. package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_locomotion_settings.gen.js +129 -0
  65. package/dist-cjs/components/generated/pb/decentraland/sdk/components/common/input_action.gen.d.ts +12 -2
  66. package/dist-cjs/components/generated/pb/decentraland/sdk/components/common/input_action.gen.js +12 -1
  67. package/dist-cjs/components/generated/pb/decentraland/sdk/components/input_modifier.gen.d.ts +2 -0
  68. package/dist-cjs/components/generated/pb/decentraland/sdk/components/input_modifier.gen.js +20 -0
  69. package/dist-cjs/components/generated/pb/decentraland/sdk/components/physics_combined_force.gen.d.ts +25 -0
  70. package/dist-cjs/components/generated/pb/decentraland/sdk/components/physics_combined_force.gen.js +48 -0
  71. package/dist-cjs/components/generated/pb/decentraland/sdk/components/physics_combined_impulse.gen.d.ts +28 -0
  72. package/dist-cjs/components/generated/pb/decentraland/sdk/components/physics_combined_impulse.gen.js +57 -0
  73. package/dist-cjs/components/generated/pb/decentraland/sdk/components/pointer_events.gen.d.ts +5 -1
  74. package/dist-cjs/components/generated/pb/decentraland/sdk/components/pointer_events.gen.js +20 -1
  75. package/dist-cjs/components/generated/pb/decentraland/sdk/components/tween.gen.d.ts +40 -0
  76. package/dist-cjs/components/generated/pb/decentraland/sdk/components/tween.gen.js +177 -1
  77. package/dist-cjs/components/generated/pb/decentraland/sdk/components/virtual_camera.gen.d.ts +3 -0
  78. package/dist-cjs/components/generated/pb/decentraland/sdk/components/virtual_camera.gen.js +10 -1
  79. package/dist-cjs/components/index.d.ts +4 -0
  80. package/dist-cjs/components/index.js +5 -1
  81. package/dist-cjs/components/types.d.ts +2 -1
  82. package/dist-cjs/engine/entity.js +2 -4
  83. package/dist-cjs/index.d.ts +2 -1
  84. package/dist-cjs/index.js +2 -1
  85. package/dist-cjs/systems/events.d.ts +65 -0
  86. package/dist-cjs/systems/events.js +70 -8
  87. package/package.json +2 -2
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.TextureMoveContinuous = exports.MoveContinuous = exports.RotateContinuous = exports.TextureMove = exports.Scale = exports.Rotate = exports.Move = exports.PBTween = exports.EasingFunction = exports.TextureMovementType = void 0;
6
+ exports.TextureMoveContinuous = exports.MoveRotateScaleContinuous = exports.MoveContinuous = exports.RotateContinuous = exports.TextureMove = exports.MoveRotateScale = exports.Scale = exports.Rotate = exports.Move = exports.PBTween = exports.EasingFunction = exports.TextureMovementType = void 0;
7
7
  /* eslint-disable */
8
8
  const minimal_1 = __importDefault(require("protobufjs/minimal"));
9
9
  const vectors_gen_1 = require("../../common/vectors.gen");
@@ -96,6 +96,12 @@ var PBTween;
96
96
  case "textureMoveContinuous":
97
97
  TextureMoveContinuous.encode(message.mode.textureMoveContinuous, writer.uint32(90).fork()).ldelim();
98
98
  break;
99
+ case "moveRotateScale":
100
+ MoveRotateScale.encode(message.mode.moveRotateScale, writer.uint32(98).fork()).ldelim();
101
+ break;
102
+ case "moveRotateScaleContinuous":
103
+ MoveRotateScaleContinuous.encode(message.mode.moveRotateScaleContinuous, writer.uint32(106).fork()).ldelim();
104
+ break;
99
105
  }
100
106
  if (message.playing !== undefined) {
101
107
  writer.uint32(48).bool(message.playing);
@@ -173,6 +179,21 @@ var PBTween;
173
179
  textureMoveContinuous: TextureMoveContinuous.decode(reader, reader.uint32()),
174
180
  };
175
181
  continue;
182
+ case 12:
183
+ if (tag !== 98) {
184
+ break;
185
+ }
186
+ message.mode = { $case: "moveRotateScale", moveRotateScale: MoveRotateScale.decode(reader, reader.uint32()) };
187
+ continue;
188
+ case 13:
189
+ if (tag !== 106) {
190
+ break;
191
+ }
192
+ message.mode = {
193
+ $case: "moveRotateScaleContinuous",
194
+ moveRotateScaleContinuous: MoveRotateScaleContinuous.decode(reader, reader.uint32()),
195
+ };
196
+ continue;
176
197
  case 6:
177
198
  if (tag !== 48) {
178
199
  break;
@@ -345,6 +366,96 @@ var Scale;
345
366
  }
346
367
  Scale.decode = decode;
347
368
  })(Scale = exports.Scale || (exports.Scale = {}));
369
+ function createBaseMoveRotateScale() {
370
+ return {
371
+ positionStart: undefined,
372
+ positionEnd: undefined,
373
+ rotationStart: undefined,
374
+ rotationEnd: undefined,
375
+ scaleStart: undefined,
376
+ scaleEnd: undefined,
377
+ };
378
+ }
379
+ /**
380
+ * @public
381
+ */
382
+ var MoveRotateScale;
383
+ (function (MoveRotateScale) {
384
+ function encode(message, writer = minimal_1.default.Writer.create()) {
385
+ if (message.positionStart !== undefined) {
386
+ vectors_gen_1.Vector3.encode(message.positionStart, writer.uint32(10).fork()).ldelim();
387
+ }
388
+ if (message.positionEnd !== undefined) {
389
+ vectors_gen_1.Vector3.encode(message.positionEnd, writer.uint32(18).fork()).ldelim();
390
+ }
391
+ if (message.rotationStart !== undefined) {
392
+ vectors_gen_1.Quaternion.encode(message.rotationStart, writer.uint32(26).fork()).ldelim();
393
+ }
394
+ if (message.rotationEnd !== undefined) {
395
+ vectors_gen_1.Quaternion.encode(message.rotationEnd, writer.uint32(34).fork()).ldelim();
396
+ }
397
+ if (message.scaleStart !== undefined) {
398
+ vectors_gen_1.Vector3.encode(message.scaleStart, writer.uint32(42).fork()).ldelim();
399
+ }
400
+ if (message.scaleEnd !== undefined) {
401
+ vectors_gen_1.Vector3.encode(message.scaleEnd, writer.uint32(50).fork()).ldelim();
402
+ }
403
+ return writer;
404
+ }
405
+ MoveRotateScale.encode = encode;
406
+ function decode(input, length) {
407
+ const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
408
+ let end = length === undefined ? reader.len : reader.pos + length;
409
+ const message = createBaseMoveRotateScale();
410
+ while (reader.pos < end) {
411
+ const tag = reader.uint32();
412
+ switch (tag >>> 3) {
413
+ case 1:
414
+ if (tag !== 10) {
415
+ break;
416
+ }
417
+ message.positionStart = vectors_gen_1.Vector3.decode(reader, reader.uint32());
418
+ continue;
419
+ case 2:
420
+ if (tag !== 18) {
421
+ break;
422
+ }
423
+ message.positionEnd = vectors_gen_1.Vector3.decode(reader, reader.uint32());
424
+ continue;
425
+ case 3:
426
+ if (tag !== 26) {
427
+ break;
428
+ }
429
+ message.rotationStart = vectors_gen_1.Quaternion.decode(reader, reader.uint32());
430
+ continue;
431
+ case 4:
432
+ if (tag !== 34) {
433
+ break;
434
+ }
435
+ message.rotationEnd = vectors_gen_1.Quaternion.decode(reader, reader.uint32());
436
+ continue;
437
+ case 5:
438
+ if (tag !== 42) {
439
+ break;
440
+ }
441
+ message.scaleStart = vectors_gen_1.Vector3.decode(reader, reader.uint32());
442
+ continue;
443
+ case 6:
444
+ if (tag !== 50) {
445
+ break;
446
+ }
447
+ message.scaleEnd = vectors_gen_1.Vector3.decode(reader, reader.uint32());
448
+ continue;
449
+ }
450
+ if ((tag & 7) === 4 || tag === 0) {
451
+ break;
452
+ }
453
+ reader.skipType(tag & 7);
454
+ }
455
+ return message;
456
+ }
457
+ MoveRotateScale.decode = decode;
458
+ })(MoveRotateScale = exports.MoveRotateScale || (exports.MoveRotateScale = {}));
348
459
  function createBaseTextureMove() {
349
460
  return { start: undefined, end: undefined, movementType: undefined };
350
461
  }
@@ -495,6 +606,71 @@ var MoveContinuous;
495
606
  }
496
607
  MoveContinuous.decode = decode;
497
608
  })(MoveContinuous = exports.MoveContinuous || (exports.MoveContinuous = {}));
609
+ function createBaseMoveRotateScaleContinuous() {
610
+ return { positionDirection: undefined, rotationDirection: undefined, scaleDirection: undefined, speed: 0 };
611
+ }
612
+ /**
613
+ * @public
614
+ */
615
+ var MoveRotateScaleContinuous;
616
+ (function (MoveRotateScaleContinuous) {
617
+ function encode(message, writer = minimal_1.default.Writer.create()) {
618
+ if (message.positionDirection !== undefined) {
619
+ vectors_gen_1.Vector3.encode(message.positionDirection, writer.uint32(10).fork()).ldelim();
620
+ }
621
+ if (message.rotationDirection !== undefined) {
622
+ vectors_gen_1.Quaternion.encode(message.rotationDirection, writer.uint32(18).fork()).ldelim();
623
+ }
624
+ if (message.scaleDirection !== undefined) {
625
+ vectors_gen_1.Vector3.encode(message.scaleDirection, writer.uint32(26).fork()).ldelim();
626
+ }
627
+ if (message.speed !== 0) {
628
+ writer.uint32(37).float(message.speed);
629
+ }
630
+ return writer;
631
+ }
632
+ MoveRotateScaleContinuous.encode = encode;
633
+ function decode(input, length) {
634
+ const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
635
+ let end = length === undefined ? reader.len : reader.pos + length;
636
+ const message = createBaseMoveRotateScaleContinuous();
637
+ while (reader.pos < end) {
638
+ const tag = reader.uint32();
639
+ switch (tag >>> 3) {
640
+ case 1:
641
+ if (tag !== 10) {
642
+ break;
643
+ }
644
+ message.positionDirection = vectors_gen_1.Vector3.decode(reader, reader.uint32());
645
+ continue;
646
+ case 2:
647
+ if (tag !== 18) {
648
+ break;
649
+ }
650
+ message.rotationDirection = vectors_gen_1.Quaternion.decode(reader, reader.uint32());
651
+ continue;
652
+ case 3:
653
+ if (tag !== 26) {
654
+ break;
655
+ }
656
+ message.scaleDirection = vectors_gen_1.Vector3.decode(reader, reader.uint32());
657
+ continue;
658
+ case 4:
659
+ if (tag !== 37) {
660
+ break;
661
+ }
662
+ message.speed = reader.float();
663
+ continue;
664
+ }
665
+ if ((tag & 7) === 4 || tag === 0) {
666
+ break;
667
+ }
668
+ reader.skipType(tag & 7);
669
+ }
670
+ return message;
671
+ }
672
+ MoveRotateScaleContinuous.decode = decode;
673
+ })(MoveRotateScaleContinuous = exports.MoveRotateScaleContinuous || (exports.MoveRotateScaleContinuous = {}));
498
674
  function createBaseTextureMoveContinuous() {
499
675
  return { direction: undefined, speed: 0, movementType: undefined };
500
676
  }
@@ -6,6 +6,7 @@ import { CameraTransition } from "./common/camera_transition.gen";
6
6
  * an 'instant' transition (like using speed/time = 0)
7
7
  * * The lookAtEntity defines to which entity the Camera has to look at constantly (independent from
8
8
  * the holding entity transform).
9
+ * * The fov defines the Field of View of the virtual camera
9
10
  */
10
11
  /**
11
12
  * @public
@@ -13,6 +14,8 @@ import { CameraTransition } from "./common/camera_transition.gen";
13
14
  export interface PBVirtualCamera {
14
15
  defaultTransition?: CameraTransition | undefined;
15
16
  lookAtEntity?: number | undefined;
17
+ /** default: 60 */
18
+ fov?: number | undefined;
16
19
  }
17
20
  /**
18
21
  * @public
@@ -9,7 +9,7 @@ const minimal_1 = __importDefault(require("protobufjs/minimal"));
9
9
  const camera_transition_gen_1 = require("./common/camera_transition.gen");
10
10
  const protobufPackageSarasa = "decentraland.sdk.components";
11
11
  function createBasePBVirtualCamera() {
12
- return { defaultTransition: undefined, lookAtEntity: undefined };
12
+ return { defaultTransition: undefined, lookAtEntity: undefined, fov: undefined };
13
13
  }
14
14
  /**
15
15
  * @public
@@ -23,6 +23,9 @@ var PBVirtualCamera;
23
23
  if (message.lookAtEntity !== undefined) {
24
24
  writer.uint32(16).uint32(message.lookAtEntity);
25
25
  }
26
+ if (message.fov !== undefined) {
27
+ writer.uint32(29).float(message.fov);
28
+ }
26
29
  return writer;
27
30
  }
28
31
  PBVirtualCamera.encode = encode;
@@ -45,6 +48,12 @@ var PBVirtualCamera;
45
48
  }
46
49
  message.lookAtEntity = reader.uint32();
47
50
  continue;
51
+ case 3:
52
+ if (tag !== 29) {
53
+ break;
54
+ }
55
+ message.fov = reader.float();
56
+ continue;
48
57
  }
49
58
  if ((tag & 7) === 4 || tag === 0) {
50
59
  break;
@@ -2,6 +2,8 @@ import { GrowOnlyValueSetComponentDefinition, LastWriteWinElementSetComponentDef
2
2
  import { IEngine } from '../engine/types';
3
3
  import { AnimatorComponentDefinitionExtended } from './extended/Animator';
4
4
  import { AudioSourceComponentDefinitionExtended } from './extended/AudioSource';
5
+ import { AudioAnalysisComponentDefinitionExtended } from './extended/AudioAnalysis';
6
+ import type { AudioAnalysisView } from './extended/AudioAnalysis';
5
7
  import { MaterialComponentDefinitionExtended } from './extended/Material';
6
8
  import { MeshColliderComponentDefinitionExtended } from './extended/MeshCollider';
7
9
  import { MeshRendererComponentDefinitionExtended } from './extended/MeshRenderer';
@@ -25,6 +27,7 @@ export declare const Transform: LwwComponentGetter<TransformComponentExtended>;
25
27
  export declare const Material: LwwComponentGetter<MaterialComponentDefinitionExtended>;
26
28
  export declare const Animator: LwwComponentGetter<AnimatorComponentDefinitionExtended>;
27
29
  export declare const AudioSource: LwwComponentGetter<AudioSourceComponentDefinitionExtended>;
30
+ export declare const AudioAnalysis: LwwComponentGetter<AudioAnalysisComponentDefinitionExtended>;
28
31
  export declare const AudioStream: (engine: Pick<IEngine, 'defineComponentFromSchema' | 'defineValueSetComponentFromSchema'>) => AudioStreamComponentDefinitionExtended;
29
32
  export declare const MeshRenderer: LwwComponentGetter<MeshRendererComponentDefinitionExtended>;
30
33
  export declare const MeshCollider: LwwComponentGetter<MeshColliderComponentDefinitionExtended>;
@@ -51,3 +54,4 @@ export declare const NetworkEntity: (engine: Pick<IEngine, 'defineComponent'>) =
51
54
  */
52
55
  export declare const NetworkParent: (engine: Pick<IEngine, 'defineComponent'>) => LastWriteWinElementSetComponentDefinition<INetowrkParentType>;
53
56
  export { MediaState };
57
+ export type { AudioAnalysisView };
@@ -17,9 +17,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
17
17
  return (mod && mod.__esModule) ? mod : { "default": mod };
18
18
  };
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.MediaState = exports.NetworkParent = exports.NetworkEntity = exports.SyncComponents = exports.Tags = exports.Name = exports.TriggerArea = exports.LightSource = exports.InputModifier = exports.VirtualCamera = exports.Tween = exports.MeshCollider = exports.MeshRenderer = exports.AudioStream = exports.AudioSource = exports.Animator = exports.Material = exports.Transform = void 0;
20
+ exports.MediaState = exports.NetworkParent = exports.NetworkEntity = exports.SyncComponents = exports.Tags = exports.Name = exports.TriggerArea = exports.LightSource = exports.InputModifier = exports.VirtualCamera = exports.Tween = exports.MeshCollider = exports.MeshRenderer = exports.AudioStream = exports.AudioAnalysis = exports.AudioSource = exports.Animator = exports.Material = exports.Transform = void 0;
21
21
  const Animator_1 = require("./extended/Animator");
22
22
  const AudioSource_1 = require("./extended/AudioSource");
23
+ const AudioAnalysis_1 = require("./extended/AudioAnalysis");
23
24
  const Material_1 = require("./extended/Material");
24
25
  const MeshCollider_1 = require("./extended/MeshCollider");
25
26
  const MeshRenderer_1 = require("./extended/MeshRenderer");
@@ -51,6 +52,9 @@ exports.Animator = Animator;
51
52
  const AudioSource = (engine) => (0, AudioSource_1.defineAudioSourceComponent)(engine);
52
53
  exports.AudioSource = AudioSource;
53
54
  /* @__PURE__ */
55
+ const AudioAnalysis = (engine) => (0, AudioAnalysis_1.defineAudioAnalysisComponent)(engine);
56
+ exports.AudioAnalysis = AudioAnalysis;
57
+ /* @__PURE__ */
54
58
  const AudioStream = (engine) => (0, AudioStream_1.defineAudioStreamComponent)(engine);
55
59
  exports.AudioStream = AudioStream;
56
60
  /* @__PURE__ */
@@ -1,10 +1,11 @@
1
1
  export type { AnimatorComponentDefinitionExtended } from './extended/Animator';
2
2
  export type { AudioSourceComponentDefinitionExtended } from './extended/AudioSource';
3
+ export type { AudioAnalysisComponentDefinitionExtended, AudioAnalysisView } from './extended/AudioAnalysis';
3
4
  export type { AudioStreamComponentDefinitionExtended } from './extended/AudioStream';
4
5
  export type { MeshRendererComponentDefinitionExtended } from './extended/MeshRenderer';
5
6
  export type { MeshColliderComponentDefinitionExtended } from './extended/MeshCollider';
6
7
  export type { TextureHelper, MaterialComponentDefinitionExtended, FlatTexture, ReadonlyFlatMaterial, ReadonlyFlatTexture, FlatMaterial } from './extended/Material';
7
- export type { TweenHelper, TweenComponentDefinitionExtended } from './extended/Tween';
8
+ export type { TweenHelper, TweenComponentDefinitionExtended, SetMoveRotateScaleParams, SetMoveRotateScaleContinuousParams, MoveRotateScaleModeParams, MoveRotateScaleContinuousModeParams } from './extended/Tween';
8
9
  export type { CameraTransitionHelper, VirtualCameraComponentDefinitionExtended } from './extended/VirtualCamera';
9
10
  export type { TransformComponentExtended, TransformTypeWithOptionals } from './manual/Transform';
10
11
  export type { NameComponent, NameType } from './manual/Name';
@@ -64,10 +64,8 @@ var EntityState;
64
64
  */
65
65
  function createEntityContainer(opts) {
66
66
  const reservedStaticEntities = opts?.reservedStaticEntities ?? exports.RESERVED_STATIC_ENTITIES;
67
- // If a build tool has set DCL_MAX_COMPOSITE_ENTITY (via esbuild define),
68
- // start the counter past composite entities to prevent ID collisions.
69
- const maxCompositeEntity = typeof DCL_MAX_COMPOSITE_ENTITY !== 'undefined' ? DCL_MAX_COMPOSITE_ENTITY : 0;
70
- let entityCounter = Math.max(reservedStaticEntities, maxCompositeEntity > 0 ? maxCompositeEntity + 1 : 0);
67
+ // Local entities counter
68
+ let entityCounter = reservedStaticEntities;
71
69
  const usedEntities = new Set();
72
70
  let toRemoveEntities = [];
73
71
  const removedEntities = (0, gset_1.createVersionGSet)();
@@ -13,12 +13,13 @@ export * from './systems/tween';
13
13
  export * from './systems/triggerArea';
14
14
  export * from './engine/entity';
15
15
  export * from './components/types';
16
- import { MaterialComponentDefinitionExtended, MeshColliderComponentDefinitionExtended, MeshRendererComponentDefinitionExtended, TransformComponentExtended, AnimatorComponentDefinitionExtended, AudioSourceComponentDefinitionExtended, AudioStreamComponentDefinitionExtended, ISyncComponents, TweenComponentDefinitionExtended, INetowrkEntity, INetowrkParent, VirtualCameraComponentDefinitionExtended, InputModifierComponentDefinitionExtended, LightSourceComponentDefinitionExtended, TriggerAreaComponentDefinitionExtended } from './components/types';
16
+ import { MaterialComponentDefinitionExtended, MeshColliderComponentDefinitionExtended, MeshRendererComponentDefinitionExtended, TransformComponentExtended, AnimatorComponentDefinitionExtended, AudioSourceComponentDefinitionExtended, AudioAnalysisComponentDefinitionExtended, AudioStreamComponentDefinitionExtended, ISyncComponents, TweenComponentDefinitionExtended, INetowrkEntity, INetowrkParent, VirtualCameraComponentDefinitionExtended, InputModifierComponentDefinitionExtended, LightSourceComponentDefinitionExtended, TriggerAreaComponentDefinitionExtended } from './components/types';
17
17
  import { NameComponent } from './components/manual/Name';
18
18
  import { TagsComponentDefinitionExtended } from './components/manual/Tags';
19
19
  export declare const Transform: TransformComponentExtended;
20
20
  export declare const Animator: AnimatorComponentDefinitionExtended;
21
21
  export declare const AudioSource: AudioSourceComponentDefinitionExtended;
22
+ export declare const AudioAnalysis: AudioAnalysisComponentDefinitionExtended;
22
23
  export declare const AudioStream: AudioStreamComponentDefinitionExtended;
23
24
  export declare const Material: MaterialComponentDefinitionExtended;
24
25
  export declare const MeshRenderer: MeshRendererComponentDefinitionExtended;
package/dist-cjs/index.js CHANGED
@@ -26,7 +26,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
26
26
  return result;
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.NetworkParent = exports.NetworkEntity = exports.SyncComponents = exports.TriggerArea = exports.LightSource = exports.InputModifier = exports.VirtualCamera = exports.Tween = exports.Tags = exports.Name = exports.MeshCollider = exports.MeshRenderer = exports.Material = exports.AudioStream = exports.AudioSource = exports.Animator = exports.Transform = exports.components = exports.cyclicParentingChecker = void 0;
29
+ exports.NetworkParent = exports.NetworkEntity = exports.SyncComponents = exports.TriggerArea = exports.LightSource = exports.InputModifier = exports.VirtualCamera = exports.Tween = exports.Tags = exports.Name = exports.MeshCollider = exports.MeshRenderer = exports.Material = exports.AudioStream = exports.AudioAnalysis = exports.AudioSource = exports.Animator = exports.Transform = exports.components = exports.cyclicParentingChecker = void 0;
30
30
  // The order of the following imports matters. Please do not auto-sort
31
31
  __exportStar(require("./engine"), exports);
32
32
  __exportStar(require("./schemas"), exports);
@@ -52,6 +52,7 @@ const initialization_1 = require("./runtime/initialization");
52
52
  exports.Transform = components.Transform(initialization_1.engine);
53
53
  exports.Animator = components.Animator(initialization_1.engine);
54
54
  exports.AudioSource = components.AudioSource(initialization_1.engine);
55
+ exports.AudioAnalysis = components.AudioAnalysis(initialization_1.engine);
55
56
  exports.AudioStream = components.AudioStream(initialization_1.engine);
56
57
  exports.Material = components.Material(initialization_1.engine);
57
58
  exports.MeshRenderer = components.MeshRenderer(initialization_1.engine);
@@ -17,6 +17,7 @@ export type EventSystemOptions = {
17
17
  showFeedback?: boolean;
18
18
  showHighlight?: boolean;
19
19
  maxPlayerDistance?: number;
20
+ priority?: number;
20
21
  };
21
22
  export declare const getDefaultOpts: (opts?: Partial<EventSystemOptions>) => EventSystemOptions;
22
23
  /**
@@ -47,6 +48,30 @@ export interface PointerEventsSystem {
47
48
  * @param entity - Entity where the callback was attached
48
49
  */
49
50
  removeOnPointerHoverLeave(entity: Entity): void;
51
+ /**
52
+ * @public
53
+ * Remove the callback for onProximityDown event
54
+ * @param entity - Entity where the callback was attached
55
+ */
56
+ removeOnProximityDown(entity: Entity): void;
57
+ /**
58
+ * @public
59
+ * Remove the callback for onProximityUp event
60
+ * @param entity - Entity where the callback was attached
61
+ */
62
+ removeOnProximityUp(entity: Entity): void;
63
+ /**
64
+ * @public
65
+ * Remove the callback for onProximityEnter event
66
+ * @param entity - Entity where the callback was attached
67
+ */
68
+ removeOnProximityEnter(entity: Entity): void;
69
+ /**
70
+ * @public
71
+ * Remove the callback for onProximityLeave event
72
+ * @param entity - Entity where the callback was attached
73
+ */
74
+ removeOnProximityLeave(entity: Entity): void;
50
75
  /**
51
76
  * @public
52
77
  * Execute callback when the user press the InputButton pointing at the entity
@@ -101,6 +126,46 @@ export interface PointerEventsSystem {
101
126
  entity: Entity;
102
127
  opts?: Partial<EventSystemOptions>;
103
128
  }, cb: EventSystemCallback): void;
129
+ /**
130
+ * @public
131
+ * Execute callback when the user presses the proximity button on the entity
132
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
133
+ * @param cb - Function to execute when click fires
134
+ */
135
+ onProximityDown(pointerData: {
136
+ entity: Entity;
137
+ opts?: Partial<EventSystemOptions>;
138
+ }, cb: EventSystemCallback): void;
139
+ /**
140
+ * @public
141
+ * Execute callback when the user releases the proximity button on the entity
142
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
143
+ * @param cb - Function to execute when event fires
144
+ */
145
+ onProximityUp(pointerData: {
146
+ entity: Entity;
147
+ opts?: Partial<EventSystemOptions>;
148
+ }, cb: EventSystemCallback): void;
149
+ /**
150
+ * @public
151
+ * Execute callback when the entity enters the proximity zone of the user
152
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
153
+ * @param cb - Function to execute when event fires
154
+ */
155
+ onProximityEnter(pointerData: {
156
+ entity: Entity;
157
+ opts?: Partial<EventSystemOptions>;
158
+ }, cb: EventSystemCallback): void;
159
+ /**
160
+ * @public
161
+ * Execute callback when the entity leaves the proximity zone of the user
162
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
163
+ * @param cb - Function to execute when event fires
164
+ */
165
+ onProximityLeave(pointerData: {
166
+ entity: Entity;
167
+ opts?: Partial<EventSystemOptions>;
168
+ }, cb: EventSystemCallback): void;
104
169
  }
105
170
  /**
106
171
  * @public
@@ -45,12 +45,14 @@ function createPointerEventsSystem(engine, inputSystem) {
45
45
  EventType[EventType["Up"] = 2] = "Up";
46
46
  EventType[EventType["HoverEnter"] = 3] = "HoverEnter";
47
47
  EventType[EventType["HoverLeave"] = 4] = "HoverLeave";
48
+ EventType[EventType["ProximityEnter"] = 5] = "ProximityEnter";
49
+ EventType[EventType["ProximityLeave"] = 6] = "ProximityLeave";
48
50
  })(EventType || (EventType = {}));
49
51
  const eventsMap = new Map();
50
52
  function getEvent(entity) {
51
53
  return eventsMap.get(entity) || eventsMap.set(entity, new Map()).get(entity);
52
54
  }
53
- function setPointerEvent(entity, type, opts) {
55
+ function setPointerEvent(entity, type, opts, interactionType = 0 /* InteractionType.CURSOR */) {
54
56
  const pointerEvent = PointerEvents.getMutableOrNull(entity) || PointerEvents.create(entity);
55
57
  pointerEvent.pointerEvents.push({
56
58
  eventType: type,
@@ -60,15 +62,19 @@ function createPointerEventsSystem(engine, inputSystem) {
60
62
  showHighlight: opts.showHighlight,
61
63
  hoverText: opts.hoverText,
62
64
  maxDistance: opts.maxDistance,
63
- maxPlayerDistance: opts.maxPlayerDistance
64
- }
65
+ maxPlayerDistance: opts.maxPlayerDistance,
66
+ priority: opts.priority
67
+ },
68
+ interactionType: interactionType ?? 0 /* InteractionType.CURSOR */
65
69
  });
66
70
  }
67
- function removePointerEvent(entity, type, button) {
71
+ function removePointerEvent(entity, type, button, interactionType = 0 /* InteractionType.CURSOR */) {
68
72
  const pointerEvent = PointerEvents.getMutableOrNull(entity);
69
73
  if (!pointerEvent)
70
74
  return;
71
- pointerEvent.pointerEvents = pointerEvent.pointerEvents.filter((pointer) => !(pointer.eventInfo?.button === button && pointer.eventType === type));
75
+ pointerEvent.pointerEvents = pointerEvent.pointerEvents.filter((pointer) => !(pointer.eventInfo?.button === button &&
76
+ pointer.eventType === type &&
77
+ pointer.interactionType === interactionType));
72
78
  }
73
79
  function getPointerEvent(eventType) {
74
80
  if (eventType === EventType.Up) {
@@ -80,9 +86,15 @@ function createPointerEventsSystem(engine, inputSystem) {
80
86
  else if (eventType === EventType.HoverEnter) {
81
87
  return 2 /* PointerEventType.PET_HOVER_ENTER */;
82
88
  }
89
+ else if (eventType === EventType.ProximityEnter) {
90
+ return 4 /* PointerEventType.PET_PROXIMITY_ENTER */;
91
+ }
92
+ else if (eventType === EventType.ProximityLeave) {
93
+ return 5 /* PointerEventType.PET_PROXIMITY_LEAVE */;
94
+ }
83
95
  return 1 /* PointerEventType.PET_DOWN */;
84
96
  }
85
- function removeEvent(entity, type) {
97
+ function removeEvent(entity, type, interactionType = 0 /* InteractionType.CURSOR */) {
86
98
  const event = getEvent(entity);
87
99
  const pointerEvent = event.get(type);
88
100
  if (pointerEvent?.opts.hoverText) {
@@ -105,7 +117,9 @@ function createPointerEventsSystem(engine, inputSystem) {
105
117
  if (eventType === EventType.Down ||
106
118
  eventType === EventType.Up ||
107
119
  eventType === EventType.HoverEnter ||
108
- eventType === EventType.HoverLeave) {
120
+ eventType === EventType.HoverLeave ||
121
+ eventType === EventType.ProximityEnter ||
122
+ eventType === EventType.ProximityLeave) {
109
123
  const command = inputSystem.getInputCommand(opts.button, getPointerEvent(eventType), entity);
110
124
  if (command) {
111
125
  (0, invariant_1.checkNotThenable)(cb(command), 'Event handler returned a thenable. Only synchronous functions are allowed');
@@ -152,6 +166,38 @@ function createPointerEventsSystem(engine, inputSystem) {
152
166
  getEvent(entity).set(EventType.HoverLeave, { cb, opts: options });
153
167
  setPointerEvent(entity, 3 /* PointerEventType.PET_HOVER_LEAVE */, options);
154
168
  };
169
+ const onProximityDown = (...args) => {
170
+ const [data, cb] = args;
171
+ const { entity, opts } = data;
172
+ const options = (0, exports.getDefaultOpts)(opts);
173
+ removeEvent(entity, EventType.Down, 1 /* InteractionType.PROXIMITY */);
174
+ getEvent(entity).set(EventType.Down, { cb, opts: options });
175
+ setPointerEvent(entity, 1 /* PointerEventType.PET_DOWN */, options, 1 /* InteractionType.PROXIMITY */);
176
+ };
177
+ const onProximityUp = (...args) => {
178
+ const [data, cb] = args;
179
+ const { entity, opts } = data;
180
+ const options = (0, exports.getDefaultOpts)(opts);
181
+ removeEvent(entity, EventType.Up, 1 /* InteractionType.PROXIMITY */);
182
+ getEvent(entity).set(EventType.Up, { cb, opts: options });
183
+ setPointerEvent(entity, 0 /* PointerEventType.PET_UP */, options, 1 /* InteractionType.PROXIMITY */);
184
+ };
185
+ const onProximityEnter = (...args) => {
186
+ const [data, cb] = args;
187
+ const { entity, opts } = data;
188
+ const options = (0, exports.getDefaultOpts)(opts);
189
+ removeEvent(entity, EventType.ProximityEnter, 1 /* InteractionType.PROXIMITY */);
190
+ getEvent(entity).set(EventType.ProximityEnter, { cb, opts: options });
191
+ setPointerEvent(entity, 4 /* PointerEventType.PET_PROXIMITY_ENTER */, options, 1 /* InteractionType.PROXIMITY */);
192
+ };
193
+ const onProximityLeave = (...args) => {
194
+ const [data, cb] = args;
195
+ const { entity, opts } = data;
196
+ const options = (0, exports.getDefaultOpts)(opts);
197
+ removeEvent(entity, EventType.ProximityLeave, 1 /* InteractionType.PROXIMITY */);
198
+ getEvent(entity).set(EventType.ProximityLeave, { cb, opts: options });
199
+ setPointerEvent(entity, 5 /* PointerEventType.PET_PROXIMITY_LEAVE */, options, 1 /* InteractionType.PROXIMITY */);
200
+ };
155
201
  return {
156
202
  removeOnClick(entity) {
157
203
  removeEvent(entity, EventType.Click);
@@ -168,6 +214,18 @@ function createPointerEventsSystem(engine, inputSystem) {
168
214
  removeOnPointerHoverLeave(entity) {
169
215
  removeEvent(entity, EventType.HoverLeave);
170
216
  },
217
+ removeOnProximityDown(entity) {
218
+ removeEvent(entity, EventType.Down, 1 /* InteractionType.PROXIMITY */);
219
+ },
220
+ removeOnProximityUp(entity) {
221
+ removeEvent(entity, EventType.Up, 1 /* InteractionType.PROXIMITY */);
222
+ },
223
+ removeOnProximityEnter(entity) {
224
+ removeEvent(entity, EventType.ProximityEnter, 1 /* InteractionType.PROXIMITY */);
225
+ },
226
+ removeOnProximityLeave(entity) {
227
+ removeEvent(entity, EventType.ProximityLeave, 1 /* InteractionType.PROXIMITY */);
228
+ },
171
229
  onClick(value, cb) {
172
230
  const { entity } = value;
173
231
  const options = (0, exports.getDefaultOpts)(value.opts);
@@ -180,7 +238,11 @@ function createPointerEventsSystem(engine, inputSystem) {
180
238
  onPointerDown,
181
239
  onPointerUp,
182
240
  onPointerHoverEnter,
183
- onPointerHoverLeave
241
+ onPointerHoverLeave,
242
+ onProximityDown,
243
+ onProximityUp,
244
+ onProximityEnter,
245
+ onProximityLeave
184
246
  };
185
247
  }
186
248
  exports.createPointerEventsSystem = createPointerEventsSystem;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@dcl/ecs",
3
3
  "description": "Decentraland ECS",
4
- "version": "7.20.4",
4
+ "version": "7.20.5-22631826546.commit-7c189f5",
5
5
  "author": "DCL",
6
6
  "bugs": "https://github.com/decentraland/ecs/issues",
7
7
  "files": [
@@ -33,5 +33,5 @@
33
33
  },
34
34
  "types": "./dist/index.d.ts",
35
35
  "typings": "./dist/index.d.ts",
36
- "commit": "46ce8981334e95bd4d0a007d64be2c875a526129"
36
+ "commit": "7c189f506c0cafa9920233b0b576ab1e6d16ab75"
37
37
  }