@woosh/meep-engine 2.126.14 → 2.126.16
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/package.json +1 -1
- package/src/core/binary/BinaryBuffer.d.ts +11 -1
- package/src/core/binary/BinaryBuffer.d.ts.map +1 -1
- package/src/core/binary/BinaryBuffer.js +18 -8
- package/src/core/collection/array/array_push_if_unique.d.ts +4 -3
- package/src/core/collection/array/array_push_if_unique.d.ts.map +1 -1
- package/src/core/collection/array/array_push_if_unique.js +4 -3
- package/src/core/geom/3d/quaternion/quat_decode_from_uint32.d.ts +4 -0
- package/src/core/geom/3d/quaternion/quat_decode_from_uint32.d.ts.map +1 -1
- package/src/core/geom/3d/quaternion/quat_decode_from_uint32.js +4 -0
- package/src/core/geom/3d/quaternion/quat_encode_to_uint32.d.ts +4 -0
- package/src/core/geom/3d/quaternion/quat_encode_to_uint32.d.ts.map +1 -1
- package/src/core/geom/3d/quaternion/quat_encode_to_uint32.js +4 -0
- package/src/core/geom/Vector3.d.ts +2 -1
- package/src/core/geom/Vector3.d.ts.map +1 -1
- package/src/core/geom/Vector3.js +2 -1
- package/src/engine/ecs/EntityComponentDataset.d.ts.map +1 -1
- package/src/engine/ecs/EntityComponentDataset.js +1 -0
- package/src/engine/ecs/EntityManager.d.ts +3 -0
- package/src/engine/ecs/EntityManager.d.ts.map +1 -1
- package/src/engine/ecs/EntityManager.js +3 -0
- package/src/engine/ecs/EntityObserver.d.ts.map +1 -1
- package/src/engine/ecs/EntityObserver.js +3 -0
- package/src/engine/ecs/EntityReference.d.ts +10 -8
- package/src/engine/ecs/EntityReference.d.ts.map +1 -1
- package/src/engine/ecs/EntityReference.js +10 -8
- package/src/engine/ecs/System.d.ts.map +1 -1
- package/src/engine/ecs/System.js +3 -0
- package/src/engine/ecs/parent/ParentEntity.d.ts.map +1 -1
- package/src/engine/ecs/parent/ParentEntity.js +4 -1
- package/src/engine/ecs/storage/BinaryBufferDeSerializer.d.ts +17 -1
- package/src/engine/ecs/storage/BinaryBufferDeSerializer.d.ts.map +1 -1
- package/src/engine/ecs/storage/BinaryBufferDeSerializer.js +20 -1
- package/src/engine/ecs/storage/BinaryBufferSerializer.d.ts +17 -0
- package/src/engine/ecs/storage/BinaryBufferSerializer.d.ts.map +1 -1
- package/src/engine/ecs/storage/BinaryBufferSerializer.js +24 -0
- package/src/engine/ecs/storage/binary/BinaryClassSerializationAdapter.d.ts +3 -0
- package/src/engine/ecs/storage/binary/BinaryClassSerializationAdapter.d.ts.map +1 -1
- package/src/engine/ecs/storage/binary/BinaryClassSerializationAdapter.js +3 -0
- package/src/engine/ecs/storage/binary/BinaryClassUpgrader.d.ts +5 -0
- package/src/engine/ecs/storage/binary/BinaryClassUpgrader.d.ts.map +1 -1
- package/src/engine/ecs/storage/binary/BinaryClassUpgrader.js +6 -0
- package/src/engine/ecs/storage/binary/BinarySerializationRegistry.d.ts +9 -5
- package/src/engine/ecs/storage/binary/BinarySerializationRegistry.d.ts.map +1 -1
- package/src/engine/ecs/storage/binary/BinarySerializationRegistry.js +29 -9
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.d.ts +5 -0
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.d.ts.map +1 -1
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.js +78 -75
- package/src/engine/ecs/storage/binary/executeBinaryClassUpgraderChain.d.ts +3 -3
- package/src/engine/ecs/storage/binary/executeBinaryClassUpgraderChain.d.ts.map +1 -1
- package/src/engine/ecs/storage/binary/executeBinaryClassUpgraderChain.js +12 -6
- package/src/engine/ecs/transform/Transform.d.ts +0 -1
- package/src/engine/ecs/transform/Transform.d.ts.map +1 -1
- package/src/engine/ecs/transform/Transform.js +0 -1
- package/src/engine/graphics/texture/sampler/Sampler2D.d.ts +2 -0
- package/src/engine/graphics/texture/sampler/Sampler2D.d.ts.map +1 -1
- package/src/engine/graphics/texture/sampler/Sampler2D.js +2 -0
- package/src/engine/input/devices/InputDeviceSwitch.d.ts.map +1 -1
- package/src/engine/input/devices/InputDeviceSwitch.js +3 -0
- package/src/engine/input/devices/KeyboardDevice.d.ts.map +1 -1
- package/src/engine/input/devices/KeyboardDevice.js +5 -1
- package/src/engine/input/devices/PointerDevice.d.ts.map +1 -1
- package/src/engine/input/devices/PointerDevice.js +3 -0
- package/src/engine/intelligence/behavior/Behavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/Behavior.js +3 -1
- package/src/engine/intelligence/behavior/SelectorBehavior.d.ts +2 -0
- package/src/engine/intelligence/behavior/SelectorBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/SelectorBehavior.js +2 -0
- package/src/engine/intelligence/behavior/behavior_to_dot.d.ts +4 -0
- package/src/engine/intelligence/behavior/behavior_to_dot.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/behavior_to_dot.js +4 -0
- package/src/engine/intelligence/behavior/composite/CompositeBehavior.d.ts +3 -0
- package/src/engine/intelligence/behavior/composite/CompositeBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/composite/CompositeBehavior.js +3 -0
- package/src/engine/intelligence/behavior/composite/ParallelBehavior.d.ts +3 -0
- package/src/engine/intelligence/behavior/composite/ParallelBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/composite/ParallelBehavior.js +3 -0
- package/src/engine/intelligence/behavior/composite/SequenceBehavior.d.ts +3 -0
- package/src/engine/intelligence/behavior/composite/SequenceBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/composite/SequenceBehavior.js +3 -0
- package/src/engine/intelligence/behavior/decorator/AbstractDecoratorBehavior.d.ts +5 -0
- package/src/engine/intelligence/behavior/decorator/AbstractDecoratorBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/decorator/AbstractDecoratorBehavior.js +6 -1
- package/src/engine/intelligence/behavior/decorator/IgnoreFailureBehavior.d.ts +5 -0
- package/src/engine/intelligence/behavior/decorator/IgnoreFailureBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/decorator/IgnoreFailureBehavior.js +6 -1
- package/src/engine/intelligence/behavior/decorator/InvertStatusBehavior.d.ts +3 -0
- package/src/engine/intelligence/behavior/decorator/InvertStatusBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/decorator/InvertStatusBehavior.js +3 -0
- package/src/engine/intelligence/behavior/decorator/RepeatBehavior.d.ts +3 -0
- package/src/engine/intelligence/behavior/decorator/RepeatBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/decorator/RepeatBehavior.js +3 -0
- package/src/engine/intelligence/behavior/decorator/RepeatUntilFailureBehavior.d.ts +3 -0
- package/src/engine/intelligence/behavior/decorator/RepeatUntilFailureBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/decorator/RepeatUntilFailureBehavior.js +3 -0
- package/src/engine/intelligence/behavior/decorator/RepeatUntilSuccessBehavior.d.ts +5 -0
- package/src/engine/intelligence/behavior/decorator/RepeatUntilSuccessBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/decorator/RepeatUntilSuccessBehavior.js +6 -1
- package/src/engine/intelligence/behavior/ecs/BehaviorComponent.d.ts +3 -0
- package/src/engine/intelligence/behavior/ecs/BehaviorComponent.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/ecs/BehaviorComponent.js +3 -0
- package/src/engine/intelligence/behavior/ecs/BehaviorSystem.d.ts +3 -0
- package/src/engine/intelligence/behavior/ecs/BehaviorSystem.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/ecs/BehaviorSystem.js +3 -0
- package/src/engine/intelligence/behavior/ecs/DieBehavior.d.ts +3 -0
- package/src/engine/intelligence/behavior/ecs/DieBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/ecs/DieBehavior.js +3 -0
- package/src/engine/intelligence/behavior/ecs/EntityBehavior.d.ts +5 -0
- package/src/engine/intelligence/behavior/ecs/EntityBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/ecs/EntityBehavior.js +8 -3
- package/src/engine/intelligence/behavior/ecs/KillBehavior.d.ts +2 -0
- package/src/engine/intelligence/behavior/ecs/KillBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/ecs/KillBehavior.js +2 -0
- package/src/engine/intelligence/behavior/ecs/SendEventBehavior.d.ts +2 -0
- package/src/engine/intelligence/behavior/ecs/SendEventBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/ecs/SendEventBehavior.js +2 -0
- package/src/engine/intelligence/behavior/ecs/WaitForEventBehavior.d.ts +2 -0
- package/src/engine/intelligence/behavior/ecs/WaitForEventBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/ecs/WaitForEventBehavior.js +2 -0
- package/src/engine/intelligence/behavior/primitive/ActionBehavior.d.ts +2 -0
- package/src/engine/intelligence/behavior/primitive/ActionBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/primitive/ActionBehavior.js +2 -0
- package/src/engine/intelligence/behavior/primitive/FailingBehavior.d.ts +5 -0
- package/src/engine/intelligence/behavior/primitive/FailingBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/primitive/FailingBehavior.js +5 -0
- package/src/engine/intelligence/behavior/primitive/PromiseBehavior.d.ts +5 -0
- package/src/engine/intelligence/behavior/primitive/PromiseBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/primitive/PromiseBehavior.js +5 -0
- package/src/engine/intelligence/behavior/primitive/SucceedingBehavior.d.ts +2 -0
- package/src/engine/intelligence/behavior/primitive/SucceedingBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/primitive/SucceedingBehavior.js +2 -0
- package/src/engine/intelligence/behavior/selector/WeightedElement.d.ts +2 -0
- package/src/engine/intelligence/behavior/selector/WeightedElement.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/selector/WeightedElement.js +2 -0
- package/src/engine/intelligence/behavior/selector/WeightedRandomBehavior.d.ts +2 -0
- package/src/engine/intelligence/behavior/selector/WeightedRandomBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/selector/WeightedRandomBehavior.js +2 -0
- package/src/engine/intelligence/behavior/util/BranchBehavior.d.ts +2 -0
- package/src/engine/intelligence/behavior/util/BranchBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/util/BranchBehavior.js +2 -0
- package/src/engine/intelligence/behavior/util/DelayBehavior.d.ts +3 -1
- package/src/engine/intelligence/behavior/util/DelayBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/util/DelayBehavior.js +3 -1
- package/src/engine/intelligence/behavior/util/LogMessageBehavior.d.ts +2 -0
- package/src/engine/intelligence/behavior/util/LogMessageBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/util/LogMessageBehavior.js +2 -0
- package/src/engine/intelligence/behavior/util/RandomDelayBehavior.d.ts +2 -0
- package/src/engine/intelligence/behavior/util/RandomDelayBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/util/RandomDelayBehavior.js +2 -0
- package/src/engine/intelligence/blackboard/Blackboard.d.ts.map +1 -1
- package/src/engine/intelligence/blackboard/Blackboard.js +5 -1
- package/src/engine/intelligence/mcts/MonteCarlo.d.ts +2 -0
- package/src/engine/intelligence/mcts/MonteCarlo.d.ts.map +1 -1
- package/src/engine/intelligence/mcts/MonteCarlo.js +2 -0
- package/src/engine/intelligence/mcts/MoveEdge.d.ts +2 -0
- package/src/engine/intelligence/mcts/MoveEdge.d.ts.map +1 -1
- package/src/engine/intelligence/mcts/MoveEdge.js +2 -0
- package/src/engine/intelligence/mcts/StateNode.d.ts +2 -0
- package/src/engine/intelligence/mcts/StateNode.d.ts.map +1 -1
- package/src/engine/intelligence/mcts/StateNode.js +2 -0
- package/src/engine/intelligence/optimization/RandomOptimizer.d.ts +8 -8
- package/src/engine/intelligence/optimization/RandomOptimizer.d.ts.map +1 -1
- package/src/engine/intelligence/optimization/RandomOptimizer.js +37 -40
- package/src/engine/intelligence/resource/ActionSequence.d.ts +3 -1
- package/src/engine/intelligence/resource/ActionSequence.d.ts.map +1 -1
- package/src/engine/intelligence/resource/ActionSequence.js +10 -13
- package/src/engine/intelligence/resource/Resource.d.ts +2 -0
- package/src/engine/intelligence/resource/Resource.d.ts.map +1 -1
- package/src/engine/intelligence/resource/Resource.js +2 -0
- package/src/engine/intelligence/resource/ResourceAllocation.d.ts +5 -0
- package/src/engine/intelligence/resource/ResourceAllocation.d.ts.map +1 -1
- package/src/engine/intelligence/resource/ResourceAllocation.js +5 -0
- package/src/engine/intelligence/resource/ResourceAllocationBid.d.ts +4 -1
- package/src/engine/intelligence/resource/ResourceAllocationBid.d.ts.map +1 -1
- package/src/engine/intelligence/resource/ResourceAllocationBid.js +4 -1
- package/src/engine/intelligence/resource/ResourceAllocationSolver.d.ts +5 -0
- package/src/engine/intelligence/resource/ResourceAllocationSolver.d.ts.map +1 -1
- package/src/engine/intelligence/resource/ResourceAllocationSolver.js +26 -21
- package/src/engine/intelligence/resource/StrategicResourceAllocator.d.ts +16 -3
- package/src/engine/intelligence/resource/StrategicResourceAllocator.d.ts.map +1 -1
- package/src/engine/intelligence/resource/StrategicResourceAllocator.js +32 -14
- package/src/engine/intelligence/resource/TacticalModule.d.ts +2 -0
- package/src/engine/intelligence/resource/TacticalModule.d.ts.map +1 -1
- package/src/engine/intelligence/resource/TacticalModule.js +2 -0
- package/src/engine/simulation/Ticker.d.ts +3 -0
- package/src/engine/simulation/Ticker.d.ts.map +1 -1
- package/src/engine/simulation/Ticker.js +3 -0
- package/src/engine/intelligence/behavior/behavior_to_dot.prototype.d.ts +0 -2
- package/src/engine/intelligence/behavior/behavior_to_dot.prototype.d.ts.map +0 -1
- package/src/engine/intelligence/behavior/behavior_to_dot.prototype.js +0 -55
|
@@ -1,40 +1,56 @@
|
|
|
1
|
-
import { ResourceAllocationSolver } from "./ResourceAllocationSolver.js";
|
|
2
1
|
import { assert } from "../../../core/assert.js";
|
|
2
|
+
import { array_push_if_unique } from "../../../core/collection/array/array_push_if_unique.js";
|
|
3
3
|
import { buildPromiseChain } from "../../../core/process/buildPromiseChain.js";
|
|
4
|
+
import { ResourceAllocationSolver } from "./ResourceAllocationSolver.js";
|
|
4
5
|
|
|
6
|
+
/**
|
|
7
|
+
* @template A
|
|
8
|
+
* @example
|
|
9
|
+
* const allocator = new StrategicResourceAllocator();
|
|
10
|
+
*
|
|
11
|
+
* allocator.addTacticalModule(module); // add some tactical modules
|
|
12
|
+
*
|
|
13
|
+
* const resources = [new Resource(1, "a")];
|
|
14
|
+
* const actions = await allocator.allocate(resources); // list of actions that use resources
|
|
15
|
+
* @author Alex Goldring
|
|
16
|
+
* @copyright Company Named Limited (c) 2025
|
|
17
|
+
*/
|
|
5
18
|
export class StrategicResourceAllocator {
|
|
6
|
-
constructor() {
|
|
7
|
-
/**
|
|
8
|
-
*
|
|
9
|
-
* @type {TacticalModule[]}
|
|
10
|
-
*/
|
|
11
|
-
this.modules = [];
|
|
12
19
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
20
|
+
/**
|
|
21
|
+
*
|
|
22
|
+
* @type {TacticalModule[]}
|
|
23
|
+
*/
|
|
24
|
+
modules = [];
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* @private
|
|
28
|
+
* @type {Array<function(ActionSequence[]):Promise<ActionSequence[]>>}
|
|
29
|
+
*/
|
|
30
|
+
sequenceTransformers = [];
|
|
31
|
+
|
|
19
32
|
|
|
20
33
|
/**
|
|
21
34
|
* Add a sequence transformer, these are applied as a final step during resource allocation
|
|
22
35
|
* @param {function(ActionSequence[]):Promise<ActionSequence[]>} t
|
|
23
36
|
*/
|
|
24
37
|
addTransformer(t) {
|
|
38
|
+
assert.isFunction(t, 't');
|
|
39
|
+
|
|
25
40
|
this.sequenceTransformers.push(t);
|
|
26
41
|
}
|
|
27
42
|
|
|
28
43
|
/**
|
|
29
44
|
*
|
|
30
45
|
* @param {TacticalModule} module
|
|
46
|
+
* @returns {boolean}
|
|
31
47
|
*/
|
|
32
48
|
addTacticalModule(module) {
|
|
33
49
|
assert.defined(module, 'module');
|
|
34
50
|
assert.notNull(module, 'module');
|
|
35
51
|
assert.equal(module.isTacticalModule, true, 'module.TacticalModule !== true');
|
|
36
52
|
|
|
37
|
-
this.modules
|
|
53
|
+
return array_push_if_unique(this.modules, module);
|
|
38
54
|
}
|
|
39
55
|
|
|
40
56
|
/**
|
|
@@ -43,6 +59,8 @@ export class StrategicResourceAllocator {
|
|
|
43
59
|
* @returns {Promise<A[]>} actions
|
|
44
60
|
*/
|
|
45
61
|
allocate(resources) {
|
|
62
|
+
assert.isArray(resources, 'resources');
|
|
63
|
+
|
|
46
64
|
|
|
47
65
|
/**
|
|
48
66
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TacticalModule.d.ts","sourceRoot":"","sources":["../../../../../src/engine/intelligence/resource/TacticalModule.js"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"TacticalModule.d.ts","sourceRoot":"","sources":["../../../../../src/engine/intelligence/resource/TacticalModule.js"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,4BAJa,EAAE;IAKX;;;;OAIG;IACH,6BAHW,QAAQ,CAAC,IAAE,CAAC,EAAE,GACZ,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAI5C;IAIL;;;OAGG;IACH,2BAFU,OAAO,CAEwB;CAPxC"}
|
|
@@ -3,6 +3,9 @@ export default Ticker;
|
|
|
3
3
|
* Simulation tick generator
|
|
4
4
|
* Dispatches "tick" every animation frame or "maxDelay" time, whichever happens to be soonest
|
|
5
5
|
* This is essentially the timing bus that all the simulation systems subscribe to for their step advancement
|
|
6
|
+
*
|
|
7
|
+
* @author Alex Goldring
|
|
8
|
+
* @copyright Company Named Limited (c) 2025
|
|
6
9
|
*/
|
|
7
10
|
declare class Ticker {
|
|
8
11
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Ticker.d.ts","sourceRoot":"","sources":["../../../../src/engine/simulation/Ticker.js"],"names":[],"mappings":";AAIA
|
|
1
|
+
{"version":3,"file":"Ticker.d.ts","sourceRoot":"","sources":["../../../../src/engine/simulation/Ticker.js"],"names":[],"mappings":";AAIA;;;;;;;GAOG;AACH;IACI;;;OAGG;IACH,gBAFU,KAAK,CAEK;IAWpB;;;;OAIG;IACH,iBAFU,MAAM,CAAC,MAAM,CAAC,CAEF;IActB;;;OAGG;IACH,uBAFW,MAAM,QA8ChB;IAED,cAOC;IAED,eAQC;IAED,aAOC;;CACJ;kBA1HiB,aAAa;mBADZ,oCAAoC"}
|
|
@@ -6,6 +6,9 @@ import Clock from '../Clock.js';
|
|
|
6
6
|
* Simulation tick generator
|
|
7
7
|
* Dispatches "tick" every animation frame or "maxDelay" time, whichever happens to be soonest
|
|
8
8
|
* This is essentially the timing bus that all the simulation systems subscribe to for their step advancement
|
|
9
|
+
*
|
|
10
|
+
* @author Alex Goldring
|
|
11
|
+
* @copyright Company Named Limited (c) 2025
|
|
9
12
|
*/
|
|
10
13
|
class Ticker {
|
|
11
14
|
/**
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"behavior_to_dot.prototype.d.ts","sourceRoot":"","sources":["../../../../../src/engine/intelligence/behavior/behavior_to_dot.prototype.js"],"names":[],"mappings":""}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { SequenceBehavior } from "./composite/SequenceBehavior.js";
|
|
2
|
-
import { SucceedingBehavior } from "./primitive/SucceedingBehavior.js";
|
|
3
|
-
import { Behavior } from "./Behavior.js";
|
|
4
|
-
import { ParallelBehavior } from "./composite/ParallelBehavior.js";
|
|
5
|
-
import { behavior_to_dot } from "./behavior_to_dot.js";
|
|
6
|
-
import { DelayBehavior } from "./util/DelayBehavior.js";
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
class CenterCameraOnObject extends Behavior{
|
|
10
|
-
object = "whiteboard"
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
class UserControlsDisable extends Behavior{
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
class PlayVideoInPopup extends Behavior{
|
|
18
|
-
url = "url/how_to_use_whiteboard.mp4"
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
class DrawCurvesOnWhiteBoard extends Behavior{
|
|
22
|
-
curve = "hello"
|
|
23
|
-
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
class UserControlsEnable extends Behavior{
|
|
27
|
-
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
const complex = SequenceBehavior.from([
|
|
31
|
-
new SucceedingBehavior(),
|
|
32
|
-
SequenceBehavior.from([
|
|
33
|
-
new Behavior()
|
|
34
|
-
]),
|
|
35
|
-
ParallelBehavior.from([
|
|
36
|
-
new SucceedingBehavior(),
|
|
37
|
-
DelayBehavior.from(17)
|
|
38
|
-
])
|
|
39
|
-
]);
|
|
40
|
-
|
|
41
|
-
const tutorial = SequenceBehavior.from([ // will execute all members one after another
|
|
42
|
-
|
|
43
|
-
ParallelBehavior.from([ // will execute all members at the same time, completes when last member completes
|
|
44
|
-
|
|
45
|
-
new CenterCameraOnObject( ), // center camera on whiteboard
|
|
46
|
-
new UserControlsDisable(),
|
|
47
|
-
new PlayVideoInPopup() // plays a video in a popup, behavior finishes when video does
|
|
48
|
-
|
|
49
|
-
]),
|
|
50
|
-
new DrawCurvesOnWhiteBoard(),
|
|
51
|
-
new UserControlsEnable()
|
|
52
|
-
|
|
53
|
-
])
|
|
54
|
-
|
|
55
|
-
console.log(behavior_to_dot(tutorial));
|