pixi-rainman-game-engine 0.1.34 → 0.1.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/messageBox/MessageBox.js +1 -0
- package/dist/components/symbols/AbstractSymbolBase.d.ts +1 -1
- package/dist/components/symbols/AbstractSymbolBase.js +3 -2
- package/dist/components/symbols/AbstractSymbolsColumn.d.ts +4 -2
- package/dist/components/symbols/AbstractSymbolsColumn.js +7 -2
- package/dist/connectivity/transformation.d.ts +6 -1
- package/dist/constants/transformation.d.ts +1 -0
- package/dist/constants/transformation.js +2 -1
- package/dist/controllers/UiController.js +0 -2
- package/package.json +1 -1
|
@@ -125,6 +125,7 @@ export class MessageBox extends Container {
|
|
|
125
125
|
if (RainMan.settingsStore.isFreeSpinsPlayEnabled && RainMan.config.disableFreeSpinText)
|
|
126
126
|
return;
|
|
127
127
|
this.hideIncentiveText();
|
|
128
|
+
this.hidePossibleWinText();
|
|
128
129
|
if (this.currentWinShown)
|
|
129
130
|
return;
|
|
130
131
|
this.currentWinShown = true;
|
|
@@ -34,7 +34,7 @@ export declare abstract class AbstractSymbolBase extends Container {
|
|
|
34
34
|
popSymbol(suffix?: string): Promise<void>;
|
|
35
35
|
swapSymbol(symbolId: SymbolId): void;
|
|
36
36
|
private setupClickListener;
|
|
37
|
-
protected setSymbol(symbolId: SymbolId): void;
|
|
37
|
+
protected setSymbol(symbolId: SymbolId, shouldSwitchSprite?: boolean): void;
|
|
38
38
|
protected resolveAndDestroyPlayingPromise(): void;
|
|
39
39
|
protected abstract getResourceForSymbolId(symbolId: SymbolId): LoadersSpineData;
|
|
40
40
|
protected abstract getAnimationNameForSymbol(symbolId: SymbolId, suffix?: string): string;
|
|
@@ -141,9 +141,10 @@ export class AbstractSymbolBase extends Container {
|
|
|
141
141
|
togglePaytable();
|
|
142
142
|
});
|
|
143
143
|
}
|
|
144
|
-
setSymbol(symbolId) {
|
|
144
|
+
setSymbol(symbolId, shouldSwitchSprite = true) {
|
|
145
145
|
this._id = symbolId;
|
|
146
|
-
|
|
146
|
+
if (shouldSwitchSprite)
|
|
147
|
+
this.switchSymbolBaseDisplayedObject("sprite");
|
|
147
148
|
}
|
|
148
149
|
resolveAndDestroyPlayingPromise() {
|
|
149
150
|
if (this.endOfMultiplierAnimationPromise) {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { Container } from "pixi.js";
|
|
2
2
|
import { SpeedAdapterInterface, SpeedLevel, SymbolId } from "../../application";
|
|
3
3
|
import { DropTransformationDetails, SymbolReel } from "../../connectivity";
|
|
4
|
+
import { Nullable } from "../../utils";
|
|
4
5
|
import { AbstractColumnsContainer, AbstractFrame } from "../frame";
|
|
5
6
|
import { AbstractSymbolBase } from "./AbstractSymbolBase";
|
|
6
7
|
import { AnimationTimeSettings } from "./types";
|
|
7
8
|
/**
|
|
8
9
|
* Class represent single column in ColumnsContainer
|
|
9
|
-
* @date 12/04/2024 - 13:34:42
|
|
10
10
|
*
|
|
11
11
|
* @export
|
|
12
12
|
* @abstract
|
|
@@ -40,7 +40,8 @@ export declare abstract class AbstractSymbolsColumn extends Container implements
|
|
|
40
40
|
private triggerNextColumnPromise;
|
|
41
41
|
private spinEndPromise;
|
|
42
42
|
skipHidingMysteryFx: boolean;
|
|
43
|
-
protected bonusSymbol: SymbolId
|
|
43
|
+
protected bonusSymbol: Nullable<SymbolId>;
|
|
44
|
+
protected frozenSymbol: Nullable<AbstractSymbolBase>;
|
|
44
45
|
private readonly _id;
|
|
45
46
|
protected constructor(id: string, columnsContainer: AbstractColumnsContainer, allSymbols: SymbolId[]);
|
|
46
47
|
protected abstract get tileHeight(): number;
|
|
@@ -84,5 +85,6 @@ export declare abstract class AbstractSymbolsColumn extends Container implements
|
|
|
84
85
|
fixStationaryPositions(): void;
|
|
85
86
|
private initStopTween;
|
|
86
87
|
protected sortSymbols(): void;
|
|
88
|
+
protected areAnyFrozenTiles(): boolean;
|
|
87
89
|
private ensureIsRightEnding;
|
|
88
90
|
}
|
|
@@ -9,7 +9,6 @@ import { droppableSymbolsFactory } from "./DroppableSymbolsColumn";
|
|
|
9
9
|
import { Phase, Speed } from "./types";
|
|
10
10
|
/**
|
|
11
11
|
* Class represent single column in ColumnsContainer
|
|
12
|
-
* @date 12/04/2024 - 13:34:42
|
|
13
12
|
*
|
|
14
13
|
* @export
|
|
15
14
|
* @abstract
|
|
@@ -44,6 +43,7 @@ export class AbstractSymbolsColumn extends Container {
|
|
|
44
43
|
spinEndPromise = null;
|
|
45
44
|
skipHidingMysteryFx = false;
|
|
46
45
|
bonusSymbol = null;
|
|
46
|
+
frozenSymbol = null;
|
|
47
47
|
_id;
|
|
48
48
|
constructor(id, columnsContainer, allSymbols) {
|
|
49
49
|
super();
|
|
@@ -321,7 +321,9 @@ export class AbstractSymbolsColumn extends Container {
|
|
|
321
321
|
if (!this.topMostSymbol || this.phase === Phase.END)
|
|
322
322
|
return;
|
|
323
323
|
if (this.topMostSymbol.y >= this.tileHeight / 2) {
|
|
324
|
-
if (!this.columnsContainer.quickReelsStop &&
|
|
324
|
+
if (!this.columnsContainer.quickReelsStop &&
|
|
325
|
+
RainMan.settingsStore.currentSpeed !== SPEED_LEVELS.fast &&
|
|
326
|
+
!this.areAnyFrozenTiles())
|
|
325
327
|
SoundManager.play(this.shouldPlaySpecialRollStopSound() ? SoundTracks.specialSymbolOnReel : SoundTracks.rollStop);
|
|
326
328
|
this.fixStationaryPositions();
|
|
327
329
|
this.doStop();
|
|
@@ -445,6 +447,9 @@ export class AbstractSymbolsColumn extends Container {
|
|
|
445
447
|
sortSymbols() {
|
|
446
448
|
this.symbols = this.getSymbolsSortedByYPosition();
|
|
447
449
|
}
|
|
450
|
+
areAnyFrozenTiles() {
|
|
451
|
+
return !!this.frozenSymbol;
|
|
452
|
+
}
|
|
448
453
|
ensureIsRightEnding() {
|
|
449
454
|
let position = 0;
|
|
450
455
|
for (const symbol of this.symbols) {
|
|
@@ -34,7 +34,12 @@ export type SpinAndFreezeTransformationDetails = {
|
|
|
34
34
|
symbolsOnReels: SymbolReels;
|
|
35
35
|
coordinates: Point[];
|
|
36
36
|
};
|
|
37
|
-
export type
|
|
37
|
+
export type SwapTransformationDetails = {
|
|
38
|
+
type: typeof transformationTypes.swap;
|
|
39
|
+
coordinates: Point;
|
|
40
|
+
symbolId: SymbolId;
|
|
41
|
+
};
|
|
42
|
+
export type TransformationDetails = DropTransformationDetails | VerticalTransformationDetails | ReplaceTransformationDetails | SpinTransformationDetails | FreezeTransformationDetails | SwapTransformationDetails;
|
|
38
43
|
export type RawVerticalTransformationDetails = {
|
|
39
44
|
coordinates: Point;
|
|
40
45
|
};
|
package/package.json
CHANGED