@urso/core 0.2.7 → 0.3.2

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.
@@ -22,7 +22,7 @@ class ModulesObjectsModelsCheckbox extends UrsoCoreModulesObjectsModelsToggle {
22
22
  this.contents = [];
23
23
 
24
24
  this.action = Urso.helper.recursiveGet('action', params, () => {
25
- this.emit(Urso.events.MODULES_OBJECTS_CHECKBOX_PRESS, { name: this.name, status: this._toggleStatus })
25
+ this.emit(Urso.events.MODULES_OBJECTS_CHECKBOX_PRESS, { name: this.name, status: this._toggleStatus, class: this.class })
26
26
  });
27
27
 
28
28
  this.lable = Urso.helper.recursiveGet('lable', params, false);
@@ -188,7 +188,7 @@ class ModulesObjectsModelsSlider extends Urso.Core.Modules.Objects.BaseModel {
188
188
  this.currentValueText.text = value;
189
189
 
190
190
  this._setFillMask();
191
- this.emit(Urso.events.MODULES_OBJECTS_SLIDER_SET_NEW_VALUE, { name: this.name, value: value });
191
+ this.emit(Urso.events.MODULES_OBJECTS_SLIDER_SET_NEW_VALUE, { name: this.name, value: value, class: this.class });
192
192
  }
193
193
 
194
194
  _subscribeOnce() {
@@ -18,7 +18,7 @@ class ModulesObjectsModelsToggle extends UrsoCoreModulesObjectsModelsButton {
18
18
  super.setupParams(params);
19
19
 
20
20
  this.action = Urso.helper.recursiveGet('action', params, () => {
21
- this.emit(Urso.events.MODULES_OBJECTS_TOGGLE_PRESS, { name: this.name, status: this._toggleStatus })
21
+ this.emit(Urso.events.MODULES_OBJECTS_TOGGLE_PRESS, { name: this.name, status: this._toggleStatus, class: this.class })
22
22
  });
23
23
 
24
24
  this.buttonFrames = {
@@ -6,6 +6,7 @@ class ModulesObserverConfig {
6
6
  MODULES_ASSETS_GROUP_LOADED: 'modules.assets.group.loaded',
7
7
  MODULES_ASSETS_LOAD_PROGRESS: 'modules.assets.load.progress',
8
8
  MODULES_ASSETS_LAZYLOAD_FINISHED: 'modules.assets.lazyLoad.finished',
9
+ MODULES_INSTANCES_MODES_CHANGED: 'modules.instances.modes.changed',
9
10
  MODULES_OBJECTS_BUTTON_PRESS: 'modules.objects.button.press',
10
11
  MODULES_OBJECTS_HIT_AREA_PRESS: 'modules.objects.hitArea.press',
11
12
  MODULES_OBJECTS_SLIDER_SET_NEW_VALUE: 'modules.objects.slider.setNewValue',
@@ -16,6 +17,8 @@ class ModulesObserverConfig {
16
17
  MODULES_SOUND_MANAGER_UPDATE_CFG: 'modules.soundManager.updateCfg',
17
18
  MODULES_SOUND_MANAGER_SET_GLOBAL_VOLUME: 'modules.soundManager.setGlobalVolume',
18
19
  MODULES_STATES_MANAGER_STATE_CHANGE: 'modules.statesManager.stateChange',
20
+ MODULES_STATES_MANAGER_ACTION_START: 'modules.statesManager.actionStart',
21
+ MODULES_STATES_MANAGER_ACTION_FINISH: 'modules.statesManager.actionFinish',
19
22
  MODULES_SCENES_ORIENTATION_CHANGE: 'modules.scenes.orientation.change',
20
23
  MODULES_SCENES_NEW_RESOLUTION: 'modules.scenes.newResolution',
21
24
  MODULES_SCENES_NEW_SCENE_INIT: 'modules.scenes.newSceneInit',
@@ -4,6 +4,7 @@ class ModulesScenesResolutions {
4
4
  this.singleton = true;
5
5
  this._activeResolution = false; //object
6
6
  this._templateSize = { orientation: 0, width: 0, height: 0 };
7
+ this._orientations = { landscape: 'landscape', portrait: 'portrait' }
7
8
  this._currentOrientation = null;
8
9
 
9
10
  this.refreshSceneSize = this.refreshSceneSize.bind(this);
@@ -40,9 +41,15 @@ class ModulesScenesResolutions {
40
41
  this._templateSize = this._calculateTemplateSize(currentResolution);
41
42
  this._applyResolutionToPixi(currentResolution);
42
43
 
44
+ console.log('[SCENE] New Orientation', orientation);
43
45
  console.log('[SCENE] New Resolution', currentResolution, 'windowSize:', windowSize);
44
46
  console.log('[SCENE] New Template Size', this._templateSize);
45
47
 
48
+ //update InstancesModes
49
+ Object.values(this._orientations).forEach((orientationValue) => Urso.removeInstancesMode(orientationValue + 'Orientation'));
50
+ Urso.addInstancesMode(orientation + 'Orientation');
51
+
52
+ //send new resolution event
46
53
  this.emit(Urso.events.MODULES_SCENES_NEW_RESOLUTION, { resolution: currentResolution, template: this._templateSize });
47
54
 
48
55
  if (this._currentOrientation !== this._templateSize.orientation) {
@@ -71,7 +78,7 @@ class ModulesScenesResolutions {
71
78
  }
72
79
 
73
80
  _getOrientation(windowSize) {
74
- return windowSize.width > windowSize.height ? 'landscape' : 'portrait'; //todo move to constants
81
+ return windowSize.width > windowSize.height ? this._orientations.landscape : this._orientations.portrait; //todo move to constants
75
82
  }
76
83
 
77
84
  _getResolutionConfig(windowSize) {
@@ -18,6 +18,8 @@ class ModulesStatesManagerAction {
18
18
  run(onFinishCallback) {
19
19
  log(`%c action run ---> ${this.name}`, 'color: blue');
20
20
 
21
+ this.emit(Urso.events.MODULES_STATES_MANAGER_ACTION_START, this.name);
22
+
21
23
  this.finished = false;
22
24
  this._onFinishCallback = onFinishCallback;
23
25
 
@@ -47,6 +49,9 @@ class ModulesStatesManagerAction {
47
49
 
48
50
  this._terminating = false;
49
51
  this.finished = true;
52
+
53
+ this.emit(Urso.events.MODULES_STATES_MANAGER_ACTION_FINISH, this.name);
54
+
50
55
  log(`%c action finish <--- ${this.name}`, 'color: blue');
51
56
  this._onFinishCallback();
52
57
  }
@@ -36,11 +36,10 @@ class ModulesStatesManagerController {
36
36
  if (this._currentState) {
37
37
  const currentState = this._configStates[this._currentState];
38
38
 
39
- if (currentState.nextState) { //nextState: ["PICK_GAME2", "PICK_GAME1", "IDLE"]
40
-
39
+ if (this.checkStateGuard(this._currentState) && currentState.nextState) { //nextState: ["PICK_GAME2", "PICK_GAME1", "IDLE"]
41
40
  for (const stateKey of currentState.nextState) {
42
41
  if (this.checkStateGuard(stateKey)) {
43
- nextIndex = statesArray.indexOf(stateKey);
42
+ nextIndex = statesArray.indexOf(stateKey) + 1;
44
43
 
45
44
  if (nextIndex === -1) {
46
45
  Urso.logger.error('ModulesStatesManagerController: nextState name error', stateKey);
@@ -18,10 +18,10 @@ class ModulesStatesManagerRace extends Action {
18
18
  //can we start this action?
19
19
  guard() {
20
20
  for (let action of this._actions)
21
- if (!action.guard())
22
- return false;
21
+ if (action.guard())
22
+ return true;
23
23
 
24
- return true;
24
+ return false;
25
25
  }
26
26
 
27
27
  run(onFinishCallback) {
@@ -9,9 +9,8 @@ class ModulesTemplateTypes {
9
9
  SPINE: 5,
10
10
  BITMAPFONT: 6,
11
11
  SOUND: 7,
12
- DRAGONBONES: 8,
13
- FONT: 9,
14
- AUDIOSPRITE: 10
12
+ FONT: 8,
13
+ AUDIOSPRITE: 9
15
14
  },
16
15
 
17
16
  objects: {
@@ -31,13 +30,12 @@ class ModulesTemplateTypes {
31
30
  COMPONENT: 14,
32
31
  GROUP: 15,
33
32
  IMAGES_ANIMATION: 16,
34
- DRAGONBONES: 17,
35
- ATLASIMAGE: 18,
36
- SLIDER: 19,
37
- TOGGLE: 20,
38
- CHECKBOX: 21,
39
- SCROLLBOX: 22,
40
- TEXTINPUT: 23
33
+ ATLASIMAGE: 17,
34
+ SLIDER: 18,
35
+ TOGGLE: 19,
36
+ CHECKBOX: 20,
37
+ SCROLLBOX: 21,
38
+ TEXTINPUT: 22
41
39
  }
42
40
  }
43
41
  }
@@ -15,7 +15,9 @@ class ModulesTransportService {
15
15
  };
16
16
 
17
17
  init() {
18
- this._createConnection();
18
+ if(Urso.config.useTransport){
19
+ this._createConnection();
20
+ }
19
21
  };
20
22
 
21
23
  send(message) {
@@ -1,27 +0,0 @@
1
- class ModulesAssetsModelsDragonBones extends Urso.Core.Modules.Assets.BaseModel {
2
- constructor(params) {
3
- super(params);
4
-
5
- this.type = Urso.types.assets.DRAGONBONES;
6
-
7
- //for manual filenames setup
8
- this.contents = Urso.helper.recursiveGet('contents', params, [
9
- { type: Urso.types.assets.JSON, key: `${this.key}_skeletonJson`, path: this.skeletonJson },
10
- { type: Urso.types.assets.JSON, key: `${this.key}_textureJson`, path: this.textureJson },
11
- { type: Urso.types.assets.IMAGE, key: `${this.key}_textureImage`, path: this.textureImage }
12
- ]);
13
-
14
- this.path = false;
15
- this.key = false;
16
- }
17
-
18
- setupParams(params) {
19
- super.setupParams(params);
20
-
21
- this.skeletonJson = Urso.helper.recursiveGet('skeletonJson', params, false);
22
- this.textureJson = Urso.helper.recursiveGet('textureJson', params, false);
23
- this.textureImage = Urso.helper.recursiveGet('textureImage', params, false);
24
- }
25
- }
26
-
27
- module.exports = ModulesAssetsModelsDragonBones;
@@ -1,120 +0,0 @@
1
- class ModulesLogicButtons {
2
- constructor() {
3
- this.DEFAULT_STATE_NAME = 'default'; //MOVE TO CFG
4
- this._buttonsFactors = {};
5
- this._cfg = null;
6
-
7
- this._updateCfg();
8
-
9
- if (!this._cfg || Urso.helper.arraysGetUniqElements(Object.keys(this._cfg.eventsCfg), Object.keys(this._cfg.buttonStates)).length > 0)
10
- console.error('Modules.Logic.Buttons error: invalid Modules.Logic.Config.Buttons');
11
- }
12
-
13
- _updateCfg() {
14
- this._cfg = this.getInstance('Config.Buttons');
15
- };
16
-
17
- _getButtonState(button, state) {
18
- const buttonStates = this._cfg.buttonStates;
19
-
20
- if (!buttonStates[button] || !buttonStates[button][state])
21
- return false;
22
-
23
- let states = buttonStates[button],
24
- base = false,
25
- k,
26
- res = {};
27
-
28
- if (state !== 'default') {
29
- if (typeof states[state].base !== 'undefined')
30
- base = states[state].base;
31
- else
32
- base = 'default';
33
- }
34
-
35
- if (base)
36
- res = Urso.helper.objectClone(states[base]);
37
-
38
- for (k in states[state])
39
- res[k] = states[state][k];
40
-
41
- return res;
42
- };
43
-
44
- _eventHandler(button, event) {
45
- //todo _eventHandler?
46
- this._addEventsMode(button, event);
47
- };
48
-
49
- _addEventsMode(button, event) {
50
- if (!this._buttonsFactors[button])
51
- this._buttonsFactors[button] = {};
52
-
53
- //check removeEvents
54
- if (event.removeEvents && event.removeEvents.length > 0) {
55
- let i;
56
-
57
- for (i = 0; i < event.removeEvents.length; i++)
58
- if (this._buttonsFactors[button][event.removeEvents[i]])
59
- delete this._buttonsFactors[button][event.removeEvents[i]];
60
- }
61
-
62
- //if state -> write
63
- if (event.state && !this._buttonsFactors[button][event.id])
64
- this._buttonsFactors[button][event.id] = event;
65
-
66
- //calc current state
67
- let cur = false;
68
-
69
- if (Object.keys(this._buttonsFactors[button]).length > 0)
70
- cur = Object.values(this._buttonsFactors[button]).reduce(function (prev, current) {
71
- return (prev.priority > current.priority) ? prev : current;
72
- });
73
-
74
- const state = this._getButtonState(button, (cur && cur.state) || this.DEFAULT_STATE_NAME);
75
- this._changeButtonState(button, state);
76
- };
77
-
78
- beforeUpdateHandler() { };
79
- afterUpdateHandler() { };
80
-
81
- _changeButtonState(button, params) {
82
- console.log(100, button, params)
83
- params.disableFrame = params.frames.disableFrame;
84
-
85
- const buttonsData = {};
86
- buttonsData[button] = params;
87
-
88
- this.beforeUpdateHandler(params);
89
- this.emit('buttons.changeData', buttonsData);
90
- this.emit('button.setFrames', buttonsData);
91
- this.afterUpdateHandler(params);
92
- };
93
-
94
- _subscribeButtonToEvents(buttonKey, buttonSubscribeCfg) {
95
- for (let i = 0; i < buttonSubscribeCfg.length; i++) {
96
- const { event } = buttonSubscribeCfg[i];
97
- this.addListener(event, () => this._eventHandler(buttonKey, buttonSubscribeCfg[i]), true);
98
- }
99
- };
100
-
101
- _subscribeButtonsToEvents() {
102
- for (let k in this._cfg.eventsCfg) {
103
- this._subscribeButtonToEvents(k, this._cfg.eventsCfg[k])
104
- }
105
- };
106
-
107
- _pressHandler(btn = {}) {
108
- const state = this._getButtonState(btn.name, this.DEFAULT_STATE_NAME);
109
-
110
- if (state && state.callback)
111
- state.callback();
112
- };
113
-
114
- _subscribe() {
115
- this._subscribeButtonsToEvents();
116
- this.addListener(Urso.events.MODULES_OBJECTS_BUTTON_PRESS, this._pressHandler.bind(this), true);
117
- };
118
- };
119
-
120
- module.exports = ModulesLogicButtons;
@@ -1,63 +0,0 @@
1
- class ModulesLogicConfigButtons {
2
- constructor(){
3
- this.singleton = true;
4
- this.buttonStates = this.setButtonStates();
5
- this.eventsCfgBlank = this.setEventsCfgBlanks();
6
- this.eventsCfg = this.setEventsCfg();
7
- }
8
-
9
- setButtonStates(){
10
- return {
11
- spin: {
12
- default: { //base
13
- 'title': '',
14
- 'callback': function () {
15
- this.emit('slotMachine.spinCommand');
16
- },
17
- 'enabled': true,
18
- 'visible': true
19
- },
20
- //default extend
21
- inactive: {
22
- 'enabled': false
23
- },
24
- stop: {
25
- 'callback': function () {
26
- this.emit('slotMachine.stopCommand');
27
- }
28
- },
29
- stopInactive: {
30
- 'base': 'stop',
31
- 'enabled': false
32
- }
33
- }
34
- };
35
- };
36
-
37
- setEventsCfgBlanks(){
38
- return {
39
- globalUiGroup: [
40
- {id: 1, event: 'Transport.close', state: false, priority: 100, removeEvents: [10, 11, 12, 13]},
41
- {id: 2, event: 'freespinsStart', state: 'inactive', priority: 10},
42
- {id: 3, event: 'freespinsStop', state: false, priority: 10, removeEvents: [1]}
43
- ]
44
- };
45
- };
46
-
47
- setEventsCfg(){
48
- return {
49
- spin: [
50
- {id: 1, event: 'Transport.close', state: false, priority: 100, removeEvents: [10, 11, 12, 13]},
51
- {id: 10, event: 'freespinsStart', state: 'inactive', priority: 40},
52
- {id: 11, event: 'freespinsStop', state: false, priority: 40, removeEvents: [10]},
53
- {id: 12, event: 'SpinStart', state: 'inactive', priority: 20},
54
- {id: 13, event: 'SpinResponce', state: 'stop', priority: 20},
55
- {id: 14, event: 'StopPress', state: 'stopInactive', priority: 20},
56
- {id: 15, event: 'SpinStop', state: false, priority: 20, removeEvents: [12]}
57
- ]
58
- };
59
- };
60
-
61
- };
62
-
63
- module.exports = ModulesLogicConfigButtons;
@@ -1,250 +0,0 @@
1
- const POOL_NAME = 'core.ObjectsModelsDragonBones.pool';
2
-
3
- class ModulesObjectsModelsDragonBones extends Urso.Core.Modules.Objects.BaseModel {
4
- constructor(params) {
5
- super(params);
6
-
7
- this._pool = this._checkPool();
8
- this._poolMember = null;
9
- this.type = Urso.types.objects.DRAGONBONES;
10
-
11
- this._onStart = null;
12
- this._onLoop = null;
13
- this._onComplete = null;
14
- this._onCompleteOnce = null;
15
-
16
- this.setAnimationConfig({}, true);
17
- this._addBaseObject();
18
- }
19
-
20
- setupParams(params) {
21
- super.setupParams(params);
22
-
23
- this.assetKey = Urso.helper.recursiveGet('assetKey', params, false);
24
-
25
- this.animation = {
26
- timeScale: 1,
27
- animationName: Urso.helper.recursiveGet('animation.animationName', params, false),
28
- armatureName: Urso.helper.recursiveGet('animation.armatureName', params, false),
29
- autoplay: Urso.helper.recursiveGet('animation.autoplay', params, false),
30
- loop: Urso.helper.recursiveGet('animation.loop', params, false),
31
- onStart: Urso.helper.recursiveGet('animation.onStart', params, false),
32
- onLoop: Urso.helper.recursiveGet('animation.onLoop', params, false),
33
- onComplete: Urso.helper.recursiveGet('animation.onComplete', params, false),
34
- onCompleteOnce: Urso.helper.recursiveGet('animation.onCompleteOnce', params, false)
35
- };
36
- }
37
-
38
- _addBaseObject() {
39
- const assets = this._getAssets();
40
-
41
- if (!this.animation.armatureName || !assets) {
42
- this._baseObject = new PIXI.Sprite();
43
- return;
44
- }
45
-
46
- this._createAnimationObject(assets);
47
-
48
- const { animationName, autoplay, loop } = this.animation;
49
-
50
- if (autoplay)
51
- this.play(animationName, loop);
52
- };
53
-
54
- _getAssets() {
55
- const skeletonJson = Urso.cache.getJson(`${this.assetKey}_skeletonJson`);
56
- const textureJson = Urso.cache.getJson(`${this.assetKey}_textureJson`);
57
- const textureImage = Urso.cache.getImage(`${this.assetKey}_textureImage`);
58
-
59
- if (!skeletonJson || !textureJson || !textureImage) {
60
- Urso.logger.error('ModulesObjectsModelsDragonBones assets error: no DragonBones object ' + this.assetKey);
61
- return false;
62
- }
63
-
64
- return { skeletonJson, textureJson, textureImage };
65
- }
66
-
67
- _createAnimationObject(assets) {
68
- const { armatureName } = this.animation;
69
- this._poolMember = this._pool.getElement(armatureName, assets);
70
- this._baseObject = this._poolMember.data;
71
- this._setCommonFunctions.bind(this)();
72
- this._setCallbacks();
73
- }
74
-
75
- _constructorFunction(armatureName, assets) {
76
- const { skeletonJson, textureJson, textureImage } = assets;
77
-
78
- const factory = Urso.DragonBones.PixiFactory.factory;
79
-
80
- if (!factory._dragonBonesDataMap[skeletonJson.data.name])
81
- factory.parseDragonBonesData(skeletonJson.data);
82
-
83
- factory.parseTextureAtlasData(textureJson.data, textureImage.texture);
84
-
85
- return factory.buildArmatureDisplay(armatureName);
86
- }
87
-
88
- _resetAnimationFunction(object) { //this._baseObject
89
- object.removeAllListeners(Urso.DragonBones.EventObject.START);
90
- object.removeAllListeners(Urso.DragonBones.EventObject.LOOP_COMPLETE);
91
- object.removeAllListeners(Urso.DragonBones.EventObject.COMPLETE);
92
- object.filters = [];
93
- return object;
94
- }
95
-
96
- _removeCallbacks(config) {
97
- if (this._onStart && config.onStart) {
98
- this._baseObject.removeListener(Urso.DragonBones.EventObject.START, this._onStart);
99
- this._onStart = null;
100
- }
101
-
102
- if (this._onLoop && config.onLoop) {
103
- this._baseObject.removeListener(Urso.DragonBones.EventObject.LOOP_COMPLETE, this._onLoop);
104
- this._onLoop = null;
105
- }
106
-
107
- if (this._onComplete && config.onComplete) {
108
- this._baseObject.removeListener(Urso.DragonBones.EventObject.COMPLETE, this._onComplete);
109
- this._onComplete = null;
110
- }
111
-
112
- if (this._onCompleteOnce && config.onCompleteOnce) {
113
- this._removeOnCompleteOnce(config);
114
- }
115
- };
116
-
117
- _removeOnCompleteOnce() {
118
- this._baseObject.removeListener(Urso.DragonBones.EventObject.COMPLETE, this._onCompleteOnce);
119
- this._onCompleteOnce = null;
120
- }
121
-
122
- _setCallbacks() {
123
- if (this.animation.onStart) {
124
- this._onStart = this.animation.onStart.bind(this);
125
- this._baseObject.addListener(Urso.DragonBones.EventObject.START, this._onStart);
126
- }
127
-
128
- if (this.animation.onLoop) {
129
- this._onLoop = this.animation.onLoop.bind(this);
130
- this._baseObject.addListener(Urso.DragonBones.EventObject.LOOP_COMPLETE, this._onLoop);
131
- }
132
-
133
- if (this.animation.onComplete) {
134
- this._onComplete = this.animation.onComplete.bind(this);
135
- this._baseObject.addListener(Urso.DragonBones.EventObject.COMPLETE, this._onComplete);
136
- }
137
-
138
- if (this.animation.onCompleteOnce) {
139
- const onCompleteOnce = this.animation.onCompleteOnce.bind(this);
140
-
141
- this.animation.onCompleteOnce = null;
142
-
143
- this._onCompleteOnce = () => {
144
- this._removeOnCompleteOnce();
145
- onCompleteOnce();
146
- };
147
-
148
- this._baseObject.once(Urso.DragonBones.EventObject.COMPLETE, this._onCompleteOnce);
149
- }
150
- }
151
-
152
- /**
153
- *
154
- * @param {*} config
155
- * @param {boolean} [noObjectCreate] dont use this flag out of core
156
- *
157
- * config keys:
158
- * animationName
159
- * armatureName
160
- autoplay
161
- timeScale
162
- onStart
163
- onLoop
164
- onComplete
165
- onCompleteOnce
166
- */
167
- setAnimationConfig(config = {}, noObjectCreate) {
168
- if (this.stop)
169
- this.stop();
170
-
171
- this.animation = {
172
- ...this.animation,
173
- ...config
174
- };
175
-
176
- if (config.timeScale)
177
- this._baseObject.animation.timeScale = config.timeScale;
178
-
179
- if (config.onStart || config.onLoop || config.onComplete || config.onCompleteOnce) {
180
- this._removeCallbacks(config);
181
- this._setCallbacks();
182
- }
183
-
184
- if (noObjectCreate || !config.armatureName)
185
- return;
186
-
187
- let parent = null;
188
-
189
- if (this._baseObject) {
190
- parent = this._baseObject.parent;
191
- this._customDestroy();
192
- }
193
-
194
- const assets = this._getAssets();
195
-
196
- if (assets)
197
- this._createAnimationObject(assets);
198
-
199
- if (parent) {
200
- parent.addChild(this._baseObject);
201
- //update common properties after adding to apply model settings
202
- Urso.objects._updateCommonProperties(this);
203
- }
204
- }
205
-
206
- /**
207
- * run play animation
208
- * @param {number} times
209
- */
210
- play(animationName, loopFlag = false) {
211
- if (!this._baseObject.animation) {
212
- Urso.logger.error(`DragonBones animation not found!`);
213
- return;
214
- }
215
-
216
- if (this.stop)
217
- this.stop();
218
-
219
- const times = (loopFlag) ? -1 : 1;
220
-
221
- this._baseObject.animation.play(animationName, times);
222
- }
223
-
224
- _setCommonFunctions() {
225
- this.stop = this._baseObject.animation.stop.bind(this._baseObject.animation);
226
- }
227
-
228
- _customDestroy() {
229
- this._pool.putElement(this._poolMember);
230
-
231
- if (this._baseObject.parent)
232
- this._baseObject.parent.removeChild(this._baseObject);
233
-
234
- this._baseObject = null;
235
- }
236
-
237
- _checkPool() {
238
- const pool = Urso.localData.get(POOL_NAME);
239
-
240
- if (pool)
241
- return pool;
242
-
243
- const newPool = new Urso.Game.Lib.ObjectPool(this._constructorFunction.bind(this), this._resetAnimationFunction.bind(this));
244
- Urso.localData.set(POOL_NAME, newPool);
245
-
246
- return newPool;
247
- }
248
- }
249
-
250
- module.exports = ModulesObjectsModelsDragonBones;