@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.
- package/dist/{TickerBase-BAUiHet_.d.ts → TickerBase-3rLpDpmb.d.ts} +9 -0
- package/dist/{TickerBase-BctFf13y.d.mts → TickerBase-DKYzbzro.d.mts} +9 -0
- package/dist/classes/CanvasEvent.d.mts +6 -0
- package/dist/classes/CanvasEvent.d.ts +6 -0
- package/dist/classes/CanvasEvent.js +7 -0
- package/dist/classes/CanvasEvent.js.map +1 -1
- package/dist/classes/CanvasEvent.mjs +7 -0
- package/dist/classes/CanvasEvent.mjs.map +1 -1
- package/dist/classes/CharacterBaseModel.js +93 -65
- package/dist/classes/CharacterBaseModel.js.map +1 -1
- package/dist/classes/CharacterBaseModel.mjs +93 -65
- package/dist/classes/CharacterBaseModel.mjs.map +1 -1
- package/dist/classes/ChoiceMenuOption.js +94 -66
- package/dist/classes/ChoiceMenuOption.js.map +1 -1
- package/dist/classes/ChoiceMenuOption.mjs +94 -66
- package/dist/classes/ChoiceMenuOption.mjs.map +1 -1
- package/dist/classes/CloseLabel.js +1 -1
- package/dist/classes/CloseLabel.js.map +1 -1
- package/dist/classes/CloseLabel.mjs +1 -1
- package/dist/classes/CloseLabel.mjs.map +1 -1
- package/dist/classes/DialogueBaseModel.d.mts +2 -2
- package/dist/classes/DialogueBaseModel.d.ts +2 -2
- package/dist/classes/DialogueBaseModel.js +5 -5
- package/dist/classes/DialogueBaseModel.js.map +1 -1
- package/dist/classes/DialogueBaseModel.mjs +5 -5
- package/dist/classes/DialogueBaseModel.mjs.map +1 -1
- package/dist/classes/Label.d.mts +1 -1
- package/dist/classes/Label.d.ts +1 -1
- package/dist/classes/Label.js +1 -1
- package/dist/classes/Label.js.map +1 -1
- package/dist/classes/Label.mjs +1 -1
- package/dist/classes/Label.mjs.map +1 -1
- package/dist/classes/StoredClassModel.js +93 -65
- package/dist/classes/StoredClassModel.js.map +1 -1
- package/dist/classes/StoredClassModel.mjs +93 -65
- package/dist/classes/StoredClassModel.mjs.map +1 -1
- package/dist/classes/canvas/CanvasBase.d.mts +5 -1
- package/dist/classes/canvas/CanvasBase.d.ts +5 -1
- package/dist/classes/canvas/CanvasBase.js +7 -0
- package/dist/classes/canvas/CanvasBase.js.map +1 -1
- package/dist/classes/canvas/CanvasBase.mjs +7 -0
- package/dist/classes/canvas/CanvasBase.mjs.map +1 -1
- package/dist/classes/canvas/CanvasContainer.d.mts +4 -1
- package/dist/classes/canvas/CanvasContainer.d.ts +4 -1
- package/dist/classes/canvas/CanvasContainer.js +57 -37
- package/dist/classes/canvas/CanvasContainer.js.map +1 -1
- package/dist/classes/canvas/CanvasContainer.mjs +57 -38
- package/dist/classes/canvas/CanvasContainer.mjs.map +1 -1
- package/dist/classes/canvas/CanvasImage.d.mts +4 -2
- package/dist/classes/canvas/CanvasImage.d.ts +4 -2
- package/dist/classes/canvas/CanvasImage.js +33 -20
- package/dist/classes/canvas/CanvasImage.js.map +1 -1
- package/dist/classes/canvas/CanvasImage.mjs +30 -20
- package/dist/classes/canvas/CanvasImage.mjs.map +1 -1
- package/dist/classes/canvas/CanvasSprite.d.mts +5 -2
- package/dist/classes/canvas/CanvasSprite.d.ts +5 -2
- package/dist/classes/canvas/CanvasSprite.js +25 -17
- package/dist/classes/canvas/CanvasSprite.js.map +1 -1
- package/dist/classes/canvas/CanvasSprite.mjs +25 -18
- package/dist/classes/canvas/CanvasSprite.mjs.map +1 -1
- package/dist/classes/canvas/CanvasText.d.mts +6 -3
- package/dist/classes/canvas/CanvasText.d.ts +6 -3
- package/dist/classes/canvas/CanvasText.js +25 -17
- package/dist/classes/canvas/CanvasText.js.map +1 -1
- package/dist/classes/canvas/CanvasText.mjs +25 -18
- package/dist/classes/canvas/CanvasText.mjs.map +1 -1
- package/dist/classes/canvas/index.js +184 -158
- package/dist/classes/canvas/index.js.map +1 -1
- package/dist/classes/canvas/index.mjs +184 -158
- package/dist/classes/canvas/index.mjs.map +1 -1
- package/dist/classes/index.d.mts +1 -0
- package/dist/classes/index.d.ts +1 -0
- package/dist/classes/index.js +106 -71
- package/dist/classes/index.js.map +1 -1
- package/dist/classes/index.mjs +106 -71
- package/dist/classes/index.mjs.map +1 -1
- package/dist/classes/ticker/FadeAlphaTicker.d.mts +2 -1
- package/dist/classes/ticker/FadeAlphaTicker.d.ts +2 -1
- package/dist/classes/ticker/FadeAlphaTicker.js +93 -65
- package/dist/classes/ticker/FadeAlphaTicker.js.map +1 -1
- package/dist/classes/ticker/FadeAlphaTicker.mjs +93 -65
- package/dist/classes/ticker/FadeAlphaTicker.mjs.map +1 -1
- package/dist/classes/ticker/MoveTicker.d.mts +2 -1
- package/dist/classes/ticker/MoveTicker.d.ts +2 -1
- package/dist/classes/ticker/MoveTicker.js +93 -65
- package/dist/classes/ticker/MoveTicker.js.map +1 -1
- package/dist/classes/ticker/MoveTicker.mjs +93 -65
- package/dist/classes/ticker/MoveTicker.mjs.map +1 -1
- package/dist/classes/ticker/RotateTicker.d.mts +2 -1
- package/dist/classes/ticker/RotateTicker.d.ts +2 -1
- package/dist/classes/ticker/RotateTicker.js +93 -65
- package/dist/classes/ticker/RotateTicker.js.map +1 -1
- package/dist/classes/ticker/RotateTicker.mjs +93 -65
- package/dist/classes/ticker/RotateTicker.mjs.map +1 -1
- package/dist/classes/ticker/TickerBase.d.mts +2 -1
- package/dist/classes/ticker/TickerBase.d.ts +2 -1
- package/dist/classes/ticker/TickerBase.js +5 -0
- package/dist/classes/ticker/TickerBase.js.map +1 -1
- package/dist/classes/ticker/TickerBase.mjs +5 -0
- package/dist/classes/ticker/TickerBase.mjs.map +1 -1
- package/dist/classes/ticker/ZoomTicker.d.mts +9 -3
- package/dist/classes/ticker/ZoomTicker.d.ts +9 -3
- package/dist/classes/ticker/ZoomTicker.js +108 -66
- package/dist/classes/ticker/ZoomTicker.js.map +1 -1
- package/dist/classes/ticker/ZoomTicker.mjs +106 -66
- package/dist/classes/ticker/ZoomTicker.mjs.map +1 -1
- package/dist/classes/ticker/index.d.mts +2 -1
- package/dist/classes/ticker/index.d.ts +2 -1
- package/dist/classes/ticker/index.js +230 -202
- package/dist/classes/ticker/index.js.map +1 -1
- package/dist/classes/ticker/index.mjs +230 -202
- package/dist/classes/ticker/index.mjs.map +1 -1
- package/dist/constants.d.mts +1 -1
- package/dist/constants.d.ts +1 -1
- package/dist/constants.js +1 -1
- package/dist/constants.js.map +1 -1
- package/dist/constants.mjs +1 -1
- package/dist/constants.mjs.map +1 -1
- package/dist/decorators/CanvasElementDecorator.d.mts +3 -3
- package/dist/decorators/CanvasElementDecorator.d.ts +3 -3
- package/dist/decorators/CanvasElementDecorator.js +63 -43
- package/dist/decorators/CanvasElementDecorator.js.map +1 -1
- package/dist/decorators/CanvasElementDecorator.mjs +62 -42
- package/dist/decorators/CanvasElementDecorator.mjs.map +1 -1
- package/dist/decorators/EventDecorator.d.mts +7 -7
- package/dist/decorators/EventDecorator.d.ts +7 -7
- package/dist/decorators/EventDecorator.js +11 -10
- package/dist/decorators/EventDecorator.js.map +1 -1
- package/dist/decorators/EventDecorator.mjs +10 -9
- package/dist/decorators/EventDecorator.mjs.map +1 -1
- package/dist/decorators/LabelDecorator.js +94 -66
- package/dist/decorators/LabelDecorator.js.map +1 -1
- package/dist/decorators/LabelDecorator.mjs +94 -66
- package/dist/decorators/LabelDecorator.mjs.map +1 -1
- package/dist/decorators/TickerDecorator.d.mts +5 -5
- package/dist/decorators/TickerDecorator.d.ts +5 -5
- package/dist/decorators/TickerDecorator.js +6 -5
- package/dist/decorators/TickerDecorator.js.map +1 -1
- package/dist/decorators/TickerDecorator.mjs +6 -5
- package/dist/decorators/TickerDecorator.mjs.map +1 -1
- package/dist/decorators/index.d.mts +1 -1
- package/dist/decorators/index.d.ts +1 -1
- package/dist/decorators/index.js +96 -66
- package/dist/decorators/index.js.map +1 -1
- package/dist/decorators/index.mjs +96 -66
- package/dist/decorators/index.mjs.map +1 -1
- package/dist/functions/CanvasUtility.js +56 -37
- package/dist/functions/CanvasUtility.js.map +1 -1
- package/dist/functions/CanvasUtility.mjs +56 -37
- package/dist/functions/CanvasUtility.mjs.map +1 -1
- package/dist/functions/DialogueUtility.d.mts +1 -1
- package/dist/functions/DialogueUtility.d.ts +1 -1
- package/dist/functions/DialogueUtility.js +240 -201
- package/dist/functions/DialogueUtility.js.map +1 -1
- package/dist/functions/DialogueUtility.mjs +240 -201
- package/dist/functions/DialogueUtility.mjs.map +1 -1
- package/dist/functions/FlagsUtility.js +93 -65
- package/dist/functions/FlagsUtility.js.map +1 -1
- package/dist/functions/FlagsUtility.mjs +93 -65
- package/dist/functions/FlagsUtility.mjs.map +1 -1
- package/dist/functions/GameUtility.js +93 -65
- package/dist/functions/GameUtility.js.map +1 -1
- package/dist/functions/GameUtility.mjs +93 -65
- package/dist/functions/GameUtility.mjs.map +1 -1
- package/dist/functions/ImageUtility.d.mts +35 -2
- package/dist/functions/ImageUtility.d.ts +35 -2
- package/dist/functions/ImageUtility.js +371 -186
- package/dist/functions/ImageUtility.js.map +1 -1
- package/dist/functions/ImageUtility.mjs +368 -187
- package/dist/functions/ImageUtility.mjs.map +1 -1
- package/dist/functions/SavesUtility.d.mts +2 -2
- package/dist/functions/SavesUtility.d.ts +2 -2
- package/dist/functions/SavesUtility.js +141 -71
- package/dist/functions/SavesUtility.js.map +1 -1
- package/dist/functions/SavesUtility.mjs +141 -71
- package/dist/functions/SavesUtility.mjs.map +1 -1
- package/dist/functions/index.d.mts +6 -3
- package/dist/functions/index.d.ts +6 -3
- package/dist/functions/index.js +277 -81
- package/dist/functions/index.js.map +1 -1
- package/dist/functions/index.mjs +275 -83
- package/dist/functions/index.mjs.map +1 -1
- package/dist/index.d.mts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/index.js +644 -153
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +642 -155
- package/dist/index.mjs.map +1 -1
- package/dist/interface/IHistoryStep.d.mts +2 -2
- package/dist/interface/IHistoryStep.d.ts +2 -2
- package/dist/interface/ISaveData.d.mts +2 -2
- package/dist/interface/ISaveData.d.ts +2 -2
- package/dist/interface/ITicker.d.mts +2 -1
- package/dist/interface/ITicker.d.ts +2 -1
- package/dist/interface/ITickersSteps.d.mts +12 -3
- package/dist/interface/ITickersSteps.d.ts +12 -3
- package/dist/interface/TickerHistory.d.mts +3 -3
- package/dist/interface/TickerHistory.d.ts +3 -3
- package/dist/interface/canvas/ICanvasBaseMemory.d.mts +1 -1
- package/dist/interface/canvas/ICanvasBaseMemory.d.ts +1 -1
- package/dist/interface/canvas/ICanvasImageMemory.d.mts +2 -2
- package/dist/interface/canvas/ICanvasImageMemory.d.ts +2 -2
- package/dist/interface/canvas/ICanvasSpriteMemory.d.mts +1 -2
- package/dist/interface/canvas/ICanvasSpriteMemory.d.ts +1 -2
- package/dist/interface/canvas/ICanvasTextTextMemory.d.mts +1 -2
- package/dist/interface/canvas/ICanvasTextTextMemory.d.ts +1 -2
- package/dist/interface/export/ExportedCanvas.d.mts +2 -2
- package/dist/interface/export/ExportedCanvas.d.ts +2 -2
- package/dist/interface/export/ExportedStep.d.mts +2 -2
- package/dist/interface/export/ExportedStep.d.ts +2 -2
- package/dist/interface/export/index.d.mts +2 -2
- package/dist/interface/export/index.d.ts +2 -2
- package/dist/interface/index.d.mts +2 -2
- package/dist/interface/index.d.ts +2 -2
- package/dist/labels/BaseCanvasElementTestLabel.js +400 -372
- package/dist/labels/BaseCanvasElementTestLabel.js.map +1 -1
- package/dist/labels/BaseCanvasElementTestLabel.mjs +401 -373
- package/dist/labels/BaseCanvasElementTestLabel.mjs.map +1 -1
- package/dist/labels/{EventsTestLabel.d.mts → CanvasEventsTestLabel.d.mts} +4 -7
- package/dist/labels/{EventsTestLabel.d.ts → CanvasEventsTestLabel.d.ts} +4 -7
- package/dist/labels/{EventsTestLabel.js → CanvasEventsTestLabel.js} +320 -98
- package/dist/labels/CanvasEventsTestLabel.js.map +1 -0
- package/dist/labels/{EventsTestLabel.mjs → CanvasEventsTestLabel.mjs} +320 -98
- package/dist/labels/CanvasEventsTestLabel.mjs.map +1 -0
- package/dist/labels/{TintingTestLabel.d.mts → CustomTickerCanvasElementTestLabel.d.mts} +5 -4
- package/dist/labels/{TintingTestLabel.d.ts → CustomTickerCanvasElementTestLabel.d.ts} +5 -4
- package/dist/labels/CustomTickerCanvasElementTestLabel.js +2792 -0
- package/dist/labels/CustomTickerCanvasElementTestLabel.js.map +1 -0
- package/dist/labels/CustomTickerCanvasElementTestLabel.mjs +2786 -0
- package/dist/labels/CustomTickerCanvasElementTestLabel.mjs.map +1 -0
- package/dist/labels/{ShowImageTest.js → ImagesAnimationsTestLabel.js} +373 -82
- package/dist/labels/ImagesAnimationsTestLabel.js.map +1 -0
- package/dist/labels/{ShowImageTest.mjs → ImagesAnimationsTestLabel.mjs} +373 -82
- package/dist/labels/ImagesAnimationsTestLabel.mjs.map +1 -0
- package/dist/labels/MarkdownTest.js +150 -80
- package/dist/labels/MarkdownTest.js.map +1 -1
- package/dist/labels/MarkdownTest.mjs +150 -80
- package/dist/labels/MarkdownTest.mjs.map +1 -1
- package/dist/labels/StartLabel.js +689 -152
- package/dist/labels/StartLabel.js.map +1 -1
- package/dist/labels/StartLabel.mjs +690 -153
- package/dist/labels/StartLabel.mjs.map +1 -1
- package/dist/labels/TestConstant.d.mts +3 -1
- package/dist/labels/TestConstant.d.ts +3 -1
- package/dist/labels/TestConstant.js +97 -65
- package/dist/labels/TestConstant.js.map +1 -1
- package/dist/labels/TestConstant.mjs +96 -66
- package/dist/labels/TestConstant.mjs.map +1 -1
- package/dist/labels/TickerTestLabel.js +472 -402
- package/dist/labels/TickerTestLabel.js.map +1 -1
- package/dist/labels/TickerTestLabel.mjs +473 -403
- package/dist/labels/TickerTestLabel.mjs.map +1 -1
- package/dist/labels/index.js +689 -152
- package/dist/labels/index.js.map +1 -1
- package/dist/labels/index.mjs +690 -153
- package/dist/labels/index.mjs.map +1 -1
- package/dist/managers/StepManager.d.mts +5 -4
- package/dist/managers/StepManager.d.ts +5 -4
- package/dist/managers/StepManager.js +140 -70
- package/dist/managers/StepManager.js.map +1 -1
- package/dist/managers/StepManager.mjs +140 -70
- package/dist/managers/StepManager.mjs.map +1 -1
- package/dist/managers/WindowManager.d.mts +1 -1
- package/dist/managers/WindowManager.d.ts +1 -1
- package/dist/managers/WindowManager.js +84 -60
- package/dist/managers/WindowManager.js.map +1 -1
- package/dist/managers/WindowManager.mjs +84 -60
- package/dist/managers/WindowManager.mjs.map +1 -1
- package/dist/managers/index.d.mts +2 -2
- package/dist/managers/index.d.ts +2 -2
- package/dist/managers/index.js +140 -70
- package/dist/managers/index.js.map +1 -1
- package/dist/managers/index.mjs +140 -70
- package/dist/managers/index.mjs.map +1 -1
- package/dist/types/ticker/MoveTickerProps.d.mts +1 -1
- package/dist/types/ticker/MoveTickerProps.d.ts +1 -1
- package/dist/types/ticker/RotateTickerProps.d.mts +1 -1
- package/dist/types/ticker/RotateTickerProps.d.ts +1 -1
- package/package.json +1 -1
- package/dist/labels/EventsTestLabel.js.map +0 -1
- package/dist/labels/EventsTestLabel.mjs.map +0 -1
- package/dist/labels/ShowImageTest.js.map +0 -1
- package/dist/labels/ShowImageTest.mjs.map +0 -1
- package/dist/labels/TintingTestLabel.js +0 -1786
- package/dist/labels/TintingTestLabel.js.map +0 -1
- package/dist/labels/TintingTestLabel.mjs +0 -1780
- package/dist/labels/TintingTestLabel.mjs.map +0 -1
- /package/dist/labels/{ShowImageTest.d.mts → ImagesAnimationsTestLabel.d.mts} +0 -0
- /package/dist/labels/{ShowImageTest.d.ts → ImagesAnimationsTestLabel.d.ts} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Sprite, Container,
|
|
1
|
+
import { Sprite, Container, Application, Assets, Texture, Text } from 'pixi.js';
|
|
2
2
|
import { diff } from 'deep-diff';
|
|
3
3
|
import sha1 from 'crypto-js/sha1';
|
|
4
4
|
|
|
@@ -50,138 +50,6 @@ var __async = (__this, __arguments, generator) => {
|
|
|
50
50
|
step((generator = generator.apply(__this, __arguments)).next());
|
|
51
51
|
});
|
|
52
52
|
};
|
|
53
|
-
|
|
54
|
-
// src/decorators/CanvasElementDecorator.ts
|
|
55
|
-
var registeredCanvasElement = {};
|
|
56
|
-
function getCanvasElementInstanceByClassName(canvasName) {
|
|
57
|
-
try {
|
|
58
|
-
let eventType = registeredCanvasElement[canvasName];
|
|
59
|
-
if (!eventType) {
|
|
60
|
-
if (canvasName === "CanvasContainer") {
|
|
61
|
-
eventType = CanvasContainer;
|
|
62
|
-
} else if (canvasName === "CanvasImage") {
|
|
63
|
-
eventType = CanvasImage;
|
|
64
|
-
} else if (canvasName === "CanvasSprite") {
|
|
65
|
-
eventType = CanvasSprite;
|
|
66
|
-
} else if (canvasName === "CanvasText") {
|
|
67
|
-
eventType = CanvasText;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
if (!eventType) {
|
|
71
|
-
console.error(`[Pixi'VN] CanvasElement ${canvasName} not found`);
|
|
72
|
-
return;
|
|
73
|
-
}
|
|
74
|
-
let canvasElement = new eventType();
|
|
75
|
-
return canvasElement;
|
|
76
|
-
} catch (e) {
|
|
77
|
-
console.error(`[Pixi'VN] Error while getting CanvasElement ${canvasName}`, e);
|
|
78
|
-
return;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
// src/functions/CanvasUtility.ts
|
|
83
|
-
function getTextureMemory(texture) {
|
|
84
|
-
let sourceTexture = texture.source;
|
|
85
|
-
let textureMemory = {
|
|
86
|
-
image: sourceTexture.label
|
|
87
|
-
};
|
|
88
|
-
return textureMemory;
|
|
89
|
-
}
|
|
90
|
-
function exportCanvasElement(element) {
|
|
91
|
-
return element.memory;
|
|
92
|
-
}
|
|
93
|
-
function importCanvasElement(memory) {
|
|
94
|
-
let element = getCanvasElementInstanceByClassName(memory.className);
|
|
95
|
-
if (element) {
|
|
96
|
-
element.memory = memory;
|
|
97
|
-
} else {
|
|
98
|
-
throw new Error("[Pixi'VN] The element " + memory.className + " could not be created");
|
|
99
|
-
}
|
|
100
|
-
return element;
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
// src/classes/canvas/CanvasContainer.ts
|
|
104
|
-
var CanvasContainer = class extends Container {
|
|
105
|
-
get memory() {
|
|
106
|
-
let memory = getMemoryContainer(this);
|
|
107
|
-
this.children.forEach((child) => {
|
|
108
|
-
memory.elements.push(exportCanvasElement(child));
|
|
109
|
-
});
|
|
110
|
-
return memory;
|
|
111
|
-
}
|
|
112
|
-
set memory(value) {
|
|
113
|
-
setMemoryContainer(this, value);
|
|
114
|
-
value.elements.forEach((child) => {
|
|
115
|
-
this.addChild(importCanvasElement(child));
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
|
-
};
|
|
119
|
-
function getMemoryContainer(element) {
|
|
120
|
-
return {
|
|
121
|
-
className: "CanvasContainer",
|
|
122
|
-
elements: [],
|
|
123
|
-
width: element.width,
|
|
124
|
-
height: element.height,
|
|
125
|
-
isRenderGroup: element.isRenderGroup,
|
|
126
|
-
blendMode: element.blendMode,
|
|
127
|
-
tint: element.tint,
|
|
128
|
-
alpha: element.alpha,
|
|
129
|
-
angle: element.angle,
|
|
130
|
-
renderable: element.renderable,
|
|
131
|
-
rotation: element.rotation,
|
|
132
|
-
scale: { x: element.scale.x, y: element.scale.y },
|
|
133
|
-
pivot: { x: element.pivot.x, y: element.pivot.y },
|
|
134
|
-
position: { x: element.position.x, y: element.position.y },
|
|
135
|
-
skew: { x: element.skew.x, y: element.skew.y },
|
|
136
|
-
visible: element.visible,
|
|
137
|
-
culled: element.culled,
|
|
138
|
-
x: element.x,
|
|
139
|
-
y: element.y,
|
|
140
|
-
boundsArea: element.boundsArea,
|
|
141
|
-
cursor: element.cursor,
|
|
142
|
-
eventMode: element.eventMode,
|
|
143
|
-
interactive: element.interactive,
|
|
144
|
-
interactiveChildren: element.interactiveChildren,
|
|
145
|
-
hitArea: element.hitArea
|
|
146
|
-
};
|
|
147
|
-
}
|
|
148
|
-
function setMemoryContainer(element, memory) {
|
|
149
|
-
memory.width && (element.width = memory.width);
|
|
150
|
-
memory.height && (element.height = memory.height);
|
|
151
|
-
memory.isRenderGroup && (element.isRenderGroup = memory.isRenderGroup);
|
|
152
|
-
memory.blendMode && (element.blendMode = memory.blendMode);
|
|
153
|
-
memory.tint && (element.tint = memory.tint);
|
|
154
|
-
memory.alpha && (element.alpha = memory.alpha);
|
|
155
|
-
memory.angle && (element.angle = memory.angle);
|
|
156
|
-
memory.renderable && (element.renderable = memory.renderable);
|
|
157
|
-
memory.rotation && (element.rotation = memory.rotation);
|
|
158
|
-
if (memory.scale) {
|
|
159
|
-
if (typeof memory.scale === "number") {
|
|
160
|
-
element.scale.set(memory.scale, memory.scale);
|
|
161
|
-
} else {
|
|
162
|
-
element.scale.set(memory.scale.x, memory.scale.y);
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
if (memory.pivot) {
|
|
166
|
-
if (typeof memory.pivot === "number") {
|
|
167
|
-
element.pivot.set(memory.pivot, memory.pivot);
|
|
168
|
-
} else {
|
|
169
|
-
element.pivot.set(memory.pivot.x, memory.pivot.y);
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
memory.position && element.position.set(memory.position.x, memory.position.y);
|
|
173
|
-
memory.skew && element.skew.set(memory.skew.x, memory.skew.y);
|
|
174
|
-
memory.visible && (element.visible = memory.visible);
|
|
175
|
-
memory.culled && (element.culled = memory.culled);
|
|
176
|
-
memory.x && (element.x = memory.x);
|
|
177
|
-
memory.y && (element.y = memory.y);
|
|
178
|
-
memory.boundsArea && (element.boundsArea = memory.boundsArea);
|
|
179
|
-
memory.cursor && (element.cursor = memory.cursor);
|
|
180
|
-
memory.eventMode && (element.eventMode = memory.eventMode);
|
|
181
|
-
memory.interactive && (element.interactive = memory.interactive);
|
|
182
|
-
memory.interactiveChildren && (element.interactiveChildren = memory.interactiveChildren);
|
|
183
|
-
memory.hitArea && (element.hitArea = memory.hitArea);
|
|
184
|
-
}
|
|
185
53
|
function getTexture(imageUrl) {
|
|
186
54
|
return __async(this, null, function* () {
|
|
187
55
|
if (Assets.cache.has(imageUrl)) {
|
|
@@ -234,40 +102,43 @@ function getTextStyle(style) {
|
|
|
234
102
|
|
|
235
103
|
// src/decorators/EventDecorator.ts
|
|
236
104
|
var registeredEvents = {};
|
|
237
|
-
function
|
|
105
|
+
function getEventTypeById(eventId) {
|
|
238
106
|
try {
|
|
239
|
-
let eventType = registeredEvents[
|
|
107
|
+
let eventType = registeredEvents[eventId];
|
|
240
108
|
if (!eventType) {
|
|
241
|
-
console.error(`[Pixi'VN] Event ${
|
|
109
|
+
console.error(`[Pixi'VN] Event ${eventId} not found`);
|
|
242
110
|
return;
|
|
243
111
|
}
|
|
244
112
|
new eventType();
|
|
245
113
|
return eventType;
|
|
246
114
|
} catch (e) {
|
|
247
|
-
console.error(`[Pixi'VN] Error while getting Event ${
|
|
115
|
+
console.error(`[Pixi'VN] Error while getting Event ${eventId}`, e);
|
|
248
116
|
return;
|
|
249
117
|
}
|
|
250
118
|
}
|
|
251
|
-
function
|
|
119
|
+
function getEventInstanceById(eventId) {
|
|
252
120
|
try {
|
|
253
|
-
let eventType = registeredEvents[
|
|
121
|
+
let eventType = registeredEvents[eventId];
|
|
254
122
|
if (!eventType) {
|
|
255
|
-
console.error(`[Pixi'VN] Event ${
|
|
123
|
+
console.error(`[Pixi'VN] Event ${eventId} not found`);
|
|
256
124
|
return;
|
|
257
125
|
}
|
|
258
126
|
let event = new eventType();
|
|
259
127
|
return event;
|
|
260
128
|
} catch (e) {
|
|
261
|
-
console.error(`[Pixi'VN] Error while getting Event ${
|
|
129
|
+
console.error(`[Pixi'VN] Error while getting Event ${eventId}`, e);
|
|
262
130
|
return;
|
|
263
131
|
}
|
|
264
132
|
}
|
|
265
133
|
|
|
266
134
|
// src/classes/canvas/CanvasSprite.ts
|
|
135
|
+
var CANVAS_SPRITE_ID = "CanvasSprite";
|
|
267
136
|
var CanvasSprite = class _CanvasSprite extends Sprite {
|
|
268
|
-
constructor() {
|
|
269
|
-
super(
|
|
137
|
+
constructor(options) {
|
|
138
|
+
super(options);
|
|
139
|
+
this.pixivnId = CANVAS_SPRITE_ID;
|
|
270
140
|
this._onEvents = {};
|
|
141
|
+
this.pixivnId = this.constructor.prototype.pixivnId;
|
|
271
142
|
}
|
|
272
143
|
get memory() {
|
|
273
144
|
return getMemorySprite(this);
|
|
@@ -308,9 +179,9 @@ var CanvasSprite = class _CanvasSprite extends Sprite {
|
|
|
308
179
|
* ```
|
|
309
180
|
*/
|
|
310
181
|
onEvent(event, eventClass) {
|
|
311
|
-
let
|
|
312
|
-
let instance =
|
|
313
|
-
this._onEvents[event] =
|
|
182
|
+
let id = eventClass.prototype.id;
|
|
183
|
+
let instance = getEventInstanceById(id);
|
|
184
|
+
this._onEvents[event] = id;
|
|
314
185
|
if (instance) {
|
|
315
186
|
super.on(event, () => {
|
|
316
187
|
instance.fn(event, this);
|
|
@@ -339,7 +210,7 @@ var CanvasSprite = class _CanvasSprite extends Sprite {
|
|
|
339
210
|
function getMemorySprite(element) {
|
|
340
211
|
let temp = getMemoryContainer(element);
|
|
341
212
|
return __spreadProps(__spreadValues({}, temp), {
|
|
342
|
-
|
|
213
|
+
pixivnId: element.pixivnId,
|
|
343
214
|
textureImage: getTextureMemory(element.texture),
|
|
344
215
|
anchor: { x: element.anchor.x, y: element.anchor.y },
|
|
345
216
|
roundPixels: element.roundPixels,
|
|
@@ -362,8 +233,8 @@ function setMemorySprite(element, memory) {
|
|
|
362
233
|
}
|
|
363
234
|
memory.roundPixels && (element.roundPixels = memory.roundPixels);
|
|
364
235
|
for (let event in memory.onEvents) {
|
|
365
|
-
let
|
|
366
|
-
let instance =
|
|
236
|
+
let id = memory.onEvents[event];
|
|
237
|
+
let instance = getEventTypeById(id);
|
|
367
238
|
if (instance) {
|
|
368
239
|
element.onEvent(event, instance);
|
|
369
240
|
}
|
|
@@ -371,9 +242,11 @@ function setMemorySprite(element, memory) {
|
|
|
371
242
|
}
|
|
372
243
|
|
|
373
244
|
// src/classes/canvas/CanvasImage.ts
|
|
245
|
+
var CANVAS_IMAGE_ID = "CanvasImage";
|
|
374
246
|
var CanvasImage = class _CanvasImage extends CanvasSprite {
|
|
375
247
|
constructor(options, imageLink) {
|
|
376
248
|
super(options);
|
|
249
|
+
this.pixivnId = CANVAS_IMAGE_ID;
|
|
377
250
|
this.imageLink = "";
|
|
378
251
|
if (imageLink) {
|
|
379
252
|
this.imageLink = imageLink;
|
|
@@ -381,12 +254,13 @@ var CanvasImage = class _CanvasImage extends CanvasSprite {
|
|
|
381
254
|
}
|
|
382
255
|
get memory() {
|
|
383
256
|
return __spreadProps(__spreadValues({}, getMemorySprite(this)), {
|
|
384
|
-
|
|
385
|
-
|
|
257
|
+
pixivnId: this.pixivnId,
|
|
258
|
+
imageLink: this.imageLink
|
|
386
259
|
});
|
|
387
260
|
}
|
|
388
261
|
set memory(memory) {
|
|
389
262
|
setMemorySprite(this, memory);
|
|
263
|
+
this.imageLink = memory.imageLink;
|
|
390
264
|
}
|
|
391
265
|
static from(source, skipCache) {
|
|
392
266
|
let sprite = Sprite.from(source, skipCache);
|
|
@@ -414,10 +288,13 @@ var CanvasImage = class _CanvasImage extends CanvasSprite {
|
|
|
414
288
|
});
|
|
415
289
|
}
|
|
416
290
|
};
|
|
291
|
+
var CANVAS_TEXT_ID = "CanvasText";
|
|
417
292
|
var CanvasText = class extends Text {
|
|
418
|
-
constructor() {
|
|
419
|
-
super(
|
|
293
|
+
constructor(options) {
|
|
294
|
+
super(options);
|
|
295
|
+
this.pixivnId = CANVAS_TEXT_ID;
|
|
420
296
|
this._onEvents = {};
|
|
297
|
+
this.pixivnId = this.constructor.prototype.pixivnId;
|
|
421
298
|
}
|
|
422
299
|
get memory() {
|
|
423
300
|
return getMemoryText(this);
|
|
@@ -458,9 +335,9 @@ var CanvasText = class extends Text {
|
|
|
458
335
|
* ```
|
|
459
336
|
*/
|
|
460
337
|
onEvent(event, eventClass) {
|
|
461
|
-
let
|
|
462
|
-
let instance =
|
|
463
|
-
this._onEvents[event] =
|
|
338
|
+
let id = eventClass.prototype.id;
|
|
339
|
+
let instance = getEventInstanceById(id);
|
|
340
|
+
this._onEvents[event] = id;
|
|
464
341
|
if (instance) {
|
|
465
342
|
super.on(event, () => {
|
|
466
343
|
instance.fn(event, this);
|
|
@@ -483,7 +360,7 @@ var CanvasText = class extends Text {
|
|
|
483
360
|
function getMemoryText(element) {
|
|
484
361
|
let temp = getMemoryContainer(element);
|
|
485
362
|
return __spreadProps(__spreadValues({}, temp), {
|
|
486
|
-
|
|
363
|
+
pixivnId: element.pixivnId,
|
|
487
364
|
anchor: { x: element.anchor.x, y: element.anchor.y },
|
|
488
365
|
text: element.text,
|
|
489
366
|
resolution: element.resolution,
|
|
@@ -506,13 +383,155 @@ function setMemoryText(element, memory) {
|
|
|
506
383
|
memory.style && (element.style = memory.style);
|
|
507
384
|
memory.roundPixels && (element.roundPixels = memory.roundPixels);
|
|
508
385
|
for (let event in memory.onEvents) {
|
|
509
|
-
let
|
|
510
|
-
let instance =
|
|
386
|
+
let id = memory.onEvents[event];
|
|
387
|
+
let instance = getEventTypeById(id);
|
|
511
388
|
if (instance) {
|
|
512
389
|
element.onEvent(event, instance);
|
|
513
390
|
}
|
|
514
391
|
}
|
|
515
392
|
}
|
|
393
|
+
|
|
394
|
+
// src/decorators/CanvasElementDecorator.ts
|
|
395
|
+
var registeredCanvasElement = {};
|
|
396
|
+
function getCanvasElementInstanceById(canvasId) {
|
|
397
|
+
try {
|
|
398
|
+
let eventType = registeredCanvasElement[canvasId];
|
|
399
|
+
if (!eventType) {
|
|
400
|
+
if (canvasId === CANVAS_CONTAINER_ID) {
|
|
401
|
+
eventType = CanvasContainer;
|
|
402
|
+
} else if (canvasId === CANVAS_IMAGE_ID) {
|
|
403
|
+
eventType = CanvasImage;
|
|
404
|
+
} else if (canvasId === CANVAS_SPRITE_ID) {
|
|
405
|
+
eventType = CanvasSprite;
|
|
406
|
+
} else if (canvasId === CANVAS_TEXT_ID) {
|
|
407
|
+
eventType = CanvasText;
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
if (!eventType) {
|
|
411
|
+
console.error(`[Pixi'VN] CanvasElement ${canvasId} not found`);
|
|
412
|
+
return;
|
|
413
|
+
}
|
|
414
|
+
let canvasElement = new eventType();
|
|
415
|
+
return canvasElement;
|
|
416
|
+
} catch (e) {
|
|
417
|
+
console.error(`[Pixi'VN] Error while getting CanvasElement ${canvasId}`, e);
|
|
418
|
+
return;
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
|
|
422
|
+
// src/functions/CanvasUtility.ts
|
|
423
|
+
function getTextureMemory(texture) {
|
|
424
|
+
let sourceTexture = texture.source;
|
|
425
|
+
let textureMemory = {
|
|
426
|
+
image: sourceTexture.label
|
|
427
|
+
};
|
|
428
|
+
return textureMemory;
|
|
429
|
+
}
|
|
430
|
+
function exportCanvasElement(element) {
|
|
431
|
+
return element.memory;
|
|
432
|
+
}
|
|
433
|
+
function importCanvasElement(memory) {
|
|
434
|
+
let element = getCanvasElementInstanceById(memory.pixivnId);
|
|
435
|
+
if (element) {
|
|
436
|
+
element.memory = memory;
|
|
437
|
+
} else {
|
|
438
|
+
throw new Error("[Pixi'VN] The element " + memory.pixivnId + " could not be created");
|
|
439
|
+
}
|
|
440
|
+
return element;
|
|
441
|
+
}
|
|
442
|
+
|
|
443
|
+
// src/classes/canvas/CanvasContainer.ts
|
|
444
|
+
var CANVAS_CONTAINER_ID = "CanvasContainer";
|
|
445
|
+
var CanvasContainer = class extends Container {
|
|
446
|
+
constructor(options) {
|
|
447
|
+
super(options);
|
|
448
|
+
this.pixivnId = CANVAS_CONTAINER_ID;
|
|
449
|
+
this.pixivnId = this.constructor.prototype.pixivnId;
|
|
450
|
+
}
|
|
451
|
+
get memory() {
|
|
452
|
+
let memory = getMemoryContainer(this);
|
|
453
|
+
this.children.forEach((child) => {
|
|
454
|
+
memory.elements.push(exportCanvasElement(child));
|
|
455
|
+
});
|
|
456
|
+
return memory;
|
|
457
|
+
}
|
|
458
|
+
set memory(value) {
|
|
459
|
+
setMemoryContainer(this, value);
|
|
460
|
+
value.elements.forEach((child) => {
|
|
461
|
+
this.addChild(importCanvasElement(child));
|
|
462
|
+
});
|
|
463
|
+
}
|
|
464
|
+
};
|
|
465
|
+
function getMemoryContainer(element) {
|
|
466
|
+
let className = "CanvasContainer";
|
|
467
|
+
if (element.hasOwnProperty("pixivnId")) {
|
|
468
|
+
className = element.pixivnId;
|
|
469
|
+
}
|
|
470
|
+
return {
|
|
471
|
+
pixivnId: className,
|
|
472
|
+
elements: [],
|
|
473
|
+
width: element.width,
|
|
474
|
+
height: element.height,
|
|
475
|
+
isRenderGroup: element.isRenderGroup,
|
|
476
|
+
blendMode: element.blendMode,
|
|
477
|
+
tint: element.tint,
|
|
478
|
+
alpha: element.alpha,
|
|
479
|
+
angle: element.angle,
|
|
480
|
+
renderable: element.renderable,
|
|
481
|
+
rotation: element.rotation,
|
|
482
|
+
scale: { x: element.scale.x, y: element.scale.y },
|
|
483
|
+
pivot: { x: element.pivot.x, y: element.pivot.y },
|
|
484
|
+
position: { x: element.position.x, y: element.position.y },
|
|
485
|
+
skew: { x: element.skew.x, y: element.skew.y },
|
|
486
|
+
visible: element.visible,
|
|
487
|
+
culled: element.culled,
|
|
488
|
+
x: element.x,
|
|
489
|
+
y: element.y,
|
|
490
|
+
boundsArea: element.boundsArea,
|
|
491
|
+
cursor: element.cursor,
|
|
492
|
+
eventMode: element.eventMode,
|
|
493
|
+
interactive: element.interactive,
|
|
494
|
+
interactiveChildren: element.interactiveChildren,
|
|
495
|
+
hitArea: element.hitArea
|
|
496
|
+
};
|
|
497
|
+
}
|
|
498
|
+
function setMemoryContainer(element, memory) {
|
|
499
|
+
memory.width && (element.width = memory.width);
|
|
500
|
+
memory.height && (element.height = memory.height);
|
|
501
|
+
memory.isRenderGroup && (element.isRenderGroup = memory.isRenderGroup);
|
|
502
|
+
memory.blendMode && (element.blendMode = memory.blendMode);
|
|
503
|
+
memory.tint && (element.tint = memory.tint);
|
|
504
|
+
memory.alpha && (element.alpha = memory.alpha);
|
|
505
|
+
memory.angle && (element.angle = memory.angle);
|
|
506
|
+
memory.renderable && (element.renderable = memory.renderable);
|
|
507
|
+
memory.rotation && (element.rotation = memory.rotation);
|
|
508
|
+
if (memory.scale) {
|
|
509
|
+
if (typeof memory.scale === "number") {
|
|
510
|
+
element.scale.set(memory.scale, memory.scale);
|
|
511
|
+
} else {
|
|
512
|
+
element.scale.set(memory.scale.x, memory.scale.y);
|
|
513
|
+
}
|
|
514
|
+
}
|
|
515
|
+
if (memory.pivot) {
|
|
516
|
+
if (typeof memory.pivot === "number") {
|
|
517
|
+
element.pivot.set(memory.pivot, memory.pivot);
|
|
518
|
+
} else {
|
|
519
|
+
element.pivot.set(memory.pivot.x, memory.pivot.y);
|
|
520
|
+
}
|
|
521
|
+
}
|
|
522
|
+
memory.position && element.position.set(memory.position.x, memory.position.y);
|
|
523
|
+
memory.skew && element.skew.set(memory.skew.x, memory.skew.y);
|
|
524
|
+
memory.visible && (element.visible = memory.visible);
|
|
525
|
+
memory.culled && (element.culled = memory.culled);
|
|
526
|
+
memory.x && (element.x = memory.x);
|
|
527
|
+
memory.y && (element.y = memory.y);
|
|
528
|
+
memory.boundsArea && (element.boundsArea = memory.boundsArea);
|
|
529
|
+
memory.cursor && (element.cursor = memory.cursor);
|
|
530
|
+
memory.eventMode && (element.eventMode = memory.eventMode);
|
|
531
|
+
memory.interactive && (element.interactive = memory.interactive);
|
|
532
|
+
memory.interactiveChildren && (element.interactiveChildren = memory.interactiveChildren);
|
|
533
|
+
memory.hitArea && (element.hitArea = memory.hitArea);
|
|
534
|
+
}
|
|
516
535
|
function getStepSha1(step) {
|
|
517
536
|
let sha1String = sha1(step.toString().toLocaleLowerCase());
|
|
518
537
|
return sha1String.toString();
|
|
@@ -536,7 +555,7 @@ var Label = class {
|
|
|
536
555
|
this._choiseIndex = choiseIndex;
|
|
537
556
|
}
|
|
538
557
|
/**
|
|
539
|
-
* Get the id of the label
|
|
558
|
+
* Get the id of the label. This variable is used in the system to get the label by id, {@link getLabelById}
|
|
540
559
|
*/
|
|
541
560
|
get id() {
|
|
542
561
|
return this._id;
|
|
@@ -561,66 +580,261 @@ var Label = class {
|
|
|
561
580
|
if (externalSteps.length === 0) {
|
|
562
581
|
return 0;
|
|
563
582
|
}
|
|
564
|
-
let res = 0;
|
|
565
|
-
externalSteps.forEach((step, index) => {
|
|
566
|
-
if (checkIfStepsIsEqual(step, this.steps[index])) {
|
|
567
|
-
res = index;
|
|
583
|
+
let res = 0;
|
|
584
|
+
externalSteps.forEach((step, index) => {
|
|
585
|
+
if (checkIfStepsIsEqual(step, this.steps[index])) {
|
|
586
|
+
res = index;
|
|
587
|
+
}
|
|
588
|
+
});
|
|
589
|
+
return res;
|
|
590
|
+
}
|
|
591
|
+
/**
|
|
592
|
+
* 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
|
|
593
|
+
* @returns Promise<void> or void
|
|
594
|
+
* @example
|
|
595
|
+
* ```typescript
|
|
596
|
+
* newLabel("id", [], () => {
|
|
597
|
+
* Assets.load('path/to/image1.png')
|
|
598
|
+
* Assets.load('path/to/image2.png')
|
|
599
|
+
* })
|
|
600
|
+
* ```
|
|
601
|
+
*/
|
|
602
|
+
get onStepRun() {
|
|
603
|
+
return this._onStepRun;
|
|
604
|
+
}
|
|
605
|
+
get choiseIndex() {
|
|
606
|
+
return this._choiseIndex;
|
|
607
|
+
}
|
|
608
|
+
};
|
|
609
|
+
|
|
610
|
+
// src/classes/CloseLabel.ts
|
|
611
|
+
var CLOSE_LABEL_ID = "__close-label-id__";
|
|
612
|
+
function newCloseLabel(choiseIndex) {
|
|
613
|
+
return new Label(CLOSE_LABEL_ID, [], void 0, choiseIndex);
|
|
614
|
+
}
|
|
615
|
+
|
|
616
|
+
// src/types/CloseType.ts
|
|
617
|
+
var Close = "close";
|
|
618
|
+
|
|
619
|
+
// src/functions/DialogueUtility.ts
|
|
620
|
+
function setDialogue(props) {
|
|
621
|
+
let text = "";
|
|
622
|
+
let character = void 0;
|
|
623
|
+
let dialogue;
|
|
624
|
+
if (typeof props === "string") {
|
|
625
|
+
text = props;
|
|
626
|
+
dialogue = new DialogueBaseModel(text, character);
|
|
627
|
+
} else if (!(props instanceof DialogueBaseModel)) {
|
|
628
|
+
text = props.text;
|
|
629
|
+
if (props.character) {
|
|
630
|
+
if (typeof props.character === "string") {
|
|
631
|
+
character = props.character;
|
|
632
|
+
} else {
|
|
633
|
+
character = props.character.id;
|
|
634
|
+
}
|
|
635
|
+
}
|
|
636
|
+
dialogue = new DialogueBaseModel(text, character);
|
|
637
|
+
} else {
|
|
638
|
+
dialogue = props;
|
|
639
|
+
}
|
|
640
|
+
GameStorageManager.setVariable(GameStorageManager.keysSystem.CURRENT_DIALOGUE_MEMORY_KEY, dialogue);
|
|
641
|
+
GameStorageManager.setVariable(GameStorageManager.keysSystem.LAST_DIALOGUE_ADDED_IN_STEP_MEMORY_KEY, GameStepManager.lastStepIndex);
|
|
642
|
+
}
|
|
643
|
+
function getDialogue() {
|
|
644
|
+
return GameStorageManager.getVariable(GameStorageManager.keysSystem.CURRENT_DIALOGUE_MEMORY_KEY);
|
|
645
|
+
}
|
|
646
|
+
function getChoiceMenuOptions() {
|
|
647
|
+
let d = GameStorageManager.getVariable(GameStorageManager.keysSystem.CURRENT_MENU_OPTIONS_MEMORY_KEY);
|
|
648
|
+
if (d) {
|
|
649
|
+
let options = [];
|
|
650
|
+
d.forEach((option, index) => {
|
|
651
|
+
if (option.type === Close) {
|
|
652
|
+
let itemLabel = newCloseLabel(index);
|
|
653
|
+
options.push({
|
|
654
|
+
text: option.text,
|
|
655
|
+
label: itemLabel,
|
|
656
|
+
type: Close,
|
|
657
|
+
closeCurrentLabel: option.closeCurrentLabel,
|
|
658
|
+
props: {}
|
|
659
|
+
});
|
|
660
|
+
return;
|
|
661
|
+
}
|
|
662
|
+
let label = getLabelById(option.label);
|
|
663
|
+
if (label) {
|
|
664
|
+
let itemLabel = new Label(label.id, label.steps, label.onStepRun, index);
|
|
665
|
+
options.push(__spreadProps(__spreadValues({}, option), {
|
|
666
|
+
label: itemLabel
|
|
667
|
+
}));
|
|
668
|
+
}
|
|
669
|
+
});
|
|
670
|
+
return options;
|
|
671
|
+
}
|
|
672
|
+
return void 0;
|
|
673
|
+
}
|
|
674
|
+
|
|
675
|
+
// src/functions/TickerUtility.ts
|
|
676
|
+
function updateTickerProgression(args, propertyName, progression) {
|
|
677
|
+
if (args[propertyName] === void 0 || !progression || args[propertyName] === progression.limit) {
|
|
678
|
+
return;
|
|
679
|
+
}
|
|
680
|
+
if (typeof args[propertyName] === "number") {
|
|
681
|
+
if (progression.type === "linear") {
|
|
682
|
+
args[propertyName] = getLinearProgression(args[propertyName], progression);
|
|
683
|
+
} else if (progression.type === "exponential") {
|
|
684
|
+
args[propertyName] = getExponentialProgression(args[propertyName], progression);
|
|
685
|
+
}
|
|
686
|
+
} else if (args[propertyName] !== void 0 && typeof args[propertyName] === "object" && args[propertyName].haveOwnProperty("x") && args[propertyName].haveOwnProperty("y") && typeof args[propertyName].x === "number" && typeof args[propertyName].y === "number") {
|
|
687
|
+
if (progression.type === "linear") {
|
|
688
|
+
args[propertyName].x = getLinearProgression(args[propertyName].x, progression);
|
|
689
|
+
args[propertyName].y = getLinearProgression(args[propertyName].y, progression);
|
|
690
|
+
} else if (progression.type === "exponential") {
|
|
691
|
+
args[propertyName].x = getExponentialProgression(args[propertyName].x, progression);
|
|
692
|
+
args[propertyName].y = getExponentialProgression(args[propertyName].y, progression);
|
|
693
|
+
}
|
|
694
|
+
}
|
|
695
|
+
}
|
|
696
|
+
function getLinearProgression(number, progression) {
|
|
697
|
+
if (progression.limit !== void 0) {
|
|
698
|
+
if (number > progression.limit && progression.amt > 0) {
|
|
699
|
+
return progression.limit;
|
|
700
|
+
} else if (number < progression.limit && progression.amt < 0) {
|
|
701
|
+
return progression.limit;
|
|
702
|
+
}
|
|
703
|
+
}
|
|
704
|
+
return number + progression.amt / 60;
|
|
705
|
+
}
|
|
706
|
+
function getExponentialProgression(number, progression) {
|
|
707
|
+
if (progression.limit !== void 0) {
|
|
708
|
+
if (number > progression.limit && progression.percentage > 0) {
|
|
709
|
+
return progression.limit;
|
|
710
|
+
} else if (number < progression.limit && progression.percentage < 0) {
|
|
711
|
+
return progression.limit;
|
|
712
|
+
}
|
|
713
|
+
}
|
|
714
|
+
return number + number * progression.percentage;
|
|
715
|
+
}
|
|
716
|
+
|
|
717
|
+
// src/classes/ticker/TickerBase.ts
|
|
718
|
+
var TickerBase = class {
|
|
719
|
+
/**
|
|
720
|
+
* @param args The arguments that you want to pass to the ticker.
|
|
721
|
+
* @param duration The duration of the ticker in seconds. If is undefined, the step will end only when the animation is finished (if the animation doesn't have a goal to reach then it won't finish). @default undefined
|
|
722
|
+
* @param priority The priority of the ticker. @default UPDATE_PRIORITY.NORMAL
|
|
723
|
+
*/
|
|
724
|
+
constructor(args, duration, priority) {
|
|
725
|
+
/**
|
|
726
|
+
* Get the id of the ticker. This variable is used in the system to get the ticker by id, {@link geTickerInstanceById}
|
|
727
|
+
*/
|
|
728
|
+
this.id = "ticker_id_not_set";
|
|
729
|
+
this.args = args;
|
|
730
|
+
this.duration = duration;
|
|
731
|
+
this.priority = priority;
|
|
732
|
+
this.id = this.constructor.prototype.id;
|
|
733
|
+
}
|
|
734
|
+
/**
|
|
735
|
+
* The method that will be called every frame.
|
|
736
|
+
* This method should be overridden and you can use GameWindowManager.addCanvasElement() to get the canvas element of the canvas, and edit them.
|
|
737
|
+
* @param _ticker The ticker that is calling this method
|
|
738
|
+
* @param _args The arguments that you passed when you added the ticker
|
|
739
|
+
* @param _tags The tags of the canvas elements that are connected to this ticker
|
|
740
|
+
* @param _tickerId The id of the ticker. You can use this to get the ticker from the {@link GameWindowManager.currentTickers}
|
|
741
|
+
*/
|
|
742
|
+
fn(_ticker, _args, _tags, _tickerId) {
|
|
743
|
+
throw new Error("[Pixi'VN] The method TickerBase.fn() must be overridden");
|
|
744
|
+
}
|
|
745
|
+
};
|
|
746
|
+
|
|
747
|
+
// src/classes/ticker/ZoomTicker.ts
|
|
748
|
+
var ZoomTicker = class extends TickerBase {
|
|
749
|
+
fn(ticker, args, tags, tickerId) {
|
|
750
|
+
let xSpeed = 0.1;
|
|
751
|
+
let ySpeed = 0.1;
|
|
752
|
+
if (args.speed) {
|
|
753
|
+
if (typeof args.speed === "number") {
|
|
754
|
+
xSpeed = args.speed;
|
|
755
|
+
ySpeed = args.speed;
|
|
756
|
+
} else {
|
|
757
|
+
xSpeed = args.speed.x;
|
|
758
|
+
ySpeed = args.speed.y;
|
|
759
|
+
}
|
|
760
|
+
}
|
|
761
|
+
xSpeed /= 60;
|
|
762
|
+
ySpeed /= 60;
|
|
763
|
+
let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
|
|
764
|
+
if (typeof tagToRemoveAfter2 === "string") {
|
|
765
|
+
tagToRemoveAfter2 = [tagToRemoveAfter2];
|
|
766
|
+
}
|
|
767
|
+
let type = args.type || "zoom";
|
|
768
|
+
let xLimit = type === "zoom" ? Infinity : 0;
|
|
769
|
+
let yLimit = type === "zoom" ? Infinity : 0;
|
|
770
|
+
if (args.limit) {
|
|
771
|
+
if (typeof args.limit === "number") {
|
|
772
|
+
xLimit = args.limit;
|
|
773
|
+
yLimit = args.limit;
|
|
774
|
+
} else {
|
|
775
|
+
xLimit = args.limit.x;
|
|
776
|
+
yLimit = args.limit.y;
|
|
777
|
+
}
|
|
778
|
+
}
|
|
779
|
+
tags.filter((tag) => {
|
|
780
|
+
var _a;
|
|
781
|
+
let element = GameWindowManager.getCanvasElement(tag);
|
|
782
|
+
if (args.startOnlyIfHaveTexture) {
|
|
783
|
+
if (element && element instanceof Sprite && ((_a = element.texture) == null ? void 0 : _a.label) == "EMPTY") {
|
|
784
|
+
return false;
|
|
785
|
+
}
|
|
786
|
+
}
|
|
787
|
+
return true;
|
|
788
|
+
}).forEach((tag) => {
|
|
789
|
+
let element = GameWindowManager.getCanvasElement(tag);
|
|
790
|
+
if (element && element instanceof Container) {
|
|
791
|
+
if (type === "zoom" && (element.scale.x < xLimit || element.scale.y < yLimit)) {
|
|
792
|
+
element.scale.x += xSpeed * ticker.deltaTime;
|
|
793
|
+
element.scale.y += ySpeed * ticker.deltaTime;
|
|
794
|
+
} else if (type === "unzoom" && (element.scale.x > xLimit || element.scale.y > yLimit)) {
|
|
795
|
+
element.scale.x -= xSpeed * ticker.deltaTime;
|
|
796
|
+
element.scale.y -= ySpeed * ticker.deltaTime;
|
|
797
|
+
}
|
|
798
|
+
if (type === "zoom") {
|
|
799
|
+
if (element.scale.x > xLimit) {
|
|
800
|
+
element.scale.x = xLimit;
|
|
801
|
+
}
|
|
802
|
+
if (element.scale.y > yLimit) {
|
|
803
|
+
element.scale.y = yLimit;
|
|
804
|
+
}
|
|
805
|
+
if (element.scale.x >= xLimit && element.scale.y >= yLimit) {
|
|
806
|
+
element.scale.x = xLimit;
|
|
807
|
+
element.scale.y = yLimit;
|
|
808
|
+
this.onEndOfTicker(tag, tickerId, element, tagToRemoveAfter2);
|
|
809
|
+
}
|
|
810
|
+
} else if (type === "unzoom") {
|
|
811
|
+
if (element.scale.x < xLimit) {
|
|
812
|
+
element.scale.x = xLimit;
|
|
813
|
+
}
|
|
814
|
+
if (element.scale.y < yLimit) {
|
|
815
|
+
element.scale.y = yLimit;
|
|
816
|
+
}
|
|
817
|
+
if (element.scale.x <= xLimit && element.scale.y <= yLimit) {
|
|
818
|
+
element.scale.x = xLimit;
|
|
819
|
+
element.scale.y = yLimit;
|
|
820
|
+
this.onEndOfTicker(tag, tickerId, element, tagToRemoveAfter2);
|
|
821
|
+
}
|
|
822
|
+
}
|
|
823
|
+
if (xSpeed < 1e-5 && ySpeed < 1e-5 && !(args.speedProgression && args.speedProgression.type == "linear" && args.speedProgression.amt != 0)) {
|
|
824
|
+
this.onEndOfTicker(tag, tickerId, element, tagToRemoveAfter2);
|
|
825
|
+
}
|
|
568
826
|
}
|
|
569
827
|
});
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
/**
|
|
573
|
-
* 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
|
|
574
|
-
* @returns Promise<void> or void
|
|
575
|
-
* @example
|
|
576
|
-
* ```typescript
|
|
577
|
-
* newLabel("id", [], () => {
|
|
578
|
-
* Assets.load('path/to/image1.png')
|
|
579
|
-
* Assets.load('path/to/image2.png')
|
|
580
|
-
* })
|
|
581
|
-
* ```
|
|
582
|
-
*/
|
|
583
|
-
get onStepRun() {
|
|
584
|
-
return this._onStepRun;
|
|
828
|
+
if (args.speedProgression)
|
|
829
|
+
updateTickerProgression(args, "speed", args.speedProgression);
|
|
585
830
|
}
|
|
586
|
-
|
|
587
|
-
|
|
831
|
+
onEndOfTicker(tag, tickerId, _element, tagToRemoveAfter2) {
|
|
832
|
+
GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
|
|
588
833
|
}
|
|
589
834
|
};
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
function newCloseLabel(choiseIndex) {
|
|
594
|
-
return new Label(CLOSE_LABEL_ID, [], void 0, choiseIndex);
|
|
595
|
-
}
|
|
596
|
-
|
|
597
|
-
// src/functions/DialogueUtility.ts
|
|
598
|
-
function setDialogue(props) {
|
|
599
|
-
let text = "";
|
|
600
|
-
let characterId = void 0;
|
|
601
|
-
let dialogue;
|
|
602
|
-
if (typeof props === "string") {
|
|
603
|
-
text = props;
|
|
604
|
-
dialogue = new DialogueBaseModel(text, characterId);
|
|
605
|
-
} else if (!(props instanceof DialogueBaseModel)) {
|
|
606
|
-
text = props.text;
|
|
607
|
-
if (props.character) {
|
|
608
|
-
if (typeof props.character === "string") {
|
|
609
|
-
characterId = props.character;
|
|
610
|
-
} else {
|
|
611
|
-
characterId = props.character.id;
|
|
612
|
-
}
|
|
613
|
-
}
|
|
614
|
-
dialogue = new DialogueBaseModel(text, characterId);
|
|
615
|
-
} else {
|
|
616
|
-
dialogue = props;
|
|
617
|
-
}
|
|
618
|
-
GameStorageManager.setVariable(GameStorageManager.keysSystem.CURRENT_DIALOGUE_MEMORY_KEY, dialogue);
|
|
619
|
-
GameStorageManager.setVariable(GameStorageManager.keysSystem.LAST_DIALOGUE_ADDED_IN_STEP_MEMORY_KEY, GameStepManager.lastStepIndex);
|
|
620
|
-
}
|
|
621
|
-
function getDialogue() {
|
|
622
|
-
return GameStorageManager.getVariable(GameStorageManager.keysSystem.CURRENT_DIALOGUE_MEMORY_KEY);
|
|
623
|
-
}
|
|
835
|
+
ZoomTicker = __decorateClass([
|
|
836
|
+
tickerDecorator()
|
|
837
|
+
], ZoomTicker);
|
|
624
838
|
|
|
625
839
|
// src/constants.ts
|
|
626
840
|
var Repeat = "repeat";
|
|
@@ -773,31 +987,6 @@ var _GameStorageManager = class _GameStorageManager {
|
|
|
773
987
|
_GameStorageManager.storage = {};
|
|
774
988
|
var GameStorageManager = _GameStorageManager;
|
|
775
989
|
|
|
776
|
-
// src/classes/ticker/TickerBase.ts
|
|
777
|
-
var TickerBase = class {
|
|
778
|
-
/**
|
|
779
|
-
* @param args The arguments that you want to pass to the ticker.
|
|
780
|
-
* @param duration The duration of the ticker in seconds. If is undefined, the step will end only when the animation is finished (if the animation doesn't have a goal to reach then it won't finish). @default undefined
|
|
781
|
-
* @param priority The priority of the ticker. @default UPDATE_PRIORITY.NORMAL
|
|
782
|
-
*/
|
|
783
|
-
constructor(args, duration, priority) {
|
|
784
|
-
this.args = args;
|
|
785
|
-
this.duration = duration;
|
|
786
|
-
this.priority = priority;
|
|
787
|
-
}
|
|
788
|
-
/**
|
|
789
|
-
* The method that will be called every frame.
|
|
790
|
-
* This method should be overridden and you can use GameWindowManager.addCanvasElement() to get the canvas element of the canvas, and edit them.
|
|
791
|
-
* @param _ticker The ticker that is calling this method
|
|
792
|
-
* @param _args The arguments that you passed when you added the ticker
|
|
793
|
-
* @param _tags The tags of the canvas elements that are connected to this ticker
|
|
794
|
-
* @param _tickerId The id of the ticker. You can use this to get the ticker from the {@link GameWindowManager.currentTickers}
|
|
795
|
-
*/
|
|
796
|
-
fn(_ticker, _args, _tags, _tickerId) {
|
|
797
|
-
throw new Error("[Pixi'VN] The method TickerBase.fn() must be overridden");
|
|
798
|
-
}
|
|
799
|
-
};
|
|
800
|
-
|
|
801
990
|
// src/decorators/TickerDecorator.ts
|
|
802
991
|
var registeredTickers = {};
|
|
803
992
|
function tickerDecorator(name) {
|
|
@@ -808,19 +997,20 @@ function tickerDecorator(name) {
|
|
|
808
997
|
if (registeredTickers[name]) {
|
|
809
998
|
console.info(`[Pixi'VN] Ticker ${name} already exists, it will be overwritten`);
|
|
810
999
|
}
|
|
1000
|
+
target.prototype.id = name;
|
|
811
1001
|
registeredTickers[name] = target;
|
|
812
1002
|
};
|
|
813
1003
|
}
|
|
814
|
-
function
|
|
1004
|
+
function geTickerInstanceById(tickerId, args, duration, priority) {
|
|
815
1005
|
try {
|
|
816
|
-
let ticker = registeredTickers[
|
|
1006
|
+
let ticker = registeredTickers[tickerId];
|
|
817
1007
|
if (!ticker) {
|
|
818
|
-
console.error(`[Pixi'VN] Ticker ${
|
|
1008
|
+
console.error(`[Pixi'VN] Ticker ${tickerId} not found`);
|
|
819
1009
|
return;
|
|
820
1010
|
}
|
|
821
1011
|
return new ticker(args, duration, priority);
|
|
822
1012
|
} catch (e) {
|
|
823
|
-
console.error(`[Pixi'VN] Error while getting Ticker ${
|
|
1013
|
+
console.error(`[Pixi'VN] Error while getting Ticker ${tickerId}`, e);
|
|
824
1014
|
return;
|
|
825
1015
|
}
|
|
826
1016
|
}
|
|
@@ -1149,18 +1339,18 @@ var _GameWindowManager = class _GameWindowManager {
|
|
|
1149
1339
|
* ```
|
|
1150
1340
|
*/
|
|
1151
1341
|
static addTicker(canvasElementTag, ticker) {
|
|
1152
|
-
let
|
|
1342
|
+
let tickerId = ticker.id;
|
|
1153
1343
|
if (typeof canvasElementTag === "string") {
|
|
1154
1344
|
canvasElementTag = [canvasElementTag];
|
|
1155
1345
|
}
|
|
1156
|
-
if (!
|
|
1157
|
-
console.error(`[Pixi'VN] Ticker ${
|
|
1346
|
+
if (!geTickerInstanceById(tickerId, ticker.args, ticker.duration, ticker.priority)) {
|
|
1347
|
+
console.error(`[Pixi'VN] Ticker ${tickerId} not found`);
|
|
1158
1348
|
return;
|
|
1159
1349
|
}
|
|
1160
1350
|
let tickerHistory = {
|
|
1161
1351
|
fn: () => {
|
|
1162
1352
|
},
|
|
1163
|
-
|
|
1353
|
+
id: tickerId,
|
|
1164
1354
|
args: createExportableElement(ticker.args),
|
|
1165
1355
|
canvasElementTags: canvasElementTag,
|
|
1166
1356
|
priority: ticker.priority,
|
|
@@ -1176,11 +1366,11 @@ var _GameWindowManager = class _GameWindowManager {
|
|
|
1176
1366
|
_GameWindowManager.removeTicker(id);
|
|
1177
1367
|
}
|
|
1178
1368
|
}, ticker.duration * 1e3);
|
|
1179
|
-
_GameWindowManager.addTickerTimeoutInfo(canvasElementTag,
|
|
1369
|
+
_GameWindowManager.addTickerTimeoutInfo(canvasElementTag, tickerId, timeout.toString(), true);
|
|
1180
1370
|
}
|
|
1181
1371
|
}
|
|
1182
1372
|
static pushTicker(id, tickerData, ticker) {
|
|
1183
|
-
_GameWindowManager.removeAssociationBetweenTickerCanvasElement(tickerData.canvasElementTags,
|
|
1373
|
+
_GameWindowManager.removeAssociationBetweenTickerCanvasElement(tickerData.canvasElementTags, ticker);
|
|
1184
1374
|
_GameWindowManager._currentTickers[id] = tickerData;
|
|
1185
1375
|
tickerData.fn = (t) => {
|
|
1186
1376
|
let data = _GameWindowManager._currentTickers[id];
|
|
@@ -1221,9 +1411,9 @@ var _GameWindowManager = class _GameWindowManager {
|
|
|
1221
1411
|
if (step.hasOwnProperty("type") && step.type === "pause") {
|
|
1222
1412
|
return step;
|
|
1223
1413
|
}
|
|
1224
|
-
let
|
|
1414
|
+
let tickerId = step.id;
|
|
1225
1415
|
return {
|
|
1226
|
-
ticker:
|
|
1416
|
+
ticker: tickerId,
|
|
1227
1417
|
args: createExportableElement(step.args),
|
|
1228
1418
|
duration: step.duration
|
|
1229
1419
|
};
|
|
@@ -1261,16 +1451,16 @@ var _GameWindowManager = class _GameWindowManager {
|
|
|
1261
1451
|
_GameWindowManager.addTickerTimeoutInfo(tag, "steps", timeout.toString(), false);
|
|
1262
1452
|
return;
|
|
1263
1453
|
}
|
|
1264
|
-
let ticker =
|
|
1454
|
+
let ticker = geTickerInstanceById(step.ticker, step.args, step.duration, step.priority);
|
|
1265
1455
|
if (!ticker) {
|
|
1266
1456
|
console.error(`[Pixi'VN] Ticker ${step.ticker} not found`);
|
|
1267
1457
|
return;
|
|
1268
1458
|
}
|
|
1269
|
-
let tickerName = ticker.
|
|
1459
|
+
let tickerName = ticker.id;
|
|
1270
1460
|
let tickerHistory = {
|
|
1271
1461
|
fn: () => {
|
|
1272
1462
|
},
|
|
1273
|
-
|
|
1463
|
+
id: tickerName,
|
|
1274
1464
|
args: createExportableElement(ticker.args),
|
|
1275
1465
|
canvasElementTags: [tag],
|
|
1276
1466
|
priority: ticker.priority,
|
|
@@ -1327,26 +1517,26 @@ var _GameWindowManager = class _GameWindowManager {
|
|
|
1327
1517
|
* ```
|
|
1328
1518
|
*/
|
|
1329
1519
|
static removeAssociationBetweenTickerCanvasElement(tags, ticker) {
|
|
1330
|
-
let
|
|
1520
|
+
let tickerId;
|
|
1331
1521
|
if (typeof ticker === "string") {
|
|
1332
|
-
|
|
1522
|
+
tickerId = ticker;
|
|
1333
1523
|
} else if (ticker instanceof TickerBase) {
|
|
1334
|
-
|
|
1524
|
+
tickerId = ticker.id;
|
|
1335
1525
|
} else {
|
|
1336
|
-
|
|
1526
|
+
tickerId = ticker.prototype.id;
|
|
1337
1527
|
}
|
|
1338
1528
|
if (typeof tags === "string") {
|
|
1339
1529
|
tags = [tags];
|
|
1340
1530
|
}
|
|
1341
1531
|
for (let id in _GameWindowManager._currentTickers) {
|
|
1342
1532
|
let ticker2 = _GameWindowManager._currentTickers[id];
|
|
1343
|
-
if (ticker2.
|
|
1533
|
+
if (ticker2.id === tickerId) {
|
|
1344
1534
|
_GameWindowManager._currentTickers[id].canvasElementTags = ticker2.canvasElementTags.filter((e) => !tags.includes(e));
|
|
1345
1535
|
}
|
|
1346
1536
|
}
|
|
1347
1537
|
for (let timeout in _GameWindowManager._currentTickersTimeouts) {
|
|
1348
1538
|
let TickerTimeout = _GameWindowManager._currentTickersTimeouts[timeout];
|
|
1349
|
-
if (TickerTimeout.ticker ===
|
|
1539
|
+
if (TickerTimeout.ticker === tickerId && TickerTimeout.canBeDeletedBeforeEnd) {
|
|
1350
1540
|
_GameWindowManager._currentTickersTimeouts[timeout].tags = TickerTimeout.tags.filter((t) => !tags.includes(t));
|
|
1351
1541
|
}
|
|
1352
1542
|
}
|
|
@@ -1532,11 +1722,11 @@ var _GameWindowManager = class _GameWindowManager {
|
|
|
1532
1722
|
for (let id in currentTickers) {
|
|
1533
1723
|
let t = currentTickers[id];
|
|
1534
1724
|
let tags = t.canvasElementTags;
|
|
1535
|
-
let ticker =
|
|
1725
|
+
let ticker = geTickerInstanceById(t.id, t.args, t.duration, t.priority);
|
|
1536
1726
|
if (ticker) {
|
|
1537
1727
|
_GameWindowManager.addTicker(tags, ticker);
|
|
1538
1728
|
} else {
|
|
1539
|
-
console.error(`[Pixi'VN] Ticker ${t.
|
|
1729
|
+
console.error(`[Pixi'VN] Ticker ${t.id} not found`);
|
|
1540
1730
|
}
|
|
1541
1731
|
}
|
|
1542
1732
|
}
|
|
@@ -1737,6 +1927,13 @@ var _GameStepManager = class _GameStepManager {
|
|
|
1737
1927
|
_GameStepManager._openedLabels = _GameStepManager.originalStepData.openedLabels;
|
|
1738
1928
|
}
|
|
1739
1929
|
/* Run Methods */
|
|
1930
|
+
static get canGoNext() {
|
|
1931
|
+
let options = getChoiceMenuOptions();
|
|
1932
|
+
if (options && options.length > 0) {
|
|
1933
|
+
return false;
|
|
1934
|
+
}
|
|
1935
|
+
return true;
|
|
1936
|
+
}
|
|
1740
1937
|
/**
|
|
1741
1938
|
* Execute the next step and add it to the history.
|
|
1742
1939
|
* @param props The props to pass to the step.
|
|
@@ -1746,7 +1943,7 @@ var _GameStepManager = class _GameStepManager {
|
|
|
1746
1943
|
* ```typescript
|
|
1747
1944
|
* function nextOnClick() {
|
|
1748
1945
|
* setLoading(true)
|
|
1749
|
-
* GameStepManager.
|
|
1946
|
+
* GameStepManager.goNext(yourParams)
|
|
1750
1947
|
* .then((result) => {
|
|
1751
1948
|
* setUpdate((p) => p + 1)
|
|
1752
1949
|
* setLoading(false)
|
|
@@ -1761,8 +1958,12 @@ var _GameStepManager = class _GameStepManager {
|
|
|
1761
1958
|
* }
|
|
1762
1959
|
* ```
|
|
1763
1960
|
*/
|
|
1764
|
-
static
|
|
1961
|
+
static goNext(props, choiseMade) {
|
|
1765
1962
|
return __async(this, null, function* () {
|
|
1963
|
+
if (!_GameStepManager.canGoNext) {
|
|
1964
|
+
console.warn("[Pixi'VN] The player must make a choice");
|
|
1965
|
+
return;
|
|
1966
|
+
}
|
|
1766
1967
|
_GameStepManager.increaseCurrentStepIndex();
|
|
1767
1968
|
return yield _GameStepManager.runCurrentStep(props, choiseMade);
|
|
1768
1969
|
});
|
|
@@ -1793,7 +1994,7 @@ var _GameStepManager = class _GameStepManager {
|
|
|
1793
1994
|
return result;
|
|
1794
1995
|
} else if (_GameStepManager.openedLabels.length > 1) {
|
|
1795
1996
|
_GameStepManager.closeCurrentLabel();
|
|
1796
|
-
return yield _GameStepManager.
|
|
1997
|
+
return yield _GameStepManager.goNext(props, choiseMade);
|
|
1797
1998
|
} else {
|
|
1798
1999
|
_GameStepManager.restorLastLabelList();
|
|
1799
2000
|
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");
|
|
@@ -1941,7 +2142,7 @@ var _GameStepManager = class _GameStepManager {
|
|
|
1941
2142
|
if (choice.closeCurrentLabel) {
|
|
1942
2143
|
_GameStepManager.closeCurrentLabel();
|
|
1943
2144
|
}
|
|
1944
|
-
return _GameStepManager.
|
|
2145
|
+
return _GameStepManager.goNext(props, choiseMade);
|
|
1945
2146
|
});
|
|
1946
2147
|
}
|
|
1947
2148
|
/* After Update Methods */
|
|
@@ -2155,15 +2356,15 @@ var DialogueBaseModel = class {
|
|
|
2155
2356
|
if (typeof text === "string") {
|
|
2156
2357
|
this.text = text;
|
|
2157
2358
|
if (typeof character === "string") {
|
|
2158
|
-
this.
|
|
2359
|
+
this.character = character;
|
|
2159
2360
|
} else {
|
|
2160
|
-
this.
|
|
2361
|
+
this.character = character == null ? void 0 : character.id;
|
|
2161
2362
|
}
|
|
2162
2363
|
this.oltherParams = oltherParams;
|
|
2163
2364
|
} else {
|
|
2164
2365
|
this.text = text.text;
|
|
2165
|
-
if (text.
|
|
2166
|
-
this.
|
|
2366
|
+
if (text.character) {
|
|
2367
|
+
this.character = text.character;
|
|
2167
2368
|
}
|
|
2168
2369
|
this.oltherParams = text.oltherParams || {};
|
|
2169
2370
|
}
|
|
@@ -2176,7 +2377,7 @@ var DialogueBaseModel = class {
|
|
|
2176
2377
|
export() {
|
|
2177
2378
|
return {
|
|
2178
2379
|
text: this.text,
|
|
2179
|
-
|
|
2380
|
+
character: this.character,
|
|
2180
2381
|
oltherParams: this.oltherParams
|
|
2181
2382
|
};
|
|
2182
2383
|
}
|
|
@@ -2249,50 +2450,6 @@ var FadeAlphaTicker = class extends TickerBase {
|
|
|
2249
2450
|
FadeAlphaTicker = __decorateClass([
|
|
2250
2451
|
tickerDecorator()
|
|
2251
2452
|
], FadeAlphaTicker);
|
|
2252
|
-
|
|
2253
|
-
// src/functions/TickerUtility.ts
|
|
2254
|
-
function updateTickerProgression(args, propertyName, progression) {
|
|
2255
|
-
if (args[propertyName] === void 0 || !progression || args[propertyName] === progression.limit) {
|
|
2256
|
-
return;
|
|
2257
|
-
}
|
|
2258
|
-
if (typeof args[propertyName] === "number") {
|
|
2259
|
-
if (progression.type === "linear") {
|
|
2260
|
-
args[propertyName] = getLinearProgression(args[propertyName], progression);
|
|
2261
|
-
} else if (progression.type === "exponential") {
|
|
2262
|
-
args[propertyName] = getExponentialProgression(args[propertyName], progression);
|
|
2263
|
-
}
|
|
2264
|
-
} else if (args[propertyName] !== void 0 && typeof args[propertyName] === "object" && args[propertyName].haveOwnProperty("x") && args[propertyName].haveOwnProperty("y") && typeof args[propertyName].x === "number" && typeof args[propertyName].y === "number") {
|
|
2265
|
-
if (progression.type === "linear") {
|
|
2266
|
-
args[propertyName].x = getLinearProgression(args[propertyName].x, progression);
|
|
2267
|
-
args[propertyName].y = getLinearProgression(args[propertyName].y, progression);
|
|
2268
|
-
} else if (progression.type === "exponential") {
|
|
2269
|
-
args[propertyName].x = getExponentialProgression(args[propertyName].x, progression);
|
|
2270
|
-
args[propertyName].y = getExponentialProgression(args[propertyName].y, progression);
|
|
2271
|
-
}
|
|
2272
|
-
}
|
|
2273
|
-
}
|
|
2274
|
-
function getLinearProgression(number, progression) {
|
|
2275
|
-
if (progression.limit !== void 0) {
|
|
2276
|
-
if (number > progression.limit && progression.amt > 0) {
|
|
2277
|
-
return progression.limit;
|
|
2278
|
-
} else if (number < progression.limit && progression.amt < 0) {
|
|
2279
|
-
return progression.limit;
|
|
2280
|
-
}
|
|
2281
|
-
}
|
|
2282
|
-
return number + progression.amt / 60;
|
|
2283
|
-
}
|
|
2284
|
-
function getExponentialProgression(number, progression) {
|
|
2285
|
-
if (progression.limit !== void 0) {
|
|
2286
|
-
if (number > progression.limit && progression.percentage > 0) {
|
|
2287
|
-
return progression.limit;
|
|
2288
|
-
} else if (number < progression.limit && progression.percentage < 0) {
|
|
2289
|
-
return progression.limit;
|
|
2290
|
-
}
|
|
2291
|
-
}
|
|
2292
|
-
return number + number * progression.percentage;
|
|
2293
|
-
}
|
|
2294
|
-
|
|
2295
|
-
// src/classes/ticker/MoveTicker.ts
|
|
2296
2453
|
var MoveTicker = class extends TickerBase {
|
|
2297
2454
|
fn(ticker, args, tags, tickerId) {
|
|
2298
2455
|
let xSpeed = 1;
|
|
@@ -2389,93 +2546,6 @@ var RotateTicker = class extends TickerBase {
|
|
|
2389
2546
|
RotateTicker = __decorateClass([
|
|
2390
2547
|
tickerDecorator()
|
|
2391
2548
|
], RotateTicker);
|
|
2392
|
-
var ZoomTicker = class extends TickerBase {
|
|
2393
|
-
fn(ticker, args, tags, tickerId) {
|
|
2394
|
-
let xSpeed = 0.1;
|
|
2395
|
-
let ySpeed = 0.1;
|
|
2396
|
-
if (args.speed) {
|
|
2397
|
-
if (typeof args.speed === "number") {
|
|
2398
|
-
xSpeed = args.speed;
|
|
2399
|
-
ySpeed = args.speed;
|
|
2400
|
-
} else {
|
|
2401
|
-
xSpeed = args.speed.x;
|
|
2402
|
-
ySpeed = args.speed.y;
|
|
2403
|
-
}
|
|
2404
|
-
}
|
|
2405
|
-
xSpeed /= 60;
|
|
2406
|
-
ySpeed /= 60;
|
|
2407
|
-
let tagToRemoveAfter2 = args.tagToRemoveAfter || [];
|
|
2408
|
-
if (typeof tagToRemoveAfter2 === "string") {
|
|
2409
|
-
tagToRemoveAfter2 = [tagToRemoveAfter2];
|
|
2410
|
-
}
|
|
2411
|
-
let type = args.type || "zoom";
|
|
2412
|
-
let xLimit = Infinity;
|
|
2413
|
-
let yLimit = Infinity;
|
|
2414
|
-
if (args.limit) {
|
|
2415
|
-
if (typeof args.limit === "number") {
|
|
2416
|
-
xLimit = args.limit;
|
|
2417
|
-
yLimit = args.limit;
|
|
2418
|
-
} else {
|
|
2419
|
-
xLimit = args.limit.x;
|
|
2420
|
-
yLimit = args.limit.y;
|
|
2421
|
-
}
|
|
2422
|
-
}
|
|
2423
|
-
tags.filter((tag) => {
|
|
2424
|
-
var _a;
|
|
2425
|
-
let element = GameWindowManager.getCanvasElement(tag);
|
|
2426
|
-
if (args.startOnlyIfHaveTexture) {
|
|
2427
|
-
if (element && element instanceof Sprite && ((_a = element.texture) == null ? void 0 : _a.label) == "EMPTY") {
|
|
2428
|
-
return false;
|
|
2429
|
-
}
|
|
2430
|
-
}
|
|
2431
|
-
return true;
|
|
2432
|
-
}).forEach((tag) => {
|
|
2433
|
-
let element = GameWindowManager.getCanvasElement(tag);
|
|
2434
|
-
if (element && element instanceof Container) {
|
|
2435
|
-
if (type === "zoom" && (element.scale.x < xLimit || element.scale.y < yLimit)) {
|
|
2436
|
-
element.scale.x += xSpeed * ticker.deltaTime;
|
|
2437
|
-
element.scale.y += ySpeed * ticker.deltaTime;
|
|
2438
|
-
} else if (type === "unzoom" && (element.scale.x > xLimit || element.scale.y > yLimit)) {
|
|
2439
|
-
element.scale.x -= xSpeed * ticker.deltaTime;
|
|
2440
|
-
element.scale.y -= ySpeed * ticker.deltaTime;
|
|
2441
|
-
}
|
|
2442
|
-
if (type === "zoom") {
|
|
2443
|
-
if (element.scale.x > xLimit) {
|
|
2444
|
-
element.scale.x = xLimit;
|
|
2445
|
-
}
|
|
2446
|
-
if (element.scale.y > yLimit) {
|
|
2447
|
-
element.scale.y = yLimit;
|
|
2448
|
-
}
|
|
2449
|
-
if (element.scale.x >= xLimit && element.scale.y >= yLimit) {
|
|
2450
|
-
element.scale.x = xLimit;
|
|
2451
|
-
element.scale.y = yLimit;
|
|
2452
|
-
GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
|
|
2453
|
-
}
|
|
2454
|
-
} else if (type === "unzoom") {
|
|
2455
|
-
if (element.scale.x < xLimit) {
|
|
2456
|
-
element.scale.x = xLimit;
|
|
2457
|
-
}
|
|
2458
|
-
if (element.scale.y < yLimit) {
|
|
2459
|
-
element.scale.y = yLimit;
|
|
2460
|
-
}
|
|
2461
|
-
if (element.scale.x <= xLimit && element.scale.y <= yLimit) {
|
|
2462
|
-
element.scale.x = xLimit;
|
|
2463
|
-
element.scale.y = yLimit;
|
|
2464
|
-
GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
|
|
2465
|
-
}
|
|
2466
|
-
}
|
|
2467
|
-
if (xSpeed < 1e-5 && ySpeed < 1e-5 && !(args.speedProgression && args.speedProgression.type == "linear" && args.speedProgression.amt != 0)) {
|
|
2468
|
-
GameWindowManager.onEndOfTicker(tag, this, tagToRemoveAfter2, tickerId);
|
|
2469
|
-
}
|
|
2470
|
-
}
|
|
2471
|
-
});
|
|
2472
|
-
if (args.speedProgression)
|
|
2473
|
-
updateTickerProgression(args, "speed", args.speedProgression);
|
|
2474
|
-
}
|
|
2475
|
-
};
|
|
2476
|
-
ZoomTicker = __decorateClass([
|
|
2477
|
-
tickerDecorator()
|
|
2478
|
-
], ZoomTicker);
|
|
2479
2549
|
|
|
2480
2550
|
// src/labels/TickerTestLabel.ts
|
|
2481
2551
|
var alien1Tag = "alien1";
|