@drincs/pixi-vn 0.6.0 → 0.6.2

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 (415) hide show
  1. package/dist/{TickerBase-RQDWNI4K.d.ts → TickerBase-3rLpDpmb.d.ts} +27 -13
  2. package/dist/{TickerBase-B5CQCJs8.d.mts → TickerBase-DKYzbzro.d.mts} +27 -13
  3. package/dist/classes/CanvasEvent.d.mts +7 -1
  4. package/dist/classes/CanvasEvent.d.ts +7 -1
  5. package/dist/classes/CanvasEvent.js +7 -0
  6. package/dist/classes/CanvasEvent.js.map +1 -1
  7. package/dist/classes/CanvasEvent.mjs +7 -0
  8. package/dist/classes/CanvasEvent.mjs.map +1 -1
  9. package/dist/classes/CharacterBaseModel.d.mts +2 -26
  10. package/dist/classes/CharacterBaseModel.d.ts +2 -26
  11. package/dist/classes/CharacterBaseModel.js +544 -241
  12. package/dist/classes/CharacterBaseModel.js.map +1 -1
  13. package/dist/classes/CharacterBaseModel.mjs +540 -241
  14. package/dist/classes/CharacterBaseModel.mjs.map +1 -1
  15. package/dist/classes/ChoiceMenuOption.d.mts +27 -17
  16. package/dist/classes/ChoiceMenuOption.d.ts +27 -17
  17. package/dist/classes/ChoiceMenuOption.js +548 -243
  18. package/dist/classes/ChoiceMenuOption.js.map +1 -1
  19. package/dist/classes/ChoiceMenuOption.mjs +544 -243
  20. package/dist/classes/ChoiceMenuOption.mjs.map +1 -1
  21. package/dist/classes/CloseLabel.d.mts +1 -1
  22. package/dist/classes/CloseLabel.d.ts +1 -1
  23. package/dist/classes/CloseLabel.js +1 -1
  24. package/dist/classes/CloseLabel.js.map +1 -1
  25. package/dist/classes/CloseLabel.mjs +1 -1
  26. package/dist/classes/CloseLabel.mjs.map +1 -1
  27. package/dist/classes/DialogueBaseModel.d.mts +3 -2
  28. package/dist/classes/DialogueBaseModel.d.ts +3 -2
  29. package/dist/classes/DialogueBaseModel.js +5 -5
  30. package/dist/classes/DialogueBaseModel.js.map +1 -1
  31. package/dist/classes/DialogueBaseModel.mjs +5 -5
  32. package/dist/classes/DialogueBaseModel.mjs.map +1 -1
  33. package/dist/classes/Label.d.mts +1 -1
  34. package/dist/classes/Label.d.ts +1 -1
  35. package/dist/classes/Label.js +1 -1
  36. package/dist/classes/Label.js.map +1 -1
  37. package/dist/classes/Label.mjs +1 -1
  38. package/dist/classes/Label.mjs.map +1 -1
  39. package/dist/classes/StoredClassModel.d.mts +2 -2
  40. package/dist/classes/StoredClassModel.d.ts +2 -2
  41. package/dist/classes/StoredClassModel.js +544 -241
  42. package/dist/classes/StoredClassModel.js.map +1 -1
  43. package/dist/classes/StoredClassModel.mjs +540 -241
  44. package/dist/classes/StoredClassModel.mjs.map +1 -1
  45. package/dist/classes/canvas/CanvasBase.d.mts +5 -1
  46. package/dist/classes/canvas/CanvasBase.d.ts +5 -1
  47. package/dist/classes/canvas/CanvasBase.js +7 -0
  48. package/dist/classes/canvas/CanvasBase.js.map +1 -1
  49. package/dist/classes/canvas/CanvasBase.mjs +7 -0
  50. package/dist/classes/canvas/CanvasBase.mjs.map +1 -1
  51. package/dist/classes/canvas/CanvasContainer.d.mts +4 -1
  52. package/dist/classes/canvas/CanvasContainer.d.ts +4 -1
  53. package/dist/classes/canvas/CanvasContainer.js +57 -37
  54. package/dist/classes/canvas/CanvasContainer.js.map +1 -1
  55. package/dist/classes/canvas/CanvasContainer.mjs +57 -38
  56. package/dist/classes/canvas/CanvasContainer.mjs.map +1 -1
  57. package/dist/classes/canvas/CanvasImage.d.mts +4 -2
  58. package/dist/classes/canvas/CanvasImage.d.ts +4 -2
  59. package/dist/classes/canvas/CanvasImage.js +33 -20
  60. package/dist/classes/canvas/CanvasImage.js.map +1 -1
  61. package/dist/classes/canvas/CanvasImage.mjs +30 -20
  62. package/dist/classes/canvas/CanvasImage.mjs.map +1 -1
  63. package/dist/classes/canvas/CanvasSprite.d.mts +6 -3
  64. package/dist/classes/canvas/CanvasSprite.d.ts +6 -3
  65. package/dist/classes/canvas/CanvasSprite.js +25 -17
  66. package/dist/classes/canvas/CanvasSprite.js.map +1 -1
  67. package/dist/classes/canvas/CanvasSprite.mjs +25 -18
  68. package/dist/classes/canvas/CanvasSprite.mjs.map +1 -1
  69. package/dist/classes/canvas/CanvasText.d.mts +6 -3
  70. package/dist/classes/canvas/CanvasText.d.ts +6 -3
  71. package/dist/classes/canvas/CanvasText.js +25 -17
  72. package/dist/classes/canvas/CanvasText.js.map +1 -1
  73. package/dist/classes/canvas/CanvasText.mjs +25 -18
  74. package/dist/classes/canvas/CanvasText.mjs.map +1 -1
  75. package/dist/classes/canvas/index.js +184 -158
  76. package/dist/classes/canvas/index.js.map +1 -1
  77. package/dist/classes/canvas/index.mjs +184 -158
  78. package/dist/classes/canvas/index.mjs.map +1 -1
  79. package/dist/classes/index.d.mts +6 -4
  80. package/dist/classes/index.d.ts +6 -4
  81. package/dist/classes/index.js +560 -248
  82. package/dist/classes/index.js.map +1 -1
  83. package/dist/classes/index.mjs +556 -248
  84. package/dist/classes/index.mjs.map +1 -1
  85. package/dist/classes/ticker/FadeAlphaTicker.d.mts +27 -0
  86. package/dist/classes/ticker/FadeAlphaTicker.d.ts +27 -0
  87. package/dist/classes/ticker/{TickerFadeAlpha.js → FadeAlphaTicker.js} +549 -248
  88. package/dist/classes/ticker/FadeAlphaTicker.js.map +1 -0
  89. package/dist/classes/ticker/{TickerRotate.mjs → FadeAlphaTicker.mjs} +571 -274
  90. package/dist/classes/ticker/FadeAlphaTicker.mjs.map +1 -0
  91. package/dist/classes/ticker/MoveTicker.d.mts +25 -0
  92. package/dist/classes/ticker/MoveTicker.d.ts +25 -0
  93. package/dist/classes/ticker/{TickerMove.js → MoveTicker.js} +544 -241
  94. package/dist/classes/ticker/MoveTicker.js.map +1 -0
  95. package/dist/classes/ticker/{TickerFadeAlpha.mjs → MoveTicker.mjs} +568 -269
  96. package/dist/classes/ticker/MoveTicker.mjs.map +1 -0
  97. package/dist/classes/ticker/RotateTicker.d.mts +27 -0
  98. package/dist/classes/ticker/RotateTicker.d.ts +27 -0
  99. package/dist/classes/ticker/{TickerRotate.js → RotateTicker.js} +544 -241
  100. package/dist/classes/ticker/RotateTicker.js.map +1 -0
  101. package/dist/classes/ticker/{TickerMove.mjs → RotateTicker.mjs} +558 -259
  102. package/dist/classes/ticker/RotateTicker.mjs.map +1 -0
  103. package/dist/classes/ticker/TickerBase.d.mts +2 -1
  104. package/dist/classes/ticker/TickerBase.d.ts +2 -1
  105. package/dist/classes/ticker/TickerBase.js +12 -6
  106. package/dist/classes/ticker/TickerBase.js.map +1 -1
  107. package/dist/classes/ticker/TickerBase.mjs +12 -6
  108. package/dist/classes/ticker/TickerBase.mjs.map +1 -1
  109. package/dist/classes/ticker/ZoomTicker.d.mts +31 -0
  110. package/dist/classes/ticker/ZoomTicker.d.ts +31 -0
  111. package/dist/classes/ticker/ZoomTicker.js +1647 -0
  112. package/dist/classes/ticker/ZoomTicker.js.map +1 -0
  113. package/dist/classes/ticker/ZoomTicker.mjs +1639 -0
  114. package/dist/classes/ticker/ZoomTicker.mjs.map +1 -0
  115. package/dist/classes/ticker/index.d.mts +11 -8
  116. package/dist/classes/ticker/index.d.ts +11 -8
  117. package/dist/classes/ticker/index.js +567 -266
  118. package/dist/classes/ticker/index.js.map +1 -1
  119. package/dist/classes/ticker/index.mjs +564 -267
  120. package/dist/classes/ticker/index.mjs.map +1 -1
  121. package/dist/constants.d.mts +12 -2
  122. package/dist/constants.d.ts +12 -2
  123. package/dist/constants.js +10 -1
  124. package/dist/constants.js.map +1 -1
  125. package/dist/constants.mjs +9 -2
  126. package/dist/constants.mjs.map +1 -1
  127. package/dist/decorators/CanvasElementDecorator.d.mts +3 -3
  128. package/dist/decorators/CanvasElementDecorator.d.ts +3 -3
  129. package/dist/decorators/CanvasElementDecorator.js +63 -43
  130. package/dist/decorators/CanvasElementDecorator.js.map +1 -1
  131. package/dist/decorators/CanvasElementDecorator.mjs +62 -42
  132. package/dist/decorators/CanvasElementDecorator.mjs.map +1 -1
  133. package/dist/decorators/CharacterDecorator.d.mts +1 -0
  134. package/dist/decorators/CharacterDecorator.d.ts +1 -0
  135. package/dist/decorators/CharacterDecorator.js +1 -1
  136. package/dist/decorators/CharacterDecorator.js.map +1 -1
  137. package/dist/decorators/CharacterDecorator.mjs +1 -1
  138. package/dist/decorators/CharacterDecorator.mjs.map +1 -1
  139. package/dist/decorators/EventDecorator.d.mts +7 -7
  140. package/dist/decorators/EventDecorator.d.ts +7 -7
  141. package/dist/decorators/EventDecorator.js +12 -11
  142. package/dist/decorators/EventDecorator.js.map +1 -1
  143. package/dist/decorators/EventDecorator.mjs +11 -10
  144. package/dist/decorators/EventDecorator.mjs.map +1 -1
  145. package/dist/decorators/LabelDecorator.d.mts +4 -3
  146. package/dist/decorators/LabelDecorator.d.ts +4 -3
  147. package/dist/decorators/LabelDecorator.js +546 -243
  148. package/dist/decorators/LabelDecorator.js.map +1 -1
  149. package/dist/decorators/LabelDecorator.mjs +542 -243
  150. package/dist/decorators/LabelDecorator.mjs.map +1 -1
  151. package/dist/decorators/TickerDecorator.d.mts +9 -6
  152. package/dist/decorators/TickerDecorator.d.ts +9 -6
  153. package/dist/decorators/TickerDecorator.js +7 -6
  154. package/dist/decorators/TickerDecorator.js.map +1 -1
  155. package/dist/decorators/TickerDecorator.mjs +7 -6
  156. package/dist/decorators/TickerDecorator.mjs.map +1 -1
  157. package/dist/decorators/index.d.mts +4 -3
  158. package/dist/decorators/index.d.ts +4 -3
  159. package/dist/decorators/index.js +550 -245
  160. package/dist/decorators/index.js.map +1 -1
  161. package/dist/decorators/index.mjs +546 -245
  162. package/dist/decorators/index.mjs.map +1 -1
  163. package/dist/functions/CanvasUtility.js +56 -37
  164. package/dist/functions/CanvasUtility.js.map +1 -1
  165. package/dist/functions/CanvasUtility.mjs +56 -37
  166. package/dist/functions/CanvasUtility.mjs.map +1 -1
  167. package/dist/functions/DialogueUtility.d.mts +7 -5
  168. package/dist/functions/DialogueUtility.d.ts +7 -5
  169. package/dist/functions/DialogueUtility.js +729 -397
  170. package/dist/functions/DialogueUtility.js.map +1 -1
  171. package/dist/functions/DialogueUtility.mjs +729 -397
  172. package/dist/functions/DialogueUtility.mjs.map +1 -1
  173. package/dist/functions/FlagsUtility.js +544 -241
  174. package/dist/functions/FlagsUtility.js.map +1 -1
  175. package/dist/functions/FlagsUtility.mjs +540 -241
  176. package/dist/functions/FlagsUtility.mjs.map +1 -1
  177. package/dist/functions/GameUtility.js +544 -241
  178. package/dist/functions/GameUtility.js.map +1 -1
  179. package/dist/functions/GameUtility.mjs +540 -241
  180. package/dist/functions/GameUtility.mjs.map +1 -1
  181. package/dist/functions/ImageUtility.d.mts +81 -8
  182. package/dist/functions/ImageUtility.d.ts +81 -8
  183. package/dist/functions/ImageUtility.js +911 -387
  184. package/dist/functions/ImageUtility.js.map +1 -1
  185. package/dist/functions/ImageUtility.mjs +899 -387
  186. package/dist/functions/ImageUtility.mjs.map +1 -1
  187. package/dist/functions/SavesUtility.d.mts +9 -5
  188. package/dist/functions/SavesUtility.d.ts +9 -5
  189. package/dist/functions/SavesUtility.js +611 -252
  190. package/dist/functions/SavesUtility.js.map +1 -1
  191. package/dist/functions/SavesUtility.mjs +611 -252
  192. package/dist/functions/SavesUtility.mjs.map +1 -1
  193. package/dist/functions/TickerUtility.d.mts +1 -1
  194. package/dist/functions/TickerUtility.d.ts +1 -1
  195. package/dist/functions/TickerUtility.js +32 -18
  196. package/dist/functions/TickerUtility.js.map +1 -1
  197. package/dist/functions/TickerUtility.mjs +32 -18
  198. package/dist/functions/TickerUtility.mjs.map +1 -1
  199. package/dist/functions/index.d.mts +18 -8
  200. package/dist/functions/index.d.ts +18 -8
  201. package/dist/functions/index.js +832 -279
  202. package/dist/functions/index.js.map +1 -1
  203. package/dist/functions/index.mjs +825 -280
  204. package/dist/functions/index.mjs.map +1 -1
  205. package/dist/index.d.mts +25 -16
  206. package/dist/index.d.ts +25 -16
  207. package/dist/index.js +1547 -290
  208. package/dist/index.js.map +1 -1
  209. package/dist/index.mjs +1538 -290
  210. package/dist/index.mjs.map +1 -1
  211. package/dist/interface/CharacterBaseModelProps.d.mts +27 -0
  212. package/dist/interface/CharacterBaseModelProps.d.ts +27 -0
  213. package/dist/interface/CharacterBaseModelProps.js +4 -0
  214. package/dist/interface/CharacterBaseModelProps.mjs +3 -0
  215. package/dist/interface/DialogueHistory.d.mts +3 -7
  216. package/dist/interface/DialogueHistory.d.ts +3 -7
  217. package/dist/interface/IHistoryStep.d.mts +12 -8
  218. package/dist/interface/IHistoryStep.d.ts +12 -8
  219. package/dist/interface/ISaveData.d.mts +8 -4
  220. package/dist/interface/ISaveData.d.ts +8 -4
  221. package/dist/interface/ITicker.d.mts +2 -1
  222. package/dist/interface/ITicker.d.ts +2 -1
  223. package/dist/interface/ITickersSteps.d.mts +14 -5
  224. package/dist/interface/ITickersSteps.d.ts +14 -5
  225. package/dist/interface/TickerHistory.d.mts +29 -0
  226. package/dist/interface/TickerHistory.d.ts +29 -0
  227. package/dist/{types/ticker/TickerMoveProps.js → interface/TickerHistory.js} +1 -1
  228. package/dist/interface/TickerHistory.mjs +3 -0
  229. package/dist/interface/TickerProgrationType.d.mts +13 -1
  230. package/dist/interface/TickerProgrationType.d.ts +13 -1
  231. package/dist/interface/TickerTimeoutHistory.d.mts +7 -0
  232. package/dist/interface/TickerTimeoutHistory.d.ts +7 -0
  233. package/dist/interface/TickerTimeoutHistory.js +4 -0
  234. package/dist/interface/TickerTimeoutHistory.mjs +3 -0
  235. package/dist/interface/canvas/ICanvasBaseMemory.d.mts +1 -1
  236. package/dist/interface/canvas/ICanvasBaseMemory.d.ts +1 -1
  237. package/dist/interface/canvas/ICanvasImageMemory.d.mts +1 -1
  238. package/dist/interface/canvas/ICanvasImageMemory.d.ts +1 -1
  239. package/dist/interface/canvas/ICanvasSpriteMemory.d.mts +0 -1
  240. package/dist/interface/canvas/ICanvasSpriteMemory.d.ts +0 -1
  241. package/dist/interface/canvas/ICanvasTextTextMemory.d.mts +0 -1
  242. package/dist/interface/canvas/ICanvasTextTextMemory.d.ts +0 -1
  243. package/dist/interface/export/ExportedCanvas.d.mts +11 -3
  244. package/dist/interface/export/ExportedCanvas.d.ts +11 -3
  245. package/dist/interface/export/ExportedStep.d.mts +7 -3
  246. package/dist/interface/export/ExportedStep.d.ts +7 -3
  247. package/dist/interface/export/index.d.mts +8 -4
  248. package/dist/interface/export/index.d.ts +8 -4
  249. package/dist/interface/index.d.mts +14 -11
  250. package/dist/interface/index.d.ts +14 -11
  251. package/dist/labels/BaseCanvasElementTestLabel.d.mts +9 -0
  252. package/dist/labels/BaseCanvasElementTestLabel.d.ts +9 -0
  253. package/dist/labels/BaseCanvasElementTestLabel.js +1888 -0
  254. package/dist/labels/BaseCanvasElementTestLabel.js.map +1 -0
  255. package/dist/labels/BaseCanvasElementTestLabel.mjs +1882 -0
  256. package/dist/labels/BaseCanvasElementTestLabel.mjs.map +1 -0
  257. package/dist/labels/CanvasEventsTestLabel.d.mts +27 -0
  258. package/dist/labels/CanvasEventsTestLabel.d.ts +27 -0
  259. package/dist/labels/CanvasEventsTestLabel.js +2822 -0
  260. package/dist/labels/CanvasEventsTestLabel.js.map +1 -0
  261. package/dist/labels/CanvasEventsTestLabel.mjs +2816 -0
  262. package/dist/labels/CanvasEventsTestLabel.mjs.map +1 -0
  263. package/dist/labels/CustomTickerCanvasElementTestLabel.d.mts +20 -0
  264. package/dist/labels/CustomTickerCanvasElementTestLabel.d.ts +20 -0
  265. package/dist/labels/CustomTickerCanvasElementTestLabel.js +2792 -0
  266. package/dist/labels/CustomTickerCanvasElementTestLabel.js.map +1 -0
  267. package/dist/labels/CustomTickerCanvasElementTestLabel.mjs +2786 -0
  268. package/dist/labels/CustomTickerCanvasElementTestLabel.mjs.map +1 -0
  269. package/dist/labels/ImagesAnimationsTestLabel.d.mts +9 -0
  270. package/dist/labels/ImagesAnimationsTestLabel.d.ts +9 -0
  271. package/dist/labels/ImagesAnimationsTestLabel.js +3378 -0
  272. package/dist/labels/ImagesAnimationsTestLabel.js.map +1 -0
  273. package/dist/labels/ImagesAnimationsTestLabel.mjs +3372 -0
  274. package/dist/labels/ImagesAnimationsTestLabel.mjs.map +1 -0
  275. package/dist/labels/MarkdownTest.d.mts +9 -0
  276. package/dist/labels/MarkdownTest.d.ts +9 -0
  277. package/dist/labels/MarkdownTest.js +2756 -0
  278. package/dist/labels/MarkdownTest.js.map +1 -0
  279. package/dist/labels/MarkdownTest.mjs +2750 -0
  280. package/dist/labels/MarkdownTest.mjs.map +1 -0
  281. package/dist/labels/StartLabel.d.mts +10 -0
  282. package/dist/labels/StartLabel.d.ts +10 -0
  283. package/dist/labels/StartLabel.js +3736 -0
  284. package/dist/labels/StartLabel.js.map +1 -0
  285. package/dist/labels/StartLabel.mjs +3729 -0
  286. package/dist/labels/StartLabel.mjs.map +1 -0
  287. package/dist/labels/TestConstant.d.mts +17 -0
  288. package/dist/labels/TestConstant.d.ts +17 -0
  289. package/dist/labels/TestConstant.js +1872 -0
  290. package/dist/labels/TestConstant.js.map +1 -0
  291. package/dist/labels/TestConstant.mjs +1856 -0
  292. package/dist/labels/TestConstant.mjs.map +1 -0
  293. package/dist/labels/TickerTestLabel.d.mts +9 -0
  294. package/dist/labels/TickerTestLabel.d.ts +9 -0
  295. package/dist/labels/TickerTestLabel.js +2675 -0
  296. package/dist/labels/TickerTestLabel.js.map +1 -0
  297. package/dist/labels/TickerTestLabel.mjs +2669 -0
  298. package/dist/labels/TickerTestLabel.mjs.map +1 -0
  299. package/dist/labels/index.d.mts +10 -0
  300. package/dist/labels/index.d.ts +10 -0
  301. package/dist/labels/index.js +3736 -0
  302. package/dist/labels/index.js.map +1 -0
  303. package/dist/labels/index.mjs +3729 -0
  304. package/dist/labels/index.mjs.map +1 -0
  305. package/dist/managers/StepManager.d.mts +21 -15
  306. package/dist/managers/StepManager.d.ts +21 -15
  307. package/dist/managers/StepManager.js +610 -251
  308. package/dist/managers/StepManager.js.map +1 -1
  309. package/dist/managers/StepManager.mjs +610 -251
  310. package/dist/managers/StepManager.mjs.map +1 -1
  311. package/dist/managers/WindowManager.d.mts +38 -24
  312. package/dist/managers/WindowManager.d.ts +38 -24
  313. package/dist/managers/WindowManager.js +356 -170
  314. package/dist/managers/WindowManager.js.map +1 -1
  315. package/dist/managers/WindowManager.mjs +352 -170
  316. package/dist/managers/WindowManager.mjs.map +1 -1
  317. package/dist/managers/index.d.mts +15 -14
  318. package/dist/managers/index.d.ts +15 -14
  319. package/dist/managers/index.js +612 -251
  320. package/dist/managers/index.js.map +1 -1
  321. package/dist/managers/index.mjs +612 -251
  322. package/dist/managers/index.mjs.map +1 -1
  323. package/dist/types/CanvasEventNamesType.d.mts +1 -1
  324. package/dist/types/CanvasEventNamesType.d.ts +1 -1
  325. package/dist/types/ChoiceMenuOptionsType.d.mts +2 -2
  326. package/dist/types/ChoiceMenuOptionsType.d.ts +2 -2
  327. package/dist/types/HistoryChoiceMenuOption.d.mts +22 -0
  328. package/dist/types/HistoryChoiceMenuOption.d.ts +22 -0
  329. package/dist/types/HistoryChoiceMenuOption.js +4 -0
  330. package/dist/types/HistoryChoiceMenuOption.mjs +3 -0
  331. package/dist/types/PauseType.d.mts +8 -4
  332. package/dist/types/PauseType.d.ts +8 -4
  333. package/dist/types/PauseType.js +0 -11
  334. package/dist/types/PauseType.js.map +1 -1
  335. package/dist/types/PauseType.mjs +0 -9
  336. package/dist/types/PauseType.mjs.map +1 -1
  337. package/dist/types/RepeatType.d.mts +1 -2
  338. package/dist/types/RepeatType.d.ts +1 -2
  339. package/dist/types/RepeatType.js +0 -4
  340. package/dist/types/RepeatType.js.map +1 -1
  341. package/dist/types/RepeatType.mjs +0 -3
  342. package/dist/types/RepeatType.mjs.map +1 -1
  343. package/dist/types/index.d.mts +5 -4
  344. package/dist/types/index.d.ts +5 -4
  345. package/dist/types/index.js +0 -15
  346. package/dist/types/index.js.map +1 -1
  347. package/dist/types/index.mjs +1 -13
  348. package/dist/types/index.mjs.map +1 -1
  349. package/dist/types/ticker/{TickerFadeAlphaProps.d.mts → FadeAlphaTickerProps.d.mts} +9 -5
  350. package/dist/types/ticker/{TickerFadeAlphaProps.d.ts → FadeAlphaTickerProps.d.ts} +9 -5
  351. package/dist/types/ticker/FadeAlphaTickerProps.js +4 -0
  352. package/dist/types/ticker/FadeAlphaTickerProps.js.map +1 -0
  353. package/dist/types/ticker/FadeAlphaTickerProps.mjs +3 -0
  354. package/dist/types/ticker/FadeAlphaTickerProps.mjs.map +1 -0
  355. package/dist/types/ticker/{TickerMoveProps.d.mts → MoveTickerProps.d.mts} +14 -5
  356. package/dist/types/ticker/{TickerMoveProps.d.ts → MoveTickerProps.d.ts} +14 -5
  357. package/dist/types/ticker/{TickerRotateProps.js → MoveTickerProps.js} +1 -1
  358. package/dist/types/ticker/MoveTickerProps.js.map +1 -0
  359. package/dist/types/ticker/MoveTickerProps.mjs +3 -0
  360. package/dist/types/ticker/MoveTickerProps.mjs.map +1 -0
  361. package/dist/types/ticker/{TickerRotateProps.d.mts → RotateTickerProps.d.mts} +10 -4
  362. package/dist/types/ticker/{TickerRotateProps.d.ts → RotateTickerProps.d.ts} +10 -4
  363. package/dist/types/ticker/RotateTickerProps.js +4 -0
  364. package/dist/types/ticker/RotateTickerProps.js.map +1 -0
  365. package/dist/types/ticker/RotateTickerProps.mjs +3 -0
  366. package/dist/types/ticker/RotateTickerProps.mjs.map +1 -0
  367. package/dist/types/ticker/TagToRemoveAfterType.d.mts +4 -0
  368. package/dist/types/ticker/TagToRemoveAfterType.d.ts +4 -0
  369. package/dist/types/ticker/TagToRemoveAfterType.js +8 -0
  370. package/dist/types/ticker/TagToRemoveAfterType.js.map +1 -0
  371. package/dist/types/ticker/TagToRemoveAfterType.mjs +6 -0
  372. package/dist/types/ticker/TagToRemoveAfterType.mjs.map +1 -0
  373. package/dist/types/ticker/ZoomTickerProps.d.mts +45 -0
  374. package/dist/types/ticker/ZoomTickerProps.d.ts +45 -0
  375. package/dist/types/ticker/ZoomTickerProps.js +4 -0
  376. package/dist/types/ticker/ZoomTickerProps.js.map +1 -0
  377. package/dist/types/ticker/ZoomTickerProps.mjs +3 -0
  378. package/dist/types/ticker/ZoomTickerProps.mjs.map +1 -0
  379. package/dist/types/ticker/index.d.mts +4 -2
  380. package/dist/types/ticker/index.d.ts +4 -2
  381. package/package.json +7 -7
  382. package/dist/classes/ticker/TickerFadeAlpha.d.mts +0 -31
  383. package/dist/classes/ticker/TickerFadeAlpha.d.ts +0 -31
  384. package/dist/classes/ticker/TickerFadeAlpha.js.map +0 -1
  385. package/dist/classes/ticker/TickerFadeAlpha.mjs.map +0 -1
  386. package/dist/classes/ticker/TickerMove.d.mts +0 -29
  387. package/dist/classes/ticker/TickerMove.d.ts +0 -29
  388. package/dist/classes/ticker/TickerMove.js.map +0 -1
  389. package/dist/classes/ticker/TickerMove.mjs.map +0 -1
  390. package/dist/classes/ticker/TickerRotate.d.mts +0 -30
  391. package/dist/classes/ticker/TickerRotate.d.ts +0 -30
  392. package/dist/classes/ticker/TickerRotate.js.map +0 -1
  393. package/dist/classes/ticker/TickerRotate.mjs.map +0 -1
  394. package/dist/functions/ErrorUtility.d.mts +0 -24
  395. package/dist/functions/ErrorUtility.d.ts +0 -24
  396. package/dist/functions/ErrorUtility.js +0 -261
  397. package/dist/functions/ErrorUtility.js.map +0 -1
  398. package/dist/functions/ErrorUtility.mjs +0 -258
  399. package/dist/functions/ErrorUtility.mjs.map +0 -1
  400. package/dist/interface/IClassWithArgsHistory.d.mts +0 -25
  401. package/dist/interface/IClassWithArgsHistory.d.ts +0 -25
  402. package/dist/interface/IClassWithArgsHistory.js +0 -4
  403. package/dist/interface/IClassWithArgsHistory.mjs +0 -3
  404. package/dist/types/ticker/TickerFadeAlphaProps.js +0 -4
  405. package/dist/types/ticker/TickerFadeAlphaProps.mjs +0 -3
  406. package/dist/types/ticker/TickerMoveProps.mjs +0 -3
  407. package/dist/types/ticker/TickerRotateProps.mjs +0 -3
  408. /package/dist/interface/{IClassWithArgsHistory.js.map → CharacterBaseModelProps.js.map} +0 -0
  409. /package/dist/interface/{IClassWithArgsHistory.mjs.map → CharacterBaseModelProps.mjs.map} +0 -0
  410. /package/dist/{types/ticker/TickerFadeAlphaProps.js.map → interface/TickerHistory.js.map} +0 -0
  411. /package/dist/{types/ticker/TickerFadeAlphaProps.mjs.map → interface/TickerHistory.mjs.map} +0 -0
  412. /package/dist/{types/ticker/TickerMoveProps.js.map → interface/TickerTimeoutHistory.js.map} +0 -0
  413. /package/dist/{types/ticker/TickerMoveProps.mjs.map → interface/TickerTimeoutHistory.mjs.map} +0 -0
  414. /package/dist/types/{ticker/TickerRotateProps.js.map → HistoryChoiceMenuOption.js.map} +0 -0
  415. /package/dist/types/{ticker/TickerRotateProps.mjs.map → HistoryChoiceMenuOption.mjs.map} +0 -0
