@dcl/protocol 1.0.0-22483842997.commit-1c3d55b → 1.0.0-22576258588.commit-8e30970

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 (120) hide show
  1. package/out-js/decentraland/common/texture.gen.d.ts +18 -0
  2. package/out-js/decentraland/common/texture.gen.js +104 -4
  3. package/out-js/decentraland/common/texture.gen.js.map +1 -1
  4. package/out-js/decentraland/kernel/apis/restricted_actions.gen.d.ts +70 -0
  5. package/out-js/decentraland/kernel/apis/restricted_actions.gen.js +228 -1
  6. package/out-js/decentraland/kernel/apis/restricted_actions.gen.js.map +1 -1
  7. package/out-js/decentraland/kernel/comms/rfc4/comms.gen.d.ts +0 -46
  8. package/out-js/decentraland/kernel/comms/rfc4/comms.gen.js +12 -315
  9. package/out-js/decentraland/kernel/comms/rfc4/comms.gen.js.map +1 -1
  10. package/out-js/decentraland/sdk/components/avatar_equipped_data.gen.d.ts +2 -0
  11. package/out-js/decentraland/sdk/components/avatar_equipped_data.gen.js +19 -2
  12. package/out-js/decentraland/sdk/components/avatar_equipped_data.gen.js.map +1 -1
  13. package/out-js/decentraland/sdk/components/avatar_locomotion_settings.gen.d.ts +45 -0
  14. package/out-js/decentraland/sdk/components/avatar_locomotion_settings.gen.js +138 -0
  15. package/out-js/decentraland/sdk/components/avatar_locomotion_settings.gen.js.map +1 -0
  16. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.d.ts +41 -0
  17. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.js +241 -3
  18. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.js.map +1 -1
  19. package/out-js/decentraland/sdk/components/avatar_movement.gen.d.ts +34 -0
  20. package/out-js/decentraland/sdk/components/avatar_movement.gen.js +101 -0
  21. package/out-js/decentraland/sdk/components/avatar_movement.gen.js.map +1 -0
  22. package/out-js/decentraland/sdk/components/avatar_movement_info.gen.d.ts +44 -0
  23. package/out-js/decentraland/sdk/components/avatar_movement_info.gen.js +178 -0
  24. package/out-js/decentraland/sdk/components/avatar_movement_info.gen.js.map +1 -0
  25. package/out-js/decentraland/sdk/components/avatar_shape.gen.d.ts +2 -0
  26. package/out-js/decentraland/sdk/components/avatar_shape.gen.js +19 -1
  27. package/out-js/decentraland/sdk/components/avatar_shape.gen.js.map +1 -1
  28. package/out-js/decentraland/sdk/components/camera_mode_area.gen.d.ts +35 -1
  29. package/out-js/decentraland/sdk/components/camera_mode_area.gen.js +172 -3
  30. package/out-js/decentraland/sdk/components/camera_mode_area.gen.js.map +1 -1
  31. package/out-js/decentraland/sdk/components/common/input_action.gen.d.ts +3 -9
  32. package/out-js/decentraland/sdk/components/common/input_action.gen.js +17 -44
  33. package/out-js/decentraland/sdk/components/common/input_action.gen.js.map +1 -1
  34. package/out-js/decentraland/sdk/components/gltf_container_loading_state.gen.d.ts +19 -0
  35. package/out-js/decentraland/sdk/components/gltf_container_loading_state.gen.js +90 -3
  36. package/out-js/decentraland/sdk/components/gltf_container_loading_state.gen.js.map +1 -1
  37. package/out-js/decentraland/sdk/components/gltf_node.gen.d.ts +66 -0
  38. package/out-js/decentraland/sdk/components/gltf_node.gen.js +69 -0
  39. package/out-js/decentraland/sdk/components/gltf_node.gen.js.map +1 -0
  40. package/out-js/decentraland/sdk/components/gltf_node_state.gen.d.ts +43 -0
  41. package/out-js/decentraland/sdk/components/gltf_node_state.gen.js +122 -0
  42. package/out-js/decentraland/sdk/components/gltf_node_state.gen.js.map +1 -0
  43. package/out-js/decentraland/sdk/components/input_modifier.gen.d.ts +50 -0
  44. package/out-js/decentraland/sdk/components/input_modifier.gen.js +207 -0
  45. package/out-js/decentraland/sdk/components/input_modifier.gen.js.map +1 -0
  46. package/out-js/decentraland/sdk/components/material.gen.d.ts +20 -0
  47. package/out-js/decentraland/sdk/components/material.gen.js +86 -2
  48. package/out-js/decentraland/sdk/components/material.gen.js.map +1 -1
  49. package/out-js/decentraland/sdk/components/mesh_collider.gen.d.ts +18 -0
  50. package/out-js/decentraland/sdk/components/mesh_collider.gen.js +90 -4
  51. package/out-js/decentraland/sdk/components/mesh_collider.gen.js.map +1 -1
  52. package/out-js/decentraland/sdk/components/mesh_renderer.gen.d.ts +19 -3
  53. package/out-js/decentraland/sdk/components/mesh_renderer.gen.js +90 -4
  54. package/out-js/decentraland/sdk/components/mesh_renderer.gen.js.map +1 -1
  55. package/out-js/decentraland/sdk/components/pointer_events.gen.d.ts +1 -5
  56. package/out-js/decentraland/sdk/components/pointer_events.gen.js +3 -31
  57. package/out-js/decentraland/sdk/components/pointer_events.gen.js.map +1 -1
  58. package/out-js/decentraland/sdk/components/raycast.gen.d.ts +13 -0
  59. package/out-js/decentraland/sdk/components/raycast.gen.js +64 -2
  60. package/out-js/decentraland/sdk/components/raycast.gen.js.map +1 -1
  61. package/out-js/decentraland/sdk/components/ui_text.gen.d.ts +4 -0
  62. package/out-js/decentraland/sdk/components/ui_text.gen.js +30 -1
  63. package/out-js/decentraland/sdk/components/ui_text.gen.js.map +1 -1
  64. package/out-js/decentraland/sdk/components/ui_transform.gen.d.ts +33 -0
  65. package/out-js/decentraland/sdk/components/ui_transform.gen.js +176 -3
  66. package/out-js/decentraland/sdk/components/ui_transform.gen.js.map +1 -1
  67. package/out-ts/decentraland/common/texture.gen.ts +119 -4
  68. package/out-ts/decentraland/kernel/apis/restricted_actions.gen.ts +242 -0
  69. package/out-ts/decentraland/kernel/comms/rfc4/comms.gen.ts +3 -375
  70. package/out-ts/decentraland/sdk/components/avatar_equipped_data.gen.ts +20 -1
  71. package/out-ts/decentraland/sdk/components/avatar_locomotion_settings.gen.ts +183 -0
  72. package/out-ts/decentraland/sdk/components/avatar_modifier_area.gen.ts +292 -1
  73. package/out-ts/decentraland/sdk/components/avatar_movement.gen.ts +119 -0
  74. package/out-ts/decentraland/sdk/components/avatar_movement_info.gen.ts +210 -0
  75. package/out-ts/decentraland/sdk/components/avatar_shape.gen.ts +23 -1
  76. package/out-ts/decentraland/sdk/components/camera_mode_area.gen.ts +218 -2
  77. package/out-ts/decentraland/sdk/components/common/input_action.gen.ts +16 -43
  78. package/out-ts/decentraland/sdk/components/gltf_container_loading_state.gen.ts +108 -2
  79. package/out-ts/decentraland/sdk/components/gltf_node.gen.ts +116 -0
  80. package/out-ts/decentraland/sdk/components/gltf_node_state.gen.ts +139 -0
  81. package/out-ts/decentraland/sdk/components/input_modifier.gen.ts +235 -0
  82. package/out-ts/decentraland/sdk/components/material.gen.ts +102 -1
  83. package/out-ts/decentraland/sdk/components/mesh_collider.gen.ts +99 -0
  84. package/out-ts/decentraland/sdk/components/mesh_renderer.gen.ts +100 -3
  85. package/out-ts/decentraland/sdk/components/pointer_events.gen.ts +3 -44
  86. package/out-ts/decentraland/sdk/components/raycast.gen.ts +73 -1
  87. package/out-ts/decentraland/sdk/components/ui_text.gen.ts +40 -1
  88. package/out-ts/decentraland/sdk/components/ui_transform.gen.ts +193 -0
  89. package/package.json +7 -4
  90. package/proto/decentraland/common/texture.proto +8 -1
  91. package/proto/decentraland/kernel/apis/restricted_actions.proto +22 -0
  92. package/proto/decentraland/kernel/comms/rfc4/comms.proto +0 -29
  93. package/proto/decentraland/sdk/components/avatar_equipped_data.proto +2 -1
  94. package/proto/decentraland/sdk/components/avatar_modifier_area.proto +21 -0
  95. package/proto/decentraland/sdk/components/avatar_movement.proto +45 -0
  96. package/proto/decentraland/sdk/components/avatar_movement_info.proto +20 -0
  97. package/proto/decentraland/sdk/components/avatar_shape.proto +1 -0
  98. package/proto/decentraland/sdk/components/camera_layer.proto +30 -0
  99. package/proto/decentraland/sdk/components/camera_layers.proto +11 -0
  100. package/proto/decentraland/sdk/components/camera_mode_area.proto +22 -3
  101. package/proto/decentraland/sdk/components/common/input_action.proto +3 -7
  102. package/proto/decentraland/sdk/components/global_light.proto +22 -0
  103. package/proto/decentraland/sdk/components/gltf_container_loading_state.proto +13 -0
  104. package/proto/decentraland/sdk/components/gltf_node.proto +42 -0
  105. package/proto/decentraland/sdk/components/gltf_node_state.proto +20 -0
  106. package/proto/decentraland/sdk/components/light_source.proto +1 -1
  107. package/proto/decentraland/sdk/components/material.proto +13 -1
  108. package/proto/decentraland/sdk/components/mesh_collider.proto +7 -0
  109. package/proto/decentraland/sdk/components/mesh_renderer.proto +8 -3
  110. package/proto/decentraland/sdk/components/pointer_events.proto +0 -2
  111. package/proto/decentraland/sdk/components/primary_pointer_info.proto +5 -0
  112. package/proto/decentraland/sdk/components/raycast.proto +13 -0
  113. package/proto/decentraland/sdk/components/texture_camera.proto +46 -0
  114. package/proto/decentraland/sdk/components/ui_canvas.proto +16 -0
  115. package/proto/decentraland/sdk/components/ui_scroll_result.proto +12 -0
  116. package/proto/decentraland/sdk/components/ui_text.proto +3 -0
  117. package/proto/decentraland/sdk/components/ui_transform.proto +20 -0
  118. package/proto/decentraland/sdk/components/virtual_camera.proto +0 -2
  119. package/public/sdk-components.proto +4 -0
  120. package/proto/decentraland/sdk/components/audio_analysis.proto +0 -44
