@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,6 +1,6 @@
1
1
  import { Sprite, Container, Application, Text, Assets, Texture } from 'pixi.js';
2
2
  import 'deep-diff';
3
- import 'crypto-js/sha1';
3
+ import sha1 from 'crypto-js/sha1';
4
4
 
5
5
  var __defProp = Object.defineProperty;
6
6
  var __defProps = Object.defineProperties;
@@ -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) => {
@@ -213,7 +212,7 @@ function eventDecorator(name) {
213
212
  name = target.name;
214
213
  }
215
214
  if (registeredEvents[name]) {
216
- console.warn(`[Pixi'VN] Event ${name} already exists, it will be overwritten`);
215
+ console.info(`[Pixi'VN] Event ${name} already exists, it will be overwritten`);
217
216
  }
218
217
  registeredEvents[name] = target;
219
218
  };
@@ -545,7 +544,7 @@ function saveCharacter(character) {
545
544
  return;
546
545
  }
547
546
  if (registeredCharacters[character.id]) {
548
- console.warn(`[Pixi'VN] Character id ${character.id} already exists, it will be overwritten`);
547
+ console.info(`[Pixi'VN] Character id ${character.id} already exists, it will be overwritten`);
549
548
  }
550
549
  registeredCharacters[character.id] = character;
551
550
  }
@@ -636,18 +635,12 @@ var Label = class {
636
635
  }
637
636
  };
638
637
 
639
- // src/types/PauseType.ts
640
- var PauseValueType = "pause";
641
-
642
- // src/types/RepeatType.ts
643
- var Repeat = "repeat";
644
-
645
638
  // src/classes/ticker/TickerBase.ts
