@dcl/ecs 7.0.6-4057700455.commit-453395e → 7.0.6-4076330908.commit-cd40e5f
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.
- package/dist/components/extended/Animator.d.ts +1 -5
- package/dist/components/extended/Material.d.ts +3 -7
- package/dist/components/extended/MeshCollider.d.ts +1 -5
- package/dist/components/extended/MeshRenderer.d.ts +1 -5
- package/dist/components/generated/Animator.gen.d.ts +1 -8
- package/dist/components/generated/Animator.gen.js +1 -1
- package/dist/components/generated/AudioSource.gen.d.ts +1 -8
- package/dist/components/generated/AudioSource.gen.js +1 -1
- package/dist/components/generated/AudioStream.gen.d.ts +1 -8
- package/dist/components/generated/AudioStream.gen.js +1 -1
- package/dist/components/generated/AvatarAttach.gen.d.ts +1 -8
- package/dist/components/generated/AvatarAttach.gen.js +1 -1
- package/dist/components/generated/AvatarModifierArea.gen.d.ts +1 -8
- package/dist/components/generated/AvatarModifierArea.gen.js +1 -1
- package/dist/components/generated/AvatarShape.gen.d.ts +1 -8
- package/dist/components/generated/AvatarShape.gen.js +1 -1
- package/dist/components/generated/Billboard.gen.d.ts +1 -8
- package/dist/components/generated/Billboard.gen.js +1 -1
- package/dist/components/generated/CameraMode.gen.d.ts +1 -8
- package/dist/components/generated/CameraMode.gen.js +1 -1
- package/dist/components/generated/CameraModeArea.gen.d.ts +1 -8
- package/dist/components/generated/CameraModeArea.gen.js +1 -1
- package/dist/components/generated/GltfContainer.gen.d.ts +1 -8
- package/dist/components/generated/GltfContainer.gen.js +1 -1
- package/dist/components/generated/Material.gen.d.ts +1 -8
- package/dist/components/generated/Material.gen.js +1 -1
- package/dist/components/generated/MeshCollider.gen.d.ts +1 -8
- package/dist/components/generated/MeshCollider.gen.js +1 -1
- package/dist/components/generated/MeshRenderer.gen.d.ts +1 -8
- package/dist/components/generated/MeshRenderer.gen.js +1 -1
- package/dist/components/generated/NftShape.gen.d.ts +1 -8
- package/dist/components/generated/NftShape.gen.js +1 -1
- package/dist/components/generated/PointerEvents.gen.d.ts +1 -8
- package/dist/components/generated/PointerEvents.gen.js +1 -1
- package/dist/components/generated/PointerEventsResult.gen.d.ts +1 -8
- package/dist/components/generated/PointerEventsResult.gen.js +1 -1
- package/dist/components/generated/PointerLock.gen.d.ts +1 -8
- package/dist/components/generated/PointerLock.gen.js +1 -1
- package/dist/components/generated/Raycast.gen.d.ts +1 -8
- package/dist/components/generated/Raycast.gen.js +1 -1
- package/dist/components/generated/RaycastResult.gen.d.ts +1 -8
- package/dist/components/generated/RaycastResult.gen.js +1 -1
- package/dist/components/generated/TextShape.gen.d.ts +1 -8
- package/dist/components/generated/TextShape.gen.js +1 -1
- package/dist/components/generated/UiBackground.gen.d.ts +1 -8
- package/dist/components/generated/UiBackground.gen.js +1 -1
- package/dist/components/generated/UiDropdown.gen.d.ts +1 -8
- package/dist/components/generated/UiDropdown.gen.js +1 -1
- package/dist/components/generated/UiDropdownResult.gen.d.ts +1 -8
- package/dist/components/generated/UiDropdownResult.gen.js +1 -1
- package/dist/components/generated/UiInput.gen.d.ts +1 -8
- package/dist/components/generated/UiInput.gen.js +1 -1
- package/dist/components/generated/UiInputResult.gen.d.ts +1 -8
- package/dist/components/generated/UiInputResult.gen.js +1 -1
- package/dist/components/generated/UiText.gen.d.ts +1 -8
- package/dist/components/generated/UiText.gen.js +1 -1
- package/dist/components/generated/UiTransform.gen.d.ts +1 -8
- package/dist/components/generated/UiTransform.gen.js +1 -1
- package/dist/components/generated/VisibilityComponent.gen.d.ts +1 -8
- package/dist/components/generated/VisibilityComponent.gen.js +1 -1
- package/dist/components/generated/pb/decentraland/common/border_rect.gen.d.ts +3 -8
- package/dist/components/generated/pb/decentraland/common/border_rect.gen.js +5 -2
- package/dist/components/generated/pb/decentraland/common/colors.gen.d.ts +6 -15
- package/dist/components/generated/pb/decentraland/common/colors.gen.js +9 -3
- package/dist/components/generated/pb/decentraland/common/texture.gen.d.ts +15 -22
- package/dist/components/generated/pb/decentraland/common/texture.gen.js +19 -4
- package/dist/components/generated/pb/decentraland/common/vectors.gen.d.ts +9 -22
- package/dist/components/generated/pb/decentraland/common/vectors.gen.js +13 -4
- package/dist/components/generated/pb/decentraland/sdk/components/animator.gen.d.ts +6 -15
- package/dist/components/generated/pb/decentraland/sdk/components/animator.gen.js +9 -3
- package/dist/components/generated/pb/decentraland/sdk/components/audio_source.gen.d.ts +3 -8
- package/dist/components/generated/pb/decentraland/sdk/components/audio_source.gen.js +5 -2
- package/dist/components/generated/pb/decentraland/sdk/components/audio_stream.gen.d.ts +3 -8
- package/dist/components/generated/pb/decentraland/sdk/components/audio_stream.gen.js +5 -2
- package/dist/components/generated/pb/decentraland/sdk/components/avatar_attach.gen.d.ts +6 -8
- package/dist/components/generated/pb/decentraland/sdk/components/avatar_attach.gen.js +8 -2
- package/dist/components/generated/pb/decentraland/sdk/components/avatar_modifier_area.gen.d.ts +6 -8
- package/dist/components/generated/pb/decentraland/sdk/components/avatar_modifier_area.gen.js +8 -2
- package/dist/components/generated/pb/decentraland/sdk/components/avatar_shape.gen.d.ts +3 -8
- package/dist/components/generated/pb/decentraland/sdk/components/avatar_shape.gen.js +5 -2
- package/dist/components/generated/pb/decentraland/sdk/components/billboard.gen.d.ts +6 -8
- package/dist/components/generated/pb/decentraland/sdk/components/billboard.gen.js +8 -2
- package/dist/components/generated/pb/decentraland/sdk/components/camera_mode.gen.d.ts +3 -8
- package/dist/components/generated/pb/decentraland/sdk/components/camera_mode.gen.js +5 -2
- package/dist/components/generated/pb/decentraland/sdk/components/camera_mode_area.gen.d.ts +3 -8
- package/dist/components/generated/pb/decentraland/sdk/components/camera_mode_area.gen.js +5 -2
- package/dist/components/generated/pb/decentraland/sdk/components/common/camera_type.gen.d.ts +3 -0
- package/dist/components/generated/pb/decentraland/sdk/components/common/camera_type.gen.js +4 -1
- package/dist/components/generated/pb/decentraland/sdk/components/common/id.gen.d.ts +1 -1
- package/dist/components/generated/pb/decentraland/sdk/components/common/id.gen.js +1 -1
- package/dist/components/generated/pb/decentraland/sdk/components/common/input_action.gen.d.ts +3 -0
- package/dist/components/generated/pb/decentraland/sdk/components/common/input_action.gen.js +4 -1
- package/dist/components/generated/pb/decentraland/sdk/components/common/texts.gen.d.ts +6 -0
- package/dist/components/generated/pb/decentraland/sdk/components/common/texts.gen.js +7 -1
- package/dist/components/generated/pb/decentraland/sdk/components/gltf_container.gen.d.ts +3 -8
- package/dist/components/generated/pb/decentraland/sdk/components/gltf_container.gen.js +5 -2
- package/dist/components/generated/pb/decentraland/sdk/components/material.gen.d.ts +12 -22
- package/dist/components/generated/pb/decentraland/sdk/components/material.gen.js +16 -4
- package/dist/components/generated/pb/decentraland/sdk/components/mesh_collider.gen.d.ts +18 -36
- package/dist/components/generated/pb/decentraland/sdk/components/mesh_collider.gen.js +24 -6
- package/dist/components/generated/pb/decentraland/sdk/components/mesh_renderer.gen.d.ts +15 -36
- package/dist/components/generated/pb/decentraland/sdk/components/mesh_renderer.gen.js +21 -6
- package/dist/components/generated/pb/decentraland/sdk/components/nft_shape.gen.d.ts +6 -8
- package/dist/components/generated/pb/decentraland/sdk/components/nft_shape.gen.js +8 -2
- package/dist/components/generated/pb/decentraland/sdk/components/pointer_events.gen.d.ts +12 -22
- package/dist/components/generated/pb/decentraland/sdk/components/pointer_events.gen.js +16 -4
- package/dist/components/generated/pb/decentraland/sdk/components/pointer_events_result.gen.d.ts +6 -15
- package/dist/components/generated/pb/decentraland/sdk/components/pointer_events_result.gen.js +9 -3
- package/dist/components/generated/pb/decentraland/sdk/components/pointer_lock.gen.d.ts +3 -8
- package/dist/components/generated/pb/decentraland/sdk/components/pointer_lock.gen.js +5 -2
- package/dist/components/generated/pb/decentraland/sdk/components/raycast.gen.d.ts +6 -8
- package/dist/components/generated/pb/decentraland/sdk/components/raycast.gen.js +8 -2
- package/dist/components/generated/pb/decentraland/sdk/components/raycast_result.gen.d.ts +6 -15
- package/dist/components/generated/pb/decentraland/sdk/components/raycast_result.gen.js +9 -3
- package/dist/components/generated/pb/decentraland/sdk/components/text_shape.gen.d.ts +3 -8
- package/dist/components/generated/pb/decentraland/sdk/components/text_shape.gen.js +5 -2
- package/dist/components/generated/pb/decentraland/sdk/components/ui_background.gen.d.ts +6 -8
- package/dist/components/generated/pb/decentraland/sdk/components/ui_background.gen.js +8 -2
- package/dist/components/generated/pb/decentraland/sdk/components/ui_dropdown.gen.d.ts +3 -8
- package/dist/components/generated/pb/decentraland/sdk/components/ui_dropdown.gen.js +5 -2
- package/dist/components/generated/pb/decentraland/sdk/components/ui_dropdown_result.gen.d.ts +3 -8
- package/dist/components/generated/pb/decentraland/sdk/components/ui_dropdown_result.gen.js +5 -2
- package/dist/components/generated/pb/decentraland/sdk/components/ui_input.gen.d.ts +3 -8
- package/dist/components/generated/pb/decentraland/sdk/components/ui_input.gen.js +5 -2
- package/dist/components/generated/pb/decentraland/sdk/components/ui_input_result.gen.d.ts +3 -8
- package/dist/components/generated/pb/decentraland/sdk/components/ui_input_result.gen.js +5 -2
- package/dist/components/generated/pb/decentraland/sdk/components/ui_text.gen.d.ts +3 -8
- package/dist/components/generated/pb/decentraland/sdk/components/ui_text.gen.js +5 -2
- package/dist/components/generated/pb/decentraland/sdk/components/ui_transform.gen.d.ts +30 -8
- package/dist/components/generated/pb/decentraland/sdk/components/ui_transform.gen.js +32 -2
- package/dist/components/generated/pb/decentraland/sdk/components/visibility_component.gen.d.ts +3 -8
- package/dist/components/generated/pb/decentraland/sdk/components/visibility_component.gen.js +5 -2
- package/dist/components/generated/pb/google/protobuf/descriptor.gen.d.ts +90 -176
- package/dist/components/generated/pb/google/protobuf/descriptor.gen.js +116 -26
- package/dist/components/index.d.ts +1 -2
- package/dist/components/types.d.ts +4 -4
- package/dist/engine/component.d.ts +2 -4
- package/dist/engine/component.js +3 -0
- package/dist/engine/entity.d.ts +3 -22
- package/dist/engine/entity.js +16 -3
- package/dist/engine/index.d.ts +0 -11
- package/dist/engine/index.js +22 -22
- package/dist/engine/input.d.ts +0 -2
- package/dist/engine/input.js +3 -0
- package/dist/engine/types.d.ts +27 -12
- package/dist/index.d.ts +6 -5
- package/dist/runtime/initialization/index.d.ts +34 -9
- package/dist/runtime/initialization/index.js +25 -1
- package/dist/runtime/types.d.ts +0 -1
- package/dist/runtime/types.js +0 -1
- package/dist/schemas/Array.d.ts +1 -5
- package/dist/schemas/Array.js +3 -3
- package/dist/schemas/ISchema.d.ts +2 -2
- package/dist/schemas/Map.d.ts +0 -4
- package/dist/schemas/Map.js +3 -3
- package/dist/schemas/Optional.d.ts +1 -5
- package/dist/schemas/Optional.js +3 -3
- package/dist/schemas/basic/Boolean.d.ts +1 -5
- package/dist/schemas/basic/Boolean.js +1 -1
- package/dist/schemas/basic/Enum.d.ts +1 -5
- package/dist/schemas/basic/Enum.js +3 -3
- package/dist/schemas/basic/Float.d.ts +1 -9
- package/dist/schemas/basic/Float.js +2 -2
- package/dist/schemas/basic/Integer.d.ts +0 -8
- package/dist/schemas/basic/Integer.js +2 -2
- package/dist/schemas/basic/String.d.ts +1 -9
- package/dist/schemas/basic/String.js +2 -2
- package/dist/schemas/custom/Color3.d.ts +0 -5
- package/dist/schemas/custom/Color3.js +1 -1
- package/dist/schemas/custom/Color4.d.ts +0 -5
- package/dist/schemas/custom/Color4.js +1 -1
- package/dist/schemas/custom/Entity.d.ts +1 -6
- package/dist/schemas/custom/Entity.js +1 -1
- package/dist/schemas/custom/Quaternion.d.ts +0 -5
- package/dist/schemas/custom/Quaternion.js +1 -1
- package/dist/schemas/custom/Vector3.d.ts +0 -5
- package/dist/schemas/custom/Vector3.js +1 -1
- package/dist/schemas/index.d.ts +24 -16
- package/dist/schemas/index.js +18 -0
- package/dist/schemas/typing.d.ts +17 -2
- package/dist/serialization/ByteBuffer/index.d.ts +2 -2
- package/dist/serialization/crdt/deleteComponent.d.ts +1 -11
- package/dist/serialization/crdt/deleteComponent.js +4 -1
- package/dist/serialization/crdt/deleteEntity.d.ts +1 -8
- package/dist/serialization/crdt/deleteEntity.js +4 -1
- package/dist/serialization/crdt/index.d.ts +0 -28
- package/dist/serialization/crdt/index.js +3 -1
- package/dist/serialization/crdt/message.js +1 -1
- package/dist/serialization/crdt/putComponent.d.ts +1 -13
- package/dist/serialization/crdt/putComponent.js +4 -1
- package/dist/serialization/crdt/types.d.ts +15 -20
- package/dist/serialization/crdt/types.js +6 -0
- package/dist/systems/async-task.d.ts +0 -4
- package/dist/systems/async-task.js +3 -0
- package/dist/systems/crdt/index.d.ts +1 -9
- package/dist/systems/crdt/index.js +4 -1
- package/dist/systems/crdt/types.d.ts +9 -0
- package/dist/systems/events.d.ts +11 -19
- package/dist/systems/events.js +3 -36
- package/package.json +3 -3
package/dist/engine/types.d.ts
CHANGED
|
@@ -2,10 +2,9 @@ import type { ISchema } from '../schemas/ISchema';
|
|
|
2
2
|
import { MapResult, Spec } from '../schemas/Map';
|
|
3
3
|
import { Transport } from '../systems/crdt/types';
|
|
4
4
|
import { ComponentDefinition } from './component';
|
|
5
|
-
import { Entity,
|
|
5
|
+
import { Entity, EntityState } from './entity';
|
|
6
6
|
import { ReadonlyComponentSchema } from './readonly';
|
|
7
7
|
import { SystemFn } from './systems';
|
|
8
|
-
export { ISchema } from '../schemas/ISchema';
|
|
9
8
|
/**
|
|
10
9
|
* @public
|
|
11
10
|
*/
|
|
@@ -16,6 +15,10 @@ export type Unpacked<T> = T extends (infer U)[] ? U : T;
|
|
|
16
15
|
export type ComponentSchema<T extends [ComponentDefinition<any>, ...ComponentDefinition<any>[]]> = {
|
|
17
16
|
[K in keyof T]: T[K] extends ComponentDefinition<any> ? ReturnType<T[K]['getMutable']> : never;
|
|
18
17
|
};
|
|
18
|
+
/**
|
|
19
|
+
* @public
|
|
20
|
+
* Overrides component definition to support partial default values
|
|
21
|
+
*/
|
|
19
22
|
export interface MapComponentDefinition<T> extends ComponentDefinition<T> {
|
|
20
23
|
/**
|
|
21
24
|
* Add the current component to an entity, throw an error if the component already exists (use `createOrReplace` instead).
|
|
@@ -35,14 +38,16 @@ export interface MapComponentDefinition<T> extends ComponentDefinition<T> {
|
|
|
35
38
|
/**
|
|
36
39
|
* @public
|
|
37
40
|
*/
|
|
38
|
-
export
|
|
41
|
+
export interface IEngine {
|
|
39
42
|
/**
|
|
43
|
+
* @public
|
|
40
44
|
* Increment the used entity counter and return the next one.
|
|
41
45
|
* @param dynamic - whether or no the entity should be considered as Dynamic (vs Static)
|
|
42
46
|
* @returns the next entity unused
|
|
43
47
|
*/
|
|
44
48
|
addEntity(dynamic?: boolean): Entity;
|
|
45
49
|
/**
|
|
50
|
+
* @public
|
|
46
51
|
* Remove all components of an entity
|
|
47
52
|
* @param entity - entity
|
|
48
53
|
*/
|
|
@@ -53,18 +58,21 @@ export type IEngine = {
|
|
|
53
58
|
*/
|
|
54
59
|
removeEntityWithChildren(firstEntity: Entity): void;
|
|
55
60
|
/**
|
|
61
|
+
*
|
|
62
|
+
* @public
|
|
56
63
|
* Check the state of an entityin the engine
|
|
57
64
|
* @param entity - the entity to validate
|
|
58
|
-
* @returns
|
|
65
|
+
* @returns EntityState enum
|
|
59
66
|
*/
|
|
60
67
|
getEntityState(entity: Entity): EntityState;
|
|
61
68
|
/**
|
|
69
|
+
* @public
|
|
62
70
|
* Add the system to the engine. It will be called every tick updated.
|
|
63
71
|
* @param system - function that receives the delta time between last tick and current one.
|
|
64
72
|
* @param priority - a number with the priority, big number are called before smaller ones
|
|
65
73
|
* @param name - optional: a unique name to identify it
|
|
66
74
|
*
|
|
67
|
-
*
|
|
75
|
+
* @example
|
|
68
76
|
* ```ts
|
|
69
77
|
* function mySystem(dt: number) {
|
|
70
78
|
* const entitiesWithMeshRenderer = engine.getEntitiesWith(MeshRenderer, Transform)
|
|
@@ -77,26 +85,30 @@ export type IEngine = {
|
|
|
77
85
|
*/
|
|
78
86
|
addSystem(system: SystemFn, priority?: number, name?: string): void;
|
|
79
87
|
/**
|
|
88
|
+
* @public
|
|
80
89
|
* Remove a system from the engine.
|
|
81
90
|
* @param selector - the function or the unique name to identify
|
|
82
91
|
* @returns if it was found and removed
|
|
83
92
|
*/
|
|
84
93
|
removeSystem(selector: string | SystemFn): boolean;
|
|
85
94
|
/**
|
|
95
|
+
* @public
|
|
86
96
|
* Registers a custom component definition.
|
|
87
97
|
* @param componentName - unique name to identify the component, a hash is calculated for it, it will fail if the hash has collisions.
|
|
88
98
|
* @param componentDefinition - The component definition
|
|
89
99
|
*/
|
|
90
100
|
registerComponentDefinition<T>(componentName: string, componentDefinition: ComponentDefinition<T>): ComponentDefinition<T>;
|
|
91
101
|
/**
|
|
102
|
+
* @public
|
|
92
103
|
* Define a component and add it to the engine.
|
|
93
|
-
* @param spec - An object with schema fields
|
|
94
104
|
* @param componentName - unique name to identify the component, a hash is calculated for it, it will fail if the hash has collisions.
|
|
105
|
+
* @param spec - An object with schema fields
|
|
95
106
|
* @param constructorDefault - the initial value prefilled when a component is created without a value
|
|
96
107
|
* @returns The component definition
|
|
97
108
|
*
|
|
109
|
+
* @example
|
|
98
110
|
* ```ts
|
|
99
|
-
* const
|
|
111
|
+
* const CustomComponent = engine.defineComponent("my-scene::custom-name", {
|
|
100
112
|
* id: Schemas.Int,
|
|
101
113
|
* name: Schemas.String
|
|
102
114
|
* })
|
|
@@ -104,11 +116,13 @@ export type IEngine = {
|
|
|
104
116
|
*/
|
|
105
117
|
defineComponent<T extends Spec>(componentName: string, spec: T, constructorDefault?: Partial<MapResult<T>>): MapComponentDefinition<MapResult<T>>;
|
|
106
118
|
/**
|
|
119
|
+
* @public
|
|
107
120
|
* Define a component and add it to the engine.
|
|
108
121
|
* @param componentName - unique name to identify the component, a hash is calculated for it, it will fail if the hash has collisions.
|
|
109
122
|
* @param spec - An object with schema fields
|
|
110
123
|
* @returns The component definition
|
|
111
124
|
*
|
|
125
|
+
* @example
|
|
112
126
|
* ```ts
|
|
113
127
|
* const StateComponentId = 10023
|
|
114
128
|
* const StateComponent = engine.defineComponentFromSchema("my-lib::VisibleComponent", Schemas.Bool)
|
|
@@ -116,6 +130,7 @@ export type IEngine = {
|
|
|
116
130
|
*/
|
|
117
131
|
defineComponentFromSchema<T>(componentName: string, spec: ISchema<T>): ComponentDefinition<T>;
|
|
118
132
|
/**
|
|
133
|
+
* @public
|
|
119
134
|
* Get the component definition from the component id.
|
|
120
135
|
* @param componentId - component number or name used to identify the component descriptor
|
|
121
136
|
* @returns the component definition, throw an error if it doesn't exist
|
|
@@ -136,6 +151,7 @@ export type IEngine = {
|
|
|
136
151
|
*/
|
|
137
152
|
getComponentOrNull<T>(componentId: number): ComponentDefinition<T> | null;
|
|
138
153
|
/**
|
|
154
|
+
* @public
|
|
139
155
|
* Get a iterator of entities that has all the component requested.
|
|
140
156
|
* @param components - a list of component definitions
|
|
141
157
|
* @returns An iterator of an array with the [entity, component1, component2, ...]
|
|
@@ -149,6 +165,7 @@ export type IEngine = {
|
|
|
149
165
|
*/
|
|
150
166
|
getEntitiesWith<T extends [ComponentDefinition<any>, ...ComponentDefinition<any>[]]>(...components: T): Iterable<[Entity, ...ReadonlyComponentSchema<T>]>;
|
|
151
167
|
/**
|
|
168
|
+
* @public
|
|
152
169
|
* @param deltaTime - deltaTime in seconds
|
|
153
170
|
*/
|
|
154
171
|
update(deltaTime: number): Promise<void>;
|
|
@@ -168,14 +185,12 @@ export type IEngine = {
|
|
|
168
185
|
*/
|
|
169
186
|
readonly CameraEntity: Entity;
|
|
170
187
|
/**
|
|
188
|
+
* @alpha
|
|
171
189
|
* @param transport - transport which changes its onmessage to process CRDT messages
|
|
172
190
|
*/
|
|
173
191
|
addTransport(transport: Transport): void;
|
|
174
192
|
/**
|
|
175
|
-
*
|
|
176
|
-
*/
|
|
177
|
-
entityContainer: EntityContainer;
|
|
178
|
-
/**
|
|
193
|
+
* @public
|
|
179
194
|
* Iterator of registered components
|
|
180
195
|
*/
|
|
181
196
|
componentsIter(): Iterable<ComponentDefinition<unknown>>;
|
|
@@ -184,4 +199,4 @@ export type IEngine = {
|
|
|
184
199
|
* components that will be available to this engine and to run optimizations.
|
|
185
200
|
*/
|
|
186
201
|
seal(): void;
|
|
187
|
-
}
|
|
202
|
+
}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,11 +7,12 @@ export * from './systems/events';
|
|
|
7
7
|
export * from './systems/async-task';
|
|
8
8
|
export * from './engine/entity';
|
|
9
9
|
export * from './components/types';
|
|
10
|
-
|
|
11
|
-
export declare const
|
|
12
|
-
export declare const
|
|
13
|
-
export declare const
|
|
14
|
-
export declare const
|
|
10
|
+
import { MaterialComponentDefinitionExtended, MeshColliderComponentDefinitionExtended, MeshRendererComponentDefinitionExtended, TransformComponentExtended, AnimatorComponentDefinitionExtended } from './components/types';
|
|
11
|
+
export declare const Transform: TransformComponentExtended;
|
|
12
|
+
export declare const Animator: AnimatorComponentDefinitionExtended;
|
|
13
|
+
export declare const Material: MaterialComponentDefinitionExtended;
|
|
14
|
+
export declare const MeshRenderer: MeshRendererComponentDefinitionExtended;
|
|
15
|
+
export declare const MeshCollider: MeshColliderComponentDefinitionExtended;
|
|
15
16
|
export * from './components/generated/global.gen';
|
|
16
17
|
export * from './components/generated/types.gen';
|
|
17
18
|
export * from './serialization/crdt';
|
|
@@ -4,18 +4,43 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { IEngine } from '../../engine';
|
|
6
6
|
import { Task } from '../../systems/async-task';
|
|
7
|
+
import { PointerEventsSystem } from '../../systems/events';
|
|
8
|
+
import { IInputSystem } from './../../engine/input';
|
|
9
|
+
/**
|
|
10
|
+
* @public
|
|
11
|
+
* The engine is the part of the scene that sits in the middle and manages all of the other parts.
|
|
12
|
+
* It determines what entities are rendered and how players interact with them.
|
|
13
|
+
* It also coordinates what functions from systems are executed and when.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* import { engine } from '@dcl/sdk/ecs'
|
|
17
|
+
* const entity = engine.addEntity()
|
|
18
|
+
* engine.addSystem(someSystemFunction)
|
|
19
|
+
*
|
|
20
|
+
*/
|
|
7
21
|
export declare const engine: IEngine;
|
|
8
|
-
export declare const inputSystem: import("../../engine").IInputSystem;
|
|
9
|
-
export declare const pointerEventsSystem: {
|
|
10
|
-
removeOnClick(entity: import("../../engine").Entity): void;
|
|
11
|
-
removeOnPointerDown(entity: import("../../engine").Entity): void;
|
|
12
|
-
removeOnPointerUp(entity: import("../../engine").Entity): void;
|
|
13
|
-
onClick(entity: import("../../engine").Entity, cb: import("../../systems/events").EventSystemCallback, opts?: Partial<import("../../systems/events").EventSystemOptions> | undefined): void;
|
|
14
|
-
onPointerDown(entity: import("../../engine").Entity, cb: import("../../systems/events").EventSystemCallback, opts?: Partial<import("../../systems/events").EventSystemOptions> | undefined): void;
|
|
15
|
-
onPointerUp(entity: import("../../engine").Entity, cb: import("../../systems/events").EventSystemCallback, opts?: Partial<import("../../systems/events").EventSystemOptions> | undefined): void;
|
|
16
|
-
};
|
|
17
22
|
/**
|
|
18
23
|
* @public
|
|
24
|
+
* Input system manager. Check for button events
|
|
25
|
+
* @example
|
|
26
|
+
* inputSystem.isTriggered: Returns true if an input action ocurred since the last tick.
|
|
27
|
+
* inputSystem.isPressed: Returns true if an input is currently being pressed down. It will return true on every tick until the button goes up again.
|
|
28
|
+
* inputSystem.getInputCommand: Returns an object with data about the input action.
|
|
29
|
+
*/
|
|
30
|
+
export declare const inputSystem: IInputSystem;
|
|
31
|
+
export { IInputSystem };
|
|
32
|
+
/**
|
|
33
|
+
* @public
|
|
34
|
+
* Register callback functions to a particular entity.
|
|
35
|
+
*/
|
|
36
|
+
export declare const pointerEventsSystem: PointerEventsSystem;
|
|
37
|
+
export { PointerEventsSystem };
|
|
38
|
+
/**
|
|
39
|
+
* @public
|
|
40
|
+
* Runs an async function
|
|
19
41
|
*/
|
|
20
42
|
export declare const executeTask: (task: Task<unknown>) => void;
|
|
43
|
+
/**
|
|
44
|
+
* @public
|
|
45
|
+
*/
|
|
21
46
|
export type { Task };
|
|
@@ -6,15 +6,39 @@ import { Engine } from '../../engine';
|
|
|
6
6
|
import { createTaskSystem } from '../../systems/async-task';
|
|
7
7
|
import { createPointerEventSystem } from '../../systems/events';
|
|
8
8
|
import { createInputSystem } from './../../engine/input';
|
|
9
|
+
/**
|
|
10
|
+
* @public
|
|
11
|
+
* The engine is the part of the scene that sits in the middle and manages all of the other parts.
|
|
12
|
+
* It determines what entities are rendered and how players interact with them.
|
|
13
|
+
* It also coordinates what functions from systems are executed and when.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* import { engine } from '@dcl/sdk/ecs'
|
|
17
|
+
* const entity = engine.addEntity()
|
|
18
|
+
* engine.addSystem(someSystemFunction)
|
|
19
|
+
*
|
|
20
|
+
*/
|
|
9
21
|
/*#__PURE__*/
|
|
10
22
|
export const engine = Engine();
|
|
11
|
-
|
|
23
|
+
/**
|
|
24
|
+
* @public
|
|
25
|
+
* Input system manager. Check for button events
|
|
26
|
+
* @example
|
|
27
|
+
* inputSystem.isTriggered: Returns true if an input action ocurred since the last tick.
|
|
28
|
+
* inputSystem.isPressed: Returns true if an input is currently being pressed down. It will return true on every tick until the button goes up again.
|
|
29
|
+
* inputSystem.getInputCommand: Returns an object with data about the input action.
|
|
30
|
+
*/
|
|
12
31
|
/*#__PURE__*/
|
|
13
32
|
export const inputSystem = createInputSystem(engine);
|
|
33
|
+
/**
|
|
34
|
+
* @public
|
|
35
|
+
* Register callback functions to a particular entity.
|
|
36
|
+
*/
|
|
14
37
|
/*#__PURE__*/
|
|
15
38
|
export const pointerEventsSystem = createPointerEventSystem(engine, inputSystem);
|
|
16
39
|
/**
|
|
17
40
|
* @public
|
|
41
|
+
* Runs an async function
|
|
18
42
|
*/
|
|
19
43
|
/*#__PURE__*/
|
|
20
44
|
export const executeTask = createTaskSystem(engine).executeTask;
|
package/dist/runtime/types.d.ts
CHANGED
package/dist/runtime/types.js
CHANGED
package/dist/schemas/Array.d.ts
CHANGED
package/dist/schemas/Array.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @
|
|
2
|
+
* @internal
|
|
3
3
|
*/
|
|
4
|
-
export
|
|
4
|
+
export const IArray = (type) => {
|
|
5
5
|
return {
|
|
6
6
|
serialize(value, builder) {
|
|
7
7
|
builder.writeUint32(value.length);
|
|
@@ -21,4 +21,4 @@ export function IArray(type) {
|
|
|
21
21
|
return [];
|
|
22
22
|
}
|
|
23
23
|
};
|
|
24
|
-
}
|
|
24
|
+
};
|
|
@@ -2,9 +2,9 @@ import { ByteBuffer } from '../serialization/ByteBuffer';
|
|
|
2
2
|
/**
|
|
3
3
|
* @public
|
|
4
4
|
*/
|
|
5
|
-
export
|
|
5
|
+
export interface ISchema<T = any> {
|
|
6
6
|
serialize(value: T, builder: ByteBuffer): void;
|
|
7
7
|
deserialize(reader: ByteBuffer): T;
|
|
8
8
|
create(): T;
|
|
9
9
|
extend?: (base?: T) => T;
|
|
10
|
-
}
|
|
10
|
+
}
|
package/dist/schemas/Map.d.ts
CHANGED
|
@@ -19,7 +19,3 @@ export type MapResultWithOptional<T extends Spec> = ToOptional<{
|
|
|
19
19
|
[K in keyof T]?: T[K] extends ISchema ? ReturnType<T[K]['deserialize']> : T[K] extends Spec ? MapResult<T[K]> : never;
|
|
20
20
|
}>;
|
|
21
21
|
export type MapSchemaType<T extends Spec> = ISchema<MapResult<T>>;
|
|
22
|
-
/**
|
|
23
|
-
* @public
|
|
24
|
-
*/
|
|
25
|
-
export declare function IMap<T extends Spec>(spec: T, defaultValue?: Partial<MapResult<T>>): ISchema<MapResult<T>>;
|
package/dist/schemas/Map.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @
|
|
2
|
+
* @internal
|
|
3
3
|
*/
|
|
4
|
-
export
|
|
4
|
+
export const IMap = (spec, defaultValue) => {
|
|
5
5
|
return {
|
|
6
6
|
serialize(value, builder) {
|
|
7
7
|
for (const key in spec) {
|
|
@@ -33,4 +33,4 @@ export function IMap(spec, defaultValue) {
|
|
|
33
33
|
return { ...newValue, ...defaultValue, ...base };
|
|
34
34
|
}
|
|
35
35
|
};
|
|
36
|
-
}
|
|
36
|
+
};
|
package/dist/schemas/Optional.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @
|
|
2
|
+
* @internal
|
|
3
3
|
*/
|
|
4
|
-
export
|
|
4
|
+
export const IOptional = (spec) => {
|
|
5
5
|
return {
|
|
6
6
|
serialize(value, builder) {
|
|
7
7
|
if (value) {
|
|
@@ -22,4 +22,4 @@ export function IOptional(spec) {
|
|
|
22
22
|
return undefined;
|
|
23
23
|
}
|
|
24
24
|
};
|
|
25
|
-
}
|
|
25
|
+
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @
|
|
2
|
+
* @internal
|
|
3
3
|
*/
|
|
4
|
-
export
|
|
4
|
+
export const IEnum = (type) => {
|
|
5
5
|
return {
|
|
6
6
|
serialize(value, builder) {
|
|
7
7
|
type.serialize(value, builder);
|
|
@@ -13,4 +13,4 @@ export function IEnum(type) {
|
|
|
13
13
|
return type.create();
|
|
14
14
|
}
|
|
15
15
|
};
|
|
16
|
-
}
|
|
16
|
+
};
|