@defold-typescript/types 0.40.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 (224) hide show
  1. package/api-availability.json +3963 -772
  2. package/api-migrations.json +27 -0
  3. package/api-signatures.json +18069 -10240
  4. package/api-targets.json +448 -11
  5. package/examples/translations.json +560 -89
  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 +183 -20
  13. package/generated/b2d_world.d.ts +57 -63
  14. package/generated/buffer.d.ts +16 -15
  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 +29 -32
  23. package/generated/collectionfactory.d.ts +15 -18
  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 +235 -182
  37. package/generated/graphics.d.ts +335 -97
  38. package/generated/gui.d.ts +240 -471
  39. package/generated/html5.d.ts +2 -2
  40. package/generated/http.d.ts +28 -35
  41. package/generated/image.d.ts +105 -72
  42. package/generated/json.d.ts +34 -16
  43. package/generated/kinds/gui-script.d.ts +7 -0
  44. package/generated/kinds/render-script.d.ts +7 -0
  45. package/generated/kinds/script.d.ts +7 -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 +40 -39
  50. package/generated/particlefx.d.ts +19 -28
  51. package/generated/physics.d.ts +365 -133
  52. package/generated/profiler.d.ts +13 -23
  53. package/generated/render.d.ts +237 -297
  54. package/generated/resource.d.ts +664 -583
  55. package/generated/socket.d.ts +120 -133
  56. package/generated/sound.d.ts +62 -31
  57. package/generated/sprite.d.ts +31 -17
  58. package/generated/sys.d.ts +234 -190
  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 +1 -3
  63. package/generated/versions/defold-1.12.4/camera.d.ts +21 -21
  64. package/generated/versions/defold-1.12.4/collectionfactory.d.ts +9 -9
  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 +6 -12
  69. package/generated/versions/defold-1.12.4/gui.d.ts +77 -175
  70. package/generated/versions/defold-1.12.4/html5.d.ts +1 -1
  71. package/generated/versions/defold-1.12.4/http.d.ts +0 -13
  72. package/generated/versions/defold-1.12.4/image.d.ts +16 -33
  73. package/generated/versions/defold-1.12.4/index.d.ts +1 -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 +2 -10
  78. package/generated/versions/defold-1.12.4/particlefx.d.ts +2 -5
  79. package/generated/versions/defold-1.12.4/physics.d.ts +69 -67
  80. package/generated/versions/defold-1.12.4/profiler.d.ts +2 -5
  81. package/generated/versions/defold-1.12.4/render.d.ts +99 -128
  82. package/generated/versions/defold-1.12.4/resource.d.ts +120 -148
  83. package/generated/versions/defold-1.12.4/socket.d.ts +34 -60
  84. package/generated/versions/defold-1.12.4/sound.d.ts +8 -8
  85. package/generated/versions/defold-1.12.4/sprite.d.ts +15 -5
  86. package/generated/versions/defold-1.12.4/sys.d.ts +37 -71
  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 +0 -21
  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 +169 -8
  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 +1 -3
  96. package/generated/versions/defold-1.13.0/camera.d.ts +25 -25
  97. package/generated/versions/defold-1.13.0/collectionfactory.d.ts +9 -9
  98. package/generated/versions/defold-1.13.0/collectionproxy.d.ts +2 -2
  99. package/generated/versions/defold-1.13.0/compute.d.ts +0 -69
  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 +6 -12
  105. package/generated/versions/defold-1.13.0/graphics.d.ts +73 -37
  106. package/generated/versions/defold-1.13.0/gui.d.ts +77 -175
  107. package/generated/versions/defold-1.13.0/html5.d.ts +1 -1
  108. package/generated/versions/defold-1.13.0/http.d.ts +0 -13
  109. package/generated/versions/defold-1.13.0/image.d.ts +16 -33
  110. package/generated/versions/defold-1.13.0/index.d.ts +1 -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 +68 -106
  115. package/generated/versions/defold-1.13.0/model.d.ts +2 -10
  116. package/generated/versions/defold-1.13.0/particlefx.d.ts +2 -5
  117. package/generated/versions/defold-1.13.0/physics.d.ts +69 -67
  118. package/generated/versions/defold-1.13.0/profiler.d.ts +2 -5
  119. package/generated/versions/defold-1.13.0/render.d.ts +99 -128
  120. package/generated/versions/defold-1.13.0/resource.d.ts +126 -150
  121. package/generated/versions/defold-1.13.0/socket.d.ts +34 -60
  122. package/generated/versions/defold-1.13.0/sound.d.ts +8 -8
  123. package/generated/versions/defold-1.13.0/sprite.d.ts +15 -5
  124. package/generated/versions/defold-1.13.0/sys.d.ts +37 -71
  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 +0 -21
  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 +1 -21
  182. package/generated/window.d.ts +71 -71
  183. package/identity-vocabulary.json +561 -0
  184. package/index.d.ts +7 -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 +12 -2
  191. package/scripts/import-defold-release.ts +85 -24
  192. package/scripts/prose-constants.ts +77 -16
  193. package/scripts/regen.ts +391 -77
  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/core-types.ts +26 -3
  201. package/src/correction-pins.ts +49 -0
  202. package/src/doc-comment.ts +104 -11
  203. package/src/doc-corrections.ts +108 -0
  204. package/src/editor-vm-globals.d.ts +5 -2
  205. package/src/emit-dts.ts +2064 -281
  206. package/src/emit-messages.ts +52 -0
  207. package/src/example-store.ts +125 -14
  208. package/src/field-correction-coverage.ts +204 -0
  209. package/src/fnv1a.ts +16 -0
  210. package/src/go-overloads.d.ts +25 -6
  211. package/src/index-base-table.ts +145 -0
  212. package/src/index-slot-classifications.ts +588 -0
  213. package/src/index.ts +38 -5
  214. package/src/library-index-slot-classifications.ts +332 -0
  215. package/src/lifecycle.ts +61 -199
  216. package/src/luals-type-expr.ts +354 -0
  217. package/src/msg-overloads.d.ts +0 -1
  218. package/src/param-correction-provenance.ts +8 -11
  219. package/src/render-overloads.d.ts +0 -15
  220. package/src/return-correction-provenance.ts +58 -16
  221. package/src/sys-overloads.d.ts +48 -0
  222. package/src/vmath-overloads.d.ts +27 -1
  223. package/src/window-event-guard.d.ts +6 -9
  224. package/url-parameters.json +1 -2
