@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
@@ -70,7 +70,7 @@ declare global {
70
70
  * init(self) {
71
71
  * let gravity = physics.get_gravity();
72
72
  * // Inverse gravity!
73
- * gravity = -gravity;
73
+ * gravity = vmath.vector3(-gravity.x, -gravity.y, -gravity.z);
74
74
  * physics.set_gravity(gravity);
75
75
  * },
76
76
  * });
@@ -83,11 +83,12 @@ declare global {
83
83
  * @param url - the collision object to return the group of.
84
84
  * @returns hash value of the group.
85
85
  *
86
- * `local function check_is_enemy()
87
- * local group = physics.get_group("#collisionobject")
88
- * return group == hash("enemy")
89
- * end
90
- * `
86
+ * ```ts
87
+ * function check_is_enemy(): boolean {
88
+ * const group = physics.get_group("#collisionobject");
89
+ * return group === hash("enemy");
90
+ * }
91
+ * ```
91
92
  */
92
93
  function get_group(url: string | Hash | Url): Hash;
93
94
  /**
@@ -130,14 +131,15 @@ declare global {
130
131
  * @param group - the name of the group to check for.
131
132
  * @returns boolean value of the maskbit. 'true' if present, 'false' otherwise.
132
133
  *
133
- * `local function is_invincible()
134
- * -- check if the collisionobject would collide with the "bullet" group
135
- * local invincible = physics.get_maskbit("#collisionobject", "bullet")
136
- * return invincible
137
- * end
138
- * `
134
+ * ```ts
135
+ * function is_invincible(): boolean {
136
+ * // check if the collisionobject would collide with the "bullet" group
137
+ * const invincible = physics.get_maskbit("#collisionobject", "bullet");
138
+ * return invincible;
139
+ * }
140
+ * ```
139
141
  */
140
- function get_maskbit(url: string | Hash | Url, group: string): boolean;
142
+ function get_maskbit(url: string | Hash | Url, group: string | Hash): boolean;
141
143
  /**
142
144
  * Gets collision shape data from a collision object
143
145
  *
@@ -149,11 +151,8 @@ declare global {
149
151
  * number The shape type. Supported values:
150
152
  *
151
153
  * - `physics.SHAPE_TYPE_SPHERE`
152
- *
153
154
  * - `physics.SHAPE_TYPE_BOX`
154
- *
155
155
  * - `physics.SHAPE_TYPE_CAPSULE` *Only supported for 3D physics*
156
- *
157
156
  * - `physics.SHAPE_TYPE_HULL`
158
157
  *
159
158
  * The returned table contains different fields depending on which type the shape is.
@@ -174,12 +173,13 @@ declare global {
174
173
  * `height`
175
174
  * number the height of the capsule
176
175
  *
177
- * `local function get_shape_meta()
178
- * local sphere = physics.get_shape("#collisionobject", "my_sphere_shape")
179
- * -- returns a table with sphere.diameter
180
- * return sphere
181
- * end
182
- * `
176
+ * ```ts
177
+ * function get_shape_meta() {
178
+ * const sphere = physics.get_shape("#collisionobject", "my_sphere_shape");
179
+ * // returns a table with sphere.diameter
180
+ * return sphere;
181
+ * }
182
+ * ```
183
183
  */
184
184
  function get_shape(url: string | Hash | Url, shape: string | Hash): { type: number; diameter?: number; dimensions?: Vector3; height?: number };
185
185
  /**
@@ -206,8 +206,8 @@ declare global {
206
206
  *
207
207
  * // How to perform a ray cast synchronously:
208
208
  * export default defineScript({
209
- * init(self) {
210
- * self.groups = [hash("world"), hash("enemy")];
209
+ * init() {
210
+ * return { groups: [hash("world"), hash("enemy")] };
211
211
  * },
212
212
  *
213
213
  * update(self, dt) {
@@ -216,7 +216,8 @@ declare global {
216
216
  * const to = vmath.vector3(from.x, from.y - 100, from.z);
217
217
  * const results = physics.raycast(from, to, self.groups, { all: true });
218
218
  * if (results !== undefined) {
219
- * for (const result of results) {
219
+ * // with `all` set, the ray cast returns every hit as a list
220
+ * for (const result of Array.isArray(results) ? results : [results]) {
220
221
  * handle_result(result);
221
222
  * }
222
223
  * }
@@ -234,7 +235,6 @@ declare global {
234
235
  * The actual ray cast will be performed during the physics-update.
235
236
  *
236
237
  * - If an object is hit, the result will be reported via a ray_cast_response message.
237
- *
238
238
  * - If there is no object hit, the result will be reported via a ray_cast_missed message.
239
239
  *
240
240
  * NOTE: Ray casts will ignore collision objects that contain the starting point of the ray. This is a limitation in Box2D.
@@ -247,8 +247,8 @@ declare global {
247
247
  * ```ts
248
248
  * // How to perform a ray cast asynchronously:
249
249
  * export default defineScript({
250
- * init(self) {
251
- * self.my_groups = [hash("my_group1"), hash("my_group2")];
250
+ * init() {
251
+ * return { my_groups: [hash("my_group1"), hash("my_group2")] };
252
252
  * },
253
253
  *
254
254
  * update(self, dt) {
@@ -281,13 +281,9 @@ declare global {
281
281
  * constant The type of event. Can be one of these messages:
282
282
  *
283
283
  * - contact_point_event
284
- *
285
284
  * - collision_event
286
- *
287
285
  * - trigger_event
288
- *
289
286
  * - ray_cast_response
290
- *
291
287
  * - ray_cast_missed
292
288
  *
293
289
  * `data`
@@ -400,12 +396,13 @@ declare global {
400
396
  * @param url - the collision object affected.
401
397
  * @param group - the new group name to be assigned.
402
398
  *
403
- * `local function change_collision_group()
404
- * physics.set_group("#collisionobject", "enemy")
405
- * end
406
- * `
399
+ * ```ts
400
+ * function change_collision_group() {
401
+ * physics.set_group("#collisionobject", "enemy");
402
+ * }
403
+ * ```
407
404
  */
408
- function set_group(url: string | Hash | Url, group: string): void;
405
+ function set_group(url: string | Hash | Url, group: string | Hash): void;
409
406
  /**
410
407
  * Flips the collision shapes horizontally for a collision object
411
408
  *
@@ -414,9 +411,10 @@ declare global {
414
411
  * @example
415
412
  * ```ts
416
413
  * export default defineScript({
417
- * init(self) {
418
- * self.fliph = true; // set on some condition
419
- * physics.set_hflip("#collisionobject", self.fliph);
414
+ * init() {
415
+ * const fliph = true; // set on some condition
416
+ * physics.set_hflip("#collisionobject", fliph);
417
+ * return { fliph };
420
418
  * },
421
419
  * });
422
420
  * ```
@@ -440,13 +438,14 @@ declare global {
440
438
  * @param group - the name of the group (maskbit) to modify in the mask.
441
439
  * @param maskbit - boolean value of the new maskbit. 'true' to enable, 'false' to disable.
442
440
  *
443
- * `local function make_invincible()
444
- * -- no longer collide with the "bullet" group
445
- * physics.set_maskbit("#collisionobject", "bullet", false)
446
- * end
447
- * `
441
+ * ```ts
442
+ * function make_invincible() {
443
+ * // no longer collide with the "bullet" group
444
+ * physics.set_maskbit("#collisionobject", "bullet", false);
445
+ * }
446
+ * ```
448
447
  */
449
- function set_maskbit(url: string | Hash | Url, group: string, maskbit: boolean): void;
448
+ function set_maskbit(url: string | Hash | Url, group: string | Hash, maskbit: boolean): void;
450
449
  /**
451
450
  * Sets collision shape data for a collision object. Please note that updating data in 3D
452
451
  * can be quite costly for box and capsules. Because of the physics engine, the cost
@@ -457,29 +456,30 @@ declare global {
457
456
  * @param table - the shape data to update the shape with.
458
457
  * See physics.get_shape for a detailed description of each field in the data table.
459
458
  *
460
- * `local function set_shape_data()
461
- * -- set capsule shape data
462
- * local data = {}
463
- * data.type = physics.SHAPE_TYPE_CAPSULE
464
- * data.diameter = 10
465
- * data.height = 20
466
- * physics.set_shape("#collisionobject", "my_capsule_shape", data)
467
- *
468
- * -- set sphere shape data
469
- * data = {}
470
- * data.type = physics.SHAPE_TYPE_SPHERE
471
- * data.diameter = 10
472
- * physics.set_shape("#collisionobject", "my_sphere_shape", data)
473
- *
474
- * -- set box shape data
475
- * data = {}
476
- * data.type = physics.SHAPE_TYPE_BOX
477
- * data.dimensions = vmath.vector3(10, 10, 5)
478
- * physics.set_shape("#collisionobject", "my_box_shape", data)
479
- * end
480
- * `
459
+ * ```ts
460
+ * function set_shape_data() {
461
+ * // set capsule shape data
462
+ * physics.set_shape("#collisionobject", "my_capsule_shape", {
463
+ * type: physics.SHAPE_TYPE_CAPSULE,
464
+ * diameter: 10,
465
+ * height: 20,
466
+ * });
467
+ *
468
+ * // set sphere shape data
469
+ * physics.set_shape("#collisionobject", "my_sphere_shape", {
470
+ * type: physics.SHAPE_TYPE_SPHERE,
471
+ * diameter: 10,
472
+ * });
473
+ *
474
+ * // set box shape data
475
+ * physics.set_shape("#collisionobject", "my_box_shape", {
476
+ * type: physics.SHAPE_TYPE_BOX,
477
+ * dimensions: vmath.vector3(10, 10, 5),
478
+ * });
479
+ * }
480
+ * ```
481
481
  */
482
- function set_shape(url: string | Hash | Url, shape: string | Hash, table: { type?: number; diameter?: number; dimensions?: Vector3; height?: number }): void;
482
+ 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;
483
483
  /**
484
484
  * Flips the collision shapes vertically for a collision object
485
485
  *
@@ -488,9 +488,10 @@ declare global {
488
488
  * @example
489
489
  * ```ts
490
490
  * export default defineScript({
491
- * init(self) {
492
- * self.flipv = true; // set on some condition
493
- * physics.set_vflip("#collisionobject", self.flipv);
491
+ * init() {
492
+ * const flipv = true; // set on some condition
493
+ * physics.set_vflip("#collisionobject", flipv);
494
+ * return { flipv };
494
495
  * },
495
496
  * });
496
497
  * ```
@@ -514,12 +515,15 @@ declare global {
514
515
  *
515
516
  * @param url - the collision object to wake.
516
517
  *
517
- * `function on_input(self, action_id, action)
518
- * if action_id == hash("test") and action.pressed then
519
- * physics.wakeup("#collisionobject")
520
- * end
521
- * end
522
- * `
518
+ * ```ts
519
+ * export default defineScript({
520
+ * on_input(self, action_id, action) {
521
+ * if (action_id === hash("test") && action.pressed) {
522
+ * physics.wakeup("#collisionobject");
523
+ * }
524
+ * },
525
+ * });
526
+ * ```
523
527
  */
524
528
  function wakeup(url: string | Hash | Url): void;
525
529
  interface properties {
@@ -547,7 +551,7 @@ declare global {
547
551
  /**
548
552
  * READ ONLY Returns the defined physical mass of the collision object component as a number.
549
553
  */
550
- mass: number;
554
+ readonly mass: number;
551
555
  }
552
556
  }
553
557
  }
