@urso/core 0.2.5 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. package/.babelrc +11 -11
  2. package/README.md +10 -10
  3. package/build/js/index.js +1 -1
  4. package/build/js/index.js.LICENSE.txt +75 -47
  5. package/package.json +51 -52
  6. package/src/js/app.js +77 -76
  7. package/src/js/components/_info.js +8 -8
  8. package/src/js/components/base/_info.js +3 -3
  9. package/src/js/components/base/controller.js +78 -78
  10. package/src/js/components/debug/_info.js +6 -6
  11. package/src/js/components/debug/controller.js +38 -38
  12. package/src/js/components/debug/coords.js +23 -23
  13. package/src/js/components/debug/fps.js +34 -34
  14. package/src/js/components/debug/template.js +33 -33
  15. package/src/js/components/deviceRotate/_info.js +3 -3
  16. package/src/js/components/deviceRotate/controller.js +86 -86
  17. package/src/js/components/fullscreen/_info.js +6 -6
  18. package/src/js/components/fullscreen/android.js +104 -104
  19. package/src/js/components/fullscreen/controller.js +64 -64
  20. package/src/js/components/fullscreen/desktop.js +49 -49
  21. package/src/js/components/fullscreen/ios.js +111 -111
  22. package/src/js/components/loader/_info.js +4 -4
  23. package/src/js/components/loader/controller.js +66 -66
  24. package/src/js/components/loader/template.js +70 -70
  25. package/src/js/components/soundInitialPopup/_info.js +3 -3
  26. package/src/js/components/soundInitialPopup/controller.js +42 -42
  27. package/src/js/components/soundInitialPopup/template.js +109 -109
  28. package/src/js/components/stateDriven/_info.js +3 -3
  29. package/src/js/components/stateDriven/controller.js +96 -96
  30. package/src/js/config/load.js +5 -5
  31. package/src/js/config/main.js +10 -9
  32. package/src/js/extra/_info.js +21 -23
  33. package/src/js/extra/browserEvents.js +32 -32
  34. package/src/js/index.js +8 -8
  35. package/src/js/lib/_info.js +13 -13
  36. package/src/js/lib/cache.js +98 -98
  37. package/src/js/lib/composition.js +89 -89
  38. package/src/js/lib/device.js +1276 -1276
  39. package/src/js/lib/helper.js +539 -524
  40. package/src/js/lib/loader.js +121 -121
  41. package/src/js/lib/localData.js +15 -15
  42. package/src/js/lib/logger.js +22 -22
  43. package/src/js/lib/math.js +20 -20
  44. package/src/js/lib/objectPool.js +54 -54
  45. package/src/js/lib/time.js +18 -18
  46. package/src/js/lib/tween.js +147 -147
  47. package/src/js/modules/_info.js +11 -11
  48. package/src/js/modules/assets/_info.js +7 -7
  49. package/src/js/modules/assets/baseModel.js +18 -18
  50. package/src/js/modules/assets/config.js +35 -35
  51. package/src/js/modules/assets/controller.js +39 -37
  52. package/src/js/modules/assets/models/_info.js +11 -12
  53. package/src/js/modules/assets/models/atlas.js +8 -8
  54. package/src/js/modules/assets/models/audiosprite.js +27 -27
  55. package/src/js/modules/assets/models/bitmapFont.js +8 -8
  56. package/src/js/modules/assets/models/container.js +16 -16
  57. package/src/js/modules/assets/models/font.js +8 -8
  58. package/src/js/modules/assets/models/image.js +14 -14
  59. package/src/js/modules/assets/models/json.js +8 -8
  60. package/src/js/modules/assets/models/sound.js +14 -14
  61. package/src/js/modules/assets/models/spine.js +8 -8
  62. package/src/js/modules/assets/service.js +327 -330
  63. package/src/js/modules/instances/_info.js +3 -3
  64. package/src/js/modules/instances/controller.js +219 -218
  65. package/src/js/modules/logic/_info.js +4 -5
  66. package/src/js/modules/logic/config/_info.js +2 -3
  67. package/src/js/modules/logic/config/sounds.js +23 -23
  68. package/src/js/modules/logic/controller.js +48 -48
  69. package/src/js/modules/logic/sounds.js +96 -96
  70. package/src/js/modules/objects/_info.js +11 -11
  71. package/src/js/modules/objects/baseModel.js +161 -161
  72. package/src/js/modules/objects/cache.js +99 -99
  73. package/src/js/modules/objects/controller.js +121 -115
  74. package/src/js/modules/objects/create.js +230 -246
  75. package/src/js/modules/objects/find.js +140 -140
  76. package/src/js/modules/objects/models/_info.js +24 -25
  77. package/src/js/modules/objects/models/atlasImage.js +50 -50
  78. package/src/js/modules/objects/models/bitmapText.js +23 -23
  79. package/src/js/modules/objects/models/button.js +184 -184
  80. package/src/js/modules/objects/models/buttonComposite.js +35 -35
  81. package/src/js/modules/objects/models/checkbox.js +95 -96
  82. package/src/js/modules/objects/models/collection.js +54 -54
  83. package/src/js/modules/objects/models/component.js +44 -44
  84. package/src/js/modules/objects/models/container.js +19 -19
  85. package/src/js/modules/objects/models/emitter.js +54 -54
  86. package/src/js/modules/objects/models/graphics.js +38 -38
  87. package/src/js/modules/objects/models/group.js +19 -19
  88. package/src/js/modules/objects/models/hitArea.js +104 -104
  89. package/src/js/modules/objects/models/image.js +34 -34
  90. package/src/js/modules/objects/models/imagesAnimation.js +113 -113
  91. package/src/js/modules/objects/models/mask.js +38 -38
  92. package/src/js/modules/objects/models/scrollbox.js +61 -61
  93. package/src/js/modules/objects/models/slider.js +199 -154
  94. package/src/js/modules/objects/models/spine.js +83 -83
  95. package/src/js/modules/objects/models/text.js +38 -38
  96. package/src/js/modules/objects/models/textInput.js +55 -55
  97. package/src/js/modules/objects/models/toggle.js +169 -169
  98. package/src/js/modules/objects/models/world.js +19 -19
  99. package/src/js/modules/objects/propertyAdapter.js +421 -421
  100. package/src/js/modules/objects/proxy.js +179 -179
  101. package/src/js/modules/objects/styles.js +116 -116
  102. package/src/js/modules/observer/_info.js +4 -4
  103. package/src/js/modules/observer/controller.js +99 -99
  104. package/src/js/modules/observer/events.js +33 -32
  105. package/src/js/modules/scenes/_info.js +8 -8
  106. package/src/js/modules/scenes/controller.js +34 -34
  107. package/src/js/modules/scenes/model.js +35 -35
  108. package/src/js/modules/scenes/pixiWrapper.js +194 -194
  109. package/src/js/modules/scenes/resolutions.js +168 -161
  110. package/src/js/modules/scenes/resolutionsConfig.js +73 -73
  111. package/src/js/modules/scenes/service.js +84 -84
  112. package/src/js/modules/soundManager/_info.js +3 -3
  113. package/src/js/modules/soundManager/controller.js +99 -99
  114. package/src/js/modules/soundManager/soundSprite.js +202 -202
  115. package/src/js/modules/statesManager/_info.js +12 -12
  116. package/src/js/modules/statesManager/action.js +55 -55
  117. package/src/js/modules/statesManager/actions/_info.js +3 -3
  118. package/src/js/modules/statesManager/all.js +23 -23
  119. package/src/js/modules/statesManager/configStates.js +71 -71
  120. package/src/js/modules/statesManager/controller.js +131 -132
  121. package/src/js/modules/statesManager/functionsStorage.js +82 -82
  122. package/src/js/modules/statesManager/helper.js +27 -27
  123. package/src/js/modules/statesManager/race.js +75 -75
  124. package/src/js/modules/statesManager/sequence.js +47 -47
  125. package/src/js/modules/template/_info.js +6 -6
  126. package/src/js/modules/template/controller.js +28 -28
  127. package/src/js/modules/template/model.js +11 -11
  128. package/src/js/modules/template/service.js +125 -125
  129. package/src/js/modules/template/types.js +44 -46
  130. package/src/js/modules/transport/_info.js +8 -8
  131. package/src/js/modules/transport/baseConnectionType.js +24 -24
  132. package/src/js/modules/transport/config.js +22 -22
  133. package/src/js/modules/transport/connectionTypes/_info.js +3 -3
  134. package/src/js/modules/transport/connectionTypes/websocket.js +74 -74
  135. package/src/js/modules/transport/connectionTypes/xhr.js +41 -41
  136. package/src/js/modules/transport/controller.js +48 -48
  137. package/src/js/modules/transport/decorator.js +16 -16
  138. package/src/js/modules/transport/service.js +140 -138
  139. package/src/js/templates/_info.js +4 -4
  140. package/src/js/templates/groups/_info.js +1 -1
  141. package/src/js/templates/scenes/_info.js +1 -1
  142. package/webpack.config.js +47 -47
  143. package/src/js/modules/assets/models/dragonBones.js +0 -27
  144. package/src/js/modules/logic/buttons.js +0 -120
  145. package/src/js/modules/logic/config/buttons.js +0 -63
  146. package/src/js/modules/objects/models/dragonBones.js +0 -250