@@ -47,6 +47,41 @@ export function raycastQueryTypeToJSON(object: RaycastQueryType): string {
47
47
  }
48
48
  }
49
49
 
50
+ export enum RaycastShape {
51
+ /** RS_RAY - cast a point, get collisions along a ray */
52
+ RS_RAY = 0,
53
+ /** RS_AVATAR - cast the avatar collider shape, get collisions from sweeping the shape */
54
+ RS_AVATAR = 1,
55
+ UNRECOGNIZED = -1,
56
+ }
57
+
58
+ export function raycastShapeFromJSON(object: any): RaycastShape {
59
+ switch (object) {
60
+ case 0:
61
+ case "RS_RAY":
62
+ return RaycastShape.RS_RAY;
63
+ case 1:
64
+ case "RS_AVATAR":
65
+ return RaycastShape.RS_AVATAR;
66
+ case -1:
67
+ case "UNRECOGNIZED":
68
+ default:
69
+ return RaycastShape.UNRECOGNIZED;
70
+ }
71
+ }
72
+
73
+ export function raycastShapeToJSON(object: RaycastShape): string {
74
+ switch (object) {
75
+ case RaycastShape.RS_RAY:
76
+ return "RS_RAY";
77
+ case RaycastShape.RS_AVATAR:
78
+ return "RS_AVATAR";
79
+ case RaycastShape.UNRECOGNIZED:
80
+ default:
81
+ return "UNRECOGNIZED";
82
+ }
83
+ }
84
+
50
85
  /**
51
86
  * The PBRaycast component and PBRaycastResult are defined in https://adr.decentraland.org/adr/ADR-200
52
87
  *
@@ -81,7 +116,15 @@ export interface PBRaycast {
81
116
  | boolean
82
117
  | undefined;
83
118
  /** Collision mask, by default CL_POINTER | CL_PHYSICS */