@@ -128,7 +128,7 @@ declare global {
128
128
  * ```ts
129
129
  * // Show the last recorded frame
130
130
  * const recorded_frame_count = profiler.recorded_frame_count();
131
- * profiler.view_recorded_frame(recorded_frame_count);
131
+ * profiler.view_recorded_frame({ frame: recorded_frame_count });
132
132
  * ```
133
133
  */
134
134
  function recorded_frame_count(): number;
@@ -159,11 +159,8 @@ declare global {
159
159
  * @param mode - the mode to set the ui profiler in
160
160
  *
161
161
  * - `profiler.MODE_RUN` This is default mode that continously shows the last frame
162
- *
163
162
  * - `profiler.MODE_PAUSE` Pauses on the currently displayed frame
164
- *
165
163
  * - `profiler.MODE_SHOW_PEAK_FRAME` Pauses on the currently displayed frame but shows a new frame if that frame is slower
166
- *
167
164
  * - `profiler.MODE_RECORD` Records all incoming frames to the recording buffer
168
165
  *
169
166
  * To stop recording, switch to a different mode such as `MODE_PAUSE` or `MODE_RUN`.
@@ -187,7 +184,6 @@ declare global {
187
184
  * @param mode - the view mode to set the ui profiler in
188
185
  *
189
186
  * - `profiler.VIEW_MODE_FULL` The default mode which displays all the ui profiler details
190
- *
191
187
  * - `profiler.VIEW_MODE_MINIMIZED` Minimized mode which only shows the top header (fps counters and ui profiler mode)
192
188
  * @example
193
189
  * ```ts
@@ -223,8 +219,9 @@ declare global {
223
219
  * @param frame_index - a table where you specify one of the following parameters:
224
220
  *
225
221
  * - `distance` The offset from the currently displayed frame (this is truncated between zero and the number of recorded frames)
226
- *
227
222
  * - `frame` The frame index in the recording buffer (1 is first recorded frame)
223
+ *
224
+ * **⚠️ `frame` is 1-based; passed to Defold unchanged.**
228
225
  * @example
229
226
  * ```ts
230
227
  * // Go back one frame