@dcl/protocol 1.0.0-21671196520.commit-ca94ea2 → 1.0.0-22309435573.commit-a48721e

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 (105) 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/sdk/components/avatar_equipped_data.gen.d.ts +2 -0
  8. package/out-js/decentraland/sdk/components/avatar_equipped_data.gen.js +19 -2
  9. package/out-js/decentraland/sdk/components/avatar_equipped_data.gen.js.map +1 -1
  10. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.d.ts +41 -0
  11. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.js +241 -3
  12. package/out-js/decentraland/sdk/components/avatar_modifier_area.gen.js.map +1 -1
  13. package/out-js/decentraland/sdk/components/avatar_movement.gen.d.ts +34 -0
  14. package/out-js/decentraland/sdk/components/avatar_movement.gen.js +101 -0
  15. package/out-js/decentraland/sdk/components/avatar_movement.gen.js.map +1 -0
  16. package/out-js/decentraland/sdk/components/avatar_movement_info.gen.d.ts +40 -0
  17. package/out-js/decentraland/sdk/components/avatar_movement_info.gen.js +135 -0
  18. package/out-js/decentraland/sdk/components/avatar_movement_info.gen.js.map +1 -0
  19. package/out-js/decentraland/sdk/components/avatar_shape.gen.d.ts +2 -0
  20. package/out-js/decentraland/sdk/components/avatar_shape.gen.js +19 -1
  21. package/out-js/decentraland/sdk/components/avatar_shape.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/input_action.gen.d.ts +4 -0
  26. package/out-js/decentraland/sdk/components/common/input_action.gen.js +24 -0
  27. package/out-js/decentraland/sdk/components/common/input_action.gen.js.map +1 -1
  28. package/out-js/decentraland/sdk/components/gltf_container_loading_state.gen.d.ts +19 -0
  29. package/out-js/decentraland/sdk/components/gltf_container_loading_state.gen.js +90 -3
  30. package/out-js/decentraland/sdk/components/gltf_container_loading_state.gen.js.map +1 -1
  31. package/out-js/decentraland/sdk/components/gltf_node.gen.d.ts +66 -0
  32. package/out-js/decentraland/sdk/components/gltf_node.gen.js +69 -0
  33. package/out-js/decentraland/sdk/components/gltf_node.gen.js.map +1 -0
  34. package/out-js/decentraland/sdk/components/gltf_node_state.gen.d.ts +43 -0
  35. package/out-js/decentraland/sdk/components/gltf_node_state.gen.js +122 -0
  36. package/out-js/decentraland/sdk/components/gltf_node_state.gen.js.map +1 -0
  37. package/out-js/decentraland/sdk/components/material.gen.d.ts +20 -0
  38. package/out-js/decentraland/sdk/components/material.gen.js +86 -2
  39. package/out-js/decentraland/sdk/components/material.gen.js.map +1 -1
  40. package/out-js/decentraland/sdk/components/mesh_collider.gen.d.ts +18 -0
  41. package/out-js/decentraland/sdk/components/mesh_collider.gen.js +90 -4
  42. package/out-js/decentraland/sdk/components/mesh_collider.gen.js.map +1 -1
  43. package/out-js/decentraland/sdk/components/mesh_renderer.gen.d.ts +19 -3
  44. package/out-js/decentraland/sdk/components/mesh_renderer.gen.js +90 -4
  45. package/out-js/decentraland/sdk/components/mesh_renderer.gen.js.map +1 -1
  46. package/out-js/decentraland/sdk/components/raycast.gen.d.ts +13 -0
  47. package/out-js/decentraland/sdk/components/raycast.gen.js +64 -2
  48. package/out-js/decentraland/sdk/components/raycast.gen.js.map +1 -1
  49. package/out-js/decentraland/sdk/components/ui_text.gen.d.ts +4 -0
  50. package/out-js/decentraland/sdk/components/ui_text.gen.js +30 -1
  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 +33 -0
  53. package/out-js/decentraland/sdk/components/ui_transform.gen.js +176 -3
  54. package/out-js/decentraland/sdk/components/ui_transform.gen.js.map +1 -1
  55. package/out-js/decentraland/social_service/v2/social_service_v2.gen.d.ts +0 -3
  56. package/out-js/decentraland/social_service/v2/social_service_v2.gen.js +2 -40
  57. package/out-js/decentraland/social_service/v2/social_service_v2.gen.js.map +1 -1
  58. package/out-ts/decentraland/common/texture.gen.ts +119 -4
  59. package/out-ts/decentraland/kernel/apis/restricted_actions.gen.ts +242 -0
  60. package/out-ts/decentraland/sdk/components/avatar_equipped_data.gen.ts +20 -1
  61. package/out-ts/decentraland/sdk/components/avatar_modifier_area.gen.ts +292 -1
  62. package/out-ts/decentraland/sdk/components/avatar_movement.gen.ts +119 -0
  63. package/out-ts/decentraland/sdk/components/avatar_movement_info.gen.ts +163 -0
  64. package/out-ts/decentraland/sdk/components/avatar_shape.gen.ts +23 -1
  65. package/out-ts/decentraland/sdk/components/camera_mode_area.gen.ts +218 -2
  66. package/out-ts/decentraland/sdk/components/common/input_action.gen.ts +24 -0
  67. package/out-ts/decentraland/sdk/components/gltf_container_loading_state.gen.ts +108 -2
  68. package/out-ts/decentraland/sdk/components/gltf_node.gen.ts +116 -0
  69. package/out-ts/decentraland/sdk/components/gltf_node_state.gen.ts +139 -0
  70. package/out-ts/decentraland/sdk/components/material.gen.ts +102 -1
  71. package/out-ts/decentraland/sdk/components/mesh_collider.gen.ts +99 -0
  72. package/out-ts/decentraland/sdk/components/mesh_renderer.gen.ts +100 -3
  73. package/out-ts/decentraland/sdk/components/raycast.gen.ts +73 -1
  74. package/out-ts/decentraland/sdk/components/ui_text.gen.ts +40 -1
  75. package/out-ts/decentraland/sdk/components/ui_transform.gen.ts +193 -0
  76. package/out-ts/decentraland/social_service/v2/social_service_v2.gen.ts +2 -44
  77. package/package.json +6 -3
  78. package/proto/decentraland/common/texture.proto +8 -1
  79. package/proto/decentraland/kernel/apis/restricted_actions.proto +22 -0
  80. package/proto/decentraland/sdk/components/avatar_equipped_data.proto +2 -1
  81. package/proto/decentraland/sdk/components/avatar_locomotion_settings.proto +18 -0
  82. package/proto/decentraland/sdk/components/avatar_modifier_area.proto +21 -0
  83. package/proto/decentraland/sdk/components/avatar_movement.proto +45 -0
  84. package/proto/decentraland/sdk/components/avatar_movement_info.proto +16 -0
  85. package/proto/decentraland/sdk/components/avatar_shape.proto +1 -0
  86. package/proto/decentraland/sdk/components/camera_layer.proto +30 -0
  87. package/proto/decentraland/sdk/components/camera_layers.proto +11 -0
  88. package/proto/decentraland/sdk/components/camera_mode_area.proto +22 -3
  89. package/proto/decentraland/sdk/components/common/input_action.proto +4 -0
  90. package/proto/decentraland/sdk/components/global_light.proto +22 -0
  91. package/proto/decentraland/sdk/components/gltf_container_loading_state.proto +13 -0
  92. package/proto/decentraland/sdk/components/gltf_node.proto +42 -0
  93. package/proto/decentraland/sdk/components/gltf_node_state.proto +20 -0
  94. package/proto/decentraland/sdk/components/material.proto +13 -1
  95. package/proto/decentraland/sdk/components/mesh_collider.proto +7 -0
  96. package/proto/decentraland/sdk/components/mesh_renderer.proto +8 -3
  97. package/proto/decentraland/sdk/components/primary_pointer_info.proto +5 -0
  98. package/proto/decentraland/sdk/components/raycast.proto +13 -0
  99. package/proto/decentraland/sdk/components/texture_camera.proto +46 -0
  100. package/proto/decentraland/sdk/components/ui_canvas.proto +16 -0
  101. package/proto/decentraland/sdk/components/ui_scroll_result.proto +12 -0
  102. package/proto/decentraland/sdk/components/ui_text.proto +3 -0
  103. package/proto/decentraland/sdk/components/ui_transform.proto +20 -0
  104. package/proto/decentraland/social_service/v2/social_service_v2.proto +0 -3
  105. package/public/sdk-components.proto +4 -0