84
- collisionMask?: number | undefined;
119
+ collisionMask?:
120
+ | number
121
+ | undefined;
122
+ /** shape to cast, default ray */
123
+ shape?:
124
+ | RaycastShape
125
+ | undefined;
126
+ /** include hits with entities from other scenes */
127
+ includeWorld?: boolean | undefined;
85
128
  }
86
129
 
87
130
  function createBasePBRaycast(): PBRaycast {
@@ -93,6 +136,8 @@ function createBasePBRaycast(): PBRaycast {
93
136
  queryType: 0,
94
137
  continuous: undefined,
95
138
  collisionMask: undefined,
139
+ shape: undefined,
140
+ includeWorld: undefined,
96
141
  };
97
142
  }
98
143
 
@@ -130,6 +175,12 @@ export namespace PBRaycast {
130
175
  if (message.collisionMask !== undefined) {
131
176
  writer.uint32(72).uint32(message.collisionMask);
132
177
  }
178
+ if (message.shape !== undefined) {
179
+ writer.uint32(88).int32(message.shape);
180
+ }
181
+ if (message.includeWorld !== undefined) {
182
+ writer.uint32(96).bool(message.includeWorld);
183
+ }
133
184
  return writer;
134
185
  }
135
186
 
@@ -210,6 +261,20 @@ export namespace PBRaycast {
210
261
 
211
262
  message.collisionMask = reader.uint32();
212
263
  continue;
264
+ case 11:
265
+ if (tag !== 88) {
266
+ break;
267
+ }
268
+
269
+ message.shape = reader.int32() as any;
270
+ continue;
271
+ case 12:
272
+ if (tag !== 96) {
273
+ break;
274
+ }
275
+
276
+ message.includeWorld = reader.bool();
277
+ continue;
213
278
  }
214
279
  if ((tag & 7) === 4 || tag === 0) {
215
280
  break;
@@ -236,6 +301,8 @@ export namespace PBRaycast {
236
301
  queryType: isSet(object.queryType) ? raycastQueryTypeFromJSON(object.queryType) : 0,
237
302
  continuous: isSet(object.continuous) ? Boolean(object.continuous) : undefined,
238
303
  collisionMask: isSet(object.collisionMask) ? Number(object.collisionMask) : undefined,
304
+ shape: isSet(object.shape) ? raycastShapeFromJSON(object.shape) : undefined,
305
+ includeWorld: isSet(object.includeWorld) ? Boolean(object.includeWorld) : undefined,
239
306
  };
240
307
  }
241
308
 
