@woosh/meep-engine 2.120.1 → 2.120.2
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/geom/2d/circle/Circle.d.ts +7 -5
- package/src/core/geom/2d/circle/Circle.d.ts.map +1 -1
- package/src/core/geom/2d/circle/Circle.js +7 -5
- package/src/core/geom/2d/circle/circle_area.d.ts +7 -0
- package/src/core/geom/2d/circle/circle_area.d.ts.map +1 -0
- package/src/core/geom/2d/circle/circle_area.js +8 -0
- package/src/core/geom/Quaternion.d.ts.map +1 -1
- package/src/core/geom/Quaternion.js +57 -23
- package/src/engine/ecs/Entity.js +2 -2
- package/src/engine/ecs/EntityComponentDataset.d.ts.map +1 -1
- package/src/engine/ecs/EntityComponentDataset.js +31 -13
- package/src/engine/ecs/EntityManager.d.ts.map +1 -1
- package/src/engine/ecs/EntityManager.js +10 -1
- package/src/engine/ecs/EntityObserver.d.ts.map +1 -1
- package/src/engine/ecs/EntityObserver.js +2 -10
- package/src/engine/ecs/EntityReference.d.ts +10 -2
- package/src/engine/ecs/EntityReference.d.ts.map +1 -1
- package/src/engine/ecs/EntityReference.js +24 -6
- package/src/engine/ecs/terrain/ecs/Terrain.d.ts.map +1 -1
- package/src/engine/graphics/texture/sampler/Sampler2D.d.ts +349 -50
- 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 +4 -0
- package/src/engine/intelligence/behavior/ecs/KillBehavior.d.ts +17 -0
- package/src/engine/intelligence/behavior/ecs/KillBehavior.d.ts.map +1 -0
- package/src/engine/intelligence/behavior/ecs/KillBehavior.js +47 -0
- package/src/generation/grid/generation/GridTaskDensityMarkerDistribution.d.ts +7 -6
- package/src/generation/grid/generation/GridTaskDensityMarkerDistribution.d.ts.map +1 -1
- package/src/generation/grid/generation/GridTaskDensityMarkerDistribution.js +51 -43
- package/editor/actions/concrete/ModifyPatchSampler2DAction.d.ts +0 -48
- package/editor/actions/concrete/ModifyPatchTextureArray2DAction.d.ts.map +0 -1
- package/editor/actions/concrete/PaintTerrainOverlayAction.d.ts.map +0 -1
- package/editor/actions/concrete/PatchTerrainHeightAction.d.ts.map +0 -1
- package/editor/actions/concrete/SelectionAddAction.d.ts.map +0 -1
- package/editor/actions/concrete/SelectionClearAction.d.ts.map +0 -1
- package/editor/actions/concrete/SelectionRemoveAction.d.ts.map +0 -1
- package/editor/actions/concrete/TransformModifyAction.d.ts.map +0 -1
- package/editor/actions/concrete/WriteGridValueAction.d.ts.map +0 -1
- package/src/engine/ecs/read_entity_reference.d.ts +0 -9
- package/src/engine/ecs/read_entity_reference.d.ts.map +0 -1
- package/src/engine/ecs/read_entity_reference.js +0 -15
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityReference.d.ts","sourceRoot":"","sources":["../../../../src/engine/ecs/EntityReference.js"],"names":[],"mappings":"AAEA;;;GAGG;AACH;
|
|
1
|
+
{"version":3,"file":"EntityReference.d.ts","sourceRoot":"","sources":["../../../../src/engine/ecs/EntityReference.js"],"names":[],"mappings":"AAEA;;;GAGG;AACH;IAiHI;;;;;OAKG;IACH,gBAJW,MAAM,cACN,MAAM,GACL,eAAe,CAQ1B;IAED;;;;;OAKG;IACH,iBAJW,sBAAsB,MACtB,MAAM,GACJ,eAAe,CAQ3B;IAzID;;;;OAIG;IACH,IAFU,MAAM,CAET;IAEP;;;;OAIG;IACH,YAFU,MAAM,CAED;IAEf;;;OAGG;IACH,YAFW,eAAe,QAKzB;IAED;;;OAGG;IACH,SAFa,eAAe,CAQ3B;IAED;;;OAGG;IACH,QAFY,MAAM,CAIjB;IAED;;;;OAIG;IACH,cAHW,eAAe,GACd,OAAO,CAMlB;IAED;;;;OAIG;IACH,YAHW,sBAAsB,GACpB,OAAO,CAQnB;IAED;;;;;OAKG;IACH,aAHW,sBAAsB,GACpB,OAAO,CASnB;IAED;;;;OAIG;IACH,UAHW,sBAAsB,UACtB,MAAM,QAShB;IAED;;;;OAIG;IACH,SAHW,MAAM,cACN,MAAM,QAUhB;IA+BL;;;OAGG;IACH,4BAFU,OAAO,CAE0B;CAN1C;;cAWS,eAAe"}
|
|
@@ -24,7 +24,7 @@ export class EntityReference {
|
|
|
24
24
|
*
|
|
25
25
|
* @param {EntityReference} other
|
|
26
26
|
*/
|
|
27
|
-
copy(other){
|
|
27
|
+
copy(other) {
|
|
28
28
|
this.id = other.id;
|
|
29
29
|
this.generation = other.generation;
|
|
30
30
|
}
|
|
@@ -33,7 +33,7 @@ export class EntityReference {
|
|
|
33
33
|
*
|
|
34
34
|
* @returns {EntityReference}
|
|
35
35
|
*/
|
|
36
|
-
clone(){
|
|
36
|
+
clone() {
|
|
37
37
|
const r = new EntityReference();
|
|
38
38
|
|
|
39
39
|
r.copy(this);
|
|
@@ -74,9 +74,10 @@ export class EntityReference {
|
|
|
74
74
|
}
|
|
75
75
|
|
|
76
76
|
/**
|
|
77
|
-
*
|
|
77
|
+
* Destroys entity bound to this reference
|
|
78
|
+
* If the reference is invalid for the given dataset - does nothing
|
|
78
79
|
* @param {EntityComponentDataset} ecd
|
|
79
|
-
* @returns {boolean}
|
|
80
|
+
* @returns {boolean} true if entity was destroyed, false otherwise
|
|
80
81
|
*/
|
|
81
82
|
destroy(ecd) {
|
|
82
83
|
if (this.verify(ecd)) {
|
|
@@ -92,7 +93,10 @@ export class EntityReference {
|
|
|
92
93
|
* @param {EntityComponentDataset} ecd
|
|
93
94
|
* @param {number} entity
|
|
94
95
|
*/
|
|
95
|
-
bind(ecd, entity){
|
|
96
|
+
bind(ecd, entity) {
|
|
97
|
+
assert.defined(ecd, 'ecd');
|
|
98
|
+
assert.equal(ecd.isEntityComponentDataset, true, 'ecd.isEntityComponentDataset !== true');
|
|
99
|
+
|
|
96
100
|
const generation = ecd.getEntityGeneration(entity);
|
|
97
101
|
|
|
98
102
|
this.from(entity, generation);
|
|
@@ -103,7 +107,7 @@ export class EntityReference {
|
|
|
103
107
|
* @param {number} id
|
|
104
108
|
* @param {number} generation
|
|
105
109
|
*/
|
|
106
|
-
from(id, generation){
|
|
110
|
+
from(id, generation) {
|
|
107
111
|
|
|
108
112
|
assert.isNonNegativeInteger(id, 'id');
|
|
109
113
|
assert.isNonNegativeInteger(generation, 'generation');
|
|
@@ -126,6 +130,20 @@ export class EntityReference {
|
|
|
126
130
|
|
|
127
131
|
return r;
|
|
128
132
|
}
|
|
133
|
+
|
|
134
|
+
/**
|
|
135
|
+
*
|
|
136
|
+
* @param {EntityComponentDataset} ecd
|
|
137
|
+
* @param {number} id
|
|
138
|
+
* @returns {EntityReference}
|
|
139
|
+
*/
|
|
140
|
+
static bind(ecd, id) {
|
|
141
|
+
const r = new EntityReference();
|
|
142
|
+
|
|
143
|
+
r.bind(ecd, id);
|
|
144
|
+
|
|
145
|
+
return r;
|
|
146
|
+
}
|
|
129
147
|
}
|
|
130
148
|
|
|
131
149
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Terrain.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/ecs/terrain/ecs/Terrain.js"],"names":[],"mappings":";AAsCA;IACI;;;OAGG;IACH,aAFU,MAAM,CAEC;IAEjB;;;OAGG;IACH,cAAU;IAEV;;;OAGG;IACH,WAFU,MAAM,CAEF;IAEd;;;OAGG;IACH,eAFU,sBAAsB,CAEa;IAE7C;;;OAGG;IACH,mBAFU,MAAM,CAE6B;IAE7C;;;;OAIG;IACH,YAFU,MAAM,CAED;IAEf;;;OAGG;IACH,eAFU,OAAO,CAEQ;IACzB;;;OAGG;IACH,SAFU,cAAc,CAEO;IAC/B;;;OAGG;IACH,gBAFU,YAAY,CAEK;IAE3B;;;OAGG;IACH,iBAFU,aAAa,CAEM;IAE7B;;;OAGG;IACH,wBAFU,WAAW,CAEoB;IAEzC;;;OAGG;IACH,cAFU,SAAS,CAEG;IAIlB;;;OAGG;IACH,QAFU,MAAM,CAEU;IAG1B;;;OAGG;IACH,aAFU,MAAM,CAEI;IAGpB;;;OAGG;IACH,eAFU,SAAS,CAE4B;IAE/C;;;OAGG;IACH,eAFU,WAAW,CAE4G;IAejI;;OAEG;IACH,UAFU,cAAc,CAEa;IAErC;;;OAGG;IACH,eAFU,OAAO,CAEQ;IAEzB;;;;OAIG;IACH,2BAAuC;IAGvC;;;OAGG;IACH,SAFU,cAAc,CAEoB;IAE5C;;;;OAIG;IACH,gBAGE;IAMF;;;;OAIG;IACH,uBAA0B;IAE1B;;;;;OAKG;IACH,6BAAgC;IAEhC;;;;;OAKG;IACH,iCAAoC;IAEpC;;;OAGG;IACH,oBAAuB;IAEvB;;;;OAIG;IACH,6BAAgC;IAKpC;;;;OAIG;IACH,cAHW,MAAM,GAAC,YAAY,GACjB,IAAI,CAIhB;IAED;;;;OAIG;IACH,gBAHW,MAAM,GAAC,YAAY,GACjB,IAAI,CAIhB;IAED;;;;OAIG;IACH,gBAHW,MAAM,GAAC,YAAY,SACnB,OAAO,QAQjB;IAED;;;;OAIG;IACH,cAHW,MAAM,GAAC,YAAY,GACjB,OAAO,CAInB;IAED;;;OAGG;IACH,eAFW,cAAc,QA4BxB;IAED;;OAEG;IACH,eAyBC;IAED,gBAIC;IAED,mBAmBC;IAED,iCA4BC;IAED,6BAEC;IAED;;;;;;OAMG;IACH,gBANW,MAAM,KACN,MAAM,6EAiBhB;IAED;;;;;;;;;;OAUG;IACH,yBATW,aAAa,WACb,MAAM,WACN,MAAM,WACN,MAAM,cACN,MAAM,cACN,MAAM,cACN,MAAM,GACJ,OAAO,CAQnB;IAED;;;;;;OAMG;IACH,gBALW,OAAO,aACP,OAAO,+CAMjB;IAED;;;;;;;OAOG;IACH,mBANW,MAAM,KACN,MAAM,6EAOhB;IAED;;;;;;OAMG;IACH,kCALW,aAAa,KACb,MAAM,KACN,MAAM,GACL,OAAO,CAIlB;IAED;;;;;OAKG;IACH,gCAJW,KAAK,CAAE,OAAO,CAAC,qDAmDzB;IAED;;;;;;OAMG;IACH,wBALW,KAAK,CAAE,OAAO,CAAC,UACf,OAAO,EAAE,qDAkBnB;IAED;;;;;OAKG;IACH,sBAJW,MAAM,KACN,MAAM,UACN,OAAO,QAgBjB;IAED;;;;OAIG;IACH,uBAHW,OAAO,UACP,OAAO,QASjB;IAED;;;OAGG;IACH,gCAsBC;IAED,uBA8BC;IAED;;;OAGG;IACH,kBAFW,IAAI,GAAC,YAAY,GAAC,MAAM,EAAE,EAMpC;IAED;;;OAGG;IACH,iBAFY,YAAY,CAIvB;IAED;;;OAGG;IACH,gBAFW,YAAY,UA2BtB;IAED;;;OAGG;IACH,iBAFa,OAAO,CAAC,IAAI,CAAC,CAKzB;IAED,4BAiBC;IAED;;;OAGG;IACH,8BAFW,YAAY,QAItB;IAED,0BAGC;IAED,oCAUC;IAED,yBAEC;IAED,2BAeC;IAED,uBAkBC;IAED;;;OAGG;IACH,oBAFW,YAAY,QAoDtB;IArBG;;;;OAIG;IACH,WAHU,OAAO,CAAC,cAAc,CAAC,CAGc;IAE/C;;;;OAIG;IACH,QAHU,OAAO,CAAC,kBAAkB,CAAC,CAGM;IAW/C;;;OAGG;IACH,aAFY,kBAAkB,CAI7B;IAED;;;OAGG;IACH,aAFa,OAAO,GAAC,IAAI,CAcxB;IAED;;;;OAIG;IACH,wBAHW,MAAM,GACL,OAAO,CAAC,WAAW,CAAC,CAqD/B;IAED;;;;OAIG;IACH;;;;eAFW,MAAM,QAmDhB;IAxBG,kBAA4B;IA0BhC
|
|
1
|
+
{"version":3,"file":"Terrain.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/ecs/terrain/ecs/Terrain.js"],"names":[],"mappings":"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"}
|
|
@@ -1,50 +1,349 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* Data Texture class, providing an abstraction around 2d numerical arrays, mostly for sampling purposes
|
|
3
|
+
* Inspired by OpenGL's glsl sampler2d API
|
|
4
|
+
* @class
|
|
5
|
+
*/
|
|
6
|
+
export class Sampler2D {
|
|
7
|
+
/**
|
|
8
|
+
*
|
|
9
|
+
* @param {int} itemSize
|
|
10
|
+
* @param {int} width
|
|
11
|
+
* @param {int} height
|
|
12
|
+
* @return {Sampler2D}
|
|
13
|
+
*/
|
|
14
|
+
static uint8clamped(itemSize: int, width: int, height: int): Sampler2D;
|
|
15
|
+
/**
|
|
16
|
+
*
|
|
17
|
+
* @param {int} itemSize
|
|
18
|
+
* @param {int} width
|
|
19
|
+
* @param {int} height
|
|
20
|
+
* @return {Sampler2D}
|
|
21
|
+
*/
|
|
22
|
+
static uint8(itemSize: int, width: int, height: int): Sampler2D;
|
|
23
|
+
/**
|
|
24
|
+
*
|
|
25
|
+
* @param {int} itemSize
|
|
26
|
+
* @param {int} width
|
|
27
|
+
* @param {int} height
|
|
28
|
+
* @return {Sampler2D}
|
|
29
|
+
*/
|
|
30
|
+
static uint16(itemSize: int, width: int, height: int): Sampler2D;
|
|
31
|
+
/**
|
|
32
|
+
*
|
|
33
|
+
* @param {int} itemSize
|
|
34
|
+
* @param {int} width
|
|
35
|
+
* @param {int} height
|
|
36
|
+
* @return {Sampler2D}
|
|
37
|
+
*/
|
|
38
|
+
static uint32(itemSize: int, width: int, height: int): Sampler2D;
|
|
39
|
+
/**
|
|
40
|
+
*
|
|
41
|
+
* @param {int} itemSize
|
|
42
|
+
* @param {int} width
|
|
43
|
+
* @param {int} height
|
|
44
|
+
* @return {Sampler2D}
|
|
45
|
+
*/
|
|
46
|
+
static int8(itemSize: int, width: int, height: int): Sampler2D;
|
|
47
|
+
/**
|
|
48
|
+
*
|
|
49
|
+
* @param {int} itemSize
|
|
50
|
+
* @param {int} width
|
|
51
|
+
* @param {int} height
|
|
52
|
+
* @return {Sampler2D}
|
|
53
|
+
*/
|
|
54
|
+
static int16(itemSize: int, width: int, height: int): Sampler2D;
|
|
55
|
+
/**
|
|
56
|
+
*
|
|
57
|
+
* @param {int} itemSize
|
|
58
|
+
* @param {int} width
|
|
59
|
+
* @param {int} height
|
|
60
|
+
* @return {Sampler2D}
|
|
61
|
+
*/
|
|
62
|
+
static int32(itemSize: int, width: int, height: int): Sampler2D;
|
|
63
|
+
/**
|
|
64
|
+
*
|
|
65
|
+
* @param {int} itemSize
|
|
66
|
+
* @param {int} width
|
|
67
|
+
* @param {int} height
|
|
68
|
+
* @return {Sampler2D}
|
|
69
|
+
*/
|
|
70
|
+
static float32(itemSize: int, width: int, height: int): Sampler2D;
|
|
71
|
+
/**
|
|
72
|
+
*
|
|
73
|
+
* @param {int} itemSize
|
|
74
|
+
* @param {int} width
|
|
75
|
+
* @param {int} height
|
|
76
|
+
* @return {Sampler2D}
|
|
77
|
+
*/
|
|
78
|
+
static float64(itemSize: int, width: int, height: int): Sampler2D;
|
|
79
|
+
/**
|
|
80
|
+
*
|
|
81
|
+
* @param {ArrayLike<number>|number[]|Uint8ClampedArray|Uint8Array|Uint16Array|Uint32Array|Int8Array|Int16Array|Int32Array|Float32Array|Float64Array} data
|
|
82
|
+
* @param {number} [itemSize]
|
|
83
|
+
* @param {number} [width]
|
|
84
|
+
* @param {number} [height]
|
|
85
|
+
* @constructor
|
|
86
|
+
*/
|
|
87
|
+
constructor(data?: ArrayLike<number> | number[] | Uint8ClampedArray | Uint8Array | Uint16Array | Uint32Array | Int8Array | Int16Array | Int32Array | Float32Array | Float64Array, itemSize?: number, width?: number, height?: number);
|
|
88
|
+
/**
|
|
89
|
+
*
|
|
90
|
+
* @type {number}
|
|
91
|
+
*/
|
|
92
|
+
width: number;
|
|
93
|
+
/**
|
|
94
|
+
*
|
|
95
|
+
* @type {number}
|
|
96
|
+
*/
|
|
97
|
+
height: number;
|
|
98
|
+
/**
|
|
99
|
+
* Number of channels
|
|
100
|
+
* @type {number}
|
|
101
|
+
*/
|
|
102
|
+
itemSize: number;
|
|
103
|
+
/**
|
|
104
|
+
*
|
|
105
|
+
* @type {number[]|Uint8ClampedArray|Uint8Array|Uint16Array|Uint32Array|Int8Array|Int16Array|Int32Array|Float32Array|Float64Array}
|
|
106
|
+
*/
|
|
107
|
+
data: number[] | Uint8ClampedArray | Uint8Array | Uint16Array | Uint32Array | Int8Array | Int16Array | Int32Array | Float32Array | Float64Array;
|
|
108
|
+
/**
|
|
109
|
+
* Used to tracking changes
|
|
110
|
+
* @type {number}
|
|
111
|
+
*/
|
|
112
|
+
version: number;
|
|
113
|
+
/**
|
|
114
|
+
*
|
|
115
|
+
* @param {number} u
|
|
116
|
+
* @param {number} v
|
|
117
|
+
* @param {number[]} result
|
|
118
|
+
*/
|
|
119
|
+
sampleCatmullRomUV(u: number, v: number, result: number[]): void;
|
|
120
|
+
/**
|
|
121
|
+
*
|
|
122
|
+
* @param {number} u
|
|
123
|
+
* @param {number} v
|
|
124
|
+
* @param {number} channel
|
|
125
|
+
* @returns {number}
|
|
126
|
+
*/
|
|
127
|
+
sampleChannelCatmullRomUV(u: number, v: number, channel: number): number;
|
|
128
|
+
/**
|
|
129
|
+
*
|
|
130
|
+
* @see https://gist.github.com/TheRealMJP/c83b8c0f46b63f3a88a5986f4fa982b1
|
|
131
|
+
* @param {number} x
|
|
132
|
+
* @param {number} y
|
|
133
|
+
* @param {number} channel
|
|
134
|
+
* @returns {number}
|
|
135
|
+
*/
|
|
136
|
+
sampleChannelCatmullRom(x: number, y: number, channel: number): number;
|
|
137
|
+
/**
|
|
138
|
+
*
|
|
139
|
+
* @param {number} u
|
|
140
|
+
* @param {number} v
|
|
141
|
+
* @param {number[]} result
|
|
142
|
+
*/
|
|
143
|
+
sampleBicubicUV(u: number, v: number, result: number[]): void;
|
|
144
|
+
/**
|
|
145
|
+
*
|
|
146
|
+
* @param {number} x
|
|
147
|
+
* @param {number} y
|
|
148
|
+
* @param {number[]|Float32Array|Float64Array} result
|
|
149
|
+
* @param {number} result_offset
|
|
150
|
+
*/
|
|
151
|
+
sampleBicubic(x: number, y: number, result: number[] | Float32Array | Float64Array, result_offset: number): void;
|
|
152
|
+
/**
|
|
153
|
+
*
|
|
154
|
+
* @param {number} u
|
|
155
|
+
* @param {number} v
|
|
156
|
+
* @param {number} channel
|
|
157
|
+
* @returns {number}
|
|
158
|
+
*/
|
|
159
|
+
sampleChannelBicubicUV(u: number, v: number, channel: number): number;
|
|
160
|
+
/**
|
|
161
|
+
*
|
|
162
|
+
* Bicubic-filtered sampling, note values can be negative due to the nature of the cubic curve
|
|
163
|
+
* @param {number} x
|
|
164
|
+
* @param {number} y
|
|
165
|
+
* @param {number} channel
|
|
166
|
+
* @returns {number}
|
|
167
|
+
*/
|
|
168
|
+
sampleChannelBicubic(x: number, y: number, channel: number): number;
|
|
169
|
+
/**
|
|
170
|
+
*
|
|
171
|
+
* @param {number} u
|
|
172
|
+
* @param {number} v
|
|
173
|
+
* @param {number[]|Float32Array} result
|
|
174
|
+
* @param {number} result_offset
|
|
175
|
+
*/
|
|
176
|
+
sampleBilinearUV(u: number, v: number, result: number[] | Float32Array, result_offset?: number): void;
|
|
177
|
+
/**
|
|
178
|
+
*
|
|
179
|
+
* @param {number} x
|
|
180
|
+
* @param {number} y
|
|
181
|
+
* @param {number[]|Float32Array|Float64Array} result
|
|
182
|
+
* @param {number} result_offset
|
|
183
|
+
*/
|
|
184
|
+
sampleBilinear(x: number, y: number, result: number[] | Float32Array | Float64Array, result_offset?: number): void;
|
|
185
|
+
/**
|
|
186
|
+
*
|
|
187
|
+
* @param {number} u
|
|
188
|
+
* @param {number} v
|
|
189
|
+
* @param {number} channel
|
|
190
|
+
* @return {number}
|
|
191
|
+
*/
|
|
192
|
+
sampleChannelBilinearUV(u: number, v: number, channel: number): number;
|
|
193
|
+
/**
|
|
194
|
+
*
|
|
195
|
+
* @param {number} x
|
|
196
|
+
* @param {number} y
|
|
197
|
+
* @param {number} channel
|
|
198
|
+
* @returns {number}
|
|
199
|
+
*/
|
|
200
|
+
sampleChannelBilinear(x: number, y: number, channel: number): number;
|
|
201
|
+
/**
|
|
202
|
+
*
|
|
203
|
+
* @param {number} u
|
|
204
|
+
* @param {number} v
|
|
205
|
+
* @param {number[]|ArrayLike<number>} result
|
|
206
|
+
*/
|
|
207
|
+
sampleNearestUV(u: number, v: number, result: number[] | ArrayLike<number>): void;
|
|
208
|
+
/**
|
|
209
|
+
*
|
|
210
|
+
* @param {number} x
|
|
211
|
+
* @param {number} y
|
|
212
|
+
* @param {number} channel
|
|
213
|
+
* @returns {number}
|
|
214
|
+
*/
|
|
215
|
+
readChannel(x: number, y: number, channel: number): number;
|
|
216
|
+
/**
|
|
217
|
+
*
|
|
218
|
+
* @param {number} x
|
|
219
|
+
* @param {number} y
|
|
220
|
+
* @param {number[]} result
|
|
221
|
+
*/
|
|
222
|
+
read(x: number, y: number, result: number[]): void;
|
|
223
|
+
/**
|
|
224
|
+
*
|
|
225
|
+
* @param {number} x
|
|
226
|
+
* @param {number} y
|
|
227
|
+
* @param {number[]|ArrayLike<number>} texel
|
|
228
|
+
*/
|
|
229
|
+
write(x: number, y: number, texel: number[] | ArrayLike<number>): void;
|
|
230
|
+
/**
|
|
231
|
+
*
|
|
232
|
+
* @param {number} x
|
|
233
|
+
* @param {number} y
|
|
234
|
+
* @returns {number}
|
|
235
|
+
*/
|
|
236
|
+
point2index(x: number, y: number): number;
|
|
237
|
+
/**
|
|
238
|
+
*
|
|
239
|
+
* @param {number} index
|
|
240
|
+
* @param {Vector2} result
|
|
241
|
+
*/
|
|
242
|
+
index2point(index: number, result: Vector2): void;
|
|
243
|
+
/**
|
|
244
|
+
* Copy a patch from another sampler
|
|
245
|
+
* @param {Sampler2D} source where to copy from
|
|
246
|
+
* @param {Number} sourceX where to start reading from, X coordinate
|
|
247
|
+
* @param {Number} sourceY where to start reading from, X coordinate
|
|
248
|
+
* @param {Number} destinationX where to start writing to, X coordinate
|
|
249
|
+
* @param {Number} destinationY where to start writing to, X coordinate
|
|
250
|
+
* @param {Number} width size of the patch that is to be copied
|
|
251
|
+
* @param {Number} height size of the patch that is to be copied
|
|
252
|
+
*/
|
|
253
|
+
copy(source: Sampler2D, sourceX: number, sourceY: number, destinationX: number, destinationY: number, width: number, height: number): void;
|
|
254
|
+
/**
|
|
255
|
+
* Fill data values with zeros for a given area
|
|
256
|
+
* Specialized version of `fill` method, optimized for speed
|
|
257
|
+
* @param {Number} x
|
|
258
|
+
* @param {Number} y
|
|
259
|
+
* @param {Number} width
|
|
260
|
+
* @param {Number} height
|
|
261
|
+
*/
|
|
262
|
+
zeroFill(x: number, y: number, width: number, height: number): void;
|
|
263
|
+
/**
|
|
264
|
+
*
|
|
265
|
+
* @param {number} channel_index
|
|
266
|
+
* @param {number} value
|
|
267
|
+
*/
|
|
268
|
+
channelFill(channel_index: number, value: number): void;
|
|
269
|
+
/**
|
|
270
|
+
*
|
|
271
|
+
* @param {number} x
|
|
272
|
+
* @param {number} y
|
|
273
|
+
* @param {number} width
|
|
274
|
+
* @param {number} height
|
|
275
|
+
* @param {Array.<number>} value
|
|
276
|
+
*/
|
|
277
|
+
fill(x: number, y: number, width: number, height: number, value: Array<number>): void;
|
|
278
|
+
/**
|
|
279
|
+
* Set channel value of a specific texel
|
|
280
|
+
* @param {number} x
|
|
281
|
+
* @param {number} y
|
|
282
|
+
* @param {number} channel
|
|
283
|
+
* @param {number} value
|
|
284
|
+
*/
|
|
285
|
+
writeChannel(x: number, y: number, channel: number, value: number): void;
|
|
286
|
+
/**
|
|
287
|
+
* Traverses area inside a circle
|
|
288
|
+
* NOTE: Based on palm3d answer on stack overflow: https://stackoverflow.com/questions/1201200/fast-algorithm-for-drawing-filled-circles
|
|
289
|
+
* @param {number} centerX
|
|
290
|
+
* @param {number} centerY
|
|
291
|
+
* @param {number} radius
|
|
292
|
+
* @param {function(x:number,y:number, sampler:Sampler2D)} visitor
|
|
293
|
+
*/
|
|
294
|
+
traverseCircle(centerX: number, centerY: number, radius: number, visitor: any): void;
|
|
295
|
+
/**
|
|
296
|
+
*
|
|
297
|
+
* @param {number} x
|
|
298
|
+
* @param {number} y
|
|
299
|
+
* @param {boolean} [preserveData=true]
|
|
300
|
+
*/
|
|
301
|
+
resize(x: number, y: number, preserveData?: boolean): void;
|
|
302
|
+
/**
|
|
303
|
+
* Estimate memory requirement of the object
|
|
304
|
+
* @return {number}
|
|
305
|
+
*/
|
|
306
|
+
computeByteSize(): number;
|
|
307
|
+
/**
|
|
308
|
+
*
|
|
309
|
+
* @param {Sampler2D} other
|
|
310
|
+
* @return {boolean}
|
|
311
|
+
*/
|
|
312
|
+
equals(other: Sampler2D): boolean;
|
|
313
|
+
/**
|
|
314
|
+
*
|
|
315
|
+
* @return {number}
|
|
316
|
+
*/
|
|
317
|
+
hash(): number;
|
|
318
|
+
/**
|
|
319
|
+
* @returns {Sampler2D}
|
|
320
|
+
*/
|
|
321
|
+
clone(): Sampler2D;
|
|
322
|
+
toJSON(): {
|
|
323
|
+
height: number;
|
|
324
|
+
width: number;
|
|
325
|
+
itemSize: number;
|
|
326
|
+
type: import("../../../../core/binary/type/BinaryDataType.js").BinaryDataType;
|
|
327
|
+
data: string;
|
|
328
|
+
};
|
|
329
|
+
fromJSON({ height, width, itemSize, type, data }: {
|
|
330
|
+
height: any;
|
|
331
|
+
width: any;
|
|
332
|
+
itemSize: any;
|
|
333
|
+
type: any;
|
|
334
|
+
data: any;
|
|
335
|
+
}): void;
|
|
336
|
+
/**
|
|
337
|
+
* @deprecated use {@link write} instead
|
|
338
|
+
*/
|
|
339
|
+
set: (x: number, y: number, texel: number[] | ArrayLike<number>) => void;
|
|
340
|
+
/**
|
|
341
|
+
* @readonly
|
|
342
|
+
* @type {boolean}
|
|
343
|
+
*/
|
|
344
|
+
readonly isSampler2D: boolean;
|
|
345
|
+
}
|
|
346
|
+
export namespace Sampler2D {
|
|
347
|
+
let typeName: string;
|
|
348
|
+
}
|
|
349
|
+
//# sourceMappingURL=Sampler2D.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DieBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/ecs/DieBehavior.js"],"names":[],"mappings":"AAGA;IAGI,6BAEC;IAED,qCASC;CACJ;+
|
|
1
|
+
{"version":3,"file":"DieBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/ecs/DieBehavior.js"],"names":[],"mappings":"AAGA;;GAEG;AACH;IAGI,6BAEC;IAED,qCASC;CACJ;+BAtB8B,qBAAqB;+BADrB,sBAAsB"}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { BehaviorStatus } from "../BehaviorStatus.js";
|
|
2
2
|
import { EntityBehavior } from "./EntityBehavior.js";
|
|
3
3
|
|
|
4
|
+
/**
|
|
5
|
+
* Makes the entity destroy itself
|
|
6
|
+
*/
|
|
4
7
|
export class DieBehavior extends EntityBehavior {
|
|
5
8
|
|
|
6
9
|
|
|
@@ -19,3 +22,4 @@ export class DieBehavior extends EntityBehavior {
|
|
|
19
22
|
|
|
20
23
|
}
|
|
21
24
|
}
|
|
25
|
+
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Causes another entity to be destroyed
|
|
3
|
+
* Will produce a {@link BehaviorStatus.Failed} if entity could not be destroyed, either because it doesn't exist or the reference is stale
|
|
4
|
+
*/
|
|
5
|
+
export class KillBehavior extends EntityBehavior {
|
|
6
|
+
/**
|
|
7
|
+
*
|
|
8
|
+
* @param {EntityReference} ref
|
|
9
|
+
* @returns {KillBehavior}
|
|
10
|
+
*/
|
|
11
|
+
static create(ref: EntityReference): KillBehavior;
|
|
12
|
+
tick(timeDelta: any): BehaviorStatus.Succeeded | BehaviorStatus.Failed;
|
|
13
|
+
#private;
|
|
14
|
+
}
|
|
15
|
+
import { EntityBehavior } from "./EntityBehavior.js";
|
|
16
|
+
import { BehaviorStatus } from "../BehaviorStatus.js";
|
|
17
|
+
//# sourceMappingURL=KillBehavior.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KillBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/ecs/KillBehavior.js"],"names":[],"mappings":"AAIA;;;GAGG;AACH;IAOI;;;;OAIG;IACH,mBAHW,eAAe,GACb,YAAY,CAYxB;IAED,uEAaC;;CACJ;+BA5C8B,qBAAqB;+BADrB,sBAAsB"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { assert } from "../../../../core/assert.js";
|
|
2
|
+
import { BehaviorStatus } from "../BehaviorStatus.js";
|
|
3
|
+
import { EntityBehavior } from "./EntityBehavior.js";
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Causes another entity to be destroyed
|
|
7
|
+
* Will produce a {@link BehaviorStatus.Failed} if entity could not be destroyed, either because it doesn't exist or the reference is stale
|
|
8
|
+
*/
|
|
9
|
+
export class KillBehavior extends EntityBehavior {
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @type {EntityReference}
|
|
13
|
+
*/
|
|
14
|
+
#ref;
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
*
|
|
18
|
+
* @param {EntityReference} ref
|
|
19
|
+
* @returns {KillBehavior}
|
|
20
|
+
*/
|
|
21
|
+
static create(ref) {
|
|
22
|
+
assert.defined(ref, 'ref');
|
|
23
|
+
assert.isObject(ref, 'ref');
|
|
24
|
+
assert.equal(ref.isEntityReference, true, 'ref.isEntityReference !== true');
|
|
25
|
+
|
|
26
|
+
const r = new KillBehavior();
|
|
27
|
+
|
|
28
|
+
r.#ref = ref;
|
|
29
|
+
|
|
30
|
+
return r;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
tick(timeDelta) {
|
|
34
|
+
|
|
35
|
+
const ecd = this.ecd;
|
|
36
|
+
|
|
37
|
+
if (this.#ref.destroy(ecd)) {
|
|
38
|
+
|
|
39
|
+
return BehaviorStatus.Succeeded;
|
|
40
|
+
|
|
41
|
+
} else {
|
|
42
|
+
// couldn't find
|
|
43
|
+
return BehaviorStatus.Failed;
|
|
44
|
+
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
@@ -23,7 +23,7 @@ export class GridTaskDensityMarkerDistribution extends GridTaskGenerator {
|
|
|
23
23
|
*/
|
|
24
24
|
scale: NumericInterval;
|
|
25
25
|
/**
|
|
26
|
-
* RNG seed
|
|
26
|
+
* RNG seed
|
|
27
27
|
* @type {number}
|
|
28
28
|
* @private
|
|
29
29
|
*/
|
|
@@ -31,12 +31,13 @@ export class GridTaskDensityMarkerDistribution extends GridTaskGenerator {
|
|
|
31
31
|
/**
|
|
32
32
|
*
|
|
33
33
|
* @param {GridData} grid
|
|
34
|
-
* @param x0
|
|
35
|
-
* @param y0
|
|
36
|
-
* @param x1
|
|
37
|
-
* @param y1
|
|
34
|
+
* @param {number} x0
|
|
35
|
+
* @param {number} y0
|
|
36
|
+
* @param {number} x1
|
|
37
|
+
* @param {number} y1
|
|
38
|
+
* @returns {number}
|
|
38
39
|
*/
|
|
39
|
-
estimateTapCount(grid: GridData, x0:
|
|
40
|
+
estimateTapCount(grid: GridData, x0: number, y0: number, x1: number, y1: number): number;
|
|
40
41
|
/**
|
|
41
42
|
*
|
|
42
43
|
* @param {number} seed
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GridTaskDensityMarkerDistribution.d.ts","sourceRoot":"","sources":["../../../../../src/generation/grid/generation/GridTaskDensityMarkerDistribution.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"GridTaskDensityMarkerDistribution.d.ts","sourceRoot":"","sources":["../../../../../src/generation/grid/generation/GridTaskDensityMarkerDistribution.js"],"names":[],"mappings":"AAgBA;IA4BI;;;;;;OAMG;IACH,qBALW,UAAU,UACV,yBAAyB,SACzB,eAAe,SACf,MAAM,qCAgBhB;IA/CD;;;OAGG;IACH,SAFU,UAAU,CAEL;IAEf;;;OAGG;IACH,QAFU,yBAAyB,CAErB;IAEd;;;OAGG;IACH,OAFU,eAAe,CAES;IAElC;;;;OAIG;IACH,eAAW;IA2BX;;;;;;;;OAQG;IACH,uBAPW,QAAQ,MACR,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,GACJ,MAAM,CAwFlB;IAED;;;;;;;;;OASG;IACH,kBARW,MAAM,QACN,QAAQ,MACR,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,GACJ,IAAI,CAkIhB;IAGD,iDA6EC;CACJ;kCAlXiC,yBAAyB;gCAT3B,gDAAgD;iBAI/D,oCAAoC;sBAC/B,yCAAyC"}
|