pixi-rainman-game-engine 0.2.2 → 0.2.4

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 (153) hide show
  1. package/dist/ComponentRegistry/ComponentRegistry.d.ts +0 -17
  2. package/dist/ComponentRegistry/ComponentRegistry.js +0 -17
  3. package/dist/ComponentRegistry/types.d.ts +1 -1
  4. package/dist/Money/MoneyText.d.ts +0 -2
  5. package/dist/Money/MoneyText.js +0 -2
  6. package/dist/Rainman/Rainman.d.ts +0 -2
  7. package/dist/Rainman/Rainman.js +0 -2
  8. package/dist/Rainman/appConfig.d.ts +0 -1
  9. package/dist/Rainman/appConfig.js +1 -1
  10. package/dist/Rainman/types.d.ts +1 -0
  11. package/dist/application/ApiConfig/ApiConfig.d.ts +25 -43
  12. package/dist/application/ApiConfig/ApiConfig.js +25 -43
  13. package/dist/application/ApiConfig/SymbolId.d.ts +0 -5
  14. package/dist/application/ApiConfig/TransformationTypesId.d.ts +0 -4
  15. package/dist/application/ApiConfig/WinTypeId.d.ts +0 -4
  16. package/dist/application/ButtonsEventManager/ButtonsEventManager.d.ts +11 -32
  17. package/dist/application/ButtonsEventManager/ButtonsEventManager.js +11 -32
  18. package/dist/application/SoundManager/SoundManager.d.ts +8 -18
  19. package/dist/application/SoundManager/SoundManager.js +8 -18
  20. package/dist/application/SoundManager/types.d.ts +2 -4
  21. package/dist/application/SoundManager/types.js +1 -2
  22. package/dist/application/SpeedState/SpeedLevelHandler.d.ts +2 -8
  23. package/dist/application/SpeedState/SpeedLevelHandler.js +2 -8
  24. package/dist/application/SpinLogic/SpinLogic.d.ts +0 -2
  25. package/dist/application/SpinLogic/SpinLogic.js +0 -2
  26. package/dist/application/SpinLogic/SpinLogicDTO.d.ts +4 -9
  27. package/dist/application/SpinLogic/SpinLogicDTO.js +4 -9
  28. package/dist/application/SpinLogic/WinScenarios.d.ts +1 -1
  29. package/dist/application/SpinLogic/WinScenarios.js +1 -1
  30. package/dist/application/SpinLogic/util.d.ts +13 -18
  31. package/dist/application/SpinLogic/util.js +13 -20
  32. package/dist/components/AbstractFreeSpinContainer/AbstractFreeSpinContainer.d.ts +1 -3
  33. package/dist/components/AbstractFreeSpinContainer/AbstractFreeSpinContainer.js +1 -3
  34. package/dist/components/AbstractMainContainer/AbstractMainContainer.d.ts +19 -22
  35. package/dist/components/AbstractMainContainer/AbstractMainContainer.js +19 -22
  36. package/dist/components/GambleGame/GambleGame.d.ts +1 -3
  37. package/dist/components/GambleGame/GambleGame.js +1 -3
  38. package/dist/components/buttons/BaseButton/BaseButton.d.ts +1 -3
  39. package/dist/components/buttons/BaseButton/BaseButton.js +1 -3
  40. package/dist/components/buttons/BaseButton/ButtonState.d.ts +1 -1
  41. package/dist/components/buttons/BaseButton/ButtonState.js +1 -1
  42. package/dist/components/buttons/buttonGroups/LeftButtons.d.ts +1 -3
  43. package/dist/components/buttons/buttonGroups/LeftButtons.js +1 -3
  44. package/dist/components/buttons/buttonGroups/MiddleButtons.d.ts +0 -1
  45. package/dist/components/buttons/buttonGroups/MiddleButtons.js +0 -1
  46. package/dist/components/buttons/buttonGroups/RightButtons.d.ts +2 -3
  47. package/dist/components/buttons/buttonGroups/RightButtons.js +2 -3
  48. package/dist/components/buttons/buttonGroups/RightButtonsLandscape.d.ts +1 -1
  49. package/dist/components/buttons/buttonGroups/RightButtonsLandscape.js +1 -1
  50. package/dist/components/buttons/default/AutoplayButton.d.ts +2 -3
  51. package/dist/components/buttons/default/AutoplayButton.js +2 -3
  52. package/dist/components/buttons/default/BlackButton.d.ts +1 -2
  53. package/dist/components/buttons/default/BlackButton.js +1 -2
  54. package/dist/components/buttons/default/CollectButton.d.ts +2 -3
  55. package/dist/components/buttons/default/CollectButton.js +2 -3
  56. package/dist/components/buttons/default/InfoButton.d.ts +1 -1
  57. package/dist/components/buttons/default/InfoButton.js +1 -1
  58. package/dist/components/buttons/default/MoreButton.d.ts +1 -1
  59. package/dist/components/buttons/default/MoreButton.js +1 -1
  60. package/dist/components/buttons/default/NegButton.d.ts +1 -1
  61. package/dist/components/buttons/default/NegButton.js +1 -1
  62. package/dist/components/buttons/default/PlusButton.d.ts +1 -1
  63. package/dist/components/buttons/default/PlusButton.js +1 -1
  64. package/dist/components/buttons/default/RedButton.d.ts +1 -1
  65. package/dist/components/buttons/default/RedButton.js +1 -1
  66. package/dist/components/buttons/default/RefreshButton.d.ts +2 -1
  67. package/dist/components/buttons/default/RefreshButton.js +2 -1
  68. package/dist/components/buttons/default/SpeedControlButton.d.ts +1 -1
  69. package/dist/components/buttons/default/SpeedControlButton.js +1 -1
  70. package/dist/components/buttons/default/SpinConfirmationButton.d.ts +1 -0
  71. package/dist/components/buttons/default/SpinConfirmationButton.js +1 -0
  72. package/dist/components/buttons/default/VolumeButton.d.ts +1 -1
  73. package/dist/components/buttons/default/VolumeButton.js +1 -1
  74. package/dist/components/common/AnimatedBackground.d.ts +1 -5
  75. package/dist/components/common/AnimatedBackground.js +1 -5
  76. package/dist/components/common/Background.d.ts +3 -5
  77. package/dist/components/common/Background.js +3 -5
  78. package/dist/components/common/FreeSpinButton.d.ts +1 -3
  79. package/dist/components/common/FreeSpinButton.js +1 -3
  80. package/dist/components/common/Logo.d.ts +1 -3
  81. package/dist/components/common/Logo.js +1 -3
  82. package/dist/components/common/LogoStatic.d.ts +1 -3
  83. package/dist/components/common/LogoStatic.js +1 -3
  84. package/dist/components/common/ResumableContainers.d.ts +6 -6
  85. package/dist/components/common/ResumableContainers.js +6 -6
  86. package/dist/components/frame/AbstractColumnsContainer.d.ts +3 -9
  87. package/dist/components/frame/AbstractColumnsContainer.js +3 -9
  88. package/dist/components/frame/AbstractFrame.d.ts +6 -12
  89. package/dist/components/frame/AbstractFrame.js +6 -12
  90. package/dist/components/frame/AbstractInnerFrame.d.ts +1 -3
  91. package/dist/components/frame/AbstractInnerFrame.js +1 -3
  92. package/dist/components/frame/WinLineAnimation.d.ts +1 -3
  93. package/dist/components/frame/WinLineAnimation.js +1 -3
  94. package/dist/components/frame/constants.d.ts +7 -0
  95. package/dist/components/frame/constants.js +3 -0
  96. package/dist/components/frame/types.d.ts +4 -0
  97. package/dist/components/messageBox/MessageBox.d.ts +1 -3
  98. package/dist/components/messageBox/MessageBox.js +1 -3
  99. package/dist/components/symbols/AbstractSymbolBase.d.ts +1 -2
  100. package/dist/components/symbols/AbstractSymbolBase.js +1 -2
  101. package/dist/components/symbols/AbstractSymbolsColumn.d.ts +1 -3
  102. package/dist/components/symbols/AbstractSymbolsColumn.js +4 -5
  103. package/dist/components/symbols/DroppableSymbol.d.ts +0 -2
  104. package/dist/components/symbols/DroppableSymbol.js +0 -2
  105. package/dist/components/symbols/DroppableSymbolsColumn.d.ts +0 -2
  106. package/dist/components/symbols/DroppableSymbolsColumn.js +0 -2
  107. package/dist/components/symbols/types.d.ts +0 -1
  108. package/dist/components/symbols/types.js +0 -1
  109. package/dist/components/updatable/UpdatableTextComponent.d.ts +1 -3
  110. package/dist/components/updatable/UpdatableTextComponent.js +1 -3
  111. package/dist/components/updatable/UpdatableValueComponent.d.ts +1 -3
  112. package/dist/components/updatable/UpdatableValueComponent.js +1 -3
  113. package/dist/components/winLineIndicator/WinLineIndicator.d.ts +1 -3
  114. package/dist/components/winLineIndicator/WinLineIndicator.js +1 -3
  115. package/dist/connectivity/ConnectionWrapper.d.ts +1 -4
  116. package/dist/connectivity/ConnectionWrapper.js +1 -4
  117. package/dist/connectivity/LocalConnectionWrapper.d.ts +1 -1
  118. package/dist/connectivity/LocalConnectionWrapper.js +1 -1
  119. package/dist/connectivity/apiQueue.d.ts +2 -3
  120. package/dist/connectivity/apiQueue.js +2 -3
  121. package/dist/connectivity/wins.d.ts +0 -9
  122. package/dist/controllers/AbstractController.d.ts +27 -40
  123. package/dist/controllers/AbstractController.js +30 -41
  124. package/dist/controllers/QuickStopController.d.ts +1 -1
  125. package/dist/controllers/QuickStopController.js +1 -1
  126. package/dist/controllers/UiController.d.ts +2 -4
  127. package/dist/controllers/UiController.js +2 -4
  128. package/dist/loading/AbstractLoadingContainer.d.ts +1 -3
  129. package/dist/loading/AbstractLoadingContainer.js +1 -3
  130. package/dist/loading/ProgressiveLoader.d.ts +0 -2
  131. package/dist/loading/SpriteLoadingContainer.d.ts +1 -4
  132. package/dist/loading/SpriteLoadingContainer.js +1 -4
  133. package/dist/localStorage/localStorage.d.ts +0 -2
  134. package/dist/localStorage/localStorage.js +0 -2
  135. package/dist/stores/SettingsStore.d.ts +5 -10
  136. package/dist/stores/SettingsStore.js +5 -10
  137. package/dist/utils/assets/assetGetter.d.ts +10 -18
  138. package/dist/utils/assets/assetGetter.js +10 -18
  139. package/dist/utils/common/deviceOrientation.d.ts +1 -2
  140. package/dist/utils/common/deviceOrientation.js +1 -2
  141. package/dist/utils/common/functions.d.ts +7 -7
  142. package/dist/utils/common/functions.js +7 -7
  143. package/dist/utils/common/placementHelpers.d.ts +2 -3
  144. package/dist/utils/common/placementHelpers.js +4 -5
  145. package/dist/winComponents/AnimableParticlesEmitter.d.ts +1 -4
  146. package/dist/winComponents/AnimableParticlesEmitter.js +1 -4
  147. package/dist/winComponents/PositioningFrame.d.ts +1 -3
  148. package/dist/winComponents/PositioningFrame.js +1 -3
  149. package/dist/winComponents/UpdatableSpineContainer.d.ts +1 -3
  150. package/dist/winComponents/UpdatableSpineContainer.js +1 -3
  151. package/dist/winComponents/winFactory.d.ts +8 -9
  152. package/dist/winComponents/winFactory.js +8 -9
  153. package/package.json +3 -1
