@drincs/pixi-vn 0.6.0 → 0.6.1

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 (373) hide show
  1. package/dist/{TickerBase-RQDWNI4K.d.ts → TickerBase-BAUiHet_.d.ts} +18 -13
  2. package/dist/{TickerBase-B5CQCJs8.d.mts → TickerBase-BctFf13y.d.mts} +18 -13
  3. package/dist/classes/CanvasEvent.d.mts +1 -1
  4. package/dist/classes/CanvasEvent.d.ts +1 -1
  5. package/dist/classes/CanvasEvent.js.map +1 -1
  6. package/dist/classes/CanvasEvent.mjs.map +1 -1
  7. package/dist/classes/CharacterBaseModel.d.mts +2 -26
  8. package/dist/classes/CharacterBaseModel.d.ts +2 -26
  9. package/dist/classes/CharacterBaseModel.js +464 -189
  10. package/dist/classes/CharacterBaseModel.js.map +1 -1
  11. package/dist/classes/CharacterBaseModel.mjs +460 -189
  12. package/dist/classes/CharacterBaseModel.mjs.map +1 -1
  13. package/dist/classes/ChoiceMenuOption.d.mts +27 -17
  14. package/dist/classes/ChoiceMenuOption.d.ts +27 -17
  15. package/dist/classes/ChoiceMenuOption.js +467 -190
  16. package/dist/classes/ChoiceMenuOption.js.map +1 -1
  17. package/dist/classes/ChoiceMenuOption.mjs +463 -190
  18. package/dist/classes/ChoiceMenuOption.mjs.map +1 -1
  19. package/dist/classes/CloseLabel.d.mts +1 -1
  20. package/dist/classes/CloseLabel.d.ts +1 -1
  21. package/dist/classes/CloseLabel.js.map +1 -1
  22. package/dist/classes/CloseLabel.mjs.map +1 -1
  23. package/dist/classes/DialogueBaseModel.d.mts +1 -0
  24. package/dist/classes/DialogueBaseModel.d.ts +1 -0
  25. package/dist/classes/StoredClassModel.d.mts +2 -2
  26. package/dist/classes/StoredClassModel.d.ts +2 -2
  27. package/dist/classes/StoredClassModel.js +464 -189
  28. package/dist/classes/StoredClassModel.js.map +1 -1
  29. package/dist/classes/StoredClassModel.mjs +460 -189
  30. package/dist/classes/StoredClassModel.mjs.map +1 -1
  31. package/dist/classes/canvas/CanvasContainer.js.map +1 -1
  32. package/dist/classes/canvas/CanvasContainer.mjs.map +1 -1
  33. package/dist/classes/canvas/CanvasImage.d.mts +2 -2
  34. package/dist/classes/canvas/CanvasImage.d.ts +2 -2
  35. package/dist/classes/canvas/CanvasImage.js.map +1 -1
  36. package/dist/classes/canvas/CanvasImage.mjs.map +1 -1
  37. package/dist/classes/canvas/CanvasSprite.d.mts +1 -1
  38. package/dist/classes/canvas/CanvasSprite.d.ts +1 -1
  39. package/dist/classes/canvas/CanvasSprite.js.map +1 -1
  40. package/dist/classes/canvas/CanvasSprite.mjs.map +1 -1
  41. package/dist/classes/canvas/CanvasText.d.mts +2 -2
  42. package/dist/classes/canvas/CanvasText.d.ts +2 -2
  43. package/dist/classes/canvas/CanvasText.js.map +1 -1
  44. package/dist/classes/canvas/CanvasText.mjs.map +1 -1
  45. package/dist/classes/canvas/index.js.map +1 -1
  46. package/dist/classes/canvas/index.mjs.map +1 -1
  47. package/dist/classes/index.d.mts +5 -4
  48. package/dist/classes/index.d.ts +5 -4
  49. package/dist/classes/index.js +467 -190
  50. package/dist/classes/index.js.map +1 -1
  51. package/dist/classes/index.mjs +463 -190
  52. package/dist/classes/index.mjs.map +1 -1
  53. package/dist/classes/ticker/FadeAlphaTicker.d.mts +26 -0
  54. package/dist/classes/ticker/FadeAlphaTicker.d.ts +26 -0
  55. package/dist/classes/ticker/{TickerFadeAlpha.js → FadeAlphaTicker.js} +469 -196
  56. package/dist/classes/ticker/FadeAlphaTicker.js.map +1 -0
  57. package/dist/classes/ticker/{TickerRotate.mjs → FadeAlphaTicker.mjs} +491 -222
  58. package/dist/classes/ticker/FadeAlphaTicker.mjs.map +1 -0
  59. package/dist/classes/ticker/MoveTicker.d.mts +24 -0
  60. package/dist/classes/ticker/MoveTicker.d.ts +24 -0
  61. package/dist/classes/ticker/MoveTicker.js +1605 -0
  62. package/dist/classes/ticker/MoveTicker.js.map +1 -0
  63. package/dist/classes/ticker/{TickerMove.mjs → MoveTicker.mjs} +463 -192
  64. package/dist/classes/ticker/MoveTicker.mjs.map +1 -0
  65. package/dist/classes/ticker/RotateTicker.d.mts +26 -0
  66. package/dist/classes/ticker/RotateTicker.d.ts +26 -0
  67. package/dist/classes/ticker/{TickerRotate.js → RotateTicker.js} +464 -189
  68. package/dist/classes/ticker/RotateTicker.js.map +1 -0
  69. package/dist/classes/ticker/RotateTicker.mjs +1599 -0
  70. package/dist/classes/ticker/RotateTicker.mjs.map +1 -0
  71. package/dist/classes/ticker/TickerBase.d.mts +1 -1
  72. package/dist/classes/ticker/TickerBase.d.ts +1 -1
  73. package/dist/classes/ticker/TickerBase.js +7 -6
  74. package/dist/classes/ticker/TickerBase.js.map +1 -1
  75. package/dist/classes/ticker/TickerBase.mjs +7 -6
  76. package/dist/classes/ticker/TickerBase.mjs.map +1 -1
  77. package/dist/classes/ticker/ZoomTicker.d.mts +25 -0
  78. package/dist/classes/ticker/ZoomTicker.d.ts +25 -0
  79. package/dist/classes/ticker/{TickerMove.js → ZoomTicker.js} +474 -199
  80. package/dist/classes/ticker/ZoomTicker.js.map +1 -0
  81. package/dist/classes/ticker/{TickerFadeAlpha.mjs → ZoomTicker.mjs} +472 -201
  82. package/dist/classes/ticker/ZoomTicker.mjs.map +1 -0
  83. package/dist/classes/ticker/index.d.mts +10 -8
  84. package/dist/classes/ticker/index.d.ts +10 -8
  85. package/dist/classes/ticker/index.js +479 -206
  86. package/dist/classes/ticker/index.js.map +1 -1
  87. package/dist/classes/ticker/index.mjs +476 -207
  88. package/dist/classes/ticker/index.mjs.map +1 -1
  89. package/dist/constants.d.mts +12 -2
  90. package/dist/constants.d.ts +12 -2
  91. package/dist/constants.js +10 -1
  92. package/dist/constants.js.map +1 -1
  93. package/dist/constants.mjs +9 -2
  94. package/dist/constants.mjs.map +1 -1
  95. package/dist/decorators/CanvasElementDecorator.js.map +1 -1
  96. package/dist/decorators/CanvasElementDecorator.mjs.map +1 -1
  97. package/dist/decorators/CharacterDecorator.d.mts +1 -0
  98. package/dist/decorators/CharacterDecorator.d.ts +1 -0
  99. package/dist/decorators/CharacterDecorator.js +1 -1
  100. package/dist/decorators/CharacterDecorator.js.map +1 -1
  101. package/dist/decorators/CharacterDecorator.mjs +1 -1
  102. package/dist/decorators/CharacterDecorator.mjs.map +1 -1
  103. package/dist/decorators/EventDecorator.js +1 -1
  104. package/dist/decorators/EventDecorator.js.map +1 -1
  105. package/dist/decorators/EventDecorator.mjs +1 -1
  106. package/dist/decorators/EventDecorator.mjs.map +1 -1
  107. package/dist/decorators/LabelDecorator.d.mts +4 -3
  108. package/dist/decorators/LabelDecorator.d.ts +4 -3
  109. package/dist/decorators/LabelDecorator.js +465 -190
  110. package/dist/decorators/LabelDecorator.js.map +1 -1
  111. package/dist/decorators/LabelDecorator.mjs +461 -190
  112. package/dist/decorators/LabelDecorator.mjs.map +1 -1
  113. package/dist/decorators/TickerDecorator.d.mts +6 -3
  114. package/dist/decorators/TickerDecorator.d.ts +6 -3
  115. package/dist/decorators/TickerDecorator.js +1 -1
  116. package/dist/decorators/TickerDecorator.js.map +1 -1
  117. package/dist/decorators/TickerDecorator.mjs +1 -1
  118. package/dist/decorators/TickerDecorator.mjs.map +1 -1
  119. package/dist/decorators/index.d.mts +4 -3
  120. package/dist/decorators/index.d.ts +4 -3
  121. package/dist/decorators/index.js +467 -192
  122. package/dist/decorators/index.js.map +1 -1
  123. package/dist/decorators/index.mjs +463 -192
  124. package/dist/decorators/index.mjs.map +1 -1
  125. package/dist/functions/CanvasUtility.js.map +1 -1
  126. package/dist/functions/CanvasUtility.mjs.map +1 -1
  127. package/dist/functions/DialogueUtility.d.mts +6 -4
  128. package/dist/functions/DialogueUtility.d.ts +6 -4
  129. package/dist/functions/DialogueUtility.js +506 -213
  130. package/dist/functions/DialogueUtility.js.map +1 -1
  131. package/dist/functions/DialogueUtility.mjs +506 -213
  132. package/dist/functions/DialogueUtility.mjs.map +1 -1
  133. package/dist/functions/FlagsUtility.js +464 -189
  134. package/dist/functions/FlagsUtility.js.map +1 -1
  135. package/dist/functions/FlagsUtility.mjs +460 -189
  136. package/dist/functions/FlagsUtility.mjs.map +1 -1
  137. package/dist/functions/GameUtility.js +464 -189
  138. package/dist/functions/GameUtility.js.map +1 -1
  139. package/dist/functions/GameUtility.mjs +460 -189
  140. package/dist/functions/GameUtility.mjs.map +1 -1
  141. package/dist/functions/ImageUtility.d.mts +47 -7
  142. package/dist/functions/ImageUtility.d.ts +47 -7
  143. package/dist/functions/ImageUtility.js +554 -215
  144. package/dist/functions/ImageUtility.js.map +1 -1
  145. package/dist/functions/ImageUtility.mjs +546 -215
  146. package/dist/functions/ImageUtility.mjs.map +1 -1
  147. package/dist/functions/SavesUtility.d.mts +9 -5
  148. package/dist/functions/SavesUtility.d.ts +9 -5
  149. package/dist/functions/SavesUtility.js +485 -196
  150. package/dist/functions/SavesUtility.js.map +1 -1
  151. package/dist/functions/SavesUtility.mjs +485 -196
  152. package/dist/functions/SavesUtility.mjs.map +1 -1
  153. package/dist/functions/TickerUtility.d.mts +1 -1
  154. package/dist/functions/TickerUtility.d.ts +1 -1
  155. package/dist/functions/TickerUtility.js +32 -18
  156. package/dist/functions/TickerUtility.js.map +1 -1
  157. package/dist/functions/TickerUtility.mjs +32 -18
  158. package/dist/functions/TickerUtility.mjs.map +1 -1
  159. package/dist/functions/index.d.mts +15 -8
  160. package/dist/functions/index.d.ts +15 -8
  161. package/dist/functions/index.js +570 -213
  162. package/dist/functions/index.js.map +1 -1
  163. package/dist/functions/index.mjs +566 -213
  164. package/dist/functions/index.mjs.map +1 -1
  165. package/dist/index.d.mts +23 -14
  166. package/dist/index.d.ts +23 -14
  167. package/dist/index.js +990 -224
  168. package/dist/index.js.map +1 -1
  169. package/dist/index.mjs +984 -223
  170. package/dist/index.mjs.map +1 -1
  171. package/dist/interface/CharacterBaseModelProps.d.mts +27 -0
  172. package/dist/interface/CharacterBaseModelProps.d.ts +27 -0
  173. package/dist/interface/CharacterBaseModelProps.js +4 -0
  174. package/dist/interface/CharacterBaseModelProps.mjs +3 -0
  175. package/dist/interface/DialogueHistory.d.mts +3 -7
  176. package/dist/interface/DialogueHistory.d.ts +3 -7
  177. package/dist/interface/IHistoryStep.d.mts +12 -8
  178. package/dist/interface/IHistoryStep.d.ts +12 -8
  179. package/dist/interface/ISaveData.d.mts +8 -4
  180. package/dist/interface/ISaveData.d.ts +8 -4
  181. package/dist/interface/ITicker.d.mts +1 -1
  182. package/dist/interface/ITicker.d.ts +1 -1
  183. package/dist/interface/ITickersSteps.d.mts +3 -3
  184. package/dist/interface/ITickersSteps.d.ts +3 -3
  185. package/dist/interface/{IClassWithArgsHistory.d.mts → TickerHistory.d.mts} +9 -5
  186. package/dist/interface/{IClassWithArgsHistory.d.ts → TickerHistory.d.ts} +9 -5
  187. package/dist/{types/ticker/TickerMoveProps.js → interface/TickerHistory.js} +1 -1
  188. package/dist/interface/TickerHistory.mjs +3 -0
  189. package/dist/interface/TickerProgrationType.d.mts +13 -1
  190. package/dist/interface/TickerProgrationType.d.ts +13 -1
  191. package/dist/interface/TickerTimeoutHistory.d.mts +7 -0
  192. package/dist/interface/TickerTimeoutHistory.d.ts +7 -0
  193. package/dist/interface/TickerTimeoutHistory.js +4 -0
  194. package/dist/interface/TickerTimeoutHistory.mjs +3 -0
  195. package/dist/interface/canvas/ICanvasImageMemory.d.mts +1 -1
  196. package/dist/interface/canvas/ICanvasImageMemory.d.ts +1 -1
  197. package/dist/interface/canvas/ICanvasSpriteMemory.d.mts +1 -1
  198. package/dist/interface/canvas/ICanvasSpriteMemory.d.ts +1 -1
  199. package/dist/interface/canvas/ICanvasTextTextMemory.d.mts +1 -1
  200. package/dist/interface/canvas/ICanvasTextTextMemory.d.ts +1 -1
  201. package/dist/interface/export/ExportedCanvas.d.mts +11 -3
  202. package/dist/interface/export/ExportedCanvas.d.ts +11 -3
  203. package/dist/interface/export/ExportedStep.d.mts +7 -3
  204. package/dist/interface/export/ExportedStep.d.ts +7 -3
  205. package/dist/interface/export/index.d.mts +8 -4
  206. package/dist/interface/export/index.d.ts +8 -4
  207. package/dist/interface/index.d.mts +14 -11
  208. package/dist/interface/index.d.ts +14 -11
  209. package/dist/labels/BaseCanvasElementTestLabel.d.mts +9 -0
  210. package/dist/labels/BaseCanvasElementTestLabel.d.ts +9 -0
  211. package/dist/labels/BaseCanvasElementTestLabel.js +1860 -0
  212. package/dist/labels/BaseCanvasElementTestLabel.js.map +1 -0
  213. package/dist/labels/BaseCanvasElementTestLabel.mjs +1854 -0
  214. package/dist/labels/BaseCanvasElementTestLabel.mjs.map +1 -0
  215. package/dist/labels/EventsTestLabel.d.mts +30 -0
  216. package/dist/labels/EventsTestLabel.d.ts +30 -0
  217. package/dist/labels/EventsTestLabel.js +2600 -0
  218. package/dist/labels/EventsTestLabel.js.map +1 -0
  219. package/dist/labels/EventsTestLabel.mjs +2594 -0
  220. package/dist/labels/EventsTestLabel.mjs.map +1 -0
  221. package/dist/labels/MarkdownTest.d.mts +9 -0
  222. package/dist/labels/MarkdownTest.d.ts +9 -0
  223. package/dist/labels/MarkdownTest.js +2686 -0
  224. package/dist/labels/MarkdownTest.js.map +1 -0
  225. package/dist/labels/MarkdownTest.mjs +2680 -0
  226. package/dist/labels/MarkdownTest.mjs.map +1 -0
  227. package/dist/labels/ShowImageTest.d.mts +9 -0
  228. package/dist/labels/ShowImageTest.d.ts +9 -0
  229. package/dist/labels/ShowImageTest.js +3087 -0
  230. package/dist/labels/ShowImageTest.js.map +1 -0
  231. package/dist/labels/ShowImageTest.mjs +3081 -0
  232. package/dist/labels/ShowImageTest.mjs.map +1 -0
  233. package/dist/labels/StartLabel.d.mts +10 -0
  234. package/dist/labels/StartLabel.d.ts +10 -0
  235. package/dist/labels/StartLabel.js +3199 -0
  236. package/dist/labels/StartLabel.js.map +1 -0
  237. package/dist/labels/StartLabel.mjs +3192 -0
  238. package/dist/labels/StartLabel.mjs.map +1 -0
  239. package/dist/labels/TestConstant.d.mts +15 -0
  240. package/dist/labels/TestConstant.d.ts +15 -0
  241. package/dist/labels/TestConstant.js +1840 -0
  242. package/dist/labels/TestConstant.js.map +1 -0
  243. package/dist/labels/TestConstant.mjs +1826 -0
  244. package/dist/labels/TestConstant.mjs.map +1 -0
  245. package/dist/labels/TickerTestLabel.d.mts +9 -0
  246. package/dist/labels/TickerTestLabel.d.ts +9 -0
  247. package/dist/labels/TickerTestLabel.js +2605 -0
  248. package/dist/labels/TickerTestLabel.js.map +1 -0
  249. package/dist/labels/TickerTestLabel.mjs +2599 -0
  250. package/dist/labels/TickerTestLabel.mjs.map +1 -0
  251. package/dist/labels/TintingTestLabel.d.mts +19 -0
  252. package/dist/labels/TintingTestLabel.d.ts +19 -0
  253. package/dist/labels/TintingTestLabel.js +1786 -0
  254. package/dist/labels/TintingTestLabel.js.map +1 -0
  255. package/dist/labels/TintingTestLabel.mjs +1780 -0
  256. package/dist/labels/TintingTestLabel.mjs.map +1 -0
  257. package/dist/labels/index.d.mts +10 -0
  258. package/dist/labels/index.d.ts +10 -0
  259. package/dist/labels/index.js +3199 -0
  260. package/dist/labels/index.js.map +1 -0
  261. package/dist/labels/index.mjs +3192 -0
  262. package/dist/labels/index.mjs.map +1 -0
  263. package/dist/managers/StepManager.d.mts +18 -13
  264. package/dist/managers/StepManager.d.ts +18 -13
  265. package/dist/managers/StepManager.js +483 -194
  266. package/dist/managers/StepManager.js.map +1 -1
  267. package/dist/managers/StepManager.mjs +483 -194
  268. package/dist/managers/StepManager.mjs.map +1 -1
  269. package/dist/managers/WindowManager.d.mts +38 -24
  270. package/dist/managers/WindowManager.d.ts +38 -24
  271. package/dist/managers/WindowManager.js +280 -118
  272. package/dist/managers/WindowManager.js.map +1 -1
  273. package/dist/managers/WindowManager.mjs +276 -118
  274. package/dist/managers/WindowManager.mjs.map +1 -1
  275. package/dist/managers/index.d.mts +15 -14
  276. package/dist/managers/index.d.ts +15 -14
  277. package/dist/managers/index.js +486 -195
  278. package/dist/managers/index.js.map +1 -1
  279. package/dist/managers/index.mjs +486 -195
  280. package/dist/managers/index.mjs.map +1 -1
  281. package/dist/types/CanvasEventNamesType.d.mts +1 -1
  282. package/dist/types/CanvasEventNamesType.d.ts +1 -1
  283. package/dist/types/ChoiceMenuOptionsType.d.mts +2 -2
  284. package/dist/types/ChoiceMenuOptionsType.d.ts +2 -2
  285. package/dist/types/HistoryChoiceMenuOption.d.mts +22 -0
  286. package/dist/types/HistoryChoiceMenuOption.d.ts +22 -0
  287. package/dist/types/HistoryChoiceMenuOption.js +4 -0
  288. package/dist/types/HistoryChoiceMenuOption.mjs +3 -0
  289. package/dist/types/PauseType.d.mts +8 -4
  290. package/dist/types/PauseType.d.ts +8 -4
  291. package/dist/types/PauseType.js +0 -11
  292. package/dist/types/PauseType.js.map +1 -1
  293. package/dist/types/PauseType.mjs +0 -9
  294. package/dist/types/PauseType.mjs.map +1 -1
  295. package/dist/types/RepeatType.d.mts +1 -2
  296. package/dist/types/RepeatType.d.ts +1 -2
  297. package/dist/types/RepeatType.js +0 -4
  298. package/dist/types/RepeatType.js.map +1 -1
  299. package/dist/types/RepeatType.mjs +0 -3
  300. package/dist/types/RepeatType.mjs.map +1 -1
  301. package/dist/types/index.d.mts +5 -4
  302. package/dist/types/index.d.ts +5 -4
  303. package/dist/types/index.js +0 -15
  304. package/dist/types/index.js.map +1 -1
  305. package/dist/types/index.mjs +1 -13
  306. package/dist/types/index.mjs.map +1 -1
  307. package/dist/types/ticker/{TickerFadeAlphaProps.d.mts → FadeAlphaTickerProps.d.mts} +9 -5
  308. package/dist/types/ticker/{TickerFadeAlphaProps.d.ts → FadeAlphaTickerProps.d.ts} +9 -5
  309. package/dist/types/ticker/FadeAlphaTickerProps.js +4 -0
  310. package/dist/types/ticker/FadeAlphaTickerProps.js.map +1 -0
  311. package/dist/types/ticker/FadeAlphaTickerProps.mjs +3 -0
  312. package/dist/types/ticker/FadeAlphaTickerProps.mjs.map +1 -0
  313. package/dist/types/ticker/MoveTickerProps.d.mts +35 -0
  314. package/dist/types/ticker/MoveTickerProps.d.ts +35 -0
  315. package/dist/types/ticker/{TickerRotateProps.js → MoveTickerProps.js} +1 -1
  316. package/dist/types/ticker/MoveTickerProps.js.map +1 -0
  317. package/dist/types/ticker/MoveTickerProps.mjs +3 -0
  318. package/dist/types/ticker/MoveTickerProps.mjs.map +1 -0
  319. package/dist/types/ticker/{TickerRotateProps.d.mts → RotateTickerProps.d.mts} +11 -5
  320. package/dist/types/ticker/{TickerRotateProps.d.ts → RotateTickerProps.d.ts} +11 -5
  321. package/dist/types/ticker/RotateTickerProps.js +4 -0
  322. package/dist/types/ticker/RotateTickerProps.js.map +1 -0
  323. package/dist/types/ticker/RotateTickerProps.mjs +3 -0
  324. package/dist/types/ticker/RotateTickerProps.mjs.map +1 -0
  325. package/dist/types/ticker/TagToRemoveAfterType.d.mts +4 -0
  326. package/dist/types/ticker/TagToRemoveAfterType.d.ts +4 -0
  327. package/dist/types/ticker/TagToRemoveAfterType.js +8 -0
  328. package/dist/types/ticker/TagToRemoveAfterType.js.map +1 -0
  329. package/dist/types/ticker/TagToRemoveAfterType.mjs +6 -0
  330. package/dist/types/ticker/TagToRemoveAfterType.mjs.map +1 -0
  331. package/dist/types/ticker/ZoomTickerProps.d.mts +45 -0
  332. package/dist/types/ticker/ZoomTickerProps.d.ts +45 -0
  333. package/dist/types/ticker/ZoomTickerProps.js +4 -0
  334. package/dist/types/ticker/ZoomTickerProps.js.map +1 -0
  335. package/dist/types/ticker/ZoomTickerProps.mjs +3 -0
  336. package/dist/types/ticker/ZoomTickerProps.mjs.map +1 -0
  337. package/dist/types/ticker/index.d.mts +4 -2
  338. package/dist/types/ticker/index.d.ts +4 -2
  339. package/package.json +7 -7
  340. package/dist/classes/ticker/TickerFadeAlpha.d.mts +0 -31
  341. package/dist/classes/ticker/TickerFadeAlpha.d.ts +0 -31
  342. package/dist/classes/ticker/TickerFadeAlpha.js.map +0 -1
  343. package/dist/classes/ticker/TickerFadeAlpha.mjs.map +0 -1
  344. package/dist/classes/ticker/TickerMove.d.mts +0 -29
  345. package/dist/classes/ticker/TickerMove.d.ts +0 -29
  346. package/dist/classes/ticker/TickerMove.js.map +0 -1
  347. package/dist/classes/ticker/TickerMove.mjs.map +0 -1
  348. package/dist/classes/ticker/TickerRotate.d.mts +0 -30
  349. package/dist/classes/ticker/TickerRotate.d.ts +0 -30
  350. package/dist/classes/ticker/TickerRotate.js.map +0 -1
  351. package/dist/classes/ticker/TickerRotate.mjs.map +0 -1
  352. package/dist/functions/ErrorUtility.d.mts +0 -24
  353. package/dist/functions/ErrorUtility.d.ts +0 -24
  354. package/dist/functions/ErrorUtility.js +0 -261
  355. package/dist/functions/ErrorUtility.js.map +0 -1
  356. package/dist/functions/ErrorUtility.mjs +0 -258
  357. package/dist/functions/ErrorUtility.mjs.map +0 -1
  358. package/dist/interface/IClassWithArgsHistory.js +0 -4
  359. package/dist/interface/IClassWithArgsHistory.mjs +0 -3
  360. package/dist/types/ticker/TickerFadeAlphaProps.js +0 -4
  361. package/dist/types/ticker/TickerFadeAlphaProps.mjs +0 -3
  362. package/dist/types/ticker/TickerMoveProps.d.mts +0 -26
  363. package/dist/types/ticker/TickerMoveProps.d.ts +0 -26
  364. package/dist/types/ticker/TickerMoveProps.mjs +0 -3
  365. package/dist/types/ticker/TickerRotateProps.mjs +0 -3
  366. /package/dist/interface/{IClassWithArgsHistory.js.map → CharacterBaseModelProps.js.map} +0 -0
  367. /package/dist/interface/{IClassWithArgsHistory.mjs.map → CharacterBaseModelProps.mjs.map} +0 -0
  368. /package/dist/{types/ticker/TickerFadeAlphaProps.js.map → interface/TickerHistory.js.map} +0 -0
  369. /package/dist/{types/ticker/TickerFadeAlphaProps.mjs.map → interface/TickerHistory.mjs.map} +0 -0
  370. /package/dist/{types/ticker/TickerMoveProps.js.map → interface/TickerTimeoutHistory.js.map} +0 -0
  371. /package/dist/{types/ticker/TickerMoveProps.mjs.map → interface/TickerTimeoutHistory.mjs.map} +0 -0
  372. /package/dist/types/{ticker/TickerRotateProps.js.map → HistoryChoiceMenuOption.js.map} +0 -0
  373. /package/dist/types/{ticker/TickerRotateProps.mjs.map → HistoryChoiceMenuOption.mjs.map} +0 -0