@@ -261,6 +328,9 @@ export namespace PBRaycast {
261
328
  message.queryType !== undefined && (obj.queryType = raycastQueryTypeToJSON(message.queryType));
262
329
  message.continuous !== undefined && (obj.continuous = message.continuous);
263
330
  message.collisionMask !== undefined && (obj.collisionMask = Math.round(message.collisionMask));
331
+ message.shape !== undefined &&
332
+ (obj.shape = message.shape !== undefined ? raycastShapeToJSON(message.shape) : undefined);
333
+ message.includeWorld !== undefined && (obj.includeWorld = message.includeWorld);
264
334
  return obj;
265
335
  }
266
336
 
@@ -312,6 +382,8 @@ export namespace PBRaycast {
312
382
  message.queryType = object.queryType ?? 0;
313
383
  message.continuous = object.continuous ?? undefined;
314
384
  message.collisionMask = object.collisionMask ?? undefined;
385
+ message.shape = object.shape ?? undefined;
386
+ message.includeWorld = object.includeWorld ?? undefined;
315
387
  return message;
316
388
  }
317
389
  }
@@ -65,7 +65,15 @@ export interface PBUiText {
65
65
  | number
66
66
  | undefined;
67
67
  /** wrap text when the border is reached (default: TW_WRAP) */
68
- textWrap?: TextWrap | undefined;
68
+ textWrap?:
69
+ | TextWrap
70
+ | undefined;
71
+ /** width of the outline (default: 0) */
72
+ outlineWidth?:
73
+ | number
74
+ | undefined;
75
+ /** RGBA color of the outline (default: opaque black) */
76
+ outlineColor?: Color4 | undefined;
69
77
  }
70
78
 
71
79
  function createBasePBUiText(): PBUiText {
@@ -76,6 +84,8 @@ function createBasePBUiText(): PBUiText {
76
84
  font: undefined,
77
85
  fontSize: undefined,
78
86
  textWrap: undefined,
87
+ outlineWidth: undefined,
88
+ outlineColor: undefined,
79
89
  };
80
90
  }
81
91
 
@@ -99,6 +109,12 @@ export namespace PBUiText {
99
109
  if (message.textWrap !== undefined) {
100
110
  writer.uint32(48).int32(message.textWrap);
101
111
  }
112
+ if (message.outlineWidth !== undefined) {
113
+ writer.uint32(61).float(message.outlineWidth);
114
+ }
115
+ if (message.outlineColor !== undefined) {
116
+ Color4.encode(message.outlineColor, writer.uint32(66).fork()).ldelim();
117
+ }
102
118
  return writer;
103
119
  }
104
120
 
@@ -151,6 +167,20 @@ export namespace PBUiText {
151
167
 
152
168
  message.textWrap = reader.int32() as any;
153
169
  continue;
170
+ case 7:
171
+ if (tag !== 61) {
172
+ break;
173
+ }
174
+
175
+ message.outlineWidth = reader.float();
176
+ continue;
177
+ case 8:
178
+ if (tag !== 66) {
179
+ break;
180
+ }
181
+
182
+ message.outlineColor = Color4.decode(reader, reader.uint32());
183
+ continue;
154
184
  }
155
185
  if ((tag & 7) === 4 || tag === 0) {
156
186
  break;
@@ -168,6 +198,8 @@ export namespace PBUiText {
168
198
  font: isSet(object.font) ? fontFromJSON(object.font) : undefined,
169
199
  fontSize: isSet(object.fontSize) ? Number(object.fontSize) : undefined,
170
200
  textWrap: isSet(object.textWrap) ? textWrapFromJSON(object.textWrap) : undefined,
201
+ outlineWidth: isSet(object.outlineWidth) ? Number(object.outlineWidth) : undefined,
202
+ outlineColor: isSet(object.outlineColor) ? Color4.fromJSON(object.outlineColor) : undefined,
171
203
  };
172
204
  }
173
205
 
@@ -181,6 +213,9 @@ export namespace PBUiText {
181
213
  message.fontSize !== undefined && (obj.fontSize = Math.round(message.fontSize));
182
214
  message.textWrap !== undefined &&
183
215
  (obj.textWrap = message.textWrap !== undefined ? textWrapToJSON(message.textWrap) : undefined);
216
+ message.outlineWidth !== undefined && (obj.outlineWidth = message.outlineWidth);
217
+ message.outlineColor !== undefined &&
218
+ (obj.outlineColor = message.outlineColor ? Color4.toJSON(message.outlineColor) : undefined);
184
219
  return obj;
185
220
  }
186
221
 
@@ -198,6 +233,10 @@ export namespace PBUiText {
198
233
  message.font = object.font ?? undefined;
199
234
  message.fontSize = object.fontSize ?? undefined;
200
235
  message.textWrap = object.textWrap ?? undefined;
236
+ message.outlineWidth = object.outlineWidth ?? undefined;
237
+ message.outlineColor = (object.outlineColor !== undefined && object.outlineColor !== null)
238
+ ? Color4.fromPartial(object.outlineColor)
239
+ : undefined;
201
240
  return message;
202
241
  }
203
242
  }
@@ -1,6 +1,7 @@
1
1
  /* eslint-disable */
