@dcl/protocol 1.0.0-9466805132.commit-365e0bb → 1.0.0-9682449435.commit-1b32d83

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 (82) hide show
  1. package/out-js/decentraland/common/texture.gen.js +5 -5
  2. package/out-js/decentraland/common/texture.gen.js.map +1 -1
  3. package/out-js/decentraland/kernel/apis/comms_api.gen.js +3 -3
  4. package/out-js/decentraland/kernel/apis/comms_api.gen.js.map +1 -1
  5. package/out-js/decentraland/kernel/apis/engine_api.gen.js +3 -3
  6. package/out-js/decentraland/kernel/apis/engine_api.gen.js.map +1 -1
  7. package/out-js/decentraland/kernel/apis/permissions.gen.js +3 -3
  8. package/out-js/decentraland/kernel/apis/permissions.gen.js.map +1 -1
  9. package/out-js/decentraland/kernel/apis/testing.gen.js +3 -3
  10. package/out-js/decentraland/kernel/apis/testing.gen.js.map +1 -1
  11. package/out-js/decentraland/kernel/comms/rfc4/comms.gen.js +3 -3
  12. package/out-js/decentraland/kernel/comms/rfc4/comms.gen.js.map +1 -1
  13. package/out-js/decentraland/kernel/comms/v3/archipelago.gen.js +3 -3
  14. package/out-js/decentraland/kernel/comms/v3/archipelago.gen.js.map +1 -1
  15. package/out-js/decentraland/sdk/components/avatar_attach.gen.js +3 -3
  16. package/out-js/decentraland/sdk/components/avatar_attach.gen.js.map +1 -1
  17. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.d.ts +41 -0
  18. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.js +243 -5
  19. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.js.map +1 -1
  20. package/out-js/decentraland/sdk/components/billboard.gen.js +3 -3
  21. package/out-js/decentraland/sdk/components/billboard.gen.js.map +1 -1
  22. package/out-js/decentraland/sdk/components/camera_mode_area.gen.d.ts +35 -1
  23. package/out-js/decentraland/sdk/components/camera_mode_area.gen.js +172 -3
  24. package/out-js/decentraland/sdk/components/camera_mode_area.gen.js.map +1 -1
  25. package/out-js/decentraland/sdk/components/common/camera_type.gen.js +3 -3
  26. package/out-js/decentraland/sdk/components/common/camera_type.gen.js.map +1 -1
  27. package/out-js/decentraland/sdk/components/common/input_action.gen.js +5 -5
  28. package/out-js/decentraland/sdk/components/common/input_action.gen.js.map +1 -1
  29. package/out-js/decentraland/sdk/components/common/loading_state.gen.js +3 -3
  30. package/out-js/decentraland/sdk/components/common/loading_state.gen.js.map +1 -1
  31. package/out-js/decentraland/sdk/components/common/texts.gen.js +5 -5
  32. package/out-js/decentraland/sdk/components/common/texts.gen.js.map +1 -1
  33. package/out-js/decentraland/sdk/components/material.gen.js +3 -3
  34. package/out-js/decentraland/sdk/components/material.gen.js.map +1 -1
  35. package/out-js/decentraland/sdk/components/mesh_collider.gen.js +3 -3
  36. package/out-js/decentraland/sdk/components/mesh_collider.gen.js.map +1 -1
  37. package/out-js/decentraland/sdk/components/nft_shape.gen.js +3 -3
  38. package/out-js/decentraland/sdk/components/nft_shape.gen.js.map +1 -1
  39. package/out-js/decentraland/sdk/components/raycast.gen.js +3 -3
  40. package/out-js/decentraland/sdk/components/raycast.gen.js.map +1 -1
  41. package/out-js/decentraland/sdk/components/tween.gen.js +3 -3
  42. package/out-js/decentraland/sdk/components/tween.gen.js.map +1 -1
  43. package/out-js/decentraland/sdk/components/tween_sequence.gen.js +3 -3
  44. package/out-js/decentraland/sdk/components/tween_sequence.gen.js.map +1 -1
  45. package/out-js/decentraland/sdk/components/tween_state.gen.js +3 -3
  46. package/out-js/decentraland/sdk/components/tween_state.gen.js.map +1 -1
  47. package/out-js/decentraland/sdk/components/ui_background.gen.js +3 -3
  48. package/out-js/decentraland/sdk/components/ui_background.gen.js.map +1 -1
  49. package/out-js/decentraland/sdk/components/ui_text.gen.d.ts +6 -0
  50. package/out-js/decentraland/sdk/components/ui_text.gen.js +46 -4
  51. package/out-js/decentraland/sdk/components/ui_text.gen.js.map +1 -1
  52. package/out-js/decentraland/sdk/components/ui_transform.gen.d.ts +35 -0
  53. package/out-js/decentraland/sdk/components/ui_transform.gen.js +208 -22
  54. package/out-js/decentraland/sdk/components/ui_transform.gen.js.map +1 -1
  55. package/out-js/decentraland/sdk/ecs6/components_ecs6.gen.js +14 -14
  56. package/out-js/decentraland/sdk/ecs6/components_ecs6.gen.js.map +1 -1
  57. package/out-js/google/protobuf/descriptor.gen.js +11 -11
  58. package/out-js/google/protobuf/descriptor.gen.js.map +1 -1
  59. package/out-ts/decentraland/sdk/components/avatar_modifier_area.gen.ts +292 -1
  60. package/out-ts/decentraland/sdk/components/camera_mode_area.gen.ts +218 -2
  61. package/out-ts/decentraland/sdk/components/ui_text.gen.ts +58 -1
  62. package/out-ts/decentraland/sdk/components/ui_transform.gen.ts +212 -1
  63. package/package.json +2 -2
  64. package/proto/decentraland/sdk/components/avatar_modifier_area.proto +21 -0
  65. package/proto/decentraland/sdk/components/camera_mode_area.proto +22 -3
  66. package/proto/decentraland/sdk/components/ui_scroll_result.proto +12 -0
  67. package/proto/decentraland/sdk/components/ui_text.proto +4 -0
  68. package/proto/decentraland/sdk/components/ui_transform.proto +21 -0
  69. package/proto/google/LICENSE +27 -27
  70. package/proto/google/README.md +1 -1
  71. package/proto/google/api/annotations.json +82 -82
  72. package/proto/google/api/annotations.proto +10 -10
  73. package/proto/google/api/http.json +85 -85
  74. package/proto/google/api/http.proto +30 -30
  75. package/proto/google/protobuf/api.json +117 -117
  76. package/proto/google/protobuf/api.proto +33 -33
  77. package/proto/google/protobuf/descriptor.json +738 -738
  78. package/proto/google/protobuf/descriptor.proto +286 -286
  79. package/proto/google/protobuf/source_context.json +19 -19
  80. package/proto/google/protobuf/source_context.proto +7 -7
  81. package/proto/google/protobuf/type.json +201 -201
  82. package/proto/google/protobuf/type.proto +89 -89
