@drincs/pixi-vn 0.6.1 → 0.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (289) hide show
  1. package/dist/{TickerBase-BAUiHet_.d.ts → TickerBase-3rLpDpmb.d.ts} +9 -0
  2. package/dist/{TickerBase-BctFf13y.d.mts → TickerBase-DKYzbzro.d.mts} +9 -0
  3. package/dist/classes/CanvasEvent.d.mts +6 -0
  4. package/dist/classes/CanvasEvent.d.ts +6 -0
  5. package/dist/classes/CanvasEvent.js +7 -0
  6. package/dist/classes/CanvasEvent.js.map +1 -1
  7. package/dist/classes/CanvasEvent.mjs +7 -0
  8. package/dist/classes/CanvasEvent.mjs.map +1 -1
  9. package/dist/classes/CharacterBaseModel.js +93 -65
  10. package/dist/classes/CharacterBaseModel.js.map +1 -1
  11. package/dist/classes/CharacterBaseModel.mjs +93 -65
  12. package/dist/classes/CharacterBaseModel.mjs.map +1 -1
  13. package/dist/classes/ChoiceMenuOption.js +94 -66
  14. package/dist/classes/ChoiceMenuOption.js.map +1 -1
  15. package/dist/classes/ChoiceMenuOption.mjs +94 -66
  16. package/dist/classes/ChoiceMenuOption.mjs.map +1 -1
  17. package/dist/classes/CloseLabel.js +1 -1
  18. package/dist/classes/CloseLabel.js.map +1 -1
  19. package/dist/classes/CloseLabel.mjs +1 -1
  20. package/dist/classes/CloseLabel.mjs.map +1 -1
  21. package/dist/classes/DialogueBaseModel.d.mts +2 -2
  22. package/dist/classes/DialogueBaseModel.d.ts +2 -2
  23. package/dist/classes/DialogueBaseModel.js +5 -5
  24. package/dist/classes/DialogueBaseModel.js.map +1 -1
  25. package/dist/classes/DialogueBaseModel.mjs +5 -5
  26. package/dist/classes/DialogueBaseModel.mjs.map +1 -1
  27. package/dist/classes/Label.d.mts +1 -1
  28. package/dist/classes/Label.d.ts +1 -1
  29. package/dist/classes/Label.js +1 -1
  30. package/dist/classes/Label.js.map +1 -1
  31. package/dist/classes/Label.mjs +1 -1
  32. package/dist/classes/Label.mjs.map +1 -1
  33. package/dist/classes/StoredClassModel.js +93 -65
  34. package/dist/classes/StoredClassModel.js.map +1 -1
  35. package/dist/classes/StoredClassModel.mjs +93 -65
  36. package/dist/classes/StoredClassModel.mjs.map +1 -1
  37. package/dist/classes/canvas/CanvasBase.d.mts +5 -1
  38. package/dist/classes/canvas/CanvasBase.d.ts +5 -1
  39. package/dist/classes/canvas/CanvasBase.js +7 -0
  40. package/dist/classes/canvas/CanvasBase.js.map +1 -1
  41. package/dist/classes/canvas/CanvasBase.mjs +7 -0
  42. package/dist/classes/canvas/CanvasBase.mjs.map +1 -1
  43. package/dist/classes/canvas/CanvasContainer.d.mts +4 -1
  44. package/dist/classes/canvas/CanvasContainer.d.ts +4 -1
  45. package/dist/classes/canvas/CanvasContainer.js +57 -37
  46. package/dist/classes/canvas/CanvasContainer.js.map +1 -1
  47. package/dist/classes/canvas/CanvasContainer.mjs +57 -38
  48. package/dist/classes/canvas/CanvasContainer.mjs.map +1 -1
  49. package/dist/classes/canvas/CanvasImage.d.mts +4 -2
  50. package/dist/classes/canvas/CanvasImage.d.ts +4 -2
  51. package/dist/classes/canvas/CanvasImage.js +33 -20
  52. package/dist/classes/canvas/CanvasImage.js.map +1 -1
  53. package/dist/classes/canvas/CanvasImage.mjs +30 -20
  54. package/dist/classes/canvas/CanvasImage.mjs.map +1 -1
  55. package/dist/classes/canvas/CanvasSprite.d.mts +5 -2
  56. package/dist/classes/canvas/CanvasSprite.d.ts +5 -2
  57. package/dist/classes/canvas/CanvasSprite.js +25 -17
  58. package/dist/classes/canvas/CanvasSprite.js.map +1 -1
  59. package/dist/classes/canvas/CanvasSprite.mjs +25 -18
  60. package/dist/classes/canvas/CanvasSprite.mjs.map +1 -1
  61. package/dist/classes/canvas/CanvasText.d.mts +6 -3
  62. package/dist/classes/canvas/CanvasText.d.ts +6 -3
  63. package/dist/classes/canvas/CanvasText.js +25 -17
  64. package/dist/classes/canvas/CanvasText.js.map +1 -1
  65. package/dist/classes/canvas/CanvasText.mjs +25 -18
  66. package/dist/classes/canvas/CanvasText.mjs.map +1 -1
  67. package/dist/classes/canvas/index.js +184 -158
  68. package/dist/classes/canvas/index.js.map +1 -1
  69. package/dist/classes/canvas/index.mjs +184 -158
  70. package/dist/classes/canvas/index.mjs.map +1 -1
  71. package/dist/classes/index.d.mts +1 -0
  72. package/dist/classes/index.d.ts +1 -0
  73. package/dist/classes/index.js +106 -71
  74. package/dist/classes/index.js.map +1 -1
  75. package/dist/classes/index.mjs +106 -71
  76. package/dist/classes/index.mjs.map +1 -1
  77. package/dist/classes/ticker/FadeAlphaTicker.d.mts +2 -1
  78. package/dist/classes/ticker/FadeAlphaTicker.d.ts +2 -1
  79. package/dist/classes/ticker/FadeAlphaTicker.js +93 -65
  80. package/dist/classes/ticker/FadeAlphaTicker.js.map +1 -1
  81. package/dist/classes/ticker/FadeAlphaTicker.mjs +93 -65
  82. package/dist/classes/ticker/FadeAlphaTicker.mjs.map +1 -1
  83. package/dist/classes/ticker/MoveTicker.d.mts +2 -1
  84. package/dist/classes/ticker/MoveTicker.d.ts +2 -1
  85. package/dist/classes/ticker/MoveTicker.js +93 -65
  86. package/dist/classes/ticker/MoveTicker.js.map +1 -1
  87. package/dist/classes/ticker/MoveTicker.mjs +93 -65
  88. package/dist/classes/ticker/MoveTicker.mjs.map +1 -1
  89. package/dist/classes/ticker/RotateTicker.d.mts +2 -1
  90. package/dist/classes/ticker/RotateTicker.d.ts +2 -1
  91. package/dist/classes/ticker/RotateTicker.js +93 -65
  92. package/dist/classes/ticker/RotateTicker.js.map +1 -1
  93. package/dist/classes/ticker/RotateTicker.mjs +93 -65
  94. package/dist/classes/ticker/RotateTicker.mjs.map +1 -1
  95. package/dist/classes/ticker/TickerBase.d.mts +2 -1
  96. package/dist/classes/ticker/TickerBase.d.ts +2 -1
  97. package/dist/classes/ticker/TickerBase.js +5 -0
  98. package/dist/classes/ticker/TickerBase.js.map +1 -1
  99. package/dist/classes/ticker/TickerBase.mjs +5 -0
  100. package/dist/classes/ticker/TickerBase.mjs.map +1 -1
  101. package/dist/classes/ticker/ZoomTicker.d.mts +9 -3
  102. package/dist/classes/ticker/ZoomTicker.d.ts +9 -3
  103. package/dist/classes/ticker/ZoomTicker.js +108 -66
  104. package/dist/classes/ticker/ZoomTicker.js.map +1 -1
  105. package/dist/classes/ticker/ZoomTicker.mjs +106 -66
  106. package/dist/classes/ticker/ZoomTicker.mjs.map +1 -1
  107. package/dist/classes/ticker/index.d.mts +2 -1
  108. package/dist/classes/ticker/index.d.ts +2 -1
  109. package/dist/classes/ticker/index.js +230 -202
  110. package/dist/classes/ticker/index.js.map +1 -1
  111. package/dist/classes/ticker/index.mjs +230 -202
  112. package/dist/classes/ticker/index.mjs.map +1 -1
  113. package/dist/constants.d.mts +1 -1
  114. package/dist/constants.d.ts +1 -1
  115. package/dist/constants.js +1 -1
  116. package/dist/constants.js.map +1 -1
  117. package/dist/constants.mjs +1 -1
  118. package/dist/constants.mjs.map +1 -1
  119. package/dist/decorators/CanvasElementDecorator.d.mts +3 -3
  120. package/dist/decorators/CanvasElementDecorator.d.ts +3 -3
  121. package/dist/decorators/CanvasElementDecorator.js +63 -43
  122. package/dist/decorators/CanvasElementDecorator.js.map +1 -1
  123. package/dist/decorators/CanvasElementDecorator.mjs +62 -42
  124. package/dist/decorators/CanvasElementDecorator.mjs.map +1 -1
  125. package/dist/decorators/EventDecorator.d.mts +7 -7
  126. package/dist/decorators/EventDecorator.d.ts +7 -7
  127. package/dist/decorators/EventDecorator.js +11 -10
  128. package/dist/decorators/EventDecorator.js.map +1 -1
  129. package/dist/decorators/EventDecorator.mjs +10 -9
  130. package/dist/decorators/EventDecorator.mjs.map +1 -1
  131. package/dist/decorators/LabelDecorator.js +94 -66
  132. package/dist/decorators/LabelDecorator.js.map +1 -1
  133. package/dist/decorators/LabelDecorator.mjs +94 -66
  134. package/dist/decorators/LabelDecorator.mjs.map +1 -1
  135. package/dist/decorators/TickerDecorator.d.mts +5 -5
  136. package/dist/decorators/TickerDecorator.d.ts +5 -5
  137. package/dist/decorators/TickerDecorator.js +6 -5
  138. package/dist/decorators/TickerDecorator.js.map +1 -1
  139. package/dist/decorators/TickerDecorator.mjs +6 -5
  140. package/dist/decorators/TickerDecorator.mjs.map +1 -1
  141. package/dist/decorators/index.d.mts +1 -1
  142. package/dist/decorators/index.d.ts +1 -1
  143. package/dist/decorators/index.js +96 -66
  144. package/dist/decorators/index.js.map +1 -1
  145. package/dist/decorators/index.mjs +96 -66
  146. package/dist/decorators/index.mjs.map +1 -1
  147. package/dist/functions/CanvasUtility.js +56 -37
  148. package/dist/functions/CanvasUtility.js.map +1 -1
  149. package/dist/functions/CanvasUtility.mjs +56 -37
  150. package/dist/functions/CanvasUtility.mjs.map +1 -1
  151. package/dist/functions/DialogueUtility.d.mts +1 -1
  152. package/dist/functions/DialogueUtility.d.ts +1 -1
  153. package/dist/functions/DialogueUtility.js +240 -201
  154. package/dist/functions/DialogueUtility.js.map +1 -1
  155. package/dist/functions/DialogueUtility.mjs +240 -201
  156. package/dist/functions/DialogueUtility.mjs.map +1 -1
  157. package/dist/functions/FlagsUtility.js +93 -65
  158. package/dist/functions/FlagsUtility.js.map +1 -1
  159. package/dist/functions/FlagsUtility.mjs +93 -65
  160. package/dist/functions/FlagsUtility.mjs.map +1 -1
  161. package/dist/functions/GameUtility.js +93 -65
  162. package/dist/functions/GameUtility.js.map +1 -1
  163. package/dist/functions/GameUtility.mjs +93 -65
  164. package/dist/functions/GameUtility.mjs.map +1 -1
  165. package/dist/functions/ImageUtility.d.mts +35 -2
  166. package/dist/functions/ImageUtility.d.ts +35 -2
  167. package/dist/functions/ImageUtility.js +371 -186
  168. package/dist/functions/ImageUtility.js.map +1 -1
  169. package/dist/functions/ImageUtility.mjs +368 -187
  170. package/dist/functions/ImageUtility.mjs.map +1 -1
  171. package/dist/functions/SavesUtility.d.mts +2 -2
  172. package/dist/functions/SavesUtility.d.ts +2 -2
  173. package/dist/functions/SavesUtility.js +141 -71
  174. package/dist/functions/SavesUtility.js.map +1 -1
  175. package/dist/functions/SavesUtility.mjs +141 -71
  176. package/dist/functions/SavesUtility.mjs.map +1 -1
  177. package/dist/functions/index.d.mts +6 -3
  178. package/dist/functions/index.d.ts +6 -3
  179. package/dist/functions/index.js +277 -81
  180. package/dist/functions/index.js.map +1 -1
  181. package/dist/functions/index.mjs +275 -83
  182. package/dist/functions/index.mjs.map +1 -1
  183. package/dist/index.d.mts +4 -4
  184. package/dist/index.d.ts +4 -4
  185. package/dist/index.js +644 -153
  186. package/dist/index.js.map +1 -1
  187. package/dist/index.mjs +642 -155
  188. package/dist/index.mjs.map +1 -1
  189. package/dist/interface/IHistoryStep.d.mts +2 -2
  190. package/dist/interface/IHistoryStep.d.ts +2 -2
  191. package/dist/interface/ISaveData.d.mts +2 -2
  192. package/dist/interface/ISaveData.d.ts +2 -2
  193. package/dist/interface/ITicker.d.mts +2 -1
  194. package/dist/interface/ITicker.d.ts +2 -1
  195. package/dist/interface/ITickersSteps.d.mts +12 -3
  196. package/dist/interface/ITickersSteps.d.ts +12 -3
  197. package/dist/interface/TickerHistory.d.mts +3 -3
  198. package/dist/interface/TickerHistory.d.ts +3 -3
  199. package/dist/interface/canvas/ICanvasBaseMemory.d.mts +1 -1
  200. package/dist/interface/canvas/ICanvasBaseMemory.d.ts +1 -1
  201. package/dist/interface/canvas/ICanvasImageMemory.d.mts +2 -2
  202. package/dist/interface/canvas/ICanvasImageMemory.d.ts +2 -2
  203. package/dist/interface/canvas/ICanvasSpriteMemory.d.mts +1 -2
  204. package/dist/interface/canvas/ICanvasSpriteMemory.d.ts +1 -2
  205. package/dist/interface/canvas/ICanvasTextTextMemory.d.mts +1 -2
  206. package/dist/interface/canvas/ICanvasTextTextMemory.d.ts +1 -2
  207. package/dist/interface/export/ExportedCanvas.d.mts +2 -2
  208. package/dist/interface/export/ExportedCanvas.d.ts +2 -2
  209. package/dist/interface/export/ExportedStep.d.mts +2 -2
  210. package/dist/interface/export/ExportedStep.d.ts +2 -2
  211. package/dist/interface/export/index.d.mts +2 -2
  212. package/dist/interface/export/index.d.ts +2 -2
  213. package/dist/interface/index.d.mts +2 -2
  214. package/dist/interface/index.d.ts +2 -2
  215. package/dist/labels/BaseCanvasElementTestLabel.js +400 -372
  216. package/dist/labels/BaseCanvasElementTestLabel.js.map +1 -1
  217. package/dist/labels/BaseCanvasElementTestLabel.mjs +401 -373
  218. package/dist/labels/BaseCanvasElementTestLabel.mjs.map +1 -1
  219. package/dist/labels/{EventsTestLabel.d.mts → CanvasEventsTestLabel.d.mts} +4 -7
  220. package/dist/labels/{EventsTestLabel.d.ts → CanvasEventsTestLabel.d.ts} +4 -7
  221. package/dist/labels/{EventsTestLabel.js → CanvasEventsTestLabel.js} +320 -98
  222. package/dist/labels/CanvasEventsTestLabel.js.map +1 -0
  223. package/dist/labels/{EventsTestLabel.mjs → CanvasEventsTestLabel.mjs} +320 -98
  224. package/dist/labels/CanvasEventsTestLabel.mjs.map +1 -0
  225. package/dist/labels/{TintingTestLabel.d.mts → CustomTickerCanvasElementTestLabel.d.mts} +5 -4
  226. package/dist/labels/{TintingTestLabel.d.ts → CustomTickerCanvasElementTestLabel.d.ts} +5 -4
  227. package/dist/labels/CustomTickerCanvasElementTestLabel.js +2792 -0
  228. package/dist/labels/CustomTickerCanvasElementTestLabel.js.map +1 -0
  229. package/dist/labels/CustomTickerCanvasElementTestLabel.mjs +2786 -0
  230. package/dist/labels/CustomTickerCanvasElementTestLabel.mjs.map +1 -0
  231. package/dist/labels/{ShowImageTest.js → ImagesAnimationsTestLabel.js} +373 -82
  232. package/dist/labels/ImagesAnimationsTestLabel.js.map +1 -0
  233. package/dist/labels/{ShowImageTest.mjs → ImagesAnimationsTestLabel.mjs} +373 -82
  234. package/dist/labels/ImagesAnimationsTestLabel.mjs.map +1 -0
  235. package/dist/labels/MarkdownTest.js +150 -80
  236. package/dist/labels/MarkdownTest.js.map +1 -1
  237. package/dist/labels/MarkdownTest.mjs +150 -80
  238. package/dist/labels/MarkdownTest.mjs.map +1 -1
  239. package/dist/labels/StartLabel.js +689 -152
  240. package/dist/labels/StartLabel.js.map +1 -1
  241. package/dist/labels/StartLabel.mjs +690 -153
  242. package/dist/labels/StartLabel.mjs.map +1 -1
  243. package/dist/labels/TestConstant.d.mts +3 -1
  244. package/dist/labels/TestConstant.d.ts +3 -1
  245. package/dist/labels/TestConstant.js +97 -65
  246. package/dist/labels/TestConstant.js.map +1 -1
  247. package/dist/labels/TestConstant.mjs +96 -66
  248. package/dist/labels/TestConstant.mjs.map +1 -1
  249. package/dist/labels/TickerTestLabel.js +472 -402
  250. package/dist/labels/TickerTestLabel.js.map +1 -1
  251. package/dist/labels/TickerTestLabel.mjs +473 -403
  252. package/dist/labels/TickerTestLabel.mjs.map +1 -1
  253. package/dist/labels/index.js +689 -152
  254. package/dist/labels/index.js.map +1 -1
  255. package/dist/labels/index.mjs +690 -153
  256. package/dist/labels/index.mjs.map +1 -1
  257. package/dist/managers/StepManager.d.mts +5 -4
  258. package/dist/managers/StepManager.d.ts +5 -4
  259. package/dist/managers/StepManager.js +140 -70
  260. package/dist/managers/StepManager.js.map +1 -1
  261. package/dist/managers/StepManager.mjs +140 -70
  262. package/dist/managers/StepManager.mjs.map +1 -1
  263. package/dist/managers/WindowManager.d.mts +1 -1
  264. package/dist/managers/WindowManager.d.ts +1 -1
  265. package/dist/managers/WindowManager.js +84 -60
  266. package/dist/managers/WindowManager.js.map +1 -1
  267. package/dist/managers/WindowManager.mjs +84 -60
  268. package/dist/managers/WindowManager.mjs.map +1 -1
  269. package/dist/managers/index.d.mts +2 -2
  270. package/dist/managers/index.d.ts +2 -2
  271. package/dist/managers/index.js +140 -70
  272. package/dist/managers/index.js.map +1 -1
  273. package/dist/managers/index.mjs +140 -70
  274. package/dist/managers/index.mjs.map +1 -1
  275. package/dist/types/ticker/MoveTickerProps.d.mts +1 -1
  276. package/dist/types/ticker/MoveTickerProps.d.ts +1 -1
  277. package/dist/types/ticker/RotateTickerProps.d.mts +1 -1
  278. package/dist/types/ticker/RotateTickerProps.d.ts +1 -1
  279. package/package.json +1 -1
  280. package/dist/labels/EventsTestLabel.js.map +0 -1
  281. package/dist/labels/EventsTestLabel.mjs.map +0 -1
  282. package/dist/labels/ShowImageTest.js.map +0 -1
  283. package/dist/labels/ShowImageTest.mjs.map +0 -1
  284. package/dist/labels/TintingTestLabel.js +0 -1786
  285. package/dist/labels/TintingTestLabel.js.map +0 -1
  286. package/dist/labels/TintingTestLabel.mjs +0 -1780
  287. package/dist/labels/TintingTestLabel.mjs.map +0 -1
  288. /package/dist/labels/{ShowImageTest.d.mts → ImagesAnimationsTestLabel.d.mts} +0 -0
  289. /package/dist/labels/{ShowImageTest.d.ts → ImagesAnimationsTestLabel.d.ts} +0 -0