@@ -27,8 +27,7 @@ var __decorateClass = (decorators, target, key, kind) => {
27
27
  for (var i = decorators.length - 1, decorator; i >= 0; i--)
28
28
  if (decorator = decorators[i])
29
29
  result = (kind ? decorator(target, key, result) : decorator(result)) || result;
30
- if (kind && result)
31
- __defProp(target, key, result);
30
+ if (kind && result) __defProp(target, key, result);
32
31
  return result;
33
32
  };
34
33
  var __async = (__this, __arguments, generator) => {
@@ -232,8 +231,8 @@ var GameStorageManager = _GameStorageManager;
232
231
  var TickerBase = class {
233
232
  /**
234
233
  * @param args The arguments that you want to pass to the ticker.
235
- * @param duration The duration of the ticker. If is undefined, the ticker will be called every frame.
236
- * @param priority The priority of the ticker. If is undefined, the priority will be UPDATE_PRIORITY.NORMAL.
234
+ * @param duration The duration of the ticker in seconds. If is undefined, the step will end only when the animation is finished (if the animation doesn't have a goal to reach then it won't finish). @default undefined
235
+ * @param priority The priority of the ticker. @default UPDATE_PRIORITY.NORMAL
237
236
  */
238
237
  constructor(args, duration, priority) {
239
238
  this.args = args;
@@ -243,15 +242,19 @@ var TickerBase = class {
243
242
  /**
244
243
  * The method that will be called every frame.
245
244
  * This method should be overridden and you can use GameWindowManager.addCanvasElement() to get the canvas element of the canvas, and edit them.
246
- * @param t The ticker that is calling this method
247
- * @param args The arguments that you passed when you added the ticker
248
- * @param tags The tags of the canvas elements that are connected to this ticker
245
+ * @param _ticker The ticker that is calling this method
246
+ * @param _args The arguments that you passed when you added the ticker
247
+ * @param _tags The tags of the canvas elements that are connected to this ticker
248
+ * @param _tickerId The id of the ticker. You can use this to get the ticker from the {@link GameWindowManager.currentTickers}
249
249
  */
250
- fn(_t, _args, _tags) {
250
+ fn(_ticker, _args, _tags, _tickerId) {
251
251
  throw new Error("[Pixi'VN] The method TickerBase.fn() must be overridden");
252
252
  }
253
253
  };
254
254
 
255
+ // src/constants.ts
256
+ var Repeat = "repeat";
257
+
255
258
  // src/decorators/TickerDecorator.ts
256
259
  var registeredTickers = {};
257
260
  function tickerDecorator(name) {
@@ -260,7 +263,7 @@ function tickerDecorator(name) {
260
263
  name = target.name;
261
264
  }
262
265
  if (registeredTickers[name]) {
263
- console.warn(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`);
266
+ console.info(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`);
264
267
  }
265
268
  registeredTickers[name] = target;
266
269
  };
@@ -751,11 +754,8 @@ function asciiArtLog() {
751
754
  `);
752
755
  }
753
756
 
754
- // src/types/PauseType.ts
755
- var PauseValueType = "pause";
756
-
757
- // src/types/RepeatType.ts
758
- var Repeat = "repeat";
757
+ // src/types/ticker/TagToRemoveAfterType.ts
758
+ var tagToRemoveAfter = "tagToRemoveAfter";
759
759
 
760
760
  // src/managers/WindowManager.ts
761
761
  var _GameWindowManager = class _GameWindowManager {
@@ -939,25 +939,25 @@ var _GameWindowManager = class _GameWindowManager {
939
939
  /**
940
940
  * Remove a canvas element from the canvas.
941
941
  * And remove all tickers that are not connected to any canvas element.
942
- * @param tag The tag of the canvas element to be removed.
942
+ * @param tags The tag of the canvas element to be removed.
943
943
  * @returns
944
944
  * @example
945
945
  * ```typescript
946
946
  * GameWindowManager.removeCanvasElement("bunny");
947
947
  * ```
948
948
  */
949
- static removeCanvasElement(tag) {
950
- if (typeof tag === "string") {
951
- tag = [tag];
949
+ static removeCanvasElement(tags) {
950
+ if (typeof tags === "string") {
951
+ tags = [tags];
952
952
  }
953
- tag.forEach((t) => {
954
- if (_GameWindowManager._children[t]) {
955
- _GameWindowManager.app.stage.removeChild(_GameWindowManager._children[t]);
956
- delete _GameWindowManager._children[t];
953
+ tags.forEach((tag) => {
954
+ if (_GameWindowManager._children[tag]) {
955
+ _GameWindowManager.app.stage.removeChild(_GameWindowManager._children[tag]);
956
+ delete _GameWindowManager._children[tag];
957
+ _GameWindowManager.removeTickerByCanvasElement(tag);
957
958
  }
958
959
  });
959
- _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
960
- _GameWindowManager.childrenTagsOrder = _GameWindowManager.childrenTagsOrder.filter((t) => !tag.includes(t));
960
+ _GameWindowManager.childrenTagsOrder = _GameWindowManager.childrenTagsOrder.filter((t) => !tags.includes(t));
961
961
  }
962
962
  /**
963
963
  * Get a canvas element by the tag.
@@ -987,18 +987,43 @@ var _GameWindowManager = class _GameWindowManager {
987
987
  _GameWindowManager.app.stage.removeChildren();
988
988
  _GameWindowManager._children = {};
989
989
  _GameWindowManager.childrenTagsOrder = [];
990
- _GameWindowManager.removeTickers();
990
+ _GameWindowManager.removeAllTickers();
991
991
  }
992
992
  /**
993
993
  * Edit the tag of a canvas element.
994
994
  * @param oldTag The old tag of the canvas element.
995
995
  * @param newTag The new tag of the canvas element.
996
996
  */
997
- static editTagCanvasElement(oldTag, newTag) {
997
+ static editCanvasElementTag(oldTag, newTag) {
998
998
  if (_GameWindowManager._children[oldTag]) {
999
999
  _GameWindowManager._children[newTag] = _GameWindowManager._children[oldTag];
1000
1000
  delete _GameWindowManager._children[oldTag];
1001
1001
  }
1002
+ if (_GameWindowManager._currentTickersSteps[oldTag]) {
1003
+ _GameWindowManager._currentTickersSteps[newTag] = _GameWindowManager._currentTickersSteps[oldTag];
1004
+ delete _GameWindowManager._currentTickersSteps[oldTag];
1005
+ }
1006
+ for (let id in _GameWindowManager._currentTickers) {
1007
+ let ticker = _GameWindowManager._currentTickers[id];
1008
+ if (ticker.canvasElementTags.includes(oldTag)) {
1009
+ ticker.canvasElementTags = ticker.canvasElementTags.map((t) => t === oldTag ? newTag : t);
1010
+ if (ticker.args.hasOwnProperty(tagToRemoveAfter)) {
1011
+ let tagToRemoveAfter2 = ticker.args.tagToRemoveAfter;
1012
+ if (typeof tagToRemoveAfter2 === "string") {
1013
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
1014
+ }
1015
+ if (Array.isArray(tagToRemoveAfter2)) {
1016
+ ticker.args.tagToRemoveAfter = tagToRemoveAfter2.map((t) => t === oldTag ? newTag : t);
1017
+ }
1018
+ }
1019
+ }
1020
+ }
1021
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1022
+ let TickerTimeout = _GameWindowManager._currentTickersTimeouts[timeout];
1023
+ if (TickerTimeout.tags.includes(oldTag)) {
1024
+ TickerTimeout.tags = TickerTimeout.tags.map((t) => t === oldTag ? newTag : t);
1025
+ }
1026
+ }
1002
1027
  }
1003
1028
  /** Edit Tickers Methods */
1004
1029
  /**
@@ -1007,23 +1032,38 @@ var _GameWindowManager = class _GameWindowManager {
1007
1032
  static get currentTickers() {
1008
1033
  return _GameWindowManager._currentTickers;
1009
1034
  }
1035
+ static get currentTickersList() {
1036
+ return Object.values(_GameWindowManager._currentTickers);
1037
+ }
1038
+ static get currentTickersWithoutCreatedBySteps() {
1039
+ return Object.fromEntries(Object.entries(_GameWindowManager._currentTickers).filter(([_, ticker]) => !ticker.createdByTicketStepsId));
1040
+ }
1010
1041
  /**
1011
1042
  * The steps of the tickers
1012
1043
  */
1013
1044
  static get currentTickersSteps() {
1014
1045
  return _GameWindowManager._currentTickersSteps;
1015
1046
  }
1047
+ static generateTickerId(tickerData) {
1048
+ try {
1049
+ return sha1(JSON.stringify(tickerData)).toString() + "_" + Math.random().toString(36).substring(7);
1050
+ } catch (e) {
1051
+ throw new Error(`[Pixi'VN] Error to generate ticker id: ${e}`);
1052
+ }
1053
+ }
1016
1054
  /**
1017
- * Run a ticker.
1055
+ * Run a ticker. You can run multiple addTicker with the same tag and different tickerClasses.
1056
+ * If you run a ticker with the same tag and tickerClass, the old ticker will be removed.
1057
+ * If already exists a sequence of tickers with the same tag, it will be removed.
1018
1058
  * @param canvasEslementTag The tag of the canvas element that will use the ticker.
1019
1059
  * @param ticker The ticker class to be run.
1020
1060
  * @param args The arguments to be used in the ticker.
1021
- * @param duration The time to be used in the ticker. This number is in milliseconds. If it is undefined, the ticker will run forever.
1061
+ * @param duration The time to be used in the ticker. This number is in seconds. If it is undefined, the ticker will run forever.
1022
1062
  * @param priority The priority to be used in the ticker.
1023
1063
  * @returns
1024
1064
  * @example
1025
1065
  * ```typescript
1026
- * GameWindowManager.addTicker("alien", new TickerRotate({ speed: 0.2 }))
1066
+ * GameWindowManager.addTicker("alien", new RotateTicker({ speed: 0.2 }))
1027
1067
  * ```
1028
1068
  */
1029
1069
  static addTicker(canvasElementTag, ticker) {
@@ -1031,82 +1071,88 @@ var _GameWindowManager = class _GameWindowManager {
1031
1071
  if (typeof canvasElementTag === "string") {
1032
1072
  canvasElementTag = [canvasElementTag];
1033
1073
  }
1034
- let t = geTickerInstanceByClassName(tickerName, ticker.args, ticker.duration, ticker.priority);
1035
- if (!t) {
1074
+ if (!geTickerInstanceByClassName(tickerName, ticker.args, ticker.duration, ticker.priority)) {
1036
1075
  console.error(`[Pixi'VN] Ticker ${tickerName} not found`);
1037
1076
  return;
1038
1077
  }
1039
- _GameWindowManager.removeAssociationBetweenTickerCanvasElement(canvasElementTag, ticker);
1040
1078
  let tickerHistory = {
1041
1079
  fn: () => {
1042
1080
  },
1043
1081
  className: tickerName,
1044
- args: ticker.args,
1082
+ args: createExportableElement(ticker.args),
1045
1083
  canvasElementTags: canvasElementTag,
1046
1084
  priority: ticker.priority,
1047
1085
  duration: ticker.duration
1048
1086
  };
1049
- _GameWindowManager.pushTicker(tickerHistory, t);
1050
- _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
1087
+ let id = _GameWindowManager.generateTickerId(tickerHistory);
1088
+ _GameWindowManager.pushTicker(id, tickerHistory, ticker);
1051
1089
  if (ticker.duration) {
1052
1090
  let timeout = setTimeout(() => {
1053
1091
  _GameWindowManager.removeTickerTimeoutInfo(timeout);
1054
- _GameWindowManager.nextTickerStep(canvasElementTag);
1055
- }, ticker.duration);
1056
- _GameWindowManager.addTickerTimeoutInfo(canvasElementTag, tickerName, timeout.toString());
1092
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
1093
+ if (tickerTimeoutInfo) {
1094
+ _GameWindowManager.removeTicker(id);
1095
+ }
1096
+ }, ticker.duration * 1e3);
1097
+ _GameWindowManager.addTickerTimeoutInfo(canvasElementTag, tickerName, timeout.toString(), true);
1057
1098
  }
1058
1099
  }
1059
- static pushTicker(tickerData, ticker) {
1100
+ static pushTicker(id, tickerData, ticker) {
1060
1101
  _GameWindowManager.removeAssociationBetweenTickerCanvasElement(tickerData.canvasElementTags, tickerData);
1061
- _GameWindowManager._currentTickers.push(tickerData);
1102
+ _GameWindowManager._currentTickers[id] = tickerData;
1062
1103
  tickerData.fn = (t) => {
1063
- ticker == null ? void 0 : ticker.fn(t, tickerData.args, tickerData.canvasElementTags);
1104
+ let data = _GameWindowManager._currentTickers[id];
1105
+ if (data) {
1106
+ ticker == null ? void 0 : ticker.fn(t, data.args, data.canvasElementTags, id);
1107
+ }
1064
1108
  };
1065
1109
  _GameWindowManager.app.ticker.add(tickerData.fn, void 0, tickerData.priority);
1066
1110
  }
1067
1111
  /**
1068
- * Run a sequence of tickers.
1112
+ * Run a sequence of tickers. If exists a ticker steps with the same tag, it will be removed.
1069
1113
  * @param tag The tag of canvas element that will use the tickers.
1070
1114
  * @param steps The steps of the tickers.
1115
+ * @param currentStepNumber The current step number. It is used to continue the sequence of tickers.
1071
1116
  * @returns
1072
1117
  * @example
1073
1118
  * ```typescript
1074
1119
  * GameWindowManager.addTickersSteps("alien", [
1075
- * new TickerRotate({ speed: 0.1, clockwise: true }, 2000),
1076
- * Pause(500),
1077
- * new TickerRotate({ speed: 0.2, clockwise: false }, 2000),
1120
+ * new RotateTicker({ speed: 0.1, clockwise: true }, 2), // 2 seconds
1121
+ * Pause(1), // 1 second
1122
+ * new RotateTicker({ speed: 0.2, clockwise: false }, 2),
1078
1123
  * Repeat,
1079
1124
  * ])
1080
1125
  * ```
1081
1126
  */
1082
- static addTickersSteps(tag, steps) {
1127
+ static addTickersSteps(tag, steps, currentStepNumber = 0) {
1083
1128
  if (steps.length == 0) {
1084
1129
  console.warn("[Pixi'VN] The steps of the tickers is empty");
1085
1130
  return;
1086
1131
  }
1087
- let alredyExists = _GameWindowManager._currentTickersSteps[tag] !== void 0;
1132
+ _GameWindowManager.removeTickerStepByCanvasElement(tag);
1088
1133
  _GameWindowManager._currentTickersSteps[tag] = {
1089
- currentStepNumber: 0,
1090
- steps: steps.map((s) => {
1091
- if (s === Repeat) {
1092
- return s;
1134
+ currentStepNumber,
1135
+ steps: steps.map((step) => {
1136
+ if (step === Repeat) {
1137
+ return step;
1093
1138
  }
1094
- if (!s.duration) {
1095
- console.warn("[Pixi'VN] Duration is not defined, so it will be set to 1000");
1096
- s.duration = 1e3;
1139
+ if (step.hasOwnProperty("type") && step.type === "pause") {
1140
+ return step;
1097
1141
  }
1098
- if (s.hasOwnProperty("type") && s.type === PauseValueType) {
1099
- return s;
1100
- }
1101
- let tickerName = s.constructor.name;
1142
+ let tickerName = step.constructor.name;
1102
1143
  return {
1103
1144
  ticker: tickerName,
1104
- args: s.args,
1105
- duration: s.duration
1145
+ args: createExportableElement(step.args),
1146
+ duration: step.duration
1106
1147
  };
1107
1148
  })
1108
1149
  };
1109
- if (!alredyExists) {
1150
+ _GameWindowManager.runTickersSteps(tag);
1151
+ }
1152
+ static restoneTickersSteps(data) {
1153
+ for (let tag in data) {
1154
+ let steps = data[tag];
1155
+ _GameWindowManager._currentTickersSteps[tag] = steps;
1110
1156
  _GameWindowManager.runTickersSteps(tag);
1111
1157
  }
1112
1158
  }
@@ -1120,12 +1166,17 @@ var _GameWindowManager = class _GameWindowManager {
1120
1166
  return;
1121
1167
  }
1122
1168
  }
1123
- if (step.hasOwnProperty("type") && step.type === PauseValueType) {
1169
+ if (step.hasOwnProperty("type") && step.type === "pause") {
1124
1170
  let timeout = setTimeout(() => {
1171
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
1172
+ if (tickerTimeoutInfo) {
1173
+ tickerTimeoutInfo.tags.forEach((tag2) => {
1174
+ _GameWindowManager.nextTickerStep(tag2);
1175
+ });
1176
+ }
1125
1177
  _GameWindowManager.removeTickerTimeoutInfo(timeout);
1126
- _GameWindowManager.nextTickerStep(tag);
1127
- }, step.duration);
1128
- _GameWindowManager.addTickerTimeoutInfo(tag, "steps", timeout.toString());
1178
+ }, step.duration * 1e3);
1179
+ _GameWindowManager.addTickerTimeoutInfo(tag, "steps", timeout.toString(), false);
1129
1180
  return;
1130
1181
  }
1131
1182
  let ticker = geTickerInstanceByClassName(step.ticker, step.args, step.duration, step.priority);
@@ -1133,57 +1184,88 @@ var _GameWindowManager = class _GameWindowManager {
1133
1184
  console.error(`[Pixi'VN] Ticker ${step.ticker} not found`);
1134
1185
  return;
1135
1186
  }
1136
- _GameWindowManager.addTicker(tag, ticker);
1187
+ let tickerName = ticker.constructor.name;
1188
+ let tickerHistory = {
1189
+ fn: () => {
1190
+ },
1191
+ className: tickerName,
1192
+ args: createExportableElement(ticker.args),
1193
+ canvasElementTags: [tag],
1194
+ priority: ticker.priority,
1195
+ duration: ticker.duration,
1196
+ createdByTicketStepsId: tag
1197
+ };
1198
+ let id = _GameWindowManager.generateTickerId(tickerHistory);
1199
+ _GameWindowManager.pushTicker(id, tickerHistory, ticker);
1200
+ if (ticker.duration) {
1201
+ let timeout = setTimeout(() => {
1202
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
1203
+ if (tickerTimeoutInfo) {
1204
+ _GameWindowManager.removeTicker(id);
1205
+ tickerTimeoutInfo.tags.forEach((tag2) => {
1206
+ _GameWindowManager.nextTickerStep(tag2);
1207
+ });
1208
+ }
1209
+ _GameWindowManager.removeTickerTimeoutInfo(timeout);
1210
+ }, ticker.duration * 1e3);
1211
+ _GameWindowManager.addTickerTimeoutInfo(tag, tickerName, timeout.toString(), false);
1212
+ }
1137
1213
  }
1138
1214
  static nextTickerStep(tag) {
1139
- if (typeof tag === "string") {
1140
- tag = [tag];
1215
+ if (_GameWindowManager._currentTickersSteps[tag]) {
1216
+ let steps = _GameWindowManager._currentTickersSteps[tag];
1217
+ if (steps.currentStepNumber + 1 < steps.steps.length) {
1218
+ steps.currentStepNumber++;
1219
+ _GameWindowManager._currentTickersSteps[tag] = steps;
1220
+ _GameWindowManager.runTickersSteps(tag);
1221
+ } else {
1222
+ _GameWindowManager.removeTickerStepByCanvasElement(tag);
1223
+ }
1141
1224
  }
1142
- tag.forEach((tag2) => {
1143
- if (_GameWindowManager._currentTickersSteps[tag2]) {
1144
- let steps = _GameWindowManager._currentTickersSteps[tag2];
1145
- if (steps.currentStepNumber + 1 < steps.steps.length) {
1146
- steps.currentStepNumber++;
1147
- _GameWindowManager._currentTickersSteps[tag2] = steps;
1148
- _GameWindowManager.runTickersSteps(tag2);
1149
- } else {
1150
- delete _GameWindowManager._currentTickersSteps[tag2];
1151
- }
1225
+ }
1226
+ static onEndOfTicker(canvasElementTags, ticker, canvasElementTagsToDelete, tickerId) {
1227
+ let tickerData = _GameWindowManager._currentTickers[tickerId];
1228
+ _GameWindowManager.removeAssociationBetweenTickerCanvasElement(canvasElementTags, ticker);
1229
+ _GameWindowManager.removeCanvasElement(canvasElementTagsToDelete);
1230
+ if (tickerData) {
1231
+ _GameWindowManager.removeTicker(tickerId);
1232
+ if (tickerData.duration == void 0 && tickerData.createdByTicketStepsId) {
1233
+ _GameWindowManager.nextTickerStep(tickerData.createdByTicketStepsId);
1152
1234
  }
1153
- });
1235
+ }
1154
1236
  }
1155
1237
  /**
1156
1238
  * Remove a connection between a canvas element and a ticker.
1157
1239
  * And remove the ticker if there is no canvas element connected to it.
1158
- * @param tag The tag of the canvas element that will use the ticker.
1240
+ * @param tags The tag of the canvas element that will use the ticker.
1159
1241
  * @param ticker The ticker class to be removed.
1160
1242
  * @example
1161
1243
  * ```typescript
1162
- * GameWindowManager.removeAssociationBetweenTickerCanvasElement("alien", TickerRotate)
1244
+ * GameWindowManager.removeAssociationBetweenTickerCanvasElement("alien", RotateTicker)
1163
1245
  * ```
1164
1246
  */
1165
- static removeAssociationBetweenTickerCanvasElement(tag, ticker) {
1247
+ static removeAssociationBetweenTickerCanvasElement(tags, ticker) {
1166
1248
  let tickerName;
1167
- if (ticker instanceof TickerBase) {
1249
+ if (typeof ticker === "string") {
1250
+ tickerName = ticker;
1251
+ } else if (ticker instanceof TickerBase) {
1168
1252
  tickerName = ticker.constructor.name;
1169
1253
  } else {
1170
1254
  tickerName = ticker.name;
1171
1255
  }
1172
- if (typeof tag === "string") {
1173
- tag = [tag];
1256
+ if (typeof tags === "string") {
1257
+ tags = [tags];
1174
1258
  }
1175
- _GameWindowManager._currentTickers = _GameWindowManager._currentTickers.map((t) => {
1176
- if (t.className === tickerName) {
1177
- t.canvasElementTags = t.canvasElementTags.filter((e) => !tag.includes(e));
1259
+ for (let id in _GameWindowManager._currentTickers) {
1260
+ let ticker2 = _GameWindowManager._currentTickers[id];
1261
+ if (ticker2.className === tickerName) {
1262
+ _GameWindowManager._currentTickers[id].canvasElementTags = ticker2.canvasElementTags.filter((e) => !tags.includes(e));
1178
1263
  }
1179
- return t;
1180
- });
1181
- for (let timeout in _GameWindowManager.currentTickersTimeouts) {
1182
- let t = _GameWindowManager.currentTickersTimeouts[timeout].tags.filter((e) => !tag.includes(e));
1183
- if (t.length == 0) {
1184
- _GameWindowManager.removeTickerTimeoutInfo(timeout);
1185
- } else {
1186
- _GameWindowManager.currentTickersTimeouts[timeout].tags = t;
1264
+ }
1265
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1266
+ let TickerTimeout = _GameWindowManager._currentTickersTimeouts[timeout];
1267
+ if (TickerTimeout.ticker === tickerName && TickerTimeout.canBeDeletedBeforeEnd) {
1268
+ _GameWindowManager._currentTickersTimeouts[timeout].tags = TickerTimeout.tags.filter((t) => !tags.includes(t));
1187
1269
  }
1188
1270
  }
1189
1271
  _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
@@ -1192,49 +1274,117 @@ var _GameWindowManager = class _GameWindowManager {
1192
1274
  * Remove all tickers that are not connected to any existing canvas element.
1193
1275
  */
1194
1276
  static removeTickersWithoutAssociatedCanvasElement() {
1195
- let currentTickers = _GameWindowManager._currentTickers.map((t) => {
1196
- t.canvasElementTags = t.canvasElementTags.filter((e) => _GameWindowManager._children[e]);
1197
- return t;
1198
- });
1199
- currentTickers.filter((t) => t.canvasElementTags.length === 0).forEach((t) => {
1200
- _GameWindowManager.app.ticker.remove(t.fn);
1201
- });
1202
- currentTickers = currentTickers.filter((t) => t.canvasElementTags.length > 0);
1203
- _GameWindowManager._currentTickers = currentTickers;
1277
+ for (let id in _GameWindowManager._currentTickers) {
1278
+ let ticker = _GameWindowManager._currentTickers[id];
1279
+ ticker.canvasElementTags = ticker.canvasElementTags.filter((e) => _GameWindowManager._children[e]);
1280
+ if (ticker.canvasElementTags.length === 0) {
1281
+ _GameWindowManager.removeTicker(id);
1282
+ }
1283
+ }
1204
1284
  for (let tag in _GameWindowManager._currentTickersSteps) {
1205
1285
  if (_GameWindowManager._children[tag] === void 0) {
1206
1286
  delete _GameWindowManager._currentTickersSteps[tag];
1207
1287
  }
1208
1288
  }
1289
+ Object.entries(_GameWindowManager._currentTickersTimeouts).forEach(([timeout, { tags }]) => {
1290
+ if (tags.length === 0) {
1291
+ _GameWindowManager.removeTickerTimeout(timeout);
1292
+ }
1293
+ });
1209
1294
  }
1210
- static addTickerTimeoutInfo(tags, ticker, timeout) {
1295
+ static addTickerTimeoutInfo(tags, ticker, timeout, canBeDeletedBeforeEnd) {
1211
1296
  if (typeof tags === "string") {
1212
1297
  tags = [tags];
1213
1298
  }
1214
- _GameWindowManager.currentTickersTimeouts[timeout] = {
1299
+ _GameWindowManager._currentTickersTimeouts[timeout] = {
1215
1300
  tags,
1216
- ticker
1301
+ ticker,
1302
+ canBeDeletedBeforeEnd
1217
1303
  };
1218
1304
  }
1219
1305
  static removeTickerTimeoutInfo(timeout) {
1220
1306
  if (typeof timeout !== "string") {
1221
1307
  timeout = timeout.toString();
1222
1308
  }
1223
- if (_GameWindowManager.currentTickersTimeouts[timeout]) {
1224
- delete _GameWindowManager.currentTickersTimeouts[timeout];
1309
+ if (_GameWindowManager._currentTickersTimeouts[timeout]) {
1310
+ delete _GameWindowManager._currentTickersTimeouts[timeout];
1311
+ }
1312
+ }
1313
+ static removeTickerTimeout(timeout) {
1314
+ if (typeof timeout !== "string") {
1315
+ timeout = timeout.toString();
1316
+ }
1317
+ clearTimeout(Number(timeout));
1318
+ _GameWindowManager.removeTickerTimeoutInfo(timeout);
1319
+ }
1320
+ static removeTickerTimeoutsByTag(tag, checkCanBeDeletedBeforeEnd) {
1321
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1322
+ let tagsWithoutTagToRemove = _GameWindowManager._currentTickersTimeouts[timeout].tags.filter((t) => t !== tag);
1323
+ if (tagsWithoutTagToRemove.length === 0) {
1324
+ let canBeDeletedBeforeEnd = _GameWindowManager._currentTickersTimeouts[timeout].canBeDeletedBeforeEnd;
1325
+ if (!checkCanBeDeletedBeforeEnd || canBeDeletedBeforeEnd) {
1326
+ _GameWindowManager.removeTickerTimeout(timeout);
1327
+ }
1328
+ } else {
1329
+ _GameWindowManager._currentTickersTimeouts[timeout].tags = tagsWithoutTagToRemove;
1330
+ }
1225
1331
  }
1226
1332
  }
1227
1333
  /**
1228
1334
  * Remove all tickers from the canvas.
1229
1335
  */
1230
- static removeTickers() {
1336
+ static removeAllTickers() {
1231
1337
  _GameWindowManager._currentTickersSteps = {};
1232
- _GameWindowManager._currentTickers.forEach((t) => {
1233
- _GameWindowManager.app.ticker.remove(t.fn);
1338
+ Object.keys(_GameWindowManager._currentTickers).forEach((id) => {
1339
+ _GameWindowManager.removeTicker(id);
1340
+ });
1341
+ _GameWindowManager._currentTickers = {};
1342
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1343
+ _GameWindowManager.removeTickerTimeout(timeout);
1344
+ }
1345
+ }
1346
+ /**
1347
+ * Remove all tickers from a canvas element.
1348
+ * @param tag The tag of the canvas element that will use the ticker.
1349
+ */
1350
+ static removeTickerByCanvasElement(tag) {
1351
+ if (typeof tag === "string") {
1352
+ tag = [tag];
1353
+ }
1354
+ tag.forEach((tag2) => {
1355
+ for (let id in _GameWindowManager._currentTickers) {
1356
+ let ticker = _GameWindowManager._currentTickers[id];
1357
+ if (ticker.canvasElementTags.includes(tag2)) {
1358
+ _GameWindowManager.removeTicker(id);
1359
+ }
1360
+ }
1361
+ if (_GameWindowManager._currentTickersSteps[tag2]) {
1362
+ delete _GameWindowManager._currentTickersSteps[tag2];
1363
+ }
1364
+ _GameWindowManager.removeTickerTimeoutsByTag(tag2, false);
1365
+ delete _GameWindowManager._currentTickersSteps[tag2];
1234
1366
  });
1235
- _GameWindowManager._currentTickers = [];
1236
- for (let timeout in _GameWindowManager.currentTickersTimeouts) {
1237
- _GameWindowManager.removeTickerTimeoutInfo(timeout);
1367
+ }
1368
+ static removeTickerStepByCanvasElement(tag) {
1369
+ if (_GameWindowManager._currentTickersSteps[tag]) {
1370
+ delete _GameWindowManager._currentTickersSteps[tag];
1371
+ }
1372
+ for (let id in _GameWindowManager._currentTickers) {
1373
+ let ticker = _GameWindowManager._currentTickers[id];
1374
+ if (ticker.createdByTicketStepsId === tag) {
1375
+ _GameWindowManager.removeTicker(id);
1376
+ }
1377
+ }
1378
+ }
1379
+ static removeTicker(tickerId) {
1380
+ let ticker = _GameWindowManager._currentTickers[tickerId];
1381
+ if (ticker) {
1382
+ if (ticker.args.hasOwnProperty(tagToRemoveAfter)) {
1383
+ let tagToRemoveAfter2 = ticker.args.tagToRemoveAfter;
1384
+ _GameWindowManager.removeCanvasElement(tagToRemoveAfter2);
1385
+ }
1386
+ _GameWindowManager.app.ticker.remove(ticker.fn);
1387
+ delete _GameWindowManager._currentTickers[tickerId];
1238
1388
  }
1239
1389
  }
1240
1390
  /**
@@ -1261,7 +1411,8 @@ var _GameWindowManager = class _GameWindowManager {
1261
1411
  currentElements[tag] = exportCanvasElement(_GameWindowManager._children[tag]);
1262
1412
  }
1263
1413
  return {
1264
- currentTickers: createExportableElement(_GameWindowManager._currentTickers),
1414
+ currentTickers: createExportableElement(_GameWindowManager.currentTickersWithoutCreatedBySteps),
1415
+ currentTickersSteps: createExportableElement(_GameWindowManager._currentTickersSteps),
1265
1416
  currentElements: createExportableElement(currentElements),
1266
1417
  childrenTagsOrder: createExportableElement(_GameWindowManager.childrenTagsOrder)
1267
1418
  };
@@ -1296,7 +1447,8 @@ var _GameWindowManager = class _GameWindowManager {
1296
1447
  }
1297
1448
  if (data.hasOwnProperty("currentTickers")) {
1298
1449
  let currentTickers = data["currentTickers"];
1299
- currentTickers.forEach((t) => {
1450
+ for (let id in currentTickers) {
1451
+ let t = currentTickers[id];
1300
1452
  let tags = t.canvasElementTags;
1301
1453
  let ticker = geTickerInstanceByClassName(t.className, t.args, t.duration, t.priority);
1302
1454
  if (ticker) {
@@ -1304,7 +1456,11 @@ var _GameWindowManager = class _GameWindowManager {
1304
1456
  } else {
1305
1457
  console.error(`[Pixi'VN] Ticker ${t.className} not found`);
1306
1458
  }
1307
- });
1459
+ }
1460
+ }
1461
+ if (data.hasOwnProperty("currentTickersSteps")) {
1462
+ let currentTickersSteps = data["currentTickersSteps"];
1463
+ _GameWindowManager.restoneTickersSteps(currentTickersSteps);
1308
1464
  }
1309
1465
  } catch (e) {
1310
1466
  console.error("[Pixi'VN] Error importing data", e);
@@ -1318,9 +1474,9 @@ _GameWindowManager._children = {};
1318
1474
  * The order of the children tags.
1319
1475
  */
1320
1476
  _GameWindowManager.childrenTagsOrder = [];
1321
- _GameWindowManager._currentTickers = [];
1477
+ _GameWindowManager._currentTickers = {};
1322
1478
  _GameWindowManager._currentTickersSteps = {};
1323
- _GameWindowManager.currentTickersTimeouts = {};
1479
+ _GameWindowManager._currentTickersTimeouts = {};
1324
1480
  var GameWindowManager = _GameWindowManager;
1325
1481
 
1326
1482
  // src/decorators/LabelDecorator.ts
@@ -1338,20 +1494,15 @@ function getLabelById(id) {
1338
1494
  function getDialogue() {
1339
1495
  return GameStorageManager.getVariable(GameStorageManager.keysSystem.CURRENT_DIALOGUE_MEMORY_KEY);
1340
1496
  }
1341
- var TickerFadeAlpha = class extends TickerBase {
1342
- /**
1343
- * The method that will be called every frame to fade the alpha of the canvas element of the canvas.
1344
- * @param delta The delta time
1345
- * @param args The arguments that are passed to the ticker
1346
- * @param tags The tags of the canvas element that are connected to this ticker
1347
- */
1348
- fn(t, args, tags) {
1497
+ var FadeAlphaTicker = class extends TickerBase {
1498
+ fn(ticker, args, tags, tickerId) {
1349
1499
  let type = args.type === void 0 ? "hide" : args.type;
1350
- let speed = args.speed === void 0 ? 0.1 : args.speed;
1500
+ let duration = args.duration === void 0 ? 1 : args.duration;
1501
+ let speed = 1 / (duration * 60);
1351
1502
  let limit = args.limit === void 0 ? type === "hide" ? 0 : 1 : args.limit;
1352
- let removeElementAfter = args.tagToRemoveAfter || [];
1353
- if (typeof removeElementAfter === "string") {
1354
- removeElementAfter = [removeElementAfter];
1503
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
1504
+ if (typeof tagToRemoveAfter2 === "string") {
1505
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
1355
1506
  }
1356
1507
  if (type === "hide" && limit < 0) {
1357
1508
  limit = 0;
@@ -1372,61 +1523,88 @@ var TickerFadeAlpha = class extends TickerBase {
1372
1523
  let element = GameWindowManager.getCanvasElement(tag);
1373
1524
  if (element && element instanceof Container) {
1374
1525
  if (type === "show" && element.alpha < limit) {
1375
- element.alpha += speed * t.deltaTime;
1526
+ element.alpha += speed * ticker.deltaTime;
1376
1527
  } else if (type === "hide" && element.alpha > limit) {
1377
- element.alpha -= speed * t.deltaTime;
1378
- } else {
1528
+ element.alpha -= speed * ticker.deltaTime;
1529
+ }
1530
+ if (type === "show" && element.alpha >= limit) {
1379
1531
  element.alpha = limit;
1380
- GameWindowManager.removeAssociationBetweenTickerCanvasElement(tag, this);
1381
- GameWindowManager.removeCanvasElement(removeElementAfter);
1532
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1533
+ } else if (type === "hide" && element.alpha <= limit) {
1534
+ element.alpha = limit;
1535
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1382
1536
  }
1383
1537
  }
1384
1538
  });
1385
1539
  }
1386
1540
  };
1387
- TickerFadeAlpha = __decorateClass([
1541
+ FadeAlphaTicker = __decorateClass([
1388
1542
  tickerDecorator()
1389
- ], TickerFadeAlpha);
1543
+ ], FadeAlphaTicker);
1390
1544
 
1391
1545
  // src/functions/TickerUtility.ts
1392
1546
  function updateTickerProgression(args, propertyName, progression) {
1393
- if (args.hasOwnProperty(propertyName) && typeof args[propertyName] !== "number") {
1547
+ if (args[propertyName] === void 0 || !progression || args[propertyName] === progression.limit) {
1394
1548
  return;
1395
1549
  }
1396
- if (args[propertyName] !== void 0 && progression && args[propertyName] !== progression.limit) {
1550
+ if (typeof args[propertyName] === "number") {
1397
1551
  if (progression.type === "linear") {
1398
- args[propertyName] += progression.amt;
1399
- if (progression.limit !== void 0) {
1400
- if (args[propertyName] > progression.limit && progression.amt > 0) {
1401
- args[propertyName] = progression.limit;
1402
- } else if (args[propertyName] < progression.limit && progression.amt < 0) {
1403
- args[propertyName] = progression.limit;
1404
- }
1405
- }
1552
+ args[propertyName] = getLinearProgression(args[propertyName], progression);
1406
1553
  } else if (progression.type === "exponential") {
1407
- args[propertyName] += args[propertyName] * progression.percentage;
1408
- if (progression.limit !== void 0) {
1409
- if (args[propertyName] > progression.limit && progression.percentage > 0) {
1410
- args[propertyName] = progression.limit;
1411
- } else if (args[propertyName] < progression.limit && progression.percentage < 0) {
1412
- args[propertyName] = progression.limit;
1413
- }
1414
- }
1554
+ args[propertyName] = getExponentialProgression(args[propertyName], progression);
1555
+ }
1556
+ } else if (args[propertyName] !== void 0 && typeof args[propertyName] === "object" && args[propertyName].haveOwnProperty("x") && args[propertyName].haveOwnProperty("y") && typeof args[propertyName].x === "number" && typeof args[propertyName].y === "number") {
1557
+ if (progression.type === "linear") {
1558
+ args[propertyName].x = getLinearProgression(args[propertyName].x, progression);
1559
+ args[propertyName].y = getLinearProgression(args[propertyName].y, progression);
1560
+ } else if (progression.type === "exponential") {
1561
+ args[propertyName].x = getExponentialProgression(args[propertyName].x, progression);
1562
+ args[propertyName].y = getExponentialProgression(args[propertyName].y, progression);
1563
+ }
1564
+ }
1565
+ }
1566
+ function getLinearProgression(number, progression) {
1567
+ if (progression.limit !== void 0) {
1568
+ if (number > progression.limit && progression.amt > 0) {
1569
+ return progression.limit;
1570
+ } else if (number < progression.limit && progression.amt < 0) {
1571
+ return progression.limit;
1415
1572
  }
1416
1573
  }
1574
+ return number + progression.amt / 60;
1575
+ }
1576
+ function getExponentialProgression(number, progression) {
1577
+ if (progression.limit !== void 0) {
1578
+ if (number > progression.limit && progression.percentage > 0) {
1579
+ return progression.limit;
1580
+ } else if (number < progression.limit && progression.percentage < 0) {
1581
+ return progression.limit;
1582
+ }
1583
+ }
1584
+ return number + number * progression.percentage;
1417
1585
  }
1418
1586
 
1419
- // src/classes/ticker/TickerMove.ts
1420
- var TickerMove = class extends TickerBase {
1421
- /**
1422
- * The method that will be called every frame to move the canvas element of the canvas.
1423
- * @param t The ticker that is calling this method
1424
- * @param args The arguments that are passed to the ticker
1425
- * @param tags The tags of the canvas element that are connected to this ticker
1426
- */
1427
- fn(t, args, tags) {
1428
- let speed = args.speed === void 0 ? 0.1 : args.speed;
1587
+ // src/classes/ticker/MoveTicker.ts
1588
+ var MoveTicker = class extends TickerBase {
1589
+ fn(ticker, args, tags, tickerId) {
1590
+ let xSpeed = 1;
1591
+ let ySpeed = 1;
1592
+ if (args.speed) {
1593
+ if (typeof args.speed === "number") {
1594
+ xSpeed = args.speed;
1595
+ ySpeed = args.speed;
1596
+ } else {
1597
+ xSpeed = args.speed.x;
1598
+ ySpeed = args.speed.y;
1599
+ }
1600
+ }
1601
+ xSpeed /= 60;
1602
+ ySpeed /= 60;
1429
1603
  let destination = args.destination;
1604
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
1605
+ if (typeof tagToRemoveAfter2 === "string") {
1606
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
1607
+ }
1430
1608
  tags.filter((tag) => {
1431
1609
  var _a;
1432
1610
  let element = GameWindowManager.getCanvasElement(tag);
@@ -1439,41 +1617,42 @@ var TickerMove = class extends TickerBase {
1439
1617
  }).forEach((tag) => {
1440
1618
  let element = GameWindowManager.getCanvasElement(tag);
1441
1619
  if (element && element instanceof Container) {
1442
- let xDistance = destination.x - element.x;
1620
+ let xDistance = destination.x - element.x > 0 ? 1 : -1;
1443
1621
  if (xDistance != 0) {
1444
- element.x += xDistance / speed * t.deltaTime;
1622
+ element.x += xDistance * xSpeed * ticker.deltaTime;
1445
1623
  let newDistance = destination.x - element.x;
1446
1624
  if (xDistance < 0 && newDistance > 0 || xDistance > 0 && newDistance < 0) {
1447
1625
  element.x = destination.x;
1448
1626
  }
1449
1627
  }
1450
- let yDistance = destination.y - element.y;
1628
+ let yDistance = destination.y - element.y > 0 ? 1 : -1;
1451
1629
  if (yDistance != 0) {
1452
- element.y += yDistance / speed * t.deltaTime;
1630
+ element.y += yDistance * ySpeed * ticker.deltaTime;
1453
1631
  let newDistance = destination.y - element.y;
1454
1632
  if (yDistance < 0 && newDistance > 0 || yDistance > 0 && newDistance < 0) {
1455
1633
  element.y = destination.y;
1456
1634
  }
1457
1635
  }
1636
+ if (element.x == destination.x && element.y == destination.y) {
1637
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1638
+ }
1458
1639
  }
1459
1640
  });
1460
1641
  if (args.speedProgression)
1461
1642
  updateTickerProgression(args, "speed", args.speedProgression);
1462
1643
  }
1463
1644
  };
1464
- TickerMove = __decorateClass([
1645
+ MoveTicker = __decorateClass([
1465
1646
  tickerDecorator()
1466
- ], TickerMove);
1467
- var TickerRotate = class extends TickerBase {
1468
- /**
1469
- * The method that will be called every frame to rotate the canvas element of the canvas.
1470
- * @param delta The delta time
1471
- * @param args The arguments that are passed to the ticker
1472
- * @param tags The tags of the canvas element that are connected to this ticker
1473
- */
1474
- fn(t, args, tags) {
1475
- let speed = args.speed === void 0 ? 0.1 : args.speed;
1647
+ ], MoveTicker);
1648
+ var RotateTicker = class extends TickerBase {
1649
+ fn(ticker, args, tags, tickerId) {
1650
+ let speed = (args.speed === void 0 ? 1 : args.speed) / 60;
1476
1651
  let clockwise = args.clockwise === void 0 ? true : args.clockwise;
1652
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
1653
+ if (typeof tagToRemoveAfter2 === "string") {
1654
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
1655
+ }
1477
1656
  tags.filter((tag) => {
1478
1657
  var _a;
1479
1658
  let element = GameWindowManager.getCanvasElement(tag);
@@ -1487,18 +1666,108 @@ var TickerRotate = class extends TickerBase {
1487
1666
  let element = GameWindowManager.getCanvasElement(tag);
1488
1667
  if (element && element instanceof Container) {
1489
1668
  if (clockwise)
1490
- element.rotation += speed * t.deltaTime;
1669
+ element.rotation += speed * ticker.deltaTime;
1491
1670
  else
1492
- element.rotation -= speed * t.deltaTime;
1671
+ element.rotation -= speed * ticker.deltaTime;
1672
+ if (speed < 1e-5 && !(args.speedProgression && args.speedProgression.type == "linear" && args.speedProgression.amt != 0)) {
1673
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1674
+ }
1493
1675
  }
1494
1676
  });
1495
1677
  if (args.speedProgression)
1496
1678
  updateTickerProgression(args, "speed", args.speedProgression);
1497
1679
  }
1498
1680
  };
1499
- TickerRotate = __decorateClass([
1681
+ RotateTicker = __decorateClass([
1500
1682
  tickerDecorator()
1501
- ], TickerRotate);
1683
+ ], RotateTicker);
1684
+ var ZoomTicker = class extends TickerBase {
1685
+ fn(ticker, args, tags, tickerId) {
1686
+ let xSpeed = 0.1;
1687
+ let ySpeed = 0.1;
1688
+ if (args.speed) {
1689
+ if (typeof args.speed === "number") {
1690
+ xSpeed = args.speed;
1691
+ ySpeed = args.speed;
1692
+ } else {
1693
+ xSpeed = args.speed.x;
1694
+ ySpeed = args.speed.y;
1695
+ }
1696
+ }
1697
+ xSpeed /= 60;
1698
+ ySpeed /= 60;
1699
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
1700
+ if (typeof tagToRemoveAfter2 === "string") {
1701
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
1702
+ }
1703
+ let type = args.type || "zoom";
1704
+ let xLimit = Infinity;
1705
+ let yLimit = Infinity;
1706
+ if (args.limit) {
1707
+ if (typeof args.limit === "number") {
1708
+ xLimit = args.limit;
1709
+ yLimit = args.limit;
1710
+ } else {
1711
+ xLimit = args.limit.x;
1712
+ yLimit = args.limit.y;
1713
+ }
1714
+ }
1715
+ tags.filter((tag) => {
1716
+ var _a;
1717
+ let element = GameWindowManager.getCanvasElement(tag);
1718
+ if (args.startOnlyIfHaveTexture) {
1719
+ if (element && element instanceof Sprite && ((_a = element.texture) == null ? void 0 : _a.label) == "EMPTY") {
1720
+ return false;
1721
+ }
1722
+ }
1723
+ return true;
1724
+ }).forEach((tag) => {
1725
+ let element = GameWindowManager.getCanvasElement(tag);
1726
+ if (element && element instanceof Container) {
1727
+ if (type === "zoom" && (element.scale.x < xLimit || element.scale.y < yLimit)) {
1728
+ element.scale.x += xSpeed * ticker.deltaTime;
1729
+ element.scale.y += ySpeed * ticker.deltaTime;
1730
+ } else if (type === "unzoom" && (element.scale.x > xLimit || element.scale.y > yLimit)) {
1731
+ element.scale.x -= xSpeed * ticker.deltaTime;
1732
+ element.scale.y -= ySpeed * ticker.deltaTime;
1733
+ }
1734
+ if (type === "zoom") {
1735
+ if (element.scale.x > xLimit) {
1736
+ element.scale.x = xLimit;
1737
+ }
1738
+ if (element.scale.y > yLimit) {
1739
+ element.scale.y = yLimit;
1740
+ }
1741
+ if (element.scale.x >= xLimit && element.scale.y >= yLimit) {
1742
+ element.scale.x = xLimit;
1743
+ element.scale.y = yLimit;
1744
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1745
+ }
1746
+ } else if (type === "unzoom") {
1747
+ if (element.scale.x < xLimit) {
1748
+ element.scale.x = xLimit;
1749
+ }
1750
+ if (element.scale.y < yLimit) {
1751
+ element.scale.y = yLimit;
1752
+ }
1753
+ if (element.scale.x <= xLimit && element.scale.y <= yLimit) {
1754
+ element.scale.x = xLimit;
1755
+ element.scale.y = yLimit;
1756
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1757
+ }
1758
+ }
1759
+ if (xSpeed < 1e-5 && ySpeed < 1e-5 && !(args.speedProgression && args.speedProgression.type == "linear" && args.speedProgression.amt != 0)) {
1760
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1761
+ }
1762
+ }
1763
+ });
1764
+ if (args.speedProgression)
1765
+ updateTickerProgression(args, "speed", args.speedProgression);
1766
+ }
1767
+ };
1768
+ ZoomTicker = __decorateClass([
1769
+ tickerDecorator()
1770
+ ], ZoomTicker);
1502
1771
 
1503
1772
  // src/functions/DiffUtility.ts
1504
1773
  function restoreDeepDiffChanges(data, differences) {
@@ -1605,7 +1874,8 @@ var _GameStepManager = class _GameStepManager {
1605
1874
  canvas: {
1606
1875
  childrenTagsOrder: [],
1607
1876
  currentElements: {},
1608
- currentTickers: []
1877
+ currentTickers: {},
1878
+ currentTickersSteps: {}
1609
1879
  },
1610
1880
  labelIndex: -1,
1611
1881
  openedLabels: []
@@ -1816,8 +2086,15 @@ var _GameStepManager = class _GameStepManager {
1816
2086
  }
1817
2087
  try {
1818
2088
  if (labelId === CLOSE_LABEL_ID) {
1819
- let closeLabel = newCloseLabel(choiseMade);
1820
- return _GameStepManager.closeChoiceMenu(closeLabel, props);
2089
+ let closeCurrentLabel = newCloseLabel(choiseMade);
2090
+ let choice = {
2091
+ label: closeCurrentLabel,
2092
+ text: "",
2093
+ closeCurrentLabel: false,
2094
+ type: "close",
2095
+ props: {}
2096
+ };
2097
+ return _GameStepManager.closeChoiceMenu(choice, props);
1821
2098
  }
1822
2099
  let tempLabel = getLabelById(labelId);
1823
2100
  if (!tempLabel) {
@@ -1867,8 +2144,15 @@ var _GameStepManager = class _GameStepManager {
1867
2144
  }
1868
2145
  try {
1869
2146
  if (labelId === CLOSE_LABEL_ID) {
1870
- let closeLabel = newCloseLabel(choiseMade);
1871
- return _GameStepManager.closeChoiceMenu(closeLabel, props);
2147
+ let closeCurrentLabel = newCloseLabel(choiseMade);
2148
+ let choice = {
2149
+ label: closeCurrentLabel,
2150
+ text: "",
2151
+ closeCurrentLabel: false,
2152
+ type: "close",
2153
+ props: {}
2154
+ };
2155
+ return _GameStepManager.closeChoiceMenu(choice, props);
1872
2156
  }
1873
2157
  let tempLabel = getLabelById(labelId);
1874
2158
  if (!tempLabel) {
@@ -1884,7 +2168,8 @@ var _GameStepManager = class _GameStepManager {
1884
2168
  }
1885
2169
  /**
1886
2170
  * When the player is in a choice menu, can use this function to exit to the choice menu.
1887
- * @param props The props to pass to the step.
2171
+ * @param choice
2172
+ * @param props
1888
2173
  * @returns StepLabelResultType or undefined.
1889
2174
  * @example
1890
2175
  * ```typescript
@@ -1895,12 +2180,16 @@ var _GameStepManager = class _GameStepManager {
1895
2180
  * })
1896
2181
  * ```
1897
2182
  */
1898
- static closeChoiceMenu(label, props) {
2183
+ static closeChoiceMenu(choice, props) {
1899
2184
  return __async(this, null, function* () {
2185
+ let label = choice.label;
1900
2186
  let choiseMade = void 0;
1901
2187
  if (typeof label.choiseIndex === "number") {
1902
2188
  choiseMade = label.choiseIndex;
1903
2189
  }
2190
+ if (choice.closeCurrentLabel) {
2191
+ _GameStepManager.closeCurrentLabel();
2192
+ }
1904
2193
  return _GameStepManager.runNextStep(props, choiseMade);
1905
2194
  });
1906
2195
  }