@drincs/pixi-vn 0.6.3 → 0.6.5

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 (238) hide show
  1. package/README.md +8 -5
  2. package/dist/LabelProps-CFV-zRjG.d.ts +113 -0
  3. package/dist/LabelProps-CmRpvUJm.d.mts +113 -0
  4. package/dist/classes/CharacterBaseModel.js +42 -33
  5. package/dist/classes/CharacterBaseModel.js.map +1 -1
  6. package/dist/classes/CharacterBaseModel.mjs +42 -33
  7. package/dist/classes/CharacterBaseModel.mjs.map +1 -1
  8. package/dist/classes/ChoiceMenuOption.d.mts +68 -8
  9. package/dist/classes/ChoiceMenuOption.d.ts +68 -8
  10. package/dist/classes/ChoiceMenuOption.js +119 -53
  11. package/dist/classes/ChoiceMenuOption.js.map +1 -1
  12. package/dist/classes/ChoiceMenuOption.mjs +119 -53
  13. package/dist/classes/ChoiceMenuOption.mjs.map +1 -1
  14. package/dist/classes/CloseLabel.d.mts +2 -2
  15. package/dist/classes/CloseLabel.d.ts +2 -2
  16. package/dist/classes/CloseLabel.js +53 -17
  17. package/dist/classes/CloseLabel.js.map +1 -1
  18. package/dist/classes/CloseLabel.mjs +53 -17
  19. package/dist/classes/CloseLabel.mjs.map +1 -1
  20. package/dist/classes/Label.d.mts +4 -72
  21. package/dist/classes/Label.d.ts +4 -72
  22. package/dist/classes/Label.js +50 -16
  23. package/dist/classes/Label.js.map +1 -1
  24. package/dist/classes/Label.mjs +50 -16
  25. package/dist/classes/Label.mjs.map +1 -1
  26. package/dist/classes/StoredClassModel.js +42 -33
  27. package/dist/classes/StoredClassModel.js.map +1 -1
  28. package/dist/classes/StoredClassModel.mjs +42 -33
  29. package/dist/classes/StoredClassModel.mjs.map +1 -1
  30. package/dist/classes/canvas/CanvasContainer.js +2 -2
  31. package/dist/classes/canvas/CanvasContainer.js.map +1 -1
  32. package/dist/classes/canvas/CanvasContainer.mjs +2 -2
  33. package/dist/classes/canvas/CanvasContainer.mjs.map +1 -1
  34. package/dist/classes/canvas/CanvasImage.js +2 -2
  35. package/dist/classes/canvas/CanvasImage.js.map +1 -1
  36. package/dist/classes/canvas/CanvasImage.mjs +2 -2
  37. package/dist/classes/canvas/CanvasImage.mjs.map +1 -1
  38. package/dist/classes/canvas/CanvasSprite.js +2 -2
  39. package/dist/classes/canvas/CanvasSprite.js.map +1 -1
  40. package/dist/classes/canvas/CanvasSprite.mjs +2 -2
  41. package/dist/classes/canvas/CanvasSprite.mjs.map +1 -1
  42. package/dist/classes/canvas/CanvasText.js +2 -2
  43. package/dist/classes/canvas/CanvasText.js.map +1 -1
  44. package/dist/classes/canvas/CanvasText.mjs +2 -2
  45. package/dist/classes/canvas/CanvasText.mjs.map +1 -1
  46. package/dist/classes/canvas/index.js +2 -2
  47. package/dist/classes/canvas/index.js.map +1 -1
  48. package/dist/classes/canvas/index.mjs +2 -2
  49. package/dist/classes/canvas/index.mjs.map +1 -1
  50. package/dist/classes/index.d.mts +2 -2
  51. package/dist/classes/index.d.ts +2 -2
  52. package/dist/classes/index.js +119 -53
  53. package/dist/classes/index.js.map +1 -1
  54. package/dist/classes/index.mjs +119 -53
  55. package/dist/classes/index.mjs.map +1 -1
  56. package/dist/classes/ticker/FadeAlphaTicker.js +42 -33
  57. package/dist/classes/ticker/FadeAlphaTicker.js.map +1 -1
  58. package/dist/classes/ticker/FadeAlphaTicker.mjs +42 -33
  59. package/dist/classes/ticker/FadeAlphaTicker.mjs.map +1 -1
  60. package/dist/classes/ticker/MoveTicker.d.mts +1 -0
  61. package/dist/classes/ticker/MoveTicker.d.ts +1 -0
  62. package/dist/classes/ticker/MoveTicker.js +42 -33
  63. package/dist/classes/ticker/MoveTicker.js.map +1 -1
  64. package/dist/classes/ticker/MoveTicker.mjs +42 -33
  65. package/dist/classes/ticker/MoveTicker.mjs.map +1 -1
  66. package/dist/classes/ticker/RotateTicker.d.mts +1 -0
  67. package/dist/classes/ticker/RotateTicker.d.ts +1 -0
  68. package/dist/classes/ticker/RotateTicker.js +42 -33
  69. package/dist/classes/ticker/RotateTicker.js.map +1 -1
  70. package/dist/classes/ticker/RotateTicker.mjs +42 -33
  71. package/dist/classes/ticker/RotateTicker.mjs.map +1 -1
  72. package/dist/classes/ticker/ZoomTicker.d.mts +1 -0
  73. package/dist/classes/ticker/ZoomTicker.d.ts +1 -0
  74. package/dist/classes/ticker/ZoomTicker.js +42 -33
  75. package/dist/classes/ticker/ZoomTicker.js.map +1 -1
  76. package/dist/classes/ticker/ZoomTicker.mjs +42 -33
  77. package/dist/classes/ticker/ZoomTicker.mjs.map +1 -1
  78. package/dist/classes/ticker/index.js +42 -33
  79. package/dist/classes/ticker/index.js.map +1 -1
  80. package/dist/classes/ticker/index.mjs +42 -33
  81. package/dist/classes/ticker/index.mjs.map +1 -1
  82. package/dist/constants.d.mts +1 -1
  83. package/dist/constants.d.ts +1 -1
  84. package/dist/constants.js +1 -1
  85. package/dist/constants.js.map +1 -1
  86. package/dist/constants.mjs +1 -1
  87. package/dist/constants.mjs.map +1 -1
  88. package/dist/decorators/CanvasElementDecorator.js +2 -2
  89. package/dist/decorators/CanvasElementDecorator.js.map +1 -1
  90. package/dist/decorators/CanvasElementDecorator.mjs +2 -2
  91. package/dist/decorators/CanvasElementDecorator.mjs.map +1 -1
  92. package/dist/decorators/LabelDecorator.d.mts +3 -3
  93. package/dist/decorators/LabelDecorator.d.ts +3 -3
  94. package/dist/decorators/LabelDecorator.js +74 -50
  95. package/dist/decorators/LabelDecorator.js.map +1 -1
  96. package/dist/decorators/LabelDecorator.mjs +74 -50
  97. package/dist/decorators/LabelDecorator.mjs.map +1 -1
  98. package/dist/decorators/index.d.mts +2 -2
  99. package/dist/decorators/index.d.ts +2 -2
  100. package/dist/decorators/index.js +74 -50
  101. package/dist/decorators/index.js.map +1 -1
  102. package/dist/decorators/index.mjs +74 -50
  103. package/dist/decorators/index.mjs.map +1 -1
  104. package/dist/functions/CanvasUtility.js +2 -2
  105. package/dist/functions/CanvasUtility.js.map +1 -1
  106. package/dist/functions/CanvasUtility.mjs +2 -2
  107. package/dist/functions/CanvasUtility.mjs.map +1 -1
  108. package/dist/functions/DialogueUtility.d.mts +9 -9
  109. package/dist/functions/DialogueUtility.d.ts +9 -9
  110. package/dist/functions/DialogueUtility.js +184 -106
  111. package/dist/functions/DialogueUtility.js.map +1 -1
  112. package/dist/functions/DialogueUtility.mjs +184 -106
  113. package/dist/functions/DialogueUtility.mjs.map +1 -1
  114. package/dist/functions/FlagsUtility.js +42 -33
  115. package/dist/functions/FlagsUtility.js.map +1 -1
  116. package/dist/functions/FlagsUtility.mjs +42 -33
  117. package/dist/functions/FlagsUtility.mjs.map +1 -1
  118. package/dist/functions/GameUtility.js +42 -33
  119. package/dist/functions/GameUtility.js.map +1 -1
  120. package/dist/functions/GameUtility.mjs +42 -33
  121. package/dist/functions/GameUtility.mjs.map +1 -1
  122. package/dist/functions/ImageUtility.js +45 -36
  123. package/dist/functions/ImageUtility.js.map +1 -1
  124. package/dist/functions/ImageUtility.mjs +45 -36
  125. package/dist/functions/ImageUtility.mjs.map +1 -1
  126. package/dist/functions/SavesUtility.d.mts +4 -4
  127. package/dist/functions/SavesUtility.d.ts +4 -4
  128. package/dist/functions/SavesUtility.js +173 -111
  129. package/dist/functions/SavesUtility.js.map +1 -1
  130. package/dist/functions/SavesUtility.mjs +173 -111
  131. package/dist/functions/SavesUtility.mjs.map +1 -1
  132. package/dist/functions/TickerUtility.d.mts +2 -1
  133. package/dist/functions/TickerUtility.d.ts +2 -1
  134. package/dist/functions/TickerUtility.js +19 -15
  135. package/dist/functions/TickerUtility.js.map +1 -1
  136. package/dist/functions/TickerUtility.mjs +19 -15
  137. package/dist/functions/TickerUtility.mjs.map +1 -1
  138. package/dist/functions/index.d.mts +3 -3
  139. package/dist/functions/index.d.ts +3 -3
  140. package/dist/functions/index.js +197 -115
  141. package/dist/functions/index.js.map +1 -1
  142. package/dist/functions/index.mjs +197 -115
  143. package/dist/functions/index.mjs.map +1 -1
  144. package/dist/index.d.mts +1 -1
  145. package/dist/index.d.ts +1 -1
  146. package/dist/index.js +325 -190
  147. package/dist/index.js.map +1 -1
  148. package/dist/index.mjs +326 -191
  149. package/dist/index.mjs.map +1 -1
  150. package/dist/interface/IHistoryStep.d.mts +1 -1
  151. package/dist/interface/IHistoryStep.d.ts +1 -1
  152. package/dist/interface/ISaveData.d.mts +2 -2
  153. package/dist/interface/ISaveData.d.ts +2 -2
  154. package/dist/interface/LabelProps.d.mts +5 -0
  155. package/dist/interface/LabelProps.d.ts +5 -0
  156. package/dist/interface/LabelProps.js +4 -0
  157. package/dist/interface/LabelProps.js.map +1 -0
  158. package/dist/interface/LabelProps.mjs +3 -0
  159. package/dist/interface/LabelProps.mjs.map +1 -0
  160. package/dist/interface/export/ExportedStep.d.mts +2 -2
  161. package/dist/interface/export/ExportedStep.d.ts +2 -2
  162. package/dist/interface/export/index.d.mts +2 -2
  163. package/dist/interface/export/index.d.ts +2 -2
  164. package/dist/interface/index.d.mts +4 -4
  165. package/dist/interface/index.d.ts +4 -4
  166. package/dist/labels/BaseCanvasElementTestLabel.d.mts +2 -2
  167. package/dist/labels/BaseCanvasElementTestLabel.d.ts +2 -2
  168. package/dist/labels/BaseCanvasElementTestLabel.js +175 -111
  169. package/dist/labels/BaseCanvasElementTestLabel.js.map +1 -1
  170. package/dist/labels/BaseCanvasElementTestLabel.mjs +176 -112
  171. package/dist/labels/BaseCanvasElementTestLabel.mjs.map +1 -1
  172. package/dist/labels/CanvasEventsTestLabel.d.mts +3 -6
  173. package/dist/labels/CanvasEventsTestLabel.d.ts +3 -6
  174. package/dist/labels/CanvasEventsTestLabel.js +186 -128
  175. package/dist/labels/CanvasEventsTestLabel.js.map +1 -1
  176. package/dist/labels/CanvasEventsTestLabel.mjs +187 -129
  177. package/dist/labels/CanvasEventsTestLabel.mjs.map +1 -1
  178. package/dist/labels/CustomTickerCanvasElementTestLabel.d.mts +2 -2
  179. package/dist/labels/CustomTickerCanvasElementTestLabel.d.ts +2 -2
  180. package/dist/labels/CustomTickerCanvasElementTestLabel.js +166 -108
  181. package/dist/labels/CustomTickerCanvasElementTestLabel.js.map +1 -1
  182. package/dist/labels/CustomTickerCanvasElementTestLabel.mjs +166 -108
  183. package/dist/labels/CustomTickerCanvasElementTestLabel.mjs.map +1 -1
  184. package/dist/labels/ImagesAnimationsTestLabel.d.mts +2 -2
  185. package/dist/labels/ImagesAnimationsTestLabel.d.ts +2 -2
  186. package/dist/labels/ImagesAnimationsTestLabel.js +253 -147
  187. package/dist/labels/ImagesAnimationsTestLabel.js.map +1 -1
  188. package/dist/labels/ImagesAnimationsTestLabel.mjs +253 -147
  189. package/dist/labels/ImagesAnimationsTestLabel.mjs.map +1 -1
  190. package/dist/labels/MarkdownTest.d.mts +2 -2
  191. package/dist/labels/MarkdownTest.d.ts +2 -2
  192. package/dist/labels/MarkdownTest.js +166 -108
  193. package/dist/labels/MarkdownTest.js.map +1 -1
  194. package/dist/labels/MarkdownTest.mjs +166 -108
  195. package/dist/labels/MarkdownTest.mjs.map +1 -1
  196. package/dist/labels/StartLabel.d.mts +2 -2
  197. package/dist/labels/StartLabel.d.ts +2 -2
  198. package/dist/labels/StartLabel.js +316 -184
  199. package/dist/labels/StartLabel.js.map +1 -1
  200. package/dist/labels/StartLabel.mjs +317 -185
  201. package/dist/labels/StartLabel.mjs.map +1 -1
  202. package/dist/labels/StepLabelTest.d.mts +9 -0
  203. package/dist/labels/StepLabelTest.d.ts +9 -0
  204. package/dist/labels/StepLabelTest.js +2758 -0
  205. package/dist/labels/StepLabelTest.js.map +1 -0
  206. package/dist/labels/StepLabelTest.mjs +2752 -0
  207. package/dist/labels/StepLabelTest.mjs.map +1 -0
  208. package/dist/labels/TestConstant.js +43 -34
  209. package/dist/labels/TestConstant.js.map +1 -1
  210. package/dist/labels/TestConstant.mjs +43 -34
  211. package/dist/labels/TestConstant.mjs.map +1 -1
  212. package/dist/labels/index.d.mts +2 -2
  213. package/dist/labels/index.d.ts +2 -2
  214. package/dist/labels/index.js +316 -184
  215. package/dist/labels/index.js.map +1 -1
  216. package/dist/labels/index.mjs +317 -185
  217. package/dist/labels/index.mjs.map +1 -1
  218. package/dist/managers/StepManager.d.mts +6 -5
  219. package/dist/managers/StepManager.d.ts +6 -5
  220. package/dist/managers/StepManager.js +163 -105
  221. package/dist/managers/StepManager.js.map +1 -1
  222. package/dist/managers/StepManager.mjs +163 -105
  223. package/dist/managers/StepManager.mjs.map +1 -1
  224. package/dist/managers/WindowManager.js +2 -2
  225. package/dist/managers/WindowManager.js.map +1 -1
  226. package/dist/managers/WindowManager.mjs +2 -2
  227. package/dist/managers/WindowManager.mjs.map +1 -1
  228. package/dist/managers/index.d.mts +2 -2
  229. package/dist/managers/index.d.ts +2 -2
  230. package/dist/managers/index.js +163 -105
  231. package/dist/managers/index.js.map +1 -1
  232. package/dist/managers/index.mjs +163 -105
  233. package/dist/managers/index.mjs.map +1 -1
  234. package/dist/types/ChoiceMenuOptionsType.d.mts +2 -2
  235. package/dist/types/ChoiceMenuOptionsType.d.ts +2 -2
  236. package/dist/types/index.d.mts +1 -1
  237. package/dist/types/index.d.ts +1 -1
  238. package/package.json +6 -6
