@drincs/pixi-vn 0.4.7 → 0.4.8

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 (513) hide show
  1. package/dist/TickerBase-CFEJHstJ.d.mts +73 -0
  2. package/dist/TickerBase-CjfyD6j5.d.ts +73 -0
  3. package/dist/classes/CanvasEvent.d.mts +24 -0
  4. package/dist/classes/CanvasEvent.d.ts +24 -0
  5. package/dist/classes/CanvasEvent.js +12 -0
  6. package/dist/classes/CanvasEvent.js.map +1 -0
  7. package/dist/classes/CanvasEvent.mjs +10 -0
  8. package/dist/classes/CanvasEvent.mjs.map +1 -0
  9. package/dist/classes/CharacterBaseModel.d.mts +90 -0
  10. package/dist/classes/CharacterBaseModel.d.ts +90 -0
  11. package/dist/classes/CharacterBaseModel.js +1529 -0
  12. package/dist/classes/CharacterBaseModel.js.map +1 -0
  13. package/dist/classes/CharacterBaseModel.mjs +1527 -0
  14. package/dist/classes/CharacterBaseModel.mjs.map +1 -0
  15. package/dist/classes/ChoiceMenuOptionLabel.d.mts +42 -0
  16. package/dist/classes/ChoiceMenuOptionLabel.d.ts +42 -0
  17. package/dist/classes/ChoiceMenuOptionLabel.js +19 -0
  18. package/dist/classes/ChoiceMenuOptionLabel.js.map +1 -0
  19. package/dist/classes/ChoiceMenuOptionLabel.mjs +17 -0
  20. package/dist/classes/ChoiceMenuOptionLabel.mjs.map +1 -0
  21. package/dist/classes/DialogueBaseModel.d.mts +58 -0
  22. package/dist/classes/DialogueBaseModel.d.ts +58 -0
  23. package/dist/classes/DialogueBaseModel.js +51 -0
  24. package/dist/classes/DialogueBaseModel.js.map +1 -0
  25. package/dist/classes/DialogueBaseModel.mjs +49 -0
  26. package/dist/classes/DialogueBaseModel.mjs.map +1 -0
  27. package/dist/classes/Label.d.mts +46 -0
  28. package/dist/classes/Label.d.ts +46 -0
  29. package/dist/classes/Label.js +41 -0
  30. package/dist/classes/Label.js.map +1 -0
  31. package/dist/classes/Label.mjs +39 -0
  32. package/dist/classes/Label.mjs.map +1 -0
  33. package/dist/classes/StoredClassModel.d.mts +55 -0
  34. package/dist/classes/StoredClassModel.d.ts +55 -0
  35. package/dist/classes/StoredClassModel.js +1470 -0
  36. package/dist/classes/StoredClassModel.js.map +1 -0
  37. package/dist/classes/StoredClassModel.mjs +1468 -0
  38. package/dist/classes/StoredClassModel.mjs.map +1 -0
  39. package/dist/classes/canvas/CanvasBase.d.mts +37 -0
  40. package/dist/classes/canvas/CanvasBase.d.ts +37 -0
  41. package/dist/classes/canvas/CanvasBase.js +23 -0
  42. package/dist/classes/canvas/CanvasBase.js.map +1 -0
  43. package/dist/classes/canvas/CanvasBase.mjs +21 -0
  44. package/dist/classes/canvas/CanvasBase.mjs.map +1 -0
  45. package/dist/classes/canvas/CanvasContainer.d.mts +30 -0
  46. package/dist/classes/canvas/CanvasContainer.d.ts +30 -0
  47. package/dist/classes/canvas/CanvasContainer.js +514 -0
  48. package/dist/classes/canvas/CanvasContainer.js.map +1 -0
  49. package/dist/classes/canvas/CanvasContainer.mjs +508 -0
  50. package/dist/classes/canvas/CanvasContainer.mjs.map +1 -0
  51. package/dist/classes/canvas/CanvasImage.d.mts +50 -0
  52. package/dist/classes/canvas/CanvasImage.d.ts +50 -0
  53. package/dist/classes/canvas/CanvasImage.js +326 -0
  54. package/dist/classes/canvas/CanvasImage.js.map +1 -0
  55. package/dist/classes/canvas/CanvasImage.mjs +324 -0
  56. package/dist/classes/canvas/CanvasImage.mjs.map +1 -0
  57. package/dist/classes/canvas/CanvasSprite.d.mts +90 -0
  58. package/dist/classes/canvas/CanvasSprite.d.ts +90 -0
  59. package/dist/classes/canvas/CanvasSprite.js +285 -0
  60. package/dist/classes/canvas/CanvasSprite.js.map +1 -0
  61. package/dist/classes/canvas/CanvasSprite.mjs +279 -0
  62. package/dist/classes/canvas/CanvasSprite.mjs.map +1 -0
  63. package/dist/classes/canvas/CanvasText.d.mts +79 -0
  64. package/dist/classes/canvas/CanvasText.d.ts +79 -0
  65. package/dist/classes/canvas/CanvasText.js +259 -0
  66. package/dist/classes/canvas/CanvasText.js.map +1 -0
  67. package/dist/classes/canvas/CanvasText.mjs +253 -0
  68. package/dist/classes/canvas/CanvasText.mjs.map +1 -0
  69. package/dist/classes/canvas/index.d.mts +15 -0
  70. package/dist/classes/canvas/index.d.ts +15 -0
  71. package/dist/classes/canvas/index.js +528 -0
  72. package/dist/classes/canvas/index.js.map +1 -0
  73. package/dist/classes/canvas/index.mjs +522 -0
  74. package/dist/classes/canvas/index.mjs.map +1 -0
  75. package/dist/classes/index.d.mts +14 -0
  76. package/dist/classes/index.d.ts +14 -0
  77. package/dist/classes/index.js +1633 -0
  78. package/dist/classes/index.js.map +1 -0
  79. package/dist/classes/index.mjs +1626 -0
  80. package/dist/classes/index.mjs.map +1 -0
  81. package/dist/classes/ticker/TickerBase.d.mts +3 -0
  82. package/dist/classes/ticker/TickerBase.d.ts +3 -0
  83. package/dist/classes/ticker/TickerBase.js +29 -0
  84. package/dist/classes/ticker/TickerBase.js.map +1 -0
  85. package/dist/classes/ticker/TickerBase.mjs +27 -0
  86. package/dist/classes/ticker/TickerBase.mjs.map +1 -0
  87. package/dist/classes/ticker/TickerFadeAlpha.d.mts +31 -0
  88. package/dist/classes/ticker/TickerFadeAlpha.d.ts +31 -0
  89. package/dist/classes/ticker/TickerFadeAlpha.js +1330 -0
  90. package/dist/classes/ticker/TickerFadeAlpha.js.map +1 -0
  91. package/dist/classes/ticker/TickerFadeAlpha.mjs +1328 -0
  92. package/dist/classes/ticker/TickerFadeAlpha.mjs.map +1 -0
  93. package/dist/classes/ticker/TickerMove.d.mts +29 -0
  94. package/dist/classes/ticker/TickerMove.d.ts +29 -0
  95. package/dist/classes/ticker/TickerMove.js +1328 -0
  96. package/dist/classes/ticker/TickerMove.js.map +1 -0
  97. package/dist/classes/ticker/TickerMove.mjs +1326 -0
  98. package/dist/classes/ticker/TickerMove.mjs.map +1 -0
  99. package/dist/classes/ticker/TickerRotate.d.mts +30 -0
  100. package/dist/classes/ticker/TickerRotate.d.ts +30 -0
  101. package/dist/classes/ticker/TickerRotate.js +1328 -0
  102. package/dist/classes/ticker/TickerRotate.js.map +1 -0
  103. package/dist/classes/ticker/TickerRotate.mjs +1326 -0
  104. package/dist/classes/ticker/TickerRotate.mjs.map +1 -0
  105. package/dist/classes/ticker/index.d.mts +10 -0
  106. package/dist/classes/ticker/index.d.ts +10 -0
  107. package/dist/classes/ticker/index.js +1330 -0
  108. package/dist/classes/ticker/index.js.map +1 -0
  109. package/dist/classes/ticker/index.mjs +1328 -0
  110. package/dist/classes/ticker/index.mjs.map +1 -0
  111. package/dist/constants.d.mts +3 -0
  112. package/dist/constants.d.ts +3 -0
  113. package/dist/constants.js +8 -0
  114. package/dist/constants.js.map +1 -0
  115. package/dist/constants.mjs +6 -0
  116. package/dist/constants.mjs.map +1 -0
  117. package/dist/decorators/CanvasElementDecorator.d.mts +18 -0
  118. package/dist/decorators/CanvasElementDecorator.d.ts +18 -0
  119. package/dist/decorators/CanvasElementDecorator.js +540 -0
  120. package/dist/decorators/CanvasElementDecorator.js.map +1 -0
  121. package/dist/decorators/CanvasElementDecorator.mjs +533 -0
  122. package/dist/decorators/CanvasElementDecorator.mjs.map +1 -0
  123. package/dist/decorators/CharacterDecorator.d.mts +39 -0
  124. package/dist/decorators/CharacterDecorator.d.ts +39 -0
  125. package/dist/decorators/CharacterDecorator.js +37 -0
  126. package/dist/decorators/CharacterDecorator.js.map +1 -0
  127. package/dist/decorators/CharacterDecorator.mjs +32 -0
  128. package/dist/decorators/CharacterDecorator.mjs.map +1 -0
  129. package/dist/decorators/EventDecorator.d.mts +35 -0
  130. package/dist/decorators/EventDecorator.d.ts +35 -0
  131. package/dist/decorators/EventDecorator.js +52 -0
  132. package/dist/decorators/EventDecorator.js.map +1 -0
  133. package/dist/decorators/EventDecorator.mjs +45 -0
  134. package/dist/decorators/EventDecorator.mjs.map +1 -0
  135. package/dist/decorators/LabelDecorator.d.mts +32 -0
  136. package/dist/decorators/LabelDecorator.d.ts +32 -0
  137. package/dist/decorators/LabelDecorator.js +56 -0
  138. package/dist/decorators/LabelDecorator.js.map +1 -0
  139. package/dist/decorators/LabelDecorator.mjs +49 -0
  140. package/dist/decorators/LabelDecorator.mjs.map +1 -0
  141. package/dist/decorators/TickerDecorator.d.mts +27 -0
  142. package/dist/decorators/TickerDecorator.d.ts +27 -0
  143. package/dist/decorators/TickerDecorator.js +36 -0
  144. package/dist/decorators/TickerDecorator.js.map +1 -0
  145. package/dist/decorators/TickerDecorator.mjs +30 -0
  146. package/dist/decorators/TickerDecorator.mjs.map +1 -0
  147. package/dist/decorators/index.d.mts +23 -0
  148. package/dist/decorators/index.d.ts +23 -0
  149. package/dist/decorators/index.js +100 -0
  150. package/dist/decorators/index.js.map +1 -0
  151. package/dist/decorators/index.mjs +92 -0
  152. package/dist/decorators/index.mjs.map +1 -0
  153. package/dist/enums/LabelRunModeEnum.d.mts +9 -0
  154. package/dist/enums/LabelRunModeEnum.d.ts +9 -0
  155. package/dist/enums/LabelRunModeEnum.js +12 -0
  156. package/dist/enums/LabelRunModeEnum.js.map +1 -0
  157. package/dist/enums/LabelRunModeEnum.mjs +10 -0
  158. package/dist/enums/LabelRunModeEnum.mjs.map +1 -0
  159. package/dist/enums/index.d.mts +1 -0
  160. package/dist/enums/index.d.ts +1 -0
  161. package/dist/enums/index.js +12 -0
  162. package/dist/enums/index.js.map +1 -0
  163. package/dist/enums/index.mjs +10 -0
  164. package/dist/enums/index.mjs.map +1 -0
  165. package/dist/functions/CanvasUtility.d.mts +25 -0
  166. package/dist/functions/CanvasUtility.d.ts +25 -0
  167. package/dist/functions/CanvasUtility.js +510 -0
  168. package/dist/functions/CanvasUtility.js.map +1 -0
  169. package/dist/functions/CanvasUtility.mjs +506 -0
  170. package/dist/functions/CanvasUtility.mjs.map +1 -0
  171. package/dist/functions/DialogueUtility.d.mts +72 -0
  172. package/dist/functions/DialogueUtility.d.ts +72 -0
  173. package/dist/functions/DialogueUtility.js +2189 -0
  174. package/dist/functions/DialogueUtility.js.map +1 -0
  175. package/dist/functions/DialogueUtility.mjs +2177 -0
  176. package/dist/functions/DialogueUtility.mjs.map +1 -0
  177. package/dist/functions/DiffUtility.d.mts +5 -0
  178. package/dist/functions/DiffUtility.d.ts +5 -0
  179. package/dist/functions/DiffUtility.js +57 -0
  180. package/dist/functions/DiffUtility.js.map +1 -0
  181. package/dist/functions/DiffUtility.mjs +55 -0
  182. package/dist/functions/DiffUtility.mjs.map +1 -0
  183. package/dist/functions/EasterEgg.d.mts +3 -0
  184. package/dist/functions/EasterEgg.d.ts +3 -0
  185. package/dist/functions/EasterEgg.js +16 -0
  186. package/dist/functions/EasterEgg.js.map +1 -0
  187. package/dist/functions/EasterEgg.mjs +14 -0
  188. package/dist/functions/EasterEgg.mjs.map +1 -0
  189. package/dist/functions/ErrorUtility.d.mts +24 -0
  190. package/dist/functions/ErrorUtility.d.ts +24 -0
  191. package/dist/functions/ErrorUtility.js +261 -0
  192. package/dist/functions/ErrorUtility.js.map +1 -0
  193. package/dist/functions/ErrorUtility.mjs +258 -0
  194. package/dist/functions/ErrorUtility.mjs.map +1 -0
  195. package/dist/functions/ExportUtility.d.mts +8 -0
  196. package/dist/functions/ExportUtility.d.ts +8 -0
  197. package/dist/functions/ExportUtility.js +16 -0
  198. package/dist/functions/ExportUtility.js.map +1 -0
  199. package/dist/functions/ExportUtility.mjs +14 -0
  200. package/dist/functions/ExportUtility.mjs.map +1 -0
  201. package/dist/functions/FlagsUtility.d.mts +14 -0
  202. package/dist/functions/FlagsUtility.d.ts +14 -0
  203. package/dist/functions/FlagsUtility.js +1436 -0
  204. package/dist/functions/FlagsUtility.js.map +1 -0
  205. package/dist/functions/FlagsUtility.mjs +1433 -0
  206. package/dist/functions/FlagsUtility.mjs.map +1 -0
  207. package/dist/functions/GameUtility.d.mts +6 -0
  208. package/dist/functions/GameUtility.d.ts +6 -0
  209. package/dist/functions/GameUtility.js +1335 -0
  210. package/dist/functions/GameUtility.js.map +1 -0
  211. package/dist/functions/GameUtility.mjs +1333 -0
  212. package/dist/functions/GameUtility.mjs.map +1 -0
  213. package/dist/functions/ImageUtility.d.mts +51 -0
  214. package/dist/functions/ImageUtility.d.ts +51 -0
  215. package/dist/functions/ImageUtility.js +1392 -0
  216. package/dist/functions/ImageUtility.js.map +1 -0
  217. package/dist/functions/ImageUtility.mjs +1387 -0
  218. package/dist/functions/ImageUtility.mjs.map +1 -0
  219. package/dist/functions/SavesUtility.d.mts +90 -0
  220. package/dist/functions/SavesUtility.d.ts +90 -0
  221. package/dist/functions/SavesUtility.js +2081 -0
  222. package/dist/functions/SavesUtility.js.map +1 -0
  223. package/dist/functions/SavesUtility.mjs +2071 -0
  224. package/dist/functions/SavesUtility.mjs.map +1 -0
  225. package/dist/functions/StepLabelUtility.d.mts +20 -0
  226. package/dist/functions/StepLabelUtility.d.ts +20 -0
  227. package/dist/functions/StepLabelUtility.js +21 -0
  228. package/dist/functions/StepLabelUtility.js.map +1 -0
  229. package/dist/functions/StepLabelUtility.mjs +14 -0
  230. package/dist/functions/StepLabelUtility.mjs.map +1 -0
  231. package/dist/functions/TextureUtility.d.mts +11 -0
  232. package/dist/functions/TextureUtility.d.ts +11 -0
  233. package/dist/functions/TextureUtility.js +78 -0
  234. package/dist/functions/TextureUtility.js.map +1 -0
  235. package/dist/functions/TextureUtility.mjs +75 -0
  236. package/dist/functions/TextureUtility.mjs.map +1 -0
  237. package/dist/functions/TickerUtility.d.mts +13 -0
  238. package/dist/functions/TickerUtility.d.ts +13 -0
  239. package/dist/functions/TickerUtility.js +33 -0
  240. package/dist/functions/TickerUtility.js.map +1 -0
  241. package/dist/functions/TickerUtility.mjs +31 -0
  242. package/dist/functions/TickerUtility.mjs.map +1 -0
  243. package/dist/functions/index.d.mts +41 -0
  244. package/dist/functions/index.d.ts +41 -0
  245. package/dist/functions/index.js +2313 -0
  246. package/dist/functions/index.js.map +1 -0
  247. package/dist/functions/index.mjs +2289 -0
  248. package/dist/functions/index.mjs.map +1 -0
  249. package/dist/index.d.mts +63 -1773
  250. package/dist/index.d.ts +63 -1773
  251. package/dist/index.js +89 -197
  252. package/dist/index.js.map +1 -1
  253. package/dist/index.mjs +16 -98
  254. package/dist/index.mjs.map +1 -1
  255. package/dist/interface/IClassWithArgsHistory.d.mts +25 -0
  256. package/dist/interface/IClassWithArgsHistory.d.ts +25 -0
  257. package/dist/interface/IClassWithArgsHistory.js +4 -0
  258. package/dist/interface/IClassWithArgsHistory.js.map +1 -0
  259. package/dist/interface/IClassWithArgsHistory.mjs +3 -0
  260. package/dist/interface/IClassWithArgsHistory.mjs.map +1 -0
  261. package/dist/interface/IDialogueHistory.d.mts +33 -0
  262. package/dist/interface/IDialogueHistory.d.ts +33 -0
  263. package/dist/interface/IDialogueHistory.js +4 -0
  264. package/dist/interface/IDialogueHistory.js.map +1 -0
  265. package/dist/interface/IDialogueHistory.mjs +3 -0
  266. package/dist/interface/IDialogueHistory.mjs.map +1 -0
  267. package/dist/interface/IHistoryStep.d.mts +75 -0
  268. package/dist/interface/IHistoryStep.d.ts +75 -0
  269. package/dist/interface/IHistoryStep.js +4 -0
  270. package/dist/interface/IHistoryStep.js.map +1 -0
  271. package/dist/interface/IHistoryStep.mjs +3 -0
  272. package/dist/interface/IHistoryStep.mjs.map +1 -0
  273. package/dist/interface/IOpenedLabel.d.mts +8 -0
  274. package/dist/interface/IOpenedLabel.d.ts +8 -0
  275. package/dist/interface/IOpenedLabel.js +4 -0
  276. package/dist/interface/IOpenedLabel.js.map +1 -0
  277. package/dist/interface/IOpenedLabel.mjs +3 -0
  278. package/dist/interface/IOpenedLabel.mjs.map +1 -0
  279. package/dist/interface/ISaveData.d.mts +33 -0
  280. package/dist/interface/ISaveData.d.ts +33 -0
  281. package/dist/interface/ISaveData.js +4 -0
  282. package/dist/interface/ISaveData.js.map +1 -0
  283. package/dist/interface/ISaveData.mjs +3 -0
  284. package/dist/interface/ISaveData.mjs.map +1 -0
  285. package/dist/interface/ITicker.d.mts +3 -0
  286. package/dist/interface/ITicker.d.ts +3 -0
  287. package/dist/interface/ITicker.js +4 -0
  288. package/dist/interface/ITicker.js.map +1 -0
  289. package/dist/interface/ITicker.mjs +3 -0
  290. package/dist/interface/ITicker.mjs.map +1 -0
  291. package/dist/interface/ITickersSteps.d.mts +31 -0
  292. package/dist/interface/ITickersSteps.d.ts +31 -0
  293. package/dist/interface/ITickersSteps.js +4 -0
  294. package/dist/interface/ITickersSteps.js.map +1 -0
  295. package/dist/interface/ITickersSteps.mjs +3 -0
  296. package/dist/interface/ITickersSteps.mjs.map +1 -0
  297. package/dist/interface/TickerProgrationType.d.mts +13 -0
  298. package/dist/interface/TickerProgrationType.d.ts +13 -0
  299. package/dist/interface/TickerProgrationType.js +4 -0
  300. package/dist/interface/TickerProgrationType.js.map +1 -0
  301. package/dist/interface/TickerProgrationType.mjs +3 -0
  302. package/dist/interface/TickerProgrationType.mjs.map +1 -0
  303. package/dist/interface/canvas/ICanvasBaseMemory.d.mts +8 -0
  304. package/dist/interface/canvas/ICanvasBaseMemory.d.ts +8 -0
  305. package/dist/interface/canvas/ICanvasBaseMemory.js +4 -0
  306. package/dist/interface/canvas/ICanvasBaseMemory.js.map +1 -0
  307. package/dist/interface/canvas/ICanvasBaseMemory.mjs +3 -0
  308. package/dist/interface/canvas/ICanvasBaseMemory.mjs.map +1 -0
  309. package/dist/interface/canvas/ICanvasContainerMemory.d.mts +11 -0
  310. package/dist/interface/canvas/ICanvasContainerMemory.d.ts +11 -0
  311. package/dist/interface/canvas/ICanvasContainerMemory.js +4 -0
  312. package/dist/interface/canvas/ICanvasContainerMemory.js.map +1 -0
  313. package/dist/interface/canvas/ICanvasContainerMemory.mjs +3 -0
  314. package/dist/interface/canvas/ICanvasContainerMemory.mjs.map +1 -0
  315. package/dist/interface/canvas/ICanvasImageMemory.d.mts +14 -0
  316. package/dist/interface/canvas/ICanvasImageMemory.d.ts +14 -0
  317. package/dist/interface/canvas/ICanvasImageMemory.js +4 -0
  318. package/dist/interface/canvas/ICanvasImageMemory.js.map +1 -0
  319. package/dist/interface/canvas/ICanvasImageMemory.mjs +3 -0
  320. package/dist/interface/canvas/ICanvasImageMemory.mjs.map +1 -0
  321. package/dist/interface/canvas/ICanvasSpriteMemory.d.mts +19 -0
  322. package/dist/interface/canvas/ICanvasSpriteMemory.d.ts +19 -0
  323. package/dist/interface/canvas/ICanvasSpriteMemory.js +4 -0
  324. package/dist/interface/canvas/ICanvasSpriteMemory.js.map +1 -0
  325. package/dist/interface/canvas/ICanvasSpriteMemory.mjs +3 -0
  326. package/dist/interface/canvas/ICanvasSpriteMemory.mjs.map +1 -0
  327. package/dist/interface/canvas/ICanvasTextTextMemory.d.mts +15 -0
  328. package/dist/interface/canvas/ICanvasTextTextMemory.d.ts +15 -0
  329. package/dist/interface/canvas/ICanvasTextTextMemory.js +4 -0
  330. package/dist/interface/canvas/ICanvasTextTextMemory.js.map +1 -0
  331. package/dist/interface/canvas/ICanvasTextTextMemory.mjs +3 -0
  332. package/dist/interface/canvas/ICanvasTextTextMemory.mjs.map +1 -0
  333. package/dist/interface/canvas/ITextureMemory.d.mts +8 -0
  334. package/dist/interface/canvas/ITextureMemory.d.ts +8 -0
  335. package/dist/interface/canvas/ITextureMemory.js +4 -0
  336. package/dist/interface/canvas/ITextureMemory.js.map +1 -0
  337. package/dist/interface/canvas/ITextureMemory.mjs +3 -0
  338. package/dist/interface/canvas/ITextureMemory.mjs.map +1 -0
  339. package/dist/interface/canvas/index.d.mts +8 -0
  340. package/dist/interface/canvas/index.d.ts +8 -0
  341. package/dist/interface/canvas/index.js +4 -0
  342. package/dist/interface/canvas/index.js.map +1 -0
  343. package/dist/interface/canvas/index.mjs +3 -0
  344. package/dist/interface/canvas/index.mjs.map +1 -0
  345. package/dist/interface/export/ExportedCanvas.d.mts +19 -0
  346. package/dist/interface/export/ExportedCanvas.d.ts +19 -0
  347. package/dist/interface/export/ExportedCanvas.js +4 -0
  348. package/dist/interface/export/ExportedCanvas.js.map +1 -0
  349. package/dist/interface/export/ExportedCanvas.mjs +3 -0
  350. package/dist/interface/export/ExportedCanvas.mjs.map +1 -0
  351. package/dist/interface/export/ExportedStep.d.mts +34 -0
  352. package/dist/interface/export/ExportedStep.d.ts +34 -0
  353. package/dist/interface/export/ExportedStep.js +4 -0
  354. package/dist/interface/export/ExportedStep.js.map +1 -0
  355. package/dist/interface/export/ExportedStep.mjs +3 -0
  356. package/dist/interface/export/ExportedStep.mjs.map +1 -0
  357. package/dist/interface/export/ExportedStorage.d.mts +10 -0
  358. package/dist/interface/export/ExportedStorage.d.ts +10 -0
  359. package/dist/interface/export/ExportedStorage.js +4 -0
  360. package/dist/interface/export/ExportedStorage.js.map +1 -0
  361. package/dist/interface/export/ExportedStorage.mjs +3 -0
  362. package/dist/interface/export/ExportedStorage.mjs.map +1 -0
  363. package/dist/interface/export/index.d.mts +23 -0
  364. package/dist/interface/export/index.d.ts +23 -0
  365. package/dist/interface/export/index.js +4 -0
  366. package/dist/interface/export/index.js.map +1 -0
  367. package/dist/interface/export/index.mjs +3 -0
  368. package/dist/interface/export/index.mjs.map +1 -0
  369. package/dist/interface/index.d.mts +29 -0
  370. package/dist/interface/index.d.ts +29 -0
  371. package/dist/interface/index.js +4 -0
  372. package/dist/interface/index.js.map +1 -0
  373. package/dist/interface/index.mjs +3 -0
  374. package/dist/interface/index.mjs.map +1 -0
  375. package/dist/managers/StepManager.d.mts +210 -0
  376. package/dist/managers/StepManager.d.ts +210 -0
  377. package/dist/managers/StepManager.js +2043 -0
  378. package/dist/managers/StepManager.js.map +1 -0
  379. package/dist/managers/StepManager.mjs +2037 -0
  380. package/dist/managers/StepManager.mjs.map +1 -0
  381. package/dist/managers/StorageManager.d.mts +45 -0
  382. package/dist/managers/StorageManager.d.ts +45 -0
  383. package/dist/managers/StorageManager.js +101 -0
  384. package/dist/managers/StorageManager.js.map +1 -0
  385. package/dist/managers/StorageManager.mjs +99 -0
  386. package/dist/managers/StorageManager.mjs.map +1 -0
  387. package/dist/managers/WindowManager.d.mts +265 -0
  388. package/dist/managers/WindowManager.d.ts +265 -0
  389. package/dist/managers/WindowManager.js +1142 -0
  390. package/dist/managers/WindowManager.js.map +1 -0
  391. package/dist/managers/WindowManager.mjs +1140 -0
  392. package/dist/managers/WindowManager.mjs.map +1 -0
  393. package/dist/managers/index.d.mts +30 -0
  394. package/dist/managers/index.d.ts +30 -0
  395. package/dist/managers/index.js +2049 -0
  396. package/dist/managers/index.js.map +1 -0
  397. package/dist/managers/index.mjs +2041 -0
  398. package/dist/managers/index.mjs.map +1 -0
  399. package/dist/override/StepLabelProps.d.mts +18 -0
  400. package/dist/override/StepLabelProps.d.ts +18 -0
  401. package/dist/override/StepLabelProps.js +4 -0
  402. package/dist/override/StepLabelProps.js.map +1 -0
  403. package/dist/override/StepLabelProps.mjs +3 -0
  404. package/dist/override/StepLabelProps.mjs.map +1 -0
  405. package/dist/override/StepLabelResult.d.mts +19 -0
  406. package/dist/override/StepLabelResult.d.ts +19 -0
  407. package/dist/override/StepLabelResult.js +4 -0
  408. package/dist/override/StepLabelResult.js.map +1 -0
  409. package/dist/override/StepLabelResult.mjs +3 -0
  410. package/dist/override/StepLabelResult.mjs.map +1 -0
  411. package/dist/override/index.d.mts +2 -0
  412. package/dist/override/index.d.ts +2 -0
  413. package/dist/override/index.js +4 -0
  414. package/dist/override/index.js.map +1 -0
  415. package/dist/override/index.mjs +3 -0
  416. package/dist/override/index.mjs.map +1 -0
  417. package/dist/types/CanvasElementTagType.d.mts +3 -0
  418. package/dist/types/CanvasElementTagType.d.ts +3 -0
  419. package/dist/types/CanvasElementTagType.js +4 -0
  420. package/dist/types/CanvasElementTagType.js.map +1 -0
  421. package/dist/types/CanvasElementTagType.mjs +3 -0
  422. package/dist/types/CanvasElementTagType.mjs.map +1 -0
  423. package/dist/types/CanvasEventNamesType.d.mts +6 -0
  424. package/dist/types/CanvasEventNamesType.d.ts +6 -0
  425. package/dist/types/CanvasEventNamesType.js +4 -0
  426. package/dist/types/CanvasEventNamesType.js.map +1 -0
  427. package/dist/types/CanvasEventNamesType.mjs +3 -0
  428. package/dist/types/CanvasEventNamesType.mjs.map +1 -0
  429. package/dist/types/ChoiceMenuOptionsType.d.mts +16 -0
  430. package/dist/types/ChoiceMenuOptionsType.d.ts +16 -0
  431. package/dist/types/ChoiceMenuOptionsType.js +4 -0
  432. package/dist/types/ChoiceMenuOptionsType.js.map +1 -0
  433. package/dist/types/ChoiceMenuOptionsType.mjs +3 -0
  434. package/dist/types/ChoiceMenuOptionsType.mjs.map +1 -0
  435. package/dist/types/EventIdType.d.mts +3 -0
  436. package/dist/types/EventIdType.d.ts +3 -0
  437. package/dist/types/EventIdType.js +4 -0
  438. package/dist/types/EventIdType.js.map +1 -0
  439. package/dist/types/EventIdType.mjs +3 -0
  440. package/dist/types/EventIdType.mjs.map +1 -0
  441. package/dist/types/LabelIdType.d.mts +7 -0
  442. package/dist/types/LabelIdType.d.ts +7 -0
  443. package/dist/types/LabelIdType.js +4 -0
  444. package/dist/types/LabelIdType.js.map +1 -0
  445. package/dist/types/LabelIdType.mjs +3 -0
  446. package/dist/types/LabelIdType.mjs.map +1 -0
  447. package/dist/types/PauseType.d.mts +8 -0
  448. package/dist/types/PauseType.d.ts +8 -0
  449. package/dist/types/PauseType.js +15 -0
  450. package/dist/types/PauseType.js.map +1 -0
  451. package/dist/types/PauseType.mjs +12 -0
  452. package/dist/types/PauseType.mjs.map +1 -0
  453. package/dist/types/RepeatType.d.mts +4 -0
  454. package/dist/types/RepeatType.d.ts +4 -0
  455. package/dist/types/RepeatType.js +8 -0
  456. package/dist/types/RepeatType.js.map +1 -0
  457. package/dist/types/RepeatType.mjs +6 -0
  458. package/dist/types/RepeatType.mjs.map +1 -0
  459. package/dist/types/StepHistoryDataType.d.mts +8 -0
  460. package/dist/types/StepHistoryDataType.d.ts +8 -0
  461. package/dist/types/StepHistoryDataType.js +4 -0
  462. package/dist/types/StepHistoryDataType.js.map +1 -0
  463. package/dist/types/StepHistoryDataType.mjs +3 -0
  464. package/dist/types/StepHistoryDataType.mjs.map +1 -0
  465. package/dist/types/StepLabelType.d.mts +11 -0
  466. package/dist/types/StepLabelType.d.ts +11 -0
  467. package/dist/types/StepLabelType.js +4 -0
  468. package/dist/types/StepLabelType.js.map +1 -0
  469. package/dist/types/StepLabelType.mjs +3 -0
  470. package/dist/types/StepLabelType.mjs.map +1 -0
  471. package/dist/types/StorageElementType.d.mts +10 -0
  472. package/dist/types/StorageElementType.d.ts +10 -0
  473. package/dist/types/StorageElementType.js +4 -0
  474. package/dist/types/StorageElementType.js.map +1 -0
  475. package/dist/types/StorageElementType.mjs +3 -0
  476. package/dist/types/StorageElementType.mjs.map +1 -0
  477. package/dist/types/TickerIdType.d.mts +7 -0
  478. package/dist/types/TickerIdType.d.ts +7 -0
  479. package/dist/types/TickerIdType.js +4 -0
  480. package/dist/types/TickerIdType.js.map +1 -0
  481. package/dist/types/TickerIdType.mjs +3 -0
  482. package/dist/types/TickerIdType.mjs.map +1 -0
  483. package/dist/types/index.d.mts +13 -0
  484. package/dist/types/index.d.ts +13 -0
  485. package/dist/types/index.js +19 -0
  486. package/dist/types/index.js.map +1 -0
  487. package/dist/types/index.mjs +15 -0
  488. package/dist/types/index.mjs.map +1 -0
  489. package/dist/types/ticker/TickerFadeAlphaProps.d.mts +26 -0
  490. package/dist/types/ticker/TickerFadeAlphaProps.d.ts +26 -0
  491. package/dist/types/ticker/TickerFadeAlphaProps.js +4 -0
  492. package/dist/types/ticker/TickerFadeAlphaProps.js.map +1 -0
  493. package/dist/types/ticker/TickerFadeAlphaProps.mjs +3 -0
  494. package/dist/types/ticker/TickerFadeAlphaProps.mjs.map +1 -0
  495. package/dist/types/ticker/TickerMoveProps.d.mts +26 -0
  496. package/dist/types/ticker/TickerMoveProps.d.ts +26 -0
  497. package/dist/types/ticker/TickerMoveProps.js +4 -0
  498. package/dist/types/ticker/TickerMoveProps.js.map +1 -0
  499. package/dist/types/ticker/TickerMoveProps.mjs +3 -0
  500. package/dist/types/ticker/TickerMoveProps.mjs.map +1 -0
  501. package/dist/types/ticker/TickerRotateProps.d.mts +24 -0
  502. package/dist/types/ticker/TickerRotateProps.d.ts +24 -0
  503. package/dist/types/ticker/TickerRotateProps.js +4 -0
  504. package/dist/types/ticker/TickerRotateProps.js.map +1 -0
  505. package/dist/types/ticker/TickerRotateProps.mjs +3 -0
  506. package/dist/types/ticker/TickerRotateProps.mjs.map +1 -0
  507. package/dist/types/ticker/index.d.mts +3 -0
  508. package/dist/types/ticker/index.d.ts +3 -0
  509. package/dist/types/ticker/index.js +4 -0
  510. package/dist/types/ticker/index.js.map +1 -0
  511. package/dist/types/ticker/index.mjs +3 -0
  512. package/dist/types/ticker/index.mjs.map +1 -0
  513. package/package.json +2 -1
