@urso/core 0.2.6 → 0.2.7
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/.babelrc +11 -11
- package/README.md +10 -10
- package/build/js/index.js +1 -1
- package/build/js/index.js.LICENSE.txt +31 -31
- package/package.json +52 -52
- package/src/js/app.js +76 -76
- package/src/js/components/_info.js +8 -8
- package/src/js/components/base/_info.js +3 -3
- package/src/js/components/base/controller.js +78 -78
- package/src/js/components/debug/_info.js +6 -6
- package/src/js/components/debug/controller.js +38 -38
- package/src/js/components/debug/coords.js +23 -23
- package/src/js/components/debug/fps.js +34 -34
- package/src/js/components/debug/template.js +33 -33
- package/src/js/components/deviceRotate/_info.js +3 -3
- package/src/js/components/deviceRotate/controller.js +86 -86
- package/src/js/components/fullscreen/_info.js +6 -6
- package/src/js/components/fullscreen/android.js +104 -104
- package/src/js/components/fullscreen/controller.js +64 -64
- package/src/js/components/fullscreen/desktop.js +49 -49
- package/src/js/components/fullscreen/ios.js +111 -111
- package/src/js/components/loader/_info.js +4 -4
- package/src/js/components/loader/controller.js +66 -66
- package/src/js/components/loader/template.js +70 -70
- package/src/js/components/soundInitialPopup/_info.js +3 -3
- package/src/js/components/soundInitialPopup/controller.js +42 -42
- package/src/js/components/soundInitialPopup/template.js +109 -109
- package/src/js/components/stateDriven/_info.js +3 -3
- package/src/js/components/stateDriven/controller.js +96 -96
- package/src/js/config/load.js +5 -5
- package/src/js/config/main.js +9 -9
- package/src/js/extra/_info.js +23 -23
- package/src/js/extra/browserEvents.js +32 -32
- package/src/js/index.js +8 -8
- package/src/js/lib/_info.js +13 -13
- package/src/js/lib/cache.js +98 -98
- package/src/js/lib/composition.js +89 -89
- package/src/js/lib/device.js +1276 -1276
- package/src/js/lib/helper.js +524 -524
- package/src/js/lib/loader.js +121 -121
- package/src/js/lib/localData.js +15 -15
- package/src/js/lib/logger.js +22 -22
- package/src/js/lib/math.js +20 -20
- package/src/js/lib/objectPool.js +54 -54
- package/src/js/lib/time.js +18 -18
- package/src/js/lib/tween.js +147 -147
- package/src/js/modules/_info.js +11 -11
- package/src/js/modules/assets/_info.js +7 -7
- package/src/js/modules/assets/baseModel.js +18 -18
- package/src/js/modules/assets/config.js +35 -35
- package/src/js/modules/assets/controller.js +37 -37
- package/src/js/modules/assets/models/_info.js +12 -12
- package/src/js/modules/assets/models/atlas.js +8 -8
- package/src/js/modules/assets/models/audiosprite.js +27 -27
- package/src/js/modules/assets/models/bitmapFont.js +8 -8
- package/src/js/modules/assets/models/container.js +16 -16
- package/src/js/modules/assets/models/dragonBones.js +26 -26
- package/src/js/modules/assets/models/font.js +8 -8
- package/src/js/modules/assets/models/image.js +14 -14
- package/src/js/modules/assets/models/json.js +8 -8
- package/src/js/modules/assets/models/sound.js +14 -14
- package/src/js/modules/assets/models/spine.js +8 -8
- package/src/js/modules/assets/service.js +330 -330
- package/src/js/modules/instances/_info.js +3 -3
- package/src/js/modules/instances/controller.js +218 -218
- package/src/js/modules/logic/_info.js +5 -5
- package/src/js/modules/logic/buttons.js +120 -120
- package/src/js/modules/logic/config/_info.js +3 -3
- package/src/js/modules/logic/config/buttons.js +63 -63
- package/src/js/modules/logic/config/sounds.js +23 -23
- package/src/js/modules/logic/controller.js +48 -48
- package/src/js/modules/logic/sounds.js +96 -96
- package/src/js/modules/objects/_info.js +11 -11
- package/src/js/modules/objects/baseModel.js +161 -161
- package/src/js/modules/objects/cache.js +99 -99
- package/src/js/modules/objects/controller.js +115 -115
- package/src/js/modules/objects/create.js +246 -246
- package/src/js/modules/objects/find.js +140 -140
- package/src/js/modules/objects/models/_info.js +25 -25
- package/src/js/modules/objects/models/atlasImage.js +50 -50
- package/src/js/modules/objects/models/bitmapText.js +23 -23
- package/src/js/modules/objects/models/button.js +184 -184
- package/src/js/modules/objects/models/buttonComposite.js +35 -35
- package/src/js/modules/objects/models/checkbox.js +95 -96
- package/src/js/modules/objects/models/collection.js +54 -54
- package/src/js/modules/objects/models/component.js +44 -44
- package/src/js/modules/objects/models/container.js +19 -19
- package/src/js/modules/objects/models/dragonBones.js +250 -250
- package/src/js/modules/objects/models/emitter.js +54 -54
- package/src/js/modules/objects/models/graphics.js +38 -38
- package/src/js/modules/objects/models/group.js +19 -19
- package/src/js/modules/objects/models/hitArea.js +104 -104
- package/src/js/modules/objects/models/image.js +34 -34
- package/src/js/modules/objects/models/imagesAnimation.js +113 -113
- package/src/js/modules/objects/models/mask.js +38 -38
- package/src/js/modules/objects/models/scrollbox.js +61 -61
- package/src/js/modules/objects/models/slider.js +199 -154
- package/src/js/modules/objects/models/spine.js +83 -83
- package/src/js/modules/objects/models/text.js +38 -38
- package/src/js/modules/objects/models/textInput.js +55 -55
- package/src/js/modules/objects/models/toggle.js +169 -169
- package/src/js/modules/objects/models/world.js +19 -19
- package/src/js/modules/objects/propertyAdapter.js +421 -421
- package/src/js/modules/objects/proxy.js +179 -179
- package/src/js/modules/objects/styles.js +116 -116
- package/src/js/modules/observer/_info.js +4 -4
- package/src/js/modules/observer/controller.js +99 -99
- package/src/js/modules/observer/events.js +32 -32
- package/src/js/modules/scenes/_info.js +8 -8
- package/src/js/modules/scenes/controller.js +34 -34
- package/src/js/modules/scenes/model.js +35 -35
- package/src/js/modules/scenes/pixiWrapper.js +194 -194
- package/src/js/modules/scenes/resolutions.js +161 -161
- package/src/js/modules/scenes/resolutionsConfig.js +73 -73
- package/src/js/modules/scenes/service.js +84 -84
- package/src/js/modules/soundManager/_info.js +3 -3
- package/src/js/modules/soundManager/controller.js +99 -99
- package/src/js/modules/soundManager/soundSprite.js +202 -202
- package/src/js/modules/statesManager/_info.js +12 -12
- package/src/js/modules/statesManager/action.js +55 -55
- package/src/js/modules/statesManager/actions/_info.js +3 -3
- package/src/js/modules/statesManager/all.js +23 -23
- package/src/js/modules/statesManager/configStates.js +71 -71
- package/src/js/modules/statesManager/controller.js +132 -132
- package/src/js/modules/statesManager/functionsStorage.js +82 -82
- package/src/js/modules/statesManager/helper.js +27 -27
- package/src/js/modules/statesManager/race.js +75 -75
- package/src/js/modules/statesManager/sequence.js +47 -47
- package/src/js/modules/template/_info.js +6 -6
- 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 +125 -125
- package/src/js/modules/template/types.js +46 -46
- package/src/js/modules/transport/_info.js +8 -8
- package/src/js/modules/transport/baseConnectionType.js +24 -24
- package/src/js/modules/transport/config.js +22 -22
- package/src/js/modules/transport/connectionTypes/_info.js +3 -3
- package/src/js/modules/transport/connectionTypes/websocket.js +74 -74
- package/src/js/modules/transport/connectionTypes/xhr.js +41 -41
- package/src/js/modules/transport/controller.js +48 -48
- package/src/js/modules/transport/decorator.js +16 -16
- package/src/js/modules/transport/service.js +138 -138
- package/src/js/templates/_info.js +4 -4
- package/src/js/templates/groups/_info.js +1 -1
- package/src/js/templates/scenes/_info.js +1 -1
- package/webpack.config.js +47 -47
|
@@ -27,127 +27,127 @@ object-assign
|
|
|
27
27
|
*/
|
|
28
28
|
|
|
29
29
|
/*!
|
|
30
|
-
* @pixi/constants - v5.3.
|
|
31
|
-
* Compiled Mon,
|
|
30
|
+
* @pixi/constants - v5.3.11
|
|
31
|
+
* Compiled Mon, 01 Nov 2021 16:10:12 UTC
|
|
32
32
|
*
|
|
33
33
|
* @pixi/constants is licensed under the MIT License.
|
|
34
34
|
* http://www.opensource.org/licenses/mit-license
|
|
35
35
|
*/
|
|
36
36
|
|
|
37
37
|
/*!
|
|
38
|
-
* @pixi/core - v5.3.
|
|
39
|
-
* Compiled Mon,
|
|
38
|
+
* @pixi/core - v5.3.11
|
|
39
|
+
* Compiled Mon, 01 Nov 2021 16:10:12 UTC
|
|
40
40
|
*
|
|
41
41
|
* @pixi/core is licensed under the MIT License.
|
|
42
42
|
* http://www.opensource.org/licenses/mit-license
|
|
43
43
|
*/
|
|
44
44
|
|
|
45
45
|
/*!
|
|
46
|
-
* @pixi/display - v5.3.
|
|
47
|
-
* Compiled Mon,
|
|
46
|
+
* @pixi/display - v5.3.11
|
|
47
|
+
* Compiled Mon, 01 Nov 2021 16:10:12 UTC
|
|
48
48
|
*
|
|
49
49
|
* @pixi/display is licensed under the MIT License.
|
|
50
50
|
* http://www.opensource.org/licenses/mit-license
|
|
51
51
|
*/
|
|
52
52
|
|
|
53
53
|
/*!
|
|
54
|
-
* @pixi/extract - v5.3.
|
|
55
|
-
* Compiled Mon,
|
|
54
|
+
* @pixi/extract - v5.3.11
|
|
55
|
+
* Compiled Mon, 01 Nov 2021 16:10:12 UTC
|
|
56
56
|
*
|
|
57
57
|
* @pixi/extract is licensed under the MIT License.
|
|
58
58
|
* http://www.opensource.org/licenses/mit-license
|
|
59
59
|
*/
|
|
60
60
|
|
|
61
61
|
/*!
|
|
62
|
-
* @pixi/filter-displacement - v5.3.
|
|
63
|
-
* Compiled Mon,
|
|
62
|
+
* @pixi/filter-displacement - v5.3.11
|
|
63
|
+
* Compiled Mon, 01 Nov 2021 16:10:12 UTC
|
|
64
64
|
*
|
|
65
65
|
* @pixi/filter-displacement is licensed under the MIT License.
|
|
66
66
|
* http://www.opensource.org/licenses/mit-license
|
|
67
67
|
*/
|
|
68
68
|
|
|
69
69
|
/*!
|
|
70
|
-
* @pixi/loaders - v5.3.
|
|
71
|
-
* Compiled Mon,
|
|
70
|
+
* @pixi/loaders - v5.3.11
|
|
71
|
+
* Compiled Mon, 01 Nov 2021 16:10:12 UTC
|
|
72
72
|
*
|
|
73
73
|
* @pixi/loaders is licensed under the MIT License.
|
|
74
74
|
* http://www.opensource.org/licenses/mit-license
|
|
75
75
|
*/
|
|
76
76
|
|
|
77
77
|
/*!
|
|
78
|
-
* @pixi/math - v5.3.
|
|
79
|
-
* Compiled Mon,
|
|
78
|
+
* @pixi/math - v5.3.11
|
|
79
|
+
* Compiled Mon, 01 Nov 2021 16:10:12 UTC
|
|
80
80
|
*
|
|
81
81
|
* @pixi/math is licensed under the MIT License.
|
|
82
82
|
* http://www.opensource.org/licenses/mit-license
|
|
83
83
|
*/
|
|
84
84
|
|
|
85
85
|
/*!
|
|
86
|
-
* @pixi/mesh-extras - v5.3.
|
|
87
|
-
* Compiled Mon,
|
|
86
|
+
* @pixi/mesh-extras - v5.3.11
|
|
87
|
+
* Compiled Mon, 01 Nov 2021 16:10:12 UTC
|
|
88
88
|
*
|
|
89
89
|
* @pixi/mesh-extras is licensed under the MIT License.
|
|
90
90
|
* http://www.opensource.org/licenses/mit-license
|
|
91
91
|
*/
|
|
92
92
|
|
|
93
93
|
/*!
|
|
94
|
-
* @pixi/mixin-get-child-by-name - v5.3.
|
|
95
|
-
* Compiled Mon,
|
|
94
|
+
* @pixi/mixin-get-child-by-name - v5.3.11
|
|
95
|
+
* Compiled Mon, 01 Nov 2021 16:10:12 UTC
|
|
96
96
|
*
|
|
97
97
|
* @pixi/mixin-get-child-by-name is licensed under the MIT License.
|
|
98
98
|
* http://www.opensource.org/licenses/mit-license
|
|
99
99
|
*/
|
|
100
100
|
|
|
101
101
|
/*!
|
|
102
|
-
* @pixi/mixin-get-global-position - v5.3.
|
|
103
|
-
* Compiled Mon,
|
|
102
|
+
* @pixi/mixin-get-global-position - v5.3.11
|
|
103
|
+
* Compiled Mon, 01 Nov 2021 16:10:12 UTC
|
|
104
104
|
*
|
|
105
105
|
* @pixi/mixin-get-global-position is licensed under the MIT License.
|
|
106
106
|
* http://www.opensource.org/licenses/mit-license
|
|
107
107
|
*/
|
|
108
108
|
|
|
109
109
|
/*!
|
|
110
|
-
* @pixi/polyfill - v5.3.
|
|
111
|
-
* Compiled Mon,
|
|
110
|
+
* @pixi/polyfill - v5.3.11
|
|
111
|
+
* Compiled Mon, 01 Nov 2021 16:10:12 UTC
|
|
112
112
|
*
|
|
113
113
|
* @pixi/polyfill is licensed under the MIT License.
|
|
114
114
|
* http://www.opensource.org/licenses/mit-license
|
|
115
115
|
*/
|
|
116
116
|
|
|
117
117
|
/*!
|
|
118
|
-
* @pixi/prepare - v5.3.
|
|
119
|
-
* Compiled Mon,
|
|
118
|
+
* @pixi/prepare - v5.3.11
|
|
119
|
+
* Compiled Mon, 01 Nov 2021 16:10:12 UTC
|
|
120
120
|
*
|
|
121
121
|
* @pixi/prepare is licensed under the MIT License.
|
|
122
122
|
* http://www.opensource.org/licenses/mit-license
|
|
123
123
|
*/
|
|
124
124
|
|
|
125
125
|
/*!
|
|
126
|
-
* @pixi/runner - v5.3.
|
|
127
|
-
* Compiled Mon,
|
|
126
|
+
* @pixi/runner - v5.3.11
|
|
127
|
+
* Compiled Mon, 01 Nov 2021 16:10:12 UTC
|
|
128
128
|
*
|
|
129
129
|
* @pixi/runner is licensed under the MIT License.
|
|
130
130
|
* http://www.opensource.org/licenses/mit-license
|
|
131
131
|
*/
|
|
132
132
|
|
|
133
133
|
/*!
|
|
134
|
-
* @pixi/ticker - v5.3.
|
|
135
|
-
* Compiled Mon,
|
|
134
|
+
* @pixi/ticker - v5.3.11
|
|
135
|
+
* Compiled Mon, 01 Nov 2021 16:10:12 UTC
|
|
136
136
|
*
|
|
137
137
|
* @pixi/ticker is licensed under the MIT License.
|
|
138
138
|
* http://www.opensource.org/licenses/mit-license
|
|
139
139
|
*/
|
|
140
140
|
|
|
141
141
|
/*!
|
|
142
|
-
* @pixi/utils - v5.3.
|
|
143
|
-
* Compiled Mon,
|
|
142
|
+
* @pixi/utils - v5.3.11
|
|
143
|
+
* Compiled Mon, 01 Nov 2021 16:10:12 UTC
|
|
144
144
|
*
|
|
145
145
|
* @pixi/utils is licensed under the MIT License.
|
|
146
146
|
* http://www.opensource.org/licenses/mit-license
|
|
147
147
|
*/
|
|
148
148
|
|
|
149
149
|
/*!
|
|
150
|
-
* GSAP 3.
|
|
150
|
+
* GSAP 3.8.0
|
|
151
151
|
* https://greensock.com
|
|
152
152
|
*
|
|
153
153
|
* @license Copyright 2008-2021, GreenSock. All rights reserved.
|
package/package.json
CHANGED
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@urso/core",
|
|
3
|
-
"version": "0.2.
|
|
4
|
-
"description": "HTML5 game engine",
|
|
5
|
-
"main": "build/js/index.js",
|
|
6
|
-
"author": "Megbrimef",
|
|
7
|
-
"license": "MIT",
|
|
8
|
-
"scripts": {
|
|
9
|
-
"build:prod": "webpack --config webpack.config.js --mode=production",
|
|
10
|
-
"build:dev": "webpack --config webpack.config.js --mode=development"
|
|
11
|
-
},
|
|
12
|
-
"repository": {
|
|
13
|
-
"type": "git",
|
|
14
|
-
"url": "git+https://github.com/megbrimef/urso.git"
|
|
15
|
-
},
|
|
16
|
-
"keywords": [
|
|
17
|
-
"game",
|
|
18
|
-
"engine"
|
|
19
|
-
],
|
|
20
|
-
"bugs": {
|
|
21
|
-
"url": "https://github.com/megbrimef/urso/issues"
|
|
22
|
-
},
|
|
23
|
-
"homepage": "https://github.com/megbrimef/urso#readme",
|
|
24
|
-
"dependencies": {
|
|
25
|
-
"@pixi/filter-drop-shadow": "^3.2.0",
|
|
26
|
-
"gsap": "^3.1.1",
|
|
27
|
-
"howler": "^2.2.1",
|
|
28
|
-
"pixi-particles": "^4.3.0",
|
|
29
|
-
"pixi-projection": "0.3.15",
|
|
30
|
-
"pixi-spine": "^2.1.11",
|
|
31
|
-
"pixi.js": "^5.1.3",
|
|
32
|
-
"pixi5-dragonbones": "5.7.0-2",
|
|
33
|
-
"pixi-scrollbox": "^2.3.1",
|
|
34
|
-
"pixi-viewport": "^4.34.0",
|
|
35
|
-
"pixi-text-input": "^1.0.6"
|
|
36
|
-
},
|
|
37
|
-
"devDependencies": {
|
|
38
|
-
"@babel/core": "^7.12.10",
|
|
39
|
-
"@babel/preset-env": "^7.12.11",
|
|
40
|
-
"babel-loader": "^8.2.2",
|
|
41
|
-
"copy-webpack-plugin": "^5.0.3",
|
|
42
|
-
"exports-loader": "^0.7.0",
|
|
43
|
-
"html-webpack-plugin": "^5.1.0",
|
|
44
|
-
"script-loader": "^0.7.2",
|
|
45
|
-
"source-map-loader": "^1.0.0",
|
|
46
|
-
"string-replace-loader": "^3.0.3",
|
|
47
|
-
"style-loader": "^0.23.1",
|
|
48
|
-
"webpack": "^5.11.0",
|
|
49
|
-
"webpack-cli": "^4.2.0",
|
|
50
|
-
"webpack-dev-server": "^3.11.0"
|
|
51
|
-
}
|
|
52
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@urso/core",
|
|
3
|
+
"version": "0.2.7",
|
|
4
|
+
"description": "HTML5 game engine",
|
|
5
|
+
"main": "build/js/index.js",
|
|
6
|
+
"author": "Megbrimef",
|
|
7
|
+
"license": "MIT",
|
|
8
|
+
"scripts": {
|
|
9
|
+
"build:prod": "webpack --config webpack.config.js --mode=production",
|
|
10
|
+
"build:dev": "webpack --config webpack.config.js --mode=development"
|
|
11
|
+
},
|
|
12
|
+
"repository": {
|
|
13
|
+
"type": "git",
|
|
14
|
+
"url": "git+https://github.com/megbrimef/urso.git"
|
|
15
|
+
},
|
|
16
|
+
"keywords": [
|
|
17
|
+
"game",
|
|
18
|
+
"engine"
|
|
19
|
+
],
|
|
20
|
+
"bugs": {
|
|
21
|
+
"url": "https://github.com/megbrimef/urso/issues"
|
|
22
|
+
},
|
|
23
|
+
"homepage": "https://github.com/megbrimef/urso#readme",
|
|
24
|
+
"dependencies": {
|
|
25
|
+
"@pixi/filter-drop-shadow": "^3.2.0",
|
|
26
|
+
"gsap": "^3.1.1",
|
|
27
|
+
"howler": "^2.2.1",
|
|
28
|
+
"pixi-particles": "^4.3.0",
|
|
29
|
+
"pixi-projection": "0.3.15",
|
|
30
|
+
"pixi-spine": "^2.1.11",
|
|
31
|
+
"pixi.js": "^5.1.3",
|
|
32
|
+
"pixi5-dragonbones": "5.7.0-2",
|
|
33
|
+
"pixi-scrollbox": "^2.3.1",
|
|
34
|
+
"pixi-viewport": "^4.34.0",
|
|
35
|
+
"pixi-text-input": "^1.0.6"
|
|
36
|
+
},
|
|
37
|
+
"devDependencies": {
|
|
38
|
+
"@babel/core": "^7.12.10",
|
|
39
|
+
"@babel/preset-env": "^7.12.11",
|
|
40
|
+
"babel-loader": "^8.2.2",
|
|
41
|
+
"copy-webpack-plugin": "^5.0.3",
|
|
42
|
+
"exports-loader": "^0.7.0",
|
|
43
|
+
"html-webpack-plugin": "^5.1.0",
|
|
44
|
+
"script-loader": "^0.7.2",
|
|
45
|
+
"source-map-loader": "^1.0.0",
|
|
46
|
+
"string-replace-loader": "^3.0.3",
|
|
47
|
+
"style-loader": "^0.23.1",
|
|
48
|
+
"webpack": "^5.11.0",
|
|
49
|
+
"webpack-cli": "^4.2.0",
|
|
50
|
+
"webpack-dev-server": "^3.11.0"
|
|
51
|
+
}
|
|
52
|
+
}
|
package/src/js/app.js
CHANGED
|
@@ -1,76 +1,76 @@
|
|
|
1
|
-
class App {
|
|
2
|
-
constructor() {
|
|
3
|
-
this.version = 'APP_VERSION';
|
|
4
|
-
|
|
5
|
-
this.setup = this.setup.bind(this);
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
setup() {
|
|
9
|
-
this.sayHello();
|
|
10
|
-
|
|
11
|
-
//helper must be first
|
|
12
|
-
Urso.helper = new Urso.Core.Lib.Helper(); //helper functions
|
|
13
|
-
|
|
14
|
-
//setup Instances
|
|
15
|
-
let instances = new Urso.Core.Modules.Instances.Controller();
|
|
16
|
-
Urso.getInstance = instances.getInstance;
|
|
17
|
-
Urso.getByPath = instances.getByPath;
|
|
18
|
-
Urso.getInstancesModes = instances.getModes;
|
|
19
|
-
Urso.addInstancesMode = instances.addMode;
|
|
20
|
-
Urso.removeInstancesMode = instances.removeMode;
|
|
21
|
-
|
|
22
|
-
//build from extendingChain and merge all into Urso.Game
|
|
23
|
-
Urso.Game = {};
|
|
24
|
-
for (let extention of Urso.config.extendingChain)
|
|
25
|
-
Urso.helper.mergeObjectsRecursive(Urso.Game, Urso.helper.recursiveGet(extention, window, {}), true);
|
|
26
|
-
|
|
27
|
-
//(!)important we must use only Urso.Game from our code
|
|
28
|
-
|
|
29
|
-
//observer pattern
|
|
30
|
-
Urso.observer = Urso.getInstance('Modules.Observer.Controller');
|
|
31
|
-
|
|
32
|
-
//Extra
|
|
33
|
-
Urso.browserEvents = Urso.getInstance('Extra.BrowserEvents');
|
|
34
|
-
|
|
35
|
-
//libs
|
|
36
|
-
Urso.cache = Urso.getInstance('Lib.Cache'); //all assets cache
|
|
37
|
-
Urso.device = Urso.getByPath('Lib.Device'); //all device info
|
|
38
|
-
Urso.loader = Urso.getInstance('Lib.Loader'); //assets loader class
|
|
39
|
-
Urso.localData = Urso.getInstance('Lib.LocalData'); //local data storage
|
|
40
|
-
Urso.logger = Urso.getInstance('Lib.Logger'); //logger
|
|
41
|
-
Urso.math = Urso.getInstance('Lib.Math'); //math functions
|
|
42
|
-
Urso.time = Urso.getInstance('Lib.Time'); //time functions
|
|
43
|
-
Urso.tween = Urso.getInstance('Lib.Tween'); //tween lib
|
|
44
|
-
|
|
45
|
-
//Modules
|
|
46
|
-
Urso.assets = Urso.getInstance('Modules.Assets.Controller');
|
|
47
|
-
Urso.buttons = Urso.getInstance('Modules.Buttons.Controller');
|
|
48
|
-
// TODO: CHECK FOR EVENT TO START COMMUNICATION WITH SERVER
|
|
49
|
-
Urso.transport = Urso.getInstance('Modules.Transport.Controller');
|
|
50
|
-
Urso.logic = Urso.getInstance('Modules.Logic.Controller');
|
|
51
|
-
Urso.objects = Urso.getInstance('Modules.Objects.Controller');
|
|
52
|
-
Urso.scenes = Urso.getInstance('Modules.Scenes.Controller');
|
|
53
|
-
Urso.soundManager = Urso.getInstance('Modules.SoundManager.Controller');
|
|
54
|
-
Urso.statesManager = Urso.getInstance('Modules.StatesManager.Controller');
|
|
55
|
-
Urso.template = Urso.getInstance('Modules.Template.Controller');
|
|
56
|
-
|
|
57
|
-
//set title
|
|
58
|
-
document.title = Urso.config.title;
|
|
59
|
-
|
|
60
|
-
//App.run
|
|
61
|
-
Urso.device.whenReady(() => {
|
|
62
|
-
Urso.assets.updateQuality();
|
|
63
|
-
Urso.getInstance('App').run();
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
sayHello() {
|
|
68
|
-
console.log(`%c ${String.fromCodePoint(0x1F43B)} Urso ${this.version} `, 'background: #222; color: #bada55');
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
run() {
|
|
72
|
-
Urso.scenes.display(Urso.config.defaultScene);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
module.exports = App;
|
|
1
|
+
class App {
|
|
2
|
+
constructor() {
|
|
3
|
+
this.version = 'APP_VERSION';
|
|
4
|
+
|
|
5
|
+
this.setup = this.setup.bind(this);
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
setup() {
|
|
9
|
+
this.sayHello();
|
|
10
|
+
|
|
11
|
+
//helper must be first
|
|
12
|
+
Urso.helper = new Urso.Core.Lib.Helper(); //helper functions
|
|
13
|
+
|
|
14
|
+
//setup Instances
|
|
15
|
+
let instances = new Urso.Core.Modules.Instances.Controller();
|
|
16
|
+
Urso.getInstance = instances.getInstance;
|
|
17
|
+
Urso.getByPath = instances.getByPath;
|
|
18
|
+
Urso.getInstancesModes = instances.getModes;
|
|
19
|
+
Urso.addInstancesMode = instances.addMode;
|
|
20
|
+
Urso.removeInstancesMode = instances.removeMode;
|
|
21
|
+
|
|
22
|
+
//build from extendingChain and merge all into Urso.Game
|
|
23
|
+
Urso.Game = {};
|
|
24
|
+
for (let extention of Urso.config.extendingChain)
|
|
25
|
+
Urso.helper.mergeObjectsRecursive(Urso.Game, Urso.helper.recursiveGet(extention, window, {}), true);
|
|
26
|
+
|
|
27
|
+
//(!)important we must use only Urso.Game from our code
|
|
28
|
+
|
|
29
|
+
//observer pattern
|
|
30
|
+
Urso.observer = Urso.getInstance('Modules.Observer.Controller');
|
|
31
|
+
|
|
32
|
+
//Extra
|
|
33
|
+
Urso.browserEvents = Urso.getInstance('Extra.BrowserEvents');
|
|
34
|
+
|
|
35
|
+
//libs
|
|
36
|
+
Urso.cache = Urso.getInstance('Lib.Cache'); //all assets cache
|
|
37
|
+
Urso.device = Urso.getByPath('Lib.Device'); //all device info
|
|
38
|
+
Urso.loader = Urso.getInstance('Lib.Loader'); //assets loader class
|
|
39
|
+
Urso.localData = Urso.getInstance('Lib.LocalData'); //local data storage
|
|
40
|
+
Urso.logger = Urso.getInstance('Lib.Logger'); //logger
|
|
41
|
+
Urso.math = Urso.getInstance('Lib.Math'); //math functions
|
|
42
|
+
Urso.time = Urso.getInstance('Lib.Time'); //time functions
|
|
43
|
+
Urso.tween = Urso.getInstance('Lib.Tween'); //tween lib
|
|
44
|
+
|
|
45
|
+
//Modules
|
|
46
|
+
Urso.assets = Urso.getInstance('Modules.Assets.Controller');
|
|
47
|
+
Urso.buttons = Urso.getInstance('Modules.Buttons.Controller');
|
|
48
|
+
// TODO: CHECK FOR EVENT TO START COMMUNICATION WITH SERVER
|
|
49
|
+
Urso.transport = Urso.getInstance('Modules.Transport.Controller');
|
|
50
|
+
Urso.logic = Urso.getInstance('Modules.Logic.Controller');
|
|
51
|
+
Urso.objects = Urso.getInstance('Modules.Objects.Controller');
|
|
52
|
+
Urso.scenes = Urso.getInstance('Modules.Scenes.Controller');
|
|
53
|
+
Urso.soundManager = Urso.getInstance('Modules.SoundManager.Controller');
|
|
54
|
+
Urso.statesManager = Urso.getInstance('Modules.StatesManager.Controller');
|
|
55
|
+
Urso.template = Urso.getInstance('Modules.Template.Controller');
|
|
56
|
+
|
|
57
|
+
//set title
|
|
58
|
+
document.title = Urso.config.title;
|
|
59
|
+
|
|
60
|
+
//App.run
|
|
61
|
+
Urso.device.whenReady(() => {
|
|
62
|
+
Urso.assets.updateQuality();
|
|
63
|
+
Urso.getInstance('App').run();
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
sayHello() {
|
|
68
|
+
console.log(`%c ${String.fromCodePoint(0x1F43B)} Urso ${this.version} `, 'background: #222; color: #bada55');
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
run() {
|
|
72
|
+
Urso.scenes.display(Urso.config.defaultScene);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
module.exports = App;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
Urso.Core.Components = {};
|
|
2
|
-
require('./base/_info.js');
|
|
3
|
-
require('./debug/_info.js');
|
|
4
|
-
require('./deviceRotate/_info.js');
|
|
5
|
-
require('./fullscreen/_info.js');
|
|
6
|
-
require('./loader/_info.js');
|
|
7
|
-
require('./soundInitialPopup/_info.js');
|
|
8
|
-
require('./stateDriven/_info.js');
|
|
1
|
+
Urso.Core.Components = {};
|
|
2
|
+
require('./base/_info.js');
|
|
3
|
+
require('./debug/_info.js');
|
|
4
|
+
require('./deviceRotate/_info.js');
|
|
5
|
+
require('./fullscreen/_info.js');
|
|
6
|
+
require('./loader/_info.js');
|
|
7
|
+
require('./soundInitialPopup/_info.js');
|
|
8
|
+
require('./stateDriven/_info.js');
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
Urso.Core.Components.Base = {
|
|
2
|
-
Controller: require('./controller.js')
|
|
3
|
-
};
|
|
1
|
+
Urso.Core.Components.Base = {
|
|
2
|
+
Controller: require('./controller.js')
|
|
3
|
+
};
|
|
@@ -1,78 +1,78 @@
|
|
|
1
|
-
class ComponentsBaseController {
|
|
2
|
-
|
|
3
|
-
constructor(options) {
|
|
4
|
-
this._templateName = 'Template';
|
|
5
|
-
this._inputValidation(options);
|
|
6
|
-
|
|
7
|
-
this.common = {
|
|
8
|
-
find: null, //find functions inside component object in scene
|
|
9
|
-
findAll: null,
|
|
10
|
-
findOne: null,
|
|
11
|
-
object: null //link to component object in scene
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
this.options = options;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* function for the component input params validation
|
|
19
|
-
* must return as a result input structure
|
|
20
|
-
* @returns {object}
|
|
21
|
-
* @example
|
|
22
|
-
* return {
|
|
23
|
-
* param1Name: 'number',
|
|
24
|
-
* param2Name: 'string'
|
|
25
|
-
* }
|
|
26
|
-
*/
|
|
27
|
-
_requiredOptionsModel() {
|
|
28
|
-
//
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
_inputValidation(options) {
|
|
32
|
-
//input options validation
|
|
33
|
-
let optionsModel = this._requiredOptionsModel();
|
|
34
|
-
|
|
35
|
-
if (optionsModel)
|
|
36
|
-
for (let optionKey in optionsModel) {
|
|
37
|
-
if (!options || typeof options[optionKey] !== optionsModel[optionKey])
|
|
38
|
-
Urso.logger.error('Component params model error', this);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
loadUpdate() {
|
|
43
|
-
//todo
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
assetsMount() {
|
|
47
|
-
let template = this.getInstance(this._templateName);
|
|
48
|
-
return { styles: template.styles, assets: template.assets };
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
objectsMount() {
|
|
52
|
-
let template = this.getInstance(this._templateName);
|
|
53
|
-
return template.objects;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
create() {
|
|
57
|
-
//main template was created, we can start access to our objects
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
/**
|
|
61
|
-
* @param {Number} deltaTime - time from last update call
|
|
62
|
-
*/
|
|
63
|
-
update(deltaTime) {
|
|
64
|
-
//TODO
|
|
65
|
-
//calls every browser cycle
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
_subscribeOnce() {
|
|
69
|
-
//will contains only this.addListener
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
destroy() {
|
|
73
|
-
//component will destroy after this function call
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
module.exports = ComponentsBaseController;
|
|
1
|
+
class ComponentsBaseController {
|
|
2
|
+
|
|
3
|
+
constructor(options) {
|
|
4
|
+
this._templateName = 'Template';
|
|
5
|
+
this._inputValidation(options);
|
|
6
|
+
|
|
7
|
+
this.common = {
|
|
8
|
+
find: null, //find functions inside component object in scene
|
|
9
|
+
findAll: null,
|
|
10
|
+
findOne: null,
|
|
11
|
+
object: null //link to component object in scene
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
this.options = options;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* function for the component input params validation
|
|
19
|
+
* must return as a result input structure
|
|
20
|
+
* @returns {object}
|
|
21
|
+
* @example
|
|
22
|
+
* return {
|
|
23
|
+
* param1Name: 'number',
|
|
24
|
+
* param2Name: 'string'
|
|
25
|
+
* }
|
|
26
|
+
*/
|
|
27
|
+
_requiredOptionsModel() {
|
|
28
|
+
//
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
_inputValidation(options) {
|
|
32
|
+
//input options validation
|
|
33
|
+
let optionsModel = this._requiredOptionsModel();
|
|
34
|
+
|
|
35
|
+
if (optionsModel)
|
|
36
|
+
for (let optionKey in optionsModel) {
|
|
37
|
+
if (!options || typeof options[optionKey] !== optionsModel[optionKey])
|
|
38
|
+
Urso.logger.error('Component params model error', this);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
loadUpdate() {
|
|
43
|
+
//todo
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
assetsMount() {
|
|
47
|
+
let template = this.getInstance(this._templateName);
|
|
48
|
+
return { styles: template.styles, assets: template.assets };
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
objectsMount() {
|
|
52
|
+
let template = this.getInstance(this._templateName);
|
|
53
|
+
return template.objects;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
create() {
|
|
57
|
+
//main template was created, we can start access to our objects
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* @param {Number} deltaTime - time from last update call
|
|
62
|
+
*/
|
|
63
|
+
update(deltaTime) {
|
|
64
|
+
//TODO
|
|
65
|
+
//calls every browser cycle
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
_subscribeOnce() {
|
|
69
|
+
//will contains only this.addListener
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
destroy() {
|
|
73
|
+
//component will destroy after this function call
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
module.exports = ComponentsBaseController;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Urso.Core.Components.Debug = {
|
|
2
|
-
Controller: require('./controller.js'),
|
|
3
|
-
Coords: require('./coords.js'),
|
|
4
|
-
Fps: require('./fps.js'),
|
|
5
|
-
Template: require('./template.js')
|
|
6
|
-
};
|
|
1
|
+
Urso.Core.Components.Debug = {
|
|
2
|
+
Controller: require('./controller.js'),
|
|
3
|
+
Coords: require('./coords.js'),
|
|
4
|
+
Fps: require('./fps.js'),
|
|
5
|
+
Template: require('./template.js')
|
|
6
|
+
};
|