646
639
  var TickerBase = class {
647
640
  /**
648
641
  * @param args The arguments that you want to pass to the ticker.
649
- * @param duration The duration of the ticker. If is undefined, the ticker will be called every frame.
650
- * @param priority The priority of the ticker. If is undefined, the priority will be UPDATE_PRIORITY.NORMAL.
642
+ * @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
643
+ * @param priority The priority of the ticker. @default UPDATE_PRIORITY.NORMAL
651
644
  */
652
645
  constructor(args, duration, priority) {
653
646
  this.args = args;
@@ -657,28 +650,26 @@ var TickerBase = class {
657
650
  /**
658
651
  * The method that will be called every frame.
659
652
  * This method should be overridden and you can use GameWindowManager.addCanvasElement() to get the canvas element of the canvas, and edit them.
660
- * @param t The ticker that is calling this method
661
- * @param args The arguments that you passed when you added the ticker
662
- * @param tags The tags of the canvas elements that are connected to this ticker
653
+ * @param _ticker The ticker that is calling this method
654
+ * @param _args The arguments that you passed when you added the ticker
655
+ * @param _tags The tags of the canvas elements that are connected to this ticker
656
+ * @param _tickerId The id of the ticker. You can use this to get the ticker from the {@link GameWindowManager.currentTickers}
663
657
  */
664
- fn(_t, _args, _tags) {
658
+ fn(_ticker, _args, _tags, _tickerId) {
665
659
  throw new Error("[Pixi'VN] The method TickerBase.fn() must be overridden");
666
660
  }
667
661
  };
668
- var TickerFadeAlpha = class extends TickerBase {
669
- /**
670
- * The method that will be called every frame to fade the alpha of the canvas element of the canvas.
671
- * @param delta The delta time
672
- * @param args The arguments that are passed to the ticker
673
- * @param tags The tags of the canvas element that are connected to this ticker
674
- */
675
- fn(t, args, tags) {
662
+
663
+ // src/classes/ticker/FadeAlphaTicker.ts
664
+ var FadeAlphaTicker = class extends TickerBase {
665
+ fn(ticker, args, tags, tickerId) {
676
666
  let type = args.type === void 0 ? "hide" : args.type;
677
- let speed = args.speed === void 0 ? 0.1 : args.speed;
667
+ let duration = args.duration === void 0 ? 1 : args.duration;
668
+ let speed = 1 / (duration * 60);
678
669
  let limit = args.limit === void 0 ? type === "hide" ? 0 : 1 : args.limit;
679
- let removeElementAfter = args.tagToRemoveAfter || [];
680
- if (typeof removeElementAfter === "string") {
681
- removeElementAfter = [removeElementAfter];
670
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
671
+ if (typeof tagToRemoveAfter2 === "string") {
672
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
682
673
  }
683
674
  if (type === "hide" && limit < 0) {
684
675
  limit = 0;
@@ -699,61 +690,88 @@ var TickerFadeAlpha = class extends TickerBase {
699
690
  let element = GameWindowManager.getCanvasElement(tag);
700
691
  if (element && element instanceof Container) {
701
692
  if (type === "show" && element.alpha < limit) {
702
- element.alpha += speed * t.deltaTime;
693
+ element.alpha += speed * ticker.deltaTime;
703
694
  } else if (type === "hide" && element.alpha > limit) {
704
- element.alpha -= speed * t.deltaTime;
705
- } else {
695
+ element.alpha -= speed * ticker.deltaTime;
696
+ }
697
+ if (type === "show" && element.alpha >= limit) {
698
+ element.alpha = limit;
699
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
700
+ } else if (type === "hide" && element.alpha <= limit) {
706
701
  element.alpha = limit;
707
- GameWindowManager.removeAssociationBetweenTickerCanvasElement(tag, this);
708
- GameWindowManager.removeCanvasElement(removeElementAfter);
702
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
709
703
  }
710
704
  }
711
705
  });
712
706
  }
713
707
  };
714
- TickerFadeAlpha = __decorateClass([
708
+ FadeAlphaTicker = __decorateClass([
715
709
  tickerDecorator()
716
- ], TickerFadeAlpha);
710
+ ], FadeAlphaTicker);
717
711
 
718
712
  // src/functions/TickerUtility.ts
719
713
  function updateTickerProgression(args, propertyName, progression) {
720
- if (args.hasOwnProperty(propertyName) && typeof args[propertyName] !== "number") {
714
+ if (args[propertyName] === void 0 || !progression || args[propertyName] === progression.limit) {
721
715
  return;
722
716
  }
723
- if (args[propertyName] !== void 0 && progression && args[propertyName] !== progression.limit) {
717
+ if (typeof args[propertyName] === "number") {
724
718
  if (progression.type === "linear") {
725
- args[propertyName] += progression.amt;
726
- if (progression.limit !== void 0) {
727
- if (args[propertyName] > progression.limit && progression.amt > 0) {
728
- args[propertyName] = progression.limit;
729
- } else if (args[propertyName] < progression.limit && progression.amt < 0) {
730
- args[propertyName] = progression.limit;
731
- }
732
- }
719
+ args[propertyName] = getLinearProgression(args[propertyName], progression);
733
720
  } else if (progression.type === "exponential") {
734
- args[propertyName] += args[propertyName] * progression.percentage;
735
- if (progression.limit !== void 0) {
736
- if (args[propertyName] > progression.limit && progression.percentage > 0) {
737
- args[propertyName] = progression.limit;
738
- } else if (args[propertyName] < progression.limit && progression.percentage < 0) {
739
- args[propertyName] = progression.limit;
740
- }
741
- }
721
+ args[propertyName] = getExponentialProgression(args[propertyName], progression);
722
+ }
723
+ } 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") {
724
+ if (progression.type === "linear") {
725
+ args[propertyName].x = getLinearProgression(args[propertyName].x, progression);
726
+ args[propertyName].y = getLinearProgression(args[propertyName].y, progression);
727
+ } else if (progression.type === "exponential") {
728
+ args[propertyName].x = getExponentialProgression(args[propertyName].x, progression);
729
+ args[propertyName].y = getExponentialProgression(args[propertyName].y, progression);
730
+ }
731
+ }
732
+ }
733
+ function getLinearProgression(number, progression) {
734
+ if (progression.limit !== void 0) {
735
+ if (number > progression.limit && progression.amt > 0) {
736
+ return progression.limit;
737
+ } else if (number < progression.limit && progression.amt < 0) {
738
+ return progression.limit;
739
+ }
740
+ }
741
+ return number + progression.amt / 60;
742
+ }
743
+ function getExponentialProgression(number, progression) {
744
+ if (progression.limit !== void 0) {
745
+ if (number > progression.limit && progression.percentage > 0) {
746
+ return progression.limit;
747
+ } else if (number < progression.limit && progression.percentage < 0) {
748
+ return progression.limit;
742
749
  }
743
750
  }
751
+ return number + number * progression.percentage;
744
752
  }
745
753
 
746
- // src/classes/ticker/TickerMove.ts
747
- var TickerMove = class extends TickerBase {
748
- /**
749
- * The method that will be called every frame to move the canvas element of the canvas.
750
- * @param t The ticker that is calling this method
751
- * @param args The arguments that are passed to the ticker
752
- * @param tags The tags of the canvas element that are connected to this ticker
753
- */
754
- fn(t, args, tags) {
755
- let speed = args.speed === void 0 ? 0.1 : args.speed;
754
+ // src/classes/ticker/MoveTicker.ts
755
+ var MoveTicker = class extends TickerBase {
756
+ fn(ticker, args, tags, tickerId) {
757
+ let xSpeed = 1;
758
+ let ySpeed = 1;
759
+ if (args.speed) {
760
+ if (typeof args.speed === "number") {
761
+ xSpeed = args.speed;
762
+ ySpeed = args.speed;
763
+ } else {
764
+ xSpeed = args.speed.x;
765
+ ySpeed = args.speed.y;
766
+ }
767
+ }
768
+ xSpeed /= 60;
769
+ ySpeed /= 60;
756
770
  let destination = args.destination;
771
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
772
+ if (typeof tagToRemoveAfter2 === "string") {
773
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
774
+ }
757
775
  tags.filter((tag) => {
758
776
  var _a;
759
777
  let element = GameWindowManager.getCanvasElement(tag);
@@ -766,41 +784,42 @@ var TickerMove = class extends TickerBase {
766
784
  }).forEach((tag) => {
767
785
  let element = GameWindowManager.getCanvasElement(tag);
768
786
  if (element && element instanceof Container) {
769
- let xDistance = destination.x - element.x;
787
+ let xDistance = destination.x - element.x > 0 ? 1 : -1;
770
788
  if (xDistance != 0) {
771
- element.x += xDistance / speed * t.deltaTime;
789
+ element.x += xDistance * xSpeed * ticker.deltaTime;
772
790
  let newDistance = destination.x - element.x;
773
791
  if (xDistance < 0 && newDistance > 0 || xDistance > 0 && newDistance < 0) {
774
792
  element.x = destination.x;
775
793
  }
776
794
  }
777
- let yDistance = destination.y - element.y;
795
+ let yDistance = destination.y - element.y > 0 ? 1 : -1;
778
796
  if (yDistance != 0) {
779
- element.y += yDistance / speed * t.deltaTime;
797
+ element.y += yDistance * ySpeed * ticker.deltaTime;
780
798
  let newDistance = destination.y - element.y;
781
799
  if (yDistance < 0 && newDistance > 0 || yDistance > 0 && newDistance < 0) {
782
800
  element.y = destination.y;
783
801
  }
784
802
  }
803
+ if (element.x == destination.x && element.y == destination.y) {
804
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
805
+ }
785
806
  }
786
807
  });
787
808
  if (args.speedProgression)
788
809
  updateTickerProgression(args, "speed", args.speedProgression);
789
810
  }
790
811
  };
791
- TickerMove = __decorateClass([
812
+ MoveTicker = __decorateClass([
792
813
  tickerDecorator()
793
- ], TickerMove);
794
- var TickerRotate = class extends TickerBase {
795
- /**
796
- * The method that will be called every frame to rotate the canvas element of the canvas.
797
- * @param delta The delta time
798
- * @param args The arguments that are passed to the ticker
799
- * @param tags The tags of the canvas element that are connected to this ticker
800
- */
801
- fn(t, args, tags) {
802
- let speed = args.speed === void 0 ? 0.1 : args.speed;
814
+ ], MoveTicker);
815
+ var RotateTicker = class extends TickerBase {
816
+ fn(ticker, args, tags, tickerId) {
817
+ let speed = (args.speed === void 0 ? 1 : args.speed) / 60;
803
818
  let clockwise = args.clockwise === void 0 ? true : args.clockwise;
819
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
820
+ if (typeof tagToRemoveAfter2 === "string") {
821
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
822
+ }
804
823
  tags.filter((tag) => {
805
824
  var _a;
806
825
  let element = GameWindowManager.getCanvasElement(tag);
@@ -814,18 +833,111 @@ var TickerRotate = class extends TickerBase {
814
833
  let element = GameWindowManager.getCanvasElement(tag);
815
834
  if (element && element instanceof Container) {
816
835
  if (clockwise)
817
- element.rotation += speed * t.deltaTime;
836
+ element.rotation += speed * ticker.deltaTime;
818
837
  else
819
- element.rotation -= speed * t.deltaTime;
838
+ element.rotation -= speed * ticker.deltaTime;
839
+ if (speed < 1e-5 && !(args.speedProgression && args.speedProgression.type == "linear" && args.speedProgression.amt != 0)) {
840
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
841
+ }
842
+ }
843
+ });
844
+ if (args.speedProgression)
845
+ updateTickerProgression(args, "speed", args.speedProgression);
846
+ }
847
+ };
848
+ RotateTicker = __decorateClass([
849
+ tickerDecorator()
850
+ ], RotateTicker);
851
+ var ZoomTicker = class extends TickerBase {
852
+ fn(ticker, args, tags, tickerId) {
853
+ let xSpeed = 0.1;
854
+ let ySpeed = 0.1;
855
+ if (args.speed) {
856
+ if (typeof args.speed === "number") {
857
+ xSpeed = args.speed;
858
+ ySpeed = args.speed;
859
+ } else {
860
+ xSpeed = args.speed.x;
861
+ ySpeed = args.speed.y;
862
+ }
863
+ }
864
+ xSpeed /= 60;
865
+ ySpeed /= 60;
866
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
867
+ if (typeof tagToRemoveAfter2 === "string") {
868
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
869
+ }
870
+ let type = args.type || "zoom";
871
+ let xLimit = Infinity;
872
+ let yLimit = Infinity;
873
+ if (args.limit) {
874
+ if (typeof args.limit === "number") {
875
+ xLimit = args.limit;
876
+ yLimit = args.limit;
877
+ } else {
878
+ xLimit = args.limit.x;
879
+ yLimit = args.limit.y;
880
+ }
881
+ }
882
+ tags.filter((tag) => {
883
+ var _a;
884
+ let element = GameWindowManager.getCanvasElement(tag);
885
+ if (args.startOnlyIfHaveTexture) {
886
+ if (element && element instanceof Sprite && ((_a = element.texture) == null ? void 0 : _a.label) == "EMPTY") {
887
+ return false;
888
+ }
889
+ }
890
+ return true;
891
+ }).forEach((tag) => {
892
+ let element = GameWindowManager.getCanvasElement(tag);
893
+ if (element && element instanceof Container) {
894
+ if (type === "zoom" && (element.scale.x < xLimit || element.scale.y < yLimit)) {
895
+ element.scale.x += xSpeed * ticker.deltaTime;
896
+ element.scale.y += ySpeed * ticker.deltaTime;
897
+ } else if (type === "unzoom" && (element.scale.x > xLimit || element.scale.y > yLimit)) {
898
+ element.scale.x -= xSpeed * ticker.deltaTime;
899
+ element.scale.y -= ySpeed * ticker.deltaTime;
900
+ }
901
+ if (type === "zoom") {
902
+ if (element.scale.x > xLimit) {
903
+ element.scale.x = xLimit;
904
+ }
905
+ if (element.scale.y > yLimit) {
906
+ element.scale.y = yLimit;
907
+ }
908
+ if (element.scale.x >= xLimit && element.scale.y >= yLimit) {
909
+ element.scale.x = xLimit;
910
+ element.scale.y = yLimit;
911
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
912
+ }
913
+ } else if (type === "unzoom") {
914
+ if (element.scale.x < xLimit) {
915
+ element.scale.x = xLimit;
916
+ }
917
+ if (element.scale.y < yLimit) {
918
+ element.scale.y = yLimit;
919
+ }
920
+ if (element.scale.x <= xLimit && element.scale.y <= yLimit) {
921
+ element.scale.x = xLimit;
922
+ element.scale.y = yLimit;
923
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
924
+ }
925
+ }
926
+ if (xSpeed < 1e-5 && ySpeed < 1e-5 && !(args.speedProgression && args.speedProgression.type == "linear" && args.speedProgression.amt != 0)) {
927
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
928
+ }
820
929
  }
821
930
  });
822
931
  if (args.speedProgression)
823
932
  updateTickerProgression(args, "speed", args.speedProgression);
824
933
  }
825
934
  };
826
- TickerRotate = __decorateClass([
935
+ ZoomTicker = __decorateClass([
827
936
  tickerDecorator()
828
- ], TickerRotate);
937
+ ], ZoomTicker);
938
+
939
+ // src/constants.ts
940
+ var Repeat = "repeat";
829
941
 
830
942
  // src/functions/ExportUtility.ts
831
943
  function createExportableElement(element) {
@@ -846,7 +958,7 @@ function tickerDecorator(name) {
846
958
  name = target.name;
847
959
  }
848
960
  if (registeredTickers[name]) {
849
- console.warn(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`);
961
+ console.info(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`);
850
962
  }
851
963
  registeredTickers[name] = target;
852
964
  };
@@ -876,6 +988,9 @@ function asciiArtLog() {
876
988
  `);
877
989
  }
878
990
 
991
+ // src/types/ticker/TagToRemoveAfterType.ts
992
+ var tagToRemoveAfter = "tagToRemoveAfter";
993
+
879
994
  // src/managers/WindowManager.ts
880
995
  var _GameWindowManager = class _GameWindowManager {
881
996
  constructor() {
@@ -1058,25 +1173,25 @@ var _GameWindowManager = class _GameWindowManager {
1058
1173
  /**
1059
1174
  * Remove a canvas element from the canvas.
1060
1175
  * And remove all tickers that are not connected to any canvas element.
1061
- * @param tag The tag of the canvas element to be removed.
1176
+ * @param tags The tag of the canvas element to be removed.
1062
1177
  * @returns
1063
1178
  * @example
1064
1179
  * ```typescript
1065
1180
  * GameWindowManager.removeCanvasElement("bunny");
1066
1181
  * ```
1067
1182
  */
1068
- static removeCanvasElement(tag) {
1069
- if (typeof tag === "string") {
1070
- tag = [tag];
1183
+ static removeCanvasElement(tags) {
1184
+ if (typeof tags === "string") {
1185
+ tags = [tags];
1071
1186
  }
1072
- tag.forEach((t) => {
1073
- if (_GameWindowManager._children[t]) {
1074
- _GameWindowManager.app.stage.removeChild(_GameWindowManager._children[t]);
1075
- delete _GameWindowManager._children[t];
1187
+ tags.forEach((tag) => {
1188
+ if (_GameWindowManager._children[tag]) {
1189
+ _GameWindowManager.app.stage.removeChild(_GameWindowManager._children[tag]);
1190
+ delete _GameWindowManager._children[tag];
1191
+ _GameWindowManager.removeTickerByCanvasElement(tag);
1076
1192
  }
1077
1193
  });
1078
- _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
1079
- _GameWindowManager.childrenTagsOrder = _GameWindowManager.childrenTagsOrder.filter((t) => !tag.includes(t));
1194
+ _GameWindowManager.childrenTagsOrder = _GameWindowManager.childrenTagsOrder.filter((t) => !tags.includes(t));
1080
1195
  }
1081
1196
  /**
1082
1197
  * Get a canvas element by the tag.
@@ -1106,18 +1221,43 @@ var _GameWindowManager = class _GameWindowManager {
1106
1221
  _GameWindowManager.app.stage.removeChildren();
1107
1222
  _GameWindowManager._children = {};
1108
1223
  _GameWindowManager.childrenTagsOrder = [];
1109
- _GameWindowManager.removeTickers();
1224
+ _GameWindowManager.removeAllTickers();
1110
1225
  }
1111
1226
  /**
1112
1227
  * Edit the tag of a canvas element.
1113
1228
  * @param oldTag The old tag of the canvas element.
1114
1229
  * @param newTag The new tag of the canvas element.
1115
1230
  */
1116
- static editTagCanvasElement(oldTag, newTag) {
1231
+ static editCanvasElementTag(oldTag, newTag) {
1117
1232
  if (_GameWindowManager._children[oldTag]) {
1118
1233
  _GameWindowManager._children[newTag] = _GameWindowManager._children[oldTag];
1119
1234
  delete _GameWindowManager._children[oldTag];
1120
1235
  }
1236
+ if (_GameWindowManager._currentTickersSteps[oldTag]) {
1237
+ _GameWindowManager._currentTickersSteps[newTag] = _GameWindowManager._currentTickersSteps[oldTag];
1238
+ delete _GameWindowManager._currentTickersSteps[oldTag];
1239
+ }
1240
+ for (let id in _GameWindowManager._currentTickers) {
1241
+ let ticker = _GameWindowManager._currentTickers[id];
1242
+ if (ticker.canvasElementTags.includes(oldTag)) {
1243
+ ticker.canvasElementTags = ticker.canvasElementTags.map((t) => t === oldTag ? newTag : t);
1244
+ if (ticker.args.hasOwnProperty(tagToRemoveAfter)) {
1245
+ let tagToRemoveAfter2 = ticker.args.tagToRemoveAfter;
1246
+ if (typeof tagToRemoveAfter2 === "string") {
1247
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
1248
+ }
1249
+ if (Array.isArray(tagToRemoveAfter2)) {
1250
+ ticker.args.tagToRemoveAfter = tagToRemoveAfter2.map((t) => t === oldTag ? newTag : t);
1251
+ }
1252
+ }
1253
+ }
1254
+ }
1255
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1256
+ let TickerTimeout = _GameWindowManager._currentTickersTimeouts[timeout];
1257
+ if (TickerTimeout.tags.includes(oldTag)) {
1258
+ TickerTimeout.tags = TickerTimeout.tags.map((t) => t === oldTag ? newTag : t);
1259
+ }
1260
+ }
1121
1261
  }
1122
1262
  /** Edit Tickers Methods */
1123
1263
  /**
@@ -1126,23 +1266,38 @@ var _GameWindowManager = class _GameWindowManager {
1126
1266
  static get currentTickers() {
1127
1267
  return _GameWindowManager._currentTickers;
1128
1268
  }
1269
+ static get currentTickersList() {
1270
+ return Object.values(_GameWindowManager._currentTickers);
1271
+ }
1272
+ static get currentTickersWithoutCreatedBySteps() {
1273
+ return Object.fromEntries(Object.entries(_GameWindowManager._currentTickers).filter(([_, ticker]) => !ticker.createdByTicketStepsId));
1274
+ }
1129
1275
  /**
1130
1276
  * The steps of the tickers
1131
1277
  */
1132
1278
  static get currentTickersSteps() {
1133
1279
  return _GameWindowManager._currentTickersSteps;
1134
1280
  }
1281
+ static generateTickerId(tickerData) {
1282
+ try {
1283
+ return sha1(JSON.stringify(tickerData)).toString() + "_" + Math.random().toString(36).substring(7);
1284
+ } catch (e) {
1285
+ throw new Error(`[Pixi'VN] Error to generate ticker id: ${e}`);
1286
+ }
1287
+ }
1135
1288
  /**
1136
- * Run a ticker.
1289
+ * Run a ticker. You can run multiple addTicker with the same tag and different tickerClasses.
1290
+ * If you run a ticker with the same tag and tickerClass, the old ticker will be removed.
1291
+ * If already exists a sequence of tickers with the same tag, it will be removed.
1137
1292
  * @param canvasEslementTag The tag of the canvas element that will use the ticker.
1138
1293
  * @param ticker The ticker class to be run.
1139
1294
  * @param args The arguments to be used in the ticker.
1140
- * @param duration The time to be used in the ticker. This number is in milliseconds. If it is undefined, the ticker will run forever.
1295
+ * @param duration The time to be used in the ticker. This number is in seconds. If it is undefined, the ticker will run forever.
1141
1296
  * @param priority The priority to be used in the ticker.
1142
1297
  * @returns
1143
1298
  * @example
1144
1299
  * ```typescript
1145
- * GameWindowManager.addTicker("alien", new TickerRotate({ speed: 0.2 }))
1300
+ * GameWindowManager.addTicker("alien", new RotateTicker({ speed: 0.2 }))
1146
1301
  * ```
1147
1302
  */
1148
1303
  static addTicker(canvasElementTag, ticker) {
@@ -1150,82 +1305,88 @@ var _GameWindowManager = class _GameWindowManager {
1150
1305
  if (typeof canvasElementTag === "string") {
1151
1306
  canvasElementTag = [canvasElementTag];
1152
1307
  }
1153
- let t = geTickerInstanceByClassName(tickerName, ticker.args, ticker.duration, ticker.priority);
1154
- if (!t) {
1308
+ if (!geTickerInstanceByClassName(tickerName, ticker.args, ticker.duration, ticker.priority)) {
1155
1309
  console.error(`[Pixi'VN] Ticker ${tickerName} not found`);
1156
1310
  return;
1157
1311
  }
1158
- _GameWindowManager.removeAssociationBetweenTickerCanvasElement(canvasElementTag, ticker);
1159
1312
  let tickerHistory = {
1160
1313
  fn: () => {
1161
1314
  },
1162
1315
  className: tickerName,
1163
- args: ticker.args,
1316
+ args: createExportableElement(ticker.args),
1164
1317
  canvasElementTags: canvasElementTag,
1165
1318
  priority: ticker.priority,
1166
1319
  duration: ticker.duration
1167
1320
  };
1168
- _GameWindowManager.pushTicker(tickerHistory, t);
1169
- _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
1321
+ let id = _GameWindowManager.generateTickerId(tickerHistory);
1322
+ _GameWindowManager.pushTicker(id, tickerHistory, ticker);
1170
1323
  if (ticker.duration) {
1171
1324
  let timeout = setTimeout(() => {
1172
1325
  _GameWindowManager.removeTickerTimeoutInfo(timeout);
1173
- _GameWindowManager.nextTickerStep(canvasElementTag);
1174
- }, ticker.duration);
1175
- _GameWindowManager.addTickerTimeoutInfo(canvasElementTag, tickerName, timeout.toString());
1326
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
1327
+ if (tickerTimeoutInfo) {
1328
+ _GameWindowManager.removeTicker(id);
1329
+ }
1330
+ }, ticker.duration * 1e3);
1331
+ _GameWindowManager.addTickerTimeoutInfo(canvasElementTag, tickerName, timeout.toString(), true);
1176
1332
  }
1177
1333
  }
1178
- static pushTicker(tickerData, ticker) {
1334
+ static pushTicker(id, tickerData, ticker) {
1179
1335
  _GameWindowManager.removeAssociationBetweenTickerCanvasElement(tickerData.canvasElementTags, tickerData);
1180
- _GameWindowManager._currentTickers.push(tickerData);
1336
+ _GameWindowManager._currentTickers[id] = tickerData;
1181
1337
  tickerData.fn = (t) => {
1182
- ticker == null ? void 0 : ticker.fn(t, tickerData.args, tickerData.canvasElementTags);
1338
+ let data = _GameWindowManager._currentTickers[id];
1339
+ if (data) {
1340
+ ticker == null ? void 0 : ticker.fn(t, data.args, data.canvasElementTags, id);
1341
+ }
1183
1342
  };
1184
1343
  _GameWindowManager.app.ticker.add(tickerData.fn, void 0, tickerData.priority);
1185
1344
  }
1186
1345
  /**
1187
- * Run a sequence of tickers.
1346
+ * Run a sequence of tickers. If exists a ticker steps with the same tag, it will be removed.
1188
1347
  * @param tag The tag of canvas element that will use the tickers.
1189
1348
  * @param steps The steps of the tickers.
1349
+ * @param currentStepNumber The current step number. It is used to continue the sequence of tickers.
1190
1350
  * @returns
1191
1351
  * @example
1192
1352
  * ```typescript
1193
1353
  * GameWindowManager.addTickersSteps("alien", [
1194
- * new TickerRotate({ speed: 0.1, clockwise: true }, 2000),
1195
- * Pause(500),
1196
- * new TickerRotate({ speed: 0.2, clockwise: false }, 2000),
1354
+ * new RotateTicker({ speed: 0.1, clockwise: true }, 2), // 2 seconds
1355
+ * Pause(1), // 1 second
1356
+ * new RotateTicker({ speed: 0.2, clockwise: false }, 2),
1197
1357
  * Repeat,
1198
1358
  * ])
1199
1359
  * ```
1200
1360
  */
1201
- static addTickersSteps(tag, steps) {
1361
+ static addTickersSteps(tag, steps, currentStepNumber = 0) {
1202
1362
  if (steps.length == 0) {
1203
1363
  console.warn("[Pixi'VN] The steps of the tickers is empty");
1204
1364
  return;
1205
1365
  }
1206
- let alredyExists = _GameWindowManager._currentTickersSteps[tag] !== void 0;
1366
+ _GameWindowManager.removeTickerStepByCanvasElement(tag);
1207
1367
  _GameWindowManager._currentTickersSteps[tag] = {
1208
- currentStepNumber: 0,
1209
- steps: steps.map((s) => {
1210
- if (s === Repeat) {
1211
- return s;
1212
- }
1213
- if (!s.duration) {
1214
- console.warn("[Pixi'VN] Duration is not defined, so it will be set to 1000");
1215
- s.duration = 1e3;
1368
+ currentStepNumber,
1369
+ steps: steps.map((step) => {
1370
+ if (step === Repeat) {
1371
+ return step;
1216
1372
  }
1217
- if (s.hasOwnProperty("type") && s.type === PauseValueType) {
1218
- return s;
1373
+ if (step.hasOwnProperty("type") && step.type === "pause") {
1374
+ return step;
1219
1375
  }
1220
- let tickerName = s.constructor.name;
1376
+ let tickerName = step.constructor.name;
1221
1377
  return {
1222
1378
  ticker: tickerName,
1223
- args: s.args,
1224
- duration: s.duration
1379
+ args: createExportableElement(step.args),
1380
+ duration: step.duration
1225
1381
  };
1226
1382
  })
1227
1383
  };
1228
- if (!alredyExists) {
1384
+ _GameWindowManager.runTickersSteps(tag);
1385
+ }
1386
+ static restoneTickersSteps(data) {
1387
+ for (let tag in data) {
1388
+ let steps = data[tag];
1389
+ _GameWindowManager._currentTickersSteps[tag] = steps;
1229
1390
  _GameWindowManager.runTickersSteps(tag);
1230
1391
  }
1231
1392
  }
@@ -1239,12 +1400,17 @@ var _GameWindowManager = class _GameWindowManager {
1239
1400
  return;
1240
1401
  }
1241
1402
  }
1242
- if (step.hasOwnProperty("type") && step.type === PauseValueType) {
1403
+ if (step.hasOwnProperty("type") && step.type === "pause") {
1243
1404
  let timeout = setTimeout(() => {
1405
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
1406
+ if (tickerTimeoutInfo) {
1407
+ tickerTimeoutInfo.tags.forEach((tag2) => {
1408
+ _GameWindowManager.nextTickerStep(tag2);
1409
+ });
1410
+ }
1244
1411
  _GameWindowManager.removeTickerTimeoutInfo(timeout);
1245
- _GameWindowManager.nextTickerStep(tag);
1246
- }, step.duration);
1247
- _GameWindowManager.addTickerTimeoutInfo(tag, "steps", timeout.toString());
1412
+ }, step.duration * 1e3);
1413
+ _GameWindowManager.addTickerTimeoutInfo(tag, "steps", timeout.toString(), false);
1248
1414
  return;
1249
1415
  }
1250
1416
  let ticker = geTickerInstanceByClassName(step.ticker, step.args, step.duration, step.priority);
@@ -1252,57 +1418,88 @@ var _GameWindowManager = class _GameWindowManager {
1252
1418
  console.error(`[Pixi'VN] Ticker ${step.ticker} not found`);
1253
1419
  return;
1254
1420
  }
1255
- _GameWindowManager.addTicker(tag, ticker);
1421
+ let tickerName = ticker.constructor.name;
1422
+ let tickerHistory = {
1423
+ fn: () => {
1424
+ },
1425
+ className: tickerName,
1426
+ args: createExportableElement(ticker.args),
1427
+ canvasElementTags: [tag],
1428
+ priority: ticker.priority,
1429
+ duration: ticker.duration,
1430
+ createdByTicketStepsId: tag
1431
+ };
1432
+ let id = _GameWindowManager.generateTickerId(tickerHistory);
1433
+ _GameWindowManager.pushTicker(id, tickerHistory, ticker);
1434
+ if (ticker.duration) {
1435
+ let timeout = setTimeout(() => {
1436
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
1437
+ if (tickerTimeoutInfo) {
1438
+ _GameWindowManager.removeTicker(id);
1439
+ tickerTimeoutInfo.tags.forEach((tag2) => {
1440
+ _GameWindowManager.nextTickerStep(tag2);
1441
+ });
1442
+ }
1443
+ _GameWindowManager.removeTickerTimeoutInfo(timeout);
1444
+ }, ticker.duration * 1e3);
1445
+ _GameWindowManager.addTickerTimeoutInfo(tag, tickerName, timeout.toString(), false);
1446
+ }
1256
1447
  }
1257
1448
  static nextTickerStep(tag) {
1258
- if (typeof tag === "string") {
1259
- tag = [tag];
1449
+ if (_GameWindowManager._currentTickersSteps[tag]) {
1450
+ let steps = _GameWindowManager._currentTickersSteps[tag];
1451
+ if (steps.currentStepNumber + 1 < steps.steps.length) {
1452
+ steps.currentStepNumber++;
1453
+ _GameWindowManager._currentTickersSteps[tag] = steps;
1454
+ _GameWindowManager.runTickersSteps(tag);
1455
+ } else {
1456
+ _GameWindowManager.removeTickerStepByCanvasElement(tag);
1457
+ }
1260
1458
  }
1261
- tag.forEach((tag2) => {
1262
- if (_GameWindowManager._currentTickersSteps[tag2]) {
1263
- let steps = _GameWindowManager._currentTickersSteps[tag2];
1264
- if (steps.currentStepNumber + 1 < steps.steps.length) {
1265
- steps.currentStepNumber++;
1266
- _GameWindowManager._currentTickersSteps[tag2] = steps;
1267
- _GameWindowManager.runTickersSteps(tag2);
1268
- } else {
1269
- delete _GameWindowManager._currentTickersSteps[tag2];
1270
- }
1459
+ }
1460
+ static onEndOfTicker(canvasElementTags, ticker, canvasElementTagsToDelete, tickerId) {
1461
+ let tickerData = _GameWindowManager._currentTickers[tickerId];
1462
+ _GameWindowManager.removeAssociationBetweenTickerCanvasElement(canvasElementTags, ticker);
1463
+ _GameWindowManager.removeCanvasElement(canvasElementTagsToDelete);
1464
+ if (tickerData) {
1465
+ _GameWindowManager.removeTicker(tickerId);
1466
+ if (tickerData.duration == void 0 && tickerData.createdByTicketStepsId) {
1467
+ _GameWindowManager.nextTickerStep(tickerData.createdByTicketStepsId);
1271
1468
  }
1272
- });
1469
+ }
1273
1470
  }
1274
1471
  /**
1275
1472
  * Remove a connection between a canvas element and a ticker.
1276
1473
  * And remove the ticker if there is no canvas element connected to it.
1277
- * @param tag The tag of the canvas element that will use the ticker.
1474
+ * @param tags The tag of the canvas element that will use the ticker.
1278
1475
  * @param ticker The ticker class to be removed.
1279
1476
  * @example
1280
1477
  * ```typescript
1281
- * GameWindowManager.removeAssociationBetweenTickerCanvasElement("alien", TickerRotate)
1478
+ * GameWindowManager.removeAssociationBetweenTickerCanvasElement("alien", RotateTicker)
1282
1479
  * ```
1283
1480
  */
1284
- static removeAssociationBetweenTickerCanvasElement(tag, ticker) {
1481
+ static removeAssociationBetweenTickerCanvasElement(tags, ticker) {
1285
1482
  let tickerName;
1286
- if (ticker instanceof TickerBase) {
1483
+ if (typeof ticker === "string") {
1484
+ tickerName = ticker;
1485
+ } else if (ticker instanceof TickerBase) {
1287
1486
  tickerName = ticker.constructor.name;
1288
1487
  } else {
1289
1488
  tickerName = ticker.name;
1290
1489
  }
1291
- if (typeof tag === "string") {
1292
- tag = [tag];
1490
+ if (typeof tags === "string") {
1491
+ tags = [tags];
1293
1492
  }
1294
- _GameWindowManager._currentTickers = _GameWindowManager._currentTickers.map((t) => {
1295
- if (t.className === tickerName) {
1296
- t.canvasElementTags = t.canvasElementTags.filter((e) => !tag.includes(e));
1493
+ for (let id in _GameWindowManager._currentTickers) {
1494
+ let ticker2 = _GameWindowManager._currentTickers[id];
1495
+ if (ticker2.className === tickerName) {
1496
+ _GameWindowManager._currentTickers[id].canvasElementTags = ticker2.canvasElementTags.filter((e) => !tags.includes(e));
1297
1497
  }
1298
- return t;
1299
- });
1300
- for (let timeout in _GameWindowManager.currentTickersTimeouts) {
1301
- let t = _GameWindowManager.currentTickersTimeouts[timeout].tags.filter((e) => !tag.includes(e));
1302
- if (t.length == 0) {
1303
- _GameWindowManager.removeTickerTimeoutInfo(timeout);
1304
- } else {
1305
- _GameWindowManager.currentTickersTimeouts[timeout].tags = t;
1498
+ }
1499
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1500
+ let TickerTimeout = _GameWindowManager._currentTickersTimeouts[timeout];
1501
+ if (TickerTimeout.ticker === tickerName && TickerTimeout.canBeDeletedBeforeEnd) {
1502
+ _GameWindowManager._currentTickersTimeouts[timeout].tags = TickerTimeout.tags.filter((t) => !tags.includes(t));
1306
1503
  }
1307
1504
  }
1308
1505
  _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
@@ -1311,49 +1508,117 @@ var _GameWindowManager = class _GameWindowManager {
1311
1508
  * Remove all tickers that are not connected to any existing canvas element.
1312
1509
  */
1313
1510
  static removeTickersWithoutAssociatedCanvasElement() {
1314
- let currentTickers = _GameWindowManager._currentTickers.map((t) => {
1315
- t.canvasElementTags = t.canvasElementTags.filter((e) => _GameWindowManager._children[e]);
1316
- return t;
1317
- });
1318
- currentTickers.filter((t) => t.canvasElementTags.length === 0).forEach((t) => {
1319
- _GameWindowManager.app.ticker.remove(t.fn);
1320
- });
1321
- currentTickers = currentTickers.filter((t) => t.canvasElementTags.length > 0);
1322
- _GameWindowManager._currentTickers = currentTickers;
1511
+ for (let id in _GameWindowManager._currentTickers) {
1512
+ let ticker = _GameWindowManager._currentTickers[id];
1513
+ ticker.canvasElementTags = ticker.canvasElementTags.filter((e) => _GameWindowManager._children[e]);
1514
+ if (ticker.canvasElementTags.length === 0) {
1515
+ _GameWindowManager.removeTicker(id);
1516
+ }
1517
+ }
1323
1518
  for (let tag in _GameWindowManager._currentTickersSteps) {
1324
1519
  if (_GameWindowManager._children[tag] === void 0) {
1325
1520
  delete _GameWindowManager._currentTickersSteps[tag];
1326
1521
  }
1327
1522
  }
1523
+ Object.entries(_GameWindowManager._currentTickersTimeouts).forEach(([timeout, { tags }]) => {
1524
+ if (tags.length === 0) {
1525
+ _GameWindowManager.removeTickerTimeout(timeout);
1526
+ }
1527
+ });
1328
1528
  }
1329
- static addTickerTimeoutInfo(tags, ticker, timeout) {
1529
+ static addTickerTimeoutInfo(tags, ticker, timeout, canBeDeletedBeforeEnd) {
1330
1530
  if (typeof tags === "string") {
1331
1531
  tags = [tags];
1332
1532
  }
1333
- _GameWindowManager.currentTickersTimeouts[timeout] = {
1533
+ _GameWindowManager._currentTickersTimeouts[timeout] = {
1334
1534
  tags,
1335
- ticker
1535
+ ticker,
1536
+ canBeDeletedBeforeEnd
1336
1537
  };
1337
1538
  }
1338
1539
  static removeTickerTimeoutInfo(timeout) {
1339
1540
  if (typeof timeout !== "string") {
1340
1541
  timeout = timeout.toString();
1341
1542
  }
1342
- if (_GameWindowManager.currentTickersTimeouts[timeout]) {
1343
- delete _GameWindowManager.currentTickersTimeouts[timeout];
1543
+ if (_GameWindowManager._currentTickersTimeouts[timeout]) {
1544
+ delete _GameWindowManager._currentTickersTimeouts[timeout];
1545
+ }
1546
+ }
1547
+ static removeTickerTimeout(timeout) {
1548
+ if (typeof timeout !== "string") {
1549
+ timeout = timeout.toString();
1550
+ }
1551
+ clearTimeout(Number(timeout));
1552
+ _GameWindowManager.removeTickerTimeoutInfo(timeout);
1553
+ }
1554
+ static removeTickerTimeoutsByTag(tag, checkCanBeDeletedBeforeEnd) {
1555
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1556
+ let tagsWithoutTagToRemove = _GameWindowManager._currentTickersTimeouts[timeout].tags.filter((t) => t !== tag);
1557
+ if (tagsWithoutTagToRemove.length === 0) {
1558
+ let canBeDeletedBeforeEnd = _GameWindowManager._currentTickersTimeouts[timeout].canBeDeletedBeforeEnd;
1559
+ if (!checkCanBeDeletedBeforeEnd || canBeDeletedBeforeEnd) {
1560
+ _GameWindowManager.removeTickerTimeout(timeout);
1561
+ }
1562
+ } else {
1563
+ _GameWindowManager._currentTickersTimeouts[timeout].tags = tagsWithoutTagToRemove;
1564
+ }
1344
1565
  }
1345
1566
  }
1346
1567
  /**
1347
1568
  * Remove all tickers from the canvas.
1348
1569
  */
1349
- static removeTickers() {
1570
+ static removeAllTickers() {
1350
1571
  _GameWindowManager._currentTickersSteps = {};
1351
- _GameWindowManager._currentTickers.forEach((t) => {
1352
- _GameWindowManager.app.ticker.remove(t.fn);
1572
+ Object.keys(_GameWindowManager._currentTickers).forEach((id) => {
1573
+ _GameWindowManager.removeTicker(id);
1574
+ });
1575
+ _GameWindowManager._currentTickers = {};
1576
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1577
+ _GameWindowManager.removeTickerTimeout(timeout);
1578
+ }
1579
+ }
1580
+ /**
1581
+ * Remove all tickers from a canvas element.
1582
+ * @param tag The tag of the canvas element that will use the ticker.
1583
+ */
1584
+ static removeTickerByCanvasElement(tag) {
1585
+ if (typeof tag === "string") {
1586
+ tag = [tag];
1587
+ }
1588
+ tag.forEach((tag2) => {
1589
+ for (let id in _GameWindowManager._currentTickers) {
1590
+ let ticker = _GameWindowManager._currentTickers[id];
1591
+ if (ticker.canvasElementTags.includes(tag2)) {
1592
+ _GameWindowManager.removeTicker(id);
1593
+ }
1594
+ }
1595
+ if (_GameWindowManager._currentTickersSteps[tag2]) {
1596
+ delete _GameWindowManager._currentTickersSteps[tag2];
1597
+ }
1598
+ _GameWindowManager.removeTickerTimeoutsByTag(tag2, false);
1599
+ delete _GameWindowManager._currentTickersSteps[tag2];
1353
1600
  });
1354
- _GameWindowManager._currentTickers = [];
1355
- for (let timeout in _GameWindowManager.currentTickersTimeouts) {
1356
- _GameWindowManager.removeTickerTimeoutInfo(timeout);
1601
+ }
1602
+ static removeTickerStepByCanvasElement(tag) {
1603
+ if (_GameWindowManager._currentTickersSteps[tag]) {
1604
+ delete _GameWindowManager._currentTickersSteps[tag];
1605
+ }
1606
+ for (let id in _GameWindowManager._currentTickers) {
1607
+ let ticker = _GameWindowManager._currentTickers[id];
1608
+ if (ticker.createdByTicketStepsId === tag) {
1609
+ _GameWindowManager.removeTicker(id);
1610
+ }
1611
+ }
1612
+ }
1613
+ static removeTicker(tickerId) {
1614
+ let ticker = _GameWindowManager._currentTickers[tickerId];
1615
+ if (ticker) {
1616
+ if (ticker.args.hasOwnProperty(tagToRemoveAfter)) {
1617
+ let tagToRemoveAfter2 = ticker.args.tagToRemoveAfter;
1618
+ _GameWindowManager.removeCanvasElement(tagToRemoveAfter2);
1619
+ }
1620
+ _GameWindowManager.app.ticker.remove(ticker.fn);
1621
+ delete _GameWindowManager._currentTickers[tickerId];
1357
1622
  }
1358
1623
  }
1359
1624
  /**
@@ -1380,7 +1645,8 @@ var _GameWindowManager = class _GameWindowManager {
1380
1645
  currentElements[tag] = exportCanvasElement(_GameWindowManager._children[tag]);
1381
1646
  }
1382
1647
  return {
1383
- currentTickers: createExportableElement(_GameWindowManager._currentTickers),
1648
+ currentTickers: createExportableElement(_GameWindowManager.currentTickersWithoutCreatedBySteps),
1649
+ currentTickersSteps: createExportableElement(_GameWindowManager._currentTickersSteps),
1384
1650
  currentElements: createExportableElement(currentElements),
1385
1651
  childrenTagsOrder: createExportableElement(_GameWindowManager.childrenTagsOrder)
1386
1652
  };
@@ -1415,7 +1681,8 @@ var _GameWindowManager = class _GameWindowManager {
1415
1681
  }
1416
1682
  if (data.hasOwnProperty("currentTickers")) {
1417
1683
  let currentTickers = data["currentTickers"];
1418
- currentTickers.forEach((t) => {
1684
+ for (let id in currentTickers) {
1685
+ let t = currentTickers[id];
1419
1686
  let tags = t.canvasElementTags;
1420
1687
  let ticker = geTickerInstanceByClassName(t.className, t.args, t.duration, t.priority);
1421
1688
  if (ticker) {
@@ -1423,7 +1690,11 @@ var _GameWindowManager = class _GameWindowManager {
1423
1690
  } else {
1424
1691
  console.error(`[Pixi'VN] Ticker ${t.className} not found`);
1425
1692
  }
1426
- });
1693
+ }
1694
+ }
1695
+ if (data.hasOwnProperty("currentTickersSteps")) {
1696
+ let currentTickersSteps = data["currentTickersSteps"];
1697
+ _GameWindowManager.restoneTickersSteps(currentTickersSteps);
1427
1698
  }
1428
1699
  } catch (e) {
1429
1700
  console.error("[Pixi'VN] Error importing data", e);
@@ -1437,16 +1708,16 @@ _GameWindowManager._children = {};
1437
1708
  * The order of the children tags.
1438
1709
  */
1439
1710
  _GameWindowManager.childrenTagsOrder = [];
1440
- _GameWindowManager._currentTickers = [];
1711
+ _GameWindowManager._currentTickers = {};
1441
1712
  _GameWindowManager._currentTickersSteps = {};
1442
- _GameWindowManager.currentTickersTimeouts = {};
1713
+ _GameWindowManager._currentTickersTimeouts = {};
1443
1714
  var GameWindowManager = _GameWindowManager;
1444
1715
 
1445
1716
  // src/decorators/LabelDecorator.ts
1446
1717
  var registeredLabels = {};
1447
1718
  function newLabel(id, steps, onStepRun) {
1448
1719
  if (registeredLabels[id]) {
1449
- console.warn(`[Pixi'VN] Label ${id} already exists, it will be overwritten`);
1720
+ console.info(`[Pixi'VN] Label ${id} already exists, it will be overwritten`);
1450
1721
  }
1451
1722
  let label = new Label(id, steps, onStepRun);
1452
1723
  registeredLabels[id] = label;