@@ -65,7 +65,19 @@ 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?:
77
+ | Color4
78
+ | undefined;
79
+ /** wrap text when the border is reached (default false) */
80
+ textWrapping?: boolean | undefined;
69
81
  }
70
82
 
71
83
  function createBasePBUiText(): PBUiText {
@@ -76,6 +88,9 @@ function createBasePBUiText(): PBUiText {
76
88
  font: undefined,
77
89
  fontSize: undefined,
78
90
  textWrap: undefined,
91
+ outlineWidth: undefined,
92
+ outlineColor: undefined,
93
+ textWrapping: undefined,
79
94
  };
80
95
  }
81
96
 
@@ -99,6 +114,15 @@ export namespace PBUiText {
99
114
  if (message.textWrap !== undefined) {
100
115
  writer.uint32(48).int32(message.textWrap);
101
116
  }
117
+ if (message.outlineWidth !== undefined) {
118
+ writer.uint32(61).float(message.outlineWidth);
119
+ }
120
+ if (message.outlineColor !== undefined) {
121
+ Color4.encode(message.outlineColor, writer.uint32(66).fork()).ldelim();
122
+ }
123
+ if (message.textWrapping !== undefined) {
124
+ writer.uint32(72).bool(message.textWrapping);
125
+ }
102
126
  return writer;
103
127
  }
