@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.
Files changed (227) hide show
  1. package/api-availability.json +4024 -716
  2. package/api-migrations.json +27 -0
  3. package/api-signatures.json +18118 -10264
  4. package/api-targets.json +448 -11
  5. package/examples/translations.json +619 -148
  6. package/fixtures/messages_doc.json +96 -0
  7. package/generated/b2d.d.ts +680 -4
  8. package/generated/b2d_body.d.ts +29 -103
  9. package/generated/b2d_chain.d.ts +5 -6
  10. package/generated/b2d_fixture.d.ts +34 -38
  11. package/generated/b2d_joint.d.ts +503 -25
  12. package/generated/b2d_shape.d.ts +199 -14
  13. package/generated/b2d_world.d.ts +57 -63
  14. package/generated/buffer.d.ts +33 -29
  15. package/generated/builtin-messages.d.ts +7 -1
  16. package/generated/bullet3d.d.ts +91 -0
  17. package/generated/bullet3d_collision_object.d.ts +433 -0
  18. package/generated/bullet3d_constraint.d.ts +818 -0
  19. package/generated/bullet3d_rigid_body.d.ts +429 -0
  20. package/generated/bullet3d_shape.d.ts +123 -0
  21. package/generated/bullet3d_world.d.ts +492 -0
  22. package/generated/camera.d.ts +31 -34
  23. package/generated/collectionfactory.d.ts +26 -27
  24. package/generated/collectionproxy.d.ts +22 -6
  25. package/generated/compute.d.ts +12 -238
  26. package/generated/crash.d.ts +24 -10
  27. package/generated/editor-vm/http.d.ts +90 -7
  28. package/generated/editor-vm/image.d.ts +7 -7
  29. package/generated/editor-vm/json.d.ts +11 -0
  30. package/generated/editor-vm/localization.d.ts +7 -7
  31. package/generated/editor-vm/tilemap_tiles.d.ts +56 -10
  32. package/generated/editor-vm/zip.d.ts +28 -0
  33. package/generated/editor.d.ts +1496 -430
  34. package/generated/factory.d.ts +21 -25
  35. package/generated/font.d.ts +64 -22
  36. package/generated/go.d.ts +243 -186
  37. package/generated/graphics.d.ts +374 -84
  38. package/generated/gui.d.ts +282 -492
  39. package/generated/html5.d.ts +5 -3
  40. package/generated/http.d.ts +31 -36
  41. package/generated/image.d.ts +127 -85
  42. package/generated/json.d.ts +34 -16
  43. package/generated/kinds/gui-script.d.ts +8 -0
  44. package/generated/kinds/render-script.d.ts +8 -0
  45. package/generated/kinds/script.d.ts +8 -0
  46. package/generated/label.d.ts +77 -7
  47. package/generated/liveupdate.d.ts +13 -10
  48. package/generated/material.d.ts +312 -360
  49. package/generated/model.d.ts +72 -42
  50. package/generated/particlefx.d.ts +19 -28
  51. package/generated/physics.d.ts +378 -144
  52. package/generated/profiler.d.ts +14 -24
  53. package/generated/render.d.ts +294 -297
  54. package/generated/resource.d.ts +753 -641
  55. package/generated/socket.d.ts +131 -134
  56. package/generated/sound.d.ts +65 -34
  57. package/generated/sprite.d.ts +39 -17
  58. package/generated/sys.d.ts +237 -182
  59. package/generated/tilemap.d.ts +21 -16
  60. package/generated/timer.d.ts +34 -21
  61. package/generated/versions/defold-1.12.4/b2d_body.d.ts +0 -7
  62. package/generated/versions/defold-1.12.4/buffer.d.ts +18 -17
  63. package/generated/versions/defold-1.12.4/camera.d.ts +23 -23
  64. package/generated/versions/defold-1.12.4/collectionfactory.d.ts +21 -19
  65. package/generated/versions/defold-1.12.4/collectionproxy.d.ts +2 -2
  66. package/generated/versions/defold-1.12.4/crash.d.ts +2 -2
  67. package/generated/versions/defold-1.12.4/factory.d.ts +15 -16
  68. package/generated/versions/defold-1.12.4/go.d.ts +15 -17
  69. package/generated/versions/defold-1.12.4/gui.d.ts +111 -193
  70. package/generated/versions/defold-1.12.4/html5.d.ts +4 -2
  71. package/generated/versions/defold-1.12.4/http.d.ts +4 -15
  72. package/generated/versions/defold-1.12.4/image.d.ts +38 -46
  73. package/generated/versions/defold-1.12.4/index.d.ts +2 -0
  74. package/generated/versions/defold-1.12.4/json.d.ts +10 -6
  75. package/generated/versions/defold-1.12.4/label.d.ts +2 -3
  76. package/generated/versions/defold-1.12.4/liveupdate.d.ts +5 -3
  77. package/generated/versions/defold-1.12.4/model.d.ts +34 -13
  78. package/generated/versions/defold-1.12.4/particlefx.d.ts +2 -5
  79. package/generated/versions/defold-1.12.4/physics.d.ts +82 -78
  80. package/generated/versions/defold-1.12.4/profiler.d.ts +3 -6
  81. package/generated/versions/defold-1.12.4/render.d.ts +160 -132
  82. package/generated/versions/defold-1.12.4/resource.d.ts +212 -209
  83. package/generated/versions/defold-1.12.4/socket.d.ts +45 -61
  84. package/generated/versions/defold-1.12.4/sound.d.ts +11 -11
  85. package/generated/versions/defold-1.12.4/sprite.d.ts +24 -6
  86. package/generated/versions/defold-1.12.4/sys.d.ts +45 -68
  87. package/generated/versions/defold-1.12.4/tilemap.d.ts +18 -11
  88. package/generated/versions/defold-1.12.4/timer.d.ts +5 -3
  89. package/generated/versions/defold-1.12.4/vmath.d.ts +5 -26
  90. package/generated/versions/defold-1.12.4/window.d.ts +1 -16
  91. package/generated/versions/defold-1.13.0/b2d_body.d.ts +10 -55
  92. package/generated/versions/defold-1.13.0/b2d_fixture.d.ts +25 -25
  93. package/generated/versions/defold-1.13.0/b2d_shape.d.ts +188 -5
  94. package/generated/versions/defold-1.13.0/b2d_world.d.ts +16 -10
  95. package/generated/versions/defold-1.13.0/buffer.d.ts +18 -17
  96. package/generated/versions/defold-1.13.0/camera.d.ts +27 -27
  97. package/generated/versions/defold-1.13.0/collectionfactory.d.ts +21 -19
  98. package/generated/versions/defold-1.13.0/collectionproxy.d.ts +2 -2
  99. package/generated/versions/defold-1.13.0/compute.d.ts +1 -70
  100. package/generated/versions/defold-1.13.0/crash.d.ts +2 -2
  101. package/generated/versions/defold-1.13.0/editor-vm/tilemap_tiles.d.ts +3 -3
  102. package/generated/versions/defold-1.13.0/editor.d.ts +34 -24
  103. package/generated/versions/defold-1.13.0/factory.d.ts +15 -16
  104. package/generated/versions/defold-1.13.0/go.d.ts +15 -17
  105. package/generated/versions/defold-1.13.0/graphics.d.ts +121 -37
  106. package/generated/versions/defold-1.13.0/gui.d.ts +111 -193
  107. package/generated/versions/defold-1.13.0/html5.d.ts +4 -2
  108. package/generated/versions/defold-1.13.0/http.d.ts +4 -15
  109. package/generated/versions/defold-1.13.0/image.d.ts +38 -46
  110. package/generated/versions/defold-1.13.0/index.d.ts +2 -0
  111. package/generated/versions/defold-1.13.0/json.d.ts +10 -6
  112. package/generated/versions/defold-1.13.0/label.d.ts +2 -3
  113. package/generated/versions/defold-1.13.0/liveupdate.d.ts +7 -5
  114. package/generated/versions/defold-1.13.0/material.d.ts +69 -107
  115. package/generated/versions/defold-1.13.0/model.d.ts +34 -13
  116. package/generated/versions/defold-1.13.0/particlefx.d.ts +2 -5
  117. package/generated/versions/defold-1.13.0/physics.d.ts +82 -78
  118. package/generated/versions/defold-1.13.0/profiler.d.ts +3 -6
  119. package/generated/versions/defold-1.13.0/render.d.ts +160 -132
  120. package/generated/versions/defold-1.13.0/resource.d.ts +217 -210
  121. package/generated/versions/defold-1.13.0/socket.d.ts +45 -61
  122. package/generated/versions/defold-1.13.0/sound.d.ts +11 -11
  123. package/generated/versions/defold-1.13.0/sprite.d.ts +24 -6
  124. package/generated/versions/defold-1.13.0/sys.d.ts +45 -68
  125. package/generated/versions/defold-1.13.0/tilemap.d.ts +18 -11
  126. package/generated/versions/defold-1.13.0/timer.d.ts +5 -3
  127. package/generated/versions/defold-1.13.0/vmath.d.ts +5 -26
  128. package/generated/versions/defold-1.13.0/window.d.ts +1 -16
  129. package/generated/versions/defold-1.13.1/b2d.d.ts +33 -0
  130. package/generated/versions/defold-1.13.1/b2d_body.d.ts +636 -0
  131. package/generated/versions/defold-1.13.1/b2d_chain.d.ts +106 -0
  132. package/generated/versions/defold-1.13.1/b2d_fixture.d.ts +157 -0
  133. package/generated/versions/defold-1.13.1/b2d_joint.d.ts +823 -0
  134. package/generated/versions/defold-1.13.1/b2d_shape.d.ts +400 -0
  135. package/generated/versions/defold-1.13.1/b2d_world.d.ts +320 -0
  136. package/generated/versions/defold-1.13.1/buffer.d.ts +189 -0
  137. package/generated/versions/defold-1.13.1/camera.d.ts +303 -0
  138. package/generated/versions/defold-1.13.1/collectionfactory.d.ts +151 -0
  139. package/generated/versions/defold-1.13.1/collectionproxy.d.ts +93 -0
  140. package/generated/versions/defold-1.13.1/compute.d.ts +237 -0
  141. package/generated/versions/defold-1.13.1/crash.d.ts +143 -0
  142. package/generated/versions/defold-1.13.1/editor-vm/http.d.ts +56 -0
  143. package/generated/versions/defold-1.13.1/editor-vm/image.d.ts +48 -0
  144. package/generated/versions/defold-1.13.1/editor-vm/json.d.ts +10 -0
  145. package/generated/versions/defold-1.13.1/editor-vm/localization.d.ts +42 -0
  146. package/generated/versions/defold-1.13.1/editor-vm/tilemap_tiles.d.ts +80 -0
  147. package/generated/versions/defold-1.13.1/editor-vm/zip.d.ts +10 -0
  148. package/generated/versions/defold-1.13.1/editor-vm/zlib.d.ts +24 -0
  149. package/generated/versions/defold-1.13.1/editor.d.ts +1121 -0
  150. package/generated/versions/defold-1.13.1/factory.d.ts +124 -0
  151. package/generated/versions/defold-1.13.1/font.d.ts +81 -0
  152. package/generated/versions/defold-1.13.1/go.d.ts +1107 -0
  153. package/generated/versions/defold-1.13.1/graphics.d.ts +411 -0
  154. package/generated/versions/defold-1.13.1/gui.d.ts +2353 -0
  155. package/generated/versions/defold-1.13.1/html5.d.ts +55 -0
  156. package/generated/versions/defold-1.13.1/http.d.ts +77 -0
  157. package/generated/versions/defold-1.13.1/image.d.ts +131 -0
  158. package/generated/versions/defold-1.13.1/index.d.ts +57 -0
  159. package/generated/versions/defold-1.13.1/json.d.ts +80 -0
  160. package/generated/versions/defold-1.13.1/kinds/editor-script.d.ts +14 -0
  161. package/generated/versions/defold-1.13.1/label.d.ts +93 -0
  162. package/generated/versions/defold-1.13.1/liveupdate.d.ts +142 -0
  163. package/generated/versions/defold-1.13.1/material.d.ts +408 -0
  164. package/generated/versions/defold-1.13.1/model.d.ts +272 -0
  165. package/generated/versions/defold-1.13.1/msg.d.ts +10 -0
  166. package/generated/versions/defold-1.13.1/particlefx.d.ts +163 -0
  167. package/generated/versions/defold-1.13.1/physics.d.ts +559 -0
  168. package/generated/versions/defold-1.13.1/profiler.d.ts +235 -0
  169. package/generated/versions/defold-1.13.1/render.d.ts +1190 -0
  170. package/generated/versions/defold-1.13.1/resource.d.ts +1523 -0
  171. package/generated/versions/defold-1.13.1/socket.d.ts +784 -0
  172. package/generated/versions/defold-1.13.1/sound.d.ts +292 -0
  173. package/generated/versions/defold-1.13.1/sprite.d.ts +175 -0
  174. package/generated/versions/defold-1.13.1/sys.d.ts +678 -0
  175. package/generated/versions/defold-1.13.1/tilemap.d.ts +208 -0
  176. package/generated/versions/defold-1.13.1/timer.d.ts +125 -0
  177. package/generated/versions/defold-1.13.1/types.d.ts +61 -0
  178. package/generated/versions/defold-1.13.1/vmath.d.ts +774 -0
  179. package/generated/versions/defold-1.13.1/window.d.ts +183 -0
  180. package/generated/versions/defold-1.13.1/zlib.d.ts +41 -0
  181. package/generated/vmath.d.ts +6 -26
  182. package/generated/window.d.ts +71 -71
  183. package/identity-vocabulary.json +561 -0
  184. package/index.d.ts +8 -0
  185. package/package.json +13 -2
  186. package/scripts/example-store-io.ts +12 -1
  187. package/scripts/extension-goldens.ts +1 -0
  188. package/scripts/fidelity-baseline.json +146 -46
  189. package/scripts/generate-api-availability.ts +90 -12
  190. package/scripts/generate-api-signatures.ts +14 -3
  191. package/scripts/import-defold-release.ts +85 -24
  192. package/scripts/prose-constants.ts +157 -0
  193. package/scripts/regen.ts +396 -78
  194. package/scripts/shared-handle-methods.ts +53 -0
  195. package/scripts/signature-store-fs.ts +1 -0
  196. package/scripts/sync-api-docs.ts +16 -5
  197. package/src/api-availability.ts +0 -0
  198. package/src/api-doc.ts +201 -3
  199. package/src/api-identity.ts +252 -0
  200. package/src/component-properties.d.ts +33 -0
  201. package/src/core-types.ts +28 -3
  202. package/src/correction-pins.ts +49 -0
  203. package/src/custom-messages.d.ts +4 -3
  204. package/src/doc-comment.ts +139 -23
  205. package/src/doc-corrections.ts +108 -0
  206. package/src/editor-vm-globals.d.ts +5 -2
  207. package/src/emit-dts.ts +2474 -281
  208. package/src/emit-messages.ts +52 -0
  209. package/src/engine-globals.d.ts +2 -2
  210. package/src/example-store.ts +125 -14
  211. package/src/field-correction-coverage.ts +204 -0
  212. package/src/fnv1a.ts +16 -0
  213. package/src/go-overloads.d.ts +33 -13
  214. package/src/index-base-table.ts +145 -0
  215. package/src/index-slot-classifications.ts +588 -0
  216. package/src/index.ts +39 -2
  217. package/src/library-index-slot-classifications.ts +332 -0
  218. package/src/lifecycle.ts +61 -199
  219. package/src/luals-type-expr.ts +354 -0
  220. package/src/msg-overloads.d.ts +0 -1
  221. package/src/param-correction-provenance.ts +64 -0
  222. package/src/return-correction-provenance.ts +58 -16
  223. package/src/script-api.ts +3 -1
  224. package/src/sys-overloads.d.ts +48 -0
  225. package/src/vmath-overloads.d.ts +27 -1
  226. package/src/window-event-guard.d.ts +6 -9
  227. package/url-parameters.json +1 -2