@@ -7,6 +7,54 @@ declare global {
7
7
  * mixer groups.
8
8
  */
9
9
  namespace sound {
10
+ /**
11
+ * Data passed to the completion callback of sound.play. The callback's
12
+ * `message_id` indicates whether playback finished or was stopped manually.
13
+ */
14
+ interface play_completion {
15
+ /**
16
+ * The sequential play identifier for the playback.
17
+ */
18
+ play_id: number;
19
+ }
20
+ /**
21
+ * Sound playback properties
22
+ */
23
+ interface play_properties {
24
+ /**
25
+ * Delay in seconds before playback starts. The default is 0.
26
+ */
27
+ delay?: number;
28
+ /**
29
+ * Gain from 0 to 1. The default is 1; this combines with the group and master gains.
30
+ */
31
+ gain?: number;
32
+ /**
33
+ * Pan from -1 to 1. The default is 0; this is added to the component pan.
34
+ */
35
+ pan?: number;
36
+ /**
37
+ * Playback speed from 0 to 50. The default is 1; this is multiplied by the component speed.
38
+ */
39
+ speed?: number;
40
+ /**
41
+ * Playback offset in seconds. Mutually exclusive with `start_frame`.
42
+ */
43
+ start_time?: number;
44
+ /**
45
+ * Playback offset in frames or samples. Takes precedence over `start_time`.
46
+ */
47
+ start_frame?: number;
48
+ }
49
+ /**
50
+ * Sound stop properties
51
+ */
52
+ interface stop_properties {
53
+ /**
54
+ * Sequential playback identifier returned by sound.play.
55
+ */
56
+ play_id?: number;
57
+ }
10
58
  /**
11
59
  * Get mixer group gain
12
60
  *
@@ -38,7 +86,7 @@ declare global {
38
86
  * }
39
87
  * ```
40
88
  */
41
- function get_group_name(group: string | Hash): string;
89
+ function get_group_name(group: Hash): string;
42
90
  /**
43
91
  * Get a table of all mixer group names (hashes).
44
92
  *
@@ -108,7 +156,6 @@ declare global {
108
156
  * The best time to call this function is:
109
157
  *
110
158
  * - In the `init` function of your main collection script before any sounds are triggered
111
- *
112
159
  * - In a window listener callback when the window.WINDOW_EVENT_FOCUS_GAINED event is received
113
160
  *
114
161
  * Both those times will give you a correct reading of the state even when your application is
@@ -159,40 +206,26 @@ declare global {
159
206
  * A sound will continue to play even if the game object the sound component belonged to is deleted. You can call `sound.stop()` to stop the sound.
160
207
  *
161
208
  * @param url - the sound that should play
162
- * @param play_properties - optional table with properties:
163
- * `delay`
164
- * number delay in seconds before the sound starts playing, default is 0.
165
- * `gain`
166
- * number sound gain between 0 and 1, default is 1. The final gain of the sound will be a combination of this gain, the group gain and the master gain.
167
- * `pan`
168
- * number sound pan between -1 and 1, default is 0. The final pan of the sound will be an addition of this pan and the sound pan.
169
- * `speed`
170
- * number sound speed where 1.0 is normal speed, 0.5 is half speed and 2.0 is double speed. Valid range is 0.0 to 50.0. The final speed of the sound will be a multiplication of this speed and the sound speed.
171
- * `start_time`
172
- * number start playback offset (seconds). Optional, mutually exclusive with `start_frame`.
173
- * `start_frame`
174
- * number start playback offset (frames/samples). Optional, mutually exclusive with `start_time`. If both are provided, `start_frame` is used.
209
+ * @param play_properties - optional playback properties
175
210
  * @param complete_function - function to call when the sound has finished playing or stopped manually via sound.stop.
176
211
  *
177
212
  * `self`
178
- * object The current object.
213
+ * script_instance The current script instance.
179
214
  * `message_id`
180
215
  * hash The name of the completion message, which can be either `"sound_done"` if the sound has finished playing, or `"sound_stopped"` if it was stopped manually.
181
216
  * `message`
182
- * table Information about the completion:
183
- *
184
- * - number `play_id` - the sequential play identifier that was given by the sound.play function.
185
- *
217
+ * sound.play_completion Information about the completed or stopped playback.
186
218
  * `sender`
187
219
  * url The invoker of the callback: the sound component.
188
220
  * @returns The identifier for the sound voice
189
221
  * @example
222
+ * Assuming the script belongs to an instance with a sound-component with id "sound", this will make the component play its sound after 1 second:
190
223
  * ```ts
191
- * // Assuming the script belongs to an instance with a sound-component with id
192
- * // "sound", this will make the component play its sound after 1 second:
193
224
  * sound.play("#sound", { delay: 1, gain: 0.9, pan: -1.0 });
194
- *
195
- * // Using the callback argument, you can chain several sounds together:
225
+ * ```
226
+ * @example
227
+ * Using the callback argument, you can chain several sounds together:
228
+ * ```ts
196
229
  * function sound_done(self: unknown, message_id: unknown, message: unknown, sender: unknown) {
197
230
  * // play 'boom' sound fx when the countdown has completed
198
231
  * const { play_id } = message as { play_id: number };
@@ -208,7 +241,7 @@ declare global {
208
241
  * });
209
242
  * ```
210
243
  */
211
- function play(url: string | Hash | Url, play_properties?: { delay?: number; gain?: number; pan?: number; speed?: number; start_time?: number; start_frame?: number }, complete_function?: (self: unknown, message_id: unknown, message: unknown, sender: unknown) => void): number;
244
+ function play(url: string | Hash | Url, play_properties?: sound.play_properties, complete_function?: (self: unknown, message_id: Hash, message: sound.play_completion, sender: Url) => void): number;
212
245
  /**
213
246
  * Set gain on all active playing voices of a sound.
214
247
  *
@@ -221,7 +254,7 @@ declare global {
221
254
  * sound.set_gain("#sound", 0.9);
222
255
  * ```
223
256
  */
224
- function set_gain(url: string | Hash | Url, gain?: number): void;
257
+ function set_gain(url: string | Hash | Url, gain: number): void;
225
258
  /**
226
259
  * Set mixer group gain
227
260
  *
@@ -247,14 +280,12 @@ declare global {
247
280
  * sound.set_pan("#sound", 0.5); // pan to the right
248
281
  * ```
249
282
  */
250
- function set_pan(url: string | Hash | Url, pan?: number): void;
283
+ function set_pan(url: string | Hash | Url, pan: number): void;
251
284
  /**
252
285
  * Stop playing all active voices or just one voice if `play_id` provided
253
286
  *
254
287
  * @param url - the sound component that should stop
255
- * @param stop_properties - optional table with properties:
256
- * `play_id`
257
- * number the sequential play identifier that should be stopped (was given by the sound.play() function)
288
+ * @param stop_properties - optional playback to stop
258
289
  * @example
259
290
  * ```ts
260
291
  * // Assuming the script belongs to an instance with a sound-component with id
@@ -264,7 +295,7 @@ declare global {
264
295
  * sound.stop("#sound", { play_id: id });
265
296
  * ```
266
297
  */
267
- function stop(url: string | Hash | Url, stop_properties?: { play_id?: number }): void;
298
+ function stop(url: string | Hash | Url, stop_properties?: sound.stop_properties): void;
268
299
  interface properties {
269
300
  /**
270
301
  * The gain on the sound-component. Note that gain is in linear scale,
@@ -6,6 +6,19 @@ declare global {
6
6
  * Sprite API documentation
7
7
  */
8
8
  namespace sprite {
9
+ /**
10
+ * Sprite flipbook playback properties
11
+ */
12
+ interface play_properties {
13
+ /**
14
+ * Normalized initial animation cursor.
15
+ */
16
+ offset?: number;
17
+ /**
18
+ * Positive animation playback rate.
19
+ */
20
+ playback_rate?: number;
21
+ }
9
22
  /**
10
23
  * Play an animation on a sprite component from its tile set
11
24
  * An optional completion callback function can be provided that will be called when
@@ -17,28 +30,29 @@ declare global {
17
30
  * @param complete_function - function to call when the animation has completed.
18
31
  *
19
32
  * `self`
20
- * object The current object.
33
+ * script_instance The current script instance.
21
34
  * `message_id`
22
35
  * hash The name of the completion message, `"animation_done"`.
23
36
  * `message`
24
- * table Information about the completion:
25
- *
26
- * - number `current_tile` - the current tile of the sprite.
27
- *
28
- * - hash `id` - id of the animation that was completed.
29
- *
37
+ * message.sprite.animation_done Information about the completion.
30
38
  * `sender`
31
39
  * url The invoker of the callback: the sprite component.
32
- * @param play_properties - optional table with properties:
40
+ * @param play_properties - optional playback properties
41
+ * @example
42
+ * The following examples assumes that the model has id "sprite".
43
+ * How to play the "jump" animation followed by the "run" animation:
44
+ * ```ts
45
+ * const url = msg.url("#sprite");
33
46
  *
34
- * `offset`
35
- * number the normalized initial value of the animation cursor when the animation starts playing.
36
- * `playback_rate`
37
- * number the rate with which the animation will be played. Must be positive.
47
+ * function anim_done(self: unknown, message_id: Hash, message: { id: Hash }) {
48
+ * if (message_id === hash("animation_done") && message.id === hash("jump")) {
49
+ * // jump animation done, chain with "run"
50
+ * sprite.play_flipbook(url, "run");
51
+ * }
52
+ * }
53
+ * ```
38
54
  * @example
39
55
  * ```ts
40
- * // Assuming the sprite has id "sprite": play the "jump" animation followed by the
41
- * // "run" animation:
42
56
  * export default defineScript({
43
57
  * init() {
44
58
  * const url = msg.url("#sprite");
@@ -52,7 +66,7 @@ declare global {
52
66
  * });
53
67
  * ```
54
68
  */
55
- function play_flipbook(url: string | Hash | Url, id: string | Hash, complete_function?: (self: unknown, message_id: Hash, message: { current_tile: number; id: Hash }, sender: Url) => void, play_properties?: { offset?: number; playback_rate?: number }): void;
69
+ function play_flipbook(url: string | Hash | Url, id: string | Hash, complete_function?: (self: unknown, message_id: Hash, message: { current_tile: number; id: Hash }, sender: Url) => void, play_properties?: sprite.play_properties): void;
56
70
  /**
57
71
  * Resets a shader constant for a sprite component.
58
72
  * The constant must be defined in the material assigned to the sprite.
@@ -120,7 +134,7 @@ declare global {
120
134
  /**
121
135
  * READ ONLY The current animation id. An animation that plays currently for the sprite. The type of the property is hash.
122
136
  */
123
- animation: Hash;
137
+ readonly animation: Hash;
124
138
  /**
125
139
  * The normalized animation cursor. The type of the property is number.
126
140
  */
@@ -128,7 +142,7 @@ declare global {
128
142
  /**
129
143
  * READ ONLY The frame count of the currently playing animation.
130
144
  */
131
- frame_count: number;
145
+ readonly frame_count: number;
132
146
  /**
133
147
  * The image used when rendering the sprite. The type of the property is hash.
134
148
  */