@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
@@ -33,8 +33,7 @@ var __decorateClass = (decorators, target, key, kind) => {
33
33
  for (var i = decorators.length - 1, decorator; i >= 0; i--)
34
34
  if (decorator = decorators[i])
35
35
  result = (kind ? decorator(target, key, result) : decorator(result)) || result;
36
- if (kind && result)
37
- __defProp(target, key, result);
36
+ if (kind && result) __defProp(target, key, result);
38
37
  return result;
39
38
  };
40
39
  var __async = (__this, __arguments, generator) => {
@@ -609,7 +608,7 @@ function tickerDecorator(name) {
609
608
  name = target.name;
610
609
  }
611
610
  if (registeredTickers[name]) {
612
- console.warn(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`);
611
+ console.info(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`);
613
612
  }
614
613
  registeredTickers[name] = target;
615
614
  };
@@ -628,12 +627,6 @@ function geTickerInstanceByClassName(tickerName, args, duration, priority) {
628
627
  }
629
628
  }
630
629
 
631
- // src/types/PauseType.ts
632
- var PauseValueType = "pause";
633
-
634
- // src/types/RepeatType.ts
635
- var Repeat = "repeat";
636
-
637
630
  // src/decorators/LabelDecorator.ts
638
631
  var registeredLabels = {};
