@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, Assets, Texture, Application, Text } 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) => {
@@ -515,12 +514,32 @@ function setMemoryText(element, memory) {
515
514
  }
516
515
  }
517
516
 
517
+ // src/constants.ts
518
+ var Repeat = "repeat";
519
+ function Pause(duration) {
520
+ return {
521
+ type: "pause",
522
+ duration
523
+ };
524
+ }
525
+
526
+ // src/functions/ExportUtility.ts
527
+ function createExportableElement(element) {
528
+ try {
529
+ let elementString = JSON.stringify(element);
530
+ return JSON.parse(elementString);
531
+ } catch (e) {
532
+ console.error("[Pixi'VN] Error creating exportable element", e);
533
+ throw new Error("[Pixi'VN] Error creating exportable element");
534
+ }
535
+ }
536
+
518
537
  // src/classes/ticker/TickerBase.ts
519
538
  var TickerBase = class {
520
539
  /**
521
540
  * @param args The arguments that you want to pass to the ticker.
522
- * @param duration The duration of the ticker. If is undefined, the ticker will be called every frame.
523
- * @param priority The priority of the ticker. If is undefined, the priority will be UPDATE_PRIORITY.NORMAL.
541
+ * @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
542
+ * @param priority The priority of the ticker. @default UPDATE_PRIORITY.NORMAL
524
543
  */
525
544
  constructor(args, duration, priority) {
526
545
  this.args = args;
@@ -530,32 +549,16 @@ var TickerBase = class {
530
549
  /**
531
550
  * The method that will be called every frame.
532
551
  * This method should be overridden and you can use GameWindowManager.addCanvasElement() to get the canvas element of the canvas, and edit them.
533
- * @param t The ticker that is calling this method
534
- * @param args The arguments that you passed when you added the ticker
535
- * @param tags The tags of the canvas elements that are connected to this ticker
552
+ * @param _ticker The ticker that is calling this method
553
+ * @param _args The arguments that you passed when you added the ticker
554
+ * @param _tags The tags of the canvas elements that are connected to this ticker
555
+ * @param _tickerId The id of the ticker. You can use this to get the ticker from the {@link GameWindowManager.currentTickers}
536
556
  */
537
- fn(_t, _args, _tags) {
557
+ fn(_ticker, _args, _tags, _tickerId) {
538
558
  throw new Error("[Pixi'VN] The method TickerBase.fn() must be overridden");
539
559
  }
540
560
  };
541
561
 
542
- // src/types/PauseType.ts
543
- var PauseValueType = "pause";
544
-
545
- // src/types/RepeatType.ts
546
- var Repeat = "repeat";
547
-
548
- // src/functions/ExportUtility.ts
549
- function createExportableElement(element) {
550
- try {
551
- let elementString = JSON.stringify(element);
552
- return JSON.parse(elementString);
553
- } catch (e) {
554
- console.error("[Pixi'VN] Error creating exportable element", e);
555
- throw new Error("[Pixi'VN] Error creating exportable element");
556
- }
557
- }
558
-
559
562
  // src/decorators/TickerDecorator.ts
560
563
  var registeredTickers = {};
561
564
  function tickerDecorator(name) {
@@ -564,7 +567,7 @@ function tickerDecorator(name) {
564
567
  name = target.name;
565
568
  }
566
569
  if (registeredTickers[name]) {
567
- console.warn(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`);
570
+ console.info(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`);
568
571
  }
569
572
  registeredTickers[name] = target;
570
573
  };
@@ -594,6 +597,9 @@ function asciiArtLog() {
594
597
  `);
595
598
  }
596
599
 
600
+ // src/types/ticker/TagToRemoveAfterType.ts
601
+ var tagToRemoveAfter = "tagToRemoveAfter";
602
+
597
603
  // src/managers/WindowManager.ts
598
604
  var _GameWindowManager = class _GameWindowManager {
599
605
  constructor() {
@@ -776,25 +782,25 @@ var _GameWindowManager = class _GameWindowManager {
776
782
  /**
777
783
  * Remove a canvas element from the canvas.
778
784
  * And remove all tickers that are not connected to any canvas element.
779
- * @param tag The tag of the canvas element to be removed.
785
+ * @param tags The tag of the canvas element to be removed.
780
786
  * @returns
781
787
  * @example
782
788
  * ```typescript
783
789
  * GameWindowManager.removeCanvasElement("bunny");
784
790
  * ```
785
791
  */
786
- static removeCanvasElement(tag) {
787
- if (typeof tag === "string") {
788
- tag = [tag];
792
+ static removeCanvasElement(tags) {
793
+ if (typeof tags === "string") {
794
+ tags = [tags];
789
795
  }
790
- tag.forEach((t) => {
791
- if (_GameWindowManager._children[t]) {
792
- _GameWindowManager.app.stage.removeChild(_GameWindowManager._children[t]);
793
- delete _GameWindowManager._children[t];
796
+ tags.forEach((tag) => {
797
+ if (_GameWindowManager._children[tag]) {
798
+ _GameWindowManager.app.stage.removeChild(_GameWindowManager._children[tag]);
799
+ delete _GameWindowManager._children[tag];
800
+ _GameWindowManager.removeTickerByCanvasElement(tag);
794
801
  }
795
802
  });
796
- _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
797
- _GameWindowManager.childrenTagsOrder = _GameWindowManager.childrenTagsOrder.filter((t) => !tag.includes(t));
803
+ _GameWindowManager.childrenTagsOrder = _GameWindowManager.childrenTagsOrder.filter((t) => !tags.includes(t));
798
804
  }
799
805
  /**
800
806
  * Get a canvas element by the tag.
@@ -824,18 +830,43 @@ var _GameWindowManager = class _GameWindowManager {
824
830
  _GameWindowManager.app.stage.removeChildren();
825
831
  _GameWindowManager._children = {};
826
832
  _GameWindowManager.childrenTagsOrder = [];
827
- _GameWindowManager.removeTickers();
833
+ _GameWindowManager.removeAllTickers();
828
834
  }
829
835
  /**
830
836
  * Edit the tag of a canvas element.
831
837
  * @param oldTag The old tag of the canvas element.
832
838
  * @param newTag The new tag of the canvas element.
833
839
  */
834
- static editTagCanvasElement(oldTag, newTag) {
840
+ static editCanvasElementTag(oldTag, newTag) {
835
841
  if (_GameWindowManager._children[oldTag]) {
836
842
  _GameWindowManager._children[newTag] = _GameWindowManager._children[oldTag];
837
843
  delete _GameWindowManager._children[oldTag];
838
844
  }
845
+ if (_GameWindowManager._currentTickersSteps[oldTag]) {
846
+ _GameWindowManager._currentTickersSteps[newTag] = _GameWindowManager._currentTickersSteps[oldTag];
847
+ delete _GameWindowManager._currentTickersSteps[oldTag];
848
+ }
849
+ for (let id in _GameWindowManager._currentTickers) {
850
+ let ticker = _GameWindowManager._currentTickers[id];
851
+ if (ticker.canvasElementTags.includes(oldTag)) {
852
+ ticker.canvasElementTags = ticker.canvasElementTags.map((t) => t === oldTag ? newTag : t);
853
+ if (ticker.args.hasOwnProperty(tagToRemoveAfter)) {
854
+ let tagToRemoveAfter2 = ticker.args.tagToRemoveAfter;
855
+ if (typeof tagToRemoveAfter2 === "string") {
856
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
857
+ }
858
+ if (Array.isArray(tagToRemoveAfter2)) {
859
+ ticker.args.tagToRemoveAfter = tagToRemoveAfter2.map((t) => t === oldTag ? newTag : t);
860
+ }
861
+ }
862
+ }
863
+ }
864
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
865
+ let TickerTimeout = _GameWindowManager._currentTickersTimeouts[timeout];
866
+ if (TickerTimeout.tags.includes(oldTag)) {
867
+ TickerTimeout.tags = TickerTimeout.tags.map((t) => t === oldTag ? newTag : t);
868
+ }
869
+ }
839
870
  }
840
871
  /** Edit Tickers Methods */
841
872
  /**
@@ -844,23 +875,38 @@ var _GameWindowManager = class _GameWindowManager {
844
875
  static get currentTickers() {
845
876
  return _GameWindowManager._currentTickers;
846
877
  }
878
+ static get currentTickersList() {
879
+ return Object.values(_GameWindowManager._currentTickers);
880
+ }
881
+ static get currentTickersWithoutCreatedBySteps() {
882
+ return Object.fromEntries(Object.entries(_GameWindowManager._currentTickers).filter(([_, ticker]) => !ticker.createdByTicketStepsId));
883
+ }
847
884
  /**
848
885
  * The steps of the tickers
849
886
  */
850
887
  static get currentTickersSteps() {
851
888
  return _GameWindowManager._currentTickersSteps;
852
889
  }
890
+ static generateTickerId(tickerData) {
891
+ try {
892
+ return sha1(JSON.stringify(tickerData)).toString() + "_" + Math.random().toString(36).substring(7);
893
+ } catch (e) {
894
+ throw new Error(`[Pixi'VN] Error to generate ticker id: ${e}`);
895
+ }
896
+ }
853
897
  /**
854
- * Run a ticker.
898
+ * Run a ticker. You can run multiple addTicker with the same tag and different tickerClasses.
899
+ * If you run a ticker with the same tag and tickerClass, the old ticker will be removed.
900
+ * If already exists a sequence of tickers with the same tag, it will be removed.
855
901
  * @param canvasEslementTag The tag of the canvas element that will use the ticker.
856
902
  * @param ticker The ticker class to be run.
857
903
  * @param args The arguments to be used in the ticker.
858
- * @param duration The time to be used in the ticker. This number is in milliseconds. If it is undefined, the ticker will run forever.
904
+ * @param duration The time to be used in the ticker. This number is in seconds. If it is undefined, the ticker will run forever.
859
905
  * @param priority The priority to be used in the ticker.
860
906
  * @returns
861
907
  * @example
862
908
  * ```typescript
863
- * GameWindowManager.addTicker("alien", new TickerRotate({ speed: 0.2 }))
909
+ * GameWindowManager.addTicker("alien", new RotateTicker({ speed: 0.2 }))
864
910
  * ```
865
911
  */
866
912
  static addTicker(canvasElementTag, ticker) {
@@ -868,82 +914,88 @@ var _GameWindowManager = class _GameWindowManager {
868
914
  if (typeof canvasElementTag === "string") {
869
915
  canvasElementTag = [canvasElementTag];
870
916
  }
871
- let t = geTickerInstanceByClassName(tickerName, ticker.args, ticker.duration, ticker.priority);
872
- if (!t) {
917
+ if (!geTickerInstanceByClassName(tickerName, ticker.args, ticker.duration, ticker.priority)) {
873
918
  console.error(`[Pixi'VN] Ticker ${tickerName} not found`);
874
919
  return;
875
920
  }
876
- _GameWindowManager.removeAssociationBetweenTickerCanvasElement(canvasElementTag, ticker);
877
921
  let tickerHistory = {
878
922
  fn: () => {
879
923
  },
880
924
  className: tickerName,
881
- args: ticker.args,
925
+ args: createExportableElement(ticker.args),
882
926
  canvasElementTags: canvasElementTag,
883
927
  priority: ticker.priority,
884
928
  duration: ticker.duration
885
929
  };
886
- _GameWindowManager.pushTicker(tickerHistory, t);
887
- _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
930
+ let id = _GameWindowManager.generateTickerId(tickerHistory);
931
+ _GameWindowManager.pushTicker(id, tickerHistory, ticker);
888
932
  if (ticker.duration) {
889
933
  let timeout = setTimeout(() => {
890
934
  _GameWindowManager.removeTickerTimeoutInfo(timeout);
891
- _GameWindowManager.nextTickerStep(canvasElementTag);
892
- }, ticker.duration);
893
- _GameWindowManager.addTickerTimeoutInfo(canvasElementTag, tickerName, timeout.toString());
935
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
936
+ if (tickerTimeoutInfo) {
937
+ _GameWindowManager.removeTicker(id);
938
+ }
939
+ }, ticker.duration * 1e3);
940
+ _GameWindowManager.addTickerTimeoutInfo(canvasElementTag, tickerName, timeout.toString(), true);
894
941
  }
895
942
  }
896
- static pushTicker(tickerData, ticker) {
943
+ static pushTicker(id, tickerData, ticker) {
897
944
  _GameWindowManager.removeAssociationBetweenTickerCanvasElement(tickerData.canvasElementTags, tickerData);
898
- _GameWindowManager._currentTickers.push(tickerData);
945
+ _GameWindowManager._currentTickers[id] = tickerData;
899
946
  tickerData.fn = (t) => {
900
- ticker == null ? void 0 : ticker.fn(t, tickerData.args, tickerData.canvasElementTags);
947
+ let data = _GameWindowManager._currentTickers[id];
948
+ if (data) {
949
+ ticker == null ? void 0 : ticker.fn(t, data.args, data.canvasElementTags, id);
950
+ }
901
951
  };
902
952
  _GameWindowManager.app.ticker.add(tickerData.fn, void 0, tickerData.priority);
903
953
  }
904
954
  /**
905
- * Run a sequence of tickers.
955
+ * Run a sequence of tickers. If exists a ticker steps with the same tag, it will be removed.
906
956
  * @param tag The tag of canvas element that will use the tickers.
907
957
  * @param steps The steps of the tickers.
958
+ * @param currentStepNumber The current step number. It is used to continue the sequence of tickers.
908
959
  * @returns
909
960
  * @example
910
961
  * ```typescript
911
962
  * GameWindowManager.addTickersSteps("alien", [
912
- * new TickerRotate({ speed: 0.1, clockwise: true }, 2000),
913
- * Pause(500),
914
- * new TickerRotate({ speed: 0.2, clockwise: false }, 2000),
963
+ * new RotateTicker({ speed: 0.1, clockwise: true }, 2), // 2 seconds
964
+ * Pause(1), // 1 second
965
+ * new RotateTicker({ speed: 0.2, clockwise: false }, 2),
915
966
  * Repeat,
916
967
  * ])
917
968
  * ```
918
969
  */
919
- static addTickersSteps(tag, steps) {
970
+ static addTickersSteps(tag, steps, currentStepNumber = 0) {
920
971
  if (steps.length == 0) {
921
972
  console.warn("[Pixi'VN] The steps of the tickers is empty");
922
973
  return;
923
974
  }
924
- let alredyExists = _GameWindowManager._currentTickersSteps[tag] !== void 0;
975
+ _GameWindowManager.removeTickerStepByCanvasElement(tag);
925
976
  _GameWindowManager._currentTickersSteps[tag] = {
926
- currentStepNumber: 0,
927
- steps: steps.map((s) => {
928
- if (s === Repeat) {
929
- return s;
930
- }
931
- if (!s.duration) {
932
- console.warn("[Pixi'VN] Duration is not defined, so it will be set to 1000");
933
- s.duration = 1e3;
977
+ currentStepNumber,
978
+ steps: steps.map((step) => {
979
+ if (step === Repeat) {
980
+ return step;
934
981
  }
935
- if (s.hasOwnProperty("type") && s.type === PauseValueType) {
936
- return s;
982
+ if (step.hasOwnProperty("type") && step.type === "pause") {
983
+ return step;
937
984
  }
938
- let tickerName = s.constructor.name;
985
+ let tickerName = step.constructor.name;
939
986
  return {
940
987
  ticker: tickerName,
941
- args: s.args,
942
- duration: s.duration
988
+ args: createExportableElement(step.args),
989
+ duration: step.duration
943
990
  };
944
991
  })
945
992
  };
946
- if (!alredyExists) {
993
+ _GameWindowManager.runTickersSteps(tag);
994
+ }
995
+ static restoneTickersSteps(data) {
996
+ for (let tag in data) {
997
+ let steps = data[tag];
998
+ _GameWindowManager._currentTickersSteps[tag] = steps;
947
999
  _GameWindowManager.runTickersSteps(tag);
948
1000
  }
949
1001
  }
@@ -957,12 +1009,17 @@ var _GameWindowManager = class _GameWindowManager {
957
1009
  return;
958
1010
  }
959
1011
  }
960
- if (step.hasOwnProperty("type") && step.type === PauseValueType) {
1012
+ if (step.hasOwnProperty("type") && step.type === "pause") {
961
1013
  let timeout = setTimeout(() => {
1014
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
1015
+ if (tickerTimeoutInfo) {
1016
+ tickerTimeoutInfo.tags.forEach((tag2) => {
1017
+ _GameWindowManager.nextTickerStep(tag2);
1018
+ });
1019
+ }
962
1020
  _GameWindowManager.removeTickerTimeoutInfo(timeout);
963
- _GameWindowManager.nextTickerStep(tag);
964
- }, step.duration);
965
- _GameWindowManager.addTickerTimeoutInfo(tag, "steps", timeout.toString());
1021
+ }, step.duration * 1e3);
1022
+ _GameWindowManager.addTickerTimeoutInfo(tag, "steps", timeout.toString(), false);
966
1023
  return;
967
1024
  }
968
1025
  let ticker = geTickerInstanceByClassName(step.ticker, step.args, step.duration, step.priority);
@@ -970,57 +1027,88 @@ var _GameWindowManager = class _GameWindowManager {
970
1027
  console.error(`[Pixi'VN] Ticker ${step.ticker} not found`);
971
1028
  return;
972
1029
  }
973
- _GameWindowManager.addTicker(tag, ticker);
1030
+ let tickerName = ticker.constructor.name;
1031
+ let tickerHistory = {
1032
+ fn: () => {
1033
+ },
1034
+ className: tickerName,
1035
+ args: createExportableElement(ticker.args),
1036
+ canvasElementTags: [tag],
1037
+ priority: ticker.priority,
1038
+ duration: ticker.duration,
1039
+ createdByTicketStepsId: tag
1040
+ };
1041
+ let id = _GameWindowManager.generateTickerId(tickerHistory);
1042
+ _GameWindowManager.pushTicker(id, tickerHistory, ticker);
1043
+ if (ticker.duration) {
1044
+ let timeout = setTimeout(() => {
1045
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
1046
+ if (tickerTimeoutInfo) {
1047
+ _GameWindowManager.removeTicker(id);
1048
+ tickerTimeoutInfo.tags.forEach((tag2) => {
1049
+ _GameWindowManager.nextTickerStep(tag2);
1050
+ });
1051
+ }
1052
+ _GameWindowManager.removeTickerTimeoutInfo(timeout);
1053
+ }, ticker.duration * 1e3);
1054
+ _GameWindowManager.addTickerTimeoutInfo(tag, tickerName, timeout.toString(), false);
1055
+ }
974
1056
  }
975
1057
  static nextTickerStep(tag) {
976
- if (typeof tag === "string") {
977
- tag = [tag];
1058
+ if (_GameWindowManager._currentTickersSteps[tag]) {
1059
+ let steps = _GameWindowManager._currentTickersSteps[tag];
1060
+ if (steps.currentStepNumber + 1 < steps.steps.length) {
1061
+ steps.currentStepNumber++;
1062
+ _GameWindowManager._currentTickersSteps[tag] = steps;
1063
+ _GameWindowManager.runTickersSteps(tag);
1064
+ } else {
1065
+ _GameWindowManager.removeTickerStepByCanvasElement(tag);
1066
+ }
978
1067
  }
979
- tag.forEach((tag2) => {
980
- if (_GameWindowManager._currentTickersSteps[tag2]) {
981
- let steps = _GameWindowManager._currentTickersSteps[tag2];
982
- if (steps.currentStepNumber + 1 < steps.steps.length) {
983
- steps.currentStepNumber++;
984
- _GameWindowManager._currentTickersSteps[tag2] = steps;
985
- _GameWindowManager.runTickersSteps(tag2);
986
- } else {
987
- delete _GameWindowManager._currentTickersSteps[tag2];
988
- }
1068
+ }
1069
+ static onEndOfTicker(canvasElementTags, ticker, canvasElementTagsToDelete, tickerId) {
1070
+ let tickerData = _GameWindowManager._currentTickers[tickerId];
1071
+ _GameWindowManager.removeAssociationBetweenTickerCanvasElement(canvasElementTags, ticker);
1072
+ _GameWindowManager.removeCanvasElement(canvasElementTagsToDelete);
1073
+ if (tickerData) {
1074
+ _GameWindowManager.removeTicker(tickerId);
1075
+ if (tickerData.duration == void 0 && tickerData.createdByTicketStepsId) {
1076
+ _GameWindowManager.nextTickerStep(tickerData.createdByTicketStepsId);
989
1077
  }
990
- });
1078
+ }
991
1079
  }
992
1080
  /**
993
1081
  * Remove a connection between a canvas element and a ticker.
994
1082
  * And remove the ticker if there is no canvas element connected to it.
995
- * @param tag The tag of the canvas element that will use the ticker.
1083
+ * @param tags The tag of the canvas element that will use the ticker.
996
1084
  * @param ticker The ticker class to be removed.
997
1085
  * @example
998
1086
  * ```typescript
999
- * GameWindowManager.removeAssociationBetweenTickerCanvasElement("alien", TickerRotate)
1087
+ * GameWindowManager.removeAssociationBetweenTickerCanvasElement("alien", RotateTicker)
1000
1088
  * ```
1001
1089
  */
1002
- static removeAssociationBetweenTickerCanvasElement(tag, ticker) {
1090
+ static removeAssociationBetweenTickerCanvasElement(tags, ticker) {
1003
1091
  let tickerName;
1004
- if (ticker instanceof TickerBase) {
1092
+ if (typeof ticker === "string") {
1093
+ tickerName = ticker;
1094
+ } else if (ticker instanceof TickerBase) {
1005
1095
  tickerName = ticker.constructor.name;
1006
1096
  } else {
1007
1097
  tickerName = ticker.name;
1008
1098
  }
1009
- if (typeof tag === "string") {
1010
- tag = [tag];
1099
+ if (typeof tags === "string") {
1100
+ tags = [tags];
1011
1101
  }
1012
- _GameWindowManager._currentTickers = _GameWindowManager._currentTickers.map((t) => {
1013
- if (t.className === tickerName) {
1014
- t.canvasElementTags = t.canvasElementTags.filter((e) => !tag.includes(e));
1102
+ for (let id in _GameWindowManager._currentTickers) {
1103
+ let ticker2 = _GameWindowManager._currentTickers[id];
1104
+ if (ticker2.className === tickerName) {
1105
+ _GameWindowManager._currentTickers[id].canvasElementTags = ticker2.canvasElementTags.filter((e) => !tags.includes(e));
1015
1106
  }
1016
- return t;
1017
- });
1018
- for (let timeout in _GameWindowManager.currentTickersTimeouts) {
1019
- let t = _GameWindowManager.currentTickersTimeouts[timeout].tags.filter((e) => !tag.includes(e));
1020
- if (t.length == 0) {
1021
- _GameWindowManager.removeTickerTimeoutInfo(timeout);
1022
- } else {
1023
- _GameWindowManager.currentTickersTimeouts[timeout].tags = t;
1107
+ }
1108
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1109
+ let TickerTimeout = _GameWindowManager._currentTickersTimeouts[timeout];
1110
+ if (TickerTimeout.ticker === tickerName && TickerTimeout.canBeDeletedBeforeEnd) {
1111
+ _GameWindowManager._currentTickersTimeouts[timeout].tags = TickerTimeout.tags.filter((t) => !tags.includes(t));
1024
1112
  }
1025
1113
  }
1026
1114
  _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
@@ -1029,49 +1117,117 @@ var _GameWindowManager = class _GameWindowManager {
1029
1117
  * Remove all tickers that are not connected to any existing canvas element.
1030
1118
  */
1031
1119
  static removeTickersWithoutAssociatedCanvasElement() {
1032
- let currentTickers = _GameWindowManager._currentTickers.map((t) => {
1033
- t.canvasElementTags = t.canvasElementTags.filter((e) => _GameWindowManager._children[e]);
1034
- return t;
1035
- });
1036
- currentTickers.filter((t) => t.canvasElementTags.length === 0).forEach((t) => {
1037
- _GameWindowManager.app.ticker.remove(t.fn);
1038
- });
1039
- currentTickers = currentTickers.filter((t) => t.canvasElementTags.length > 0);
1040
- _GameWindowManager._currentTickers = currentTickers;
1120
+ for (let id in _GameWindowManager._currentTickers) {
1121
+ let ticker = _GameWindowManager._currentTickers[id];
1122
+ ticker.canvasElementTags = ticker.canvasElementTags.filter((e) => _GameWindowManager._children[e]);
1123
+ if (ticker.canvasElementTags.length === 0) {
1124
+ _GameWindowManager.removeTicker(id);
1125
+ }
1126
+ }
1041
1127
  for (let tag in _GameWindowManager._currentTickersSteps) {
1042
1128
  if (_GameWindowManager._children[tag] === void 0) {
1043
1129
  delete _GameWindowManager._currentTickersSteps[tag];
1044
1130
  }
1045
1131
  }
1132
+ Object.entries(_GameWindowManager._currentTickersTimeouts).forEach(([timeout, { tags }]) => {
1133
+ if (tags.length === 0) {
1134
+ _GameWindowManager.removeTickerTimeout(timeout);
1135
+ }
1136
+ });
1046
1137
  }
1047
- static addTickerTimeoutInfo(tags, ticker, timeout) {
1138
+ static addTickerTimeoutInfo(tags, ticker, timeout, canBeDeletedBeforeEnd) {
1048
1139
  if (typeof tags === "string") {
1049
1140
  tags = [tags];
1050
1141
  }
1051
- _GameWindowManager.currentTickersTimeouts[timeout] = {
1142
+ _GameWindowManager._currentTickersTimeouts[timeout] = {
1052
1143
  tags,
1053
- ticker
1144
+ ticker,
1145
+ canBeDeletedBeforeEnd
1054
1146
  };
1055
1147
  }
1056
1148
  static removeTickerTimeoutInfo(timeout) {
1057
1149
  if (typeof timeout !== "string") {
1058
1150
  timeout = timeout.toString();
1059
1151
  }
1060
- if (_GameWindowManager.currentTickersTimeouts[timeout]) {
1061
- delete _GameWindowManager.currentTickersTimeouts[timeout];
1152
+ if (_GameWindowManager._currentTickersTimeouts[timeout]) {
1153
+ delete _GameWindowManager._currentTickersTimeouts[timeout];
1154
+ }
1155
+ }
1156
+ static removeTickerTimeout(timeout) {
1157
+ if (typeof timeout !== "string") {
1158
+ timeout = timeout.toString();
1159
+ }
1160
+ clearTimeout(Number(timeout));
1161
+ _GameWindowManager.removeTickerTimeoutInfo(timeout);
1162
+ }
1163
+ static removeTickerTimeoutsByTag(tag, checkCanBeDeletedBeforeEnd) {
1164
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1165
+ let tagsWithoutTagToRemove = _GameWindowManager._currentTickersTimeouts[timeout].tags.filter((t) => t !== tag);
1166
+ if (tagsWithoutTagToRemove.length === 0) {
1167
+ let canBeDeletedBeforeEnd = _GameWindowManager._currentTickersTimeouts[timeout].canBeDeletedBeforeEnd;
1168
+ if (!checkCanBeDeletedBeforeEnd || canBeDeletedBeforeEnd) {
1169
+ _GameWindowManager.removeTickerTimeout(timeout);
1170
+ }
1171
+ } else {
1172
+ _GameWindowManager._currentTickersTimeouts[timeout].tags = tagsWithoutTagToRemove;
1173
+ }
1062
1174
  }
1063
1175
  }
1064
1176
  /**
1065
1177
  * Remove all tickers from the canvas.
1066
1178
  */
1067
- static removeTickers() {
1179
+ static removeAllTickers() {
1068
1180
  _GameWindowManager._currentTickersSteps = {};
1069
- _GameWindowManager._currentTickers.forEach((t) => {
1070
- _GameWindowManager.app.ticker.remove(t.fn);
1181
+ Object.keys(_GameWindowManager._currentTickers).forEach((id) => {
1182
+ _GameWindowManager.removeTicker(id);
1183
+ });
1184
+ _GameWindowManager._currentTickers = {};
1185
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1186
+ _GameWindowManager.removeTickerTimeout(timeout);
1187
+ }
1188
+ }
1189
+ /**
1190
+ * Remove all tickers from a canvas element.
1191
+ * @param tag The tag of the canvas element that will use the ticker.
1192
+ */
1193
+ static removeTickerByCanvasElement(tag) {
1194
+ if (typeof tag === "string") {
1195
+ tag = [tag];
1196
+ }
1197
+ tag.forEach((tag2) => {
1198
+ for (let id in _GameWindowManager._currentTickers) {
1199
+ let ticker = _GameWindowManager._currentTickers[id];
1200
+ if (ticker.canvasElementTags.includes(tag2)) {
1201
+ _GameWindowManager.removeTicker(id);
1202
+ }
1203
+ }
1204
+ if (_GameWindowManager._currentTickersSteps[tag2]) {
1205
+ delete _GameWindowManager._currentTickersSteps[tag2];
1206
+ }
1207
+ _GameWindowManager.removeTickerTimeoutsByTag(tag2, false);
1208
+ delete _GameWindowManager._currentTickersSteps[tag2];
1071
1209
  });
1072
- _GameWindowManager._currentTickers = [];
1073
- for (let timeout in _GameWindowManager.currentTickersTimeouts) {
1074
- _GameWindowManager.removeTickerTimeoutInfo(timeout);
1210
+ }
1211
+ static removeTickerStepByCanvasElement(tag) {
1212
+ if (_GameWindowManager._currentTickersSteps[tag]) {
1213
+ delete _GameWindowManager._currentTickersSteps[tag];
1214
+ }
1215
+ for (let id in _GameWindowManager._currentTickers) {
1216
+ let ticker = _GameWindowManager._currentTickers[id];
1217
+ if (ticker.createdByTicketStepsId === tag) {
1218
+ _GameWindowManager.removeTicker(id);
1219
+ }
1220
+ }
1221
+ }
1222
+ static removeTicker(tickerId) {
1223
+ let ticker = _GameWindowManager._currentTickers[tickerId];
1224
+ if (ticker) {
1225
+ if (ticker.args.hasOwnProperty(tagToRemoveAfter)) {
1226
+ let tagToRemoveAfter2 = ticker.args.tagToRemoveAfter;
1227
+ _GameWindowManager.removeCanvasElement(tagToRemoveAfter2);
1228
+ }
1229
+ _GameWindowManager.app.ticker.remove(ticker.fn);
1230
+ delete _GameWindowManager._currentTickers[tickerId];
1075
1231
  }
1076
1232
  }
1077
1233
  /**
@@ -1098,7 +1254,8 @@ var _GameWindowManager = class _GameWindowManager {
1098
1254
  currentElements[tag] = exportCanvasElement(_GameWindowManager._children[tag]);
1099
1255
  }
1100
1256
  return {
1101
- currentTickers: createExportableElement(_GameWindowManager._currentTickers),
1257
+ currentTickers: createExportableElement(_GameWindowManager.currentTickersWithoutCreatedBySteps),
1258
+ currentTickersSteps: createExportableElement(_GameWindowManager._currentTickersSteps),
1102
1259
  currentElements: createExportableElement(currentElements),
1103
1260
  childrenTagsOrder: createExportableElement(_GameWindowManager.childrenTagsOrder)
1104
1261
  };
@@ -1133,7 +1290,8 @@ var _GameWindowManager = class _GameWindowManager {
1133
1290
  }
1134
1291
  if (data.hasOwnProperty("currentTickers")) {
1135
1292
  let currentTickers = data["currentTickers"];
1136
- currentTickers.forEach((t) => {
1293
+ for (let id in currentTickers) {
1294
+ let t = currentTickers[id];
1137
1295
  let tags = t.canvasElementTags;
1138
1296
  let ticker = geTickerInstanceByClassName(t.className, t.args, t.duration, t.priority);
1139
1297
  if (ticker) {
@@ -1141,7 +1299,11 @@ var _GameWindowManager = class _GameWindowManager {
1141
1299
  } else {
1142
1300
  console.error(`[Pixi'VN] Ticker ${t.className} not found`);
1143
1301
  }
1144
- });
1302
+ }
1303
+ }
1304
+ if (data.hasOwnProperty("currentTickersSteps")) {
1305
+ let currentTickersSteps = data["currentTickersSteps"];
1306
+ _GameWindowManager.restoneTickersSteps(currentTickersSteps);
1145
1307
  }
1146
1308
  } catch (e) {
1147
1309
  console.error("[Pixi'VN] Error importing data", e);
@@ -1155,26 +1317,21 @@ _GameWindowManager._children = {};
1155
1317
  * The order of the children tags.
1156
1318
  */
1157
1319
  _GameWindowManager.childrenTagsOrder = [];
1158
- _GameWindowManager._currentTickers = [];
1320
+ _GameWindowManager._currentTickers = {};
1159
1321
  _GameWindowManager._currentTickersSteps = {};
1160
- _GameWindowManager.currentTickersTimeouts = {};
1322
+ _GameWindowManager._currentTickersTimeouts = {};
1161
1323
  var GameWindowManager = _GameWindowManager;
1162
1324
 
1163
- // src/classes/ticker/TickerFadeAlpha.ts
1164
- var TickerFadeAlpha = class extends TickerBase {
1165
- /**
1166
- * The method that will be called every frame to fade the alpha of the canvas element of the canvas.
1167
- * @param delta The delta time
1168
- * @param args The arguments that are passed to the ticker
1169
- * @param tags The tags of the canvas element that are connected to this ticker
1170
- */
1171
- fn(t, args, tags) {
1325
+ // src/classes/ticker/FadeAlphaTicker.ts
1326
+ var FadeAlphaTicker = class extends TickerBase {
1327
+ fn(ticker, args, tags, tickerId) {
1172
1328
  let type = args.type === void 0 ? "hide" : args.type;
1173
- let speed = args.speed === void 0 ? 0.1 : args.speed;
1329
+ let duration = args.duration === void 0 ? 1 : args.duration;
1330
+ let speed = 1 / (duration * 60);
1174
1331
  let limit = args.limit === void 0 ? type === "hide" ? 0 : 1 : args.limit;
1175
- let removeElementAfter = args.tagToRemoveAfter || [];
1176
- if (typeof removeElementAfter === "string") {
1177
- removeElementAfter = [removeElementAfter];
1332
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
1333
+ if (typeof tagToRemoveAfter2 === "string") {
1334
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
1178
1335
  }
1179
1336
  if (type === "hide" && limit < 0) {
1180
1337
  limit = 0;
@@ -1195,61 +1352,88 @@ var TickerFadeAlpha = class extends TickerBase {
1195
1352
  let element = GameWindowManager.getCanvasElement(tag);
1196
1353
  if (element && element instanceof Container) {
1197
1354
  if (type === "show" && element.alpha < limit) {
1198
- element.alpha += speed * t.deltaTime;
1355
+ element.alpha += speed * ticker.deltaTime;
1199
1356
  } else if (type === "hide" && element.alpha > limit) {
1200
- element.alpha -= speed * t.deltaTime;
1201
- } else {
1357
+ element.alpha -= speed * ticker.deltaTime;
1358
+ }
1359
+ if (type === "show" && element.alpha >= limit) {
1360
+ element.alpha = limit;
1361
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1362
+ } else if (type === "hide" && element.alpha <= limit) {
1202
1363
  element.alpha = limit;
1203
- GameWindowManager.removeAssociationBetweenTickerCanvasElement(tag, this);
1204
- GameWindowManager.removeCanvasElement(removeElementAfter);
1364
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1205
1365
  }
1206
1366
  }
1207
1367
  });
1208
1368
  }
1209
1369
  };
1210
- TickerFadeAlpha = __decorateClass([
1370
+ FadeAlphaTicker = __decorateClass([
1211
1371
  tickerDecorator()
1212
- ], TickerFadeAlpha);
1372
+ ], FadeAlphaTicker);
1213
1373
 
1214
1374
  // src/functions/TickerUtility.ts
1215
1375
  function updateTickerProgression(args, propertyName, progression) {
1216
- if (args.hasOwnProperty(propertyName) && typeof args[propertyName] !== "number") {
1376
+ if (args[propertyName] === void 0 || !progression || args[propertyName] === progression.limit) {
1217
1377
  return;
1218
1378
  }
1219
- if (args[propertyName] !== void 0 && progression && args[propertyName] !== progression.limit) {
1379
+ if (typeof args[propertyName] === "number") {
1220
1380
  if (progression.type === "linear") {
1221
- args[propertyName] += progression.amt;
1222
- if (progression.limit !== void 0) {
1223
- if (args[propertyName] > progression.limit && progression.amt > 0) {
1224
- args[propertyName] = progression.limit;
1225
- } else if (args[propertyName] < progression.limit && progression.amt < 0) {
1226
- args[propertyName] = progression.limit;
1227
- }
1228
- }
1381
+ args[propertyName] = getLinearProgression(args[propertyName], progression);
1229
1382
  } else if (progression.type === "exponential") {
1230
- args[propertyName] += args[propertyName] * progression.percentage;
1231
- if (progression.limit !== void 0) {
1232
- if (args[propertyName] > progression.limit && progression.percentage > 0) {
1233
- args[propertyName] = progression.limit;
1234
- } else if (args[propertyName] < progression.limit && progression.percentage < 0) {
1235
- args[propertyName] = progression.limit;
1236
- }
1237
- }
1383
+ args[propertyName] = getExponentialProgression(args[propertyName], progression);
1384
+ }
1385
+ } 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") {
1386
+ if (progression.type === "linear") {
1387
+ args[propertyName].x = getLinearProgression(args[propertyName].x, progression);
1388
+ args[propertyName].y = getLinearProgression(args[propertyName].y, progression);
1389
+ } else if (progression.type === "exponential") {
1390
+ args[propertyName].x = getExponentialProgression(args[propertyName].x, progression);
1391
+ args[propertyName].y = getExponentialProgression(args[propertyName].y, progression);
1238
1392
  }
1239
1393
  }
1240
1394
  }
1395
+ function getLinearProgression(number, progression) {
1396
+ if (progression.limit !== void 0) {
1397
+ if (number > progression.limit && progression.amt > 0) {
1398
+ return progression.limit;
1399
+ } else if (number < progression.limit && progression.amt < 0) {
1400
+ return progression.limit;
1401
+ }
1402
+ }
1403
+ return number + progression.amt / 60;
1404
+ }
1405
+ function getExponentialProgression(number, progression) {
1406
+ if (progression.limit !== void 0) {
1407
+ if (number > progression.limit && progression.percentage > 0) {
1408
+ return progression.limit;
1409
+ } else if (number < progression.limit && progression.percentage < 0) {
1410
+ return progression.limit;
1411
+ }
1412
+ }
1413
+ return number + number * progression.percentage;
1414
+ }
1241
1415
 
1242
- // src/classes/ticker/TickerMove.ts
1243
- var TickerMove = class extends TickerBase {
1244
- /**
1245
- * The method that will be called every frame to move the canvas element of the canvas.
1246
- * @param t The ticker that is calling this method
1247
- * @param args The arguments that are passed to the ticker
1248
- * @param tags The tags of the canvas element that are connected to this ticker
1249
- */
1250
- fn(t, args, tags) {
1251
- let speed = args.speed === void 0 ? 0.1 : args.speed;
1416
+ // src/classes/ticker/MoveTicker.ts
1417
+ var MoveTicker = class extends TickerBase {
1418
+ fn(ticker, args, tags, tickerId) {
1419
+ let xSpeed = 1;
1420
+ let ySpeed = 1;
1421
+ if (args.speed) {
1422
+ if (typeof args.speed === "number") {
1423
+ xSpeed = args.speed;
1424
+ ySpeed = args.speed;
1425
+ } else {
1426
+ xSpeed = args.speed.x;
1427
+ ySpeed = args.speed.y;
1428
+ }
1429
+ }
1430
+ xSpeed /= 60;
1431
+ ySpeed /= 60;
1252
1432
  let destination = args.destination;
1433
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
1434
+ if (typeof tagToRemoveAfter2 === "string") {
1435
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
1436
+ }
1253
1437
  tags.filter((tag) => {
1254
1438
  var _a;
1255
1439
  let element = GameWindowManager.getCanvasElement(tag);
@@ -1262,41 +1446,42 @@ var TickerMove = class extends TickerBase {
1262
1446
  }).forEach((tag) => {
1263
1447
  let element = GameWindowManager.getCanvasElement(tag);
1264
1448
  if (element && element instanceof Container) {
1265
- let xDistance = destination.x - element.x;
1449
+ let xDistance = destination.x - element.x > 0 ? 1 : -1;
1266
1450
  if (xDistance != 0) {
1267
- element.x += xDistance / speed * t.deltaTime;
1451
+ element.x += xDistance * xSpeed * ticker.deltaTime;
1268
1452
  let newDistance = destination.x - element.x;
1269
1453
  if (xDistance < 0 && newDistance > 0 || xDistance > 0 && newDistance < 0) {
1270
1454
  element.x = destination.x;
1271
1455
  }
1272
1456
  }
1273
- let yDistance = destination.y - element.y;
1457
+ let yDistance = destination.y - element.y > 0 ? 1 : -1;
1274
1458
  if (yDistance != 0) {
1275
- element.y += yDistance / speed * t.deltaTime;
1459
+ element.y += yDistance * ySpeed * ticker.deltaTime;
1276
1460
  let newDistance = destination.y - element.y;
1277
1461
  if (yDistance < 0 && newDistance > 0 || yDistance > 0 && newDistance < 0) {
1278
1462
  element.y = destination.y;
1279
1463
  }
1280
1464
  }
1465
+ if (element.x == destination.x && element.y == destination.y) {
1466
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1467
+ }
1281
1468
  }
1282
1469
  });
1283
1470
  if (args.speedProgression)
1284
1471
  updateTickerProgression(args, "speed", args.speedProgression);
1285
1472
  }
1286
1473
  };
1287
- TickerMove = __decorateClass([
1474
+ MoveTicker = __decorateClass([
1288
1475
  tickerDecorator()
1289
- ], TickerMove);
1290
- var TickerRotate = class extends TickerBase {
1291
- /**
1292
- * The method that will be called every frame to rotate the canvas element of the canvas.
1293
- * @param delta The delta time
1294
- * @param args The arguments that are passed to the ticker
1295
- * @param tags The tags of the canvas element that are connected to this ticker
1296
- */
1297
- fn(t, args, tags) {
1298
- let speed = args.speed === void 0 ? 0.1 : args.speed;
1476
+ ], MoveTicker);
1477
+ var RotateTicker = class extends TickerBase {
1478
+ fn(ticker, args, tags, tickerId) {
1479
+ let speed = (args.speed === void 0 ? 1 : args.speed) / 60;
1299
1480
  let clockwise = args.clockwise === void 0 ? true : args.clockwise;
1481
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
1482
+ if (typeof tagToRemoveAfter2 === "string") {
1483
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
1484
+ }
1300
1485
  tags.filter((tag) => {
1301
1486
  var _a;
1302
1487
  let element = GameWindowManager.getCanvasElement(tag);
@@ -1310,18 +1495,108 @@ var TickerRotate = class extends TickerBase {
1310
1495
  let element = GameWindowManager.getCanvasElement(tag);
1311
1496
  if (element && element instanceof Container) {
1312
1497
  if (clockwise)
1313
- element.rotation += speed * t.deltaTime;
1498
+ element.rotation += speed * ticker.deltaTime;
1314
1499
  else
1315
- element.rotation -= speed * t.deltaTime;
1500
+ element.rotation -= speed * ticker.deltaTime;
1501
+ if (speed < 1e-5 && !(args.speedProgression && args.speedProgression.type == "linear" && args.speedProgression.amt != 0)) {
1502
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1503
+ }
1316
1504
  }
1317
1505
  });
1318
1506
  if (args.speedProgression)
1319
1507
  updateTickerProgression(args, "speed", args.speedProgression);
1320
1508
  }
1321
1509
  };
1322
- TickerRotate = __decorateClass([
1510
+ RotateTicker = __decorateClass([
1323
1511
  tickerDecorator()
1324
- ], TickerRotate);
1512
+ ], RotateTicker);
1513
+ var ZoomTicker = class extends TickerBase {
1514
+ fn(ticker, args, tags, tickerId) {
1515
+ let xSpeed = 0.1;
1516
+ let ySpeed = 0.1;
1517
+ if (args.speed) {
1518
+ if (typeof args.speed === "number") {
1519
+ xSpeed = args.speed;
1520
+ ySpeed = args.speed;
1521
+ } else {
1522
+ xSpeed = args.speed.x;
1523
+ ySpeed = args.speed.y;
1524
+ }
1525
+ }
1526
+ xSpeed /= 60;
1527
+ ySpeed /= 60;
1528
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
1529
+ if (typeof tagToRemoveAfter2 === "string") {
1530
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
1531
+ }
1532
+ let type = args.type || "zoom";
1533
+ let xLimit = Infinity;
1534
+ let yLimit = Infinity;
1535
+ if (args.limit) {
1536
+ if (typeof args.limit === "number") {
1537
+ xLimit = args.limit;
1538
+ yLimit = args.limit;
1539
+ } else {
1540
+ xLimit = args.limit.x;
1541
+ yLimit = args.limit.y;
1542
+ }
1543
+ }
1544
+ tags.filter((tag) => {
1545
+ var _a;
1546
+ let element = GameWindowManager.getCanvasElement(tag);
1547
+ if (args.startOnlyIfHaveTexture) {
1548
+ if (element && element instanceof Sprite && ((_a = element.texture) == null ? void 0 : _a.label) == "EMPTY") {
1549
+ return false;
1550
+ }
1551
+ }
1552
+ return true;
1553
+ }).forEach((tag) => {
1554
+ let element = GameWindowManager.getCanvasElement(tag);
1555
+ if (element && element instanceof Container) {
1556
+ if (type === "zoom" && (element.scale.x < xLimit || element.scale.y < yLimit)) {
1557
+ element.scale.x += xSpeed * ticker.deltaTime;
1558
+ element.scale.y += ySpeed * ticker.deltaTime;
1559
+ } else if (type === "unzoom" && (element.scale.x > xLimit || element.scale.y > yLimit)) {
1560
+ element.scale.x -= xSpeed * ticker.deltaTime;
1561
+ element.scale.y -= ySpeed * ticker.deltaTime;
1562
+ }
1563
+ if (type === "zoom") {
1564
+ if (element.scale.x > xLimit) {
1565
+ element.scale.x = xLimit;
1566
+ }
1567
+ if (element.scale.y > yLimit) {
1568
+ element.scale.y = yLimit;
1569
+ }
1570
+ if (element.scale.x >= xLimit && element.scale.y >= yLimit) {
1571
+ element.scale.x = xLimit;
1572
+ element.scale.y = yLimit;
1573
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1574
+ }
1575
+ } else if (type === "unzoom") {
1576
+ if (element.scale.x < xLimit) {
1577
+ element.scale.x = xLimit;
1578
+ }
1579
+ if (element.scale.y < yLimit) {
1580
+ element.scale.y = yLimit;
1581
+ }
1582
+ if (element.scale.x <= xLimit && element.scale.y <= yLimit) {
1583
+ element.scale.x = xLimit;
1584
+ element.scale.y = yLimit;
1585
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1586
+ }
1587
+ }
1588
+ if (xSpeed < 1e-5 && ySpeed < 1e-5 && !(args.speedProgression && args.speedProgression.type == "linear" && args.speedProgression.amt != 0)) {
1589
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1590
+ }
1591
+ }
1592
+ });
1593
+ if (args.speedProgression)
1594
+ updateTickerProgression(args, "speed", args.speedProgression);
1595
+ }
1596
+ };
1597
+ ZoomTicker = __decorateClass([
1598
+ tickerDecorator()
1599
+ ], ZoomTicker);
1325
1600
 
1326
1601
  // src/functions/ImageUtility.ts
1327
1602
  function addImage(tag, imageUrl) {
@@ -1330,7 +1605,7 @@ function addImage(tag, imageUrl) {
1330
1605
  GameWindowManager.addCanvasElement(tag, image);
1331
1606
  return image;
1332
1607
  }
1333
- function loadImages(canvasImages) {
1608
+ function loadImage(canvasImages) {
1334
1609
  return __async(this, null, function* () {
1335
1610
  if (!Array.isArray(canvasImages)) {
1336
1611
  return [canvasImages];
@@ -1351,37 +1626,93 @@ function loadImages(canvasImages) {
1351
1626
  });
1352
1627
  });
1353
1628
  }
1629
+ function showImage(tag, imageUrl) {
1630
+ return __async(this, null, function* () {
1631
+ let image = addImage(tag, imageUrl);
1632
+ yield image.load();
1633
+ return image;
1634
+ });
1635
+ }
1354
1636
  function removeCanvasElement(tag) {
1355
1637
  GameWindowManager.removeCanvasElement(tag);
1356
1638
  }
1357
- function showWithDissolveTransition(tag, image, speed, priority) {
1358
- return __async(this, null, function* () {
1359
- let specialTag = void 0;
1639
+ function showWithDissolveTransition(_0, _1) {
1640
+ return __async(this, arguments, function* (tag, image, props = {}, priority) {
1641
+ var _a;
1642
+ let oldCanvasTag = void 0;
1360
1643
  if (GameWindowManager.getCanvasElement(tag)) {
1361
- specialTag = tag + "_temp_disolve";
1362
- GameWindowManager.editTagCanvasElement(tag, specialTag);
1644
+ oldCanvasTag = tag + "_temp_disolve";
1645
+ GameWindowManager.editCanvasElementTag(tag, oldCanvasTag);
1363
1646
  }
1364
1647
  let canvasElement;
1365
1648
  if (typeof image === "string") {
1366
1649
  canvasElement = addImage(tag, image);
1367
1650
  } else {
1368
1651
  canvasElement = image;
1652
+ GameWindowManager.addCanvasElement(tag, canvasElement);
1653
+ }
1654
+ if (canvasElement instanceof CanvasImage && ((_a = canvasElement.texture) == null ? void 0 : _a.label) == "EMPTY") {
1655
+ yield canvasElement.load();
1369
1656
  }
1370
1657
  canvasElement.alpha = 0;
1371
- let effect = new TickerFadeAlpha({
1372
- speed,
1658
+ let effect = new FadeAlphaTicker(__spreadProps(__spreadValues({}, props), {
1373
1659
  type: "show",
1374
- tagToRemoveAfter: specialTag,
1660
+ tagToRemoveAfter: oldCanvasTag,
1375
1661
  startOnlyIfHaveTexture: true
1376
- }, 1e4, priority);
1662
+ }), 10, priority);
1377
1663
  GameWindowManager.addTicker(tag, effect);
1378
- if (canvasElement instanceof CanvasImage) {
1379
- return canvasElement.load();
1380
- }
1381
1664
  return;
1382
1665
  });
1383
1666
  }
1667
+ function removeWithDissolveTransition(tag, props = {}, priority) {
1668
+ if (typeof tag === "string") {
1669
+ tag = [tag];
1670
+ }
1671
+ let effect = new FadeAlphaTicker(__spreadProps(__spreadValues({}, props), {
1672
+ type: "hide",
1673
+ tagToRemoveAfter: tag,
1674
+ startOnlyIfHaveTexture: true
1675
+ }), 10, priority);
1676
+ GameWindowManager.addTicker(tag, effect);
1677
+ }
1678
+ function showWithFadeTransition(_0, _1) {
1679
+ return __async(this, arguments, function* (tag, image, props = {}, priority) {
1680
+ var _a;
1681
+ if (!GameWindowManager.getCanvasElement(tag)) {
1682
+ return showWithDissolveTransition(tag, image, props, priority);
1683
+ }
1684
+ let oldCanvasTag = tag + "_temp_fade";
1685
+ GameWindowManager.editCanvasElementTag(tag, oldCanvasTag);
1686
+ let canvasElement;
1687
+ if (typeof image === "string") {
1688
+ canvasElement = addImage(tag, image);
1689
+ } else {
1690
+ canvasElement = image;
1691
+ GameWindowManager.addCanvasElement(tag, canvasElement);
1692
+ }
1693
+ if (canvasElement instanceof CanvasImage && ((_a = canvasElement.texture) == null ? void 0 : _a.label) == "EMPTY") {
1694
+ yield canvasElement.load();
1695
+ }
1696
+ canvasElement.alpha = 0;
1697
+ GameWindowManager.addTickersSteps(oldCanvasTag, [
1698
+ new FadeAlphaTicker(__spreadProps(__spreadValues({}, props), {
1699
+ type: "hide",
1700
+ startOnlyIfHaveTexture: true
1701
+ }))
1702
+ ]);
1703
+ GameWindowManager.addTickersSteps(tag, [
1704
+ Pause(props.duration || 1),
1705
+ new FadeAlphaTicker(__spreadProps(__spreadValues({}, props), {
1706
+ type: "show",
1707
+ startOnlyIfHaveTexture: true
1708
+ }))
1709
+ ]);
1710
+ });
1711
+ }
1712
+ function removeWithFadeTransition(tag, props = {}, priority) {
1713
+ return removeWithDissolveTransition(tag, props, priority);
1714
+ }
1384
1715
 
1385
- export { addImage, loadImages, removeCanvasElement, showWithDissolveTransition };
1716
+ export { addImage, loadImage, removeCanvasElement, removeWithDissolveTransition, removeWithFadeTransition, showImage, showWithDissolveTransition, showWithFadeTransition };
1386
1717
  //# sourceMappingURL=out.js.map
1387
1718
  //# sourceMappingURL=ImageUtility.mjs.map