@@ -40,6 +40,48 @@ export function avatarModifierTypeToJSON(object: AvatarModifierType): string {
40
40
  }
41
41
  }
42
42
 
43
+ export enum AvatarControlType {
44
+ /** CCT_NONE - avatar cannot move */
45
+ CCT_NONE = 0,
46
+ /** CCT_RELATIVE - avatar moves relative to the camera origin */
47
+ CCT_RELATIVE = 1,
48
+ /** CCT_TANK - avatar moves like a tank: left/right rotate the player, forward/backward advance/retreat the player */
49
+ CCT_TANK = 2,
50
+ UNRECOGNIZED = -1,
51
+ }
52
+
53
+ export function avatarControlTypeFromJSON(object: any): AvatarControlType {
54
+ switch (object) {
55
+ case 0:
56
+ case "CCT_NONE":
57
+ return AvatarControlType.CCT_NONE;
58
+ case 1:
59
+ case "CCT_RELATIVE":
60
+ return AvatarControlType.CCT_RELATIVE;
61
+ case 2:
62
+ case "CCT_TANK":
63
+ return AvatarControlType.CCT_TANK;
64
+ case -1:
65
+ case "UNRECOGNIZED":
66
+ default:
67
+ return AvatarControlType.UNRECOGNIZED;
68
+ }
69
+ }
70
+
71
+ export function avatarControlTypeToJSON(object: AvatarControlType): string {
72
+ switch (object) {
73
+ case AvatarControlType.CCT_NONE:
74
+ return "CCT_NONE";
75
+ case AvatarControlType.CCT_RELATIVE:
76
+ return "CCT_RELATIVE";
77
+ case AvatarControlType.CCT_TANK:
78
+ return "CCT_TANK";
79
+ case AvatarControlType.UNRECOGNIZED:
80
+ default:
81
+ return "UNRECOGNIZED";
82
+ }
83
+ }
84
+
43
85
  /**
44
86
  * The AvatarModifierArea component can be attached to an Entity to define a region of space where
45
87
  * avatar behavior changes.
@@ -63,10 +105,51 @@ export interface PBAvatarModifierArea {
63
105
  excludeIds: string[];
64
106
  /** list of modifiers to apply */