104
128
 
@@ -151,6 +175,27 @@ export namespace PBUiText {
151
175
 
152
176
  message.textWrap = reader.int32() as any;
153
177
  continue;
178
+ case 7:
179
+ if (tag !== 61) {
180
+ break;
181
+ }
182
+
183
+ message.outlineWidth = reader.float();
184
+ continue;
185
+ case 8:
186
+ if (tag !== 66) {
187
+ break;
188
+ }
189
+
190
+ message.outlineColor = Color4.decode(reader, reader.uint32());
191
+ continue;
192
+ case 9:
193
+ if (tag !== 72) {
194
+ break;
195
+ }
196
+
197
+ message.textWrapping = reader.bool();
198
+ continue;
154
199
  }
155
200
  if ((tag & 7) === 4 || tag === 0) {
156
201
  break;
@@ -168,6 +213,9 @@ export namespace PBUiText {
168
213
  font: isSet(object.font) ? fontFromJSON(object.font) : undefined,
169
214
  fontSize: isSet(object.fontSize) ? Number(object.fontSize) : undefined,
170
215
  textWrap: isSet(object.textWrap) ? textWrapFromJSON(object.textWrap) : undefined,
216
+ outlineWidth: isSet(object.outlineWidth) ? Number(object.outlineWidth) : undefined,
217
+ outlineColor: isSet(object.outlineColor) ? Color4.fromJSON(object.outlineColor) : undefined,
218
+ textWrapping: isSet(object.textWrapping) ? Boolean(object.textWrapping) : undefined,
171
219
  };
172
220
  }
173
221
 
@@ -181,6 +229,10 @@ export namespace PBUiText {
181
229
  message.fontSize !== undefined && (obj.fontSize = Math.round(message.fontSize));
182
230
  message.textWrap !== undefined &&
183
231
  (obj.textWrap = message.textWrap !== undefined ? textWrapToJSON(message.textWrap) : undefined);
232
+ message.outlineWidth !== undefined && (obj.outlineWidth = message.outlineWidth);
233
+ message.outlineColor !== undefined &&
234
+ (obj.outlineColor = message.outlineColor ? Color4.toJSON(message.outlineColor) : undefined);
235
+ message.textWrapping !== undefined && (obj.textWrapping = message.textWrapping);
184
236
  return obj;
185
237
  }
186
238
 
@@ -198,6 +250,11 @@ export namespace PBUiText {
198
250
  message.font = object.font ?? undefined;
199
251
  message.fontSize = object.fontSize ?? undefined;
200
252
  message.textWrap = object.textWrap ?? undefined;
253
+ message.outlineWidth = object.outlineWidth ?? undefined;
254
+ message.outlineColor = (object.outlineColor !== undefined && object.outlineColor !== null)
255
+ ? Color4.fromPartial(object.outlineColor)
256
+ : undefined;
257
+ message.textWrapping = object.textWrapping ?? undefined;
201
258
  return message;
202
259
  }
203
260
  }
@@ -1,5 +1,6 @@
1
1
  /* eslint-disable */
2
2
  import _m0 from "protobufjs/minimal";
3
+ import { Vector2 } from "../../common/vectors.gen";
3
4
 
4
5
  export const protobufPackage = "decentraland.sdk.components";
5
6
 
