@urso/core 0.2.6 → 0.3.1

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
@@ -1,64 +1,64 @@
1
- ComponentsBaseController = require('./../base/controller.js');
2
-
3
- class ComponentsFullscreenController extends ComponentsBaseController {
4
-
5
- constructor(params) {
6
- super(params);
7
-
8
- this._fullscreenActivator = null;
9
- this._resolutionsConfig = null;
10
-
11
- this.createActivator();
12
- }
13
-
14
- createActivator() {
15
- if (this._isCriOS)
16
- return;
17
-
18
- this._resolutionsConfig = Urso.getInstance('Modules.Scenes.ResolutionsConfig').contents || [];
19
-
20
- if (Urso.device.desktop)
21
- this._fullscreenActivator = this.getInstance('Desktop');
22
- else if (Urso.device.iOS)
23
- this._fullscreenActivator = this.getInstance('Ios');
24
- else if (Urso.device.android)
25
- this._fullscreenActivator = this.getInstance('Android');
26
-
27
- if (this._fullscreenActivator)
28
- this._fullscreenActivator.init();
29
- }
30
-
31
- get _isCriOS() {
32
- return navigator.userAgent.indexOf('CriOS') !== -1;
33
- }
34
-
35
- get _orientationsConfig() {
36
- return Urso.getInstance('Modules.Scenes.ResolutionsConfig')._orientations || [];
37
- }
38
-
39
- get _showOnLandscape() {
40
- return this._resolutionsConfig.find(resolution => resolution.orientation === 'landscape');
41
- }
42
-
43
- get _showOnPortrait() {
44
- return this._resolutionsConfig.find(resolution => resolution.orientation === 'portrait');
45
- }
46
-
47
- get _isPortrait() {
48
- return innerWidth > innerHeight ? 'portrait' : 'landscape';
49
- }
50
-
51
- get isFullscreen() {
52
- return this._fullscreenActivator.isFullscreen;
53
- }
54
-
55
- _resizeHandler() {
56
- Urso.localData.set('fullscreen.isFullscreen', this.isFullscreen);
57
- }
58
-
59
- _subscribeOnce() {
60
- this.addListener(Urso.events.EXTRA_BROWSEREVENTS_WINDOW_RESIZE, this._resizeHandler.bind(this));
61
- }
62
- }
63
-
64
- module.exports = ComponentsFullscreenController;
1
+ ComponentsBaseController = require('./../base/controller.js');
2
+
3
+ class ComponentsFullscreenController extends ComponentsBaseController {
4
+
5
+ constructor(params) {
6
+ super(params);
7
+
8
+ this._fullscreenActivator = null;
9
+ this._resolutionsConfig = null;
10
+
11
+ this.createActivator();
12
+ }
13
+
14
+ createActivator() {
15
+ if (this._isCriOS)
16
+ return;
17
+
18
+ this._resolutionsConfig = Urso.getInstance('Modules.Scenes.ResolutionsConfig').contents || [];
19
+
20
+ if (Urso.device.desktop)
21
+ this._fullscreenActivator = this.getInstance('Desktop');
22
+ else if (Urso.device.iOS)
23
+ this._fullscreenActivator = this.getInstance('Ios');
24
+ else if (Urso.device.android)
25
+ this._fullscreenActivator = this.getInstance('Android');
26
+
27
+ if (this._fullscreenActivator)
28
+ this._fullscreenActivator.init();
29
+ }
30
+
31
+ get _isCriOS() {
32
+ return navigator.userAgent.indexOf('CriOS') !== -1;
33
+ }
34
+
35
+ get _orientationsConfig() {
36
+ return Urso.getInstance('Modules.Scenes.ResolutionsConfig')._orientations || [];
37
+ }
38
+
39
+ get _showOnLandscape() {
40
+ return this._resolutionsConfig.find(resolution => resolution.orientation === 'landscape');
41
+ }
42
+
43
+ get _showOnPortrait() {
44
+ return this._resolutionsConfig.find(resolution => resolution.orientation === 'portrait');
45
+ }
46
+
47
+ get _isPortrait() {
48
+ return innerWidth > innerHeight ? 'portrait' : 'landscape';
49
+ }
50
+
51
+ get isFullscreen() {
52
+ return this._fullscreenActivator.isFullscreen;
53
+ }
54
+
55
+ _resizeHandler() {
56
+ Urso.localData.set('fullscreen.isFullscreen', this.isFullscreen);
57
+ }
58
+
59
+ _subscribeOnce() {
60
+ this.addListener(Urso.events.EXTRA_BROWSEREVENTS_WINDOW_RESIZE, this._resizeHandler.bind(this));
61
+ }
62
+ }
63
+
64
+ module.exports = ComponentsFullscreenController;
@@ -1,49 +1,49 @@
1
- class ComponentsFullscreenDesktop {
2
- init() {}
3
-
4
- get isFullscreen() {
5
- return (
6
- document.webkitIsFullScreen ||
7
- document.mozFullScreen ||
8
- document.fullscreen
9
- );
10
- }
11
-
12
- _requestFullscreen() {
13
- if (document.body.webkitRequestFullScreen)
14
- document.body.webkitRequestFullScreen();
15
- else if (document.body.mozRequestFullScreen)
16
- document.body.mozRequestFullScreen();
17
- else if (document.body.requestFullScreen)
18
- document.body.requestFullScreen();
19
- }
20
-
21
- _cancelFullscreen() {
22
- if (document.webkitCancelFullScreen)
23
- document.webkitCancelFullScreen();
24
- else if (document.mozCancelFullScreen)
25
- document.mozCancelFullScreen();
26
- else if (document.cancelFullScreen)
27
- document.cancelFullScreen();
28
- }
29
-
30
- _switchFullscreen(needGoFullscreen = null) {
31
- if (needGoFullscreen === null)
32
- needGoFullscreen = !this.isFullscreen;
33
-
34
- if (needGoFullscreen)
35
- this._requestFullscreen();
36
- else
37
- this._cancelFullscreen();
38
- }
39
-
40
- _fullscreenSwitchHandler(needGoFullscreen = null) {
41
- this._switchFullscreen(needGoFullscreen);
42
- }
43
-
44
- _subscribeOnce() {
45
- this.addListener('components.fullscreen.switch', this._fullscreenSwitchHandler.bind(this));
46
- }
47
- }
48
-
49
- module.exports = ComponentsFullscreenDesktop;
1
+ class ComponentsFullscreenDesktop {
2
+ init() {}
3
+
4
+ get isFullscreen() {
5
+ return (
6
+ document.webkitIsFullScreen ||
7
+ document.mozFullScreen ||
8
+ document.fullscreen
9
+ );
10
+ }
11
+
12
+ _requestFullscreen() {
13
+ if (document.body.webkitRequestFullScreen)
14
+ document.body.webkitRequestFullScreen();
15
+ else if (document.body.mozRequestFullScreen)
16
+ document.body.mozRequestFullScreen();
17
+ else if (document.body.requestFullScreen)
18
+ document.body.requestFullScreen();
19
+ }
20
+
21
+ _cancelFullscreen() {
22
+ if (document.webkitCancelFullScreen)
23
+ document.webkitCancelFullScreen();
24
+ else if (document.mozCancelFullScreen)
25
+ document.mozCancelFullScreen();
26
+ else if (document.cancelFullScreen)
27
+ document.cancelFullScreen();
28
+ }
29
+
30
+ _switchFullscreen(needGoFullscreen = null) {
31
+ if (needGoFullscreen === null)
32
+ needGoFullscreen = !this.isFullscreen;
33
+
34
+ if (needGoFullscreen)
35
+ this._requestFullscreen();
36
+ else
37
+ this._cancelFullscreen();
38
+ }
39
+
40
+ _fullscreenSwitchHandler(needGoFullscreen = null) {
41
+ this._switchFullscreen(needGoFullscreen);
42
+ }
43
+
44
+ _subscribeOnce() {
45
+ this.addListener('components.fullscreen.switch', this._fullscreenSwitchHandler.bind(this));
46
+ }
47
+ }
48
+
49
+ module.exports = ComponentsFullscreenDesktop;
@@ -1,111 +1,111 @@
1
- class ComponentsFullscreenIos {
2
- constructor() {
3
- this._div = null;
4
- this._orientation = null;
5
- this._scrollTimeout = null;
6
- }
7
-
8
- init() {
9
- this._createDom();
10
- this._addListeners();
11
- this._updateResize();
12
- }
13
-
14
- _createDom() {
15
- this._div = document.createElement('div');
16
- this._div.className = 'fullscreen fullscreen-ios';
17
- document.body.prepend(this._div);
18
-
19
- const infoDiv = document.createElement('div');
20
- infoDiv.className = 'fullscreen-info';
21
- this._div.appendChild(infoDiv);
22
-
23
- const image = document.createElement('img');
24
- image.src = '/assets/images/fullscreen/scroll.png';
25
- const span = document.createElement('span');
26
- span.innerText = 'Swipe up to enter fullscreen';
27
-
28
- infoDiv.appendChild(image);
29
- infoDiv.appendChild(span);
30
- }
31
-
32
- _addListeners() {
33
- window.addEventListener('touchmove', (e) => {
34
- this._updateResize();
35
-
36
- if (e.touches.length > 1) {
37
- e.preventDefault();
38
- return;
39
- }
40
- });
41
- }
42
-
43
- get _isFullscreen() {
44
- const minFactor = 0.51;
45
- const deviceFactor = screen.width / screen.height;
46
- const factor = this._isPortrait ?
47
- innerWidth / innerHeight :
48
- innerHeight / innerWidth;
49
-
50
- return !(
51
- this._isPortrait ?
52
- factor - deviceFactor < 0.1:
53
- factor > minFactor
54
- );
55
- }
56
-
57
- _updateOrientation() {
58
- this._orientation = innerWidth > innerHeight ? 'landscape' : 'portrait';
59
- }
60
-
61
- _updateResize() {
62
- this._updateOrientation();
63
- this.isVisible = this._needShowOnCurrentOrientation && this._isFullscreen;
64
- }
65
-
66
- get _orientationsConfig() {
67
- return Urso.getInstance('Modules.Scenes.ResolutionsConfig').contents || [];
68
- }
69
-
70
- get _isPortrait() {
71
- return this._orientation === 'portrait';
72
- }
73
-
74
- get _needShowOnCurrentOrientation() {
75
- return (this._isPortrait && this._showOnPortrait) || (!this._isPortrait && this._showOnLandscape);
76
- }
77
-
78
- get _showOnLandscape() {
79
- return this._orientationsConfig.find(resolution => resolution.orientation === 'landscape');
80
- }
81
-
82
- get _showOnPortrait() {
83
- return this._orientationsConfig.find(resolution => resolution.orientation === 'portrait');
84
- }
85
-
86
- set isVisible(needShowDiv) {
87
- this._div.style.zIndex = needShowDiv ? 1 : -1;
88
- clearTimeout(this._scrollTimeout)
89
- this._scrollTimeout = setTimeout(() => {
90
- if(needShowDiv)
91
- window.scrollTo(0,0);
92
- }, 200);
93
- }
94
-
95
- _resizeHandler() {
96
- this._updateResize();
97
- }
98
-
99
- _fullscreenSwitchHandler(needGoFullscreen = null) {
100
- this._switchFullscreen(needGoFullscreen);
101
- }
102
-
103
- _subscribeOnce() {
104
- this.addListener(
105
- Urso.events.EXTRA_BROWSEREVENTS_WINDOW_RESIZE,
106
- this._resizeHandler.bind(this)
107
- );
108
- }
109
- }
110
-
111
- module.exports = ComponentsFullscreenIos;
1
+ class ComponentsFullscreenIos {
2
+ constructor() {
3
+ this._div = null;
4
+ this._orientation = null;
5
+ this._scrollTimeout = null;
6
+ }
7
+
8
+ init() {
9
+ this._createDom();
10
+ this._addListeners();
11
+ this._updateResize();
12
+ }
13
+
14
+ _createDom() {
15
+ this._div = document.createElement('div');
16
+ this._div.className = 'fullscreen fullscreen-ios';
17
+ document.body.prepend(this._div);
18
+
19
+ const infoDiv = document.createElement('div');
20
+ infoDiv.className = 'fullscreen-info';
21
+ this._div.appendChild(infoDiv);
22
+
23
+ const image = document.createElement('img');
24
+ image.src = '/assets/images/fullscreen/scroll.png';
25
+ const span = document.createElement('span');
26
+ span.innerText = 'Swipe up to enter fullscreen';
27
+
28
+ infoDiv.appendChild(image);
29
+ infoDiv.appendChild(span);
30
+ }
31
+
32
+ _addListeners() {
33
+ window.addEventListener('touchmove', (e) => {
34
+ this._updateResize();
35
+
36
+ if (e.touches.length > 1) {
37
+ e.preventDefault();
38
+ return;
39
+ }
40
+ });
41
+ }
42
+
43
+ get _isFullscreen() {
44
+ const minFactor = 0.51;
45
+ const deviceFactor = screen.width / screen.height;
46
+ const factor = this._isPortrait ?
47
+ innerWidth / innerHeight :
48
+ innerHeight / innerWidth;
49
+
50
+ return !(
51
+ this._isPortrait ?
52
+ factor - deviceFactor < 0.1:
53
+ factor > minFactor
54
+ );
55
+ }
56
+
57
+ _updateOrientation() {
58
+ this._orientation = innerWidth > innerHeight ? 'landscape' : 'portrait';
59
+ }
60
+
61
+ _updateResize() {
62
+ this._updateOrientation();
63
+ this.isVisible = this._needShowOnCurrentOrientation && this._isFullscreen;
64
+ }
65
+
66
+ get _orientationsConfig() {
67
+ return Urso.getInstance('Modules.Scenes.ResolutionsConfig').contents || [];
68
+ }
69
+
70
+ get _isPortrait() {
71
+ return this._orientation === 'portrait';
72
+ }
73
+
74
+ get _needShowOnCurrentOrientation() {
75
+ return (this._isPortrait && this._showOnPortrait) || (!this._isPortrait && this._showOnLandscape);
76
+ }
77
+
78
+ get _showOnLandscape() {
79
+ return this._orientationsConfig.find(resolution => resolution.orientation === 'landscape');
80
+ }
81
+
82
+ get _showOnPortrait() {
83
+ return this._orientationsConfig.find(resolution => resolution.orientation === 'portrait');
84
+ }
85
+
86
+ set isVisible(needShowDiv) {
87
+ this._div.style.zIndex = needShowDiv ? 1 : -1;
88
+ clearTimeout(this._scrollTimeout)
89
+ this._scrollTimeout = setTimeout(() => {
90
+ if(needShowDiv)
91
+ window.scrollTo(0,0);
92
+ }, 200);
93
+ }
94
+
95
+ _resizeHandler() {
96
+ this._updateResize();
97
+ }
98
+
99
+ _fullscreenSwitchHandler(needGoFullscreen = null) {
100
+ this._switchFullscreen(needGoFullscreen);
101
+ }
102
+
103
+ _subscribeOnce() {
104
+ this.addListener(
105
+ Urso.events.EXTRA_BROWSEREVENTS_WINDOW_RESIZE,
106
+ this._resizeHandler.bind(this)
107
+ );
108
+ }
109
+ }
110
+
111
+ module.exports = ComponentsFullscreenIos;
@@ -1,4 +1,4 @@
1
- Urso.Core.Components.Loader = {
2
- Controller: require('./controller.js'),
3
- Template: require('./template.js')
4
- };
1
+ Urso.Core.Components.Loader = {
2
+ Controller: require('./controller.js'),
3
+ Template: require('./template.js')
4
+ };
@@ -1,66 +1,66 @@
1
- class ComponentsLoaderController extends Urso.Core.Components.Base.Controller {
2
-
3
- constructor(options){
4
- super(options);
5
-
6
- //load own assets
7
-
8
- //then create loader objects
9
- Urso.objects.create(this.getInstance('Template').objects)
10
-
11
-
12
- }
13
-
14
- assetsMount() {
15
- return false;
16
- }
17
-
18
- objectsMount() {
19
- return false;
20
- }
21
-
22
- loadUpdate(loadProgress) {
23
- this.setLoadProgress(loadProgress);
24
- }
25
-
26
- create(){
27
- this.setMask();
28
-
29
- //todo remove all objects
30
- }
31
-
32
- setMask(){
33
- if(this.loaderBg && this.loaderBgMask)
34
- this.loaderBg._baseObject.mask = this.loaderBgMask._baseObject
35
- }
36
-
37
- formatAmountText(text){
38
- return `${text}%`;
39
- }
40
-
41
- setLoadProgress(val){
42
- if(!this.componentCreated)
43
- return;
44
-
45
- this.loaderBgMask._baseObject.scale.x = val;
46
- this.loadAmountText.text = this.formatAmountText(val);
47
- }
48
-
49
- get componentCreated(){
50
- return !!this.loadAmountText && !!this.loaderBg && !!this.loaderBgMask;
51
- }
52
-
53
- get loadAmountText(){
54
- return Urso.findOne('.loadAmountText');
55
- }
56
-
57
- get loaderBg(){
58
- return Urso.findOne('^loaderBg');
59
- }
60
-
61
- get loaderBgMask(){
62
- return Urso.findOne('^loaderBgMask');
63
- }
64
- }
65
-
66
- module.exports = ComponentsLoaderController;
1
+ class ComponentsLoaderController extends Urso.Core.Components.Base.Controller {
2
+
3
+ constructor(options){
4
+ super(options);
5
+
6
+ //load own assets
7
+
8
+ //then create loader objects
9
+ Urso.objects.create(this.getInstance('Template').objects)
10
+
11
+
12
+ }
13
+
14
+ assetsMount() {
15
+ return false;
16
+ }
17
+
18
+ objectsMount() {
19
+ return false;
20
+ }
21
+
22
+ loadUpdate(loadProgress) {
23
+ this.setLoadProgress(loadProgress);
24
+ }
25
+
26
+ create(){
27
+ this.setMask();
28
+
29
+ //todo remove all objects
30
+ }
31
+
32
+ setMask(){
33
+ if(this.loaderBg && this.loaderBgMask)
34
+ this.loaderBg._baseObject.mask = this.loaderBgMask._baseObject
35
+ }
36
+
37
+ formatAmountText(text){
38
+ return `${text}%`;
39
+ }
40
+
41
+ setLoadProgress(val){
42
+ if(!this.componentCreated)
43
+ return;
44
+
45
+ this.loaderBgMask._baseObject.scale.x = val;
46
+ this.loadAmountText.text = this.formatAmountText(val);
47
+ }
48
+
49
+ get componentCreated(){
50
+ return !!this.loadAmountText && !!this.loaderBg && !!this.loaderBgMask;
51
+ }
52
+
53
+ get loadAmountText(){
54
+ return Urso.findOne('.loadAmountText');
55
+ }
56
+
57
+ get loaderBg(){
58
+ return Urso.findOne('^loaderBg');
59
+ }
60
+
61
+ get loaderBgMask(){
62
+ return Urso.findOne('^loaderBgMask');
63
+ }
64
+ }
65
+
66
+ module.exports = ComponentsLoaderController;