65
107
  modifiers: AvatarModifierType[];
108
+ movementSettings?:
109
+ | AvatarMovementSettings
110
+ | undefined;
111
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
112
+ useColliderRange?: boolean | undefined;
113
+ }
114
+
115
+ export interface AvatarMovementSettings {
116
+ controlMode?:
117
+ | AvatarControlType
118
+ | undefined;
119
+ /** if not explicitly set, the following properties default to user's preference settings */
120
+ runSpeed?:
121
+ | number
122
+ | undefined;
123
+ /** how fast the player gets up to speed or comes to rest. higher = more responsive */
124
+ friction?:
125
+ | number
126
+ | undefined;
127
+ /** how fast the player accelerates vertically when not on a solid surface, in m/s. should normally be negative */
128
+ gravity?:
129
+ | number
130
+ | undefined;
131
+ /** how high the player can jump, in meters. should normally be positive. gravity must have the same sign for jumping to be possible */
132
+ jumpHeight?:
133
+ | number
134
+ | undefined;
135
+ /** max fall speed in m/s. should normally be negative */
136
+ maxFallSpeed?:
137
+ | number
138
+ | undefined;
139
+ /** speed the player turns in tank mode, in radians/s */
140
+ turnSpeed?:
141
+ | number
142
+ | undefined;
143
+ /** speed the player walks at, in m/s */
144
+ walkSpeed?:
145
+ | number
146
+ | undefined;
147
+ /** 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 */
148
+ allowWeightedMovement?: boolean | undefined;
66
149
  }
67
150
 
68
151
  function createBasePBAvatarModifierArea(): PBAvatarModifierArea {
69
- return { area: undefined, excludeIds: [], modifiers: [] };
152
+ return { area: undefined, excludeIds: [], modifiers: [], movementSettings: undefined, useColliderRange: undefined };
70
153
  }
71
154
 
72
155
  export namespace PBAvatarModifierArea {
@@ -82,6 +165,12 @@ export namespace PBAvatarModifierArea {
82
165
  writer.int32(v);
83
166
  }
84
167
  writer.ldelim();
168
+ if (message.movementSettings !== undefined) {
169
+ AvatarMovementSettings.encode(message.movementSettings, writer.uint32(34).fork()).ldelim();
170
+ }
171
+ if (message.useColliderRange !== undefined) {
172
+ writer.uint32(40).bool(message.useColliderRange);
173
+ }
85
174
  return writer;
86
175
  }
87
176
 
@@ -123,6 +212,20 @@ export namespace PBAvatarModifierArea {
123
212
  }
124
213
 
125
214
  break;
215
+ case 4:
216
+ if (tag !== 34) {
217
+ break;
218
+ }
219
+
220
+ message.movementSettings = AvatarMovementSettings.decode(reader, reader.uint32());
221
+ continue;
222
+ case 5:
223
+ if (tag !== 40) {
224
+ break;
225
+ }
226
+
227
+ message.useColliderRange = reader.bool();
228
+ continue;
126
229
  }
127
230
  if ((tag & 7) === 4 || tag === 0) {
128
231
  break;
@@ -139,6 +242,10 @@ export namespace PBAvatarModifierArea {
139
242
  modifiers: Array.isArray(object?.modifiers)
140
243
  ? object.modifiers.map((e: any) => avatarModifierTypeFromJSON(e))
141
244
  : [],
245
+ movementSettings: isSet(object.movementSettings)
246
+ ? AvatarMovementSettings.fromJSON(object.movementSettings)
247
+ : undefined,
248
+ useColliderRange: isSet(object.useColliderRange) ? Boolean(object.useColliderRange) : undefined,
142
249
  };
143
250
  }