@@ -2,7 +2,11 @@
2
2
 
3
3
  var pixi_js = require('pixi.js');
4
4
  require('deep-diff');
5
- require('crypto-js/sha1');
5
+ var sha1 = require('crypto-js/sha1');
6
+
7
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
8
+
9
+ var sha1__default = /*#__PURE__*/_interopDefault(sha1);
6
10
 
7
11
  var __defProp = Object.defineProperty;
8
12
  var __defProps = Object.defineProperties;
@@ -29,8 +33,7 @@ var __decorateClass = (decorators, target, key, kind) => {
29
33
  for (var i = decorators.length - 1, decorator; i >= 0; i--)
30
34
  if (decorator = decorators[i])
31
35
  result = (kind ? decorator(target, key, result) : decorator(result)) || result;
32
- if (kind && result)
33
- __defProp(target, key, result);
36
+ if (kind && result) __defProp(target, key, result);
34
37
  return result;
35
38
  };
36
39
  var __async = (__this, __arguments, generator) => {
@@ -54,30 +57,6 @@ var __async = (__this, __arguments, generator) => {
54
57
  });
55
58
  };
56
59
 
57
- // src/classes/ticker/TickerBase.ts
58
- var TickerBase = class {
59
- /**
60
- * @param args The arguments that you want to pass to the ticker.
61
- * @param duration The duration of the ticker. If is undefined, the ticker will be called every frame.
62
- * @param priority The priority of the ticker. If is undefined, the priority will be UPDATE_PRIORITY.NORMAL.
63
- */
64
- constructor(args, duration, priority) {
65
- this.args = args;
66
- this.duration = duration;
67
- this.priority = priority;
68
- }
69
- /**
70
- * The method that will be called every frame.
71
- * This method should be overridden and you can use GameWindowManager.addCanvasElement() to get the canvas element of the canvas, and edit them.
72
- * @param t The ticker that is calling this method
73
- * @param args The arguments that you passed when you added the ticker
74
- * @param tags The tags of the canvas elements that are connected to this ticker
75
- */
76
- fn(_t, _args, _tags) {
77
- throw new Error("[Pixi'VN] The method TickerBase.fn() must be overridden");
78
- }
79
- };
80
-
81
60
  // src/functions/CanvasUtility.ts