@@ -471,6 +472,55 @@ export function pointerFilterModeToJSON(object: PointerFilterMode): string {
471
472
  }
472
473
  }
473
474
 
475
+ export enum ShowScrollBar {
476
+ SSB_BOTH = 0,
477
+ SSB_ONLY_VERTICAL = 1,
478
+ SSB_ONLY_HORIZONTAL = 2,
479
+ SSB_HIDDEN = 3,
480
+ UNRECOGNIZED = -1,
481
+ }
482
+
483
+ export function showScrollBarFromJSON(object: any): ShowScrollBar {
484
+ switch (object) {
485
+ case 0:
486
+ case "SSB_BOTH":
487
+ return ShowScrollBar.SSB_BOTH;
488
+ case 1:
489
+ case "SSB_ONLY_VERTICAL":
490
+ return ShowScrollBar.SSB_ONLY_VERTICAL;
491
+ case 2:
492
+ case "SSB_ONLY_HORIZONTAL":
493
+ return ShowScrollBar.SSB_ONLY_HORIZONTAL;
494
+ case 3:
495
+ case "SSB_HIDDEN":
496
+ return ShowScrollBar.SSB_HIDDEN;
497
+ case -1:
498
+ case "UNRECOGNIZED":
499
+ default:
500
+ return ShowScrollBar.UNRECOGNIZED;
501
+ }
502
+ }
503
+
504
+ export function showScrollBarToJSON(object: ShowScrollBar): string {
505
+ switch (object) {
506
+ case ShowScrollBar.SSB_BOTH:
507
+ return "SSB_BOTH";
508
+ case ShowScrollBar.SSB_ONLY_VERTICAL:
509
+ return "SSB_ONLY_VERTICAL";
510
+ case ShowScrollBar.SSB_ONLY_HORIZONTAL:
511
+ return "SSB_ONLY_HORIZONTAL";
512
+ case ShowScrollBar.SSB_HIDDEN:
513
+ return "SSB_HIDDEN";
514
+ case ShowScrollBar.UNRECOGNIZED:
515
+ default:
516
+ return "UNRECOGNIZED";
517
+ }
518
+ }
519
+
520
+ export interface ScrollPositionValue {
521
+ value?: { $case: "position"; position: Vector2 } | { $case: "reference"; reference: string } | undefined;
522
+ }
523
+
474
524
  export interface PBUiTransform {
475
525
  parent: number;
476
526
  rightOf: number;
@@ -561,7 +611,106 @@ export interface PBUiTransform {
561
611
  paddingBottomUnit: YGUnit;
562
612
  paddingBottom: number;
563
613
  /** default: PointerFilterMode.PFM_NONE */
564
- pointerFilter?: PointerFilterMode | undefined;
614
+ pointerFilter?:
615
+ | PointerFilterMode
616
+ | undefined;
617
+ /** default: 1 */
618
+ opacity?:
619
+ | number
620
+ | undefined;
621
+ /** default empty */
622
+ elementId?:
623
+ | string
624
+ | undefined;
625
+ /** default position=(0,0) */
626
+ scrollPosition?:
627
+ | ScrollPositionValue
628
+ | undefined;
629
+ /** default ShowScrollBar.SSB_BOTH */
630
+ scrollVisible?: ShowScrollBar | undefined;
631
+ }
632
+
633
+ function createBaseScrollPositionValue(): ScrollPositionValue {
634
+ return { value: undefined };
635
+ }
636
+
637
+ export namespace ScrollPositionValue {
638
+ export function encode(message: ScrollPositionValue, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
639
+ switch (message.value?.$case) {
640
+ case "position":
641
+ Vector2.encode(message.value.position, writer.uint32(10).fork()).ldelim();
642
+ break;
643
+ case "reference":
644
+ writer.uint32(18).string(message.value.reference);
645
+ break;
646
+ }
647
+ return writer;
648
+ }
649
+
650
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): ScrollPositionValue {
651
+ const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
652
+ let end = length === undefined ? reader.len : reader.pos + length;
653
+ const message = createBaseScrollPositionValue();
654
+ while (reader.pos < end) {
655
+ const tag = reader.uint32();
656
+ switch (tag >>> 3) {
657
+ case 1:
658
+ if (tag !== 10) {
659
+ break;
660
+ }
661
+
662
+ message.value = { $case: "position", position: Vector2.decode(reader, reader.uint32()) };
663
+ continue;
664
+ case 2:
665
+ if (tag !== 18) {
666
+ break;
667
+ }
668
+
669
+ message.value = { $case: "reference", reference: reader.string() };
670
+ continue;
671
+ }
672
+ if ((tag & 7) === 4 || tag === 0) {
673
+ break;
674
+ }
675
+ reader.skipType(tag & 7);
676
+ }
677
+ return message;
678
+ }
679
+
680
+ export function fromJSON(object: any): ScrollPositionValue {
681
+ return {
682
+ value: isSet(object.position)
683
+ ? { $case: "position", position: Vector2.fromJSON(object.position) }
684
+ : isSet(object.reference)
685
+ ? { $case: "reference", reference: String(object.reference) }
686
+ : undefined,
687
+ };
688
+ }
689
+
690
+ export function toJSON(message: ScrollPositionValue): unknown {
691
+ const obj: any = {};
692
+ message.value?.$case === "position" &&
693
+ (obj.position = message.value?.position ? Vector2.toJSON(message.value?.position) : undefined);
694
+ message.value?.$case === "reference" && (obj.reference = message.value?.reference);
695
+ return obj;
696
+ }
697
+
698
+ export function create<I extends Exact<DeepPartial<ScrollPositionValue>, I>>(base?: I): ScrollPositionValue {
699
+ return ScrollPositionValue.fromPartial(base ?? {});
700
+ }
701
+
702
+ export function fromPartial<I extends Exact<DeepPartial<ScrollPositionValue>, I>>(object: I): ScrollPositionValue {
703
+ const message = createBaseScrollPositionValue();
704
+ if (object.value?.$case === "position" && object.value?.position !== undefined && object.value?.position !== null) {
705
+ message.value = { $case: "position", position: Vector2.fromPartial(object.value.position) };
706
+ }
707
+ if (
708
+ object.value?.$case === "reference" && object.value?.reference !== undefined && object.value?.reference !== null
709
+ ) {
710
+ message.value = { $case: "reference", reference: object.value.reference };
711
+ }
712
+ return message;
713
+ }
565
714
  }