144
251
 
@@ -155,6 +262,11 @@ export namespace PBAvatarModifierArea {
155
262
  } else {
156
263
  obj.modifiers = [];
157
264
  }
265
+ message.movementSettings !== undefined &&
266
+ (obj.movementSettings = message.movementSettings
267
+ ? AvatarMovementSettings.toJSON(message.movementSettings)
268
+ : undefined);
269
+ message.useColliderRange !== undefined && (obj.useColliderRange = message.useColliderRange);
158
270
  return obj;
159
271
  }
160
272
 
@@ -167,6 +279,185 @@ export namespace PBAvatarModifierArea {
167
279
  message.area = (object.area !== undefined && object.area !== null) ? Vector3.fromPartial(object.area) : undefined;
168
280
  message.excludeIds = object.excludeIds?.map((e) => e) || [];
169
281
  message.modifiers = object.modifiers?.map((e) => e) || [];
282
+ message.movementSettings = (object.movementSettings !== undefined && object.movementSettings !== null)
283
+ ? AvatarMovementSettings.fromPartial(object.movementSettings)
284
+ : undefined;
285
+ message.useColliderRange = object.useColliderRange ?? undefined;
286
+ return message;
287
+ }
288
+ }
289
+
290
+ function createBaseAvatarMovementSettings(): AvatarMovementSettings {
291
+ return {
292
+ controlMode: undefined,
293
+ runSpeed: undefined,
294
+ friction: undefined,
295
+ gravity: undefined,
296
+ jumpHeight: undefined,
297
+ maxFallSpeed: undefined,
298
+ turnSpeed: undefined,
299
+ walkSpeed: undefined,
300
+ allowWeightedMovement: undefined,
301
+ };
302
+ }
303
+
304
+ export namespace AvatarMovementSettings {
305
+ export function encode(message: AvatarMovementSettings, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
306
+ if (message.controlMode !== undefined) {
307
+ writer.uint32(8).int32(message.controlMode);
308
+ }
309
+ if (message.runSpeed !== undefined) {
310
+ writer.uint32(21).float(message.runSpeed);
311
+ }
312
+ if (message.friction !== undefined) {
313
+ writer.uint32(29).float(message.friction);
314
+ }
315
+ if (message.gravity !== undefined) {
316
+ writer.uint32(37).float(message.gravity);
317
+ }
318
+ if (message.jumpHeight !== undefined) {
319
+ writer.uint32(45).float(message.jumpHeight);
320
+ }
321
+ if (message.maxFallSpeed !== undefined) {
322
+ writer.uint32(53).float(message.maxFallSpeed);
323
+ }
324
+ if (message.turnSpeed !== undefined) {
325
+ writer.uint32(61).float(message.turnSpeed);
326
+ }
327
+ if (message.walkSpeed !== undefined) {
328
+ writer.uint32(69).float(message.walkSpeed);
329
+ }
330
+ if (message.allowWeightedMovement !== undefined) {
331
+ writer.uint32(72).bool(message.allowWeightedMovement);
332
+ }
333
+ return writer;
334
+ }
335
+
336
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): AvatarMovementSettings {
337
+ const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
338
+ let end = length === undefined ? reader.len : reader.pos + length;
339
+ const message = createBaseAvatarMovementSettings();
340
+ while (reader.pos < end) {
341
+ const tag = reader.uint32();
342
+ switch (tag >>> 3) {
343
+ case 1:
344
+ if (tag !== 8) {
345
+ break;
346
+ }
347
+
348
+ message.controlMode = reader.int32() as any;
349
+ continue;
350
+ case 2:
351
+ if (tag !== 21) {
352
+ break;
353
+ }
354
+
355
+ message.runSpeed = reader.float();
356
+ continue;
357
+ case 3:
358
+ if (tag !== 29) {
359
+ break;
360
+ }
361
+
362
+ message.friction = reader.float();
363
+ continue;
364
+ case 4:
365
+ if (tag !== 37) {
366
+ break;
367
+ }
368
+
369
+ message.gravity = reader.float();
370
+ continue;
371
+ case 5:
372
+ if (tag !== 45) {
373
+ break;
374
+ }
375
+
376
+ message.jumpHeight = reader.float();
377
+ continue;
378
+ case 6:
379
+ if (tag !== 53) {
380
+ break;
381
+ }
382
+
383
+ message.maxFallSpeed = reader.float();
384
+ continue;
385
+ case 7:
386
+ if (tag !== 61) {
387
+ break;
388
+ }
389
+
390
+ message.turnSpeed = reader.float();
391
+ continue;
392
+ case 8:
393
+ if (tag !== 69) {
394
+ break;
395
+ }
396
+
397
+ message.walkSpeed = reader.float();
398
+ continue;
399
+ case 9:
400
+ if (tag !== 72) {
401
+ break;
402
+ }
403
+
404
+ message.allowWeightedMovement = reader.bool();
405
+ continue;
406
+ }
407
+ if ((tag & 7) === 4 || tag === 0) {
408
+ break;
409
+ }
410
+ reader.skipType(tag & 7);
411
+ }
412
+ return message;
413
+ }
414
+
415
+ export function fromJSON(object: any): AvatarMovementSettings {
416
+ return {
417
+ controlMode: isSet(object.controlMode) ? avatarControlTypeFromJSON(object.controlMode) : undefined,
418
+ runSpeed: isSet(object.runSpeed) ? Number(object.runSpeed) : undefined,
419
+ friction: isSet(object.friction) ? Number(object.friction) : undefined,
420
+ gravity: isSet(object.gravity) ? Number(object.gravity) : undefined,
421
+ jumpHeight: isSet(object.jumpHeight) ? Number(object.jumpHeight) : undefined,
422
+ maxFallSpeed: isSet(object.maxFallSpeed) ? Number(object.maxFallSpeed) : undefined,
423
+ turnSpeed: isSet(object.turnSpeed) ? Number(object.turnSpeed) : undefined,
424
+ walkSpeed: isSet(object.walkSpeed) ? Number(object.walkSpeed) : undefined,
425
+ allowWeightedMovement: isSet(object.allowWeightedMovement) ? Boolean(object.allowWeightedMovement) : undefined,
426
+ };
427
+ }
428
+
429
+ export function toJSON(message: AvatarMovementSettings): unknown {
430
+ const obj: any = {};
431
+ message.controlMode !== undefined &&
432
+ (obj.controlMode = message.controlMode !== undefined ? avatarControlTypeToJSON(message.controlMode) : undefined);
433
+ message.runSpeed !== undefined && (obj.runSpeed = message.runSpeed);
434
+ message.friction !== undefined && (obj.friction = message.friction);
435
+ message.gravity !== undefined && (obj.gravity = message.gravity);
436
+ message.jumpHeight !== undefined && (obj.jumpHeight = message.jumpHeight);
437
+ message.maxFallSpeed !== undefined && (obj.maxFallSpeed = message.maxFallSpeed);
438
+ message.turnSpeed !== undefined && (obj.turnSpeed = message.turnSpeed);
439
+ message.walkSpeed !== undefined && (obj.walkSpeed = message.walkSpeed);
440
+ message.allowWeightedMovement !== undefined && (obj.allowWeightedMovement = message.allowWeightedMovement);
441
+ return obj;
442
+ }
443
+
444
+ export function create<I extends Exact<DeepPartial<AvatarMovementSettings>, I>>(base?: I): AvatarMovementSettings {
445
+ return AvatarMovementSettings.fromPartial(base ?? {});
446
+ }
447
+
448
+ export function fromPartial<I extends Exact<DeepPartial<AvatarMovementSettings>, I>>(
449
+ object: I,
450
+ ): AvatarMovementSettings {
451
+ const message = createBaseAvatarMovementSettings();
452
+ message.controlMode = object.controlMode ?? undefined;
453
+ message.runSpeed = object.runSpeed ?? undefined;
454
+ message.friction = object.friction ?? undefined;
455
+ message.gravity = object.gravity ?? undefined;
456
+ message.jumpHeight = object.jumpHeight ?? undefined;
457
+ message.maxFallSpeed = object.maxFallSpeed ?? undefined;
458
+ message.turnSpeed = object.turnSpeed ?? undefined;
459
+ message.walkSpeed = object.walkSpeed ?? undefined;
460
+ message.allowWeightedMovement = object.allowWeightedMovement ?? undefined;
170
461
  return message;
171
462
  }