@@ -27,127 +27,131 @@ object-assign
27
27
  */
28
28
 
29
29
  /*!
30
- * @pixi/constants - v5.3.10
31
- * Compiled Mon, 07 Jun 2021 22:37:25 UTC
30
+ * @pixi-spine/loader-base - v3.0.13
31
+ * Compiled Mon, 13 Sep 2021 16:46:34 UTC
32
+ *
33
+ * @pixi-spine/loader-base is licensed under the MIT License.
34
+ * http://www.opensource.org/licenses/mit-license
35
+ *
36
+ * Copyright 2019-2020, Ivan Igorevich Popelyshev <ivan.popelyshev@gmail.com>, All Rights Reserved
37
+ */
38
+
39
+ /*!
40
+ * @pixi-spine/runtime-3.8 - v3.0.13
41
+ * Compiled Mon, 13 Sep 2021 16:46:34 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
+ /*!
50
+ * @pixi/constants - v6.2.0
51
+ * Compiled Mon, 01 Nov 2021 16:52:10 UTC
32
52
  *
33
53
  * @pixi/constants is licensed under the MIT License.
34
54
  * http://www.opensource.org/licenses/mit-license
35
55
  */
36
56
 
37
57
  /*!
38
- * @pixi/core - v5.3.10
39
- * Compiled Mon, 07 Jun 2021 22:37:25 UTC
58
+ * @pixi/core - v6.2.0
59
+ * Compiled Mon, 01 Nov 2021 16:52:10 UTC
40
60
  *
41
61
  * @pixi/core is licensed under the MIT License.
42
62
  * http://www.opensource.org/licenses/mit-license
43
63
  */