82
61
  function getTextureMemory(texture) {
83
62
  let sourceTexture = texture.source;
@@ -90,17 +69,23 @@ function exportCanvasElement(element) {
90
69
  return element.memory;
91
70
  }
92
71
  function importCanvasElement(memory) {
93
- let element = getCanvasElementInstanceByClassName(memory.className);
72
+ let element = getCanvasElementInstanceById(memory.pixivnId);
94
73
  if (element) {
95
74
  element.memory = memory;
96
75
  } else {
97
- throw new Error("[Pixi'VN] The element " + memory.className + " could not be created");
76
+ throw new Error("[Pixi'VN] The element " + memory.pixivnId + " could not be created");
98
77
  }
99
78
  return element;
100
79
  }
101
80
 
102
81
  // src/classes/canvas/CanvasContainer.ts
82
+ var CANVAS_CONTAINER_ID = "CanvasContainer";
103
83
  var CanvasContainer = class extends pixi_js.Container {
84
+ constructor(options) {
85
+ super(options);
86
+ this.pixivnId = CANVAS_CONTAINER_ID;
87
+ this.pixivnId = this.constructor.prototype.pixivnId;
88
+ }
104
89
  get memory() {
105
90
  let memory = getMemoryContainer(this);
106
91
  this.children.forEach((child) => {
@@ -116,8 +101,12 @@ var CanvasContainer = class extends pixi_js.Container {
116
101
  }
117
102
  };
118
103
  function getMemoryContainer(element) {
104
+ let className = "CanvasContainer";
105
+ if (element.hasOwnProperty("pixivnId")) {
106
+ className = element.pixivnId;
107
+ }
119
108
  return {
120
- className: "CanvasContainer",
109
+ pixivnId: className,
121
110
  elements: [],
122
111
  width: element.width,
123
112
  height: element.height,
@@ -233,40 +222,43 @@ function getTextStyle(style) {
233
222
 
234
223
  // src/decorators/EventDecorator.ts
235
224
  var registeredEvents = {};
236
- function getEventTypeByClassName(eventName) {
225
+ function getEventTypeById(eventId) {
237
226
  try {
238
- let eventType = registeredEvents[eventName];
227
+ let eventType = registeredEvents[eventId];
239
228
  if (!eventType) {
240
- console.error(`[Pixi'VN] Event ${eventName} not found`);
229
+ console.error(`[Pixi'VN] Event ${eventId} not found`);
241
230
  return;
242
231
  }
243
232
  new eventType();
244
233
  return eventType;
245
234
  } catch (e) {
246
- console.error(`[Pixi'VN] Error while getting Event ${eventName}`, e);
235
+ console.error(`[Pixi'VN] Error while getting Event ${eventId}`, e);
247
236
  return;
248
237
  }
249
238
  }
250
- function getEventInstanceByClassName(eventName) {
239
+ function getEventInstanceById(eventId) {
251
240
  try {
252
- let eventType = registeredEvents[eventName];
241
+ let eventType = registeredEvents[eventId];
253
242
  if (!eventType) {
254
- console.error(`[Pixi'VN] Event ${eventName} not found`);
243
+ console.error(`[Pixi'VN] Event ${eventId} not found`);
255
244
  return;
256
245
  }
257
246
  let event = new eventType();
258
247
  return event;
259
248
  } catch (e) {
260
- console.error(`[Pixi'VN] Error while getting Event ${eventName}`, e);
249
+ console.error(`[Pixi'VN] Error while getting Event ${eventId}`, e);
261
250
  return;
262
251
  }
263
252
  }
264
253
 
265
254
  // src/classes/canvas/CanvasSprite.ts
255
+ var CANVAS_SPRITE_ID = "CanvasSprite";
266
256
  var CanvasSprite = class _CanvasSprite extends pixi_js.Sprite {
267
- constructor() {
268
- super(...arguments);
257
+ constructor(options) {
258
+ super(options);
259
+ this.pixivnId = CANVAS_SPRITE_ID;
269
260
  this._onEvents = {};
261
+ this.pixivnId = this.constructor.prototype.pixivnId;
270
262
  }
271
263
  get memory() {
272
264
  return getMemorySprite(this);
@@ -307,9 +299,9 @@ var CanvasSprite = class _CanvasSprite extends pixi_js.Sprite {
307
299
  * ```
308
300
  */
309
301
  onEvent(event, eventClass) {
310
- let className = eventClass.name;
311
- let instance = getEventInstanceByClassName(className);
312
- this._onEvents[event] = className;
302
+ let id = eventClass.prototype.id;
303
+ let instance = getEventInstanceById(id);
304
+ this._onEvents[event] = id;
313
305
  if (instance) {
314
306
  super.on(event, () => {
315
307
  instance.fn(event, this);
@@ -338,7 +330,7 @@ var CanvasSprite = class _CanvasSprite extends pixi_js.Sprite {
338
330
  function getMemorySprite(element) {
339
331
  let temp = getMemoryContainer(element);
340
332
  return __spreadProps(__spreadValues({}, temp), {
341
- className: "CanvasSprite",
333
+ pixivnId: element.pixivnId,
342
334
  textureImage: getTextureMemory(element.texture),
343
335
  anchor: { x: element.anchor.x, y: element.anchor.y },
344
336
  roundPixels: element.roundPixels,
@@ -361,8 +353,8 @@ function setMemorySprite(element, memory) {
361
353
  }
362
354
  memory.roundPixels && (element.roundPixels = memory.roundPixels);
363
355
  for (let event in memory.onEvents) {
364
- let className = memory.onEvents[event];
365
- let instance = getEventTypeByClassName(className);
356
+ let id = memory.onEvents[event];
357
+ let instance = getEventTypeById(id);
366
358
  if (instance) {
367
359
  element.onEvent(event, instance);
368
360
  }
@@ -370,9 +362,11 @@ function setMemorySprite(element, memory) {
370
362
  }
371
363
 
372
364
  // src/classes/canvas/CanvasImage.ts
365
+ var CANVAS_IMAGE_ID = "CanvasImage";
373
366
  var CanvasImage = class _CanvasImage extends CanvasSprite {
374
367
  constructor(options, imageLink) {
375
368
  super(options);
369
+ this.pixivnId = CANVAS_IMAGE_ID;
376
370
  this.imageLink = "";
377
371
  if (imageLink) {
378
372
  this.imageLink = imageLink;
@@ -380,12 +374,13 @@ var CanvasImage = class _CanvasImage extends CanvasSprite {
380
374
  }
381
375
  get memory() {
382
376
  return __spreadProps(__spreadValues({}, getMemorySprite(this)), {
383
- className: "CanvasImage",
384
- textureImage: { image: this.imageLink }
377
+ pixivnId: this.pixivnId,
378
+ imageLink: this.imageLink
385
379
  });
386
380
  }
387
381
  set memory(memory) {
388
382
  setMemorySprite(this, memory);
383
+ this.imageLink = memory.imageLink;
389
384
  }
390
385
  static from(source, skipCache) {
391
386
  let sprite = pixi_js.Sprite.from(source, skipCache);
@@ -413,10 +408,13 @@ var CanvasImage = class _CanvasImage extends CanvasSprite {
413
408
  });
414
409
  }
415
410
  };
411
+ var CANVAS_TEXT_ID = "CanvasText";
416
412
  var CanvasText = class extends pixi_js.Text {
417
- constructor() {
418
- super(...arguments);
413
+ constructor(options) {
414
+ super(options);
415
+ this.pixivnId = CANVAS_TEXT_ID;
419
416
  this._onEvents = {};
417
+ this.pixivnId = this.constructor.prototype.pixivnId;
420
418
  }
421
419
  get memory() {
422
420
  return getMemoryText(this);
@@ -457,9 +455,9 @@ var CanvasText = class extends pixi_js.Text {
457
455
  * ```
458
456
  */
459
457
  onEvent(event, eventClass) {
460
- let className = eventClass.name;
461
- let instance = getEventInstanceByClassName(className);
462
- this._onEvents[event] = className;
458
+ let id = eventClass.prototype.id;
459
+ let instance = getEventInstanceById(id);
460
+ this._onEvents[event] = id;
463
461
  if (instance) {
464
462
  super.on(event, () => {
465
463
  instance.fn(event, this);
@@ -482,7 +480,7 @@ var CanvasText = class extends pixi_js.Text {
482
480
  function getMemoryText(element) {
483
481
  let temp = getMemoryContainer(element);
484
482
  return __spreadProps(__spreadValues({}, temp), {
485
- className: "CanvasText",
483
+ pixivnId: element.pixivnId,
486
484
  anchor: { x: element.anchor.x, y: element.anchor.y },
487
485
  text: element.text,
488
486
  resolution: element.resolution,
@@ -505,8 +503,8 @@ function setMemoryText(element, memory) {
505
503
  memory.style && (element.style = memory.style);
506
504
  memory.roundPixels && (element.roundPixels = memory.roundPixels);
507
505
  for (let event in memory.onEvents) {
508
- let className = memory.onEvents[event];
509
- let instance = getEventTypeByClassName(className);
506
+ let id = memory.onEvents[event];
507
+ let instance = getEventTypeById(id);
510
508
  if (instance) {
511
509
  element.onEvent(event, instance);
512
510
  }
@@ -515,36 +513,197 @@ function setMemoryText(element, memory) {
515
513
 
516
514
  // src/decorators/CanvasElementDecorator.ts
517
515
  var registeredCanvasElement = {};
518
- function getCanvasElementInstanceByClassName(canvasName) {
516
+ function getCanvasElementInstanceById(canvasId) {
519
517
  try {
520
- let eventType = registeredCanvasElement[canvasName];
518
+ let eventType = registeredCanvasElement[canvasId];
521
519
  if (!eventType) {
522
- if (canvasName === "CanvasContainer") {
520
+ if (canvasId === CANVAS_CONTAINER_ID) {
523
521
  eventType = CanvasContainer;
524
- } else if (canvasName === "CanvasImage") {
522
+ } else if (canvasId === CANVAS_IMAGE_ID) {
525
523
  eventType = CanvasImage;
526
- } else if (canvasName === "CanvasSprite") {
524
+ } else if (canvasId === CANVAS_SPRITE_ID) {
527
525
  eventType = CanvasSprite;
528
- } else if (canvasName === "CanvasText") {
526
+ } else if (canvasId === CANVAS_TEXT_ID) {
529
527
  eventType = CanvasText;
530
528
  }
531
529
  }
532
530
  if (!eventType) {
533
- console.error(`[Pixi'VN] CanvasElement ${canvasName} not found`);
531
+ console.error(`[Pixi'VN] CanvasElement ${canvasId} not found`);
534
532
  return;
535
533
  }
536
534
  let canvasElement = new eventType();
537
535
  return canvasElement;
538
536
  } catch (e) {
539
- console.error(`[Pixi'VN] Error while getting CanvasElement ${canvasName}`, e);
537
+ console.error(`[Pixi'VN] Error while getting CanvasElement ${canvasId}`, e);
540
538
  return;
541
539
  }
542
540
  }
543
541
 
544
- // src/types/PauseType.ts
545
- var PauseValueType = "pause";
542
+ // src/functions/TickerUtility.ts
543
+ function updateTickerProgression(args, propertyName, progression) {
544
+ if (args[propertyName] === void 0 || !progression || args[propertyName] === progression.limit) {
545
+ return;
546
+ }
547
+ if (typeof args[propertyName] === "number") {
548
+ if (progression.type === "linear") {
549
+ args[propertyName] = getLinearProgression(args[propertyName], progression);
550
+ } else if (progression.type === "exponential") {
551
+ args[propertyName] = getExponentialProgression(args[propertyName], progression);
552
+ }
553
+ } 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") {
554
+ if (progression.type === "linear") {
555
+ args[propertyName].x = getLinearProgression(args[propertyName].x, progression);
556
+ args[propertyName].y = getLinearProgression(args[propertyName].y, progression);
557
+ } else if (progression.type === "exponential") {
558
+ args[propertyName].x = getExponentialProgression(args[propertyName].x, progression);
559
+ args[propertyName].y = getExponentialProgression(args[propertyName].y, progression);
560
+ }
561
+ }
562
+ }
563
+ function getLinearProgression(number, progression) {
564
+ if (progression.limit !== void 0) {
565
+ if (number > progression.limit && progression.amt > 0) {
566
+ return progression.limit;
567
+ } else if (number < progression.limit && progression.amt < 0) {
568
+ return progression.limit;
569
+ }
570
+ }
571
+ return number + progression.amt / 60;
572
+ }
573
+ function getExponentialProgression(number, progression) {
574
+ if (progression.limit !== void 0) {
575
+ if (number > progression.limit && progression.percentage > 0) {
576
+ return progression.limit;
577
+ } else if (number < progression.limit && progression.percentage < 0) {
578
+ return progression.limit;
579
+ }
580
+ }
581
+ return number + number * progression.percentage;
582
+ }
546
583
 
547
- // src/types/RepeatType.ts
584
+ // src/classes/ticker/TickerBase.ts
585
+ var TickerBase = class {
586
+ /**
587
+ * @param args The arguments that you want to pass to the ticker.
588
+ * @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
589
+ * @param priority The priority of the ticker. @default UPDATE_PRIORITY.NORMAL
590
+ */
591
+ constructor(args, duration, priority) {
592
+ /**
593
+ * Get the id of the ticker. This variable is used in the system to get the ticker by id, {@link geTickerInstanceById}
594
+ */
595
+ this.id = "ticker_id_not_set";
596
+ this.args = args;
597
+ this.duration = duration;
598
+ this.priority = priority;
599
+ this.id = this.constructor.prototype.id;
600
+ }
601
+ /**
602
+ * The method that will be called every frame.
603
+ * This method should be overridden and you can use GameWindowManager.addCanvasElement() to get the canvas element of the canvas, and edit them.
604
+ * @param _ticker The ticker that is calling this method
605
+ * @param _args The arguments that you passed when you added the ticker
606
+ * @param _tags The tags of the canvas elements that are connected to this ticker
607
+ * @param _tickerId The id of the ticker. You can use this to get the ticker from the {@link GameWindowManager.currentTickers}
608
+ */
609
+ fn(_ticker, _args, _tags, _tickerId) {
610
+ throw new Error("[Pixi'VN] The method TickerBase.fn() must be overridden");
611
+ }
612
+ };
613
+
614
+ // src/classes/ticker/ZoomTicker.ts
615
+ exports.ZoomTicker = class ZoomTicker extends TickerBase {
616
+ fn(ticker, args, tags, tickerId) {
617
+ let xSpeed = 0.1;
618
+ let ySpeed = 0.1;
619
+ if (args.speed) {
620
+ if (typeof args.speed === "number") {
621
+ xSpeed = args.speed;
622
+ ySpeed = args.speed;
623
+ } else {
624
+ xSpeed = args.speed.x;
625
+ ySpeed = args.speed.y;
626
+ }
627
+ }
628
+ xSpeed /= 60;
629
+ ySpeed /= 60;
630
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
631
+ if (typeof tagToRemoveAfter2 === "string") {
632
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
633
+ }
634
+ let type = args.type || "zoom";
635
+ let xLimit = type === "zoom" ? Infinity : 0;
636
+ let yLimit = type === "zoom" ? Infinity : 0;
637
+ if (args.limit) {
638
+ if (typeof args.limit === "number") {
639
+ xLimit = args.limit;
640
+ yLimit = args.limit;
641
+ } else {
642
+ xLimit = args.limit.x;
643
+ yLimit = args.limit.y;
644
+ }
645
+ }
646
+ tags.filter((tag) => {
647
+ var _a;
648
+ let element = GameWindowManager.getCanvasElement(tag);
649
+ if (args.startOnlyIfHaveTexture) {
650
+ if (element && element instanceof pixi_js.Sprite && ((_a = element.texture) == null ? void 0 : _a.label) == "EMPTY") {
651
+ return false;
652
+ }
653
+ }
654
+ return true;
655
+ }).forEach((tag) => {
656
+ let element = GameWindowManager.getCanvasElement(tag);
657
+ if (element && element instanceof pixi_js.Container) {
658
+ if (type === "zoom" && (element.scale.x < xLimit || element.scale.y < yLimit)) {
659
+ element.scale.x += xSpeed * ticker.deltaTime;
660
+ element.scale.y += ySpeed * ticker.deltaTime;
661
+ } else if (type === "unzoom" && (element.scale.x > xLimit || element.scale.y > yLimit)) {
662
+ element.scale.x -= xSpeed * ticker.deltaTime;
663
+ element.scale.y -= ySpeed * ticker.deltaTime;
664
+ }
665
+ if (type === "zoom") {
666
+ if (element.scale.x > xLimit) {
667
+ element.scale.x = xLimit;
668
+ }
669
+ if (element.scale.y > yLimit) {
670
+ element.scale.y = yLimit;
671
+ }
672
+ if (element.scale.x >= xLimit && element.scale.y >= yLimit) {
673
+ element.scale.x = xLimit;
674
+ element.scale.y = yLimit;
675
+ this.onEndOfTicker(tag, tickerId, element, tagToRemoveAfter2);
676
+ }
677
+ } else if (type === "unzoom") {
678
+ if (element.scale.x < xLimit) {
679
+ element.scale.x = xLimit;
680
+ }
681
+ if (element.scale.y < yLimit) {
682
+ element.scale.y = yLimit;
683
+ }
684
+ if (element.scale.x <= xLimit && element.scale.y <= yLimit) {
685
+ element.scale.x = xLimit;
686
+ element.scale.y = yLimit;
687
+ this.onEndOfTicker(tag, tickerId, element, tagToRemoveAfter2);
688
+ }
689
+ }
690
+ if (xSpeed < 1e-5 && ySpeed < 1e-5 && !(args.speedProgression && args.speedProgression.type == "linear" && args.speedProgression.amt != 0)) {
691
+ this.onEndOfTicker(tag, tickerId, element, tagToRemoveAfter2);
692
+ }
693
+ }
694
+ });
695
+ if (args.speedProgression)
696
+ updateTickerProgression(args, "speed", args.speedProgression);
697
+ }
698
+ onEndOfTicker(tag, tickerId, _element, tagToRemoveAfter2) {
699
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
700
+ }
701
+ };
702
+ exports.ZoomTicker = __decorateClass([
703
+ tickerDecorator()
704
+ ], exports.ZoomTicker);
705
+
706
+ // src/constants.ts
548
707
  var Repeat = "repeat";
549
708
 
550
709
  // src/functions/ExportUtility.ts
@@ -566,21 +725,22 @@ function tickerDecorator(name) {
566
725
  name = target.name;
567
726
  }
568
727
  if (registeredTickers[name]) {
569
- console.warn(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`);
728
+ console.info(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`);
570
729
  }
730
+ target.prototype.id = name;
571
731
  registeredTickers[name] = target;
572
732
  };
573
733
  }
574
- function geTickerInstanceByClassName(tickerName, args, duration, priority) {
734
+ function geTickerInstanceById(tickerId, args, duration, priority) {
575
735
  try {
576
- let ticker = registeredTickers[tickerName];
736
+ let ticker = registeredTickers[tickerId];
577
737
  if (!ticker) {
578
- console.error(`[Pixi'VN] Ticker ${tickerName} not found`);
738
+ console.error(`[Pixi'VN] Ticker ${tickerId} not found`);
579
739
  return;
580
740
  }
581
741
  return new ticker(args, duration, priority);
582
742
  } catch (e) {
583
- console.error(`[Pixi'VN] Error while getting Ticker ${tickerName}`, e);
743
+ console.error(`[Pixi'VN] Error while getting Ticker ${tickerId}`, e);
584
744
  return;
585
745
  }
586
746
  }
@@ -596,6 +756,9 @@ function asciiArtLog() {
596
756
  `);
597
757
  }
598
758
 
759
+ // src/types/ticker/TagToRemoveAfterType.ts
760
+ var tagToRemoveAfter = "tagToRemoveAfter";
761
+
599
762
  // src/managers/WindowManager.ts
600
763
  var _GameWindowManager = class _GameWindowManager {
601
764
  constructor() {
@@ -778,25 +941,25 @@ var _GameWindowManager = class _GameWindowManager {
778
941
  /**
779
942
  * Remove a canvas element from the canvas.
780
943
  * And remove all tickers that are not connected to any canvas element.
781
- * @param tag The tag of the canvas element to be removed.
944
+ * @param tags The tag of the canvas element to be removed.
782
945
  * @returns
783
946
  * @example
784
947
  * ```typescript
785
948
  * GameWindowManager.removeCanvasElement("bunny");
786
949
  * ```
787
950
  */
788
- static removeCanvasElement(tag) {
789
- if (typeof tag === "string") {
790
- tag = [tag];
951
+ static removeCanvasElement(tags) {
952
+ if (typeof tags === "string") {
953
+ tags = [tags];
791
954
  }
792
- tag.forEach((t) => {
793
- if (_GameWindowManager._children[t]) {
794
- _GameWindowManager.app.stage.removeChild(_GameWindowManager._children[t]);
795
- delete _GameWindowManager._children[t];
955
+ tags.forEach((tag) => {
956
+ if (_GameWindowManager._children[tag]) {
957
+ _GameWindowManager.app.stage.removeChild(_GameWindowManager._children[tag]);
958
+ delete _GameWindowManager._children[tag];
959
+ _GameWindowManager.removeTickerByCanvasElement(tag);
796
960
  }
797
961
  });
798
- _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
799
- _GameWindowManager.childrenTagsOrder = _GameWindowManager.childrenTagsOrder.filter((t) => !tag.includes(t));
962
+ _GameWindowManager.childrenTagsOrder = _GameWindowManager.childrenTagsOrder.filter((t) => !tags.includes(t));
800
963
  }
801
964
  /**
802
965
  * Get a canvas element by the tag.
@@ -826,18 +989,43 @@ var _GameWindowManager = class _GameWindowManager {
826
989
  _GameWindowManager.app.stage.removeChildren();
827
990
  _GameWindowManager._children = {};
828
991
  _GameWindowManager.childrenTagsOrder = [];
829
- _GameWindowManager.removeTickers();
992
+ _GameWindowManager.removeAllTickers();
830
993
  }
831
994
  /**
832
995
  * Edit the tag of a canvas element.
833
996
  * @param oldTag The old tag of the canvas element.
834
997
  * @param newTag The new tag of the canvas element.
835
998
  */
836
- static editTagCanvasElement(oldTag, newTag) {
999
+ static editCanvasElementTag(oldTag, newTag) {
837
1000
  if (_GameWindowManager._children[oldTag]) {
838
1001
  _GameWindowManager._children[newTag] = _GameWindowManager._children[oldTag];
839
1002
  delete _GameWindowManager._children[oldTag];
840
1003
  }
1004
+ if (_GameWindowManager._currentTickersSteps[oldTag]) {
1005
+ _GameWindowManager._currentTickersSteps[newTag] = _GameWindowManager._currentTickersSteps[oldTag];
1006
+ delete _GameWindowManager._currentTickersSteps[oldTag];
1007
+ }
1008
+ for (let id in _GameWindowManager._currentTickers) {
1009
+ let ticker = _GameWindowManager._currentTickers[id];
1010
+ if (ticker.canvasElementTags.includes(oldTag)) {
1011
+ ticker.canvasElementTags = ticker.canvasElementTags.map((t) => t === oldTag ? newTag : t);
1012
+ if (ticker.args.hasOwnProperty(tagToRemoveAfter)) {
1013
+ let tagToRemoveAfter2 = ticker.args.tagToRemoveAfter;
1014
+ if (typeof tagToRemoveAfter2 === "string") {
1015
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
1016
+ }
1017
+ if (Array.isArray(tagToRemoveAfter2)) {
1018
+ ticker.args.tagToRemoveAfter = tagToRemoveAfter2.map((t) => t === oldTag ? newTag : t);
1019
+ }
1020
+ }
1021
+ }
1022
+ }
1023
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1024
+ let TickerTimeout = _GameWindowManager._currentTickersTimeouts[timeout];
1025
+ if (TickerTimeout.tags.includes(oldTag)) {
1026
+ TickerTimeout.tags = TickerTimeout.tags.map((t) => t === oldTag ? newTag : t);
1027
+ }
1028
+ }
841
1029
  }
842
1030
  /** Edit Tickers Methods */
843
1031
  /**
@@ -846,106 +1034,127 @@ var _GameWindowManager = class _GameWindowManager {
846
1034
  static get currentTickers() {
847
1035
  return _GameWindowManager._currentTickers;
848
1036
  }
1037
+ static get currentTickersList() {
1038
+ return Object.values(_GameWindowManager._currentTickers);
1039
+ }
1040
+ static get currentTickersWithoutCreatedBySteps() {
1041
+ return Object.fromEntries(Object.entries(_GameWindowManager._currentTickers).filter(([_, ticker]) => !ticker.createdByTicketStepsId));
1042
+ }
849
1043
  /**
850
1044
  * The steps of the tickers
851
1045
  */
852
1046
  static get currentTickersSteps() {
853
1047
  return _GameWindowManager._currentTickersSteps;
854
1048
  }
1049
+ static generateTickerId(tickerData) {
1050
+ try {
1051
+ return sha1__default.default(JSON.stringify(tickerData)).toString() + "_" + Math.random().toString(36).substring(7);
1052
+ } catch (e) {
1053
+ throw new Error(`[Pixi'VN] Error to generate ticker id: ${e}`);
1054
+ }
1055
+ }
855
1056
  /**
856
- * Run a ticker.
1057
+ * Run a ticker. You can run multiple addTicker with the same tag and different tickerClasses.
1058
+ * If you run a ticker with the same tag and tickerClass, the old ticker will be removed.
1059
+ * If already exists a sequence of tickers with the same tag, it will be removed.
857
1060
  * @param canvasEslementTag The tag of the canvas element that will use the ticker.
858
1061
  * @param ticker The ticker class to be run.
859
1062
  * @param args The arguments to be used in the ticker.
860
- * @param duration The time to be used in the ticker. This number is in milliseconds. If it is undefined, the ticker will run forever.
1063
+ * @param duration The time to be used in the ticker. This number is in seconds. If it is undefined, the ticker will run forever.
861
1064
  * @param priority The priority to be used in the ticker.
862
1065
  * @returns
863
1066
  * @example
864
1067
  * ```typescript
865
- * GameWindowManager.addTicker("alien", new TickerRotate({ speed: 0.2 }))
1068
+ * GameWindowManager.addTicker("alien", new RotateTicker({ speed: 0.2 }))
866
1069
  * ```
867
1070
  */
868
1071
  static addTicker(canvasElementTag, ticker) {
869
- let tickerName = ticker.constructor.name;
1072
+ let tickerId = ticker.id;
870
1073
  if (typeof canvasElementTag === "string") {
871
1074
  canvasElementTag = [canvasElementTag];
872
1075
  }
873
- let t = geTickerInstanceByClassName(tickerName, ticker.args, ticker.duration, ticker.priority);
874
- if (!t) {
875
- console.error(`[Pixi'VN] Ticker ${tickerName} not found`);
1076
+ if (!geTickerInstanceById(tickerId, ticker.args, ticker.duration, ticker.priority)) {
1077
+ console.error(`[Pixi'VN] Ticker ${tickerId} not found`);
876
1078
  return;
877
1079
  }
878
- _GameWindowManager.removeAssociationBetweenTickerCanvasElement(canvasElementTag, ticker);
879
1080
  let tickerHistory = {
880
1081
  fn: () => {
881
1082
  },
882
- className: tickerName,
883
- args: ticker.args,
1083
+ id: tickerId,
1084
+ args: createExportableElement(ticker.args),
884
1085
  canvasElementTags: canvasElementTag,
885
1086
  priority: ticker.priority,
886
1087
  duration: ticker.duration
887
1088
  };
888
- _GameWindowManager.pushTicker(tickerHistory, t);
889
- _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
1089
+ let id = _GameWindowManager.generateTickerId(tickerHistory);
1090
+ _GameWindowManager.pushTicker(id, tickerHistory, ticker);
890
1091
  if (ticker.duration) {
891
1092
  let timeout = setTimeout(() => {
892
1093
  _GameWindowManager.removeTickerTimeoutInfo(timeout);
893
- _GameWindowManager.nextTickerStep(canvasElementTag);
894
- }, ticker.duration);
895
- _GameWindowManager.addTickerTimeoutInfo(canvasElementTag, tickerName, timeout.toString());
1094
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
1095
+ if (tickerTimeoutInfo) {
1096
+ _GameWindowManager.removeTicker(id);
1097
+ }
1098
+ }, ticker.duration * 1e3);
1099
+ _GameWindowManager.addTickerTimeoutInfo(canvasElementTag, tickerId, timeout.toString(), true);
896
1100
  }
897
1101
  }
898
- static pushTicker(tickerData, ticker) {
899
- _GameWindowManager.removeAssociationBetweenTickerCanvasElement(tickerData.canvasElementTags, tickerData);
900
- _GameWindowManager._currentTickers.push(tickerData);
1102
+ static pushTicker(id, tickerData, ticker) {
1103
+ _GameWindowManager.removeAssociationBetweenTickerCanvasElement(tickerData.canvasElementTags, ticker);
1104
+ _GameWindowManager._currentTickers[id] = tickerData;
901
1105
  tickerData.fn = (t) => {
902
- ticker == null ? void 0 : ticker.fn(t, tickerData.args, tickerData.canvasElementTags);
1106
+ let data = _GameWindowManager._currentTickers[id];
1107
+ if (data) {
1108
+ ticker == null ? void 0 : ticker.fn(t, data.args, data.canvasElementTags, id);
1109
+ }
903
1110
  };
904
1111
  _GameWindowManager.app.ticker.add(tickerData.fn, void 0, tickerData.priority);
905
1112
  }
906
1113
  /**
907
- * Run a sequence of tickers.
1114
+ * Run a sequence of tickers. If exists a ticker steps with the same tag, it will be removed.
908
1115
  * @param tag The tag of canvas element that will use the tickers.
909
1116
  * @param steps The steps of the tickers.
1117
+ * @param currentStepNumber The current step number. It is used to continue the sequence of tickers.
910
1118
  * @returns
911
1119
  * @example
912
1120
  * ```typescript
913
1121
  * GameWindowManager.addTickersSteps("alien", [
914
- * new TickerRotate({ speed: 0.1, clockwise: true }, 2000),
915
- * Pause(500),
916
- * new TickerRotate({ speed: 0.2, clockwise: false }, 2000),
1122
+ * new RotateTicker({ speed: 0.1, clockwise: true }, 2), // 2 seconds
1123
+ * Pause(1), // 1 second
1124
+ * new RotateTicker({ speed: 0.2, clockwise: false }, 2),
917
1125
  * Repeat,
918
1126
  * ])
919
1127
  * ```
920
1128
  */
921
- static addTickersSteps(tag, steps) {
1129
+ static addTickersSteps(tag, steps, currentStepNumber = 0) {
922
1130
  if (steps.length == 0) {
923
1131
  console.warn("[Pixi'VN] The steps of the tickers is empty");
924
1132
  return;
925
1133
  }
926
- let alredyExists = _GameWindowManager._currentTickersSteps[tag] !== void 0;
1134
+ _GameWindowManager.removeTickerStepByCanvasElement(tag);
927
1135
  _GameWindowManager._currentTickersSteps[tag] = {
928
- currentStepNumber: 0,
929
- steps: steps.map((s) => {
930
- if (s === Repeat) {
931
- return s;
1136
+ currentStepNumber,
1137
+ steps: steps.map((step) => {
1138
+ if (step === Repeat) {
1139
+ return step;
932
1140
  }
933
- if (!s.duration) {
934
- console.warn("[Pixi'VN] Duration is not defined, so it will be set to 1000");
935
- s.duration = 1e3;
1141
+ if (step.hasOwnProperty("type") && step.type === "pause") {
1142
+ return step;
936
1143
  }
937
- if (s.hasOwnProperty("type") && s.type === PauseValueType) {
938
- return s;
939
- }
940
- let tickerName = s.constructor.name;
1144
+ let tickerId = step.id;
941
1145
  return {
942
- ticker: tickerName,
943
- args: s.args,
944
- duration: s.duration
1146
+ ticker: tickerId,
1147
+ args: createExportableElement(step.args),
1148
+ duration: step.duration
945
1149
  };
946
1150
  })
947
1151
  };
948
- if (!alredyExists) {
1152
+ _GameWindowManager.runTickersSteps(tag);
1153
+ }
1154
+ static restoneTickersSteps(data) {
1155
+ for (let tag in data) {
1156
+ let steps = data[tag];
1157
+ _GameWindowManager._currentTickersSteps[tag] = steps;
949
1158
  _GameWindowManager.runTickersSteps(tag);
950
1159
  }
951
1160
  }
@@ -959,70 +1168,106 @@ var _GameWindowManager = class _GameWindowManager {
959
1168
  return;
960
1169
  }
961
1170
  }
962
- if (step.hasOwnProperty("type") && step.type === PauseValueType) {
1171
+ if (step.hasOwnProperty("type") && step.type === "pause") {
963
1172
  let timeout = setTimeout(() => {
1173
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
1174
+ if (tickerTimeoutInfo) {
1175
+ tickerTimeoutInfo.tags.forEach((tag2) => {
1176
+ _GameWindowManager.nextTickerStep(tag2);
1177
+ });
1178
+ }
964
1179
  _GameWindowManager.removeTickerTimeoutInfo(timeout);
965
- _GameWindowManager.nextTickerStep(tag);
966
- }, step.duration);
967
- _GameWindowManager.addTickerTimeoutInfo(tag, "steps", timeout.toString());
1180
+ }, step.duration * 1e3);
1181
+ _GameWindowManager.addTickerTimeoutInfo(tag, "steps", timeout.toString(), false);
968
1182
  return;
969
1183
  }
970
- let ticker = geTickerInstanceByClassName(step.ticker, step.args, step.duration, step.priority);
1184
+ let ticker = geTickerInstanceById(step.ticker, step.args, step.duration, step.priority);
971
1185
  if (!ticker) {
972
1186
  console.error(`[Pixi'VN] Ticker ${step.ticker} not found`);
973
1187
  return;
974
1188
  }
975
- _GameWindowManager.addTicker(tag, ticker);
1189
+ let tickerName = ticker.id;
1190
+ let tickerHistory = {
1191
+ fn: () => {
1192
+ },
1193
+ id: tickerName,
1194
+ args: createExportableElement(ticker.args),
1195
+ canvasElementTags: [tag],
1196
+ priority: ticker.priority,
1197
+ duration: ticker.duration,
1198
+ createdByTicketStepsId: tag
1199
+ };
1200
+ let id = _GameWindowManager.generateTickerId(tickerHistory);
1201
+ _GameWindowManager.pushTicker(id, tickerHistory, ticker);
1202
+ if (ticker.duration) {
1203
+ let timeout = setTimeout(() => {
1204
+ let tickerTimeoutInfo = _GameWindowManager._currentTickersTimeouts[timeout.toString()];
1205
+ if (tickerTimeoutInfo) {
1206
+ _GameWindowManager.removeTicker(id);
1207
+ tickerTimeoutInfo.tags.forEach((tag2) => {
1208
+ _GameWindowManager.nextTickerStep(tag2);
1209
+ });
1210
+ }
1211
+ _GameWindowManager.removeTickerTimeoutInfo(timeout);
1212
+ }, ticker.duration * 1e3);
1213
+ _GameWindowManager.addTickerTimeoutInfo(tag, tickerName, timeout.toString(), false);
1214
+ }
976
1215
  }
977
1216
  static nextTickerStep(tag) {
978
- if (typeof tag === "string") {
979
- tag = [tag];
1217
+ if (_GameWindowManager._currentTickersSteps[tag]) {
1218
+ let steps = _GameWindowManager._currentTickersSteps[tag];
1219
+ if (steps.currentStepNumber + 1 < steps.steps.length) {
1220
+ steps.currentStepNumber++;
1221
+ _GameWindowManager._currentTickersSteps[tag] = steps;
1222
+ _GameWindowManager.runTickersSteps(tag);
1223
+ } else {
1224
+ _GameWindowManager.removeTickerStepByCanvasElement(tag);
1225
+ }
980
1226
  }
981
- tag.forEach((tag2) => {
982
- if (_GameWindowManager._currentTickersSteps[tag2]) {
983
- let steps = _GameWindowManager._currentTickersSteps[tag2];
984
- if (steps.currentStepNumber + 1 < steps.steps.length) {
985
- steps.currentStepNumber++;
986
- _GameWindowManager._currentTickersSteps[tag2] = steps;
987
- _GameWindowManager.runTickersSteps(tag2);
988
- } else {
989
- delete _GameWindowManager._currentTickersSteps[tag2];
990
- }
1227
+ }
1228
+ static onEndOfTicker(canvasElementTags, ticker, canvasElementTagsToDelete, tickerId) {
1229
+ let tickerData = _GameWindowManager._currentTickers[tickerId];
1230
+ _GameWindowManager.removeAssociationBetweenTickerCanvasElement(canvasElementTags, ticker);
1231
+ _GameWindowManager.removeCanvasElement(canvasElementTagsToDelete);
1232
+ if (tickerData) {
1233
+ _GameWindowManager.removeTicker(tickerId);
1234
+ if (tickerData.duration == void 0 && tickerData.createdByTicketStepsId) {
1235
+ _GameWindowManager.nextTickerStep(tickerData.createdByTicketStepsId);
991
1236
  }
992
- });
1237
+ }
993
1238
  }
994
1239
  /**
995
1240
  * Remove a connection between a canvas element and a ticker.
996
1241
  * And remove the ticker if there is no canvas element connected to it.
997
- * @param tag The tag of the canvas element that will use the ticker.
1242
+ * @param tags The tag of the canvas element that will use the ticker.
998
1243
  * @param ticker The ticker class to be removed.
999
1244
  * @example
1000
1245
  * ```typescript
1001
- * GameWindowManager.removeAssociationBetweenTickerCanvasElement("alien", TickerRotate)
1246
+ * GameWindowManager.removeAssociationBetweenTickerCanvasElement("alien", RotateTicker)
1002
1247
  * ```
1003
1248
  */
1004
- static removeAssociationBetweenTickerCanvasElement(tag, ticker) {
1005
- let tickerName;
1006
- if (ticker instanceof TickerBase) {
1007
- tickerName = ticker.constructor.name;
1249
+ static removeAssociationBetweenTickerCanvasElement(tags, ticker) {
1250
+ let tickerId;
1251
+ if (typeof ticker === "string") {
1252
+ tickerId = ticker;
1253
+ } else if (ticker instanceof TickerBase) {
1254
+ tickerId = ticker.id;
1008
1255
  } else {
1009
- tickerName = ticker.name;
1256
+ tickerId = ticker.prototype.id;
1010
1257
  }
1011
- if (typeof tag === "string") {
1012
- tag = [tag];
1258
+ if (typeof tags === "string") {
1259
+ tags = [tags];
1013
1260
  }
1014
- _GameWindowManager._currentTickers = _GameWindowManager._currentTickers.map((t) => {
1015
- if (t.className === tickerName) {
1016
- t.canvasElementTags = t.canvasElementTags.filter((e) => !tag.includes(e));
1261
+ for (let id in _GameWindowManager._currentTickers) {
1262
+ let ticker2 = _GameWindowManager._currentTickers[id];
1263
+ if (ticker2.id === tickerId) {
1264
+ _GameWindowManager._currentTickers[id].canvasElementTags = ticker2.canvasElementTags.filter((e) => !tags.includes(e));
1017
1265
  }
1018
- return t;
1019
- });
1020
- for (let timeout in _GameWindowManager.currentTickersTimeouts) {
1021
- let t = _GameWindowManager.currentTickersTimeouts[timeout].tags.filter((e) => !tag.includes(e));
1022
- if (t.length == 0) {
1023
- _GameWindowManager.removeTickerTimeoutInfo(timeout);
1024
- } else {
1025
- _GameWindowManager.currentTickersTimeouts[timeout].tags = t;
1266
+ }
1267
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1268
+ let TickerTimeout = _GameWindowManager._currentTickersTimeouts[timeout];
1269
+ if (TickerTimeout.ticker === tickerId && TickerTimeout.canBeDeletedBeforeEnd) {
1270
+ _GameWindowManager._currentTickersTimeouts[timeout].tags = TickerTimeout.tags.filter((t) => !tags.includes(t));
1026
1271
  }
1027
1272
  }
1028
1273
  _GameWindowManager.removeTickersWithoutAssociatedCanvasElement();
@@ -1031,49 +1276,117 @@ var _GameWindowManager = class _GameWindowManager {
1031
1276
  * Remove all tickers that are not connected to any existing canvas element.
1032
1277
  */
1033
1278
  static removeTickersWithoutAssociatedCanvasElement() {
1034
- let currentTickers = _GameWindowManager._currentTickers.map((t) => {
1035
- t.canvasElementTags = t.canvasElementTags.filter((e) => _GameWindowManager._children[e]);
1036
- return t;
1037
- });
1038
- currentTickers.filter((t) => t.canvasElementTags.length === 0).forEach((t) => {
1039
- _GameWindowManager.app.ticker.remove(t.fn);
1040
- });
1041
- currentTickers = currentTickers.filter((t) => t.canvasElementTags.length > 0);
1042
- _GameWindowManager._currentTickers = currentTickers;
1279
+ for (let id in _GameWindowManager._currentTickers) {
1280
+ let ticker = _GameWindowManager._currentTickers[id];
1281
+ ticker.canvasElementTags = ticker.canvasElementTags.filter((e) => _GameWindowManager._children[e]);
1282
+ if (ticker.canvasElementTags.length === 0) {
1283
+ _GameWindowManager.removeTicker(id);
1284
+ }
1285
+ }
1043
1286
  for (let tag in _GameWindowManager._currentTickersSteps) {
1044
1287
  if (_GameWindowManager._children[tag] === void 0) {
1045
1288
  delete _GameWindowManager._currentTickersSteps[tag];
1046
1289
  }
1047
1290
  }
1291
+ Object.entries(_GameWindowManager._currentTickersTimeouts).forEach(([timeout, { tags }]) => {
1292
+ if (tags.length === 0) {
1293
+ _GameWindowManager.removeTickerTimeout(timeout);
1294
+ }
1295
+ });
1048
1296
  }
1049
- static addTickerTimeoutInfo(tags, ticker, timeout) {
1297
+ static addTickerTimeoutInfo(tags, ticker, timeout, canBeDeletedBeforeEnd) {
1050
1298
  if (typeof tags === "string") {
1051
1299
  tags = [tags];
1052
1300
  }
1053
- _GameWindowManager.currentTickersTimeouts[timeout] = {
1301
+ _GameWindowManager._currentTickersTimeouts[timeout] = {
1054
1302
  tags,
1055
- ticker
1303
+ ticker,
1304
+ canBeDeletedBeforeEnd
1056
1305
  };
1057
1306
  }
1058
1307
  static removeTickerTimeoutInfo(timeout) {
1059
1308
  if (typeof timeout !== "string") {
1060
1309
  timeout = timeout.toString();
1061
1310
  }
1062
- if (_GameWindowManager.currentTickersTimeouts[timeout]) {
1063
- delete _GameWindowManager.currentTickersTimeouts[timeout];
1311
+ if (_GameWindowManager._currentTickersTimeouts[timeout]) {
1312
+ delete _GameWindowManager._currentTickersTimeouts[timeout];
1313
+ }
1314
+ }
1315
+ static removeTickerTimeout(timeout) {
1316
+ if (typeof timeout !== "string") {
1317
+ timeout = timeout.toString();
1318
+ }
1319
+ clearTimeout(Number(timeout));
1320
+ _GameWindowManager.removeTickerTimeoutInfo(timeout);
1321
+ }
1322
+ static removeTickerTimeoutsByTag(tag, checkCanBeDeletedBeforeEnd) {
1323
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1324
+ let tagsWithoutTagToRemove = _GameWindowManager._currentTickersTimeouts[timeout].tags.filter((t) => t !== tag);
1325
+ if (tagsWithoutTagToRemove.length === 0) {
1326
+ let canBeDeletedBeforeEnd = _GameWindowManager._currentTickersTimeouts[timeout].canBeDeletedBeforeEnd;
1327
+ if (!checkCanBeDeletedBeforeEnd || canBeDeletedBeforeEnd) {
1328
+ _GameWindowManager.removeTickerTimeout(timeout);
1329
+ }
1330
+ } else {
1331
+ _GameWindowManager._currentTickersTimeouts[timeout].tags = tagsWithoutTagToRemove;
1332
+ }
1064
1333
  }
1065
1334
  }
1066
1335
  /**
1067
1336
  * Remove all tickers from the canvas.
1068
1337
  */
1069
- static removeTickers() {
1338
+ static removeAllTickers() {
1070
1339
  _GameWindowManager._currentTickersSteps = {};
1071
- _GameWindowManager._currentTickers.forEach((t) => {
1072
- _GameWindowManager.app.ticker.remove(t.fn);
1340
+ Object.keys(_GameWindowManager._currentTickers).forEach((id) => {
1341
+ _GameWindowManager.removeTicker(id);
1073
1342
  });
1074
- _GameWindowManager._currentTickers = [];
1075
- for (let timeout in _GameWindowManager.currentTickersTimeouts) {
1076
- _GameWindowManager.removeTickerTimeoutInfo(timeout);
1343
+ _GameWindowManager._currentTickers = {};
1344
+ for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1345
+ _GameWindowManager.removeTickerTimeout(timeout);
1346
+ }
1347
+ }
1348
+ /**
1349
+ * Remove all tickers from a canvas element.
1350
+ * @param tag The tag of the canvas element that will use the ticker.
1351
+ */
1352
+ static removeTickerByCanvasElement(tag) {
1353
+ if (typeof tag === "string") {
1354
+ tag = [tag];
1355
+ }
1356
+ tag.forEach((tag2) => {
1357
+ for (let id in _GameWindowManager._currentTickers) {
1358
+ let ticker = _GameWindowManager._currentTickers[id];
1359
+ if (ticker.canvasElementTags.includes(tag2)) {
1360
+ _GameWindowManager.removeTicker(id);
1361
+ }
1362
+ }
1363
+ if (_GameWindowManager._currentTickersSteps[tag2]) {
1364
+ delete _GameWindowManager._currentTickersSteps[tag2];
1365
+ }
1366
+ _GameWindowManager.removeTickerTimeoutsByTag(tag2, false);
1367
+ delete _GameWindowManager._currentTickersSteps[tag2];
1368
+ });
1369
+ }
1370
+ static removeTickerStepByCanvasElement(tag) {
1371
+ if (_GameWindowManager._currentTickersSteps[tag]) {
1372
+ delete _GameWindowManager._currentTickersSteps[tag];
1373
+ }
1374
+ for (let id in _GameWindowManager._currentTickers) {
1375
+ let ticker = _GameWindowManager._currentTickers[id];
1376
+ if (ticker.createdByTicketStepsId === tag) {
1377
+ _GameWindowManager.removeTicker(id);
1378
+ }
1379
+ }
1380
+ }
1381
+ static removeTicker(tickerId) {
1382
+ let ticker = _GameWindowManager._currentTickers[tickerId];
1383
+ if (ticker) {
1384
+ if (ticker.args.hasOwnProperty(tagToRemoveAfter)) {
1385
+ let tagToRemoveAfter2 = ticker.args.tagToRemoveAfter;
1386
+ _GameWindowManager.removeCanvasElement(tagToRemoveAfter2);
1387
+ }
1388
+ _GameWindowManager.app.ticker.remove(ticker.fn);
1389
+ delete _GameWindowManager._currentTickers[tickerId];
1077
1390
  }
1078
1391
  }
1079
1392
  /**
@@ -1100,7 +1413,8 @@ var _GameWindowManager = class _GameWindowManager {
1100
1413
  currentElements[tag] = exportCanvasElement(_GameWindowManager._children[tag]);
1101
1414
  }
1102
1415
  return {
1103
- currentTickers: createExportableElement(_GameWindowManager._currentTickers),
1416
+ currentTickers: createExportableElement(_GameWindowManager.currentTickersWithoutCreatedBySteps),
1417
+ currentTickersSteps: createExportableElement(_GameWindowManager._currentTickersSteps),
1104
1418
  currentElements: createExportableElement(currentElements),
1105
1419
  childrenTagsOrder: createExportableElement(_GameWindowManager.childrenTagsOrder)
1106
1420
  };
@@ -1135,15 +1449,20 @@ var _GameWindowManager = class _GameWindowManager {
1135
1449
  }
1136
1450
  if (data.hasOwnProperty("currentTickers")) {
1137
1451
  let currentTickers = data["currentTickers"];
1138
- currentTickers.forEach((t) => {
1452
+ for (let id in currentTickers) {
1453
+ let t = currentTickers[id];
1139
1454
  let tags = t.canvasElementTags;
1140
- let ticker = geTickerInstanceByClassName(t.className, t.args, t.duration, t.priority);
1455
+ let ticker = geTickerInstanceById(t.id, t.args, t.duration, t.priority);
1141
1456
  if (ticker) {
1142
1457
  _GameWindowManager.addTicker(tags, ticker);
1143
1458
  } else {
1144
- console.error(`[Pixi'VN] Ticker ${t.className} not found`);
1459
+ console.error(`[Pixi'VN] Ticker ${t.id} not found`);
1145
1460
  }
1146
- });
1461
+ }
1462
+ }
1463
+ if (data.hasOwnProperty("currentTickersSteps")) {
1464
+ let currentTickersSteps = data["currentTickersSteps"];
1465
+ _GameWindowManager.restoneTickersSteps(currentTickersSteps);
1147
1466
  }
1148
1467
  } catch (e) {
1149
1468
  console.error("[Pixi'VN] Error importing data", e);
@@ -1157,26 +1476,21 @@ _GameWindowManager._children = {};
1157
1476
  * The order of the children tags.
1158
1477
  */
1159
1478
  _GameWindowManager.childrenTagsOrder = [];
1160
- _GameWindowManager._currentTickers = [];
1479
+ _GameWindowManager._currentTickers = {};
1161
1480
  _GameWindowManager._currentTickersSteps = {};
1162
- _GameWindowManager.currentTickersTimeouts = {};
1481
+ _GameWindowManager._currentTickersTimeouts = {};
1163
1482
  var GameWindowManager = _GameWindowManager;
1164
1483
 
1165
- // src/classes/ticker/TickerFadeAlpha.ts
1166
- exports.TickerFadeAlpha = class TickerFadeAlpha extends TickerBase {
1167
- /**
1168
- * The method that will be called every frame to fade the alpha of the canvas element of the canvas.
1169
- * @param delta The delta time
1170
- * @param args The arguments that are passed to the ticker
1171
- * @param tags The tags of the canvas element that are connected to this ticker
1172
- */
1173
- fn(t, args, tags) {
1484
+ // src/classes/ticker/FadeAlphaTicker.ts
1485
+ exports.FadeAlphaTicker = class FadeAlphaTicker extends TickerBase {
1486
+ fn(ticker, args, tags, tickerId) {
1174
1487
  let type = args.type === void 0 ? "hide" : args.type;
1175
- let speed = args.speed === void 0 ? 0.1 : args.speed;
1488
+ let duration = args.duration === void 0 ? 1 : args.duration;
1489
+ let speed = 1 / (duration * 60);
1176
1490
  let limit = args.limit === void 0 ? type === "hide" ? 0 : 1 : args.limit;
1177
- let removeElementAfter = args.tagToRemoveAfter || [];
1178
- if (typeof removeElementAfter === "string") {
1179
- removeElementAfter = [removeElementAfter];
1491
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
1492
+ if (typeof tagToRemoveAfter2 === "string") {
1493
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
1180
1494
  }
1181
1495
  if (type === "hide" && limit < 0) {
1182
1496
  limit = 0;
@@ -1197,61 +1511,44 @@ exports.TickerFadeAlpha = class TickerFadeAlpha extends TickerBase {
1197
1511
  let element = GameWindowManager.getCanvasElement(tag);
1198
1512
  if (element && element instanceof pixi_js.Container) {
1199
1513
  if (type === "show" && element.alpha < limit) {
1200
- element.alpha += speed * t.deltaTime;
1514
+ element.alpha += speed * ticker.deltaTime;
1201
1515
  } else if (type === "hide" && element.alpha > limit) {
1202
- element.alpha -= speed * t.deltaTime;
1203
- } else {
1516
+ element.alpha -= speed * ticker.deltaTime;
1517
+ }
1518
+ if (type === "show" && element.alpha >= limit) {
1204
1519
  element.alpha = limit;
1205
- GameWindowManager.removeAssociationBetweenTickerCanvasElement(tag, this);
1206
- GameWindowManager.removeCanvasElement(removeElementAfter);
1520
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1521
+ } else if (type === "hide" && element.alpha <= limit) {
1522
+ element.alpha = limit;
1523
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1207
1524
  }
1208
1525
  }
1209
1526
  });
1210
1527
  }
1211
1528
  };
1212
- exports.TickerFadeAlpha = __decorateClass([
1529
+ exports.FadeAlphaTicker = __decorateClass([
1213
1530
  tickerDecorator()
1214
- ], exports.TickerFadeAlpha);
1215
-
1216
- // src/functions/TickerUtility.ts
1217
- function updateTickerProgression(args, propertyName, progression) {
1218
- if (args.hasOwnProperty(propertyName) && typeof args[propertyName] !== "number") {
1219
- return;
1220
- }
1221
- if (args[propertyName] !== void 0 && progression && args[propertyName] !== progression.limit) {
1222
- if (progression.type === "linear") {
1223
- args[propertyName] += progression.amt;
1224
- if (progression.limit !== void 0) {
1225
- if (args[propertyName] > progression.limit && progression.amt > 0) {
1226
- args[propertyName] = progression.limit;
1227
- } else if (args[propertyName] < progression.limit && progression.amt < 0) {
1228
- args[propertyName] = progression.limit;
1229
- }
1230
- }
1231
- } else if (progression.type === "exponential") {
1232
- args[propertyName] += args[propertyName] * progression.percentage;
1233
- if (progression.limit !== void 0) {
1234
- if (args[propertyName] > progression.limit && progression.percentage > 0) {
1235
- args[propertyName] = progression.limit;
1236
- } else if (args[propertyName] < progression.limit && progression.percentage < 0) {
1237
- args[propertyName] = progression.limit;
1238
- }
1531
+ ], exports.FadeAlphaTicker);
1532
+ exports.MoveTicker = class MoveTicker extends TickerBase {
1533
+ fn(ticker, args, tags, tickerId) {
1534
+ let xSpeed = 1;
1535
+ let ySpeed = 1;
1536
+ if (args.speed) {
1537
+ if (typeof args.speed === "number") {
1538
+ xSpeed = args.speed;
1539
+ ySpeed = args.speed;
1540
+ } else {
1541
+ xSpeed = args.speed.x;
1542
+ ySpeed = args.speed.y;
1239
1543
  }
1240
1544
  }
1241
- }
1242
- }
1243
-
1244
- // src/classes/ticker/TickerMove.ts
1245
- exports.TickerMove = class TickerMove extends TickerBase {
1246
- /**
1247
- * The method that will be called every frame to move the canvas element of the canvas.
1248
- * @param t The ticker that is calling this method
1249
- * @param args The arguments that are passed to the ticker
1250
- * @param tags The tags of the canvas element that are connected to this ticker
1251
- */
1252
- fn(t, args, tags) {
1253
- let speed = args.speed === void 0 ? 0.1 : args.speed;
1545
+ xSpeed /= 60;
1546
+ ySpeed /= 60;
1254
1547
  let destination = args.destination;
1548
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
1549
+ if (typeof tagToRemoveAfter2 === "string") {
1550
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
1551
+ }
1255
1552
  tags.filter((tag) => {
1256
1553
  var _a;
1257
1554
  let element = GameWindowManager.getCanvasElement(tag);
@@ -1264,41 +1561,42 @@ exports.TickerMove = class TickerMove extends TickerBase {
1264
1561
  }).forEach((tag) => {
1265
1562
  let element = GameWindowManager.getCanvasElement(tag);
1266
1563
  if (element && element instanceof pixi_js.Container) {
1267
- let xDistance = destination.x - element.x;
1564
+ let xDistance = destination.x - element.x > 0 ? 1 : -1;
1268
1565
  if (xDistance != 0) {
1269
- element.x += xDistance / speed * t.deltaTime;
1566
+ element.x += xDistance * xSpeed * ticker.deltaTime;
1270
1567
  let newDistance = destination.x - element.x;
1271
1568
  if (xDistance < 0 && newDistance > 0 || xDistance > 0 && newDistance < 0) {
1272
1569
  element.x = destination.x;
1273
1570
  }
1274
1571
  }
1275
- let yDistance = destination.y - element.y;
1572
+ let yDistance = destination.y - element.y > 0 ? 1 : -1;
1276
1573
  if (yDistance != 0) {
1277
- element.y += yDistance / speed * t.deltaTime;
1574
+ element.y += yDistance * ySpeed * ticker.deltaTime;
1278
1575
  let newDistance = destination.y - element.y;
1279
1576
  if (yDistance < 0 && newDistance > 0 || yDistance > 0 && newDistance < 0) {
1280
1577
  element.y = destination.y;
1281
1578
  }
1282
1579
  }
1580
+ if (element.x == destination.x && element.y == destination.y) {
1581
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1582
+ }
1283
1583
  }
1284
1584
  });
1285
1585
  if (args.speedProgression)
1286
1586
  updateTickerProgression(args, "speed", args.speedProgression);
1287
1587
  }
1288
1588
  };
1289
- exports.TickerMove = __decorateClass([
1589
+ exports.MoveTicker = __decorateClass([
1290
1590
  tickerDecorator()
1291
- ], exports.TickerMove);
1292
- exports.TickerRotate = class TickerRotate extends TickerBase {
1293
- /**
1294
- * The method that will be called every frame to rotate the canvas element of the canvas.
1295
- * @param delta The delta time
1296
- * @param args The arguments that are passed to the ticker
1297
- * @param tags The tags of the canvas element that are connected to this ticker
1298
- */
1299
- fn(t, args, tags) {
1300
- let speed = args.speed === void 0 ? 0.1 : args.speed;
1591
+ ], exports.MoveTicker);
1592
+ exports.RotateTicker = class RotateTicker extends TickerBase {
1593
+ fn(ticker, args, tags, tickerId) {
1594
+ let speed = (args.speed === void 0 ? 1 : args.speed) / 60;
1301
1595
  let clockwise = args.clockwise === void 0 ? true : args.clockwise;
1596
+ let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
1597
+ if (typeof tagToRemoveAfter2 === "string") {
1598
+ tagToRemoveAfter2 = [tagToRemoveAfter2];
1599
+ }
1302
1600
  tags.filter((tag) => {
1303
1601
  var _a;
1304
1602
  let element = GameWindowManager.getCanvasElement(tag);
@@ -1312,18 +1610,21 @@ exports.TickerRotate = class TickerRotate extends TickerBase {
1312
1610
  let element = GameWindowManager.getCanvasElement(tag);
1313
1611
  if (element && element instanceof pixi_js.Container) {
1314
1612
  if (clockwise)
1315
- element.rotation += speed * t.deltaTime;
1613
+ element.rotation += speed * ticker.deltaTime;
1316
1614
  else
1317
- element.rotation -= speed * t.deltaTime;
1615
+ element.rotation -= speed * ticker.deltaTime;
1616
+ if (speed < 1e-5 && !(args.speedProgression && args.speedProgression.type == "linear" && args.speedProgression.amt != 0)) {
1617
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1618
+ }
1318
1619
  }
1319
1620
  });
1320
1621
  if (args.speedProgression)
1321
1622
  updateTickerProgression(args, "speed", args.speedProgression);
1322
1623
  }
1323
1624
  };
1324
- exports.TickerRotate = __decorateClass([
1625
+ exports.RotateTicker = __decorateClass([
1325
1626
  tickerDecorator()
1326
- ], exports.TickerRotate);
1627
+ ], exports.RotateTicker);
1327
1628
 
1328
1629
  exports.TickerBase = TickerBase;
1329
1630
  //# sourceMappingURL=out.js.map