566
715
 
567
716
  function createBasePBUiTransform(): PBUiTransform {
@@ -618,6 +767,10 @@ function createBasePBUiTransform(): PBUiTransform {
618
767
  paddingBottomUnit: 0,
619
768
  paddingBottom: 0,
620
769
  pointerFilter: undefined,
770
+ opacity: undefined,
771
+ elementId: undefined,
772
+ scrollPosition: undefined,
773
+ scrollVisible: undefined,
621
774
  };
622
775
  }
623
776
 
@@ -779,6 +932,18 @@ export namespace PBUiTransform {
779
932
  if (message.pointerFilter !== undefined) {
780
933
  writer.uint32(416).int32(message.pointerFilter);
781
934
  }
935
+ if (message.opacity !== undefined) {
936
+ writer.uint32(429).float(message.opacity);
937
+ }
938
+ if (message.elementId !== undefined) {
939
+ writer.uint32(434).string(message.elementId);
940
+ }
941
+ if (message.scrollPosition !== undefined) {
942
+ ScrollPositionValue.encode(message.scrollPosition, writer.uint32(442).fork()).ldelim();
943
+ }
944
+ if (message.scrollVisible !== undefined) {
945
+ writer.uint32(448).int32(message.scrollVisible);
946
+ }
782
947
  return writer;
783
948
  }
