@urso/core 0.7.81 → 0.7.83-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/build/js/index.js +1 -1
- package/build/js/index.js.LICENSE.txt +0 -10
- package/package.json +1 -1
- package/src/js/config/load.js +1 -0
- package/src/js/extra/main.js +5 -0
- package/src/js/lib/cache.js +18 -5
- package/src/js/lib/loader.js +42 -1
- package/src/js/modules/assets/models/jsonAtlas.js +11 -0
- package/src/js/modules/assets/service.js +4 -1
- package/src/js/modules/template/types.js +3 -2
|
@@ -36,16 +36,6 @@ object-assign
|
|
|
36
36
|
* Copyright 2019-2020, Ivan Igorevich Popelyshev <ivan.popelyshev@gmail.com>, All Rights Reserved
|
|
37
37
|
*/
|
|
38
38
|
|
|
39
|
-
/*!
|
|
40
|
-
* @pixi-spine/runtime-3.8 - v3.1.2
|
|
41
|
-
* Compiled Tue, 10 Jan 2023 14:17:32 UTC
|
|
42
|
-
*
|
|
43
|
-
* @pixi-spine/runtime-3.8 is licensed under the MIT License.
|
|
44
|
-
* http://www.opensource.org/licenses/mit-license
|
|
45
|
-
*
|
|
46
|
-
* Copyright 2019-2020, Ivan Igorevich Popelyshev <ivan.popelyshev@gmail.com>, All Rights Reserved
|
|
47
|
-
*/
|
|
48
|
-
|
|
49
39
|
/*!
|
|
50
40
|
* @pixi/accessibility - v6.5.10
|
|
51
41
|
* Compiled Thu, 06 Jul 2023 15:25:11 UTC
|
package/package.json
CHANGED
package/src/js/config/load.js
CHANGED
|
@@ -78,6 +78,7 @@ window.Urso = {
|
|
|
78
78
|
Html: require('../modules/assets/models/html'),
|
|
79
79
|
Image: require('../modules/assets/models/image'),
|
|
80
80
|
Json: require('../modules/assets/models/json'),
|
|
81
|
+
JsonAtlas: require('../modules/assets/models/jsonAtlas'),
|
|
81
82
|
Sound: require('../modules/assets/models/sound'),
|
|
82
83
|
Spine: require('../modules/assets/models/spine')
|
|
83
84
|
}
|
package/src/js/extra/main.js
CHANGED
|
@@ -9,6 +9,11 @@ PIXI.filters['DropShadowFilter'] = DropShadowFilter;
|
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
window.PIXI.spine = require("pixi-spine");
|
|
12
|
+
|
|
13
|
+
import { AtlasAttachmentLoader, SkeletonJson } from "@pixi-spine/runtime-3.8";
|
|
14
|
+
window.PIXI.spine.AtlasAttachmentLoader = AtlasAttachmentLoader;
|
|
15
|
+
window.PIXI.spine.SkeletonJson = SkeletonJson;
|
|
16
|
+
|
|
12
17
|
require("pixi-projection");
|
|
13
18
|
require("pixi-text-input");
|
|
14
19
|
|
package/src/js/lib/cache.js
CHANGED
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
class LibCache {
|
|
2
2
|
constructor() {
|
|
3
3
|
this.assetsList = {
|
|
4
|
-
image: {},
|
|
5
4
|
atlas: {},
|
|
6
|
-
json: {},
|
|
7
5
|
binary: {},
|
|
8
|
-
spine: {},
|
|
9
6
|
bitmapFont: {},
|
|
7
|
+
file: {},
|
|
8
|
+
image: {},
|
|
9
|
+
json: {},
|
|
10
|
+
jsonAtlas: {},
|
|
10
11
|
sound: {},
|
|
11
|
-
|
|
12
|
-
|
|
12
|
+
spine: {},
|
|
13
|
+
texture: {}
|
|
13
14
|
};
|
|
14
15
|
|
|
15
16
|
this.globalAtlas = new PIXI.spine.TextureAtlas();
|
|
@@ -50,6 +51,10 @@ class LibCache {
|
|
|
50
51
|
this._setDataToAssetsList('json', key, someData);
|
|
51
52
|
};
|
|
52
53
|
|
|
54
|
+
addJsonAtlas(key, someData) {
|
|
55
|
+
this._setDataToAssetsList('jsonAtlas', key, someData);
|
|
56
|
+
};
|
|
57
|
+
|
|
53
58
|
addSound(key, someData) {
|
|
54
59
|
this._setDataToAssetsList('sound', key, someData);
|
|
55
60
|
};
|
|
@@ -91,6 +96,14 @@ class LibCache {
|
|
|
91
96
|
return this.assetsList.json[key];
|
|
92
97
|
};
|
|
93
98
|
|
|
99
|
+
getJsonAtlas(key) {
|
|
100
|
+
return this.assetsList.jsonAtlas[key];
|
|
101
|
+
};
|
|
102
|
+
|
|
103
|
+
getJsonAtlases() {
|
|
104
|
+
return this.assetsList.jsonAtlas;
|
|
105
|
+
};
|
|
106
|
+
|
|
94
107
|
getSound(key) {
|
|
95
108
|
return this.assetsList.sound[key];
|
|
96
109
|
};
|
package/src/js/lib/loader.js
CHANGED
|
@@ -75,6 +75,9 @@ class LibLoader {
|
|
|
75
75
|
case Urso.types.assets.JSON:
|
|
76
76
|
Urso.cache.addJson(asset.key, resource);
|
|
77
77
|
break;
|
|
78
|
+
case Urso.types.assets.JSONATLAS:
|
|
79
|
+
Urso.cache.addJsonAtlas(asset.key, resource);
|
|
80
|
+
break;
|
|
78
81
|
case Urso.types.assets.SOUND:
|
|
79
82
|
Urso.cache.addSound(asset.key, resource);
|
|
80
83
|
break;
|
|
@@ -120,11 +123,28 @@ class LibLoader {
|
|
|
120
123
|
|
|
121
124
|
let params = asset.params || false; // TODO: Set params field in base mode
|
|
122
125
|
|
|
123
|
-
if (asset.type === Urso.types.assets.
|
|
126
|
+
if (asset.type === Urso.types.assets.JSON) { // check json in JSONATLAS
|
|
127
|
+
const jsonData = this._getJsonDataFromJsonAtlases(asset.key);
|
|
128
|
+
|
|
129
|
+
if (jsonData) {
|
|
130
|
+
Urso.cache.addJson(asset.key, { data: jsonData });
|
|
131
|
+
return;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
if (asset.type === Urso.types.assets.SPINE && asset.noAtlas) { // check SPINE in JSONATLAS
|
|
124
136
|
if (!params)
|
|
125
137
|
params = {};
|
|
126
138
|
|
|
127
139
|
params.metadata = { spineAtlas: Urso.cache.getGlobalAtlas() };
|
|
140
|
+
|
|
141
|
+
//check for json in JSONATLAS
|
|
142
|
+
const jsonData = this._getJsonDataFromJsonAtlases(asset.key);
|
|
143
|
+
|
|
144
|
+
if (jsonData) {
|
|
145
|
+
this._loadSpineFromExistingResourses(asset, jsonData, params);
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
128
148
|
}
|
|
129
149
|
|
|
130
150
|
const loadPath = this._getLoadPath(asset);
|
|
@@ -146,6 +166,27 @@ class LibLoader {
|
|
|
146
166
|
}.bind(this));
|
|
147
167
|
};
|
|
148
168
|
|
|
169
|
+
_getJsonDataFromJsonAtlases(key) {
|
|
170
|
+
const jsonAtlases = Urso.cache.getJsonAtlases();
|
|
171
|
+
|
|
172
|
+
for (let jsonAtlasKey in jsonAtlases) {
|
|
173
|
+
if (jsonAtlases[jsonAtlasKey].data.hasOwnProperty(key)) {
|
|
174
|
+
return jsonAtlases[jsonAtlasKey].data[key];
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
return null;
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
_loadSpineFromExistingResourses(asset, jsonData, params) {
|
|
182
|
+
//params.metadata.spineAtlas
|
|
183
|
+
|
|
184
|
+
const spineAtlasLoader = new PIXI.spine.AtlasAttachmentLoader(params.metadata.spineAtlas);
|
|
185
|
+
const spineJsonParser = new PIXI.spine.SkeletonJson(spineAtlasLoader);
|
|
186
|
+
const spineData = spineJsonParser.readSkeletonData(jsonData);
|
|
187
|
+
Urso.cache.addSpine(asset.key, {spineData});
|
|
188
|
+
}
|
|
189
|
+
|
|
149
190
|
_onError(error) {
|
|
150
191
|
Urso.logger.warn('LibLoader file load error: ', error);
|
|
151
192
|
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
const ModulesAssetsBaseModel = require('./../baseModel');
|
|
2
|
+
|
|
3
|
+
class ModulesAssetsModelsJsonAtlas extends ModulesAssetsBaseModel {
|
|
4
|
+
constructor(params) {
|
|
5
|
+
super(params);
|
|
6
|
+
|
|
7
|
+
this.type = Urso.types.assets.JSONATLAS;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
module.exports = ModulesAssetsModelsJsonAtlas;
|
|
@@ -121,7 +121,7 @@ class ModulesAssetsService {
|
|
|
121
121
|
* @param {Function} callback
|
|
122
122
|
*/
|
|
123
123
|
_loadGroupAtlases(assetsSpace, group, callback) {
|
|
124
|
-
const atlases = assetsSpace[group].filter(assetModel => assetModel.type === Urso.types.assets.ATLAS);
|
|
124
|
+
const atlases = assetsSpace[group].filter(assetModel => assetModel.type === Urso.types.assets.ATLAS || assetModel.type === Urso.types.assets.JSONATLAS);
|
|
125
125
|
|
|
126
126
|
if (!atlases.length)
|
|
127
127
|
return callback();
|
|
@@ -366,6 +366,9 @@ class ModulesAssetsService {
|
|
|
366
366
|
case Urso.types.assets.JSON:
|
|
367
367
|
model = this.getInstance('Models.Json', asset)
|
|
368
368
|
break;
|
|
369
|
+
case Urso.types.assets.JSONATLAS:
|
|
370
|
+
model = this.getInstance('Models.JsonAtlas', asset)
|
|
371
|
+
break;
|
|
369
372
|
case Urso.types.assets.SOUND:
|
|
370
373
|
model = this.getInstance('Models.Sound', asset)
|
|
371
374
|
break;
|