2
2
  import _m0 from "protobufjs/minimal";
3
3
  import { Color4 } from "../../common/colors.gen";
4
+ import { Vector2 } from "../../common/vectors.gen";
4
5
 
5
6
  export const protobufPackage = "decentraland.sdk.components";
6
7
 
@@ -472,6 +473,55 @@ export function pointerFilterModeToJSON(object: PointerFilterMode): string {
472
473
  }
473
474
  }
474
475
 
476
+ export enum ShowScrollBar {
477
+ SSB_BOTH = 0,
478
+ SSB_ONLY_VERTICAL = 1,
479
+ SSB_ONLY_HORIZONTAL = 2,
480
+ SSB_HIDDEN = 3,
481
+ UNRECOGNIZED = -1,
482
+ }
483
+
484
+ export function showScrollBarFromJSON(object: any): ShowScrollBar {
485
+ switch (object) {
486
+ case 0:
487
+ case "SSB_BOTH":
488
+ return ShowScrollBar.SSB_BOTH;
489
+ case 1:
490
+ case "SSB_ONLY_VERTICAL":
491
+ return ShowScrollBar.SSB_ONLY_VERTICAL;
492
+ case 2:
493
+ case "SSB_ONLY_HORIZONTAL":
494
+ return ShowScrollBar.SSB_ONLY_HORIZONTAL;
495
+ case 3:
496
+ case "SSB_HIDDEN":
497
+ return ShowScrollBar.SSB_HIDDEN;
498
+ case -1:
499
+ case "UNRECOGNIZED":
500
+ default:
501
+ return ShowScrollBar.UNRECOGNIZED;
502
+ }
503
+ }
504
+
505
+ export function showScrollBarToJSON(object: ShowScrollBar): string {
506
+ switch (object) {
507
+ case ShowScrollBar.SSB_BOTH:
508
+ return "SSB_BOTH";
509
+ case ShowScrollBar.SSB_ONLY_VERTICAL:
510
+ return "SSB_ONLY_VERTICAL";
511
+ case ShowScrollBar.SSB_ONLY_HORIZONTAL:
512
+ return "SSB_ONLY_HORIZONTAL";
513
+ case ShowScrollBar.SSB_HIDDEN:
514
+ return "SSB_HIDDEN";
515
+ case ShowScrollBar.UNRECOGNIZED:
516
+ default:
517
+ return "UNRECOGNIZED";
518
+ }
519
+ }
520
+
521
+ export interface ScrollPositionValue {
522
+ value?: { $case: "position"; position: Vector2 } | { $case: "reference"; reference: string } | undefined;
523
+ }
524
+
475
525
  export interface PBUiTransform {
476
526
  parent: number;
477
527
  rightOf: number;
@@ -616,10 +666,105 @@ export interface PBUiTransform {
616
666
  opacity?:
617
667
  | number
618
668
  | undefined;
669
+ /** reference for scroll_position. default empty */
670
+ elementId?:
671
+ | string
672
+ | undefined;
673
+ /** default position=(0,0) */
674
+ scrollPosition?:
675
+ | ScrollPositionValue
676
+ | undefined;
677
+ /** default ShowScrollBar.SSB_BOTH */
678
+ scrollVisible?:
679
+ | ShowScrollBar
680
+ | undefined;
619
681
  /** default: 0 — controls render stacking order. Higher values appear in front of lower values. */
620
682
  zIndex?: number | undefined;
621
683
  }
622
684
 
685
+ function createBaseScrollPositionValue(): ScrollPositionValue {
686
+ return { value: undefined };
687
+ }
688
+
689
+ export namespace ScrollPositionValue {
690
+ export function encode(message: ScrollPositionValue, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
691
+ switch (message.value?.$case) {
692
+ case "position":
693
+ Vector2.encode(message.value.position, writer.uint32(10).fork()).ldelim();
694
+ break;
695
+ case "reference":
696
+ writer.uint32(18).string(message.value.reference);
697
+ break;
698
+ }
699
+ return writer;
700
+ }
701
+
702
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): ScrollPositionValue {
703
+ const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
704
+ let end = length === undefined ? reader.len : reader.pos + length;
705
+ const message = createBaseScrollPositionValue();
706
+ while (reader.pos < end) {
707
+ const tag = reader.uint32();
708
+ switch (tag >>> 3) {
709
+ case 1:
710
+ if (tag !== 10) {
711
+ break;
712
+ }
713
+
714
+ message.value = { $case: "position", position: Vector2.decode(reader, reader.uint32()) };
715
+ continue;
716
+ case 2:
717
+ if (tag !== 18) {
718
+ break;
719
+ }
720
+
721
+ message.value = { $case: "reference", reference: reader.string() };
722
+ continue;
723
+ }
724
+ if ((tag & 7) === 4 || tag === 0) {
725
+ break;
726
+ }
727
+ reader.skipType(tag & 7);
728
+ }
729
+ return message;
730
+ }
731
+
732
+ export function fromJSON(object: any): ScrollPositionValue {
733
+ return {
734
+ value: isSet(object.position)
735
+ ? { $case: "position", position: Vector2.fromJSON(object.position) }
736
+ : isSet(object.reference)
737
+ ? { $case: "reference", reference: String(object.reference) }
738
+ : undefined,
739
+ };
740
+ }
741
+
742
+ export function toJSON(message: ScrollPositionValue): unknown {
743
+ const obj: any = {};
744
+ message.value?.$case === "position" &&
745
+ (obj.position = message.value?.position ? Vector2.toJSON(message.value?.position) : undefined);
746
+ message.value?.$case === "reference" && (obj.reference = message.value?.reference);
747
+ return obj;
748
+ }
749
+
750
+ export function create<I extends Exact<DeepPartial<ScrollPositionValue>, I>>(base?: I): ScrollPositionValue {
751
+ return ScrollPositionValue.fromPartial(base ?? {});
752
+ }
753
+
754
+ export function fromPartial<I extends Exact<DeepPartial<ScrollPositionValue>, I>>(object: I): ScrollPositionValue {
755
+ const message = createBaseScrollPositionValue();
756
+ if (object.value?.$case === "position" && object.value?.position !== undefined && object.value?.position !== null) {
757
+ message.value = { $case: "position", position: Vector2.fromPartial(object.value.position) };
758
+ }
759
+ if (
760
+ object.value?.$case === "reference" && object.value?.reference !== undefined && object.value?.reference !== null
761
+ ) {
762
+ message.value = { $case: "reference", reference: object.value.reference };
763
+ }
764
+ return message;
765
+ }
766
+ }
767
+
623
768
  function createBasePBUiTransform(): PBUiTransform {
624
769
  return {
625
770
  parent: 0,
@@ -695,6 +840,9 @@ function createBasePBUiTransform(): PBUiTransform {
695
840
  borderLeftColor: undefined,
696
841
  borderRightColor: undefined,
697
842
  opacity: undefined,
843
+ elementId: undefined,
844
+ scrollPosition: undefined,
845
+ scrollVisible: undefined,
698
846
  zIndex: undefined,
699
847
  };
700
848
  }
@@ -920,6 +1068,15 @@ export namespace PBUiTransform {
920
1068
  if (message.opacity !== undefined) {
921
1069
  writer.uint32(589).float(message.opacity);
922
1070
  }
1071
+ if (message.elementId !== undefined) {
1072
+ writer.uint32(594).string(message.elementId);
1073
+ }
1074
+ if (message.scrollPosition !== undefined) {
1075
+ ScrollPositionValue.encode(message.scrollPosition, writer.uint32(602).fork()).ldelim();
1076
+ }
1077
+ if (message.scrollVisible !== undefined) {
1078
+ writer.uint32(608).int32(message.scrollVisible);
1079
+ }
923
1080
  if (message.zIndex !== undefined) {
924
1081
  writer.uint32(616).int32(message.zIndex);
925
1082
  }
@@ -1444,6 +1601,27 @@ export namespace PBUiTransform {
1444
1601
 
1445
1602
  message.opacity = reader.float();
1446
1603
  continue;
1604
+ case 74:
1605
+ if (tag !== 594) {
1606
+ break;
1607
+ }
1608
+
1609
+ message.elementId = reader.string();
1610
+ continue;
1611
+ case 75:
1612
+ if (tag !== 602) {
1613
+ break;
1614
+ }
1615
+
1616
+ message.scrollPosition = ScrollPositionValue.decode(reader, reader.uint32());
1617
+ continue;
1618
+ case 76:
1619
+ if (tag !== 608) {
1620
+ break;
1621
+ }
1622
+
1623
+ message.scrollVisible = reader.int32() as any;
1624
+ continue;
1447
1625
  case 77:
1448
1626
  if (tag !== 616) {
1449
1627
  break;
@@ -1549,6 +1727,9 @@ export namespace PBUiTransform {
1549
1727
  borderLeftColor: isSet(object.borderLeftColor) ? Color4.fromJSON(object.borderLeftColor) : undefined,
1550
1728
  borderRightColor: isSet(object.borderRightColor) ? Color4.fromJSON(object.borderRightColor) : undefined,
1551
1729
  opacity: isSet(object.opacity) ? Number(object.opacity) : undefined,
1730
+ elementId: isSet(object.elementId) ? String(object.elementId) : undefined,
1731
+ scrollPosition: isSet(object.scrollPosition) ? ScrollPositionValue.fromJSON(object.scrollPosition) : undefined,
1732
+ scrollVisible: isSet(object.scrollVisible) ? showScrollBarFromJSON(object.scrollVisible) : undefined,
1552
1733
  zIndex: isSet(object.zIndex) ? Number(object.zIndex) : undefined,
1553
1734
  };
1554
1735
  }
@@ -1662,6 +1843,13 @@ export namespace PBUiTransform {
1662
1843
  message.borderRightColor !== undefined &&
1663
1844
  (obj.borderRightColor = message.borderRightColor ? Color4.toJSON(message.borderRightColor) : undefined);
1664
1845
  message.opacity !== undefined && (obj.opacity = message.opacity);
1846
+ message.elementId !== undefined && (obj.elementId = message.elementId);
1847
+ message.scrollPosition !== undefined &&
1848
+ (obj.scrollPosition = message.scrollPosition ? ScrollPositionValue.toJSON(message.scrollPosition) : undefined);
1849
+ message.scrollVisible !== undefined &&
1850
+ (obj.scrollVisible = message.scrollVisible !== undefined
1851
+ ? showScrollBarToJSON(message.scrollVisible)
1852
+ : undefined);
1665
1853
  message.zIndex !== undefined && (obj.zIndex = Math.round(message.zIndex));
1666
1854
  return obj;
1667
1855
  }
@@ -1753,6 +1941,11 @@ export namespace PBUiTransform {
1753
1941
  ? Color4.fromPartial(object.borderRightColor)
1754
1942
  : undefined;
1755
1943
  message.opacity = object.opacity ?? undefined;
1944
+ message.elementId = object.elementId ?? undefined;
1945
+ message.scrollPosition = (object.scrollPosition !== undefined && object.scrollPosition !== null)
1946
+ ? ScrollPositionValue.fromPartial(object.scrollPosition)
1947
+ : undefined;
1948
+ message.scrollVisible = object.scrollVisible ?? undefined;
1756
1949
  message.zIndex = object.zIndex ?? undefined;
1757
1950
  return message;
1758
1951
  }
package/package.json CHANGED
@@ -1,8 +1,11 @@
1
1
  {
2
2
  "name": "@dcl/protocol",
3
- "version": "1.0.0-22483842997.commit-1c3d55b",
3
+ "version": "1.0.0-22576258588.commit-8e30970",
4
4
  "description": "",
5
- "repository": "decentraland/protocol.git",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "git+https://github.com/decentraland/protocol.git"
8
+ },
6
9
  "homepage": "https://github.com/decentraland/protocol#readme",
7
10
  "bugs": "https://github.com/decentraland/protocol/issues",
8
11
  "keywords": [],
@@ -13,7 +16,7 @@
13
16
  "test": "./scripts/check-proto-compabitility.sh"
14
17
  },
15
18
  "devDependencies": {
16
- "@protobuf-ts/protoc": "^2.11.0",
19
+ "@protobuf-ts/protoc": "^2.8.1",
17
20
  "proto-compatibility-tool": "^1.1.2-20220925163655.commit-25bd040",
18
21
  "typescript": "^5.0.4"
19
22
  },
@@ -30,5 +33,5 @@
30
33
  "out-js",
31
34
  "public"
32
35
  ],
33
- "commit": "1c3d55b3b8d342af220eb1d7fc7e1ed3ebe25161"
36
+ "commit": "8e3097024cd83ae7dfb871b588f765e2c470798d"
34
37
  }