@@ -72,7 +72,7 @@ declare global {
72
72
  * init(self) {
73
73
  * let gravity = physics.get_gravity();
74
74
  * // Inverse gravity!
75
- * gravity = -gravity;
75
+ * gravity = vmath.vector3(-gravity.x, -gravity.y, -gravity.z);
76
76
  * physics.set_gravity(gravity);
77
77
  * },
78
78
  * });
@@ -85,11 +85,12 @@ declare global {
85
85
  * @param url - the collision object to return the group of.
86
86
  * @returns hash value of the group.
87
87
  *
88
- * `local function check_is_enemy()
89
- * local group = physics.get_group("#collisionobject")
90
- * return group == hash("enemy")
91
- * end
92
- * `
88
+ * ```ts
89
+ * function check_is_enemy(): boolean {
90
+ * const group = physics.get_group("#collisionobject");
91
+ * return group === hash("enemy");
92
+ * }
93
+ * ```
93
94
  */
94
95
  function get_group(url: string | Hash | Url): Hash;
95
96
  /**
@@ -132,14 +133,15 @@ declare global {
132
133
  * @param group - the name of the group to check for.
133
134
  * @returns boolean value of the maskbit. 'true' if present, 'false' otherwise.
134
135
  *
135
- * `local function is_invincible()
136
- * -- check if the collisionobject would collide with the "bullet" group
137
- * local invincible = physics.get_maskbit("#collisionobject", "bullet")
138
- * return invincible
139
- * end
140
- * `
136
+ * ```ts
137
+ * function is_invincible(): boolean {
138
+ * // check if the collisionobject would collide with the "bullet" group
139
+ * const invincible = physics.get_maskbit("#collisionobject", "bullet");
140
+ * return invincible;
141
+ * }
142
+ * ```
141
143
  */
142
- function get_maskbit(url: string | Hash | Url, group: string): boolean;
144
+ function get_maskbit(url: string | Hash | Url, group: string | Hash): boolean;
143
145
  /**
144
146
  * Gets collision shape data from a collision object
145
147
  *
@@ -151,11 +153,8 @@ declare global {
151
153
  * number The shape type. Supported values:
152
154
  *
153
155
  * - `physics.SHAPE_TYPE_SPHERE`
154
- *
155
156
  * - `physics.SHAPE_TYPE_BOX`
156
- *
157
157
  * - `physics.SHAPE_TYPE_CAPSULE` *Only supported for 3D physics*
158
- *
159
158
  * - `physics.SHAPE_TYPE_HULL`
160
159
  *
161
160
  * The returned table contains different fields depending on which type the shape is.
@@ -176,12 +175,13 @@ declare global {
176
175
  * `height`
177
176
  * number the height of the capsule
178
177
  *
179
- * `local function get_shape_meta()
180
- * local sphere = physics.get_shape("#collisionobject", "my_sphere_shape")
181
- * -- returns a table with sphere.diameter
182
- * return sphere
183
- * end
184
- * `
178
+ * ```ts
179
+ * function get_shape_meta() {
180
+ * const sphere = physics.get_shape("#collisionobject", "my_sphere_shape");
181
+ * // returns a table with sphere.diameter
182
+ * return sphere;
183
+ * }
184
+ * ```
185
185
  */
186
186
  function get_shape(url: string | Hash | Url, shape: string | Hash): { type: number; diameter?: number; dimensions?: Vector3; height?: number };
187
187
  /**
@@ -208,8 +208,8 @@ declare global {
208
208
  *
209
209
  * // How to perform a ray cast synchronously:
210
210
  * export default defineScript({
211
- * init(self) {
212
- * self.groups = [hash("world"), hash("enemy")];
211
+ * init() {
212
+ * return { groups: [hash("world"), hash("enemy")] };
213
213
  * },
214
214
  *
215
215
  * update(self, dt) {
@@ -218,7 +218,8 @@ declare global {
218
218
  * const to = vmath.vector3(from.x, from.y - 100, from.z);
219
219
  * const results = physics.raycast(from, to, self.groups, { all: true });
220
220
  * if (results !== undefined) {
221
- * for (const result of results) {
221
+ * // with `all` set, the ray cast returns every hit as a list
222
+ * for (const result of Array.isArray(results) ? results : [results]) {
222
223
  * handle_result(result);
223
224
  * }
224
225
  * }
@@ -236,7 +237,6 @@ declare global {
236
237
  * The actual ray cast will be performed during the physics-update.
237
238
  *
238
239
  * - If an object is hit, the result will be reported via a ray_cast_response message.
239
- *
240
240
  * - If there is no object hit, the result will be reported via a ray_cast_missed message.
241
241
  *
242
242
  * NOTE: Ray casts will ignore collision objects that contain the starting point of the ray. This is a limitation in Box2D.
@@ -249,8 +249,8 @@ declare global {
249
249
  * ```ts
250
250
  * // How to perform a ray cast asynchronously:
251
251
  * export default defineScript({
252
- * init(self) {
253
- * self.my_groups = [hash("my_group1"), hash("my_group2")];
252
+ * init() {
253
+ * return { my_groups: [hash("my_group1"), hash("my_group2")] };
254
254
  * },
255
255
  *
256
256
  * update(self, dt) {
@@ -283,13 +283,9 @@ declare global {
283
283
  * constant The type of event. Can be one of these messages:
284
284
  *
285
285
  * - contact_point_event
286
- *
287
286
  * - collision_event
288
- *
289
287
  * - trigger_event
290
- *
291
288
  * - ray_cast_response
292
- *
293
289
  * - ray_cast_missed
294
290
  *
295
291
  * `data`
@@ -402,12 +398,13 @@ declare global {
402
398
  * @param url - the collision object affected.
403
399
  * @param group - the new group name to be assigned.
404
400
  *
405
- * `local function change_collision_group()
406
- * physics.set_group("#collisionobject", "enemy")
407
- * end
408
- * `
401
+ * ```ts
402
+ * function change_collision_group() {
403
+ * physics.set_group("#collisionobject", "enemy");
404
+ * }
405
+ * ```
409
406
  */
410
- function set_group(url: string | Hash | Url, group: string): void;
407
+ function set_group(url: string | Hash | Url, group: string | Hash): void;
411
408
  /**
412
409
  * Flips the collision shapes horizontally for a collision object
413
410
  *
@@ -416,9 +413,10 @@ declare global {
416
413
  * @example
417
414
  * ```ts
418
415
  * export default defineScript({
419
- * init(self) {
420
- * self.fliph = true; // set on some condition
421
- * physics.set_hflip("#collisionobject", self.fliph);
416
+ * init() {
417
+ * const fliph = true; // set on some condition
418
+ * physics.set_hflip("#collisionobject", fliph);
419
+ * return { fliph };
422
420
  * },
423
421
  * });
424
422
  * ```
@@ -442,13 +440,14 @@ declare global {
442
440
  * @param group - the name of the group (maskbit) to modify in the mask.
443
441
  * @param maskbit - boolean value of the new maskbit. 'true' to enable, 'false' to disable.
444
442
  *
445
- * `local function make_invincible()
446
- * -- no longer collide with the "bullet" group
447
- * physics.set_maskbit("#collisionobject", "bullet", false)
448
- * end
449
- * `
443
+ * ```ts
444
+ * function make_invincible() {
445
+ * // no longer collide with the "bullet" group
446
+ * physics.set_maskbit("#collisionobject", "bullet", false);
447
+ * }
448
+ * ```
450
449
  */
451
- function set_maskbit(url: string | Hash | Url, group: string, maskbit: boolean): void;
450
+ function set_maskbit(url: string | Hash | Url, group: string | Hash, maskbit: boolean): void;
452
451
  /**
453
452
  * Sets collision shape data for a collision object. Please note that updating data in 3D
454
453
  * can be quite costly for box and capsules. Because of the physics engine, the cost
@@ -459,29 +458,30 @@ declare global {
459
458
  * @param table - the shape data to update the shape with.
460
459
  * See physics.get_shape for a detailed description of each field in the data table.
461
460
  *
462
- * `local function set_shape_data()
463
- * -- set capsule shape data
464
- * local data = {}
465
- * data.type = physics.SHAPE_TYPE_CAPSULE
466
- * data.diameter = 10
467
- * data.height = 20
468
- * physics.set_shape("#collisionobject", "my_capsule_shape", data)
469
- *
470
- * -- set sphere shape data
471
- * data = {}
472
- * data.type = physics.SHAPE_TYPE_SPHERE
473
- * data.diameter = 10
474
- * physics.set_shape("#collisionobject", "my_sphere_shape", data)
475
- *
476
- * -- set box shape data
477
- * data = {}
478
- * data.type = physics.SHAPE_TYPE_BOX
479
- * data.dimensions = vmath.vector3(10, 10, 5)
480
- * physics.set_shape("#collisionobject", "my_box_shape", data)
481
- * end
482
- * `
461
+ * ```ts
462
+ * function set_shape_data() {
463
+ * // set capsule shape data
464
+ * physics.set_shape("#collisionobject", "my_capsule_shape", {
465
+ * type: physics.SHAPE_TYPE_CAPSULE,
466
+ * diameter: 10,
467
+ * height: 20,
468
+ * });
469
+ *
470
+ * // set sphere shape data
471
+ * physics.set_shape("#collisionobject", "my_sphere_shape", {
472
+ * type: physics.SHAPE_TYPE_SPHERE,
473
+ * diameter: 10,
474
+ * });
475
+ *
476
+ * // set box shape data
477
+ * physics.set_shape("#collisionobject", "my_box_shape", {
478
+ * type: physics.SHAPE_TYPE_BOX,
479
+ * dimensions: vmath.vector3(10, 10, 5),
480
+ * });
481
+ * }
482
+ * ```
483
483
  */
484
- function set_shape(url: string | Hash | Url, shape: string | Hash, table: { type?: number; diameter?: number; dimensions?: Vector3; height?: number }): void;
484
+ function set_shape(url: string | Hash | Url, shape: string | Hash, table: { type: typeof physics.SHAPE_TYPE_SPHERE; diameter: number } | { type: typeof physics.SHAPE_TYPE_BOX; dimensions: Vector3 } | { type: typeof physics.SHAPE_TYPE_CAPSULE; diameter: number; height: number }): void;
485
485
  /**
486
486
  * Flips the collision shapes vertically for a collision object
487
487
  *
@@ -490,9 +490,10 @@ declare global {
490
490
  * @example
491
491
  * ```ts
492
492
  * export default defineScript({
493
- * init(self) {
494
- * self.flipv = true; // set on some condition
495
- * physics.set_vflip("#collisionobject", self.flipv);
493
+ * init() {
494
+ * const flipv = true; // set on some condition
495
+ * physics.set_vflip("#collisionobject", flipv);
496
+ * return { flipv };
496
497
  * },
497
498
  * });
498
499
  * ```
@@ -516,12 +517,15 @@ declare global {
516
517
  *
517
518
  * @param url - the collision object to wake.
518
519
  *
519
- * `function on_input(self, action_id, action)
520
- * if action_id == hash("test") and action.pressed then
521
- * physics.wakeup("#collisionobject")
522
- * end
523
- * end
524
- * `
520
+ * ```ts
521
+ * export default defineScript({
522
+ * on_input(self, action_id, action) {
523
+ * if (action_id === hash("test") && action.pressed) {
524
+ * physics.wakeup("#collisionobject");
525
+ * }
526
+ * },
527
+ * });
528
+ * ```
525
529
  */
526
530
  function wakeup(url: string | Hash | Url): void;
527
531
  interface properties {
@@ -549,7 +553,7 @@ declare global {
549
553
  /**
550
554
  * READ ONLY Returns the defined physical mass of the collision object component as a number.
551
555
  */
552
- mass: number;
556
+ readonly mass: number;
553
557
  }
554
558
  }
555
559
  }
