@drincs/pixi-vn 0.6.1 → 0.6.3

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 (505) hide show
  1. package/dist/{TickerBase-BAUiHet_.d.ts → TickerBase-3rLpDpmb.d.ts} +9 -0
  2. package/dist/{TickerBase-BctFf13y.d.mts → TickerBase-DKYzbzro.d.mts} +9 -0
  3. package/dist/classes/CanvasEvent.d.mts +6 -0
  4. package/dist/classes/CanvasEvent.d.ts +6 -0
  5. package/dist/classes/CanvasEvent.js +8 -1
  6. package/dist/classes/CanvasEvent.js.map +1 -1
  7. package/dist/classes/CanvasEvent.mjs +8 -1
  8. package/dist/classes/CanvasEvent.mjs.map +1 -1
  9. package/dist/classes/CharacterBaseModel.js +105 -77
  10. package/dist/classes/CharacterBaseModel.js.map +1 -1
  11. package/dist/classes/CharacterBaseModel.mjs +105 -77
  12. package/dist/classes/CharacterBaseModel.mjs.map +1 -1
  13. package/dist/classes/ChoiceMenuOption.js +106 -78
  14. package/dist/classes/ChoiceMenuOption.js.map +1 -1
  15. package/dist/classes/ChoiceMenuOption.mjs +106 -78
  16. package/dist/classes/ChoiceMenuOption.mjs.map +1 -1
  17. package/dist/classes/CloseLabel.js +2 -2
  18. package/dist/classes/CloseLabel.js.map +1 -1
  19. package/dist/classes/CloseLabel.mjs +2 -2
  20. package/dist/classes/CloseLabel.mjs.map +1 -1
  21. package/dist/classes/DialogueBaseModel.d.mts +2 -2
  22. package/dist/classes/DialogueBaseModel.d.ts +2 -2
  23. package/dist/classes/DialogueBaseModel.js +6 -6
  24. package/dist/classes/DialogueBaseModel.js.map +1 -1
  25. package/dist/classes/DialogueBaseModel.mjs +6 -6
  26. package/dist/classes/DialogueBaseModel.mjs.map +1 -1
  27. package/dist/classes/Label.d.mts +1 -1
  28. package/dist/classes/Label.d.ts +1 -1
  29. package/dist/classes/Label.js +2 -2
  30. package/dist/classes/Label.js.map +1 -1
  31. package/dist/classes/Label.mjs +2 -2
  32. package/dist/classes/Label.mjs.map +1 -1
  33. package/dist/classes/StoredClassModel.js +105 -77
  34. package/dist/classes/StoredClassModel.js.map +1 -1
  35. package/dist/classes/StoredClassModel.mjs +105 -77
  36. package/dist/classes/StoredClassModel.mjs.map +1 -1
  37. package/dist/classes/canvas/CanvasBase.d.mts +5 -1
  38. package/dist/classes/canvas/CanvasBase.d.ts +5 -1
  39. package/dist/classes/canvas/CanvasBase.js +8 -1
  40. package/dist/classes/canvas/CanvasBase.js.map +1 -1
  41. package/dist/classes/canvas/CanvasBase.mjs +8 -1
  42. package/dist/classes/canvas/CanvasBase.mjs.map +1 -1
  43. package/dist/classes/canvas/CanvasContainer.d.mts +4 -1
  44. package/dist/classes/canvas/CanvasContainer.d.ts +4 -1
  45. package/dist/classes/canvas/CanvasContainer.js +67 -47
  46. package/dist/classes/canvas/CanvasContainer.js.map +1 -1
  47. package/dist/classes/canvas/CanvasContainer.mjs +67 -48
  48. package/dist/classes/canvas/CanvasContainer.mjs.map +1 -1
  49. package/dist/classes/canvas/CanvasImage.d.mts +4 -2
  50. package/dist/classes/canvas/CanvasImage.d.ts +4 -2
  51. package/dist/classes/canvas/CanvasImage.js +34 -23
  52. package/dist/classes/canvas/CanvasImage.js.map +1 -1
  53. package/dist/classes/canvas/CanvasImage.mjs +31 -23
  54. package/dist/classes/canvas/CanvasImage.mjs.map +1 -1
  55. package/dist/classes/canvas/CanvasSprite.d.mts +5 -2
  56. package/dist/classes/canvas/CanvasSprite.d.ts +5 -2
  57. package/dist/classes/canvas/CanvasSprite.js +26 -20
  58. package/dist/classes/canvas/CanvasSprite.js.map +1 -1
  59. package/dist/classes/canvas/CanvasSprite.mjs +26 -21
  60. package/dist/classes/canvas/CanvasSprite.mjs.map +1 -1
  61. package/dist/classes/canvas/CanvasText.d.mts +6 -3
  62. package/dist/classes/canvas/CanvasText.d.ts +6 -3
  63. package/dist/classes/canvas/CanvasText.js +35 -27
  64. package/dist/classes/canvas/CanvasText.js.map +1 -1
  65. package/dist/classes/canvas/CanvasText.mjs +35 -28
  66. package/dist/classes/canvas/CanvasText.mjs.map +1 -1
  67. package/dist/classes/canvas/index.js +192 -166
  68. package/dist/classes/canvas/index.js.map +1 -1
  69. package/dist/classes/canvas/index.mjs +192 -166
  70. package/dist/classes/canvas/index.mjs.map +1 -1
  71. package/dist/classes/index.d.mts +1 -0
  72. package/dist/classes/index.d.ts +1 -0
  73. package/dist/classes/index.js +118 -83
  74. package/dist/classes/index.js.map +1 -1
  75. package/dist/classes/index.mjs +118 -83
  76. package/dist/classes/index.mjs.map +1 -1
  77. package/dist/classes/ticker/FadeAlphaTicker.d.mts +2 -1
  78. package/dist/classes/ticker/FadeAlphaTicker.d.ts +2 -1
  79. package/dist/classes/ticker/FadeAlphaTicker.js +105 -77
  80. package/dist/classes/ticker/FadeAlphaTicker.js.map +1 -1
  81. package/dist/classes/ticker/FadeAlphaTicker.mjs +105 -77
  82. package/dist/classes/ticker/FadeAlphaTicker.mjs.map +1 -1
  83. package/dist/classes/ticker/MoveTicker.d.mts +2 -1
  84. package/dist/classes/ticker/MoveTicker.d.ts +2 -1
  85. package/dist/classes/ticker/MoveTicker.js +105 -77
  86. package/dist/classes/ticker/MoveTicker.js.map +1 -1
  87. package/dist/classes/ticker/MoveTicker.mjs +105 -77
  88. package/dist/classes/ticker/MoveTicker.mjs.map +1 -1
  89. package/dist/classes/ticker/RotateTicker.d.mts +2 -1
  90. package/dist/classes/ticker/RotateTicker.d.ts +2 -1
  91. package/dist/classes/ticker/RotateTicker.js +105 -77
  92. package/dist/classes/ticker/RotateTicker.js.map +1 -1
  93. package/dist/classes/ticker/RotateTicker.mjs +105 -77
  94. package/dist/classes/ticker/RotateTicker.mjs.map +1 -1
  95. package/dist/classes/ticker/TickerBase.d.mts +2 -1
  96. package/dist/classes/ticker/TickerBase.d.ts +2 -1
  97. package/dist/classes/ticker/TickerBase.js +6 -1
  98. package/dist/classes/ticker/TickerBase.js.map +1 -1
  99. package/dist/classes/ticker/TickerBase.mjs +6 -1
  100. package/dist/classes/ticker/TickerBase.mjs.map +1 -1
  101. package/dist/classes/ticker/ZoomTicker.d.mts +9 -3
  102. package/dist/classes/ticker/ZoomTicker.d.ts +9 -3
  103. package/dist/classes/ticker/ZoomTicker.js +120 -78
  104. package/dist/classes/ticker/ZoomTicker.js.map +1 -1
  105. package/dist/classes/ticker/ZoomTicker.mjs +118 -78
  106. package/dist/classes/ticker/ZoomTicker.mjs.map +1 -1
  107. package/dist/classes/ticker/index.d.mts +2 -1
  108. package/dist/classes/ticker/index.d.ts +2 -1
  109. package/dist/classes/ticker/index.js +242 -214
  110. package/dist/classes/ticker/index.js.map +1 -1
  111. package/dist/classes/ticker/index.mjs +242 -214
  112. package/dist/classes/ticker/index.mjs.map +1 -1
  113. package/dist/constants.d.mts +1 -1
  114. package/dist/constants.d.ts +1 -1
  115. package/dist/constants.js +2 -2
  116. package/dist/constants.js.map +1 -1
  117. package/dist/constants.mjs +2 -2
  118. package/dist/constants.mjs.map +1 -1
  119. package/dist/decorators/CanvasElementDecorator.d.mts +3 -3
  120. package/dist/decorators/CanvasElementDecorator.d.ts +3 -3
  121. package/dist/decorators/CanvasElementDecorator.js +73 -53
  122. package/dist/decorators/CanvasElementDecorator.js.map +1 -1
  123. package/dist/decorators/CanvasElementDecorator.mjs +72 -52
  124. package/dist/decorators/CanvasElementDecorator.mjs.map +1 -1
  125. package/dist/decorators/CharacterDecorator.js +1 -1
  126. package/dist/decorators/CharacterDecorator.js.map +1 -1
  127. package/dist/decorators/CharacterDecorator.mjs +1 -1
  128. package/dist/decorators/CharacterDecorator.mjs.map +1 -1
  129. package/dist/decorators/EventDecorator.d.mts +7 -7
  130. package/dist/decorators/EventDecorator.d.ts +7 -7
  131. package/dist/decorators/EventDecorator.js +12 -11
  132. package/dist/decorators/EventDecorator.js.map +1 -1
  133. package/dist/decorators/EventDecorator.mjs +11 -10
  134. package/dist/decorators/EventDecorator.mjs.map +1 -1
  135. package/dist/decorators/LabelDecorator.js +106 -78
  136. package/dist/decorators/LabelDecorator.js.map +1 -1
  137. package/dist/decorators/LabelDecorator.mjs +106 -78
  138. package/dist/decorators/LabelDecorator.mjs.map +1 -1
  139. package/dist/decorators/TickerDecorator.d.mts +5 -5
  140. package/dist/decorators/TickerDecorator.d.ts +5 -5
  141. package/dist/decorators/TickerDecorator.js +7 -6
  142. package/dist/decorators/TickerDecorator.js.map +1 -1
  143. package/dist/decorators/TickerDecorator.mjs +7 -6
  144. package/dist/decorators/TickerDecorator.mjs.map +1 -1
  145. package/dist/decorators/index.d.mts +1 -1
  146. package/dist/decorators/index.d.ts +1 -1
  147. package/dist/decorators/index.js +108 -78
  148. package/dist/decorators/index.js.map +1 -1
  149. package/dist/decorators/index.mjs +108 -78
  150. package/dist/decorators/index.mjs.map +1 -1
  151. package/dist/functions/CanvasUtility.js +66 -47
  152. package/dist/functions/CanvasUtility.js.map +1 -1
  153. package/dist/functions/CanvasUtility.mjs +66 -47
  154. package/dist/functions/CanvasUtility.mjs.map +1 -1
  155. package/dist/functions/DialogueUtility.d.mts +1 -1
  156. package/dist/functions/DialogueUtility.d.ts +1 -1
  157. package/dist/functions/DialogueUtility.js +250 -211
  158. package/dist/functions/DialogueUtility.js.map +1 -1
  159. package/dist/functions/DialogueUtility.mjs +250 -211
  160. package/dist/functions/DialogueUtility.mjs.map +1 -1
  161. package/dist/functions/DiffUtility.js +1 -1
  162. package/dist/functions/DiffUtility.js.map +1 -1
  163. package/dist/functions/DiffUtility.mjs +1 -1
  164. package/dist/functions/DiffUtility.mjs.map +1 -1
  165. package/dist/functions/EasterEgg.js +1 -1
  166. package/dist/functions/EasterEgg.js.map +1 -1
  167. package/dist/functions/EasterEgg.mjs +1 -1
  168. package/dist/functions/EasterEgg.mjs.map +1 -1
  169. package/dist/functions/ExportUtility.js +1 -1
  170. package/dist/functions/ExportUtility.js.map +1 -1
  171. package/dist/functions/ExportUtility.mjs +1 -1
  172. package/dist/functions/ExportUtility.mjs.map +1 -1
  173. package/dist/functions/FlagsUtility.js +105 -77
  174. package/dist/functions/FlagsUtility.js.map +1 -1
  175. package/dist/functions/FlagsUtility.mjs +105 -77
  176. package/dist/functions/FlagsUtility.mjs.map +1 -1
  177. package/dist/functions/GameUtility.js +105 -77
  178. package/dist/functions/GameUtility.js.map +1 -1
  179. package/dist/functions/GameUtility.mjs +105 -77
  180. package/dist/functions/GameUtility.mjs.map +1 -1
  181. package/dist/functions/ImageUtility.d.mts +35 -2
  182. package/dist/functions/ImageUtility.d.ts +35 -2
  183. package/dist/functions/ImageUtility.js +381 -196
  184. package/dist/functions/ImageUtility.js.map +1 -1
  185. package/dist/functions/ImageUtility.mjs +378 -197
  186. package/dist/functions/ImageUtility.mjs.map +1 -1
  187. package/dist/functions/SavesUtility.d.mts +2 -2
  188. package/dist/functions/SavesUtility.d.ts +2 -2
  189. package/dist/functions/SavesUtility.js +153 -83
  190. package/dist/functions/SavesUtility.js.map +1 -1
  191. package/dist/functions/SavesUtility.mjs +153 -83
  192. package/dist/functions/SavesUtility.mjs.map +1 -1
  193. package/dist/functions/StepLabelUtility.js +1 -1
  194. package/dist/functions/StepLabelUtility.js.map +1 -1
  195. package/dist/functions/StepLabelUtility.mjs +1 -1
  196. package/dist/functions/StepLabelUtility.mjs.map +1 -1
  197. package/dist/functions/TextureUtility.js +10 -8
  198. package/dist/functions/TextureUtility.js.map +1 -1
  199. package/dist/functions/TextureUtility.mjs +10 -8
  200. package/dist/functions/TextureUtility.mjs.map +1 -1
  201. package/dist/functions/TickerUtility.js +1 -1
  202. package/dist/functions/TickerUtility.js.map +1 -1
  203. package/dist/functions/TickerUtility.mjs +1 -1
  204. package/dist/functions/TickerUtility.mjs.map +1 -1
  205. package/dist/functions/index.d.mts +6 -3
  206. package/dist/functions/index.d.ts +6 -3
  207. package/dist/functions/index.js +289 -93
  208. package/dist/functions/index.js.map +1 -1
  209. package/dist/functions/index.mjs +287 -95
  210. package/dist/functions/index.mjs.map +1 -1
  211. package/dist/index.d.mts +4 -4
  212. package/dist/index.d.ts +4 -4
  213. package/dist/index.js +758 -165
  214. package/dist/index.js.map +1 -1
  215. package/dist/index.mjs +756 -167
  216. package/dist/index.mjs.map +1 -1
  217. package/dist/interface/CharacterBaseModelProps.js +1 -1
  218. package/dist/interface/CharacterBaseModelProps.js.map +1 -1
  219. package/dist/interface/CharacterBaseModelProps.mjs +1 -1
  220. package/dist/interface/CharacterBaseModelProps.mjs.map +1 -1
  221. package/dist/interface/DialogueHistory.js +1 -1
  222. package/dist/interface/DialogueHistory.js.map +1 -1
  223. package/dist/interface/DialogueHistory.mjs +1 -1
  224. package/dist/interface/DialogueHistory.mjs.map +1 -1
  225. package/dist/interface/IHistoryStep.d.mts +2 -2
  226. package/dist/interface/IHistoryStep.d.ts +2 -2
  227. package/dist/interface/IHistoryStep.js +1 -1
  228. package/dist/interface/IHistoryStep.js.map +1 -1
  229. package/dist/interface/IHistoryStep.mjs +1 -1
  230. package/dist/interface/IHistoryStep.mjs.map +1 -1
  231. package/dist/interface/IOpenedLabel.js +1 -1
  232. package/dist/interface/IOpenedLabel.js.map +1 -1
  233. package/dist/interface/IOpenedLabel.mjs +1 -1
  234. package/dist/interface/IOpenedLabel.mjs.map +1 -1
  235. package/dist/interface/ISaveData.d.mts +2 -2
  236. package/dist/interface/ISaveData.d.ts +2 -2
  237. package/dist/interface/ISaveData.js +1 -1
  238. package/dist/interface/ISaveData.js.map +1 -1
  239. package/dist/interface/ISaveData.mjs +1 -1
  240. package/dist/interface/ISaveData.mjs.map +1 -1
  241. package/dist/interface/ITicker.d.mts +2 -1
  242. package/dist/interface/ITicker.d.ts +2 -1
  243. package/dist/interface/ITicker.js +1 -1
  244. package/dist/interface/ITicker.js.map +1 -1
  245. package/dist/interface/ITicker.mjs +1 -1
  246. package/dist/interface/ITicker.mjs.map +1 -1
  247. package/dist/interface/ITickersSteps.d.mts +12 -3
  248. package/dist/interface/ITickersSteps.d.ts +12 -3
  249. package/dist/interface/ITickersSteps.js +1 -1
  250. package/dist/interface/ITickersSteps.js.map +1 -1
  251. package/dist/interface/ITickersSteps.mjs +1 -1
  252. package/dist/interface/ITickersSteps.mjs.map +1 -1
  253. package/dist/interface/TickerHistory.d.mts +3 -3
  254. package/dist/interface/TickerHistory.d.ts +3 -3
  255. package/dist/interface/TickerHistory.js +1 -1
  256. package/dist/interface/TickerHistory.js.map +1 -1
  257. package/dist/interface/TickerHistory.mjs +1 -1
  258. package/dist/interface/TickerHistory.mjs.map +1 -1
  259. package/dist/interface/TickerProgrationType.js +1 -1
  260. package/dist/interface/TickerProgrationType.js.map +1 -1
  261. package/dist/interface/TickerProgrationType.mjs +1 -1
  262. package/dist/interface/TickerProgrationType.mjs.map +1 -1
  263. package/dist/interface/TickerTimeoutHistory.js +1 -1
  264. package/dist/interface/TickerTimeoutHistory.js.map +1 -1
  265. package/dist/interface/TickerTimeoutHistory.mjs +1 -1
  266. package/dist/interface/TickerTimeoutHistory.mjs.map +1 -1
  267. package/dist/interface/canvas/ICanvasBaseMemory.d.mts +1 -1
  268. package/dist/interface/canvas/ICanvasBaseMemory.d.ts +1 -1
  269. package/dist/interface/canvas/ICanvasBaseMemory.js +1 -1
  270. package/dist/interface/canvas/ICanvasBaseMemory.js.map +1 -1
  271. package/dist/interface/canvas/ICanvasBaseMemory.mjs +1 -1
  272. package/dist/interface/canvas/ICanvasBaseMemory.mjs.map +1 -1
  273. package/dist/interface/canvas/ICanvasContainerMemory.js +1 -1
  274. package/dist/interface/canvas/ICanvasContainerMemory.js.map +1 -1
  275. package/dist/interface/canvas/ICanvasContainerMemory.mjs +1 -1
  276. package/dist/interface/canvas/ICanvasContainerMemory.mjs.map +1 -1
  277. package/dist/interface/canvas/ICanvasImageMemory.d.mts +2 -2
  278. package/dist/interface/canvas/ICanvasImageMemory.d.ts +2 -2
  279. package/dist/interface/canvas/ICanvasImageMemory.js +1 -1
  280. package/dist/interface/canvas/ICanvasImageMemory.js.map +1 -1
  281. package/dist/interface/canvas/ICanvasImageMemory.mjs +1 -1
  282. package/dist/interface/canvas/ICanvasImageMemory.mjs.map +1 -1
  283. package/dist/interface/canvas/ICanvasSpriteMemory.d.mts +1 -2
  284. package/dist/interface/canvas/ICanvasSpriteMemory.d.ts +1 -2
  285. package/dist/interface/canvas/ICanvasSpriteMemory.js +1 -1
  286. package/dist/interface/canvas/ICanvasSpriteMemory.js.map +1 -1
  287. package/dist/interface/canvas/ICanvasSpriteMemory.mjs +1 -1
  288. package/dist/interface/canvas/ICanvasSpriteMemory.mjs.map +1 -1
  289. package/dist/interface/canvas/ICanvasTextTextMemory.d.mts +1 -2
  290. package/dist/interface/canvas/ICanvasTextTextMemory.d.ts +1 -2
  291. package/dist/interface/canvas/ICanvasTextTextMemory.js +1 -1
  292. package/dist/interface/canvas/ICanvasTextTextMemory.js.map +1 -1
  293. package/dist/interface/canvas/ICanvasTextTextMemory.mjs +1 -1
  294. package/dist/interface/canvas/ICanvasTextTextMemory.mjs.map +1 -1
  295. package/dist/interface/canvas/ITextureMemory.js +1 -1
  296. package/dist/interface/canvas/ITextureMemory.js.map +1 -1
  297. package/dist/interface/canvas/ITextureMemory.mjs +1 -1
  298. package/dist/interface/canvas/ITextureMemory.mjs.map +1 -1
  299. package/dist/interface/canvas/index.js +1 -1
  300. package/dist/interface/canvas/index.js.map +1 -1
  301. package/dist/interface/canvas/index.mjs +1 -1
  302. package/dist/interface/canvas/index.mjs.map +1 -1
  303. package/dist/interface/export/ExportedCanvas.d.mts +2 -2
  304. package/dist/interface/export/ExportedCanvas.d.ts +2 -2
  305. package/dist/interface/export/ExportedCanvas.js +1 -1
  306. package/dist/interface/export/ExportedCanvas.js.map +1 -1
  307. package/dist/interface/export/ExportedCanvas.mjs +1 -1
  308. package/dist/interface/export/ExportedCanvas.mjs.map +1 -1
  309. package/dist/interface/export/ExportedStep.d.mts +2 -2
  310. package/dist/interface/export/ExportedStep.d.ts +2 -2
  311. package/dist/interface/export/ExportedStep.js +1 -1
  312. package/dist/interface/export/ExportedStep.js.map +1 -1
  313. package/dist/interface/export/ExportedStep.mjs +1 -1
  314. package/dist/interface/export/ExportedStep.mjs.map +1 -1
  315. package/dist/interface/export/ExportedStorage.js +1 -1
  316. package/dist/interface/export/ExportedStorage.js.map +1 -1
  317. package/dist/interface/export/ExportedStorage.mjs +1 -1
  318. package/dist/interface/export/ExportedStorage.mjs.map +1 -1
  319. package/dist/interface/export/index.d.mts +2 -2
  320. package/dist/interface/export/index.d.ts +2 -2
  321. package/dist/interface/export/index.js +1 -1
  322. package/dist/interface/export/index.js.map +1 -1
  323. package/dist/interface/export/index.mjs +1 -1
  324. package/dist/interface/export/index.mjs.map +1 -1
  325. package/dist/interface/index.d.mts +2 -2
  326. package/dist/interface/index.d.ts +2 -2
  327. package/dist/interface/index.js +1 -1
  328. package/dist/interface/index.js.map +1 -1
  329. package/dist/interface/index.mjs +1 -1
  330. package/dist/interface/index.mjs.map +1 -1
  331. package/dist/labels/BaseCanvasElementTestLabel.js +1317 -395
  332. package/dist/labels/BaseCanvasElementTestLabel.js.map +1 -1
  333. package/dist/labels/BaseCanvasElementTestLabel.mjs +1318 -396
  334. package/dist/labels/BaseCanvasElementTestLabel.mjs.map +1 -1
  335. package/dist/labels/{EventsTestLabel.d.mts → CanvasEventsTestLabel.d.mts} +4 -7
  336. package/dist/labels/{EventsTestLabel.d.ts → CanvasEventsTestLabel.d.ts} +4 -7
  337. package/dist/labels/{EventsTestLabel.js → CanvasEventsTestLabel.js} +332 -110
  338. package/dist/labels/CanvasEventsTestLabel.js.map +1 -0
  339. package/dist/labels/{EventsTestLabel.mjs → CanvasEventsTestLabel.mjs} +332 -110
  340. package/dist/labels/CanvasEventsTestLabel.mjs.map +1 -0
  341. package/dist/labels/{TintingTestLabel.d.mts → CustomTickerCanvasElementTestLabel.d.mts} +5 -4
  342. package/dist/labels/{TintingTestLabel.d.ts → CustomTickerCanvasElementTestLabel.d.ts} +5 -4
  343. package/dist/labels/{TickerTestLabel.js → CustomTickerCanvasElementTestLabel.js} +674 -490
  344. package/dist/labels/CustomTickerCanvasElementTestLabel.js.map +1 -0
  345. package/dist/labels/{TickerTestLabel.mjs → CustomTickerCanvasElementTestLabel.mjs} +675 -491
  346. package/dist/labels/CustomTickerCanvasElementTestLabel.mjs.map +1 -0
  347. package/dist/labels/{ShowImageTest.js → ImagesAnimationsTestLabel.js} +385 -94
  348. package/dist/labels/ImagesAnimationsTestLabel.js.map +1 -0
  349. package/dist/labels/{ShowImageTest.mjs → ImagesAnimationsTestLabel.mjs} +385 -94
  350. package/dist/labels/ImagesAnimationsTestLabel.mjs.map +1 -0
  351. package/dist/labels/MarkdownTest.js +162 -92
  352. package/dist/labels/MarkdownTest.js.map +1 -1
  353. package/dist/labels/MarkdownTest.mjs +162 -92
  354. package/dist/labels/MarkdownTest.mjs.map +1 -1
  355. package/dist/labels/StartLabel.js +803 -164
  356. package/dist/labels/StartLabel.js.map +1 -1
  357. package/dist/labels/StartLabel.mjs +804 -165
  358. package/dist/labels/StartLabel.mjs.map +1 -1
  359. package/dist/labels/TestConstant.d.mts +3 -1
  360. package/dist/labels/TestConstant.d.ts +3 -1
  361. package/dist/labels/TestConstant.js +109 -77
  362. package/dist/labels/TestConstant.js.map +1 -1
  363. package/dist/labels/TestConstant.mjs +108 -78
  364. package/dist/labels/TestConstant.mjs.map +1 -1
  365. package/dist/labels/index.js +803 -164
  366. package/dist/labels/index.js.map +1 -1
  367. package/dist/labels/index.mjs +804 -165
  368. package/dist/labels/index.mjs.map +1 -1
  369. package/dist/managers/StepManager.d.mts +5 -4
  370. package/dist/managers/StepManager.d.ts +5 -4
  371. package/dist/managers/StepManager.js +152 -82
  372. package/dist/managers/StepManager.js.map +1 -1
  373. package/dist/managers/StepManager.mjs +152 -82
  374. package/dist/managers/StepManager.mjs.map +1 -1
  375. package/dist/managers/StorageManager.js +1 -1
  376. package/dist/managers/StorageManager.js.map +1 -1
  377. package/dist/managers/StorageManager.mjs +1 -1
  378. package/dist/managers/StorageManager.mjs.map +1 -1
  379. package/dist/managers/WindowManager.d.mts +2 -2
  380. package/dist/managers/WindowManager.d.ts +2 -2
  381. package/dist/managers/WindowManager.js +96 -72
  382. package/dist/managers/WindowManager.js.map +1 -1
  383. package/dist/managers/WindowManager.mjs +96 -72
  384. package/dist/managers/WindowManager.mjs.map +1 -1
  385. package/dist/managers/index.d.mts +2 -2
  386. package/dist/managers/index.d.ts +2 -2
  387. package/dist/managers/index.js +152 -82
  388. package/dist/managers/index.js.map +1 -1
  389. package/dist/managers/index.mjs +152 -82
  390. package/dist/managers/index.mjs.map +1 -1
  391. package/dist/override/StepLabelProps.js +1 -1
  392. package/dist/override/StepLabelProps.js.map +1 -1
  393. package/dist/override/StepLabelProps.mjs +1 -1
  394. package/dist/override/StepLabelProps.mjs.map +1 -1
  395. package/dist/override/StepLabelResult.js +1 -1
  396. package/dist/override/StepLabelResult.js.map +1 -1
  397. package/dist/override/StepLabelResult.mjs +1 -1
  398. package/dist/override/StepLabelResult.mjs.map +1 -1
  399. package/dist/override/index.js +1 -1
  400. package/dist/override/index.js.map +1 -1
  401. package/dist/override/index.mjs +1 -1
  402. package/dist/override/index.mjs.map +1 -1
  403. package/dist/types/CanvasElementTagType.js +1 -1
  404. package/dist/types/CanvasElementTagType.js.map +1 -1
  405. package/dist/types/CanvasElementTagType.mjs +1 -1
  406. package/dist/types/CanvasElementTagType.mjs.map +1 -1
  407. package/dist/types/CanvasEventNamesType.js +1 -1
  408. package/dist/types/CanvasEventNamesType.js.map +1 -1
  409. package/dist/types/CanvasEventNamesType.mjs +1 -1
  410. package/dist/types/CanvasEventNamesType.mjs.map +1 -1
  411. package/dist/types/ChoiceMenuOptionsType.js +1 -1
  412. package/dist/types/ChoiceMenuOptionsType.js.map +1 -1
  413. package/dist/types/ChoiceMenuOptionsType.mjs +1 -1
  414. package/dist/types/ChoiceMenuOptionsType.mjs.map +1 -1
  415. package/dist/types/CloseType.js +1 -1
  416. package/dist/types/CloseType.js.map +1 -1
  417. package/dist/types/CloseType.mjs +1 -1
  418. package/dist/types/CloseType.mjs.map +1 -1
  419. package/dist/types/EventIdType.js +1 -1
  420. package/dist/types/EventIdType.js.map +1 -1
  421. package/dist/types/EventIdType.mjs +1 -1
  422. package/dist/types/EventIdType.mjs.map +1 -1
  423. package/dist/types/HistoryChoiceMenuOption.js +1 -1
  424. package/dist/types/HistoryChoiceMenuOption.js.map +1 -1
  425. package/dist/types/HistoryChoiceMenuOption.mjs +1 -1
  426. package/dist/types/HistoryChoiceMenuOption.mjs.map +1 -1
  427. package/dist/types/LabelIdType.js +1 -1
  428. package/dist/types/LabelIdType.js.map +1 -1
  429. package/dist/types/LabelIdType.mjs +1 -1
  430. package/dist/types/LabelIdType.mjs.map +1 -1
  431. package/dist/types/LabelRunModeType.js +1 -1
  432. package/dist/types/LabelRunModeType.js.map +1 -1
  433. package/dist/types/LabelRunModeType.mjs +1 -1
  434. package/dist/types/LabelRunModeType.mjs.map +1 -1
  435. package/dist/types/PauseType.js +1 -1
  436. package/dist/types/PauseType.js.map +1 -1
  437. package/dist/types/PauseType.mjs +1 -1
  438. package/dist/types/PauseType.mjs.map +1 -1
  439. package/dist/types/RepeatType.js +1 -1
  440. package/dist/types/RepeatType.js.map +1 -1
  441. package/dist/types/RepeatType.mjs +1 -1
  442. package/dist/types/RepeatType.mjs.map +1 -1
  443. package/dist/types/StepHistoryDataType.js +1 -1
  444. package/dist/types/StepHistoryDataType.js.map +1 -1
  445. package/dist/types/StepHistoryDataType.mjs +1 -1
  446. package/dist/types/StepHistoryDataType.mjs.map +1 -1
  447. package/dist/types/StepLabelType.js +1 -1
  448. package/dist/types/StepLabelType.js.map +1 -1
  449. package/dist/types/StepLabelType.mjs +1 -1
  450. package/dist/types/StepLabelType.mjs.map +1 -1
  451. package/dist/types/StorageElementType.js +1 -1
  452. package/dist/types/StorageElementType.js.map +1 -1
  453. package/dist/types/StorageElementType.mjs +1 -1
  454. package/dist/types/StorageElementType.mjs.map +1 -1
  455. package/dist/types/TickerIdType.js +1 -1
  456. package/dist/types/TickerIdType.js.map +1 -1
  457. package/dist/types/TickerIdType.mjs +1 -1
  458. package/dist/types/TickerIdType.mjs.map +1 -1
  459. package/dist/types/index.js +1 -1
  460. package/dist/types/index.js.map +1 -1
  461. package/dist/types/index.mjs +1 -1
  462. package/dist/types/index.mjs.map +1 -1
  463. package/dist/types/ticker/FadeAlphaTickerProps.js +1 -1
  464. package/dist/types/ticker/FadeAlphaTickerProps.js.map +1 -1
  465. package/dist/types/ticker/FadeAlphaTickerProps.mjs +1 -1
  466. package/dist/types/ticker/FadeAlphaTickerProps.mjs.map +1 -1
  467. package/dist/types/ticker/MoveTickerProps.d.mts +1 -1
  468. package/dist/types/ticker/MoveTickerProps.d.ts +1 -1
  469. package/dist/types/ticker/MoveTickerProps.js +1 -1
  470. package/dist/types/ticker/MoveTickerProps.js.map +1 -1
  471. package/dist/types/ticker/MoveTickerProps.mjs +1 -1
  472. package/dist/types/ticker/MoveTickerProps.mjs.map +1 -1
  473. package/dist/types/ticker/RotateTickerProps.d.mts +1 -1
  474. package/dist/types/ticker/RotateTickerProps.d.ts +1 -1
  475. package/dist/types/ticker/RotateTickerProps.js +1 -1
  476. package/dist/types/ticker/RotateTickerProps.js.map +1 -1
  477. package/dist/types/ticker/RotateTickerProps.mjs +1 -1
  478. package/dist/types/ticker/RotateTickerProps.mjs.map +1 -1
  479. package/dist/types/ticker/TagToRemoveAfterType.js +1 -1
  480. package/dist/types/ticker/TagToRemoveAfterType.js.map +1 -1
  481. package/dist/types/ticker/TagToRemoveAfterType.mjs +1 -1
  482. package/dist/types/ticker/TagToRemoveAfterType.mjs.map +1 -1
  483. package/dist/types/ticker/ZoomTickerProps.js +1 -1
  484. package/dist/types/ticker/ZoomTickerProps.js.map +1 -1
  485. package/dist/types/ticker/ZoomTickerProps.mjs +1 -1
  486. package/dist/types/ticker/ZoomTickerProps.mjs.map +1 -1
  487. package/dist/types/ticker/index.js +1 -1
  488. package/dist/types/ticker/index.js.map +1 -1
  489. package/dist/types/ticker/index.mjs +1 -1
  490. package/dist/types/ticker/index.mjs.map +1 -1
  491. package/package.json +4 -4
  492. package/dist/labels/EventsTestLabel.js.map +0 -1
  493. package/dist/labels/EventsTestLabel.mjs.map +0 -1
  494. package/dist/labels/ShowImageTest.js.map +0 -1
  495. package/dist/labels/ShowImageTest.mjs.map +0 -1
  496. package/dist/labels/TickerTestLabel.d.mts +0 -9
  497. package/dist/labels/TickerTestLabel.d.ts +0 -9
  498. package/dist/labels/TickerTestLabel.js.map +0 -1
  499. package/dist/labels/TickerTestLabel.mjs.map +0 -1
  500. package/dist/labels/TintingTestLabel.js +0 -1786
  501. package/dist/labels/TintingTestLabel.js.map +0 -1
  502. package/dist/labels/TintingTestLabel.mjs +0 -1780
  503. package/dist/labels/TintingTestLabel.mjs.map +0 -1
  504. /package/dist/labels/{ShowImageTest.d.mts → ImagesAnimationsTestLabel.d.mts} +0 -0
  505. /package/dist/labels/{ShowImageTest.d.ts → ImagesAnimationsTestLabel.d.ts} +0 -0