@@ -36,10 +36,17 @@ message VideoTexture {
36
36
  optional TextureFilterMode filter_mode = 3; // default = FilterMode.Bilinear
37
37
  }
38
38
 
39
+ message UiCanvasTexture {
40
+ uint32 ui_canvas_entity = 1;
41
+ optional TextureWrapMode wrap_mode = 2; // default = TextureWrapMode.Clamp
42
+ optional TextureFilterMode filter_mode = 3; // default = FilterMode.Bilinear
43
+ }
44
+
39
45
  message TextureUnion {
40
46
  oneof tex {
41
47
  Texture texture = 1; // default = null
42
48
  AvatarTexture avatar_texture = 2; // default = null
43
49
  VideoTexture video_texture = 3; // default = null
50
+ UiCanvasTexture ui_texture = 4;
44
51
  }
45
- }
52
+ }
@@ -54,6 +54,19 @@ message MovePlayerToResponse {
54
54
 
55
55
  message TeleportToResponse { }
56
56
 
57
+ message SetUiFocusRequest {
58
+ string element_id = 1;
59
+ }
60
+
61
+ message ClearUiFocusRequest { }
62
+
63
+ message GetUiFocusRequest { }
64
+
65
+ message UiFocusResponse {
66
+ // the element that is/was focussed
67
+ optional string element_id = 1;
68
+ }
69
+
57
70
  message CopyToClipboardRequest {
58
71
  string text = 1;
59
72
  }
@@ -88,6 +101,15 @@ service RestrictedActionsService {
88
101
  // TriggerSceneEmote will trigger an scene emote file in this current user
89
102
  rpc TriggerSceneEmote(TriggerSceneEmoteRequest) returns (SuccessResponse) {}
90
103
 
104
+ // Sets the focus to a specific UI element
105
+ rpc SetUiFocus(SetUiFocusRequest) returns (UiFocusResponse) {}
106
+
107
+ // Clears the focus from any currently focused textentry or dropdown
108
+ rpc ClearUiFocus(SetUiFocusRequest) returns (UiFocusResponse) {}
109
+
110
+ // Returns the element_id of any currently focused textentry or dropdown
111
+ rpc GetUiFocus(GetUiFocusRequest) returns (UiFocusResponse) {}
112
+
91
113
  // CopyToClipboard copies the provided text into the clipboard
92
114
  rpc CopyToClipboard(CopyToClipboardRequest) returns (EmptyResponse) {}
93
115
  }
@@ -18,7 +18,6 @@ message Packet {
18
18
  PlayerEmote player_emote = 9;
19
19
  SceneEmote scene_emote = 10;
20
20
  MovementCompressed movement_compressed = 12;
21
- LookAtPosition look_at_position = 13;
22
21
  }
23
22
  uint32 protocol_version = 11;
24
23
  }