@@ -129,7 +129,7 @@ declare global {
129
129
  * ```ts
130
130
  * // Show the last recorded frame
131
131
  * const recorded_frame_count = profiler.recorded_frame_count();
132
- * profiler.view_recorded_frame(recorded_frame_count);
132
+ * profiler.view_recorded_frame({ frame: recorded_frame_count });
133
133
  * ```
134
134
  */
135
135
  function recorded_frame_count(): number;
@@ -160,11 +160,8 @@ declare global {
160
160
  * @param mode - the mode to set the ui profiler in
161
161
  *
162
162
  * - `profiler.MODE_RUN` This is default mode that continously shows the last frame
163
- *
164
163
  * - `profiler.MODE_PAUSE` Pauses on the currently displayed frame
165
- *
166
164
  * - `profiler.MODE_SHOW_PEAK_FRAME` Pauses on the currently displayed frame but shows a new frame if that frame is slower
167
- *
168
165
  * - `profiler.MODE_RECORD` Records all incoming frames to the recording buffer
169
166
  *
170
167
  * To stop recording, switch to a different mode such as `MODE_PAUSE` or `MODE_RUN`.
@@ -188,7 +185,6 @@ declare global {
188
185
  * @param mode - the view mode to set the ui profiler in
189
186
  *
190
187
  * - `profiler.VIEW_MODE_FULL` The default mode which displays all the ui profiler details
191
- *
192
188
  * - `profiler.VIEW_MODE_MINIMIZED` Minimized mode which only shows the top header (fps counters and ui profiler mode)
193
189
  * @example
194
190
  * ```ts
@@ -224,8 +220,9 @@ declare global {
224
220
  * @param frame_index - a table where you specify one of the following parameters:
225
221
  *
226
222
  * - `distance` The offset from the currently displayed frame (this is truncated between zero and the number of recorded frames)
227
- *
228
223
  * - `frame` The frame index in the recording buffer (1 is first recorded frame)
224
+ *
225
+ * **⚠️ `frame` is 1-based; passed to Defold unchanged.**
229
226
  * @example
230
227
  * ```ts
231
228
  * // Go back one frame