@@ -79,7 +79,7 @@ var Label = class {
79
79
  this._choiseIndex = choiseIndex;
80
80
  }
81
81
  /**
82
- * Get the id of the label
82
+ * Get the id of the label. This variable is used in the system to get the label by id, {@link getLabelById}
83
83
  */
84
84
  get id() {
85
85
  return this._id;
@@ -147,138 +147,6 @@ function getLabelById(id) {
147
147
  }
148
148
  return label;
149
149
  }
150
-
151
- // src/decorators/CanvasElementDecorator.ts
152
- var registeredCanvasElement = {};
153
- function getCanvasElementInstanceByClassName(canvasName) {
154
- try {
155
- let eventType = registeredCanvasElement[canvasName];
156
- if (!eventType) {
157
- if (canvasName === "CanvasContainer") {
158
- eventType = CanvasContainer;
159
- } else if (canvasName === "CanvasImage") {
160
- eventType = CanvasImage;
161
- } else if (canvasName === "CanvasSprite") {
162
- eventType = CanvasSprite;
163
- } else if (canvasName === "CanvasText") {
164
- eventType = CanvasText;
165
- }
166
- }
167
- if (!eventType) {
168
- console.error(`[Pixi'VN] CanvasElement ${canvasName} not found`);
169
- return;
170
- }
171
- let canvasElement = new eventType();
172
- return canvasElement;
173
- } catch (e) {
174
- console.error(`[Pixi'VN] Error while getting CanvasElement ${canvasName}`, e);
175
- return;
176
- }
177
- }
178
-
179
- // src/functions/CanvasUtility.ts
180
- function getTextureMemory(texture) {
181
- let sourceTexture = texture.source;
182
- let textureMemory = {
183
- image: sourceTexture.label
184
- };
185
- return textureMemory;
186
- }
187
- function exportCanvasElement(element) {
188
- return element.memory;
189
- }
190
- function importCanvasElement(memory) {
191
- let element = getCanvasElementInstanceByClassName(memory.className);
192
- if (element) {
193
- element.memory = memory;
194
- } else {
195
- throw new Error("[Pixi'VN] The element " + memory.className + " could not be created");
196
- }
197
- return element;
198
- }
199
-
200
- // src/classes/canvas/CanvasContainer.ts
201
- var CanvasContainer = class extends pixi_js.Container {
202
- get memory() {
203
- let memory = getMemoryContainer(this);
204
- this.children.forEach((child) => {
205
- memory.elements.push(exportCanvasElement(child));
206
- });
207
- return memory;
208
- }
209
- set memory(value) {
210
- setMemoryContainer(this, value);
211
- value.elements.forEach((child) => {
212
- this.addChild(importCanvasElement(child));
213
- });
214
- }
215
- };
216
- function getMemoryContainer(element) {
217
- return {
218
- className: "CanvasContainer",
219
- elements: [],
220
- width: element.width,
221
- height: element.height,
222
- isRenderGroup: element.isRenderGroup,
223
- blendMode: element.blendMode,
224
- tint: element.tint,
225
- alpha: element.alpha,
226
- angle: element.angle,
227
- renderable: element.renderable,
228
- rotation: element.rotation,
229
- scale: { x: element.scale.x, y: element.scale.y },
230
- pivot: { x: element.pivot.x, y: element.pivot.y },
231
- position: { x: element.position.x, y: element.position.y },
232
- skew: { x: element.skew.x, y: element.skew.y },
233
- visible: element.visible,
234
- culled: element.culled,
235
- x: element.x,
236
- y: element.y,
237
- boundsArea: element.boundsArea,
238
- cursor: element.cursor,
239
- eventMode: element.eventMode,
240
- interactive: element.interactive,
241
- interactiveChildren: element.interactiveChildren,
242
- hitArea: element.hitArea
243
- };
244
- }
245
- function setMemoryContainer(element, memory) {
246
- memory.width && (element.width = memory.width);
247
- memory.height && (element.height = memory.height);
248
- memory.isRenderGroup && (element.isRenderGroup = memory.isRenderGroup);
249
- memory.blendMode && (element.blendMode = memory.blendMode);
250
- memory.tint && (element.tint = memory.tint);
251
- memory.alpha && (element.alpha = memory.alpha);
252
- memory.angle && (element.angle = memory.angle);
253
- memory.renderable && (element.renderable = memory.renderable);
254
- memory.rotation && (element.rotation = memory.rotation);
255
- if (memory.scale) {
256
- if (typeof memory.scale === "number") {
257
- element.scale.set(memory.scale, memory.scale);
258
- } else {
259
- element.scale.set(memory.scale.x, memory.scale.y);
260
- }
261
- }
262
- if (memory.pivot) {
263
- if (typeof memory.pivot === "number") {
264
- element.pivot.set(memory.pivot, memory.pivot);
265
- } else {
266
- element.pivot.set(memory.pivot.x, memory.pivot.y);
267
- }
268
- }
269
- memory.position && element.position.set(memory.position.x, memory.position.y);
270
- memory.skew && element.skew.set(memory.skew.x, memory.skew.y);
271
- memory.visible && (element.visible = memory.visible);
272
- memory.culled && (element.culled = memory.culled);
273
- memory.x && (element.x = memory.x);
274
- memory.y && (element.y = memory.y);
275
- memory.boundsArea && (element.boundsArea = memory.boundsArea);
276
- memory.cursor && (element.cursor = memory.cursor);
277
- memory.eventMode && (element.eventMode = memory.eventMode);
278
- memory.interactive && (element.interactive = memory.interactive);
279
- memory.interactiveChildren && (element.interactiveChildren = memory.interactiveChildren);
280
- memory.hitArea && (element.hitArea = memory.hitArea);
281
- }
282
150
  function getTexture(imageUrl) {
283
151
  return __async(this, null, function* () {
284
152
  if (pixi_js.Assets.cache.has(imageUrl)) {
@@ -331,40 +199,43 @@ function getTextStyle(style) {
331
199
 
332
200
  // src/decorators/EventDecorator.ts
333
201
  var registeredEvents = {};
334
- function getEventTypeByClassName(eventName) {
202
+ function getEventTypeById(eventId) {
335
203
  try {
336
- let eventType = registeredEvents[eventName];
204
+ let eventType = registeredEvents[eventId];
337
205
  if (!eventType) {
338
- console.error(`[Pixi'VN] Event ${eventName} not found`);
206
+ console.error(`[Pixi'VN] Event ${eventId} not found`);
339
207
  return;
340
208
  }
341
209
  new eventType();
342
210
  return eventType;
343
211
  } catch (e) {
344
- console.error(`[Pixi'VN] Error while getting Event ${eventName}`, e);
212
+ console.error(`[Pixi'VN] Error while getting Event ${eventId}`, e);
345
213
  return;
346
214
  }
347
215
  }
348
- function getEventInstanceByClassName(eventName) {
216
+ function getEventInstanceById(eventId) {
349
217
  try {
350
- let eventType = registeredEvents[eventName];
218
+ let eventType = registeredEvents[eventId];
351
219
  if (!eventType) {
352
- console.error(`[Pixi'VN] Event ${eventName} not found`);
220
+ console.error(`[Pixi'VN] Event ${eventId} not found`);
353
221
  return;
354
222
  }
355
223
  let event = new eventType();
356
224
  return event;
357
225
  } catch (e) {
358
- console.error(`[Pixi'VN] Error while getting Event ${eventName}`, e);
226
+ console.error(`[Pixi'VN] Error while getting Event ${eventId}`, e);
359
227
  return;
360
228
  }
361
229
  }
362
230
 
363
231
  // src/classes/canvas/CanvasSprite.ts
232
+ var CANVAS_SPRITE_ID = "CanvasSprite";
364
233
  var CanvasSprite = class _CanvasSprite extends pixi_js.Sprite {
365
- constructor() {
366
- super(...arguments);
234
+ constructor(options) {
235
+ super(options);
236
+ this.pixivnId = CANVAS_SPRITE_ID;
367
237
  this._onEvents = {};
238
+ this.pixivnId = this.constructor.prototype.pixivnId;
368
239
  }
369
240
  get memory() {
370
241
  return getMemorySprite(this);
@@ -405,9 +276,9 @@ var CanvasSprite = class _CanvasSprite extends pixi_js.Sprite {
405
276
  * ```
406
277
  */
407
278
  onEvent(event, eventClass) {
408
- let className = eventClass.name;
409
- let instance = getEventInstanceByClassName(className);
410
- this._onEvents[event] = className;
279
+ let id = eventClass.prototype.id;
280
+ let instance = getEventInstanceById(id);
281
+ this._onEvents[event] = id;
411
282
  if (instance) {
412
283
  super.on(event, () => {
413
284
  instance.fn(event, this);
@@ -436,7 +307,7 @@ var CanvasSprite = class _CanvasSprite extends pixi_js.Sprite {
436
307
  function getMemorySprite(element) {
437
308
  let temp = getMemoryContainer(element);
438
309
  return __spreadProps(__spreadValues({}, temp), {
439
- className: "CanvasSprite",
310
+ pixivnId: element.pixivnId,
440
311
  textureImage: getTextureMemory(element.texture),
441
312
  anchor: { x: element.anchor.x, y: element.anchor.y },
442
313
  roundPixels: element.roundPixels,
@@ -459,8 +330,8 @@ function setMemorySprite(element, memory) {
459
330
  }
460
331
  memory.roundPixels && (element.roundPixels = memory.roundPixels);
461
332
  for (let event in memory.onEvents) {
462
- let className = memory.onEvents[event];
463
- let instance = getEventTypeByClassName(className);
333
+ let id = memory.onEvents[event];
334
+ let instance = getEventTypeById(id);
464
335
  if (instance) {
465
336
  element.onEvent(event, instance);
466
337
  }
@@ -468,9 +339,11 @@ function setMemorySprite(element, memory) {
468
339
  }
469
340
 
470
341
  // src/classes/canvas/CanvasImage.ts
342
+ var CANVAS_IMAGE_ID = "CanvasImage";
471
343
  var CanvasImage = class _CanvasImage extends CanvasSprite {
472
344
  constructor(options, imageLink) {
473
345
  super(options);
346
+ this.pixivnId = CANVAS_IMAGE_ID;
474
347
  this.imageLink = "";
475
348
  if (imageLink) {
476
349
  this.imageLink = imageLink;
@@ -478,12 +351,13 @@ var CanvasImage = class _CanvasImage extends CanvasSprite {
478
351
  }
479
352
  get memory() {
480
353
  return __spreadProps(__spreadValues({}, getMemorySprite(this)), {
481
- className: "CanvasImage",
482
- textureImage: { image: this.imageLink }
354
+ pixivnId: this.pixivnId,
355
+ imageLink: this.imageLink
483
356
  });
484
357
  }
485
358
  set memory(memory) {
486
359
  setMemorySprite(this, memory);
360
+ this.imageLink = memory.imageLink;
487
361
  }
488
362
  static from(source, skipCache) {
489
363
  let sprite = pixi_js.Sprite.from(source, skipCache);
@@ -511,10 +385,13 @@ var CanvasImage = class _CanvasImage extends CanvasSprite {
511
385
  });
512
386
  }
513
387
  };
388
+ var CANVAS_TEXT_ID = "CanvasText";
514
389
  var CanvasText = class extends pixi_js.Text {
515
- constructor() {
516
- super(...arguments);
390
+ constructor(options) {
391
+ super(options);
392
+ this.pixivnId = CANVAS_TEXT_ID;
517
393
  this._onEvents = {};
394
+ this.pixivnId = this.constructor.prototype.pixivnId;
518
395
  }
519
396
  get memory() {
520
397
  return getMemoryText(this);
@@ -555,9 +432,9 @@ var CanvasText = class extends pixi_js.Text {
555
432
  * ```
556
433
  */
557
434
  onEvent(event, eventClass) {
558
- let className = eventClass.name;
559
- let instance = getEventInstanceByClassName(className);
560
- this._onEvents[event] = className;
435
+ let id = eventClass.prototype.id;
436
+ let instance = getEventInstanceById(id);
437
+ this._onEvents[event] = id;
561
438
  if (instance) {
562
439
  super.on(event, () => {
563
440
  instance.fn(event, this);
@@ -580,7 +457,7 @@ var CanvasText = class extends pixi_js.Text {
580
457
  function getMemoryText(element) {
581
458
  let temp = getMemoryContainer(element);
582
459
  return __spreadProps(__spreadValues({}, temp), {
583
- className: "CanvasText",
460
+ pixivnId: element.pixivnId,
584
461
  anchor: { x: element.anchor.x, y: element.anchor.y },
585
462
  text: element.text,
586
463
  resolution: element.resolution,
@@ -603,14 +480,156 @@ function setMemoryText(element, memory) {
603
480
  memory.style && (element.style = memory.style);
604
481
  memory.roundPixels && (element.roundPixels = memory.roundPixels);
605
482
  for (let event in memory.onEvents) {
606
- let className = memory.onEvents[event];
607
- let instance = getEventTypeByClassName(className);
483
+ let id = memory.onEvents[event];
484
+ let instance = getEventTypeById(id);
608
485
  if (instance) {
609
486
  element.onEvent(event, instance);
610
487
  }
611
488
  }
612
489
  }
613
490
 
491
+ // src/decorators/CanvasElementDecorator.ts
492
+ var registeredCanvasElement = {};
493
+ function getCanvasElementInstanceById(canvasId) {
494
+ try {
495
+ let eventType = registeredCanvasElement[canvasId];
496
+ if (!eventType) {
497
+ if (canvasId === CANVAS_CONTAINER_ID) {
498
+ eventType = CanvasContainer;
499
+ } else if (canvasId === CANVAS_IMAGE_ID) {
500
+ eventType = CanvasImage;
501
+ } else if (canvasId === CANVAS_SPRITE_ID) {
502
+ eventType = CanvasSprite;
503
+ } else if (canvasId === CANVAS_TEXT_ID) {
504
+ eventType = CanvasText;
505
+ }
506
+ }
507
+ if (!eventType) {
508
+ console.error(`[Pixi'VN] CanvasElement ${canvasId} not found`);
509
+ return;
510
+ }
511
+ let canvasElement = new eventType();
512
+ return canvasElement;
513
+ } catch (e) {
514
+ console.error(`[Pixi'VN] Error while getting CanvasElement ${canvasId}`, e);
515
+ return;
516
+ }
517
+ }
518
+
519
+ // src/functions/CanvasUtility.ts
520
+ function getTextureMemory(texture) {
521
+ let sourceTexture = texture.source;
522
+ let textureMemory = {
523
+ image: sourceTexture.label
524
+ };
525
+ return textureMemory;
526
+ }
527
+ function exportCanvasElement(element) {
528
+ return element.memory;
529
+ }
530
+ function importCanvasElement(memory) {
531
+ let element = getCanvasElementInstanceById(memory.pixivnId);
532
+ if (element) {
533
+ element.memory = memory;
534
+ } else {
535
+ throw new Error("[Pixi'VN] The element " + memory.pixivnId + " could not be created");
536
+ }
537
+ return element;
538
+ }
539
+
540
+ // src/classes/canvas/CanvasContainer.ts
541
+ var CANVAS_CONTAINER_ID = "CanvasContainer";
542
+ var CanvasContainer = class extends pixi_js.Container {
543
+ constructor(options) {
544
+ super(options);
545
+ this.pixivnId = CANVAS_CONTAINER_ID;
546
+ this.pixivnId = this.constructor.prototype.pixivnId;
547
+ }
548
+ get memory() {
549
+ let memory = getMemoryContainer(this);
550
+ this.children.forEach((child) => {
551
+ memory.elements.push(exportCanvasElement(child));
552
+ });
553
+ return memory;
554
+ }
555
+ set memory(value) {
556
+ setMemoryContainer(this, value);
557
+ value.elements.forEach((child) => {
558
+ this.addChild(importCanvasElement(child));
559
+ });
560
+ }
561
+ };
562
+ function getMemoryContainer(element) {
563
+ let className = "CanvasContainer";
564
+ if (element.hasOwnProperty("pixivnId")) {
565
+ className = element.pixivnId;
566
+ }
567
+ return {
568
+ pixivnId: className,
569
+ elements: [],
570
+ width: element.width,
571
+ height: element.height,
572
+ isRenderGroup: element.isRenderGroup,
573
+ blendMode: element.blendMode,
574
+ tint: element.tint,
575
+ alpha: element.alpha,
576
+ angle: element.angle,
577
+ renderable: element.renderable,
578
+ rotation: element.rotation,
579
+ scale: { x: element.scale.x, y: element.scale.y },
580
+ pivot: { x: element.pivot.x, y: element.pivot.y },
581
+ position: { x: element.position.x, y: element.position.y },
582
+ skew: { x: element.skew.x, y: element.skew.y },
583
+ visible: element.visible,
584
+ culled: element.culled,
585
+ x: element.x,
586
+ y: element.y,
587
+ boundsArea: element.boundsArea,
588
+ cursor: element.cursor,
589
+ eventMode: element.eventMode,
590
+ interactive: element.interactive,
591
+ interactiveChildren: element.interactiveChildren,
592
+ hitArea: element.hitArea
593
+ };
594
+ }
595
+ function setMemoryContainer(element, memory) {
596
+ memory.width && (element.width = memory.width);
597
+ memory.height && (element.height = memory.height);
598
+ memory.isRenderGroup && (element.isRenderGroup = memory.isRenderGroup);
599
+ memory.blendMode && (element.blendMode = memory.blendMode);
600
+ memory.tint && (element.tint = memory.tint);
601
+ memory.alpha && (element.alpha = memory.alpha);
602
+ memory.angle && (element.angle = memory.angle);
603
+ memory.renderable && (element.renderable = memory.renderable);
604
+ memory.rotation && (element.rotation = memory.rotation);
605
+ if (memory.scale) {
606
+ if (typeof memory.scale === "number") {
607
+ element.scale.set(memory.scale, memory.scale);
608
+ } else {
609
+ element.scale.set(memory.scale.x, memory.scale.y);
610
+ }
611
+ }
612
+ if (memory.pivot) {
613
+ if (typeof memory.pivot === "number") {
614
+ element.pivot.set(memory.pivot, memory.pivot);
615
+ } else {
616
+ element.pivot.set(memory.pivot.x, memory.pivot.y);
617
+ }
618
+ }
619
+ memory.position && element.position.set(memory.position.x, memory.position.y);
620
+ memory.skew && element.skew.set(memory.skew.x, memory.skew.y);
621
+ memory.visible && (element.visible = memory.visible);
622
+ memory.culled && (element.culled = memory.culled);
623
+ memory.x && (element.x = memory.x);
624
+ memory.y && (element.y = memory.y);
625
+ memory.boundsArea && (element.boundsArea = memory.boundsArea);
626
+ memory.cursor && (element.cursor = memory.cursor);
627
+ memory.eventMode && (element.eventMode = memory.eventMode);
628
+ memory.interactive && (element.interactive = memory.interactive);
629
+ memory.interactiveChildren && (element.interactiveChildren = memory.interactiveChildren);
630
+ memory.hitArea && (element.hitArea = memory.hitArea);
631
+ }
632
+
614
633
  // src/decorators/TickerDecorator.ts
615
634
  var registeredTickers = {};
616
635
  function tickerDecorator(name) {
@@ -621,19 +640,20 @@ function tickerDecorator(name) {
621
640
  if (registeredTickers[name]) {
622
641
  console.info(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`);
623
642
  }
643
+ target.prototype.id = name;
624
644
  registeredTickers[name] = target;
625
645
  };
626
646
  }
627
- function geTickerInstanceByClassName(tickerName, args, duration, priority) {
647
+ function geTickerInstanceById(tickerId, args, duration, priority) {
628
648
  try {
629
- let ticker = registeredTickers[tickerName];
649
+ let ticker = registeredTickers[tickerId];
630
650
  if (!ticker) {
631
- console.error(`[Pixi'VN] Ticker ${tickerName} not found`);
651
+ console.error(`[Pixi'VN] Ticker ${tickerId} not found`);
632
652
  return;
633
653
  }
634
654
  return new ticker(args, duration, priority);
635
655
  } catch (e) {
636
- console.error(`[Pixi'VN] Error while getting Ticker ${tickerName}`, e);
656
+ console.error(`[Pixi'VN] Error while getting Ticker ${tickerId}`, e);
637
657
  return;
638
658
  }
639
659
  }
@@ -646,9 +666,14 @@ var TickerBase = class {
646
666
  * @param priority The priority of the ticker. @default UPDATE_PRIORITY.NORMAL
647
667
  */
648
668
  constructor(args, duration, priority) {
669
+ /**
670
+ * Get the id of the ticker. This variable is used in the system to get the ticker by id, {@link geTickerInstanceById}
671
+ */
672
+ this.id = "ticker_id_not_set";
649
673
  this.args = args;
650
674
  this.duration = duration;
651
675
  this.priority = priority;
676
+ this.id = this.constructor.prototype.id;
652
677
  }
653
678
  /**
654
679
  * The method that will be called every frame.
@@ -871,8 +896,8 @@ var ZoomTicker = class extends TickerBase {
871
896
  tagToRemoveAfter2 = [tagToRemoveAfter2];
872
897
  }
873
898
  let type = args.type || "zoom";
874
- let xLimit = Infinity;
875
- let yLimit = Infinity;
899
+ let xLimit = type === "zoom" ? Infinity : 0;
900
+ let yLimit = type === "zoom" ? Infinity : 0;
876
901
  if (args.limit) {
877
902
  if (typeof args.limit === "number") {
878
903
  xLimit = args.limit;
@@ -911,7 +936,7 @@ var ZoomTicker = class extends TickerBase {
911
936
  if (element.scale.x >= xLimit && element.scale.y >= yLimit) {
912
937
  element.scale.x = xLimit;
913
938
  element.scale.y = yLimit;
914
- GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
939
+ this.onEndOfTicker(tag, tickerId, element, tagToRemoveAfter2);
915
940
  }
916
941
  } else if (type === "unzoom") {
917
942
  if (element.scale.x < xLimit) {
@@ -923,17 +948,20 @@ var ZoomTicker = class extends TickerBase {
923
948
  if (element.scale.x <= xLimit && element.scale.y <= yLimit) {
924
949
  element.scale.x = xLimit;
925
950
  element.scale.y = yLimit;
926
- GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
951
+ this.onEndOfTicker(tag, tickerId, element, tagToRemoveAfter2);
927
952
  }
928
953
  }
929
954
  if (xSpeed < 1e-5 && ySpeed < 1e-5 && !(args.speedProgression && args.speedProgression.type == "linear" && args.speedProgression.amt != 0)) {
930
- GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
955
+ this.onEndOfTicker(tag, tickerId, element, tagToRemoveAfter2);
931
956
  }
932
957
  }
933
958
  });
934
959
  if (args.speedProgression)
935
960
  updateTickerProgression(args, "speed", args.speedProgression);
936
961
  }
962
+ onEndOfTicker(tag, tickerId, _element, tagToRemoveAfter2) {
963
+ GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
964
+ }
937
965
  };
938
966
  ZoomTicker = __decorateClass([
939
967
  tickerDecorator()
@@ -1403,18 +1431,18 @@ var _GameWindowManager = class _GameWindowManager {
1403
1431
  * ```
1404
1432
  */
1405
1433
  static addTicker(canvasElementTag, ticker) {
1406
- let tickerName = ticker.constructor.name;
1434
+ let tickerId = ticker.id;
1407
1435
  if (typeof canvasElementTag === "string") {
1408
1436
  canvasElementTag = [canvasElementTag];
1409
1437
  }
1410
- if (!geTickerInstanceByClassName(tickerName, ticker.args, ticker.duration, ticker.priority)) {
1411
- console.error(`[Pixi'VN] Ticker ${tickerName} not found`);
1438
+ if (!geTickerInstanceById(tickerId, ticker.args, ticker.duration, ticker.priority)) {
1439
+ console.error(`[Pixi'VN] Ticker ${tickerId} not found`);
1412
1440
  return;
1413
1441
  }
1414
1442
  let tickerHistory = {
1415
1443
  fn: () => {
1416
1444
  },
1417
- className: tickerName,
1445
+ id: tickerId,
1418
1446
  args: createExportableElement(ticker.args),
1419
1447
  canvasElementTags: canvasElementTag,
1420
1448
  priority: ticker.priority,
@@ -1430,11 +1458,11 @@ var _GameWindowManager = class _GameWindowManager {
1430
1458
  _GameWindowManager.removeTicker(id);
1431
1459
  }
1432
1460
  }, ticker.duration * 1e3);
1433
- _GameWindowManager.addTickerTimeoutInfo(canvasElementTag, tickerName, timeout.toString(), true);
1461
+ _GameWindowManager.addTickerTimeoutInfo(canvasElementTag, tickerId, timeout.toString(), true);
1434
1462
  }
1435
1463
  }
1436
1464
  static pushTicker(id, tickerData, ticker) {
1437
- _GameWindowManager.removeAssociationBetweenTickerCanvasElement(tickerData.canvasElementTags, tickerData);
1465
+ _GameWindowManager.removeAssociationBetweenTickerCanvasElement(tickerData.canvasElementTags, ticker);
1438
1466
  _GameWindowManager._currentTickers[id] = tickerData;
1439
1467
  tickerData.fn = (t) => {
1440
1468
  let data = _GameWindowManager._currentTickers[id];
@@ -1475,9 +1503,9 @@ var _GameWindowManager = class _GameWindowManager {
1475
1503
  if (step.hasOwnProperty("type") && step.type === "pause") {
1476
1504
  return step;
1477
1505
  }
1478
- let tickerName = step.constructor.name;
1506
+ let tickerId = step.id;
1479
1507
  return {
1480
- ticker: tickerName,
1508
+ ticker: tickerId,
1481
1509
  args: createExportableElement(step.args),
1482
1510
  duration: step.duration
1483
1511
  };
@@ -1515,16 +1543,16 @@ var _GameWindowManager = class _GameWindowManager {
1515
1543
  _GameWindowManager.addTickerTimeoutInfo(tag, "steps", timeout.toString(), false);
1516
1544
  return;
1517
1545
  }
1518
- let ticker = geTickerInstanceByClassName(step.ticker, step.args, step.duration, step.priority);
1546
+ let ticker = geTickerInstanceById(step.ticker, step.args, step.duration, step.priority);
1519
1547
  if (!ticker) {
1520
1548
  console.error(`[Pixi'VN] Ticker ${step.ticker} not found`);
1521
1549
  return;
1522
1550
  }
1523
- let tickerName = ticker.constructor.name;
1551
+ let tickerName = ticker.id;
1524
1552
  let tickerHistory = {
1525
1553
  fn: () => {
1526
1554
  },
1527
- className: tickerName,
1555
+ id: tickerName,
1528
1556
  args: createExportableElement(ticker.args),
1529
1557
  canvasElementTags: [tag],
1530
1558
  priority: ticker.priority,
@@ -1581,26 +1609,26 @@ var _GameWindowManager = class _GameWindowManager {
1581
1609
  * ```
1582
1610
  */
1583
1611
  static removeAssociationBetweenTickerCanvasElement(tags, ticker) {
1584
- let tickerName;
1612
+ let tickerId;
1585
1613
  if (typeof ticker === "string") {
1586
- tickerName = ticker;
1614
+ tickerId = ticker;
1587
1615
  } else if (ticker instanceof TickerBase) {
1588
- tickerName = ticker.constructor.name;
1616
+ tickerId = ticker.id;
1589
1617
  } else {
1590
- tickerName = ticker.name;
1618
+ tickerId = ticker.prototype.id;
1591
1619
  }
1592
1620
  if (typeof tags === "string") {
1593
1621
  tags = [tags];
1594
1622
  }
1595
1623
  for (let id in _GameWindowManager._currentTickers) {
1596
1624
  let ticker2 = _GameWindowManager._currentTickers[id];
1597
- if (ticker2.className === tickerName) {
1625
+ if (ticker2.id === tickerId) {
1598
1626
  _GameWindowManager._currentTickers[id].canvasElementTags = ticker2.canvasElementTags.filter((e) => !tags.includes(e));
1599
1627
  }
1600
1628
  }
1601
1629
  for (let timeout in _GameWindowManager._currentTickersTimeouts) {
1602
1630
  let TickerTimeout = _GameWindowManager._currentTickersTimeouts[timeout];
1603
- if (TickerTimeout.ticker === tickerName && TickerTimeout.canBeDeletedBeforeEnd) {
1631
+ if (TickerTimeout.ticker === tickerId && TickerTimeout.canBeDeletedBeforeEnd) {
1604
1632
  _GameWindowManager._currentTickersTimeouts[timeout].tags = TickerTimeout.tags.filter((t) => !tags.includes(t));
1605
1633
  }
1606
1634
  }
@@ -1786,11 +1814,11 @@ var _GameWindowManager = class _GameWindowManager {
1786
1814
  for (let id in currentTickers) {
1787
1815
  let t = currentTickers[id];
1788
1816
  let tags = t.canvasElementTags;
1789
- let ticker = geTickerInstanceByClassName(t.className, t.args, t.duration, t.priority);
1817
+ let ticker = geTickerInstanceById(t.id, t.args, t.duration, t.priority);
1790
1818
  if (ticker) {
1791
1819
  _GameWindowManager.addTicker(tags, ticker);
1792
1820
  } else {
1793
- console.error(`[Pixi'VN] Ticker ${t.className} not found`);
1821
+ console.error(`[Pixi'VN] Ticker ${t.id} not found`);
1794
1822
  }
1795
1823
  }
1796
1824
  }
@@ -1991,6 +2019,13 @@ var _GameStepManager = class _GameStepManager {
1991
2019
  _GameStepManager._openedLabels = _GameStepManager.originalStepData.openedLabels;
1992
2020
  }
1993
2021
  /* Run Methods */
2022
+ static get canGoNext() {
2023
+ let options = getChoiceMenuOptions();
2024
+ if (options && options.length > 0) {
2025
+ return false;
2026
+ }
2027
+ return true;
2028
+ }
1994
2029
  /**
1995
2030
  * Execute the next step and add it to the history.
1996
2031
  * @param props The props to pass to the step.
@@ -2000,7 +2035,7 @@ var _GameStepManager = class _GameStepManager {
2000
2035
  * ```typescript
2001
2036
  * function nextOnClick() {
2002
2037
  * setLoading(true)
2003
- * GameStepManager.runNextStep(yourParams)
2038
+ * GameStepManager.goNext(yourParams)
2004
2039
  * .then((result) => {
2005
2040
  * setUpdate((p) => p + 1)
2006
2041
  * setLoading(false)
@@ -2015,8 +2050,12 @@ var _GameStepManager = class _GameStepManager {
2015
2050
  * }
2016
2051
  * ```
2017
2052
  */
2018
- static runNextStep(props, choiseMade) {
2053
+ static goNext(props, choiseMade) {
2019
2054
  return __async(this, null, function* () {
2055
+ if (!_GameStepManager.canGoNext) {
2056
+ console.warn("[Pixi'VN] The player must make a choice");
2057
+ return;
2058
+ }
2020
2059
  _GameStepManager.increaseCurrentStepIndex();
2021
2060
  return yield _GameStepManager.runCurrentStep(props, choiseMade);
2022
2061
  });
@@ -2047,7 +2086,7 @@ var _GameStepManager = class _GameStepManager {
2047
2086
  return result;
2048
2087
  } else if (_GameStepManager.openedLabels.length > 1) {
2049
2088
  _GameStepManager.closeCurrentLabel();
2050
- return yield _GameStepManager.runNextStep(props, choiseMade);
2089
+ return yield _GameStepManager.goNext(props, choiseMade);
2051
2090
  } else {
2052
2091
  _GameStepManager.restorLastLabelList();
2053
2092
  console.error("[Pixi'VN] The end of the game is not managed, so the game is blocked. Read this documentation to know how to manage the end of the game: https://pixi-vn.web.app/start/labels.html#how-manage-the-end-of-the-game");
@@ -2195,7 +2234,7 @@ var _GameStepManager = class _GameStepManager {
2195
2234
  if (choice.closeCurrentLabel) {
2196
2235
  _GameStepManager.closeCurrentLabel();
2197
2236
  }
2198
- return _GameStepManager.runNextStep(props, choiseMade);
2237
+ return _GameStepManager.goNext(props, choiseMade);
2199
2238
  });
2200
2239
  }
2201
2240
  /* After Update Methods */
@@ -2436,15 +2475,15 @@ var DialogueBaseModel = class {
2436
2475
  if (typeof text === "string") {
2437
2476
  this.text = text;
2438
2477
  if (typeof character === "string") {
2439
- this.characterId = character;
2478
+ this.character = character;
2440
2479
  } else {
2441
- this.characterId = character == null ? void 0 : character.id;
2480
+ this.character = character == null ? void 0 : character.id;
2442
2481
  }
2443
2482
  this.oltherParams = oltherParams;
2444
2483
  } else {
2445
2484
  this.text = text.text;
2446
- if (text.characterId) {
2447
- this.characterId = text.characterId;
2485
+ if (text.character) {
2486
+ this.character = text.character;
2448
2487
  }
2449
2488
  this.oltherParams = text.oltherParams || {};
2450
2489
  }
@@ -2457,7 +2496,7 @@ var DialogueBaseModel = class {
2457
2496
  export() {
2458
2497
  return {
2459
2498
  text: this.text,
2460
- characterId: this.characterId,
2499
+ character: this.character,
2461
2500
  oltherParams: this.oltherParams
2462
2501
  };
2463
2502
  }
@@ -2466,21 +2505,21 @@ var DialogueBaseModel = class {
2466
2505
  // src/functions/DialogueUtility.ts
2467
2506
  function setDialogue(props) {
2468
2507
  let text = "";
2469
- let characterId = void 0;
2508
+ let character = void 0;
2470
2509
  let dialogue;
2471
2510
  if (typeof props === "string") {
2472
2511
  text = props;
2473
- dialogue = new DialogueBaseModel(text, characterId);
2512
+ dialogue = new DialogueBaseModel(text, character);
2474
2513
  } else if (!(props instanceof DialogueBaseModel)) {
2475
2514
  text = props.text;
2476
2515
  if (props.character) {
2477
2516
  if (typeof props.character === "string") {
2478
- characterId = props.character;
2517
+ character = props.character;
2479
2518
  } else {
2480
- characterId = props.character.id;
2519
+ character = props.character.id;
2481
2520
  }
2482
2521
  }
2483
- dialogue = new DialogueBaseModel(text, characterId);
2522
+ dialogue = new DialogueBaseModel(text, character);
2484
2523
  } else {
2485
2524
  dialogue = props;
2486
2525
  }