@@ -61,41 +60,17 @@ message Movement {
61
60
  // interpolation
62
61
  bool is_instant = 17;
63
62
  bool is_emoting = 18;
64
- // head-sync (enabled flags + world-space yaw and pitch angles, in degrees)
65
- bool head_ik_yaw_enabled = 19;
66
- bool head_ik_pitch_enabled = 20;
67
- float head_yaw = 21;
68
- float head_pitch = 22;
69
63
  }
70
64
 
71
65
  message MovementCompressed {
72
66
  int32 temporal_data = 1; // bit-compressed: timestamp + animations
73
67
  int64 movement_data = 2; // bit-compressed: position + velocity
74
- int32 head_sync_data = 3; // bit-compressed: enabled flags + yaw + pitch
75
68
  }
76
69
 
77
70
  message PlayerEmote {
78
71
  uint32 incremental_id = 1;
79
72
  string urn = 2;
80
73
  float timestamp = 3;
81
- optional bool is_stopping = 4; // true means the emote has been stopped in the sender's client
82
- optional bool is_repeating = 5; // true when it is not the first time the looping animation plays
83
- optional int32 interaction_id = 6; // identifies an interaction univocaly, established when the start animation is triggered
84
- optional int32 social_emote_outcome = 7; // -1 means it does not use an outcome animation
85
- optional bool is_reacting = 8; // to a social emote started by other user
86
- optional string social_emote_initiator = 9; // wallet address of the user that initiated social emote
87
- optional string target_avatar = 10; // wallet address of the user whose avatar is the target of a directed emote
88
- }
89
-
90
- // Message sent to force an avatar to look at a position
91
- message LookAtPosition
92
- {
93
- float timestamp = 1;
94
- // world position
95
- float position_x = 2;
96
- float position_y = 3;
97
- float position_z = 4;
98
- string target_avatar_wallet_address = 5;
99
74
  }