44
64
 
45
65
  /*!
46
- * @pixi/display - v5.3.10
47
- * Compiled Mon, 07 Jun 2021 22:37:25 UTC
66
+ * @pixi/display - v6.2.0
67
+ * Compiled Mon, 01 Nov 2021 16:52:10 UTC
48
68
  *
49
69
  * @pixi/display is licensed under the MIT License.
50
70
  * http://www.opensource.org/licenses/mit-license
51
71
  */
52
72
 
53
73
  /*!
54
- * @pixi/extract - v5.3.10
55
- * Compiled Mon, 07 Jun 2021 22:37:25 UTC
74
+ * @pixi/extract - v6.2.0
75
+ * Compiled Mon, 01 Nov 2021 16:52:10 UTC
56
76
  *
57
77
  * @pixi/extract is licensed under the MIT License.
58
78
  * http://www.opensource.org/licenses/mit-license
59
79
  */
60
80
 
61
81
  /*!
62
- * @pixi/filter-displacement - v5.3.10
63
- * Compiled Mon, 07 Jun 2021 22:37:25 UTC
82
+ * @pixi/filter-displacement - v6.2.0
83
+ * Compiled Mon, 01 Nov 2021 16:52:10 UTC
64
84
  *
65
85
  * @pixi/filter-displacement is licensed under the MIT License.
66
86
  * http://www.opensource.org/licenses/mit-license
67
87
  */
68
88
 
69
89
  /*!
70
- * @pixi/loaders - v5.3.10
71
- * Compiled Mon, 07 Jun 2021 22:37:25 UTC
90
+ * @pixi/loaders - v6.2.0
91
+ * Compiled Mon, 01 Nov 2021 16:52:10 UTC
72
92
  *
73
93
  * @pixi/loaders is licensed under the MIT License.
74
94
  * http://www.opensource.org/licenses/mit-license
75
95
  */
76
96
 