@@ -69,14 +69,15 @@ var Label = class {
69
69
  /**
70
70
  * @param id is the id of the label
71
71
  * @param steps is the list of steps that the label will perform
72
- * @param onStepRun is a function that will be executed before any step is executed, is useful for example to make sure all images used have been cached
73
- * @param choiseIndex is the index of the choice that the label will perform
72
+ * @param props is the properties of the label
74
73
  */
75
- constructor(id, steps, onStepRun, choiseIndex) {
74
+ constructor(id, steps, props) {
76
75
  this._id = id;
77
76
  this._steps = steps;
78
- this._onStepRun = onStepRun;
79
- this._choiseIndex = choiseIndex;
77
+ this._onStepStart = props == null ? void 0 : props.onStepStart;
78
+ this._onLoadStep = props == null ? void 0 : props.onLoadStep;
79
+ this._onStepEnd = props == null ? void 0 : props.onStepEnd;
80
+ this._choiseIndex = props == null ? void 0 : props.choiseIndex;
80
81
  }
81
82
  /**
82
83
  * Get the id of the label. This variable is used in the system to get the label by id, {@link getLabelById}
@@ -113,18 +114,32 @@ var Label = class {
113
114
  return res;
114
115
  }
115
116
  /**
116
- * Get the function that will be executed before any step is executed, is useful for example to make sure all images used have been cached
117
+ * Is a function that will be executed in {@link Label#onStepStart} and when the user goes back to it or when the user laods a save file.
118
+ * @returns Promise<void> or void
119
+ */
120
+ get onStepStart() {
121
+ return (stepIndex, label) => __async(this, null, function* () {
122
+ if (this._onLoadStep) {
123
+ yield this._onLoadStep(stepIndex, label);
124
+ }
125
+ if (this._onStepStart) {
126
+ return yield this._onStepStart(stepIndex, label);
127
+ }
128
+ });
129
+ }
130
+ /**
131
+ * Get the function that will be executed a old step is reloaded. A step is reloaded when the user goes back to it or when the user laods a save file.
117
132
  * @returns Promise<void> or void
118
- * @example
119
- * ```typescript
120
- * newLabel("id", [], () => {
121
- * Assets.load('path/to/image1.png')
122
- * Assets.load('path/to/image2.png')
123
- * })
124
- * ```
125
133
  */
126
- get onStepRun() {
127
- return this._onStepRun;
134
+ get onLoadStep() {
135
+ return this._onLoadStep;
136
+ }
137
+ /**
138
+ * Is a function that will be executed when the step ends.
139
+ * @returns Promise<void> or void
140
+ */
141
+ get onStepEnd() {
142
+ return this._onStepEnd;
128
143
  }
129
144
  get choiseIndex() {
130
145
  return this._choiseIndex;
@@ -134,7 +149,9 @@ var Label = class {
134
149
  // src/classes/CloseLabel.ts
135
150
  var CLOSE_LABEL_ID = "__close-label-id__";
136
151
  function newCloseLabel(choiseIndex) {
137
- return new Label(CLOSE_LABEL_ID, [], void 0, choiseIndex);
152
+ return new Label(CLOSE_LABEL_ID, [], {
153
+ choiseIndex
154
+ });
138
155
  }
139
156
 
140
157
  // src/functions/CanvasUtility.ts
@@ -213,8 +230,6 @@ function getMemoryContainer(element) {
213
230
  };
214
231
  }
215
232
  function setMemoryContainer(element, memory) {
216
- memory.width && (element.width = memory.width);
217
- memory.height && (element.height = memory.height);
218
233
  memory.isRenderGroup && (element.isRenderGroup = memory.isRenderGroup);
219
234
  memory.blendMode && (element.blendMode = memory.blendMode);
220
235
  memory.tint && (element.tint = memory.tint);
@@ -247,6 +262,8 @@ function setMemoryContainer(element, memory) {
247
262
  memory.interactive && (element.interactive = memory.interactive);
248
263
  memory.interactiveChildren && (element.interactiveChildren = memory.interactiveChildren);
249
264
  memory.hitArea && (element.hitArea = memory.hitArea);
265
+ memory.width && (element.width = memory.width);
266
+ memory.height && (element.height = memory.height);
250
267
  }
251
268
  function getTexture(imageUrl) {
252
269
  return __async(this, null, function* () {
@@ -683,7 +700,10 @@ function getChoiceMenuOptions() {
683
700
  }
684
701
  let label = getLabelById(option.label);
685
702
  if (label) {
686
- let itemLabel = new Label(label.id, label.steps, label.onStepRun, index);
703
+ let itemLabel = new Label(label.id, label.steps, {
704
+ onStepStart: label.onStepStart,
705
+ choiseIndex: index
706
+ });
687
707
  options.push(__spreadProps(__spreadValues({}, option), {
688
708
  label: itemLabel
689
709
  }));
@@ -774,8 +794,9 @@ FadeAlphaTicker = __decorateClass([
774
794
  ], FadeAlphaTicker);
775
795
 
776
796
  // src/functions/TickerUtility.ts
777
- function updateTickerProgression(args, propertyName, progression) {
778
- if (args[propertyName] === void 0 || !progression || args[propertyName] === progression.limit) {
797
+ function updateTickerProgression(args, propertyName, progression, valueConvert) {
798
+ let limit = valueConvert && progression.limit ? valueConvert(progression.limit) : progression.limit;
799
+ if (args[propertyName] === void 0 || !progression || args[propertyName] === limit) {
779
800
  return;
780
801
  }
781
802
  if (typeof args[propertyName] === "number") {
@@ -794,22 +815,25 @@ function updateTickerProgression(args, propertyName, progression) {
794
815
  }
795
816
  }
796
817
  }
797
- function getLinearProgression(number, progression) {
798
- if (progression.limit !== void 0) {
799
- if (number > progression.limit && progression.amt > 0) {
800
- return progression.limit;
801
- } else if (number < progression.limit && progression.amt < 0) {
802
- return progression.limit;
818
+ function getLinearProgression(number, progression, valueConvert) {
819
+ let limit = valueConvert && progression.limit ? valueConvert(progression.limit) : progression.limit;
820
+ let amt = valueConvert ? valueConvert(progression.amt) : progression.amt;
821
+ if (limit !== void 0) {
822
+ if (number > limit && amt > 0) {
823
+ return limit;
824
+ } else if (number < limit && amt < 0) {
825
+ return limit;
803
826
  }
804
827
  }
805
- return number + progression.amt / 60;
828
+ return number + amt;
806
829
  }
807
- function getExponentialProgression(number, progression) {
808
- if (progression.limit !== void 0) {
809
- if (number > progression.limit && progression.percentage > 0) {
810
- return progression.limit;
811
- } else if (number < progression.limit && progression.percentage < 0) {
812
- return progression.limit;
830
+ function getExponentialProgression(number, progression, valueConvert) {
831
+ let limit = valueConvert && progression.limit ? valueConvert(progression.limit) : progression.limit;
832
+ if (limit !== void 0) {
833
+ if (number > limit && progression.percentage > 0) {
834
+ return limit;
835
+ } else if (number < limit && progression.percentage < 0) {
836
+ return limit;
813
837
  }
814
838
  }
815
839
  return number + number * progression.percentage;
@@ -822,15 +846,13 @@ var MoveTicker = class extends TickerBase {
822
846
  let ySpeed = 1;
823
847
  if (args.speed) {
824
848
  if (typeof args.speed === "number") {
825
- xSpeed = args.speed;
826
- ySpeed = args.speed;
849
+ xSpeed = this.speedConvert(args.speed);
850
+ ySpeed = this.speedConvert(args.speed);
827
851
  } else {
828
- xSpeed = args.speed.x;
829
- ySpeed = args.speed.y;
852
+ xSpeed = this.speedConvert(args.speed.x);
853
+ ySpeed = this.speedConvert(args.speed.y);
830
854
  }
831
855
  }
832
- xSpeed /= 60;
833
- ySpeed /= 60;
834
856
  let destination = args.destination;
835
857
  let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
836
858
  if (typeof tagToRemoveAfter2 === "string") {
@@ -870,7 +892,10 @@ var MoveTicker = class extends TickerBase {
870
892
  }
871
893
  });
872
894
  if (args.speedProgression)
873
- updateTickerProgression(args, "speed", args.speedProgression);
895
+ updateTickerProgression(args, "speed", args.speedProgression, this.speedConvert);
896
+ }
897
+ speedConvert(speed) {
898
+ return speed / 6;
874
899
  }
875
900
  };
876
901
  MoveTicker = __decorateClass([
@@ -878,7 +903,7 @@ MoveTicker = __decorateClass([
878
903
  ], MoveTicker);
879
904
  var RotateTicker = class extends TickerBase {
880
905
  fn(ticker, args, tags, tickerId) {
881
- let speed = (args.speed === void 0 ? 1 : args.speed) / 60;
906
+ let speed = this.speedConvert(args.speed === void 0 ? 1 : args.speed);
882
907
  let clockwise = args.clockwise === void 0 ? true : args.clockwise;
883
908
  let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
884
909
  if (typeof tagToRemoveAfter2 === "string") {
@@ -906,7 +931,10 @@ var RotateTicker = class extends TickerBase {
906
931
  }
907
932
  });
908
933
  if (args.speedProgression)
909
- updateTickerProgression(args, "speed", args.speedProgression);
934
+ updateTickerProgression(args, "speed", args.speedProgression, this.speedConvert);
935
+ }
936
+ speedConvert(speed) {
937
+ return speed / 60;
910
938
  }
911
939
  };
912
940
  RotateTicker = __decorateClass([
@@ -918,15 +946,13 @@ var ZoomTicker = class extends TickerBase {
918
946
  let ySpeed = 0.1;
919
947
  if (args.speed) {
920
948
  if (typeof args.speed === "number") {
921
- xSpeed = args.speed;
922
- ySpeed = args.speed;
949
+ xSpeed = this.speedConvert(args.speed);
950
+ ySpeed = this.speedConvert(args.speed);
923
951
  } else {
924
- xSpeed = args.speed.x;
925
- ySpeed = args.speed.y;
952
+ xSpeed = this.speedConvert(args.speed.x);
953
+ ySpeed = this.speedConvert(args.speed.y);
926
954
  }
927
955
  }
928
- xSpeed /= 60;
929
- ySpeed /= 60;
930
956
  let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
931
957
  if (typeof tagToRemoveAfter2 === "string") {
932
958
  tagToRemoveAfter2 = [tagToRemoveAfter2];
@@ -993,7 +1019,10 @@ var ZoomTicker = class extends TickerBase {
993
1019
  }
994
1020
  });
995
1021
  if (args.speedProgression)
996
- updateTickerProgression(args, "speed", args.speedProgression);
1022
+ updateTickerProgression(args, "speed", args.speedProgression, this.speedConvert);
1023
+ }
1024
+ speedConvert(speed) {
1025
+ return speed / 60;
997
1026
  }
998
1027
  onEndOfTicker(tag, tickerId, _element, tagToRemoveAfter2) {
999
1028
  GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
@@ -1955,6 +1984,16 @@ var _GameStepManager = class _GameStepManager {
1955
1984
  static set originalStepData(value) {
1956
1985
  _GameStepManager._originalStepData = createExportableElement(value);
1957
1986
  }
1987
+ static get currentStepData() {
1988
+ let currentStepData = {
1989
+ path: window.location.pathname,
1990
+ storage: GameStorageManager.export(),
1991
+ canvas: GameWindowManager.export(),
1992
+ labelIndex: _GameStepManager.currentLabelStepIndex || 0,
1993
+ openedLabels: createExportableElement(_GameStepManager._openedLabels)
1994
+ };
1995
+ return currentStepData;
1996
+ }
1958
1997
  /* Edit History Methods */
1959
1998
  /**
1960
1999
  * Add a label to the history.
@@ -1962,19 +2001,13 @@ var _GameStepManager = class _GameStepManager {
1962
2001
  */
1963
2002
  static addStepHistory(step, choiseMade) {
1964
2003
  let stepHistory = getStepSha1(step);
1965
- let historyStep = {
1966
- path: window.location.pathname,
1967
- storage: GameStorageManager.export(),
1968
- canvas: GameWindowManager.export(),
1969
- labelIndex: _GameStepManager.currentLabelStepIndex || 0,
1970
- openedLabels: createExportableElement(_GameStepManager._openedLabels)
1971
- };
2004
+ let currentStepData = _GameStepManager.currentStepData;
1972
2005
  if (_GameStepManager.originalStepData) {
1973
- if (_GameStepManager.originalStepData.openedLabels.length === historyStep.openedLabels.length) {
2006
+ if (_GameStepManager.originalStepData.openedLabels.length === currentStepData.openedLabels.length) {
1974
2007
  try {
1975
2008
  let lastStepDataOpenedLabelsString = JSON.stringify(_GameStepManager.originalStepData.openedLabels);
1976
- let historyStepOpenedLabelsString = JSON.stringify(historyStep.openedLabels);
1977
- if (lastStepDataOpenedLabelsString === historyStepOpenedLabelsString && _GameStepManager.originalStepData.path === historyStep.path && _GameStepManager.originalStepData.labelIndex === historyStep.labelIndex) {
2009
+ let historyStepOpenedLabelsString = JSON.stringify(currentStepData.openedLabels);
2010
+ if (lastStepDataOpenedLabelsString === historyStepOpenedLabelsString && _GameStepManager.originalStepData.path === currentStepData.path && _GameStepManager.originalStepData.labelIndex === currentStepData.labelIndex) {
1978
2011
  return;
1979
2012
  }
1980
2013
  } catch (e) {
@@ -1982,7 +2015,7 @@ var _GameStepManager = class _GameStepManager {
1982
2015
  }
1983
2016
  }
1984
2017
  }
1985
- let data = deepDiff.diff(_GameStepManager.originalStepData, historyStep);
2018
+ let data = deepDiff.diff(_GameStepManager.originalStepData, currentStepData);
1986
2019
  if (data) {
1987
2020
  let dialoge = void 0;
1988
2021
  let requiredChoices = void 0;
@@ -2001,7 +2034,7 @@ var _GameStepManager = class _GameStepManager {
2001
2034
  index: _GameStepManager.lastStepIndex,
2002
2035
  choiceIndexMade: choiseMade
2003
2036
  });
2004
- _GameStepManager.originalStepData = historyStep;
2037
+ _GameStepManager.originalStepData = currentStepData;
2005
2038
  }
2006
2039
  _GameStepManager.increaseLastStepIndex();
2007
2040
  }
@@ -2092,6 +2125,9 @@ var _GameStepManager = class _GameStepManager {
2092
2125
  console.warn("[Pixi'VN] The player must make a choice");
2093
2126
  return;
2094
2127
  }
2128
+ if (_GameStepManager.currentLabel && _GameStepManager.currentLabel.onStepEnd) {
2129
+ yield _GameStepManager.currentLabel.onStepEnd(_GameStepManager.currentLabelStepIndex || 0, _GameStepManager.currentLabel);
2130
+ }
2095
2131
  _GameStepManager.increaseCurrentStepIndex();
2096
2132
  return yield _GameStepManager.runCurrentStep(props, choiseMade);
2097
2133
  });
@@ -2116,6 +2152,10 @@ var _GameStepManager = class _GameStepManager {
2116
2152
  return;
2117
2153
  }
2118
2154
  if (currentLabel.steps.length > currentLabelStepIndex) {
2155
+ let onStepRun = currentLabel.onStepStart;
2156
+ if (onStepRun) {
2157
+ yield onStepRun(currentLabelStepIndex, currentLabel);
2158
+ }
2119
2159
  let step = currentLabel.steps[currentLabelStepIndex];
2120
2160
  let result = yield step(props);
2121
2161
  _GameStepManager.addStepHistory(step, choiseMade);
@@ -2180,6 +2220,9 @@ var _GameStepManager = class _GameStepManager {
2180
2220
  if (!tempLabel) {
2181
2221
  throw new Error(`[Pixi'VN] Label ${labelId} not found`);
2182
2222
  }
2223
+ if (_GameStepManager.currentLabel && _GameStepManager.currentLabel.onStepEnd) {
2224
+ yield _GameStepManager.currentLabel.onStepEnd(_GameStepManager.currentLabelStepIndex || 0, _GameStepManager.currentLabel);
2225
+ }
2183
2226
  _GameStepManager.pushNewLabel(tempLabel.id);
2184
2227
  } catch (e) {
2185
2228
  console.error("[Pixi'VN] Error calling label", e);
@@ -2238,6 +2281,9 @@ var _GameStepManager = class _GameStepManager {
2238
2281
  if (!tempLabel) {
2239
2282
  throw new Error(`[Pixi'VN] Label ${labelId} not found`);
2240
2283
  }
2284
+ if (_GameStepManager.currentLabel && _GameStepManager.currentLabel.onStepEnd) {
2285
+ yield _GameStepManager.currentLabel.onStepEnd(_GameStepManager.currentLabelStepIndex || 0, _GameStepManager.currentLabel);
2286
+ }
2241
2287
  _GameStepManager.pushNewLabel(tempLabel.id);
2242
2288
  } catch (e) {
2243
2289
  console.error("[Pixi'VN] Error jumping label", e);
@@ -2343,24 +2389,29 @@ var _GameStepManager = class _GameStepManager {
2343
2389
  * ```
2344
2390
  */
2345
2391
  static goBack(navigate, steps = 1) {
2346
- if (steps <= 0) {
2347
- console.warn("[Pixi'VN] Steps must be greater than 0");
2348
- return;
2349
- }
2350
- if (_GameStepManager._stepsHistory.length <= 1) {
2351
- console.warn("[Pixi'VN] No steps to go back");
2352
- return;
2353
- }
2354
- let restoredStep = _GameStepManager.goBackInternal(steps, _GameStepManager.originalStepData);
2355
- if (restoredStep) {
2356
- _GameStepManager._originalStepData = restoredStep;
2357
- _GameStepManager._openedLabels = createExportableElement(restoredStep.openedLabels);
2358
- GameStorageManager.import(createExportableElement(restoredStep.storage));
2359
- GameWindowManager.import(createExportableElement(restoredStep.canvas));
2360
- navigate(restoredStep.path);
2361
- } else {
2362
- console.error("[Pixi'VN] Error going back");
2363
- }
2392
+ return __async(this, null, function* () {
2393
+ if (steps <= 0) {
2394
+ console.warn("[Pixi'VN] Steps must be greater than 0");
2395
+ return;
2396
+ }
2397
+ if (_GameStepManager._stepsHistory.length <= 1) {
2398
+ console.warn("[Pixi'VN] No steps to go back");
2399
+ return;
2400
+ }
2401
+ let restoredStep = _GameStepManager.goBackInternal(steps, _GameStepManager.originalStepData);
2402
+ if (restoredStep) {
2403
+ _GameStepManager._originalStepData = restoredStep;
2404
+ _GameStepManager._openedLabels = createExportableElement(restoredStep.openedLabels);
2405
+ if (_GameStepManager.currentLabel && _GameStepManager.currentLabel.onLoadStep) {
2406
+ yield _GameStepManager.currentLabel.onLoadStep(_GameStepManager.currentLabelStepIndex || 0, _GameStepManager.currentLabel);
2407
+ }
2408
+ GameStorageManager.import(createExportableElement(restoredStep.storage));
2409
+ GameWindowManager.import(createExportableElement(restoredStep.canvas));
2410
+ navigate(restoredStep.path);
2411
+ } else {
2412
+ console.error("[Pixi'VN] Error going back");
2413
+ }
2414
+ });
2364
2415
  }
2365
2416
  static goBackInternal(steps, restoredStep) {
2366
2417
  if (steps <= 0) {
@@ -2422,38 +2473,45 @@ var _GameStepManager = class _GameStepManager {
2422
2473
  * @param dataString The history in a JSON string.
2423
2474
  */
2424
2475
  static importJson(dataString) {
2425
- _GameStepManager.import(JSON.parse(dataString));
2476
+ return __async(this, null, function* () {
2477
+ yield _GameStepManager.import(JSON.parse(dataString));
2478
+ });
2426
2479
  }
2427
2480
  /**
2428
2481
  * Import the history from an object.
2429
2482
  * @param data The history in an object.
2430
2483
  */
2431
2484
  static import(data) {
2432
- _GameStepManager.clear();
2433
- try {
2434
- if (data.hasOwnProperty("stepsHistory")) {
2435
- _GameStepManager._stepsHistory = data["stepsHistory"];
2436
- } else {
2437
- console.warn("[Pixi'VN] Could not import stepsHistory data, so will be ignored");
2438
- }
2439
- if (data.hasOwnProperty("openedLabels")) {
2440
- _GameStepManager._openedLabels = data["openedLabels"];
2441
- } else {
2442
- console.warn("[Pixi'VN] Could not import openedLabels data, so will be ignored");
2443
- }
2444
- if (data.hasOwnProperty("lastStepIndex")) {
2445
- _GameStepManager._lastStepIndex = data["lastStepIndex"];
2446
- } else {
2447
- console.warn("[Pixi'VN] Could not import lastStepIndex data, so will be ignored");
2448
- }
2449
- if (data.hasOwnProperty("originalStepData")) {
2450
- _GameStepManager._originalStepData = data["originalStepData"];
2451
- } else {
2452
- console.warn("[Pixi'VN] Could not import originalStepData data, so will be ignored");
2485
+ return __async(this, null, function* () {
2486
+ _GameStepManager.clear();
2487
+ try {
2488
+ if (data.hasOwnProperty("stepsHistory")) {
2489
+ _GameStepManager._stepsHistory = data["stepsHistory"];
2490
+ } else {
2491
+ console.warn("[Pixi'VN] Could not import stepsHistory data, so will be ignored");
2492
+ }
2493
+ if (data.hasOwnProperty("openedLabels")) {
2494
+ _GameStepManager._openedLabels = data["openedLabels"];
2495
+ } else {
2496
+ console.warn("[Pixi'VN] Could not import openedLabels data, so will be ignored");
2497
+ }
2498
+ if (data.hasOwnProperty("lastStepIndex")) {
2499
+ _GameStepManager._lastStepIndex = data["lastStepIndex"];
2500
+ } else {
2501
+ console.warn("[Pixi'VN] Could not import lastStepIndex data, so will be ignored");
2502
+ }
2503
+ if (data.hasOwnProperty("originalStepData")) {
2504
+ _GameStepManager._originalStepData = data["originalStepData"];
2505
+ } else {
2506
+ console.warn("[Pixi'VN] Could not import originalStepData data, so will be ignored");
2507
+ }
2508
+ if (_GameStepManager.currentLabel && _GameStepManager.currentLabel.onLoadStep) {
2509
+ yield _GameStepManager.currentLabel.onLoadStep(_GameStepManager.currentLabelStepIndex || 0, _GameStepManager.currentLabel);
2510
+ }
2511
+ } catch (e) {
2512
+ console.error("[Pixi'VN] Error importing data", e);
2453
2513
  }
2454
- } catch (e) {
2455
- console.error("[Pixi'VN] Error importing data", e);
2456
- }
2514
+ });
2457
2515
  }
2458
2516
  };
2459
2517
  /**