100
75
 
101
76
  message SceneEmote {
@@ -128,10 +103,6 @@ message ProfileResponse {
128
103
  message Chat {
129
104
  string message = 1;
130
105
  double timestamp = 2;
131
-
132
- // Extension: optional forwarded_from to identify the original sender when
133
- // messages are forwarded through an SFU
134
- optional string forwarded_from = 3;
135
106
  }
136
107
 
137
108
  message Scene {
@@ -10,4 +10,5 @@ option (common.ecs_component_id) = 1091;
10
10
  message PBAvatarEquippedData {
11
11
  repeated string wearable_urns = 1;
12
12
  repeated string emote_urns = 2;
13
- }
13
+ repeated string force_render = 3; // slots that will render even if hidden
14
+ }
@@ -23,6 +23,8 @@ message PBAvatarModifierArea {
23
23
  decentraland.common.Vector3 area = 1; // the 3D size of the region
24
24
  repeated string exclude_ids = 2; // user IDs that can enter and remain unaffected
25
25
  repeated AvatarModifierType modifiers = 3; // list of modifiers to apply
26
+ optional AvatarMovementSettings movement_settings = 4;
27
+ optional bool use_collider_range = 5; // if true, the player will be considered inside the area when they are within 0.3m of the area. default true
26
28
  }
27
29
 
28
30
  // AvatarModifierType is an effect that should be applied to avatars inside the region.
@@ -30,3 +32,22 @@ enum AvatarModifierType {
30
32
  AMT_HIDE_AVATARS = 0; // avatars are invisible
31
33
  AMT_DISABLE_PASSPORTS = 1; // selecting (e.g. clicking) an avatar will not bring up their profile.
32
34
  }
35
+
36
+ message AvatarMovementSettings {
37
+ optional AvatarControlType control_mode = 1;
38
+ // if not explicitly set, the following properties default to user's preference settings
39
+ optional float run_speed = 2; // speed the player moves at, in m/s
40
+ optional float friction = 3; // how fast the player gets up to speed or comes to rest. higher = more responsive
41
+ optional float gravity = 4; // how fast the player accelerates vertically when not on a solid surface, in m/s. should normally be negative
42
+ optional float jump_height = 5; // how high the player can jump, in meters. should normally be positive. gravity must have the same sign for jumping to be possible
43
+ optional float max_fall_speed = 6; // max fall speed in m/s. should normally be negative
44
+ optional float turn_speed = 7; // speed the player turns in tank mode, in radians/s
45
+ optional float walk_speed = 8; // speed the player walks at, in m/s
46
+ optional bool allow_weighted_movement = 9; // whether to allow player to move at a slower speed (e.g. with a walk-key or when using a gamepad/joystick). defaults to true
47
+ }
48
+
49
+ enum AvatarControlType {
50
+ CCT_NONE = 0; // avatar cannot move
51
+ CCT_RELATIVE = 1; // avatar moves relative to the camera origin
52
+ CCT_TANK = 2; // avatar moves like a tank: left/right rotate the player, forward/backward advance/retreat the player
53
+ }