@dcl/ecs 7.10.2 → 7.10.3-18106625709.commit-1bcaa4a
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/TriggerArea.d.ts +22 -0
- package/dist/components/extended/TriggerArea.js +27 -0
- package/dist/components/generated/TriggerArea.gen.d.ts +1 -0
- package/dist/components/generated/TriggerArea.gen.js +25 -0
- package/dist/components/generated/TriggerAreaResult.gen.d.ts +1 -0
- package/dist/components/generated/TriggerAreaResult.gen.js +25 -0
- package/dist/components/generated/component-names.gen.js +2 -0
- package/dist/components/generated/global.gen.d.ts +4 -0
- package/dist/components/generated/global.gen.js +2 -0
- package/dist/components/generated/index.gen.d.ts +8 -0
- package/dist/components/generated/index.gen.js +12 -0
- package/dist/components/generated/pb/decentraland/sdk/components/mesh_collider.gen.d.ts +2 -1
- package/dist/components/generated/pb/decentraland/sdk/components/mesh_collider.gen.js +2 -1
- package/dist/components/generated/pb/decentraland/sdk/components/trigger_area.gen.d.ts +32 -0
- package/dist/components/generated/pb/decentraland/sdk/components/trigger_area.gen.js +58 -0
- package/dist/components/generated/pb/decentraland/sdk/components/trigger_area_result.gen.d.ts +60 -0
- package/dist/components/generated/pb/decentraland/sdk/components/trigger_area_result.gen.js +177 -0
- package/dist/components/index.d.ts +4 -0
- package/dist/components/index.js +6 -0
- package/dist/components/manual/Tags.d.ts +34 -0
- package/dist/components/manual/Tags.js +37 -0
- package/dist/components/types.d.ts +2 -0
- package/dist/engine/index.js +10 -0
- package/dist/engine/types.d.ts +7 -0
- package/dist/index.d.ts +5 -1
- package/dist/index.js +3 -0
- package/dist/runtime/initialization/index.d.ts +7 -0
- package/dist/runtime/initialization/index.js +6 -0
- package/dist/systems/triggerArea.d.ts +50 -0
- package/dist/systems/triggerArea.js +113 -0
- package/dist-cjs/components/extended/TriggerArea.d.ts +22 -0
- package/dist-cjs/components/extended/TriggerArea.js +31 -0
- package/dist-cjs/components/generated/TriggerArea.gen.d.ts +1 -0
- package/dist-cjs/components/generated/TriggerArea.gen.js +28 -0
- package/dist-cjs/components/generated/TriggerAreaResult.gen.d.ts +1 -0
- package/dist-cjs/components/generated/TriggerAreaResult.gen.js +28 -0
- package/dist-cjs/components/generated/component-names.gen.js +2 -0
- package/dist-cjs/components/generated/global.gen.d.ts +4 -0
- package/dist-cjs/components/generated/global.gen.js +3 -1
- package/dist-cjs/components/generated/index.gen.d.ts +8 -0
- package/dist-cjs/components/generated/index.gen.js +16 -1
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/mesh_collider.gen.d.ts +2 -1
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/mesh_collider.gen.js +2 -1
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/trigger_area.gen.d.ts +32 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/trigger_area.gen.js +64 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/trigger_area_result.gen.d.ts +60 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/trigger_area_result.gen.js +183 -0
- package/dist-cjs/components/index.d.ts +4 -0
- package/dist-cjs/components/index.js +9 -1
- package/dist-cjs/components/manual/Tags.d.ts +34 -0
- package/dist-cjs/components/manual/Tags.js +39 -0
- package/dist-cjs/components/types.d.ts +2 -0
- package/dist-cjs/engine/index.js +10 -0
- package/dist-cjs/engine/types.d.ts +7 -0
- package/dist-cjs/index.d.ts +5 -1
- package/dist-cjs/index.js +4 -1
- package/dist-cjs/runtime/initialization/index.d.ts +7 -0
- package/dist-cjs/runtime/initialization/index.js +7 -1
- package/dist-cjs/systems/triggerArea.d.ts +50 -0
- package/dist-cjs/systems/triggerArea.js +140 -0
- package/package.json +2 -2
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Entity, IEngine, LastWriteWinElementSetComponentDefinition } from '../../engine';
|
|
2
|
+
import { ColliderLayer, PBTriggerArea } from '../generated/index.gen';
|
|
3
|
+
/**
|
|
4
|
+
* @public
|
|
5
|
+
*/
|
|
6
|
+
export interface TriggerAreaComponentDefinitionExtended extends LastWriteWinElementSetComponentDefinition<PBTriggerArea> {
|
|
7
|
+
/**
|
|
8
|
+
* @public
|
|
9
|
+
* Set a box in the MeshCollider component
|
|
10
|
+
* @param entity - entity to create or replace the TriggerArea component
|
|
11
|
+
* @param collisionMask - the collision layers mask for the trigger to react, default: Player
|
|
12
|
+
*/
|
|
13
|
+
setBox(entity: Entity, collisionMask?: ColliderLayer | ColliderLayer[]): void;
|
|
14
|
+
/**
|
|
15
|
+
* @public
|
|
16
|
+
* Set a sphere in the MeshCollider component
|
|
17
|
+
* @param entity - entity to create or replace the TriggerArea component
|
|
18
|
+
* @param collisionMask - the collision layers mask for the trigger to react, default: Player
|
|
19
|
+
*/
|
|
20
|
+
setSphere(entity: Entity, collisionMask?: ColliderLayer | ColliderLayer[]): void;
|
|
21
|
+
}
|
|
22
|
+
export declare function defineTriggerAreaComponent(engine: Pick<IEngine, 'defineComponentFromSchema'>): TriggerAreaComponentDefinitionExtended;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { TriggerArea } from '../generated/index.gen';
|
|
2
|
+
export function defineTriggerAreaComponent(engine) {
|
|
3
|
+
const theComponent = TriggerArea(engine);
|
|
4
|
+
function getCollisionMask(layers) {
|
|
5
|
+
if (Array.isArray(layers)) {
|
|
6
|
+
return layers.map((item) => item).reduce((prev, item) => prev | item, 0);
|
|
7
|
+
}
|
|
8
|
+
else if (layers) {
|
|
9
|
+
return layers;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
return {
|
|
13
|
+
...theComponent,
|
|
14
|
+
setBox(entity, collisionMask) {
|
|
15
|
+
theComponent.createOrReplace(entity, {
|
|
16
|
+
mesh: 0 /* TriggerAreaMeshType.TAMT_BOX */,
|
|
17
|
+
collisionMask: getCollisionMask(collisionMask)
|
|
18
|
+
});
|
|
19
|
+
},
|
|
20
|
+
setSphere(entity, collisionMask) {
|
|
21
|
+
theComponent.createOrReplace(entity, {
|
|
22
|
+
mesh: 1 /* TriggerAreaMeshType.TAMT_SPHERE */,
|
|
23
|
+
collisionMask: getCollisionMask(collisionMask)
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { PBTriggerArea } from './pb/decentraland/sdk/components/trigger_area.gen';
|
|
2
|
+
/**
|
|
3
|
+
* @internal
|
|
4
|
+
*/
|
|
5
|
+
export const TriggerAreaSchema = {
|
|
6
|
+
COMPONENT_ID: 1060,
|
|
7
|
+
serialize(value, builder) {
|
|
8
|
+
const writer = PBTriggerArea.encode(value);
|
|
9
|
+
const buffer = new Uint8Array(writer.finish(), 0, writer.len);
|
|
10
|
+
builder.writeBuffer(buffer, false);
|
|
11
|
+
},
|
|
12
|
+
deserialize(reader) {
|
|
13
|
+
return PBTriggerArea.decode(reader.buffer(), reader.remainingBytes());
|
|
14
|
+
},
|
|
15
|
+
create() {
|
|
16
|
+
// TODO: this is a hack.
|
|
17
|
+
return PBTriggerArea.decode(new Uint8Array());
|
|
18
|
+
},
|
|
19
|
+
jsonSchema: {
|
|
20
|
+
type: "object",
|
|
21
|
+
properties: {},
|
|
22
|
+
serializationType: "protocol-buffer",
|
|
23
|
+
protocolBuffer: "PBTriggerArea"
|
|
24
|
+
}
|
|
25
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { PBTriggerAreaResult } from './pb/decentraland/sdk/components/trigger_area_result.gen';
|
|
2
|
+
/**
|
|
3
|
+
* @internal
|
|
4
|
+
*/
|
|
5
|
+
export const TriggerAreaResultSchema = {
|
|
6
|
+
COMPONENT_ID: 1061,
|
|
7
|
+
serialize(value, builder) {
|
|
8
|
+
const writer = PBTriggerAreaResult.encode(value);
|
|
9
|
+
const buffer = new Uint8Array(writer.finish(), 0, writer.len);
|
|
10
|
+
builder.writeBuffer(buffer, false);
|
|
11
|
+
},
|
|
12
|
+
deserialize(reader) {
|
|
13
|
+
return PBTriggerAreaResult.decode(reader.buffer(), reader.remainingBytes());
|
|
14
|
+
},
|
|
15
|
+
create() {
|
|
16
|
+
// TODO: this is a hack.
|
|
17
|
+
return PBTriggerAreaResult.decode(new Uint8Array());
|
|
18
|
+
},
|
|
19
|
+
jsonSchema: {
|
|
20
|
+
type: "object",
|
|
21
|
+
properties: {},
|
|
22
|
+
serializationType: "protocol-buffer",
|
|
23
|
+
protocolBuffer: "PBTriggerAreaResult"
|
|
24
|
+
}
|
|
25
|
+
};
|
|
@@ -38,6 +38,8 @@ export const coreComponentMappings = {
|
|
|
38
38
|
"core::RealmInfo": 1106,
|
|
39
39
|
"core::SkyboxTime": 1210,
|
|
40
40
|
"core::TextShape": 1030,
|
|
41
|
+
"core::TriggerArea": 1060,
|
|
42
|
+
"core::TriggerAreaResult": 1061,
|
|
41
43
|
"core::Tween": 1102,
|
|
42
44
|
"core::TweenSequence": 1104,
|
|
43
45
|
"core::TweenState": 1103,
|
|
@@ -30,6 +30,8 @@ import { PBRaycastResult } from './pb/decentraland/sdk/components/raycast_result
|
|
|
30
30
|
import { PBRealmInfo } from './pb/decentraland/sdk/components/realm_info.gen';
|
|
31
31
|
import { PBSkyboxTime } from './pb/decentraland/sdk/components/skybox_time.gen';
|
|
32
32
|
import { PBTextShape } from './pb/decentraland/sdk/components/text_shape.gen';
|
|
33
|
+
import { PBTriggerArea } from './pb/decentraland/sdk/components/trigger_area.gen';
|
|
34
|
+
import { PBTriggerAreaResult } from './pb/decentraland/sdk/components/trigger_area_result.gen';
|
|
33
35
|
import { PBTweenSequence } from './pb/decentraland/sdk/components/tween_sequence.gen';
|
|
34
36
|
import { PBTweenState } from './pb/decentraland/sdk/components/tween_state.gen';
|
|
35
37
|
import { PBUiBackground } from './pb/decentraland/sdk/components/ui_background.gen';
|
|
@@ -74,6 +76,8 @@ import { PBVisibilityComponent } from './pb/decentraland/sdk/components/visibili
|
|
|
74
76
|
/** @public */ export declare const RealmInfo: LastWriteWinElementSetComponentDefinition<PBRealmInfo>;
|
|
75
77
|
/** @public */ export declare const SkyboxTime: LastWriteWinElementSetComponentDefinition<PBSkyboxTime>;
|
|
76
78
|
/** @public */ export declare const TextShape: LastWriteWinElementSetComponentDefinition<PBTextShape>;
|
|
79
|
+
/** @public */ export declare const TriggerArea: LastWriteWinElementSetComponentDefinition<PBTriggerArea>;
|
|
80
|
+
/** @public */ export declare const TriggerAreaResult: GrowOnlyValueSetComponentDefinition<PBTriggerAreaResult>;
|
|
77
81
|
/** @public */ export declare const TweenSequence: LastWriteWinElementSetComponentDefinition<PBTweenSequence>;
|
|
78
82
|
/** @public */ export declare const TweenState: LastWriteWinElementSetComponentDefinition<PBTweenState>;
|
|
79
83
|
/** @public */ export declare const UiBackground: LastWriteWinElementSetComponentDefinition<PBUiBackground>;
|
|
@@ -31,6 +31,8 @@ export * from './index.gen';
|
|
|
31
31
|
/** @public */ export const RealmInfo = /* @__PURE__ */ components.RealmInfo(engine);
|
|
32
32
|
/** @public */ export const SkyboxTime = /* @__PURE__ */ components.SkyboxTime(engine);
|
|
33
33
|
/** @public */ export const TextShape = /* @__PURE__ */ components.TextShape(engine);
|
|
34
|
+
/** @public */ export const TriggerArea = /* @__PURE__ */ components.TriggerArea(engine);
|
|
35
|
+
/** @public */ export const TriggerAreaResult = /* @__PURE__ */ components.TriggerAreaResult(engine);
|
|
34
36
|
/** @public */ export const TweenSequence = /* @__PURE__ */ components.TweenSequence(engine);
|
|
35
37
|
/** @public */ export const TweenState = /* @__PURE__ */ components.TweenState(engine);
|
|
36
38
|
/** @public */ export const UiBackground = /* @__PURE__ */ components.UiBackground(engine);
|
|
@@ -34,6 +34,8 @@ import { PBRaycastResult } from './pb/decentraland/sdk/components/raycast_result
|
|
|
34
34
|
import { PBRealmInfo } from './pb/decentraland/sdk/components/realm_info.gen';
|
|
35
35
|
import { PBSkyboxTime } from './pb/decentraland/sdk/components/skybox_time.gen';
|
|
36
36
|
import { PBTextShape } from './pb/decentraland/sdk/components/text_shape.gen';
|
|
37
|
+
import { PBTriggerArea } from './pb/decentraland/sdk/components/trigger_area.gen';
|
|
38
|
+
import { PBTriggerAreaResult } from './pb/decentraland/sdk/components/trigger_area_result.gen';
|
|
37
39
|
import { PBTween } from './pb/decentraland/sdk/components/tween.gen';
|
|
38
40
|
import { PBTweenSequence } from './pb/decentraland/sdk/components/tween_sequence.gen';
|
|
39
41
|
import { PBTweenState } from './pb/decentraland/sdk/components/tween_state.gen';
|
|
@@ -83,6 +85,8 @@ export * from './pb/decentraland/sdk/components/raycast_result.gen';
|
|
|
83
85
|
export * from './pb/decentraland/sdk/components/realm_info.gen';
|
|
84
86
|
export * from './pb/decentraland/sdk/components/skybox_time.gen';
|
|
85
87
|
export * from './pb/decentraland/sdk/components/text_shape.gen';
|
|
88
|
+
export * from './pb/decentraland/sdk/components/trigger_area.gen';
|
|
89
|
+
export * from './pb/decentraland/sdk/components/trigger_area_result.gen';
|
|
86
90
|
export * from './pb/decentraland/sdk/components/tween.gen';
|
|
87
91
|
export * from './pb/decentraland/sdk/components/tween_sequence.gen';
|
|
88
92
|
export * from './pb/decentraland/sdk/components/tween_state.gen';
|
|
@@ -134,6 +138,8 @@ export type GSetComponentGetter<T extends GrowOnlyValueSetComponentDefinition<an
|
|
|
134
138
|
/** @public */ export declare const RealmInfo: LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBRealmInfo>>;
|
|
135
139
|
/** @public */ export declare const SkyboxTime: LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBSkyboxTime>>;
|
|
136
140
|
/** @public */ export declare const TextShape: LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTextShape>>;
|
|
141
|
+
/** @public */ export declare const TriggerArea: LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTriggerArea>>;
|
|
142
|
+
/** @public */ export declare const TriggerAreaResult: GSetComponentGetter<GrowOnlyValueSetComponentDefinition<PBTriggerAreaResult>>;
|
|
137
143
|
/** @public */ export declare const Tween: LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTween>>;
|
|
138
144
|
/** @public */ export declare const TweenSequence: LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTweenSequence>>;
|
|
139
145
|
/** @public */ export declare const TweenState: LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTweenState>>;
|
|
@@ -185,6 +191,8 @@ export declare const componentDefinitionByName: {
|
|
|
185
191
|
"core::RealmInfo": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBRealmInfo>>;
|
|
186
192
|
"core::SkyboxTime": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBSkyboxTime>>;
|
|
187
193
|
"core::TextShape": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTextShape>>;
|
|
194
|
+
"core::TriggerArea": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTriggerArea>>;
|
|
195
|
+
"core::TriggerAreaResult": GSetComponentGetter<GrowOnlyValueSetComponentDefinition<PBTriggerAreaResult>>;
|
|
188
196
|
"core::Tween": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTween>>;
|
|
189
197
|
"core::TweenSequence": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTweenSequence>>;
|
|
190
198
|
"core::TweenState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTweenState>>;
|
|
@@ -32,6 +32,8 @@ import { RaycastResultSchema } from './RaycastResult.gen';
|
|
|
32
32
|
import { RealmInfoSchema } from './RealmInfo.gen';
|
|
33
33
|
import { SkyboxTimeSchema } from './SkyboxTime.gen';
|
|
34
34
|
import { TextShapeSchema } from './TextShape.gen';
|
|
35
|
+
import { TriggerAreaSchema } from './TriggerArea.gen';
|
|
36
|
+
import { TriggerAreaResultSchema } from './TriggerAreaResult.gen';
|
|
35
37
|
import { TweenSchema } from './Tween.gen';
|
|
36
38
|
import { TweenSequenceSchema } from './TweenSequence.gen';
|
|
37
39
|
import { TweenStateSchema } from './TweenState.gen';
|
|
@@ -81,6 +83,8 @@ export * from './pb/decentraland/sdk/components/raycast_result.gen';
|
|
|
81
83
|
export * from './pb/decentraland/sdk/components/realm_info.gen';
|
|
82
84
|
export * from './pb/decentraland/sdk/components/skybox_time.gen';
|
|
83
85
|
export * from './pb/decentraland/sdk/components/text_shape.gen';
|
|
86
|
+
export * from './pb/decentraland/sdk/components/trigger_area.gen';
|
|
87
|
+
export * from './pb/decentraland/sdk/components/trigger_area_result.gen';
|
|
84
88
|
export * from './pb/decentraland/sdk/components/tween.gen';
|
|
85
89
|
export * from './pb/decentraland/sdk/components/tween_sequence.gen';
|
|
86
90
|
export * from './pb/decentraland/sdk/components/tween_state.gen';
|
|
@@ -170,6 +174,12 @@ export * from './pb/decentraland/sdk/components/visibility_component.gen';
|
|
|
170
174
|
/* @__PURE__ */ engine.defineComponentFromSchema("core::SkyboxTime", SkyboxTimeSchema);
|
|
171
175
|
/** @public */ export const TextShape = engine =>
|
|
172
176
|
/* @__PURE__ */ engine.defineComponentFromSchema("core::TextShape", TextShapeSchema);
|
|
177
|
+
/** @public */ export const TriggerArea = engine =>
|
|
178
|
+
/* @__PURE__ */ engine.defineComponentFromSchema("core::TriggerArea", TriggerAreaSchema);
|
|
179
|
+
/** @public */ export const TriggerAreaResult = (engine) => /* @__PURE__ */ engine.defineValueSetComponentFromSchema("core::TriggerAreaResult", TriggerAreaResultSchema, {
|
|
180
|
+
timestampFunction: (t) => t.timestamp,
|
|
181
|
+
maxElements: 100
|
|
182
|
+
});
|
|
173
183
|
/** @public */ export const Tween = engine =>
|
|
174
184
|
/* @__PURE__ */ engine.defineComponentFromSchema("core::Tween", TweenSchema);
|
|
175
185
|
/** @public */ export const TweenSequence = engine =>
|
|
@@ -238,6 +248,8 @@ export const componentDefinitionByName = /* @__PURE__ */ {
|
|
|
238
248
|
"core::RealmInfo": RealmInfo,
|
|
239
249
|
"core::SkyboxTime": SkyboxTime,
|
|
240
250
|
"core::TextShape": TextShape,
|
|
251
|
+
"core::TriggerArea": TriggerArea,
|
|
252
|
+
"core::TriggerAreaResult": TriggerAreaResult,
|
|
241
253
|
"core::Tween": Tween,
|
|
242
254
|
"core::TweenSequence": TweenSequence,
|
|
243
255
|
"core::TweenState": TweenState,
|
|
@@ -10,7 +10,8 @@ export declare const enum ColliderLayer {
|
|
|
10
10
|
CL_POINTER = 1,
|
|
11
11
|
/** CL_PHYSICS - collision affecting your player's physics i.e. walls, floor, moving platfroms */
|
|
12
12
|
CL_PHYSICS = 2,
|
|
13
|
-
|
|
13
|
+
/** CL_PLAYER - layer corresponding to any player avatar */
|
|
14
|
+
CL_PLAYER = 4,
|
|
14
15
|
CL_RESERVED2 = 8,
|
|
15
16
|
CL_RESERVED3 = 16,
|
|
16
17
|
CL_RESERVED4 = 32,
|
|
@@ -13,7 +13,8 @@ export var ColliderLayer;
|
|
|
13
13
|
ColliderLayer[ColliderLayer["CL_POINTER"] = 1] = "CL_POINTER";
|
|
14
14
|
/** CL_PHYSICS - collision affecting your player's physics i.e. walls, floor, moving platfroms */
|
|
15
15
|
ColliderLayer[ColliderLayer["CL_PHYSICS"] = 2] = "CL_PHYSICS";
|
|
16
|
-
|
|
16
|
+
/** CL_PLAYER - layer corresponding to any player avatar */
|
|
17
|
+
ColliderLayer[ColliderLayer["CL_PLAYER"] = 4] = "CL_PLAYER";
|
|
17
18
|
ColliderLayer[ColliderLayer["CL_RESERVED2"] = 8] = "CL_RESERVED2";
|
|
18
19
|
ColliderLayer[ColliderLayer["CL_RESERVED3"] = 16] = "CL_RESERVED3";
|
|
19
20
|
ColliderLayer[ColliderLayer["CL_RESERVED4"] = 32] = "CL_RESERVED4";
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import _m0 from "protobufjs/minimal";
|
|
2
|
+
/**
|
|
3
|
+
* @public
|
|
4
|
+
*/
|
|
5
|
+
export declare const enum TriggerAreaMeshType {
|
|
6
|
+
TAMT_BOX = 0,
|
|
7
|
+
TAMT_SPHERE = 1
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* The PBTriggerArea component is used to raise collision triggering events (through the TriggerAreaResult component)
|
|
11
|
+
* when entities enter this component's defined area.
|
|
12
|
+
*
|
|
13
|
+
* ADR: https://github.com/decentraland/adr/blob/2b30a5e2b4f359a7c22a68fb827db282f6e5f887/content/ADR-258-trigger-areas.md
|
|
14
|
+
*
|
|
15
|
+
* The area size and rotation is defined by the Entity's Transform.
|
|
16
|
+
*/
|
|
17
|
+
/**
|
|
18
|
+
* @public
|
|
19
|
+
*/
|
|
20
|
+
export interface PBTriggerArea {
|
|
21
|
+
/** default: MT_BOX */
|
|
22
|
+
mesh?: TriggerAreaMeshType | undefined;
|
|
23
|
+
/** default: CL_PLAYER */
|
|
24
|
+
collisionMask?: number | undefined;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* @public
|
|
28
|
+
*/
|
|
29
|
+
export declare namespace PBTriggerArea {
|
|
30
|
+
function encode(message: PBTriggerArea, writer?: _m0.Writer): _m0.Writer;
|
|
31
|
+
function decode(input: _m0.Reader | Uint8Array, length?: number): PBTriggerArea;
|
|
32
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
import _m0 from "protobufjs/minimal";
|
|
3
|
+
const protobufPackageSarasa = "decentraland.sdk.components";
|
|
4
|
+
/**
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
export var TriggerAreaMeshType;
|
|
8
|
+
(function (TriggerAreaMeshType) {
|
|
9
|
+
TriggerAreaMeshType[TriggerAreaMeshType["TAMT_BOX"] = 0] = "TAMT_BOX";
|
|
10
|
+
TriggerAreaMeshType[TriggerAreaMeshType["TAMT_SPHERE"] = 1] = "TAMT_SPHERE";
|
|
11
|
+
})(TriggerAreaMeshType || (TriggerAreaMeshType = {}));
|
|
12
|
+
function createBasePBTriggerArea() {
|
|
13
|
+
return { mesh: undefined, collisionMask: undefined };
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* @public
|
|
17
|
+
*/
|
|
18
|
+
export var PBTriggerArea;
|
|
19
|
+
(function (PBTriggerArea) {
|
|
20
|
+
function encode(message, writer = _m0.Writer.create()) {
|
|
21
|
+
if (message.mesh !== undefined) {
|
|
22
|
+
writer.uint32(8).int32(message.mesh);
|
|
23
|
+
}
|
|
24
|
+
if (message.collisionMask !== undefined) {
|
|
25
|
+
writer.uint32(16).uint32(message.collisionMask);
|
|
26
|
+
}
|
|
27
|
+
return writer;
|
|
28
|
+
}
|
|
29
|
+
PBTriggerArea.encode = encode;
|
|
30
|
+
function decode(input, length) {
|
|
31
|
+
const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
|
|
32
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
33
|
+
const message = createBasePBTriggerArea();
|
|
34
|
+
while (reader.pos < end) {
|
|
35
|
+
const tag = reader.uint32();
|
|
36
|
+
switch (tag >>> 3) {
|
|
37
|
+
case 1:
|
|
38
|
+
if (tag !== 8) {
|
|
39
|
+
break;
|
|
40
|
+
}
|
|
41
|
+
message.mesh = reader.int32();
|
|
42
|
+
continue;
|
|
43
|
+
case 2:
|
|
44
|
+
if (tag !== 16) {
|
|
45
|
+
break;
|
|
46
|
+
}
|
|
47
|
+
message.collisionMask = reader.uint32();
|
|
48
|
+
continue;
|
|
49
|
+
}
|
|
50
|
+
if ((tag & 7) === 4 || tag === 0) {
|
|
51
|
+
break;
|
|
52
|
+
}
|
|
53
|
+
reader.skipType(tag & 7);
|
|
54
|
+
}
|
|
55
|
+
return message;
|
|
56
|
+
}
|
|
57
|
+
PBTriggerArea.decode = decode;
|
|
58
|
+
})(PBTriggerArea || (PBTriggerArea = {}));
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import _m0 from "protobufjs/minimal";
|
|
2
|
+
import { Quaternion, Vector3 } from "../../common/vectors.gen";
|
|
3
|
+
/**
|
|
4
|
+
* @public
|
|
5
|
+
*/
|
|
6
|
+
export declare const enum TriggerAreaEventType {
|
|
7
|
+
TAET_ENTER = 0,
|
|
8
|
+
TAET_STAY = 1,
|
|
9
|
+
TAET_EXIT = 2
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* The PBTriggerAreaResult component is used to transport the trigger collision event data for the PBTriggerArea component.
|
|
13
|
+
* ADR: https://github.com/decentraland/adr/blob/2b30a5e2b4f359a7c22a68fb827db282f6e5f887/content/ADR-258-trigger-areas.md
|
|
14
|
+
*/
|
|
15
|
+
/**
|
|
16
|
+
* @public
|
|
17
|
+
*/
|
|
18
|
+
export interface PBTriggerAreaResult {
|
|
19
|
+
/** The entity that was triggered (this is the entity that owns the trigger area) */
|
|
20
|
+
triggeredEntity: number;
|
|
21
|
+
/** The position of the triggered entity at the time of the trigger */
|
|
22
|
+
triggeredEntityPosition: Vector3 | undefined;
|
|
23
|
+
/** The rotation of the triggered entity at the time of the trigger */
|
|
24
|
+
triggeredEntityRotation: Quaternion | undefined;
|
|
25
|
+
/** The state of the trigger event (ENTER, STAY, EXIT) */
|
|
26
|
+
eventType: TriggerAreaEventType;
|
|
27
|
+
/** The timestamp of the trigger event */
|
|
28
|
+
timestamp: number;
|
|
29
|
+
trigger: PBTriggerAreaResult_Trigger | undefined;
|
|
30
|
+
}
|
|
31
|
+
/** Trigger data object */
|
|
32
|
+
/**
|
|
33
|
+
* @public
|
|
34
|
+
*/
|
|
35
|
+
export interface PBTriggerAreaResult_Trigger {
|
|
36
|
+
/** The entity that triggered the Trigger Area */
|
|
37
|
+
entity: number;
|
|
38
|
+
/** The collision layermask of the entity that triggered the Trigger Area */
|
|
39
|
+
layers: number;
|
|
40
|
+
/** The position of the entity that triggered the trigger */
|
|
41
|
+
position: Vector3 | undefined;
|
|
42
|
+
/** The rotation of the entity that triggered the trigger */
|
|
43
|
+
rotation: Quaternion | undefined;
|
|
44
|
+
/** The scale of the entity that triggered the trigger */
|
|
45
|
+
scale: Vector3 | undefined;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* @public
|
|
49
|
+
*/
|
|
50
|
+
export declare namespace PBTriggerAreaResult {
|
|
51
|
+
function encode(message: PBTriggerAreaResult, writer?: _m0.Writer): _m0.Writer;
|
|
52
|
+
function decode(input: _m0.Reader | Uint8Array, length?: number): PBTriggerAreaResult;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* @public
|
|
56
|
+
*/
|
|
57
|
+
export declare namespace PBTriggerAreaResult_Trigger {
|
|
58
|
+
function encode(message: PBTriggerAreaResult_Trigger, writer?: _m0.Writer): _m0.Writer;
|
|
59
|
+
function decode(input: _m0.Reader | Uint8Array, length?: number): PBTriggerAreaResult_Trigger;
|
|
60
|
+
}
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
import _m0 from "protobufjs/minimal";
|
|
3
|
+
import { Quaternion, Vector3 } from "../../common/vectors.gen";
|
|
4
|
+
const protobufPackageSarasa = "decentraland.sdk.components";
|
|
5
|
+
/**
|
|
6
|
+
* @public
|
|
7
|
+
*/
|
|
8
|
+
export var TriggerAreaEventType;
|
|
9
|
+
(function (TriggerAreaEventType) {
|
|
10
|
+
TriggerAreaEventType[TriggerAreaEventType["TAET_ENTER"] = 0] = "TAET_ENTER";
|
|
11
|
+
TriggerAreaEventType[TriggerAreaEventType["TAET_STAY"] = 1] = "TAET_STAY";
|
|
12
|
+
TriggerAreaEventType[TriggerAreaEventType["TAET_EXIT"] = 2] = "TAET_EXIT";
|
|
13
|
+
})(TriggerAreaEventType || (TriggerAreaEventType = {}));
|
|
14
|
+
function createBasePBTriggerAreaResult() {
|
|
15
|
+
return {
|
|
16
|
+
triggeredEntity: 0,
|
|
17
|
+
triggeredEntityPosition: undefined,
|
|
18
|
+
triggeredEntityRotation: undefined,
|
|
19
|
+
eventType: 0,
|
|
20
|
+
timestamp: 0,
|
|
21
|
+
trigger: undefined,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* @public
|
|
26
|
+
*/
|
|
27
|
+
export var PBTriggerAreaResult;
|
|
28
|
+
(function (PBTriggerAreaResult) {
|
|
29
|
+
function encode(message, writer = _m0.Writer.create()) {
|
|
30
|
+
if (message.triggeredEntity !== 0) {
|
|
31
|
+
writer.uint32(8).uint32(message.triggeredEntity);
|
|
32
|
+
}
|
|
33
|
+
if (message.triggeredEntityPosition !== undefined) {
|
|
34
|
+
Vector3.encode(message.triggeredEntityPosition, writer.uint32(18).fork()).ldelim();
|
|
35
|
+
}
|
|
36
|
+
if (message.triggeredEntityRotation !== undefined) {
|
|
37
|
+
Quaternion.encode(message.triggeredEntityRotation, writer.uint32(26).fork()).ldelim();
|
|
38
|
+
}
|
|
39
|
+
if (message.eventType !== 0) {
|
|
40
|
+
writer.uint32(32).int32(message.eventType);
|
|
41
|
+
}
|
|
42
|
+
if (message.timestamp !== 0) {
|
|
43
|
+
writer.uint32(40).uint32(message.timestamp);
|
|
44
|
+
}
|
|
45
|
+
if (message.trigger !== undefined) {
|
|
46
|
+
PBTriggerAreaResult_Trigger.encode(message.trigger, writer.uint32(50).fork()).ldelim();
|
|
47
|
+
}
|
|
48
|
+
return writer;
|
|
49
|
+
}
|
|
50
|
+
PBTriggerAreaResult.encode = encode;
|
|
51
|
+
function decode(input, length) {
|
|
52
|
+
const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
|
|
53
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
54
|
+
const message = createBasePBTriggerAreaResult();
|
|
55
|
+
while (reader.pos < end) {
|
|
56
|
+
const tag = reader.uint32();
|
|
57
|
+
switch (tag >>> 3) {
|
|
58
|
+
case 1:
|
|
59
|
+
if (tag !== 8) {
|
|
60
|
+
break;
|
|
61
|
+
}
|
|
62
|
+
message.triggeredEntity = reader.uint32();
|
|
63
|
+
continue;
|
|
64
|
+
case 2:
|
|
65
|
+
if (tag !== 18) {
|
|
66
|
+
break;
|
|
67
|
+
}
|
|
68
|
+
message.triggeredEntityPosition = Vector3.decode(reader, reader.uint32());
|
|
69
|
+
continue;
|
|
70
|
+
case 3:
|
|
71
|
+
if (tag !== 26) {
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
message.triggeredEntityRotation = Quaternion.decode(reader, reader.uint32());
|
|
75
|
+
continue;
|
|
76
|
+
case 4:
|
|
77
|
+
if (tag !== 32) {
|
|
78
|
+
break;
|
|
79
|
+
}
|
|
80
|
+
message.eventType = reader.int32();
|
|
81
|
+
continue;
|
|
82
|
+
case 5:
|
|
83
|
+
if (tag !== 40) {
|
|
84
|
+
break;
|
|
85
|
+
}
|
|
86
|
+
message.timestamp = reader.uint32();
|
|
87
|
+
continue;
|
|
88
|
+
case 6:
|
|
89
|
+
if (tag !== 50) {
|
|
90
|
+
break;
|
|
91
|
+
}
|
|
92
|
+
message.trigger = PBTriggerAreaResult_Trigger.decode(reader, reader.uint32());
|
|
93
|
+
continue;
|
|
94
|
+
}
|
|
95
|
+
if ((tag & 7) === 4 || tag === 0) {
|
|
96
|
+
break;
|
|
97
|
+
}
|
|
98
|
+
reader.skipType(tag & 7);
|
|
99
|
+
}
|
|
100
|
+
return message;
|
|
101
|
+
}
|
|
102
|
+
PBTriggerAreaResult.decode = decode;
|
|
103
|
+
})(PBTriggerAreaResult || (PBTriggerAreaResult = {}));
|
|
104
|
+
function createBasePBTriggerAreaResult_Trigger() {
|
|
105
|
+
return { entity: 0, layers: 0, position: undefined, rotation: undefined, scale: undefined };
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* @public
|
|
109
|
+
*/
|
|
110
|
+
export var PBTriggerAreaResult_Trigger;
|
|
111
|
+
(function (PBTriggerAreaResult_Trigger) {
|
|
112
|
+
function encode(message, writer = _m0.Writer.create()) {
|
|
113
|
+
if (message.entity !== 0) {
|
|
114
|
+
writer.uint32(8).uint32(message.entity);
|
|
115
|
+
}
|
|
116
|
+
if (message.layers !== 0) {
|
|
117
|
+
writer.uint32(16).uint32(message.layers);
|
|
118
|
+
}
|
|
119
|
+
if (message.position !== undefined) {
|
|
120
|
+
Vector3.encode(message.position, writer.uint32(26).fork()).ldelim();
|
|
121
|
+
}
|
|
122
|
+
if (message.rotation !== undefined) {
|
|
123
|
+
Quaternion.encode(message.rotation, writer.uint32(34).fork()).ldelim();
|
|
124
|
+
}
|
|
125
|
+
if (message.scale !== undefined) {
|
|
126
|
+
Vector3.encode(message.scale, writer.uint32(42).fork()).ldelim();
|
|
127
|
+
}
|
|
128
|
+
return writer;
|
|
129
|
+
}
|
|
130
|
+
PBTriggerAreaResult_Trigger.encode = encode;
|
|
131
|
+
function decode(input, length) {
|
|
132
|
+
const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
|
|
133
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
134
|
+
const message = createBasePBTriggerAreaResult_Trigger();
|
|
135
|
+
while (reader.pos < end) {
|
|
136
|
+
const tag = reader.uint32();
|
|
137
|
+
switch (tag >>> 3) {
|
|
138
|
+
case 1:
|
|
139
|
+
if (tag !== 8) {
|
|
140
|
+
break;
|
|
141
|
+
}
|
|
142
|
+
message.entity = reader.uint32();
|
|
143
|
+
continue;
|
|
144
|
+
case 2:
|
|
145
|
+
if (tag !== 16) {
|
|
146
|
+
break;
|
|
147
|
+
}
|
|
148
|
+
message.layers = reader.uint32();
|
|
149
|
+
continue;
|
|
150
|
+
case 3:
|
|
151
|
+
if (tag !== 26) {
|
|
152
|
+
break;
|
|
153
|
+
}
|
|
154
|
+
message.position = Vector3.decode(reader, reader.uint32());
|
|
155
|
+
continue;
|
|
156
|
+
case 4:
|
|
157
|
+
if (tag !== 34) {
|
|
158
|
+
break;
|
|
159
|
+
}
|
|
160
|
+
message.rotation = Quaternion.decode(reader, reader.uint32());
|
|
161
|
+
continue;
|
|
162
|
+
case 5:
|
|
163
|
+
if (tag !== 42) {
|
|
164
|
+
break;
|
|
165
|
+
}
|
|
166
|
+
message.scale = Vector3.decode(reader, reader.uint32());
|
|
167
|
+
continue;
|
|
168
|
+
}
|
|
169
|
+
if ((tag & 7) === 4 || tag === 0) {
|
|
170
|
+
break;
|
|
171
|
+
}
|
|
172
|
+
reader.skipType(tag & 7);
|
|
173
|
+
}
|
|
174
|
+
return message;
|
|
175
|
+
}
|
|
176
|
+
PBTriggerAreaResult_Trigger.decode = decode;
|
|
177
|
+
})(PBTriggerAreaResult_Trigger || (PBTriggerAreaResult_Trigger = {}));
|
|
@@ -17,6 +17,8 @@ import { MediaState } from './generated/pb/decentraland/sdk/components/common/me
|
|
|
17
17
|
import { VirtualCameraComponentDefinitionExtended } from './extended/VirtualCamera';
|
|
18
18
|
import { InputModifierComponentDefinitionExtended } from './extended/InputModifier';
|
|
19
19
|
import { LightSourceComponentDefinitionExtended } from './extended/LightSource';
|
|
20
|
+
import { TriggerAreaComponentDefinitionExtended } from './extended/TriggerArea';
|
|
21
|
+
import { TagsComponentDefinitionExtended } from './manual/Tags';
|
|
20
22
|
export * from './generated/index.gen';
|
|
21
23
|
export type { GrowOnlyValueSetComponentDefinition, LastWriteWinElementSetComponentDefinition, LwwComponentGetter, GSetComponentGetter };
|
|
22
24
|
export declare const Transform: LwwComponentGetter<TransformComponentExtended>;
|
|
@@ -30,10 +32,12 @@ export declare const Tween: LwwComponentGetter<TweenComponentDefinitionExtended>
|
|
|
30
32
|
export declare const VirtualCamera: LwwComponentGetter<VirtualCameraComponentDefinitionExtended>;
|
|
31
33
|
export declare const InputModifier: LwwComponentGetter<InputModifierComponentDefinitionExtended>;
|
|
32
34
|
export declare const LightSource: LwwComponentGetter<LightSourceComponentDefinitionExtended>;
|
|
35
|
+
export declare const TriggerArea: LwwComponentGetter<TriggerAreaComponentDefinitionExtended>;
|
|
33
36
|
/**
|
|
34
37
|
* @alpha
|
|
35
38
|
*/
|
|
36
39
|
export declare const Name: (engine: Pick<IEngine, 'defineComponent'>) => LastWriteWinElementSetComponentDefinition<NameType>;
|
|
40
|
+
export declare const Tags: (engine: Pick<IEngine, 'defineComponent'>) => TagsComponentDefinitionExtended;
|
|
37
41
|
/**
|
|
38
42
|
* @alpha
|
|
39
43
|
*/
|
package/dist/components/index.js
CHANGED
|
@@ -14,6 +14,8 @@ import { MediaState } from './generated/pb/decentraland/sdk/components/common/me
|
|
|
14
14
|
import { defineVirtualCameraComponent } from './extended/VirtualCamera';
|
|
15
15
|
import { defineInputModifierComponent } from './extended/InputModifier';
|
|
16
16
|
import { defineLightSourceComponent } from './extended/LightSource';
|
|
17
|
+
import { defineTriggerAreaComponent } from './extended/TriggerArea';
|
|
18
|
+
import defineTagsComponent from './manual/Tags';
|
|
17
19
|
export * from './generated/index.gen';
|
|
18
20
|
/* @__PURE__ */
|
|
19
21
|
export const Transform = (engine) => defineTransformComponent(engine);
|
|
@@ -37,11 +39,15 @@ export const VirtualCamera = (engine) => defineVirtualCameraComponent(engine);
|
|
|
37
39
|
export const InputModifier = (engine) => defineInputModifierComponent(engine);
|
|
38
40
|
/* @__PURE__ */
|
|
39
41
|
export const LightSource = (engine) => defineLightSourceComponent(engine);
|
|
42
|
+
/* @__PURE__ */
|
|
43
|
+
export const TriggerArea = (engine) => defineTriggerAreaComponent(engine);
|
|
40
44
|
/**
|
|
41
45
|
* @alpha
|
|
42
46
|
*/
|
|
43
47
|
/* @__PURE__ */
|
|
44
48
|
export const Name = (engine) => defineNameComponent(engine);
|
|
49
|
+
/* @__PURE__ */
|
|
50
|
+
export const Tags = (engine) => defineTagsComponent(engine);
|
|
45
51
|
/**
|
|
46
52
|
* @alpha
|
|
47
53
|
*/
|