172
463
  }
@@ -0,0 +1,119 @@
1
+ /* eslint-disable */
2
+ import _m0 from "protobufjs/minimal";
3
+ import { Vector3 } from "../../common/vectors.gen";
4
+
5
+ export const protobufPackage = "decentraland.sdk.components";
6
+
7
+ export interface PBAvatarMovement {
8
+ velocity:
9
+ | Vector3
10
+ | undefined;
11
+ /** 0-360, we don't allow pitch/roll */
12
+ orientation: number;
13
+ groundDirection?: Vector3 | undefined;
14
+ }
15
+
16
+ function createBasePBAvatarMovement(): PBAvatarMovement {
17
+ return { velocity: undefined, orientation: 0, groundDirection: undefined };
18
+ }
19
+
20
+ export namespace PBAvatarMovement {
21
+ export function encode(message: PBAvatarMovement, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
22
+ if (message.velocity !== undefined) {
23
+ Vector3.encode(message.velocity, writer.uint32(10).fork()).ldelim();
24
+ }
25
+ if (message.orientation !== 0) {
26
+ writer.uint32(21).float(message.orientation);
27
+ }
28
+ if (message.groundDirection !== undefined) {
29
+ Vector3.encode(message.groundDirection, writer.uint32(26).fork()).ldelim();
30
+ }
31
+ return writer;
32
+ }
33
+
34
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBAvatarMovement {
35
+ const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
36
+ let end = length === undefined ? reader.len : reader.pos + length;
37
+ const message = createBasePBAvatarMovement();
38
+ while (reader.pos < end) {
39
+ const tag = reader.uint32();
40
+ switch (tag >>> 3) {
41
+ case 1:
42
+ if (tag !== 10) {
43
+ break;
44
+ }
45
+
46
+ message.velocity = Vector3.decode(reader, reader.uint32());
47
+ continue;
48
+ case 2:
49
+ if (tag !== 21) {
50
+ break;
51
+ }
52
+
53
+ message.orientation = reader.float();
54
+ continue;
55
+ case 3:
56
+ if (tag !== 26) {
57
+ break;
58
+ }
59
+
60
+ message.groundDirection = Vector3.decode(reader, reader.uint32());
61
+ continue;
62
+ }
63
+ if ((tag & 7) === 4 || tag === 0) {
64
+ break;
65
+ }
66
+ reader.skipType(tag & 7);
67
+ }
68
+ return message;
69
+ }
70
+
71
+ export function fromJSON(object: any): PBAvatarMovement {
72
+ return {
73
+ velocity: isSet(object.velocity) ? Vector3.fromJSON(object.velocity) : undefined,
74
+ orientation: isSet(object.orientation) ? Number(object.orientation) : 0,
75
+ groundDirection: isSet(object.groundDirection) ? Vector3.fromJSON(object.groundDirection) : undefined,
76
+ };
77
+ }
78
+
79
+ export function toJSON(message: PBAvatarMovement): unknown {
80
+ const obj: any = {};
81
+ message.velocity !== undefined && (obj.velocity = message.velocity ? Vector3.toJSON(message.velocity) : undefined);
82
+ message.orientation !== undefined && (obj.orientation = message.orientation);
83
+ message.groundDirection !== undefined &&
84
+ (obj.groundDirection = message.groundDirection ? Vector3.toJSON(message.groundDirection) : undefined);
85
+ return obj;
86
+ }
87
+
88
+ export function create<I extends Exact<DeepPartial<PBAvatarMovement>, I>>(base?: I): PBAvatarMovement {
89
+ return PBAvatarMovement.fromPartial(base ?? {});
90
+ }
91
+
92
+ export function fromPartial<I extends Exact<DeepPartial<PBAvatarMovement>, I>>(object: I): PBAvatarMovement {
93
+ const message = createBasePBAvatarMovement();
94
+ message.velocity = (object.velocity !== undefined && object.velocity !== null)
95
+ ? Vector3.fromPartial(object.velocity)
96
+ : undefined;
97
+ message.orientation = object.orientation ?? 0;
98
+ message.groundDirection = (object.groundDirection !== undefined && object.groundDirection !== null)
99
+ ? Vector3.fromPartial(object.groundDirection)
100
+ : undefined;
101
+ return message;
102
+ }
103
+ }
104
+
105
+ type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
106
+
107
+ export type DeepPartial<T> = T extends Builtin ? T
108
+ : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>
109
+ : T extends { $case: string } ? { [K in keyof Omit<T, "$case">]?: DeepPartial<T[K]> } & { $case: T["$case"] }
110
+ : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }
111
+ : Partial<T>;
112
+
113
+ type KeysOfUnion<T> = T extends T ? keyof T : never;
114
+ export type Exact<P, I extends P> = P extends Builtin ? P
115
+ : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };
116
+
117
+ function isSet(value: any): boolean {
118
+ return value !== null && value !== undefined;
119
+ }
@@ -0,0 +1,163 @@
1
+ /* eslint-disable */
2
+ import _m0 from "protobufjs/minimal";
3
+ import { Vector3 } from "../../common/vectors.gen";
4
+
5
+ export const protobufPackage = "decentraland.sdk.components";
6
+
7
+ export interface PBAvatarMovementInfo {
8
+ /** the length of time the current step velocity will apply for */
9
+ stepTime: number;
10
+ /** the length of time the previous step velocity applied for */
11
+ previousStepTime: number;
12
+ /** the velocity requested for the previous frame */
13
+ requestedVelocity:
14
+ | Vector3
15
+ | undefined;
16
+ /** the resulting velocity taking collisions into account */
17
+ actualVelocity:
18
+ | Vector3
19
+ | undefined;
20
+ /** the velocity imparted by movement of the "ground" platform or pushing from other moving colliders */
21
+ externalVelocity: Vector3 | undefined;
22
+ }
23
+
24
+ function createBasePBAvatarMovementInfo(): PBAvatarMovementInfo {
25
+ return {
26
+ stepTime: 0,
27
+ previousStepTime: 0,
28
+ requestedVelocity: undefined,
29
+ actualVelocity: undefined,
30
+ externalVelocity: undefined,
31
+ };
32
+ }
33
+
34
+ export namespace PBAvatarMovementInfo {
35
+ export function encode(message: PBAvatarMovementInfo, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
36
+ if (message.stepTime !== 0) {
37
+ writer.uint32(13).float(message.stepTime);
38
+ }
39
+ if (message.previousStepTime !== 0) {
40
+ writer.uint32(21).float(message.previousStepTime);
41
+ }
42
+ if (message.requestedVelocity !== undefined) {
43
+ Vector3.encode(message.requestedVelocity, writer.uint32(26).fork()).ldelim();
44
+ }
45
+ if (message.actualVelocity !== undefined) {
46
+ Vector3.encode(message.actualVelocity, writer.uint32(34).fork()).ldelim();
47
+ }
48
+ if (message.externalVelocity !== undefined) {
49
+ Vector3.encode(message.externalVelocity, writer.uint32(42).fork()).ldelim();
50
+ }
51
+ return writer;
52
+ }
53
+
54
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBAvatarMovementInfo {
55
+ const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
56
+ let end = length === undefined ? reader.len : reader.pos + length;
57
+ const message = createBasePBAvatarMovementInfo();
58
+ while (reader.pos < end) {
59
+ const tag = reader.uint32();
60
+ switch (tag >>> 3) {
61
+ case 1:
62
+ if (tag !== 13) {
63
+ break;
64
+ }
65
+
66
+ message.stepTime = reader.float();
67
+ continue;
68
+ case 2:
69
+ if (tag !== 21) {
70
+ break;
71
+ }
72
+
73
+ message.previousStepTime = reader.float();
74
+ continue;
75
+ case 3:
76
+ if (tag !== 26) {
77
+ break;
78
+ }
79
+
80
+ message.requestedVelocity = Vector3.decode(reader, reader.uint32());
81
+ continue;
82
+ case 4:
83
+ if (tag !== 34) {
84
+ break;
85
+ }
86
+
87
+ message.actualVelocity = Vector3.decode(reader, reader.uint32());
88
+ continue;
89
+ case 5:
90
+ if (tag !== 42) {
91
+ break;
92
+ }
93
+
94
+ message.externalVelocity = Vector3.decode(reader, reader.uint32());
95
+ continue;
96
+ }
97
+ if ((tag & 7) === 4 || tag === 0) {
98
+ break;
99
+ }
100
+ reader.skipType(tag & 7);
101
+ }
102
+ return message;
103
+ }
104
+
105
+ export function fromJSON(object: any): PBAvatarMovementInfo {
106
+ return {
107
+ stepTime: isSet(object.stepTime) ? Number(object.stepTime) : 0,
108
+ previousStepTime: isSet(object.previousStepTime) ? Number(object.previousStepTime) : 0,
109
+ requestedVelocity: isSet(object.requestedVelocity) ? Vector3.fromJSON(object.requestedVelocity) : undefined,
110
+ actualVelocity: isSet(object.actualVelocity) ? Vector3.fromJSON(object.actualVelocity) : undefined,
111
+ externalVelocity: isSet(object.externalVelocity) ? Vector3.fromJSON(object.externalVelocity) : undefined,
112
+ };
113
+ }
114
+
115
+ export function toJSON(message: PBAvatarMovementInfo): unknown {
116
+ const obj: any = {};
117
+ message.stepTime !== undefined && (obj.stepTime = message.stepTime);
118
+ message.previousStepTime !== undefined && (obj.previousStepTime = message.previousStepTime);
119
+ message.requestedVelocity !== undefined &&
120
+ (obj.requestedVelocity = message.requestedVelocity ? Vector3.toJSON(message.requestedVelocity) : undefined);
121
+ message.actualVelocity !== undefined &&
122
+ (obj.actualVelocity = message.actualVelocity ? Vector3.toJSON(message.actualVelocity) : undefined);
123
+ message.externalVelocity !== undefined &&
124
+ (obj.externalVelocity = message.externalVelocity ? Vector3.toJSON(message.externalVelocity) : undefined);
125
+ return obj;
126
+ }
127
+
128
+ export function create<I extends Exact<DeepPartial<PBAvatarMovementInfo>, I>>(base?: I): PBAvatarMovementInfo {
129
+ return PBAvatarMovementInfo.fromPartial(base ?? {});
130
+ }
131
+
132
+ export function fromPartial<I extends Exact<DeepPartial<PBAvatarMovementInfo>, I>>(object: I): PBAvatarMovementInfo {
133
+ const message = createBasePBAvatarMovementInfo();
134
+ message.stepTime = object.stepTime ?? 0;
135
+ message.previousStepTime = object.previousStepTime ?? 0;
136
+ message.requestedVelocity = (object.requestedVelocity !== undefined && object.requestedVelocity !== null)
137
+ ? Vector3.fromPartial(object.requestedVelocity)
138
+ : undefined;
139
+ message.actualVelocity = (object.actualVelocity !== undefined && object.actualVelocity !== null)
140
+ ? Vector3.fromPartial(object.actualVelocity)
141
+ : undefined;
142
+ message.externalVelocity = (object.externalVelocity !== undefined && object.externalVelocity !== null)
143
+ ? Vector3.fromPartial(object.externalVelocity)
144
+ : undefined;
145
+ return message;
146
+ }
147
+ }
148
+
149
+ type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
150
+
151
+ export type DeepPartial<T> = T extends Builtin ? T
152
+ : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>
153
+ : T extends { $case: string } ? { [K in keyof Omit<T, "$case">]?: DeepPartial<T[K]> } & { $case: T["$case"] }
154
+ : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }
155
+ : Partial<T>;
156
+
157
+ type KeysOfUnion<T> = T extends T ? keyof T : never;
158
+ export type Exact<P, I extends P> = P extends Builtin ? P
159
+ : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };
160
+
161
+ function isSet(value: any): boolean {
162
+ return value !== null && value !== undefined;
163
+ }
@@ -65,7 +65,11 @@ export interface PBAvatarShape {
65
65
  /** available emotes (default empty) */
66
66
  emotes: string[];
67
67
  /** hides the skin + hair + facial features (default: false) */
68
- showOnlyWearables?: boolean | undefined;
68
+ showOnlyWearables?:
69
+ | boolean
70
+ | undefined;
71
+ /** slots that will render even if hidden */
72
+ forceRender: string[];
69
73
  }