77
97
  /*!
78
- * @pixi/math - v5.3.10
79
- * Compiled Mon, 07 Jun 2021 22:37:25 UTC
98
+ * @pixi/math - v6.2.0
99
+ * Compiled Mon, 01 Nov 2021 16:52:10 UTC
80
100
  *
81
101
  * @pixi/math is licensed under the MIT License.
82
102
  * http://www.opensource.org/licenses/mit-license
83
103
  */
84
104
 
85
105
  /*!
86
- * @pixi/mesh-extras - v5.3.10
87
- * Compiled Mon, 07 Jun 2021 22:37:25 UTC
88
- *
89
- * @pixi/mesh-extras is licensed under the MIT License.
90
- * http://www.opensource.org/licenses/mit-license
91
- */
92
-
93
- /*!
94
- * @pixi/mixin-get-child-by-name - v5.3.10
95
- * Compiled Mon, 07 Jun 2021 22:37:25 UTC
106
+ * @pixi/mixin-get-child-by-name - v6.2.0
107
+ * Compiled Mon, 01 Nov 2021 16:52:10 UTC
96
108
  *
97
109
  * @pixi/mixin-get-child-by-name is licensed under the MIT License.
98
110
  * http://www.opensource.org/licenses/mit-license
99
111
  */
100
112
 
101
113
  /*!
102
- * @pixi/mixin-get-global-position - v5.3.10
103
- * Compiled Mon, 07 Jun 2021 22:37:25 UTC
114
+ * @pixi/mixin-get-global-position - v6.2.0
115
+ * Compiled Mon, 01 Nov 2021 16:52:10 UTC
104
116
  *
105
117
  * @pixi/mixin-get-global-position is licensed under the MIT License.
106
118
  * http://www.opensource.org/licenses/mit-license
107
119
  */
108
120
 
109
121
  /*!
110
- * @pixi/polyfill - v5.3.10
111
- * Compiled Mon, 07 Jun 2021 22:37:25 UTC
122
+ * @pixi/polyfill - v6.2.0
123
+ * Compiled Mon, 01 Nov 2021 16:52:10 UTC
112
124
  *
113
125
  * @pixi/polyfill is licensed under the MIT License.
114
126
  * http://www.opensource.org/licenses/mit-license
115
127
  */
116
128
 
117
129
  /*!
118
- * @pixi/prepare - v5.3.10
119
- * Compiled Mon, 07 Jun 2021 22:37:25 UTC
130
+ * @pixi/prepare - v6.2.0
131
+ * Compiled Mon, 01 Nov 2021 16:52:10 UTC
120
132
  *
121
133
  * @pixi/prepare is licensed under the MIT License.
122
134
  * http://www.opensource.org/licenses/mit-license
123
135
  */
124
136
 
125
137
  /*!
126
- * @pixi/runner - v5.3.10
127
- * Compiled Mon, 07 Jun 2021 22:37:25 UTC
138
+ * @pixi/runner - v6.2.0
139
+ * Compiled Mon, 01 Nov 2021 16:52:10 UTC
128
140
  *
129
141
  * @pixi/runner is licensed under the MIT License.
130
142
  * http://www.opensource.org/licenses/mit-license
131
143
  */
132
144
 
133
145
  /*!
134
- * @pixi/ticker - v5.3.10
135
- * Compiled Mon, 07 Jun 2021 22:37:25 UTC
146
+ * @pixi/ticker - v6.2.0
147
+ * Compiled Mon, 01 Nov 2021 16:52:10 UTC
136
148
  *
137
149
  * @pixi/ticker is licensed under the MIT License.
138
150
  * http://www.opensource.org/licenses/mit-license
139
151
  */
140
152
 
141
153
  /*!
142
- * @pixi/utils - v5.3.10
143
- * Compiled Mon, 07 Jun 2021 22:37:25 UTC
144
- *
145
- * @pixi/utils is licensed under the MIT License.
146
- * http://www.opensource.org/licenses/mit-license
147
- */
148
-
149
- /*!
150
- * GSAP 3.7.1
154
+ * GSAP 3.8.0
151
155
  * https://greensock.com
152
156
  *
153
157
  * @license Copyright 2008-2021, GreenSock. All rights reserved.
@@ -164,6 +168,16 @@ object-assign
164
168
  * http://www.opensource.org/licenses/mit-license
165
169
  */
166
170
 
