@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
@@ -1,5 +1,5 @@
1
1
  import 'deep-diff';
2
- import 'crypto-js/sha1';
2
+ import sha1 from 'crypto-js/sha1';
3
3
  import { Sprite, Container, Application, Text, Assets, Texture } from 'pixi.js';
4
4
 
5
5
  var __defProp = Object.defineProperty;
@@ -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) => {
@@ -617,7 +616,7 @@ function tickerDecorator(name) {
617
616
  name = target.name;
618
617
  }
619
618
  if (registeredTickers[name]) {
620
- console.warn(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`);
619
+ console.info(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`);
621
620
  }
622
621
  registeredTickers[name] = target;
623
622
  };
@@ -639,12 +638,6 @@ function geTickerInstanceByClassName(tickerName, args, duration, priority) {
639
638
  // src/types/CloseType.ts
640
639
  var Close = "close";
641
640
 
642
- // src/types/PauseType.ts
643
- var PauseValueType = "pause";
644
-
645
- // src/types/RepeatType.ts
646
- var Repeat = "repeat";
647
-
648
641
  // src/classes/ChoiceMenuOption.ts
649
642
  var ChoiceMenuOption = class {
650
643
  /**
@@ -677,8 +670,9 @@ var ChoiceMenuOption = class {
677
670
  var ChoiceMenuOptionClose = class {
678
671
  /**
679
672
  * @param text Text to be displayed in the menu
673
+ * @param closeCurrentLabel If true, the current label will be closed. @default false
680
674
  */
681
- constructor(text) {
675
+ constructor(text, closeCurrentLabel = false) {
682
676
  /**
683
677
  * Label to be opened when the option is selected
684
678
  */
@@ -692,6 +686,7 @@ var ChoiceMenuOptionClose = class {
692
686
  */
693
687
  this.props = {};
694
688
  this.text = text;
689
+ this.closeCurrentLabel = closeCurrentLabel;
695
690
  }
696
691
  };
697
692
 
@@ -699,8 +694,8 @@ var ChoiceMenuOptionClose = class {
699
694
  var TickerBase = class {
700
695
  /**
701
696
  * @param args The arguments that you want to pass to the ticker.
702
- * @param duration The duration of the ticker. If is undefined, the ticker will be called every frame.
703
- * @param priority The priority of the ticker. If is undefined, the priority will be UPDATE_PRIORITY.NORMAL.
697
+ * @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
698
+ * @param priority The priority of the ticker. @default UPDATE_PRIORITY.NORMAL
704
699
  */
705
700
  constructor(args, duration, priority) {
706
701
  this.args = args;
@@ -710,28 +705,26 @@ var TickerBase = class {
710
705
  /**
711
706
  * The method that will be called every frame.
712
707
  * This method should be overridden and you can use GameWindowManager.addCanvasElement() to get the canvas element of the canvas, and edit them.
713
- * @param t The ticker that is calling this method
714
- * @param args The arguments that you passed when you added the ticker
715
- * @param tags The tags of the canvas elements that are connected to this ticker
708
+ * @param _ticker The ticker that is calling this method
709
+ * @param _args The arguments that you passed when you added the ticker
710
+ * @param _tags The tags of the canvas elements that are connected to this ticker
711
+ * @param _tickerId The id of the ticker. You can use this to get the ticker from the {@link GameWindowManager.currentTickers}
716
712
  */
717
- fn(_t, _args, _tags) {
713
+ fn(_ticker, _args, _tags, _tickerId) {
718
714
  throw new Error("[Pixi'VN] The method TickerBase.fn() must be overridden");
719
715
  }
720
716
  };
721
- var TickerFadeAlpha = class extends TickerBase {
722
- /**
723
- * The method that will be called every frame to fade the alpha of the canvas element of the canvas.
724
- * @param delta The delta time
725
- * @param args The arguments that are passed to the ticker
726
- * @param tags The tags of the canvas element that are connected to this ticker
727
- */
728
- fn(t, args, tags) {
717
+
718
+ // src/classes/ticker/FadeAlphaTicker.ts
719
+ var FadeAlphaTicker = class extends TickerBase {
720
+ fn(ticker, args, tags, tickerId) {
729
721
  let type = args.type === void 0 ? "hide" : args.type;
730
- let speed = args.speed === void 0 ? 0.1 : args.speed;
722
+ let duration = args.duration === void 0 ? 1 : args.duration;
723
+ let speed = 1 / (duration * 60);
731
724
  let limit = args.limit === void 0 ? type === "hide" ? 0 : 1 : args.limit;
732
- let removeElementAfter = args.tagToRemoveAfter || [];
733
- if (typeof removeElementAfter === "string") {
734
- removeElementAfter = [removeElementAfter];
725
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
726
+ if (typeof tagToRemoveAfter2 === "string") {
727
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
735
728
  }
736
729
  if (type === "hide" && limit < 0) {
737
730
  limit = 0;
@@ -752,61 +745,88 @@ var TickerFadeAlpha = class extends TickerBase {
752
745
  let element = GameWindowManager.getCanvasElement(tag);
753
746
  if (element && element instanceof Container) {
754
747
  if (type === "show" && element.alpha < limit) {
755
- element.alpha += speed * t.deltaTime;
748
+ element.alpha += speed * ticker.deltaTime;
756
749
  } else if (type === "hide" && element.alpha > limit) {
757
- element.alpha -= speed * t.deltaTime;
758
- } else {
750
+ element.alpha -= speed * ticker.deltaTime;
751
+ }
752
+ if (type === "show" && element.alpha >= limit) {
753
+ element.alpha = limit;
754
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
755
+ } else if (type === "hide" && element.alpha <= limit) {
759
756
  element.alpha = limit;
760
- GameWindowManager.removeAssociationBetweenTickerCanvasElement(tag, this);
761
- GameWindowManager.removeCanvasElement(removeElementAfter);
757
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
762
758
  }
763
759
  }
764
760
  });
765
761
  }
766
762
  };
767
- TickerFadeAlpha = __decorateClass([
763
+ FadeAlphaTicker = __decorateClass([
768
764
  tickerDecorator()
769
- ], TickerFadeAlpha);
765
+ ], FadeAlphaTicker);
770
766
 
771
767
  // src/functions/TickerUtility.ts
772
768
  function updateTickerProgression(args, propertyName, progression) {
773
- if (args.hasOwnProperty(propertyName) && typeof args[propertyName] !== "number") {
769
+ if (args[propertyName] === void 0 || !progression || args[propertyName] === progression.limit) {
774
770
  return;
775
771
  }
776
- if (args[propertyName] !== void 0 && progression && args[propertyName] !== progression.limit) {
772
+ if (typeof args[propertyName] === "number") {
777
773
  if (progression.type === "linear") {
778
- args[propertyName] += progression.amt;
779
- if (progression.limit !== void 0) {
780
- if (args[propertyName] > progression.limit && progression.amt > 0) {
781
- args[propertyName] = progression.limit;
782
- } else if (args[propertyName] < progression.limit && progression.amt < 0) {
783
- args[propertyName] = progression.limit;
784
- }
785
- }
774
+ args[propertyName] = getLinearProgression(args[propertyName], progression);
786
775
  } else if (progression.type === "exponential") {
787
- args[propertyName] += args[propertyName] * progression.percentage;
788
- if (progression.limit !== void 0) {
789
- if (args[propertyName] > progression.limit && progression.percentage > 0) {
790
- args[propertyName] = progression.limit;
791
- } else if (args[propertyName] < progression.limit && progression.percentage < 0) {
792
- args[propertyName] = progression.limit;
793
- }
794
- }
776
+ args[propertyName] = getExponentialProgression(args[propertyName], progression);
777
+ }
778
+ } 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") {
779
+ if (progression.type === "linear") {
780
+ args[propertyName].x = getLinearProgression(args[propertyName].x, progression);
781
+ args[propertyName].y = getLinearProgression(args[propertyName].y, progression);
782
+ } else if (progression.type === "exponential") {
783
+ args[propertyName].x = getExponentialProgression(args[propertyName].x, progression);
784
+ args[propertyName].y = getExponentialProgression(args[propertyName].y, progression);
785
+ }
786
+ }
787
+ }
788
+ function getLinearProgression(number, progression) {
789
+ if (progression.limit !== void 0) {
790
+ if (number > progression.limit && progression.amt > 0) {
791
+ return progression.limit;
792
+ } else if (number < progression.limit && progression.amt < 0) {
793
+ return progression.limit;
794
+ }
795
+ }
796
+ return number + progression.amt / 60;
797
+ }
798
+ function getExponentialProgression(number, progression) {
799
+ if (progression.limit !== void 0) {
800
+ if (number > progression.limit && progression.percentage > 0) {
801
+ return progression.limit;
802
+ } else if (number < progression.limit && progression.percentage < 0) {
803
+ return progression.limit;
795
804
  }
796
805
  }
806
+ return number + number * progression.percentage;
797
807
  }
798
808
 
799
- // src/classes/ticker/TickerMove.ts
800
- var TickerMove = class extends TickerBase {
801
- /**
802
- * The method that will be called every frame to move the canvas element of the canvas.
803
- * @param t The ticker that is calling this method
804
- * @param args The arguments that are passed to the ticker
805
- * @param tags The tags of the canvas element that are connected to this ticker
806
- */
807
- fn(t, args, tags) {
808
- let speed = args.speed === void 0 ? 0.1 : args.speed;
809
+ // src/classes/ticker/MoveTicker.ts
810
+ var MoveTicker = class extends TickerBase {
811
+ fn(ticker, args, tags, tickerId) {
812
+ let xSpeed = 1;
813
+ let ySpeed = 1;
814
+ if (args.speed) {
815
+ if (typeof args.speed === "number") {
816
+ xSpeed = args.speed;
817
+ ySpeed = args.speed;
818
+ } else {
819
+ xSpeed = args.speed.x;
820
+ ySpeed = args.speed.y;
821
+ }
822
+ }
823
+ xSpeed /= 60;
824
+ ySpeed /= 60;
809
825
  let destination = args.destination;
826
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
827
+ if (typeof tagToRemoveAfter2 === "string") {
828
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
829
+ }
810
830
  tags.filter((tag) => {
811
831
  var _a;
812
832
  let element = GameWindowManager.getCanvasElement(tag);
@@ -819,41 +839,42 @@ var TickerMove = class extends TickerBase {
819
839
  }).forEach((tag) => {
820
840
  let element = GameWindowManager.getCanvasElement(tag);
821
841
  if (element && element instanceof Container) {
822
- let xDistance = destination.x - element.x;
842
+ let xDistance = destination.x - element.x > 0 ? 1 : -1;
823
843
  if (xDistance != 0) {
824
- element.x += xDistance / speed * t.deltaTime;
844
+ element.x += xDistance * xSpeed * ticker.deltaTime;
825
845
  let newDistance = destination.x - element.x;
826
846
  if (xDistance < 0 && newDistance > 0 || xDistance > 0 && newDistance < 0) {
827
847
  element.x = destination.x;
828
848
  }
829
849
  }
830
- let yDistance = destination.y - element.y;
850
+ let yDistance = destination.y - element.y > 0 ? 1 : -1;
831
851
  if (yDistance != 0) {
832
- element.y += yDistance / speed * t.deltaTime;
852
+ element.y += yDistance * ySpeed * ticker.deltaTime;
833
853
  let newDistance = destination.y - element.y;
834
854
  if (yDistance < 0 && newDistance > 0 || yDistance > 0 && newDistance < 0) {
835
855
  element.y = destination.y;
836
856
  }
837
857
  }
858
+ if (element.x == destination.x && element.y == destination.y) {
859
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
860
+ }
838
861
  }
839
862
  });
840
863
  if (args.speedProgression)
841
864
  updateTickerProgression(args, "speed", args.speedProgression);
842
865
  }
843
866
  };
844
- TickerMove = __decorateClass([
867
+ MoveTicker = __decorateClass([
845
868
  tickerDecorator()
846
- ], TickerMove);
847
- var TickerRotate = class extends TickerBase {
848
- /**
849
- * The method that will be called every frame to rotate the canvas element of the canvas.
850
- * @param delta The delta time
851
- * @param args The arguments that are passed to the ticker
852
- * @param tags The tags of the canvas element that are connected to this ticker
853
- */
854
- fn(t, args, tags) {
855
- let speed = args.speed === void 0 ? 0.1 : args.speed;
869
+ ], MoveTicker);
870
+ var RotateTicker = class extends TickerBase {
871
+ fn(ticker, args, tags, tickerId) {
872
+ let speed = (args.speed === void 0 ? 1 : args.speed) / 60;
856
873
  let clockwise = args.clockwise === void 0 ? true : args.clockwise;
874
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
875
+ if (typeof tagToRemoveAfter2 === "string") {
876
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
877
+ }
857
878
  tags.filter((tag) => {
858
879
  var _a;
859
880
  let element = GameWindowManager.getCanvasElement(tag);
@@ -867,18 +888,111 @@ var TickerRotate = class extends TickerBase {
867
888
  let element = GameWindowManager.getCanvasElement(tag);
868
889
  if (element && element instanceof Container) {
869
890
  if (clockwise)
870
- element.rotation += speed * t.deltaTime;
891
+ element.rotation += speed * ticker.deltaTime;
871
892
  else
872
- element.rotation -= speed * t.deltaTime;
893
+ element.rotation -= speed * ticker.deltaTime;
894
+ if (speed < 1e-5 && !(args.speedProgression && args.speedProgression.type == "linear" && args.speedProgression.amt != 0)) {
895
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
896
+ }
897
+ }
898
+ });
899
+ if (args.speedProgression)
900
+ updateTickerProgression(args, "speed", args.speedProgression);
901
+ }
902
+ };
903
+ RotateTicker = __decorateClass([
904
+ tickerDecorator()
905
+ ], RotateTicker);
906
+ var ZoomTicker = class extends TickerBase {
907
+ fn(ticker, args, tags, tickerId) {
908
+ let xSpeed = 0.1;
909
+ let ySpeed = 0.1;
910
+ if (args.speed) {
911
+ if (typeof args.speed === "number") {
912
+ xSpeed = args.speed;
913
+ ySpeed = args.speed;
914
+ } else {
915
+ xSpeed = args.speed.x;
916
+ ySpeed = args.speed.y;
917
+ }
918
+ }
919
+ xSpeed /= 60;
920
+ ySpeed /= 60;
921
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
922
+ if (typeof tagToRemoveAfter2 === "string") {
923
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
924
+ }
925
+ let type = args.type || "zoom";
926
+ let xLimit = Infinity;
927
+ let yLimit = Infinity;
928
+ if (args.limit) {
929
+ if (typeof args.limit === "number") {
930
+ xLimit = args.limit;
931
+ yLimit = args.limit;
932
+ } else {
933
+ xLimit = args.limit.x;
934
+ yLimit = args.limit.y;
935
+ }
936
+ }
937
+ tags.filter((tag) => {
938
+ var _a;
939
+ let element = GameWindowManager.getCanvasElement(tag);
940
+ if (args.startOnlyIfHaveTexture) {
941
+ if (element && element instanceof Sprite && ((_a = element.texture) == null ? void 0 : _a.label) == "EMPTY") {
942
+ return false;
943
+ }
944
+ }
945
+ return true;
946
+ }).forEach((tag) => {
947
+ let element = GameWindowManager.getCanvasElement(tag);
948
+ if (element && element instanceof Container) {
949
+ if (type === "zoom" && (element.scale.x < xLimit || element.scale.y < yLimit)) {
950
+ element.scale.x += xSpeed * ticker.deltaTime;
951
+ element.scale.y += ySpeed * ticker.deltaTime;
952
+ } else if (type === "unzoom" && (element.scale.x > xLimit || element.scale.y > yLimit)) {
953
+ element.scale.x -= xSpeed * ticker.deltaTime;
954
+ element.scale.y -= ySpeed * ticker.deltaTime;
955
+ }
956
+ if (type === "zoom") {
957
+ if (element.scale.x > xLimit) {
958
+ element.scale.x = xLimit;
959
+ }
960
+ if (element.scale.y > yLimit) {
961
+ element.scale.y = yLimit;
962
+ }
963
+ if (element.scale.x >= xLimit && element.scale.y >= yLimit) {
964
+ element.scale.x = xLimit;
965
+ element.scale.y = yLimit;
966
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
967
+ }
968
+ } else if (type === "unzoom") {
969
+ if (element.scale.x < xLimit) {
970
+ element.scale.x = xLimit;
971
+ }
972
+ if (element.scale.y < yLimit) {
973
+ element.scale.y = yLimit;
974
+ }
975
+ if (element.scale.x <= xLimit && element.scale.y <= yLimit) {
976
+ element.scale.x = xLimit;
977
+ element.scale.y = yLimit;
978
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
979
+ }
980
+ }
981
+ if (xSpeed < 1e-5 && ySpeed < 1e-5 && !(args.speedProgression && args.speedProgression.type == "linear" && args.speedProgression.amt != 0)) {
982
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
983
+ }
873
984
  }
874
985
  });
875
986
  if (args.speedProgression)
876
987
  updateTickerProgression(args, "speed", args.speedProgression);
877
988
  }
878
989
  };
879
- TickerRotate = __decorateClass([
990
+ ZoomTicker = __decorateClass([
880
991
  tickerDecorator()
881
- ], TickerRotate);
992
+ ], ZoomTicker);
993
+
994
+ // src/constants.ts
995
+ var Repeat = "repeat";
882
996
 
883
997
  // src/functions/ExportUtility.ts
884
998
  function createExportableElement(element) {
@@ -987,6 +1101,9 @@ function asciiArtLog() {
987
1101
  `);
988
1102
  }
989
1103
 
1104
+ // src/types/ticker/TagToRemoveAfterType.ts
1105
+ var tagToRemoveAfter = "tagToRemoveAfter";
1106
+
990
1107
  // src/managers/WindowManager.ts
991
1108
  var _GameWindowManager = class _GameWindowManager {
992
1109
  constructor() {
@@ -1169,25 +1286,25 @@ var _GameWindowManager = class _GameWindowManager {
1169
1286
  /**
1170
1287
  * Remove a canvas element from the canvas.
1171
1288
  * And remove all tickers that are not connected to any canvas element.
1172
- * @param tag The tag of the canvas element to be removed.
1289
+ * @param tags The tag of the canvas element to be removed.
1173
1290
  * @returns
1174
1291
  * @example
1175
1292
  * ```typescript
1176
1293
  * GameWindowManager.removeCanvasElement("bunny");
1177
1294
  * ```
1178
1295
  */
1179
- static removeCanvasElement(tag) {
1180
- if (typeof tag === "string") {
1181
- tag = [tag];
1296
+ static removeCanvasElement(tags) {
1297
+ if (typeof tags === "string") {
1298
+ tags = [tags];
1182
1299
  }
1183
- tag.forEach((t) => {
1184
- if (_GameWindowManager._children[t]) {
1185
- _GameWindowManager.app.stage.removeChild(_GameWindowManager._children[t]);
1186
- delete _GameWindowManager._children[t];
1300
+ tags.forEach((tag) => {
1301
+ if (_GameWindowManager._children[tag]) {
1302
+ _GameWindowManager.app.stage.removeChild(_GameWindowManager._children[tag]);
1303
+ delete _GameWindowManager._children[tag];
1304
+ _GameWindowManager.removeTickerByCanvasElement(tag);
1187
1305
  }
1188
1306
  });
1189
- _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
1190
- _GameWindowManager.childrenTagsOrder = _GameWindowManager.childrenTagsOrder.filter((t) => !tag.includes(t));
1307
+ _GameWindowManager.childrenTagsOrder = _GameWindowManager.childrenTagsOrder.filter((t) => !tags.includes(t));
1191
1308
  }
1192
1309
  /**
1193
1310
  * Get a canvas element by the tag.
@@ -1217,18 +1334,43 @@ var _GameWindowManager = class _GameWindowManager {
1217
1334
  _GameWindowManager.app.stage.removeChildren();
1218
1335
  _GameWindowManager._children = {};
1219
1336
  _GameWindowManager.childrenTagsOrder = [];
1220
- _GameWindowManager.removeTickers();
1337
+ _GameWindowManager.removeAllTickers();
1221
1338
  }
1222
1339
  /**
1223
1340
  * Edit the tag of a canvas element.
1224
1341
  * @param oldTag The old tag of the canvas element.
1225
1342
  * @param newTag The new tag of the canvas element.
1226
1343
  */
1227
- static editTagCanvasElement(oldTag, newTag) {
1344
+ static editCanvasElementTag(oldTag, newTag) {
1228
1345
  if (_GameWindowManager._children[oldTag]) {
1229
1346
  _GameWindowManager._children[newTag] = _GameWindowManager._children[oldTag];
1230
1347
  delete _GameWindowManager._children[oldTag];
1231
1348
  }
1349
+ if (_GameWindowManager._currentTickersSteps[oldTag]) {
1350
+ _GameWindowManager._currentTickersSteps[newTag] = _GameWindowManager._currentTickersSteps[oldTag];
1351
+ delete _GameWindowManager._currentTickersSteps[oldTag];
1352
+ }
1353
+ for (let id in _GameWindowManager._currentTickers) {
1354
+ let ticker = _GameWindowManager._currentTickers[id];
1355
+ if (ticker.canvasElementTags.includes(oldTag)) {
1356
+ ticker.canvasElementTags = ticker.canvasElementTags.map((t) => t === oldTag ? newTag : t);
1357
+ if (ticker.args.hasOwnProperty(tagToRemoveAfter)) {
1358
+ let tagToRemoveAfter2 = ticker.args.tagToRemoveAfter;
1359
+ if (typeof tagToRemoveAfter2 === "string") {
1360
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
1361
+ }
1362
+ if (Array.isArray(tagToRemoveAfter2)) {
1363
+ ticker.args.tagToRemoveAfter = tagToRemoveAfter2.map((t) => t === oldTag ? newTag : t);
1364
+ }
1365
+ }
1366
+ }
1367
+ }
1368
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1369
+ let TickerTimeout = _GameWindowManager._currentTickersTimeouts[timeout];
1370
+ if (TickerTimeout.tags.includes(oldTag)) {
1371
+ TickerTimeout.tags = TickerTimeout.tags.map((t) => t === oldTag ? newTag : t);
1372
+ }
1373
+ }
1232
1374
  }
1233
1375
  /** Edit Tickers Methods */
1234
1376
  /**
@@ -1237,23 +1379,38 @@ var _GameWindowManager = class _GameWindowManager {
1237
1379
  static get currentTickers() {
1238
1380
  return _GameWindowManager._currentTickers;
1239
1381
  }
1382
+ static get currentTickersList() {
1383
+ return Object.values(_GameWindowManager._currentTickers);
1384
+ }
1385
+ static get currentTickersWithoutCreatedBySteps() {
1386
+ return Object.fromEntries(Object.entries(_GameWindowManager._currentTickers).filter(([_, ticker]) => !ticker.createdByTicketStepsId));
1387
+ }
1240
1388
  /**
1241
1389
  * The steps of the tickers
1242
1390
  */
1243
1391
  static get currentTickersSteps() {
1244
1392
  return _GameWindowManager._currentTickersSteps;
1245
1393
  }
1394
+ static generateTickerId(tickerData) {
1395
+ try {
1396
+ return sha1(JSON.stringify(tickerData)).toString() + "_" + Math.random().toString(36).substring(7);
1397
+ } catch (e) {
1398
+ throw new Error(`[Pixi'VN] Error to generate ticker id: ${e}`);
1399
+ }
1400
+ }
1246
1401
  /**
1247
- * Run a ticker.
1402
+ * Run a ticker. You can run multiple addTicker with the same tag and different tickerClasses.
1403
+ * If you run a ticker with the same tag and tickerClass, the old ticker will be removed.
1404
+ * If already exists a sequence of tickers with the same tag, it will be removed.
1248
1405
  * @param canvasEslementTag The tag of the canvas element that will use the ticker.
1249
1406
  * @param ticker The ticker class to be run.
1250
1407
  * @param args The arguments to be used in the ticker.
1251
- * @param duration The time to be used in the ticker. This number is in milliseconds. If it is undefined, the ticker will run forever.
1408
+ * @param duration The time to be used in the ticker. This number is in seconds. If it is undefined, the ticker will run forever.
1252
1409
  * @param priority The priority to be used in the ticker.
1253
1410
  * @returns
1254
1411
  * @example
1255
1412
  * ```typescript
1256
- * GameWindowManager.addTicker("alien", new TickerRotate({ speed: 0.2 }))
1413
+ * GameWindowManager.addTicker("alien", new RotateTicker({ speed: 0.2 }))
1257
1414
  * ```
1258
1415
  */
1259
1416
  static addTicker(canvasElementTag, ticker) {
@@ -1261,82 +1418,88 @@ var _GameWindowManager = class _GameWindowManager {
1261
1418
  if (typeof canvasElementTag === "string") {
1262
1419
  canvasElementTag = [canvasElementTag];
1263
1420
  }
1264
- let t = geTickerInstanceByClassName(tickerName, ticker.args, ticker.duration, ticker.priority);
1265
- if (!t) {
1421
+ if (!geTickerInstanceByClassName(tickerName, ticker.args, ticker.duration, ticker.priority)) {
1266
1422
  console.error(`[Pixi'VN] Ticker ${tickerName} not found`);
1267
1423
  return;
1268
1424
  }
1269
- _GameWindowManager.removeAssociationBetweenTickerCanvasElement(canvasElementTag, ticker);
1270
1425
  let tickerHistory = {
1271
1426
  fn: () => {
1272
1427
  },
1273
1428
  className: tickerName,
1274
- args: ticker.args,
1429
+ args: createExportableElement(ticker.args),
1275
1430
  canvasElementTags: canvasElementTag,
1276
1431
  priority: ticker.priority,
1277
1432
  duration: ticker.duration
1278
1433
  };
1279
- _GameWindowManager.pushTicker(tickerHistory, t);
1280
- _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
1434
+ let id = _GameWindowManager.generateTickerId(tickerHistory);
1435
+ _GameWindowManager.pushTicker(id, tickerHistory, ticker);
1281
1436
  if (ticker.duration) {
1282
1437
  let timeout = setTimeout(() => {
1283
1438
  _GameWindowManager.removeTickerTimeoutInfo(timeout);
1284
- _GameWindowManager.nextTickerStep(canvasElementTag);
1285
- }, ticker.duration);
1286
- _GameWindowManager.addTickerTimeoutInfo(canvasElementTag, tickerName, timeout.toString());
1439
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
1440
+ if (tickerTimeoutInfo) {
1441
+ _GameWindowManager.removeTicker(id);
1442
+ }
1443
+ }, ticker.duration * 1e3);
1444
+ _GameWindowManager.addTickerTimeoutInfo(canvasElementTag, tickerName, timeout.toString(), true);
1287
1445
  }
1288
1446
  }
1289
- static pushTicker(tickerData, ticker) {
1447
+ static pushTicker(id, tickerData, ticker) {
1290
1448
  _GameWindowManager.removeAssociationBetweenTickerCanvasElement(tickerData.canvasElementTags, tickerData);
1291
- _GameWindowManager._currentTickers.push(tickerData);
1449
+ _GameWindowManager._currentTickers[id] = tickerData;
1292
1450
  tickerData.fn = (t) => {
1293
- ticker == null ? void 0 : ticker.fn(t, tickerData.args, tickerData.canvasElementTags);
1451
+ let data = _GameWindowManager._currentTickers[id];
1452
+ if (data) {
1453
+ ticker == null ? void 0 : ticker.fn(t, data.args, data.canvasElementTags, id);
1454
+ }
1294
1455
  };
1295
1456
  _GameWindowManager.app.ticker.add(tickerData.fn, void 0, tickerData.priority);
1296
1457
  }
1297
1458
  /**
1298
- * Run a sequence of tickers.
1459
+ * Run a sequence of tickers. If exists a ticker steps with the same tag, it will be removed.
1299
1460
  * @param tag The tag of canvas element that will use the tickers.
1300
1461
  * @param steps The steps of the tickers.
1462
+ * @param currentStepNumber The current step number. It is used to continue the sequence of tickers.
1301
1463
  * @returns
1302
1464
  * @example
1303
1465
  * ```typescript
1304
1466
  * GameWindowManager.addTickersSteps("alien", [
1305
- * new TickerRotate({ speed: 0.1, clockwise: true }, 2000),
1306
- * Pause(500),
1307
- * new TickerRotate({ speed: 0.2, clockwise: false }, 2000),
1467
+ * new RotateTicker({ speed: 0.1, clockwise: true }, 2), // 2 seconds
1468
+ * Pause(1), // 1 second
1469
+ * new RotateTicker({ speed: 0.2, clockwise: false }, 2),
1308
1470
  * Repeat,
1309
1471
  * ])
1310
1472
  * ```
1311
1473
  */
1312
- static addTickersSteps(tag, steps) {
1474
+ static addTickersSteps(tag, steps, currentStepNumber = 0) {
1313
1475
  if (steps.length == 0) {
1314
1476
  console.warn("[Pixi'VN] The steps of the tickers is empty");
1315
1477
  return;
1316
1478
  }
1317
- let alredyExists = _GameWindowManager._currentTickersSteps[tag] !== void 0;
1479
+ _GameWindowManager.removeTickerStepByCanvasElement(tag);
1318
1480
  _GameWindowManager._currentTickersSteps[tag] = {
1319
- currentStepNumber: 0,
1320
- steps: steps.map((s) => {
1321
- if (s === Repeat) {
1322
- return s;
1481
+ currentStepNumber,
1482
+ steps: steps.map((step) => {
1483
+ if (step === Repeat) {
1484
+ return step;
1323
1485
  }
1324
- if (!s.duration) {
1325
- console.warn("[Pixi'VN] Duration is not defined, so it will be set to 1000");
1326
- s.duration = 1e3;
1486
+ if (step.hasOwnProperty("type") && step.type === "pause") {
1487
+ return step;
1327
1488
  }
1328
- if (s.hasOwnProperty("type") && s.type === PauseValueType) {
1329
- return s;
1330
- }
1331
- let tickerName = s.constructor.name;
1489
+ let tickerName = step.constructor.name;
1332
1490
  return {
1333
1491
  ticker: tickerName,
1334
- args: s.args,
1335
- duration: s.duration
1492
+ args: createExportableElement(step.args),
1493
+ duration: step.duration
1336
1494
  };
1337
1495
  })
1338
1496
  };
1339
- if (!alredyExists) {
1497
+ _GameWindowManager.runTickersSteps(tag);
1498
+ }
1499
+ static restoneTickersSteps(data) {
1500
+ for (let tag in data) {
1501
+ let steps = data[tag];
1502
+ _GameWindowManager._currentTickersSteps[tag] = steps;
1340
1503
  _GameWindowManager.runTickersSteps(tag);
1341
1504
  }
1342
1505
  }
@@ -1350,12 +1513,17 @@ var _GameWindowManager = class _GameWindowManager {
1350
1513
  return;
1351
1514
  }
1352
1515
  }
1353
- if (step.hasOwnProperty("type") && step.type === PauseValueType) {
1516
+ if (step.hasOwnProperty("type") && step.type === "pause") {
1354
1517
  let timeout = setTimeout(() => {
1518
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
1519
+ if (tickerTimeoutInfo) {
1520
+ tickerTimeoutInfo.tags.forEach((tag2) => {
1521
+ _GameWindowManager.nextTickerStep(tag2);
1522
+ });
1523
+ }
1355
1524
  _GameWindowManager.removeTickerTimeoutInfo(timeout);
1356
- _GameWindowManager.nextTickerStep(tag);
1357
- }, step.duration);
1358
- _GameWindowManager.addTickerTimeoutInfo(tag, "steps", timeout.toString());
1525
+ }, step.duration * 1e3);
1526
+ _GameWindowManager.addTickerTimeoutInfo(tag, "steps", timeout.toString(), false);
1359
1527
  return;
1360
1528
  }
1361
1529
  let ticker = geTickerInstanceByClassName(step.ticker, step.args, step.duration, step.priority);
@@ -1363,57 +1531,88 @@ var _GameWindowManager = class _GameWindowManager {
1363
1531
  console.error(`[Pixi'VN] Ticker ${step.ticker} not found`);
1364
1532
  return;
1365
1533
  }
1366
- _GameWindowManager.addTicker(tag, ticker);
1534
+ let tickerName = ticker.constructor.name;
1535
+ let tickerHistory = {
1536
+ fn: () => {
1537
+ },
1538
+ className: tickerName,
1539
+ args: createExportableElement(ticker.args),
1540
+ canvasElementTags: [tag],
1541
+ priority: ticker.priority,
1542
+ duration: ticker.duration,
1543
+ createdByTicketStepsId: tag
1544
+ };
1545
+ let id = _GameWindowManager.generateTickerId(tickerHistory);
1546
+ _GameWindowManager.pushTicker(id, tickerHistory, ticker);
1547
+ if (ticker.duration) {
1548
+ let timeout = setTimeout(() => {
1549
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
1550
+ if (tickerTimeoutInfo) {
1551
+ _GameWindowManager.removeTicker(id);
1552
+ tickerTimeoutInfo.tags.forEach((tag2) => {
1553
+ _GameWindowManager.nextTickerStep(tag2);
1554
+ });
1555
+ }
1556
+ _GameWindowManager.removeTickerTimeoutInfo(timeout);
1557
+ }, ticker.duration * 1e3);
1558
+ _GameWindowManager.addTickerTimeoutInfo(tag, tickerName, timeout.toString(), false);
1559
+ }
1367
1560
  }
1368
1561
  static nextTickerStep(tag) {
1369
- if (typeof tag === "string") {
1370
- tag = [tag];
1562
+ if (_GameWindowManager._currentTickersSteps[tag]) {
1563
+ let steps = _GameWindowManager._currentTickersSteps[tag];
1564
+ if (steps.currentStepNumber + 1 < steps.steps.length) {
1565
+ steps.currentStepNumber++;
1566
+ _GameWindowManager._currentTickersSteps[tag] = steps;
1567
+ _GameWindowManager.runTickersSteps(tag);
1568
+ } else {
1569
+ _GameWindowManager.removeTickerStepByCanvasElement(tag);
1570
+ }
1371
1571
  }
1372
- tag.forEach((tag2) => {
1373
- if (_GameWindowManager._currentTickersSteps[tag2]) {
1374
- let steps = _GameWindowManager._currentTickersSteps[tag2];
1375
- if (steps.currentStepNumber + 1 < steps.steps.length) {
1376
- steps.currentStepNumber++;
1377
- _GameWindowManager._currentTickersSteps[tag2] = steps;
1378
- _GameWindowManager.runTickersSteps(tag2);
1379
- } else {
1380
- delete _GameWindowManager._currentTickersSteps[tag2];
1381
- }
1572
+ }
1573
+ static onEndOfTicker(canvasElementTags, ticker, canvasElementTagsToDelete, tickerId) {
1574
+ let tickerData = _GameWindowManager._currentTickers[tickerId];
1575
+ _GameWindowManager.removeAssociationBetweenTickerCanvasElement(canvasElementTags, ticker);
1576
+ _GameWindowManager.removeCanvasElement(canvasElementTagsToDelete);
1577
+ if (tickerData) {
1578
+ _GameWindowManager.removeTicker(tickerId);
1579
+ if (tickerData.duration == void 0 && tickerData.createdByTicketStepsId) {
1580
+ _GameWindowManager.nextTickerStep(tickerData.createdByTicketStepsId);
1382
1581
  }
1383
- });
1582
+ }
1384
1583
  }
1385
1584
  /**
1386
1585
  * Remove a connection between a canvas element and a ticker.
1387
1586
  * And remove the ticker if there is no canvas element connected to it.
1388
- * @param tag The tag of the canvas element that will use the ticker.
1587
+ * @param tags The tag of the canvas element that will use the ticker.
1389
1588
  * @param ticker The ticker class to be removed.
1390
1589
  * @example
1391
1590
  * ```typescript
1392
- * GameWindowManager.removeAssociationBetweenTickerCanvasElement("alien", TickerRotate)
1591
+ * GameWindowManager.removeAssociationBetweenTickerCanvasElement("alien", RotateTicker)
1393
1592
  * ```
1394
1593
  */
1395
- static removeAssociationBetweenTickerCanvasElement(tag, ticker) {
1594
+ static removeAssociationBetweenTickerCanvasElement(tags, ticker) {
1396
1595
  let tickerName;
1397
- if (ticker instanceof TickerBase) {
1596
+ if (typeof ticker === "string") {
1597
+ tickerName = ticker;
1598
+ } else if (ticker instanceof TickerBase) {
1398
1599
  tickerName = ticker.constructor.name;
1399
1600
  } else {
1400
1601
  tickerName = ticker.name;
1401
1602
  }
1402
- if (typeof tag === "string") {
1403
- tag = [tag];
1603
+ if (typeof tags === "string") {
1604
+ tags = [tags];
1404
1605
  }
1405
- _GameWindowManager._currentTickers = _GameWindowManager._currentTickers.map((t) => {
1406
- if (t.className === tickerName) {
1407
- t.canvasElementTags = t.canvasElementTags.filter((e) => !tag.includes(e));
1606
+ for (let id in _GameWindowManager._currentTickers) {
1607
+ let ticker2 = _GameWindowManager._currentTickers[id];
1608
+ if (ticker2.className === tickerName) {
1609
+ _GameWindowManager._currentTickers[id].canvasElementTags = ticker2.canvasElementTags.filter((e) => !tags.includes(e));
1408
1610
  }
1409
- return t;
1410
- });
1411
- for (let timeout in _GameWindowManager.currentTickersTimeouts) {
1412
- let t = _GameWindowManager.currentTickersTimeouts[timeout].tags.filter((e) => !tag.includes(e));
1413
- if (t.length == 0) {
1414
- _GameWindowManager.removeTickerTimeoutInfo(timeout);
1415
- } else {
1416
- _GameWindowManager.currentTickersTimeouts[timeout].tags = t;
1611
+ }
1612
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1613
+ let TickerTimeout = _GameWindowManager._currentTickersTimeouts[timeout];
1614
+ if (TickerTimeout.ticker === tickerName && TickerTimeout.canBeDeletedBeforeEnd) {
1615
+ _GameWindowManager._currentTickersTimeouts[timeout].tags = TickerTimeout.tags.filter((t) => !tags.includes(t));
1417
1616
  }
1418
1617
  }
1419
1618
  _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
@@ -1422,49 +1621,117 @@ var _GameWindowManager = class _GameWindowManager {
1422
1621
  * Remove all tickers that are not connected to any existing canvas element.
1423
1622
  */
1424
1623
  static removeTickersWithoutAssociatedCanvasElement() {
1425
- let currentTickers = _GameWindowManager._currentTickers.map((t) => {
1426
- t.canvasElementTags = t.canvasElementTags.filter((e) => _GameWindowManager._children[e]);
1427
- return t;
1428
- });
1429
- currentTickers.filter((t) => t.canvasElementTags.length === 0).forEach((t) => {
1430
- _GameWindowManager.app.ticker.remove(t.fn);
1431
- });
1432
- currentTickers = currentTickers.filter((t) => t.canvasElementTags.length > 0);
1433
- _GameWindowManager._currentTickers = currentTickers;
1624
+ for (let id in _GameWindowManager._currentTickers) {
1625
+ let ticker = _GameWindowManager._currentTickers[id];
1626
+ ticker.canvasElementTags = ticker.canvasElementTags.filter((e) => _GameWindowManager._children[e]);
1627
+ if (ticker.canvasElementTags.length === 0) {
1628
+ _GameWindowManager.removeTicker(id);
1629
+ }
1630
+ }
1434
1631
  for (let tag in _GameWindowManager._currentTickersSteps) {
1435
1632
  if (_GameWindowManager._children[tag] === void 0) {
1436
1633
  delete _GameWindowManager._currentTickersSteps[tag];
1437
1634
  }
1438
1635
  }
1636
+ Object.entries(_GameWindowManager._currentTickersTimeouts).forEach(([timeout, { tags }]) => {
1637
+ if (tags.length === 0) {
1638
+ _GameWindowManager.removeTickerTimeout(timeout);
1639
+ }
1640
+ });
1439
1641
  }
1440
- static addTickerTimeoutInfo(tags, ticker, timeout) {
1642
+ static addTickerTimeoutInfo(tags, ticker, timeout, canBeDeletedBeforeEnd) {
1441
1643
  if (typeof tags === "string") {
1442
1644
  tags = [tags];
1443
1645
  }
1444
- _GameWindowManager.currentTickersTimeouts[timeout] = {
1646
+ _GameWindowManager._currentTickersTimeouts[timeout] = {
1445
1647
  tags,
1446
- ticker
1648
+ ticker,
1649
+ canBeDeletedBeforeEnd
1447
1650
  };
1448
1651
  }
1449
1652
  static removeTickerTimeoutInfo(timeout) {
1450
1653
  if (typeof timeout !== "string") {
1451
1654
  timeout = timeout.toString();
1452
1655
  }
1453
- if (_GameWindowManager.currentTickersTimeouts[timeout]) {
1454
- delete _GameWindowManager.currentTickersTimeouts[timeout];
1656
+ if (_GameWindowManager._currentTickersTimeouts[timeout]) {
1657
+ delete _GameWindowManager._currentTickersTimeouts[timeout];
1658
+ }
1659
+ }
1660
+ static removeTickerTimeout(timeout) {
1661
+ if (typeof timeout !== "string") {
1662
+ timeout = timeout.toString();
1663
+ }
1664
+ clearTimeout(Number(timeout));
1665
+ _GameWindowManager.removeTickerTimeoutInfo(timeout);
1666
+ }
1667
+ static removeTickerTimeoutsByTag(tag, checkCanBeDeletedBeforeEnd) {
1668
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1669
+ let tagsWithoutTagToRemove = _GameWindowManager._currentTickersTimeouts[timeout].tags.filter((t) => t !== tag);
1670
+ if (tagsWithoutTagToRemove.length === 0) {
1671
+ let canBeDeletedBeforeEnd = _GameWindowManager._currentTickersTimeouts[timeout].canBeDeletedBeforeEnd;
1672
+ if (!checkCanBeDeletedBeforeEnd || canBeDeletedBeforeEnd) {
1673
+ _GameWindowManager.removeTickerTimeout(timeout);
1674
+ }
1675
+ } else {
1676
+ _GameWindowManager._currentTickersTimeouts[timeout].tags = tagsWithoutTagToRemove;
1677
+ }
1455
1678
  }
1456
1679
  }
1457
1680
  /**
1458
1681
  * Remove all tickers from the canvas.
1459
1682
  */
1460
- static removeTickers() {
1683
+ static removeAllTickers() {
1461
1684
  _GameWindowManager._currentTickersSteps = {};
1462
- _GameWindowManager._currentTickers.forEach((t) => {
1463
- _GameWindowManager.app.ticker.remove(t.fn);
1685
+ Object.keys(_GameWindowManager._currentTickers).forEach((id) => {
1686
+ _GameWindowManager.removeTicker(id);
1464
1687
  });
1465
- _GameWindowManager._currentTickers = [];
1466
- for (let timeout in _GameWindowManager.currentTickersTimeouts) {
1467
- _GameWindowManager.removeTickerTimeoutInfo(timeout);
1688
+ _GameWindowManager._currentTickers = {};
1689
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1690
+ _GameWindowManager.removeTickerTimeout(timeout);
1691
+ }
1692
+ }
1693
+ /**
1694
+ * Remove all tickers from a canvas element.
1695
+ * @param tag The tag of the canvas element that will use the ticker.
1696
+ */
1697
+ static removeTickerByCanvasElement(tag) {
1698
+ if (typeof tag === "string") {
1699
+ tag = [tag];
1700
+ }
1701
+ tag.forEach((tag2) => {
1702
+ for (let id in _GameWindowManager._currentTickers) {
1703
+ let ticker = _GameWindowManager._currentTickers[id];
1704
+ if (ticker.canvasElementTags.includes(tag2)) {
1705
+ _GameWindowManager.removeTicker(id);
1706
+ }
1707
+ }
1708
+ if (_GameWindowManager._currentTickersSteps[tag2]) {
1709
+ delete _GameWindowManager._currentTickersSteps[tag2];
1710
+ }
1711
+ _GameWindowManager.removeTickerTimeoutsByTag(tag2, false);
1712
+ delete _GameWindowManager._currentTickersSteps[tag2];
1713
+ });
1714
+ }
1715
+ static removeTickerStepByCanvasElement(tag) {
1716
+ if (_GameWindowManager._currentTickersSteps[tag]) {
1717
+ delete _GameWindowManager._currentTickersSteps[tag];
1718
+ }
1719
+ for (let id in _GameWindowManager._currentTickers) {
1720
+ let ticker = _GameWindowManager._currentTickers[id];
1721
+ if (ticker.createdByTicketStepsId === tag) {
1722
+ _GameWindowManager.removeTicker(id);
1723
+ }
1724
+ }
1725
+ }
1726
+ static removeTicker(tickerId) {
1727
+ let ticker = _GameWindowManager._currentTickers[tickerId];
1728
+ if (ticker) {
1729
+ if (ticker.args.hasOwnProperty(tagToRemoveAfter)) {
1730
+ let tagToRemoveAfter2 = ticker.args.tagToRemoveAfter;
1731
+ _GameWindowManager.removeCanvasElement(tagToRemoveAfter2);
1732
+ }
1733
+ _GameWindowManager.app.ticker.remove(ticker.fn);
1734
+ delete _GameWindowManager._currentTickers[tickerId];
1468
1735
  }
1469
1736
  }
1470
1737
  /**
@@ -1491,7 +1758,8 @@ var _GameWindowManager = class _GameWindowManager {
1491
1758
  currentElements[tag] = exportCanvasElement(_GameWindowManager._children[tag]);
1492
1759
  }
1493
1760
  return {
1494
- currentTickers: createExportableElement(_GameWindowManager._currentTickers),
1761
+ currentTickers: createExportableElement(_GameWindowManager.currentTickersWithoutCreatedBySteps),
1762
+ currentTickersSteps: createExportableElement(_GameWindowManager._currentTickersSteps),
1495
1763
  currentElements: createExportableElement(currentElements),
1496
1764
  childrenTagsOrder: createExportableElement(_GameWindowManager.childrenTagsOrder)
1497
1765
  };
@@ -1526,7 +1794,8 @@ var _GameWindowManager = class _GameWindowManager {
1526
1794
  }
1527
1795
  if (data.hasOwnProperty("currentTickers")) {
1528
1796
  let currentTickers = data["currentTickers"];
1529
- currentTickers.forEach((t) => {
1797
+ for (let id in currentTickers) {
1798
+ let t = currentTickers[id];
1530
1799
  let tags = t.canvasElementTags;
1531
1800
  let ticker = geTickerInstanceByClassName(t.className, t.args, t.duration, t.priority);
1532
1801
  if (ticker) {
@@ -1534,7 +1803,11 @@ var _GameWindowManager = class _GameWindowManager {
1534
1803
  } else {
1535
1804
  console.error(`[Pixi'VN] Ticker ${t.className} not found`);
1536
1805
  }
1537
- });
1806
+ }
1807
+ }
1808
+ if (data.hasOwnProperty("currentTickersSteps")) {
1809
+ let currentTickersSteps = data["currentTickersSteps"];
1810
+ _GameWindowManager.restoneTickersSteps(currentTickersSteps);
1538
1811
  }
1539
1812
  } catch (e) {
1540
1813
  console.error("[Pixi'VN] Error importing data", e);
@@ -1548,9 +1821,9 @@ _GameWindowManager._children = {};
1548
1821
  * The order of the children tags.
1549
1822
  */
1550
1823
  _GameWindowManager.childrenTagsOrder = [];
1551
- _GameWindowManager._currentTickers = [];
1824
+ _GameWindowManager._currentTickers = {};
1552
1825
  _GameWindowManager._currentTickersSteps = {};
1553
- _GameWindowManager.currentTickersTimeouts = {};
1826
+ _GameWindowManager._currentTickersTimeouts = {};
1554
1827
  var GameWindowManager = _GameWindowManager;
1555
1828
 
1556
1829
  // src/classes/StoredClassModel.ts