70
74
 
71
75
  function createBasePBAvatarShape(): PBAvatarShape {
@@ -82,6 +86,7 @@ function createBasePBAvatarShape(): PBAvatarShape {
82
86
  wearables: [],
83
87
  emotes: [],
84
88
  showOnlyWearables: undefined,
89
+ forceRender: [],
85
90
  };
86
91
  }
87
92
 
@@ -123,6 +128,9 @@ export namespace PBAvatarShape {
123
128
  if (message.showOnlyWearables !== undefined) {
124
129
  writer.uint32(96).bool(message.showOnlyWearables);
125
130
  }
131
+ for (const v of message.forceRender) {
132
+ writer.uint32(106).string(v!);
133
+ }
126
134
  return writer;
127
135
  }
128
136
 
@@ -217,6 +225,13 @@ export namespace PBAvatarShape {
217
225
 
218
226
  message.showOnlyWearables = reader.bool();
219
227
  continue;
228
+ case 13:
229
+ if (tag !== 106) {
230
+ break;
231
+ }
232
+
233
+ message.forceRender.push(reader.string());
234
+ continue;
220
235
  }
221
236
  if ((tag & 7) === 4 || tag === 0) {
222
237
  break;
@@ -242,6 +257,7 @@ export namespace PBAvatarShape {
242
257
  wearables: Array.isArray(object?.wearables) ? object.wearables.map((e: any) => String(e)) : [],
243
258
  emotes: Array.isArray(object?.emotes) ? object.emotes.map((e: any) => String(e)) : [],
244
259
  showOnlyWearables: isSet(object.showOnlyWearables) ? Boolean(object.showOnlyWearables) : undefined,
260
+ forceRender: Array.isArray(object?.forceRender) ? object.forceRender.map((e: any) => String(e)) : [],
245
261
  };
246
262
  }
247
263
 
@@ -270,6 +286,11 @@ export namespace PBAvatarShape {
270
286
  obj.emotes = [];
271
287
  }
272
288
  message.showOnlyWearables !== undefined && (obj.showOnlyWearables = message.showOnlyWearables);
289
+ if (message.forceRender) {
290
+ obj.forceRender = message.forceRender.map((e) => e);
291
+ } else {
292
+ obj.forceRender = [];
293
+ }
273
294
  return obj;
274
295
  }
275
296
 
@@ -297,6 +318,7 @@ export namespace PBAvatarShape {
297
318
  message.wearables = object.wearables?.map((e) => e) || [];
298
319
  message.emotes = object.emotes?.map((e) => e) || [];
299
320
  message.showOnlyWearables = object.showOnlyWearables ?? undefined;
321
+ message.forceRender = object.forceRender?.map((e) => e) || [];
300
322
  return message;
301
323
  }
302
324
  }