@defold-typescript/types 0.39.0 → 0.41.0
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/api-availability.json +4024 -716
- package/api-migrations.json +27 -0
- package/api-signatures.json +18118 -10264
- package/api-targets.json +448 -11
- package/examples/translations.json +619 -148
- package/fixtures/messages_doc.json +96 -0
- package/generated/b2d.d.ts +680 -4
- package/generated/b2d_body.d.ts +29 -103
- package/generated/b2d_chain.d.ts +5 -6
- package/generated/b2d_fixture.d.ts +34 -38
- package/generated/b2d_joint.d.ts +503 -25
- package/generated/b2d_shape.d.ts +199 -14
- package/generated/b2d_world.d.ts +57 -63
- package/generated/buffer.d.ts +33 -29
- package/generated/builtin-messages.d.ts +7 -1
- package/generated/bullet3d.d.ts +91 -0
- package/generated/bullet3d_collision_object.d.ts +433 -0
- package/generated/bullet3d_constraint.d.ts +818 -0
- package/generated/bullet3d_rigid_body.d.ts +429 -0
- package/generated/bullet3d_shape.d.ts +123 -0
- package/generated/bullet3d_world.d.ts +492 -0
- package/generated/camera.d.ts +31 -34
- package/generated/collectionfactory.d.ts +26 -27
- package/generated/collectionproxy.d.ts +22 -6
- package/generated/compute.d.ts +12 -238
- package/generated/crash.d.ts +24 -10
- package/generated/editor-vm/http.d.ts +90 -7
- package/generated/editor-vm/image.d.ts +7 -7
- package/generated/editor-vm/json.d.ts +11 -0
- package/generated/editor-vm/localization.d.ts +7 -7
- package/generated/editor-vm/tilemap_tiles.d.ts +56 -10
- package/generated/editor-vm/zip.d.ts +28 -0
- package/generated/editor.d.ts +1496 -430
- package/generated/factory.d.ts +21 -25
- package/generated/font.d.ts +64 -22
- package/generated/go.d.ts +243 -186
- package/generated/graphics.d.ts +374 -84
- package/generated/gui.d.ts +282 -492
- package/generated/html5.d.ts +5 -3
- package/generated/http.d.ts +31 -36
- package/generated/image.d.ts +127 -85
- package/generated/json.d.ts +34 -16
- package/generated/kinds/gui-script.d.ts +8 -0
- package/generated/kinds/render-script.d.ts +8 -0
- package/generated/kinds/script.d.ts +8 -0
- package/generated/label.d.ts +77 -7
- package/generated/liveupdate.d.ts +13 -10
- package/generated/material.d.ts +312 -360
- package/generated/model.d.ts +72 -42
- package/generated/particlefx.d.ts +19 -28
- package/generated/physics.d.ts +378 -144
- package/generated/profiler.d.ts +14 -24
- package/generated/render.d.ts +294 -297
- package/generated/resource.d.ts +753 -641
- package/generated/socket.d.ts +131 -134
- package/generated/sound.d.ts +65 -34
- package/generated/sprite.d.ts +39 -17
- package/generated/sys.d.ts +237 -182
- package/generated/tilemap.d.ts +21 -16
- package/generated/timer.d.ts +34 -21
- package/generated/versions/defold-1.12.4/b2d_body.d.ts +0 -7
- package/generated/versions/defold-1.12.4/buffer.d.ts +18 -17
- package/generated/versions/defold-1.12.4/camera.d.ts +23 -23
- package/generated/versions/defold-1.12.4/collectionfactory.d.ts +21 -19
- package/generated/versions/defold-1.12.4/collectionproxy.d.ts +2 -2
- package/generated/versions/defold-1.12.4/crash.d.ts +2 -2
- package/generated/versions/defold-1.12.4/factory.d.ts +15 -16
- package/generated/versions/defold-1.12.4/go.d.ts +15 -17
- package/generated/versions/defold-1.12.4/gui.d.ts +111 -193
- package/generated/versions/defold-1.12.4/html5.d.ts +4 -2
- package/generated/versions/defold-1.12.4/http.d.ts +4 -15
- package/generated/versions/defold-1.12.4/image.d.ts +38 -46
- package/generated/versions/defold-1.12.4/index.d.ts +2 -0
- package/generated/versions/defold-1.12.4/json.d.ts +10 -6
- package/generated/versions/defold-1.12.4/label.d.ts +2 -3
- package/generated/versions/defold-1.12.4/liveupdate.d.ts +5 -3
- package/generated/versions/defold-1.12.4/model.d.ts +34 -13
- package/generated/versions/defold-1.12.4/particlefx.d.ts +2 -5
- package/generated/versions/defold-1.12.4/physics.d.ts +82 -78
- package/generated/versions/defold-1.12.4/profiler.d.ts +3 -6
- package/generated/versions/defold-1.12.4/render.d.ts +160 -132
- package/generated/versions/defold-1.12.4/resource.d.ts +212 -209
- package/generated/versions/defold-1.12.4/socket.d.ts +45 -61
- package/generated/versions/defold-1.12.4/sound.d.ts +11 -11
- package/generated/versions/defold-1.12.4/sprite.d.ts +24 -6
- package/generated/versions/defold-1.12.4/sys.d.ts +45 -68
- package/generated/versions/defold-1.12.4/tilemap.d.ts +18 -11
- package/generated/versions/defold-1.12.4/timer.d.ts +5 -3
- package/generated/versions/defold-1.12.4/vmath.d.ts +5 -26
- package/generated/versions/defold-1.12.4/window.d.ts +1 -16
- package/generated/versions/defold-1.13.0/b2d_body.d.ts +10 -55
- package/generated/versions/defold-1.13.0/b2d_fixture.d.ts +25 -25
- package/generated/versions/defold-1.13.0/b2d_shape.d.ts +188 -5
- package/generated/versions/defold-1.13.0/b2d_world.d.ts +16 -10
- package/generated/versions/defold-1.13.0/buffer.d.ts +18 -17
- package/generated/versions/defold-1.13.0/camera.d.ts +27 -27
- package/generated/versions/defold-1.13.0/collectionfactory.d.ts +21 -19
- package/generated/versions/defold-1.13.0/collectionproxy.d.ts +2 -2
- package/generated/versions/defold-1.13.0/compute.d.ts +1 -70
- package/generated/versions/defold-1.13.0/crash.d.ts +2 -2
- package/generated/versions/defold-1.13.0/editor-vm/tilemap_tiles.d.ts +3 -3
- package/generated/versions/defold-1.13.0/editor.d.ts +34 -24
- package/generated/versions/defold-1.13.0/factory.d.ts +15 -16
- package/generated/versions/defold-1.13.0/go.d.ts +15 -17
- package/generated/versions/defold-1.13.0/graphics.d.ts +121 -37
- package/generated/versions/defold-1.13.0/gui.d.ts +111 -193
- package/generated/versions/defold-1.13.0/html5.d.ts +4 -2
- package/generated/versions/defold-1.13.0/http.d.ts +4 -15
- package/generated/versions/defold-1.13.0/image.d.ts +38 -46
- package/generated/versions/defold-1.13.0/index.d.ts +2 -0
- package/generated/versions/defold-1.13.0/json.d.ts +10 -6
- package/generated/versions/defold-1.13.0/label.d.ts +2 -3
- package/generated/versions/defold-1.13.0/liveupdate.d.ts +7 -5
- package/generated/versions/defold-1.13.0/material.d.ts +69 -107
- package/generated/versions/defold-1.13.0/model.d.ts +34 -13
- package/generated/versions/defold-1.13.0/particlefx.d.ts +2 -5
- package/generated/versions/defold-1.13.0/physics.d.ts +82 -78
- package/generated/versions/defold-1.13.0/profiler.d.ts +3 -6
- package/generated/versions/defold-1.13.0/render.d.ts +160 -132
- package/generated/versions/defold-1.13.0/resource.d.ts +217 -210
- package/generated/versions/defold-1.13.0/socket.d.ts +45 -61
- package/generated/versions/defold-1.13.0/sound.d.ts +11 -11
- package/generated/versions/defold-1.13.0/sprite.d.ts +24 -6
- package/generated/versions/defold-1.13.0/sys.d.ts +45 -68
- package/generated/versions/defold-1.13.0/tilemap.d.ts +18 -11
- package/generated/versions/defold-1.13.0/timer.d.ts +5 -3
- package/generated/versions/defold-1.13.0/vmath.d.ts +5 -26
- package/generated/versions/defold-1.13.0/window.d.ts +1 -16
- package/generated/versions/defold-1.13.1/b2d.d.ts +33 -0
- package/generated/versions/defold-1.13.1/b2d_body.d.ts +636 -0
- package/generated/versions/defold-1.13.1/b2d_chain.d.ts +106 -0
- package/generated/versions/defold-1.13.1/b2d_fixture.d.ts +157 -0
- package/generated/versions/defold-1.13.1/b2d_joint.d.ts +823 -0
- package/generated/versions/defold-1.13.1/b2d_shape.d.ts +400 -0
- package/generated/versions/defold-1.13.1/b2d_world.d.ts +320 -0
- package/generated/versions/defold-1.13.1/buffer.d.ts +189 -0
- package/generated/versions/defold-1.13.1/camera.d.ts +303 -0
- package/generated/versions/defold-1.13.1/collectionfactory.d.ts +151 -0
- package/generated/versions/defold-1.13.1/collectionproxy.d.ts +93 -0
- package/generated/versions/defold-1.13.1/compute.d.ts +237 -0
- package/generated/versions/defold-1.13.1/crash.d.ts +143 -0
- package/generated/versions/defold-1.13.1/editor-vm/http.d.ts +56 -0
- package/generated/versions/defold-1.13.1/editor-vm/image.d.ts +48 -0
- package/generated/versions/defold-1.13.1/editor-vm/json.d.ts +10 -0
- package/generated/versions/defold-1.13.1/editor-vm/localization.d.ts +42 -0
- package/generated/versions/defold-1.13.1/editor-vm/tilemap_tiles.d.ts +80 -0
- package/generated/versions/defold-1.13.1/editor-vm/zip.d.ts +10 -0
- package/generated/versions/defold-1.13.1/editor-vm/zlib.d.ts +24 -0
- package/generated/versions/defold-1.13.1/editor.d.ts +1121 -0
- package/generated/versions/defold-1.13.1/factory.d.ts +124 -0
- package/generated/versions/defold-1.13.1/font.d.ts +81 -0
- package/generated/versions/defold-1.13.1/go.d.ts +1107 -0
- package/generated/versions/defold-1.13.1/graphics.d.ts +411 -0
- package/generated/versions/defold-1.13.1/gui.d.ts +2353 -0
- package/generated/versions/defold-1.13.1/html5.d.ts +55 -0
- package/generated/versions/defold-1.13.1/http.d.ts +77 -0
- package/generated/versions/defold-1.13.1/image.d.ts +131 -0
- package/generated/versions/defold-1.13.1/index.d.ts +57 -0
- package/generated/versions/defold-1.13.1/json.d.ts +80 -0
- package/generated/versions/defold-1.13.1/kinds/editor-script.d.ts +14 -0
- package/generated/versions/defold-1.13.1/label.d.ts +93 -0
- package/generated/versions/defold-1.13.1/liveupdate.d.ts +142 -0
- package/generated/versions/defold-1.13.1/material.d.ts +408 -0
- package/generated/versions/defold-1.13.1/model.d.ts +272 -0
- package/generated/versions/defold-1.13.1/msg.d.ts +10 -0
- package/generated/versions/defold-1.13.1/particlefx.d.ts +163 -0
- package/generated/versions/defold-1.13.1/physics.d.ts +559 -0
- package/generated/versions/defold-1.13.1/profiler.d.ts +235 -0
- package/generated/versions/defold-1.13.1/render.d.ts +1190 -0
- package/generated/versions/defold-1.13.1/resource.d.ts +1523 -0
- package/generated/versions/defold-1.13.1/socket.d.ts +784 -0
- package/generated/versions/defold-1.13.1/sound.d.ts +292 -0
- package/generated/versions/defold-1.13.1/sprite.d.ts +175 -0
- package/generated/versions/defold-1.13.1/sys.d.ts +678 -0
- package/generated/versions/defold-1.13.1/tilemap.d.ts +208 -0
- package/generated/versions/defold-1.13.1/timer.d.ts +125 -0
- package/generated/versions/defold-1.13.1/types.d.ts +61 -0
- package/generated/versions/defold-1.13.1/vmath.d.ts +774 -0
- package/generated/versions/defold-1.13.1/window.d.ts +183 -0
- package/generated/versions/defold-1.13.1/zlib.d.ts +41 -0
- package/generated/vmath.d.ts +6 -26
- package/generated/window.d.ts +71 -71
- package/identity-vocabulary.json +561 -0
- package/index.d.ts +8 -0
- package/package.json +13 -2
- package/scripts/example-store-io.ts +12 -1
- package/scripts/extension-goldens.ts +1 -0
- package/scripts/fidelity-baseline.json +146 -46
- package/scripts/generate-api-availability.ts +90 -12
- package/scripts/generate-api-signatures.ts +14 -3
- package/scripts/import-defold-release.ts +85 -24
- package/scripts/prose-constants.ts +157 -0
- package/scripts/regen.ts +396 -78
- package/scripts/shared-handle-methods.ts +53 -0
- package/scripts/signature-store-fs.ts +1 -0
- package/scripts/sync-api-docs.ts +16 -5
- package/src/api-availability.ts +0 -0
- package/src/api-doc.ts +201 -3
- package/src/api-identity.ts +252 -0
- package/src/component-properties.d.ts +33 -0
- package/src/core-types.ts +28 -3
- package/src/correction-pins.ts +49 -0
- package/src/custom-messages.d.ts +4 -3
- package/src/doc-comment.ts +139 -23
- package/src/doc-corrections.ts +108 -0
- package/src/editor-vm-globals.d.ts +5 -2
- package/src/emit-dts.ts +2474 -281
- package/src/emit-messages.ts +52 -0
- package/src/engine-globals.d.ts +2 -2
- package/src/example-store.ts +125 -14
- package/src/field-correction-coverage.ts +204 -0
- package/src/fnv1a.ts +16 -0
- package/src/go-overloads.d.ts +33 -13
- package/src/index-base-table.ts +145 -0
- package/src/index-slot-classifications.ts +588 -0
- package/src/index.ts +39 -2
- package/src/library-index-slot-classifications.ts +332 -0
- package/src/lifecycle.ts +61 -199
- package/src/luals-type-expr.ts +354 -0
- package/src/msg-overloads.d.ts +0 -1
- package/src/param-correction-provenance.ts +64 -0
- package/src/return-correction-provenance.ts +58 -16
- package/src/script-api.ts +3 -1
- package/src/sys-overloads.d.ts +48 -0
- package/src/vmath-overloads.d.ts +27 -1
- package/src/window-event-guard.d.ts +6 -9
- package/url-parameters.json +1 -2
|
@@ -34,6 +34,11 @@ declare global {
|
|
|
34
34
|
* the bounds are calculated as if all layers were collapsed into one.
|
|
35
35
|
*
|
|
36
36
|
* @param url - the tile map
|
|
37
|
+
* @returns `[x, y, w, h]`:
|
|
38
|
+
* - `x` — x coordinate of the bottom left corner. **⚠️ 1-based; passed to Defold unchanged.**
|
|
39
|
+
* - `y` — y coordinate of the bottom left corner. **⚠️ 1-based; passed to Defold unchanged.**
|
|
40
|
+
* - `w` — number of columns (width) in the tile map
|
|
41
|
+
* - `h` — number of rows (height) in the tile map
|
|
37
42
|
* @example
|
|
38
43
|
* ```ts
|
|
39
44
|
* // get the level bounds.
|
|
@@ -50,8 +55,8 @@ declare global {
|
|
|
50
55
|
*
|
|
51
56
|
* @param url - the tile map
|
|
52
57
|
* @param layer - name of the layer for the tile
|
|
53
|
-
* @param x - x-coordinate of the tile
|
|
54
|
-
* @param y - y-coordinate of the tile
|
|
58
|
+
* @param x - x-coordinate of the tile. **⚠️ 1-based; passed to Defold unchanged.**
|
|
59
|
+
* @param y - y-coordinate of the tile. **⚠️ 1-based; passed to Defold unchanged.**
|
|
55
60
|
* @returns index of the tile
|
|
56
61
|
* @example
|
|
57
62
|
* ```ts
|
|
@@ -71,8 +76,8 @@ declare global {
|
|
|
71
76
|
*
|
|
72
77
|
* @param url - the tile map
|
|
73
78
|
* @param layer - name of the layer for the tile
|
|
74
|
-
* @param x - x-coordinate of the tile
|
|
75
|
-
* @param y - y-coordinate of the tile
|
|
79
|
+
* @param x - x-coordinate of the tile. **⚠️ 1-based; passed to Defold unchanged.**
|
|
80
|
+
* @param y - y-coordinate of the tile. **⚠️ 1-based; passed to Defold unchanged.**
|
|
76
81
|
* @returns index of the tile
|
|
77
82
|
* @example
|
|
78
83
|
* ```ts
|
|
@@ -120,15 +125,17 @@ declare global {
|
|
|
120
125
|
* above and to the right of origin has coordinates 1,1.
|
|
121
126
|
* Tiles to the left of and below origin are indexed 0, -1, -2 and so forth.
|
|
122
127
|
*
|
|
128
|
+
* ```text
|
|
123
129
|
* +-------+-------+------+------+
|
|
124
|
-
* |
|
|
130
|
+
* | 0,3 | 1,3 | 2,3 | 3,3 |
|
|
125
131
|
* +-------+-------+------+------+
|
|
126
|
-
* |
|
|
132
|
+
* | 0,2 | 1,2 | 2,2 | 3,2 |
|
|
127
133
|
* +-------+-------+------+------+
|
|
128
|
-
* |
|
|
134
|
+
* | 0,1 | 1,1 | 2,1 | 3,1 |
|
|
129
135
|
* +-------O-------+------+------+
|
|
130
|
-
* |
|
|
136
|
+
* | 0,0 | 1,0 | 2,0 | 3,0 |
|
|
131
137
|
* +-------+-------+------+------+
|
|
138
|
+
* ```
|
|
132
139
|
*
|
|
133
140
|
* The coordinates must be within the bounds of the tile map as it were created.
|
|
134
141
|
* That is, it is not possible to extend the size of a tile map by setting tiles outside the edges.
|
|
@@ -139,8 +146,8 @@ declare global {
|
|
|
139
146
|
*
|
|
140
147
|
* @param url - the tile map
|
|
141
148
|
* @param layer - name of the layer for the tile
|
|
142
|
-
* @param x - x-coordinate of the tile
|
|
143
|
-
* @param y - y-coordinate of the tile
|
|
149
|
+
* @param x - x-coordinate of the tile. **⚠️ 1-based; passed to Defold unchanged.**
|
|
150
|
+
* @param y - y-coordinate of the tile. **⚠️ 1-based; passed to Defold unchanged.**
|
|
144
151
|
* @param tile - index of new tile to set. 0 resets the cell
|
|
145
152
|
* @param transform_bitmask - optional flip and/or rotation should be applied to the tile
|
|
146
153
|
* @example
|
|
@@ -157,7 +164,7 @@ declare global {
|
|
|
157
164
|
* }
|
|
158
165
|
* ```
|
|
159
166
|
*/
|
|
160
|
-
function set_tile(url: string | Hash | Url, layer: string | Hash, x: number, y: number, tile: number, transform_bitmask?: number):
|
|
167
|
+
function set_tile(url: string | Hash | Url, layer: string | Hash, x: number, y: number, tile: number, transform_bitmask?: number): boolean;
|
|
161
168
|
/**
|
|
162
169
|
* Sets the visibility of the tilemap layer
|
|
163
170
|
*
|
|
@@ -51,11 +51,13 @@ declare global {
|
|
|
51
51
|
* number The elapsed time - on first trigger it is time since timer.delay call, otherwise time since last trigger
|
|
52
52
|
* @returns identifier for the create timer, returns timer.INVALID_TIMER_HANDLE if the timer can not be created
|
|
53
53
|
* @example
|
|
54
|
+
* A simple one-shot timer
|
|
54
55
|
* ```ts
|
|
55
|
-
* // A simple one-shot timer
|
|
56
56
|
* timer.delay(1, false, () => print("print in one second"));
|
|
57
|
-
*
|
|
58
|
-
*
|
|
57
|
+
* ```
|
|
58
|
+
* @example
|
|
59
|
+
* Repetitive timer which canceled after 10 calls
|
|
60
|
+
* ```ts
|
|
59
61
|
* function call_every_second(self: unknown, handle: unknown, time_elapsed: unknown) {
|
|
60
62
|
* const state = self as { counter: number };
|
|
61
63
|
* state.counter = state.counter + 1;
|
|
@@ -49,7 +49,7 @@ declare global {
|
|
|
49
49
|
function conj(q1: Quaternion): Quaternion;
|
|
50
50
|
/**
|
|
51
51
|
* Given two linearly independent vectors P and Q, the cross product,
|
|
52
|
-
* P
|
|
52
|
+
* P × Q, is a vector that is perpendicular to both P and Q and
|
|
53
53
|
* therefore normal to the plane containing them.
|
|
54
54
|
* If the two vectors have the same direction (or have the exact
|
|
55
55
|
* opposite direction from one another, i.e. are not linearly independent)
|
|
@@ -70,13 +70,11 @@ declare global {
|
|
|
70
70
|
function cross(v1: Vector3, v2: Vector3): Vector3;
|
|
71
71
|
/**
|
|
72
72
|
* The returned value is a scalar defined as:
|
|
73
|
-
* `P
|
|
74
|
-
* where
|
|
73
|
+
* `P ⋅ Q = |P| |Q| cos θ`
|
|
74
|
+
* where θ is the angle between the vectors P and Q.
|
|
75
75
|
*
|
|
76
76
|
* - If the dot product is positive then the angle between the vectors is below 90 degrees.
|
|
77
|
-
*
|
|
78
77
|
* - If the dot product is zero the vectors are perpendicular (at right-angles to each other).
|
|
79
|
-
*
|
|
80
78
|
* - If the dot product is negative then the angle between the vectors is more than 90 degrees.
|
|
81
79
|
*
|
|
82
80
|
* @param v1 - first vector
|
|
@@ -437,8 +435,8 @@ declare global {
|
|
|
437
435
|
/**
|
|
438
436
|
* Calculates the extent the projection of the first vector onto the second.
|
|
439
437
|
* The returned value is a scalar p defined as:
|
|
440
|
-
* `p = |P| cos
|
|
441
|
-
* where
|
|
438
|
+
* `p = |P| cos θ / |Q|`
|
|
439
|
+
* where θ is the angle between the vectors P and Q.
|
|
442
440
|
*
|
|
443
441
|
* @param v1 - vector to be projected on the second
|
|
444
442
|
* @param v2 - vector onto which the first will be projected, must not have zero length
|
|
@@ -643,25 +641,6 @@ declare global {
|
|
|
643
641
|
* ```
|
|
644
642
|
*/
|
|
645
643
|
function rotate(q: Quaternion, v1: Vector3): Vector3;
|
|
646
|
-
/**
|
|
647
|
-
* Creates a vector of arbitrary size. The vector is initialized
|
|
648
|
-
* with numeric values from a table.
|
|
649
|
-
* The table values are converted to floating point
|
|
650
|
-
* values. If a value cannot be converted, a 0 is stored in that
|
|
651
|
-
* value position in the vector.
|
|
652
|
-
*
|
|
653
|
-
* @param t - table of numbers
|
|
654
|
-
* @returns new vector
|
|
655
|
-
* @example
|
|
656
|
-
* ```ts
|
|
657
|
-
* // How to create a vector with custom data to be used for animation easing:
|
|
658
|
-
* const values = [0, 0.5, 0];
|
|
659
|
-
* const vec = vmath.vector(values);
|
|
660
|
-
* print(vec); // => vmath.vector (size: 3)
|
|
661
|
-
* print(vec[2]); // => 0.5
|
|
662
|
-
* ```
|
|
663
|
-
*/
|
|
664
|
-
function vector(t: number[]): Vector;
|
|
665
644
|
/**
|
|
666
645
|
* Creates a new zero vector with all components set to 0.
|
|
667
646
|
*
|
|
@@ -53,9 +53,7 @@ declare global {
|
|
|
53
53
|
* @returns The mode for screen dimming
|
|
54
54
|
*
|
|
55
55
|
* - `window.DIMMING_UNKNOWN`
|
|
56
|
-
*
|
|
57
56
|
* - `window.DIMMING_ON`
|
|
58
|
-
*
|
|
59
57
|
* - `window.DIMMING_OFF`
|
|
60
58
|
*/
|
|
61
59
|
function get_dim_mode(): window.DimModeState;
|
|
@@ -82,19 +80,12 @@ declare global {
|
|
|
82
80
|
* table table containing these keys:
|
|
83
81
|
*
|
|
84
82
|
* - number `x`
|
|
85
|
-
*
|
|
86
83
|
* - number `y`
|
|
87
|
-
*
|
|
88
84
|
* - number `width`
|
|
89
|
-
*
|
|
90
85
|
* - number `height`
|
|
91
|
-
*
|
|
92
86
|
* - number `inset_left`
|
|
93
|
-
*
|
|
94
87
|
* - number `inset_top`
|
|
95
|
-
*
|
|
96
88
|
* - number `inset_right`
|
|
97
|
-
*
|
|
98
89
|
* - number `inset_bottom`
|
|
99
90
|
*/
|
|
100
91
|
function get_safe_area(): { x: number; y: number; width: number; height: number; inset_left: number; inset_top: number; inset_right: number; inset_bottom: number };
|
|
@@ -110,7 +101,6 @@ declare global {
|
|
|
110
101
|
* @param mode - The mode for screen dimming
|
|
111
102
|
*
|
|
112
103
|
* - `window.DIMMING_ON`
|
|
113
|
-
*
|
|
114
104
|
* - `window.DIMMING_OFF`
|
|
115
105
|
*/
|
|
116
106
|
function set_dim_mode(mode: window.DimModeStateSettable): void;
|
|
@@ -125,20 +115,15 @@ declare global {
|
|
|
125
115
|
* constant The type of event. Can be one of these:
|
|
126
116
|
*
|
|
127
117
|
* - `window.WINDOW_EVENT_FOCUS_LOST`
|
|
128
|
-
*
|
|
129
118
|
* - `window.WINDOW_EVENT_FOCUS_GAINED`
|
|
130
|
-
*
|
|
131
119
|
* - `window.WINDOW_EVENT_RESIZED`
|
|
132
|
-
*
|
|
133
120
|
* - `window.WINDOW_EVENT_ICONIFIED`
|
|
134
|
-
*
|
|
135
121
|
* - `window.WINDOW_EVENT_DEICONIFIED`
|
|
136
122
|
*
|
|
137
123
|
* `data`
|
|
138
124
|
* table The callback value `data` is a table which currently holds these values
|
|
139
125
|
*
|
|
140
126
|
* - number `width`: The width of a resize event. nil otherwise.
|
|
141
|
-
*
|
|
142
127
|
* - number `height`: The height of a resize event. nil otherwise.
|
|
143
128
|
* @example
|
|
144
129
|
* ```ts
|
|
@@ -163,7 +148,7 @@ declare global {
|
|
|
163
148
|
* });
|
|
164
149
|
* ```
|
|
165
150
|
*/
|
|
166
|
-
function set_listener(callback
|
|
151
|
+
function set_listener(callback: ((self: unknown, event: (typeof window)[Extract<keyof typeof window, `WINDOW_EVENT_${string}`>], data: Record<string | number, unknown>) => void) | undefined): void;
|
|
167
152
|
/**
|
|
168
153
|
* Set the locking state for current mouse cursor on a PC platform.
|
|
169
154
|
* This function locks or unlocks the mouse cursor to the center point of the window. While the cursor is locked,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/** @noSelfInFile */
|
|
2
|
-
import type {
|
|
2
|
+
import type { Opaque, Vector3 } from "../../../src/core-types";
|
|
3
3
|
|
|
4
4
|
declare global {
|
|
5
5
|
/**
|
|
@@ -114,7 +114,7 @@ declare global {
|
|
|
114
114
|
* }
|
|
115
115
|
* ```
|
|
116
116
|
*/
|
|
117
|
-
function create_chain(body: Opaque<"b2Body">, definition:
|
|
117
|
+
function create_chain(body: Opaque<"b2Body">, definition: { vertices: Vector3[]; loop?: boolean; prev_vertex?: Vector3; next_vertex?: Vector3; friction?: number; restitution?: number; material?: number; filter?: { category_bits?: number; mask_bits?: number; group_index?: number }; enable_sensor_events?: boolean }): LuaMultiReturn<[Opaque<"b2Chain">, { shape_id: number }[]]>;
|
|
118
118
|
/**
|
|
119
119
|
* Creates a fixture and attach it to this body. Use this function if you need
|
|
120
120
|
* to set some fixture parameters, like friction. Otherwise you can create the
|
|
@@ -132,7 +132,7 @@ declare global {
|
|
|
132
132
|
* `polygon` = `{ type = b2d.shape.SHAPE_TYPE_POLYGON, vertices = { vector3, ... } }`
|
|
133
133
|
* `box` = `{ type = b2d.shape.SHAPE_TYPE_BOX, hx = number, hy = number, center = vector3_or_nil, angle = radians_or_nil }`
|
|
134
134
|
* `chain` = `{ type = b2d.shape.SHAPE_TYPE_CHAIN, vertices = { vector3, ... }, loop = boolean_or_nil, prev_vertex = vector3_or_nil, next_vertex = vector3_or_nil }`
|
|
135
|
-
* @returns fixture info table with `index`, `type`, `sensor`, `density`, `friction`, `restitution`, and `child_count`
|
|
135
|
+
* @returns fixture info table with `index`, `type`, `sensor`, `density`, `friction`, `restitution`, and `child_count`. **⚠️ `index` is 1-based; passed to Defold unchanged.**
|
|
136
136
|
* @example
|
|
137
137
|
* ```ts
|
|
138
138
|
* const body = b2d.get_body("#collisionobject");
|
|
@@ -144,18 +144,7 @@ declare global {
|
|
|
144
144
|
* }
|
|
145
145
|
* ```
|
|
146
146
|
*/
|
|
147
|
-
function create_fixture(body: Opaque<"b2Body">, definition: { shape
|
|
148
|
-
/**
|
|
149
|
-
* Creates a fixture from a shape and attach it to this body.
|
|
150
|
-
* This is a convenience function. Use b2FixtureDef if you need to set parameters
|
|
151
|
-
* like friction, restitution, user data, or filtering.
|
|
152
|
-
* If the density is non-zero, this function automatically updates the mass of the body.
|
|
153
|
-
*
|
|
154
|
-
* @param body - body
|
|
155
|
-
* @param shape - the shape to be cloned.
|
|
156
|
-
* @param density - the shape density (set to zero for static bodies).
|
|
157
|
-
*/
|
|
158
|
-
function create_fixture(body: Opaque<"b2Body">, shape: Opaque<"b2Shape">, density: number): void;
|
|
147
|
+
function create_fixture(body: Opaque<"b2Body">, definition: { shape: { type: typeof b2d.shape.SHAPE_TYPE_POLYGON | typeof b2d.shape.SHAPE_TYPE_BOX; hx: number; hy: number; center?: Vector3; angle?: number } | { type: typeof b2d.shape.SHAPE_TYPE_POLYGON | typeof b2d.shape.SHAPE_TYPE_BOX; vertices: Vector3[] } | { type: typeof b2d.shape.SHAPE_TYPE_CIRCLE; radius: number; center?: Vector3 } | { type: typeof b2d.shape.SHAPE_TYPE_EDGE; v1: Vector3; v2: Vector3; v0?: Vector3; v3?: Vector3 } | { type: typeof b2d.shape.SHAPE_TYPE_CHAIN; vertices: Vector3[]; loop?: boolean; prev_vertex?: Vector3; next_vertex?: Vector3 }; friction?: number; restitution?: number; density?: number; sensor?: boolean; is_sensor?: boolean; filter?: { category_bits: number; mask_bits: number; group_index: number } }): { index: number; type: number; sensor: boolean; density: number; friction: number; restitution: number; child_count: number };
|
|
159
148
|
/**
|
|
160
149
|
* Creates a shape and attaches it to this body.
|
|
161
150
|
* If the density is non-zero, this function automatically updates the mass of the body.
|
|
@@ -166,13 +155,14 @@ declare global {
|
|
|
166
155
|
*
|
|
167
156
|
* @param body - body
|
|
168
157
|
* @param definition - the shape definition.
|
|
158
|
+
* @returns **⚠️ `index` is 1-based; passed to Defold unchanged.**
|
|
169
159
|
*/
|
|
170
|
-
function create_shape(body: Opaque<"b2Body">, definition:
|
|
160
|
+
function create_shape(body: Opaque<"b2Body">, definition: ({ shape: { type: typeof b2d.shape.SHAPE_TYPE_POLYGON | typeof b2d.shape.SHAPE_TYPE_BOX; hx: number; hy: number; center?: Vector3; angle?: number } | { type: typeof b2d.shape.SHAPE_TYPE_POLYGON | typeof b2d.shape.SHAPE_TYPE_BOX; vertices: Vector3[] } | { type: typeof b2d.shape.SHAPE_TYPE_CIRCLE; radius: number; center?: Vector3 } | { type: typeof b2d.shape.SHAPE_TYPE_CAPSULE; radius: number; center1: Vector3; center2: Vector3 } | { type: typeof b2d.shape.SHAPE_TYPE_EDGE | typeof b2d.shape.SHAPE_TYPE_SEGMENT; v1: Vector3; v2: Vector3 } } | { type: typeof b2d.shape.SHAPE_TYPE_POLYGON | typeof b2d.shape.SHAPE_TYPE_BOX; hx: number; hy: number; center?: Vector3; angle?: number } | { type: typeof b2d.shape.SHAPE_TYPE_POLYGON | typeof b2d.shape.SHAPE_TYPE_BOX; vertices: Vector3[] } | { type: typeof b2d.shape.SHAPE_TYPE_CIRCLE; radius: number; center?: Vector3 } | { type: typeof b2d.shape.SHAPE_TYPE_CAPSULE; radius: number; center1: Vector3; center2: Vector3 } | { type: typeof b2d.shape.SHAPE_TYPE_EDGE | typeof b2d.shape.SHAPE_TYPE_SEGMENT; v1: Vector3; v2: Vector3 }) & { density?: number; friction?: number; restitution?: number; material?: number; sensor?: boolean; is_sensor?: boolean; filter?: { category_bits: number; mask_bits: number; group_index: number } }): { index: number; shape_id: Opaque<"b2Shape">; type: number; sensor: boolean; density: number; friction: number; restitution: number; material: number; child_count: number; is_chain_segment: boolean };
|
|
171
161
|
/**
|
|
172
162
|
* Destroy a fixture from a body.
|
|
173
163
|
*
|
|
174
164
|
* @param body - body
|
|
175
|
-
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures
|
|
165
|
+
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
176
166
|
*/
|
|
177
167
|
function destroy_fixture(body: Opaque<"b2Body">, fixture_index: number): void;
|
|
178
168
|
/**
|
|
@@ -183,7 +173,7 @@ declare global {
|
|
|
183
173
|
* All shapes attached to a body are implicitly destroyed when the body is destroyed.
|
|
184
174
|
*
|
|
185
175
|
* @param body - body
|
|
186
|
-
* @param shape_index - 1-based shape index from `b2d.body.get_shapes
|
|
176
|
+
* @param shape_index - 1-based shape index from `b2d.body.get_shapes`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
187
177
|
*/
|
|
188
178
|
function destroy_shape(body: Opaque<"b2Body">, shape_index: number): void;
|
|
189
179
|
/**
|
|
@@ -241,18 +231,11 @@ declare global {
|
|
|
241
231
|
* @returns array of contact tables
|
|
242
232
|
*/
|
|
243
233
|
function get_contact_data(body: Opaque<"b2Body">): Record<string | number, unknown>;
|
|
244
|
-
/**
|
|
245
|
-
* Get the list of all contacts attached to this body.
|
|
246
|
-
*
|
|
247
|
-
* @param body - body
|
|
248
|
-
* @returns the first edge
|
|
249
|
-
*/
|
|
250
|
-
function get_contact_list(body: Opaque<"b2Body">): Opaque<"b2ContactEdge">;
|
|
251
234
|
/**
|
|
252
235
|
* Get the fixtures attached to this body.
|
|
253
236
|
*
|
|
254
237
|
* @param body - body
|
|
255
|
-
* @returns array of fixture info tables with `index`, `type`, `sensor`, `density`, `friction`, `restitution`, and `child_count`
|
|
238
|
+
* @returns array of fixture info tables with `index`, `type`, `sensor`, `density`, `friction`, `restitution`, and `child_count`. **⚠️ `index` is 1-based; passed to Defold unchanged.**
|
|
256
239
|
*/
|
|
257
240
|
function get_fixtures(body: Opaque<"b2Body">): { index: number; type: number; sensor: boolean; density: number; friction: number; restitution: number; child_count: number }[];
|
|
258
241
|
/**
|
|
@@ -426,26 +409,12 @@ declare global {
|
|
|
426
409
|
* @returns the body type
|
|
427
410
|
*/
|
|
428
411
|
function get_type(body: Opaque<"b2Body">): (number & { readonly __brand: "b2d.body.B2_DYNAMIC_BODY" }) | (number & { readonly __brand: "b2d.body.B2_KINEMATIC_BODY" }) | (number & { readonly __brand: "b2d.body.B2_STATIC_BODY" });
|
|
429
|
-
/**
|
|
430
|
-
* Get the user data pointer that was provided in the body definition.
|
|
431
|
-
*
|
|
432
|
-
* @param body - body
|
|
433
|
-
* @returns the game object id this body is connected to
|
|
434
|
-
*/
|
|
435
|
-
function get_user_data(body: Opaque<"b2Body">): Hash;
|
|
436
412
|
/**
|
|
437
413
|
* Get the parent world of this body.
|
|
438
414
|
*
|
|
439
415
|
* @param body - body
|
|
440
416
|
*/
|
|
441
417
|
function get_world(body: Opaque<"b2Body">): Opaque<"b2World">;
|
|
442
|
-
/**
|
|
443
|
-
* Get the angle in radians.
|
|
444
|
-
*
|
|
445
|
-
* @param body - body
|
|
446
|
-
* @returns the current world rotation angle in radians.
|
|
447
|
-
*/
|
|
448
|
-
function get_world_center(body: Opaque<"b2Body">): number;
|
|
449
418
|
/**
|
|
450
419
|
* Get the world position of the center of mass.
|
|
451
420
|
*
|
|
@@ -613,14 +582,7 @@ declare global {
|
|
|
613
582
|
* @param body - body
|
|
614
583
|
* @param data - table with `mass`, `center` in local coordinates, and `inertia`.
|
|
615
584
|
*/
|
|
616
|
-
function set_mass_data(body: Opaque<"b2Body">, data: { mass
|
|
617
|
-
/**
|
|
618
|
-
* Set the mass properties to override the mass properties of the shapes.
|
|
619
|
-
*
|
|
620
|
-
* @param body - body
|
|
621
|
-
* @param data - the mass properties.
|
|
622
|
-
*/
|
|
623
|
-
function set_mass_data(body: Opaque<"b2Body">, data: Opaque<"b2MassData">): void;
|
|
585
|
+
function set_mass_data(body: Opaque<"b2Body">, data: { mass: number; center: Vector3; inertia: number }): void;
|
|
624
586
|
/**
|
|
625
587
|
* Set the body name.
|
|
626
588
|
*
|
|
@@ -668,13 +630,6 @@ declare global {
|
|
|
668
630
|
* @param type - the body type
|
|
669
631
|
*/
|
|
670
632
|
function set_type(body: Opaque<"b2Body">, type: (number & { readonly __brand: "b2d.body.B2_DYNAMIC_BODY" }) | (number & { readonly __brand: "b2d.body.B2_KINEMATIC_BODY" }) | (number & { readonly __brand: "b2d.body.B2_STATIC_BODY" })): void;
|
|
671
|
-
/**
|
|
672
|
-
* Set the user data. Use this to store your application specific data.
|
|
673
|
-
*
|
|
674
|
-
* @param body - body
|
|
675
|
-
* @param id - the game object id
|
|
676
|
-
*/
|
|
677
|
-
function set_user_data(body: Opaque<"b2Body">, id: Hash): void;
|
|
678
633
|
}
|
|
679
634
|
}
|
|
680
635
|
|
|
@@ -11,8 +11,8 @@ declare global {
|
|
|
11
11
|
* Get fixture AABB for a child shape.
|
|
12
12
|
*
|
|
13
13
|
* @param body - body
|
|
14
|
-
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures
|
|
15
|
-
* @param child_index - 1-based child shape index
|
|
14
|
+
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
15
|
+
* @param child_index - 1-based child shape index. **⚠️ 1-based; passed to Defold unchanged.**
|
|
16
16
|
* @returns table with `lower` and `upper`
|
|
17
17
|
*/
|
|
18
18
|
function get_aabb(body: Opaque<"b2Body">, fixture_index: number, child_index: number): { lower: Vector3; upper: Vector3 };
|
|
@@ -20,7 +20,7 @@ declare global {
|
|
|
20
20
|
* Get fixture density.
|
|
21
21
|
*
|
|
22
22
|
* @param body - body
|
|
23
|
-
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures
|
|
23
|
+
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
24
24
|
* @returns density in kg/m^2
|
|
25
25
|
*/
|
|
26
26
|
function get_density(body: Opaque<"b2Body">, fixture_index: number): number;
|
|
@@ -28,8 +28,8 @@ declare global {
|
|
|
28
28
|
* Get fixture filter data for a child shape.
|
|
29
29
|
*
|
|
30
30
|
* @param body - body
|
|
31
|
-
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures
|
|
32
|
-
* @param child_index - 1-based child shape index
|
|
31
|
+
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
32
|
+
* @param child_index - 1-based child shape index. **⚠️ 1-based; passed to Defold unchanged.**
|
|
33
33
|
* @returns table with `category_bits`, `mask_bits`, and `group_index`
|
|
34
34
|
*/
|
|
35
35
|
function get_filter_data(body: Opaque<"b2Body">, fixture_index: number, child_index: number): { category_bits: number; mask_bits: number; group_index: number };
|
|
@@ -37,47 +37,47 @@ declare global {
|
|
|
37
37
|
* Get fixture friction.
|
|
38
38
|
*
|
|
39
39
|
* @param body - body
|
|
40
|
-
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures
|
|
40
|
+
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
41
41
|
*/
|
|
42
42
|
function get_friction(body: Opaque<"b2Body">, fixture_index: number): number;
|
|
43
43
|
/**
|
|
44
44
|
* Get fixture restitution.
|
|
45
45
|
*
|
|
46
46
|
* @param body - body
|
|
47
|
-
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures
|
|
47
|
+
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
48
48
|
*/
|
|
49
49
|
function get_restitution(body: Opaque<"b2Body">, fixture_index: number): number;
|
|
50
50
|
/**
|
|
51
51
|
* Get the fixture shape as a functional shape table.
|
|
52
52
|
*
|
|
53
53
|
* @param body - body
|
|
54
|
-
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures
|
|
54
|
+
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
55
55
|
* @returns shape table with numeric `type` from `b2d.shape.SHAPE_TYPE_*`,
|
|
56
56
|
* suitable for reuse in `b2d.body.create_fixture`.
|
|
57
57
|
* Circle shapes use `radius` and `center`, edge shapes use `v1`, `v2`, optional `v0`, `v3`,
|
|
58
58
|
* polygon shapes use `vertices`, and chain shapes use `vertices`, `loop`, optional `prev_vertex`, and `next_vertex`.
|
|
59
59
|
* Any angle values are in radians.
|
|
60
60
|
*/
|
|
61
|
-
function get_shape(body: Opaque<"b2Body">, fixture_index: number): { type: number; radius?: number; center?: Vector3; v0?: Vector3; v1?: Vector3; v2?: Vector3; v3?: Vector3; vertices?: Vector3[]; hx?: number; hy?: number; angle?: number; loop?: boolean; prev_vertex?: Vector3; next_vertex?: Vector3 };
|
|
61
|
+
function get_shape(body: Opaque<"b2Body">, fixture_index: number): { type: number; radius?: number; center?: Vector3; v0?: Vector3; v1?: Vector3; v2?: Vector3; v3?: Vector3; vertices?: Vector3[]; hx?: number; hy?: number; angle?: number; loop?: boolean; prev_vertex?: Vector3; next_vertex?: Vector3; center1?: Vector3; center2?: Vector3 };
|
|
62
62
|
/**
|
|
63
63
|
* Get the fixture type.
|
|
64
64
|
*
|
|
65
65
|
* @param body - body
|
|
66
|
-
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures
|
|
66
|
+
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
67
67
|
*/
|
|
68
68
|
function get_type(body: Opaque<"b2Body">, fixture_index: number): number;
|
|
69
69
|
/**
|
|
70
70
|
* Check if a fixture is a sensor.
|
|
71
71
|
*
|
|
72
72
|
* @param body - body
|
|
73
|
-
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures
|
|
73
|
+
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
74
74
|
*/
|
|
75
75
|
function is_sensor(body: Opaque<"b2Body">, fixture_index: number): boolean;
|
|
76
76
|
/**
|
|
77
77
|
* Refilter a fixture.
|
|
78
78
|
*
|
|
79
79
|
* @param body - body
|
|
80
|
-
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures
|
|
80
|
+
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
81
81
|
* @param touch_proxies - if true, touch broad-phase proxies
|
|
82
82
|
*/
|
|
83
83
|
function refilter(body: Opaque<"b2Body">, fixture_index: number, touch_proxies: boolean): void;
|
|
@@ -85,39 +85,39 @@ declare global {
|
|
|
85
85
|
* Set fixture density.
|
|
86
86
|
*
|
|
87
87
|
* @param body - body
|
|
88
|
-
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures
|
|
88
|
+
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
89
89
|
* @param density - density in kg/m^2
|
|
90
90
|
* @param update_mass - if true, reset body mass data after the change
|
|
91
91
|
*/
|
|
92
|
-
function set_density(body: Opaque<"b2Body">, fixture_index: number, density: number, update_mass
|
|
92
|
+
function set_density(body: Opaque<"b2Body">, fixture_index: number, density: number, update_mass?: boolean): void;
|
|
93
93
|
/**
|
|
94
94
|
* Set fixture filter data for a child shape.
|
|
95
95
|
*
|
|
96
96
|
* @param body - body
|
|
97
|
-
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures
|
|
98
|
-
* @param child_index - 1-based child shape index
|
|
97
|
+
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
98
|
+
* @param child_index - 1-based child shape index. **⚠️ 1-based; passed to Defold unchanged.**
|
|
99
99
|
* @param filter - table with `category_bits`, `mask_bits`, and `group_index`
|
|
100
100
|
*/
|
|
101
|
-
function set_filter_data(body: Opaque<"b2Body">, fixture_index: number, child_index: number, filter: { category_bits
|
|
101
|
+
function set_filter_data(body: Opaque<"b2Body">, fixture_index: number, child_index: number, filter: { category_bits: number; mask_bits: number; group_index: number }): void;
|
|
102
102
|
/**
|
|
103
103
|
* Set fixture friction.
|
|
104
104
|
*
|
|
105
105
|
* @param body - body
|
|
106
|
-
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures
|
|
106
|
+
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
107
107
|
*/
|
|
108
108
|
function set_friction(body: Opaque<"b2Body">, fixture_index: number, friction: number): void;
|
|
109
109
|
/**
|
|
110
110
|
* Set fixture restitution.
|
|
111
111
|
*
|
|
112
112
|
* @param body - body
|
|
113
|
-
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures
|
|
113
|
+
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
114
114
|
*/
|
|
115
115
|
function set_restitution(body: Opaque<"b2Body">, fixture_index: number, restitution: number): void;
|
|
116
116
|
/**
|
|
117
117
|
* Set sensor mode for a fixture.
|
|
118
118
|
*
|
|
119
119
|
* @param body - body
|
|
120
|
-
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures
|
|
120
|
+
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
121
121
|
*/
|
|
122
122
|
function set_sensor(body: Opaque<"b2Body">, fixture_index: number, enabled: boolean): void;
|
|
123
123
|
/**
|
|
@@ -128,7 +128,7 @@ declare global {
|
|
|
128
128
|
* The body mass is not updated unless `update_mass` is true.
|
|
129
129
|
*
|
|
130
130
|
* @param body - body
|
|
131
|
-
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures
|
|
131
|
+
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
132
132
|
* @param shape - shape table with numeric `type` from `b2d.shape.SHAPE_TYPE_*`
|
|
133
133
|
* @param update_mass - if true, reset body mass data after the change
|
|
134
134
|
* @example
|
|
@@ -136,18 +136,18 @@ declare global {
|
|
|
136
136
|
* const body = b2d.get_body("#collisionobject");
|
|
137
137
|
* if (body !== undefined) {
|
|
138
138
|
* const circle = b2d.fixture.get_shape(body, 1);
|
|
139
|
-
*
|
|
140
|
-
* b2d.fixture.set_shape(body, 1,
|
|
139
|
+
* const radius = "radius" in circle ? circle.radius : undefined;
|
|
140
|
+
* b2d.fixture.set_shape(body, 1, { type: b2d.shape.SHAPE_TYPE_CIRCLE, radius: radius ?? 16, center: vmath.vector3(24, 0, 0) }, true);
|
|
141
141
|
* b2d.fixture.set_shape(body, 2, { type: b2d.shape.SHAPE_TYPE_EDGE, v1: vmath.vector3(-32, 0, 0), v2: vmath.vector3(32, 0, 0) });
|
|
142
142
|
* }
|
|
143
143
|
* ```
|
|
144
144
|
*/
|
|
145
|
-
function set_shape(body: Opaque<"b2Body">, fixture_index: number, shape: { type
|
|
145
|
+
function set_shape(body: Opaque<"b2Body">, fixture_index: number, shape: { type: typeof b2d.shape.SHAPE_TYPE_POLYGON | typeof b2d.shape.SHAPE_TYPE_BOX; hx: number; hy: number; center?: Vector3; angle?: number } | { type: typeof b2d.shape.SHAPE_TYPE_POLYGON | typeof b2d.shape.SHAPE_TYPE_BOX; vertices: Vector3[] } | { type: typeof b2d.shape.SHAPE_TYPE_CIRCLE; radius: number; center?: Vector3 } | { type: typeof b2d.shape.SHAPE_TYPE_EDGE; v1: Vector3; v2: Vector3; v0?: Vector3; v3?: Vector3 } | { type: typeof b2d.shape.SHAPE_TYPE_CHAIN; vertices: Vector3[]; loop?: boolean; prev_vertex?: Vector3; next_vertex?: Vector3 }, update_mass?: boolean): void;
|
|
146
146
|
/**
|
|
147
147
|
* Test a point against a fixture.
|
|
148
148
|
*
|
|
149
149
|
* @param body - body
|
|
150
|
-
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures
|
|
150
|
+
* @param fixture_index - 1-based fixture index from `b2d.body.get_fixtures`. **⚠️ 1-based; passed to Defold unchanged.**
|
|
151
151
|
* @param point - point in world coordinates
|
|
152
152
|
*/
|
|
153
153
|
function test_point(body: Opaque<"b2Body">, fixture_index: number, point: Vector3): boolean;
|