@urso/core 0.8.20-dev → 0.9.0-dev
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/LICENSE +20 -20
- package/README.md +227 -227
- package/build/js/index.js +77216 -2
- package/package.json +36 -50
- package/src/js/app.js +105 -104
- package/src/js/components/base/controller.js +76 -78
- package/src/js/components/debug/controller.js +39 -39
- package/src/js/components/debug/coords.js +23 -23
- package/src/js/components/debug/fps.js +36 -36
- package/src/js/components/debug/template.js +55 -55
- package/src/js/components/debug/timescale.js +60 -60
- package/src/js/components/deviceRotate/controller.js +95 -95
- package/src/js/components/editor/api.js +127 -127
- package/src/js/components/editor/controller.js +13 -13
- package/src/js/components/fullscreen/android.js +104 -104
- package/src/js/components/fullscreen/controller.js +76 -76
- package/src/js/components/fullscreen/desktop.js +49 -49
- package/src/js/components/fullscreen/ios.js +115 -115
- package/src/js/components/layersSwitcher/config.js +26 -26
- package/src/js/components/layersSwitcher/controller.js +36 -36
- package/src/js/components/loader/controller.js +66 -66
- package/src/js/components/loader/template.js +71 -71
- package/src/js/components/soundInitialPopup/controller.js +43 -43
- package/src/js/components/soundInitialPopup/template.js +110 -110
- package/src/js/components/stateDriven/controller.js +123 -123
- package/src/js/config/load.js +325 -194
- package/src/js/config/main.js +17 -17
- package/src/js/extra/browserEvents.js +57 -57
- package/src/js/extra/main.js +23 -25
- package/src/js/extra/pixiPatch.js +173 -171
- package/src/js/index.js +7 -7
- package/src/js/lib/cache.js +199 -125
- package/src/js/lib/composition.js +85 -85
- package/src/js/lib/device.js +1215 -1215
- package/src/js/lib/helper.js +678 -678
- package/src/js/lib/loader.js +216 -218
- package/src/js/lib/localData.js +29 -29
- package/src/js/lib/logger.js +69 -69
- package/src/js/lib/math.js +161 -161
- package/src/js/lib/objectPool.js +208 -208
- package/src/js/lib/time.js +19 -19
- package/src/js/lib/tween.js +153 -153
- package/src/js/modules/assets/baseModel.js +21 -21
- package/src/js/modules/assets/config.js +38 -38
- package/src/js/modules/assets/controller.js +65 -65
- package/src/js/modules/assets/models/atlas.js +19 -19
- package/src/js/modules/assets/models/audiosprite.js +28 -28
- package/src/js/modules/assets/models/bitmapFont.js +11 -11
- package/src/js/modules/assets/models/container.js +19 -19
- package/src/js/modules/assets/models/font.js +11 -11
- package/src/js/modules/assets/models/html.js +11 -11
- package/src/js/modules/assets/models/image.js +17 -17
- package/src/js/modules/assets/models/json.js +11 -11
- package/src/js/modules/assets/models/jsonAtlas.js +11 -11
- package/src/js/modules/assets/models/sound.js +17 -17
- package/src/js/modules/assets/models/spine.js +18 -17
- package/src/js/modules/assets/models/spineAtlas.js +11 -0
- package/src/js/modules/assets/service.js +564 -553
- package/src/js/modules/i18n/config.js +17 -17
- package/src/js/modules/i18n/controller.js +71 -71
- package/src/js/modules/instances/controller.js +357 -357
- package/src/js/modules/logic/config/sounds.js +23 -23
- package/src/js/modules/logic/controller.js +52 -52
- package/src/js/modules/logic/main.js +8 -8
- package/src/js/modules/logic/sounds.js +103 -103
- package/src/js/modules/objects/baseModel.js +205 -207
- package/src/js/modules/objects/cache.js +99 -99
- package/src/js/modules/objects/config.js +10 -10
- package/src/js/modules/objects/controller.js +139 -139
- package/src/js/modules/objects/find.js +58 -58
- package/src/js/modules/objects/models/bitmapText.js +56 -49
- package/src/js/modules/objects/models/button.js +208 -209
- package/src/js/modules/objects/models/buttonComposite.js +38 -38
- package/src/js/modules/objects/models/checkbox.js +100 -100
- package/src/js/modules/objects/models/collection.js +56 -54
- package/src/js/modules/objects/models/component.js +48 -48
- package/src/js/modules/objects/models/container.js +22 -22
- package/src/js/modules/objects/models/emitterFx.js +103 -114
- package/src/js/modules/objects/models/graphics.js +40 -40
- package/src/js/modules/objects/models/group.js +22 -22
- package/src/js/modules/objects/models/hitArea.js +187 -187
- package/src/js/modules/objects/models/image.js +36 -36
- package/src/js/modules/objects/models/imagesAnimation.js +115 -115
- package/src/js/modules/objects/models/mask.js +40 -40
- package/src/js/modules/objects/models/nineSlicePlane.js +32 -32
- package/src/js/modules/objects/models/slider.js +357 -357
- package/src/js/modules/objects/models/spine.js +354 -339
- package/src/js/modules/objects/models/text.js +70 -70
- package/src/js/modules/objects/models/toggle.js +186 -186
- package/src/js/modules/objects/models/world.js +22 -22
- package/src/js/modules/objects/pool.js +68 -68
- package/src/js/modules/objects/propertyAdapter.js +592 -592
- package/src/js/modules/objects/proxy.js +299 -298
- package/src/js/modules/objects/selector.js +136 -136
- package/src/js/modules/objects/service.js +255 -254
- package/src/js/modules/objects/styles.js +210 -210
- package/src/js/modules/observer/controller.js +168 -168
- package/src/js/modules/observer/events.js +51 -56
- package/src/js/modules/scenes/controller.js +126 -127
- package/src/js/modules/scenes/model.js +28 -28
- package/src/js/modules/scenes/pixiWrapper.js +359 -351
- package/src/js/modules/scenes/resolutions.js +173 -173
- package/src/js/modules/scenes/resolutionsConfig.js +73 -73
- package/src/js/modules/scenes/service.js +144 -146
- package/src/js/modules/soundManager/controller.js +103 -103
- package/src/js/modules/soundManager/soundSprite.js +314 -314
- package/src/js/modules/statesManager/action.js +97 -97
- package/src/js/modules/statesManager/all.js +23 -23
- package/src/js/modules/statesManager/configStates.js +77 -77
- package/src/js/modules/statesManager/controller.js +219 -219
- package/src/js/modules/statesManager/functionsStorage.js +83 -83
- package/src/js/modules/statesManager/helper.js +27 -27
- package/src/js/modules/statesManager/race.js +91 -91
- package/src/js/modules/statesManager/sequence.js +48 -48
- package/src/js/modules/template/controller.js +28 -28
- package/src/js/modules/template/model.js +11 -11
- package/src/js/modules/template/service.js +137 -137
- package/src/js/modules/template/types.js +50 -49
- package/src/js/modules/transport/baseConnectionType.js +25 -25
- package/src/js/modules/transport/config.js +13 -13
- package/src/js/modules/transport/connectionTypes/websocket.js +77 -77
- package/src/js/modules/transport/connectionTypes/xhr.js +47 -47
- package/src/js/modules/transport/controller.js +48 -48
- package/src/js/modules/transport/decorator.js +17 -17
- package/src/js/modules/transport/service.js +150 -150
- package/vite.config.js +31 -0
- package/.babelrc +0 -12
- package/build/js/index.js.LICENSE.txt +0 -227
- package/src/js/modules/objects/models/atlasImage.js +0 -52
- package/src/js/modules/objects/models/dragContainer.js +0 -665
- package/src/js/modules/objects/models/emitter.js +0 -69
- package/src/js/modules/objects/models/scrollbox.js +0 -67
- package/src/js/modules/objects/models/textInput.js +0 -68
- package/webpack.config.js +0 -47
package/src/js/lib/tween.js
CHANGED
|
@@ -1,153 +1,153 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @deprecated
|
|
3
|
-
* tween interface over gsap timeline
|
|
4
|
-
*/
|
|
5
|
-
class LibTween {
|
|
6
|
-
|
|
7
|
-
constructor() {
|
|
8
|
-
this.singleton = true;
|
|
9
|
-
|
|
10
|
-
this._tweenIndex = 0;
|
|
11
|
-
this._tweens = {};
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
removeAll() {
|
|
15
|
-
for (let k in this._tweens)
|
|
16
|
-
this._tweens[k].stop();
|
|
17
|
-
|
|
18
|
-
this._tweens = {};
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
add(object) {
|
|
22
|
-
const key = this._keyGenerate();
|
|
23
|
-
|
|
24
|
-
const tl = gsap.timeline({
|
|
25
|
-
repeat: 1,
|
|
26
|
-
onComplete: () => { this._onCompleteHandler(key) },
|
|
27
|
-
onUpdate: () => { this._onUpdateHandler(key) }
|
|
28
|
-
});
|
|
29
|
-
|
|
30
|
-
const tween = {
|
|
31
|
-
id: key,
|
|
32
|
-
isRunning: false,
|
|
33
|
-
target: object,
|
|
34
|
-
to: this._to,
|
|
35
|
-
start: this._start,
|
|
36
|
-
pause: this._pause,
|
|
37
|
-
resume: this._resume,
|
|
38
|
-
stop: this._stop,
|
|
39
|
-
|
|
40
|
-
_timeScale: 1,
|
|
41
|
-
get timeScale() {
|
|
42
|
-
return this._timeScale;
|
|
43
|
-
}, set timeScale(a) {
|
|
44
|
-
return this._timeScale;
|
|
45
|
-
},
|
|
46
|
-
_timeline: tl,
|
|
47
|
-
_complete: false,
|
|
48
|
-
_paused: true,
|
|
49
|
-
_functions: {
|
|
50
|
-
onStart: [],
|
|
51
|
-
onUpdate: [],
|
|
52
|
-
onComplete: []
|
|
53
|
-
}
|
|
54
|
-
};
|
|
55
|
-
|
|
56
|
-
//need to add some functions
|
|
57
|
-
tween.onComplete = {
|
|
58
|
-
add: (f) => {
|
|
59
|
-
tween._functions.onComplete.push(f);
|
|
60
|
-
return tween;
|
|
61
|
-
}
|
|
62
|
-
};
|
|
63
|
-
|
|
64
|
-
tween.onStart = {
|
|
65
|
-
add: (f) => {
|
|
66
|
-
tween._functions.onStart.push(f);
|
|
67
|
-
return tween;
|
|
68
|
-
}
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
tween.onUpdate = {
|
|
72
|
-
add: (f) => {
|
|
73
|
-
tween._functions.onUpdate.push(f);
|
|
74
|
-
return tween;
|
|
75
|
-
}
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
this._tweens[key] = tween;
|
|
79
|
-
|
|
80
|
-
return tween;
|
|
81
|
-
};
|
|
82
|
-
|
|
83
|
-
_keyGenerate() {
|
|
84
|
-
this._tweenIndex++;
|
|
85
|
-
return (new Date()).getTime() + '_' + this._tweenIndex;
|
|
86
|
-
};
|
|
87
|
-
|
|
88
|
-
//todo easing
|
|
89
|
-
_to(propsTo, duration, easing = undefined, autostart = false, startDelay = 0) {
|
|
90
|
-
const params = Urso.helper.objectClone(propsTo, 10);
|
|
91
|
-
params.duration = duration / 1000;
|
|
92
|
-
params.easing = easing;
|
|
93
|
-
params.delay = startDelay;
|
|
94
|
-
|
|
95
|
-
this._timeline.to(this.target, params);
|
|
96
|
-
//this.pause();
|
|
97
|
-
|
|
98
|
-
if (autostart)
|
|
99
|
-
this.start();
|
|
100
|
-
|
|
101
|
-
return this;
|
|
102
|
-
};
|
|
103
|
-
|
|
104
|
-
_start() {
|
|
105
|
-
for (let i = 0; i < this._functions.onStart.length; i++)
|
|
106
|
-
this._functions.onStart[i]();
|
|
107
|
-
|
|
108
|
-
this.resume();
|
|
109
|
-
return this;
|
|
110
|
-
};
|
|
111
|
-
|
|
112
|
-
_pause() {
|
|
113
|
-
this._paused = true;
|
|
114
|
-
this.isRunning = false;
|
|
115
|
-
this._timeline.pause();
|
|
116
|
-
|
|
117
|
-
return this;
|
|
118
|
-
};
|
|
119
|
-
|
|
120
|
-
_resume() {
|
|
121
|
-
this._paused = false;
|
|
122
|
-
this.isRunning = true;
|
|
123
|
-
this._timeline.resume();
|
|
124
|
-
|
|
125
|
-
return this;
|
|
126
|
-
};
|
|
127
|
-
|
|
128
|
-
_stop() {
|
|
129
|
-
this.pause();
|
|
130
|
-
this._timeline.kill();
|
|
131
|
-
this._complete = true;
|
|
132
|
-
|
|
133
|
-
return this;
|
|
134
|
-
};
|
|
135
|
-
|
|
136
|
-
_onUpdateHandler(tweenKey) {
|
|
137
|
-
const tween = this._tweens[tweenKey];
|
|
138
|
-
const percentage = ~~(tween._timeline.progress() * 100);
|
|
139
|
-
|
|
140
|
-
for (let i = 0; i < tween._functions.onUpdate.length; i++)
|
|
141
|
-
tween._functions.onUpdate[i](tween, percentage);
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
_onCompleteHandler(tweenKey) {
|
|
145
|
-
const tween = this._tweens[tweenKey];
|
|
146
|
-
const onComplete = tween._functions.onComplete;
|
|
147
|
-
|
|
148
|
-
for (let i = 0; i < onComplete.length; i++)
|
|
149
|
-
onComplete[i]();
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
|
|
1
|
+
/**
|
|
2
|
+
* @deprecated
|
|
3
|
+
* tween interface over gsap timeline
|
|
4
|
+
*/
|
|
5
|
+
class LibTween {
|
|
6
|
+
|
|
7
|
+
constructor() {
|
|
8
|
+
this.singleton = true;
|
|
9
|
+
|
|
10
|
+
this._tweenIndex = 0;
|
|
11
|
+
this._tweens = {};
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
removeAll() {
|
|
15
|
+
for (let k in this._tweens)
|
|
16
|
+
this._tweens[k].stop();
|
|
17
|
+
|
|
18
|
+
this._tweens = {};
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
add(object) {
|
|
22
|
+
const key = this._keyGenerate();
|
|
23
|
+
|
|
24
|
+
const tl = gsap.timeline({
|
|
25
|
+
repeat: 1,
|
|
26
|
+
onComplete: () => { this._onCompleteHandler(key) },
|
|
27
|
+
onUpdate: () => { this._onUpdateHandler(key) }
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
const tween = {
|
|
31
|
+
id: key,
|
|
32
|
+
isRunning: false,
|
|
33
|
+
target: object,
|
|
34
|
+
to: this._to,
|
|
35
|
+
start: this._start,
|
|
36
|
+
pause: this._pause,
|
|
37
|
+
resume: this._resume,
|
|
38
|
+
stop: this._stop,
|
|
39
|
+
|
|
40
|
+
_timeScale: 1,
|
|
41
|
+
get timeScale() {
|
|
42
|
+
return this._timeScale;
|
|
43
|
+
}, set timeScale(a) {
|
|
44
|
+
return this._timeScale;
|
|
45
|
+
},
|
|
46
|
+
_timeline: tl,
|
|
47
|
+
_complete: false,
|
|
48
|
+
_paused: true,
|
|
49
|
+
_functions: {
|
|
50
|
+
onStart: [],
|
|
51
|
+
onUpdate: [],
|
|
52
|
+
onComplete: []
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
//need to add some functions
|
|
57
|
+
tween.onComplete = {
|
|
58
|
+
add: (f) => {
|
|
59
|
+
tween._functions.onComplete.push(f);
|
|
60
|
+
return tween;
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
tween.onStart = {
|
|
65
|
+
add: (f) => {
|
|
66
|
+
tween._functions.onStart.push(f);
|
|
67
|
+
return tween;
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
tween.onUpdate = {
|
|
72
|
+
add: (f) => {
|
|
73
|
+
tween._functions.onUpdate.push(f);
|
|
74
|
+
return tween;
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
this._tweens[key] = tween;
|
|
79
|
+
|
|
80
|
+
return tween;
|
|
81
|
+
};
|
|
82
|
+
|
|
83
|
+
_keyGenerate() {
|
|
84
|
+
this._tweenIndex++;
|
|
85
|
+
return (new Date()).getTime() + '_' + this._tweenIndex;
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
//todo easing
|
|
89
|
+
_to(propsTo, duration, easing = undefined, autostart = false, startDelay = 0) {
|
|
90
|
+
const params = Urso.helper.objectClone(propsTo, 10);
|
|
91
|
+
params.duration = duration / 1000;
|
|
92
|
+
params.easing = easing;
|
|
93
|
+
params.delay = startDelay;
|
|
94
|
+
|
|
95
|
+
this._timeline.to(this.target, params);
|
|
96
|
+
//this.pause();
|
|
97
|
+
|
|
98
|
+
if (autostart)
|
|
99
|
+
this.start();
|
|
100
|
+
|
|
101
|
+
return this;
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
_start() {
|
|
105
|
+
for (let i = 0; i < this._functions.onStart.length; i++)
|
|
106
|
+
this._functions.onStart[i]();
|
|
107
|
+
|
|
108
|
+
this.resume();
|
|
109
|
+
return this;
|
|
110
|
+
};
|
|
111
|
+
|
|
112
|
+
_pause() {
|
|
113
|
+
this._paused = true;
|
|
114
|
+
this.isRunning = false;
|
|
115
|
+
this._timeline.pause();
|
|
116
|
+
|
|
117
|
+
return this;
|
|
118
|
+
};
|
|
119
|
+
|
|
120
|
+
_resume() {
|
|
121
|
+
this._paused = false;
|
|
122
|
+
this.isRunning = true;
|
|
123
|
+
this._timeline.resume();
|
|
124
|
+
|
|
125
|
+
return this;
|
|
126
|
+
};
|
|
127
|
+
|
|
128
|
+
_stop() {
|
|
129
|
+
this.pause();
|
|
130
|
+
this._timeline.kill();
|
|
131
|
+
this._complete = true;
|
|
132
|
+
|
|
133
|
+
return this;
|
|
134
|
+
};
|
|
135
|
+
|
|
136
|
+
_onUpdateHandler(tweenKey) {
|
|
137
|
+
const tween = this._tweens[tweenKey];
|
|
138
|
+
const percentage = ~~(tween._timeline.progress() * 100);
|
|
139
|
+
|
|
140
|
+
for (let i = 0; i < tween._functions.onUpdate.length; i++)
|
|
141
|
+
tween._functions.onUpdate[i](tween, percentage);
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
_onCompleteHandler(tweenKey) {
|
|
145
|
+
const tween = this._tweens[tweenKey];
|
|
146
|
+
const onComplete = tween._functions.onComplete;
|
|
147
|
+
|
|
148
|
+
for (let i = 0; i < onComplete.length; i++)
|
|
149
|
+
onComplete[i]();
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
export default LibTween;
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
class ModulesAssetsBaseModel {
|
|
2
|
-
constructor(params) {
|
|
3
|
-
this.simpleClass = true;
|
|
4
|
-
|
|
5
|
-
this.setupParams(params);
|
|
6
|
-
this._templatePath = false;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
setupParams(params) {
|
|
10
|
-
this.id = Urso.helper.recursiveGet('id', params, false);
|
|
11
|
-
this.type = Urso.helper.recursiveGet('type', params, null);
|
|
12
|
-
this.key = Urso.helper.recursiveGet('key', params, false);
|
|
13
|
-
this.path = Urso.helper.recursiveGet('path', params, false);
|
|
14
|
-
this.useBinPath = Urso.helper.recursiveGet('useBinPath', params, false) || Urso.config.mode !== 'development'; //or true if we want to use asset from assetsBin
|
|
15
|
-
//lazy load params
|
|
16
|
-
this.loadingGroup = Urso.helper.recursiveGet('loadingGroup', params, false); //initial or some extra name
|
|
17
|
-
this.placeHolder = Urso.helper.recursiveGet('placeHolder', params, false); //placeHolder assets model //TODO
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
|
|
1
|
+
class ModulesAssetsBaseModel {
|
|
2
|
+
constructor(params) {
|
|
3
|
+
this.simpleClass = true;
|
|
4
|
+
|
|
5
|
+
this.setupParams(params);
|
|
6
|
+
this._templatePath = false;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
setupParams(params) {
|
|
10
|
+
this.id = Urso.helper.recursiveGet('id', params, false);
|
|
11
|
+
this.type = Urso.helper.recursiveGet('type', params, null);
|
|
12
|
+
this.key = Urso.helper.recursiveGet('key', params, false);
|
|
13
|
+
this.path = Urso.helper.recursiveGet('path', params, false);
|
|
14
|
+
this.useBinPath = Urso.helper.recursiveGet('useBinPath', params, false) || Urso.config.mode !== 'development'; //or true if we want to use asset from assetsBin
|
|
15
|
+
//lazy load params
|
|
16
|
+
this.loadingGroup = Urso.helper.recursiveGet('loadingGroup', params, false); //initial or some extra name
|
|
17
|
+
this.placeHolder = Urso.helper.recursiveGet('placeHolder', params, false); //placeHolder assets model //TODO
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export default ModulesAssetsBaseModel;
|
|
@@ -1,38 +1,38 @@
|
|
|
1
|
-
class ModulesAssetsConfig {
|
|
2
|
-
constructor() {
|
|
3
|
-
this.singleton = true;
|
|
4
|
-
|
|
5
|
-
this.defaultQualityFactor = 1;
|
|
6
|
-
this.addFolderPathInAtlasTextureKey = true; //or false for simple textures names
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* quality settings for resource loading selection
|
|
10
|
-
*/
|
|
11
|
-
this.qualityFactors = {
|
|
12
|
-
medium: 0.5,
|
|
13
|
-
hd: 0.75,
|
|
14
|
-
high: 1
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* initial is the default and will load on the preload
|
|
20
|
-
* also you can call preload manualy by assets.loadGroup('groupName')
|
|
21
|
-
*/
|
|
22
|
-
this.loadingGroups = {
|
|
23
|
-
initial: 0 //will load on the preload
|
|
24
|
-
/*lazyPart1: 'lazyPart1',
|
|
25
|
-
lazyPart2: 'lazyPart2'*/
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* you can make lazy load groups priority here
|
|
30
|
-
*/
|
|
31
|
-
this.lazyLoadGroups = [
|
|
32
|
-
/*this.loadingGroups.lazyPart1,
|
|
33
|
-
this.loadingGroups.lazyPart2*/
|
|
34
|
-
];
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
|
|
1
|
+
class ModulesAssetsConfig {
|
|
2
|
+
constructor() {
|
|
3
|
+
this.singleton = true;
|
|
4
|
+
|
|
5
|
+
this.defaultQualityFactor = 1;
|
|
6
|
+
this.addFolderPathInAtlasTextureKey = true; //or false for simple textures names
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* quality settings for resource loading selection
|
|
10
|
+
*/
|
|
11
|
+
this.qualityFactors = {
|
|
12
|
+
medium: 0.5,
|
|
13
|
+
hd: 0.75,
|
|
14
|
+
high: 1
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* initial is the default and will load on the preload
|
|
20
|
+
* also you can call preload manualy by assets.loadGroup('groupName')
|
|
21
|
+
*/
|
|
22
|
+
this.loadingGroups = {
|
|
23
|
+
initial: 0 //will load on the preload
|
|
24
|
+
/*lazyPart1: 'lazyPart1',
|
|
25
|
+
lazyPart2: 'lazyPart2'*/
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* you can make lazy load groups priority here
|
|
30
|
+
*/
|
|
31
|
+
this.lazyLoadGroups = [
|
|
32
|
+
/*this.loadingGroups.lazyPart1,
|
|
33
|
+
this.loadingGroups.lazyPart2*/
|
|
34
|
+
];
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export default ModulesAssetsConfig;
|
|
@@ -1,65 +1,65 @@
|
|
|
1
|
-
class ModulesAssetsController {
|
|
2
|
-
constructor() {
|
|
3
|
-
this.singleton = true;
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* Update quality
|
|
8
|
-
*/
|
|
9
|
-
updateQuality() {
|
|
10
|
-
if (Urso.config.useBinPath) {
|
|
11
|
-
this.getInstance('Service').updateQuality();
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
console.log('[ASSETS] Quality set to', this.getInstance('Service').getQuality());
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* Current quality getter
|
|
19
|
-
*/
|
|
20
|
-
getQuality() {
|
|
21
|
-
return this.getInstance('Service').getQuality();
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* Current asset resolution
|
|
26
|
-
*/
|
|
27
|
-
getCurrentResolution() {
|
|
28
|
-
return this.getInstance('Service').getCurrentResolution();
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
/**
|
|
32
|
-
* instantly load initial assets and start lazy loading process, if needed
|
|
33
|
-
* @param {Mixed} assets - asset or array of assets
|
|
34
|
-
* @param {Function} callback
|
|
35
|
-
*/
|
|
36
|
-
preload(assets, callback, updateCallback = () => { }
|
|
37
|
-
const assetsSpace = this.getInstance('Service').sortAssets(assets);
|
|
38
|
-
this.getInstance('Service').startLoad(assetsSpace, callback, updateCallback
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
/**
|
|
42
|
-
* load assets group bu name
|
|
43
|
-
* @param {String} name
|
|
44
|
-
* @param {Function} callback
|
|
45
|
-
*/
|
|
46
|
-
loadGroup(name, callback, updateCallback = () => { }
|
|
47
|
-
this.getInstance('Service').loadGroup(null, name, callback, updateCallback
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
/**
|
|
51
|
-
* system; check webP support
|
|
52
|
-
*/
|
|
53
|
-
checkWebPSupport() {
|
|
54
|
-
this.getInstance('Service').checkWebPSupport();
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
/**
|
|
58
|
-
* preload all images in global atlas into GPU
|
|
59
|
-
*/
|
|
60
|
-
preloadAllImagesInGPU() {
|
|
61
|
-
this.getInstance('Service').preloadAllImagesInGPU();
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
|
|
1
|
+
class ModulesAssetsController {
|
|
2
|
+
constructor() {
|
|
3
|
+
this.singleton = true;
|
|
4
|
+
};
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Update quality
|
|
8
|
+
*/
|
|
9
|
+
updateQuality() {
|
|
10
|
+
if (Urso.config.useBinPath) {
|
|
11
|
+
this.getInstance('Service').updateQuality();
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
console.log('[ASSETS] Quality set to', this.getInstance('Service').getQuality());
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Current quality getter
|
|
19
|
+
*/
|
|
20
|
+
getQuality() {
|
|
21
|
+
return this.getInstance('Service').getQuality();
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Current asset resolution
|
|
26
|
+
*/
|
|
27
|
+
getCurrentResolution() {
|
|
28
|
+
return this.getInstance('Service').getCurrentResolution();
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* instantly load initial assets and start lazy loading process, if needed
|
|
33
|
+
* @param {Mixed} assets - asset or array of assets
|
|
34
|
+
* @param {Function} callback
|
|
35
|
+
*/
|
|
36
|
+
preload(assets, callback, updateCallback = () => { }) {
|
|
37
|
+
const assetsSpace = this.getInstance('Service').sortAssets(assets);
|
|
38
|
+
this.getInstance('Service').startLoad(assetsSpace, callback, updateCallback);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* load assets group bu name
|
|
43
|
+
* @param {String} name
|
|
44
|
+
* @param {Function} callback
|
|
45
|
+
*/
|
|
46
|
+
loadGroup(name, callback, updateCallback = () => { }) {
|
|
47
|
+
this.getInstance('Service').loadGroup(null, name, callback, updateCallback);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* system; check webP support
|
|
52
|
+
*/
|
|
53
|
+
checkWebPSupport() {
|
|
54
|
+
this.getInstance('Service').checkWebPSupport();
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* preload all images in global atlas into GPU
|
|
59
|
+
*/
|
|
60
|
+
preloadAllImagesInGPU() {
|
|
61
|
+
this.getInstance('Service').preloadAllImagesInGPU();
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export default ModulesAssetsController;
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
class ModulesAssetsModelsAtlas extends ModulesAssetsBaseModel {
|
|
4
|
-
constructor(params) {
|
|
5
|
-
super(params);
|
|
6
|
-
|
|
7
|
-
this.type = Urso.types.assets.ATLAS;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
// cacheTextures: if true - add atlas parced textures in Urso textures cache with it's file name as asset key.
|
|
11
|
-
// Example - atlas texture with path 'atlasPath/image/image_01.png' will be saved in cache with a key 'image_01'.
|
|
12
|
-
setupParams(params) {
|
|
13
|
-
super.setupParams(params);
|
|
14
|
-
|
|
15
|
-
this.cacheTextures = Urso.helper.recursiveGet('cacheTextures', params, false);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
|
|
1
|
+
import ModulesAssetsBaseModel from './../baseModel';
|
|
2
|
+
|
|
3
|
+
class ModulesAssetsModelsAtlas extends ModulesAssetsBaseModel {
|
|
4
|
+
constructor(params) {
|
|
5
|
+
super(params);
|
|
6
|
+
|
|
7
|
+
this.type = Urso.types.assets.ATLAS;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
// cacheTextures: if true - add atlas parced textures in Urso textures cache with it's file name as asset key.
|
|
11
|
+
// Example - atlas texture with path 'atlasPath/image/image_01.png' will be saved in cache with a key 'image_01'.
|
|
12
|
+
setupParams(params) {
|
|
13
|
+
super.setupParams(params);
|
|
14
|
+
|
|
15
|
+
this.cacheTextures = Urso.helper.recursiveGet('cacheTextures', params, false);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export default ModulesAssetsModelsAtlas;
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
class ModulesAssetsModelsAudiosprite extends ModulesAssetsBaseModel {
|
|
4
|
-
constructor(params) {
|
|
5
|
-
super(params);
|
|
6
|
-
|
|
7
|
-
this.type = Urso.types.assets.AUDIOSPRITE;
|
|
8
|
-
this.codecs = ['ogg', 'm4a', 'mp3', 'wav'];
|
|
9
|
-
|
|
10
|
-
const codec = this.codecs.filter(codec => UrsoUtils.Howler.codecs(codec))[0];
|
|
11
|
-
|
|
12
|
-
this.contents = Urso.helper.recursiveGet('contents', params, [
|
|
13
|
-
{ type: Urso.types.assets.JSON, key: `${this.key}_audiospriteJson`, path: `${this.path}.json` },
|
|
14
|
-
{ type: Urso.types.assets.SOUND, key: `${this.key}_audiospriteSound`, path: `${this.path}.${codec}` }
|
|
15
|
-
]);
|
|
16
|
-
|
|
17
|
-
this.path = false;
|
|
18
|
-
this.key = false;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
setupParams(params) {
|
|
22
|
-
super.setupParams(params);
|
|
23
|
-
|
|
24
|
-
this.path = Urso.helper.recursiveGet('path', params, false);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
|
|
1
|
+
import ModulesAssetsBaseModel from './../baseModel';
|
|
2
|
+
|
|
3
|
+
class ModulesAssetsModelsAudiosprite extends ModulesAssetsBaseModel {
|
|
4
|
+
constructor(params) {
|
|
5
|
+
super(params);
|
|
6
|
+
|
|
7
|
+
this.type = Urso.types.assets.AUDIOSPRITE;
|
|
8
|
+
this.codecs = ['ogg', 'm4a', 'mp3', 'wav'];
|
|
9
|
+
|
|
10
|
+
const codec = this.codecs.filter(codec => UrsoUtils.Howler.codecs(codec))[0];
|
|
11
|
+
|
|
12
|
+
this.contents = Urso.helper.recursiveGet('contents', params, [
|
|
13
|
+
{ type: Urso.types.assets.JSON, key: `${this.key}_audiospriteJson`, path: `${this.path}.json` },
|
|
14
|
+
{ type: Urso.types.assets.SOUND, key: `${this.key}_audiospriteSound`, path: `${this.path}.${codec}` }
|
|
15
|
+
]);
|
|
16
|
+
|
|
17
|
+
this.path = false;
|
|
18
|
+
this.key = false;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
setupParams(params) {
|
|
22
|
+
super.setupParams(params);
|
|
23
|
+
|
|
24
|
+
this.path = Urso.helper.recursiveGet('path', params, false);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export default ModulesAssetsModelsAudiosprite;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
class ModulesAssetsModelsBitmapFont extends ModulesAssetsBaseModel {
|
|
4
|
-
constructor(params) {
|
|
5
|
-
super(params);
|
|
6
|
-
|
|
7
|
-
this.type = Urso.types.assets.BITMAPFONT;
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
|
|
1
|
+
import ModulesAssetsBaseModel from './../baseModel';
|
|
2
|
+
|
|
3
|
+
class ModulesAssetsModelsBitmapFont extends ModulesAssetsBaseModel {
|
|
4
|
+
constructor(params) {
|
|
5
|
+
super(params);
|
|
6
|
+
|
|
7
|
+
this.type = Urso.types.assets.BITMAPFONT;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export default ModulesAssetsModelsBitmapFont;
|