784
949
 
@@ -1153,6 +1318,34 @@ export namespace PBUiTransform {
1153
1318
 
1154
1319
  message.pointerFilter = reader.int32() as any;
1155
1320
  continue;
1321
+ case 53:
1322
+ if (tag !== 429) {
1323
+ break;
1324
+ }
1325
+
1326
+ message.opacity = reader.float();
1327
+ continue;
1328
+ case 54:
1329
+ if (tag !== 434) {
1330
+ break;
1331
+ }
1332
+
1333
+ message.elementId = reader.string();
1334
+ continue;
1335
+ case 55:
1336
+ if (tag !== 442) {
1337
+ break;
1338
+ }
1339
+
1340
+ message.scrollPosition = ScrollPositionValue.decode(reader, reader.uint32());
1341
+ continue;
1342
+ case 56:
1343
+ if (tag !== 448) {
1344
+ break;
1345
+ }
1346
+
1347
+ message.scrollVisible = reader.int32() as any;
1348
+ continue;
1156
1349
  }
1157
1350
  if ((tag & 7) === 4 || tag === 0) {
1158
1351
  break;
@@ -1216,6 +1409,10 @@ export namespace PBUiTransform {
1216
1409
  paddingBottomUnit: isSet(object.paddingBottomUnit) ? yGUnitFromJSON(object.paddingBottomUnit) : 0,
1217
1410
  paddingBottom: isSet(object.paddingBottom) ? Number(object.paddingBottom) : 0,
1218
1411
  pointerFilter: isSet(object.pointerFilter) ? pointerFilterModeFromJSON(object.pointerFilter) : undefined,
1412
+ opacity: isSet(object.opacity) ? Number(object.opacity) : undefined,
1413
+ elementId: isSet(object.elementId) ? String(object.elementId) : undefined,
1414
+ scrollPosition: isSet(object.scrollPosition) ? ScrollPositionValue.fromJSON(object.scrollPosition) : undefined,
1415
+ scrollVisible: isSet(object.scrollVisible) ? showScrollBarFromJSON(object.scrollVisible) : undefined,
1219
1416
  };
1220
1417
  }
1221
1418
 
@@ -1279,6 +1476,14 @@ export namespace PBUiTransform {
1279
1476
  (obj.pointerFilter = message.pointerFilter !== undefined
1280
1477
  ? pointerFilterModeToJSON(message.pointerFilter)
1281
1478
  : undefined);
1479
+ message.opacity !== undefined && (obj.opacity = message.opacity);
1480
+ message.elementId !== undefined && (obj.elementId = message.elementId);
1481
+ message.scrollPosition !== undefined &&
1482
+ (obj.scrollPosition = message.scrollPosition ? ScrollPositionValue.toJSON(message.scrollPosition) : undefined);
1483
+ message.scrollVisible !== undefined &&
1484
+ (obj.scrollVisible = message.scrollVisible !== undefined
1485
+ ? showScrollBarToJSON(message.scrollVisible)
1486
+ : undefined);
1282
1487
  return obj;
1283
1488
  }
1284
1489
 
@@ -1340,6 +1545,12 @@ export namespace PBUiTransform {
1340
1545
  message.paddingBottomUnit = object.paddingBottomUnit ?? 0;
1341
1546
  message.paddingBottom = object.paddingBottom ?? 0;
1342
1547
  message.pointerFilter = object.pointerFilter ?? undefined;
1548
+ message.opacity = object.opacity ?? undefined;
1549
+ message.elementId = object.elementId ?? undefined;
1550
+ message.scrollPosition = (object.scrollPosition !== undefined && object.scrollPosition !== null)
1551
+ ? ScrollPositionValue.fromPartial(object.scrollPosition)
1552
+ : undefined;
1553
+ message.scrollVisible = object.scrollVisible ?? undefined;
1343
1554
  return message;
1344
1555
  }