@@ -1,6 +1,6 @@
1
1
  import { diff } from 'deep-diff';
2
2
  import sha1 from 'crypto-js/sha1';
3
- import { Sprite, Container, Application, Assets, Texture, Text } from 'pixi.js';
3
+ import { Sprite, Container, Texture, Rectangle, Application, Assets, FillGradient, Color, TextStyle, Text } from 'pixi.js';
4
4
 
5
5
  var __defProp = Object.defineProperty;
6
6
  var __defProps = Object.defineProperties;
@@ -50,6 +50,20 @@ var __async = (__this, __arguments, generator) => {
50
50
  step((generator = generator.apply(__this, __arguments)).next());
51
51
  });
52
52
  };
53
+
54
+ // src/classes/CanvasEvent.ts
55
+ var CanvasEvent = class {
56
+ constructor() {
57
+ /**
58
+ * Get the id of the event. This variable is used in the system to get the event by id, {@link getEventInstanceById}
59
+ */
60
+ this.id = "event_id_not_set";
61
+ this.id = this.constructor.prototype.id;
62
+ }
63
+ fn(_event, _element) {
64
+ throw new Error("[Pixi'VN] The method CanvasEvent.fn() must be overridden");
65
+ }
66
+ };
53
67
  function getStepSha1(step) {
54
68
  let sha1String = sha1(step.toString().toLocaleLowerCase());
55
69
  return sha1String.toString();
@@ -73,7 +87,7 @@ var Label = class {
73
87
  this._choiseIndex = choiseIndex;
74
88
  }
75
89
  /**
76
- * Get the id of the label
90
+ * Get the id of the label. This variable is used in the system to get the label by id, {@link getLabelById}
77
91
  */
78
92
  get id() {
79
93
  return this._id;
@@ -162,17 +176,23 @@ function exportCanvasElement(element) {
162
176
  return element.memory;
163
177
  }
164
178
  function importCanvasElement(memory) {
165
- let element = getCanvasElementInstanceByClassName(memory.className);
179
+ let element = getCanvasElementInstanceById(memory.pixivnId);
166
180
  if (element) {
167
181
  element.memory = memory;
168
182
  } else {
169
- throw new Error("[Pixi'VN] The element " + memory.className + " could not be created");
183
+ throw new Error("[Pixi'VN] The element " + memory.pixivnId + " could not be created");
170
184
  }
171
185
  return element;
172
186
  }
173
187
 
174
188
  // src/classes/canvas/CanvasContainer.ts
189
+ var CANVAS_CONTAINER_ID = "CanvasContainer";
175
190
  var CanvasContainer = class extends Container {
191
+ constructor(options) {
192
+ super(options);
193
+ this.pixivnId = CANVAS_CONTAINER_ID;
194
+ this.pixivnId = this.constructor.prototype.pixivnId || CANVAS_CONTAINER_ID;
195
+ }
176
196
  get memory() {
177
197
  let memory = getMemoryContainer(this);
178
198
  this.children.forEach((child) => {
@@ -188,8 +208,12 @@ var CanvasContainer = class extends Container {
188
208
  }
189
209
  };
190
210
  function getMemoryContainer(element) {
211
+ let className = "CanvasContainer";
212
+ if (element.hasOwnProperty("pixivnId")) {
213
+ className = element.pixivnId;
214
+ }
191
215
  return {
192
- className: "CanvasContainer",
216
+ pixivnId: className,
193
217
  elements: [],
194
218
  width: element.width,
195
219
  height: element.height,
@@ -205,7 +229,6 @@ function getMemoryContainer(element) {
205
229
  position: { x: element.position.x, y: element.position.y },
206
230
  skew: { x: element.skew.x, y: element.skew.y },
207
231
  visible: element.visible,
208
- culled: element.culled,
209
232
  x: element.x,
210
233
  y: element.y,
211
234
  boundsArea: element.boundsArea,
@@ -243,7 +266,6 @@ function setMemoryContainer(element, memory) {
243
266
  memory.position && element.position.set(memory.position.x, memory.position.y);
244
267
  memory.skew && element.skew.set(memory.skew.x, memory.skew.y);
245
268
  memory.visible && (element.visible = memory.visible);
246
- memory.culled && (element.culled = memory.culled);
247
269
  memory.x && (element.x = memory.x);
248
270
  memory.y && (element.y = memory.y);
249
271
  memory.boundsArea && (element.boundsArea = memory.boundsArea);
@@ -274,17 +296,19 @@ function getTexture(imageUrl) {
274
296
  });
275
297
  });
276
298
  }
277
- function getTextStyle(style) {
278
- let fill = style.fill;
279
- if (fill instanceof Object) {
280
- console.warn("[Pixi'VN] CanvasText.style.fill is a FillGradient or FillPattern, this is not supported yet.", fill);
281
- fill = "#00FF00";
299
+ function getFillGradientFillPattern(prop, propName) {
300
+ if (!(prop instanceof Object)) {
301
+ return prop;
282
302
  }
303
+ console.warn(`[Pixi'VN] CanvasText.style.${propName} is a FillGradient or FillPattern, this is not supported yet.`, prop);
304
+ return void 0;
305
+ }
306
+ function getTextStyle(style) {
283
307
  return {
284
308
  align: style.align,
285
309
  breakWords: style.breakWords,
286
310
  dropShadow: style.dropShadow,
287
- fill,
311
+ fill: getFillGradientFillPattern(style.stroke, "fill"),
288
312
  fontFamily: style.fontFamily,
289
313
  fontSize: style.fontSize,
290
314
  fontStyle: style.fontStyle,
@@ -294,7 +318,7 @@ function getTextStyle(style) {
294
318
  letterSpacing: style.letterSpacing,
295
319
  lineHeight: style.lineHeight,
296
320
  padding: style.padding,
297
- stroke: style.stroke,
321
+ stroke: getFillGradientFillPattern(style.stroke, "stroke"),
298
322
  textBaseline: style.textBaseline,
299
323
  trim: style.trim,
300
324
  whiteSpace: style.whiteSpace,
@@ -305,40 +329,55 @@ function getTextStyle(style) {
305
329
 
306
330
  // src/decorators/EventDecorator.ts
307
331
  var registeredEvents = {};
308
- function getEventTypeByClassName(eventName) {
332
+ function eventDecorator(name) {
333
+ return function(target) {
334
+ if (!name) {
335
+ name = target.name;
336
+ }
337
+ if (registeredEvents[name]) {
338
+ console.info(`[Pixi'VN] Event ${name} already exists, it will be overwritten`);
339
+ }
340
+ target.prototype.id = name;
341
+ registeredEvents[name] = target;
342
+ };
343
+ }
344
+ function getEventTypeById(eventId) {
309
345
  try {
310
- let eventType = registeredEvents[eventName];
346
+ let eventType = registeredEvents[eventId];
311
347
  if (!eventType) {
312
- console.error(`[Pixi'VN] Event ${eventName} not found`);
348
+ console.error(`[Pixi'VN] Event ${eventId} not found`);
313
349
  return;
314
350
  }
315
351
  new eventType();
316
352
  return eventType;
317
353
  } catch (e) {
318
- console.error(`[Pixi'VN] Error while getting Event ${eventName}`, e);
354
+ console.error(`[Pixi'VN] Error while getting Event ${eventId}`, e);
319
355
  return;
320
356
  }
321
357
  }
322
- function getEventInstanceByClassName(eventName) {
358
+ function getEventInstanceById(eventId) {
323
359
  try {
324
- let eventType = registeredEvents[eventName];
360
+ let eventType = registeredEvents[eventId];
325
361
  if (!eventType) {
326
- console.error(`[Pixi'VN] Event ${eventName} not found`);
362
+ console.error(`[Pixi'VN] Event ${eventId} not found`);
327
363
  return;
328
364
  }
329
365
  let event = new eventType();
330
366
  return event;
331
367
  } catch (e) {
332
- console.error(`[Pixi'VN] Error while getting Event ${eventName}`, e);
368
+ console.error(`[Pixi'VN] Error while getting Event ${eventId}`, e);
333
369
  return;
334
370
  }
335
371
  }
336
372
 
337
373
  // src/classes/canvas/CanvasSprite.ts
374
+ var CANVAS_SPRITE_ID = "CanvasSprite";
338
375
  var CanvasSprite = class _CanvasSprite extends Sprite {
339
- constructor() {
340
- super(...arguments);
376
+ constructor(options) {
377
+ super(options);
378
+ this.pixivnId = CANVAS_SPRITE_ID;
341
379
  this._onEvents = {};
380
+ this.pixivnId = this.constructor.prototype.pixivnId || CANVAS_SPRITE_ID;
342
381
  }
343
382
  get memory() {
344
383
  return getMemorySprite(this);
@@ -379,9 +418,9 @@ var CanvasSprite = class _CanvasSprite extends Sprite {
379
418
  * ```
380
419
  */
381
420
  onEvent(event, eventClass) {
382
- let className = eventClass.name;
383
- let instance = getEventInstanceByClassName(className);
384
- this._onEvents[event] = className;
421
+ let id = eventClass.prototype.id;
422
+ let instance = getEventInstanceById(id);
423
+ this._onEvents[event] = id;
385
424
  if (instance) {
386
425
  super.on(event, () => {
387
426
  instance.fn(event, this);
@@ -410,7 +449,7 @@ var CanvasSprite = class _CanvasSprite extends Sprite {
410
449
  function getMemorySprite(element) {
411
450
  let temp = getMemoryContainer(element);
412
451
  return __spreadProps(__spreadValues({}, temp), {
413
- className: "CanvasSprite",
452
+ pixivnId: element.pixivnId,
414
453
  textureImage: getTextureMemory(element.texture),
415
454
  anchor: { x: element.anchor.x, y: element.anchor.y },
416
455
  roundPixels: element.roundPixels,
@@ -433,8 +472,8 @@ function setMemorySprite(element, memory) {
433
472
  }
434
473
  memory.roundPixels && (element.roundPixels = memory.roundPixels);
435
474
  for (let event in memory.onEvents) {
436
- let className = memory.onEvents[event];
437
- let instance = getEventTypeByClassName(className);
475
+ let id = memory.onEvents[event];
476
+ let instance = getEventTypeById(id);
438
477
  if (instance) {
439
478
  element.onEvent(event, instance);
440
479
  }
@@ -442,9 +481,11 @@ function setMemorySprite(element, memory) {
442
481
  }
443
482
 
444
483
  // src/classes/canvas/CanvasImage.ts
484
+ var CANVAS_IMAGE_ID = "CanvasImage";
445
485
  var CanvasImage = class _CanvasImage extends CanvasSprite {
446
486
  constructor(options, imageLink) {
447
487
  super(options);
488
+ this.pixivnId = CANVAS_IMAGE_ID;
448
489
  this.imageLink = "";
449
490
  if (imageLink) {
450
491
  this.imageLink = imageLink;
@@ -452,12 +493,13 @@ var CanvasImage = class _CanvasImage extends CanvasSprite {
452
493
  }
453
494
  get memory() {
454
495
  return __spreadProps(__spreadValues({}, getMemorySprite(this)), {
455
- className: "CanvasImage",
456
- textureImage: { image: this.imageLink }
496
+ pixivnId: this.pixivnId,
497
+ imageLink: this.imageLink
457
498
  });
458
499
  }
459
500
  set memory(memory) {
460
501
  setMemorySprite(this, memory);
502
+ this.imageLink = memory.imageLink;
461
503
  }
462
504
  static from(source, skipCache) {
463
505
  let sprite = Sprite.from(source, skipCache);
@@ -485,10 +527,13 @@ var CanvasImage = class _CanvasImage extends CanvasSprite {
485
527
  });
486
528
  }
487
529
  };
530
+ var CANVAS_TEXT_ID = "CanvasText";
488
531
  var CanvasText = class extends Text {
489
- constructor() {
490
- super(...arguments);
532
+ constructor(options) {
533
+ super(options);
534
+ this.pixivnId = CANVAS_TEXT_ID;
491
535
  this._onEvents = {};
536
+ this.pixivnId = this.constructor.prototype.pixivnId || CANVAS_TEXT_ID;
492
537
  }
493
538
  get memory() {
494
539
  return getMemoryText(this);
@@ -529,9 +574,9 @@ var CanvasText = class extends Text {
529
574
  * ```
530
575
  */
531
576
  onEvent(event, eventClass) {
532
- let className = eventClass.name;
533
- let instance = getEventInstanceByClassName(className);
534
- this._onEvents[event] = className;
577
+ let id = eventClass.prototype.id;
578
+ let instance = getEventInstanceById(id);
579
+ this._onEvents[event] = id;
535
580
  if (instance) {
536
581
  super.on(event, () => {
537
582
  instance.fn(event, this);
@@ -554,7 +599,7 @@ var CanvasText = class extends Text {
554
599
  function getMemoryText(element) {
555
600
  let temp = getMemoryContainer(element);
556
601
  return __spreadProps(__spreadValues({}, temp), {
557
- className: "CanvasText",
602
+ pixivnId: element.pixivnId,
558
603
  anchor: { x: element.anchor.x, y: element.anchor.y },
559
604
  text: element.text,
560
605
  resolution: element.resolution,
@@ -577,8 +622,8 @@ function setMemoryText(element, memory) {
577
622
  memory.style && (element.style = memory.style);
578
623
  memory.roundPixels && (element.roundPixels = memory.roundPixels);
579
624
  for (let event in memory.onEvents) {
580
- let className = memory.onEvents[event];
581
- let instance = getEventTypeByClassName(className);
625
+ let id = memory.onEvents[event];
626
+ let instance = getEventTypeById(id);
582
627
  if (instance) {
583
628
  element.onEvent(event, instance);
584
629
  }
@@ -587,28 +632,37 @@ function setMemoryText(element, memory) {
587
632
 
588
633
  // src/decorators/CanvasElementDecorator.ts
589
634
  var registeredCanvasElement = {};
590
- function getCanvasElementInstanceByClassName(canvasName) {
635
+ function canvasElementDecorator(name) {
636
+ return function(target) {
637
+ if (registeredCanvasElement[name]) {
638
+ console.warn(`[Pixi'VN] CanvasElement ${name} already registered`);
639
+ }
640
+ target.prototype.pixivnId = name;
641
+ registeredCanvasElement[name] = target;
642
+ };
643
+ }
644
+ function getCanvasElementInstanceById(canvasId) {
591
645
  try {
592
- let eventType = registeredCanvasElement[canvasName];
646
+ let eventType = registeredCanvasElement[canvasId];
593
647
  if (!eventType) {
594
- if (canvasName === "CanvasContainer") {
648
+ if (canvasId === CANVAS_CONTAINER_ID) {
595
649
  eventType = CanvasContainer;
596
- } else if (canvasName === "CanvasImage") {
650
+ } else if (canvasId === CANVAS_IMAGE_ID) {
597
651
  eventType = CanvasImage;
598
- } else if (canvasName === "CanvasSprite") {
652
+ } else if (canvasId === CANVAS_SPRITE_ID) {
599
653
  eventType = CanvasSprite;
600
- } else if (canvasName === "CanvasText") {
654
+ } else if (canvasId === CANVAS_TEXT_ID) {
601
655
  eventType = CanvasText;
602
656
  }
603
657
  }
604
658
  if (!eventType) {
605
- console.error(`[Pixi'VN] CanvasElement ${canvasName} not found`);
659
+ console.error(`[Pixi'VN] CanvasElement ${canvasId} not found`);
606
660
  return;
607
661
  }
608
662
  let canvasElement = new eventType();
609
663
  return canvasElement;
610
664
  } catch (e) {
611
- console.error(`[Pixi'VN] Error while getting CanvasElement ${canvasName}`, e);
665
+ console.error(`[Pixi'VN] Error while getting CanvasElement ${canvasId}`, e);
612
666
  return;
613
667
  }
614
668
  }
@@ -636,19 +690,20 @@ function tickerDecorator(name) {
636
690
  if (registeredTickers[name]) {
637
691
  console.info(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`);
638
692
  }
693
+ target.prototype.id = name;
639
694
  registeredTickers[name] = target;
640
695
  };
641
696
  }
642
- function geTickerInstanceByClassName(tickerName, args, duration, priority) {
697
+ function geTickerInstanceById(tickerId, args, duration, priority) {
643
698
  try {
644
- let ticker = registeredTickers[tickerName];
699
+ let ticker = registeredTickers[tickerId];
645
700
  if (!ticker) {
646
- console.error(`[Pixi'VN] Ticker ${tickerName} not found`);
701
+ console.error(`[Pixi'VN] Ticker ${tickerId} not found`);
647
702
  return;
648
703
  }
649
704
  return new ticker(args, duration, priority);
650
705
  } catch (e) {
651
- console.error(`[Pixi'VN] Error while getting Ticker ${tickerName}`, e);
706
+ console.error(`[Pixi'VN] Error while getting Ticker ${tickerId}`, e);
652
707
  return;
653
708
  }
654
709
  }
@@ -711,21 +766,21 @@ var ChoiceMenuOptionClose = class {
711
766
  // src/functions/DialogueUtility.ts
712
767
  function setDialogue(props) {
713
768
  let text = "";
714
- let characterId = void 0;
769
+ let character = void 0;
715
770
  let dialogue;
716
771
  if (typeof props === "string") {
717
772
  text = props;
718
- dialogue = new DialogueBaseModel(text, characterId);
773
+ dialogue = new DialogueBaseModel(text, character);
719
774
  } else if (!(props instanceof DialogueBaseModel)) {
720
775
  text = props.text;
721
776
  if (props.character) {
722
777
  if (typeof props.character === "string") {
723
- characterId = props.character;
778
+ character = props.character;
724
779
  } else {
725
- characterId = props.character.id;
780
+ character = props.character.id;
726
781
  }
727
782
  }
728
- dialogue = new DialogueBaseModel(text, characterId);
783
+ dialogue = new DialogueBaseModel(text, character);
729
784
  } else {
730
785
  dialogue = props;
731
786
  }
@@ -751,6 +806,34 @@ function setChoiceMenuOptions(options) {
751
806
  GameStorageManager.setVariable(GameStorageManager.keysSystem.CURRENT_MENU_OPTIONS_MEMORY_KEY, value);
752
807
  GameStorageManager.setVariable(GameStorageManager.keysSystem.LAST_MENU_OPTIONS_ADDED_IN_STEP_MEMORY_KEY, GameStepManager.lastStepIndex);
753
808
  }
809
+ function getChoiceMenuOptions() {
810
+ let d = GameStorageManager.getVariable(GameStorageManager.keysSystem.CURRENT_MENU_OPTIONS_MEMORY_KEY);
811
+ if (d) {
812
+ let options = [];
813
+ d.forEach((option, index) => {
814
+ if (option.type === Close) {
815
+ let itemLabel = newCloseLabel(index);
816
+ options.push({
817
+ text: option.text,
818
+ label: itemLabel,
819
+ type: Close,
820
+ closeCurrentLabel: option.closeCurrentLabel,
821
+ props: {}
822
+ });
823
+ return;
824
+ }
825
+ let label = getLabelById(option.label);
826
+ if (label) {
827
+ let itemLabel = new Label(label.id, label.steps, label.onStepRun, index);
828
+ options.push(__spreadProps(__spreadValues({}, option), {
829
+ label: itemLabel
830
+ }));
831
+ }
832
+ });
833
+ return options;
834
+ }
835
+ return void 0;
836
+ }
754
837
 
755
838
  // src/classes/ticker/TickerBase.ts
756
839
  var TickerBase = class {
@@ -760,9 +843,14 @@ var TickerBase = class {
760
843
  * @param priority The priority of the ticker. @default UPDATE_PRIORITY.NORMAL
761
844
  */
762
845
  constructor(args, duration, priority) {
846
+ /**
847
+ * Get the id of the ticker. This variable is used in the system to get the ticker by id, {@link geTickerInstanceById}
848
+ */
849
+ this.id = "ticker_id_not_set";
763
850
  this.args = args;
764
851
  this.duration = duration;
765
852
  this.priority = priority;
853
+ this.id = this.constructor.prototype.id;
766
854
  }
767
855
  /**
768
856
  * The method that will be called every frame.
@@ -985,8 +1073,8 @@ var ZoomTicker = class extends TickerBase {
985
1073
  tagToRemoveAfter2 = [tagToRemoveAfter2];
986
1074
  }
987
1075
  let type = args.type || "zoom";
988
- let xLimit = Infinity;
989
- let yLimit = Infinity;
1076
+ let xLimit = type === "zoom" ? Infinity : 0;
1077
+ let yLimit = type === "zoom" ? Infinity : 0;
990
1078
  if (args.limit) {
991
1079
  if (typeof args.limit === "number") {
992
1080
  xLimit = args.limit;
@@ -1025,7 +1113,7 @@ var ZoomTicker = class extends TickerBase {
1025
1113
  if (element.scale.x >= xLimit && element.scale.y >= yLimit) {
1026
1114
  element.scale.x = xLimit;
1027
1115
  element.scale.y = yLimit;
1028
- GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1116
+ this.onEndOfTicker(tag, tickerId, element, tagToRemoveAfter2);
1029
1117
  }
1030
1118
  } else if (type === "unzoom") {
1031
1119
  if (element.scale.x < xLimit) {
@@ -1037,21 +1125,36 @@ var ZoomTicker = class extends TickerBase {
1037
1125
  if (element.scale.x <= xLimit && element.scale.y <= yLimit) {
1038
1126
  element.scale.x = xLimit;
1039
1127
  element.scale.y = yLimit;
1040
- GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1128
+ this.onEndOfTicker(tag, tickerId, element, tagToRemoveAfter2);
1041
1129
  }
1042
1130
  }
1043
1131
  if (xSpeed < 1e-5 && ySpeed < 1e-5 && !(args.speedProgression && args.speedProgression.type == "linear" && args.speedProgression.amt != 0)) {
1044
- GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1132
+ this.onEndOfTicker(tag, tickerId, element, tagToRemoveAfter2);
1045
1133
  }
1046
1134
  }
1047
1135
  });
1048
1136
  if (args.speedProgression)
1049
1137
  updateTickerProgression(args, "speed", args.speedProgression);
1050
1138
  }
1139
+ onEndOfTicker(tag, tickerId, _element, tagToRemoveAfter2) {
1140
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
1141
+ }
1051
1142
  };
1052
1143
  ZoomTicker = __decorateClass([
1053
1144
  tickerDecorator()
1054
1145
  ], ZoomTicker);
1146
+ var ZoomInOutTicker = class extends ZoomTicker {
1147
+ constructor(props, duration, priority) {
1148
+ super(props, duration, priority);
1149
+ }
1150
+ onEndOfTicker(tag, tickerId, element, tagToRemoveAfter2) {
1151
+ if (element.children.length > 0) {
1152
+ let elementChild = element.children[0];
1153
+ GameWindowManager.addCanvasElement(tag, elementChild);
1154
+ }
1155
+ super.onEndOfTicker(tag, tickerId, element, tagToRemoveAfter2);
1156
+ }
1157
+ };
1055
1158
 
1056
1159
  // src/constants.ts
1057
1160
  var Repeat = "repeat";
@@ -1090,6 +1193,9 @@ function loadImage(canvasImages) {
1090
1193
  });
1091
1194
  });
1092
1195
  }
1196
+ function removeCanvasElement(tag) {
1197
+ GameWindowManager.removeCanvasElement(tag);
1198
+ }
1093
1199
  function showWithDissolveTransition(_0, _1) {
1094
1200
  return __async(this, arguments, function* (tag, image, props = {}, priority) {
1095
1201
  var _a;
@@ -1166,6 +1272,147 @@ function showWithFadeTransition(_0, _1) {
1166
1272
  function removeWithFadeTransition(tag, props = {}, priority) {
1167
1273
  return removeWithDissolveTransition(tag, props, priority);
1168
1274
  }
1275
+ function moveIn(_0, _1) {
1276
+ return __async(this, arguments, function* (tag, image, props = { direction: "right" }, priority) {
1277
+ var _a;
1278
+ let canvasElement;
1279
+ if (typeof image === "string") {
1280
+ canvasElement = addImage(tag, image);
1281
+ } else {
1282
+ canvasElement = image;
1283
+ GameWindowManager.addCanvasElement(tag, canvasElement);
1284
+ }
1285
+ if (canvasElement instanceof CanvasImage && ((_a = canvasElement.texture) == null ? void 0 : _a.label) == "EMPTY") {
1286
+ yield canvasElement.load();
1287
+ }
1288
+ let destination = { x: canvasElement.x, y: canvasElement.y };
1289
+ if (props.direction == "up") {
1290
+ canvasElement.y = GameWindowManager.canvasHeight + canvasElement.height;
1291
+ } else if (props.direction == "down") {
1292
+ canvasElement.y = -canvasElement.height;
1293
+ } else if (props.direction == "left") {
1294
+ canvasElement.x = GameWindowManager.canvasWidth + canvasElement.width;
1295
+ } else if (props.direction == "right") {
1296
+ canvasElement.x = -canvasElement.width;
1297
+ }
1298
+ let effect = new MoveTicker(__spreadProps(__spreadValues({}, props), {
1299
+ destination,
1300
+ startOnlyIfHaveTexture: true
1301
+ }), priority);
1302
+ GameWindowManager.addTicker(tag, effect);
1303
+ });
1304
+ }
1305
+ function moveOut(tag, props = { direction: "right" }, priority) {
1306
+ let canvasElement = GameWindowManager.getCanvasElement(tag);
1307
+ if (!canvasElement) {
1308
+ console.warn("[Pixi'VN] The canvas element is not found.");
1309
+ return;
1310
+ }
1311
+ let destination = { x: canvasElement.x, y: canvasElement.y };
1312
+ if (props.direction == "up") {
1313
+ destination.y = -canvasElement.height;
1314
+ } else if (props.direction == "down") {
1315
+ destination.y = GameWindowManager.canvasHeight + canvasElement.height;
1316
+ } else if (props.direction == "left") {
1317
+ destination.x = -canvasElement.width;
1318
+ } else if (props.direction == "right") {
1319
+ destination.x = GameWindowManager.canvasWidth + canvasElement.width;
1320
+ }
1321
+ let effect = new MoveTicker(__spreadProps(__spreadValues({}, props), {
1322
+ destination,
1323
+ startOnlyIfHaveTexture: true,
1324
+ tagToRemoveAfter: tag
1325
+ }), priority);
1326
+ GameWindowManager.addTicker(tag, effect);
1327
+ }
1328
+ function zoomIn(_0, _1) {
1329
+ return __async(this, arguments, function* (tag, image, props = { direction: "right" }, priority) {
1330
+ var _a;
1331
+ let canvasElement;
1332
+ if (typeof image === "string") {
1333
+ canvasElement = new CanvasImage({}, image);
1334
+ } else {
1335
+ canvasElement = image;
1336
+ }
1337
+ if (canvasElement instanceof CanvasImage && ((_a = canvasElement.texture) == null ? void 0 : _a.label) == "EMPTY") {
1338
+ yield canvasElement.load();
1339
+ }
1340
+ let container = new CanvasContainer();
1341
+ container.addChild(canvasElement);
1342
+ container.height = GameWindowManager.canvasHeight;
1343
+ container.width = GameWindowManager.canvasWidth;
1344
+ GameWindowManager.addCanvasElement(tag, container);
1345
+ if (props.direction == "up") {
1346
+ container.pivot.y = GameWindowManager.canvasHeight;
1347
+ container.pivot.x = GameWindowManager.canvasWidth / 2;
1348
+ container.y = GameWindowManager.canvasHeight;
1349
+ container.x = GameWindowManager.canvasWidth / 2;
1350
+ } else if (props.direction == "down") {
1351
+ container.pivot.y = 0;
1352
+ container.pivot.x = GameWindowManager.canvasWidth / 2;
1353
+ container.y = 0;
1354
+ container.x = GameWindowManager.canvasWidth / 2;
1355
+ } else if (props.direction == "left") {
1356
+ container.pivot.x = GameWindowManager.canvasWidth;
1357
+ container.pivot.y = GameWindowManager.canvasHeight / 2;
1358
+ container.x = GameWindowManager.canvasWidth;
1359
+ container.y = GameWindowManager.canvasHeight / 2;
1360
+ } else if (props.direction == "right") {
1361
+ container.pivot.x = 0;
1362
+ container.pivot.y = GameWindowManager.canvasHeight / 2;
1363
+ container.x = 0;
1364
+ container.y = GameWindowManager.canvasHeight / 2;
1365
+ }
1366
+ container.scale.set(0);
1367
+ let effect = new ZoomInOutTicker(__spreadProps(__spreadValues({}, props), {
1368
+ startOnlyIfHaveTexture: true,
1369
+ type: "zoom",
1370
+ limit: 1
1371
+ }), priority);
1372
+ GameWindowManager.addTicker(tag, effect);
1373
+ });
1374
+ }
1375
+ function zoomOut(tag, props = { direction: "right" }, priority) {
1376
+ let canvasElement = GameWindowManager.getCanvasElement(tag);
1377
+ if (!canvasElement) {
1378
+ console.warn("[Pixi'VN] The canvas element is not found.");
1379
+ return;
1380
+ }
1381
+ let container = new CanvasContainer();
1382
+ container.addChild(canvasElement);
1383
+ container.height = GameWindowManager.canvasHeight;
1384
+ container.width = GameWindowManager.canvasWidth;
1385
+ GameWindowManager.addCanvasElement(tag, container);
1386
+ if (props.direction == "up") {
1387
+ container.pivot.y = GameWindowManager.canvasHeight;
1388
+ container.pivot.x = GameWindowManager.canvasWidth / 2;
1389
+ container.y = GameWindowManager.canvasHeight;
1390
+ container.x = GameWindowManager.canvasWidth / 2;
1391
+ } else if (props.direction == "down") {
1392
+ container.pivot.y = 0;
1393
+ container.pivot.x = GameWindowManager.canvasWidth / 2;
1394
+ container.y = 0;
1395
+ container.x = GameWindowManager.canvasWidth / 2;
1396
+ } else if (props.direction == "left") {
1397
+ container.pivot.x = GameWindowManager.canvasWidth;
1398
+ container.pivot.y = GameWindowManager.canvasHeight / 2;
1399
+ container.x = GameWindowManager.canvasWidth;
1400
+ container.y = GameWindowManager.canvasHeight / 2;
1401
+ } else if (props.direction == "right") {
1402
+ container.pivot.x = 0;
1403
+ container.pivot.y = GameWindowManager.canvasHeight / 2;
1404
+ container.x = 0;
1405
+ container.y = GameWindowManager.canvasHeight / 2;
1406
+ }
1407
+ container.scale.set(1);
1408
+ let effect = new ZoomInOutTicker(__spreadProps(__spreadValues({}, props), {
1409
+ startOnlyIfHaveTexture: true,
1410
+ type: "unzoom",
1411
+ limit: 0,
1412
+ tagToRemoveAfter: tag
1413
+ }), priority);
1414
+ GameWindowManager.addTicker(tag, effect);
1415
+ }
1169
1416
 
1170
1417
  // src/functions/ExportUtility.ts
1171
1418
  function createExportableElement(element) {
@@ -1371,7 +1618,7 @@ var _GameWindowManager = class _GameWindowManager {
1371
1618
  height
1372
1619
  }, options)).then(() => {
1373
1620
  _GameWindowManager._isInitialized = true;
1374
- this.addCanvasIntoElement(element);
1621
+ this.addCanvasIntoHTMLElement(element);
1375
1622
  window.addEventListener("resize", _GameWindowManager.resize);
1376
1623
  _GameWindowManager.resize();
1377
1624
  asciiArtLog();
@@ -1382,7 +1629,7 @@ var _GameWindowManager = class _GameWindowManager {
1382
1629
  * Add the canvas into a html element.
1383
1630
  * @param element it is the html element where I will put the canvas. Example: document.body
1384
1631
  */
1385
- static addCanvasIntoElement(element) {
1632
+ static addCanvasIntoHTMLElement(element) {
1386
1633
  if (_GameWindowManager.isInitialized) {
1387
1634
  element.appendChild(_GameWindowManager.app.canvas);
1388
1635
  } else {
@@ -1628,18 +1875,18 @@ var _GameWindowManager = class _GameWindowManager {
1628
1875
  * ```
1629
1876
  */
1630
1877
  static addTicker(canvasElementTag, ticker) {
1631
- let tickerName = ticker.constructor.name;
1878
+ let tickerId = ticker.id;
1632
1879
  if (typeof canvasElementTag === "string") {
1633
1880
  canvasElementTag = [canvasElementTag];
1634
1881
  }
1635
- if (!geTickerInstanceByClassName(tickerName, ticker.args, ticker.duration, ticker.priority)) {
1636
- console.error(`[Pixi'VN] Ticker ${tickerName} not found`);
1882
+ if (!geTickerInstanceById(tickerId, ticker.args, ticker.duration, ticker.priority)) {
1883
+ console.error(`[Pixi'VN] Ticker ${tickerId} not found`);
1637
1884
  return;
1638
1885
  }
1639
1886
  let tickerHistory = {
1640
1887
  fn: () => {
1641
1888
  },
1642
- className: tickerName,
1889
+ id: tickerId,
1643
1890
  args: createExportableElement(ticker.args),
1644
1891
  canvasElementTags: canvasElementTag,
1645
1892
  priority: ticker.priority,
@@ -1655,11 +1902,11 @@ var _GameWindowManager = class _GameWindowManager {
1655
1902
  _GameWindowManager.removeTicker(id);
1656
1903
  }
1657
1904
  }, ticker.duration * 1e3);
1658
- _GameWindowManager.addTickerTimeoutInfo(canvasElementTag, tickerName, timeout.toString(), true);
1905
+ _GameWindowManager.addTickerTimeoutInfo(canvasElementTag, tickerId, timeout.toString(), true);
1659
1906
  }
1660
1907
  }
1661
1908
  static pushTicker(id, tickerData, ticker) {
1662
- _GameWindowManager.removeAssociationBetweenTickerCanvasElement(tickerData.canvasElementTags, tickerData);
1909
+ _GameWindowManager.removeAssociationBetweenTickerCanvasElement(tickerData.canvasElementTags, ticker);
1663
1910
  _GameWindowManager._currentTickers[id] = tickerData;
1664
1911
  tickerData.fn = (t) => {
1665
1912
  let data = _GameWindowManager._currentTickers[id];
@@ -1700,9 +1947,9 @@ var _GameWindowManager = class _GameWindowManager {
1700
1947
  if (step.hasOwnProperty("type") && step.type === "pause") {
1701
1948
  return step;
1702
1949
  }
1703
- let tickerName = step.constructor.name;
1950
+ let tickerId = step.id;
1704
1951
  return {
1705
- ticker: tickerName,
1952
+ ticker: tickerId,
1706
1953
  args: createExportableElement(step.args),
1707
1954
  duration: step.duration
1708
1955
  };
@@ -1740,16 +1987,16 @@ var _GameWindowManager = class _GameWindowManager {
1740
1987
  _GameWindowManager.addTickerTimeoutInfo(tag, "steps", timeout.toString(), false);
1741
1988
  return;
1742
1989
  }
1743
- let ticker = geTickerInstanceByClassName(step.ticker, step.args, step.duration, step.priority);
1990
+ let ticker = geTickerInstanceById(step.ticker, step.args, step.duration, step.priority);
1744
1991
  if (!ticker) {
1745
1992
  console.error(`[Pixi'VN] Ticker ${step.ticker} not found`);
1746
1993
  return;
1747
1994
  }
1748
- let tickerName = ticker.constructor.name;
1995
+ let tickerName = ticker.id;
1749
1996
  let tickerHistory = {
1750
1997
  fn: () => {
1751
1998
  },
1752
- className: tickerName,
1999
+ id: tickerName,
1753
2000
  args: createExportableElement(ticker.args),
1754
2001
  canvasElementTags: [tag],
1755
2002
  priority: ticker.priority,
@@ -1806,26 +2053,26 @@ var _GameWindowManager = class _GameWindowManager {
1806
2053
  * ```
1807
2054
  */
1808
2055
  static removeAssociationBetweenTickerCanvasElement(tags, ticker) {
1809
- let tickerName;
2056
+ let tickerId;
1810
2057
  if (typeof ticker === "string") {
1811
- tickerName = ticker;
2058
+ tickerId = ticker;
1812
2059
  } else if (ticker instanceof TickerBase) {
1813
- tickerName = ticker.constructor.name;
2060
+ tickerId = ticker.id;
1814
2061
  } else {
1815
- tickerName = ticker.name;
2062
+ tickerId = ticker.prototype.id;
1816
2063
  }
1817
2064
  if (typeof tags === "string") {
1818
2065
  tags = [tags];
1819
2066
  }
1820
2067
  for (let id in _GameWindowManager._currentTickers) {
1821
2068
  let ticker2 = _GameWindowManager._currentTickers[id];
1822
- if (ticker2.className === tickerName) {
2069
+ if (ticker2.id === tickerId) {
1823
2070
  _GameWindowManager._currentTickers[id].canvasElementTags = ticker2.canvasElementTags.filter((e) => !tags.includes(e));
1824
2071
  }
1825
2072
  }
1826
2073
  for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1827
2074
  let TickerTimeout = _GameWindowManager._currentTickersTimeouts[timeout];
1828
- if (TickerTimeout.ticker === tickerName && TickerTimeout.canBeDeletedBeforeEnd) {
2075
+ if (TickerTimeout.ticker === tickerId && TickerTimeout.canBeDeletedBeforeEnd) {
1829
2076
  _GameWindowManager._currentTickersTimeouts[timeout].tags = TickerTimeout.tags.filter((t) => !tags.includes(t));
1830
2077
  }
1831
2078
  }
@@ -2011,11 +2258,11 @@ var _GameWindowManager = class _GameWindowManager {
2011
2258
  for (let id in currentTickers) {
2012
2259
  let t = currentTickers[id];
2013
2260
  let tags = t.canvasElementTags;
2014
- let ticker = geTickerInstanceByClassName(t.className, t.args, t.duration, t.priority);
2261
+ let ticker = geTickerInstanceById(t.id, t.args, t.duration, t.priority);
2015
2262
  if (ticker) {
2016
2263
  _GameWindowManager.addTicker(tags, ticker);
2017
2264
  } else {
2018
- console.error(`[Pixi'VN] Ticker ${t.className} not found`);
2265
+ console.error(`[Pixi'VN] Ticker ${t.id} not found`);
2019
2266
  }
2020
2267
  }
2021
2268
  }
@@ -2216,6 +2463,13 @@ var _GameStepManager = class _GameStepManager {
2216
2463
  _GameStepManager._openedLabels = _GameStepManager.originalStepData.openedLabels;
2217
2464
  }
2218
2465
  /* Run Methods */
2466
+ static get canGoNext() {
2467
+ let options = getChoiceMenuOptions();
2468
+ if (options && options.length > 0) {
2469
+ return false;
2470
+ }
2471
+ return true;
2472
+ }
2219
2473
  /**
2220
2474
  * Execute the next step and add it to the history.
2221
2475
  * @param props The props to pass to the step.
@@ -2225,7 +2479,7 @@ var _GameStepManager = class _GameStepManager {
2225
2479
  * ```typescript
2226
2480
  * function nextOnClick() {
2227
2481
  * setLoading(true)
2228
- * GameStepManager.runNextStep(yourParams)
2482
+ * GameStepManager.goNext(yourParams)
2229
2483
  * .then((result) => {
2230
2484
  * setUpdate((p) => p + 1)
2231
2485
  * setLoading(false)
@@ -2240,8 +2494,12 @@ var _GameStepManager = class _GameStepManager {
2240
2494
  * }
2241
2495
  * ```
2242
2496
  */
2243
- static runNextStep(props, choiseMade) {
2497
+ static goNext(props, choiseMade) {
2244
2498
  return __async(this, null, function* () {
2499
+ if (!_GameStepManager.canGoNext) {
2500
+ console.warn("[Pixi'VN] The player must make a choice");
2501
+ return;
2502
+ }
2245
2503
  _GameStepManager.increaseCurrentStepIndex();
2246
2504
  return yield _GameStepManager.runCurrentStep(props, choiseMade);
2247
2505
  });
@@ -2272,7 +2530,7 @@ var _GameStepManager = class _GameStepManager {
2272
2530
  return result;
2273
2531
  } else if (_GameStepManager.openedLabels.length > 1) {
2274
2532
  _GameStepManager.closeCurrentLabel();
2275
- return yield _GameStepManager.runNextStep(props, choiseMade);
2533
+ return yield _GameStepManager.goNext(props, choiseMade);
2276
2534
  } else {
2277
2535
  _GameStepManager.restorLastLabelList();
2278
2536
  console.error("[Pixi'VN] The end of the game is not managed, so the game is blocked. Read this documentation to know how to manage the end of the game: https://pixi-vn.web.app/start/labels.html#how-manage-the-end-of-the-game");
@@ -2420,7 +2678,7 @@ var _GameStepManager = class _GameStepManager {
2420
2678
  if (choice.closeCurrentLabel) {
2421
2679
  _GameStepManager.closeCurrentLabel();
2422
2680
  }
2423
- return _GameStepManager.runNextStep(props, choiseMade);
2681
+ return _GameStepManager.goNext(props, choiseMade);
2424
2682
  });
2425
2683
  }
2426
2684
  /* After Update Methods */
@@ -2748,15 +3006,15 @@ var DialogueBaseModel = class {
2748
3006
  if (typeof text === "string") {
2749
3007
  this.text = text;
2750
3008
  if (typeof character === "string") {
2751
- this.characterId = character;
3009
+ this.character = character;
2752
3010
  } else {
2753
- this.characterId = character == null ? void 0 : character.id;
3011
+ this.character = character == null ? void 0 : character.id;
2754
3012
  }
2755
3013
  this.oltherParams = oltherParams;
2756
3014
  } else {
2757
3015
  this.text = text.text;
2758
- if (text.characterId) {
2759
- this.characterId = text.characterId;
3016
+ if (text.character) {
3017
+ this.character = text.character;
2760
3018
  }
2761
3019
  this.oltherParams = text.oltherParams || {};
2762
3020
  }
@@ -2769,7 +3027,7 @@ var DialogueBaseModel = class {
2769
3027
  export() {
2770
3028
  return {
2771
3029
  text: this.text,
2772
- characterId: this.characterId,
3030
+ character: this.character,
2773
3031
  oltherParams: this.oltherParams
2774
3032
  };
2775
3033
  }
@@ -2791,81 +3049,305 @@ var helmlokImage = "https://pixijs.com/assets/helmlok.png";
2791
3049
  var helmlokName = `<span style="color:blue">Helmlok</span>`;
2792
3050
  var skullyImage = "https://pixijs.com/assets/skully.png";
2793
3051
  var skullyName = `<span style="color:red">Skully</span>`;
3052
+ var bunnyImage = "https://pixijs.com/assets/bunny.png";
3053
+ var bunnyName = `Bunny`;
2794
3054
 
2795
- // src/labels/MarkdownTest.ts
2796
- var MARKDOWN_TEST_LABEL = "___pixi_vn_markdown_test___";
2797
- var markdownTest = newLabel(MARKDOWN_TEST_LABEL, [
2798
- () => __async(void 0, null, function* () {
2799
- setDialogue({
3055
+ // src/labels/BaseCanvasElementTestLabel.ts
3056
+ var BASE_CANVAS_ELEMENT_LABEL = "___pixi_vn_base_canvas_element_label___";
3057
+ var baseCanvasElementTestLabel = newLabel(
3058
+ BASE_CANVAS_ELEMENT_LABEL,
3059
+ [
3060
+ () => __async(void 0, null, function* () {
3061
+ let number = 25;
3062
+ setDialogue({
3063
+ character: juliette,
3064
+ text: `Here's what's going to happen: I'm going to create ${number} bunnies (CanvasSprites) and put them in a CanvasContainer.`
3065
+ });
3066
+ const container = new CanvasContainer();
3067
+ GameWindowManager.addCanvasElement("container", container);
3068
+ const texture = yield Assets.load(bunnyImage);
3069
+ for (let i = 0; i < number; i++) {
3070
+ const bunny = new CanvasSprite(texture);
3071
+ bunny.x = i % 5 * 40;
3072
+ bunny.y = Math.floor(i / 5) * 40;
3073
+ container.addChild(bunny);
3074
+ }
3075
+ container.x = GameWindowManager.screen.width / 2;
3076
+ container.y = GameWindowManager.screen.height / 2;
3077
+ container.pivot.x = container.width / 2;
3078
+ container.pivot.y = container.height / 2;
3079
+ GameWindowManager.addTicker("container", new RotateTicker({ speed: 1 }));
3080
+ }),
3081
+ () => __async(void 0, null, function* () {
3082
+ removeCanvasElement("container");
3083
+ setDialogue({
3084
+ character: juliette,
3085
+ text: `Here's what's going to happen: I'm going to create some text elements with different styles and put them on the stage.
3086
+ But it will generate a warn message, because the FillGradient or FillPattern has not yet been supported by the Pixi\u2019VN ( you can see the status of the issue here: [#76](https://github.com/DRincs-Productions/pixi-vn/issues/76)).`
3087
+ });
3088
+ const basicText = new CanvasText({ text: "Basic text in pixi" });
3089
+ basicText.x = 50;
3090
+ basicText.y = 100;
3091
+ GameWindowManager.addCanvasElement("basicText", basicText);
3092
+ const fill = new FillGradient(0, 0, 0, 36 * 1.7 * 7);
3093
+ const colors = [16777215, 65433].map((color) => Color.shared.setValue(color).toNumber());
3094
+ colors.forEach((number, index) => {
3095
+ const ratio = index / colors.length;
3096
+ fill.addColorStop(ratio, number);
3097
+ });
3098
+ const style = new TextStyle({
3099
+ fontFamily: "Arial",
3100
+ fontSize: 36,
3101
+ fontStyle: "italic",
3102
+ fontWeight: "bold",
3103
+ fill: { fill },
3104
+ stroke: { color: "#4a1850", width: 5, join: "round" },
3105
+ dropShadow: {
3106
+ color: "#000000",
3107
+ blur: 4,
3108
+ angle: Math.PI / 6,
3109
+ distance: 6
3110
+ },
3111
+ wordWrap: true,
3112
+ wordWrapWidth: 440
3113
+ });
3114
+ const richText = new CanvasText({
3115
+ text: "Rich text with a lot of options and across multiple lines",
3116
+ style
3117
+ });
3118
+ richText.x = 50;
3119
+ richText.y = 220;
3120
+ GameWindowManager.addCanvasElement("richText", richText);
3121
+ const skewStyle = new TextStyle({
3122
+ fontFamily: "Arial",
3123
+ dropShadow: {
3124
+ alpha: 0.8,
3125
+ angle: 2.1,
3126
+ blur: 4,
3127
+ color: "0x111111",
3128
+ distance: 10
3129
+ },
3130
+ fill: "#ffffff",
3131
+ stroke: { color: "#004620", width: 12, join: "round" },
3132
+ fontSize: 60,
3133
+ fontWeight: "lighter"
3134
+ });
3135
+ const skewText = new CanvasText({
3136
+ text: "SKEW IS COOL",
3137
+ style: skewStyle
3138
+ });
3139
+ skewText.skew.set(0.65, -0.3);
3140
+ skewText.anchor.set(0.5, 0.5);
3141
+ skewText.x = 300;
3142
+ skewText.y = 480;
3143
+ GameWindowManager.addCanvasElement("skewText", skewText);
3144
+ })
3145
+ ]
3146
+ );
3147
+ var EventTest1 = class extends CanvasEvent {
3148
+ fn(event, sprite) {
3149
+ if (event === "pointerdown") {
3150
+ sprite.scale.x *= 1.25;
3151
+ sprite.scale.y *= 1.25;
3152
+ }
3153
+ }
3154
+ };
3155
+ EventTest1 = __decorateClass([
3156
+ eventDecorator("___pixi_vn_canvas_events_test_event1___")
3157
+ ], EventTest1);
3158
+ var EventTest2 = class extends CanvasEvent {
3159
+ constructor() {
3160
+ super(...arguments);
3161
+ this.textureButtonDown = Texture.from("https://pixijs.com/assets/button_down.png");
3162
+ this.textureButtonOver = Texture.from("https://pixijs.com/assets/button_over.png");
3163
+ this.textureButton = Texture.from("https://pixijs.com/assets/button.png");
3164
+ }
3165
+ fn(event, sprite) {
3166
+ if (event === "pointerdown") {
3167
+ sprite.isdown = true;
3168
+ sprite.texture = this.textureButtonDown;
3169
+ sprite.alpha = 1;
3170
+ } else if (event === "pointerup" || event === "pointerupoutside") {
3171
+ sprite.isdown = false;
3172
+ if (sprite.isOver) {
3173
+ sprite.texture = this.textureButtonOver;
3174
+ } else {
3175
+ sprite.texture = this.textureButton;
3176
+ }
3177
+ } else if (event === "pointerover") {
3178
+ sprite.isOver = true;
3179
+ if (sprite.isdown) {
3180
+ return;
3181
+ }
3182
+ sprite.texture = this.textureButtonOver;
3183
+ } else if (event === "pointerout") {
3184
+ sprite.isOver = false;
3185
+ if (sprite.isdown) {
3186
+ return;
3187
+ }
3188
+ sprite.texture = this.textureButton;
3189
+ }
3190
+ }
3191
+ };
3192
+ EventTest2 = __decorateClass([
3193
+ eventDecorator("___pixi_vn_canvas_events_test_event2___")
3194
+ ], EventTest2);
3195
+ var CANVAS_EVENTS_TEST_LABEL = "___pixi_vn_canvas_events_test___";
3196
+ var canvasEventsTestLabel = newLabel(
3197
+ CANVAS_EVENTS_TEST_LABEL,
3198
+ [
3199
+ () => setDialogue({
2800
3200
  character: juliette,
2801
- text: `
2802
- # Markdown Test
2803
-
2804
- Hello, this is a test of the markdown parser. Pixi'VN does not manage markdown, but you can implement a markdown parser to display text with markdown syntax.
2805
-
2806
- For example in React, you can use the library [react-markdown](https://www.npmjs.com/package/react-markdown).
2807
-
2808
- ## Colored Text
2809
-
2810
- <span style="color:blue">some *blue* text</span>.
2811
-
2812
- <span style="color:red">some *red* text</span>.
2813
-
2814
- <span style="color:green">some *green* text</span>.
2815
-
2816
- ## Bold Text
2817
-
2818
- **This is bold text.**
2819
-
2820
- ## Italic Text
2821
-
2822
- *This is italic text.*
2823
-
2824
- ## Delete Text
2825
-
2826
- ~~This is deleted text.~~
2827
-
2828
- ## Link Test
2829
-
2830
- [Link to Google](https://www.google.com)
2831
-
2832
- ## H2 Test
2833
-
2834
- ### H3 Test
2835
-
2836
- #### H4 Test
2837
-
2838
- ## Code Test
2839
-
2840
- \`Hello World\`
2841
-
2842
- \`\`\`js
2843
- console.log("Hello World")
2844
- \`\`\`
2845
-
2846
- ## List Test
2847
-
2848
- - Item 1
2849
- * Item 2
2850
- - [x] Item 3
2851
-
2852
- ## Table Test
2853
-
2854
- | Header 1 | Header 2 |
2855
- | -------- | -------- |
2856
- | Cell 1 | Cell 2 |
2857
-
2858
- ## Separator Test
2859
-
2860
- ***
2861
- Footer
2862
-
2863
- `
3201
+ text: "This is the test of clickable elements in a canvas."
3202
+ }),
3203
+ () => __async(void 0, null, function* () {
3204
+ setDialogue({
3205
+ character: juliette,
3206
+ text: `This is my friend, ${bunnyName}. It's small now, but if you try to click on it it will get bigger and bigger. (This example is from the official [PixiJS website](https://pixijs.com/8.x/examples/events/click).)`
3207
+ });
3208
+ const texture = yield Assets.load(bunnyImage);
3209
+ const sprite = CanvasSprite.from(texture);
3210
+ sprite.anchor.set(0.5);
3211
+ sprite.x = GameWindowManager.screen.width / 2;
3212
+ sprite.y = GameWindowManager.screen.height / 2;
3213
+ sprite.eventMode = "static";
3214
+ sprite.cursor = "pointer";
3215
+ sprite.onEvent("pointerdown", EventTest1);
3216
+ GameWindowManager.addCanvasElement("bunny", sprite);
3217
+ }),
3218
+ () => __async(void 0, null, function* () {
3219
+ GameWindowManager.clear();
3220
+ setDialogue({
3221
+ character: juliette,
3222
+ text: `This is the test of buttons in a canvas. (This example is from the official [PixiJS website](https://pixijs.com/8.x/examples/events/interactivity).)`
3223
+ });
3224
+ yield Assets.load([
3225
+ "https://pixijs.com/assets/bg_button.jpg",
3226
+ "https://pixijs.com/assets/button.png",
3227
+ "https://pixijs.com/assets/button_down.png",
3228
+ "https://pixijs.com/assets/button_over.png"
3229
+ ]);
3230
+ const background = CanvasSprite.from("https://pixijs.com/assets/bg_button.jpg");
3231
+ background.width = GameWindowManager.screen.width;
3232
+ background.height = GameWindowManager.screen.height;
3233
+ GameWindowManager.addCanvasElement("bg", background);
3234
+ const textureButton = Texture.from("https://pixijs.com/assets/button.png");
3235
+ const buttons = [];
3236
+ const buttonPositions = [175, 75, 655, 75, 410, 325, 150, 465, 685, 445];
3237
+ for (let i = 0; i < 5; i++) {
3238
+ const button = new CanvasSprite(textureButton);
3239
+ button.anchor.set(0.5);
3240
+ button.x = buttonPositions[i * 2];
3241
+ button.y = buttonPositions[i * 2 + 1];
3242
+ button.eventMode = "static";
3243
+ button.cursor = "pointer";
3244
+ button.onEvent("pointerdown", EventTest2).onEvent("pointerup", EventTest2).onEvent("pointerupoutside", EventTest2).onEvent("pointerover", EventTest2).onEvent("pointerout", EventTest2);
3245
+ GameWindowManager.addCanvasElement("button" + i, button);
3246
+ buttons.push(button);
3247
+ }
3248
+ buttons[0].scale.set(1.2);
3249
+ buttons[2].rotation = Math.PI / 10;
3250
+ buttons[3].scale.set(0.8);
3251
+ buttons[4].scale.set(0.8, 1.2);
3252
+ buttons[4].rotation = Math.PI;
3253
+ })
3254
+ ]
3255
+ );
3256
+ var AlienTintingTest = class extends CanvasSprite {
3257
+ constructor() {
3258
+ super(...arguments);
3259
+ this.direction = 0;
3260
+ this.turningSpeed = 0;
3261
+ this.speed = 0;
3262
+ }
3263
+ get memory() {
3264
+ return __spreadProps(__spreadValues({}, super.memory), {
3265
+ direction: this.direction,
3266
+ turningSpeed: this.turningSpeed,
3267
+ speed: this.speed
2864
3268
  });
2865
- })
2866
- ]);
3269
+ }
3270
+ set memory(memory) {
3271
+ super.memory = memory;
3272
+ this.direction = memory.direction;
3273
+ this.turningSpeed = memory.turningSpeed;
3274
+ this.speed = memory.speed;
3275
+ }
3276
+ static from(source, skipCache) {
3277
+ let sprite = Sprite.from(source, skipCache);
3278
+ let mySprite = new AlienTintingTest();
3279
+ mySprite.texture = sprite.texture;
3280
+ return mySprite;
3281
+ }
3282
+ };
3283
+ AlienTintingTest = __decorateClass([
3284
+ canvasElementDecorator("___pixi_vn_custom_canvas_element___")
3285
+ ], AlienTintingTest);
3286
+ var TintingTestTicker = class extends TickerBase {
3287
+ constructor() {
3288
+ super({});
3289
+ }
3290
+ fn(_t, _args, tags) {
3291
+ tags.forEach((tag) => {
3292
+ const dudeBoundsPadding = 100;
3293
+ const dudeBounds = new Rectangle(
3294
+ -dudeBoundsPadding,
3295
+ -dudeBoundsPadding,
3296
+ GameWindowManager.screen.width + dudeBoundsPadding * 2,
3297
+ GameWindowManager.screen.height + dudeBoundsPadding * 2
3298
+ );
3299
+ let dude = GameWindowManager.getCanvasElement(tag);
3300
+ if (dude && dude instanceof AlienTintingTest) {
3301
+ dude.direction += dude.turningSpeed * 0.01;
3302
+ dude.x += Math.sin(dude.direction) * dude.speed;
3303
+ dude.y += Math.cos(dude.direction) * dude.speed;
3304
+ dude.rotation = -dude.direction - Math.PI / 2;
3305
+ if (dude.x < dudeBounds.x) {
3306
+ dude.x += dudeBounds.width;
3307
+ } else if (dude.x > dudeBounds.x + dudeBounds.width) {
3308
+ dude.x -= dudeBounds.width;
3309
+ }
3310
+ if (dude.y < dudeBounds.y) {
3311
+ dude.y += dudeBounds.height;
3312
+ } else if (dude.y > dudeBounds.y + dudeBounds.height) {
3313
+ dude.y -= dudeBounds.height;
3314
+ }
3315
+ }
3316
+ });
3317
+ }
3318
+ };
3319
+ TintingTestTicker = __decorateClass([
3320
+ tickerDecorator("___pixi_vn_custom_ticker___")
3321
+ ], TintingTestTicker);
3322
+ var CUSTOM_TICKER_CANVAS_ELEMENT_TEST_LABEL = "___pixi_vn_custom_ticker_canvas_element_test___";
3323
+ var customTickerCanvasElementTestLabel = newLabel(
3324
+ CUSTOM_TICKER_CANVAS_ELEMENT_TEST_LABEL,
3325
+ [
3326
+ () => __async(void 0, null, function* () {
3327
+ const totalDudes = 100;
3328
+ for (let i = 0; i < totalDudes; i++) {
3329
+ const texture = yield Assets.load(eggHeadImage);
3330
+ const dude = AlienTintingTest.from(texture);
3331
+ dude.anchor.set(0.5);
3332
+ dude.scale.set(0.8 + Math.random() * 0.3);
3333
+ dude.x = Math.random() * GameWindowManager.screen.width;
3334
+ dude.y = Math.random() * GameWindowManager.screen.height;
3335
+ dude.tint = Math.random() * 16777215;
3336
+ dude.direction = Math.random() * Math.PI * 2;
3337
+ dude.turningSpeed = Math.random() - 0.8;
3338
+ dude.speed = 2 + Math.random() * 2;
3339
+ GameWindowManager.addCanvasElement("alien" + i, dude);
3340
+ GameWindowManager.addTicker("alien" + i, new TintingTestTicker());
3341
+ }
3342
+ setDialogue({
3343
+ character: juliette,
3344
+ text: `This is a test of custom ticker and canvas element. In this test, we have created ${totalDudes} ${eggHeadName} with random tint, scale, position, direction, turning speed, and speed. With the custom ticker, we are moving the custom canvas element in a random direction. (This example is from the official [PixiJS website](https://pixijs.com/8.x/examples/events/interactivity).)`
3345
+ });
3346
+ })
3347
+ ]
3348
+ );
2867
3349
 
2868
- // src/labels/ShowImageTest.ts
3350
+ // src/labels/ImagesAnimationsTestLabel.ts
2869
3351
  var IMAGE_ANIMAIONS_TEST_LABEL = "___pixi_vn_images_animations_test___";
2870
3352
  var imagesAnimationsTest = newLabel(IMAGE_ANIMAIONS_TEST_LABEL, [
2871
3353
  () => __async(void 0, null, function* () {
@@ -2894,6 +3376,8 @@ var imagesAnimationsTest = newLabel(IMAGE_ANIMAIONS_TEST_LABEL, [
2894
3376
  new ChoiceMenuOption("Rotate", imagesRotateTest),
2895
3377
  new ChoiceMenuOption("Move", imagesMoveTest),
2896
3378
  new ChoiceMenuOption("Zoom", imagesZoomTest),
3379
+ new ChoiceMenuOption("Move in/out", imagesMoveInOutTest),
3380
+ new ChoiceMenuOption("Zoom in/out", imagesZoomInOutTest),
2897
3381
  new ChoiceMenuOptionClose("Cancel", true)
2898
3382
  ]);
2899
3383
  }),
@@ -3148,6 +3632,148 @@ var imagesZoomTest = newLabel("___pixi_vn_images_zoom_test___", [
3148
3632
  ]);
3149
3633
  }
3150
3634
  ]);
3635
+ var imagesMoveInOutTest = newLabel("___pixi_vn_images_move_in_out_test___", [
3636
+ () => __async(void 0, null, function* () {
3637
+ setDialogue({
3638
+ character: juliette,
3639
+ text: `Here's what's going to happen:
3640
+ - ${eggHeadName} will move in from the top with a speed of 800. If you go next, ${eggHeadName} will move out from the bottom with a speed of 800.
3641
+ - ${flowerTopName} will move in from the right with a speed of 800 and a speed progression of 0.02. If you go next, ${flowerTopName} will move out from the left with a speed of 800 and a speed progression of 0.02.
3642
+ - ${helmlokName} will move in from the left with a speed of 800. If you go next, ${helmlokName} will move out from the right with a speed of 800.
3643
+ - ${skullyName} will move in from the bottom with a speed of 800 and a speed progression of 0.02. If you go next, ${skullyName} will move out from the top with a speed of 800 and a speed progression of 0.02.`
3644
+ });
3645
+ let eggHead = new CanvasImage({ x: 100, y: 100 }, eggHeadImage);
3646
+ let flowerTop = new CanvasImage({ x: 300, y: 100 }, flowerTopImage);
3647
+ let helmlok = new CanvasImage({ x: 100, y: 300 }, helmlokImage);
3648
+ let skully = new CanvasImage({ x: 300, y: 300 }, skullyImage);
3649
+ moveIn("eggHead", eggHead, { speed: 800, direction: "down" });
3650
+ moveIn("flowerTop", flowerTop, {
3651
+ speed: 800,
3652
+ direction: "left",
3653
+ speedProgression: { type: "exponential", percentage: 0.02 }
3654
+ });
3655
+ moveIn("helmlok", helmlok, { speed: 800, direction: "right" });
3656
+ moveIn("skully", skully, {
3657
+ speed: 800,
3658
+ direction: "up",
3659
+ speedProgression: { type: "exponential", percentage: 0.02 }
3660
+ });
3661
+ }),
3662
+ () => {
3663
+ moveOut("eggHead", { speed: 800, direction: "down" });
3664
+ moveOut("flowerTop", { speed: 800, direction: "left" });
3665
+ moveOut("helmlok", { speed: 800, direction: "right" });
3666
+ moveOut("skully", { speed: 800, direction: "up" });
3667
+ }
3668
+ ]);
3669
+ var imagesZoomInOutTest = newLabel("___pixi_vn_images_zoom_in_out_test___", [
3670
+ () => __async(void 0, null, function* () {
3671
+ GameWindowManager.removeCanvasElements();
3672
+ let eggHead = new CanvasImage({ x: 100, y: 100 }, eggHeadImage);
3673
+ let flowerTop = new CanvasImage({ x: 300, y: 100 }, flowerTopImage);
3674
+ let helmlok = new CanvasImage({ x: 100, y: 300 }, helmlokImage);
3675
+ let skully = new CanvasImage({ x: 300, y: 300 }, skullyImage);
3676
+ zoomIn("eggHead", eggHead, { speed: 3, direction: "down" });
3677
+ zoomIn("flowerTop", flowerTop, {
3678
+ speed: 3,
3679
+ direction: "left",
3680
+ speedProgression: { type: "exponential", percentage: 0.02 }
3681
+ });
3682
+ zoomIn("helmlok", helmlok, { speed: 3, direction: "right" });
3683
+ zoomIn("skully", skully, {
3684
+ speed: 3,
3685
+ direction: "up",
3686
+ speedProgression: { type: "exponential", percentage: 0.02 }
3687
+ });
3688
+ }),
3689
+ () => __async(void 0, null, function* () {
3690
+ zoomOut("eggHead", {
3691
+ speed: 3,
3692
+ direction: "down",
3693
+ speedProgression: { type: "exponential", percentage: 0.02 }
3694
+ });
3695
+ zoomOut("flowerTop", { speed: 3, direction: "left" });
3696
+ zoomOut("helmlok", { speed: 3, direction: "right" });
3697
+ zoomOut("skully", {
3698
+ speed: 3,
3699
+ direction: "up",
3700
+ speedProgression: { type: "exponential", percentage: 0.02 }
3701
+ });
3702
+ })
3703
+ ]);
3704
+
3705
+ // src/labels/MarkdownTest.ts
3706
+ var MARKDOWN_TEST_LABEL = "___pixi_vn_markdown_test___";
3707
+ var markdownTest = newLabel(MARKDOWN_TEST_LABEL, [
3708
+ () => __async(void 0, null, function* () {
3709
+ setDialogue({
3710
+ character: juliette,
3711
+ text: `
3712
+ # Markdown Test
3713
+
3714
+ Hello, this is a test of the markdown parser. Pixi'VN does not manage markdown, but you can implement a markdown parser to display text with markdown syntax.
3715
+
3716
+ For example in React, you can use the library [react-markdown](https://www.npmjs.com/package/react-markdown).
3717
+
3718
+ ## Colored Text
3719
+
3720
+ <span style="color:blue">some *blue* text</span>.
3721
+
3722
+ <span style="color:red">some *red* text</span>.
3723
+
3724
+ <span style="color:green">some *green* text</span>.
3725
+
3726
+ ## Bold Text
3727
+
3728
+ **This is bold text.**
3729
+
3730
+ ## Italic Text
3731
+
3732
+ *This is italic text.*
3733
+
3734
+ ## Delete Text
3735
+
3736
+ ~~This is deleted text.~~
3737
+
3738
+ ## Link Test
3739
+
3740
+ [Link to Google](https://www.google.com)
3741
+
3742
+ ## H2 Test
3743
+
3744
+ ### H3 Test
3745
+
3746
+ #### H4 Test
3747
+
3748
+ ## Code Test
3749
+
3750
+ \`Hello World\`
3751
+
3752
+ \`\`\`js
3753
+ console.log("Hello World")
3754
+ \`\`\`
3755
+
3756
+ ## List Test
3757
+
3758
+ - Item 1
3759
+ * Item 2
3760
+ - [x] Item 3
3761
+
3762
+ ## Table Test
3763
+
3764
+ | Header 1 | Header 2 |
3765
+ | -------- | -------- |
3766
+ | Cell 1 | Cell 2 |
3767
+
3768
+ ## Separator Test
3769
+
3770
+ ***
3771
+ Footer
3772
+
3773
+ `
3774
+ });
3775
+ })
3776
+ ]);
3151
3777
 
3152
3778
  // src/labels/StartLabel.ts
3153
3779
  var pixivnTestStartLabel = newLabel(
@@ -3171,6 +3797,15 @@ var pixivnTestStartLabel = newLabel(
3171
3797
  (props) => GameStepManager.jumpLabel(pixivnTestStartLabel2, props)
3172
3798
  ]
3173
3799
  );
3800
+ var openWiki = newLabel(
3801
+ "___pixi_vn_open_wiki___",
3802
+ [
3803
+ (props) => {
3804
+ window.open("https://pixi-vn.web.app/");
3805
+ GameStepManager.goNext(props);
3806
+ }
3807
+ ]
3808
+ );
3174
3809
  var RESTART_TEST_LABEL = "___pixi_vn_restart_test_label___";
3175
3810
  var pixivnTestStartLabel2 = newLabel(
3176
3811
  RESTART_TEST_LABEL,
@@ -3179,7 +3814,11 @@ var pixivnTestStartLabel2 = newLabel(
3179
3814
  GameWindowManager.clear();
3180
3815
  setDialogue({ character: juliette, text: "Which test would you like to start with?" });
3181
3816
  setChoiceMenuOptions([
3182
- new ChoiceMenuOption("Images and Animations", imagesAnimationsTest),
3817
+ new ChoiceMenuOption("Open Pixi\u2019VN Wiki", openWiki),
3818
+ new ChoiceMenuOption("Images, Transitions and Animations Test", imagesAnimationsTest),
3819
+ new ChoiceMenuOption("Canvas Events Test Label", canvasEventsTestLabel),
3820
+ new ChoiceMenuOption("Base Canvas Element Test", baseCanvasElementTestLabel),
3821
+ new ChoiceMenuOption("Custom Ticker Canvas Element Test", customTickerCanvasElementTestLabel),
3183
3822
  new ChoiceMenuOption("Markdown Test", markdownTest)
3184
3823
  ]);
3185
3824
  },
@@ -3188,5 +3827,5 @@ var pixivnTestStartLabel2 = newLabel(
3188
3827
  );
3189
3828
 
3190
3829
  export { juliette, pixivnTestStartLabel };
3191
- //# sourceMappingURL=out.js.map
3830
+ //# sourceMappingURL=index.mjs.map
3192
3831
  //# sourceMappingURL=index.mjs.map