639
632
  function getLabelById(id) {
@@ -654,8 +647,8 @@ function getDialogue() {
654
647
  var TickerBase = class {
655
648
  /**
656
649
  * @param args The arguments that you want to pass to the ticker.
657
- * @param duration The duration of the ticker. If is undefined, the ticker will be called every frame.
658
- * @param priority The priority of the ticker. If is undefined, the priority will be UPDATE_PRIORITY.NORMAL.
650
+ * @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
651
+ * @param priority The priority of the ticker. @default UPDATE_PRIORITY.NORMAL
659
652
  */
660
653
  constructor(args, duration, priority) {
661
654
  this.args = args;
@@ -665,28 +658,26 @@ var TickerBase = class {
665
658
  /**
666
659
  * The method that will be called every frame.
667
660
  * This method should be overridden and you can use GameWindowManager.addCanvasElement() to get the canvas element of the canvas, and edit them.
668
- * @param t The ticker that is calling this method
669
- * @param args The arguments that you passed when you added the ticker
670
- * @param tags The tags of the canvas elements that are connected to this ticker
661
+ * @param _ticker The ticker that is calling this method
662
+ * @param _args The arguments that you passed when you added the ticker
663
+ * @param _tags The tags of the canvas elements that are connected to this ticker
664
+ * @param _tickerId The id of the ticker. You can use this to get the ticker from the {@link GameWindowManager.currentTickers}
671
665
  */
672
- fn(_t, _args, _tags) {
666
+ fn(_ticker, _args, _tags, _tickerId) {
673
667
  throw new Error("[Pixi'VN] The method TickerBase.fn() must be overridden");
674
668
  }
675
669
  };
676
- var TickerFadeAlpha = class extends TickerBase {
677
- /**
678
- * The method that will be called every frame to fade the alpha of the canvas element of the canvas.
679
- * @param delta The delta time
680
- * @param args The arguments that are passed to the ticker
681
- * @param tags The tags of the canvas element that are connected to this ticker
682
- */
683
- fn(t, args, tags) {
670
+
671
+ // src/classes/ticker/FadeAlphaTicker.ts
672
+ var FadeAlphaTicker = class extends TickerBase {
673
+ fn(ticker, args, tags, tickerId) {
684
674
  let type = args.type === void 0 ? "hide" : args.type;
685
- let speed = args.speed === void 0 ? 0.1 : args.speed;
675
+ let duration = args.duration === void 0 ? 1 : args.duration;
676
+ let speed = 1 / (duration * 60);
686
677
  let limit = args.limit === void 0 ? type === "hide" ? 0 : 1 : args.limit;
687
- let removeElementAfter = args.tagToRemoveAfter || [];
688
- if (typeof removeElementAfter === "string") {
689
- removeElementAfter = [removeElementAfter];
678
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
679
+ if (typeof tagToRemoveAfter2 === "string") {
680
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
690
681
  }
691
682
  if (type === "hide" && limit < 0) {
692
683
  limit = 0;
@@ -707,61 +698,88 @@ var TickerFadeAlpha = class extends TickerBase {
707
698
  let element = GameWindowManager.getCanvasElement(tag);
708
699
  if (element && element instanceof pixi_js.Container) {
709
700
  if (type === "show" && element.alpha < limit) {
710
- element.alpha += speed * t.deltaTime;
701
+ element.alpha += speed * ticker.deltaTime;
711
702
  } else if (type === "hide" && element.alpha > limit) {
712
- element.alpha -= speed * t.deltaTime;
713
- } else {
703
+ element.alpha -= speed * ticker.deltaTime;
704
+ }
705
+ if (type === "show" && element.alpha >= limit) {
706
+ element.alpha = limit;
707
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
708
+ } else if (type === "hide" && element.alpha <= limit) {
714
709
  element.alpha = limit;
715
- GameWindowManager.removeAssociationBetweenTickerCanvasElement(tag, this);
716
- GameWindowManager.removeCanvasElement(removeElementAfter);
710
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
717
711
  }
718
712
  }
719
713
  });
720
714
  }
721
715
  };
722
- TickerFadeAlpha = __decorateClass([
716
+ FadeAlphaTicker = __decorateClass([
723
717
  tickerDecorator()
724
- ], TickerFadeAlpha);
718
+ ], FadeAlphaTicker);
725
719
 
726
720
  // src/functions/TickerUtility.ts
727
721
  function updateTickerProgression(args, propertyName, progression) {
728
- if (args.hasOwnProperty(propertyName) && typeof args[propertyName] !== "number") {
722
+ if (args[propertyName] === void 0 || !progression || args[propertyName] === progression.limit) {
729
723
  return;
730
724
  }
731
- if (args[propertyName] !== void 0 && progression && args[propertyName] !== progression.limit) {
725
+ if (typeof args[propertyName] === "number") {
732
726
  if (progression.type === "linear") {
733
- args[propertyName] += progression.amt;
734
- if (progression.limit !== void 0) {
735
- if (args[propertyName] > progression.limit && progression.amt > 0) {
736
- args[propertyName] = progression.limit;
737
- } else if (args[propertyName] < progression.limit && progression.amt < 0) {
738
- args[propertyName] = progression.limit;
739
- }
740
- }
727
+ args[propertyName] = getLinearProgression(args[propertyName], progression);
741
728
  } else if (progression.type === "exponential") {
742
- args[propertyName] += args[propertyName] * progression.percentage;
743
- if (progression.limit !== void 0) {
744
- if (args[propertyName] > progression.limit && progression.percentage > 0) {
745
- args[propertyName] = progression.limit;
746
- } else if (args[propertyName] < progression.limit && progression.percentage < 0) {
747
- args[propertyName] = progression.limit;
748
- }
749
- }
729
+ args[propertyName] = getExponentialProgression(args[propertyName], progression);
730
+ }
731
+ } 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") {
732
+ if (progression.type === "linear") {
733
+ args[propertyName].x = getLinearProgression(args[propertyName].x, progression);
734
+ args[propertyName].y = getLinearProgression(args[propertyName].y, progression);
735
+ } else if (progression.type === "exponential") {
736
+ args[propertyName].x = getExponentialProgression(args[propertyName].x, progression);
737
+ args[propertyName].y = getExponentialProgression(args[propertyName].y, progression);
738
+ }
739
+ }
740
+ }
741
+ function getLinearProgression(number, progression) {
742
+ if (progression.limit !== void 0) {
743
+ if (number > progression.limit && progression.amt > 0) {
744
+ return progression.limit;
745
+ } else if (number < progression.limit && progression.amt < 0) {
746
+ return progression.limit;
747
+ }
748
+ }
749
+ return number + progression.amt / 60;
750
+ }
751
+ function getExponentialProgression(number, progression) {
752
+ if (progression.limit !== void 0) {
753
+ if (number > progression.limit && progression.percentage > 0) {
754
+ return progression.limit;
755
+ } else if (number < progression.limit && progression.percentage < 0) {
756
+ return progression.limit;
750
757
  }
751
758
  }
759
+ return number + number * progression.percentage;
752
760
  }
753
761
 
754
- // src/classes/ticker/TickerMove.ts
755
- var TickerMove = class extends TickerBase {
756
- /**
757
- * The method that will be called every frame to move the canvas element of the canvas.
758
- * @param t The ticker that is calling this method
759
- * @param args The arguments that are passed to the ticker
760
- * @param tags The tags of the canvas element that are connected to this ticker
761
- */
762
- fn(t, args, tags) {
763
- let speed = args.speed === void 0 ? 0.1 : args.speed;
762
+ // src/classes/ticker/MoveTicker.ts
763
+ var MoveTicker = class extends TickerBase {
764
+ fn(ticker, args, tags, tickerId) {
765
+ let xSpeed = 1;
766
+ let ySpeed = 1;
767
+ if (args.speed) {
768
+ if (typeof args.speed === "number") {
769
+ xSpeed = args.speed;
770
+ ySpeed = args.speed;
771
+ } else {
772
+ xSpeed = args.speed.x;
773
+ ySpeed = args.speed.y;
774
+ }
775
+ }
776
+ xSpeed /= 60;
777
+ ySpeed /= 60;
764
778
  let destination = args.destination;
779
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
780
+ if (typeof tagToRemoveAfter2 === "string") {
781
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
782
+ }
765
783
  tags.filter((tag) => {
766
784
  var _a;
767
785
  let element = GameWindowManager.getCanvasElement(tag);
@@ -774,41 +792,42 @@ var TickerMove = class extends TickerBase {
774
792
  }).forEach((tag) => {
775
793
  let element = GameWindowManager.getCanvasElement(tag);
776
794
  if (element && element instanceof pixi_js.Container) {
777
- let xDistance = destination.x - element.x;
795
+ let xDistance = destination.x - element.x > 0 ? 1 : -1;
778
796
  if (xDistance != 0) {
779
- element.x += xDistance / speed * t.deltaTime;
797
+ element.x += xDistance * xSpeed * ticker.deltaTime;
780
798
  let newDistance = destination.x - element.x;
781
799
  if (xDistance < 0 && newDistance > 0 || xDistance > 0 && newDistance < 0) {
782
800
  element.x = destination.x;
783
801
  }
784
802
  }
785
- let yDistance = destination.y - element.y;
803
+ let yDistance = destination.y - element.y > 0 ? 1 : -1;
786
804
  if (yDistance != 0) {
787
- element.y += yDistance / speed * t.deltaTime;
805
+ element.y += yDistance * ySpeed * ticker.deltaTime;
788
806
  let newDistance = destination.y - element.y;
789
807
  if (yDistance < 0 && newDistance > 0 || yDistance > 0 && newDistance < 0) {
790
808
  element.y = destination.y;
791
809
  }
792
810
  }
811
+ if (element.x == destination.x && element.y == destination.y) {
812
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
813
+ }
793
814
  }
794
815
  });
795
816
  if (args.speedProgression)
796
817
  updateTickerProgression(args, "speed", args.speedProgression);
797
818
  }
798
819
  };
799
- TickerMove = __decorateClass([
820
+ MoveTicker = __decorateClass([
800
821
  tickerDecorator()
801
- ], TickerMove);
802
- var TickerRotate = class extends TickerBase {
803
- /**
804
- * The method that will be called every frame to rotate the canvas element of the canvas.
805
- * @param delta The delta time
806
- * @param args The arguments that are passed to the ticker
807
- * @param tags The tags of the canvas element that are connected to this ticker
808
- */
809
- fn(t, args, tags) {
810
- let speed = args.speed === void 0 ? 0.1 : args.speed;
822
+ ], MoveTicker);
823
+ var RotateTicker = class extends TickerBase {
824
+ fn(ticker, args, tags, tickerId) {
825
+ let speed = (args.speed === void 0 ? 1 : args.speed) / 60;
811
826
  let clockwise = args.clockwise === void 0 ? true : args.clockwise;
827
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
828
+ if (typeof tagToRemoveAfter2 === "string") {
829
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
830
+ }
812
831
  tags.filter((tag) => {
813
832
  var _a;
814
833
  let element = GameWindowManager.getCanvasElement(tag);
@@ -822,18 +841,111 @@ var TickerRotate = class extends TickerBase {
822
841
  let element = GameWindowManager.getCanvasElement(tag);
823
842
  if (element && element instanceof pixi_js.Container) {
824
843
  if (clockwise)
825
- element.rotation += speed * t.deltaTime;
844
+ element.rotation += speed * ticker.deltaTime;
826
845
  else
827
- element.rotation -= speed * t.deltaTime;
846
+ element.rotation -= speed * ticker.deltaTime;
847
+ if (speed < 1e-5 && !(args.speedProgression && args.speedProgression.type == "linear" && args.speedProgression.amt != 0)) {
848
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
849
+ }
850
+ }
851
+ });
852
+ if (args.speedProgression)
853
+ updateTickerProgression(args, "speed", args.speedProgression);
854
+ }
855
+ };
856
+ RotateTicker = __decorateClass([
857
+ tickerDecorator()
858
+ ], RotateTicker);
859
+ var ZoomTicker = class extends TickerBase {
860
+ fn(ticker, args, tags, tickerId) {
861
+ let xSpeed = 0.1;
862
+ let ySpeed = 0.1;
863
+ if (args.speed) {
864
+ if (typeof args.speed === "number") {
865
+ xSpeed = args.speed;
866
+ ySpeed = args.speed;
867
+ } else {
868
+ xSpeed = args.speed.x;
869
+ ySpeed = args.speed.y;
870
+ }
871
+ }
872
+ xSpeed /= 60;
873
+ ySpeed /= 60;
874
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
875
+ if (typeof tagToRemoveAfter2 === "string") {
876
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
877
+ }
878
+ let type = args.type || "zoom";
879
+ let xLimit = Infinity;
880
+ let yLimit = Infinity;
881
+ if (args.limit) {
882
+ if (typeof args.limit === "number") {
883
+ xLimit = args.limit;
884
+ yLimit = args.limit;
885
+ } else {
886
+ xLimit = args.limit.x;
887
+ yLimit = args.limit.y;
888
+ }
889
+ }
890
+ tags.filter((tag) => {
891
+ var _a;
892
+ let element = GameWindowManager.getCanvasElement(tag);
893
+ if (args.startOnlyIfHaveTexture) {
894
+ if (element && element instanceof pixi_js.Sprite && ((_a = element.texture) == null ? void 0 : _a.label) == "EMPTY") {
895
+ return false;
896
+ }
897
+ }
898
+ return true;
899
+ }).forEach((tag) => {
900
+ let element = GameWindowManager.getCanvasElement(tag);
901
+ if (element && element instanceof pixi_js.Container) {
902
+ if (type === "zoom" && (element.scale.x < xLimit || element.scale.y < yLimit)) {
903
+ element.scale.x += xSpeed * ticker.deltaTime;
904
+ element.scale.y += ySpeed * ticker.deltaTime;
905
+ } else if (type === "unzoom" && (element.scale.x > xLimit || element.scale.y > yLimit)) {
906
+ element.scale.x -= xSpeed * ticker.deltaTime;
907
+ element.scale.y -= ySpeed * ticker.deltaTime;
908
+ }
909
+ if (type === "zoom") {
910
+ if (element.scale.x > xLimit) {
911
+ element.scale.x = xLimit;
912
+ }
913
+ if (element.scale.y > yLimit) {
914
+ element.scale.y = yLimit;
915
+ }
916
+ if (element.scale.x >= xLimit && element.scale.y >= yLimit) {
917
+ element.scale.x = xLimit;
918
+ element.scale.y = yLimit;
919
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
920
+ }
921
+ } else if (type === "unzoom") {
922
+ if (element.scale.x < xLimit) {
923
+ element.scale.x = xLimit;
924
+ }
925
+ if (element.scale.y < yLimit) {
926
+ element.scale.y = yLimit;
927
+ }
928
+ if (element.scale.x <= xLimit && element.scale.y <= yLimit) {
929
+ element.scale.x = xLimit;
930
+ element.scale.y = yLimit;
931
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
932
+ }
933
+ }
934
+ if (xSpeed < 1e-5 && ySpeed < 1e-5 && !(args.speedProgression && args.speedProgression.type == "linear" && args.speedProgression.amt != 0)) {
935
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
936
+ }
828
937
  }
829
938
  });
830
939
  if (args.speedProgression)
831
940
  updateTickerProgression(args, "speed", args.speedProgression);
832
941
  }
833
942
  };
834
- TickerRotate = __decorateClass([
943
+ ZoomTicker = __decorateClass([
835
944
  tickerDecorator()
836
- ], TickerRotate);
945
+ ], ZoomTicker);
946
+
947
+ // src/constants.ts
948
+ var Repeat = "repeat";
837
949
 
838
950
  // src/functions/ExportUtility.ts
839
951
  function createExportableElement(element) {
@@ -983,6 +1095,9 @@ function asciiArtLog() {
983
1095
  `);
984
1096
  }
985
1097
 
1098
+ // src/types/ticker/TagToRemoveAfterType.ts
1099
+ var tagToRemoveAfter = "tagToRemoveAfter";
1100
+
986
1101
  // src/managers/WindowManager.ts
987
1102
  var _GameWindowManager = class _GameWindowManager {
988
1103
  constructor() {
@@ -1165,25 +1280,25 @@ var _GameWindowManager = class _GameWindowManager {
1165
1280
  /**
1166
1281
  * Remove a canvas element from the canvas.
1167
1282
  * And remove all tickers that are not connected to any canvas element.
1168
- * @param tag The tag of the canvas element to be removed.
1283
+ * @param tags The tag of the canvas element to be removed.
1169
1284
  * @returns
1170
1285
  * @example
1171
1286
  * ```typescript
1172
1287
  * GameWindowManager.removeCanvasElement("bunny");
1173
1288
  * ```
1174
1289
  */
1175
- static removeCanvasElement(tag) {
1176
- if (typeof tag === "string") {
1177
- tag = [tag];
1290
+ static removeCanvasElement(tags) {
1291
+ if (typeof tags === "string") {
1292
+ tags = [tags];
1178
1293
  }
1179
- tag.forEach((t) => {
1180
- if (_GameWindowManager._children[t]) {
1181
- _GameWindowManager.app.stage.removeChild(_GameWindowManager._children[t]);
1182
- delete _GameWindowManager._children[t];
1294
+ tags.forEach((tag) => {
1295
+ if (_GameWindowManager._children[tag]) {
1296
+ _GameWindowManager.app.stage.removeChild(_GameWindowManager._children[tag]);
1297
+ delete _GameWindowManager._children[tag];
1298
+ _GameWindowManager.removeTickerByCanvasElement(tag);
1183
1299
  }
1184
1300
  });
1185
- _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
1186
- _GameWindowManager.childrenTagsOrder = _GameWindowManager.childrenTagsOrder.filter((t) => !tag.includes(t));
1301
+ _GameWindowManager.childrenTagsOrder = _GameWindowManager.childrenTagsOrder.filter((t) => !tags.includes(t));
1187
1302
  }
1188
1303
  /**
1189
1304
  * Get a canvas element by the tag.
@@ -1213,18 +1328,43 @@ var _GameWindowManager = class _GameWindowManager {
1213
1328
  _GameWindowManager.app.stage.removeChildren();
1214
1329
  _GameWindowManager._children = {};
1215
1330
  _GameWindowManager.childrenTagsOrder = [];
1216
- _GameWindowManager.removeTickers();
1331
+ _GameWindowManager.removeAllTickers();
1217
1332
  }
1218
1333
  /**
1219
1334
  * Edit the tag of a canvas element.
1220
1335
  * @param oldTag The old tag of the canvas element.
1221
1336
  * @param newTag The new tag of the canvas element.
1222
1337
  */
1223
- static editTagCanvasElement(oldTag, newTag) {
1338
+ static editCanvasElementTag(oldTag, newTag) {
1224
1339
  if (_GameWindowManager._children[oldTag]) {
1225
1340
  _GameWindowManager._children[newTag] = _GameWindowManager._children[oldTag];
1226
1341
  delete _GameWindowManager._children[oldTag];
1227
1342
  }
1343
+ if (_GameWindowManager._currentTickersSteps[oldTag]) {
1344
+ _GameWindowManager._currentTickersSteps[newTag] = _GameWindowManager._currentTickersSteps[oldTag];
1345
+ delete _GameWindowManager._currentTickersSteps[oldTag];
1346
+ }
1347
+ for (let id in _GameWindowManager._currentTickers) {
1348
+ let ticker = _GameWindowManager._currentTickers[id];
1349
+ if (ticker.canvasElementTags.includes(oldTag)) {
1350
+ ticker.canvasElementTags = ticker.canvasElementTags.map((t) => t === oldTag ? newTag : t);
1351
+ if (ticker.args.hasOwnProperty(tagToRemoveAfter)) {
1352
+ let tagToRemoveAfter2 = ticker.args.tagToRemoveAfter;
1353
+ if (typeof tagToRemoveAfter2 === "string") {
1354
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
1355
+ }
1356
+ if (Array.isArray(tagToRemoveAfter2)) {
1357
+ ticker.args.tagToRemoveAfter = tagToRemoveAfter2.map((t) => t === oldTag ? newTag : t);
1358
+ }
1359
+ }
1360
+ }
1361
+ }
1362
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1363
+ let TickerTimeout = _GameWindowManager._currentTickersTimeouts[timeout];
1364
+ if (TickerTimeout.tags.includes(oldTag)) {
1365
+ TickerTimeout.tags = TickerTimeout.tags.map((t) => t === oldTag ? newTag : t);
1366
+ }
1367
+ }
1228
1368
  }
1229
1369
  /** Edit Tickers Methods */
1230
1370
  /**
@@ -1233,23 +1373,38 @@ var _GameWindowManager = class _GameWindowManager {
1233
1373
  static get currentTickers() {
1234
1374
  return _GameWindowManager._currentTickers;
1235
1375
  }
1376
+ static get currentTickersList() {
1377
+ return Object.values(_GameWindowManager._currentTickers);
1378
+ }
1379
+ static get currentTickersWithoutCreatedBySteps() {
1380
+ return Object.fromEntries(Object.entries(_GameWindowManager._currentTickers).filter(([_, ticker]) => !ticker.createdByTicketStepsId));
1381
+ }
1236
1382
  /**
1237
1383
  * The steps of the tickers
1238
1384
  */
1239
1385
  static get currentTickersSteps() {
1240
1386
  return _GameWindowManager._currentTickersSteps;
1241
1387
  }
1388
+ static generateTickerId(tickerData) {
1389
+ try {
1390
+ return sha1__default.default(JSON.stringify(tickerData)).toString() + "_" + Math.random().toString(36).substring(7);
1391
+ } catch (e) {
1392
+ throw new Error(`[Pixi'VN] Error to generate ticker id: ${e}`);
1393
+ }
1394
+ }
1242
1395
  /**
1243
- * Run a ticker.
1396
+ * Run a ticker. You can run multiple addTicker with the same tag and different tickerClasses.
1397
+ * If you run a ticker with the same tag and tickerClass, the old ticker will be removed.
1398
+ * If already exists a sequence of tickers with the same tag, it will be removed.
1244
1399
  * @param canvasEslementTag The tag of the canvas element that will use the ticker.
1245
1400
  * @param ticker The ticker class to be run.
1246
1401
  * @param args The arguments to be used in the ticker.
1247
- * @param duration The time to be used in the ticker. This number is in milliseconds. If it is undefined, the ticker will run forever.
1402
+ * @param duration The time to be used in the ticker. This number is in seconds. If it is undefined, the ticker will run forever.
1248
1403
  * @param priority The priority to be used in the ticker.
1249
1404
  * @returns
1250
1405
  * @example
1251
1406
  * ```typescript
1252
- * GameWindowManager.addTicker("alien", new TickerRotate({ speed: 0.2 }))
1407
+ * GameWindowManager.addTicker("alien", new RotateTicker({ speed: 0.2 }))
1253
1408
  * ```
1254
1409
  */
1255
1410
  static addTicker(canvasElementTag, ticker) {
@@ -1257,82 +1412,88 @@ var _GameWindowManager = class _GameWindowManager {
1257
1412
  if (typeof canvasElementTag === "string") {
1258
1413
  canvasElementTag = [canvasElementTag];
1259
1414
  }
1260
- let t = geTickerInstanceByClassName(tickerName, ticker.args, ticker.duration, ticker.priority);
1261
- if (!t) {
1415
+ if (!geTickerInstanceByClassName(tickerName, ticker.args, ticker.duration, ticker.priority)) {
1262
1416
  console.error(`[Pixi'VN] Ticker ${tickerName} not found`);
1263
1417
  return;
1264
1418
  }
1265
- _GameWindowManager.removeAssociationBetweenTickerCanvasElement(canvasElementTag, ticker);
1266
1419
  let tickerHistory = {
1267
1420
  fn: () => {
1268
1421
  },
1269
1422
  className: tickerName,
1270
- args: ticker.args,
1423
+ args: createExportableElement(ticker.args),
1271
1424
  canvasElementTags: canvasElementTag,
1272
1425
  priority: ticker.priority,
1273
1426
  duration: ticker.duration
1274
1427
  };
1275
- _GameWindowManager.pushTicker(tickerHistory, t);
1276
- _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
1428
+ let id = _GameWindowManager.generateTickerId(tickerHistory);
1429
+ _GameWindowManager.pushTicker(id, tickerHistory, ticker);
1277
1430
  if (ticker.duration) {
1278
1431
  let timeout = setTimeout(() => {
1279
1432
  _GameWindowManager.removeTickerTimeoutInfo(timeout);
1280
- _GameWindowManager.nextTickerStep(canvasElementTag);
1281
- }, ticker.duration);
1282
- _GameWindowManager.addTickerTimeoutInfo(canvasElementTag, tickerName, timeout.toString());
1433
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
1434
+ if (tickerTimeoutInfo) {
1435
+ _GameWindowManager.removeTicker(id);
1436
+ }
1437
+ }, ticker.duration * 1e3);
1438
+ _GameWindowManager.addTickerTimeoutInfo(canvasElementTag, tickerName, timeout.toString(), true);
1283
1439
  }
1284
1440
  }
1285
- static pushTicker(tickerData, ticker) {
1441
+ static pushTicker(id, tickerData, ticker) {
1286
1442
  _GameWindowManager.removeAssociationBetweenTickerCanvasElement(tickerData.canvasElementTags, tickerData);
1287
- _GameWindowManager._currentTickers.push(tickerData);
1443
+ _GameWindowManager._currentTickers[id] = tickerData;
1288
1444
  tickerData.fn = (t) => {
1289
- ticker == null ? void 0 : ticker.fn(t, tickerData.args, tickerData.canvasElementTags);
1445
+ let data = _GameWindowManager._currentTickers[id];
1446
+ if (data) {
1447
+ ticker == null ? void 0 : ticker.fn(t, data.args, data.canvasElementTags, id);
1448
+ }
1290
1449
  };
1291
1450
  _GameWindowManager.app.ticker.add(tickerData.fn, void 0, tickerData.priority);
1292
1451
  }
1293
1452
  /**
1294
- * Run a sequence of tickers.
1453
+ * Run a sequence of tickers. If exists a ticker steps with the same tag, it will be removed.
1295
1454
  * @param tag The tag of canvas element that will use the tickers.
1296
1455
  * @param steps The steps of the tickers.
1456
+ * @param currentStepNumber The current step number. It is used to continue the sequence of tickers.
1297
1457
  * @returns
1298
1458
  * @example
1299
1459
  * ```typescript
1300
1460
  * GameWindowManager.addTickersSteps("alien", [
1301
- * new TickerRotate({ speed: 0.1, clockwise: true }, 2000),
1302
- * Pause(500),
1303
- * new TickerRotate({ speed: 0.2, clockwise: false }, 2000),
1461
+ * new RotateTicker({ speed: 0.1, clockwise: true }, 2), // 2 seconds
1462
+ * Pause(1), // 1 second
1463
+ * new RotateTicker({ speed: 0.2, clockwise: false }, 2),
1304
1464
  * Repeat,
1305
1465
  * ])
1306
1466
  * ```
1307
1467
  */
1308
- static addTickersSteps(tag, steps) {
1468
+ static addTickersSteps(tag, steps, currentStepNumber = 0) {
1309
1469
  if (steps.length == 0) {
1310
1470
  console.warn("[Pixi'VN] The steps of the tickers is empty");
1311
1471
  return;
1312
1472
  }
1313
- let alredyExists = _GameWindowManager._currentTickersSteps[tag] !== void 0;
1473
+ _GameWindowManager.removeTickerStepByCanvasElement(tag);
1314
1474
  _GameWindowManager._currentTickersSteps[tag] = {
1315
- currentStepNumber: 0,
1316
- steps: steps.map((s) => {
1317
- if (s === Repeat) {
1318
- return s;
1319
- }
1320
- if (!s.duration) {
1321
- console.warn("[Pixi'VN] Duration is not defined, so it will be set to 1000");
1322
- s.duration = 1e3;
1475
+ currentStepNumber,
1476
+ steps: steps.map((step) => {
1477
+ if (step === Repeat) {
1478
+ return step;
1323
1479
  }
1324
- if (s.hasOwnProperty("type") && s.type === PauseValueType) {
1325
- return s;
1480
+ if (step.hasOwnProperty("type") && step.type === "pause") {
1481
+ return step;
1326
1482
  }
1327
- let tickerName = s.constructor.name;
1483
+ let tickerName = step.constructor.name;
1328
1484
  return {
1329
1485
  ticker: tickerName,
1330
- args: s.args,
1331
- duration: s.duration
1486
+ args: createExportableElement(step.args),
1487
+ duration: step.duration
1332
1488
  };
1333
1489
  })
1334
1490
  };
1335
- if (!alredyExists) {
1491
+ _GameWindowManager.runTickersSteps(tag);
1492
+ }
1493
+ static restoneTickersSteps(data) {
1494
+ for (let tag in data) {
1495
+ let steps = data[tag];
1496
+ _GameWindowManager._currentTickersSteps[tag] = steps;
1336
1497
  _GameWindowManager.runTickersSteps(tag);
1337
1498
  }
1338
1499
  }
@@ -1346,12 +1507,17 @@ var _GameWindowManager = class _GameWindowManager {
1346
1507
  return;
1347
1508
  }
1348
1509
  }
1349
- if (step.hasOwnProperty("type") && step.type === PauseValueType) {
1510
+ if (step.hasOwnProperty("type") && step.type === "pause") {
1350
1511
  let timeout = setTimeout(() => {
1512
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
1513
+ if (tickerTimeoutInfo) {
1514
+ tickerTimeoutInfo.tags.forEach((tag2) => {
1515
+ _GameWindowManager.nextTickerStep(tag2);
1516
+ });
1517
+ }
1351
1518
  _GameWindowManager.removeTickerTimeoutInfo(timeout);
1352
- _GameWindowManager.nextTickerStep(tag);
1353
- }, step.duration);
1354
- _GameWindowManager.addTickerTimeoutInfo(tag, "steps", timeout.toString());
1519
+ }, step.duration * 1e3);
1520
+ _GameWindowManager.addTickerTimeoutInfo(tag, "steps", timeout.toString(), false);
1355
1521
  return;
1356
1522
  }
1357
1523
  let ticker = geTickerInstanceByClassName(step.ticker, step.args, step.duration, step.priority);
@@ -1359,57 +1525,88 @@ var _GameWindowManager = class _GameWindowManager {
1359
1525
  console.error(`[Pixi'VN] Ticker ${step.ticker} not found`);
1360
1526
  return;
1361
1527
  }
1362
- _GameWindowManager.addTicker(tag, ticker);
1528
+ let tickerName = ticker.constructor.name;
1529
+ let tickerHistory = {
1530
+ fn: () => {
1531
+ },
1532
+ className: tickerName,
1533
+ args: createExportableElement(ticker.args),
1534
+ canvasElementTags: [tag],
1535
+ priority: ticker.priority,
1536
+ duration: ticker.duration,
1537
+ createdByTicketStepsId: tag
1538
+ };
1539
+ let id = _GameWindowManager.generateTickerId(tickerHistory);
1540
+ _GameWindowManager.pushTicker(id, tickerHistory, ticker);
1541
+ if (ticker.duration) {
1542
+ let timeout = setTimeout(() => {
1543
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
1544
+ if (tickerTimeoutInfo) {
1545
+ _GameWindowManager.removeTicker(id);
1546
+ tickerTimeoutInfo.tags.forEach((tag2) => {
1547
+ _GameWindowManager.nextTickerStep(tag2);
1548
+ });
1549
+ }
1550
+ _GameWindowManager.removeTickerTimeoutInfo(timeout);
1551
+ }, ticker.duration * 1e3);
1552
+ _GameWindowManager.addTickerTimeoutInfo(tag, tickerName, timeout.toString(), false);
1553
+ }
1363
1554
  }
1364
1555
  static nextTickerStep(tag) {
1365
- if (typeof tag === "string") {
1366
- tag = [tag];
1556
+ if (_GameWindowManager._currentTickersSteps[tag]) {
1557
+ let steps = _GameWindowManager._currentTickersSteps[tag];
1558
+ if (steps.currentStepNumber + 1 < steps.steps.length) {
1559
+ steps.currentStepNumber++;
1560
+ _GameWindowManager._currentTickersSteps[tag] = steps;
1561
+ _GameWindowManager.runTickersSteps(tag);
1562
+ } else {
1563
+ _GameWindowManager.removeTickerStepByCanvasElement(tag);
1564
+ }
1367
1565
  }
1368
- tag.forEach((tag2) => {
1369
- if (_GameWindowManager._currentTickersSteps[tag2]) {
1370
- let steps = _GameWindowManager._currentTickersSteps[tag2];
1371
- if (steps.currentStepNumber + 1 < steps.steps.length) {
1372
- steps.currentStepNumber++;
1373
- _GameWindowManager._currentTickersSteps[tag2] = steps;
1374
- _GameWindowManager.runTickersSteps(tag2);
1375
- } else {
1376
- delete _GameWindowManager._currentTickersSteps[tag2];
1377
- }
1566
+ }
1567
+ static onEndOfTicker(canvasElementTags, ticker, canvasElementTagsToDelete, tickerId) {
1568
+ let tickerData = _GameWindowManager._currentTickers[tickerId];
1569
+ _GameWindowManager.removeAssociationBetweenTickerCanvasElement(canvasElementTags, ticker);
1570
+ _GameWindowManager.removeCanvasElement(canvasElementTagsToDelete);
1571
+ if (tickerData) {
1572
+ _GameWindowManager.removeTicker(tickerId);
1573
+ if (tickerData.duration == void 0 && tickerData.createdByTicketStepsId) {
1574
+ _GameWindowManager.nextTickerStep(tickerData.createdByTicketStepsId);
1378
1575
  }
1379
- });
1576
+ }
1380
1577
  }
1381
1578
  /**
1382
1579
  * Remove a connection between a canvas element and a ticker.
1383
1580
  * And remove the ticker if there is no canvas element connected to it.
1384
- * @param tag The tag of the canvas element that will use the ticker.
1581
+ * @param tags The tag of the canvas element that will use the ticker.
1385
1582
  * @param ticker The ticker class to be removed.
1386
1583
  * @example
1387
1584
  * ```typescript
1388
- * GameWindowManager.removeAssociationBetweenTickerCanvasElement("alien", TickerRotate)
1585
+ * GameWindowManager.removeAssociationBetweenTickerCanvasElement("alien", RotateTicker)
1389
1586
  * ```
1390
1587
  */
1391
- static removeAssociationBetweenTickerCanvasElement(tag, ticker) {
1588
+ static removeAssociationBetweenTickerCanvasElement(tags, ticker) {
1392
1589
  let tickerName;
1393
- if (ticker instanceof TickerBase) {
1590
+ if (typeof ticker === "string") {
1591
+ tickerName = ticker;
1592
+ } else if (ticker instanceof TickerBase) {
1394
1593
  tickerName = ticker.constructor.name;
1395
1594
  } else {
1396
1595
  tickerName = ticker.name;
1397
1596
  }
1398
- if (typeof tag === "string") {
1399
- tag = [tag];
1597
+ if (typeof tags === "string") {
1598
+ tags = [tags];
1400
1599
  }
1401
- _GameWindowManager._currentTickers = _GameWindowManager._currentTickers.map((t) => {
1402
- if (t.className === tickerName) {
1403
- t.canvasElementTags = t.canvasElementTags.filter((e) => !tag.includes(e));
1600
+ for (let id in _GameWindowManager._currentTickers) {
1601
+ let ticker2 = _GameWindowManager._currentTickers[id];
1602
+ if (ticker2.className === tickerName) {
1603
+ _GameWindowManager._currentTickers[id].canvasElementTags = ticker2.canvasElementTags.filter((e) => !tags.includes(e));
1404
1604
  }
1405
- return t;
1406
- });
1407
- for (let timeout in _GameWindowManager.currentTickersTimeouts) {
1408
- let t = _GameWindowManager.currentTickersTimeouts[timeout].tags.filter((e) => !tag.includes(e));
1409
- if (t.length == 0) {
1410
- _GameWindowManager.removeTickerTimeoutInfo(timeout);
1411
- } else {
1412
- _GameWindowManager.currentTickersTimeouts[timeout].tags = t;
1605
+ }
1606
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1607
+ let TickerTimeout = _GameWindowManager._currentTickersTimeouts[timeout];
1608
+ if (TickerTimeout.ticker === tickerName && TickerTimeout.canBeDeletedBeforeEnd) {
1609
+ _GameWindowManager._currentTickersTimeouts[timeout].tags = TickerTimeout.tags.filter((t) => !tags.includes(t));
1413
1610
  }
1414
1611
  }
1415
1612
  _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
@@ -1418,49 +1615,117 @@ var _GameWindowManager = class _GameWindowManager {
1418
1615
  * Remove all tickers that are not connected to any existing canvas element.
1419
1616
  */
1420
1617
  static removeTickersWithoutAssociatedCanvasElement() {
1421
- let currentTickers = _GameWindowManager._currentTickers.map((t) => {
1422
- t.canvasElementTags = t.canvasElementTags.filter((e) => _GameWindowManager._children[e]);
1423
- return t;
1424
- });
1425
- currentTickers.filter((t) => t.canvasElementTags.length === 0).forEach((t) => {
1426
- _GameWindowManager.app.ticker.remove(t.fn);
1427
- });
1428
- currentTickers = currentTickers.filter((t) => t.canvasElementTags.length > 0);
1429
- _GameWindowManager._currentTickers = currentTickers;
1618
+ for (let id in _GameWindowManager._currentTickers) {
1619
+ let ticker = _GameWindowManager._currentTickers[id];
1620
+ ticker.canvasElementTags = ticker.canvasElementTags.filter((e) => _GameWindowManager._children[e]);
1621
+ if (ticker.canvasElementTags.length === 0) {
1622
+ _GameWindowManager.removeTicker(id);
1623
+ }
1624
+ }
1430
1625
  for (let tag in _GameWindowManager._currentTickersSteps) {
1431
1626
  if (_GameWindowManager._children[tag] === void 0) {
1432
1627
  delete _GameWindowManager._currentTickersSteps[tag];
1433
1628
  }
1434
1629
  }
1630
+ Object.entries(_GameWindowManager._currentTickersTimeouts).forEach(([timeout, { tags }]) => {
1631
+ if (tags.length === 0) {
1632
+ _GameWindowManager.removeTickerTimeout(timeout);
1633
+ }
1634
+ });
1435
1635
  }
1436
- static addTickerTimeoutInfo(tags, ticker, timeout) {
1636
+ static addTickerTimeoutInfo(tags, ticker, timeout, canBeDeletedBeforeEnd) {
1437
1637
  if (typeof tags === "string") {
1438
1638
  tags = [tags];
1439
1639
  }
1440
- _GameWindowManager.currentTickersTimeouts[timeout] = {
1640
+ _GameWindowManager._currentTickersTimeouts[timeout] = {
1441
1641
  tags,
1442
- ticker
1642
+ ticker,
1643
+ canBeDeletedBeforeEnd
1443
1644
  };
1444
1645
  }
1445
1646
  static removeTickerTimeoutInfo(timeout) {
1446
1647
  if (typeof timeout !== "string") {
1447
1648
  timeout = timeout.toString();
1448
1649
  }
1449
- if (_GameWindowManager.currentTickersTimeouts[timeout]) {
1450
- delete _GameWindowManager.currentTickersTimeouts[timeout];
1650
+ if (_GameWindowManager._currentTickersTimeouts[timeout]) {
1651
+ delete _GameWindowManager._currentTickersTimeouts[timeout];
1652
+ }
1653
+ }
1654
+ static removeTickerTimeout(timeout) {
1655
+ if (typeof timeout !== "string") {
1656
+ timeout = timeout.toString();
1657
+ }
1658
+ clearTimeout(Number(timeout));
1659
+ _GameWindowManager.removeTickerTimeoutInfo(timeout);
1660
+ }
1661
+ static removeTickerTimeoutsByTag(tag, checkCanBeDeletedBeforeEnd) {
1662
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1663
+ let tagsWithoutTagToRemove = _GameWindowManager._currentTickersTimeouts[timeout].tags.filter((t) => t !== tag);
1664
+ if (tagsWithoutTagToRemove.length === 0) {
1665
+ let canBeDeletedBeforeEnd = _GameWindowManager._currentTickersTimeouts[timeout].canBeDeletedBeforeEnd;
1666
+ if (!checkCanBeDeletedBeforeEnd || canBeDeletedBeforeEnd) {
1667
+ _GameWindowManager.removeTickerTimeout(timeout);
1668
+ }
1669
+ } else {
1670
+ _GameWindowManager._currentTickersTimeouts[timeout].tags = tagsWithoutTagToRemove;
1671
+ }
1451
1672
  }
1452
1673
  }
1453
1674
  /**
1454
1675
  * Remove all tickers from the canvas.
1455
1676
  */
1456
- static removeTickers() {
1677
+ static removeAllTickers() {
1457
1678
  _GameWindowManager._currentTickersSteps = {};
1458
- _GameWindowManager._currentTickers.forEach((t) => {
1459
- _GameWindowManager.app.ticker.remove(t.fn);
1679
+ Object.keys(_GameWindowManager._currentTickers).forEach((id) => {
1680
+ _GameWindowManager.removeTicker(id);
1460
1681
  });
1461
- _GameWindowManager._currentTickers = [];
1462
- for (let timeout in _GameWindowManager.currentTickersTimeouts) {
1463
- _GameWindowManager.removeTickerTimeoutInfo(timeout);
1682
+ _GameWindowManager._currentTickers = {};
1683
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1684
+ _GameWindowManager.removeTickerTimeout(timeout);
1685
+ }
1686
+ }
1687
+ /**
1688
+ * Remove all tickers from a canvas element.
1689
+ * @param tag The tag of the canvas element that will use the ticker.
1690
+ */
1691
+ static removeTickerByCanvasElement(tag) {
1692
+ if (typeof tag === "string") {
1693
+ tag = [tag];
1694
+ }
1695
+ tag.forEach((tag2) => {
1696
+ for (let id in _GameWindowManager._currentTickers) {
1697
+ let ticker = _GameWindowManager._currentTickers[id];
1698
+ if (ticker.canvasElementTags.includes(tag2)) {
1699
+ _GameWindowManager.removeTicker(id);
1700
+ }
1701
+ }
1702
+ if (_GameWindowManager._currentTickersSteps[tag2]) {
1703
+ delete _GameWindowManager._currentTickersSteps[tag2];
1704
+ }
1705
+ _GameWindowManager.removeTickerTimeoutsByTag(tag2, false);
1706
+ delete _GameWindowManager._currentTickersSteps[tag2];
1707
+ });
1708
+ }
1709
+ static removeTickerStepByCanvasElement(tag) {
1710
+ if (_GameWindowManager._currentTickersSteps[tag]) {
1711
+ delete _GameWindowManager._currentTickersSteps[tag];
1712
+ }
1713
+ for (let id in _GameWindowManager._currentTickers) {
1714
+ let ticker = _GameWindowManager._currentTickers[id];
1715
+ if (ticker.createdByTicketStepsId === tag) {
1716
+ _GameWindowManager.removeTicker(id);
1717
+ }
1718
+ }
1719
+ }
1720
+ static removeTicker(tickerId) {
1721
+ let ticker = _GameWindowManager._currentTickers[tickerId];
1722
+ if (ticker) {
1723
+ if (ticker.args.hasOwnProperty(tagToRemoveAfter)) {
1724
+ let tagToRemoveAfter2 = ticker.args.tagToRemoveAfter;
1725
+ _GameWindowManager.removeCanvasElement(tagToRemoveAfter2);
1726
+ }
1727
+ _GameWindowManager.app.ticker.remove(ticker.fn);
1728
+ delete _GameWindowManager._currentTickers[tickerId];
1464
1729
  }
1465
1730
  }
1466
1731
  /**
@@ -1487,7 +1752,8 @@ var _GameWindowManager = class _GameWindowManager {
1487
1752
  currentElements[tag] = exportCanvasElement(_GameWindowManager._children[tag]);
1488
1753
  }
1489
1754
  return {
1490
- currentTickers: createExportableElement(_GameWindowManager._currentTickers),
1755
+ currentTickers: createExportableElement(_GameWindowManager.currentTickersWithoutCreatedBySteps),
1756
+ currentTickersSteps: createExportableElement(_GameWindowManager._currentTickersSteps),
1491
1757
  currentElements: createExportableElement(currentElements),
1492
1758
  childrenTagsOrder: createExportableElement(_GameWindowManager.childrenTagsOrder)
1493
1759
  };
@@ -1522,7 +1788,8 @@ var _GameWindowManager = class _GameWindowManager {
1522
1788
  }
1523
1789
  if (data.hasOwnProperty("currentTickers")) {
1524
1790
  let currentTickers = data["currentTickers"];
1525
- currentTickers.forEach((t) => {
1791
+ for (let id in currentTickers) {
1792
+ let t = currentTickers[id];
1526
1793
  let tags = t.canvasElementTags;
1527
1794
  let ticker = geTickerInstanceByClassName(t.className, t.args, t.duration, t.priority);
1528
1795
  if (ticker) {
@@ -1530,7 +1797,11 @@ var _GameWindowManager = class _GameWindowManager {
1530
1797
  } else {
1531
1798
  console.error(`[Pixi'VN] Ticker ${t.className} not found`);
1532
1799
  }
1533
- });
1800
+ }
1801
+ }
1802
+ if (data.hasOwnProperty("currentTickersSteps")) {
1803
+ let currentTickersSteps = data["currentTickersSteps"];
1804
+ _GameWindowManager.restoneTickersSteps(currentTickersSteps);
1534
1805
  }
1535
1806
  } catch (e) {
1536
1807
  console.error("[Pixi'VN] Error importing data", e);
@@ -1544,9 +1815,9 @@ _GameWindowManager._children = {};
1544
1815
  * The order of the children tags.
1545
1816
  */
1546
1817
  _GameWindowManager.childrenTagsOrder = [];
1547
- _GameWindowManager._currentTickers = [];
1818
+ _GameWindowManager._currentTickers = {};
1548
1819
  _GameWindowManager._currentTickersSteps = {};
1549
- _GameWindowManager.currentTickersTimeouts = {};
1820
+ _GameWindowManager._currentTickersTimeouts = {};
1550
1821
  var GameWindowManager = _GameWindowManager;
1551
1822
 
1552
1823
  // src/managers/StepManager.ts
@@ -1613,7 +1884,8 @@ var _GameStepManager = class _GameStepManager {
1613
1884
  canvas: {
1614
1885
  childrenTagsOrder: [],
1615
1886
  currentElements: {},
1616
- currentTickers: []
1887
+ currentTickers: {},
1888
+ currentTickersSteps: {}
1617
1889
  },
1618
1890
  labelIndex: -1,
1619
1891
  openedLabels: []
@@ -1824,8 +2096,15 @@ var _GameStepManager = class _GameStepManager {
1824
2096
  }
1825
2097
  try {
1826
2098
  if (labelId === CLOSE_LABEL_ID) {
1827
- let closeLabel = newCloseLabel(choiseMade);
1828
- return _GameStepManager.closeChoiceMenu(closeLabel, props);
2099
+ let closeCurrentLabel = newCloseLabel(choiseMade);
2100
+ let choice = {
2101
+ label: closeCurrentLabel,
2102
+ text: "",
2103
+ closeCurrentLabel: false,
2104
+ type: "close",
2105
+ props: {}
2106
+ };
2107
+ return _GameStepManager.closeChoiceMenu(choice, props);
1829
2108
  }
1830
2109
  let tempLabel = getLabelById(labelId);
1831
2110
  if (!tempLabel) {
@@ -1875,8 +2154,15 @@ var _GameStepManager = class _GameStepManager {
1875
2154
  }
1876
2155
  try {
1877
2156
  if (labelId === CLOSE_LABEL_ID) {
1878
- let closeLabel = newCloseLabel(choiseMade);
1879
- return _GameStepManager.closeChoiceMenu(closeLabel, props);
2157
+ let closeCurrentLabel = newCloseLabel(choiseMade);
2158
+ let choice = {
2159
+ label: closeCurrentLabel,
2160
+ text: "",
2161
+ closeCurrentLabel: false,
2162
+ type: "close",
2163
+ props: {}
2164
+ };
2165
+ return _GameStepManager.closeChoiceMenu(choice, props);
1880
2166
  }
1881
2167
  let tempLabel = getLabelById(labelId);
1882
2168
  if (!tempLabel) {
@@ -1892,7 +2178,8 @@ var _GameStepManager = class _GameStepManager {
1892
2178
  }
1893
2179
  /**
1894
2180
  * When the player is in a choice menu, can use this function to exit to the choice menu.
1895
- * @param props The props to pass to the step.
2181
+ * @param choice
2182
+ * @param props
1896
2183
  * @returns StepLabelResultType or undefined.
1897
2184
  * @example
1898
2185
  * ```typescript
@@ -1903,12 +2190,16 @@ var _GameStepManager = class _GameStepManager {
1903
2190
  * })
1904
2191
  * ```
1905
2192
  */
1906
- static closeChoiceMenu(label, props) {
2193
+ static closeChoiceMenu(choice, props) {
1907
2194
  return __async(this, null, function* () {
2195
+ let label = choice.label;
1908
2196
  let choiseMade = void 0;
1909
2197
  if (typeof label.choiseIndex === "number") {
1910
2198
  choiseMade = label.choiseIndex;
1911
2199
  }
2200
+ if (choice.closeCurrentLabel) {
2201
+ _GameStepManager.closeCurrentLabel();
2202
+ }
1912
2203
  return _GameStepManager.runNextStep(props, choiseMade);
1913
2204
  });
1914
2205
  }