1345
1556
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dcl/protocol",
3
- "version": "1.0.0-9466805132.commit-365e0bb",
3
+ "version": "1.0.0-9682449435.commit-1b32d83",
4
4
  "description": "",
5
5
  "repository": "decentraland/protocol.git",
6
6
  "homepage": "https://github.com/decentraland/protocol#readme",
@@ -29,5 +29,5 @@
29
29
  "out-js",
30
30
  "public"
31
31
  ],
32
- "commit": "365e0bb9331c562ac1889e73c878d6a52ced003e"
32
+ "commit": "1b32d83e5f7925205ce01e0fe06f227fa76353e8"
33
33
  }
@@ -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
+ }
@@ -9,7 +9,7 @@ import "decentraland/sdk/components/common/id.proto";
9
9
  option (common.ecs_component_id) = 1071;
10
10
 
11
11
  // The CameraModeArea component can be attached to an Entity to define a region of space where
12
- // the player's camera mode (1st-person or 3rd-person) is overridden.
12
+ // the player's camera mode (1st-person, 3rd-person or cinematic) is overridden.
13
13
  //
14
14
  // The Entity's Transform position determines the center-point of the region, while its size is
15
15
  // given as a vector in the `area` property below. The Transform rotation is applied, but the scale
@@ -19,7 +19,26 @@ option (common.ecs_component_id) = 1071;
19
19
  //
20
20
  // Note that, while commonly used to delineate a 2D area in a scene (hence the name), the region
21
21
  // is actually a 3D volume.
22
+ //
23
+ // When mode is set to CtCinematic, the cinematic_settings field must also be provided.
22
24
  message PBCameraModeArea {
23
- decentraland.common.Vector3 area = 1; // the 3D size of the region
24
- common.CameraType mode = 2; // the camera mode to enforce
25
+ decentraland.common.Vector3 area = 1; // the 3D size of the region
26
+ common.CameraType mode = 2; // the camera mode to enforce
27
+ optional CinematicSettings cinematic_settings = 3;
28
+ optional bool use_collider_range = 4; // if true, the player will be considered inside the area when they are within 0.3m of the area. default true
29
+ }
30
+
31
+ message CinematicSettings {
32
+ uint32 camera_entity = 1; // Entity that defines the cinematic camera transform.
33
+ // Position -> camera's position
34
+ // Rotation -> camera's direction
35
+ // scale.z -> zoom level
36
+ // scale.x and scale.y -> unused
37
+ optional bool allow_manual_rotation = 2; // whether the user can move the camera's rotation. default false
38
+ optional float yaw_range = 3; // how far the camera can rotate around the y-axis / look left/right, in radians. default unrestricted
39
+ optional float pitch_range = 4; // how far the camera can rotate around the x-axis / look up-down, in radians. default unrestricted
40
+ // note: cameras can never look up/down further than Vec3::Y
41
+ optional float roll_range = 5; // how far the camera can rotate around the z-axis / tilt, in radians. default unrestricted
42
+ optional float zoom_min = 6; // minimum zoom level. must be greater than 0. defaults to the input zoom level
43
+ optional float zoom_max = 7; // maximum zoom level. must be greater than 0. defaults to the input zoom level
25
44
  }
@@ -0,0 +1,12 @@
1
+ syntax = "proto3";
2
+
3
+ package decentraland.sdk.components;
4
+
5
+ import "decentraland/sdk/components/common/id.proto";
6
+ import "decentraland/common/vectors.proto";
7
+
8
+ option (common.ecs_component_id) = 1097;
9
+
10
+ message PBUiScrollResult {
11
+ decentraland.common.Vector2 value = 1;
12
+ }
@@ -23,4 +23,8 @@ message PBUiText {
23
23
  optional common.Font font = 4; // font for the text (default: sans-serif)
24
24
  optional int32 font_size = 5; // size of the text (default: 10)
25
25
  optional TextWrap text_wrap = 6; // wrap text when the border is reached (default: TW_WRAP)
26
+
27
+ optional float outline_width = 7; // width of the outline (default: 0)
28
+ optional decentraland.common.Color4 outline_color = 8; // RGBA color of the outline (default: opaque black)
29
+ optional bool text_wrapping = 9; // wrap text when the border is reached (default false)
26
30
  }