@@ -0,0 +1,23 @@
1
+ export { default as canvasElementDecorator } from './CanvasElementDecorator.mjs';
2
+ export { getAllCharacters, getCharacterById, saveCharacter } from './CharacterDecorator.mjs';
3
+ export { default as eventDecorator } from './EventDecorator.mjs';
4
+ export { default as labelDecorator } from './LabelDecorator.mjs';
5
+ export { default as tickerDecorator } from './TickerDecorator.mjs';
6
+ import '../classes/canvas/CanvasBase.mjs';
7
+ import 'pixi.js';
8
+ import '../interface/canvas/ICanvasBaseMemory.mjs';
9
+ import '../types/CanvasElementTagType.mjs';
10
+ import '../classes/CharacterBaseModel.mjs';
11
+ import '../classes/StoredClassModel.mjs';
12
+ import '../classes/CanvasEvent.mjs';
13
+ import '../types/CanvasEventNamesType.mjs';
14
+ import '../types/EventIdType.mjs';
15
+ import '../types/LabelIdType.mjs';
16
+ import '../classes/Label.mjs';
17
+ import '../types/StepHistoryDataType.mjs';
18
+ import '../types/StepLabelType.mjs';
19
+ import '../override/StepLabelProps.mjs';
20
+ import '../override/StepLabelResult.mjs';
21
+ import '../TickerBase-CFEJHstJ.mjs';
22
+ import '../types/StorageElementType.mjs';
23
+ import '../types/TickerIdType.mjs';
@@ -0,0 +1,23 @@
1
+ export { default as canvasElementDecorator } from './CanvasElementDecorator.js';
2
+ export { getAllCharacters, getCharacterById, saveCharacter } from './CharacterDecorator.js';
3
+ export { default as eventDecorator } from './EventDecorator.js';
4
+ export { default as labelDecorator } from './LabelDecorator.js';
5
+ export { default as tickerDecorator } from './TickerDecorator.js';
6
+ import '../classes/canvas/CanvasBase.js';
7
+ import 'pixi.js';
8
+ import '../interface/canvas/ICanvasBaseMemory.js';
9
+ import '../types/CanvasElementTagType.js';
10
+ import '../classes/CharacterBaseModel.js';
11
+ import '../classes/StoredClassModel.js';
12
+ import '../classes/CanvasEvent.js';
13
+ import '../types/CanvasEventNamesType.js';
14
+ import '../types/EventIdType.js';
15
+ import '../types/LabelIdType.js';
16
+ import '../classes/Label.js';
17
+ import '../types/StepHistoryDataType.js';
18
+ import '../types/StepLabelType.js';
19
+ import '../override/StepLabelProps.js';
20
+ import '../override/StepLabelResult.js';
21
+ import '../TickerBase-CjfyD6j5.js';
22
+ import '../types/StorageElementType.js';
23
+ import '../types/TickerIdType.js';
@@ -0,0 +1,100 @@
1
+ 'use strict';
2
+
3
+ require('pixi.js');
4
+
5
+ // src/classes/canvas/CanvasBase.ts
6
+
7
+ // src/decorators/EventDecorator.ts
8
+ var registeredEvents = {};
9
+ function eventDecorator(name) {
10
+ return function(target) {
11
+ if (!name) {
12
+ name = target.name;
13
+ }
14
+ if (registeredEvents[name]) {
15
+ console.warn(`[Pixi'VN] Event ${name} already exists, it will be overwritten`);
16
+ }
17
+ registeredEvents[name] = target;
18
+ };
19
+ }
20
+
21
+ // src/decorators/CanvasElementDecorator.ts
22
+ var registeredCanvasElement = {};
23
+ function canvasElementDecorator(name) {
24
+ return function(target) {
25
+ if (!name) {
26
+ name = target.name;
27
+ }
28
+ if (registeredCanvasElement[name]) {
29
+ console.warn(`[Pixi'VN] CanvasElement ${name} already registered`);
30
+ }
31
+ registeredCanvasElement[name] = target;
32
+ };
33
+ }
34
+
35
+ // src/decorators/CharacterDecorator.ts
36
+ var registeredCharacters = {};
37
+ function saveCharacter(character) {
38
+ if (Array.isArray(character)) {
39
+ character.forEach((c) => saveCharacter(c));
40
+ return;
41
+ }
42
+ if (registeredCharacters[character.id]) {
43
+ console.warn(`[Pixi'VN] Character id ${character.id} already exists, it will be overwritten`);
44
+ }
45
+ registeredCharacters[character.id] = character;
46
+ }
47
+ function getCharacterById(id) {
48
+ try {
49
+ let character = registeredCharacters[id];
50
+ if (!character) {
51
+ console.error(`[Pixi'VN] Character ${id} not found`);
52
+ return;
53
+ }
54
+ return character;
55
+ } catch (e) {
56
+ console.error(`[Pixi'VN] Error while getting Character ${id}`, e);
57
+ return;
58
+ }
59
+ }
60
+ function getAllCharacters() {
61
+ return Object.values(registeredCharacters);
62
+ }
63
+
64
+ // src/decorators/LabelDecorator.ts
65
+ var registeredLabels = {};
66
+ function labelDecorator(name) {
67
+ return function(target) {
68
+ if (!name) {
69
+ name = target.name;
70
+ }
71
+ if (registeredLabels[name]) {
72
+ console.warn(`[Pixi'VN] Label ${name} already exists, it will be overwritten`);
73
+ }
74
+ registeredLabels[name] = target;
75
+ };
76
+ }
77
+
78
+ // src/decorators/TickerDecorator.ts
79
+ var registeredTickers = {};
80
+ function tickerDecorator(name) {
81
+ return function(target) {
82
+ if (!name) {
83
+ name = target.name;
84
+ }
85
+ if (registeredTickers[name]) {
86
+ console.warn(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`);
87
+ }
88
+ registeredTickers[name] = target;
89
+ };
90
+ }
91
+
92
+ exports.canvasElementDecorator = canvasElementDecorator;
93
+ exports.eventDecorator = eventDecorator;
94
+ exports.getAllCharacters = getAllCharacters;
95
+ exports.getCharacterById = getCharacterById;
96
+ exports.labelDecorator = labelDecorator;
97
+ exports.saveCharacter = saveCharacter;
98
+ exports.tickerDecorator = tickerDecorator;
99
+ //# sourceMappingURL=out.js.map
100
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/classes/canvas/CanvasBase.ts","../../src/classes/canvas/CanvasContainer.ts","../../src/classes/canvas/CanvasImage.ts","../../src/functions/TextureUtility.ts","../../src/classes/canvas/CanvasSprite.ts","../../src/decorators/EventDecorator.ts","../../src/classes/canvas/CanvasText.ts","../../src/decorators/CanvasElementDecorator.ts","../../src/decorators/CharacterDecorator.ts","../../src/decorators/LabelDecorator.ts","../../src/decorators/TickerDecorator.ts"],"names":["Container","Sprite"],"mappings":";AAAA,SAAS,iBAAiB;;;ACA1B,SAAS,aAAAA,kBAAmC;;;ACA5C,SAAS,UAAAC,eAAyD;;;ACAlE,SAAS,QAAqC,eAAe;;;ACA7D,SAAwD,cAAyD;;;ACQ1G,IAAM,mBAAsF,CAAC;AAQrF,SAAR,eAAgC,MAAoB;AACvD,SAAO,SAAU,QAAiC;AAC9C,QAAI,CAAC,MAAM;AACP,aAAO,OAAO;AAAA,IAClB;AACA,QAAI,iBAAiB,IAAI,GAAG;AACxB,cAAQ,KAAK,mBAAmB,IAAI,yCAAyC;AAAA,IACjF;AACA,qBAAiB,IAAI,IAAI;AAAA,EAC7B;AACJ;;;AC1BA,SAAwD,YAAY;;;ACI7D,IAAM,0BAAoF,CAAC;AAMnF,SAAR,uBAAwC,MAA6B;AACxE,SAAO,SAAU,QAAgC;AAC7C,QAAI,CAAC,MAAM;AACP,aAAO,OAAO;AAAA,IAClB;AACA,QAAI,wBAAwB,IAAI,GAAG;AAC/B,cAAQ,KAAK,2BAA2B,IAAI,qBAAqB;AAAA,IACrE;AACA,4BAAwB,IAAI,IAAI;AAAA,EACpC;AACJ;;;AClBO,IAAM,uBAA6D,CAAC;AAYpE,SAAS,cAAiE,WAAoB;AACjG,MAAI,MAAM,QAAQ,SAAS,GAAG;AAC1B,cAAU,QAAQ,OAAK,cAAc,CAAC,CAAC;AACvC;AAAA,EACJ;AACA,MAAI,qBAAqB,UAAU,EAAE,GAAG;AACpC,YAAQ,KAAK,0BAA0B,UAAU,EAAE,yCAAyC;AAAA,EAChG;AACA,uBAAqB,UAAU,EAAE,IAAI;AACzC;AAWO,SAAS,iBAA+C,IAA2B;AACtF,MAAI;AACA,QAAI,YAAY,qBAAqB,EAAE;AACvC,QAAI,CAAC,WAAW;AACZ,cAAQ,MAAM,uBAAuB,EAAE,YAAY;AACnD;AAAA,IACJ;AACA,WAAO;AAAA,EACX,SACO,GAAG;AACN,YAAQ,MAAM,2CAA2C,EAAE,IAAI,CAAC;AAChE;AAAA,EACJ;AACJ;AAUO,SAAS,mBAAsD;AAClE,SAAO,OAAO,OAAO,oBAAoB;AAC7C;;;ACxDO,IAAM,mBAAyD,CAAC;AAQxD,SAAR,eAAgC,MAAoB;AACvD,SAAO,SAAU,QAAsB;AACnC,QAAI,CAAC,MAAM;AACP,aAAO,OAAO;AAAA,IAClB;AACA,QAAI,iBAAiB,IAAI,GAAG;AACxB,cAAQ,KAAK,mBAAmB,IAAI,yCAAyC;AAAA,IACjF;AACA,qBAAiB,IAAI,IAAI;AAAA,EAC7B;AACJ;;;ACdO,IAAM,oBAAiE,CAAC;AAQhE,SAAR,gBAAiC,MAAqB;AACzD,SAAO,SAAU,QAAgC;AAC7C,QAAI,CAAC,MAAM;AACP,aAAO,OAAO;AAAA,IAClB;AACA,QAAI,kBAAkB,IAAI,GAAG;AACzB,cAAQ,KAAK,oBAAoB,IAAI,yCAAyC;AAAA,IAClF;AACA,sBAAkB,IAAI,IAAI;AAAA,EAC9B;AACJ","sourcesContent":["import { Container } from \"pixi.js\";\nimport { ICanvasBaseMemory } from \"../../interface/canvas\";\n\n/**\n * This class is used to create a canvas element to add into a Pixi Application.\n * You can use GameWindowManager.addCanvasElement() to add this element into the application.\n * This class should be implemented and the memory method should be overridden.\n * You must use the canvasElementDecorator to register the canvas in the game.\n * In Ren'Py is a displayable.\n * @example\n * ```typescript\n * \\@canvasElementDecorator() // this is equivalent to canvasElementDecorator(\"CanvasExample\")\n * export class CanvasExample extends Container implements CanvasBase<ICanvasExampleMemory> {\n * get memory(): ICanvasExampleMemory {\n * return {\n * className: \"CanvasExample\",\n * // ... other properties\n * }\n * }\n * set memory(value: ICanvasExampleMemory) {\n * // ... set other properties\n * }\n * }\n * ```\n */\nexport default class CanvasBase<T2 extends ICanvasBaseMemory> extends Container {\n /**\n * This method return the memory of the canvas element.\n */\n get memory(): T2 { throw new Error(\"[Pixi'VN] The method CanvasBase.memory must be overridden\") }\n /**\n * This method set the memory of the canvas element.\n */\n set memory(_value: T2) { throw new Error(\"[Pixi'VN] The method CanvasBase.memory must be overridden\") }\n}\n","import { Container, ContainerOptions } from \"pixi.js\";\nimport { exportCanvasElement, importCanvasElement } from \"../../functions/CanvasUtility\";\nimport ICanvasContainerMemory from \"../../interface/canvas/ICanvasContainerMemory\";\nimport CanvasBase from \"./CanvasBase\";\n\n/**\n * This class is a extension of the [PIXI.Container class](https://pixijs.com/8.x/examples/basic/container), it has the same properties and methods, \n * but it has the ability to be saved and loaded by the Pixi'VN library.\n * @example\n * ```typescript\n * const container = new CanvasContainer();\n * GameWindowManager.addCanvasElement(container);\n * const texture = await Assets.load('https://pixijs.com/assets/bunny.png');\n * for (let i = 0; i < 25; i++)\n * {\n * const bunny = new CanvasSprite(texture);\n * bunny.x = (i % 5) * 40;\n * bunny.y = Math.floor(i / 5) * 40;\n * container.addChild(bunny);\n * }\n * ```\n */\nexport default class CanvasContainer extends Container implements CanvasBase<ICanvasContainerMemory> {\n get memory(): ICanvasContainerMemory {\n let memory = getMemoryContainer(this)\n this.children.forEach(child => {\n memory.elements.push(exportCanvasElement(child as CanvasBase<any>))\n })\n return memory\n }\n set memory(value: ICanvasContainerMemory) {\n setMemoryContainer(this, value)\n value.elements.forEach(child => {\n this.addChild(importCanvasElement(child))\n })\n }\n}\n\nexport function getMemoryContainer<T extends Container>(element: T): ICanvasContainerMemory {\n return {\n className: \"CanvasContainer\",\n elements: [],\n\n width: element.width,\n height: element.height,\n\n isRenderGroup: element.isRenderGroup,\n blendMode: element.blendMode,\n tint: element.tint,\n alpha: element.alpha,\n angle: element.angle,\n renderable: element.renderable,\n rotation: element.rotation,\n scale: { x: element.scale.x, y: element.scale.y },\n pivot: { x: element.pivot.x, y: element.pivot.y },\n position: { x: element.position.x, y: element.position.y },\n skew: { x: element.skew.x, y: element.skew.y },\n visible: element.visible,\n culled: element.culled,\n x: element.x,\n y: element.y,\n boundsArea: element.boundsArea,\n\n cursor: element.cursor,\n eventMode: element.eventMode,\n interactive: element.interactive,\n interactiveChildren: element.interactiveChildren,\n hitArea: element.hitArea\n }\n}\n\nexport function setMemoryContainer<T extends Container>(element: T | Container, memory: ContainerOptions) {\n memory.width && (element.width = memory.width)\n memory.height && (element.height = memory.height)\n\n memory.isRenderGroup && (element.isRenderGroup = memory.isRenderGroup)\n memory.blendMode && (element.blendMode = memory.blendMode)\n memory.tint && (element.tint = memory.tint)\n memory.alpha && (element.alpha = memory.alpha)\n memory.angle && (element.angle = memory.angle)\n memory.renderable && (element.renderable = memory.renderable)\n memory.rotation && (element.rotation = memory.rotation)\n if (memory.scale) {\n if (typeof memory.scale === \"number\") {\n element.scale.set(memory.scale, memory.scale)\n }\n else {\n element.scale.set(memory.scale.x, memory.scale.y)\n }\n }\n if (memory.pivot) {\n if (typeof memory.pivot === \"number\") {\n element.pivot.set(memory.pivot, memory.pivot)\n }\n else {\n element.pivot.set(memory.pivot.x, memory.pivot.y)\n }\n }\n memory.position && (element.position.set(memory.position.x, memory.position.y))\n memory.skew && (element.skew.set(memory.skew.x, memory.skew.y))\n memory.visible && (element.visible = memory.visible)\n memory.culled && (element.culled = memory.culled)\n memory.x && (element.x = memory.x)\n memory.y && (element.y = memory.y)\n memory.boundsArea && (element.boundsArea = memory.boundsArea)\n\n memory.cursor && (element.cursor = memory.cursor)\n memory.eventMode && (element.eventMode = memory.eventMode)\n memory.interactive && (element.interactive = memory.interactive)\n memory.interactiveChildren && (element.interactiveChildren = memory.interactiveChildren)\n memory.hitArea && (element.hitArea = memory.hitArea)\n}\n","import { Sprite, SpriteOptions, Texture, TextureSourceLike } from \"pixi.js\";\nimport { getTexture } from \"../../functions/TextureUtility\";\nimport ICanvasImageMemory from \"../../interface/canvas/ICanvasImageMemory\";\nimport CanvasSprite, { getMemorySprite, setMemorySprite } from \"./CanvasSprite\";\n\n/**\n * This class is a extension of the CanvasSprite class, it has the same properties and methods,\n * but it has some features that make texture management easier.\n * You need to use CanvasImage.load() to show the image in the canvas.\n * This class is used for functions like addImage, loadImages and showWithDissolveTransition.\n * @example\n * ```typescript\n * let alien = new CanvasImage({\n * anchor: { x: 0.5, y: 0.5 },\n * x: 100,\n * y: 100,\n * }, 'https://pixijs.com/assets/eggHead.png')\n * await alien.load()\n * GameWindowManager.addCanvasElement(\"alien\", alien)\n * ```\n * @example\n * ```typescript\n * let alien = addImage(\"alien\", 'https://pixijs.com/assets/eggHead.png')\n * alien.anchor.set(0.5);\n * alien.x = 100\n * alien.y = 100\n * await alien.load()\n * ```\n */\nexport default class CanvasImage extends CanvasSprite<ICanvasImageMemory> {\n constructor(options?: SpriteOptions | Texture | undefined, imageLink?: string) {\n super(options)\n if (imageLink) {\n this.imageLink = imageLink\n }\n }\n override get memory(): ICanvasImageMemory {\n return {\n ...getMemorySprite(this),\n className: \"CanvasImage\",\n textureImage: { image: this.imageLink },\n }\n }\n override set memory(memory: ICanvasImageMemory) {\n setMemorySprite(this, memory)\n }\n imageLink: string = \"\"\n static override from(source: Texture | TextureSourceLike, skipCache?: boolean) {\n let sprite = Sprite.from(source, skipCache)\n let mySprite = new CanvasImage()\n mySprite.texture = sprite.texture\n return mySprite\n }\n /** \n * Load the image from the link and set the texture of the sprite.\n * @param image The link of the image. If it is not set, it will use the imageLink property.\n * @returns A promise that resolves when the image is loaded.\n */\n async load(image?: string) {\n if (!image) {\n image = this.imageLink\n }\n return getTexture(this.imageLink)\n .then((texture) => {\n if (texture) {\n this.texture = texture\n }\n })\n .catch((e) => {\n console.error(\"[Pixi'VN] Error into CanvasImage.load()\", e)\n })\n }\n}\n","import { Assets, TextStyle, TextStyleOptions, Texture } from 'pixi.js';\n\n/**\n * Get a texture from a url.\n * @param imageUrl is the url of the image.\n * @returns the texture of the image, or a text with the error.\n */\nexport async function getTexture(imageUrl: string): Promise<Texture | void> {\n if (Assets.cache.has(imageUrl)) {\n return Assets.get(imageUrl)\n }\n return Assets.load(imageUrl)\n .then((texture) => {\n if (!texture) {\n console.error(\"[Pixi'VN] Texture not found\", imageUrl)\n return\n }\n // if texture not is a Texture, then it is a TextureResource\n if (!(texture instanceof Texture)) {\n console.error(\"[Pixi'VN] File not is a image\", imageUrl)\n return\n }\n\n return texture\n })\n .catch((e) => {\n console.error(\"[Pixi'VN] Error loading image\", e)\n return\n })\n}\n\nexport function getTextStyle(style: TextStyle): TextStyleOptions {\n let fill = style.fill\n if (fill instanceof Object) {\n // TODO: FillGradient and FillPattern are not supported yet\n console.warn(\"[Pixi'VN] CanvasText.style.fill is a FillGradient or FillPattern, this is not supported yet.\", fill)\n fill = \"#00FF00\"\n }\n return {\n align: style.align,\n breakWords: style.breakWords,\n dropShadow: style.dropShadow,\n fill: fill,\n fontFamily: style.fontFamily,\n fontSize: style.fontSize,\n fontStyle: style.fontStyle,\n fontVariant: style.fontVariant,\n fontWeight: style.fontWeight,\n leading: style.leading,\n letterSpacing: style.letterSpacing,\n lineHeight: style.lineHeight,\n padding: style.padding,\n stroke: style.stroke,\n textBaseline: style.textBaseline,\n trim: style.trim,\n whiteSpace: style.whiteSpace,\n wordWrap: style.wordWrap,\n wordWrapWidth: style.wordWrapWidth,\n }\n}\n","import { ContainerChild, ContainerEvents, EventEmitter, Sprite, SpriteOptions, Texture, TextureSourceLike } from \"pixi.js\";\nimport { getEventInstanceByClassName, getEventTypeByClassName } from \"../../decorators/EventDecorator\";\nimport { getTextureMemory } from \"../../functions/CanvasUtility\";\nimport { getTexture } from \"../../functions/TextureUtility\";\nimport ICanvasBaseMemory from \"../../interface/canvas/ICanvasBaseMemory\";\nimport ICanvasSpriteMemory, { ICanvasSpriteBaseMemory } from \"../../interface/canvas/ICanvasSpriteMemory\";\nimport { CanvasEventNamesType } from \"../../types/CanvasEventNamesType\";\nimport { EventIdType } from \"../../types/EventIdType\";\nimport CanvasEvent from \"../CanvasEvent\";\nimport CanvasBase from \"./CanvasBase\";\nimport { getMemoryContainer, setMemoryContainer } from \"./CanvasContainer\";\n\n/**\n * This class is a extension of the [PIXI.Sprite class](https://pixijs.com/8.x/examples/sprite/basic), it has the same properties and methods,\n * but it has the ability to be saved and loaded by the Pixi'VN library.\n * @example\n * ```typescript\n * const texture = await Assets.load('https://pixijs.com/assets/bunny.png');\n * const sprite = CanvasSprite.from(texture);\n *\n * sprite.anchor.set(0.5);\n * sprite.x = GameWindowManager.screen.width / 2;\n * sprite.y = GameWindowManager.screen.height / 2;\n *\n * sprite.eventMode = 'static';\n * sprite.cursor = 'pointer';\n * sprite.onEvent('pointerdown', EventTest);\n *\n * GameWindowManager.addCanvasElement(\"bunny\", sprite);\n * ```\n */\nexport default class CanvasSprite<Memory extends SpriteOptions & ICanvasBaseMemory = ICanvasSpriteMemory> extends Sprite implements CanvasBase<Memory | ICanvasSpriteMemory> {\n get memory(): Memory | ICanvasSpriteMemory {\n return getMemorySprite(this)\n }\n set memory(value: ICanvasSpriteMemory) {\n setMemorySprite(this, value)\n }\n private _onEvents: { [name: CanvasEventNamesType]: EventIdType } = {}\n get onEvents() {\n return this._onEvents\n }\n /**\n * is same function as on(), but it keeps in memory the children.\n * @param event The event type, e.g., 'click', 'mousedown', 'mouseup', 'pointerdown', etc.\n * @param eventClass The class that extends CanvasEvent.\n * @returns \n * @example\n * ```typescript\n * \\@eventDecorator()\n * export class EventTest extends CanvasEvent<CanvasSprite> {\n * override fn(event: CanvasEventNamesType, sprite: CanvasSprite): void {\n * if (event === 'pointerdown') {\n * sprite.scale.x *= 1.25;\n * sprite.scale.y *= 1.25;\n * }\n * }\n * }\n * ```\n * \n * ```typescript\n * let sprite = addImage(\"alien\", 'https://pixijs.com/assets/eggHead.png')\n * await sprite.load()\n *\n * sprite.eventMode = 'static';\n * sprite.cursor = 'pointer';\n * sprite.onEvent('pointerdown', EventTest);\n *\n * GameWindowManager.addCanvasElement(\"bunny\", sprite);\n * ```\n */\n onEvent<T extends CanvasEventNamesType, T2 extends typeof CanvasEvent<typeof this>>(event: T, eventClass: T2) {\n let className = eventClass.name\n let instance = getEventInstanceByClassName(className)\n this._onEvents[event] = className\n if (instance) {\n super.on(event, () => {\n (instance as CanvasEvent<CanvasBase<any>>).fn(event, this)\n })\n }\n return this\n }\n /**\n * on() does not keep in memory the event class, use onEvent() instead\n * @deprecated\n * @private\n * @param event \n * @param fn \n * @param context \n */\n override on<T extends keyof ContainerEvents<ContainerChild> | keyof { [K: symbol]: any;[K: {} & string]: any; }>(event: T, fn: (...args: EventEmitter.ArgumentMap<ContainerEvents<ContainerChild> & { [K: symbol]: any;[K: {} & string]: any; }>[Extract<T, keyof ContainerEvents<ContainerChild> | keyof { [K: symbol]: any;[K: {} & string]: any; }>]) => void, context?: any): this {\n return super.on(event, fn, context)\n }\n static override from(source: Texture | TextureSourceLike, skipCache?: boolean): CanvasSprite<any> {\n let sprite = Sprite.from(source, skipCache)\n let mySprite = new CanvasSprite()\n mySprite.texture = sprite.texture\n return mySprite\n }\n}\n\nexport function getMemorySprite<T extends CanvasSprite<any>>(element: T | CanvasSprite<any>): ICanvasSpriteMemory {\n let temp = getMemoryContainer(element)\n return {\n ...temp,\n className: \"CanvasSprite\",\n textureImage: getTextureMemory((element as any).texture),\n anchor: { x: element.anchor.x, y: element.anchor.y },\n roundPixels: element.roundPixels,\n onEvents: element.onEvents,\n }\n}\n\nexport function setMemorySprite<Memory extends ICanvasSpriteBaseMemory>(element: CanvasSprite<any>, memory: Memory) {\n setMemoryContainer(element, memory)\n getTexture(memory.textureImage.image).then((texture) => {\n if (texture) {\n element.texture = texture\n }\n })\n if (memory.anchor) {\n if (typeof memory.anchor === \"number\") {\n element.anchor.set(memory.anchor, memory.anchor)\n }\n else {\n element.anchor.set(memory.anchor.x, memory.anchor.y)\n }\n }\n memory.roundPixels && (element.roundPixels = memory.roundPixels)\n for (let event in memory.onEvents) {\n let className = memory.onEvents[event]\n let instance = getEventTypeByClassName(className)\n if (instance) {\n element.onEvent(event, instance)\n }\n }\n}\n","import { CanvasEvent } from \"../classes\"\nimport CanvasBase from \"../classes/canvas/CanvasBase\"\nimport { CanvasEventNamesType } from \"../types/CanvasEventNamesType\"\nimport { EventIdType } from \"../types/EventIdType\"\n\n/**\n * Canvas Event Register\n */\nexport const registeredEvents: { [name: EventIdType]: typeof CanvasEvent<CanvasEventNamesType> } = {}\n/**\n * Is a decorator that register a event in the game.\n * Is a required decorator for use the event in the game.\n * Thanks to this decoration the game has the possibility of updating the events to the latest modification and saving the game.\n * @param name is th identifier of the event, by default is the name of the class\n * @returns \n */\nexport default function eventDecorator(name?: EventIdType) {\n return function (target: typeof CanvasEvent<any>) {\n if (!name) {\n name = target.name\n }\n if (registeredEvents[name]) {\n console.warn(`[Pixi'VN] Event ${name} already exists, it will be overwritten`)\n }\n registeredEvents[name] = target\n }\n}\n\n/**\n * Get an event type by the class name.\n * @param eventName The name of the class.\n * @returns The event type.\n */\nexport function getEventTypeByClassName<T = typeof CanvasEvent<CanvasBase<any>>>(eventName: EventIdType): T | undefined {\n try {\n let eventType = registeredEvents[eventName]\n if (!eventType) {\n console.error(`[Pixi'VN] Event ${eventName} not found`)\n return\n }\n new eventType()\n return eventType as T\n }\n catch (e) {\n console.error(`[Pixi'VN] Error while getting Event ${eventName}`, e)\n return\n }\n}\n\n/**\n * Get an event instance by the class name.\n * @param eventName The name of the class.\n * @returns The event instance.\n */\nexport function getEventInstanceByClassName<T = CanvasEvent<CanvasBase<any>>>(eventName: EventIdType): T | undefined {\n try {\n let eventType = registeredEvents[eventName]\n if (!eventType) {\n console.error(`[Pixi'VN] Event ${eventName} not found`)\n return\n }\n let event = new eventType()\n return event as T\n }\n catch (e) {\n console.error(`[Pixi'VN] Error while getting Event ${eventName}`, e)\n return\n }\n}\n","import { ContainerChild, ContainerEvents, EventEmitter, Text } from \"pixi.js\";\nimport { getEventInstanceByClassName, getEventTypeByClassName } from \"../../decorators/EventDecorator\";\nimport { getTextStyle } from \"../../functions/TextureUtility\";\nimport ICanvasTextMemory from \"../../interface/canvas/ICanvasTextTextMemory\";\nimport { CanvasEventNamesType } from \"../../types/CanvasEventNamesType\";\nimport { EventIdType } from \"../../types/EventIdType\";\nimport CanvasEvent from \"../CanvasEvent\";\nimport CanvasBase from \"./CanvasBase\";\nimport { getMemoryContainer, setMemoryContainer } from \"./CanvasContainer\";\n\n/**\n * This class is a extension of the [PIXI.Text class](https://pixijs.com/8.x/examples/text/pixi-text), it has the same properties and methods,\n * but it has the ability to be saved and loaded by the Pixi'VN library.\n * @example\n * ```typescript\n * const text = new CanvasText();\n * text.text = \"Hello World\"\n * GameWindowManager.addCanvasElement(\"text\", text);\n * ```\n */\nexport default class CanvasText extends Text implements CanvasBase<ICanvasTextMemory> {\n get memory(): ICanvasTextMemory {\n return getMemoryText(this)\n }\n set memory(value: ICanvasTextMemory) {\n setMemoryText(this, value)\n }\n private _onEvents: { [name: CanvasEventNamesType]: EventIdType } = {}\n get onEvents() {\n return this._onEvents\n }\n /**\n * is same function as on(), but it keeps in memory the children.\n * @param event The event type, e.g., 'click', 'mousedown', 'mouseup', 'pointerdown', etc.\n * @param eventClass The class that extends CanvasEvent.\n * @returns \n * @example\n * ```typescript\n * \\@eventDecorator()\n * export class EventTest extends CanvasEvent<CanvasText> {\n * override fn(event: CanvasEventNamesType, text: CanvasText): void {\n * if (event === 'pointerdown') {\n * text.scale.x *= 1.25;\n * text.scale.y *= 1.25;\n * }\n * }\n * }\n * ```\n * \n * ```typescript\n * const text = new CanvasText();\n * text.text = \"Hello World\"\n *\n * text.eventMode = 'static';\n * text.cursor = 'pointer';\n * text.onEvent('pointerdown', EventTest);\n *\n * GameWindowManager.addCanvasElement(\"text\", text);\n * ```\n */\n onEvent<T extends CanvasEventNamesType, T2 extends typeof CanvasEvent<typeof this>>(event: T, eventClass: T2) {\n let className = eventClass.name\n let instance = getEventInstanceByClassName(className)\n this._onEvents[event] = className\n if (instance) {\n super.on(event, () => {\n (instance as CanvasEvent<CanvasBase<any>>).fn(event, this)\n })\n }\n return this\n }\n /**\n * on() does not keep in memory the event class, use onEvent() instead\n * @deprecated\n * @private\n * @param event \n * @param fn \n * @param context \n */\n override on<T extends keyof ContainerEvents<ContainerChild> | keyof { [K: symbol]: any;[K: {} & string]: any; }>(event: T, fn: (...args: EventEmitter.ArgumentMap<ContainerEvents<ContainerChild> & { [K: symbol]: any;[K: {} & string]: any; }>[Extract<T, keyof ContainerEvents<ContainerChild> | keyof { [K: symbol]: any;[K: {} & string]: any; }>]) => void, context?: any): this {\n return super.on(event, fn, context)\n }\n}\n\nexport function getMemoryText<T extends CanvasText>(element: T | CanvasText): ICanvasTextMemory {\n let temp = getMemoryContainer(element)\n return {\n ...temp,\n className: \"CanvasText\",\n anchor: { x: element.anchor.x, y: element.anchor.y },\n text: element.text,\n resolution: element.resolution,\n style: getTextStyle(element.style),\n roundPixels: element.roundPixels,\n onEvents: element.onEvents,\n }\n}\n\nexport function setMemoryText(element: CanvasText, memory: ICanvasTextMemory) {\n setMemoryContainer(element, memory)\n if (memory.anchor) {\n if (typeof memory.anchor === \"number\") {\n element.anchor.set(memory.anchor, memory.anchor)\n }\n else {\n element.anchor.set(memory.anchor.x, memory.anchor.y)\n }\n }\n memory.text && (element.text = memory.text)\n memory.resolution && (element.resolution = memory.resolution)\n memory.style && (element.style = memory.style)\n memory.roundPixels && (element.roundPixels = memory.roundPixels)\n for (let event in memory.onEvents) {\n let className = memory.onEvents[event]\n let instance = getEventTypeByClassName(className)\n if (instance) {\n element.onEvent(event as CanvasEventNamesType, instance)\n }\n }\n}\n","import { CanvasContainer, CanvasImage, CanvasSprite, CanvasText } from \"../classes/canvas\"\nimport CanvasBase from \"../classes/canvas/CanvasBase\"\nimport { CanvasElementTagType } from \"../types/CanvasElementTagType\"\n\nexport const registeredCanvasElement: { [name: CanvasElementTagType]: typeof CanvasBase<any> } = {}\n/**\n * Is a decorator that register a canvas element in the game.\n * @param name Name of the canvas element, by default it will use the class name. If the name is already registered, it will show a warning\n * @returns \n */\nexport default function canvasElementDecorator(name?: CanvasElementTagType) {\n return function (target: typeof CanvasBase<any>) {\n if (!name) {\n name = target.name\n }\n if (registeredCanvasElement[name]) {\n console.warn(`[Pixi'VN] CanvasElement ${name} already registered`)\n }\n registeredCanvasElement[name] = target\n }\n}\n\nexport function getCanvasElementTypeByClassName<T extends typeof CanvasBase<any>>(canvasName: CanvasElementTagType): T | undefined {\n try {\n let eventType = registeredCanvasElement[canvasName]\n if (!eventType) {\n console.error(`[Pixi'VN] CanvasElement ${canvasName} not found`)\n return\n }\n new eventType()\n return eventType as T\n }\n catch (e) {\n console.error(`[Pixi'VN] Error while getting CanvasElement ${canvasName}`, e)\n return\n }\n}\n\nexport function getCanvasElementInstanceByClassName<T extends CanvasBase<any>>(canvasName: CanvasElementTagType): T | undefined {\n try {\n let eventType = registeredCanvasElement[canvasName]\n if (!eventType) {\n if (canvasName === \"CanvasContainer\") {\n eventType = CanvasContainer\n }\n else if (canvasName === \"CanvasImage\") {\n eventType = CanvasImage\n }\n else if (canvasName === \"CanvasSprite\") {\n eventType = CanvasSprite\n }\n else if (canvasName === \"CanvasText\") {\n eventType = CanvasText\n }\n }\n\n if (!eventType) {\n console.error(`[Pixi'VN] CanvasElement ${canvasName} not found`)\n return\n }\n let canvasElement = new eventType()\n return canvasElement as T\n }\n catch (e) {\n console.error(`[Pixi'VN] Error while getting CanvasElement ${canvasName}`, e)\n return\n }\n}\n","import { CharacterBaseModel } from \"../classes\"\n\nexport const registeredCharacters: { [id: string]: CharacterBaseModel } = {}\n/**\n * Is a function that saves the character. If the character already exists, it will be overwritten.\n * @param character is the character to save\n * @returns \n * @example\n * ```typescript\n * export const liam = new CharacterBaseModel('liam', { name: 'Liam'});\n * export const alice = new CharacterBaseModel('alice', { name: 'Alice'});\n * saveCharacter([liam, alice]);\n * ```\n */\nexport function saveCharacter<T extends CharacterBaseModel = CharacterBaseModel>(character: T | T[]) {\n if (Array.isArray(character)) {\n character.forEach(c => saveCharacter(c))\n return\n }\n if (registeredCharacters[character.id]) {\n console.warn(`[Pixi'VN] Character id ${character.id} already exists, it will be overwritten`)\n }\n registeredCharacters[character.id] = character\n}\n\n/**\n * is a function that returns the character by the id\n * @param id is the id of the character\n * @returns the character\n * @example\n * ```typescript\n * const liam = getCharacterById('liam');\n * ```\n */\nexport function getCharacterById<T extends CharacterBaseModel>(id: string): T | undefined {\n try {\n let character = registeredCharacters[id]\n if (!character) {\n console.error(`[Pixi'VN] Character ${id} not found`)\n return\n }\n return character as T\n }\n catch (e) {\n console.error(`[Pixi'VN] Error while getting Character ${id}`, e)\n return\n }\n}\n\n/**\n * is a function that returns all characters\n * @returns all characters\n * @example\n * ```typescript\n * const allCharacters = getAllCharacters();\n * ```\n */\nexport function getAllCharacters<T extends CharacterBaseModel>(): T[] {\n return Object.values(registeredCharacters) as T[]\n}\n","import { Label } from \"../classes\"\nimport { LabelIdType } from \"../types/LabelIdType\"\n\nexport const registeredLabels: { [key: LabelIdType]: typeof Label } = {}\n/**\n * Is a decorator that register a label in the game.\n * Is a required decorator for use the label in the game.\n * Thanks to this decoration the game has the possibility of updating the labels to the latest modification and saving the game.\n * @param name is th identifier of the label, by default is the name of the class\n * @returns \n */\nexport default function labelDecorator(name?: LabelIdType) {\n return function (target: typeof Label) {\n if (!name) {\n name = target.name\n }\n if (registeredLabels[name]) {\n console.warn(`[Pixi'VN] Label ${name} already exists, it will be overwritten`)\n }\n registeredLabels[name] = target\n }\n}\n\n/**\n * is a function that returns the type of the label\n * @param labelName is the name of the label\n * @returns the label type\n */\nexport function getLabelTypeByClassName<T extends typeof Label>(labelName: LabelIdType): T | undefined {\n try {\n let labelType = registeredLabels[labelName]\n if (!labelType) {\n console.error(`[Pixi'VN] Label ${labelName} not found`)\n return\n }\n new labelType()\n return labelType as T\n }\n catch (e) {\n console.error(`[Pixi'VN] Error while getting Label ${labelName}`, e)\n return\n }\n}\n\n/**\n * is a function that returns the instance of the label\n * @param labelName is the name of the label\n * @returns the label\n */\nexport function getLabelInstanceByClassName<T extends Label>(labelName: LabelIdType): T | undefined {\n try {\n let labelType = registeredLabels[labelName]\n if (!labelType) {\n console.error(`[Pixi'VN] Label ${labelName} not found`)\n return\n }\n let label = new labelType()\n let step = label.steps\n if (step.length = 0) {\n console.warn(`[Pixi'VN] Label ${labelName} has no steps`)\n }\n return label as T\n }\n catch (e) {\n console.error(`[Pixi'VN] Error while getting Label ${labelName}`, e)\n return\n }\n}\n","import { UPDATE_PRIORITY } from \"pixi.js\"\nimport TickerBase, { TickerArgsType } from \"../classes/ticker/TickerBase\"\nimport { TickerIdType } from \"../types/TickerIdType\"\n\n/**\n * A dictionary that contains all tickers registered and avvailable to be used.\n */\nexport const registeredTickers: { [name: TickerIdType]: typeof TickerBase } = {}\n/**\n * Is a decorator that register a ticker in the game.\n * Is a required decorator for use the ticker in the game.\n * Thanks to this decoration the game has the possibility of updating the tickers to the latest modification and saving the game.\n * @param name is th identifier of the label, by default is the name of the class\n * @returns \n */\nexport default function tickerDecorator(name?: TickerIdType) {\n return function (target: typeof TickerBase<any>) {\n if (!name) {\n name = target.name\n }\n if (registeredTickers[name]) {\n console.warn(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`)\n }\n registeredTickers[name] = target\n }\n}\n\n/**\n * Get a ticker instance by the class name.\n * @param tickerName The name of the class.\n * @returns The ticker instance.\n */\nexport function geTickerInstanceByClassName<TArgs extends TickerArgsType>(tickerName: TickerIdType, args: TArgs, duration?: number, priority?: UPDATE_PRIORITY): TickerBase<TArgs> | undefined {\n try {\n let ticker = registeredTickers[tickerName]\n if (!ticker) {\n console.error(`[Pixi'VN] Ticker ${tickerName} not found`)\n return\n }\n return new ticker(args, duration, priority)\n }\n catch (e) {\n console.error(`[Pixi'VN] Error while getting Ticker ${tickerName}`, e)\n return\n }\n}\n"]}
@@ -0,0 +1,92 @@
1
+ import 'pixi.js';
2
+
3
+ // src/classes/canvas/CanvasBase.ts
4
+
5
+ // src/decorators/EventDecorator.ts
6
+ var registeredEvents = {};
7
+ function eventDecorator(name) {
8
+ return function(target) {
9
+ if (!name) {
10
+ name = target.name;
11
+ }
12
+ if (registeredEvents[name]) {
13
+ console.warn(`[Pixi'VN] Event ${name} already exists, it will be overwritten`);
14
+ }
15
+ registeredEvents[name] = target;
16
+ };
17
+ }
18
+
19
+ // src/decorators/CanvasElementDecorator.ts
20
+ var registeredCanvasElement = {};
21
+ function canvasElementDecorator(name) {
22
+ return function(target) {
23
+ if (!name) {
24
+ name = target.name;
25
+ }
26
+ if (registeredCanvasElement[name]) {
27
+ console.warn(`[Pixi'VN] CanvasElement ${name} already registered`);
28
+ }
29
+ registeredCanvasElement[name] = target;
30
+ };
31
+ }
32
+
33
+ // src/decorators/CharacterDecorator.ts
34
+ var registeredCharacters = {};
35
+ function saveCharacter(character) {
36
+ if (Array.isArray(character)) {
37
+ character.forEach((c) => saveCharacter(c));
38
+ return;
39
+ }
40
+ if (registeredCharacters[character.id]) {
41
+ console.warn(`[Pixi'VN] Character id ${character.id} already exists, it will be overwritten`);
42
+ }
43
+ registeredCharacters[character.id] = character;
44
+ }
45
+ function getCharacterById(id) {
46
+ try {
47
+ let character = registeredCharacters[id];
48
+ if (!character) {
49
+ console.error(`[Pixi'VN] Character ${id} not found`);
50
+ return;
51
+ }
52
+ return character;
53
+ } catch (e) {
54
+ console.error(`[Pixi'VN] Error while getting Character ${id}`, e);
55
+ return;
56
+ }
57
+ }
58
+ function getAllCharacters() {
59
+ return Object.values(registeredCharacters);
60
+ }
61
+
62
+ // src/decorators/LabelDecorator.ts
63
+ var registeredLabels = {};
64
+ function labelDecorator(name) {
65
+ return function(target) {
66
+ if (!name) {
67
+ name = target.name;
68
+ }
69
+ if (registeredLabels[name]) {
70
+ console.warn(`[Pixi'VN] Label ${name} already exists, it will be overwritten`);
71
+ }
72
+ registeredLabels[name] = target;
73
+ };
74
+ }
75
+
76
+ // src/decorators/TickerDecorator.ts
77
+ var registeredTickers = {};
78
+ function tickerDecorator(name) {
79
+ return function(target) {
80
+ if (!name) {
81
+ name = target.name;
82
+ }
83
+ if (registeredTickers[name]) {
84
+ console.warn(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`);
85
+ }
86
+ registeredTickers[name] = target;
87
+ };
88
+ }
89
+
90
+ export { canvasElementDecorator, eventDecorator, getAllCharacters, getCharacterById, labelDecorator, saveCharacter, tickerDecorator };
91
+ //# sourceMappingURL=out.js.map
92
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/classes/canvas/CanvasBase.ts","../../src/classes/canvas/CanvasContainer.ts","../../src/classes/canvas/CanvasImage.ts","../../src/functions/TextureUtility.ts","../../src/classes/canvas/CanvasSprite.ts","../../src/decorators/EventDecorator.ts","../../src/classes/canvas/CanvasText.ts","../../src/decorators/CanvasElementDecorator.ts","../../src/decorators/CharacterDecorator.ts","../../src/decorators/LabelDecorator.ts","../../src/decorators/TickerDecorator.ts"],"names":["Container","Sprite"],"mappings":";AAAA,SAAS,iBAAiB;;;ACA1B,SAAS,aAAAA,kBAAmC;;;ACA5C,SAAS,UAAAC,eAAyD;;;ACAlE,SAAS,QAAqC,eAAe;;;ACA7D,SAAwD,cAAyD;;;ACQ1G,IAAM,mBAAsF,CAAC;AAQrF,SAAR,eAAgC,MAAoB;AACvD,SAAO,SAAU,QAAiC;AAC9C,QAAI,CAAC,MAAM;AACP,aAAO,OAAO;AAAA,IAClB;AACA,QAAI,iBAAiB,IAAI,GAAG;AACxB,cAAQ,KAAK,mBAAmB,IAAI,yCAAyC;AAAA,IACjF;AACA,qBAAiB,IAAI,IAAI;AAAA,EAC7B;AACJ;;;AC1BA,SAAwD,YAAY;;;ACI7D,IAAM,0BAAoF,CAAC;AAMnF,SAAR,uBAAwC,MAA6B;AACxE,SAAO,SAAU,QAAgC;AAC7C,QAAI,CAAC,MAAM;AACP,aAAO,OAAO;AAAA,IAClB;AACA,QAAI,wBAAwB,IAAI,GAAG;AAC/B,cAAQ,KAAK,2BAA2B,IAAI,qBAAqB;AAAA,IACrE;AACA,4BAAwB,IAAI,IAAI;AAAA,EACpC;AACJ;;;AClBO,IAAM,uBAA6D,CAAC;AAYpE,SAAS,cAAiE,WAAoB;AACjG,MAAI,MAAM,QAAQ,SAAS,GAAG;AAC1B,cAAU,QAAQ,OAAK,cAAc,CAAC,CAAC;AACvC;AAAA,EACJ;AACA,MAAI,qBAAqB,UAAU,EAAE,GAAG;AACpC,YAAQ,KAAK,0BAA0B,UAAU,EAAE,yCAAyC;AAAA,EAChG;AACA,uBAAqB,UAAU,EAAE,IAAI;AACzC;AAWO,SAAS,iBAA+C,IAA2B;AACtF,MAAI;AACA,QAAI,YAAY,qBAAqB,EAAE;AACvC,QAAI,CAAC,WAAW;AACZ,cAAQ,MAAM,uBAAuB,EAAE,YAAY;AACnD;AAAA,IACJ;AACA,WAAO;AAAA,EACX,SACO,GAAG;AACN,YAAQ,MAAM,2CAA2C,EAAE,IAAI,CAAC;AAChE;AAAA,EACJ;AACJ;AAUO,SAAS,mBAAsD;AAClE,SAAO,OAAO,OAAO,oBAAoB;AAC7C;;;ACxDO,IAAM,mBAAyD,CAAC;AAQxD,SAAR,eAAgC,MAAoB;AACvD,SAAO,SAAU,QAAsB;AACnC,QAAI,CAAC,MAAM;AACP,aAAO,OAAO;AAAA,IAClB;AACA,QAAI,iBAAiB,IAAI,GAAG;AACxB,cAAQ,KAAK,mBAAmB,IAAI,yCAAyC;AAAA,IACjF;AACA,qBAAiB,IAAI,IAAI;AAAA,EAC7B;AACJ;;;ACdO,IAAM,oBAAiE,CAAC;AAQhE,SAAR,gBAAiC,MAAqB;AACzD,SAAO,SAAU,QAAgC;AAC7C,QAAI,CAAC,MAAM;AACP,aAAO,OAAO;AAAA,IAClB;AACA,QAAI,kBAAkB,IAAI,GAAG;AACzB,cAAQ,KAAK,oBAAoB,IAAI,yCAAyC;AAAA,IAClF;AACA,sBAAkB,IAAI,IAAI;AAAA,EAC9B;AACJ","sourcesContent":["import { Container } from \"pixi.js\";\nimport { ICanvasBaseMemory } from \"../../interface/canvas\";\n\n/**\n * This class is used to create a canvas element to add into a Pixi Application.\n * You can use GameWindowManager.addCanvasElement() to add this element into the application.\n * This class should be implemented and the memory method should be overridden.\n * You must use the canvasElementDecorator to register the canvas in the game.\n * In Ren'Py is a displayable.\n * @example\n * ```typescript\n * \\@canvasElementDecorator() // this is equivalent to canvasElementDecorator(\"CanvasExample\")\n * export class CanvasExample extends Container implements CanvasBase<ICanvasExampleMemory> {\n * get memory(): ICanvasExampleMemory {\n * return {\n * className: \"CanvasExample\",\n * // ... other properties\n * }\n * }\n * set memory(value: ICanvasExampleMemory) {\n * // ... set other properties\n * }\n * }\n * ```\n */\nexport default class CanvasBase<T2 extends ICanvasBaseMemory> extends Container {\n /**\n * This method return the memory of the canvas element.\n */\n get memory(): T2 { throw new Error(\"[Pixi'VN] The method CanvasBase.memory must be overridden\") }\n /**\n * This method set the memory of the canvas element.\n */\n set memory(_value: T2) { throw new Error(\"[Pixi'VN] The method CanvasBase.memory must be overridden\") }\n}\n","import { Container, ContainerOptions } from \"pixi.js\";\nimport { exportCanvasElement, importCanvasElement } from \"../../functions/CanvasUtility\";\nimport ICanvasContainerMemory from \"../../interface/canvas/ICanvasContainerMemory\";\nimport CanvasBase from \"./CanvasBase\";\n\n/**\n * This class is a extension of the [PIXI.Container class](https://pixijs.com/8.x/examples/basic/container), it has the same properties and methods, \n * but it has the ability to be saved and loaded by the Pixi'VN library.\n * @example\n * ```typescript\n * const container = new CanvasContainer();\n * GameWindowManager.addCanvasElement(container);\n * const texture = await Assets.load('https://pixijs.com/assets/bunny.png');\n * for (let i = 0; i < 25; i++)\n * {\n * const bunny = new CanvasSprite(texture);\n * bunny.x = (i % 5) * 40;\n * bunny.y = Math.floor(i / 5) * 40;\n * container.addChild(bunny);\n * }\n * ```\n */\nexport default class CanvasContainer extends Container implements CanvasBase<ICanvasContainerMemory> {\n get memory(): ICanvasContainerMemory {\n let memory = getMemoryContainer(this)\n this.children.forEach(child => {\n memory.elements.push(exportCanvasElement(child as CanvasBase<any>))\n })\n return memory\n }\n set memory(value: ICanvasContainerMemory) {\n setMemoryContainer(this, value)\n value.elements.forEach(child => {\n this.addChild(importCanvasElement(child))\n })\n }\n}\n\nexport function getMemoryContainer<T extends Container>(element: T): ICanvasContainerMemory {\n return {\n className: \"CanvasContainer\",\n elements: [],\n\n width: element.width,\n height: element.height,\n\n isRenderGroup: element.isRenderGroup,\n blendMode: element.blendMode,\n tint: element.tint,\n alpha: element.alpha,\n angle: element.angle,\n renderable: element.renderable,\n rotation: element.rotation,\n scale: { x: element.scale.x, y: element.scale.y },\n pivot: { x: element.pivot.x, y: element.pivot.y },\n position: { x: element.position.x, y: element.position.y },\n skew: { x: element.skew.x, y: element.skew.y },\n visible: element.visible,\n culled: element.culled,\n x: element.x,\n y: element.y,\n boundsArea: element.boundsArea,\n\n cursor: element.cursor,\n eventMode: element.eventMode,\n interactive: element.interactive,\n interactiveChildren: element.interactiveChildren,\n hitArea: element.hitArea\n }\n}\n\nexport function setMemoryContainer<T extends Container>(element: T | Container, memory: ContainerOptions) {\n memory.width && (element.width = memory.width)\n memory.height && (element.height = memory.height)\n\n memory.isRenderGroup && (element.isRenderGroup = memory.isRenderGroup)\n memory.blendMode && (element.blendMode = memory.blendMode)\n memory.tint && (element.tint = memory.tint)\n memory.alpha && (element.alpha = memory.alpha)\n memory.angle && (element.angle = memory.angle)\n memory.renderable && (element.renderable = memory.renderable)\n memory.rotation && (element.rotation = memory.rotation)\n if (memory.scale) {\n if (typeof memory.scale === \"number\") {\n element.scale.set(memory.scale, memory.scale)\n }\n else {\n element.scale.set(memory.scale.x, memory.scale.y)\n }\n }\n if (memory.pivot) {\n if (typeof memory.pivot === \"number\") {\n element.pivot.set(memory.pivot, memory.pivot)\n }\n else {\n element.pivot.set(memory.pivot.x, memory.pivot.y)\n }\n }\n memory.position && (element.position.set(memory.position.x, memory.position.y))\n memory.skew && (element.skew.set(memory.skew.x, memory.skew.y))\n memory.visible && (element.visible = memory.visible)\n memory.culled && (element.culled = memory.culled)\n memory.x && (element.x = memory.x)\n memory.y && (element.y = memory.y)\n memory.boundsArea && (element.boundsArea = memory.boundsArea)\n\n memory.cursor && (element.cursor = memory.cursor)\n memory.eventMode && (element.eventMode = memory.eventMode)\n memory.interactive && (element.interactive = memory.interactive)\n memory.interactiveChildren && (element.interactiveChildren = memory.interactiveChildren)\n memory.hitArea && (element.hitArea = memory.hitArea)\n}\n","import { Sprite, SpriteOptions, Texture, TextureSourceLike } from \"pixi.js\";\nimport { getTexture } from \"../../functions/TextureUtility\";\nimport ICanvasImageMemory from \"../../interface/canvas/ICanvasImageMemory\";\nimport CanvasSprite, { getMemorySprite, setMemorySprite } from \"./CanvasSprite\";\n\n/**\n * This class is a extension of the CanvasSprite class, it has the same properties and methods,\n * but it has some features that make texture management easier.\n * You need to use CanvasImage.load() to show the image in the canvas.\n * This class is used for functions like addImage, loadImages and showWithDissolveTransition.\n * @example\n * ```typescript\n * let alien = new CanvasImage({\n * anchor: { x: 0.5, y: 0.5 },\n * x: 100,\n * y: 100,\n * }, 'https://pixijs.com/assets/eggHead.png')\n * await alien.load()\n * GameWindowManager.addCanvasElement(\"alien\", alien)\n * ```\n * @example\n * ```typescript\n * let alien = addImage(\"alien\", 'https://pixijs.com/assets/eggHead.png')\n * alien.anchor.set(0.5);\n * alien.x = 100\n * alien.y = 100\n * await alien.load()\n * ```\n */\nexport default class CanvasImage extends CanvasSprite<ICanvasImageMemory> {\n constructor(options?: SpriteOptions | Texture | undefined, imageLink?: string) {\n super(options)\n if (imageLink) {\n this.imageLink = imageLink\n }\n }\n override get memory(): ICanvasImageMemory {\n return {\n ...getMemorySprite(this),\n className: \"CanvasImage\",\n textureImage: { image: this.imageLink },\n }\n }\n override set memory(memory: ICanvasImageMemory) {\n setMemorySprite(this, memory)\n }\n imageLink: string = \"\"\n static override from(source: Texture | TextureSourceLike, skipCache?: boolean) {\n let sprite = Sprite.from(source, skipCache)\n let mySprite = new CanvasImage()\n mySprite.texture = sprite.texture\n return mySprite\n }\n /** \n * Load the image from the link and set the texture of the sprite.\n * @param image The link of the image. If it is not set, it will use the imageLink property.\n * @returns A promise that resolves when the image is loaded.\n */\n async load(image?: string) {\n if (!image) {\n image = this.imageLink\n }\n return getTexture(this.imageLink)\n .then((texture) => {\n if (texture) {\n this.texture = texture\n }\n })\n .catch((e) => {\n console.error(\"[Pixi'VN] Error into CanvasImage.load()\", e)\n })\n }\n}\n","import { Assets, TextStyle, TextStyleOptions, Texture } from 'pixi.js';\n\n/**\n * Get a texture from a url.\n * @param imageUrl is the url of the image.\n * @returns the texture of the image, or a text with the error.\n */\nexport async function getTexture(imageUrl: string): Promise<Texture | void> {\n if (Assets.cache.has(imageUrl)) {\n return Assets.get(imageUrl)\n }\n return Assets.load(imageUrl)\n .then((texture) => {\n if (!texture) {\n console.error(\"[Pixi'VN] Texture not found\", imageUrl)\n return\n }\n // if texture not is a Texture, then it is a TextureResource\n if (!(texture instanceof Texture)) {\n console.error(\"[Pixi'VN] File not is a image\", imageUrl)\n return\n }\n\n return texture\n })\n .catch((e) => {\n console.error(\"[Pixi'VN] Error loading image\", e)\n return\n })\n}\n\nexport function getTextStyle(style: TextStyle): TextStyleOptions {\n let fill = style.fill\n if (fill instanceof Object) {\n // TODO: FillGradient and FillPattern are not supported yet\n console.warn(\"[Pixi'VN] CanvasText.style.fill is a FillGradient or FillPattern, this is not supported yet.\", fill)\n fill = \"#00FF00\"\n }\n return {\n align: style.align,\n breakWords: style.breakWords,\n dropShadow: style.dropShadow,\n fill: fill,\n fontFamily: style.fontFamily,\n fontSize: style.fontSize,\n fontStyle: style.fontStyle,\n fontVariant: style.fontVariant,\n fontWeight: style.fontWeight,\n leading: style.leading,\n letterSpacing: style.letterSpacing,\n lineHeight: style.lineHeight,\n padding: style.padding,\n stroke: style.stroke,\n textBaseline: style.textBaseline,\n trim: style.trim,\n whiteSpace: style.whiteSpace,\n wordWrap: style.wordWrap,\n wordWrapWidth: style.wordWrapWidth,\n }\n}\n","import { ContainerChild, ContainerEvents, EventEmitter, Sprite, SpriteOptions, Texture, TextureSourceLike } from \"pixi.js\";\nimport { getEventInstanceByClassName, getEventTypeByClassName } from \"../../decorators/EventDecorator\";\nimport { getTextureMemory } from \"../../functions/CanvasUtility\";\nimport { getTexture } from \"../../functions/TextureUtility\";\nimport ICanvasBaseMemory from \"../../interface/canvas/ICanvasBaseMemory\";\nimport ICanvasSpriteMemory, { ICanvasSpriteBaseMemory } from \"../../interface/canvas/ICanvasSpriteMemory\";\nimport { CanvasEventNamesType } from \"../../types/CanvasEventNamesType\";\nimport { EventIdType } from \"../../types/EventIdType\";\nimport CanvasEvent from \"../CanvasEvent\";\nimport CanvasBase from \"./CanvasBase\";\nimport { getMemoryContainer, setMemoryContainer } from \"./CanvasContainer\";\n\n/**\n * This class is a extension of the [PIXI.Sprite class](https://pixijs.com/8.x/examples/sprite/basic), it has the same properties and methods,\n * but it has the ability to be saved and loaded by the Pixi'VN library.\n * @example\n * ```typescript\n * const texture = await Assets.load('https://pixijs.com/assets/bunny.png');\n * const sprite = CanvasSprite.from(texture);\n *\n * sprite.anchor.set(0.5);\n * sprite.x = GameWindowManager.screen.width / 2;\n * sprite.y = GameWindowManager.screen.height / 2;\n *\n * sprite.eventMode = 'static';\n * sprite.cursor = 'pointer';\n * sprite.onEvent('pointerdown', EventTest);\n *\n * GameWindowManager.addCanvasElement(\"bunny\", sprite);\n * ```\n */\nexport default class CanvasSprite<Memory extends SpriteOptions & ICanvasBaseMemory = ICanvasSpriteMemory> extends Sprite implements CanvasBase<Memory | ICanvasSpriteMemory> {\n get memory(): Memory | ICanvasSpriteMemory {\n return getMemorySprite(this)\n }\n set memory(value: ICanvasSpriteMemory) {\n setMemorySprite(this, value)\n }\n private _onEvents: { [name: CanvasEventNamesType]: EventIdType } = {}\n get onEvents() {\n return this._onEvents\n }\n /**\n * is same function as on(), but it keeps in memory the children.\n * @param event The event type, e.g., 'click', 'mousedown', 'mouseup', 'pointerdown', etc.\n * @param eventClass The class that extends CanvasEvent.\n * @returns \n * @example\n * ```typescript\n * \\@eventDecorator()\n * export class EventTest extends CanvasEvent<CanvasSprite> {\n * override fn(event: CanvasEventNamesType, sprite: CanvasSprite): void {\n * if (event === 'pointerdown') {\n * sprite.scale.x *= 1.25;\n * sprite.scale.y *= 1.25;\n * }\n * }\n * }\n * ```\n * \n * ```typescript\n * let sprite = addImage(\"alien\", 'https://pixijs.com/assets/eggHead.png')\n * await sprite.load()\n *\n * sprite.eventMode = 'static';\n * sprite.cursor = 'pointer';\n * sprite.onEvent('pointerdown', EventTest);\n *\n * GameWindowManager.addCanvasElement(\"bunny\", sprite);\n * ```\n */\n onEvent<T extends CanvasEventNamesType, T2 extends typeof CanvasEvent<typeof this>>(event: T, eventClass: T2) {\n let className = eventClass.name\n let instance = getEventInstanceByClassName(className)\n this._onEvents[event] = className\n if (instance) {\n super.on(event, () => {\n (instance as CanvasEvent<CanvasBase<any>>).fn(event, this)\n })\n }\n return this\n }\n /**\n * on() does not keep in memory the event class, use onEvent() instead\n * @deprecated\n * @private\n * @param event \n * @param fn \n * @param context \n */\n override on<T extends keyof ContainerEvents<ContainerChild> | keyof { [K: symbol]: any;[K: {} & string]: any; }>(event: T, fn: (...args: EventEmitter.ArgumentMap<ContainerEvents<ContainerChild> & { [K: symbol]: any;[K: {} & string]: any; }>[Extract<T, keyof ContainerEvents<ContainerChild> | keyof { [K: symbol]: any;[K: {} & string]: any; }>]) => void, context?: any): this {\n return super.on(event, fn, context)\n }\n static override from(source: Texture | TextureSourceLike, skipCache?: boolean): CanvasSprite<any> {\n let sprite = Sprite.from(source, skipCache)\n let mySprite = new CanvasSprite()\n mySprite.texture = sprite.texture\n return mySprite\n }\n}\n\nexport function getMemorySprite<T extends CanvasSprite<any>>(element: T | CanvasSprite<any>): ICanvasSpriteMemory {\n let temp = getMemoryContainer(element)\n return {\n ...temp,\n className: \"CanvasSprite\",\n textureImage: getTextureMemory((element as any).texture),\n anchor: { x: element.anchor.x, y: element.anchor.y },\n roundPixels: element.roundPixels,\n onEvents: element.onEvents,\n }\n}\n\nexport function setMemorySprite<Memory extends ICanvasSpriteBaseMemory>(element: CanvasSprite<any>, memory: Memory) {\n setMemoryContainer(element, memory)\n getTexture(memory.textureImage.image).then((texture) => {\n if (texture) {\n element.texture = texture\n }\n })\n if (memory.anchor) {\n if (typeof memory.anchor === \"number\") {\n element.anchor.set(memory.anchor, memory.anchor)\n }\n else {\n element.anchor.set(memory.anchor.x, memory.anchor.y)\n }\n }\n memory.roundPixels && (element.roundPixels = memory.roundPixels)\n for (let event in memory.onEvents) {\n let className = memory.onEvents[event]\n let instance = getEventTypeByClassName(className)\n if (instance) {\n element.onEvent(event, instance)\n }\n }\n}\n","import { CanvasEvent } from \"../classes\"\nimport CanvasBase from \"../classes/canvas/CanvasBase\"\nimport { CanvasEventNamesType } from \"../types/CanvasEventNamesType\"\nimport { EventIdType } from \"../types/EventIdType\"\n\n/**\n * Canvas Event Register\n */\nexport const registeredEvents: { [name: EventIdType]: typeof CanvasEvent<CanvasEventNamesType> } = {}\n/**\n * Is a decorator that register a event in the game.\n * Is a required decorator for use the event in the game.\n * Thanks to this decoration the game has the possibility of updating the events to the latest modification and saving the game.\n * @param name is th identifier of the event, by default is the name of the class\n * @returns \n */\nexport default function eventDecorator(name?: EventIdType) {\n return function (target: typeof CanvasEvent<any>) {\n if (!name) {\n name = target.name\n }\n if (registeredEvents[name]) {\n console.warn(`[Pixi'VN] Event ${name} already exists, it will be overwritten`)\n }\n registeredEvents[name] = target\n }\n}\n\n/**\n * Get an event type by the class name.\n * @param eventName The name of the class.\n * @returns The event type.\n */\nexport function getEventTypeByClassName<T = typeof CanvasEvent<CanvasBase<any>>>(eventName: EventIdType): T | undefined {\n try {\n let eventType = registeredEvents[eventName]\n if (!eventType) {\n console.error(`[Pixi'VN] Event ${eventName} not found`)\n return\n }\n new eventType()\n return eventType as T\n }\n catch (e) {\n console.error(`[Pixi'VN] Error while getting Event ${eventName}`, e)\n return\n }\n}\n\n/**\n * Get an event instance by the class name.\n * @param eventName The name of the class.\n * @returns The event instance.\n */\nexport function getEventInstanceByClassName<T = CanvasEvent<CanvasBase<any>>>(eventName: EventIdType): T | undefined {\n try {\n let eventType = registeredEvents[eventName]\n if (!eventType) {\n console.error(`[Pixi'VN] Event ${eventName} not found`)\n return\n }\n let event = new eventType()\n return event as T\n }\n catch (e) {\n console.error(`[Pixi'VN] Error while getting Event ${eventName}`, e)\n return\n }\n}\n","import { ContainerChild, ContainerEvents, EventEmitter, Text } from \"pixi.js\";\nimport { getEventInstanceByClassName, getEventTypeByClassName } from \"../../decorators/EventDecorator\";\nimport { getTextStyle } from \"../../functions/TextureUtility\";\nimport ICanvasTextMemory from \"../../interface/canvas/ICanvasTextTextMemory\";\nimport { CanvasEventNamesType } from \"../../types/CanvasEventNamesType\";\nimport { EventIdType } from \"../../types/EventIdType\";\nimport CanvasEvent from \"../CanvasEvent\";\nimport CanvasBase from \"./CanvasBase\";\nimport { getMemoryContainer, setMemoryContainer } from \"./CanvasContainer\";\n\n/**\n * This class is a extension of the [PIXI.Text class](https://pixijs.com/8.x/examples/text/pixi-text), it has the same properties and methods,\n * but it has the ability to be saved and loaded by the Pixi'VN library.\n * @example\n * ```typescript\n * const text = new CanvasText();\n * text.text = \"Hello World\"\n * GameWindowManager.addCanvasElement(\"text\", text);\n * ```\n */\nexport default class CanvasText extends Text implements CanvasBase<ICanvasTextMemory> {\n get memory(): ICanvasTextMemory {\n return getMemoryText(this)\n }\n set memory(value: ICanvasTextMemory) {\n setMemoryText(this, value)\n }\n private _onEvents: { [name: CanvasEventNamesType]: EventIdType } = {}\n get onEvents() {\n return this._onEvents\n }\n /**\n * is same function as on(), but it keeps in memory the children.\n * @param event The event type, e.g., 'click', 'mousedown', 'mouseup', 'pointerdown', etc.\n * @param eventClass The class that extends CanvasEvent.\n * @returns \n * @example\n * ```typescript\n * \\@eventDecorator()\n * export class EventTest extends CanvasEvent<CanvasText> {\n * override fn(event: CanvasEventNamesType, text: CanvasText): void {\n * if (event === 'pointerdown') {\n * text.scale.x *= 1.25;\n * text.scale.y *= 1.25;\n * }\n * }\n * }\n * ```\n * \n * ```typescript\n * const text = new CanvasText();\n * text.text = \"Hello World\"\n *\n * text.eventMode = 'static';\n * text.cursor = 'pointer';\n * text.onEvent('pointerdown', EventTest);\n *\n * GameWindowManager.addCanvasElement(\"text\", text);\n * ```\n */\n onEvent<T extends CanvasEventNamesType, T2 extends typeof CanvasEvent<typeof this>>(event: T, eventClass: T2) {\n let className = eventClass.name\n let instance = getEventInstanceByClassName(className)\n this._onEvents[event] = className\n if (instance) {\n super.on(event, () => {\n (instance as CanvasEvent<CanvasBase<any>>).fn(event, this)\n })\n }\n return this\n }\n /**\n * on() does not keep in memory the event class, use onEvent() instead\n * @deprecated\n * @private\n * @param event \n * @param fn \n * @param context \n */\n override on<T extends keyof ContainerEvents<ContainerChild> | keyof { [K: symbol]: any;[K: {} & string]: any; }>(event: T, fn: (...args: EventEmitter.ArgumentMap<ContainerEvents<ContainerChild> & { [K: symbol]: any;[K: {} & string]: any; }>[Extract<T, keyof ContainerEvents<ContainerChild> | keyof { [K: symbol]: any;[K: {} & string]: any; }>]) => void, context?: any): this {\n return super.on(event, fn, context)\n }\n}\n\nexport function getMemoryText<T extends CanvasText>(element: T | CanvasText): ICanvasTextMemory {\n let temp = getMemoryContainer(element)\n return {\n ...temp,\n className: \"CanvasText\",\n anchor: { x: element.anchor.x, y: element.anchor.y },\n text: element.text,\n resolution: element.resolution,\n style: getTextStyle(element.style),\n roundPixels: element.roundPixels,\n onEvents: element.onEvents,\n }\n}\n\nexport function setMemoryText(element: CanvasText, memory: ICanvasTextMemory) {\n setMemoryContainer(element, memory)\n if (memory.anchor) {\n if (typeof memory.anchor === \"number\") {\n element.anchor.set(memory.anchor, memory.anchor)\n }\n else {\n element.anchor.set(memory.anchor.x, memory.anchor.y)\n }\n }\n memory.text && (element.text = memory.text)\n memory.resolution && (element.resolution = memory.resolution)\n memory.style && (element.style = memory.style)\n memory.roundPixels && (element.roundPixels = memory.roundPixels)\n for (let event in memory.onEvents) {\n let className = memory.onEvents[event]\n let instance = getEventTypeByClassName(className)\n if (instance) {\n element.onEvent(event as CanvasEventNamesType, instance)\n }\n }\n}\n","import { CanvasContainer, CanvasImage, CanvasSprite, CanvasText } from \"../classes/canvas\"\nimport CanvasBase from \"../classes/canvas/CanvasBase\"\nimport { CanvasElementTagType } from \"../types/CanvasElementTagType\"\n\nexport const registeredCanvasElement: { [name: CanvasElementTagType]: typeof CanvasBase<any> } = {}\n/**\n * Is a decorator that register a canvas element in the game.\n * @param name Name of the canvas element, by default it will use the class name. If the name is already registered, it will show a warning\n * @returns \n */\nexport default function canvasElementDecorator(name?: CanvasElementTagType) {\n return function (target: typeof CanvasBase<any>) {\n if (!name) {\n name = target.name\n }\n if (registeredCanvasElement[name]) {\n console.warn(`[Pixi'VN] CanvasElement ${name} already registered`)\n }\n registeredCanvasElement[name] = target\n }\n}\n\nexport function getCanvasElementTypeByClassName<T extends typeof CanvasBase<any>>(canvasName: CanvasElementTagType): T | undefined {\n try {\n let eventType = registeredCanvasElement[canvasName]\n if (!eventType) {\n console.error(`[Pixi'VN] CanvasElement ${canvasName} not found`)\n return\n }\n new eventType()\n return eventType as T\n }\n catch (e) {\n console.error(`[Pixi'VN] Error while getting CanvasElement ${canvasName}`, e)\n return\n }\n}\n\nexport function getCanvasElementInstanceByClassName<T extends CanvasBase<any>>(canvasName: CanvasElementTagType): T | undefined {\n try {\n let eventType = registeredCanvasElement[canvasName]\n if (!eventType) {\n if (canvasName === \"CanvasContainer\") {\n eventType = CanvasContainer\n }\n else if (canvasName === \"CanvasImage\") {\n eventType = CanvasImage\n }\n else if (canvasName === \"CanvasSprite\") {\n eventType = CanvasSprite\n }\n else if (canvasName === \"CanvasText\") {\n eventType = CanvasText\n }\n }\n\n if (!eventType) {\n console.error(`[Pixi'VN] CanvasElement ${canvasName} not found`)\n return\n }\n let canvasElement = new eventType()\n return canvasElement as T\n }\n catch (e) {\n console.error(`[Pixi'VN] Error while getting CanvasElement ${canvasName}`, e)\n return\n }\n}\n","import { CharacterBaseModel } from \"../classes\"\n\nexport const registeredCharacters: { [id: string]: CharacterBaseModel } = {}\n/**\n * Is a function that saves the character. If the character already exists, it will be overwritten.\n * @param character is the character to save\n * @returns \n * @example\n * ```typescript\n * export const liam = new CharacterBaseModel('liam', { name: 'Liam'});\n * export const alice = new CharacterBaseModel('alice', { name: 'Alice'});\n * saveCharacter([liam, alice]);\n * ```\n */\nexport function saveCharacter<T extends CharacterBaseModel = CharacterBaseModel>(character: T | T[]) {\n if (Array.isArray(character)) {\n character.forEach(c => saveCharacter(c))\n return\n }\n if (registeredCharacters[character.id]) {\n console.warn(`[Pixi'VN] Character id ${character.id} already exists, it will be overwritten`)\n }\n registeredCharacters[character.id] = character\n}\n\n/**\n * is a function that returns the character by the id\n * @param id is the id of the character\n * @returns the character\n * @example\n * ```typescript\n * const liam = getCharacterById('liam');\n * ```\n */\nexport function getCharacterById<T extends CharacterBaseModel>(id: string): T | undefined {\n try {\n let character = registeredCharacters[id]\n if (!character) {\n console.error(`[Pixi'VN] Character ${id} not found`)\n return\n }\n return character as T\n }\n catch (e) {\n console.error(`[Pixi'VN] Error while getting Character ${id}`, e)\n return\n }\n}\n\n/**\n * is a function that returns all characters\n * @returns all characters\n * @example\n * ```typescript\n * const allCharacters = getAllCharacters();\n * ```\n */\nexport function getAllCharacters<T extends CharacterBaseModel>(): T[] {\n return Object.values(registeredCharacters) as T[]\n}\n","import { Label } from \"../classes\"\nimport { LabelIdType } from \"../types/LabelIdType\"\n\nexport const registeredLabels: { [key: LabelIdType]: typeof Label } = {}\n/**\n * Is a decorator that register a label in the game.\n * Is a required decorator for use the label in the game.\n * Thanks to this decoration the game has the possibility of updating the labels to the latest modification and saving the game.\n * @param name is th identifier of the label, by default is the name of the class\n * @returns \n */\nexport default function labelDecorator(name?: LabelIdType) {\n return function (target: typeof Label) {\n if (!name) {\n name = target.name\n }\n if (registeredLabels[name]) {\n console.warn(`[Pixi'VN] Label ${name} already exists, it will be overwritten`)\n }\n registeredLabels[name] = target\n }\n}\n\n/**\n * is a function that returns the type of the label\n * @param labelName is the name of the label\n * @returns the label type\n */\nexport function getLabelTypeByClassName<T extends typeof Label>(labelName: LabelIdType): T | undefined {\n try {\n let labelType = registeredLabels[labelName]\n if (!labelType) {\n console.error(`[Pixi'VN] Label ${labelName} not found`)\n return\n }\n new labelType()\n return labelType as T\n }\n catch (e) {\n console.error(`[Pixi'VN] Error while getting Label ${labelName}`, e)\n return\n }\n}\n\n/**\n * is a function that returns the instance of the label\n * @param labelName is the name of the label\n * @returns the label\n */\nexport function getLabelInstanceByClassName<T extends Label>(labelName: LabelIdType): T | undefined {\n try {\n let labelType = registeredLabels[labelName]\n if (!labelType) {\n console.error(`[Pixi'VN] Label ${labelName} not found`)\n return\n }\n let label = new labelType()\n let step = label.steps\n if (step.length = 0) {\n console.warn(`[Pixi'VN] Label ${labelName} has no steps`)\n }\n return label as T\n }\n catch (e) {\n console.error(`[Pixi'VN] Error while getting Label ${labelName}`, e)\n return\n }\n}\n","import { UPDATE_PRIORITY } from \"pixi.js\"\nimport TickerBase, { TickerArgsType } from \"../classes/ticker/TickerBase\"\nimport { TickerIdType } from \"../types/TickerIdType\"\n\n/**\n * A dictionary that contains all tickers registered and avvailable to be used.\n */\nexport const registeredTickers: { [name: TickerIdType]: typeof TickerBase } = {}\n/**\n * Is a decorator that register a ticker in the game.\n * Is a required decorator for use the ticker in the game.\n * Thanks to this decoration the game has the possibility of updating the tickers to the latest modification and saving the game.\n * @param name is th identifier of the label, by default is the name of the class\n * @returns \n */\nexport default function tickerDecorator(name?: TickerIdType) {\n return function (target: typeof TickerBase<any>) {\n if (!name) {\n name = target.name\n }\n if (registeredTickers[name]) {\n console.warn(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`)\n }\n registeredTickers[name] = target\n }\n}\n\n/**\n * Get a ticker instance by the class name.\n * @param tickerName The name of the class.\n * @returns The ticker instance.\n */\nexport function geTickerInstanceByClassName<TArgs extends TickerArgsType>(tickerName: TickerIdType, args: TArgs, duration?: number, priority?: UPDATE_PRIORITY): TickerBase<TArgs> | undefined {\n try {\n let ticker = registeredTickers[tickerName]\n if (!ticker) {\n console.error(`[Pixi'VN] Ticker ${tickerName} not found`)\n return\n }\n return new ticker(args, duration, priority)\n }\n catch (e) {\n console.error(`[Pixi'VN] Error while getting Ticker ${tickerName}`, e)\n return\n }\n}\n"]}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Enumeration of label modes that occurred during the progression of the steps.
3
+ */
4
+ declare enum LabelRunModeEnum {
5
+ OpenByCall = "openbycall",
6
+ OpenByJump = "openbyjump"
7
+ }
8
+
9
+ export { LabelRunModeEnum };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Enumeration of label modes that occurred during the progression of the steps.
3
+ */
4
+ declare enum LabelRunModeEnum {
5
+ OpenByCall = "openbycall",
6
+ OpenByJump = "openbyjump"
7
+ }
8
+
9
+ export { LabelRunModeEnum };
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ // src/enums/LabelRunModeEnum.ts
4
+ var LabelRunModeEnum = /* @__PURE__ */ ((LabelRunModeEnum2) => {
5
+ LabelRunModeEnum2["OpenByCall"] = "openbycall";
6
+ LabelRunModeEnum2["OpenByJump"] = "openbyjump";
7
+ return LabelRunModeEnum2;
8
+ })(LabelRunModeEnum || {});
9
+
10
+ exports.LabelRunModeEnum = LabelRunModeEnum;
11
+ //# sourceMappingURL=out.js.map
12
+ //# sourceMappingURL=LabelRunModeEnum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/enums/LabelRunModeEnum.ts"],"names":["LabelRunModeEnum"],"mappings":";AAGO,IAAK,mBAAL,kBAAKA,sBAAL;AACH,EAAAA,kBAAA,gBAAa;AACb,EAAAA,kBAAA,gBAAa;AAFL,SAAAA;AAAA,GAAA","sourcesContent":["/**\n * Enumeration of label modes that occurred during the progression of the steps.\n */\nexport enum LabelRunModeEnum {\n OpenByCall = \"openbycall\",\n OpenByJump = \"openbyjump\",\n}\n"]}
@@ -0,0 +1,10 @@
1
+ // src/enums/LabelRunModeEnum.ts
2
+ var LabelRunModeEnum = /* @__PURE__ */ ((LabelRunModeEnum2) => {
3
+ LabelRunModeEnum2["OpenByCall"] = "openbycall";
4
+ LabelRunModeEnum2["OpenByJump"] = "openbyjump";
5
+ return LabelRunModeEnum2;
6
+ })(LabelRunModeEnum || {});
7
+
8
+ export { LabelRunModeEnum };
9
+ //# sourceMappingURL=out.js.map
10
+ //# sourceMappingURL=LabelRunModeEnum.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/enums/LabelRunModeEnum.ts"],"names":["LabelRunModeEnum"],"mappings":";AAGO,IAAK,mBAAL,kBAAKA,sBAAL;AACH,EAAAA,kBAAA,gBAAa;AACb,EAAAA,kBAAA,gBAAa;AAFL,SAAAA;AAAA,GAAA","sourcesContent":["/**\n * Enumeration of label modes that occurred during the progression of the steps.\n */\nexport enum LabelRunModeEnum {\n OpenByCall = \"openbycall\",\n OpenByJump = \"openbyjump\",\n}\n"]}
@@ -0,0 +1 @@
1
+ export { LabelRunModeEnum } from './LabelRunModeEnum.mjs';
@@ -0,0 +1 @@
1
+ export { LabelRunModeEnum } from './LabelRunModeEnum.js';
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ // src/enums/LabelRunModeEnum.ts
4
+ var LabelRunModeEnum = /* @__PURE__ */ ((LabelRunModeEnum2) => {
5
+ LabelRunModeEnum2["OpenByCall"] = "openbycall";
6
+ LabelRunModeEnum2["OpenByJump"] = "openbyjump";
7
+ return LabelRunModeEnum2;
8
+ })(LabelRunModeEnum || {});
9
+
10
+ exports.LabelRunModeEnum = LabelRunModeEnum;
11
+ //# sourceMappingURL=out.js.map
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/enums/LabelRunModeEnum.ts"],"names":["LabelRunModeEnum"],"mappings":";AAGO,IAAK,mBAAL,kBAAKA,sBAAL;AACH,EAAAA,kBAAA,gBAAa;AACb,EAAAA,kBAAA,gBAAa;AAFL,SAAAA;AAAA,GAAA","sourcesContent":["/**\n * Enumeration of label modes that occurred during the progression of the steps.\n */\nexport enum LabelRunModeEnum {\n OpenByCall = \"openbycall\",\n OpenByJump = \"openbyjump\",\n}\n"]}
@@ -0,0 +1,10 @@
1
+ // src/enums/LabelRunModeEnum.ts
2
+ var LabelRunModeEnum = /* @__PURE__ */ ((LabelRunModeEnum2) => {
3
+ LabelRunModeEnum2["OpenByCall"] = "openbycall";
4
+ LabelRunModeEnum2["OpenByJump"] = "openbyjump";
5
+ return LabelRunModeEnum2;
6
+ })(LabelRunModeEnum || {});
7
+
8
+ export { LabelRunModeEnum };
9
+ //# sourceMappingURL=out.js.map
10
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/enums/LabelRunModeEnum.ts"],"names":["LabelRunModeEnum"],"mappings":";AAGO,IAAK,mBAAL,kBAAKA,sBAAL;AACH,EAAAA,kBAAA,gBAAa;AACb,EAAAA,kBAAA,gBAAa;AAFL,SAAAA;AAAA,GAAA","sourcesContent":["/**\n * Enumeration of label modes that occurred during the progression of the steps.\n */\nexport enum LabelRunModeEnum {\n OpenByCall = \"openbycall\",\n OpenByJump = \"openbyjump\",\n}\n"]}
@@ -0,0 +1,25 @@
1
+ import { Texture } from 'pixi.js';
2
+ import CanvasBase from '../classes/canvas/CanvasBase.mjs';
3
+ import ICanvasBaseMemory from '../interface/canvas/ICanvasBaseMemory.mjs';
4
+ import ITextureMemory from '../interface/canvas/ITextureMemory.mjs';
5
+
6
+ /**
7
+ * Get the memory object of the PixiJS texture
8
+ * @param texture PixiJS Texture object
9
+ * @returns Memory object of the texture
10
+ */
11
+ declare function getTextureMemory(texture: Texture): ITextureMemory;
12
+ /**
13
+ * Export a Canvas element to a memory object
14
+ * @param element Canvas element
15
+ * @returns Memory object of the canvas
16
+ */
17
+ declare function exportCanvasElement<T extends CanvasBase<any>>(element: T): ICanvasBaseMemory;
18
+ /**
19
+ * Import a Canvas element from a memory object
20
+ * @param memory Memory object of the canvas
21
+ * @returns Canvas element
22
+ */
23
+ declare function importCanvasElement<T extends CanvasBase<any>>(memory: ICanvasBaseMemory): T;
24
+
25
+ export { exportCanvasElement, getTextureMemory, importCanvasElement };
@@ -0,0 +1,25 @@
1
+ import { Texture } from 'pixi.js';
2
+ import CanvasBase from '../classes/canvas/CanvasBase.js';
3
+ import ICanvasBaseMemory from '../interface/canvas/ICanvasBaseMemory.js';
4
+ import ITextureMemory from '../interface/canvas/ITextureMemory.js';
5
+
6
+ /**
7
+ * Get the memory object of the PixiJS texture
8
+ * @param texture PixiJS Texture object
9
+ * @returns Memory object of the texture
10
+ */
11
+ declare function getTextureMemory(texture: Texture): ITextureMemory;
12
+ /**
13
+ * Export a Canvas element to a memory object
14
+ * @param element Canvas element
15
+ * @returns Memory object of the canvas
16
+ */
17
+ declare function exportCanvasElement<T extends CanvasBase<any>>(element: T): ICanvasBaseMemory;
18
+ /**
19
+ * Import a Canvas element from a memory object
20
+ * @param memory Memory object of the canvas
21
+ * @returns Canvas element
22
+ */
23
+ declare function importCanvasElement<T extends CanvasBase<any>>(memory: ICanvasBaseMemory): T;
24
+
25
+ export { exportCanvasElement, getTextureMemory, importCanvasElement };