@@ -11,11 +11,9 @@ import { UiController } from "./UiController";
11
11
  /**
12
12
  * Abstract controller class for games, this class control game flow
13
13
  * and handle all game logic, including wins, transformations
14
- *
15
14
  * @abstract
16
15
  * @class AbstractController
17
16
  * @template T
18
- * @exports
19
17
  */
20
18
  export declare abstract class AbstractController<T> {
21
19
  protected buttonsEventManager: ButtonsEventManager;
@@ -49,6 +47,7 @@ export declare abstract class AbstractController<T> {
49
47
  private componentRegistry;
50
48
  protected skipFreeSpinSummary: boolean;
51
49
  protected scatterCountForFx: number;
50
+ protected summaryStop: boolean;
52
51
  protected _lastWinAmount: number;
53
52
  protected constructor(buttonsEventManager: ButtonsEventManager, mainContainer: AbstractMainContainer, connection: SubscribableConnectionWrapper);
54
53
  init(): void;
@@ -70,14 +69,12 @@ export declare abstract class AbstractController<T> {
70
69
  private initSpinButton;
71
70
  /**
72
71
  * This function is responsible for checking if buttons (not bet buttons) should be disabled
73
- *
74
- * @return {boolean}
72
+ * @returns {boolean} should buttons be disabled
75
73
  */
76
74
  get shouldButtonsBeDisabled(): boolean;
77
75
  /**
78
76
  * This function is responsible for checking if bet buttons should be disabled
79
- *
80
- * @return {boolean}
77
+ * @returns {boolean} should bet buttons be disabled
81
78
  */
82
79
  get shouldBetButtonsBeDisabled(): boolean;
83
80
  get lastWinAmount(): number;
@@ -97,15 +94,15 @@ export declare abstract class AbstractController<T> {
97
94
  * - dataFetch - when game is fetching data from the server
98
95
  * - bigWinInvoked - when big win is invoked
99
96
  * - gameSummary - when game is showing game summary
100
- *
101
- * @param {GamePhase} newPhase
97
+ * @param {GamePhase} newPhase - new game phase
102
98
  */
103
99
  protected changeGamePhase(newPhase: GamePhase): void;
104
100
  private setRefreshButtonBasedOnPhase;
105
101
  private setMessageBoxBasedOnPhase;
106
102
  /**
107
- * This function is responsible for getting indexes of reels which should show mystery fx, based on {@link spinLogic}
108
- * @param {SpinLogic} spinLogic
103
+ * This function is responsible for getting indexes of reels which should show mystery fx, based on {@link spinLogic}
104
+ * @param {SpinLogic} spinLogic - spin logic
105
+ * @returns {number[]} indexes of reels which should show mystery fx
109
106
  */
110
107
  protected getReelIndexesToShowMysteryFx(spinLogic: SpinLogic): number[];
111
108
  /**
@@ -121,6 +118,7 @@ export declare abstract class AbstractController<T> {
121
118
  private getBoughtNumberOfFreeSpins;
122
119
  /**
123
120
  * Function for autoplay spin
121
+ * @returns {void} promise
124
122
  */
125
123
  protected autoplaySpin(): void;
126
124
  /**
@@ -135,26 +133,23 @@ export declare abstract class AbstractController<T> {
135
133
  /**
136
134
  * This function is responsible for actions while fetching data
137
135
  * If you want to add some actions while fetching data, you can override this function
138
- *
139
- * @param {SpinData} _spinData
140
- * @param {SpinLogic} _spinLogic
136
+ * @param {SpinData} _spinData - spin data
137
+ * @param {SpinLogic} _spinLogic - spin logic
141
138
  */
142
139
  protected onDataFetch(_spinData: SpinData, _spinLogic: SpinLogic): void;
143
140
  /**
144
141
  * Getter for extra data for some games
145
- *
146
- * @returns {ExtraDataRequest}
142
+ * @returns {ExtraDataRequest} extra data
147
143
  */
148
144
  protected getExtraData(): ExtraDataRequest;
149
145
  /**
150
146
  * Function for fetching and preparing spin data
151
- *
152
- * @returns {SpinDataWithLogic}
147
+ * @returns {SpinDataWithLogic} - spin data with logic
153
148
  */
154
149
  protected fetchAndPrepareSpinData(): Promise<SpinDataWithLogic>;
155
150
  /**
156
151
  * Checks if we can skip action based on conditions. By default it checks {@link !this.isPlayingUnskippableStreak}
157
- *
152
+ * @returns {boolean} can we skip actions
158
153
  */
159
154
  protected canSkipActions(): boolean;
160
155
  protected onSpinningStart(): Promise<void>;
@@ -171,16 +166,14 @@ export declare abstract class AbstractController<T> {
171
166
  * - updating free spins amount
172
167
  * - showing free spins summary and plate
173
168
  * - playing win action queue
174
- *
175
169
  * @returns {Promise<void>}
176
170
  */
177
171
  private spin;
178
172
  /**
179
173
  * Function for invoking free spin plate, invoked in mainContainer
180
- * ```ts
181
- * this.mainContainer.invokeFreeSpinPlate(numberOfFreeSpins, isAdditionalFreeSpin);
182
- * ```
183
- *
174
+ * ```ts
175
+ * this.mainContainer.invokeFreeSpinPlate(numberOfFreeSpins, isAdditionalFreeSpin);
176
+ * ```
184
177
  * @param numberOfFreeSpins - number of free spins, if not provided, `RainMan.settingsStore.totalNumberOfFreeSpins` will be used
185
178
  * @param isAdditionalFreeSpin - flag for displaying additional free spins
186
179
  */
@@ -199,48 +192,42 @@ export declare abstract class AbstractController<T> {
199
192
  protected stopPlayingSymbolsTransformation(): void;
200
193
  /**
201
194
  * Function for displaying big win. Invoking that by `this.mainContainer.invokeBigWin();` and destroying it by `this.mainContainer.destroyBigWin();`
202
- *
203
- * @param customAmount - amount of win, if not provided, `RainMan.settingsStore.bet` will be used
195
+ * @param {number | undefined} customAmount - amount of win, if not provided, `RainMan.settingsStore.bet` will be used
204
196
  */
205
197
  protected countBigWin(customAmount?: number): Promise<void>;
206
198
  /**
207
199
  * Function for displaying bonus win. Invoking that by `this.mainContainer.invokeBonusWin();` and destroying it by `this.mainContainer.destroyBonusWin();`
208
- *
209
- * @param customAmount - amount of win, if not provided, `RainMan.settingsStore.bet` will be used
200
+ * @param {number | undefined} winAmount - win amount, if not provided, `this.uiController.recentWin` will be used
210
201
  */
211
202
  protected countBonusWin(winAmount?: number): Promise<void>;
212
203
  /**
213
204
  * Function for displaying super bonus win. Invoking that by `this.mainContainer.invokeSuperBonusWin();` and destroying it by `this.mainContainer.destroySuperBonusWin();`
214
- *
215
- * @param winAmount - amount of win, if not provided `RainMan.settingsStore.cumulativeWinAmount` will be used
205
+ * @param {number | undefined} winAmount - amount of win, if not provided `RainMan.settingsStore.cumulativeWinAmount` will be used
216
206
  */
217
207
  protected countSuperBonusWin(winAmount?: number): Promise<void>;
218
208
  /**
219
209
  * Function for displaying mystery win. Invoking that by `this.mainContainer.invokeMysteryWin();` and destroying it by `this.mainContainer.destroyMysteryWin();`.
220
- * Function requires `this.mysteryWinSymbol` to be fired.
221
- *
222
- * @param winAmount
223
- * @param quantity - how many symbols create mystery win, by default 3
210
+ * Function requires `this.mysteryWinSymbol` to be fired.
211
+ * @param {number | undefined} winAmount - amount of mystery win
212
+ * @param {number} quantity - how many symbols create mystery win, by default 3
224
213
  */
225
214
  protected countMysteryWin(winAmount?: number, quantity?: number): Promise<void>;
226
215
  /**
227
216
  * Parser for streaks and reels quantity
228
- *
229
- * @param {StreakReelsIndexes} streak
230
- * @param {number} reelsQuantity
231
- * @returns {StreakReelsIndexes}
217
+ * @param {StreakReelsIndexes} streak - streak with reels indexes
218
+ * @param {number} reelsQuantity - quantity of reels
219
+ * @returns {StreakReelsIndexes} - parsed streak
232
220
  */
233
221
  protected parseStreak(streak: StreakReelsIndexes, reelsQuantity: number): StreakReelsIndexes;
234
222
  /**
235
223
  * Function for getting symbols ids from {@link StreakReelsIndexes}
236
- *
237
- * @param streak
224
+ * @param {StreakReelsIndexes} streak - streak with reels indexes
225
+ * @returns {SymbolId[]} - symbols from streak
238
226
  */
239
227
  protected getSymbolIdsForStreak(streak: StreakReelsIndexes): SymbolId[];
240
228
  protected updateUiValues(value: number): void;
241
229
  /**
242
230
  * Function for composing win actions queue based on wins and transformations from {@link transformationTypes} and {@link PossibleWins}
243
- *
244
231
  * @param spinLogic
245
232
  */
246
233
  protected abstract composeWinActionsQueue(spinLogic: SpinLogic): void;
@@ -10,11 +10,9 @@ import { UiController } from "./UiController";
10
10
  /**
11
11
  * Abstract controller class for games, this class control game flow
12
12
  * and handle all game logic, including wins, transformations
13
- *
14
13
  * @abstract
15
14
  * @class AbstractController
16
15
  * @template T
17
- * @exports
18
16
  */
19
17
  export class AbstractController {
20
18
  buttonsEventManager;
@@ -48,6 +46,7 @@ export class AbstractController {
48
46
  componentRegistry;
49
47
  skipFreeSpinSummary = false;
50
48
  scatterCountForFx = 2;
49
+ summaryStop = false;
51
50
  _lastWinAmount = 0;
52
51
  constructor(buttonsEventManager, mainContainer, connection) {
53
52
  this.buttonsEventManager = buttonsEventManager;
@@ -123,7 +122,7 @@ export class AbstractController {
123
122
  }
124
123
  disableBetButtons(shouldBeDisabled) {
125
124
  const freeSpinButton = this.mainContainer.getFreeSpinButton();
126
- if (freeSpinButton)
125
+ if (freeSpinButton && this.roundNumber > 0)
127
126
  freeSpinButton?.setInteractivity(!shouldBeDisabled);
128
127
  const buttonsToChange = [
129
128
  RainMan.componentRegistry.get(BUTTONS.plus),
@@ -196,8 +195,9 @@ export class AbstractController {
196
195
  refreshButton.on("touchstart", () => {
197
196
  this.mobileSpinTimeout = setInterval(() => {
198
197
  this.handleDisablingButtons(true);
198
+ this.summaryStop = this.skipFreeSpinSummary ? false : this.invokeFreeSpinSummaryPlateAfterWin;
199
199
  if (this.invokeFreeSpinPlateAfterWin ||
200
- this.invokeFreeSpinSummaryPlateAfterWin ||
200
+ this.summaryStop ||
201
201
  this.resolveBigWin !== undefined ||
202
202
  this.resolveSuperBonusWin !== undefined ||
203
203
  this.resolveMysteryWin !== undefined) {
@@ -217,8 +217,7 @@ export class AbstractController {
217
217
  }
218
218
  /**
219
219
  * This function is responsible for checking if buttons (not bet buttons) should be disabled
220
- *
221
- * @return {boolean}
220
+ * @returns {boolean} should buttons be disabled
222
221
  */
223
222
  get shouldButtonsBeDisabled() {
224
223
  if (this.quickStopController.quickStopCounterLock)
@@ -231,8 +230,7 @@ export class AbstractController {
231
230
  }
232
231
  /**
233
232
  * This function is responsible for checking if bet buttons should be disabled
234
- *
235
- * @return {boolean}
233
+ * @returns {boolean} should bet buttons be disabled
236
234
  */
237
235
  get shouldBetButtonsBeDisabled() {
238
236
  return this.shouldButtonsBeDisabled || RainMan.settingsStore.isFreeSpinsPlayEnabled;
@@ -264,8 +262,7 @@ export class AbstractController {
264
262
  * - dataFetch - when game is fetching data from the server
265
263
  * - bigWinInvoked - when big win is invoked
266
264
  * - gameSummary - when game is showing game summary
267
- *
268
- * @param {GamePhase} newPhase
265
+ * @param {GamePhase} newPhase - new game phase
269
266
  */
270
267
  changeGamePhase(newPhase) {
271
268
  logInfo(`👋🏼👋🏼👋🏼👋🏼 ${this.gamePhase} --> ${newPhase}`);
@@ -312,8 +309,9 @@ export class AbstractController {
312
309
  }
313
310
  }
314
311
  /**
315
- * This function is responsible for getting indexes of reels which should show mystery fx, based on {@link spinLogic}
316
- * @param {SpinLogic} spinLogic
312
+ * This function is responsible for getting indexes of reels which should show mystery fx, based on {@link spinLogic}
313
+ * @param {SpinLogic} spinLogic - spin logic
314
+ * @returns {number[]} indexes of reels which should show mystery fx
317
315
  */
318
316
  getReelIndexesToShowMysteryFx(spinLogic) {
319
317
  const { onStopBlindsConfiguration } = spinLogic;
@@ -463,6 +461,7 @@ export class AbstractController {
463
461
  }
464
462
  /**
465
463
  * Function for autoplay spin
464
+ * @returns {void} promise
466
465
  */
467
466
  autoplaySpin() {
468
467
  if (!RainMan.settingsStore.howManyAutoSpinsLeft)
@@ -497,23 +496,20 @@ export class AbstractController {
497
496
  /**
498
497
  * This function is responsible for actions while fetching data
499
498
  * If you want to add some actions while fetching data, you can override this function
500
- *
501
- * @param {SpinData} _spinData
502
- * @param {SpinLogic} _spinLogic
499
+ * @param {SpinData} _spinData - spin data
500
+ * @param {SpinLogic} _spinLogic - spin logic
503
501
  */
504
502
  onDataFetch(_spinData, _spinLogic) { }
505
503
  /**
506
504
  * Getter for extra data for some games
507
- *
508
- * @returns {ExtraDataRequest}
505
+ * @returns {ExtraDataRequest} extra data
509
506
  */
510
507
  getExtraData() {
511
508
  return {};
512
509
  }
513
510
  /**
514
511
  * Function for fetching and preparing spin data
515
- *
516
- * @returns {SpinDataWithLogic}
512
+ * @returns {SpinDataWithLogic} - spin data with logic
517
513
  */
518
514
  async fetchAndPrepareSpinData() {
519
515
  this.changeGamePhase(gamePhases.DATA_FETCH);
@@ -539,7 +535,7 @@ export class AbstractController {
539
535
  }
540
536
  /**
541
537
  * Checks if we can skip action based on conditions. By default it checks {@link !this.isPlayingUnskippableStreak}
542
- *
538
+ * @returns {boolean} can we skip actions
543
539
  */
544
540
  canSkipActions() {
545
541
  return !this.isPlayingUnskippableStreak;
@@ -558,7 +554,6 @@ export class AbstractController {
558
554
  * - updating free spins amount
559
555
  * - showing free spins summary and plate
560
556
  * - playing win action queue
561
- *
562
557
  * @returns {Promise<void>}
563
558
  */
564
559
  async spin() {
@@ -691,10 +686,9 @@ export class AbstractController {
691
686
  }
692
687
  /**
693
688
  * Function for invoking free spin plate, invoked in mainContainer
694
- * ```ts
695
- * this.mainContainer.invokeFreeSpinPlate(numberOfFreeSpins, isAdditionalFreeSpin);
696
- * ```
697
- *
689
+ * ```ts
690
+ * this.mainContainer.invokeFreeSpinPlate(numberOfFreeSpins, isAdditionalFreeSpin);
691
+ * ```
698
692
  * @param numberOfFreeSpins - number of free spins, if not provided, `RainMan.settingsStore.totalNumberOfFreeSpins` will be used
699
693
  * @param isAdditionalFreeSpin - flag for displaying additional free spins
700
694
  */
@@ -771,8 +765,7 @@ export class AbstractController {
771
765
  }
772
766
  /**
773
767
  * Function for displaying big win. Invoking that by `this.mainContainer.invokeBigWin();` and destroying it by `this.mainContainer.destroyBigWin();`
774
- *
775
- * @param customAmount - amount of win, if not provided, `RainMan.settingsStore.bet` will be used
768
+ * @param {number | undefined} customAmount - amount of win, if not provided, `RainMan.settingsStore.bet` will be used
776
769
  */
777
770
  async countBigWin(customAmount) {
778
771
  if (RainMan.config.disableBigWinOnBonus)
@@ -799,8 +792,7 @@ export class AbstractController {
799
792
  }
800
793
  /**
801
794
  * Function for displaying bonus win. Invoking that by `this.mainContainer.invokeBonusWin();` and destroying it by `this.mainContainer.destroyBonusWin();`
802
- *
803
- * @param customAmount - amount of win, if not provided, `RainMan.settingsStore.bet` will be used
795
+ * @param {number | undefined} winAmount - win amount, if not provided, `this.uiController.recentWin` will be used
804
796
  */
805
797
  async countBonusWin(winAmount) {
806
798
  if (!winAmount)
@@ -824,8 +816,7 @@ export class AbstractController {
824
816
  }
825
817
  /**
826
818
  * Function for displaying super bonus win. Invoking that by `this.mainContainer.invokeSuperBonusWin();` and destroying it by `this.mainContainer.destroySuperBonusWin();`
827
- *
828
- * @param winAmount - amount of win, if not provided `RainMan.settingsStore.cumulativeWinAmount` will be used
819
+ * @param {number | undefined} winAmount - amount of win, if not provided `RainMan.settingsStore.cumulativeWinAmount` will be used
829
820
  */
830
821
  async countSuperBonusWin(winAmount) {
831
822
  if (!winAmount)
@@ -849,10 +840,9 @@ export class AbstractController {
849
840
  }
850
841
  /**
851
842
  * Function for displaying mystery win. Invoking that by `this.mainContainer.invokeMysteryWin();` and destroying it by `this.mainContainer.destroyMysteryWin();`.
852
- * Function requires `this.mysteryWinSymbol` to be fired.
853
- *
854
- * @param winAmount
855
- * @param quantity - how many symbols create mystery win, by default 3
843
+ * Function requires `this.mysteryWinSymbol` to be fired.
844
+ * @param {number | undefined} winAmount - amount of mystery win
845
+ * @param {number} quantity - how many symbols create mystery win, by default 3
856
846
  */
857
847
  async countMysteryWin(winAmount, quantity = 3) {
858
848
  if (!winAmount || !this.mysteryWinSymbol)
@@ -883,10 +873,9 @@ export class AbstractController {
883
873
  }
884
874
  /**
885
875
  * Parser for streaks and reels quantity
886
- *
887
- * @param {StreakReelsIndexes} streak
888
- * @param {number} reelsQuantity
889
- * @returns {StreakReelsIndexes}
876
+ * @param {StreakReelsIndexes} streak - streak with reels indexes
877
+ * @param {number} reelsQuantity - quantity of reels
878
+ * @returns {StreakReelsIndexes} - parsed streak
890
879
  */
891
880
  parseStreak(streak, reelsQuantity) {
892
881
  const parsedStreak = [];
@@ -902,8 +891,8 @@ export class AbstractController {
902
891
  }
903
892
  /**
904
893
  * Function for getting symbols ids from {@link StreakReelsIndexes}
905
- *
906
- * @param streak
894
+ * @param {StreakReelsIndexes} streak - streak with reels indexes
895
+ * @returns {SymbolId[]} - symbols from streak
907
896
  */
908
897
  getSymbolIdsForStreak(streak) {
909
898
  const symbolsIds = [];
@@ -4,7 +4,7 @@ import { ButtonsEventManager } from "../application";
4
4
  * After 4 quick stops, the speed popup will be shown.
5
5
  * Number of quick spin can be adjusted in {@link MAX_QUICK_STOPS}
6
6
  *
7
- * @exports
7
+ *
8
8
  */
9
9
  export declare class QuickStopController {
10
10
  private buttonsEventManager;
@@ -6,7 +6,7 @@ const MAX_QUICK_STOPS = 4;
6
6
  * After 4 quick stops, the speed popup will be shown.
7
7
  * Number of quick spin can be adjusted in {@link MAX_QUICK_STOPS}
8
8
  *
9
- * @exports
9
+ *
10
10
  */
11
11
  export class QuickStopController {
12
12
  buttonsEventManager;
@@ -29,14 +29,12 @@ export declare class UiController {
29
29
  resetTotalFreeSpinWinAmount(): void;
30
30
  private getNewBet;
31
31
  /**
32
- * Functions to be called before bet is updated
33
- *
34
- * @param _lastBet - last bet
32
+ * Functions to be called before bet is updated
33
+ * @param {number} _lastBet - last bet
35
34
  */
36
35
  protected beforeUpdateBet(_lastBet: number): void;
37
36
  /**
38
37
  * Function to be called after bet is updated
39
- *
40
38
  * @param {number} _bet - new bet value
41
39
  */
42
40
  protected afterUpdateBet(_bet: number): void;
@@ -71,14 +71,12 @@ export class UiController {
71
71
  }
72
72
  }
73
73
  /**
74
- * Functions to be called before bet is updated
75
- *
76
- * @param _lastBet - last bet
74
+ * Functions to be called before bet is updated
75
+ * @param {number} _lastBet - last bet
77
76
  */
78
77
  beforeUpdateBet(_lastBet) { }
79
78
  /**
80
79
  * Function to be called after bet is updated
81
- *
82
80
  * @param {number} _bet - new bet value
83
81
  */
84
82
  afterUpdateBet(_bet) { }
@@ -3,12 +3,10 @@ import { Background, Logo, LogoStatic } from "../components";
3
3
  import { SpriteLoadingContainer } from "./SpriteLoadingContainer";
4
4
  /**
5
5
  * Class represents the container with loading logic inside
6
- *
7
- * @export
8
6
  * @abstract
9
7
  * @class AbstractLoadingContainer
10
8
  * @typedef {AbstractLoadingContainer}
11
- * @extends {Container}
9
+ * @augments {Container}
12
10
  */
13
11
  export declare abstract class AbstractLoadingContainer extends Container {
14
12
  protected abstract background: Background;
@@ -3,12 +3,10 @@ import { RainMan } from "../Rainman";
3
3
  import { SpriteLoadingContainer } from "./SpriteLoadingContainer";
4
4
  /**
5
5
  * Class represents the container with loading logic inside
6
- *
7
- * @export
8
6
  * @abstract
9
7
  * @class AbstractLoadingContainer
10
8
  * @typedef {AbstractLoadingContainer}
11
- * @extends {Container}
9
+ * @augments {Container}
12
10
  */
13
11
  export class AbstractLoadingContainer extends Container {
14
12
  logo = null;
@@ -1,7 +1,5 @@
1
1
  /**
2
2
  * Interface for updating progress on loading assets
3
- *
4
- * @export
5
3
  * @interface ProgressiveLoader
6
4
  * @typedef {ProgressiveLoader}
7
5
  */
@@ -2,11 +2,9 @@ import { Container, ITextStyle } from "pixi.js";
2
2
  import { ProgressiveLoader } from "./ProgressiveLoader";
3
3
  /**
4
4
  * This class contains the loading process to pixi application
5
- *
6
- * @export
7
5
  * @class SpriteLoadingContainer
8
6
  * @typedef {SpriteLoadingContainer}
9
- * @extends {Container}
7
+ * @augments {Container}
10
8
  * @implements {ProgressiveLoader}
11
9
  */
12
10
  export declare class SpriteLoadingContainer extends Container implements ProgressiveLoader {
@@ -19,7 +17,6 @@ export declare class SpriteLoadingContainer extends Container implements Progres
19
17
  private readonly loadingStatusHeight;
20
18
  /**
21
19
  * Constructor for SpriteLoadingContainer
22
- *
23
20
  * @param {string} texture path to texture for logo
24
21
  * @param {Partial<ITextStyle>} textOptions contains the options for text color blur
25
22
  */
@@ -2,11 +2,9 @@ import { Container, Graphics, Sprite, Text, TextStyle, Texture } from "pixi.js";
2
2
  import { RainMan } from "../Rainman";
3
3
  /**
4
4
  * This class contains the loading process to pixi application
5
- *
6
- * @export
7
5
  * @class SpriteLoadingContainer
8
6
  * @typedef {SpriteLoadingContainer}
9
- * @extends {Container}
7
+ * @augments {Container}
10
8
  * @implements {ProgressiveLoader}
11
9
  */
12
10
  export class SpriteLoadingContainer extends Container {
@@ -19,7 +17,6 @@ export class SpriteLoadingContainer extends Container {
19
17
  loadingStatusHeight = this.loadingStatusContainerHeight - 10;
20
18
  /**
21
19
  * Constructor for SpriteLoadingContainer
22
- *
23
20
  * @param {string} texture path to texture for logo
24
21
  * @param {Partial<ITextStyle>} textOptions contains the options for text color blur
25
22
  */
@@ -1,7 +1,5 @@
1
1
  /**
2
2
  * Here you can specify the all of the local storage keys
3
- *
4
- * @type { readonly hiResolution: "hiResolutionLocalStorage"; readonly batterySaver: "batterySaverLocalStorage"; readonly volumeLevel: "volumeLevelLocalStorage"; readonly isSoundEnabled: "isSoundEnabledLocalStorage"; readonly isSoundFxEnabled: "isSoundFxEnabledLocalStorage"; readonly isAmbientMusicEnabled: "isAmbientMusicEna...}
5
3
  */
6
4
  export declare const LOCAL_STORAGE: {
7
5
  readonly hiResolution: "hiResolutionLocalStorage";
@@ -1,7 +1,5 @@
1
1
  /**
2
2
  * Here you can specify the all of the local storage keys
3
- *
4
- * @type { readonly hiResolution: "hiResolutionLocalStorage"; readonly batterySaver: "batterySaverLocalStorage"; readonly volumeLevel: "volumeLevelLocalStorage"; readonly isSoundEnabled: "isSoundEnabledLocalStorage"; readonly isSoundFxEnabled: "isSoundFxEnabledLocalStorage"; readonly isAmbientMusicEnabled: "isAmbientMusicEna...}
5
3
  */
6
4
  export const LOCAL_STORAGE = {
7
5
  hiResolution: "hiResolutionLocalStorage",
@@ -4,8 +4,6 @@ import { InitDataInterface, Point, RangeQuantityValue, SpinData } from "../conne
4
4
  import { PaytableData } from "./types";
5
5
  /**
6
6
  * This class represents global state of pixi and react application
7
- *
8
- * @export
9
7
  * @class SettingsStore
10
8
  * @typedef {SettingsStore}
11
9
  */
@@ -64,16 +62,14 @@ export declare class SettingsStore {
64
62
  refreshBatterySaver(): void;
65
63
  /**
66
64
  * Sets flag for ambient music.
67
- *
68
- * @param flag
69
- * @param saveToLocalStorage - default {@link true}, if true the flag will be saved to localStorage
65
+ * @param {boolean} flag - new value for ambient music flag
66
+ * @param {boolean} saveToLocalStorage - default {@link true}, if true the flag will be saved to localStorage
70
67
  */
71
68
  setAmbientMusicFlag(flag: boolean, saveToLocalStorage?: boolean): void;
72
69
  /**
73
70
  * Sets flag for effect sounds
74
- *
75
- * @param flag
76
- * @param saveToLocalStorage - default {@link true}, if true the flag will be saved to localStorage
71
+ * @param {boolean} flag - new value for sound fx flag
72
+ * @param {boolean} saveToLocalStorage - default {@link true}, if true the flag will be saved to localStorage
77
73
  */
78
74
  setSoundFxFlag(flag: boolean, saveToLocalStorage?: boolean): void;
79
75
  flipSoundsEnabled(volumeLevel?: number | null): void;
@@ -94,8 +90,7 @@ export declare class SettingsStore {
94
90
  repositionSymbolPaytablePopup(x: number, y: number): void;
95
91
  /**
96
92
  * Initialize paytable map for all symbols. based on backend data {@link InitDataInterface.paytable}
97
- *
98
- * @param initConfigData
93
+ * @param {InitDataInterface} initConfigData - initial data from backend
99
94
  */
100
95
  initPaytableMap(initConfigData: InitDataInterface): void;
101
96
  decreaseAutoSpinsCount(): void;
@@ -8,8 +8,6 @@ import { changeResolution, logError } from "../utils";
8
8
  const INITIAL_AUTO_SPIN_COUNT = 50;
9
9
  /**
10
10
  * This class represents global state of pixi and react application
11
- *
12
- * @export
13
11
  * @class SettingsStore
14
12
  * @typedef {SettingsStore}
15
13
  */
@@ -140,9 +138,8 @@ export class SettingsStore {
140
138
  }
141
139
  /**
142
140
  * Sets flag for ambient music.
143
- *
144
- * @param flag
145
- * @param saveToLocalStorage - default {@link true}, if true the flag will be saved to localStorage
141
+ * @param {boolean} flag - new value for ambient music flag
142
+ * @param {boolean} saveToLocalStorage - default {@link true}, if true the flag will be saved to localStorage
146
143
  */
147
144
  setAmbientMusicFlag(flag, saveToLocalStorage = true) {
148
145
  this.ambientMusicFlag = flag;
@@ -155,9 +152,8 @@ export class SettingsStore {
155
152
  }
156
153
  /**
157
154
  * Sets flag for effect sounds
158
- *
159
- * @param flag
160
- * @param saveToLocalStorage - default {@link true}, if true the flag will be saved to localStorage
155
+ * @param {boolean} flag - new value for sound fx flag
156
+ * @param {boolean} saveToLocalStorage - default {@link true}, if true the flag will be saved to localStorage
161
157
  */
162
158
  setSoundFxFlag(flag, saveToLocalStorage = true) {
163
159
  this.soundFxFlag = flag;
@@ -274,8 +270,7 @@ export class SettingsStore {
274
270
  }
275
271
  /**
276
272
  * Initialize paytable map for all symbols. based on backend data {@link InitDataInterface.paytable}
277
- *
278
- * @param initConfigData
273
+ * @param {InitDataInterface} initConfigData - initial data from backend
279
274
  */
280
275
  initPaytableMap(initConfigData) {
281
276
  for (const [key, name] of initConfigData.symbols_names.entries()) {