@@ -3,6 +3,7 @@ syntax = "proto3";
3
3
  package decentraland.sdk.components;
4
4
 
5
5
  import "decentraland/sdk/components/common/id.proto";
6
+ import "decentraland/common/vectors.proto";
6
7
 
7
8
  option (common.ecs_component_id) = 1050;
8
9
 
@@ -79,6 +80,20 @@ enum PointerFilterMode {
79
80
  PFM_BLOCK = 1;
80
81
  }
81
82
 
83
+ enum ShowScrollBar {
84
+ SSB_BOTH = 0;
85
+ SSB_ONLY_VERTICAL = 1;
86
+ SSB_ONLY_HORIZONTAL = 2;
87
+ SSB_HIDDEN = 3;
88
+ }
89
+
90
+ message ScrollPositionValue {
91
+ oneof value {
92
+ decentraland.common.Vector2 position = 1;
93
+ string reference = 2;
94
+ }
95
+ }
96
+
82
97
  message PBUiTransform {
83
98
  int32 parent = 1;
84
99
  int32 right_of = 2;
@@ -145,4 +160,10 @@ message PBUiTransform {
145
160
  float padding_bottom = 51;
146
161
 
147
162
  optional PointerFilterMode pointer_filter = 52; // default: PointerFilterMode.PFM_NONE
163
+ optional float opacity = 53; // default: 1
164
+
165
+ optional string element_id = 54; // default empty
166
+
167
+ optional ScrollPositionValue scroll_position = 55; // default position=(0,0)
168
+ optional ShowScrollBar scroll_visible = 56; // default ShowScrollBar.SSB_BOTH
148
169
  }
@@ -1,27 +1,27 @@
1
- Copyright 2014, Google Inc. All rights reserved.
2
-
3
- Redistribution and use in source and binary forms, with or without
4
- modification, are permitted provided that the following conditions are
5
- met:
6
-
7
- * Redistributions of source code must retain the above copyright
8
- notice, this list of conditions and the following disclaimer.
9
- * Redistributions in binary form must reproduce the above
10
- copyright notice, this list of conditions and the following disclaimer
11
- in the documentation and/or other materials provided with the
12
- distribution.
13
- * Neither the name of Google Inc. nor the names of its
14
- contributors may be used to endorse or promote products derived from
15
- this software without specific prior written permission.
16
-
17
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18
- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
20
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
21
- OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
22
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23
- LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24
- DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25
- THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27
- OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
1
+ Copyright 2014, Google Inc. All rights reserved.
2
+
3
+ Redistribution and use in source and binary forms, with or without
4
+ modification, are permitted provided that the following conditions are
5
+ met:
6
+
7
+ * Redistributions of source code must retain the above copyright
8
+ notice, this list of conditions and the following disclaimer.
9
+ * Redistributions in binary form must reproduce the above
10
+ copyright notice, this list of conditions and the following disclaimer
11
+ in the documentation and/or other materials provided with the
12
+ distribution.
13
+ * Neither the name of Google Inc. nor the names of its
14
+ contributors may be used to endorse or promote products derived from
15
+ this software without specific prior written permission.
16
+
17
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
20
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
21
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
22
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -1 +1 @@
1
- This folder contains stripped and pre-parsed definitions of common Google types. These files are not used by protobuf.js directly but are here so you can use or include them where required.
1
+ This folder contains stripped and pre-parsed definitions of common Google types. These files are not used by protobuf.js directly but are here so you can use or include them where required.