171
+ /*!
172
+ * pixi-spine - v3.0.13
173
+ * Compiled Mon, 13 Sep 2021 16:46:43 UTC
174
+ *
175
+ * pixi-spine is licensed under the MIT License.
176
+ * http://www.opensource.org/licenses/mit-license
177
+ *
178
+ * Copyright 2019-2020, Ivan Igorevich Popelyshev <ivan.popelyshev@gmail.com>, All Rights Reserved
179
+ */
180
+
167
181
  /*!
168
182
  * pixi-viewport - v4.34.3
169
183
  * Compiled Wed, 01 Dec 2021 19:28:04 UTC
@@ -175,14 +189,28 @@ object-assign
175
189
  */
176
190
 
177
191
  /*!
178
- * resource-loader - v3.0.1
179
- * https://github.com/pixijs/pixi-sound
180
- * Compiled Tue, 02 Jul 2019 14:06:18 UTC
192
+ * pixi.js - v6.2.0
193
+ * Compiled Mon, 01 Nov 2021 16:52:10 UTC
181
194
  *
182
- * resource-loader is licensed under the MIT license.
195
+ * pixi.js is licensed under the MIT License.
183
196
  * http://www.opensource.org/licenses/mit-license
184
197
  */
185
198
 
199
+ /*! *****************************************************************************
200
+ Copyright (c) Microsoft Corporation.
201
+
202
+ Permission to use, copy, modify, and/or distribute this software for any
203
+ purpose with or without fee is hereby granted.
204
+
205
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
206
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
207
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
208
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
209
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
210
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
211
+ PERFORMANCE OF THIS SOFTWARE.
212
+ ***************************************************************************** */
213
+
186
214
  /*! *****************************************************************************
187
215
  Copyright (c) Microsoft Corporation. All rights reserved.
188
216
  Licensed under the Apache License, Version 2.0 (the "License"); you may not use
package/package.json CHANGED
@@ -1,52 +1,51 @@
1
- {
2
- "name": "@urso/core",
3
- "version": "0.2.05",
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.3.0",
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": "^3.0.13",
31
+ "pixi.js": "^6.2.0",
32
+ "pixi-scrollbox": "^2.3.1",
33
+ "pixi-viewport": "^4.34.0",
34
+ "pixi-text-input": "^1.0.6"
35
+ },
36
+ "devDependencies": {
37
+ "@babel/core": "^7.12.10",
38
+ "@babel/preset-env": "^7.12.11",
39
+ "babel-loader": "^8.2.2",
40
+ "copy-webpack-plugin": "^5.0.3",
41
+ "exports-loader": "^0.7.0",
42
+ "html-webpack-plugin": "^5.1.0",
43
+ "script-loader": "^0.7.2",
44
+ "source-map-loader": "^1.0.0",
45
+ "string-replace-loader": "^3.0.3",
46
+ "style-loader": "^0.23.1",
47
+ "webpack": "^5.11.0",
48
+ "webpack-cli": "^4.2.0",
49
+ "webpack-dev-server": "^3.11.0"
50
+ }
51
+ }
package/src/js/app.js CHANGED
@@ -1,76 +1,77 @@
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.transport = Urso.getInstance('Modules.Transport.Controller');
48
+ Urso.logic = Urso.getInstance('Modules.Logic.Controller');
49
+ Urso.objects = Urso.getInstance('Modules.Objects.Controller');
50
+ Urso.scenes = Urso.getInstance('Modules.Scenes.Controller');
51
+ Urso.soundManager = Urso.getInstance('Modules.SoundManager.Controller');
52
+ Urso.statesManager = Urso.getInstance('Modules.StatesManager.Controller');
53
+ Urso.template = Urso.getInstance('Modules.Template.Controller');
54
+
55
+ //set title
56
+ document.title = Urso.config.title;
57
+
58
+ //device type mode
59
+ Urso.addInstancesMode(!Urso.helper.mobileAndTabletCheck() ? 'desktop' : 'mobile');
60
+
61
+ //App.run
62
+ Urso.device.whenReady(() => {
63
+ Urso.assets.updateQuality();
64
+ Urso.getInstance('App').run();
65
+ });
66
+ }
67
+
68
+ sayHello() {
69
+ console.log(`%c ${String.fromCodePoint(0x1F43B)} Urso ${this.version} `, 'background: #222; color: #bada55');
70
+ }
71
+
72
+ run() {
73
+ Urso.scenes.display(Urso.config.defaultScene);
74
+ }
75
+ }
76
+
77
+ 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;